summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorArmin Le Grand <alg@apache.org>2014-07-14 19:09:11 +0000
committerArmin Le Grand <alg@apache.org>2014-07-14 19:09:11 +0000
commit3c1d4742e649fe9c8aed8c2817fe3e1f3364f298 (patch)
treee0c6e02c89aa9227726c9469da1001b3e29c41df
parentc5c31e2aeaedbdf76e1f38d3c385e34f5ed875ca (diff)
Resync to trunk, windows non-pro buildaoo/aw080
-rw-r--r--LICENSE2
-rw-r--r--NOTICE2
-rw-r--r--NOTICE_category_b30
-rw-r--r--UnoControls/inc/basecontrol.hxx2
-rw-r--r--UnoControls/source/base/basecontainercontrol.cxx4
-rw-r--r--UnoControls/source/base/basecontrol.cxx4
-rw-r--r--UnoControls/source/base/registercontrols.cxx2
-rw-r--r--UnoControls/source/controls/OConnectionPointContainerHelper.cxx2
-rw-r--r--UnoControls/source/controls/progressbar.cxx2
-rw-r--r--UnoControls/source/controls/progressmonitor.cxx6
-rw-r--r--UnoControls/source/controls/statusindicator.cxx6
-rw-r--r--UnoControls/source/inc/framecontrol.hxx2
-rw-r--r--accessibility/bridge/org/openoffice/java/accessibility/AccessibleTextImpl.java2
-rw-r--r--accessibility/bridge/org/openoffice/java/accessibility/Component.java2
-rw-r--r--accessibility/bridge/org/openoffice/java/accessibility/Container.java2
-rw-r--r--accessibility/bridge/org/openoffice/java/accessibility/DescendantManager.java2
-rw-r--r--accessibility/bridge/org/openoffice/java/accessibility/Dialog.java2
-rw-r--r--accessibility/bridge/org/openoffice/java/accessibility/Frame.java2
-rw-r--r--accessibility/bridge/org/openoffice/java/accessibility/List.java2
-rw-r--r--accessibility/bridge/org/openoffice/java/accessibility/Menu.java2
-rw-r--r--accessibility/bridge/org/openoffice/java/accessibility/Table.java2
-rw-r--r--accessibility/bridge/org/openoffice/java/accessibility/Tree.java2
-rw-r--r--accessibility/bridge/org/openoffice/java/accessibility/Window.java2
-rw-r--r--accessibility/bridge/source/java/WindowsAccessBridgeAdapter.cxx8
-rw-r--r--accessibility/inc/accessibility/extended/AccessibleBrowseBoxBase.hxx2
-rw-r--r--accessibility/inc/accessibility/extended/AccessibleGridControlBase.hxx2
-rw-r--r--accessibility/inc/accessibility/standard/vclxaccessiblebox.hxx4
-rw-r--r--accessibility/source/extended/accessibleiconchoicectrl.cxx2
-rw-r--r--accessibility/source/extended/accessibleiconchoicectrlentry.cxx2
-rw-r--r--accessibility/source/extended/accessiblelistboxentry.cxx2
-rw-r--r--accessibility/source/extended/accessibletablistbox.cxx2
-rw-r--r--accessibility/source/extended/accessibletablistboxtable.cxx2
-rw-r--r--accessibility/source/extended/textwindowaccessibility.cxx2
-rw-r--r--accessibility/source/standard/vclxaccessiblebox.cxx11
-rw-r--r--accessibility/workben/org/openoffice/accessibility/awb/canvas/Canvas.java2
-rw-r--r--accessibility/workben/org/openoffice/accessibility/misc/OfficeConnection.java2
-rw-r--r--animations/source/animcore/animcore.cxx4
-rw-r--r--apache-commons/java/codec/makefile.mk17
-rw-r--r--apache-commons/java/httpclient/makefile.mk4
-rw-r--r--apache-commons/java/lang/makefile.mk14
-rw-r--r--apache-commons/java/logging/makefile.mk14
-rw-r--r--apache-commons/patches/codec.patch36
-rw-r--r--apache-commons/patches/httpclient.patch151
-rw-r--r--apache-commons/patches/logging.patch6
-rw-r--r--apache-commons/prj/d.lst6
-rw-r--r--apple_remote/AppleRemote.m4
-rw-r--r--apple_remote/RemoteMainController.m4
-rw-r--r--apple_remote/inc/MultiClickRemoteBehavior.h2
-rw-r--r--autodoc/inc/ary/cpp/c_gate.hxx2
-rw-r--r--autodoc/inc/ary/cpp/cp_ce.hxx2
-rw-r--r--autodoc/inc/ary/cpp/cp_def.hxx2
-rw-r--r--autodoc/inc/ary/cpp/cp_type.hxx2
-rw-r--r--autodoc/inc/ary/doc/d_parametrized.hxx2
-rw-r--r--autodoc/inc/ary/idl/i_type.hxx2
-rw-r--r--autodoc/source/ary/inc/cross_refs.hxx2
-rw-r--r--autodoc/source/ary/inc/sorted_idset.hxx2
-rw-r--r--autodoc/source/display/html/outfile.hxx2
-rw-r--r--autodoc/source/display/html/pagemake.cxx2
-rw-r--r--autodoc/source/display/idl/hi_env.hxx2
-rw-r--r--autodoc/source/parser/inc/tokens/tokproct.hxx2
-rw-r--r--autodoc/source/parser_i/inc/s2_luidl/tokproct.hxx2
-rw-r--r--autodoc/source/parser_i/inc/tokens/tkp2.hxx2
-rw-r--r--automation/inc/automation/commtypes.hxx2
-rw-r--r--automation/inc/automation/simplecm.hxx2
-rw-r--r--automation/source/server/recorder.cxx2
-rw-r--r--automation/source/server/recorder.hxx2
-rw-r--r--automation/source/server/statemnt.cxx2
-rw-r--r--automation/source/simplecm/packethandler.hxx2
-rw-r--r--automation/source/simplecm/simplecm.cxx2
-rw-r--r--avmedia/prj/build.lst1
-rw-r--r--avmedia/prj/d.lst2
-rw-r--r--avmedia/source/framework/soundhandler.cxx10
-rw-r--r--avmedia/source/framework/soundhandler.hxx2
-rw-r--r--avmedia/source/inc/mediamisc.hxx2
-rw-r--r--avmedia/source/macavf/avmediaMacAVF.component28
-rw-r--r--avmedia/source/macavf/macavf_common.hxx89
-rw-r--r--avmedia/source/macavf/macavf_framegrabber.cxx143
-rw-r--r--avmedia/source/macavf/macavf_framegrabber.hxx66
-rw-r--r--avmedia/source/macavf/macavf_macavfcommon.hxx89
-rw-r--r--avmedia/source/macavf/macavf_macavfuno.cxx70
-rw-r--r--avmedia/source/macavf/macavf_manager.cxx91
-rw-r--r--avmedia/source/macavf/macavf_manager.hxx59
-rw-r--r--avmedia/source/macavf/macavf_player.cxx463
-rw-r--r--avmedia/source/macavf/macavf_player.hxx95
-rw-r--r--avmedia/source/macavf/macavf_uno.cxx70
-rw-r--r--avmedia/source/macavf/macavf_window.cxx341
-rw-r--r--avmedia/source/macavf/macavf_window.hxx124
-rw-r--r--avmedia/source/macavf/makefile.mk89
-rw-r--r--avmedia/source/quicktime/makefile.mk16
-rw-r--r--avmedia/source/quicktime/qt_common.hxx65
-rw-r--r--avmedia/source/quicktime/qt_framegrabber.cxx142
-rw-r--r--avmedia/source/quicktime/qt_framegrabber.hxx67
-rw-r--r--avmedia/source/quicktime/qt_manager.cxx92
-rw-r--r--avmedia/source/quicktime/qt_manager.hxx60
-rw-r--r--avmedia/source/quicktime/qt_player.cxx459
-rw-r--r--avmedia/source/quicktime/qt_player.hxx107
-rw-r--r--avmedia/source/quicktime/qt_uno.cxx71
-rw-r--r--avmedia/source/quicktime/qt_window.cxx348
-rw-r--r--avmedia/source/quicktime/qt_window.hxx109
-rw-r--r--basctl/source/basicide/objdlg.cxx41
-rw-r--r--basctl/source/basicide/objdlg.hxx2
-rw-r--r--basegfx/inc/basegfx/color/bcolormodifier.hxx4
-rw-r--r--basegfx/inc/basegfx/polygon/b2dpolygon.hxx2
-rw-r--r--basegfx/inc/basegfx/polygon/b2dpolygontools.hxx2
-rw-r--r--basegfx/inc/basegfx/range/rangeexpander.hxx2
-rw-r--r--basegfx/inc/basegfx/tools/keystoplerp.hxx4
-rw-r--r--basegfx/source/polygon/b2dpolygonclipper.cxx2
-rw-r--r--basegfx/source/polygon/b2dpolygontools.cxx6
-rw-r--r--basegfx/source/polygon/b2dsvgpolypolygon.cxx8
-rw-r--r--basegfx/source/raster/rasterconvert3d.cxx2
-rw-r--r--basegfx/source/workbench/gauss.hxx2
-rw-r--r--basic/inc/basic/sberrors.hxx2
-rw-r--r--basic/inc/basic/sbxdef.hxx2
-rw-r--r--basic/source/classes/sb.cxx2
-rw-r--r--basic/source/classes/sbunoobj.cxx14
-rw-r--r--basic/source/classes/sbxmod.cxx2
-rw-r--r--basic/source/comp/dim.cxx8
-rw-r--r--basic/source/comp/exprgen.cxx2
-rw-r--r--basic/source/runtime/runtime.cxx2
-rw-r--r--basic/source/runtime/step1.cxx4
-rw-r--r--basic/source/runtime/step2.cxx2
-rw-r--r--basic/source/sbx/sbxint.cxx8
-rw-r--r--basic/source/uno/namecont.cxx4
-rw-r--r--basic/workben/mgrtest.cxx22
-rw-r--r--bean/com/sun/star/beans/LocalOfficeConnection.java6
-rw-r--r--bean/com/sun/star/beans/LocalOfficeWindow.java4
-rw-r--r--bean/com/sun/star/comp/beans/LocalOfficeConnection.java6
-rw-r--r--bean/com/sun/star/comp/beans/LocalOfficeWindow.java4
-rw-r--r--bean/com/sun/star/comp/beans/OOoBean.java6
-rw-r--r--bean/com/sun/star/comp/beans/SystemWindowException.java2
-rw-r--r--bean/qa/complex/bean/OOoBeanTest.java2
-rw-r--r--bean/qa/complex/bean/WriterFrame.java2
-rwxr-xr-xbinaryurp/source/writer.cxx2
-rw-r--r--bridges/inc/bridges/cpp_uno/bridge.hxx2
-rw-r--r--bridges/inc/bridges/cpp_uno/shared/vtablefactory.hxx2
-rw-r--r--bridges/source/cpp_uno/cc50_solaris_intel/cpp2uno.cxx4
-rw-r--r--bridges/source/cpp_uno/cc50_solaris_intel/except.cxx4
-rw-r--r--bridges/source/cpp_uno/cc50_solaris_intel/uno2cpp.cxx2
-rw-r--r--bridges/source/cpp_uno/cc50_solaris_sparc/cpp2uno.cxx4
-rw-r--r--bridges/source/cpp_uno/cc50_solaris_sparc/except.cxx4
-rw-r--r--bridges/source/cpp_uno/cc50_solaris_sparc/uno2cpp.cxx2
-rw-r--r--bridges/source/cpp_uno/gcc3_freebsd_intel/cpp2uno.cxx4
-rw-r--r--bridges/source/cpp_uno/gcc3_freebsd_intel/except.cxx9
-rw-r--r--bridges/source/cpp_uno/gcc3_freebsd_intel/uno2cpp.cxx2
-rw-r--r--bridges/source/cpp_uno/gcc3_freebsd_powerpc/cpp2uno.cxx791
-rw-r--r--bridges/source/cpp_uno/gcc3_freebsd_powerpc/except.cxx283
-rw-r--r--bridges/source/cpp_uno/gcc3_freebsd_powerpc/makefile.mk76
-rw-r--r--bridges/source/cpp_uno/gcc3_freebsd_powerpc/share.hxx87
-rw-r--r--bridges/source/cpp_uno/gcc3_freebsd_powerpc/uno2cpp.cxx668
-rw-r--r--bridges/source/cpp_uno/gcc3_freebsd_powerpc64/cpp2uno.cxx718
-rw-r--r--bridges/source/cpp_uno/gcc3_freebsd_powerpc64/except.cxx283
-rw-r--r--bridges/source/cpp_uno/gcc3_freebsd_powerpc64/makefile.mk75
-rw-r--r--bridges/source/cpp_uno/gcc3_freebsd_powerpc64/share.hxx92
-rw-r--r--bridges/source/cpp_uno/gcc3_freebsd_powerpc64/uno2cpp.cxx596
-rw-r--r--bridges/source/cpp_uno/gcc3_freebsd_x86-64/cpp2uno.cxx4
-rw-r--r--bridges/source/cpp_uno/gcc3_freebsd_x86-64/except.cxx4
-rw-r--r--bridges/source/cpp_uno/gcc3_freebsd_x86-64/uno2cpp.cxx2
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_alpha/cpp2uno.cxx4
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_alpha/uno2cpp.cxx2
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_arm/cpp2uno.cxx4
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_arm/except.cxx4
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_arm/uno2cpp.cxx2
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_hppa/cpp2uno.cxx4
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_hppa/except.cxx4
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_hppa/uno2cpp.cxx2
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_ia64/cpp2uno.cxx4
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_ia64/uno2cpp.cxx2
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_intel/cpp2uno.cxx4
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_intel/except.cxx4
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_intel/uno2cpp.cxx2
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_m68k/cpp2uno.cxx4
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_m68k/except.cxx4
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_m68k/uno2cpp.cxx2
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_mips/cpp2uno.cxx6
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_mips/except.cxx4
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_mips/uno2cpp.cxx4
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_powerpc/cpp2uno.cxx4
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_powerpc/uno2cpp.cxx4
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_powerpc64/cpp2uno.cxx4
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_powerpc64/uno2cpp.cxx2
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_s390/cpp2uno.cxx4
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_s390/uno2cpp.cxx2
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_s390x/cpp2uno.cxx4
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_s390x/uno2cpp.cxx2
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_sparc/cpp2uno.cxx4
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_sparc/except.cxx4
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_sparc/uno2cpp.cxx2
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_x86-64/cpp2uno.cxx4
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_x86-64/except.cxx4
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_x86-64/uno2cpp.cxx2
-rw-r--r--bridges/source/cpp_uno/gcc3_macosx_intel/cpp2uno.cxx4
-rw-r--r--bridges/source/cpp_uno/gcc3_macosx_intel/except.cxx4
-rw-r--r--bridges/source/cpp_uno/gcc3_macosx_intel/uno2cpp.cxx2
-rw-r--r--bridges/source/cpp_uno/gcc3_macosx_powerpc/cpp2uno.cxx6
-rw-r--r--bridges/source/cpp_uno/gcc3_macosx_powerpc/uno2cpp.cxx2
-rw-r--r--bridges/source/cpp_uno/gcc3_netbsd_intel/cpp2uno.cxx4
-rw-r--r--bridges/source/cpp_uno/gcc3_netbsd_intel/except.cxx4
-rw-r--r--bridges/source/cpp_uno/gcc3_netbsd_intel/uno2cpp.cxx2
-rw-r--r--bridges/source/cpp_uno/gcc3_os2_intel/cpp2uno.cxx4
-rw-r--r--bridges/source/cpp_uno/gcc3_os2_intel/except.cxx4
-rw-r--r--bridges/source/cpp_uno/gcc3_os2_intel/uno2cpp.cxx2
-rw-r--r--bridges/source/cpp_uno/gcc3_solaris_intel/cpp2uno.cxx4
-rw-r--r--bridges/source/cpp_uno/gcc3_solaris_intel/except.cxx4
-rw-r--r--bridges/source/cpp_uno/gcc3_solaris_intel/uno2cpp.cxx2
-rw-r--r--bridges/source/cpp_uno/gcc3_solaris_sparc/cpp2uno.cxx4
-rw-r--r--bridges/source/cpp_uno/gcc3_solaris_sparc/except.cxx4
-rw-r--r--bridges/source/cpp_uno/gcc3_solaris_sparc/uno2cpp.cxx2
-rw-r--r--bridges/source/cpp_uno/mingw_intel/cpp2uno.cxx4
-rw-r--r--bridges/source/cpp_uno/mingw_intel/except.cxx4
-rw-r--r--bridges/source/cpp_uno/mingw_intel/uno2cpp.cxx2
-rw-r--r--bridges/source/cpp_uno/msvc_win32_intel/cpp2uno.cxx4
-rw-r--r--bridges/source/cpp_uno/msvc_win32_intel/except.cxx2
-rw-r--r--bridges/source/cpp_uno/msvc_win32_intel/uno2cpp.cxx2
-rw-r--r--bridges/source/cpp_uno/s5abi_macosx_x86-64/cpp2uno.cxx4
-rw-r--r--bridges/source/cpp_uno/s5abi_macosx_x86-64/except.cxx22
-rw-r--r--bridges/source/cpp_uno/s5abi_macosx_x86-64/share.hxx4
-rw-r--r--bridges/source/cpp_uno/s5abi_macosx_x86-64/uno2cpp.cxx2
-rw-r--r--bridges/source/cpp_uno/shared/component.cxx2
-rw-r--r--bridges/source/jni_uno/jni_base.h2
-rw-r--r--bridges/source/jni_uno/jni_bridge.cxx2
-rw-r--r--bridges/source/jni_uno/jni_java2uno.cxx4
-rw-r--r--bridges/source/jni_uno/jni_uno2java.cxx8
-rw-r--r--canvas/inc/canvas/base/bitmapcanvasbase.hxx2
-rw-r--r--canvas/inc/canvas/base/bufferedgraphicdevicebase.hxx2
-rw-r--r--canvas/inc/canvas/base/canvasbase.hxx4
-rw-r--r--canvas/inc/canvas/base/canvascustomspritebase.hxx2
-rw-r--r--canvas/inc/canvas/base/doublebitmapbase.hxx2
-rw-r--r--canvas/inc/canvas/base/floatbitmapbase.hxx2
-rw-r--r--canvas/inc/canvas/base/graphicdevicebase.hxx2
-rw-r--r--canvas/inc/canvas/base/integerbitmapbase.hxx2
-rw-r--r--canvas/inc/canvas/base/spritecanvasbase.hxx2
-rwxr-xr-xcanvas/inc/canvas/canvastools.hxx4
-rw-r--r--canvas/inc/canvas/rendering/irendermodule.hxx2
-rw-r--r--canvas/source/cairo/cairo_canvasbitmap.cxx4
-rw-r--r--canvas/source/cairo/cairo_canvasfont.cxx2
-rw-r--r--canvas/source/cairo/cairo_canvashelper.cxx2
-rw-r--r--canvas/source/cairo/cairo_quartz_cairo.cxx2
-rw-r--r--canvas/source/cairo/cairo_textlayout.cxx4
-rw-r--r--canvas/source/cairo/cairo_win32_cairo.cxx4
-rw-r--r--canvas/source/cairo/cairo_xlib_cairo.cxx2
-rw-r--r--canvas/source/directx/dx_vcltools.cxx2
-rw-r--r--canvas/source/tools/pagemanager.cxx2
-rw-r--r--canvas/source/tools/surface.hxx2
-rw-r--r--canvas/source/tools/surfaceproxy.hxx2
-rw-r--r--canvas/source/vcl/canvasfont.cxx2
-rw-r--r--canvas/workben/canvasdemo.cxx2
-rwxr-xr-xchart2/source/controller/chartapiwrapper/Chart2ModelContact.hxx2
-rwxr-xr-xchart2/source/controller/chartapiwrapper/ChartDocumentWrapper.cxx2
-rw-r--r--chart2/source/controller/dialogs/DataBrowserModel.cxx2
-rw-r--r--chart2/source/controller/dialogs/ObjectNameProvider.cxx2
-rw-r--r--chart2/source/controller/main/ChartController.cxx2
-rw-r--r--chart2/source/inc/DataSeriesHelper.hxx2
-rw-r--r--chart2/source/inc/DiagramHelper.hxx2
-rw-r--r--chart2/source/inc/ObjectIdentifier.hxx2
-rw-r--r--chart2/source/tools/LifeTime.cxx4
-rw-r--r--chart2/source/tools/XMLRangeHelper.cxx2
-rw-r--r--chart2/source/view/axes/VCartesianAxis.cxx2
-rw-r--r--chart2/source/view/charttypes/Splines.cxx2
-rw-r--r--chart2/source/view/diagram/VDiagram.cxx6
-rw-r--r--chart2/source/view/inc/MinimumAndMaximumSupplier.hxx2
-rw-r--r--chart2/source/view/main/ChartView.cxx6
-rw-r--r--chart2/source/view/main/PlottingPositionHelper.cxx2
-rw-r--r--cli_ure/source/climaker/climaker_app.cxx2
-rw-r--r--cli_ure/source/native/makefile.mk2
-rw-r--r--cli_ure/source/native/native_bootstrap.cxx2
-rw-r--r--cli_ure/source/uno_bridge/cli_bridge.cxx4
-rw-r--r--cli_ure/source/uno_bridge/cli_data.cxx2
-rw-r--r--cli_ure/source/uno_bridge/cli_proxy.cxx2
-rw-r--r--cli_ure/source/uno_bridge/cli_uno.cxx4
-rw-r--r--codemaker/source/javamaker/javatype.cxx2
-rw-r--r--comphelper/inc/comphelper/IdPropArrayHelper.hxx2
-rw-r--r--comphelper/inc/comphelper/accessiblecontexthelper.hxx2
-rw-r--r--comphelper/inc/comphelper/accimplaccess.hxx2
-rw-r--r--comphelper/inc/comphelper/componentcontext.hxx8
-rw-r--r--comphelper/inc/comphelper/configurationhelper.hxx12
-rw-r--r--comphelper/inc/comphelper/containermultiplexer.hxx2
-rw-r--r--comphelper/inc/comphelper/docpasswordhelper.hxx8
-rw-r--r--comphelper/inc/comphelper/embeddedobjectcontainer.hxx4
-rw-r--r--comphelper/inc/comphelper/implementationreference.hxx2
-rw-r--r--comphelper/inc/comphelper/interaction.hxx2
-rw-r--r--comphelper/inc/comphelper/locale.hxx14
-rw-r--r--comphelper/inc/comphelper/mediadescriptor.hxx10
-rw-r--r--comphelper/inc/comphelper/numberedcollection.hxx8
-rw-r--r--comphelper/inc/comphelper/propagg.hxx12
-rw-r--r--comphelper/inc/comphelper/proparrhlp.hxx2
-rw-r--r--comphelper/inc/comphelper/property.hxx8
-rw-r--r--comphelper/inc/comphelper/seqstream.hxx4
-rw-r--r--comphelper/inc/comphelper/sequence.hxx2
-rw-r--r--comphelper/inc/comphelper/sequenceashashmap.hxx14
-rw-r--r--comphelper/inc/comphelper/sequenceasvector.hxx2
-rw-r--r--comphelper/inc/comphelper/string.hxx4
-rw-r--r--comphelper/inc/comphelper/types.hxx2
-rw-r--r--comphelper/source/container/embeddedobjectcontainer.cxx16
-rw-r--r--comphelper/source/container/enumerablemap.cxx2
-rw-r--r--comphelper/source/misc/accessiblecontexthelper.cxx2
-rw-r--r--comphelper/source/misc/asyncnotification.cxx2
-rw-r--r--comphelper/source/misc/locale.cxx4
-rw-r--r--comphelper/source/misc/mediadescriptor.cxx12
-rw-r--r--comphelper/source/misc/numberedcollection.cxx2
-rw-r--r--comphelper/source/misc/proxyaggregation.cxx2
-rw-r--r--comphelper/source/misc/scopeguard.cxx4
-rw-r--r--comphelper/source/misc/sequenceashashmap.cxx4
-rw-r--r--configure.in40
-rw-r--r--connectivity/inc/connectivity/FValue.hxx2
-rw-r--r--connectivity/inc/connectivity/dbmetadata.hxx2
-rw-r--r--connectivity/inc/connectivity/dbtools.hxx10
-rw-r--r--connectivity/inc/connectivity/parameters.hxx4
-rw-r--r--connectivity/inc/connectivity/sdbcx/VCatalog.hxx2
-rw-r--r--connectivity/inc/connectivity/sqlerror.hxx8
-rw-r--r--connectivity/inc/connectivity/sqliterator.hxx8
-rw-r--r--connectivity/inc/connectivity/sqlnode.hxx4
-rw-r--r--connectivity/inc/connectivity/virtualdbtools.hxx2
-rw-r--r--connectivity/qa/complex/connectivity/JdbcLongVarCharTest.java2
-rw-r--r--connectivity/qa/complex/connectivity/hsqldb/DatabaseMetaData.java2
-rw-r--r--connectivity/source/commontools/TSkipDeletedSet.cxx2
-rw-r--r--connectivity/source/commontools/parameters.cxx10
-rw-r--r--connectivity/source/cpool/ZConnectionPool.hxx2
-rw-r--r--connectivity/source/cpool/ZPoolCollection.hxx2
-rw-r--r--connectivity/source/drivers/ado/ADatabaseMetaDataResultSet.cxx2
-rw-r--r--connectivity/source/drivers/ado/AResultSet.cxx2
-rw-r--r--connectivity/source/drivers/dbase/DTable.cxx2
-rw-r--r--connectivity/source/drivers/evoab2/NDatabaseMetaData.cxx2
-rw-r--r--connectivity/source/drivers/evoab2/NDriver.hxx2
-rw-r--r--connectivity/source/drivers/evoab2/NStatement.cxx2
-rw-r--r--connectivity/source/drivers/file/FPreparedStatement.cxx2
-rw-r--r--connectivity/source/drivers/jdbc/DatabaseMetaData.cxx16
-rw-r--r--connectivity/source/drivers/jdbc/JDriver.cxx2
-rw-r--r--connectivity/source/drivers/kab/KStatement.cxx2
-rw-r--r--connectivity/source/drivers/macab/MacabRecords.cxx2
-rw-r--r--connectivity/source/drivers/macab/MacabStatement.cxx2
-rw-r--r--connectivity/source/inc/TSkipDeletedSet.hxx2
-rw-r--r--connectivity/source/inc/ado/ADatabaseMetaDataResultSet.hxx2
-rw-r--r--connectivity/source/inc/file/FNumericFunctions.hxx2
-rw-r--r--connectivity/source/inc/file/FResultSet.hxx2
-rw-r--r--connectivity/source/inc/file/FStatement.hxx2
-rw-r--r--connectivity/source/inc/flat/ETable.hxx2
-rw-r--r--connectivity/source/inc/java/ContextClassLoader.hxx2
-rw-r--r--connectivity/source/inc/java/tools.hxx4
-rw-r--r--connectivity/source/inc/odbc/ODatabaseMetaDataResultSet.hxx2
-rw-r--r--connectivity/source/parse/sqlnode.cxx4
-rw-r--r--connectivity/workben/skeleton/SResultSet.hxx2
-rw-r--r--connectivity/workben/skeleton/how_to_write_a_driver.txt2
-rw-r--r--cosv/inc/cosv/persist.hxx2
-rw-r--r--cosv/inc/cosv/ploc_dir.hxx2
-rw-r--r--cosv/inc/cosv/tpl/dyn.hxx2
-rw-r--r--cppu/inc/uno/threadpool.h4
-rw-r--r--cppu/source/LogBridge/LogBridge.cxx2
-rw-r--r--cppu/source/helper/purpenv/helper_purpenv_Proxy.cxx2
-rw-r--r--cppu/source/threadpool/threadpool.hxx2
-rw-r--r--cppu/source/uno/data.cxx2
-rw-r--r--cppu/source/uno/lbmap.cxx2
-rw-r--r--cppuhelper/inc/cppuhelper/compbase_ex.hxx2
-rw-r--r--cppuhelper/inc/cppuhelper/propshlp.hxx8
-rw-r--r--cppuhelper/source/bootstrap.cxx2
-rw-r--r--cppuhelper/source/component.cxx2
-rw-r--r--cppuhelper/source/component_context.cxx4
-rw-r--r--cppuhelper/source/findsofficepath.c6
-rw-r--r--cppuhelper/source/propshlp.cxx6
-rw-r--r--cppuhelper/source/servicefactory.cxx4
-rw-r--r--cppuhelper/test/testhelper.cxx2
-rw-r--r--cpputools/source/registercomponent/registercomponent.cxx2
-rw-r--r--crashrep/source/unx/main.cxx2
-rw-r--r--crashrep/source/win32/soreport.cpp2
-rw-r--r--cui/source/customize/acccfg.cxx2
-rw-r--r--cui/source/customize/cfg.cxx4
-rw-r--r--cui/source/dialogs/SpellDialog.cxx2
-rw-r--r--cui/source/dialogs/about.cxx2
-rw-r--r--cui/source/dialogs/commonlingui.hxx2
-rw-r--r--cui/source/dialogs/scriptdlg.cxx2
-rw-r--r--cui/source/dialogs/showcols.cxx4
-rw-r--r--cui/source/factory/dlgfact.cxx20
-rw-r--r--cui/source/factory/dlgfact.hxx11
-rw-r--r--cui/source/inc/bbdlg.hxx13
-rw-r--r--cui/source/inc/cuihyperdlg.hxx2
-rwxr-xr-xcui/source/inc/cuires.hrc6
-rw-r--r--cui/source/inc/cuitabline.hxx2
-rw-r--r--cui/source/inc/page.hxx15
-rw-r--r--cui/source/inc/transfrm.hxx2
-rw-r--r--cui/source/options/optcolor.hrc8
-rw-r--r--cui/source/options/optcolor.src8
-rw-r--r--cui/source/options/optsave.cxx11
-rw-r--r--cui/source/options/optsave.hrc1
-rw-r--r--cui/source/options/optsave.hxx1
-rw-r--r--cui/source/options/optsave.src27
-rw-r--r--cui/source/options/treeopt.cxx17
-rw-r--r--cui/source/tabpages/bbdlg.cxx81
-rw-r--r--cui/source/tabpages/bbdlg.src46
-rw-r--r--cui/source/tabpages/page.cxx354
-rw-r--r--cui/source/tabpages/tparea.cxx8
-rw-r--r--cui/source/tabpages/tpline.cxx2
-rw-r--r--cui/source/tabpages/transfrm.cxx2
-rw-r--r--dbaccess/qa/complex/dbaccess/DatabaseDocument.java2
-rw-r--r--dbaccess/source/core/api/CacheSet.cxx6
-rw-r--r--dbaccess/source/core/api/KeySet.cxx2
-rw-r--r--dbaccess/source/core/api/RowSet.cxx2
-rw-r--r--dbaccess/source/core/api/RowSet.hxx4
-rw-r--r--dbaccess/source/core/api/RowSetBase.cxx2
-rw-r--r--dbaccess/source/core/api/RowSetBase.hxx4
-rw-r--r--dbaccess/source/core/api/RowSetCache.cxx4
-rw-r--r--dbaccess/source/core/api/definitioncolumn.cxx2
-rw-r--r--dbaccess/source/core/api/query.cxx2
-rw-r--r--dbaccess/source/core/api/querycomposer.cxx2
-rw-r--r--dbaccess/source/core/api/querycontainer.cxx2
-rw-r--r--dbaccess/source/core/dataaccess/ComponentDefinition.cxx2
-rw-r--r--dbaccess/source/core/dataaccess/ModelImpl.hxx2
-rw-r--r--dbaccess/source/core/dataaccess/connection.cxx2
-rw-r--r--dbaccess/source/core/dataaccess/databasedocument.cxx2
-rw-r--r--dbaccess/source/core/dataaccess/databasedocument.hxx2
-rw-r--r--dbaccess/source/core/dataaccess/datasource.cxx8
-rw-r--r--dbaccess/source/core/misc/DatabaseDataProvider.cxx2
-rw-r--r--dbaccess/source/ext/adabas/Acomponentmodule.hxx2
-rw-r--r--dbaccess/source/filter/xml/xmlfilter.cxx2
-rw-r--r--dbaccess/source/ui/app/AppController.hxx6
-rw-r--r--dbaccess/source/ui/app/AppControllerDnD.cxx6
-rw-r--r--dbaccess/source/ui/app/AppDetailPageHelper.hxx2
-rw-r--r--dbaccess/source/ui/app/AppDetailView.cxx2
-rw-r--r--dbaccess/source/ui/browser/brwctrlr.cxx4
-rw-r--r--dbaccess/source/ui/browser/genericcontroller.cxx4
-rw-r--r--dbaccess/source/ui/browser/sbagrid.cxx2
-rw-r--r--dbaccess/source/ui/browser/unodatbr.cxx10
-rw-r--r--dbaccess/source/ui/control/dbtreelistbox.cxx2
-rw-r--r--dbaccess/source/ui/control/tabletree.cxx2
-rw-r--r--dbaccess/source/ui/dlg/AdabasStat.hxx2
-rw-r--r--dbaccess/source/ui/dlg/ConnectionPage.hxx2
-rw-r--r--dbaccess/source/ui/dlg/DbAdminImpl.hxx2
-rw-r--r--dbaccess/source/ui/dlg/UserAdmin.cxx2
-rw-r--r--dbaccess/source/ui/dlg/adminpages.hxx8
-rw-r--r--dbaccess/source/ui/dlg/advancedsettings.cxx2
-rw-r--r--dbaccess/source/ui/dlg/dbadmin.cxx2
-rw-r--r--dbaccess/source/ui/dlg/directsql.cxx2
-rw-r--r--dbaccess/source/ui/dlg/generalpage.cxx2
-rw-r--r--dbaccess/source/ui/dlg/generalpage.hxx2
-rw-r--r--dbaccess/source/ui/dlg/tablespage.cxx4
-rw-r--r--dbaccess/source/ui/inc/JoinTableView.hxx4
-rw-r--r--dbaccess/source/ui/inc/TableController.hxx4
-rw-r--r--dbaccess/source/ui/inc/UITools.hxx8
-rw-r--r--dbaccess/source/ui/inc/brwctrlr.hxx4
-rw-r--r--dbaccess/source/ui/inc/datasourcemap.hxx2
-rw-r--r--dbaccess/source/ui/inc/dbadmin.hxx2
-rw-r--r--dbaccess/source/ui/inc/dbwiz.hxx2
-rw-r--r--dbaccess/source/ui/inc/dbwizsetup.hxx2
-rw-r--r--dbaccess/source/ui/inc/dsitems.hxx2
-rw-r--r--dbaccess/source/ui/inc/sbagrid.hxx2
-rw-r--r--dbaccess/source/ui/misc/TokenWriter.cxx2
-rw-r--r--dbaccess/source/ui/misc/UITools.cxx2
-rw-r--r--dbaccess/source/ui/misc/indexcollection.cxx2
-rw-r--r--dbaccess/source/ui/querydesign/ConnectionLineAccess.cxx2
-rw-r--r--dbaccess/source/ui/querydesign/JoinTableView.cxx4
-rw-r--r--dbaccess/source/ui/querydesign/QueryDesignView.cxx8
-rw-r--r--dbaccess/source/ui/querydesign/QueryTableView.cxx2
-rw-r--r--dbaccess/source/ui/querydesign/SelectionBrowseBox.cxx4
-rw-r--r--dbaccess/source/ui/querydesign/SelectionBrowseBox.hxx10
-rw-r--r--dbaccess/source/ui/querydesign/TableWindow.cxx4
-rw-r--r--dbaccess/source/ui/querydesign/TableWindowAccess.cxx2
-rw-r--r--dbaccess/source/ui/querydesign/querycontroller.cxx2
-rw-r--r--dbaccess/source/ui/relationdesign/RelationTableView.cxx2
-rw-r--r--dbaccess/source/ui/tabledesign/TableController.cxx6
-rw-r--r--dbaccess/source/ui/uno/copytablewizard.cxx8
-rw-r--r--desktop/source/app/app.cxx20
-rw-r--r--desktop/source/app/appinit.cxx2
-rw-r--r--desktop/source/app/dispatchwatcher.cxx2
-rw-r--r--desktop/source/app/dispatchwatcher.hxx2
-rw-r--r--desktop/source/app/langselect.cxx2
-rw-r--r--desktop/source/app/officeipcthread.cxx6
-rw-r--r--desktop/source/deployment/inc/dp_descriptioninfoset.hxx4
-rw-r--r--desktop/source/deployment/manager/dp_extensionmanager.cxx6
-rw-r--r--desktop/source/deployment/misc/dp_descriptioninfoset.cxx2
-rw-r--r--desktop/source/deployment/misc/dp_misc.cxx2
-rw-r--r--desktop/source/deployment/misc/dp_platform.cxx2
-rw-r--r--desktop/source/deployment/misc/dp_resource.cxx2
-rw-r--r--desktop/source/deployment/misc/dp_ucb.cxx2
-rw-r--r--desktop/source/deployment/registry/configuration/dp_configuration.cxx2
-rw-r--r--desktop/source/deployment/registry/dp_backend.cxx2
-rw-r--r--desktop/source/deployment/registry/help/dp_help.cxx2
-rw-r--r--desktop/source/deployment/registry/inc/dp_backenddb.hxx2
-rw-r--r--desktop/source/deployment/registry/package/dp_package.cxx4
-rw-r--r--desktop/source/migration/cfgfilter.cxx2
-rwxr-xr-xdesktop/source/migration/migration.cxx2
-rw-r--r--desktop/source/migration/services/jvmfwk.cxx2
-rw-r--r--desktop/source/splash/splash.cxx2
-rw-r--r--desktop/win32/source/QuickStart/QuickStart.cpp2
-rw-r--r--desktop/win32/source/applauncher/launcher.cxx2
-rw-r--r--desktop/win32/source/setup/setup.cpp4
-rw-r--r--desktop/win32/source/unoinfo.cxx5
-rw-r--r--desktop/win32/source/wrapper.h4
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/baseprimitive2d.hxx4
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/metafileprimitive2d.hxx2
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/modifiedcolorprimitive2d.hxx2
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/pointarrayprimitive2d.hxx2
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/polygonprimitive2d.hxx2
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/polypolygonprimitive2d.hxx2
-rw-r--r--drawinglayer/inc/drawinglayer/primitive3d/polygonprimitive3d.hxx2
-rw-r--r--drawinglayer/inc/drawinglayer/primitive3d/polypolygonprimitive3d.hxx2
-rw-r--r--drawinglayer/source/primitive2d/metafileprimitive2d.cxx13
-rw-r--r--drawinglayer/source/processor2d/contourextractor2d.cxx6
-rw-r--r--drawinglayer/source/processor2d/hittestprocessor2d.cxx6
-rw-r--r--drawinglayer/source/processor2d/linegeometryextractor2d.cxx2
-rw-r--r--drawinglayer/source/processor2d/textaspolygonextractor2d.cxx4
-rw-r--r--drawinglayer/source/processor2d/vclmetafileprocessor2d.cxx4
-rw-r--r--drawinglayer/source/processor2d/vclpixelprocessor2d.cxx2
-rw-r--r--drawinglayer/source/processor2d/vclprocessor2d.cxx6
-rw-r--r--drawinglayer/source/processor3d/geometry2dextractor.cxx2
-rw-r--r--dtrans/source/cnttype/wbench/testcnttype.cxx2
-rw-r--r--dtrans/source/inc/MtaOleClipb.hxx2
-rw-r--r--dtrans/source/win32/clipb/WinClipbImpl.cxx2
-rw-r--r--dtrans/source/win32/clipb/WinClipboard.cxx2
-rw-r--r--dtrans/source/win32/dtobj/DataFmtTransl.cxx2
-rw-r--r--dtrans/source/win32/mtaole/MtaOleClipb.cxx2
-rw-r--r--dtrans/source/win32/workbench/test_wincb.cxx2
-rw-r--r--editeng/inc/editeng/AccessibleContextBase.hxx2
-rw-r--r--editeng/inc/editeng/AccessibleStaticTextBase.hxx2
-rw-r--r--editeng/inc/editeng/editdata.hxx2
-rw-r--r--editeng/inc/editeng/hangulhanja.hxx2
-rw-r--r--editeng/inc/editeng/unoedsrc.hxx2
-rw-r--r--editeng/source/accessibility/AccessibleEditableTextPara.cxx2
-rw-r--r--editeng/source/accessibility/AccessibleStaticTextBase.cxx2
-rw-r--r--editeng/source/editeng/editeng.cxx2
-rw-r--r--editeng/source/editeng/editobj.cxx2
-rw-r--r--editeng/source/editeng/editview.cxx2
-rw-r--r--editeng/source/editeng/eehtml.cxx2
-rw-r--r--editeng/source/editeng/impedit.cxx2
-rw-r--r--editeng/source/editeng/impedit2.cxx4
-rw-r--r--editeng/source/editeng/impedit3.cxx83
-rw-r--r--editeng/source/editeng/impedit4.cxx6
-rw-r--r--editeng/source/editeng/textconv.hxx2
-rw-r--r--editeng/source/misc/hangulhanja.cxx2
-rw-r--r--editeng/source/misc/unolingu.cxx2
-rw-r--r--embeddedobj/source/commonembedding/persistence.cxx8
-rw-r--r--embeddedobj/source/general/dummyobject.cxx2
-rw-r--r--embeddedobj/source/inc/commonembobj.hxx4
-rw-r--r--embeddedobj/source/msole/olecomponent.cxx10
-rw-r--r--embeddedobj/source/msole/oleembed.cxx2
-rw-r--r--embeddedobj/source/msole/olepersist.cxx6
-rw-r--r--embeddedobj/test/Container1/EmbedContApp.java4
-rw-r--r--embeddedobj/test/Container1/NativeView.java12
-rw-r--r--embeddedobj/test/MainThreadExecutor/xexecutor.cxx2
-rw-r--r--embedserv/source/embed/docholder.cxx4
-rw-r--r--embedserv/source/embed/ed_ioleobject.cxx2
-rw-r--r--extensions.lst14
-rw-r--r--extensions/prj/build.lst1
-rw-r--r--extensions/prj/d.lst2
-rw-r--r--extensions/source/bibliography/framectr.cxx2
-rw-r--r--extensions/source/inc/componentmodule.hxx2
-rw-r--r--extensions/source/logging/loghandler.hxx4
-rw-r--r--extensions/source/macosx/spotlight/OOoContentDataParser.m2
-rw-r--r--extensions/source/macosx/spotlight/unzip.h4
-rw-r--r--extensions/source/macosx/spotlight/unzip.m6
-rw-r--r--extensions/source/mozbootstrap/MMozillaBootstrap.cxx233
-rw-r--r--extensions/source/mozbootstrap/MMozillaBootstrap.hxx97
-rw-r--r--extensions/source/mozbootstrap/MNSFolders.cxx147
-rw-r--r--extensions/source/mozbootstrap/MNSFolders.hxx (renamed from sw/inc/unobrushitemhelper.hxx)22
-rw-r--r--extensions/source/mozbootstrap/MNSINIParser.cxx133
-rw-r--r--extensions/source/mozbootstrap/MNSINIParser.hxx79
-rw-r--r--extensions/source/mozbootstrap/MNSProfileDiscover.cxx221
-rw-r--r--extensions/source/mozbootstrap/MNSProfileDiscover.hxx98
-rw-r--r--extensions/source/mozbootstrap/makefile.mk76
-rw-r--r--extensions/source/mozbootstrap/mozbootstrap.component27
-rw-r--r--extensions/source/ole/unoconversionutilities.hxx6
-rw-r--r--extensions/source/ole/unoobjw.cxx6
-rw-r--r--extensions/source/oooimprovement/myconfigurationhelper.hxx8
-rw-r--r--extensions/source/propctrlr/browserlistbox.cxx2
-rw-r--r--extensions/source/propctrlr/cellbindinghandler.hxx2
-rw-r--r--extensions/source/propctrlr/cellbindinghelper.hxx6
-rw-r--r--extensions/source/propctrlr/eventhandler.cxx2
-rw-r--r--extensions/source/propctrlr/eventhandler.hxx6
-rw-r--r--extensions/source/propctrlr/fontdialog.cxx2
-rw-r--r--extensions/source/propctrlr/formcomponenthandler.cxx2
-rw-r--r--extensions/source/propctrlr/formcomponenthandler.hxx2
-rw-r--r--extensions/source/propctrlr/pcrcomponentcontext.hxx4
-rw-r--r--extensions/source/scanner/twain.cxx2
-rw-r--r--extensions/source/update/check/download.cxx2
-rw-r--r--extensions/source/update/check/updatecheck.cxx2
-rwxr-xr-xextensions/source/update/check/updatecheckconfig.hxx4
-rw-r--r--extensions/source/update/ui/updatecheckui.cxx2
-rw-r--r--extensions/test/ole/OleConverterVar1/convTest.cxx2
-rw-r--r--extensions/test/ole/StarBasic_OleClient/oleclient.bas2
-rw-r--r--external/mingwheaders/mingw_atl_headers.patch4
-rw-r--r--external_deps.lst50
-rw-r--r--extras/source/misc_config/wizard/web/layouts/frame_bottom/tocframe.html.xsl2
-rw-r--r--extras/source/misc_config/wizard/web/layouts/frame_left/tocframe.html.xsl2
-rw-r--r--extras/source/misc_config/wizard/web/layouts/frame_right/tocframe.html.xsl2
-rw-r--r--extras/source/misc_config/wizard/web/layouts/frame_top/tocframe.html.xsl2
-rw-r--r--extras/source/misc_config/wizard/web/layouts/layout.xsl4
-rw-r--r--extras/source/misc_config/wizard/web/layouts/layoutF.xsl2
-rw-r--r--extras/source/misc_config/wizard/web/layouts/layoutX.xsl4
-rw-r--r--extras/source/misc_config/wizard/web/layouts/simple/index.html.xsl2
-rw-r--r--extras/source/misc_config/wizard/web/layouts/source.xml.xsl2
-rw-r--r--extras/source/misc_config/wizard/web/layouts/table_2/index.html.xsl4
-rw-r--r--extras/source/misc_config/wizard/web/layouts/table_3/index.html.xsl4
-rw-r--r--extras/source/misc_config/wizard/web/layouts/zigzag/index.html.xsl2
-rw-r--r--fileaccess/source/FileAccess.cxx16
-rw-r--r--filter/inc/filter/msfilter/escherex.hxx2
-rw-r--r--filter/inc/filter/msfilter/mscodec.hxx4
-rw-r--r--filter/inc/filter/msfilter/msocximex.hxx4
-rw-r--r--filter/inc/filter/msfilter/svxmsbas.hxx2
-rw-r--r--filter/qa/complex/filter/detection/typeDetection/Helper.java6
-rw-r--r--filter/qa/complex/filter/misc/FinalizedMandatoryTest.java2
-rw-r--r--filter/source/config/cache/basecontainer.cxx22
-rw-r--r--filter/source/config/cache/basecontainer.hxx12
-rw-r--r--filter/source/config/cache/cacheitem.hxx10
-rw-r--r--filter/source/config/cache/configflush.cxx4
-rw-r--r--filter/source/config/cache/constant.hxx4
-rw-r--r--filter/source/config/cache/contenthandlerfactory.cxx2
-rw-r--r--filter/source/config/cache/filtercache.cxx80
-rw-r--r--filter/source/config/cache/filtercache.hxx56
-rw-r--r--filter/source/config/cache/filterfactory.cxx22
-rw-r--r--filter/source/config/cache/frameloaderfactory.cxx2
-rw-r--r--filter/source/config/cache/lateinitlistener.cxx2
-rw-r--r--filter/source/config/cache/querytokenizer.hxx4
-rw-r--r--filter/source/config/cache/typedetection.cxx32
-rw-r--r--filter/source/config/cache/typedetection.hxx24
-rw-r--r--filter/source/config/cache/versions.hxx2
-rw-r--r--filter/source/config/fragments/makefile.mk2
-rwxr-xr-xfilter/source/config/tools/merge/pyAltFCFGMerge4
-rw-r--r--filter/source/config/tools/split/FCFGSplit.java4
-rw-r--r--filter/source/config/tools/split/Splitter.java2
-rw-r--r--filter/source/flash/swfdialog.cxx2
-rw-r--r--filter/source/flash/swfexporter.cxx80
-rw-r--r--filter/source/flash/swfexporter.hxx22
-rw-r--r--filter/source/flash/swffilter.cxx90
-rw-r--r--filter/source/flash/swfwriter.cxx2
-rw-r--r--filter/source/flash/swfwriter1.cxx16
-rw-r--r--filter/source/graphicfilter/ieps/ieps.cxx2
-rw-r--r--filter/source/graphicfilter/ipbm/ipbm.cxx9
-rw-r--r--filter/source/graphicfilter/ipcd/ipcd.cxx3
-rw-r--r--filter/source/graphicfilter/ipcx/ipcx.cxx3
-rw-r--r--filter/source/graphicfilter/iras/iras.cxx3
-rw-r--r--filter/source/graphicfilter/itga/itga.cxx2
-rw-r--r--filter/source/msfilter/countryid.cxx2
-rw-r--r--filter/source/msfilter/dffpropset.cxx2
-rw-r--r--filter/source/msfilter/escherex.cxx15
-rw-r--r--filter/source/msfilter/msdffimp.cxx145
-rw-r--r--filter/source/msfilter/msocximex.cxx14
-rw-r--r--filter/source/msfilter/msvbahelper.cxx2
-rw-r--r--filter/source/msfilter/svxmsbas.cxx2
-rw-r--r--filter/source/svg/svgexport.cxx154
-rw-r--r--filter/source/svg/svgfilter.cxx94
-rw-r--r--filter/source/svg/svgfilter.hxx5
-rw-r--r--filter/source/svg/svgwriter.cxx12
-rw-r--r--filter/source/xmlfilterdetect/filterdetect.cxx2
-rw-r--r--filter/source/xslt/common/math.xsl2
-rw-r--r--filter/source/xslt/export/spreadsheetml/ooo2spreadsheetml.xsl2
-rw-r--r--filter/source/xslt/export/spreadsheetml/table.xsl2
-rw-r--r--filter/source/xslt/export/wordml/ooo2wordml_draw.xsl2
-rw-r--r--filter/source/xslt/export/wordml/ooo2wordml_field.xsl2
-rw-r--r--filter/source/xslt/import/spreadsheetml/spreadsheetml2ooo.xsl2
-rw-r--r--filter/source/xslt/import/uof2/uof2odf.xsl6
-rw-r--r--filter/source/xslt/import/wordml/wordml2ooo.xsl2
-rw-r--r--filter/source/xslt/import/wordml/wordml2ooo_draw.xsl2
-rw-r--r--filter/source/xslt/import/wordml/wordml2ooo_path.xsl10
-rw-r--r--filter/source/xslt/odf2xhtml/export/common/table/table_cells.xsl10
-rw-r--r--filter/source/xslt/odf2xhtml/export/common/table/table_rows.xsl2
-rw-r--r--filter/source/xslt/odf2xhtml/export/common/table_of_content.xsl2
-rw-r--r--filter/source/xslt/odf2xhtml/export/xhtml/body.xsl8
-rw-r--r--filter/source/xslt/odf2xhtml/export/xhtml/opendoc2xhtml.xsl2
-rw-r--r--filter/source/xsltdialog/xmlfiltertestdialog.cxx2
-rw-r--r--filter/source/xsltfilter/com/sun/star/comp/xsltfilter/Base64.java4
-rw-r--r--forms/qa/complex/forms/CheckOGroupBoxModel.java6
-rw-r--r--forms/source/component/Columns.cxx2
-rw-r--r--forms/source/component/DatabaseForm.cxx4
-rw-r--r--forms/source/component/FormComponent.cxx6
-rw-r--r--forms/source/component/ListBox.cxx2
-rw-r--r--forms/source/component/RadioButton.hxx2
-rw-r--r--forms/source/component/clickableimage.cxx2
-rw-r--r--forms/source/component/propertybaghelper.cxx2
-rw-r--r--forms/source/inc/FormComponent.hxx4
-rw-r--r--forms/source/richtext/richtextcontrol.cxx4
-rw-r--r--forms/source/richtext/richtextcontrol.hxx2
-rw-r--r--forms/source/richtext/richtextimplcontrol.cxx6
-rw-r--r--forms/source/solar/component/navbarcontrol.cxx4
-rw-r--r--forms/source/solar/component/navbarcontrol.hxx2
-rw-r--r--forms/source/solar/inc/navtoolbar.hxx2
-rw-r--r--forms/source/xforms/binding.cxx4
-rw-r--r--forms/source/xforms/convert.hxx2
-rw-r--r--forms/source/xforms/datatypes.hxx4
-rw-r--r--forms/source/xforms/model.cxx2
-rw-r--r--forms/source/xforms/model_ui.cxx2
-rw-r--r--formula/source/core/api/token.cxx2
-rw-r--r--fpicker/source/aqua/SalAquaFilePicker.cxx2
-rw-r--r--fpicker/source/aqua/SalAquaFolderPicker.cxx2
-rw-r--r--fpicker/source/office/OfficeFilePicker.cxx2
-rw-r--r--fpicker/source/office/fpinteraction.cxx2
-rw-r--r--fpicker/source/office/fpsmartcontent.cxx20
-rw-r--r--fpicker/source/office/iodlg.cxx4
-rw-r--r--fpicker/source/unx/gnome/SalGtkFilePicker.cxx2
-rw-r--r--fpicker/source/unx/gnome/SalGtkFolderPicker.cxx2
-rw-r--r--fpicker/source/unx/kde4/KDE4FilePicker.cxx2
-rw-r--r--fpicker/source/win32/filepicker/FileOpenDlg.hxx4
-rw-r--r--fpicker/source/win32/filepicker/FilePicker.cxx2
-rw-r--r--fpicker/source/win32/filepicker/PreviewCtrl.cxx4
-rw-r--r--fpicker/source/win32/filepicker/PreviewCtrl.hxx2
-rw-r--r--fpicker/source/win32/filepicker/VistaFilePicker.cxx4
-rw-r--r--fpicker/source/win32/filepicker/VistaFilePickerImpl.cxx2
-rw-r--r--fpicker/source/win32/filepicker/VistaFilePickerImpl.hxx4
-rw-r--r--fpicker/source/win32/filepicker/WinFileOpenImpl.cxx2
-rw-r--r--fpicker/source/win32/filepicker/dialogcustomcontrols.cxx2
-rw-r--r--fpicker/source/win32/filepicker/dibpreview.cxx2
-rw-r--r--fpicker/source/win32/filepicker/filepickerstate.cxx2
-rw-r--r--fpicker/source/win32/filepicker/helppopupwindow.cxx2
-rw-r--r--fpicker/source/win32/filepicker/helppopupwindow.hxx4
-rw-r--r--fpicker/source/win32/filepicker/workbench/Test_fps.cxx4
-rw-r--r--fpicker/source/win32/folderpicker/MtaFop.cxx4
-rw-r--r--fpicker/source/win32/folderpicker/MtaFop.hxx2
-rw-r--r--fpicker/source/win32/folderpicker/workbench/Test_fops.cxx4
-rw-r--r--framework/inc/classes/checkediterator.hxx4
-rw-r--r--framework/inc/classes/droptargetlistener.hxx2
-rw-r--r--framework/inc/classes/filtercache.hxx2
-rw-r--r--framework/inc/classes/filtercachedata.hxx16
-rw-r--r--framework/inc/classes/framecontainer.hxx2
-rw-r--r--framework/inc/classes/protocolhandlercache.hxx6
-rw-r--r--framework/inc/classes/servicemanager.hxx12
-rw-r--r--framework/inc/commands.h2
-rw-r--r--framework/inc/dispatch/basedispatcher.hxx10
-rw-r--r--framework/inc/dispatch/blankdispatcher.hxx2
-rw-r--r--framework/inc/dispatch/closedispatcher.hxx18
-rw-r--r--framework/inc/dispatch/createdispatcher.hxx2
-rw-r--r--framework/inc/dispatch/dispatchprovider.hxx4
-rw-r--r--framework/inc/dispatch/helpagentdispatcher.hxx2
-rw-r--r--framework/inc/dispatch/interceptionhelper.hxx2
-rw-r--r--framework/inc/dispatch/mailtodispatcher.hxx4
-rw-r--r--framework/inc/dispatch/menudispatcher.hxx8
-rw-r--r--framework/inc/dispatch/oxt_handler.hxx2
-rw-r--r--framework/inc/dispatch/popupmenudispatcher.hxx2
-rw-r--r--framework/inc/dispatch/selfdispatcher.hxx2
-rw-r--r--framework/inc/dispatch/servicehandler.hxx6
-rw-r--r--framework/inc/dispatch/startmoduledispatcher.hxx4
-rw-r--r--framework/inc/dispatch/systemexec.hxx4
-rw-r--r--framework/inc/framework/addonmenu.hxx15
-rw-r--r--framework/inc/framework/addonsoptions.hxx4
-rw-r--r--framework/inc/framework/framelistanalyzer.hxx6
-rw-r--r--framework/inc/framework/preventduplicateinteraction.hxx6
-rw-r--r--framework/inc/general.h2
-rw-r--r--framework/inc/helper/fixeddocumentproperties.hxx8
-rw-r--r--framework/inc/helper/ocomponentaccess.hxx6
-rw-r--r--framework/inc/helper/ocomponentenumeration.hxx2
-rw-r--r--framework/inc/helper/oframes.hxx2
-rw-r--r--framework/inc/helper/otasksenumeration.hxx2
-rw-r--r--framework/inc/helper/persistentwindowstate.hxx6
-rw-r--r--framework/inc/helper/statusindicator.hxx2
-rw-r--r--framework/inc/helper/statusindicatorfactory.hxx2
-rw-r--r--framework/inc/helper/tagwindowasmodified.hxx4
-rw-r--r--framework/inc/helper/titlebarupdate.hxx4
-rw-r--r--framework/inc/helper/vclstatusindicator.hxx2
-rw-r--r--framework/inc/interaction/quietinteraction.hxx8
-rw-r--r--framework/inc/jobs/configaccess.hxx2
-rw-r--r--framework/inc/jobs/helponstartup.hxx8
-rw-r--r--framework/inc/jobs/job.hxx12
-rw-r--r--framework/inc/jobs/jobconst.hxx2
-rw-r--r--framework/inc/jobs/jobdata.hxx10
-rw-r--r--framework/inc/jobs/jobexecutor.hxx2
-rw-r--r--framework/inc/jobs/jobresult.hxx2
-rw-r--r--framework/inc/jobs/joburl.hxx2
-rw-r--r--framework/inc/jobs/shelljob.hxx2
-rw-r--r--framework/inc/loadstate.h4
-rw-r--r--framework/inc/macros/debug/assertion.hxx2
-rw-r--r--framework/inc/macros/debug/event.hxx2
-rw-r--r--framework/inc/macros/debug/filterdbg.hxx2
-rw-r--r--framework/inc/macros/debug/memorymeasure.hxx2
-rw-r--r--framework/inc/macros/debug/timemeasure.hxx2
-rw-r--r--framework/inc/macros/xserviceinfo.hxx2
-rw-r--r--framework/inc/macros/xtypeprovider.hxx4
-rw-r--r--framework/inc/protocols.h2
-rw-r--r--framework/inc/queries.h2
-rw-r--r--framework/inc/recording/dispatchrecordersupplier.hxx4
-rw-r--r--framework/inc/services/autorecovery.hxx40
-rw-r--r--framework/inc/services/backingcomp.hxx2
-rw-r--r--framework/inc/services/contenthandlerfactory.hxx2
-rw-r--r--framework/inc/services/desktop.hxx20
-rw-r--r--framework/inc/services/detectorfactory.hxx10
-rw-r--r--framework/inc/services/frame.hxx4
-rw-r--r--framework/inc/services/frameloaderfactory.hxx14
-rw-r--r--framework/inc/services/layoutmanager.hxx2
-rw-r--r--framework/inc/services/license.hxx2
-rw-r--r--framework/inc/services/logindialog.hxx18
-rw-r--r--framework/inc/services/modulemanager.hxx4
-rw-r--r--framework/inc/services/pathsettings.hxx8
-rw-r--r--framework/inc/services/pluginframe.hxx4
-rw-r--r--framework/inc/services/substitutepathvars.hxx2
-rw-r--r--framework/inc/services/task.hxx6
-rw-r--r--framework/inc/services/taskcreatorsrv.hxx4
-rw-r--r--framework/inc/stdtypes.h10
-rw-r--r--framework/inc/threadhelp/fairrwlock.hxx4
-rw-r--r--framework/inc/threadhelp/gate.hxx2
-rw-r--r--framework/inc/threadhelp/inoncopyable.h4
-rw-r--r--framework/inc/threadhelp/itransactionmanager.h4
-rw-r--r--framework/inc/threadhelp/lockhelper.hxx12
-rw-r--r--framework/inc/threadhelp/readguard.hxx8
-rw-r--r--framework/inc/threadhelp/resetableguard.hxx4
-rw-r--r--framework/inc/threadhelp/transactionguard.hxx10
-rw-r--r--framework/inc/threadhelp/transactionmanager.hxx2
-rw-r--r--framework/inc/threadhelp/writeguard.hxx12
-rw-r--r--framework/inc/uifactory/uielementfactorymanager.hxx2
-rw-r--r--framework/inc/xml/acceleratorconfigurationreader.hxx2
-rw-r--r--framework/qa/complex/XUserInputInterception/EventTest.java4
-rw-r--r--framework/qa/complex/contextMenuInterceptor/ContextMenuInterceptor.java2
-rw-r--r--framework/qa/complex/dispatches/Interceptor.java6
-rw-r--r--framework/qa/complex/dispatches/checkdispatchapi.java6
-rw-r--r--framework/qa/complex/framework/autosave/AutoSave.java6
-rw-r--r--framework/qa/complex/framework/autosave/Protocol.java18
-rw-r--r--framework/qa/complex/framework/recovery/RecoveryTest.java44
-rw-r--r--framework/qa/complex/imageManager/_XInitialization.java2
-rw-r--r--framework/qa/complex/imageManager/_XTypeProvider.java2
-rw-r--r--framework/qa/complex/loadAllDocuments/CheckXComponentLoader.java6
-rw-r--r--framework/qa/complex/loadAllDocuments/StatusIndicator.java2
-rw-r--r--framework/qa/complex/loadAllDocuments/StreamSimulator.java8
-rw-r--r--framework/qa/complex/path_settings/PathSettingsTest.java4
-rw-r--r--framework/source/accelerators/acceleratorcache.cxx2
-rw-r--r--framework/source/accelerators/acceleratorconfiguration.cxx10
-rw-r--r--framework/source/accelerators/acceleratorexecute.cxx2
-rw-r--r--framework/source/accelerators/acceleratorexecute.hxx2
-rw-r--r--framework/source/accelerators/keymapping.cxx2
-rw-r--r--framework/source/accelerators/presethandler.cxx6
-rw-r--r--framework/source/accelerators/storageholder.cxx6
-rw-r--r--framework/source/application/framework.cxx2
-rw-r--r--framework/source/application/login.cxx16
-rw-r--r--framework/source/classes/framecontainer.cxx12
-rw-r--r--framework/source/classes/menumanager.cxx4
-rw-r--r--framework/source/classes/taskcreator.cxx4
-rw-r--r--framework/source/dispatch/closedispatcher.cxx30
-rw-r--r--framework/source/dispatch/dispatchinformationprovider.cxx4
-rw-r--r--framework/source/dispatch/dispatchprovider.cxx12
-rw-r--r--framework/source/dispatch/helpagentdispatcher.cxx4
-rw-r--r--framework/source/dispatch/interceptionhelper.cxx6
-rw-r--r--framework/source/dispatch/loaddispatcher.cxx4
-rw-r--r--framework/source/dispatch/mailtodispatcher.cxx14
-rw-r--r--framework/source/dispatch/menudispatcher.cxx6
-rw-r--r--framework/source/dispatch/oxt_handler.cxx8
-rw-r--r--framework/source/dispatch/servicehandler.cxx12
-rw-r--r--framework/source/fwe/classes/actiontriggerpropertyset.cxx2
-rw-r--r--framework/source/fwe/classes/actiontriggerseparatorpropertyset.cxx2
-rw-r--r--framework/source/fwe/classes/addonmenu.cxx78
-rw-r--r--framework/source/fwe/classes/framelistanalyzer.cxx18
-rw-r--r--framework/source/fwe/dispatch/interaction.cxx6
-rw-r--r--framework/source/fwe/helper/titlehelper.cxx2
-rw-r--r--framework/source/fwe/helper/undomanagerhelper.cxx2
-rw-r--r--framework/source/fwe/xml/eventsdocumenthandler.cxx4
-rw-r--r--framework/source/fwe/xml/saxnamespacefilter.cxx2
-rw-r--r--framework/source/fwe/xml/statusbardocumenthandler.cxx4
-rw-r--r--framework/source/fwe/xml/toolboxdocumenthandler.cxx6
-rw-r--r--framework/source/fwi/classes/protocolhandlercache.cxx8
-rw-r--r--framework/source/fwi/jobs/configaccess.cxx2
-rw-r--r--framework/source/fwi/threadhelp/lockhelper.cxx16
-rw-r--r--framework/source/fwi/threadhelp/transactionmanager.cxx8
-rw-r--r--framework/source/fwi/uielement/constitemcontainer.cxx2
-rw-r--r--framework/source/fwi/uielement/rootitemcontainer.cxx2
-rwxr-xr-xframework/source/helper/ocomponentaccess.cxx2
-rwxr-xr-xframework/source/helper/ocomponentenumeration.cxx2
-rwxr-xr-xframework/source/helper/oframes.cxx2
-rw-r--r--framework/source/helper/persistentwindowstate.cxx4
-rw-r--r--framework/source/helper/statusindicatorfactory.cxx10
-rw-r--r--framework/source/helper/uiconfigelementwrapperbase.cxx2
-rw-r--r--framework/source/helper/uielementwrapperbase.cxx2
-rw-r--r--framework/source/helper/vclstatusindicator.cxx2
-rw-r--r--framework/source/inc/accelerators/acceleratorcache.hxx2
-rw-r--r--framework/source/inc/accelerators/acceleratorconfiguration.hxx4
-rw-r--r--framework/source/inc/accelerators/keymapping.hxx2
-rw-r--r--framework/source/inc/accelerators/presethandler.hxx16
-rw-r--r--framework/source/inc/accelerators/storageholder.hxx4
-rw-r--r--framework/source/inc/dispatch/loaddispatcher.hxx4
-rw-r--r--framework/source/inc/dispatch/windowcommanddispatch.hxx2
-rw-r--r--framework/source/inc/loadenv/actionlockguard.hxx4
-rw-r--r--framework/source/inc/loadenv/loadenv.hxx40
-rw-r--r--framework/source/inc/loadenv/loadenvexception.hxx12
-rw-r--r--framework/source/inc/pattern/frame.hxx8
-rw-r--r--framework/source/inc/pattern/storages.hxx2
-rw-r--r--framework/source/inc/pattern/window.hxx8
-rw-r--r--framework/source/interaction/quietinteraction.cxx4
-rw-r--r--framework/source/jobs/helponstartup.cxx4
-rw-r--r--framework/source/jobs/job.cxx16
-rw-r--r--framework/source/jobs/jobdata.cxx22
-rw-r--r--framework/source/jobs/jobdispatch.cxx12
-rw-r--r--framework/source/jobs/jobexecutor.cxx6
-rw-r--r--framework/source/jobs/jobresult.cxx8
-rw-r--r--framework/source/jobs/joburl.cxx12
-rw-r--r--framework/source/jobs/shelljob.cxx12
-rw-r--r--framework/source/layoutmanager/layoutmanager.cxx2
-rw-r--r--framework/source/layoutmanager/toolbarlayoutmanager.cxx54
-rw-r--r--framework/source/loadenv/loadenv.cxx48
-rw-r--r--framework/source/loadenv/targethelper.cxx4
-rw-r--r--framework/source/recording/dispatchrecordersupplier.cxx2
-rw-r--r--framework/source/services/autorecovery.cxx66
-rw-r--r--framework/source/services/backingcomp.cxx12
-rw-r--r--framework/source/services/backingwindow.cxx2
-rw-r--r--framework/source/services/desktop.cxx48
-rw-r--r--framework/source/services/frame.cxx62
-rw-r--r--framework/source/services/modulemanager.cxx4
-rw-r--r--framework/source/services/pathsettings.cxx32
-rw-r--r--framework/source/services/substitutepathvars.cxx14
-rw-r--r--framework/source/services/taskcreatorsrv.cxx6
-rw-r--r--framework/source/tabwin/tabwindow.cxx2
-rw-r--r--framework/source/uiconfiguration/moduleuicfgsupplier.cxx2
-rw-r--r--framework/source/uiconfiguration/moduleuiconfigurationmanager.cxx2
-rw-r--r--framework/source/uiconfiguration/uicategorydescription.cxx4
-rw-r--r--framework/source/uiconfiguration/uiconfigurationmanagerimpl.cxx2
-rw-r--r--framework/source/uiconfiguration/windowstateconfiguration.cxx6
-rw-r--r--framework/source/uielement/menubarmanager.cxx10
-rw-r--r--framework/source/uielement/popuptoolbarcontroller.cxx9
-rw-r--r--framework/source/uielement/uicommanddescription.cxx4
-rw-r--r--framework/source/unotypes/fwk.xml8
-rw-r--r--framework/source/xml/acceleratorconfigurationreader.cxx6
-rw-r--r--framework/source/xml/imagesdocumenthandler.cxx22
-rw-r--r--framework/test/test.cxx6
-rw-r--r--framework/test/test_componentenumeration.bas4
-rw-r--r--framework/test/test_statusindicatorfactory.bas10
-rw-r--r--framework/test/threadtest.cxx4
-rw-r--r--framework/test/threadtest/threadtest.cxx4
-rw-r--r--framework/test/typecfg/cfgview.cxx4
-rw-r--r--framework/test/typecfg/xml2xcd.cxx18
-rw-r--r--hwpfilter/source/hbox.h12
-rw-r--r--hwpfilter/source/hcode.cpp2
-rw-r--r--hwpfilter/source/hcode.h2
-rw-r--r--hwpfilter/source/hgzip.cpp2
-rw-r--r--hwpfilter/source/hinfo.cpp2
-rw-r--r--hwpfilter/source/hinfo.h2
-rw-r--r--hwpfilter/source/hpara.cpp2
-rw-r--r--hwpfilter/source/hpara.h6
-rw-r--r--hwpfilter/source/htags.h2
-rw-r--r--hwpfilter/source/hwpeq.cpp7
-rw-r--r--hwpfilter/source/hwpfile.h2
-rw-r--r--i18npool/inc/xdictionary.hxx2
-rw-r--r--i18npool/source/localedata/data/localedata_euro.map34
-rw-r--r--i18npool/source/localedata/data/makefile.mk4
-rw-r--r--i18npool/source/localedata/data/nds_DE.xml375
-rw-r--r--i18npool/source/localedata/data/tt_RU.xml354
-rw-r--r--i18npool/source/localedata/localedata.cxx2
-rw-r--r--icc/README2
-rw-r--r--icu/createmak.pl2
-rw-r--r--idl/source/objects/object.cxx2
-rw-r--r--idlc/inc/idlc/errorhandler.hxx4
-rw-r--r--idlc/source/astexpression.cxx2
-rw-r--r--idlc/source/errorhandler.cxx2
-rw-r--r--idlc/source/options.cxx54
-rw-r--r--idlc/test/struct.idl2
-rw-r--r--idlc/test/typelookup.idl2
-rw-r--r--instsetoo_native/inc_ooolangpack/windows/msi_templates/_Validat.idt2
-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_templates/_Validat.idt2
-rw-r--r--instsetoo_native/inc_sdkoo/windows/msi_templates/_Validat.idt2
-rw-r--r--instsetoo_native/inc_ure/windows/msi_templates/_Validat.idt2
-rw-r--r--instsetoo_native/util/openoffice.lst48
-rw-r--r--javainstaller2/src/JavaSetup/org/openoffice/setup/Controller/PrologueCtrl.java2
-rw-r--r--javainstaller2/src/JavaSetup/org/openoffice/setup/Installer/LinuxInstaller.java4
-rw-r--r--javainstaller2/src/JavaSetup/org/openoffice/setup/Installer/SolarisInstaller.java4
-rw-r--r--javainstaller2/src/JavaSetup/org/openoffice/setup/InstallerHelper/LinuxHelper.java2
-rw-r--r--javainstaller2/src/JavaSetup/org/openoffice/setup/SetupData/ProductDescription.java2
-rw-r--r--javainstaller2/src/JavaSetup/org/openoffice/setup/Util/Controller.java4
-rw-r--r--javainstaller2/src/JavaSetup/org/openoffice/setup/Util/ExecuteProcess.java6
-rw-r--r--javaunohelper/com/sun/star/comp/helper/ComponentContext.java2
-rw-r--r--javaunohelper/com/sun/star/comp/helper/ComponentContextEntry.java2
-rw-r--r--javaunohelper/com/sun/star/comp/helper/SharedLibraryLoader.java4
-rw-r--r--javaunohelper/com/sun/star/lib/uno/helper/InterfaceContainer.java8
-rw-r--r--javaunohelper/com/sun/star/lib/uno/helper/MultiTypeInterfaceContainer.java2
-rw-r--r--javaunohelper/com/sun/star/lib/uno/helper/PropertySet.java12
-rw-r--r--javaunohelper/test/com/sun/star/comp/helper/SharedLibraryLoader_Test.java10
-rw-r--r--javaunohelper/test/com/sun/star/lib/uno/helper/ComponentBase_Test.java4
-rw-r--r--javaunohelper/test/com/sun/star/lib/uno/helper/Factory_Test.java2
-rw-r--r--javaunohelper/test/com/sun/star/lib/uno/helper/InterfaceContainer_Test.java2
-rw-r--r--javaunohelper/test/com/sun/star/lib/uno/helper/MultiTypeInterfaceContainer_Test.java2
-rw-r--r--javaunohelper/test/com/sun/star/lib/uno/helper/PropertySet_Test.java4
-rw-r--r--javaunohelper/test/com/sun/star/lib/uno/helper/WeakBase_Test.java2
-rw-r--r--jurt/com/sun/star/comp/servicemanager/ServiceManager.java4
-rw-r--r--jurt/com/sun/star/lib/uno/environments/remote/IThreadPool.java2
-rw-r--r--jurt/com/sun/star/lib/util/UrlToFileMapper.java2
-rw-r--r--jurt/source/pipe/com_sun_star_lib_connections_pipe_PipeConnection.c8
-rw-r--r--jvmfwk/inc/jvmfwk/framework.h10
-rw-r--r--jvmfwk/plugins/sunmajor/pluginlib/sunversion.cxx8
-rw-r--r--jvmfwk/plugins/sunmajor/pluginlib/util.cxx2
-rw-r--r--jvmfwk/source/elements.cxx2
-rw-r--r--jvmfwk/source/elements.hxx4
-rw-r--r--jvmfwk/source/fwkutil.hxx2
-rw-r--r--l10ntools/inc/wtranode.hxx2
-rw-r--r--l10ntools/inc/wtratree.hxx4
-rw-r--r--l10ntools/java/l10nconv/java/com/sun/star/tooling/converter/Convert.java6
-rw-r--r--l10ntools/java/l10nconv/java/com/sun/star/tooling/converter/ConverterException.java2
-rw-r--r--l10ntools/java/l10nconv/java/com/sun/star/tooling/converter/FileMaker.java2
-rw-r--r--l10ntools/java/l10nconv/java/com/sun/star/tooling/converter/GSIWriter.java18
-rw-r--r--l10ntools/java/l10nconv/java/com/sun/star/tooling/converter/GSIandSDFMerger.java2
-rw-r--r--l10ntools/java/l10nconv/java/com/sun/star/tooling/converter/SDFReader.java2
-rw-r--r--l10ntools/java/l10nconv/java/com/sun/star/tooling/converter/SDFWriter.java6
-rw-r--r--l10ntools/java/l10nconv/java/com/sun/star/tooling/converter/XLIFFWriter.java4
-rwxr-xr-xl10ntools/scripts/localize.pl2
-rwxr-xr-xl10ntools/scripts/localize_old.pl2
-rw-r--r--l10ntools/source/cfgmerge.cxx2
-rw-r--r--l10ntools/source/export.cxx2
-rw-r--r--l10ntools/source/export2.cxx37
-rw-r--r--l10ntools/source/filter/merge/FCFGMerge.cfg6
-rw-r--r--l10ntools/source/filter/merge/FCFGMerge.java2
-rw-r--r--l10ntools/source/filter/merge/Merger.java6
-rw-r--r--l10ntools/source/filter/utils/Cache.java38
-rw-r--r--l10ntools/source/filter/utils/ConfigHelper.java4
-rw-r--r--l10ntools/source/filter/utils/FileHelper.java8
-rw-r--r--l10ntools/source/filter/utils/XMLHelper.java22
-rw-r--r--l10ntools/source/help/HelpLinker.cxx4
-rw-r--r--l10ntools/source/merge.cxx2
-rw-r--r--l10ntools/source/tagtest.cxx2
-rw-r--r--l10ntools/source/xmlparse.cxx2
-rw-r--r--l10ntools/source/xrmmerge.cxx2
-rw-r--r--libtextcat/libtextcat-2.2.patch22
-rw-r--r--libxml2/libxml2-long-path.patch2
-rw-r--r--libxmlsec/xmlsec1-customkeymanage.patch4
-rw-r--r--libxmlsec/xmlsec1-noverify.patch4
-rw-r--r--lingucomponent/source/hyphenator/altlinuxhyph/hyphen/hyphenimp.cxx2
-rw-r--r--lingucomponent/source/languageguessing/simpleguesser.cxx2
-rw-r--r--lingucomponent/source/spellcheck/macosxspell/macspellimp.cxx2
-rw-r--r--lingucomponent/source/spellcheck/spell/sspellimp.cxx4
-rw-r--r--lingucomponent/source/thesaurus/libnth/nthesimp.cxx2
-rw-r--r--linguistic/inc/linguistic/misc.hxx2
-rw-r--r--linguistic/qa/complex/linguistic/HangulHanjaConversion.java2
-rw-r--r--linguistic/source/convdicxml.cxx2
-rw-r--r--linguistic/source/lngsvcmgr.cxx4
-rw-r--r--linguistic/workben/sspellimp.cxx2
-rw-r--r--migrationanalysis/src/driver_docs/allstrings.ulf4742
-rw-r--r--migrationanalysis/src/driver_docs/sources/AnalysisDriver.bas7278
-rw-r--r--migrationanalysis/src/driver_docs/sources/CommonMigrationAnalyser.bas2224
-rw-r--r--migrationanalysis/src/driver_docs/sources/word/MigrationAnalyser.cls3036
-rw-r--r--migrationanalysis/src/msokill/msokill.cpp2
-rw-r--r--migrationanalysis/src/wizard/Wizard.frm6906
-rw-r--r--mysqlc/source/mysqlc_connection.cxx2
-rw-r--r--mysqlc/source/mysqlc_statement.cxx2
-rw-r--r--mysqlc/source/mysqlc_subcomponent.hxx2
-rw-r--r--o3tl/inc/o3tl/heap_ptr.hxx2
-rw-r--r--odk/cfgWin.js2
-rw-r--r--odk/examples/DevelopersGuide/Accessibility/EventHandler.java2
-rw-r--r--odk/examples/DevelopersGuide/Accessibility/EventListenerProxy.java4
-rw-r--r--odk/examples/DevelopersGuide/Accessibility/GraphicalDisplay.java2
-rw-r--r--odk/examples/DevelopersGuide/Components/Addons/JobsAddon/AsyncJob.java14
-rw-r--r--odk/examples/DevelopersGuide/Components/Thumbs/org/openoffice/comp/test/Thumbs.java2
-rw-r--r--odk/examples/DevelopersGuide/Database/DriverSkeleton/How_to_write_my_own_driver.txt2
-rw-r--r--odk/examples/DevelopersGuide/Database/DriverSkeleton/OSubComponent.hxx2
-rw-r--r--odk/examples/DevelopersGuide/Database/DriverSkeleton/SConnection.cxx2
-rw-r--r--odk/examples/DevelopersGuide/Database/DriverSkeleton/SResultSet.cxx2
-rw-r--r--odk/examples/DevelopersGuide/Database/DriverSkeleton/SStatement.cxx2
-rw-r--r--odk/examples/DevelopersGuide/Forms/DataAwareness.java6
-rw-r--r--odk/examples/DevelopersGuide/Forms/DocumentBasedExample.java2
-rw-r--r--odk/examples/DevelopersGuide/Forms/KeyGenerator.java2
-rw-r--r--odk/examples/DevelopersGuide/Forms/Makefile2
-rw-r--r--odk/examples/DevelopersGuide/Forms/URLHelper.java2
-rw-r--r--odk/examples/DevelopersGuide/OfficeBean/OOoBeanViewer.java6
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/ContextMenuInterceptor.java4
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/CustomizeView.java2
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/Desk.java4
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/DocumentView.java16
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/FunctionHelper.java42
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/IOnewayLink.java2
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/Interceptor.java22
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/NativeView.java12
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/OfficeConnect.java6
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/OnewayExecutor.java10
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/StatusListener.java30
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/StatusView.java10
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/ViewContainer.java10
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/FilterDevelopment/AsciiFilter/AsciiReplaceFilter.java14
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/FilterDevelopment/AsciiFilter/FilterOptions.java14
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/FilterDevelopment/FlatXmlFilter_cpp/FlatXml.cxx2
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/Linguistic/LinguisticExamples.java2
-rw-r--r--odk/examples/DevelopersGuide/OfficeDev/OfficeConnect.java4
-rw-r--r--odk/examples/DevelopersGuide/ProfUNO/CppBinding/office_connect.cxx2
-rw-r--r--odk/examples/DevelopersGuide/Text/TextDocuments.java14
-rw-r--r--odk/examples/DevelopersGuide/UCB/ResourceManager.java12
-rw-r--r--odk/examples/DevelopersGuide/examples.html2
-rw-r--r--odk/examples/cpp/complextoolbarcontrols/Makefile18
-rw-r--r--odk/examples/cpp/complextoolbarcontrols/MyProtocolHandler.cxx2
-rw-r--r--odk/examples/cpp/complextoolbarcontrols/description.xml32
-rw-r--r--odk/examples/java/DocumentHandling/DocumentLoader.java2
-rw-r--r--odk/examples/java/DocumentHandling/DocumentPrinter.java2
-rw-r--r--odk/examples/java/EmbedDocument/Container1/EmbedContApp.java2
-rw-r--r--odk/examples/java/EmbedDocument/EmbeddedObject/OwnEmbeddedObject.java4
-rw-r--r--odk/examples/java/Inspector/TestInspector.java2
-rw-r--r--odk/examples/java/NotesAccess/NotesAccess.java2
-rw-r--r--odk/examples/java/Spreadsheet/ChartTypeChange.java4
-rw-r--r--odk/examples/java/Storage/Test01.java2
-rw-r--r--odk/examples/java/Storage/Test04.java2
-rw-r--r--odk/examples/java/Storage/Test07.java2
-rw-r--r--odk/examples/java/Storage/Test08.java2
-rw-r--r--odk/examples/java/Storage/Test09.java2
-rw-r--r--odk/examples/java/Text/GraphicsInserter.java2
-rw-r--r--odk/examples/java/ToDo/ToDo.java2
-rw-r--r--odk/setsdkenv_unix.sh.in2
-rw-r--r--odk/setsdkenv_windows.template2
-rw-r--r--odk/settings/platform.mk13
-rw-r--r--odk/source/com/sun/star/lib/loader/InstallationFinder.java18
-rw-r--r--odk/source/unoapploader/unx/unoapploader.c4
-rw-r--r--odk/source/unoapploader/win/unoapploader.c4
-rw-r--r--offapi/com/sun/star/accessibility/AccessibleEventId.idl6
-rw-r--r--offapi/com/sun/star/accessibility/AccessibleEventObject.idl2
-rw-r--r--offapi/com/sun/star/accessibility/AccessibleRelationType.idl2
-rw-r--r--offapi/com/sun/star/accessibility/AccessibleRole.idl2
-rw-r--r--offapi/com/sun/star/accessibility/XAccessible.idl4
-rw-r--r--offapi/com/sun/star/accessibility/XAccessibleContext.idl2
-rw-r--r--offapi/com/sun/star/accessibility/XAccessibleRelationSet.idl2
-rw-r--r--offapi/com/sun/star/accessibility/XAccessibleStateSet.idl2
-rw-r--r--offapi/com/sun/star/accessibility/XAccessibleText.idl4
-rw-r--r--offapi/com/sun/star/animations/AnimationNodeType.idl2
-rw-r--r--offapi/com/sun/star/animations/Event.idl2
-rw-r--r--offapi/com/sun/star/animations/XAnimationNode.idl4
-rw-r--r--offapi/com/sun/star/awt/AccessibleListBoxList.idl2
-rw-r--r--offapi/com/sun/star/awt/Command.idl2
-rw-r--r--offapi/com/sun/star/awt/MenuItemType.idl2
-rw-r--r--offapi/com/sun/star/awt/UnoControlEditModel.idl4
-rw-r--r--offapi/com/sun/star/awt/XExtendedToolkit.idl6
-rw-r--r--offapi/com/sun/star/awt/XFont.idl2
-rw-r--r--offapi/com/sun/star/awt/XItemListListener.idl2
-rw-r--r--offapi/com/sun/star/awt/XLayoutFlow.idl4
-rw-r--r--offapi/com/sun/star/awt/XMessageBoxFactory.idl2
-rw-r--r--offapi/com/sun/star/awt/XPopupMenu.idl2
-rw-r--r--offapi/com/sun/star/awt/XScrollBar.idl2
-rw-r--r--offapi/com/sun/star/awt/XSimpleTabController.idl10
-rw-r--r--offapi/com/sun/star/awt/XUserInputInterception.idl4
-rwxr-xr-xoffapi/com/sun/star/awt/grid/SortableGridDataModel.idl2
-rw-r--r--offapi/com/sun/star/awt/grid/XGridColumn.idl2
-rw-r--r--offapi/com/sun/star/awt/grid/XGridRowSelection.idl4
-rw-r--r--offapi/com/sun/star/awt/tree/XTreeExpansionListener.idl4
-rw-r--r--offapi/com/sun/star/chart/ChartAxis.idl2
-rw-r--r--offapi/com/sun/star/chart/ChartAxisType.idl2
-rw-r--r--offapi/com/sun/star/chart/TimeIncrement.idl2
-rw-r--r--offapi/com/sun/star/chart2/data/DataSequenceRole.idl4
-rw-r--r--offapi/com/sun/star/chart2/data/TabularDataProviderArguments.idl2
-rw-r--r--offapi/com/sun/star/chart2/data/XDatabaseDataProvider.idl4
-rw-r--r--offapi/com/sun/star/configuration/AdministrationProvider.idl4
-rw-r--r--offapi/com/sun/star/configuration/ConfigurationProvider.idl2
-rw-r--r--offapi/com/sun/star/configuration/ConfigurationRegistry.idl2
-rw-r--r--offapi/com/sun/star/configuration/HierarchyAccess.idl2
-rw-r--r--offapi/com/sun/star/configuration/backend/XBackendChangesNotifier.idl2
-rw-r--r--offapi/com/sun/star/configuration/bootstrap/BootstrapContext.idl2
-rw-r--r--offapi/com/sun/star/datatransfer/XDataFormatTranslator.idl2
-rw-r--r--offapi/com/sun/star/datatransfer/clipboard/RenderingCapabilities.idl2
-rw-r--r--offapi/com/sun/star/deployment/InvalidRemovedParameterException.idl2
-rw-r--r--offapi/com/sun/star/deployment/XPackageInformationProvider.idl4
-rw-r--r--offapi/com/sun/star/deployment/XUpdateInformationProvider.idl2
-rw-r--r--offapi/com/sun/star/document/DocumentInfo.idl4
-rw-r--r--offapi/com/sun/star/document/EmptyUndoStackException.idl2
-rw-r--r--offapi/com/sun/star/document/EventObject.idl2
-rw-r--r--offapi/com/sun/star/document/ExtendedTypeDetection.idl4
-rw-r--r--offapi/com/sun/star/document/ExtendedTypeDetectionFactory.idl6
-rw-r--r--offapi/com/sun/star/document/FilterFactory.idl8
-rw-r--r--offapi/com/sun/star/document/MediaDescriptor.idl6
-rw-r--r--offapi/com/sun/star/document/NoSuchFilterRequest.idl2
-rw-r--r--offapi/com/sun/star/document/OfficeDocument.idl4
-rw-r--r--offapi/com/sun/star/document/TypeDetection.idl12
-rw-r--r--offapi/com/sun/star/document/UndoContextNotClosedException.idl2
-rw-r--r--offapi/com/sun/star/document/XDocumentEventListener.idl2
-rw-r--r--offapi/com/sun/star/document/XExtendedFilterDetection.idl2
-rw-r--r--offapi/com/sun/star/document/XFilter.idl2
-rw-r--r--offapi/com/sun/star/document/XInteractionFilterSelect.idl2
-rw-r--r--offapi/com/sun/star/document/XTypeDetection.idl6
-rw-r--r--offapi/com/sun/star/drawing/AccessibleShape.idl2
-rw-r--r--offapi/com/sun/star/drawing/DocumentSettings.idl2
-rw-r--r--offapi/com/sun/star/drawing/GraphicFilterRequest.idl2
-rw-r--r--offapi/com/sun/star/drawing/Hatch.idl2
-rw-r--r--offapi/com/sun/star/drawing/TextProperties.idl2
-rw-r--r--offapi/com/sun/star/drawing/XCustomShapeHandle.idl2
-rw-r--r--offapi/com/sun/star/drawing/XDrawPages.idl2
-rw-r--r--offapi/com/sun/star/drawing/XShapeBinder.idl2
-rw-r--r--offapi/com/sun/star/drawing/framework/ConfigurationController.idl2
-rw-r--r--offapi/com/sun/star/drawing/framework/XConfigurationController.idl2
-rw-r--r--offapi/com/sun/star/drawing/framework/XConfigurationControllerRequestQueue.idl2
-rw-r--r--offapi/com/sun/star/drawing/framework/XRelocatableResource.idl2
-rw-r--r--offapi/com/sun/star/drawing/framework/XResourceFactory.idl2
-rw-r--r--offapi/com/sun/star/embed/ElementModes.idl2
-rw-r--r--offapi/com/sun/star/embed/EmbeddedObjectDescriptor.idl2
-rw-r--r--offapi/com/sun/star/embed/EntryInitModes.idl4
-rw-r--r--offapi/com/sun/star/embed/ObjectSaveVetoException.idl2
-rw-r--r--offapi/com/sun/star/embed/Storage.idl20
-rw-r--r--offapi/com/sun/star/embed/StorageFactory.idl2
-rw-r--r--offapi/com/sun/star/embed/StorageStream.idl10
-rw-r--r--offapi/com/sun/star/embed/XCommonEmbedPersist.idl2
-rw-r--r--offapi/com/sun/star/embed/XEmbedObjectClipboardCreator.idl2
-rw-r--r--offapi/com/sun/star/embed/XEmbeddedClient.idl2
-rw-r--r--offapi/com/sun/star/embed/XInplaceClient.idl2
-rw-r--r--offapi/com/sun/star/embed/XInplaceObject.idl4
-rw-r--r--offapi/com/sun/star/embed/XInsertObjectDialog.idl2
-rw-r--r--offapi/com/sun/star/embed/XOptimizedStorage.idl2
-rw-r--r--offapi/com/sun/star/embed/XPersistanceHolder.idl6
-rw-r--r--offapi/com/sun/star/embed/XStorage.idl8
-rw-r--r--offapi/com/sun/star/embed/XStorageRawAccess.idl4
-rw-r--r--offapi/com/sun/star/embed/XTransactionBroadcaster.idl2
-rw-r--r--offapi/com/sun/star/embed/XTransactionListener.idl6
-rw-r--r--offapi/com/sun/star/embed/XVisualObject.idl2
-rw-r--r--offapi/com/sun/star/form/FormComponents.idl2
-rw-r--r--offapi/com/sun/star/form/PropertyBrowserController.idl2
-rw-r--r--offapi/com/sun/star/form/XFormControllerListener.idl4
-rw-r--r--offapi/com/sun/star/form/XGridFieldDataSupplier.idl2
-rw-r--r--offapi/com/sun/star/form/XLoadListener.idl10
-rw-r--r--offapi/com/sun/star/form/XResetListener.idl4
-rw-r--r--offapi/com/sun/star/form/XSubmitListener.idl2
-rw-r--r--offapi/com/sun/star/form/binding/BindableDataAwareControlModel.idl2
-rw-r--r--offapi/com/sun/star/form/binding/BindableDatabaseListBox.idl8
-rw-r--r--offapi/com/sun/star/form/binding/ListEntryEvent.idl4
-rw-r--r--offapi/com/sun/star/form/component/DataForm.idl4
-rw-r--r--offapi/com/sun/star/form/component/DatabaseComboBox.idl2
-rw-r--r--offapi/com/sun/star/form/component/DatabaseFormattedField.idl2
-rw-r--r--offapi/com/sun/star/form/component/DatabasePatternField.idl2
-rw-r--r--offapi/com/sun/star/form/component/DatabaseTextField.idl2
-rw-r--r--offapi/com/sun/star/form/component/GridControl.idl2
-rw-r--r--offapi/com/sun/star/form/submission/XSubmission.idl4
-rw-r--r--offapi/com/sun/star/frame/Components.idl2
-rw-r--r--offapi/com/sun/star/frame/ContentHandler.idl2
-rw-r--r--offapi/com/sun/star/frame/ContentHandlerFactory.idl2
-rw-r--r--offapi/com/sun/star/frame/ControlEvent.idl2
-rw-r--r--offapi/com/sun/star/frame/Desktop.idl2
-rw-r--r--offapi/com/sun/star/frame/DispatchDescriptor.idl6
-rw-r--r--offapi/com/sun/star/frame/DispatchProvider.idl2
-rw-r--r--offapi/com/sun/star/frame/DispatchRecorder.idl2
-rw-r--r--offapi/com/sun/star/frame/Frame.idl2
-rw-r--r--offapi/com/sun/star/frame/FrameActionEvent.idl2
-rw-r--r--offapi/com/sun/star/frame/FrameLoaderFactory.idl4
-rw-r--r--offapi/com/sun/star/frame/FrameSearchFlag.idl2
-rw-r--r--offapi/com/sun/star/frame/ProtocolHandler.idl6
-rw-r--r--offapi/com/sun/star/frame/TerminationVetoException.idl2
-rw-r--r--offapi/com/sun/star/frame/ToolbarController.idl2
-rw-r--r--offapi/com/sun/star/frame/XControlNotificationListener.idl2
-rw-r--r--offapi/com/sun/star/frame/XDesktop.idl4
-rw-r--r--offapi/com/sun/star/frame/XDispatchRecorderSupplier.idl2
-rw-r--r--offapi/com/sun/star/frame/XDocumentTemplates.idl14
-rw-r--r--offapi/com/sun/star/frame/XFrame.idl6
-rw-r--r--offapi/com/sun/star/frame/XFrameLoader.idl2
-rw-r--r--offapi/com/sun/star/frame/XInterceptorInfo.idl2
-rw-r--r--offapi/com/sun/star/frame/XLayoutManagerListener.idl2
-rw-r--r--offapi/com/sun/star/frame/XRecordableDispatch.idl4
-rw-r--r--offapi/com/sun/star/frame/XStatusbarController.idl4
-rw-r--r--offapi/com/sun/star/frame/XStorable.idl6
-rw-r--r--offapi/com/sun/star/frame/XStorable2.idl4
-rw-r--r--offapi/com/sun/star/frame/XSynchronousDispatch.idl2
-rw-r--r--offapi/com/sun/star/frame/XTerminateListener2.idl8
-rw-r--r--offapi/com/sun/star/frame/XToolbarController.idl2
-rw-r--r--offapi/com/sun/star/frame/XUIControllerRegistration.idl4
-rw-r--r--offapi/com/sun/star/graphic/GraphicObject.idl2
-rw-r--r--offapi/com/sun/star/graphic/XGraphicObject.idl2
-rw-r--r--offapi/com/sun/star/i18n/NumberFormatIndex.idl2
-rw-r--r--offapi/com/sun/star/inspection/XNumericControl.idl2
-rw-r--r--offapi/com/sun/star/inspection/XObjectInspectorModel.idl2
-rw-r--r--offapi/com/sun/star/inspection/XPropertyHandler.idl2
-rw-r--r--offapi/com/sun/star/installation/XProtocolHandlerCheck.idl2
-rw-r--r--offapi/com/sun/star/installation/protocols.idl2
-rw-r--r--offapi/com/sun/star/linguistic2/SpellFailure.idl2
-rw-r--r--offapi/com/sun/star/linguistic2/XConversionDictionaryList.idl4
-rw-r--r--offapi/com/sun/star/linguistic2/XDictionary.idl4
-rw-r--r--offapi/com/sun/star/linguistic2/XLinguServiceManager.idl4
-rw-r--r--offapi/com/sun/star/logging/XCsvLogFormatter.idl2
-rw-r--r--offapi/com/sun/star/logging/XLogger.idl6
-rw-r--r--offapi/com/sun/star/mail/XMailServer.idl4
-rw-r--r--offapi/com/sun/star/mail/XMailService.idl4
-rw-r--r--offapi/com/sun/star/modules.idl4
-rw-r--r--offapi/com/sun/star/mozilla/XPluginInstance.idl2
-rw-r--r--offapi/com/sun/star/mozilla/XPluginInstanceSyncPeer.idl2
-rw-r--r--offapi/com/sun/star/mozilla/XProfileManager.idl4
-rw-r--r--offapi/com/sun/star/packages/manifest/XManifestReader.idl2
-rw-r--r--offapi/com/sun/star/packages/zip/ZipIOException.idl2
-rw-r--r--offapi/com/sun/star/plugin/PluginException.idl2
-rw-r--r--offapi/com/sun/star/presentation/DocumentSettings.idl2
-rw-r--r--offapi/com/sun/star/presentation/EffectNodeType.idl4
-rw-r--r--offapi/com/sun/star/presentation/EffectPresetClass.idl4
-rw-r--r--offapi/com/sun/star/presentation/OutlineView.idl2
-rw-r--r--offapi/com/sun/star/presentation/XPresentation2.idl2
-rw-r--r--offapi/com/sun/star/presentation/XSlideShow.idl2
-rw-r--r--offapi/com/sun/star/presentation/XSlideShowController.idl2
-rw-r--r--offapi/com/sun/star/presentation/XSlideShowView.idl8
-rw-r--r--offapi/com/sun/star/rendering/XAnimation.idl2
-rw-r--r--offapi/com/sun/star/report/XFunction.idl2
-rw-r--r--offapi/com/sun/star/report/XFunctionsSupplier.idl2
-rw-r--r--offapi/com/sun/star/report/XReportComponent.idl4
-rw-r--r--offapi/com/sun/star/report/XReportDefinition.idl4
-rw-r--r--offapi/com/sun/star/report/XReportEngine.idl2
-rw-r--r--offapi/com/sun/star/report/meta/XFunctionManager.idl2
-rw-r--r--offapi/com/sun/star/resource/XStringResourcePersistence.idl4
-rw-r--r--offapi/com/sun/star/resource/XStringResourceWithLocation.idl2
-rw-r--r--offapi/com/sun/star/resource/XStringResourceWithStorage.idl2
-rw-r--r--offapi/com/sun/star/scanner/ScanError.idl4
-rw-r--r--offapi/com/sun/star/scanner/XScannerManager.idl4
-rw-r--r--offapi/com/sun/star/script/provider/ScriptErrorRaisedException.idl4
-rw-r--r--offapi/com/sun/star/script/provider/ScriptExceptionRaisedException.idl2
-rw-r--r--offapi/com/sun/star/script/provider/ScriptFrameworkErrorException.idl2
-rw-r--r--offapi/com/sun/star/sdb/DataAccessDescriptor.idl2
-rw-r--r--offapi/com/sun/star/sdb/DataSettings.idl2
-rw-r--r--offapi/com/sun/star/sdb/DatabaseAccessDataSource.idl2
-rw-r--r--offapi/com/sun/star/sdb/ErrorCondition.idl2
-rw-r--r--offapi/com/sun/star/sdb/QueryDesign.idl4
-rw-r--r--offapi/com/sun/star/sdb/SQLContext.idl2
-rw-r--r--offapi/com/sun/star/sdb/Table.idl2
-rw-r--r--offapi/com/sun/star/sdb/XRowSetApproveListener.idl6
-rw-r--r--offapi/com/sun/star/sdb/XSQLErrorListener.idl2
-rw-r--r--offapi/com/sun/star/sdb/XSQLQueryComposer.idl6
-rw-r--r--offapi/com/sun/star/sdb/XSingleSelectQueryAnalyzer.idl4
-rw-r--r--offapi/com/sun/star/sdb/XSingleSelectQueryComposer.idl8
-rw-r--r--offapi/com/sun/star/sdb/application/XDatabaseDocumentUI.idl6
-rw-r--r--offapi/com/sun/star/sdb/application/XTableUIProvider.idl2
-rw-r--r--offapi/com/sun/star/sdb/tools/XConnectionTools.idl2
-rw-r--r--offapi/com/sun/star/sdbc/ConnectionProperties.idl2
-rw-r--r--offapi/com/sun/star/sdbc/DBASEConnectionProperties.idl2
-rw-r--r--offapi/com/sun/star/sdbc/DataType.idl2
-rw-r--r--offapi/com/sun/star/sdbc/FILEConnectionProperties.idl2
-rw-r--r--offapi/com/sun/star/sdbc/FLATConnectionProperties.idl10
-rw-r--r--offapi/com/sun/star/sdbc/JDBCConnectionProperties.idl2
-rw-r--r--offapi/com/sun/star/sdbc/ODBCConnectionProperties.idl2
-rw-r--r--offapi/com/sun/star/sdbc/XDatabaseMetaData.idl4
-rw-r--r--offapi/com/sun/star/sdbc/XPreparedStatement.idl2
-rw-r--r--offapi/com/sun/star/sdbc/XResultSetUpdate.idl2
-rw-r--r--offapi/com/sun/star/sdbcx/CompareBookmark.idl2
-rw-r--r--offapi/com/sun/star/sdbcx/Descriptor.idl2
-rw-r--r--offapi/com/sun/star/security/CertificateCharacters.idl2
-rw-r--r--offapi/com/sun/star/security/CertificateContainerStatus.idl2
-rw-r--r--offapi/com/sun/star/security/CertificateValidity.idl2
-rw-r--r--offapi/com/sun/star/security/DocumentSignatureInformation.idl2
-rw-r--r--offapi/com/sun/star/security/ExtAltNameType.idl2
-rw-r--r--offapi/com/sun/star/security/XDocumentDigitalSignatures.idl2
-rw-r--r--offapi/com/sun/star/sheet/AccessibleSpreadsheetDocumentView.idl4
-rw-r--r--offapi/com/sun/star/sheet/AccessibleSpreadsheetPageView.idl2
-rw-r--r--offapi/com/sun/star/sheet/DatabaseRange.idl2
-rw-r--r--offapi/com/sun/star/sheet/SheetCell.idl2
-rw-r--r--offapi/com/sun/star/sheet/SheetCellRange.idl2
-rw-r--r--offapi/com/sun/star/sheet/SheetCellRanges.idl2
-rw-r--r--offapi/com/sun/star/sheet/XSheetAnnotations.idl2
-rw-r--r--offapi/com/sun/star/smarttags/XSmartTagAction.idl4
-rw-r--r--offapi/com/sun/star/style/Style.idl2
-rw-r--r--offapi/com/sun/star/table/AccessibleTableView.idl2
-rw-r--r--offapi/com/sun/star/table/CellProperties.idl2
-rw-r--r--offapi/com/sun/star/table/CellRangeListSource.idl2
-rw-r--r--offapi/com/sun/star/table/CellValueBinding.idl2
-rw-r--r--offapi/com/sun/star/table/XCell.idl2
-rw-r--r--offapi/com/sun/star/table/XMergeableCellRange.idl2
-rw-r--r--offapi/com/sun/star/task/DocumentMacroConfirmationRequest.idl2
-rw-r--r--offapi/com/sun/star/task/DocumentPasswordRequest.idl2
-rw-r--r--offapi/com/sun/star/task/ErrorCodeRequest.idl2
-rw-r--r--offapi/com/sun/star/task/JobExecutor.idl2
-rw-r--r--offapi/com/sun/star/task/MasterPasswordRequest.idl2
-rw-r--r--offapi/com/sun/star/task/PDFExportException.idl2
-rw-r--r--offapi/com/sun/star/task/PasswordRequest.idl2
-rw-r--r--offapi/com/sun/star/task/XJob.idl2
-rw-r--r--offapi/com/sun/star/task/XJobExecutor.idl2
-rw-r--r--offapi/com/sun/star/task/XStatusIndicator.idl2
-rw-r--r--offapi/com/sun/star/task/XUrlContainer.idl2
-rw-r--r--offapi/com/sun/star/text/AccessiblePageView.idl6
-rw-r--r--offapi/com/sun/star/text/AccessibleTextDocumentView.idl6
-rw-r--r--offapi/com/sun/star/text/LineNumberingProperties.idl2
-rw-r--r--offapi/com/sun/star/text/NumberingRules.idl2
-rw-r--r--offapi/com/sun/star/text/TextSortDescriptor2.idl2
-rw-r--r--offapi/com/sun/star/text/XRelativeTextContentRemove.idl2
-rw-r--r--offapi/com/sun/star/text/textfield/Author.idl2
-rw-r--r--offapi/com/sun/star/text/textfield/ConditionalText.idl2
-rw-r--r--offapi/com/sun/star/text/textfield/Database.idl4
-rw-r--r--offapi/com/sun/star/text/textfield/ExtendedUser.idl2
-rw-r--r--offapi/com/sun/star/text/textfield/FileName.idl2
-rw-r--r--offapi/com/sun/star/text/textfield/GetExpression.idl2
-rw-r--r--offapi/com/sun/star/text/textfield/GetReference.idl2
-rw-r--r--offapi/com/sun/star/text/textfield/SetExpression.idl2
-rw-r--r--offapi/com/sun/star/text/textfield/TableFormula.idl2
-rw-r--r--offapi/com/sun/star/text/textfield/docinfo/ChangeAuthor.idl2
-rw-r--r--offapi/com/sun/star/text/textfield/docinfo/ChangeDateTime.idl2
-rw-r--r--offapi/com/sun/star/text/textfield/docinfo/CreateAuthor.idl2
-rw-r--r--offapi/com/sun/star/text/textfield/docinfo/CreateDateTime.idl2
-rw-r--r--offapi/com/sun/star/text/textfield/docinfo/Description.idl2
-rw-r--r--offapi/com/sun/star/text/textfield/docinfo/EditTime.idl2
-rw-r--r--offapi/com/sun/star/text/textfield/docinfo/Info0.idl2
-rw-r--r--offapi/com/sun/star/text/textfield/docinfo/Info1.idl2
-rw-r--r--offapi/com/sun/star/text/textfield/docinfo/Info2.idl2
-rw-r--r--offapi/com/sun/star/text/textfield/docinfo/Info3.idl2
-rw-r--r--offapi/com/sun/star/text/textfield/docinfo/Keywords.idl2
-rw-r--r--offapi/com/sun/star/text/textfield/docinfo/PrintAuthor.idl2
-rw-r--r--offapi/com/sun/star/text/textfield/docinfo/PrintDateTime.idl2
-rw-r--r--offapi/com/sun/star/text/textfield/docinfo/Revision.idl2
-rw-r--r--offapi/com/sun/star/text/textfield/docinfo/Subject.idl2
-rw-r--r--offapi/com/sun/star/text/textfield/docinfo/Title.idl2
-rw-r--r--offapi/com/sun/star/ucb/CommandFailedException.idl2
-rw-r--r--offapi/com/sun/star/ucb/Content.idl4
-rw-r--r--offapi/com/sun/star/ucb/ContentAction.idl2
-rw-r--r--offapi/com/sun/star/ucb/FetchError.idl2
-rw-r--r--offapi/com/sun/star/ucb/FetchResult.idl2
-rw-r--r--offapi/com/sun/star/ucb/HierarchyDataSource.idl4
-rw-r--r--offapi/com/sun/star/ucb/InteractiveFileIOException.idl2
-rw-r--r--offapi/com/sun/star/ucb/InteractiveLockingNotLockedException.idl2
-rw-r--r--offapi/com/sun/star/ucb/Lock.idl2
-rw-r--r--offapi/com/sun/star/ucb/Rule.idl2
-rw-r--r--offapi/com/sun/star/ucb/SearchRecursion.idl2
-rw-r--r--offapi/com/sun/star/ucb/TransientDocumentsContentProvider.idl2
-rw-r--r--offapi/com/sun/star/ucb/UniversalContentBroker.idl2
-rw-r--r--offapi/com/sun/star/ucb/WebDAVContentProvider.idl2
-rw-r--r--offapi/com/sun/star/ucb/WebDAVFolderContent.idl2
-rw-r--r--offapi/com/sun/star/ucb/XAnyCompare.idl2
-rw-r--r--offapi/com/sun/star/ucb/XCachedContentResultSetFactory.idl2
-rw-r--r--offapi/com/sun/star/ucb/XCachedDynamicResultSetFactory.idl2
-rw-r--r--offapi/com/sun/star/ucb/XCommandProcessor.idl2
-rw-r--r--offapi/com/sun/star/ucb/XContentIdentifierMapping.idl2
-rw-r--r--offapi/com/sun/star/ucb/XContentProviderManager.idl2
-rw-r--r--offapi/com/sun/star/ucb/XRemoteContentProviderChangeListener.idl2
-rw-r--r--offapi/com/sun/star/ui/UIElementType.idl2
-rw-r--r--offapi/com/sun/star/ui/XAcceleratorConfiguration.idl20
-rw-r--r--offapi/com/sun/star/ui/dialogs/FilePicker.idl2
-rw-r--r--offapi/com/sun/star/ui/dialogs/FolderPicker.idl2
-rw-r--r--offapi/com/sun/star/util/Endianness.idl4
-rw-r--r--offapi/com/sun/star/util/PathSubstitution.idl2
-rw-r--r--offapi/com/sun/star/util/XChangesNotifier.idl2
-rw-r--r--offapi/com/sun/star/util/XCloseBroadcaster.idl4
-rw-r--r--offapi/com/sun/star/util/XCloseListener.idl8
-rw-r--r--offapi/com/sun/star/util/XCloseable.idl12
-rw-r--r--offapi/com/sun/star/util/XSortable.idl2
-rw-r--r--offapi/com/sun/star/util/XStringSubstitution.idl4
-rw-r--r--offapi/com/sun/star/util/XTextSearch.idl2
-rw-r--r--offapi/com/sun/star/util/XURLTransformer.idl4
-rw-r--r--offapi/com/sun/star/xforms/XModel.idl4
-rw-r--r--offapi/com/sun/star/xml/crypto/sax/XMissionTaker.idl2
-rw-r--r--offapi/com/sun/star/xml/crypto/sax/XSAXEventKeeper.idl2
-rw-r--r--offapi/com/sun/star/xml/dom/events/EventType.idl2
-rw-r--r--offapi/com/sun/star/xml/input/XElement.idl2
-rw-r--r--offapi/com/sun/star/xml/sax/XExtendedDocumentHandler.idl2
-rw-r--r--offapi/com/sun/star/xml/sax/XFastAttributeList.idl2
-rw-r--r--offapi/com/sun/star/xml/sax/XFastParser.idl2
-rw-r--r--offapi/com/sun/star/xml/wrapper/XXMLDocumentWrapper.idl2
-rw-r--r--offapi/com/sun/star/xml/wrapper/XXMLElementWrapper.idl2
-rw-r--r--officecfg/registry/data/org/openoffice/Inet.xcu44
-rw-r--r--officecfg/registry/data/org/openoffice/Office/Labels.xcu2
-rw-r--r--officecfg/registry/data/org/openoffice/Office/UI/GenericCommands.xcu2
-rw-r--r--officecfg/registry/data/org/openoffice/Office/UI/Sidebar.xcu3
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/Calc.xcs2
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/Common.xcs6
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/Embedding.xcs2
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/ExtensionDependencies.xcs6
-rwxr-xr-xofficecfg/registry/schema/org/openoffice/Office/ExtensionManager.xcs2
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/Histories.xcs2
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/OOoImprovement/Settings.xcs2
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/OptionsDialog.xcs4
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/Paths.xcs4
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/PresenterScreen.xcs2
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/TabBrowse.xcs2
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/UI.xcs2
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/UI/Sidebar.xcs2
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/UI/WindowState.xcs2
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/WebWizard.xcs2
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/Writer.xcs8
-rw-r--r--officecfg/registry/schema/org/openoffice/Setup.xcs2
-rw-r--r--officecfg/registry/schema/org/openoffice/TypeDetection/Types.xcs2
-rw-r--r--oovbaapi/ooo/vba/XCollectionBase.idl2
-rw-r--r--oovbaapi/ooo/vba/msforms/XControl.idl2
-rw-r--r--oox/inc/oox/core/binarycodec.hxx8
-rw-r--r--oox/inc/oox/drawingml/drawingmltypes.hxx6
-rw-r--r--oox/inc/oox/helper/graphichelper.hxx2
-rw-r--r--oox/inc/oox/helper/propertyset.hxx2
-rw-r--r--oox/inc/oox/ole/axbinaryreader.hxx2
-rw-r--r--oox/inc/oox/vml/vmlinputstream.hxx2
-rw-r--r--oox/inc/oox/xls/biffinputstream.hxx4
-rw-r--r--oox/inc/oox/xls/defnamesbuffer.hxx2
-rw-r--r--oox/inc/oox/xls/richstring.hxx1
-rw-r--r--oox/source/core/filterdetect.cxx2
-rw-r--r--oox/source/drawingml/customshapeproperties.cxx11
-rw-r--r--oox/source/export/preset-definitions-to-shape-types.pl2
-rw-r--r--oox/source/ppt/slidefragmenthandler.cxx31
-rw-r--r--oox/source/token/properties.txt1
-rw-r--r--oox/source/vml/vmlinputstream.cxx4
-rw-r--r--oox/source/xls/formulaparser.cxx2
-rw-r--r--oox/source/xls/richstring.cxx10
-rw-r--r--oox/source/xls/sheetdatabuffer.cxx2
-rw-r--r--ooxml/source/framework/JavaOOXMLParser/.classpath6
-rw-r--r--ooxml/source/framework/JavaOOXMLParser/.project17
-rw-r--r--ooxml/source/framework/JavaOOXMLParser/.settings/org.eclipse.jdt.core.prefs11
-rw-r--r--ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/AcceptingStateTable.java69
-rw-r--r--ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/ElementContext.java88
-rw-r--r--ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/Log.java130
-rw-r--r--ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/NameMap.java113
-rw-r--r--ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/NamespaceMap.java91
-rw-r--r--ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/OOXMLParser.java223
-rw-r--r--ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/ParseException.java42
-rw-r--r--ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/ParseTableReader.java100
-rw-r--r--ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/Parser.java249
-rw-r--r--ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/SkipStateTable.java70
-rw-r--r--ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/StateMachine.java330
-rw-r--r--ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/Transition.java77
-rw-r--r--ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/TransitionTable.java85
-rw-r--r--ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/action/ActionDescriptor.java114
-rw-r--r--ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/action/ActionIterator.java118
-rw-r--r--ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/action/ActionManager.java165
-rw-r--r--ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/action/ActionTrigger.java31
-rw-r--r--ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/action/IAction.java53
-rw-r--r--ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/attribute/AttributeDescriptor.java130
-rw-r--r--ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/attribute/AttributeManager.java273
-rw-r--r--ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/attribute/AttributeProvider.java99
-rw-r--r--ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/attribute/AttributeValues.java91
-rw-r--r--ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/type/BlobParser.java102
-rw-r--r--ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/type/DateTimeParser.java42
-rw-r--r--ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/type/ISimpleTypeParser.java31
-rw-r--r--ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/type/ListParser.java53
-rw-r--r--ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/type/NumberParser.java270
-rw-r--r--ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/type/SimpleTypeManager.java118
-rw-r--r--ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/type/StringParser.java122
-rw-r--r--ooxml/source/framework/JavaPartManager/.classpath7
-rw-r--r--ooxml/source/framework/JavaPartManager/.project17
-rw-r--r--ooxml/source/framework/JavaPartManager/.settings/org.eclipse.jdt.core.prefs11
-rw-r--r--ooxml/source/framework/JavaPartManager/src/org/apache/openoffice/ooxml/framework/part/ContentType.java77
-rw-r--r--ooxml/source/framework/JavaPartManager/src/org/apache/openoffice/ooxml/framework/part/ContentTypes.java150
-rw-r--r--ooxml/source/framework/JavaPartManager/src/org/apache/openoffice/ooxml/framework/part/IReferenceProvider.java6
-rw-r--r--ooxml/source/framework/JavaPartManager/src/org/apache/openoffice/ooxml/framework/part/OOXMLPackage.java56
-rw-r--r--ooxml/source/framework/JavaPartManager/src/org/apache/openoffice/ooxml/framework/part/Package.java158
-rw-r--r--ooxml/source/framework/JavaPartManager/src/org/apache/openoffice/ooxml/framework/part/Part.java89
-rw-r--r--ooxml/source/framework/JavaPartManager/src/org/apache/openoffice/ooxml/framework/part/PartManager.java145
-rw-r--r--ooxml/source/framework/JavaPartManager/src/org/apache/openoffice/ooxml/framework/part/PartManagerPrototype.java33
-rw-r--r--ooxml/source/framework/JavaPartManager/src/org/apache/openoffice/ooxml/framework/part/PartName.java130
-rw-r--r--ooxml/source/framework/JavaPartManager/src/org/apache/openoffice/ooxml/framework/part/RelatedParts.java131
-rw-r--r--ooxml/source/framework/JavaPartManager/src/org/apache/openoffice/ooxml/framework/part/RelationshipType.java112
-rw-r--r--ooxml/source/framework/JavaPartManager/src/org/apache/openoffice/ooxml/framework/part/parser/ContentTypesParser.java30
-rw-r--r--ooxml/source/framework/JavaPartManager/src/org/apache/openoffice/ooxml/framework/part/parser/ParserFactory.java46
-rw-r--r--ooxml/source/framework/JavaPartManager/src/org/apache/openoffice/ooxml/framework/part/parser/RelationshipParser.java30
-rwxr-xr-xooxml/source/framework/OOXMLViewer/.classpath8
-rwxr-xr-xooxml/source/framework/OOXMLViewer/.project17
-rwxr-xr-xooxml/source/framework/OOXMLViewer/.settings/org.eclipse.jdt.core.prefs11
-rwxr-xr-xooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/DetailViewManager.java131
-rwxr-xr-xooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/ImageView.java75
-rwxr-xr-xooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/KeyListener.java50
-rwxr-xr-xooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/OOXMLViewer.java208
-rwxr-xr-xooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/PartsView.java137
-rwxr-xr-xooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/StreamView.java266
-rwxr-xr-xooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/content/ContentView.java77
-rwxr-xr-xooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/content/PresentationImporter.java81
-rwxr-xr-xooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/content/PresentationModel.java43
-rwxr-xr-xooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/content/Slide.java56
-rwxr-xr-xooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/content/SlideManager.java77
-rwxr-xr-xooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/content/SlideParser.java80
-rwxr-xr-xooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/tokenview/DocumentFactory.java127
-rwxr-xr-xooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/tokenview/FormatState.java61
-rwxr-xr-xooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/tokenview/Formatter.java93
-rwxr-xr-xooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/tokenview/Line.java239
-rwxr-xr-xooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/tokenview/LineContainer.java194
-rwxr-xr-xooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/tokenview/Run.java249
-rwxr-xr-xooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/tokenview/RunRange.java87
-rwxr-xr-xooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/tokenview/Style.java109
-rwxr-xr-xooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/tokenview/TokenView.java406
-rwxr-xr-xooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/xml/DocumentTokenFormatter.java399
-rwxr-xr-xooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/xml/Token.java51
-rwxr-xr-xooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/xml/TokenType.java41
-rwxr-xr-xooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/xml/XMLScanner.java438
-rwxr-xr-xooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/xml/XMLTokenViewFactory.java106
-rwxr-xr-xooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/xmltokenview/XMLViewFactory.java143
-rw-r--r--ooxml/source/framework/SchemaParser/.classpath6
-rw-r--r--ooxml/source/framework/SchemaParser/.project17
-rw-r--r--ooxml/source/framework/SchemaParser/.settings/org.eclipse.jdt.core.prefs11
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/SchemaReader.java510
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/Test.java81
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/automaton/CreatorBase.java124
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/automaton/DFACreator.java280
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/automaton/EpsilonTransition.java70
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/automaton/FiniteAutomaton.java169
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/automaton/FiniteAutomatonContainer.java166
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/automaton/HopcroftMinimizer.java380
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/automaton/NonValidatingCreator.java212
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/automaton/SkipData.java54
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/automaton/State.java263
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/automaton/StateContainer.java73
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/automaton/StateContext.java269
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/automaton/StateSet.java245
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/automaton/Transition.java97
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/automaton/ValidatingCreator.java793
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/generator/LogGenerator.java313
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/generator/ParserTablesGenerator.java555
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/generator/html/HtmlGenerator.java623
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/generator/html/code.js442
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/generator/html/display.css57
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/generator/html/linking-template.html22
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/generator/html/template.html24
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/iterator/AttributeIterator.java109
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/iterator/AttributeNodeIterator.java112
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/iterator/DereferencingNodeIterator.java111
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/iterator/NodeIterator.java68
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/iterator/PermutationIterator.java137
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/misc/Log.java126
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/attribute/Attribute.java91
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/attribute/AttributeBase.java117
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/attribute/AttributeGroup.java65
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/attribute/AttributeGroupReference.java110
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/attribute/AttributeReference.java115
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/base/INode.java39
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/base/INodeReference.java32
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/base/INodeVisitor.java85
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/base/Location.java69
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/base/Node.java172
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/base/NodeType.java53
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/base/NodeVisitorAdapter.java203
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/base/QualifiedName.java149
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/complex/All.java96
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/complex/Any.java112
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/complex/Choice.java68
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/complex/ComplexContent.java65
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/complex/ComplexType.java72
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/complex/ComplexTypeReference.java100
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/complex/Element.java109
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/complex/ElementReference.java106
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/complex/Extension.java160
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/complex/Group.java70
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/complex/GroupReference.java109
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/complex/OccurrenceIndicator.java152
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/complex/Sequence.java73
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/optimize/CopyVisitor.java112
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/optimize/RequestVisitor.java128
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/optimize/SchemaOptimizer.java140
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/schema/NamespaceMap.java178
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/schema/Schema.java107
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/schema/SchemaBase.java121
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/schema/TypeContainer.java100
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/simple/BuiltIn.java103
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/simple/BuiltInType.java109
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/simple/List.java84
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/simple/Restriction.java337
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/simple/SimpleContent.java65
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/simple/SimpleType.java102
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/simple/SimpleTypeReference.java107
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/simple/Union.java68
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/parser/FormDefault.java31
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/parser/SchemaParser.java1211
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/parser/XmlNamespace.java69
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/parser/XsdNamespace.java29
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/simple/BlobNode.java131
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/simple/DateTimeNode.java92
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/simple/EnumerationNode.java27
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/simple/ISimpleTypeNode.java48
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/simple/ISimpleTypeNodeVisitor.java31
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/simple/NumberNode.java310
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/simple/SimpleTypeContainer.java102
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/simple/SimpleTypeDescriptor.java86
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/simple/SimpleTypeDescriptorFactory.java307
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/simple/SimpleTypeNodeVisitorAdapter.java60
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/simple/StringNode.java269
-rw-r--r--ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/simple/UnionNode.java151
-rw-r--r--package/qa/ofopxmlstorages/Test01.java2
-rw-r--r--package/qa/ofopxmlstorages/Test04.java2
-rw-r--r--package/qa/ofopxmlstorages/Test07.java6
-rw-r--r--package/qa/ofopxmlstorages/TestHelper.java4
-rw-r--r--package/qa/storages/RegressionTest_i29169.java24
-rw-r--r--package/qa/storages/Test01.java2
-rw-r--r--package/qa/storages/Test04.java2
-rw-r--r--package/qa/storages/Test07.java2
-rw-r--r--package/qa/storages/Test08.java2
-rw-r--r--package/qa/storages/Test09.java2
-rw-r--r--package/qa/storages/Test10.java6
-rw-r--r--package/qa/storages/Test11.java4
-rw-r--r--package/qa/storages/Test13.java2
-rw-r--r--package/qa/storages/Test14.java2
-rw-r--r--package/qa/storages/Test16.java2
-rw-r--r--package/qa/storages/Test18.java2
-rw-r--r--package/qa/storages/TestHelper.java4
-rw-r--r--package/source/xstor/ohierarchyholder.cxx4
-rw-r--r--package/source/xstor/owriteablestream.cxx2
-rw-r--r--package/source/xstor/xstorage.cxx8
-rw-r--r--package/source/xstor/xstorage.hxx2
-rw-r--r--package/source/zippackage/ZipPackage.cxx2
-rw-r--r--package/source/zippackage/zipfileaccess.cxx2
-rw-r--r--padmin/source/padialog.src2
-rw-r--r--padmin/source/pamain.cxx2
-rw-r--r--postprocess/packcomponents/makefile.mk9
-rw-r--r--postprocess/signing/signing.pl2
-rw-r--r--python/makefile.mk2
-rw-r--r--python/prj/d.lst108
-rw-r--r--python/python-2.7.6-mingw.patch (renamed from python/python-2.7.5-mingw.patch)146
-rw-r--r--python/python-2.7.6-nohardlink.patch (renamed from python/python-2.7.5-nohardlink.patch)4
-rw-r--r--python/python-2.7.6-pcbuild.patch (renamed from python/python-2.7.5-pcbuild.patch)162
-rw-r--r--python/python-2.7.6-sysbase.patch (renamed from python/python-2.7.5-sysbase.patch)4
-rw-r--r--python/python-freebsd.patch36
-rw-r--r--python/python-md5.patch6
-rw-r--r--python/python-solaris.patch4
-rw-r--r--python/python-solver-before-std.patch4
-rw-r--r--python/python-ssl.patch12
-rw-r--r--python/pyversion.mk2
-rw-r--r--pyuno/source/module/pyuno_module.cxx2
-rw-r--r--qadevOOo/runner/base/java_complex.java6
-rw-r--r--qadevOOo/runner/basicrunner/BasicHandler.java2
-rw-r--r--qadevOOo/runner/basicrunner/basichelper/Connector.java4
-rw-r--r--qadevOOo/runner/complexlib/ComplexTestCase.java2
-rw-r--r--qadevOOo/runner/convwatch/ConvWatch.java2
-rw-r--r--qadevOOo/runner/convwatch/ConvWatchStarter.java6
-rw-r--r--qadevOOo/runner/convwatch/DB.java2
-rw-r--r--qadevOOo/runner/convwatch/DBHelper.java2
-rw-r--r--qadevOOo/runner/convwatch/DocumentConverter.java4
-rw-r--r--qadevOOo/runner/convwatch/EnhancedComplexTestCase.java2
-rw-r--r--qadevOOo/runner/convwatch/FileHelper.java2
-rw-r--r--qadevOOo/runner/convwatch/GfxCompare.java4
-rw-r--r--qadevOOo/runner/convwatch/MSOfficePrint.java2
-rw-r--r--qadevOOo/runner/convwatch/OfficePrint.java4
-rw-r--r--qadevOOo/runner/convwatch/ReferenceBuilder.java6
-rw-r--r--qadevOOo/runner/convwatch/ReportDesignerTest.java2
-rw-r--r--qadevOOo/runner/graphical/FileHelper.java2
-rw-r--r--qadevOOo/runner/graphical/IniFile.java2
-rw-r--r--qadevOOo/runner/graphical/MSOfficePostscriptCreator.java2
-rw-r--r--qadevOOo/runner/graphical/OpenOfficeDatabaseReportExtractor.java2
-rw-r--r--qadevOOo/runner/graphical/OpenOfficePostscriptCreator.java6
-rw-r--r--qadevOOo/runner/helper/ConfigHelper.java6
-rw-r--r--qadevOOo/runner/helper/ContextMenuInterceptor.java2
-rw-r--r--qadevOOo/runner/helper/LoggingThread.java2
-rw-r--r--qadevOOo/runner/helper/OfficeProvider.java4
-rw-r--r--qadevOOo/runner/helper/ProcessHandler.java4
-rw-r--r--qadevOOo/runner/helper/PropertyHandlerImpl.java2
-rw-r--r--qadevOOo/runner/helper/StreamSimulator.java8
-rw-r--r--qadevOOo/runner/helper/URLHelper.java10
-rw-r--r--qadevOOo/runner/lib/MultiMethodTest.java2
-rw-r--r--qadevOOo/runner/lib/MultiPropertyTest.java4
-rw-r--r--qadevOOo/runner/lib/Status.java2
-rw-r--r--qadevOOo/runner/lib/TestParameters.java2
-rw-r--r--qadevOOo/runner/org/openoffice/Runner.java2
-rw-r--r--qadevOOo/runner/share/DescEntry.java2
-rw-r--r--qadevOOo/runner/share/LogWriter.java2
-rw-r--r--qadevOOo/runner/stats/SQLExecution.java10
-rw-r--r--qadevOOo/runner/util/CalcTools.java6
-rw-r--r--qadevOOo/runner/util/DBTools.java2
-rw-r--r--qadevOOo/runner/util/RegistryTools.java2
-rw-r--r--qadevOOo/runner/util/SOfficeFactory.java2
-rw-r--r--qadevOOo/runner/util/ValueChanger.java2
-rw-r--r--qadevOOo/runner/util/ValueComparer.java2
-rw-r--r--qadevOOo/runner/util/XMLTools.java4
-rw-r--r--qadevOOo/runner/util/dbg.java2
-rw-r--r--qadevOOo/runner/util/utils.java12
-rw-r--r--qadevOOo/tests/basic/ifc/awt/XWindow/awt_XWindow.xba16
-rw-r--r--qadevOOo/tests/basic/ifc/beans/XPropertyState/beans_XPropertyState.xba2
-rw-r--r--qadevOOo/tests/basic/ifc/container/XIndexReplace/container_XIndexReplace.xba2
-rw-r--r--qadevOOo/tests/basic/ifc/io/XMarkableStream/io_XMarkableStream.xba4
-rw-r--r--qadevOOo/tests/basic/ifc/lang/XInitialization/lang_XInitialization.xba2
-rw-r--r--qadevOOo/tests/basic/ifc/sdbc/XCloseable/sdbc_XCloseable.xba2
-rw-r--r--qadevOOo/tests/basic/ifc/sdbcx/XRowLocate/sdbcx_XRowLocate.xba4
-rw-r--r--qadevOOo/tests/basic/ifc/text/XRelativeTextContentInsert/text_XRelativeTextContentInsert.xba2
-rw-r--r--qadevOOo/tests/basic/ifc/text/XTextColumns/text_XTextColumns.xba2
-rw-r--r--qadevOOo/tests/basic/mod/dynamicloader.uno/Dynamic/dynamicloader_uno_Dynamic.xba2
-rw-r--r--qadevOOo/tests/basic/mod/dynamicloader/Dynamic/dynamicloader_Dynamic.xba2
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScDDELinkObj/sc_ScDDELinkObj.xba2
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScDDELinksObj/sc_ScDDELinksObj.xba2
-rw-r--r--qadevOOo/tests/basic/mod/sc/ScIndexEnumeration_DDELinksEnumeration/sc_ScIndexEnumeration_DDELinksEnumeration.xba2
-rw-r--r--qadevOOo/tests/java/ifc/accessibility/_XAccessibleComponent.java6
-rw-r--r--qadevOOo/tests/java/ifc/awt/_XButton.java4
-rw-r--r--qadevOOo/tests/java/ifc/awt/_XComboBox.java2
-rw-r--r--qadevOOo/tests/java/ifc/awt/_XCurrencyField.java16
-rw-r--r--qadevOOo/tests/java/ifc/awt/_XDateField.java16
-rw-r--r--qadevOOo/tests/java/ifc/awt/_XDialog.java2
-rw-r--r--qadevOOo/tests/java/ifc/awt/_XFixedText.java4
-rw-r--r--qadevOOo/tests/java/ifc/awt/_XImageConsumer.java10
-rw-r--r--qadevOOo/tests/java/ifc/awt/_XImageProducer.java4
-rw-r--r--qadevOOo/tests/java/ifc/awt/_XListBox.java12
-rw-r--r--qadevOOo/tests/java/ifc/awt/_XNumericField.java16
-rw-r--r--qadevOOo/tests/java/ifc/awt/_XPatternField.java6
-rw-r--r--qadevOOo/tests/java/ifc/awt/_XRadioButton.java4
-rw-r--r--qadevOOo/tests/java/ifc/awt/_XSpinField.java4
-rw-r--r--qadevOOo/tests/java/ifc/awt/_XTimeField.java14
-rw-r--r--qadevOOo/tests/java/ifc/awt/_XToolkit.java4
-rw-r--r--qadevOOo/tests/java/ifc/awt/_XTopWindow.java2
-rw-r--r--qadevOOo/tests/java/ifc/awt/_XUnoControlContainer.java2
-rw-r--r--qadevOOo/tests/java/ifc/awt/_XUserInputInterception.java12
-rw-r--r--qadevOOo/tests/java/ifc/awt/_XWindow.java6
-rw-r--r--qadevOOo/tests/java/ifc/awt/tree/_XMutableTreeNode.java4
-rw-r--r--qadevOOo/tests/java/ifc/beans/_XFastPropertySet.java12
-rw-r--r--qadevOOo/tests/java/ifc/beans/_XMultiPropertySet.java12
-rw-r--r--qadevOOo/tests/java/ifc/beans/_XPropertySet.java50
-rw-r--r--qadevOOo/tests/java/ifc/beans/_XPropertyState.java12
-rw-r--r--qadevOOo/tests/java/ifc/bridge/_XBridgeFactory.java4
-rw-r--r--qadevOOo/tests/java/ifc/connection/_XAcceptor.java8
-rw-r--r--qadevOOo/tests/java/ifc/connection/_XConnector.java6
-rw-r--r--qadevOOo/tests/java/ifc/container/_XChild.java2
-rw-r--r--qadevOOo/tests/java/ifc/container/_XContainer.java8
-rw-r--r--qadevOOo/tests/java/ifc/container/_XContainerQuery.java8
-rw-r--r--qadevOOo/tests/java/ifc/container/_XContentEnumerationAccess.java2
-rw-r--r--qadevOOo/tests/java/ifc/container/_XEnumeration.java2
-rw-r--r--qadevOOo/tests/java/ifc/container/_XIndexAccess.java2
-rw-r--r--qadevOOo/tests/java/ifc/container/_XIndexContainer.java2
-rw-r--r--qadevOOo/tests/java/ifc/container/_XNameReplace.java2
-rw-r--r--qadevOOo/tests/java/ifc/datatransfer/_XMimeContentTypeFactory.java2
-rw-r--r--qadevOOo/tests/java/ifc/datatransfer/clipboard/_XClipboardEx.java2
-rw-r--r--qadevOOo/tests/java/ifc/datatransfer/clipboard/_XFlushableClipboard.java2
-rw-r--r--qadevOOo/tests/java/ifc/document/_LinkTarget.java2
-rw-r--r--qadevOOo/tests/java/ifc/document/_XActionLockable.java8
-rw-r--r--qadevOOo/tests/java/ifc/document/_XDocumentInsertable.java6
-rw-r--r--qadevOOo/tests/java/ifc/document/_XExporter.java2
-rw-r--r--qadevOOo/tests/java/ifc/document/_XFilter.java6
-rw-r--r--qadevOOo/tests/java/ifc/document/_XImporter.java2
-rw-r--r--qadevOOo/tests/java/ifc/document/_XStandaloneDocumentInfo.java4
-rw-r--r--qadevOOo/tests/java/ifc/drawing/_GenericDrawPage.java8
-rw-r--r--qadevOOo/tests/java/ifc/drawing/_LineShapeDescriptor.java2
-rw-r--r--qadevOOo/tests/java/ifc/drawing/_ShapeDescriptor.java4
-rw-r--r--qadevOOo/tests/java/ifc/drawing/_Text.java2
-rw-r--r--qadevOOo/tests/java/ifc/drawing/_XDrawPageDuplicator.java6
-rw-r--r--qadevOOo/tests/java/ifc/drawing/_XDrawView.java6
-rw-r--r--qadevOOo/tests/java/ifc/drawing/_XMasterPageTarget.java2
-rw-r--r--qadevOOo/tests/java/ifc/form/_DataAwareControlModel.java2
-rw-r--r--qadevOOo/tests/java/ifc/form/_XFormController.java2
-rw-r--r--qadevOOo/tests/java/ifc/form/_XGrid.java2
-rw-r--r--qadevOOo/tests/java/ifc/form/_XGridColumnFactory.java2
-rw-r--r--qadevOOo/tests/java/ifc/form/_XGridFieldDataSupplier.java4
-rw-r--r--qadevOOo/tests/java/ifc/form/_XLoadable.java2
-rw-r--r--qadevOOo/tests/java/ifc/form/_XUpdateBroadcaster.java26
-rw-r--r--qadevOOo/tests/java/ifc/form/validation/_XValidatableFormComponent.java6
-rw-r--r--qadevOOo/tests/java/ifc/frame/_XComponentLoader.java4
-rw-r--r--qadevOOo/tests/java/ifc/frame/_XDispatch.java2
-rw-r--r--qadevOOo/tests/java/ifc/frame/_XDocumentTemplates.java6
-rw-r--r--qadevOOo/tests/java/ifc/frame/_XFrame.java4
-rw-r--r--qadevOOo/tests/java/ifc/frame/_XFrameLoader.java10
-rw-r--r--qadevOOo/tests/java/ifc/frame/_XFramesSupplier.java12
-rw-r--r--qadevOOo/tests/java/ifc/frame/_XModel.java2
-rw-r--r--qadevOOo/tests/java/ifc/frame/_XModuleManager.java2
-rw-r--r--qadevOOo/tests/java/ifc/frame/_XStorable.java6
-rw-r--r--qadevOOo/tests/java/ifc/frame/_XSynchronousFrameLoader.java4
-rw-r--r--qadevOOo/tests/java/ifc/i18n/_XBreakIterator.java2
-rw-r--r--qadevOOo/tests/java/ifc/i18n/_XCalendar.java2
-rw-r--r--qadevOOo/tests/java/ifc/inspection/_XObjectInspector.java2
-rw-r--r--qadevOOo/tests/java/ifc/io/_XActiveDataControl.java4
-rw-r--r--qadevOOo/tests/java/ifc/io/_XActiveDataSink.java2
-rw-r--r--qadevOOo/tests/java/ifc/io/_XMarkableStream.java2
-rw-r--r--qadevOOo/tests/java/ifc/io/_XPersistObject.java4
-rw-r--r--qadevOOo/tests/java/ifc/lang/_XInitialization.java8
-rw-r--r--qadevOOo/tests/java/ifc/lang/_XMain.java2
-rw-r--r--qadevOOo/tests/java/ifc/lang/_XMultiComponentFactory.java6
-rw-r--r--qadevOOo/tests/java/ifc/lang/_XMultiServiceFactory.java4
-rw-r--r--qadevOOo/tests/java/ifc/lang/_XServiceInfo.java4
-rw-r--r--qadevOOo/tests/java/ifc/lang/_XSingleServiceFactory.java4
-rw-r--r--qadevOOo/tests/java/ifc/lang/_XTypeProvider.java2
-rw-r--r--qadevOOo/tests/java/ifc/reflection/_XProxyFactory.java2
-rw-r--r--qadevOOo/tests/java/ifc/registry/_XSimpleRegistry.java2
-rw-r--r--qadevOOo/tests/java/ifc/sdb/_XCompletedConnection.java2
-rw-r--r--qadevOOo/tests/java/ifc/sdb/_XSingleSelectQueryAnalyzer.java2
-rw-r--r--qadevOOo/tests/java/ifc/sdb/_XSingleSelectQueryComposer.java8
-rw-r--r--qadevOOo/tests/java/ifc/sdbc/_XCloseable.java6
-rw-r--r--qadevOOo/tests/java/ifc/sdbc/_XColumnLocate.java2
-rw-r--r--qadevOOo/tests/java/ifc/sdbc/_XIsolatedConnection.java4
-rw-r--r--qadevOOo/tests/java/ifc/sdbc/_XParameters.java36
-rw-r--r--qadevOOo/tests/java/ifc/sdbc/_XResultSet.java50
-rw-r--r--qadevOOo/tests/java/ifc/sdbc/_XResultSetUpdate.java6
-rw-r--r--qadevOOo/tests/java/ifc/sdbc/_XRow.java38
-rw-r--r--qadevOOo/tests/java/ifc/sdbc/_XRowSet.java2
-rw-r--r--qadevOOo/tests/java/ifc/sdbc/_XWarningsSupplier.java4
-rw-r--r--qadevOOo/tests/java/ifc/sdbcx/_XRowLocate.java16
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_DatabaseImportDescriptor.java2
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_FunctionDescription.java4
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_SheetSortDescriptor.java2
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XActivationBroadcaster.java2
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XDataPilotTables.java4
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XDatabaseRanges.java6
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XDocumentAuditing.java2
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XNamedRanges.java2
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XSheetAuditing.java2
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XSheetCellCursor.java4
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XSheetOperation.java4
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XSpreadsheets.java4
-rw-r--r--qadevOOo/tests/java/ifc/style/_CharacterProperties.java8
-rw-r--r--qadevOOo/tests/java/ifc/style/_ParagraphProperties.java8
-rw-r--r--qadevOOo/tests/java/ifc/style/_XStyle.java2
-rw-r--r--qadevOOo/tests/java/ifc/system/_XSystemShellExecute.java2
-rw-r--r--qadevOOo/tests/java/ifc/table/_XAutoFormattable.java2
-rw-r--r--qadevOOo/tests/java/ifc/text/_BaseIndex.java10
-rw-r--r--qadevOOo/tests/java/ifc/text/_XAutoTextGroup.java14
-rw-r--r--qadevOOo/tests/java/ifc/text/_XDefaultNumberingProvider.java4
-rw-r--r--qadevOOo/tests/java/ifc/text/_XRelativeTextContentInsert.java10
-rw-r--r--qadevOOo/tests/java/ifc/text/_XText.java10
-rw-r--r--qadevOOo/tests/java/ifc/text/_XTextFieldsSupplier.java10
-rw-r--r--qadevOOo/tests/java/ifc/ucb/_XCachedDynamicResultSetStubFactory.java2
-rw-r--r--qadevOOo/tests/java/ifc/ucb/_XContentProvider.java2
-rw-r--r--qadevOOo/tests/java/ifc/ucb/_XDataContainer.java6
-rw-r--r--qadevOOo/tests/java/ifc/ucb/_XSimpleFileAccess.java32
-rw-r--r--qadevOOo/tests/java/ifc/ucb/_XSimpleFileAccess2.java4
-rw-r--r--qadevOOo/tests/java/ifc/ucb/_XSortedDynamicResultSetFactory.java2
-rw-r--r--qadevOOo/tests/java/ifc/ui/dialogs/_XFilePicker.java6
-rw-r--r--qadevOOo/tests/java/ifc/ui/dialogs/_XFilePickerControlAccess.java8
-rw-r--r--qadevOOo/tests/java/ifc/ui/dialogs/_XFilePickerNotifier.java4
-rw-r--r--qadevOOo/tests/java/ifc/ui/dialogs/_XFilterManager.java2
-rw-r--r--qadevOOo/tests/java/ifc/ui/dialogs/_XFolderPicker.java2
-rw-r--r--qadevOOo/tests/java/ifc/uno/_XComponentContext.java2
-rw-r--r--qadevOOo/tests/java/ifc/util/_XCancellable.java2
-rw-r--r--qadevOOo/tests/java/ifc/util/_XCloneable.java2
-rw-r--r--qadevOOo/tests/java/ifc/util/_XFlushable.java2
-rw-r--r--qadevOOo/tests/java/ifc/util/_XModeSelector.java8
-rw-r--r--qadevOOo/tests/java/ifc/util/_XModifyBroadcaster.java4
-rw-r--r--qadevOOo/tests/java/ifc/util/_XSearchable.java2
-rw-r--r--qadevOOo/tests/java/ifc/util/_XTextSearch.java2
-rw-r--r--qadevOOo/tests/java/ifc/view/_XControlAccess.java6
-rw-r--r--qadevOOo/tests/java/ifc/view/_XSelectionSupplier.java6
-rw-r--r--qadevOOo/tests/java/ifc/xml/sax/_XDocumentHandler.java36
-rw-r--r--qadevOOo/tests/java/mod/_acceptor/package.html2
-rw-r--r--qadevOOo/tests/java/mod/_brdgfctr/package.html2
-rw-r--r--qadevOOo/tests/java/mod/_bridgefac.uno/package.html2
-rw-r--r--qadevOOo/tests/java/mod/_connector.uno/package.html2
-rw-r--r--qadevOOo/tests/java/mod/_connectr/package.html2
-rw-r--r--qadevOOo/tests/java/mod/_corefl/package.html2
-rw-r--r--qadevOOo/tests/java/mod/_corereflection.uno/package.html2
-rw-r--r--qadevOOo/tests/java/mod/_cpld/package.html2
-rw-r--r--qadevOOo/tests/java/mod/_dbaccess/ORowSet.java2
-rw-r--r--qadevOOo/tests/java/mod/_dbaccess/package.html2
-rw-r--r--qadevOOo/tests/java/mod/_defreg/NestedRegistry.java4
-rw-r--r--qadevOOo/tests/java/mod/_defreg/package.html2
-rw-r--r--qadevOOo/tests/java/mod/_fileacc/package.html2
-rw-r--r--qadevOOo/tests/java/mod/_forms/GenericModelTest.java4
-rw-r--r--qadevOOo/tests/java/mod/_forms/package.html2
-rw-r--r--qadevOOo/tests/java/mod/_fwk/JobExecutor.java2
-rw-r--r--qadevOOo/tests/java/mod/_fwl/FilterFactory.java2
-rw-r--r--qadevOOo/tests/java/mod/_implreg.uno/package.html2
-rw-r--r--qadevOOo/tests/java/mod/_impreg/package.html2
-rw-r--r--qadevOOo/tests/java/mod/_insp/package.html2
-rw-r--r--qadevOOo/tests/java/mod/_introspection.uno/package.html2
-rw-r--r--qadevOOo/tests/java/mod/_inv/package.html2
-rw-r--r--qadevOOo/tests/java/mod/_invadp/package.html2
-rw-r--r--qadevOOo/tests/java/mod/_invocadapt.uno/package.html2
-rw-r--r--qadevOOo/tests/java/mod/_invocation.uno/package.html2
-rw-r--r--qadevOOo/tests/java/mod/_javavm.uno/package.html2
-rw-r--r--qadevOOo/tests/java/mod/_jen/package.html2
-rw-r--r--qadevOOo/tests/java/mod/_namingservice/package.html2
-rw-r--r--qadevOOo/tests/java/mod/_nestedreg.uno/NestedRegistry.java4
-rw-r--r--qadevOOo/tests/java/mod/_nestedreg.uno/package.html2
-rw-r--r--qadevOOo/tests/java/mod/_proxyfac/package.html2
-rw-r--r--qadevOOo/tests/java/mod/_rdbtdp/package.html2
-rw-r--r--qadevOOo/tests/java/mod/_remotebridge.uno/various.java4
-rw-r--r--qadevOOo/tests/java/mod/_remotebridge/package.html2
-rw-r--r--qadevOOo/tests/java/mod/_remotebridge/various.java4
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScAreaLinkObj.java8
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScAreaLinksObj.java6
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScAutoFormatFieldObj.java2
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScAutoFormatsObj.java2
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScCellCursorObj.java8
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScCellFieldObj.java8
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScCellFieldsObj.java8
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScCellsEnumeration.java6
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScCellsObj.java6
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScDrawPageObj.java6
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScIndexEnumeration_CellAreaLinksEnumeration.java6
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScIndexEnumeration_TableAutoFormatEnumeration.java2
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScIndexEnumeration_TextFieldEnumeration.java8
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScStyleFamilyObj.java6
-rw-r--r--qadevOOo/tests/java/mod/_sc/ScTableSheetObj.java2
-rw-r--r--qadevOOo/tests/java/mod/_sc/XMLContentExporter.java4
-rw-r--r--qadevOOo/tests/java/mod/_sc/XMLExporter.java4
-rw-r--r--qadevOOo/tests/java/mod/_sc/XMLMetaExporter.java6
-rw-r--r--qadevOOo/tests/java/mod/_sc/XMLMetaImporter.java2
-rw-r--r--qadevOOo/tests/java/mod/_sc/XMLSettingsExporter.java4
-rw-r--r--qadevOOo/tests/java/mod/_sc/XMLSettingsImporter.java2
-rw-r--r--qadevOOo/tests/java/mod/_sc/XMLStylesExporter.java6
-rw-r--r--qadevOOo/tests/java/mod/_sc/package.html2
-rw-r--r--qadevOOo/tests/java/mod/_sd/package.html2
-rw-r--r--qadevOOo/tests/java/mod/_servicemgr.uno/package.html2
-rw-r--r--qadevOOo/tests/java/mod/_shlibloader.uno/package.html2
-rw-r--r--qadevOOo/tests/java/mod/_simplereg.uno/SimpleRegistry.java2
-rw-r--r--qadevOOo/tests/java/mod/_simplereg.uno/package.html2
-rw-r--r--qadevOOo/tests/java/mod/_simreg/SimpleRegistry.java2
-rw-r--r--qadevOOo/tests/java/mod/_simreg/package.html2
-rw-r--r--qadevOOo/tests/java/mod/_sm/XMLExporter.java4
-rw-r--r--qadevOOo/tests/java/mod/_sm/XMLImporter.java2
-rw-r--r--qadevOOo/tests/java/mod/_sm/XMLMetaExporter.java4
-rw-r--r--qadevOOo/tests/java/mod/_sm/XMLMetaImporter.java2
-rw-r--r--qadevOOo/tests/java/mod/_sm/XMLSettingsExporter.java4
-rw-r--r--qadevOOo/tests/java/mod/_sm/XMLSettingsImporter.java2
-rw-r--r--qadevOOo/tests/java/mod/_smgr/package.html2
-rw-r--r--qadevOOo/tests/java/mod/_stm/package.html2
-rw-r--r--qadevOOo/tests/java/mod/_streams.uno/package.html2
-rw-r--r--qadevOOo/tests/java/mod/_svx/SvxDrawPage.java6
-rw-r--r--qadevOOo/tests/java/mod/_svx/package.html2
-rw-r--r--qadevOOo/tests/java/mod/_sw/CharacterStyle.java6
-rw-r--r--qadevOOo/tests/java/mod/_sw/ConditionalParagraphStyle.java10
-rw-r--r--qadevOOo/tests/java/mod/_sw/PageStyle.java8
-rw-r--r--qadevOOo/tests/java/mod/_sw/ParagraphStyle.java8
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwAccessiblePageView.java14
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXLineNumberingProperties.java2
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXMailMerge.java2
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXNumberingRules.java14
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXParagraph.java16
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXStyle.java8
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXTextColumns.java16
-rw-r--r--qadevOOo/tests/java/mod/_sw/SwXTextView.java4
-rw-r--r--qadevOOo/tests/java/mod/_sw/XMLContentExporter.java4
-rw-r--r--qadevOOo/tests/java/mod/_sw/XMLExporter.java4
-rw-r--r--qadevOOo/tests/java/mod/_sw/XMLMetaExporter.java4
-rw-r--r--qadevOOo/tests/java/mod/_sw/XMLMetaImporter.java2
-rw-r--r--qadevOOo/tests/java/mod/_sw/XMLSettingsExporter.java4
-rw-r--r--qadevOOo/tests/java/mod/_sw/XMLStylesExporter.java6
-rw-r--r--qadevOOo/tests/java/mod/_sw/XMLStylesImporter.java2
-rw-r--r--qadevOOo/tests/java/mod/_sw/package.html2
-rw-r--r--qadevOOo/tests/java/mod/_sysdtrans/package.html2
-rw-r--r--qadevOOo/tests/java/mod/_tcv/package.html2
-rw-r--r--qadevOOo/tests/java/mod/_tdmgr/package.html2
-rw-r--r--qadevOOo/tests/java/mod/_toolkit/package.html2
-rw-r--r--qadevOOo/tests/java/mod/_typeconverter.uno/package.html2
-rw-r--r--qadevOOo/tests/java/mod/_typemgr.uno/package.html2
-rw-r--r--qadevOOo/tests/java/mod/_uuresolver.uno/package.html2
-rw-r--r--qadevOOo/tests/java/mod/_uuresolver/package.html2
-rw-r--r--qadevOOo/tests/java/mod/_xmloff/Chart/XMLContentExporter.java4
-rw-r--r--qadevOOo/tests/java/mod/_xmloff/Chart/XMLContentImporter.java2
-rw-r--r--qadevOOo/tests/java/mod/_xmloff/Chart/XMLExporter.java4
-rw-r--r--qadevOOo/tests/java/mod/_xmloff/Chart/XMLImporter.java2
-rw-r--r--qadevOOo/tests/java/mod/_xmloff/Chart/XMLStylesExporter.java4
-rw-r--r--qadevOOo/tests/java/mod/_xmloff/Chart/XMLStylesImporter.java2
-rw-r--r--qadevOOo/tests/java/mod/_xmloff/Draw/XMLContentExporter.java6
-rw-r--r--qadevOOo/tests/java/mod/_xmloff/Draw/XMLExporter.java6
-rw-r--r--qadevOOo/tests/java/mod/_xmloff/Draw/XMLMetaExporter.java6
-rw-r--r--qadevOOo/tests/java/mod/_xmloff/Draw/XMLMetaImporter.java2
-rw-r--r--qadevOOo/tests/java/mod/_xmloff/Draw/XMLSettingsExporter.java6
-rw-r--r--qadevOOo/tests/java/mod/_xmloff/Draw/XMLStylesExporter.java6
-rw-r--r--qadevOOo/tests/java/mod/_xmloff/Impress/XMLContentExporter.java4
-rw-r--r--qadevOOo/tests/java/mod/_xmloff/Impress/XMLContentImporter.java2
-rw-r--r--qadevOOo/tests/java/mod/_xmloff/Impress/XMLExporter.java4
-rw-r--r--qadevOOo/tests/java/mod/_xmloff/Impress/XMLMetaExporter.java6
-rw-r--r--qadevOOo/tests/java/mod/_xmloff/Impress/XMLMetaImporter.java2
-rw-r--r--qadevOOo/tests/java/mod/_xmloff/Impress/XMLSettingsExporter.java6
-rw-r--r--qadevOOo/tests/java/mod/_xmloff/Impress/XMLStylesExporter.java6
-rw-r--r--rat-excludes16
-rw-r--r--readlicense_oo/docs/readme/readme.xrm2
-rw-r--r--registry/inc/registry/reader.h4
-rw-r--r--registry/inc/registry/regtype.h2
-rw-r--r--registry/inc/registry/types.h4
-rw-r--r--registry/inc/registry/writer.h12
-rw-r--r--registry/tools/regcompare.cxx2
-rw-r--r--reportbuilder/java/com/sun/star/report/makefile.mk2
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/Manifest.mf2
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/makefile.mk12
-rw-r--r--reportbuilder/util/makefile.mk4
-rw-r--r--rhino/rhino1_7R3.patch2
-rw-r--r--ridljar/com/sun/star/lib/util/WeakMap.java2
-rw-r--r--ridljar/com/sun/star/uno/IMethodDescription.java2
-rw-r--r--ridljar/com/sun/star/uno/ITypeDescription.java2
-rw-r--r--ridljar/com/sun/star/uno/Type.java2
-rw-r--r--rsc/inc/rscrsc.hxx2
-rw-r--r--rsc/source/parser/erscerr.cxx2
-rw-r--r--rsc/source/rscpp/cpp1.c4
-rw-r--r--rsc/source/rscpp/cpp2.c4
-rw-r--r--rsc/source/rscpp/cpp3.c4
-rw-r--r--rsc/source/rscpp/cpp5.c4
-rw-r--r--sal/inc/osl/conditn.h2
-rw-r--r--sal/inc/osl/diagnose.hxx14
-rw-r--r--sal/inc/osl/endian.h2
-rw-r--r--sal/inc/osl/file.h8
-rw-r--r--sal/inc/osl/file.hxx4
-rw-r--r--sal/inc/osl/pipe_decl.hxx8
-rw-r--r--sal/inc/osl/process.h18
-rw-r--r--sal/inc/osl/security.h2
-rw-r--r--sal/inc/osl/semaphor.h2
-rw-r--r--sal/inc/osl/semaphor.hxx2
-rw-r--r--sal/inc/osl/socket.h24
-rw-r--r--sal/inc/osl/socket_decl.hxx22
-rw-r--r--sal/inc/osl/thread.hxx2
-rw-r--r--sal/inc/rtl/allocator.hxx171
-rw-r--r--sal/inc/rtl/bootstrap.h2
-rw-r--r--sal/inc/rtl/bootstrap.hxx2
-rw-r--r--sal/inc/rtl/instance.hxx6
-rw-r--r--sal/inc/rtl/math.hxx4
-rw-r--r--sal/inc/rtl/string.h2
-rw-r--r--sal/inc/rtl/string.hxx6
-rw-r--r--sal/inc/rtl/tencinfo.h2
-rw-r--r--sal/inc/rtl/tres.h2
-rw-r--r--sal/inc/rtl/ustring.h2
-rw-r--r--sal/inc/rtl/ustring.hxx2
-rw-r--r--sal/inc/sal/main.h2
-rw-r--r--sal/inc/systools/win32/StrConvert.h4
-rw-r--r--sal/osl/all/debugbase.cxx2
-rw-r--r--sal/osl/os2/file_path_helper.h2
-rw-r--r--sal/osl/os2/file_path_helper.hxx2
-rw-r--r--sal/osl/os2/file_url.cxx4
-rw-r--r--sal/osl/os2/file_url.h2
-rw-r--r--sal/osl/os2/makefile.mk2
-rw-r--r--sal/osl/os2/pipe.cxx8
-rw-r--r--sal/osl/os2/process.c8
-rw-r--r--sal/osl/os2/profile.c4
-rw-r--r--sal/osl/os2/socket.c10
-rw-r--r--sal/osl/os2/system.h4
-rw-r--r--sal/osl/unx/asm/interlck_sparc.s2
-rw-r--r--sal/osl/unx/file_url.cxx4
-rw-r--r--sal/osl/unx/pipe.c8
-rw-r--r--sal/osl/unx/process.c2
-rw-r--r--sal/osl/unx/signal.c4
-rw-r--r--sal/osl/unx/socket.c10
-rw-r--r--sal/osl/unx/system.h4
-rw-r--r--sal/osl/w32/MAKEFILE.MK2
-rw-r--r--sal/osl/w32/file_dirvol.cxx4
-rw-r--r--sal/osl/w32/file_url.cxx2
-rw-r--r--sal/osl/w32/interlck.c2
-rw-r--r--sal/osl/w32/module.cxx6
-rw-r--r--sal/osl/w32/nlsupport.c2
-rw-r--r--sal/osl/w32/path_helper.hxx2
-rw-r--r--sal/osl/w32/pipe.c8
-rw-r--r--sal/osl/w32/process.cxx2
-rw-r--r--sal/osl/w32/procimpl.cxx12
-rw-r--r--sal/osl/w32/profile.cxx2
-rw-r--r--sal/osl/w32/security.c2
-rw-r--r--sal/osl/w32/socket.cxx8
-rw-r--r--sal/prj/build.lst9
-rw-r--r--sal/qa/buildall.pl8
-rw-r--r--sal/qa/helper/gcov/deprecated.txt4
-rw-r--r--sal/qa/osl/condition/makefile.mk29
-rw-r--r--sal/qa/osl/condition/osl_Condition.cxx341
-rw-r--r--sal/qa/osl/condition/osl_Condition_Const.h4
-rw-r--r--sal/qa/osl/file/osl_File.cxx16
-rw-r--r--sal/qa/osl/module/osl_Module_Const.h2
-rw-r--r--sal/qa/osl/mutex/osl_Mutex.cxx16
-rw-r--r--sal/qa/osl/pipe/makefile.mk39
-rw-r--r--sal/qa/osl/pipe/osl_Pipe.cxx1180
-rw-r--r--sal/qa/osl/process/osl_Thread.cxx2
-rw-r--r--sal/qa/osl/process/osl_process.cxx4
-rw-r--r--sal/qa/osl/socket/osl_ConnectorSocket.cxx2
-rw-r--r--sal/qa/osl/socket/osl_Socket.cxx6
-rw-r--r--sal/qa/osl/socket/osl_Socket2.cxx2
-rw-r--r--sal/qa/osl/socket/osl_StreamSocket.cxx8
-rw-r--r--sal/qa/osl/socket/sockethelper.cxx2
-rw-r--r--sal/qa/osl/socket/sockethelper.hxx2
-rw-r--r--sal/qa/rtl/bootstrap/rtl_Bootstrap.cxx2
-rw-r--r--sal/qa/rtl_strings/rtl_OUString.cxx2
-rw-r--r--sal/qa/sal/makefile.mk32
-rw-r--r--sal/qa/sal/test_types.cxx26
-rw-r--r--sal/rtl/source/bootstrap.cxx11
-rw-r--r--sal/rtl/source/hash.cxx5
-rw-r--r--sal/rtl/source/unload.cxx20
-rw-r--r--sal/systools/win32/kill/kill.cxx2
-rw-r--r--sal/systools/win32/uwinapi/MoveFileExA.cpp2
-rw-r--r--sal/test/bootstrap2
-rwxr-xr-xsal/test/bootstrap.bat2
-rwxr-xr-xsal/test/bootstrap.pl4
-rw-r--r--sal/textenc/generate/cns116431992.pl6
-rw-r--r--sal/textenc/tcvtkr1.tab2
-rw-r--r--sal/textenc/tcvtmb.c2
-rw-r--r--sal/textenc/tcvtutf8.c2
-rw-r--r--sal/typesconfig/typesconfig.c2
-rw-r--r--sal/workben/tgetpwnam.cxx2
-rw-r--r--salhelper/inc/salhelper/dynload.hxx2
-rw-r--r--salhelper/inc/salhelper/singletonref.hxx6
-rw-r--r--sax/inc/sax/parser/saxparser.hxx2
-rw-r--r--sax/source/expatwrap/sax_expat.cxx2
-rw-r--r--sc/addin/datefunc/dfa.cl10
-rw-r--r--sc/addin/datefunc/dfa.src2
-rw-r--r--sc/addin/rot13/rot13.cl2
-rw-r--r--sc/addin/rot13/rot13.src2
-rw-r--r--sc/inc/attarray.hxx2
-rw-r--r--sc/inc/chgtrack.hxx2
-rw-r--r--sc/inc/column.hxx2
-rw-r--r--sc/inc/compressedarray.hxx2
-rw-r--r--sc/inc/document.hxx6
-rw-r--r--sc/inc/table.hxx2
-rw-r--r--sc/qa/complex/dataPilot/_XPropertySet.java44
-rw-r--r--sc/qa/complex/sc/CalcRTL.java2
-rw-r--r--sc/source/core/data/column.cxx2
-rw-r--r--sc/source/core/data/documen9.cxx29
-rw-r--r--sc/source/core/data/dpobject.cxx2
-rw-r--r--sc/source/core/data/dptablecache.cxx2
-rw-r--r--sc/source/core/data/dptabres.cxx6
-rw-r--r--sc/source/core/data/dptabsrc.cxx2
-rw-r--r--sc/source/core/data/global.cxx2
-rw-r--r--sc/source/core/data/validat.cxx2
-rw-r--r--sc/source/core/tool/chgtrack.cxx4
-rw-r--r--sc/source/core/tool/compiler.cxx2
-rw-r--r--sc/source/core/tool/interpr1.cxx2
-rw-r--r--sc/source/core/tool/interpr2.cxx2
-rw-r--r--sc/source/core/tool/interpr5.cxx2
-rw-r--r--sc/source/filter/excel/ooxml-export-TODO.txt2
-rw-r--r--sc/source/filter/excel/xeformula.cxx2
-rw-r--r--sc/source/filter/excel/xepivot.cxx2
-rw-r--r--sc/source/filter/excel/xestyle.cxx2
-rw-r--r--sc/source/filter/excel/xichart.cxx2
-rw-r--r--sc/source/filter/excel/xipivot.cxx2
-rw-r--r--sc/source/filter/excel/xlpivot.cxx2
-rw-r--r--sc/source/filter/inc/fapihelper.hxx2
-rw-r--r--sc/source/filter/inc/xehelper.hxx2
-rw-r--r--sc/source/filter/inc/xestream.hxx2
-rw-r--r--sc/source/filter/inc/xistream.hxx4
-rw-r--r--sc/source/filter/inc/xistyle.hxx4
-rw-r--r--sc/source/filter/xml/xmlimprt.cxx2
-rw-r--r--sc/source/filter/xml/xmlsubti.cxx2
-rw-r--r--sc/source/ui/Accessibility/AccessibleCell.cxx2
-rw-r--r--sc/source/ui/Accessibility/AccessibleContextBase.cxx2
-rw-r--r--sc/source/ui/Accessibility/AccessibleDataPilotControl.cxx6
-rw-r--r--sc/source/ui/Accessibility/AccessibleDocument.cxx2
-rw-r--r--sc/source/ui/Accessibility/AccessibleDocumentPagePreview.cxx4
-rw-r--r--sc/source/ui/Accessibility/AccessibleEditObject.cxx2
-rw-r--r--sc/source/ui/Accessibility/AccessiblePreviewCell.cxx2
-rw-r--r--sc/source/ui/app/inputwin.cxx2
-rw-r--r--sc/source/ui/app/scmod.cxx2
-rw-r--r--sc/source/ui/docshell/docfunc.cxx6
-rw-r--r--sc/source/ui/docshell/docsh8.cxx2
-rw-r--r--sc/source/ui/drawfunc/fupoor.cxx2
-rw-r--r--sc/source/ui/miscdlgs/linkarea.cxx2
-rw-r--r--sc/source/ui/unoobj/chart2uno.cxx4
-rw-r--r--sc/source/ui/unoobj/dapiuno.cxx4
-rw-r--r--sc/source/ui/unoobj/dispuno.cxx2
-rw-r--r--sc/source/ui/unoobj/docuno.cxx4
-rw-r--r--sc/source/ui/unoobj/nameuno.cxx4
-rw-r--r--sc/source/ui/vba/vbacharacters.hxx2
-rw-r--r--sc/source/ui/vba/vbachartobject.cxx2
-rw-r--r--sc/source/ui/vba/vbaformatconditions.cxx2
-rw-r--r--sc/source/ui/vba/vbarange.cxx8
-rw-r--r--sc/source/ui/vba/vbarange.hxx2
-rw-r--r--sc/source/ui/vba/vbawindow.cxx2
-rw-r--r--sc/source/ui/vba/vbaworksheet.cxx2
-rw-r--r--sc/source/ui/view/drawview.cxx2
-rw-r--r--scaddins/source/analysis/analysis.src2
-rw-r--r--scaddins/source/analysis/analysishelper.cxx4
-rw-r--r--scaddins/source/analysis/analysishelper.hxx2
-rw-r--r--scaddins/source/datefunc/datefunc.cxx8
-rw-r--r--scp2/source/ooo/file_library_ooo.scp19
-rw-r--r--scp2/source/ooo/module_hidden_ooo.scp3
-rw-r--r--scripting/examples/python/Capitalise.py4
-rw-r--r--scripting/java/com/sun/star/script/framework/browse/ParcelBrowseNode.java2
-rw-r--r--scripting/java/com/sun/star/script/framework/browse/ProviderBrowseNode.java2
-rw-r--r--scripting/java/com/sun/star/script/framework/browse/ScriptBrowseNode.java2
-rw-r--r--scripting/java/com/sun/star/script/framework/container/UnoPkgContainer.java2
-rw-r--r--scripting/java/com/sun/star/script/framework/provider/ScriptProvider.java2
-rw-r--r--scripting/java/com/sun/star/script/framework/provider/beanshell/ScriptEditorForBeanShell.java2
-rw-r--r--scripting/java/com/sun/star/script/framework/provider/beanshell/ScriptProviderForBeanShell.java2
-rw-r--r--scripting/java/com/sun/star/script/framework/provider/java/ScriptProviderForJava.java2
-rw-r--r--scripting/java/com/sun/star/script/framework/provider/java/StrictResolver.java8
-rw-r--r--scripting/java/com/sun/star/script/framework/provider/javascript/ScriptEditorForJavaScript.java2
-rw-r--r--scripting/java/com/sun/star/script/framework/provider/javascript/ScriptProviderForJavaScript.java2
-rw-r--r--scripting/java/org/openoffice/netbeans/modules/office/filesystem/OpenOfficeDocFileSystem.java2
-rw-r--r--scripting/source/protocolhandler/scripthandler.cxx42
-rw-r--r--scripting/source/pyprov/officehelper.py2
-rw-r--r--scripting/workben/bindings/ScriptBinding.xba4
-rw-r--r--scripting/workben/ifc/scripting/SecurityDialogUtil.java2
-rw-r--r--sd/inc/Outliner.hxx12
-rw-r--r--sd/inc/stlsheet.hxx2
-rw-r--r--sd/source/core/sdpage.cxx2
-rw-r--r--sd/source/core/stlpool.cxx12
-rw-r--r--sd/source/filter/eppt/eppt.cxx4
-rw-r--r--sd/source/filter/eppt/epptso.cxx2
-rw-r--r--sd/source/filter/xml/sdxmlwrp.cxx2
-rw-r--r--sd/source/ui/accessibility/AccessibleDocumentViewBase.cxx4
-rw-r--r--sd/source/ui/accessibility/AccessibleDrawDocumentView.cxx2
-rw-r--r--sd/source/ui/accessibility/AccessibleSlideSorterView.cxx2
-rw-r--r--sd/source/ui/accessibility/AccessibleViewForwarder.cxx2
-rw-r--r--sd/source/ui/animations/CustomAnimationList.cxx2
-rw-r--r--sd/source/ui/animations/CustomAnimationPane.cxx19
-rw-r--r--sd/source/ui/annotations/annotationmanager.cxx2
-rw-r--r--sd/source/ui/app/sdmod1.cxx2
-rw-r--r--sd/source/ui/app/sdxfer.cxx23
-rw-r--r--sd/source/ui/dlg/dlgass.cxx2
-rw-r--r--sd/source/ui/dlg/prltempl.cxx2
-rw-r--r--sd/source/ui/dlg/sdtreelb.cxx6
-rw-r--r--sd/source/ui/dlg/tpoption.cxx2
-rw-r--r--sd/source/ui/docshell/docshell.cxx2
-rw-r--r--sd/source/ui/framework/configuration/ConfigurationUpdater.cxx4
-rw-r--r--sd/source/ui/framework/configuration/ConfigurationUpdater.hxx2
-rw-r--r--sd/source/ui/framework/module/ViewTabBarModule.hxx2
-rw-r--r--sd/source/ui/framework/tools/FrameworkHelper.cxx2
-rw-r--r--sd/source/ui/func/fuediglu.cxx4
-rw-r--r--sd/source/ui/func/fupoor.cxx4
-rw-r--r--sd/source/ui/func/fusel.cxx4
-rw-r--r--sd/source/ui/func/smarttag.cxx6
-rw-r--r--sd/source/ui/inc/AccessibleDocumentViewBase.hxx4
-rw-r--r--sd/source/ui/inc/AccessibleViewForwarder.hxx2
-rw-r--r--sd/source/ui/inc/DrawViewShell.hxx2
-rw-r--r--sd/source/ui/inc/OutlineView.hxx2
-rw-r--r--sd/source/ui/inc/OutlinerIteratorImpl.hxx4
-rw-r--r--sd/source/ui/inc/PreviewRenderer.hxx4
-rw-r--r--sd/source/ui/inc/SlideSorter.hxx4
-rw-r--r--sd/source/ui/inc/SlideViewShell.hxx2
-rw-r--r--sd/source/ui/inc/ToolBarManager.hxx2
-rw-r--r--sd/source/ui/inc/ViewShell.hxx4
-rw-r--r--sd/source/ui/inc/ViewShellHint.hxx2
-rw-r--r--sd/source/ui/inc/ViewShellImplementation.hxx2
-rw-r--r--sd/source/ui/inc/Window.hxx4
-rw-r--r--sd/source/ui/inc/fuediglu.hxx2
-rw-r--r--sd/source/ui/inc/fupoor.hxx4
-rw-r--r--sd/source/ui/inc/fusel.hxx2
-rw-r--r--sd/source/ui/inc/taskpane/ControlContainer.hxx4
-rw-r--r--sd/source/ui/inc/taskpane/ScrollPanel.hxx2
-rw-r--r--sd/source/ui/inc/taskpane/SubToolPanel.hxx4
-rw-r--r--sd/source/ui/inc/taskpane/TitledControl.hxx2
-rw-r--r--sd/source/ui/inc/tools/IconCache.hxx4
-rw-r--r--sd/source/ui/presenter/PresenterCanvas.hxx2
-rw-r--r--sd/source/ui/sidebar/MasterPageContainer.cxx2
-rw-r--r--sd/source/ui/sidebar/MasterPageContainer.hxx4
-rw-r--r--sd/source/ui/sidebar/MasterPagesSelector.hxx6
-rw-r--r--sd/source/ui/sidebar/PreviewValueSet.hxx2
-rw-r--r--sd/source/ui/slideshow/SlideShowRestarter.hxx2
-rw-r--r--sd/source/ui/slideshow/slideshowimpl.cxx6
-rw-r--r--sd/source/ui/slidesorter/cache/SlsBitmapCache.hxx4
-rw-r--r--sd/source/ui/slidesorter/cache/SlsQueueProcessor.hxx2
-rw-r--r--sd/source/ui/slidesorter/cache/SlsQueueProcessorThread.hxx4
-rw-r--r--sd/source/ui/slidesorter/controller/SlsFocusManager.cxx4
-rw-r--r--sd/source/ui/slidesorter/controller/SlsHideSlideFunction.cxx2
-rw-r--r--sd/source/ui/slidesorter/controller/SlsListener.hxx4
-rw-r--r--sd/source/ui/slidesorter/controller/SlsSelectionCommand.hxx2
-rw-r--r--sd/source/ui/slidesorter/controller/SlsSelectionFunction.cxx4
-rw-r--r--sd/source/ui/slidesorter/controller/SlsSlotManager.cxx2
-rw-r--r--sd/source/ui/slidesorter/inc/controller/SlsAnimationFunction.hxx2
-rw-r--r--sd/source/ui/slidesorter/inc/controller/SlsFocusManager.hxx8
-rw-r--r--sd/source/ui/slidesorter/inc/controller/SlsPageSelector.hxx2
-rw-r--r--sd/source/ui/slidesorter/inc/model/SlsPageDescriptor.hxx2
-rw-r--r--sd/source/ui/slidesorter/inc/view/SlsLayouter.hxx6
-rw-r--r--sd/source/ui/slidesorter/inc/view/SlsPageObjectViewObjectContact.hxx2
-rw-r--r--sd/source/ui/slidesorter/model/SlsPageEnumeration.cxx6
-rw-r--r--sd/source/ui/slidesorter/view/SlsButtonBar.cxx2
-rw-r--r--sd/source/ui/tools/PreviewRenderer.cxx4
-rw-r--r--sd/source/ui/unoidl/unopage.cxx20
-rw-r--r--sd/source/ui/view/DocumentRenderer.cxx2
-rw-r--r--sd/source/ui/view/FormShellManager.cxx2
-rw-r--r--sd/source/ui/view/Outliner.cxx22
-rw-r--r--sd/source/ui/view/ToolBarManager.cxx2
-rw-r--r--sd/source/ui/view/drtxtob.cxx2
-rw-r--r--sd/source/ui/view/drviews2.cxx3
-rw-r--r--sd/source/ui/view/frmview.cxx4
-rw-r--r--sd/source/ui/view/sdview.cxx2
-rw-r--r--sd/source/ui/view/viewshel.cxx4
-rw-r--r--sdext/source/minimizer/optimizerdialog.cxx2
-rw-r--r--sdext/source/pdfimport/inc/pdfparse.hxx2
-rw-r--r--sdext/source/presenter/PresenterFrameworkObserver.hxx2
-rw-r--r--sdext/source/presenter/PresenterScreen.cxx2
-rw-r--r--sdext/source/presenter/PresenterSlidePreview.cxx2
-rw-r--r--sdext/source/presenter/PresenterSlideShowView.cxx2
-rw-r--r--sdext/source/presenter/PresenterSlideSorter.cxx2
-rw-r--r--sdext/source/presenter/PresenterViewFactory.hxx2
-rw-r--r--set_soenv.in46
-rw-r--r--setup_native/scripts/admin.pl6
-rw-r--r--setup_native/scripts/deregister_extensions2
-rw-r--r--setup_native/scripts/register_extensions2
-rw-r--r--setup_native/source/opensolaris/bundledextensions/README2
-rw-r--r--setup_native/source/opensolaris/bundledextensions/svc-ooo_bundled_extensions2
-rw-r--r--setup_native/source/win32/customactions/patch/swappatchfiles.cxx2
-rw-r--r--setup_native/source/win32/customactions/reg4msdoc/registrar.cxx2
-rw-r--r--setup_native/source/win32/customactions/reg4msdoc/userregistrar.cxx2
-rw-r--r--setup_native/source/win32/customactions/shellextensions/completeinstallpath.cxx2
-rw-r--r--setup_native/source/win32/customactions/shellextensions/upgrade.cxx2
-rw-r--r--sfx2/inc/sfx2/docmacromode.hxx2
-rw-r--r--sfx2/inc/sfx2/objsh.hxx12
-rw-r--r--sfx2/inc/sfx2/sfxbasemodel.hxx2
-rw-r--r--sfx2/inc/sfx2/sfxsids.hrc1
-rw-r--r--sfx2/inc/sfx2/titledockwin.hxx2
-rw-r--r--sfx2/qa/complex/sfx2/DocumentProperties.java4
-rw-r--r--sfx2/source/appl/appcfg.cxx20
-rw-r--r--sfx2/source/appl/appinit.cxx4
-rw-r--r--sfx2/source/appl/appopen.cxx10
-rw-r--r--sfx2/source/appl/appquit.cxx2
-rw-r--r--sfx2/source/appl/appserv.cxx2
-rw-r--r--sfx2/source/appl/childwin.cxx2
-rw-r--r--sfx2/source/appl/impldde.cxx18
-rw-r--r--sfx2/source/bastyp/bitset.cxx2
-rw-r--r--sfx2/source/bastyp/fltlst.cxx2
-rw-r--r--sfx2/source/bastyp/sfxhtml.cxx2
-rw-r--r--sfx2/source/config/evntconf.cxx2
-rw-r--r--sfx2/source/dialog/dockwin.cxx2
-rw-r--r--sfx2/source/dialog/filtergrouping.cxx2
-rw-r--r--sfx2/source/dialog/tabdlg.cxx3
-rw-r--r--sfx2/source/doc/Metadatable.cxx2
-rw-r--r--sfx2/source/doc/docfile.cxx6
-rw-r--r--sfx2/source/doc/doctempl.cxx2
-rw-r--r--sfx2/source/doc/docvor.cxx2
-rw-r--r--sfx2/source/doc/graphhelp.cxx2
-rw-r--r--sfx2/source/doc/objcont.cxx2
-rw-r--r--sfx2/source/doc/objserv.cxx6
-rw-r--r--sfx2/source/doc/objstor.cxx18
-rw-r--r--sfx2/source/doc/objuno.cxx6
-rw-r--r--sfx2/source/doc/objxtor.cxx2
-rw-r--r--sfx2/source/doc/printhelper.cxx20
-rw-r--r--sfx2/source/doc/sfxbasemodel.cxx11
-rw-r--r--sfx2/source/menu/virtmenu.cxx11
-rw-r--r--sfx2/source/notify/eventsupplier.cxx6
-rw-r--r--sfx2/source/sidebar/SidebarDockingWindow.cxx5
-rw-r--r--sfx2/source/view/frmload.cxx4
-rw-r--r--sfx2/source/view/ipclient.cxx2
-rw-r--r--sfx2/source/view/sfxbasecontroller.cxx4
-rw-r--r--sfx2/source/view/viewprn.cxx2
-rw-r--r--sfx2/source/view/viewsh.cxx4
-rw-r--r--shell/inc/internal/xml_parser.hxx2
-rw-r--r--shell/qa/zip/ziptest.cxx2
-rw-r--r--shell/source/all/ooofilereader/metainforeader.cxx4
-rw-r--r--shell/source/backends/macbe/macbackend.cxx2
-rw-r--r--shell/source/backends/wininetbe/wininetbackend.cxx2
-rw-r--r--shell/source/tools/lngconvex/lngconvex.cxx2
-rw-r--r--shell/source/unix/misc/senddoc.sh38
-rw-r--r--shell/source/win32/SysShExec.cxx2
-rw-r--r--shell/source/win32/shlxthandler/infotips/infotips.cxx6
-rw-r--r--shell/source/win32/shlxthandler/util/utilities.cxx2
-rw-r--r--shell/source/win32/workbench/TestSmplMail.cxx4
-rw-r--r--shell/source/win32/workbench/TestSysShExec.cxx4
-rw-r--r--slideshow/source/engine/OGLTrans/OGLTrans_TransitionImpl.hxx2
-rw-r--r--slideshow/source/engine/animatedsprite.cxx2
-rw-r--r--slideshow/source/engine/animationnodes/basenode.hxx2
-rw-r--r--slideshow/source/engine/shapes/drawshapesubsetting.cxx6
-rw-r--r--slideshow/source/engine/shapes/intrinsicanimationactivity.cxx2
-rw-r--r--slideshow/source/engine/shapes/intrinsicanimationactivity.hxx2
-rw-r--r--slideshow/source/engine/slide/layer.hxx6
-rw-r--r--slideshow/source/engine/slide/layermanager.cxx2
-rw-r--r--slideshow/source/engine/slide/layermanager.hxx2
-rw-r--r--slideshow/source/engine/transitions/clippingfunctor.cxx2
-rw-r--r--slideshow/source/engine/wakeupevent.cxx2
-rw-r--r--slideshow/source/inc/animatedsprite.hxx2
-rw-r--r--slideshow/source/inc/eventmultiplexer.hxx2
-rw-r--r--slideshow/source/inc/usereventqueue.hxx2
-rwxr-xr-xsolenv/bin/build.pl6
-rwxr-xr-xsolenv/bin/build_release.pl2
-rw-r--r--solenv/bin/cws.pl10
-rwxr-xr-xsolenv/bin/download_external_dependencies.pl2
-rw-r--r--solenv/bin/make_download.pl2
-rw-r--r--solenv/bin/make_installer.pl4
-rw-r--r--solenv/bin/modules/Cws.pm2
-rw-r--r--solenv/bin/modules/ExtensionsLst.pm4
-rw-r--r--solenv/bin/modules/installer/archivefiles.pm2
-rw-r--r--solenv/bin/modules/installer/control.pm6
-rw-r--r--solenv/bin/modules/installer/converter.pm2
-rw-r--r--solenv/bin/modules/installer/downloadsigner.pm16
-rw-r--r--solenv/bin/modules/installer/environment.pm2
-rw-r--r--solenv/bin/modules/installer/epmfile.pm2
-rw-r--r--solenv/bin/modules/installer/javainstaller.pm2
-rw-r--r--solenv/bin/modules/installer/packagelist.pm4
-rw-r--r--solenv/bin/modules/installer/packagepool.pm14
-rw-r--r--solenv/bin/modules/installer/parameter.pm2
-rw-r--r--solenv/bin/modules/installer/patch/InstallationSet.pm2
-rw-r--r--solenv/bin/modules/installer/scriptitems.pm8
-rw-r--r--solenv/bin/modules/installer/windows/admin.pm2
-rw-r--r--solenv/bin/modules/installer/windows/directory.pm2
-rw-r--r--solenv/bin/modules/installer/windows/feature.pm2
-rw-r--r--solenv/bin/modules/installer/windows/idtglobal.pm10
-rw-r--r--solenv/bin/modules/installer/windows/msiglobal.pm46
-rw-r--r--solenv/bin/modules/installer/windows/sign.pm4
-rw-r--r--solenv/bin/modules/installer/worker.pm26
-rw-r--r--solenv/bin/modules/installer/xpdinstaller.pm6
-rw-r--r--solenv/bin/modules/installer/ziplist.pm12
-rw-r--r--solenv/bin/modules/osarch.pm2
-rw-r--r--solenv/bin/modules/packager/work.pm2
-rw-r--r--solenv/bin/modules/par2script/parameter.pm4
-rw-r--r--solenv/bin/modules/par2script/work.pm6
-rw-r--r--solenv/bin/modules/pre2par/parameter.pm2
-rwxr-xr-xsolenv/bin/packimages.pl2
-rw-r--r--solenv/bin/packregistry.xslt2
-rw-r--r--solenv/bin/patch_tool.pl2
-rw-r--r--solenv/bin/srcrelease.xml24
-rw-r--r--solenv/bin/transform_description.pl2
-rw-r--r--solenv/doc/gbuild/doxygen.cfg2
-rw-r--r--solenv/gbuild/LinkTarget.mk2
-rw-r--r--solenv/gbuild/gbuild.mk2
-rw-r--r--solenv/inc/_tg_app.mk7
-rw-r--r--solenv/inc/libs.mk6
-rw-r--r--solenv/inc/minor.mk10
-rw-r--r--solenv/inc/os2gcci.mk2
-rw-r--r--solenv/inc/settings.mk8
-rw-r--r--solenv/inc/startup/Readme2
-rw-r--r--solenv/inc/target.mk43
-rw-r--r--solenv/inc/tg_app.mk7
-rw-r--r--solenv/inc/tg_compv.mk2
-rw-r--r--solenv/inc/tg_ext.mk3
-rw-r--r--solenv/inc/tg_javav.mk2
-rw-r--r--solenv/inc/unitools.mk2
-rw-r--r--solenv/inc/unxbsdi.mk2
-rw-r--r--solenv/inc/unxbsdi2.mk2
-rw-r--r--solenv/inc/unxbsds.mk2
-rw-r--r--solenv/inc/unxfbsd.mk8
-rw-r--r--solenv/inc/unxfbsdppc.mk30
-rw-r--r--solenv/inc/unxfbsdppc64.mk31
-rw-r--r--solenv/inc/unxlng.mk2
-rw-r--r--sot/qa/complex/olesimplestorage/Test01.java2
-rw-r--r--sot/source/sdstor/stg.cxx2
-rw-r--r--sot/source/sdstor/stgdir.cxx30
-rw-r--r--sot/source/sdstor/stgdir.hxx6
-rw-r--r--sot/source/sdstor/stgelem.cxx2
-rw-r--r--sot/source/sdstor/ucbstorage.cxx14
-rw-r--r--starmath/inc/toolbox.hxx2
-rw-r--r--starmath/source/mathmlexport.cxx8
-rw-r--r--starmath/source/mathmlimport.cxx4
-rw-r--r--starmath/source/mathtype.cxx8
-rw-r--r--starmath/source/node.cxx6
-rw-r--r--starmath/source/smdetect.cxx64
-rw-r--r--starmath/source/toolbox.cxx6
-rw-r--r--starmath/source/view.cxx2
-rw-r--r--stlport/systemstl/hash_map18
-rw-r--r--stlport/systemstl/hash_set18
-rw-r--r--stlport/systemstl/slist6
-rw-r--r--stoc/source/bootstrap/bootstrap.xml4
-rw-r--r--stoc/source/corereflection/criface.cxx4
-rw-r--r--stoc/source/invocation/invocation.cxx6
-rw-r--r--stoc/source/invocation_adapterfactory/iafactory.cxx2
-rw-r--r--stoc/source/proxy_factory/proxyfac.cxx2
-rw-r--r--stoc/source/security/access_controller.cxx2
-rw-r--r--stoc/source/security/permissions.cxx4
-rw-r--r--stoc/source/servicemanager/servicemanager.cxx8
-rw-r--r--stoc/source/tdmanager/tdmgr.cxx6
-rw-r--r--stoc/test/javavm/testjavavm.cxx4
-rw-r--r--stoc/test/testconv.cxx4
-rw-r--r--stoc/test/testcorefl.cxx6
-rw-r--r--stoc/test/testiadapter.cxx2
-rw-r--r--stoc/test/testintrosp.cxx4
-rw-r--r--svgio/inc/svgio/svgreader/svgclippathnode.hxx6
-rw-r--r--svgio/inc/svgio/svgreader/svgmasknode.hxx6
-rw-r--r--svgio/source/svgreader/svgclippathnode.cxx90
-rw-r--r--svgio/source/svgreader/svgmasknode.cxx17
-rw-r--r--svgio/source/svgreader/svgstyleattributes.cxx10
-rw-r--r--svgio/source/svgreader/svgsvgnode.cxx2
-rw-r--r--svl/inc/svl/inettype.hxx4
-rw-r--r--svl/inc/svl/ondemand.hxx2
-rw-r--r--svl/inc/svl/urihelper.hxx4
-rw-r--r--svl/inc/svl/zforlist.hxx4
-rw-r--r--svl/qa/complex/ConfigItems/helper/HistoryOptTest.cxx6
-rw-r--r--svl/qa/complex/ConfigItems/helper/HistoryOptTest.hxx6
-rw-r--r--svl/source/config/itemholder2.hxx2
-rw-r--r--svl/source/items/itemset.cxx2
-rw-r--r--svl/source/numbers/supservs.hxx2
-rw-r--r--svl/source/numbers/zforlist.cxx2
-rw-r--r--svl/source/numbers/zformat.cxx2
-rw-r--r--svl/source/numbers/zforscan.cxx2
-rw-r--r--svtools/bmpmaker/bmp.cxx2
-rw-r--r--svtools/inc/svtools/acceleratorexecute.hxx4
-rw-r--r--svtools/inc/svtools/accessibletable.hxx2
-rw-r--r--svtools/inc/svtools/brwbox.hxx8
-rw-r--r--svtools/inc/svtools/contextmenuhelper.hxx2
-rw-r--r--svtools/inc/svtools/dialogcontrolling.hxx2
-rw-r--r--svtools/inc/svtools/fmtfield.hxx2
-rw-r--r--svtools/inc/svtools/genericunodialog.hxx2
-rw-r--r--svtools/inc/svtools/grfmgr.hxx24
-rw-r--r--svtools/inc/svtools/helpagentwindow.hxx2
-rw-r--r--svtools/inc/svtools/menuoptions.hxx2
-rw-r--r--svtools/inc/svtools/miscopt.hxx2
-rw-r--r--svtools/inc/svtools/optionsdrawinglayer.hxx2
-rw-r--r--svtools/inc/svtools/stringtransfer.hxx2
-rw-r--r--svtools/inc/svtools/svlbitm.hxx2
-rw-r--r--svtools/inc/svtools/svtdata.hxx4
-rw-r--r--svtools/inc/svtools/table/tablemodel.hxx2
-rw-r--r--svtools/inc/svtools/textview.hxx2
-rw-r--r--svtools/inc/svtools/valueset.hxx2
-rw-r--r--svtools/inc/svtools/wizardmachine.hxx6
-rw-r--r--svtools/source/brwbox/brwbox1.cxx2
-rw-r--r--svtools/source/brwbox/brwbox2.cxx4
-rw-r--r--svtools/source/brwbox/editbrowsebox.cxx2
-rw-r--r--svtools/source/config/itemholder2.hxx2
-rw-r--r--svtools/source/config/test/test.cxx2
-rw-r--r--svtools/source/contnr/contentenumeration.hxx6
-rw-r--r--svtools/source/contnr/fileview.cxx2
-rw-r--r--svtools/source/control/roadmap.cxx3
-rw-r--r--svtools/source/filter/filter.cxx11
-rw-r--r--svtools/source/graphic/grfmgr.cxx49
-rw-r--r--svtools/source/graphic/grfmgr2.cxx75
-rw-r--r--svtools/source/svrtf/svparser.cxx4
-rw-r--r--svtools/source/uno/wizard/unowizard.cxx2
-rw-r--r--svtools/source/uno/wizard/wizardshell.cxx5
-rw-r--r--svtools/source/uno/wizard/wizardshell.hxx6
-rw-r--r--svx/Library_svxcore.mk2
-rw-r--r--svx/Package_inc.mk2
-rw-r--r--svx/inc/svx/AccessibleShapeTreeInfo.hxx2
-rw-r--r--svx/inc/svx/AccessibleTextHelper.hxx2
-rw-r--r--svx/inc/svx/ChildrenManager.hxx6
-rw-r--r--svx/inc/svx/IAccessibleParent.hxx2
-rw-r--r--svx/inc/svx/IAccessibleViewForwarder.hxx4
-rw-r--r--svx/inc/svx/dbaexchange.hxx4
-rw-r--r--svx/inc/svx/dlgctrl.hxx2
-rw-r--r--svx/inc/svx/fillctrl.hxx74
-rw-r--r--svx/inc/svx/fmgridcl.hxx4
-rw-r--r--svx/inc/svx/fmsrcimp.hxx2
-rw-r--r--svx/inc/svx/hdft.hxx22
-rw-r--r--svx/inc/svx/msdffdef.hxx2
-rw-r--r--svx/inc/svx/pagectrl.hxx143
-rwxr-xr-xsvx/inc/svx/sdr/attribute/sdrallfillattributeshelper.hxx98
-rw-r--r--svx/inc/svx/sdr/contact/displayinfo.hxx2
-rw-r--r--svx/inc/svx/sdr/contact/objectcontact.hxx2
-rw-r--r--svx/inc/svx/sdr/contact/objectcontactofpageview.hxx2
-rw-r--r--svx/inc/svx/sdr/overlay/overlayobject.hxx2
-rw-r--r--svx/inc/svx/sdr/primitive2d/sdrtextprimitive2d.hxx2
-rw-r--r--svx/inc/svx/svdouno.hxx2
-rw-r--r--svx/inc/svx/svdpage.hxx12
-rw-r--r--svx/inc/svx/svdpntv.hxx2
-rw-r--r--svx/inc/svx/svxdlg.hxx11
-rwxr-xr-xsvx/inc/svx/svxids.hrc3
-rw-r--r--svx/inc/svx/unobrushitemhelper.hxx56
-rw-r--r--svx/inc/svx/xflbmpit.hxx1
-rw-r--r--svx/inc/svx/xtable.hxx2
-rw-r--r--svx/source/accessibility/ChildrenManagerImpl.cxx4
-rw-r--r--svx/source/accessibility/ChildrenManagerImpl.hxx10
-rw-r--r--svx/source/accessibility/DGColorNameLookUp.cxx2
-rw-r--r--svx/source/accessibility/svxpixelctlaccessiblecontext.cxx2
-rw-r--r--svx/source/accessibility/svxrectctaccessiblecontext.cxx4
-rw-r--r--svx/source/dialog/dlgctrl.cxx2
-rw-r--r--svx/source/dialog/docrecovery.cxx8
-rw-r--r--svx/source/dialog/hdft.cxx476
-rw-r--r--svx/source/dialog/pagectrl.cxx461
-rw-r--r--svx/source/dialog/pfiledlg.cxx2
-rw-r--r--svx/source/engine3d/helperminimaldepth3d.cxx2
-rw-r--r--svx/source/fmcomp/fmgridcl.cxx8
-rw-r--r--svx/source/fmcomp/fmgridif.cxx4
-rw-r--r--svx/source/fmcomp/gridcell.cxx4
-rw-r--r--svx/source/fmcomp/gridctrl.cxx12
-rw-r--r--svx/source/form/dbtoolsclient.cxx2
-rw-r--r--svx/source/form/filtnav.cxx2
-rw-r--r--svx/source/form/fmPropBrw.cxx6
-rw-r--r--svx/source/form/fmobj.cxx2
-rw-r--r--svx/source/form/fmshimp.cxx12
-rw-r--r--svx/source/form/fmsrcimp.cxx2
-rw-r--r--svx/source/form/fmvwimp.cxx2
-rw-r--r--svx/source/form/formcontroller.cxx4
-rw-r--r--svx/source/form/formdispatchinterceptor.cxx2
-rw-r--r--svx/source/form/navigatortree.cxx2
-rw-r--r--svx/source/gallery2/galtheme.cxx2
-rw-r--r--svx/source/inc/docrecovery.hxx12
-rw-r--r--svx/source/inc/fmshimp.hxx2
-rw-r--r--svx/source/inc/fmtextcontrolshell.hxx2
-rwxr-xr-xsvx/source/sdr/attribute/sdrallfillattributeshelper.cxx275
-rw-r--r--svx/source/sdr/contact/displayinfo.cxx2
-rw-r--r--svx/source/sdr/contact/viewobjectcontactofpageobj.cxx2
-rw-r--r--svx/source/sdr/event/eventhandler.cxx2
-rw-r--r--svx/source/sdr/overlay/overlayobjectlist.cxx2
-rw-r--r--svx/source/sdr/primitive2d/sdrdecompositiontools.cxx6
-rw-r--r--svx/source/sdr/primitive2d/sdrole2primitive2d.cxx4
-rw-r--r--svx/source/sidebar/line/LineWidthControl.cxx24
-rw-r--r--svx/source/sidebar/line/LineWidthControl.hxx4
-rwxr-xr-xsvx/source/sidebar/paragraph/ParaPropertyPanel.hxx2
-rw-r--r--svx/source/sidebar/possize/PosSizePropertyPanel.cxx30
-rw-r--r--svx/source/sidebar/tools/ColorControl.cxx12
-rw-r--r--svx/source/svdraw/svdedtv2.cxx2
-rw-r--r--svx/source/svdraw/svdedxv.cxx2
-rw-r--r--svx/source/svdraw/svdfmtf.cxx37
-rw-r--r--svx/source/svdraw/svdfmtf.hxx5
-rw-r--r--svx/source/svdraw/svdhdl.cxx4
-rw-r--r--svx/source/svdraw/svdograf.cxx10
-rw-r--r--svx/source/svdraw/svdoole2.cxx4
-rw-r--r--svx/source/svdraw/svdpage.cxx2
-rw-r--r--svx/source/svdraw/svdstr.src2
-rw-r--r--svx/source/svdraw/svdundo.cxx57
-rw-r--r--svx/source/svdraw/svdxcgv.cxx4
-rw-r--r--svx/source/table/celltypes.hxx2
-rw-r--r--svx/source/table/tablelayouter.hxx2
-rw-r--r--svx/source/table/tableundo.cxx7
-rwxr-xr-xsvx/source/tbxctrls/SvxColorValueSet.cxx2
-rw-r--r--svx/source/tbxctrls/fillctrl.cxx989
-rw-r--r--svx/source/tbxctrls/tbxcolorupdate.cxx16
-rw-r--r--svx/source/unodialogs/textconversiondlgs/chinese_translationdialog.cxx6
-rw-r--r--svx/source/unodraw/unobrushitemhelper.cxx342
-rw-r--r--svx/source/unodraw/unopage.cxx2
-rw-r--r--svx/source/unodraw/unoshcol.cxx2
-rw-r--r--svx/source/xml/xmleohlp.cxx2
-rw-r--r--sw/Library_sw.mk2
-rw-r--r--sw/inc/IDocumentDrawModelAccess.hxx10
-rw-r--r--sw/inc/IDocumentMarkAccess.hxx5
-rw-r--r--sw/inc/IInterface.hxx4
-rw-r--r--sw/inc/SwNumberTree.hxx6
-rw-r--r--sw/inc/accmap.hxx2
-rw-r--r--sw/inc/cmdid.h20
-rw-r--r--sw/inc/doc.hxx24
-rw-r--r--sw/inc/docsh.hxx54
-rw-r--r--sw/inc/dpage.hxx4
-rw-r--r--sw/inc/drawdoc.hxx6
-rw-r--r--sw/inc/editsh.hxx6
-rw-r--r--sw/inc/fmtcol.hxx69
-rw-r--r--sw/inc/format.hxx27
-rw-r--r--sw/inc/frmatr.hxx2
-rw-r--r--sw/inc/frmfmt.hxx8
-rw-r--r--sw/inc/hintids.hxx9
-rw-r--r--sw/inc/hints.hxx26
-rw-r--r--sw/inc/ndgrf.hxx68
-rw-r--r--sw/inc/ndnotxt.hxx2
-rw-r--r--sw/inc/ndtxt.hxx14
-rw-r--r--sw/inc/node.hxx9
-rw-r--r--sw/inc/pagepreviewlayout.hxx2
-rw-r--r--sw/inc/swatrset.hxx6
-rw-r--r--sw/inc/swunohelper.hxx9
-rw-r--r--sw/inc/tox.hxx20
-rwxr-xr-xsw/inc/txtannotationfld.hxx3
-rw-r--r--sw/inc/txtfld.hxx22
-rw-r--r--sw/inc/unoframe.hxx5
-rw-r--r--sw/inc/unoprnms.hxx56
-rw-r--r--sw/inc/unostyle.hxx7
-rw-r--r--sw/inc/unotbl.hxx7
-rw-r--r--sw/inc/viewsh.hxx5
-rw-r--r--sw/sdi/_frmsh.sdi12
-rw-r--r--sw/source/core/access/acccell.cxx33
-rw-r--r--sw/source/core/access/acccell.hxx8
-rw-r--r--sw/source/core/access/accframebase.cxx2
-rw-r--r--sw/source/core/access/accframebase.hxx2
-rw-r--r--sw/source/core/access/accmap.cxx17
-rw-r--r--sw/source/core/access/accpage.cxx2
-rw-r--r--sw/source/core/access/accpage.hxx2
-rw-r--r--sw/source/core/access/accpara.cxx10
-rw-r--r--sw/source/core/access/accpara.hxx2
-rw-r--r--sw/source/core/attr/cellatr.cxx6
-rw-r--r--sw/source/core/attr/format.cxx63
-rw-r--r--sw/source/core/attr/hints.cxx16
-rw-r--r--sw/source/core/attr/swatrset.cxx1
-rw-r--r--sw/source/core/bastyp/init.cxx7
-rw-r--r--sw/source/core/bastyp/swrect.cxx2
-rw-r--r--sw/source/core/crsr/crsrsh.cxx2
-rw-r--r--sw/source/core/crsr/crstrvl.cxx2
-rw-r--r--sw/source/core/crsr/findtxt.cxx2
-rw-r--r--sw/source/core/crsr/trvltbl.cxx2
-rw-r--r--sw/source/core/crsr/viscrs.cxx16
-rw-r--r--sw/source/core/doc/doc.cxx65
-rw-r--r--sw/source/core/doc/docbm.cxx54
-rw-r--r--sw/source/core/doc/docdde.cxx12
-rw-r--r--sw/source/core/doc/docdesc.cxx77
-rw-r--r--sw/source/core/doc/docdraw.cxx52
-rw-r--r--sw/source/core/doc/docedt.cxx6
-rw-r--r--sw/source/core/doc/docfld.cxx2
-rw-r--r--sw/source/core/doc/docfly.cxx22
-rw-r--r--sw/source/core/doc/docfmt.cxx191
-rw-r--r--sw/source/core/doc/docglbl.cxx3
-rw-r--r--sw/source/core/doc/doclay.cxx10
-rw-r--r--sw/source/core/doc/docnew.cxx35
-rw-r--r--sw/source/core/doc/docnum.cxx8
-rw-r--r--sw/source/core/doc/docredln.cxx21
-rw-r--r--sw/source/core/doc/doctxm.cxx53
-rw-r--r--sw/source/core/doc/fmtcol.cxx55
-rw-r--r--sw/source/core/doc/notxtfrm.cxx62
-rw-r--r--sw/source/core/doc/poolfmt.cxx4
-rw-r--r--sw/source/core/doc/visiturl.cxx12
-rw-r--r--sw/source/core/docnode/ndnotxt.cxx1
-rw-r--r--sw/source/core/docnode/node.cxx8
-rw-r--r--sw/source/core/docnode/section.cxx2
-rw-r--r--sw/source/core/draw/dcontact.cxx6
-rw-r--r--sw/source/core/draw/dpage.cxx17
-rw-r--r--sw/source/core/draw/drawdoc.cxx46
-rw-r--r--sw/source/core/edit/edfcol.cxx2
-rw-r--r--sw/source/core/edit/edlingu.cxx2
-rw-r--r--sw/source/core/fields/authfld.cxx2
-rw-r--r--sw/source/core/frmedt/feshview.cxx5
-rw-r--r--sw/source/core/graphic/ndgrf.cxx725
-rw-r--r--sw/source/core/inc/MarkManager.hxx5
-rw-r--r--sw/source/core/inc/anchoredobjectposition.hxx4
-rw-r--r--sw/source/core/inc/frame.hxx19
-rw-r--r--sw/source/core/inc/frmtool.hxx2
-rw-r--r--sw/source/core/inc/pagefrm.hxx2
-rw-r--r--sw/source/core/inc/rolbck.hxx8
-rw-r--r--sw/source/core/inc/rootfrm.hxx4
-rw-r--r--sw/source/core/layout/anchoreddrawobject.cxx2
-rw-r--r--sw/source/core/layout/atrfrm.cxx58
-rw-r--r--sw/source/core/layout/findfrm.cxx13
-rw-r--r--sw/source/core/layout/fly.cxx44
-rw-r--r--sw/source/core/layout/flycnt.cxx2
-rw-r--r--sw/source/core/layout/flylay.cxx2
-rw-r--r--sw/source/core/layout/frmtool.cxx28
-rw-r--r--sw/source/core/layout/newfrm.cxx6
-rw-r--r--sw/source/core/layout/objectformatterlayfrm.hxx2
-rw-r--r--sw/source/core/layout/paintfrm.cxx230
-rw-r--r--sw/source/core/layout/tabfrm.cxx6
-rw-r--r--sw/source/core/layout/trvlfrm.cxx894
-rw-r--r--sw/source/core/layout/wsfrm.cxx4
-rw-r--r--sw/source/core/ole/ndole.cxx2
-rw-r--r--sw/source/core/table/swnewtable.cxx2
-rw-r--r--sw/source/core/text/atrstck.cxx2
-rw-r--r--sw/source/core/text/guess.cxx2
-rw-r--r--sw/source/core/text/inftxt.cxx8
-rw-r--r--sw/source/core/text/itratr.cxx2
-rw-r--r--sw/source/core/text/itrform2.cxx2
-rw-r--r--sw/source/core/text/itrform2.hxx2
-rw-r--r--sw/source/core/text/porfld.cxx4
-rw-r--r--sw/source/core/text/pormulti.cxx2
-rw-r--r--sw/source/core/text/txtdrop.cxx2
-rw-r--r--sw/source/core/text/txtfly.cxx2
-rw-r--r--sw/source/core/text/txtfrm.cxx6
-rw-r--r--sw/source/core/tox/tox.cxx84
-rw-r--r--sw/source/core/txtnode/atrfld.cxx142
-rw-r--r--sw/source/core/txtnode/fntcache.cxx6
-rw-r--r--sw/source/core/txtnode/ndtxt.cxx113
-rw-r--r--sw/source/core/txtnode/thints.cxx48
-rw-r--r--sw/source/core/txtnode/txtatr2.cxx18
-rw-r--r--sw/source/core/txtnode/txtedt.cxx17
-rw-r--r--sw/source/core/undo/docundo.cxx9
-rw-r--r--sw/source/core/undo/rolbck.cxx91
-rw-r--r--sw/source/core/undo/unattr.cxx11
-rw-r--r--sw/source/core/undo/unfmco.cxx13
-rw-r--r--sw/source/core/undo/untbl.cxx2
-rw-r--r--sw/source/core/unocore/XMLRangeHelper.cxx2
-rw-r--r--sw/source/core/unocore/swunohelper.cxx41
-rw-r--r--sw/source/core/unocore/unochart.cxx8
-rw-r--r--sw/source/core/unocore/unodraw.cxx6
-rw-r--r--sw/source/core/unocore/unofield.cxx191
-rw-r--r--sw/source/core/unocore/unoframe.cxx275
-rw-r--r--sw/source/core/unocore/unomap.cxx241
-rw-r--r--sw/source/core/unocore/unoparagraph.cxx281
-rw-r--r--sw/source/core/unocore/unoprnms.cxx107
-rw-r--r--sw/source/core/unocore/unosett.cxx21
-rw-r--r--sw/source/core/unocore/unostyle.cxx2100
-rw-r--r--sw/source/core/unocore/unotext.cxx2
-rw-r--r--sw/source/core/view/vdraw.cxx13
-rw-r--r--sw/source/core/view/viewimp.cxx7
-rw-r--r--sw/source/core/view/viewsh.cxx5
-rw-r--r--sw/source/core/view/vnew.cxx4
-rw-r--r--sw/source/core/view/vprint.cxx9
-rw-r--r--sw/source/filter/ascii/parasc.cxx2
-rw-r--r--sw/source/filter/basflt/fltini.cxx2
-rw-r--r--sw/source/filter/html/htmlatr.cxx2
-rw-r--r--sw/source/filter/html/htmldraw.cxx3
-rw-r--r--sw/source/filter/html/htmlgrin.cxx2
-rw-r--r--sw/source/filter/html/wrthtml.cxx6
-rw-r--r--sw/source/filter/inc/msfilter.hxx8
-rw-r--r--sw/source/filter/inc/wwstyles.hxx4
-rw-r--r--sw/source/filter/rtf/rtffly.cxx17
-rw-r--r--sw/source/filter/rtf/swparrtf.cxx22
-rw-r--r--sw/source/filter/ww8/docxattributeoutput.cxx6
-rw-r--r--sw/source/filter/ww8/dump/msvbasic.cxx2
-rw-r--r--sw/source/filter/ww8/dump/ww8scan.cxx12
-rw-r--r--sw/source/filter/ww8/dump/ww8scan.hxx8
-rw-r--r--sw/source/filter/ww8/dump/ww8struc.hxx2
-rw-r--r--sw/source/filter/ww8/needed_cast.hxx2
-rw-r--r--sw/source/filter/ww8/rtfattributeoutput.cxx22
-rw-r--r--sw/source/filter/ww8/rtfsdrexport.cxx2
-rw-r--r--sw/source/filter/ww8/staticassert.hxx2
-rw-r--r--sw/source/filter/ww8/writerhelper.hxx4
-rw-r--r--sw/source/filter/ww8/writerwordglue.cxx6
-rw-r--r--sw/source/filter/ww8/wrtw8esh.cxx25
-rw-r--r--sw/source/filter/ww8/wrtw8nds.cxx11
-rw-r--r--sw/source/filter/ww8/wrtw8sty.cxx4
-rw-r--r--sw/source/filter/ww8/wrtww8.cxx22
-rw-r--r--sw/source/filter/ww8/wrtww8.hxx2
-rw-r--r--sw/source/filter/ww8/wrtww8gr.cxx17
-rw-r--r--sw/source/filter/ww8/ww8atr.cxx6
-rw-r--r--sw/source/filter/ww8/ww8graf.cxx15
-rw-r--r--sw/source/filter/ww8/ww8graf.hxx4
-rw-r--r--sw/source/filter/ww8/ww8graf2.cxx2
-rw-r--r--sw/source/filter/ww8/ww8par.cxx267
-rw-r--r--sw/source/filter/ww8/ww8par.hxx43
-rw-r--r--sw/source/filter/ww8/ww8par2.cxx53
-rw-r--r--sw/source/filter/ww8/ww8par2.hxx66
-rw-r--r--sw/source/filter/ww8/ww8par3.cxx136
-rw-r--r--sw/source/filter/ww8/ww8par4.cxx8
-rw-r--r--sw/source/filter/ww8/ww8par5.cxx146
-rw-r--r--sw/source/filter/ww8/ww8par6.cxx94
-rw-r--r--sw/source/filter/ww8/ww8scan.cxx12
-rw-r--r--sw/source/filter/ww8/ww8scan.hxx12
-rw-r--r--sw/source/filter/ww8/ww8struc.hxx15
-rw-r--r--sw/source/filter/xml/swxml.cxx35
-rw-r--r--sw/source/filter/xml/xmlexp.cxx15
-rw-r--r--sw/source/filter/xml/xmlimp.cxx12
-rw-r--r--sw/source/filter/xml/xmlitmap.hxx4
-rw-r--r--sw/source/filter/xml/xmltbli.cxx2
-rw-r--r--sw/source/filter/xml/xmltexte.cxx32
-rw-r--r--sw/source/ui/app/docsh.cxx387
-rw-r--r--sw/source/ui/app/docsh2.cxx138
-rw-r--r--sw/source/ui/app/docshdrw.cxx86
-rw-r--r--sw/source/ui/app/docshini.cxx196
-rw-r--r--sw/source/ui/app/docst.cxx151
-rw-r--r--sw/source/ui/app/docstyle.cxx69
-rw-r--r--sw/source/ui/chrdlg/paradlg.src24
-rw-r--r--sw/source/ui/chrdlg/pardlg.cxx178
-rw-r--r--sw/source/ui/dbui/dbinsdlg.cxx2
-rw-r--r--sw/source/ui/dbui/maildispatcher.cxx4
-rw-r--r--sw/source/ui/dbui/swdbtoolsclient.cxx2
-rw-r--r--sw/source/ui/dialog/SwSpellDialogChildWindow.cxx3
-rw-r--r--sw/source/ui/dochdl/swdtflvr.cxx2
-rw-r--r--sw/source/ui/docvw/PostItMgr.cxx12
-rw-r--r--sw/source/ui/docvw/SidebarWin.cxx5
-rw-r--r--sw/source/ui/docvw/edtwin.cxx2
-rw-r--r--sw/source/ui/envelp/labimg.cxx6
-rw-r--r--sw/source/ui/fmtui/tmpdlg.cxx337
-rw-r--r--sw/source/ui/fmtui/tmpdlg.src45
-rw-r--r--sw/source/ui/frmdlg/colex.cxx85
-rw-r--r--sw/source/ui/frmdlg/frmmgr.cxx1
-rw-r--r--sw/source/ui/frmdlg/frmpage.src40
-rw-r--r--sw/source/ui/inc/tablemgr.hxx2
-rw-r--r--sw/source/ui/inc/uitool.hxx2
-rw-r--r--sw/source/ui/lingu/olmenu.cxx2
-rw-r--r--sw/source/ui/lingu/sdrhhcwrap.cxx8
-rw-r--r--sw/source/ui/misc/glossary.cxx5
-rw-r--r--sw/source/ui/shells/basesh.cxx241
-rw-r--r--sw/source/ui/shells/drwbassh.cxx8
-rw-r--r--sw/source/ui/shells/drwtxtex.cxx2
-rw-r--r--sw/source/ui/shells/frmsh.cxx10
-rw-r--r--sw/source/ui/shells/grfsh.cxx65
-rw-r--r--sw/source/ui/shells/grfshex.cxx8
-rw-r--r--sw/source/ui/shells/textsh1.cxx74
-rw-r--r--sw/source/ui/sidebar/WrapPropertyPanel.hxx2
-rw-r--r--sw/source/ui/uiview/pview.cxx2
-rw-r--r--sw/source/ui/uiview/view.cxx7
-rw-r--r--sw/source/ui/uiview/view2.cxx2
-rw-r--r--sw/source/ui/uiview/viewport.cxx4
-rw-r--r--sw/source/ui/uiview/viewstat.cxx17
-rw-r--r--sw/source/ui/uno/unodefaults.cxx4
-rw-r--r--sw/source/ui/uno/unodispatch.cxx2
-rw-r--r--sw/source/ui/uno/unomailmerge.cxx6
-rw-r--r--sw/source/ui/uno/unotxdoc.cxx54
-rw-r--r--sw/source/ui/utlui/content.cxx24
-rw-r--r--sw/source/ui/utlui/navipi.cxx1
-rw-r--r--sw/source/ui/utlui/uitool.cxx38
-rw-r--r--sw/source/ui/wrtsh/select.cxx2
-rw-r--r--sw/source/ui/wrtsh/wrtsh2.cxx5
-rw-r--r--swext/mediawiki/build.xml2
-rw-r--r--swext/mediawiki/makefile.mk6
-rw-r--r--swext/mediawiki/src/registry/schema/org/openoffice/Office/Custom/WikiExtension.xcs6
-rw-r--r--sysui/desktop/debian/control3
-rw-r--r--sysui/desktop/debian/makefile.mk22
-rw-r--r--sysui/desktop/productversion.mk4
-rw-r--r--sysui/desktop/share/brand.pl6
-rw-r--r--sysui/desktop/slackware/makefile.mk22
-rw-r--r--testgraphical/source/CallExternals.pm2
-rw-r--r--testgraphical/source/fill_documents_loop.pl2
-rw-r--r--testgraphical/ui/java/ConvwatchGUIProject/src/IniFile.java2
-rw-r--r--testtools/source/bridgetest/bridgetest.cxx2
-rw-r--r--testtools/source/bridgetest/cli/cli_cpp_bridgetest.cxx2
-rw-r--r--testtools/source/bridgetest/cli/cli_cs_bridgetest.cs2
-rw-r--r--testtools/source/bridgetest/cli/cli_vb_bridgetest.vb2
-rw-r--r--toolkit/doc/layout/notes.txt4
-rw-r--r--toolkit/doc/layout/oldnotes.txt2
-rw-r--r--toolkit/inc/toolkit/controls/geometrycontrolmodel.hxx2
-rwxr-xr-xtoolkit/qa/complex/toolkit/accessibility/_XAccessibleComponent.java6
-rw-r--r--toolkit/source/awt/vclxgraphics.cxx2
-rw-r--r--toolkit/source/awt/vclxtabcontrol.cxx2
-rw-r--r--toolkit/source/awt/vclxtoolkit.cxx4
-rw-r--r--toolkit/source/awt/vclxwindow.cxx2
-rw-r--r--toolkit/source/awt/vclxwindow1.cxx2
-rw-r--r--toolkit/source/awt/vclxwindows.cxx6
-rw-r--r--toolkit/source/controls/dialogcontrol.cxx2
-rw-r--r--toolkit/source/controls/unocontrol.cxx4
-rw-r--r--toolkit/source/controls/unocontrolmodel.cxx2
-rw-r--r--toolkit/src2xml/source/srcparser.py2
-rw-r--r--toolkit/test/accessibility/AccTreeNode.java2
-rw-r--r--toolkit/test/accessibility/AccessibilityTreeModel.java2
-rw-r--r--toolkit/test/accessibility/Canvas.java2
-rw-r--r--toolkit/test/accessibility/EventQueue.java2
-rw-r--r--toolkit/test/accessibility/OfficeConnection.java2
-rw-r--r--toolkit/test/accessibility/QueuedTopWindowListener.java2
-rw-r--r--toolkit/workben/layout/editor.cxx2
-rw-r--r--tools/inc/tools/simplerm.hxx2
-rw-r--r--tools/inc/tools/solar.h2
-rw-r--r--tools/inc/tools/wintypes.hxx2
-rw-r--r--tools/source/communi/geninfo.cxx4
-rw-r--r--tools/source/fsys/dirent.cxx2
-rw-r--r--tools/source/fsys/filecopy.cxx2
-rw-r--r--tools/source/fsys/os2.cxx8
-rw-r--r--tools/source/fsys/urlobj.cxx2
-rw-r--r--tools/source/generic/poly.cxx13
-rw-r--r--tools/source/generic/poly2.cxx2
-rw-r--r--tools/source/inet/inetmime.cxx2
-rw-r--r--tools/source/rc/resmgr.cxx6
-rw-r--r--tools/test/tests.cxx1
-rw-r--r--ucb/qa/complex/tdoc/_XChild.java2
-rw-r--r--ucb/qa/complex/tdoc/_XServiceInfo.java4
-rw-r--r--ucb/qa/complex/tdoc/_XTypeProvider.java2
-rw-r--r--ucb/source/core/ucbcmds.cxx2
-rw-r--r--ucb/source/ucp/file/filglob.cxx10
-rw-r--r--ucb/source/ucp/file/shell.cxx2
-rw-r--r--ucb/source/ucp/ftp/ftpurl.hxx2
-rw-r--r--ucb/source/ucp/gio/gio_content.cxx2
-rw-r--r--ucb/source/ucp/odma/odma_content.cxx2
-rw-r--r--ucb/source/ucp/tdoc/tdoc_content.cxx2
-rw-r--r--ucb/source/ucp/tdoc/ucptdoc.xml2
-rw-r--r--ucb/source/ucp/webdav/makefile.mk2
-rw-r--r--ucb/source/ucp/webdav/webdavcontent.cxx19
-rw-r--r--ucbhelper/inc/ucbhelper/content.hxx18
-rw-r--r--ucbhelper/inc/ucbhelper/interactionrequest.hxx18
-rw-r--r--ucbhelper/inc/ucbhelper/interceptedinteraction.hxx22
-rw-r--r--ucbhelper/inc/ucbhelper/resultset.hxx6
-rw-r--r--ucbhelper/inc/ucbhelper/resultsethelper.hxx2
-rw-r--r--ucbhelper/inc/ucbhelper/simplecertificatevalidationrequest.hxx4
-rw-r--r--ucbhelper/inc/ucbhelper/simpleinteractionrequest.hxx4
-rw-r--r--ucbhelper/source/client/content.cxx4
-rw-r--r--ucbhelper/source/client/interceptedinteraction.cxx2
-rw-r--r--udkapi/com/sun/star/beans/XHierarchicalPropertySet.idl2
-rw-r--r--udkapi/com/sun/star/beans/XMultiPropertySet.idl2
-rw-r--r--udkapi/com/sun/star/beans/XPropertiesChangeListener.idl2
-rw-r--r--udkapi/com/sun/star/beans/XTolerantMultiPropertySet.idl2
-rw-r--r--udkapi/com/sun/star/connection/XAcceptor.idl2
-rw-r--r--udkapi/com/sun/star/connection/XConnector.idl2
-rw-r--r--udkapi/com/sun/star/container/XContainerQuery.idl6
-rw-r--r--udkapi/com/sun/star/io/ObjectOutputStream.idl4
-rw-r--r--udkapi/com/sun/star/io/XMarkableStream.idl2
-rw-r--r--udkapi/com/sun/star/io/XTextInputStream.idl2
-rw-r--r--udkapi/com/sun/star/io/XTextOutputStream.idl2
-rw-r--r--udkapi/com/sun/star/lang/XUnoTunnel.idl2
-rw-r--r--udkapi/com/sun/star/reflection/CoreReflection.idl2
-rw-r--r--udkapi/com/sun/star/reflection/TypeDescriptionManager.idl2
-rw-r--r--udkapi/com/sun/star/reflection/XTypeDescriptionEnumerationAccess.idl4
-rw-r--r--udkapi/com/sun/star/registry/DefaultRegistry.idl2
-rw-r--r--udkapi/com/sun/star/script/ContextInformation.idl4
-rw-r--r--udkapi/com/sun/star/script/Converter.idl2
-rw-r--r--udkapi/com/sun/star/script/XInvocation2.idl6
-rw-r--r--udkapi/com/sun/star/script/XLibraryAccess.idl2
-rw-r--r--udkapi/com/sun/star/script/XStarBasicLibraryInfo.idl2
-rw-r--r--udkapi/com/sun/star/test/XSimpleTest.idl2
-rw-r--r--udkapi/com/sun/star/uri/UriReferenceFactory.idl2
-rw-r--r--udkapi/com/sun/star/uri/XUriReferenceFactory.idl2
-rw-r--r--unodevtools/source/skeletonmaker/skeletoncommon.cxx4
-rw-r--r--unodevtools/source/skeletonmaker/skeletoncommon.hxx2
-rw-r--r--unotools/inc/unotools/accessiblestatesethelper.hxx2
-rw-r--r--unotools/inc/unotools/cacheoptions.hxx2
-rw-r--r--unotools/inc/unotools/cmdoptions.hxx4
-rw-r--r--unotools/inc/unotools/compatibility.hxx4
-rw-r--r--unotools/inc/unotools/confignode.hxx4
-rw-r--r--unotools/inc/unotools/configpathes.hxx6
-rw-r--r--unotools/inc/unotools/dynamicmenuoptions.hxx4
-rw-r--r--unotools/inc/unotools/extendedsecurityoptions.hxx2
-rw-r--r--unotools/inc/unotools/fontcvt.hxx8
-rw-r--r--unotools/inc/unotools/fontoptions.hxx2
-rw-r--r--unotools/inc/unotools/historyoptions.hxx10
-rw-r--r--unotools/inc/unotools/idhelper.hxx2
-rw-r--r--unotools/inc/unotools/internaloptions.hxx2
-rw-r--r--unotools/inc/unotools/localisationoptions.hxx2
-rw-r--r--unotools/inc/unotools/moduleoptions.hxx6
-rw-r--r--unotools/inc/unotools/printwarningoptions.hxx2
-rw-r--r--unotools/inc/unotools/securityoptions.hxx2
-rw-r--r--unotools/inc/unotools/sharedunocomponent.hxx2
-rw-r--r--unotools/inc/unotools/startoptions.hxx2
-rw-r--r--unotools/inc/unotools/tempfile.hxx2
-rw-r--r--unotools/inc/unotools/viewoptions.hxx6
-rw-r--r--unotools/inc/unotools/workingsetoptions.hxx2
-rw-r--r--unotools/source/accessibility/accessiblestatesethelper.cxx2
-rw-r--r--unotools/source/config/cmdoptions.cxx4
-rw-r--r--unotools/source/config/compatibility.cxx2
-rw-r--r--unotools/source/config/configitem.cxx4
-rw-r--r--unotools/source/config/configmgr.cxx2
-rw-r--r--unotools/source/config/dynamicmenuoptions.cxx10
-rw-r--r--unotools/source/config/eventcfg.cxx2
-rw-r--r--unotools/source/config/fontcfg.cxx4
-rw-r--r--unotools/source/config/itemholder1.hxx2
-rw-r--r--unotools/source/config/lingucfg.cxx2
-rw-r--r--unotools/source/config/moduleoptions.cxx16
-rw-r--r--unotools/source/config/pathoptions.cxx4
-rw-r--r--unotools/source/config/viewoptions.cxx16
-rw-r--r--unotools/source/misc/sharedunocomponent.cxx2
-rw-r--r--unoxml/source/dom/element.cxx2
-rw-r--r--unoxml/source/rdf/librdf_repository.cxx4
-rw-r--r--uui/source/fltdlg.cxx14
-rw-r--r--uui/source/iahndl-filter.cxx2
-rw-r--r--vbahelper/inc/vbahelper/collectionbase.hxx2
-rw-r--r--vbahelper/inc/vbahelper/vbaeventshelperbase.hxx2
-rw-r--r--vbahelper/source/msforms/vbacontrol.cxx2
-rw-r--r--vbahelper/source/vbahelper/collectionbase.cxx4
-rw-r--r--vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm5
-rw-r--r--vcl/aqua/source/a11y/aqua11ytextwrapper.mm6
-rw-r--r--vcl/aqua/source/a11y/documentfocuslistener.cxx51
-rw-r--r--vcl/aqua/source/app/salinst.cxx15
-rw-r--r--vcl/aqua/source/gdi/atsfonts.cxx2
-rw-r--r--vcl/aqua/source/gdi/ctfonts.cxx27
-rw-r--r--vcl/aqua/source/gdi/ctfonts.hxx2
-rw-r--r--vcl/aqua/source/gdi/ctlayout.cxx86
-rw-r--r--vcl/aqua/source/gdi/salgdiutils.cxx7
-rw-r--r--vcl/aqua/source/gdi/salnativewidgets.cxx2
-rw-r--r--vcl/aqua/source/gdi/salprn.cxx2
-rw-r--r--vcl/aqua/source/window/salframeview.mm104
-rw-r--r--vcl/inc/aqua/saldata.hxx2
-rw-r--r--vcl/inc/aqua/salgdi.h2
-rw-r--r--vcl/inc/aqua/salmathutils.hxx4
-rw-r--r--vcl/inc/graphite_cache.hxx2
-rw-r--r--vcl/inc/jobset.h2
-rw-r--r--vcl/inc/os2/salgdi.h4
-rw-r--r--vcl/inc/printerjob.hxx2
-rw-r--r--vcl/inc/salgdi.hxx2
-rw-r--r--vcl/inc/salwtype.hxx4
-rw-r--r--vcl/inc/unx/XIM.h2
-rw-r--r--vcl/inc/unx/wmadaptor.hxx2
-rw-r--r--vcl/inc/vcl/lazydelete.hxx6
-rw-r--r--vcl/inc/vcl/pdfwriter.hxx10
-rw-r--r--vcl/inc/vcl/ppdparser.hxx2
-rw-r--r--vcl/inc/vcl/print.hxx4
-rw-r--r--vcl/inc/vcl/printerinfomanager.hxx2
-rw-r--r--vcl/inc/vcl/salnativewidgets.hxx2
-rw-r--r--vcl/inc/vcl/strhelper.hxx2
-rw-r--r--vcl/inc/vcl/window.hxx2
-rw-r--r--vcl/inc/win/salgdi.h4
-rw-r--r--vcl/os2/source/app/salinst.cxx2
-rw-r--r--vcl/os2/source/app/saltimer.cxx2
-rw-r--r--vcl/os2/source/gdi/salgdi2.cxx2
-rw-r--r--vcl/qa/complex/memCheck/CheckMemoryUsage.java2
-rw-r--r--vcl/source/app/dbggui.cxx30
-rw-r--r--vcl/source/app/salvtables.cxx2
-rw-r--r--vcl/source/app/svapp.cxx7
-rw-r--r--vcl/source/app/svdata.cxx24
-rw-r--r--vcl/source/app/svmain.cxx2
-rw-r--r--vcl/source/control/button.cxx2
-rw-r--r--vcl/source/control/ilstbox.cxx6
-rw-r--r--vcl/source/control/scrbar.cxx52
-rw-r--r--vcl/source/fontsubset/sft.cxx2
-rw-r--r--vcl/source/gdi/bitmapex.cxx2
-rw-r--r--vcl/source/gdi/cvtsvm.cxx4
-rwxr-xr-xvcl/source/gdi/dibtools.cxx40
-rw-r--r--vcl/source/gdi/gdimtf.cxx2
-rw-r--r--vcl/source/gdi/outdev2.cxx15
-rw-r--r--vcl/source/gdi/outdev3.cxx8
-rw-r--r--vcl/source/gdi/outdev4.cxx6
-rw-r--r--vcl/source/gdi/outdev6.cxx4
-rw-r--r--vcl/source/gdi/pdfwriter_impl.cxx6
-rw-r--r--vcl/source/gdi/pdfwriter_impl.hxx2
-rw-r--r--vcl/source/gdi/pdfwriter_impl2.cxx10
-rw-r--r--vcl/source/gdi/pngread.cxx2
-rw-r--r--vcl/source/gdi/print.cxx4
-rw-r--r--vcl/source/gdi/print2.cxx8
-rw-r--r--vcl/source/gdi/print3.cxx2
-rw-r--r--vcl/source/gdi/regband.cxx6
-rw-r--r--vcl/source/gdi/region.cxx26
-rwxr-xr-xvcl/source/gdi/regionband.cxx12
-rw-r--r--vcl/source/gdi/textlayout.cxx2
-rw-r--r--vcl/source/glyphs/gcach_layout.cxx2
-rw-r--r--vcl/source/glyphs/glyphcache.cxx2
-rw-r--r--vcl/source/glyphs/graphite_layout.cxx8
-rw-r--r--vcl/source/window/menu.cxx4
-rw-r--r--vcl/source/window/printdlg.cxx2
-rw-r--r--vcl/source/window/split.cxx6
-rw-r--r--vcl/source/window/tabdlg.cxx2
-rw-r--r--vcl/source/window/window.cxx8
-rw-r--r--vcl/source/window/winproc.cxx4
-rw-r--r--vcl/test/dndtest.cxx2
-rw-r--r--vcl/unx/generic/app/i18n_ic.cxx2
-rw-r--r--vcl/unx/generic/app/saldata.cxx2
-rw-r--r--vcl/unx/generic/app/saldisp.cxx6
-rw-r--r--vcl/unx/generic/app/wmadaptor.cxx2
-rw-r--r--vcl/unx/generic/dtrans/X11_selection.cxx4
-rw-r--r--vcl/unx/generic/dtrans/X11_selection.hxx2
-rw-r--r--vcl/unx/generic/fontmanager/parseAFM.cxx2
-rw-r--r--vcl/unx/generic/fontmanager/parseAFM.hxx4
-rw-r--r--vcl/unx/generic/printer/ppdparser.cxx2
-rw-r--r--vcl/unx/generic/window/FWS.cxx2
-rw-r--r--vcl/unx/generic/window/FWS.hxx2
-rw-r--r--vcl/unx/generic/window/salframe.cxx4
-rw-r--r--vcl/unx/gtk/a11y/atkutil.cxx42
-rw-r--r--vcl/unx/gtk/a11y/atkwindow.cxx2
-rw-r--r--vcl/unx/gtk/a11y/atkwrapper.cxx4
-rw-r--r--vcl/unx/gtk/app/gtkdata.cxx2
-rw-r--r--vcl/unx/gtk/gdi/salnativewidgets-gtk.cxx11
-rw-r--r--vcl/unx/gtk/window/gtkframe.cxx2
-rw-r--r--vcl/unx/kde/salnativewidgets-kde.cxx2
-rw-r--r--vcl/win/source/app/salinst.cxx2
-rw-r--r--vcl/win/source/app/saltimer.cxx2
-rw-r--r--vcl/win/source/gdi/salbmp.cxx94
-rw-r--r--vcl/win/source/gdi/salgdi.cxx10
-rw-r--r--vcl/win/source/gdi/salgdi2.cxx4
-rw-r--r--vcl/win/source/gdi/salgdi3.cxx6
-rw-r--r--vcl/win/source/gdi/winlayout.cxx17
-rw-r--r--vcl/win/source/window/salframe.cxx12
-rw-r--r--vos/inc/vos/pipe.hxx8
-rw-r--r--vos/inc/vos/process.hxx14
-rw-r--r--vos/inc/vos/signal.hxx2
-rw-r--r--vos/inc/vos/socket.hxx22
-rw-r--r--vos/inc/vos/thread.hxx4
-rw-r--r--vos/source/pipe.cxx8
-rw-r--r--vos/source/socket.cxx8
-rw-r--r--winaccessibility/source/UAccCOM/EnumVariant.cpp2
-rw-r--r--winaccessibility/source/UAccCOM/MAccessible.cpp10
-rw-r--r--winaccessibility/source/UAccCOM/MAccessible.h4
-rw-r--r--winaccessibility/source/service/AccObject.cxx4
-rw-r--r--winaccessibility/source/service/AccObjectManagerAgent.cxx2
-rw-r--r--wizards/com/sun/star/wizards/agenda/AgendaTemplate.java6
-rw-r--r--wizards/com/sun/star/wizards/agenda/AgendaWizardDialogImpl.java8
-rw-r--r--wizards/com/sun/star/wizards/agenda/TopicsControl.java4
-rw-r--r--wizards/com/sun/star/wizards/common/ConfigNode.java2
-rw-r--r--wizards/com/sun/star/wizards/common/Helper.java2
-rw-r--r--wizards/com/sun/star/wizards/common/NumericalHelper.java4
-rw-r--r--wizards/com/sun/star/wizards/common/SystemDialog.java2
-rw-r--r--wizards/com/sun/star/wizards/reportbuilder/layout/ReportBuilderLayouter.java2
-rw-r--r--wizards/com/sun/star/wizards/ui/DocumentPreview.java2
-rw-r--r--wizards/com/sun/star/wizards/ui/UnoDialog2.java2
-rw-r--r--wizards/com/sun/star/wizards/ui/event/DataAware.java6
-rw-r--r--wizards/com/sun/star/wizards/web/FTPDialog.java2
-rw-r--r--wizards/com/sun/star/wizards/web/ImageListDialog.java2
-rw-r--r--wizards/com/sun/star/wizards/web/Process.java4
-rw-r--r--wizards/com/sun/star/wizards/web/ProcessStatusRenderer.java2
-rw-r--r--wizards/com/sun/star/wizards/web/TOCPreview.java4
-rw-r--r--wizards/com/sun/star/wizards/web/WWD_Startup.java8
-rw-r--r--wizards/com/sun/star/wizards/web/data/TypeDetection.java4
-rw-r--r--wizards/com/sun/star/wizards/web/export/ImpressHTMLExporter.java2
-rw-r--r--wizards/source/formwizard/tools.xba2
-rw-r--r--writerfilter/inc/doctok/WW8Document.hxx2
-rw-r--r--writerfilter/inc/resourcemodel/TableManager.hxx2
-rw-r--r--writerfilter/inc/resourcemodel/WW8ResourceModel.hxx2
-rw-r--r--writerfilter/source/dmapper/CellColorHandler.cxx20
-rw-r--r--writerfilter/source/dmapper/CellColorHandler.hxx5
-rw-r--r--writerfilter/source/dmapper/DomainMapper.cxx19
-rw-r--r--writerfilter/source/dmapper/DomainMapper_Impl.cxx10
-rw-r--r--writerfilter/source/dmapper/DomainMapper_Impl.hxx6
-rw-r--r--writerfilter/source/dmapper/NumberingManager.cxx2
-rw-r--r--writerfilter/source/dmapper/PropertyMap.cxx2
-rw-r--r--writerfilter/source/dmapper/StyleSheetTable.cxx2
-rw-r--r--writerfilter/source/doctok/WW8StructBase.hxx6
-rw-r--r--writerfilter/source/doctok/resources.xmi4
-rw-r--r--writerfilter/source/ooxml/README.efforts2
-rw-r--r--xmerge/source/activesync/XMergeFilter.cpp2
-rw-r--r--xmerge/source/minicalc/java/org/openoffice/xmerge/converter/xml/sxc/minicalc/SxcDocumentDeserializerImpl.java2
-rw-r--r--xmerge/source/palmtests/qa/comparator/pdbcomparison.java2
-rw-r--r--xmerge/source/palmtests/qa/test_spec/convertor_test_spec.html12
-rw-r--r--xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/DefinedName.java6
-rw-r--r--xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/Workbook.java4
-rw-r--r--xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/Worksheet.java2
-rw-r--r--xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/formula/SymbolLookup.java2
-rw-r--r--xmerge/source/pocketword/java/org/openoffice/xmerge/converter/xml/sxw/pocketword/DocumentDescriptor.java2
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/converter/xml/xslt/DocumentDeserializerImpl.java2
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/converter/xml/xslt/DocumentSerializerImpl.java4
-rw-r--r--xmerge/source/xmerge/java/org/openoffice/xmerge/util/ColourConverter.java4
-rw-r--r--xmerge/workben/jstyle.pl2
-rw-r--r--xmlhelp/source/cxxhelp/provider/databases.hxx2
-rw-r--r--xmlhelp/source/cxxhelp/provider/provider.cxx4
-rw-r--r--xmlhelp/source/treeview/tvread.cxx4
-rw-r--r--xmloff/inc/PageMasterImportContext.hxx7
-rw-r--r--xmloff/inc/txtflde.hxx2
-rw-r--r--xmloff/inc/txtfldi.hxx6
-rw-r--r--xmloff/inc/xmloff/PageMasterStyleMap.hxx27
-rw-r--r--xmloff/inc/xmloff/XMLEventsImportContext.hxx2
-rw-r--r--xmloff/inc/xmloff/XMLShapeStyleContext.hxx3
-rw-r--r--xmloff/inc/xmloff/maptype.hxx2
-rw-r--r--xmloff/inc/xmloff/prstylei.hxx41
-rw-r--r--xmloff/inc/xmloff/shapeexport.hxx2
-rw-r--r--xmloff/inc/xmloff/txtparae.hxx2
-rw-r--r--xmloff/inc/xmloff/txtprmap.hxx8
-rw-r--r--xmloff/inc/xmloff/uniref.hxx8
-rw-r--r--xmloff/inc/xmloff/xmlexp.hxx2
-rw-r--r--xmloff/inc/xmloff/xmlimp.hxx2
-rw-r--r--xmloff/inc/xmloff/xmlmultiimagehelper.hxx2
-rw-r--r--xmloff/inc/xmloff/xmlprmap.hxx2
-rw-r--r--xmloff/inc/xmloff/xmltypes.hxx4
-rw-r--r--xmloff/inc/xmloff/xmluconv.hxx2
-rwxr-xr-xxmloff/inc/xmlsdtypes.hxx208
-rw-r--r--xmloff/source/chart/MultiPropertySetHandler.hxx2
-rw-r--r--xmloff/source/chart/PropertyMap.hxx2
-rw-r--r--xmloff/source/chart/SchXMLExport.cxx4
-rw-r--r--xmloff/source/core/xmlerror.cxx6
-rw-r--r--xmloff/source/core/xmlexp.cxx2
-rw-r--r--xmloff/source/core/xmlimp.cxx2
-rw-r--r--xmloff/source/draw/XMLShapeStyleContext.cxx19
-rw-r--r--xmloff/source/draw/eventimp.cxx2
-rw-r--r--xmloff/source/draw/sdpropls.cxx9
-rw-r--r--xmloff/source/draw/sdpropls.hxx173
-rw-r--r--xmloff/source/draw/sdxmlexp.cxx2
-rw-r--r--xmloff/source/draw/shapeexport2.cxx77
-rw-r--r--xmloff/source/draw/shapeexport3.cxx2
-rw-r--r--xmloff/source/draw/ximpcustomshape.cxx2
-rw-r--r--xmloff/source/forms/elementimport.cxx2
-rw-r--r--xmloff/source/forms/eventimport.hxx2
-rw-r--r--xmloff/source/forms/formcellbinding.hxx2
-rw-r--r--xmloff/source/forms/layerexport.cxx2
-rw-r--r--xmloff/source/forms/layerexport.hxx2
-rw-r--r--xmloff/source/forms/propertyexport.cxx2
-rw-r--r--xmloff/source/forms/propertyexport.hxx10
-rw-r--r--xmloff/source/meta/xmlversion.cxx2
-rw-r--r--xmloff/source/style/PageMasterExportPropMapper.cxx120
-rw-r--r--xmloff/source/style/PageMasterImportContext.cxx165
-rw-r--r--xmloff/source/style/PageMasterPropHdlFactory.cxx49
-rw-r--r--xmloff/source/style/PageMasterStyleMap.cxx336
-rw-r--r--xmloff/source/style/impastp4.cxx2
-rw-r--r--xmloff/source/style/prstylei.cxx287
-rw-r--r--xmloff/source/style/styleexp.cxx2
-rw-r--r--xmloff/source/style/xmlaustp.cxx4
-rw-r--r--xmloff/source/style/xmlexppr.cxx2
-rw-r--r--xmloff/source/style/xmlimppr.cxx2
-rw-r--r--xmloff/source/style/xmlnumfe.cxx2
-rw-r--r--xmloff/source/style/xmlnumfi.cxx2
-rw-r--r--xmloff/source/style/xmlprmap.cxx2
-rw-r--r--xmloff/source/table/XMLTableExport.cxx4
-rw-r--r--xmloff/source/text/XMLChangedRegionImportContext.hxx2
-rw-r--r--xmloff/source/text/XMLSectionExport.cxx2
-rw-r--r--xmloff/source/text/XMLSectionImportContext.cxx2
-rw-r--r--xmloff/source/text/XMLSectionImportContext.hxx2
-rw-r--r--xmloff/source/text/XMLTextFrameContext.cxx2
-rw-r--r--xmloff/source/text/txtexppr.cxx28
-rw-r--r--xmloff/source/text/txtflde.cxx14
-rw-r--r--xmloff/source/text/txtfldi.cxx24
-rw-r--r--xmloff/source/text/txtimp.cxx2
-rw-r--r--xmloff/source/text/txtimppr.cxx41
-rw-r--r--xmloff/source/text/txtparae.cxx4
-rw-r--r--xmloff/source/text/txtparai.cxx6
-rw-r--r--xmloff/source/text/txtprhdl.cxx82
-rw-r--r--xmloff/source/text/txtprmap.cxx53
-rw-r--r--xmloff/source/text/txtstyli.cxx230
-rw-r--r--xmloff/source/text/txtvfldi.cxx6
-rw-r--r--xmloff/source/transform/OOo2Oasis.cxx2
-rw-r--r--xmloff/source/transform/Oasis2OOo.cxx2
-rw-r--r--xmloff/source/transform/TransformerBase.cxx2
-rw-r--r--xmloff/source/transform/TransformerBase.hxx2
-rw-r--r--xmlscript/source/xmldlg_imexp/xmldlg_impmodels.cxx2
3223 files changed, 62518 insertions, 26446 deletions
diff --git a/LICENSE b/LICENSE
index 8773de7d6e4f..1e20861e99c7 100644
--- a/LICENSE
+++ b/LICENSE
@@ -1867,7 +1867,7 @@ EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
____
For VIGRA Computer Vision Library, Version 1.4.0 - built in main/vigra/:
-- license indentical to the MIT license
+- license identical to the MIT license
The VIGRA License
=================
diff --git a/NOTICE b/NOTICE
index 52b20ee05b85..28fbc2b86566 100644
--- a/NOTICE
+++ b/NOTICE
@@ -20,7 +20,7 @@ Apache projects:
- Apache Portable Runtime Utility Library
- Apache Commons - used by MediaWiki Publisher extension
- Apache Jakarta HttpClient - used by MediaWiki Publisher extension
-- Apache Tomcat - used by MediaWiki Piblisher extension
+- Apache Tomcat - used by MediaWiki Publisher extension
The notices from these projects are following:
diff --git a/NOTICE_category_b b/NOTICE_category_b
index 75681e47c12f..066e59d2523d 100644
--- a/NOTICE_category_b
+++ b/NOTICE_category_b
@@ -8,20 +8,20 @@ this file with the notices recommended by them:
___
-Notices for CoinMP libary:
-The Computational Infrastructure for Operations Research COIN_OR
-project developed the CoinMP library (a lightweight API and DLL
-for CLP, CBC, and CGL).
-It includes and depends on
-- CoinUtils: COIN-OR utilities, utilities, data structures, and
-linear algebra methods for COIN-OR projects
-- CLP: COIN-OR Graph Classes, a collection of network representations
-and algorithms
-- CBC: COIN-OR Branch and Cut, an LP-based branch-and-cut library
-- CGL: Cut Generator Library, a library of cutting-plane generators
-The source code of these dependencies which are available under
-license EPL can found at
- http://www.coin-or.org/download/source/CoinMP/
-
+Notices for CoinMP library:
+The Computational Infrastructure for Operations Research COIN_OR
+project developed the CoinMP library (a lightweight API and DLL
+for CLP, CBC, and CGL).
+It includes and depends on
+- CoinUtils: COIN-OR utilities, utilities, data structures, and
+linear algebra methods for COIN-OR projects
+- CLP: COIN-OR Graph Classes, a collection of network representations
+and algorithms
+- CBC: COIN-OR Branch and Cut, an LP-based branch-and-cut library
+- CGL: Cut Generator Library, a library of cutting-plane generators
+The source code of these dependencies which are available under
+license EPL can found at
+ http://www.coin-or.org/download/source/CoinMP/
+
___
diff --git a/UnoControls/inc/basecontrol.hxx b/UnoControls/inc/basecontrol.hxx
index baaf1b20b82e..f2695f235a23 100644
--- a/UnoControls/inc/basecontrol.hxx
+++ b/UnoControls/inc/basecontrol.hxx
@@ -278,7 +278,7 @@ public:
/**_______________________________________________________________________________________________________
@short get implementation id
- @descr This ID is neccessary for UNO-caching. If there no ID, cache is disabled.
+ @descr This ID is necessary for UNO-caching. If there no ID, cache is disabled.
Another way, cache is enabled.
@seealso XTypeProvider
diff --git a/UnoControls/source/base/basecontainercontrol.cxx b/UnoControls/source/base/basecontainercontrol.cxx
index 27ee492f92ec..c08b84a0c465 100644
--- a/UnoControls/source/base/basecontainercontrol.cxx
+++ b/UnoControls/source/base/basecontainercontrol.cxx
@@ -544,7 +544,7 @@ void SAL_CALL BaseContainerControl::setVisible ( sal_Bool bVisible ) throw( Runt
// is it a top window ?
if ( !getContext().is() && bVisible )
{
- // then show it automaticly
+ // then show it automatically
createPeer ( Reference< XToolkit > (), Reference< XWindowPeer > () ) ;
}
}
@@ -622,7 +622,7 @@ void BaseContainerControl::impl_cleanMemory ()
// Delete all items.
for ( nCount = 0; nCount < nMaxCount; ++nCount )
{
- // Delete everytime first element of list!
+ // Delete every time 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!
diff --git a/UnoControls/source/base/basecontrol.cxx b/UnoControls/source/base/basecontrol.cxx
index 80532bed6198..6e48a36f90c7 100644
--- a/UnoControls/source/base/basecontrol.cxx
+++ b/UnoControls/source/base/basecontrol.cxx
@@ -957,8 +957,8 @@ void BaseControl::impl_paint( sal_Int32 /*nX*/
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!
+ // We need as virtual function to support automatically resizing of derived controls!
+ // But we make it not pure virtual because it's not necessary for all derived classes!
}
//____________________________________________________________________________________________________________
diff --git a/UnoControls/source/base/registercontrols.cxx b/UnoControls/source/base/registercontrols.cxx
index b56e9d2edd49..2eded75dfbbf 100644
--- a/UnoControls/source/base/registercontrols.cxx
+++ b/UnoControls/source/base/registercontrols.cxx
@@ -51,7 +51,7 @@
//______________________________________________________________________________________________________________
// 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".
+// This switch on another macro AS_DBG_OUT(...), which will print text to "stdout".
//#define AS_DBG_SWITCH
diff --git a/UnoControls/source/controls/OConnectionPointContainerHelper.cxx b/UnoControls/source/controls/OConnectionPointContainerHelper.cxx
index f19fc6d2f507..4291285234c6 100644
--- a/UnoControls/source/controls/OConnectionPointContainerHelper.cxx
+++ b/UnoControls/source/controls/OConnectionPointContainerHelper.cxx
@@ -170,7 +170,7 @@ void SAL_CALL OConnectionPointContainerHelper::unadvise( const Type&
//______________________________________________________________________________________________________________
// public but impl method!
-// Is neccessary to get container member at OConnectionPoint-instance.
+// Is necessary to get container member at OConnectionPoint-instance.
//______________________________________________________________________________________________________________
OMultiTypeInterfaceContainerHelper& OConnectionPointContainerHelper::impl_getMultiTypeContainer()
diff --git a/UnoControls/source/controls/progressbar.cxx b/UnoControls/source/controls/progressbar.cxx
index 998c7d6d5816..d754265ef0b6 100644
--- a/UnoControls/source/controls/progressbar.cxx
+++ b/UnoControls/source/controls/progressbar.cxx
@@ -275,7 +275,7 @@ void SAL_CALL ProgressBar::setRange ( sal_Int32 nMin, sal_Int32 nMax ) throw( Ru
}
else
{
- // Change Min and Max automaticly
+ // Change Min and Max automatically
m_nMinRange = nMax ;
m_nMaxRange = nMin ;
}
diff --git a/UnoControls/source/controls/progressmonitor.cxx b/UnoControls/source/controls/progressmonitor.cxx
index ec15912cfe1a..9a5e9ec1131b 100644
--- a/UnoControls/source/controls/progressmonitor.cxx
+++ b/UnoControls/source/controls/progressmonitor.cxx
@@ -100,13 +100,13 @@ ProgressMonitor::ProgressMonitor( const Reference< XMultiServiceFactory >& xFact
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 !!!
+ // FixedText make it automatically 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)
+ // (progressbar take automatically 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 ) ) ;
@@ -641,7 +641,7 @@ void SAL_CALL ProgressMonitor::setPosSize ( sal_Int32 nX, sal_Int32 nY, sal_Int3
// calc new layout for controls
impl_recalcLayout () ;
// clear background (!)
- // [Childs was repainted in "recalcLayout" by setPosSize() automaticly!]
+ // [Childs was repainted in "recalcLayout" by setPosSize() automatically!]
getPeer()->invalidate(2);
// and repaint the control
impl_paint ( 0, 0, impl_getGraphicsPeer() ) ;
diff --git a/UnoControls/source/controls/statusindicator.cxx b/UnoControls/source/controls/statusindicator.cxx
index a9a65f0c6cda..06663719ed18 100644
--- a/UnoControls/source/controls/statusindicator.cxx
+++ b/UnoControls/source/controls/statusindicator.cxx
@@ -76,12 +76,12 @@ StatusIndicator::StatusIndicator( const Reference< XMultiServiceFactory >& xFact
// ... 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 !!!
+ // FixedText make it automatically 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)
+ // (progressbar take automatically its own defaults)
m_xText->setText( OUString::createFromAscii( DEFAULT_TEXT ) );
--m_refCount ;
@@ -404,7 +404,7 @@ void SAL_CALL StatusIndicator::setPosSize ( sal_Int32 nX, sal_Int32 nY, sal_Int3
// 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!]
+ // [Childs was repainted in "recalcLayout" by setPosSize() automatically!]
getPeer()->invalidate(2);
// and repaint the control
impl_paint ( 0, 0, impl_getGraphicsPeer() ) ;
diff --git a/UnoControls/source/inc/framecontrol.hxx b/UnoControls/source/inc/framecontrol.hxx
index 31dc0b517b02..6303629d3cdd 100644
--- a/UnoControls/source/inc/framecontrol.hxx
+++ b/UnoControls/source/inc/framecontrol.hxx
@@ -97,7 +97,7 @@ namespace unocontrols{
class FrameControl : public UNO3_XCONTROLMODEL
, public UNO3_XCONNECTIONPOINTCONTAINER
- , public BaseControl // This order is neccessary for right initialization of m_aMutex!
+ , public BaseControl // This order is necessary for right initialization of m_aMutex!
, public UNO3_OBROADCASTHELPER
, public UNO3_OPROPERTYSETHELPER
{
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/AccessibleTextImpl.java b/accessibility/bridge/org/openoffice/java/accessibility/AccessibleTextImpl.java
index 226fed223be2..979ee54b6a1d 100644
--- a/accessibility/bridge/org/openoffice/java/accessibility/AccessibleTextImpl.java
+++ b/accessibility/bridge/org/openoffice/java/accessibility/AccessibleTextImpl.java
@@ -637,7 +637,7 @@ public class AccessibleTextImpl implements javax.accessibility.AccessibleText {
}
}
- /** Returns the number of characters (valid indicies) */
+ /** Returns the number of characters (valid indices) */
public int getCharCount() {
try {
return unoObject.getCharacterCount();
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/Component.java b/accessibility/bridge/org/openoffice/java/accessibility/Component.java
index 2fda8772ce4e..4255399270ad 100644
--- a/accessibility/bridge/org/openoffice/java/accessibility/Component.java
+++ b/accessibility/bridge/org/openoffice/java/accessibility/Component.java
@@ -199,7 +199,7 @@ public abstract class Component extends java.awt.Component {
}
/**
- * Update the proxy objects appropriatly on property change events
+ * Update the proxy objects appropriately on property change events
*/
protected class AccessibleUNOComponentListener implements XAccessibleEventListener {
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/Container.java b/accessibility/bridge/org/openoffice/java/accessibility/Container.java
index 019e88ca50c9..97ca3288917d 100644
--- a/accessibility/bridge/org/openoffice/java/accessibility/Container.java
+++ b/accessibility/bridge/org/openoffice/java/accessibility/Container.java
@@ -196,7 +196,7 @@ public class Container extends java.awt.Container implements javax.accessibility
}
/**
- * Update the proxy objects appropriatly on property change events
+ * Update the proxy objects appropriately on property change events
*/
protected class AccessibleContainerListener implements XAccessibleEventListener {
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/DescendantManager.java b/accessibility/bridge/org/openoffice/java/accessibility/DescendantManager.java
index 794cb4709ba5..6282da7a5fdd 100644
--- a/accessibility/bridge/org/openoffice/java/accessibility/DescendantManager.java
+++ b/accessibility/bridge/org/openoffice/java/accessibility/DescendantManager.java
@@ -46,7 +46,7 @@ public abstract class DescendantManager extends Component {
}
/**
- * Update the proxy objects appropriatly on property change events
+ * Update the proxy objects appropriately on property change events
*/
protected class AccessibleDescendantManagerListener
extends AccessibleUNOComponentListener {
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/Dialog.java b/accessibility/bridge/org/openoffice/java/accessibility/Dialog.java
index 2de886a1521f..82f8bbf319b4 100644
--- a/accessibility/bridge/org/openoffice/java/accessibility/Dialog.java
+++ b/accessibility/bridge/org/openoffice/java/accessibility/Dialog.java
@@ -190,7 +190,7 @@ public class Dialog extends java.awt.Dialog implements javax.accessibility.Acces
}
/**
- * Update the proxy objects appropriatly on property change events
+ * Update the proxy objects appropriately on property change events
*/
protected class AccessibleDialogListener implements XAccessibleEventListener {
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/Frame.java b/accessibility/bridge/org/openoffice/java/accessibility/Frame.java
index 8196d6fc421e..82b5407ca341 100644
--- a/accessibility/bridge/org/openoffice/java/accessibility/Frame.java
+++ b/accessibility/bridge/org/openoffice/java/accessibility/Frame.java
@@ -161,7 +161,7 @@ public class Frame extends java.awt.Frame implements javax.accessibility.Accessi
}
/**
- * Update the proxy objects appropriatly on property change events
+ * Update the proxy objects appropriately on property change events
*/
protected class AccessibleFrameListener implements XAccessibleEventListener {
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/List.java b/accessibility/bridge/org/openoffice/java/accessibility/List.java
index 9e217dbf0360..9709337713e3 100644
--- a/accessibility/bridge/org/openoffice/java/accessibility/List.java
+++ b/accessibility/bridge/org/openoffice/java/accessibility/List.java
@@ -104,7 +104,7 @@ public class List extends DescendantManager implements javax.accessibility.Acces
}
/**
- * Update the proxy objects appropriatly on property change events
+ * Update the proxy objects appropriately on property change events
*/
protected class AccessibleListListener extends AccessibleDescendantManagerListener {
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/Menu.java b/accessibility/bridge/org/openoffice/java/accessibility/Menu.java
index 3ee9cdd57929..c3f6bb4c3cf3 100644
--- a/accessibility/bridge/org/openoffice/java/accessibility/Menu.java
+++ b/accessibility/bridge/org/openoffice/java/accessibility/Menu.java
@@ -141,7 +141,7 @@ public class Menu extends AbstractButton
}
/**
- * Update the proxy objects appropriatly on property change events
+ * Update the proxy objects appropriately on property change events
*/
protected class AccessibleMenuListener
extends AccessibleUNOComponentListener {
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/Table.java b/accessibility/bridge/org/openoffice/java/accessibility/Table.java
index c90b9a3ae699..c9ff11ca02ee 100644
--- a/accessibility/bridge/org/openoffice/java/accessibility/Table.java
+++ b/accessibility/bridge/org/openoffice/java/accessibility/Table.java
@@ -93,7 +93,7 @@ public class Table extends DescendantManager implements javax.accessibility.Acce
}
/**
- * Update the proxy objects appropriatly on property change events
+ * Update the proxy objects appropriately on property change events
*/
protected class AccessibleTableListener extends AccessibleDescendantManagerListener {
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/Tree.java b/accessibility/bridge/org/openoffice/java/accessibility/Tree.java
index c124cad75d57..144e10105ce6 100644
--- a/accessibility/bridge/org/openoffice/java/accessibility/Tree.java
+++ b/accessibility/bridge/org/openoffice/java/accessibility/Tree.java
@@ -88,7 +88,7 @@ public class Tree extends DescendantManager implements javax.accessibility.Acces
}
/**
- * Update the proxy objects appropriatly on property change events
+ * Update the proxy objects appropriately on property change events
*/
protected class AccessibleTreeListener extends AccessibleDescendantManagerListener {
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/Window.java b/accessibility/bridge/org/openoffice/java/accessibility/Window.java
index 1ff53dc74d1a..3ad9fc6ae41e 100644
--- a/accessibility/bridge/org/openoffice/java/accessibility/Window.java
+++ b/accessibility/bridge/org/openoffice/java/accessibility/Window.java
@@ -166,7 +166,7 @@ public class Window extends java.awt.Window implements javax.accessibility.Acces
}
/**
- * Update the proxy objects appropriatly on property change events
+ * Update the proxy objects appropriately on property change events
*/
protected class AccessibleWindowListener implements XAccessibleEventListener {
diff --git a/accessibility/bridge/source/java/WindowsAccessBridgeAdapter.cxx b/accessibility/bridge/source/java/WindowsAccessBridgeAdapter.cxx
index 951afcae857f..e294b0baf338 100644
--- a/accessibility/bridge/source/java/WindowsAccessBridgeAdapter.cxx
+++ b/accessibility/bridge/source/java/WindowsAccessBridgeAdapter.cxx
@@ -95,17 +95,17 @@ Java_org_openoffice_accessibility_WindowsAccessBridgeAdapter_getProcessID(JNIEnv
g_jcWindowsAccessBridgeAdapter =
static_cast< jclass > (pJNIEnv->NewGlobalRef(clazz));
if (NULL == g_jcWindowsAccessBridgeAdapter) {
- return 0; /* jni error occured */
+ return 0; /* jni error occurred */
}
g_jmRegisterTopWindow =
pJNIEnv->GetStaticMethodID(clazz, "registerTopWindow", "(ILcom/sun/star/accessibility/XAccessible;)V");
if (0 == g_jmRegisterTopWindow) {
- return 0; /* jni error occured */
+ return 0; /* jni error occurred */
}
g_jmRevokeTopWindow =
pJNIEnv->GetStaticMethodID(clazz, "revokeTopWindow", "(ILcom/sun/star/accessibility/XAccessible;)V");
if (0 == g_jmRevokeTopWindow) {
- return 0; /* jni error occured */
+ return 0; /* jni error occurred */
}
// Use the special protocol of XJavaVM.getJavaVM: If the passed in
@@ -285,7 +285,7 @@ void handleWindowEvent(Window * pWindow, bool bShow)
(bShow) ? g_jmRegisterTopWindow : g_jmRevokeTopWindow,
(jint) GetHWND(pWindow), joXAccessible );
- // Clear any exception that might have been occured.
+ // Clear any exception that might have been occurred.
if (pJNIEnv->ExceptionCheck()) {
pJNIEnv->ExceptionClear();
}
diff --git a/accessibility/inc/accessibility/extended/AccessibleBrowseBoxBase.hxx b/accessibility/inc/accessibility/extended/AccessibleBrowseBoxBase.hxx
index ef1d8abbd045..a5b96082daf7 100644
--- a/accessibility/inc/accessibility/extended/AccessibleBrowseBoxBase.hxx
+++ b/accessibility/inc/accessibility/extended/AccessibleBrowseBoxBase.hxx
@@ -65,7 +65,7 @@ namespace accessibility {
// ============================================================================
-/** Aquire the solar mutex. */
+/** Acquire the solar mutex. */
class BBSolarGuard : public ::vos::OGuard
{
public:
diff --git a/accessibility/inc/accessibility/extended/AccessibleGridControlBase.hxx b/accessibility/inc/accessibility/extended/AccessibleGridControlBase.hxx
index 02af9ef0b7ae..fef4e2f39c50 100644
--- a/accessibility/inc/accessibility/extended/AccessibleGridControlBase.hxx
+++ b/accessibility/inc/accessibility/extended/AccessibleGridControlBase.hxx
@@ -60,7 +60,7 @@ namespace accessibility {
// ============================================================================
-/** Aquire the solar mutex. */
+/** Acquire the solar mutex. */
class TCSolarGuard : public ::vos::OGuard
{
public:
diff --git a/accessibility/inc/accessibility/standard/vclxaccessiblebox.hxx b/accessibility/inc/accessibility/standard/vclxaccessiblebox.hxx
index bd9b016476e3..e62122451703 100644
--- a/accessibility/inc/accessibility/standard/vclxaccessiblebox.hxx
+++ b/accessibility/inc/accessibility/standard/vclxaccessiblebox.hxx
@@ -112,7 +112,7 @@ public:
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
+ /** The returned string is associated with resource
<const>RID_STR_ACC_ACTION_TOGGLEPOPUP</const>.
*/
virtual ::rtl::OUString SAL_CALL getAccessibleActionDescription (sal_Int32 nIndex)
@@ -175,7 +175,7 @@ protected:
/** 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
+ child is just another wrapper around this object and thus has the
same life time.
*/
bool m_bHasListChild;
diff --git a/accessibility/source/extended/accessibleiconchoicectrl.cxx b/accessibility/source/extended/accessibleiconchoicectrl.cxx
index bd64c074dc29..f31d544112a2 100644
--- a/accessibility/source/extended/accessibleiconchoicectrl.cxx
+++ b/accessibility/source/extended/accessibleiconchoicectrl.cxx
@@ -368,7 +368,7 @@ namespace accessibility
}
}
- // if only one entry is selected and its index is choosen to deselect -> no selection anymore
+ // if only one entry is selected and its index is chosen to deselect -> no selection anymore
if ( 1 == nSelCount && bFound )
pCtrl->SetNoSelection();
}
diff --git a/accessibility/source/extended/accessibleiconchoicectrlentry.cxx b/accessibility/source/extended/accessibleiconchoicectrlentry.cxx
index d756bcf8aeab..d88f5d1d3b1c 100644
--- a/accessibility/source/extended/accessibleiconchoicectrlentry.cxx
+++ b/accessibility/source/extended/accessibleiconchoicectrlentry.cxx
@@ -63,7 +63,7 @@ namespace accessibility
//........................................................................
// class ALBSolarGuard ---------------------------------------------------------
- /** Aquire the solar mutex. */
+ /** Acquire the solar mutex. */
class ALBSolarGuard : public ::vos::OGuard
{
public:
diff --git a/accessibility/source/extended/accessiblelistboxentry.cxx b/accessibility/source/extended/accessiblelistboxentry.cxx
index eff014063e16..2a998575f474 100644
--- a/accessibility/source/extended/accessiblelistboxentry.cxx
+++ b/accessibility/source/extended/accessiblelistboxentry.cxx
@@ -67,7 +67,7 @@ namespace accessibility
//........................................................................
// class ALBSolarGuard ---------------------------------------------------------
- /** Aquire the solar mutex. */
+ /** Acquire the solar mutex. */
class ALBSolarGuard : public ::vos::OGuard
{
public:
diff --git a/accessibility/source/extended/accessibletablistbox.cxx b/accessibility/source/extended/accessibletablistbox.cxx
index 5a090bb0f488..975902a64091 100644
--- a/accessibility/source/extended/accessibletablistbox.cxx
+++ b/accessibility/source/extended/accessibletablistbox.cxx
@@ -38,7 +38,7 @@ namespace accessibility
// class TLBSolarGuard ---------------------------------------------------------
- /** Aquire the solar mutex. */
+ /** Acquire the solar mutex. */
class TLBSolarGuard : public ::vos::OGuard
{
public:
diff --git a/accessibility/source/extended/accessibletablistboxtable.cxx b/accessibility/source/extended/accessibletablistboxtable.cxx
index 60cf7ef7a9f9..c55c50f0ecc8 100644
--- a/accessibility/source/extended/accessibletablistboxtable.cxx
+++ b/accessibility/source/extended/accessibletablistboxtable.cxx
@@ -42,7 +42,7 @@ namespace accessibility
// class TLBSolarGuard ---------------------------------------------------------
- /** Aquire the solar mutex. */
+ /** Acquire the solar mutex. */
class TLBSolarGuard : public ::vos::OGuard
{
public:
diff --git a/accessibility/source/extended/textwindowaccessibility.cxx b/accessibility/source/extended/textwindowaccessibility.cxx
index 262a7ff2f554..493f11f8090d 100644
--- a/accessibility/source/extended/textwindowaccessibility.cxx
+++ b/accessibility/source/extended/textwindowaccessibility.cxx
@@ -1160,7 +1160,7 @@ Document::retrieveCharacterAttributes(
for( i = 0; i < nLength; i++ )
pIndices[i] = i;
std::sort( &pIndices[0], &pIndices[nLength], IndexCompare(pPairs) );
- // create sorted sequences accoring to index array
+ // create sorted sequences according to index array
::css::uno::Sequence< ::css::beans::PropertyValue > aNewValues( nLength );
::css::beans::PropertyValue* pNewValues = aNewValues.getArray();
for( i = 0; i < nLength; i++ )
diff --git a/accessibility/source/standard/vclxaccessiblebox.cxx b/accessibility/source/standard/vclxaccessiblebox.cxx
index 00d8bc818eae..f09e1eb3d764 100644
--- a/accessibility/source/standard/vclxaccessiblebox.cxx
+++ b/accessibility/source/standard/vclxaccessiblebox.cxx
@@ -182,7 +182,7 @@ void VCLXAccessibleBox::ProcessWindowEvent (const VclWindowEvent& rVclWindowEven
case VCLEVENT_COMBOBOX_SELECT:
{
VCLXAccessibleList* pList = static_cast<VCLXAccessibleList*>(m_xList.get());
- if (pList != NULL)
+ if (pList != NULL && m_xText.is())
{
Reference<XAccessibleText> xText (m_xText->getAccessibleContext(), UNO_QUERY);
if ( xText.is() )
@@ -416,7 +416,7 @@ sal_Int32 SAL_CALL VCLXAccessibleBox::getAccessibleActionCount (void)
// There is one action for drop down boxes (toggle popup) and none for
// the other boxes.
- return m_bIsDropDownBox ? 0 : 1;
+ return m_bIsDropDownBox ? 1 : 0;
}
sal_Bool SAL_CALL VCLXAccessibleBox::doAccessibleAction (sal_Int32 nIndex)
@@ -463,11 +463,8 @@ sal_Bool SAL_CALL VCLXAccessibleBox::doAccessibleAction (sal_Int32 nIndex)
::osl::Guard< ::osl::Mutex > aGuard( GetMutex() );
if (nIndex<0 || nIndex>=getAccessibleActionCount())
throw ::com::sun::star::lang::IndexOutOfBoundsException();
- //Solution:When combo_box,it should not has action information.
- //return TK_RES_STRING( RID_STR_ACC_ACTION_TOGGLEPOPUP);
- if (m_aBoxType == LISTBOX)
- return ::rtl::OUString();
- return m_bIsDropDownBox?::rtl::OUString():TK_RES_STRING( RID_STR_ACC_ACTION_TOGGLEPOPUP);
+
+ return m_bIsDropDownBox ? TK_RES_STRING( RID_STR_ACC_ACTION_TOGGLEPOPUP) : ::rtl::OUString();
}
Reference< XAccessibleKeyBinding > VCLXAccessibleBox::getAccessibleActionKeyBinding( sal_Int32 nIndex )
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/canvas/Canvas.java b/accessibility/workben/org/openoffice/accessibility/awb/canvas/Canvas.java
index 21403a3e9cc9..ddaff69c7416 100644
--- a/accessibility/workben/org/openoffice/accessibility/awb/canvas/Canvas.java
+++ b/accessibility/workben/org/openoffice/accessibility/awb/canvas/Canvas.java
@@ -130,7 +130,7 @@ public class Canvas
0,
aScreenSize.getWidth(),
aScreenSize.getHeight());
- // Fill the screen rectangle and draw a frame arround it to increase its visibility.
+ // Fill the screen rectangle and draw a frame around it to increase its visibility.
g2.setColor (new Color (250,240,230));
g2.fill (aScreen);
g2.setColor (Color.BLACK);
diff --git a/accessibility/workben/org/openoffice/accessibility/misc/OfficeConnection.java b/accessibility/workben/org/openoffice/accessibility/misc/OfficeConnection.java
index 9ccb8af352d1..349a63883375 100644
--- a/accessibility/workben/org/openoffice/accessibility/misc/OfficeConnection.java
+++ b/accessibility/workben/org/openoffice/accessibility/misc/OfficeConnection.java
@@ -179,7 +179,7 @@ public class OfficeConnection
String msPipeName;
/** A value of true just indicates that it has been tried to establish a connection,
- not that that has been successfull.
+ not that that has been successful.
*/
private boolean mbInitialized = false;
diff --git a/animations/source/animcore/animcore.cxx b/animations/source/animcore/animcore.cxx
index dbb93aaf1934..31d5c07fe986 100644
--- a/animations/source/animcore/animcore.cxx
+++ b/animations/source/animcore/animcore.cxx
@@ -327,7 +327,7 @@ private:
sal_Int16 mnColorSpace;
sal_Bool mbDirection;
- // atributes for XAnimateMotion
+ // attributes for XAnimateMotion
Any maPath, maOrigin;
// attributes for XAnimateTransform
@@ -484,7 +484,7 @@ AnimationNode::AnimationNode( const AnimationNode& rNode )
mnColorSpace( rNode.mnColorSpace ),
mbDirection( rNode.mbDirection ),
- // atributes for XAnimateMotion
+ // attributes for XAnimateMotion
maPath( rNode.maPath ),
maOrigin( rNode.maOrigin ),
diff --git a/apache-commons/java/codec/makefile.mk b/apache-commons/java/codec/makefile.mk
index 4fab6d18cfba..b31f85d636e6 100644
--- a/apache-commons/java/codec/makefile.mk
+++ b/apache-commons/java/codec/makefile.mk
@@ -38,16 +38,21 @@ ANT_BUILDFILE=build.xml
.IF "$(SOLAR_JAVA)" != "" && "$(ENABLE_MEDIAWIKI)" == "YES"
# --- Files --------------------------------------------------------
-TARFILE_NAME=commons-codec-1.6-src
-TARFILE_MD5=2e482c7567908d334785ce7d69ddfff7
+TARFILE_NAME=commons-codec-1.9-src
+TARFILE_MD5=db87f7004cefc9d17f7ac841f86122bd
+#TARFILE_NAME=commons-codec-1.6-src
+#TARFILE_MD5=2e482c7567908d334785ce7d69ddfff7
-TARFILE_ROOTDIR=commons-codec-1.6-src
+TARFILE_ROOTDIR=commons-codec-1.9-src
+#TARFILE_ROOTDIR=commons-codec-1.6-src
-PATCH_FILES=$(PRJ)$/patches$/codec.patch
+#PATCH_FILES=
+#PATCH_FILES=$(PRJ)$/patches$/codec.patch
#CONVERTFILES=build.xml
-
-OUT2CLASS=dist$/commons-codec-1.6-SNAPSHOT.jar
+
+OUT2CLASS=dist$/commons-codec-1.9.jar
+#OUT2CLASS=dist$/commons-codec-1.6-SNAPSHOT.jar
.IF "$(JAVACISGCJ)"=="yes"
JAVA_HOME=
diff --git a/apache-commons/java/httpclient/makefile.mk b/apache-commons/java/httpclient/makefile.mk
index 900c6f6fc955..8caa8c03fbc4 100644
--- a/apache-commons/java/httpclient/makefile.mk
+++ b/apache-commons/java/httpclient/makefile.mk
@@ -53,8 +53,8 @@ PATCH_FILES= \
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.6-SNAPSHOT.jar
+COMMONS_LOGGING_JAR=..$/..$/..$/..$/$(INPATH)$/class$/commons-logging-1.1.3.jar
+COMMONS_CODEC_JAR=..$/..$/..$/..$/$/$(INPATH)$/class$/commons-codec-1.9.jar
.IF "$(JAVACISGCJ)"=="yes"
JAVA_HOME=
diff --git a/apache-commons/java/lang/makefile.mk b/apache-commons/java/lang/makefile.mk
index 0dceb8bd9ee6..763f2bbe45e1 100644
--- a/apache-commons/java/lang/makefile.mk
+++ b/apache-commons/java/lang/makefile.mk
@@ -40,16 +40,20 @@ TAR!:=$(GNUTAR)
.IF "$(SOLAR_JAVA)" != "" && "$(ENABLE_MEDIAWIKI)" == "YES"
# --- Files --------------------------------------------------------
-TARFILE_NAME=commons-lang-2.4-src
-TARFILE_MD5=625ff5f2f968dd908bca43c9469d6e6b
+TARFILE_NAME=commons-lang3-3.3-src
+TARFILE_MD5=4c8c505cc3cba4c467c479e3e0f09ba4
+#TARFILE_NAME=commons-lang-2.4-src
+#TARFILE_MD5=625ff5f2f968dd908bca43c9469d6e6b
-TARFILE_ROOTDIR=commons-lang-2.4-src
+#TARFILE_ROOTDIR=commons-lang-2.4-src
+TARFILE_ROOTDIR=commons-lang3-3.3-src
#PATCH_FILES=$(PRJ)$/patches$/logging.patch
#CONVERTFILES=build.xml
-
-OUT2CLASS=dist$/commons-lang-2.4.jar
+
+OUT2CLASS=target$/commons-lang3-3.3.jar
+#OUT2CLASS=dist$/commons-lang-2.4.jar
.IF "$(JAVACISGCJ)"=="yes"
JAVA_HOME=
diff --git a/apache-commons/java/logging/makefile.mk b/apache-commons/java/logging/makefile.mk
index 99a850418d63..d5bd2f2bfc27 100644
--- a/apache-commons/java/logging/makefile.mk
+++ b/apache-commons/java/logging/makefile.mk
@@ -38,16 +38,20 @@ ANT_BUILDFILE=build.xml
.IF "$(SOLAR_JAVA)" != "" && ( "$(ENABLE_MEDIAWIKI)" == "YES" || "$(ENABLE_REPORTBUILDER)" == "YES" )
# --- Files --------------------------------------------------------
-TARFILE_NAME=commons-logging-1.1.1-src
-TARFILE_MD5=3c219630e4302863a9a83d0efde889db
+TARFILE_NAME=commons-logging-1.1.3-src
+TARFILE_MD5=e8e197d628436490886d17cffa108fe3
+#TARFILE_NAME=commons-logging-1.1.1-src
+#TARFILE_MD5=3c219630e4302863a9a83d0efde889db
-TARFILE_ROOTDIR=commons-logging-1.1.1-src
+TARFILE_ROOTDIR=commons-logging-1.1.3-src
+#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
+
+OUT2CLASS=target$/commons-logging-1.1.3.jar
+#OUT2CLASS=target$/commons-logging-1.1.1-SNAPSHOT.jar
.IF "$(SYSTEM_TOMCAT)" != "YES"
SERVLETAPI_JAR := $(SOLARVER)$/$(INPATH)$/bin$(UPDMINOREXT)$/servlet-api.jar
diff --git a/apache-commons/patches/codec.patch b/apache-commons/patches/codec.patch
index 6b4b3e14d408..ca3bcc9f71a2 100644
--- a/apache-commons/patches/codec.patch
+++ b/apache-commons/patches/codec.patch
@@ -1,20 +1,20 @@
---- misc/build/commons-codec-1.6-src/build.xml-old 2012-05-05 22:12:32.000000000 -0500
-+++ misc/build/commons-codec-1.6-src/build.xml 2012-05-05 22:16:00.000000000 -0500
+--- misc/build/commons-codec-1.9-src/build.xml-old 2012-05-05 22:12:32.000000000 -0500
++++ misc/build/commons-codec-1.9-src/build.xml 2012-05-05 22:16:00.000000000 -0500
@@ -96,7 +96,6 @@
- </target>
- <target name="dist" depends="compile, javadoc" description="Create binary distribution">
- <mkdir dir="${dist.home}"/>
-- <copy file="${basedir}/LICENSE.txt" todir="${dist.home}"/>
- <copy file="${basedir}/NOTICE.txt" todir="${dist.home}"/>
- <copy file="${basedir}/RELEASE-NOTES.txt" todir="${dist.home}"/>
- <antcall target="jar"/>
+ </target>
+ <target name="dist" depends="compile, javadoc" description="Create binary distribution">
+ <mkdir dir="${dist.home}"/>
+- <copy file="${basedir}/LICENSE.txt" todir="${dist.home}"/>
+ <copy file="${basedir}/NOTICE.txt" todir="${dist.home}"/>
+ <copy file="${basedir}/RELEASE-NOTES.txt" todir="${dist.home}"/>
+ <antcall target="jar"/>
@@ -104,8 +103,7 @@
- <target name="jar" depends="compile" description="Create jar">
- <mkdir dir="${dist.home}"/>
- <mkdir dir="${build.home}/classes/META-INF"/>
-- <copy file="${basedir}/LICENSE.txt" tofile="${build.home}/classes/META-INF/LICENSE.txt"/>
-- <copy file="${basedir}/LICENSE.txt" tofile="${build.home}/classes/META-INF/NOTICE.txt"/>
-+ <copy file="${basedir}/NOTICE.txt" tofile="${build.home}/classes/META-INF/NOTICE.txt"/>
- <jar jarfile="${dist.home}/${final.name}.jar" basedir="${build.home}/classes">
- <manifest>
- <attribute name="Specification-Title" value="Commons Codec"/>
+ <target name="jar" depends="compile" description="Create jar">
+ <mkdir dir="${dist.home}"/>
+ <mkdir dir="${build.home}/classes/META-INF"/>
+- <copy file="${basedir}/LICENSE.txt" tofile="${build.home}/classes/META-INF/LICENSE.txt"/>
+- <copy file="${basedir}/LICENSE.txt" tofile="${build.home}/classes/META-INF/NOTICE.txt"/>
++ <copy file="${basedir}/NOTICE.txt" tofile="${build.home}/classes/META-INF/NOTICE.txt"/>
+ <jar jarfile="${dist.home}/${final.name}.jar" basedir="${build.home}/classes">
+ <manifest>
+ <attribute name="Specification-Title" value="Commons Codec"/>
diff --git a/apache-commons/patches/httpclient.patch b/apache-commons/patches/httpclient.patch
index aa56904fced7..315cd7b1e34b 100644
--- a/apache-commons/patches/httpclient.patch
+++ b/apache-commons/patches/httpclient.patch
@@ -1,120 +1,31 @@
-diff -ru misc/build/commons-httpclient-3.1/src/java/org/apache/commons/httpclient.orig/ConnectMethod.java misc/build/commons-httpclient-3.1/src/java/org/apache/commons/httpclient/ConnectMethod.java
---- misc/build/commons-httpclient-3.1/src/java/org/apache/commons/httpclient.orig/ConnectMethod.java 2012-05-07 12:34:01.000000000 -0500
-+++ misc/build/commons-httpclient-3.1/src/java/org/apache/commons/httpclient/ConnectMethod.java 2012-05-07 12:37:50.000000000 -0500
-@@ -38,7 +38,7 @@
- /**
- * Establishes a tunneled HTTP connection via the CONNECT method.
- *
-- * @author Ortwin Gl???ck
-+ * @author Ortwin Glueck
- * @author dIon Gillard
- * @author <a href="mailto:mbowler@GargoyleSoftware.com">Mike Bowler</a>
- * @author <a href="mailto:oleg@ural.ru">Oleg Kalnichevski</a>
-diff -ru misc/build/commons-httpclient-3.1/src/java/org/apache/commons/httpclient.orig/HttpClient.java misc/build/commons-httpclient-3.1/src/java/org/apache/commons/httpclient/HttpClient.java
---- misc/build/commons-httpclient-3.1/src/java/org/apache/commons/httpclient.orig/HttpClient.java 2012-05-07 12:34:01.000000000 -0500
-+++ misc/build/commons-httpclient-3.1/src/java/org/apache/commons/httpclient/HttpClient.java 2012-05-07 12:37:50.000000000 -0500
-@@ -48,7 +48,7 @@
- * @author <a href="mailto:rwaldhoff@apache.org">Rodney Waldhoff</a>
- * @author Sean C. Sullivan
- * @author <a href="mailto:dion@apache.org">dIon Gillard</a>
-- * @author Ortwin Gl?ck
-+ * @author Ortwin Glueck
- * @author <a href="mailto:becke@u.washington.edu">Michael Becke</a>
- * @author <a href="mailto:mbowler@GargoyleSoftware.com">Mike Bowler</a>
- * @author Sam Maloney
-diff -ru misc/build/commons-httpclient-3.1/src/java/org/apache/commons/httpclient.orig/HttpClientError.java misc/build/commons-httpclient-3.1/src/java/org/apache/commons/httpclient/HttpClientError.java
---- misc/build/commons-httpclient-3.1/src/java/org/apache/commons/httpclient.orig/HttpClientError.java 2012-05-07 12:34:01.000000000 -0500
-+++ misc/build/commons-httpclient-3.1/src/java/org/apache/commons/httpclient/HttpClientError.java 2012-05-07 12:37:50.000000000 -0500
-@@ -33,7 +33,7 @@
- /**
- * Signals that an error has occurred.
- *
-- * @author Ortwin Gl?ck
-+ * @author Ortwin Glueck
- * @version $Revision: 480424 $ $Date: 2006-11-29 06:56:49 +0100 (Wed, 29 Nov 2006) $
- * @since 3.0
- */
-diff -ru misc/build/commons-httpclient-3.1/src/java/org/apache/commons/httpclient.orig/HttpContentTooLargeException.java misc/build/commons-httpclient-3.1/src/java/org/apache/commons/httpclient/HttpContentTooLargeException.java
---- misc/build/commons-httpclient-3.1/src/java/org/apache/commons/httpclient.orig/HttpContentTooLargeException.java 2012-05-07 12:34:01.000000000 -0500
-+++ misc/build/commons-httpclient-3.1/src/java/org/apache/commons/httpclient/HttpContentTooLargeException.java 2012-05-07 12:37:50.000000000 -0500
-@@ -3,7 +3,7 @@
- /**
- * Signals that the response content was larger than anticipated.
- *
-- * @author Ortwin Glück
-+ * @author Ortwin Glueck
- */
- public class HttpContentTooLargeException extends HttpException {
- private int maxlen;
-diff -ru misc/build/commons-httpclient-3.1/src/java/org/apache/commons/httpclient.orig/WireLogInputStream.java misc/build/commons-httpclient-3.1/src/java/org/apache/commons/httpclient/WireLogInputStream.java
---- misc/build/commons-httpclient-3.1/src/java/org/apache/commons/httpclient.orig/WireLogInputStream.java 2012-05-07 12:34:01.000000000 -0500
-+++ misc/build/commons-httpclient-3.1/src/java/org/apache/commons/httpclient/WireLogInputStream.java 2012-05-07 12:37:50.000000000 -0500
-@@ -37,7 +37,7 @@
- /**
- * Logs all data read to the wire LOG.
- *
-- * @author Ortwin Glïżœck
-+ * @author Ortwin Glueck
- * @author <a href="mailto:mbowler@GargoyleSoftware.com">Mike Bowler</a>
- * @author <a href="mailto:oleg@ural.ru">Oleg Kalnichevski</a>
- *
-diff -ru misc/build/commons-httpclient-3.1/src/java/org/apache/commons/httpclient.orig/auth/BasicScheme.java misc/build/commons-httpclient-3.1/src/java/org/apache/commons/httpclient/auth/BasicScheme.java
---- misc/build/commons-httpclient-3.1/src/java/org/apache/commons/httpclient.orig/auth/BasicScheme.java 2012-05-07 12:34:01.000000000 -0500
-+++ misc/build/commons-httpclient-3.1/src/java/org/apache/commons/httpclient/auth/BasicScheme.java 2012-05-07 12:37:50.000000000 -0500
-@@ -46,7 +46,7 @@
- * @author <a href="mailto:remm@apache.org">Remy Maucherat</a>
- * @author Rodney Waldhoff
- * @author <a href="mailto:jsdever@apache.org">Jeff Dever</a>
-- * @author Ortwin Gl?ck
-+ * @author Ortwin Glueck
- * @author Sean C. Sullivan
- * @author <a href="mailto:adrian@ephox.com">Adrian Sutton</a>
- * @author <a href="mailto:mbowler@GargoyleSoftware.com">Mike Bowler</a>
-diff -ru misc/build/commons-httpclient-3.1/src/java/org/apache/commons/httpclient.orig/auth/DigestScheme.java misc/build/commons-httpclient-3.1/src/java/org/apache/commons/httpclient/auth/DigestScheme.java
---- misc/build/commons-httpclient-3.1/src/java/org/apache/commons/httpclient.orig/auth/DigestScheme.java 2012-05-07 12:34:01.000000000 -0500
-+++ misc/build/commons-httpclient-3.1/src/java/org/apache/commons/httpclient/auth/DigestScheme.java 2012-05-07 12:37:50.000000000 -0500
-@@ -67,7 +67,7 @@
- * @author <a href="mailto:remm@apache.org">Remy Maucherat</a>
- * @author Rodney Waldhoff
- * @author <a href="mailto:jsdever@apache.org">Jeff Dever</a>
-- * @author Ortwin Gl?ck
-+ * @author Ortwin Glueck
- * @author Sean C. Sullivan
- * @author <a href="mailto:adrian@ephox.com">Adrian Sutton</a>
- * @author <a href="mailto:mbowler@GargoyleSoftware.com">Mike Bowler</a>
-diff -ru misc/build/commons-httpclient-3.1/src/java/org/apache/commons/httpclient.orig/auth/HttpAuthenticator.java misc/build/commons-httpclient-3.1/src/java/org/apache/commons/httpclient/auth/HttpAuthenticator.java
---- misc/build/commons-httpclient-3.1/src/java/org/apache/commons/httpclient.orig/auth/HttpAuthenticator.java 2012-05-07 12:34:01.000000000 -0500
-+++ misc/build/commons-httpclient-3.1/src/java/org/apache/commons/httpclient/auth/HttpAuthenticator.java 2012-05-07 12:37:50.000000000 -0500
-@@ -62,7 +62,7 @@
- * @author <a href="mailto:remm@apache.org">Remy Maucherat</a>
- * @author Rodney Waldhoff
- * @author <a href="mailto:jsdever@apache.org">Jeff Dever</a>
-- * @author Ortwin Glïżœck
-+ * @author Ortwin Glueck
- * @author Sean C. Sullivan
- * @author <a href="mailto:adrian@ephox.com">Adrian Sutton</a>
- * @author <a href="mailto:mbowler@GargoyleSoftware.com">Mike Bowler</a>
-diff -ru misc/build/commons-httpclient-3.1/src/java/org/apache/commons/httpclient.orig/auth/NTLMScheme.java misc/build/commons-httpclient-3.1/src/java/org/apache/commons/httpclient/auth/NTLMScheme.java
---- misc/build/commons-httpclient-3.1/src/java/org/apache/commons/httpclient.orig/auth/NTLMScheme.java 2012-05-07 12:34:01.000000000 -0500
-+++ misc/build/commons-httpclient-3.1/src/java/org/apache/commons/httpclient/auth/NTLMScheme.java 2012-05-07 12:37:50.000000000 -0500
-@@ -43,7 +43,7 @@
- * @author <a href="mailto:remm@apache.org">Remy Maucherat</a>
- * @author Rodney Waldhoff
- * @author <a href="mailto:jsdever@apache.org">Jeff Dever</a>
-- * @author Ortwin Gl???ck
-+ * @author Ortwin Glueck
- * @author Sean C. Sullivan
- * @author <a href="mailto:adrian@ephox.com">Adrian Sutton</a>
- * @author <a href="mailto:mbowler@GargoyleSoftware.com">Mike Bowler</a>
-diff -ru misc/build/commons-httpclient-3.1/src/java/org/apache/commons/httpclient.orig/methods/PostMethod.java misc/build/commons-httpclient-3.1/src/java/org/apache/commons/httpclient/methods/PostMethod.java
---- misc/build/commons-httpclient-3.1/src/java/org/apache/commons/httpclient.orig/methods/PostMethod.java 2012-05-07 12:34:01.000000000 -0500
-+++ misc/build/commons-httpclient-3.1/src/java/org/apache/commons/httpclient/methods/PostMethod.java 2012-05-07 12:37:50.000000000 -0500
-@@ -62,7 +62,7 @@
- * @author <a href="mailto:remm@apache.org">Remy Maucherat</a>
- * @author <a href="mailto:dsale@us.britannica.com">Doug Sale</a>
- * @author <a href="mailto:jsdever@apache.org">Jeff Dever</a>
-- * @author Ortwin Gl???ck
-+ * @author Ortwin Glueck
- * @author <a href="mailto:mbowler@GargoyleSoftware.com">Mike Bowler</a>
- * @author <a href="mailto:oleg@ural.ru">Oleg Kalnichevski</a>
- *
+--- misc/commons-httpclient-3.1/build.xml 2007-08-18 11:02:14.000000000 +0200
++++ misc/build/commons-httpclient-3.1/build.xml 2014-03-11 15:25:51.000000000 +0100
+@@ -181,14 +181,16 @@
+ destdir ="${build.home}/classes"
+ debug ="${compile.debug}"
+ deprecation ="${compile.deprecation}"
+- optimize ="${compile.optimize}">
++ optimize ="${compile.optimize}"
++ encoding ="iso8859-1">
+ <classpath refid="compile.classpath"/>
+ </javac>
+ <javac srcdir ="${source.home}/examples"
+ destdir ="${build.home}/examples"
+ debug ="${compile.debug}"
+ deprecation ="${compile.deprecation}"
+- optimize ="${compile.optimize}">
++ optimize ="${compile.optimize}"
++ encoding ="iso8859-1">
+ <classpath refid="compile.classpath"/>
+ </javac>
+ </target>
+@@ -199,7 +201,8 @@
+ destdir ="${build.home}/tests"
+ debug ="${compile.debug}"
+ deprecation ="${compile.deprecation}"
+- optimize ="${compile.optimize}">
++ optimize ="${compile.optimize}"
++ encoding ="iso8859-1">
+ <classpath refid="test.classpath"/>
+ </javac>
+ <copy todir="${build.home}/tests" filtering="on">
diff --git a/apache-commons/patches/logging.patch b/apache-commons/patches/logging.patch
index f96eda38075c..653360e45abd 100644
--- a/apache-commons/patches/logging.patch
+++ b/apache-commons/patches/logging.patch
@@ -1,6 +1,6 @@
---- 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 @@
+--- misc/commons-logging-1.1.3-src/build.xml 2014-03-11 13:13:20.000000000 +0100
++++ misc/build/commons-logging-1.1.3-src/build.xml 2014-03-11 13:13:20.000000000 +0100
+@@ -130,10 +130,10 @@
<!-- ========== Compiler Defaults ========================================= -->
<!-- Version of java class files to generate. -->
diff --git a/apache-commons/prj/d.lst b/apache-commons/prj/d.lst
index 0dbe5822023f..2fe8e6a92cd4 100644
--- a/apache-commons/prj/d.lst
+++ b/apache-commons/prj/d.lst
@@ -1,5 +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.6-SNAPSHOT.jar %_DEST%\bin%_EXT%\commons-codec-1.6.jar
+..\%__SRC%\class\commons-logging-1.1.3.jar %_DEST%\bin%_EXT%\commons-logging-1.1.3.jar
+..\%__SRC%\class\commons-codec-1.9.jar %_DEST%\bin%_EXT%\commons-codec-1.9.jar
..\%__SRC%\class\commons-httpclient.jar %_DEST%\bin%_EXT%\commons-httpclient-3.1.jar
-..\%__SRC%\class\commons-lang-2.4.jar %_DEST%\bin%_EXT%\commons-lang-2.4.jar
+..\%__SRC%\class\commons-lang3-3.3.jar %_DEST%\bin%_EXT%\commons-lang3-3.3.jar
diff --git a/apple_remote/AppleRemote.m b/apple_remote/AppleRemote.m
index 44369f775990..fee5fc3703b3 100644
--- a/apple_remote/AppleRemote.m
+++ b/apple_remote/AppleRemote.m
@@ -118,14 +118,14 @@ const char* AppleRemoteDeviceName = "AppleIRController";
- (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
+ // There is no separate 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
+ // There is no separate event when the button is being released. We are simulating that event here
[super sendRemoteButtonEvent:event pressedDown:NO];
}
}
diff --git a/apple_remote/RemoteMainController.m b/apple_remote/RemoteMainController.m
index 2896b3d4dbd0..01def69f0091 100644
--- a/apple_remote/RemoteMainController.m
+++ b/apple_remote/RemoteMainController.m
@@ -55,7 +55,7 @@
if ( [container instantiateAndAddRemoteControlDeviceWithClass: [AppleRemote class]] != 0 ) {
#ifdef DEBUG
- NSLog(@"[container instantiateAndAddRemoteControlDeviceWithClass: [AppleRemote class]] successfull");
+ NSLog(@"[container instantiateAndAddRemoteControlDeviceWithClass: [AppleRemote class]] successful");
}
else {
NSLog(@"[container instantiateAndAddRemoteControlDeviceWithClass: [AppleRemote class]] failed");
@@ -64,7 +64,7 @@
if ( [container instantiateAndAddRemoteControlDeviceWithClass: [GlobalKeyboardDevice class]] != 0 ) {
#ifdef DEBUG
- NSLog(@"[container instantiateAndAddRemoteControlDeviceWithClass: [GlobalKeyboardDevice class]] successfull");
+ NSLog(@"[container instantiateAndAddRemoteControlDeviceWithClass: [GlobalKeyboardDevice class]] successful");
}
else {
NSLog(@"[container instantiateAndAddRemoteControlDeviceWithClass: [GlobalKeyboardDevice class]] failed");
diff --git a/apple_remote/inc/MultiClickRemoteBehavior.h b/apple_remote/inc/MultiClickRemoteBehavior.h
index 9cffa35fae2f..19029dbaf969 100644
--- a/apple_remote/inc/MultiClickRemoteBehavior.h
+++ b/apple_remote/inc/MultiClickRemoteBehavior.h
@@ -61,7 +61,7 @@
// Simulating hold events does deactivate sending of individual requests for pressed down/released.
// Instead special hold events are being triggered when the user is pressing and holding a button for a small period.
-// Simulation is activated only for those buttons and remote control that do not have a seperate event already
+// Simulation is activated only for those buttons and remote control that do not have a separate event already
- (BOOL) simulateHoldEvent;
- (void) setSimulateHoldEvent: (BOOL) value;
diff --git a/autodoc/inc/ary/cpp/c_gate.hxx b/autodoc/inc/ary/cpp/c_gate.hxx
index 78032aea0923..e15f4c82c3f4 100644
--- a/autodoc/inc/ary/cpp/c_gate.hxx
+++ b/autodoc/inc/ary/cpp/c_gate.hxx
@@ -65,7 +65,7 @@ namespace cpp
-/** Acess to all stored objcts in the repository, which are
+/** Access to all stored objcts in the repository, which are
relevant to C++.
*/
class Gate
diff --git a/autodoc/inc/ary/cpp/cp_ce.hxx b/autodoc/inc/ary/cpp/cp_ce.hxx
index 2a0c3d6e0e3c..0bf32f73340e 100644
--- a/autodoc/inc/ary/cpp/cp_ce.hxx
+++ b/autodoc/inc/ary/cpp/cp_ce.hxx
@@ -64,7 +64,7 @@ namespace cpp
-/** Acess to all declared C++ code entites (types, variables, operations)
+/** Access to all declared C++ code entites (types, variables, operations)
in the repository.
*/
class CePilot
diff --git a/autodoc/inc/ary/cpp/cp_def.hxx b/autodoc/inc/ary/cpp/cp_def.hxx
index 0867d4d9d287..63d70ffc81ac 100644
--- a/autodoc/inc/ary/cpp/cp_def.hxx
+++ b/autodoc/inc/ary/cpp/cp_def.hxx
@@ -50,7 +50,7 @@ namespace cpp
-/** Acess to C++ defines and macros in the repository.
+/** Access to C++ defines and macros in the repository.
*/
class DefPilot
{
diff --git a/autodoc/inc/ary/cpp/cp_type.hxx b/autodoc/inc/ary/cpp/cp_type.hxx
index ff83f6004b54..3a0223b918fe 100644
--- a/autodoc/inc/ary/cpp/cp_type.hxx
+++ b/autodoc/inc/ary/cpp/cp_type.hxx
@@ -52,7 +52,7 @@ namespace cpp
-/** Acess to all found C++ types (as they are used in declarations)
+/** Access to all found C++ types (as they are used in declarations)
in the repository.
*/
class TypePilot
diff --git a/autodoc/inc/ary/doc/d_parametrized.hxx b/autodoc/inc/ary/doc/d_parametrized.hxx
index 2b790e92b263..47124056b3cf 100644
--- a/autodoc/inc/ary/doc/d_parametrized.hxx
+++ b/autodoc/inc/ary/doc/d_parametrized.hxx
@@ -50,7 +50,7 @@ class Parametrized : public Node
const HyperText & Doc() const;
const T & Parameter() const;
- // ACESS
+ // ACCESS
HyperText & Doc();
void Set_Parameter(
const T & i_param );
diff --git a/autodoc/inc/ary/idl/i_type.hxx b/autodoc/inc/ary/idl/i_type.hxx
index 0159fcfa46a8..06a60cbaf2eb 100644
--- a/autodoc/inc/ary/idl/i_type.hxx
+++ b/autodoc/inc/ary/idl/i_type.hxx
@@ -53,7 +53,7 @@ class Type_2s
/** Base of all IDL types.
- Type represents the occurence of a type as base,
+ Type represents the occurrence of a type as base,
parameter, return type or element type in UNO IDL code.
Some of them relate to a ->CodeEntity, but
the ->Type "MyInterface" is something different than
diff --git a/autodoc/source/ary/inc/cross_refs.hxx b/autodoc/source/ary/inc/cross_refs.hxx
index 7cb158757e8a..7f1000d6da94 100644
--- a/autodoc/source/ary/inc/cross_refs.hxx
+++ b/autodoc/source/ary/inc/cross_refs.hxx
@@ -39,7 +39,7 @@ class CrossReferences
public:
typedef TYPES::element_type element;
- /// Checks for double occurences
+ /// Checks for double occurrences
void Add(
VALUE_LIST::index_type
i_nPosition
diff --git a/autodoc/source/ary/inc/sorted_idset.hxx b/autodoc/source/ary/inc/sorted_idset.hxx
index bb1d3c7ad999..f0fea0790278 100644
--- a/autodoc/source/ary/inc/sorted_idset.hxx
+++ b/autodoc/source/ary/inc/sorted_idset.hxx
@@ -39,7 +39,7 @@ template <class XY> class SortedIdSet;
class Interface_2s
{
public:
- /// Checks for double occurences
+ /// Checks for double occurrences
void Add_ExportingService(
Ce_id i_nId );
void Get_ExportingServices(
diff --git a/autodoc/source/display/html/outfile.hxx b/autodoc/source/display/html/outfile.hxx
index 5b4bafb7caa0..447cdc1f10ab 100644
--- a/autodoc/source/display/html/outfile.hxx
+++ b/autodoc/source/display/html/outfile.hxx
@@ -73,7 +73,7 @@ class HtmlDocuFile
uintt nDepthInOutputTree;
Html::Body aBodyData;
- StreamStr aBuffer; // Output buffer, should be transfered into csv::File.
+ StreamStr aBuffer; // Output buffer, should be transferred into csv::File.
};
diff --git a/autodoc/source/display/html/pagemake.cxx b/autodoc/source/display/html/pagemake.cxx
index c66b466cfffe..967793329cc7 100644
--- a/autodoc/source/display/html/pagemake.cxx
+++ b/autodoc/source/display/html/pagemake.cxx
@@ -92,7 +92,7 @@ void
PageDisplay::Create_AllDefsFile()
{
// This method is a provisorium, because later this will
- // be spreaded over the files.
+ // be spread over the files.
Env().MoveDir_2Root();
Env().SetFile_AllDefs();
diff --git a/autodoc/source/display/idl/hi_env.hxx b/autodoc/source/display/idl/hi_env.hxx
index 00739261af45..9e4fe5ba30a4 100644
--- a/autodoc/source/display/idl/hi_env.hxx
+++ b/autodoc/source/display/idl/hi_env.hxx
@@ -54,7 +54,7 @@ class AryAccess;
class LinkHelper;
/** @resp
- Provides enviroment information to the HTML factory
+ Provides environment information to the HTML factory
classes.
@descr
diff --git a/autodoc/source/parser/inc/tokens/tokproct.hxx b/autodoc/source/parser/inc/tokens/tokproct.hxx
index 952f6f699024..361e7b575ddf 100644
--- a/autodoc/source/parser/inc/tokens/tokproct.hxx
+++ b/autodoc/source/parser/inc/tokens/tokproct.hxx
@@ -51,7 +51,7 @@ class TokenProcessing_Types
stay, // same parse environment
push, // push sub environment
pop_success, // return to parent environment, parsing was successful
- pop_failure // return to parent environment, but an error occured.
+ pop_failure // return to parent environment, but an error occurred.
};
struct TokenProcessing_Result
diff --git a/autodoc/source/parser_i/inc/s2_luidl/tokproct.hxx b/autodoc/source/parser_i/inc/s2_luidl/tokproct.hxx
index 5c7172351760..7ff225b2f569 100644
--- a/autodoc/source/parser_i/inc/s2_luidl/tokproct.hxx
+++ b/autodoc/source/parser_i/inc/s2_luidl/tokproct.hxx
@@ -59,7 +59,7 @@ class TokenProcessing_Types
push_sure, // push sub environment, which must be the correct one
push_try, // push sub environment, which is tried, if it may be the right one
pop_success, // return to parent environment, parsing was successful
- pop_failure // return to parent environment, but an error occured.
+ pop_failure // return to parent environment, but an error occurred.
};
struct TokenProcessing_Result
diff --git a/autodoc/source/parser_i/inc/tokens/tkp2.hxx b/autodoc/source/parser_i/inc/tokens/tkp2.hxx
index 1bb1d2307741..79061be03723 100644
--- a/autodoc/source/parser_i/inc/tokens/tkp2.hxx
+++ b/autodoc/source/parser_i/inc/tokens/tkp2.hxx
@@ -60,7 +60,7 @@ class TokenParse2
source code.
@return true, if there was passed a valid token.
false, if the parsed stream is finished or
- an error occured.
+ an error occurred.
*/
bool GetNextToken();
diff --git a/automation/inc/automation/commtypes.hxx b/automation/inc/automation/commtypes.hxx
index 4c6ce8a120c9..5080b1dda3bb 100644
--- a/automation/inc/automation/commtypes.hxx
+++ b/automation/inc/automation/commtypes.hxx
@@ -27,7 +27,7 @@
* This file is intended to supply the types and defines for Environment independent
* building of the packethandler
* Only adaption of this file should be necessary. Else it is a bug!
- * Ether including apropriate files or defining the types when not available in the environment
+ * Ether including appropriate files or defining the types when not available in the environment
*
************************************************************************/
diff --git a/automation/inc/automation/simplecm.hxx b/automation/inc/automation/simplecm.hxx
index 2665c6693908..e1795847a9d4 100644
--- a/automation/inc/automation/simplecm.hxx
+++ b/automation/inc/automation/simplecm.hxx
@@ -343,7 +343,7 @@ protected:
void SetStreamSocket( vos::OStreamSocket* pSocket );
SvStream *pReceiveStream;
- sal_Bool DoReceiveDataStream(); /// Recieve DataPacket from Socket
+ sal_Bool DoReceiveDataStream(); /// Receive DataPacket from Socket
virtual sal_Bool SendHandshake( HandshakeType aHandshakeType, SvStream* pData = NULL);
void SetFinalRecieveTimeout();
sal_Bool bIsRequestShutdownPending;
diff --git a/automation/source/server/recorder.cxx b/automation/source/server/recorder.cxx
index 2b08460e98d8..a647deb8cf48 100644
--- a/automation/source/server/recorder.cxx
+++ b/automation/source/server/recorder.cxx
@@ -161,7 +161,7 @@ IMPL_LINK( MacroRecorder, EventListener, VclSimpleEvent*, pEvent )
{
if ( m_bRecord )
{
- // we cannot access pKeyWin since it might have dissapeared
+ // we cannot access pKeyWin since it might have disappeared
if ( bKeyFollowFocus )
StatementList::pRet->GenReturn( RET_MacroRecorder, aKeyUniqueID, (sal_uInt16)M_TypeKeys, aKeyString, bKeyFollowFocus );
else
diff --git a/automation/source/server/recorder.hxx b/automation/source/server/recorder.hxx
index 1b05f7a4c4c6..491fdf982b48 100644
--- a/automation/source/server/recorder.hxx
+++ b/automation/source/server/recorder.hxx
@@ -46,7 +46,7 @@ private:
// record keys
String aKeyString;
- rtl::OString aKeyUniqueID; // has to be remembered seperately since Window might be gone when needed
+ rtl::OString aKeyUniqueID; // has to be remembered separately since Window might be gone when needed
Window* pKeyWin;
sal_Bool bKeyFollowFocus;
diff --git a/automation/source/server/statemnt.cxx b/automation/source/server/statemnt.cxx
index 8552c64542a0..8762dd9f0099 100644
--- a/automation/source/server/statemnt.cxx
+++ b/automation/source/server/statemnt.cxx
@@ -422,7 +422,7 @@ void StatementSlot::AddReferer()
{
HACK( "only to test!" );
// because slot 6102 /*SID_VERB_START*/ crashes when called with Property Referer
-// We return to the previous behavior (which was a bug realy) of not adding this Property to calls which have no properties at all
+// We return to the previous behavior (which was a bug really) of not adding this Property to calls which have no properties at all
// according to MBA most likely this Property can be removed at all and is maybe only needed for Slots with URLs
if ( !nAnzahl )
return;
diff --git a/automation/source/simplecm/packethandler.hxx b/automation/source/simplecm/packethandler.hxx
index dd59c0036809..b18a19e0401f 100644
--- a/automation/source/simplecm/packethandler.hxx
+++ b/automation/source/simplecm/packethandler.hxx
@@ -57,7 +57,7 @@ public:
comm_UINT16 GetReceiveProtocol() { return nReceiveProtocol; }
comm_UINT16 GetReceiveHeaderType() { return nReceiveHeaderType; }
- comm_BOOL ReceiveData( void* &pData, comm_UINT32 &nLen ); /// Recieve DataPacket from Socket
+ comm_BOOL ReceiveData( void* &pData, comm_UINT32 &nLen ); /// Receive DataPacket from Socket
virtual comm_BOOL SendHandshake( HandshakeType aHandshakeType, const void* pData = NULL, comm_UINT32 nLen = 0 );
virtual comm_BOOL TransferData( const void* pData, comm_UINT32 nLen, CMProtocol nProtocol = CM_PROTOCOL_OLDSTYLE );
};
diff --git a/automation/source/simplecm/simplecm.cxx b/automation/source/simplecm/simplecm.cxx
index f573e005273d..5f3bf2c79741 100644
--- a/automation/source/simplecm/simplecm.cxx
+++ b/automation/source/simplecm/simplecm.cxx
@@ -164,7 +164,7 @@ void SimpleCommunicationLinkViaSocket::SetStreamSocket( vos::OStreamSocket* pSoc
sal_Bool SimpleCommunicationLinkViaSocket::StopCommunication()
{
CommunicationLinkRef rHold(this); // avoid deleting this link before the end of the method
- if ( !IsCommunicationError() ) // Meaning that the Communication is still runnung
+ if ( !IsCommunicationError() ) // Meaning that the Communication is still running
{
#if OSL_DEBUG_LEVEL > 1
debug_printf("Sending REQUEST_ShutdownLink\n");
diff --git a/avmedia/prj/build.lst b/avmedia/prj/build.lst
index 7d9343b916fd..6b4ba9c8e762 100644
--- a/avmedia/prj/build.lst
+++ b/avmedia/prj/build.lst
@@ -7,5 +7,6 @@ av avmedia\source\framework nmake - all av_framework NULL
av avmedia\source\win nmake - all av_win NULL
av avmedia\source\java nmake - all av_java NULL
av avmedia\source\quicktime nmake - all av_quicktime NULL
+av avmedia\source\macavf nmake - all av_macavf NULL
av avmedia\source\gstreamer nmake - all av_gstreamer NULL
av avmedia\util nmake - all av_util av_viewer av_framework av_win av_java av_quicktime av_gstreamer NULL
diff --git a/avmedia/prj/d.lst b/avmedia/prj/d.lst
index eb140ed45770..86c61195d68b 100644
--- a/avmedia/prj/d.lst
+++ b/avmedia/prj/d.lst
@@ -19,5 +19,7 @@ mkdir: %_DEST%\inc%_EXT%\avmedia
..\%__SRC%\misc\avmedia.component %_DEST%\xml%_EXT%\avmedia.component
..\%__SRC%\misc\avmedia.jar.component %_DEST%\xml%_EXT%\avmedia.jar.component
..\%__SRC%\misc\avmediaQuickTime.component %_DEST%\xml%_EXT%\avmediaQuickTime.component
+..\%__SRC%\misc\avmediaMacAVF.component %_DEST%\xml%_EXT%\avmediaMacAVF.component
..\%__SRC%\misc\avmediagst.component %_DEST%\xml%_EXT%\avmediagst.component
..\%__SRC%\misc\avmediawin.component %_DEST%\xml%_EXT%\avmediawin.component
+
diff --git a/avmedia/source/framework/soundhandler.cxx b/avmedia/source/framework/soundhandler.cxx
index b767d049a3c7..158494a2fac9 100644
--- a/avmedia/source/framework/soundhandler.cxx
+++ b/avmedia/source/framework/soundhandler.cxx
@@ -307,12 +307,12 @@ SoundHandler::~SoundHandler()
@short try to load audio file
@descr This method try to load given audio file by URL and play it. We use vcl/Sound class to do that.
- Playing of sound is asynchron everytime.
+ Playing of sound is asynchron every time.
@attention We must hold us alive by ourself ... because we use async. vcl sound player ... but playing is started
in async interface call "dispatch()" too. And caller forget us imediatly. But then our uno ref count
will decreased to 0 and will die. The only solution is to use own reference to our implementation.
- But we do it for realy started jobs only and release it during call back of vcl.
+ But we do it for really started jobs only and release it during call back of vcl.
@seealso class vcl/Sound
@seealso method implts_PlayerNotify()
@@ -391,7 +391,7 @@ void SAL_CALL SoundHandler::dispatch( const css::util::URL&
@attention a) We don't need any mutex here ... because we don't use any member!
b) Dont' use internal player instance "m_pPlayer" to detect given sound file!
- It's not neccessary to do that ... and we can use temp. variable to do the same.
+ It's not necessary to do that ... and we can use temp. variable to do the same.
This way is easy - we don't must synchronize it with currently played sounds!
Another reason to do so ... We are a listener on our internal ma_Player object.
If you would call "IsSoundFile()" on this instance, he would call us back and
@@ -407,7 +407,7 @@ void SAL_CALL SoundHandler::dispatch( const css::util::URL&
*//*-*************************************************************************************************************/
::rtl::OUString SAL_CALL SoundHandler::detect( css::uno::Sequence< css::beans::PropertyValue >& lDescriptor ) throw( css::uno::RuntimeException )
{
- // Our default is "nothing". So we can return it, if detection failed or fily type is realy unknown.
+ // Our default is "nothing". So we can return it, if detection failed or fily type is really unknown.
::rtl::OUString sTypeName;
// Analyze given descriptor to find filename or input stream or ...
@@ -440,7 +440,7 @@ void SAL_CALL SoundHandler::dispatch( const css::util::URL&
@seealso method dispatchWithNotification()
@param -
- @return 0 everytime ... it doesnt matter for us.
+ @return 0 every time ... it doesn't matter for us.
@onerror -
@threadsafe yes
diff --git a/avmedia/source/framework/soundhandler.hxx b/avmedia/source/framework/soundhandler.hxx
index 99587f094f16..012e21448065 100644
--- a/avmedia/source/framework/soundhandler.hxx
+++ b/avmedia/source/framework/soundhandler.hxx
@@ -90,7 +90,7 @@ class SoundHandler : // interfaces
, public css::frame::XNotifyingDispatch // => XDispatch
, public css::document::XExtendedFilterDetection
// baseclasses
- // Order is neccessary for right initialization!
+ // Order is necessary for right initialization!
, private ThreadHelpBase
, public ::cppu::OWeakObject
{
diff --git a/avmedia/source/inc/mediamisc.hxx b/avmedia/source/inc/mediamisc.hxx
index 12f58ab50542..ebc0bb3a6da2 100644
--- a/avmedia/source/inc/mediamisc.hxx
+++ b/avmedia/source/inc/mediamisc.hxx
@@ -39,7 +39,7 @@ class ResMgr;
#define AVMEDIA_MANAGER_SERVICE_NAME "com.sun.star.comp.avmedia.Manager_QuickTime"
#define AVMEDIA_MANAGER_SERVICE_IS_JAVABASED sal_False
-#define AVMEDIA_MANAGER_SERVICE_NAME_FALLBACK1 ""
+#define AVMEDIA_MANAGER_SERVICE_NAME_FALLBACK1 "com.sun.star.comp.avmedia.Manager_MacAVF"
#define AVMEDIA_MANAGER_SERVICE_IS_JAVABASED_FALLBACK1 sal_False
#else
diff --git a/avmedia/source/macavf/avmediaMacAVF.component b/avmedia/source/macavf/avmediaMacAVF.component
new file mode 100644
index 000000000000..6485b7043590
--- /dev/null
+++ b/avmedia/source/macavf/avmediaMacAVF.component
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--***********************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ ***********************************************************-->
+
+<component loader="com.sun.star.loader.SharedLibrary"
+ xmlns="http://openoffice.org/2010/uno-components">
+ <implementation name="com.sun.star.comp.avmedia.Manager_MacAVF">
+ <service name="com.sun.star.media.Manager_MacAVF"/>
+ </implementation>
+</component>
diff --git a/avmedia/source/macavf/macavf_common.hxx b/avmedia/source/macavf/macavf_common.hxx
new file mode 100644
index 000000000000..9b39b9f11a72
--- /dev/null
+++ b/avmedia/source/macavf/macavf_common.hxx
@@ -0,0 +1,89 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+#ifndef MACAVF_COMMON_HXX
+#define MACAVF_COMMON_HXX
+
+#ifdef MACOSX
+#include <premac.h>
+#import <Cocoa/Cocoa.h>
+#import <AVFoundation/AVFoundation.h>
+#include <postmac.h>
+#endif
+#include <osl/mutex.hxx>
+#include <rtl/ustring.hxx>
+#include <tools/debug.hxx>
+#include <tools/stream.hxx>
+#include <tools/string.hxx>
+#include <tools/urlobj.hxx>
+#include <cppuhelper/implbase1.hxx>
+#include <cppuhelper/implbase2.hxx>
+#include <cppuhelper/weak.hxx>
+#include <cppuhelper/factory.hxx>
+
+#include <com/sun/star/uno/Reference.h>
+#include <com/sun/star/uno/RuntimeException.hpp>
+#include <com/sun/star/lang/XMultiServiceFactory.hpp>
+#include <com/sun/star/lang/XComponent.hpp>
+#include <com/sun/star/registry/XRegistryKey.hpp>
+#include <com/sun/star/lang/XComponent.hpp>
+#include <com/sun/star/lang/XServiceInfo.hpp>
+#include <com/sun/star/awt/Rectangle.hpp>
+#include <com/sun/star/awt/KeyModifier.hpp>
+#include <com/sun/star/awt/MouseButton.hpp>
+#include <com/sun/star/media/XManager.hpp>
+
+
+#define AVMEDIA_MACAVF_MANAGER_IMPLEMENTATIONNAME "com.sun.star.comp.avmedia.Manager_MacAVF"
+#define AVMEDIA_MACAVF_MANAGER_SERVICENAME "com.sun.star.media.Manager_MacAVF"
+
+#define AVMEDIA_MACAVF_PLAYER_IMPLEMENTATIONNAME "com.sun.star.comp.avmedia.Player_MacAVF"
+#define AVMEDIA_MACAVF_PLAYER_SERVICENAME "com.sun.star.media.Player_MacAVF"
+
+#define AVMEDIA_MACAVF_WINDOW_IMPLEMENTATIONNAME "com.sun.star.comp.avmedia.Window_MacAVF"
+#define AVMEDIA_MACAVF_WINDOW_SERVICENAME "com.sun.star.media.Window_MacAVF"
+
+#define AVMEDIA_MACAVF_FRAMEGRABBER_IMPLEMENTATIONNAME "com.sun.star.comp.avmedia.FrameGrabber_MacAVF"
+#define AVMEDIA_MACAVF_FRAMEGRABBER_SERVICENAME "com.sun.star.media.FrameGrabber_MacAVF"
+
+
+// MacAVObserver handles the notifications used in the AVFoundation framework
+
+@interface MacAVObserverObject : NSObject
+- (void)observeValueForKeyPath:(NSString*)pKeyPath ofObject:(id)pObject change:(NSDictionary*)pChangeDict context:(void*)pContext;
+- (void)onNotification:(NSNotification*)pNotification;
+@end
+
+namespace avmedia { namespace macavf {
+
+class MacAVObserverHandler
+{
+private:
+ static MacAVObserverObject* mpMacAVObserverObject;
+public:
+ MacAVObserverObject* getObserver( void ) const;
+ virtual bool handleObservation( NSString* pKeyPath ) = 0;
+};
+
+}}
+
+#endif // MACAVF_COMMON_HXX
+
diff --git a/avmedia/source/macavf/macavf_framegrabber.cxx b/avmedia/source/macavf/macavf_framegrabber.cxx
new file mode 100644
index 000000000000..55611af6b35b
--- /dev/null
+++ b/avmedia/source/macavf/macavf_framegrabber.cxx
@@ -0,0 +1,143 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+#include "macavf_framegrabber.hxx"
+#include "macavf_player.hxx"
+
+#include <tools/stream.hxx>
+#include <vcl/graph.hxx>
+#include <vcl/cvtgrf.hxx>
+#include <unotools/localfilehelper.hxx>
+
+using namespace ::com::sun::star;
+
+namespace avmedia { namespace macavf {
+
+// ----------------
+// - FrameGrabber -
+// ----------------
+
+FrameGrabber::FrameGrabber( const uno::Reference< lang::XMultiServiceFactory >& /*rxMgr*/ )
+: mpImageGen( NULL )
+{}
+
+// ------------------------------------------------------------------------------
+
+FrameGrabber::~FrameGrabber()
+{
+ if( mpImageGen )
+ CFRelease( mpImageGen );
+}
+
+// ------------------------------------------------------------------------------
+
+bool FrameGrabber::create( const ::rtl::OUString& rURL )
+{
+ NSString* pNSStr = [NSString stringWithCharacters:rURL.getStr() length:rURL.getLength()];
+ NSURL* pNSURL = [NSURL URLWithString: [pNSStr stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];
+ AVAsset* pMovie = [AVURLAsset URLAssetWithURL:pNSURL options:nil];
+ if( !pMovie )
+ {
+ OSL_TRACE( "AVGrabber::create() cannot load url=\"%s\"", [pNSStr UTF8String] );
+ return false;
+ }
+
+ return create( pMovie );
+}
+
+// ------------------------------------------------------------------------------
+
+bool FrameGrabber::create( AVAsset* pMovie )
+{
+ if( [[pMovie tracksWithMediaType:AVMediaTypeVideo] count] == 0)
+ {
+ OSL_TRACE( "AVGrabber::create() found no video content!" );
+ return false;
+ }
+
+ mpImageGen = [AVAssetImageGenerator assetImageGeneratorWithAsset:pMovie];
+ CFRetain( mpImageGen );
+ return true;
+}
+
+// ------------------------------------------------------------------------------
+
+uno::Reference< graphic::XGraphic > SAL_CALL FrameGrabber::grabFrame( double fMediaTime )
+ throw (uno::RuntimeException)
+{
+ uno::Reference< graphic::XGraphic > xRet;
+ if( !mpImageGen )
+ return xRet;
+ OSL_TRACE( "AVPlayer::grabFrame( %.3fsec)", fMediaTime );
+
+ // get the requested image from the movie
+ CGImage* pCGImage = [mpImageGen copyCGImageAtTime:CMTimeMakeWithSeconds(fMediaTime,1000) actualTime:NULL error:NULL];
+
+ // convert the image to a TIFF-formatted byte-array
+ CFMutableDataRef pCFData = CFDataCreateMutable( kCFAllocatorDefault, 0 );
+ CGImageDestination* pCGImgDest = CGImageDestinationCreateWithData( pCFData, kUTTypeTIFF, 1, 0 );
+ CGImageDestinationAddImage( pCGImgDest, pCGImage, NULL );
+ CGImageDestinationFinalize( pCGImgDest );
+ CFRelease( pCGImgDest );
+ const long nBitmapLen = CFDataGetLength( pCFData );
+ void* pBitmapBytes = (void*)CFDataGetBytePtr( pCFData );
+
+ // convert the image into the return-value type which is a graphic::XGraphic
+ SvMemoryStream aMemStm( pBitmapBytes, nBitmapLen, STREAM_READ | STREAM_WRITE );
+ Graphic aGraphic;
+ if( GraphicConverter::Import( aMemStm, aGraphic, CVT_TIF ) == ERRCODE_NONE )
+ xRet = aGraphic.GetXGraphic();
+
+ // clean up resources
+ CFRelease( pCFData );
+ return xRet;
+}
+
+// ------------------------------------------------------------------------------
+
+::rtl::OUString SAL_CALL FrameGrabber::getImplementationName( )
+ throw (uno::RuntimeException)
+{
+ return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( AVMEDIA_MACAVF_FRAMEGRABBER_IMPLEMENTATIONNAME ) );
+}
+
+// ------------------------------------------------------------------------------
+
+sal_Bool SAL_CALL FrameGrabber::supportsService( const ::rtl::OUString& ServiceName )
+ throw (uno::RuntimeException)
+{
+ return ServiceName.equalsAsciiL( RTL_CONSTASCII_STRINGPARAM ( AVMEDIA_MACAVF_FRAMEGRABBER_SERVICENAME ) );
+}
+
+// ------------------------------------------------------------------------------
+
+uno::Sequence< ::rtl::OUString > SAL_CALL FrameGrabber::getSupportedServiceNames( )
+ throw (uno::RuntimeException)
+{
+ uno::Sequence< ::rtl::OUString > aRet(1);
+ aRet[0] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM ( AVMEDIA_MACAVF_FRAMEGRABBER_SERVICENAME ) );
+
+ return aRet;
+}
+
+} // namespace macavf
+} // namespace avmedia
+
diff --git a/avmedia/source/macavf/macavf_framegrabber.hxx b/avmedia/source/macavf/macavf_framegrabber.hxx
new file mode 100644
index 000000000000..940e54db4976
--- /dev/null
+++ b/avmedia/source/macavf/macavf_framegrabber.hxx
@@ -0,0 +1,66 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+
+#ifndef MACAVF_FRAMEGRABBER_HXX
+#define MACAVF_FRAMEGRABBER_HXX
+
+#include "macavf_common.hxx"
+
+#include "com/sun/star/media/XFrameGrabber.hdl"
+
+namespace avmedia { namespace macavf {
+
+// ----------------
+// - FrameGrabber -
+// ----------------
+
+class FrameGrabber : public ::cppu::WeakImplHelper2 < ::com::sun::star::media::XFrameGrabber,
+ ::com::sun::star::lang::XServiceInfo >
+{
+public:
+
+ explicit FrameGrabber( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& );
+ virtual ~FrameGrabber();
+
+ bool create( const ::rtl::OUString& rURL );
+ bool create( AVAsset* pMovie );
+
+ // XFrameGrabber
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::graphic::XGraphic > SAL_CALL grabFrame( double fMediaTime ) 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);
+
+private:
+
+ ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > mxMgr;
+
+ AVAssetImageGenerator* mpImageGen;
+};
+
+} // namespace macavf
+} // namespace avmedia
+
+#endif // MACAVF_FRAMEGRABBER_HXX
+
diff --git a/avmedia/source/macavf/macavf_macavfcommon.hxx b/avmedia/source/macavf/macavf_macavfcommon.hxx
new file mode 100644
index 000000000000..9b39b9f11a72
--- /dev/null
+++ b/avmedia/source/macavf/macavf_macavfcommon.hxx
@@ -0,0 +1,89 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+#ifndef MACAVF_COMMON_HXX
+#define MACAVF_COMMON_HXX
+
+#ifdef MACOSX
+#include <premac.h>
+#import <Cocoa/Cocoa.h>
+#import <AVFoundation/AVFoundation.h>
+#include <postmac.h>
+#endif
+#include <osl/mutex.hxx>
+#include <rtl/ustring.hxx>
+#include <tools/debug.hxx>
+#include <tools/stream.hxx>
+#include <tools/string.hxx>
+#include <tools/urlobj.hxx>
+#include <cppuhelper/implbase1.hxx>
+#include <cppuhelper/implbase2.hxx>
+#include <cppuhelper/weak.hxx>
+#include <cppuhelper/factory.hxx>
+
+#include <com/sun/star/uno/Reference.h>
+#include <com/sun/star/uno/RuntimeException.hpp>
+#include <com/sun/star/lang/XMultiServiceFactory.hpp>
+#include <com/sun/star/lang/XComponent.hpp>
+#include <com/sun/star/registry/XRegistryKey.hpp>
+#include <com/sun/star/lang/XComponent.hpp>
+#include <com/sun/star/lang/XServiceInfo.hpp>
+#include <com/sun/star/awt/Rectangle.hpp>
+#include <com/sun/star/awt/KeyModifier.hpp>
+#include <com/sun/star/awt/MouseButton.hpp>
+#include <com/sun/star/media/XManager.hpp>
+
+
+#define AVMEDIA_MACAVF_MANAGER_IMPLEMENTATIONNAME "com.sun.star.comp.avmedia.Manager_MacAVF"
+#define AVMEDIA_MACAVF_MANAGER_SERVICENAME "com.sun.star.media.Manager_MacAVF"
+
+#define AVMEDIA_MACAVF_PLAYER_IMPLEMENTATIONNAME "com.sun.star.comp.avmedia.Player_MacAVF"
+#define AVMEDIA_MACAVF_PLAYER_SERVICENAME "com.sun.star.media.Player_MacAVF"
+
+#define AVMEDIA_MACAVF_WINDOW_IMPLEMENTATIONNAME "com.sun.star.comp.avmedia.Window_MacAVF"
+#define AVMEDIA_MACAVF_WINDOW_SERVICENAME "com.sun.star.media.Window_MacAVF"
+
+#define AVMEDIA_MACAVF_FRAMEGRABBER_IMPLEMENTATIONNAME "com.sun.star.comp.avmedia.FrameGrabber_MacAVF"
+#define AVMEDIA_MACAVF_FRAMEGRABBER_SERVICENAME "com.sun.star.media.FrameGrabber_MacAVF"
+
+
+// MacAVObserver handles the notifications used in the AVFoundation framework
+
+@interface MacAVObserverObject : NSObject
+- (void)observeValueForKeyPath:(NSString*)pKeyPath ofObject:(id)pObject change:(NSDictionary*)pChangeDict context:(void*)pContext;
+- (void)onNotification:(NSNotification*)pNotification;
+@end
+
+namespace avmedia { namespace macavf {
+
+class MacAVObserverHandler
+{
+private:
+ static MacAVObserverObject* mpMacAVObserverObject;
+public:
+ MacAVObserverObject* getObserver( void ) const;
+ virtual bool handleObservation( NSString* pKeyPath ) = 0;
+};
+
+}}
+
+#endif // MACAVF_COMMON_HXX
+
diff --git a/avmedia/source/macavf/macavf_macavfuno.cxx b/avmedia/source/macavf/macavf_macavfuno.cxx
new file mode 100644
index 000000000000..470f95c8daa4
--- /dev/null
+++ b/avmedia/source/macavf/macavf_macavfuno.cxx
@@ -0,0 +1,70 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+#include "macavf_manager.hxx"
+
+using namespace ::com::sun::star;
+
+// -------------------
+// - factory methods -
+// -------------------
+
+static uno::Reference< uno::XInterface > SAL_CALL create_MediaPlayer( const uno::Reference< lang::XMultiServiceFactory >& rxFact )
+{
+ return uno::Reference< uno::XInterface >( *new ::avmedia::macavf::Manager( rxFact ) );
+}
+
+// ------------------------------------------
+// - component_getImplementationEnvironment -
+// ------------------------------------------
+
+extern "C" void SAL_CALL component_getImplementationEnvironment( const sal_Char ** ppEnvTypeName, uno_Environment ** /* ppEnv */ )
+{
+ *ppEnvTypeName = CPPU_CURRENT_LANGUAGE_BINDING_NAME;
+}
+
+// ------------------------
+// - component_getFactory -
+// ------------------------
+
+extern "C" void* SAL_CALL component_getFactory( const sal_Char* pImplName, void* pServiceManager, void* /* pRegistryKey */ )
+{
+ uno::Reference< lang::XSingleServiceFactory > xFactory;
+ void* pRet = 0;
+
+ if( rtl_str_compare( pImplName, AVMEDIA_MACAVF_MANAGER_IMPLEMENTATIONNAME ) == 0 )
+ {
+ const ::rtl::OUString aServiceName( ::rtl::OUString::createFromAscii( AVMEDIA_MACAVF_MANAGER_SERVICENAME ) );
+
+ xFactory = uno::Reference< lang::XSingleServiceFactory >( ::cppu::createSingleFactory(
+ reinterpret_cast< lang::XMultiServiceFactory* >( pServiceManager ),
+ ::rtl::OUString::createFromAscii( AVMEDIA_MACAVF_MANAGER_IMPLEMENTATIONNAME ),
+ create_MediaPlayer, uno::Sequence< ::rtl::OUString >( &aServiceName, 1 ) ) );
+ }
+
+ if( xFactory.is() )
+ {
+ xFactory->acquire();
+ pRet = xFactory.get();
+ }
+
+ return pRet;
+}
diff --git a/avmedia/source/macavf/macavf_manager.cxx b/avmedia/source/macavf/macavf_manager.cxx
new file mode 100644
index 000000000000..0ae907b81b58
--- /dev/null
+++ b/avmedia/source/macavf/macavf_manager.cxx
@@ -0,0 +1,91 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+#include "macavf_manager.hxx"
+#include "macavf_player.hxx"
+
+#include <tools/urlobj.hxx>
+
+using namespace ::com::sun::star;
+
+namespace avmedia { namespace macavf {
+
+// ----------------
+// - Manager -
+// ----------------
+
+Manager::Manager( const uno::Reference< lang::XMultiServiceFactory >& rxMgr ) :
+ mxMgr( rxMgr )
+{
+ OSL_TRACE( "Constructing avmedia::macavf::Manager" );
+}
+
+// ------------------------------------------------------------------------------
+
+Manager::~Manager()
+{}
+
+// ------------------------------------------------------------------------------
+
+uno::Reference< media::XPlayer > SAL_CALL Manager::createPlayer( const ::rtl::OUString& rURL )
+ throw (uno::RuntimeException)
+{
+ Player* pPlayer( new Player( mxMgr ) );
+ uno::Reference< media::XPlayer > xRet( pPlayer );
+ INetURLObject aURL( rURL );
+
+ OSL_TRACE( "avmediamacavf: Manager::createPlayer" );
+
+ if( !pPlayer->create( aURL.GetMainURL( INetURLObject::DECODE_UNAMBIGUOUS ) ) )
+ xRet = uno::Reference< media::XPlayer >();
+
+ return xRet;
+}
+
+// ------------------------------------------------------------------------------
+
+::rtl::OUString SAL_CALL Manager::getImplementationName( )
+ throw (uno::RuntimeException)
+{
+ return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( AVMEDIA_MACAVF_MANAGER_IMPLEMENTATIONNAME ) );
+}
+
+// ------------------------------------------------------------------------------
+
+sal_Bool SAL_CALL Manager::supportsService( const ::rtl::OUString& ServiceName )
+ throw (uno::RuntimeException)
+{
+ return ServiceName.equalsAsciiL( RTL_CONSTASCII_STRINGPARAM ( AVMEDIA_MACAVF_MANAGER_SERVICENAME ) );
+}
+
+// ------------------------------------------------------------------------------
+
+uno::Sequence< ::rtl::OUString > SAL_CALL Manager::getSupportedServiceNames( )
+ throw (uno::RuntimeException)
+{
+ uno::Sequence< ::rtl::OUString > aRet(1);
+ aRet[0] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM ( AVMEDIA_MACAVF_MANAGER_SERVICENAME ) );
+
+ return aRet;
+}
+
+} // namespace macavf
+} // namespace avmedia
diff --git a/avmedia/source/macavf/macavf_manager.hxx b/avmedia/source/macavf/macavf_manager.hxx
new file mode 100644
index 000000000000..d500aec7b909
--- /dev/null
+++ b/avmedia/source/macavf/macavf_manager.hxx
@@ -0,0 +1,59 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+#ifndef MACAVF_MANAGER_HXX
+#define MACAVF_MANAGER_HXX
+
+#include "macavf_common.hxx"
+
+#include "com/sun/star/media/XManager.hdl"
+
+// -----------
+// - Manager -
+// -----------
+
+namespace avmedia { namespace macavf {
+
+class Manager : public ::cppu::WeakImplHelper2 < ::com::sun::star::media::XManager,
+ ::com::sun::star::lang::XServiceInfo >
+{
+public:
+
+ Manager( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& rxMgr );
+ ~Manager();
+
+ // XManager
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::media::XPlayer > SAL_CALL createPlayer( const ::rtl::OUString& aURL ) 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);
+private:
+
+ ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > mxMgr;
+};
+
+} // namespace macavf
+} // namespace avmedia
+
+#endif // MACAVF_MANAGER_HXX
+
diff --git a/avmedia/source/macavf/macavf_player.cxx b/avmedia/source/macavf/macavf_player.cxx
new file mode 100644
index 000000000000..3a1882a095b3
--- /dev/null
+++ b/avmedia/source/macavf/macavf_player.cxx
@@ -0,0 +1,463 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+
+#include "macavf_player.hxx"
+#include "macavf_framegrabber.hxx"
+#include "macavf_window.hxx"
+
+#include <cmath> // for log10()
+
+using namespace ::com::sun::star;
+
+#include <hash_map>
+typedef std::hash_map<NSObject*,avmedia::macavf::MacAVObserverHandler*> HandlersForObject;
+
+@implementation MacAVObserverObject
+{
+ HandlersForObject maHandlersForObject;
+}
+- (void)observeValueForKeyPath:(NSString*)pKeyPath ofObject:(id)pObject change:(NSDictionary*)pChangeDict context:(void*)pContext
+{
+ NSString* pDictStr = [NSString stringWithFormat:@"%@", pChangeDict];
+ OSL_TRACE( "MacAVObserver::onKeyChange k=\"%s\" c=%s", [pKeyPath UTF8String], [pDictStr UTF8String]);
+ avmedia::macavf::MacAVObserverHandler* pHandler = (avmedia::macavf::MacAVObserverHandler*)pContext;
+ pHandler->handleObservation( pKeyPath );
+}
+
+- (void)onNotification:(NSNotification*)pNotification
+{
+ NSString* pNoteName = (NSString*)[pNotification name];
+ OSL_TRACE( "MacAVObserver::onNotification key=\"%s\"", [pNoteName UTF8String]);
+ HandlersForObject::iterator it = maHandlersForObject.find( [pNotification object]);
+ if( it != maHandlersForObject.end() )
+ (*it).second->handleObservation( pNoteName );
+}
+
+- (void)setHandlerForObject:(NSObject*)pObject handler:(avmedia::macavf::MacAVObserverHandler*)pHandler
+{
+ maHandlersForObject[ pObject] = pHandler;
+}
+
+- (void)removeHandlerForObject:(NSObject*)pObject
+{
+ maHandlersForObject.erase( pObject);
+}
+
+@end
+
+
+namespace avmedia { namespace macavf {
+
+MacAVObserverObject* MacAVObserverHandler::mpMacAVObserverObject = NULL;
+
+MacAVObserverObject* MacAVObserverHandler::getObserver() const
+{
+ if( !mpMacAVObserverObject)
+ {
+ mpMacAVObserverObject = [MacAVObserverObject alloc];
+ [mpMacAVObserverObject retain];
+ }
+ return mpMacAVObserverObject;
+}
+
+
+// ----------------
+// - Player -
+// ----------------
+
+Player::Player( const uno::Reference< lang::XMultiServiceFactory >& rxMgr )
+: mxMgr( rxMgr )
+, mpPlayer( NULL )
+, mfUnmutedVolume( 0 )
+, mfStopTime( DBL_MAX )
+, mbMuted( false )
+, mbLooping( false )
+{}
+
+// ------------------------------------------------------------------------------
+
+Player::~Player()
+{
+ if( !mpPlayer )
+ return;
+ // remove the observers
+ [mpPlayer removeObserver:getObserver() forKeyPath:@"currentItem.status"];
+ AVPlayerItem* pOldPlayerItem = [mpPlayer currentItem];
+ [[NSNotificationCenter defaultCenter] removeObserver:getObserver()
+ name:AVPlayerItemDidPlayToEndTimeNotification
+ object:pOldPlayerItem];
+ [getObserver() removeHandlerForObject:pOldPlayerItem];
+ // release the AVPlayer
+ CFRelease( mpPlayer );
+}
+
+// ------------------------------------------------------------------------------
+
+bool Player::handleObservation( NSString* pKeyPath )
+{
+ OSL_TRACE( "AVPlayer::handleObservation key=\"%s\"", [pKeyPath UTF8String]);
+ if( [pKeyPath isEqualToString:AVPlayerItemDidPlayToEndTimeNotification])
+ {
+ OSL_TRACE( "AVPlayer replay=%d", mbLooping);
+ if( mbLooping )
+ setMediaTime( 0.0);
+ }
+ return true;
+}
+
+// ------------------------------------------------------------------------------
+
+bool Player::create( const ::rtl::OUString& rURL )
+{
+ // get the media asset
+ NSString* aNSStr = [NSString stringWithCharacters:rURL.getStr() length:rURL.getLength()];
+ NSURL* aNSURL = [NSURL URLWithString: [aNSStr stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];
+ // get the matching AVPlayerItem
+ AVPlayerItem* pPlayerItem = [AVPlayerItem playerItemWithURL:aNSURL];
+
+ // create or update the AVPlayer with the new AVPlayerItem
+ if( !mpPlayer )
+ {
+ mpPlayer = [AVPlayer playerWithPlayerItem:pPlayerItem];
+ CFRetain( mpPlayer );
+ [mpPlayer setActionAtItemEnd:AVPlayerActionAtItemEndNone];
+ }
+ else
+ {
+ // remove the obsoleted observers
+ AVPlayerItem* pOldPlayerItem = [mpPlayer currentItem];
+ [mpPlayer removeObserver:getObserver() forKeyPath:@"currentItem.status"];
+ [getObserver() removeHandlerForObject:pOldPlayerItem];
+ [[NSNotificationCenter defaultCenter] removeObserver:getObserver()
+ name:AVPlayerItemDidPlayToEndTimeNotification
+ object:pOldPlayerItem];
+ // replace the playeritem
+ [mpPlayer replaceCurrentItemWithPlayerItem:pPlayerItem];
+ }
+
+ // observe the status of the current player item
+ [mpPlayer addObserver:getObserver() forKeyPath:@"currentItem.status" options:0 context:this];
+
+ // observe playback-end needed for playback looping
+ [[NSNotificationCenter defaultCenter] addObserver:getObserver()
+ selector:@selector(onNotification:)
+ name:AVPlayerItemDidPlayToEndTimeNotification
+ object:pPlayerItem];
+ [getObserver() setHandlerForObject:pPlayerItem handler:this];
+
+ return true;
+}
+
+// ------------------------------------------------------------------------------
+
+void SAL_CALL Player::start()
+ throw (uno::RuntimeException)
+{
+ if( !mpPlayer )
+ return;
+#if 0
+ const AVPlayerStatus eStatus = [mpPlayer status];
+ OSL_TRACE ("Player::start status=%d", (int)eStatus);
+ if( eStatus == AVPlayerStatusReadyToPlay)
+#endif
+ [mpPlayer play];
+ // else // TODO: delay until it becomes ready
+}
+
+// ------------------------------------------------------------------------------
+
+void SAL_CALL Player::stop()
+ throw (uno::RuntimeException)
+{
+ if( !mpPlayer )
+ return;
+ const bool bPlaying = isPlaying();
+ OSL_TRACE ("Player::stop() playing=%d", bPlaying);
+ if( bPlaying )
+ [mpPlayer pause];
+}
+
+// ------------------------------------------------------------------------------
+
+sal_Bool SAL_CALL Player::isPlaying()
+ throw (uno::RuntimeException)
+{
+ if( !mpPlayer )
+ return false;
+ const float fRate = [mpPlayer rate];
+ return (fRate != 0.0);
+}
+
+// ------------------------------------------------------------------------------
+
+double SAL_CALL Player::getDuration()
+ throw (uno::RuntimeException)
+{
+ // slideshow checks for non-zero duration, so cheat here
+ double duration = 0.01;
+
+ if( mpPlayer )
+ {
+ AVPlayerItem* pItem = [mpPlayer currentItem];
+ if( [pItem status] == AVPlayerItemStatusReadyToPlay )
+ duration = CMTimeGetSeconds( [pItem duration] );
+ else // fall back to AVAsset's best guess
+ duration = CMTimeGetSeconds( [[pItem asset] duration] );
+ }
+
+ return duration;
+}
+
+// ------------------------------------------------------------------------------
+
+void SAL_CALL Player::setMediaTime( double fTime )
+ throw (uno::RuntimeException)
+{
+ OSL_TRACE ("Player::setMediaTime( %.3fsec)", fTime);
+ if( mpPlayer )
+ [mpPlayer seekToTime: CMTimeMakeWithSeconds(fTime,1000) ];
+}
+
+// ------------------------------------------------------------------------------
+
+double SAL_CALL Player::getMediaTime()
+ throw (uno::RuntimeException)
+{
+ if( !mpPlayer )
+ return 0.0;
+
+ const double position = CMTimeGetSeconds( [mpPlayer currentTime] );
+ OSL_TRACE( "Player::getMediaTime() = %.3fsec", position);
+ if( position >= mfStopTime )
+ if( isPlaying() )
+ stop();
+
+ return position;
+}
+
+// ------------------------------------------------------------------------------
+
+void SAL_CALL Player::setStopTime( double fTime )
+ throw (uno::RuntimeException)
+{
+ OSL_TRACE ("Player::setStopTime( %.3fsec)", fTime);
+ mfStopTime = fTime;
+}
+
+// ------------------------------------------------------------------------------
+
+double SAL_CALL Player::getStopTime()
+ throw (uno::RuntimeException)
+{
+ return mfStopTime;
+}
+
+// ------------------------------------------------------------------------------
+
+void SAL_CALL Player::setRate( double fRate )
+ throw (uno::RuntimeException)
+{
+ OSL_TRACE ("Player::setRate( %.3f)", fRate);
+ if( !mpPlayer )
+ return;
+
+ // playback rate: 0 = stop, 1 = normal speed, 2 = double speed, -1 = normal speed backwards
+ [mpPlayer setRate: fRate];
+}
+
+// ------------------------------------------------------------------------------
+
+double SAL_CALL Player::getRate()
+ throw (uno::RuntimeException)
+{
+ // macavf: 0 = stop, 1 = normal speed, 2 = double speed, -1 = normal speed backwards
+ const double fRate = mpPlayer ? (double)[mpPlayer rate] : 1.0;
+ OSL_TRACE ("Player::getRate() = %.3f", fRate);
+ return fRate;
+}
+
+// ------------------------------------------------------------------------------
+
+void SAL_CALL Player::setPlaybackLoop( sal_Bool bSet )
+ throw (uno::RuntimeException)
+{
+ OSL_TRACE ("Player::setPlaybackLoop( %d)", bSet );
+ mbLooping = bSet;
+}
+
+// ------------------------------------------------------------------------------
+
+sal_Bool SAL_CALL Player::isPlaybackLoop()
+ throw (uno::RuntimeException)
+{
+ const bool bRet = mbLooping;
+ OSL_TRACE ("Player::isPlaybackLoop() = %d", bRet );
+ return bRet;
+}
+
+// ------------------------------------------------------------------------------
+
+void SAL_CALL Player::setMute( sal_Bool bSet )
+ throw (uno::RuntimeException)
+{
+ OSL_TRACE( "Player::setMute(%d), was-muted: %d unmuted-volume: %.3f", bSet, mbMuted, mfUnmutedVolume );
+
+ if( !mpPlayer )
+ return;
+
+ mbMuted = (bSet == TRUE);
+ [mpPlayer setMuted:mbMuted];
+}
+
+// ------------------------------------------------------------------------------
+
+sal_Bool SAL_CALL Player::isMute()
+ throw (uno::RuntimeException)
+{
+ OSL_TRACE ("Player::isMuted() = %d", mbMuted);
+ return mbMuted;
+}
+
+// ------------------------------------------------------------------------------
+
+void SAL_CALL Player::setVolumeDB( sal_Int16 nVolumeDB )
+ throw (uno::RuntimeException)
+{
+ // -40dB <-> AVPlayer volume 0.0
+ // 0dB <-> AVPlayer volume 1.0
+ mfUnmutedVolume = (nVolumeDB <= -40) ? 0.0 : pow( 10.0, nVolumeDB / 20.0 );
+ OSL_TRACE( "Player::setVolume(%ddB), muted=%d, unmuted-volume: %.3f", nVolumeDB, mbMuted, mfUnmutedVolume );
+
+ // change volume
+ if( !mbMuted && mpPlayer )
+ [mpPlayer setVolume:mfUnmutedVolume];
+}
+
+// ------------------------------------------------------------------------------
+
+sal_Int16 SAL_CALL Player::getVolumeDB()
+ throw (uno::RuntimeException)
+{
+ if( !mpPlayer )
+ return 0;
+
+ // get the actual volume
+ const float fVolume = [mpPlayer volume];
+
+ // convert into Dezibel value
+ // -40dB <-> AVPlayer volume 0.0
+ // 0dB <-> AVPlayer volume 1.0
+ const int nVolumeDB = (fVolume <= 0) ? -40 : lrint( 20.0*log10(fVolume));
+
+ return (sal_Int16)nVolumeDB;
+}
+
+// ------------------------------------------------------------------------------
+
+awt::Size SAL_CALL Player::getPreferredPlayerWindowSize()
+ throw (uno::RuntimeException)
+{
+ awt::Size aSize( 0, 0 ); // default size
+
+ AVAsset* pMovie = [[mpPlayer currentItem] asset];
+ NSArray* pVideoTracks = [pMovie tracksWithMediaType:AVMediaTypeVideo];
+ AVAssetTrack* pFirstVideoTrack = (AVAssetTrack*)[pVideoTracks firstObject];
+ if( pFirstVideoTrack )
+ {
+ const CGSize aPrefSize = [pFirstVideoTrack naturalSize];
+ aSize = awt::Size( aPrefSize.width, aPrefSize.height );
+ }
+
+ return aSize;
+}
+
+// ------------------------------------------------------------------------------
+
+uno::Reference< ::media::XPlayerWindow > SAL_CALL Player::createPlayerWindow( const uno::Sequence< uno::Any >& aArguments )
+ throw (uno::RuntimeException)
+{
+ // get the preferred window size
+ const awt::Size aSize( getPreferredPlayerWindowSize() );
+ OSL_TRACE( "Player::createPlayerWindow %dx%d argsLength: %d", aSize.Width, aSize.Height, aArguments.getLength() );
+
+ // get the parent view
+ sal_IntPtr nNSViewPtr = NULL;
+ aArguments[0] >>= nNSViewPtr;
+ NSView* pParentView = reinterpret_cast<NSView*>(nNSViewPtr);
+
+ // check the window parameters
+ uno::Reference< ::media::XPlayerWindow > xRet;
+ if( (aSize.Width <= 0) || (aSize.Height <= 0) || (pParentView == NULL) )
+ return xRet;
+
+ // create the window
+ ::avmedia::macavf::Window* pWindow = new ::avmedia::macavf::Window( mxMgr, *this, pParentView );
+ xRet = pWindow;
+ return xRet;
+}
+
+// ------------------------------------------------------------------------------
+
+uno::Reference< media::XFrameGrabber > SAL_CALL Player::createFrameGrabber()
+ throw (uno::RuntimeException)
+{
+ uno::Reference< media::XFrameGrabber > xRet;
+ OSL_TRACE ("Player::createFrameGrabber");
+
+ FrameGrabber* pGrabber = new FrameGrabber( mxMgr );
+ AVAsset* pMovie = [[mpPlayer currentItem] asset];
+ if( pGrabber->create( pMovie ) )
+ xRet = pGrabber;
+
+ return xRet;
+}
+
+// ------------------------------------------------------------------------------
+
+::rtl::OUString SAL_CALL Player::getImplementationName( )
+ throw (uno::RuntimeException)
+{
+ return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( AVMEDIA_MACAVF_PLAYER_IMPLEMENTATIONNAME ) );
+}
+
+// ------------------------------------------------------------------------------
+
+sal_Bool SAL_CALL Player::supportsService( const ::rtl::OUString& ServiceName )
+ throw (uno::RuntimeException)
+{
+ return ServiceName.equalsAsciiL( RTL_CONSTASCII_STRINGPARAM ( AVMEDIA_MACAVF_PLAYER_SERVICENAME ) );
+}
+
+// ------------------------------------------------------------------------------
+
+uno::Sequence< ::rtl::OUString > SAL_CALL Player::getSupportedServiceNames( )
+ throw (uno::RuntimeException)
+{
+ uno::Sequence< ::rtl::OUString > aRet(1);
+ aRet[0] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM ( AVMEDIA_MACAVF_PLAYER_SERVICENAME ) );
+
+ return aRet;
+}
+
+} // namespace macavf
+} // namespace avmedia
+
diff --git a/avmedia/source/macavf/macavf_player.hxx b/avmedia/source/macavf/macavf_player.hxx
new file mode 100644
index 000000000000..fc995516247b
--- /dev/null
+++ b/avmedia/source/macavf/macavf_player.hxx
@@ -0,0 +1,95 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+
+#ifndef MACAVF_PLAYER_HXX
+#define MACAVF_PLAYER_HXX
+
+#include <osl/conditn.h>
+#include "macavf_common.hxx"
+
+#include "com/sun/star/media/XPlayer.hdl"
+
+namespace avmedia { namespace macavf {
+
+/*
+// ----------
+// - Player -
+// ----------
+*/
+
+class Player
+: public MacAVObserverHandler
+, public ::cppu::WeakImplHelper2< ::com::sun::star::media::XPlayer,
+ ::com::sun::star::lang::XServiceInfo >
+{
+public:
+ explicit Player( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& );
+ virtual ~Player();
+
+ bool create( const ::rtl::OUString& rURL );
+ bool create( AVAsset* );
+
+ // XPlayer
+ virtual void SAL_CALL start() throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL stop() throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL isPlaying() throw (::com::sun::star::uno::RuntimeException);
+ virtual double SAL_CALL getDuration() throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL setMediaTime( double fTime ) throw (::com::sun::star::uno::RuntimeException);
+ virtual double SAL_CALL getMediaTime() throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL setStopTime( double fTime ) throw (::com::sun::star::uno::RuntimeException);
+ virtual double SAL_CALL getStopTime() throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL setRate( double fRate ) throw (::com::sun::star::uno::RuntimeException);
+ virtual double SAL_CALL getRate() throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL setPlaybackLoop( sal_Bool bSet ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL isPlaybackLoop() throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL setMute( sal_Bool bSet ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL isMute() throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL setVolumeDB( sal_Int16 nVolumeDB ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int16 SAL_CALL getVolumeDB() throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::awt::Size SAL_CALL getPreferredPlayerWindowSize( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::media::XPlayerWindow > SAL_CALL createPlayerWindow( const ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Any >& aArguments ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::media::XFrameGrabber > SAL_CALL createFrameGrabber( ) 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);
+
+ AVPlayer* getAVPlayer() const { return mpPlayer; }
+ virtual bool handleObservation( NSString* pKeyPath );
+
+private:
+ ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > mxMgr;
+
+ AVPlayer* mpPlayer;
+
+ float mfUnmutedVolume;
+ double mfStopTime;
+
+ bool mbMuted;
+ bool mbLooping;
+};
+
+} // namespace macavf
+} // namespace avmedia
+
+#endif // MACAVF_PLAYER_HXX
+
diff --git a/avmedia/source/macavf/macavf_uno.cxx b/avmedia/source/macavf/macavf_uno.cxx
new file mode 100644
index 000000000000..470f95c8daa4
--- /dev/null
+++ b/avmedia/source/macavf/macavf_uno.cxx
@@ -0,0 +1,70 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+#include "macavf_manager.hxx"
+
+using namespace ::com::sun::star;
+
+// -------------------
+// - factory methods -
+// -------------------
+
+static uno::Reference< uno::XInterface > SAL_CALL create_MediaPlayer( const uno::Reference< lang::XMultiServiceFactory >& rxFact )
+{
+ return uno::Reference< uno::XInterface >( *new ::avmedia::macavf::Manager( rxFact ) );
+}
+
+// ------------------------------------------
+// - component_getImplementationEnvironment -
+// ------------------------------------------
+
+extern "C" void SAL_CALL component_getImplementationEnvironment( const sal_Char ** ppEnvTypeName, uno_Environment ** /* ppEnv */ )
+{
+ *ppEnvTypeName = CPPU_CURRENT_LANGUAGE_BINDING_NAME;
+}
+
+// ------------------------
+// - component_getFactory -
+// ------------------------
+
+extern "C" void* SAL_CALL component_getFactory( const sal_Char* pImplName, void* pServiceManager, void* /* pRegistryKey */ )
+{
+ uno::Reference< lang::XSingleServiceFactory > xFactory;
+ void* pRet = 0;
+
+ if( rtl_str_compare( pImplName, AVMEDIA_MACAVF_MANAGER_IMPLEMENTATIONNAME ) == 0 )
+ {
+ const ::rtl::OUString aServiceName( ::rtl::OUString::createFromAscii( AVMEDIA_MACAVF_MANAGER_SERVICENAME ) );
+
+ xFactory = uno::Reference< lang::XSingleServiceFactory >( ::cppu::createSingleFactory(
+ reinterpret_cast< lang::XMultiServiceFactory* >( pServiceManager ),
+ ::rtl::OUString::createFromAscii( AVMEDIA_MACAVF_MANAGER_IMPLEMENTATIONNAME ),
+ create_MediaPlayer, uno::Sequence< ::rtl::OUString >( &aServiceName, 1 ) ) );
+ }
+
+ if( xFactory.is() )
+ {
+ xFactory->acquire();
+ pRet = xFactory.get();
+ }
+
+ return pRet;
+}
diff --git a/avmedia/source/macavf/macavf_window.cxx b/avmedia/source/macavf/macavf_window.cxx
new file mode 100644
index 000000000000..4e9f1a1831e6
--- /dev/null
+++ b/avmedia/source/macavf/macavf_window.cxx
@@ -0,0 +1,341 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+
+#include <com/sun/star/awt/SystemPointer.hpp>
+#include <com/sun/star/awt/PosSize.hpp>
+
+#include "macavf_window.hxx"
+#include "macavf_player.hxx"
+
+using namespace ::com::sun::star;
+
+
+namespace avmedia { namespace macavf {
+
+// ---------------
+// - Window -
+// ---------------
+
+Window::Window( const uno::Reference< lang::XMultiServiceFactory >& i_rxMgr, Player& i_rPlayer, NSView* i_pParentView )
+: mxMgr( i_rxMgr )
+, maListeners( maMutex )
+, meZoomLevel( media::ZoomLevel_NOT_AVAILABLE )
+, mrPlayer( i_rPlayer )
+, mnPointerType( awt::SystemPointer::ARROW )
+, mpView( i_pParentView )
+, mpPlayerLayer( NULL )
+{
+ OSL_TRACE ("Constructing an avmedia::macavf::Window");
+ if( !mpView ) // sanity check
+ return;
+
+ // check the media asset for video content
+ AVPlayer* pAVPlayer = mrPlayer.getAVPlayer();
+ AVAsset* pMovie = [[pAVPlayer currentItem] asset];
+ const int nVideoCount = [pMovie tracksWithMediaType:AVMediaTypeVideo].count;
+ const int nAudioCount = [pMovie tracksWithMediaType:AVMediaTypeAudio].count;
+ OSL_TRACE( "Found %d video and %d audio tracks.", nVideoCount, nAudioCount );
+ (void)nAudioCount;
+ if( nVideoCount <= 0 )
+ return;
+
+ // setup the AVPlayerLayer
+ [pAVPlayer retain];
+ [pAVPlayer pause];
+ mpPlayerLayer = [AVPlayerLayer playerLayerWithPlayer:pAVPlayer];
+ [mpPlayerLayer retain];
+ [mpPlayerLayer setFrame:[mpView frame]];
+ [mpPlayerLayer setHidden:YES];
+ [mpPlayerLayer setVideoGravity:AVLayerVideoGravityResizeAspectFill];
+ [mpPlayerLayer addObserver:getObserver() forKeyPath:@"readyForDisplay" options:0 context:this];
+
+ // setup the target view
+ [mpView setWantsLayer:YES];
+ [mpView.layer addSublayer:mpPlayerLayer];
+}
+
+// ------------------------------------------------------------------------------
+
+Window::~Window()
+{
+ [mpPlayerLayer removeObserver:getObserver() forKeyPath:@"readyForDisplay"];
+ [mpPlayerLayer release];
+}
+
+// ------------------------------------------------------------------------------
+
+bool Window::create( const ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Any >& aArguments )
+{
+ return true;
+}
+
+// ------------------------------------------------------------------------------
+
+bool Window::handleObservation( NSString* pKeyPath )
+{
+ OSL_TRACE( "AVPlayer::handleObservation key=\"%s\"", [pKeyPath UTF8String]);
+ const BOOL bReadyForDisplay = [mpPlayerLayer isReadyForDisplay];
+ [mpPlayerLayer setHidden:!bReadyForDisplay];
+ return true;
+}
+
+// XPlayerWindow
+// ------------------------------------------------------------------------------
+
+void SAL_CALL Window::update()
+ throw (uno::RuntimeException)
+{}
+
+// ------------------------------------------------------------------------------
+
+sal_Bool SAL_CALL Window::setZoomLevel( media::ZoomLevel eZoomLevel )
+ throw (uno::RuntimeException)
+{
+ return false;
+}
+
+// ------------------------------------------------------------------------------
+
+media::ZoomLevel SAL_CALL Window::getZoomLevel( )
+ throw (uno::RuntimeException)
+{
+ return meZoomLevel;
+}
+
+// ------------------------------------------------------------------------------
+
+void SAL_CALL Window::setPointerType( sal_Int32 nPointerType )
+ throw (uno::RuntimeException)
+{
+ mnPointerType = nPointerType;
+}
+
+// XWindow
+// ------------------------------------------------------------------------------
+
+void SAL_CALL Window::setPosSize( sal_Int32 X, sal_Int32 Y, sal_Int32 Width, sal_Int32 Height, sal_Int16 Flags )
+ throw (uno::RuntimeException)
+{
+ OSL_TRACE( "AVWindow::setPosSize( %dx%d%+d%+d)", (int)Width,(int)Height,(int)X,(int)Y);//######
+ if( !mpView )
+ return;
+ NSRect aRect = [mpView frame];
+ // NOTE: if( (Flags & awt::PosSize::WIDTH) )
+ aRect.size.width = Width;
+ // NOTE: if( (Flags & awt::PosSize::HEIGHT) )
+ aRect.size.height = Height;
+
+ [mpView setFrameSize: aRect.size];
+ [mpPlayerLayer setFrame: [mpView frame]];
+}
+
+// ------------------------------------------------------------------------------
+
+awt::Rectangle SAL_CALL Window::getPosSize()
+ throw (uno::RuntimeException)
+{
+ awt::Rectangle aRet;
+
+ NSRect aRect = [mpView frame];
+ aRet.X = aRet.Y = 0;
+ aRet.Width = aRect.size.width;
+ aRet.Height = aRect.size.height;
+
+ return aRet;
+}
+
+// ------------------------------------------------------------------------------
+
+void SAL_CALL Window::setVisible( sal_Bool bVisible )
+ throw (uno::RuntimeException)
+{
+ OSL_TRACE ("Window::setVisible(%d)", bVisible);
+}
+
+// ------------------------------------------------------------------------------
+
+void SAL_CALL Window::setEnable( sal_Bool bEnable )
+ throw (uno::RuntimeException)
+{
+ OSL_TRACE ("Window::setEnable(%d)", bEnable);
+}
+
+// ------------------------------------------------------------------------------
+
+void SAL_CALL Window::setFocus()
+ throw (uno::RuntimeException)
+{
+ OSL_TRACE ("Window::setFocus");
+}
+
+// ------------------------------------------------------------------------------
+
+void SAL_CALL Window::addWindowListener( const uno::Reference< awt::XWindowListener >& xListener )
+ throw (uno::RuntimeException)
+{
+ maListeners.addInterface( getCppuType( &xListener ), xListener );
+}
+
+// ------------------------------------------------------------------------------
+
+void SAL_CALL Window::removeWindowListener( const uno::Reference< awt::XWindowListener >& xListener )
+ throw (uno::RuntimeException)
+{
+ maListeners.removeInterface( getCppuType( &xListener ), xListener );
+}
+
+// ------------------------------------------------------------------------------
+
+void SAL_CALL Window::addFocusListener( const uno::Reference< awt::XFocusListener >& xListener )
+ throw (uno::RuntimeException)
+{
+ maListeners.addInterface( getCppuType( &xListener ), xListener );
+}
+
+// ------------------------------------------------------------------------------
+
+void SAL_CALL Window::removeFocusListener( const uno::Reference< awt::XFocusListener >& xListener )
+ throw (uno::RuntimeException)
+{
+ maListeners.removeInterface( getCppuType( &xListener ), xListener );
+}
+
+// ------------------------------------------------------------------------------
+
+void SAL_CALL Window::addKeyListener( const uno::Reference< awt::XKeyListener >& xListener )
+ throw (uno::RuntimeException)
+{
+ maListeners.addInterface( getCppuType( &xListener ), xListener );
+}
+
+// ------------------------------------------------------------------------------
+
+void SAL_CALL Window::removeKeyListener( const uno::Reference< awt::XKeyListener >& xListener )
+ throw (uno::RuntimeException)
+{
+ maListeners.removeInterface( getCppuType( &xListener ), xListener );
+}
+
+// ------------------------------------------------------------------------------
+
+void SAL_CALL Window::addMouseListener( const uno::Reference< awt::XMouseListener >& xListener )
+ throw (uno::RuntimeException)
+{
+ maListeners.addInterface( getCppuType( &xListener ), xListener );
+}
+
+// ------------------------------------------------------------------------------
+
+void SAL_CALL Window::removeMouseListener( const uno::Reference< awt::XMouseListener >& xListener )
+ throw (uno::RuntimeException)
+{
+ maListeners.removeInterface( getCppuType( &xListener ), xListener );
+}
+
+// ------------------------------------------------------------------------------
+
+void SAL_CALL Window::addMouseMotionListener( const uno::Reference< awt::XMouseMotionListener >& xListener )
+ throw (uno::RuntimeException)
+{
+ maListeners.addInterface( getCppuType( &xListener ), xListener );
+}
+
+// ------------------------------------------------------------------------------
+
+void SAL_CALL Window::removeMouseMotionListener( const uno::Reference< awt::XMouseMotionListener >& xListener )
+ throw (uno::RuntimeException)
+{
+ maListeners.removeInterface( getCppuType( &xListener ), xListener );
+}
+
+// ------------------------------------------------------------------------------
+
+void SAL_CALL Window::addPaintListener( const uno::Reference< awt::XPaintListener >& xListener )
+ throw (uno::RuntimeException)
+{
+ maListeners.addInterface( getCppuType( &xListener ), xListener );
+}
+
+// ------------------------------------------------------------------------------
+
+void SAL_CALL Window::removePaintListener( const uno::Reference< awt::XPaintListener >& xListener )
+ throw (uno::RuntimeException)
+{
+ maListeners.removeInterface( getCppuType( &xListener ), xListener );
+}
+
+
+// XComponent
+// ------------------------------------------------------------------------------
+
+void SAL_CALL Window::dispose( )
+ throw (uno::RuntimeException)
+{
+}
+
+// ------------------------------------------------------------------------------
+
+void SAL_CALL Window::addEventListener( const uno::Reference< lang::XEventListener >& xListener )
+ throw (uno::RuntimeException)
+{
+ maListeners.addInterface( getCppuType( &xListener ), xListener );
+}
+
+// ------------------------------------------------------------------------------
+
+void SAL_CALL Window::removeEventListener( const uno::Reference< lang::XEventListener >& xListener )
+ throw (uno::RuntimeException)
+{
+ maListeners.removeInterface( getCppuType( &xListener ), xListener );
+}
+
+// XServiceInfo
+// ------------------------------------------------------------------------------
+
+::rtl::OUString SAL_CALL Window::getImplementationName( )
+ throw (uno::RuntimeException)
+{
+ return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( AVMEDIA_MACAVF_WINDOW_IMPLEMENTATIONNAME ) );
+}
+
+// ------------------------------------------------------------------------------
+
+sal_Bool SAL_CALL Window::supportsService( const ::rtl::OUString& ServiceName )
+ throw (uno::RuntimeException)
+{
+ return ServiceName.equalsAsciiL( RTL_CONSTASCII_STRINGPARAM ( AVMEDIA_MACAVF_WINDOW_SERVICENAME ) );
+}
+
+// ------------------------------------------------------------------------------
+
+uno::Sequence< ::rtl::OUString > SAL_CALL Window::getSupportedServiceNames( )
+ throw (uno::RuntimeException)
+{
+ uno::Sequence< ::rtl::OUString > aRet(1);
+ aRet[0] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM ( AVMEDIA_MACAVF_WINDOW_SERVICENAME ) );
+
+ return aRet;
+}
+
+} // namespace macavf
+} // namespace avmedia
+
diff --git a/avmedia/source/macavf/macavf_window.hxx b/avmedia/source/macavf/macavf_window.hxx
new file mode 100644
index 000000000000..1689efdadec4
--- /dev/null
+++ b/avmedia/source/macavf/macavf_window.hxx
@@ -0,0 +1,124 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+#ifndef MACAVF_WINDOW_HXX
+#define MACAVF_WINDOW_HXX
+
+#include "macavf_common.hxx"
+
+#include <cppuhelper/interfacecontainer.h>
+
+#include "com/sun/star/media/XPlayerWindow.hdl"
+
+// ---------------
+// - MyMediaView -
+// ---------------
+
+@interface MyMediaView : NSView
+@property (nonatomic, readonly, strong) AVPlayer* player;
+@property (nonatomic, readonly, strong) AVPlayerLayer* playerLayer;
+@property (nonatomic, retain) NSURL* videoURL;
+- (void) play;
+@end
+
+namespace avmedia { namespace macavf {
+
+// ---------------
+// - Window -
+// ---------------
+
+class Player;
+
+class Window
+: public MacAVObserverHandler
+, public ::cppu::WeakImplHelper2 < ::com::sun::star::media::XPlayerWindow,
+ ::com::sun::star::lang::XServiceInfo >
+{
+public:
+
+ Window( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& i_rxMgr,
+ Player& i_rPlayer,
+ NSView* i_pParentView
+ );
+ virtual ~Window();
+
+ bool create( const ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Any >& aArguments );
+ void processGraphEvent();
+ void updatePointer();
+
+ // XPlayerWindow
+ virtual void SAL_CALL update( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL setZoomLevel( ::com::sun::star::media::ZoomLevel ZoomLevel ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::media::ZoomLevel SAL_CALL getZoomLevel( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL setPointerType( sal_Int32 nPointerType ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XWindow
+ virtual void SAL_CALL setPosSize( sal_Int32 X, sal_Int32 Y, sal_Int32 Width, sal_Int32 Height, sal_Int16 Flags ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::awt::Rectangle SAL_CALL getPosSize( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL setVisible( sal_Bool Visible ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL setEnable( sal_Bool Enable ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL setFocus( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL addWindowListener( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindowListener >& xListener ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL removeWindowListener( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindowListener >& xListener ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL addFocusListener( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XFocusListener >& xListener ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL removeFocusListener( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XFocusListener >& xListener ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL addKeyListener( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XKeyListener >& xListener ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL removeKeyListener( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XKeyListener >& xListener ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL addMouseListener( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XMouseListener >& xListener ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL removeMouseListener( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XMouseListener >& xListener ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL addMouseMotionListener( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XMouseMotionListener >& xListener ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL removeMouseMotionListener( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XMouseMotionListener >& xListener ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL addPaintListener( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XPaintListener >& xListener ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL removePaintListener( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XPaintListener >& xListener ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XComponent
+ virtual void SAL_CALL dispose( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL addEventListener( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XEventListener >& xListener ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL removeEventListener( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XEventListener >& aListener ) 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);
+
+ virtual bool handleObservation( NSString* pKeyPath );
+
+private:
+
+ ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > mxMgr;
+
+ ::osl::Mutex maMutex;
+ ::cppu::OMultiTypeInterfaceContainerHelper maListeners;
+ ::com::sun::star::media::ZoomLevel meZoomLevel;
+ Player& mrPlayer;
+ int mnPointerType;
+
+ NSView* mpView; // parent-view == movie-view
+ AVPlayerLayer* mpPlayerLayer;
+
+ void ImplLayoutVideoWindow();
+};
+
+} // namespace macavf
+} // namespace avmedia
+
+#endif // _WINDOW_HXX
+
diff --git a/avmedia/source/macavf/makefile.mk b/avmedia/source/macavf/makefile.mk
new file mode 100644
index 000000000000..ed70a350329e
--- /dev/null
+++ b/avmedia/source/macavf/makefile.mk
@@ -0,0 +1,89 @@
+#**************************************************************
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+#**************************************************************
+
+PRJ=..$/..
+PRJNAME=avmedia
+TARGET=avmediaMacAVF
+
+.IF "$(GUIBASE)" != "aqua"
+dummy:
+ @echo " Nothing to build for GUIBASE=$(GUIBASE)"
+.ELSE
+
+# --- Settings ----------------------------------
+
+.INCLUDE : settings.mk
+
+.IF "$(verbose)"!="" || "$(VERBOSE)"!=""
+CDEFS+= -DVERBOSE
+.ENDIF
+
+# --- Files ----------------------------------
+
+CFLAGSCXX+=$(OBJCXXFLAGS)
+
+SLOFILES= \
+ $(SLO)$/macavf_uno.obj \
+ $(SLO)$/macavf_framegrabber.obj \
+ $(SLO)$/macavf_manager.obj \
+ $(SLO)$/macavf_window.obj \
+ $(SLO)$/macavf_player.obj
+
+EXCEPTIONSFILES= \
+ $(SLO)$/macavf_framegrabber.obj \
+ $(SLO)$/macavf_uno.obj
+
+SHL1TARGET= $(TARGET)$(DLLPOSTFIX)
+
+SHL1STDLIBS= \
+ $(CPPULIB) \
+ $(SALLIB) \
+ $(COMPHELPERLIB) \
+ $(CPPUHELPERLIB) \
+ $(TOOLSLIB) \
+ $(VCLLIB)
+
+SHL1STDLIBS+= \
+ -framework Cocoa \
+ -framework AVFoundation \
+ -framework CoreMedia
+
+# build DLL
+SHL1LIBS=$(SLB)$/$(TARGET).lib
+SHL1IMPLIB=i$(TARGET)
+SHL1DEF=$(MISC)$/$(SHL1TARGET).def
+
+SHL1VERSIONMAP=$(SOLARENV)/src/component.map
+
+# --- Targets ------------------------------------------------------
+
+.INCLUDE : target.mk
+
+.ENDIF
+
+ALLTAR : $(MISC)/avmediaMacAVF.component
+
+$(MISC)/avmediaMacAVF.component .ERRREMOVE : \
+ $(SOLARENV)/bin/createcomponent.xslt avmediaMacAVF.component
+ $(XSLTPROC) --nonet --stringparam uri \
+ '$(COMPONENTPREFIX_BASIS_NATIVE)$(SHL1TARGETN:f)' -o $@ \
+ $(SOLARENV)/bin/createcomponent.xslt avmediaMacAVF.component
+
diff --git a/avmedia/source/quicktime/makefile.mk b/avmedia/source/quicktime/makefile.mk
index 808360fac5fa..a45a8b3c22ff 100644
--- a/avmedia/source/quicktime/makefile.mk
+++ b/avmedia/source/quicktime/makefile.mk
@@ -26,7 +26,7 @@ PRJNAME=avmedia
TARGET=avmediaQuickTime
# the QuickTime API has been deprecated since OSX 10.5 and has been removed in the OSX SDK 10.7
-.IF ("$(GUIBASE)" != "aqua") || ("${MACOSX_DEPLOYMENT_TARGET:s/.//}" >= "106")
+.IF "$(GUIBASE)" != "aqua"
dummy:
@echo " Nothing to build for GUIBASE=$(GUIBASE) and OSX$(MACOSX_DEPLOYMENT_TARGET)"
.ELSE
@@ -44,15 +44,15 @@ CDEFS+= -DVERBOSE
CFLAGSCXX+=$(OBJCXXFLAGS)
SLOFILES= \
- $(SLO)$/quicktimeuno.obj \
- $(SLO)$/framegrabber.obj \
- $(SLO)$/manager.obj \
- $(SLO)$/window.obj \
- $(SLO)$/player.obj
+ $(SLO)$/qt_uno.obj \
+ $(SLO)$/qt_framegrabber.obj \
+ $(SLO)$/qt_manager.obj \
+ $(SLO)$/qt_window.obj \
+ $(SLO)$/qt_player.obj
EXCEPTIONSFILES= \
- $(SLO)$/framegrabber.obj \
- $(SLO)$/quicktimeuno.obj
+ $(SLO)$/qt_framegrabber.obj \
+ $(SLO)$/qt_uno.obj
SHL1TARGET= $(TARGET)$(DLLPOSTFIX)
diff --git a/avmedia/source/quicktime/qt_common.hxx b/avmedia/source/quicktime/qt_common.hxx
new file mode 100644
index 000000000000..410f19ff6236
--- /dev/null
+++ b/avmedia/source/quicktime/qt_common.hxx
@@ -0,0 +1,65 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+
+#ifndef QT_COMMON_HXX
+#define QT_COMMON_HXX
+
+#ifdef MACOSX
+#include <premac.h>
+#import <Cocoa/Cocoa.h>
+#import <QTKit/QTKit.h>
+#include <postmac.h>
+#endif
+#include <osl/mutex.hxx>
+#include <rtl/ustring.hxx>
+#include <tools/debug.hxx>
+#include <tools/stream.hxx>
+#include <tools/string.hxx>
+#include <tools/urlobj.hxx>
+#include <cppuhelper/implbase1.hxx>
+#include <cppuhelper/implbase2.hxx>
+#include <cppuhelper/weak.hxx>
+#include <cppuhelper/factory.hxx>
+
+#include <com/sun/star/uno/Reference.h>
+#include <com/sun/star/uno/RuntimeException.hpp>
+#include <com/sun/star/lang/XMultiServiceFactory.hpp>
+#include <com/sun/star/lang/XComponent.hpp>
+#include <com/sun/star/registry/XRegistryKey.hpp>
+#include <com/sun/star/lang/XComponent.hpp>
+#include <com/sun/star/lang/XServiceInfo.hpp>
+#include <com/sun/star/awt/Rectangle.hpp>
+#include <com/sun/star/awt/KeyModifier.hpp>
+#include <com/sun/star/awt/MouseButton.hpp>
+#include <com/sun/star/media/XManager.hpp>
+
+#define AVMEDIA_QUICKTIME_MANAGER_IMPLEMENTATIONNAME "com.sun.star.comp.avmedia.Manager_QuickTime"
+#define AVMEDIA_QUICKTIME_MANAGER_SERVICENAME "com.sun.star.media.Manager_QuickTime"
+
+#define AVMEDIA_QUICKTIME_PLAYER_IMPLEMENTATIONNAME "com.sun.star.comp.avmedia.Player_QuickTime"
+#define AVMEDIA_QUICKTIME_PLAYER_SERVICENAME "com.sun.star.media.Player_QuickTime"
+
+#define AVMEDIA_QUICKTIME_WINDOW_IMPLEMENTATIONNAME "com.sun.star.comp.avmedia.Window_QuickTime"
+#define AVMEDIA_QUICKTIME_WINDOW_SERVICENAME "com.sun.star.media.Window_QuickTime"
+
+#endif // QT_COMMOM_HXX
+
diff --git a/avmedia/source/quicktime/qt_framegrabber.cxx b/avmedia/source/quicktime/qt_framegrabber.cxx
new file mode 100644
index 000000000000..90d19d033a79
--- /dev/null
+++ b/avmedia/source/quicktime/qt_framegrabber.cxx
@@ -0,0 +1,142 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+
+#include "qt_framegrabber.hxx"
+#include "qt_player.hxx"
+
+#include <tools/stream.hxx>
+#include <vcl/graph.hxx>
+#include <vcl/cvtgrf.hxx>
+#include <unotools/localfilehelper.hxx>
+
+#define AVMEDIA_QUICKTIME_FRAMEGRABBER_IMPLEMENTATIONNAME "com.sun.star.comp.avmedia.FrameGrabber_Quicktime"
+#define AVMEDIA_QUICKTIME_FRAMEGRABBER_SERVICENAME "com.sun.star.media.FrameGrabber_Quicktime"
+
+using namespace ::com::sun::star;
+
+namespace avmedia { namespace quicktime {
+
+// ----------------
+// - FrameGrabber -
+// ----------------
+
+FrameGrabber::FrameGrabber( const uno::Reference< lang::XMultiServiceFactory >& rxMgr ) :
+ mxMgr( rxMgr )
+{
+ OSErr result;
+
+ NSAutoreleasePool* pool = [[NSAutoreleasePool alloc] init];
+ // we have version 7.01 or later, initialize
+ mpMovie = [QTMovie movie];
+ [mpMovie retain];
+ mbInitialized = true;
+ [pool release];
+}
+
+// ------------------------------------------------------------------------------
+
+FrameGrabber::~FrameGrabber()
+{
+ if( mbInitialized )
+ {
+ if( mpMovie )
+ {
+ [mpMovie release];
+ mpMovie = nil;
+ }
+ }
+}
+
+// ------------------------------------------------------------------------------
+
+bool FrameGrabber::create( const ::rtl::OUString& rURL )
+{
+ bool bRet = false;
+ maURL = rURL;
+ NSAutoreleasePool* pool = [[NSAutoreleasePool alloc] init];
+ NSString* aNSStr = [[[NSString alloc] initWithCharacters: rURL.getStr() length: rURL.getLength()]stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding] ;
+ NSURL* aURL = [NSURL URLWithString:aNSStr ];
+
+ // create the Movie
+
+ mpMovie = [mpMovie initWithURL:aURL error:nil];
+ if(mpMovie)
+ {
+ [mpMovie retain];
+ bRet = true;
+ }
+
+ [pool release];
+
+ return( bRet );
+}
+
+// ------------------------------------------------------------------------------
+
+uno::Reference< graphic::XGraphic > SAL_CALL FrameGrabber::grabFrame( double fMediaTime )
+ throw (uno::RuntimeException)
+{
+ uno::Reference< graphic::XGraphic > xRet;
+
+ NSImage* pImage = [mpMovie frameImageAtTime: QTMakeTimeWithTimeInterval(fMediaTime)];
+ NSData *pBitmap = [pImage TIFFRepresentation];
+ long nSize = [pBitmap length];
+ const void* pBitmapData = [pBitmap bytes];
+ SvMemoryStream aMemStm( (char *)pBitmapData, nSize, STREAM_READ | STREAM_WRITE );
+ Graphic aGraphic;
+ if ( GraphicConverter::Import( aMemStm, aGraphic, CVT_TIF ) == ERRCODE_NONE )
+ {
+ xRet = aGraphic.GetXGraphic();
+ }
+
+ return xRet;
+}
+
+// ------------------------------------------------------------------------------
+
+::rtl::OUString SAL_CALL FrameGrabber::getImplementationName( )
+ throw (uno::RuntimeException)
+{
+ return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( AVMEDIA_QUICKTIME_FRAMEGRABBER_IMPLEMENTATIONNAME ) );
+}
+
+// ------------------------------------------------------------------------------
+
+sal_Bool SAL_CALL FrameGrabber::supportsService( const ::rtl::OUString& ServiceName )
+ throw (uno::RuntimeException)
+{
+ return ServiceName.equalsAsciiL( RTL_CONSTASCII_STRINGPARAM ( AVMEDIA_QUICKTIME_FRAMEGRABBER_SERVICENAME ) );
+}
+
+// ------------------------------------------------------------------------------
+
+uno::Sequence< ::rtl::OUString > SAL_CALL FrameGrabber::getSupportedServiceNames( )
+ throw (uno::RuntimeException)
+{
+ uno::Sequence< ::rtl::OUString > aRet(1);
+ aRet[0] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM ( AVMEDIA_QUICKTIME_FRAMEGRABBER_SERVICENAME ) );
+
+ return aRet;
+}
+
+} // namespace quicktime
+} // namespace avmedia
diff --git a/avmedia/source/quicktime/qt_framegrabber.hxx b/avmedia/source/quicktime/qt_framegrabber.hxx
new file mode 100644
index 000000000000..cc0a6b18ec9a
--- /dev/null
+++ b/avmedia/source/quicktime/qt_framegrabber.hxx
@@ -0,0 +1,67 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+
+#ifndef QT_FRAMEGRABBER_HXX
+#define QT_FRAMEGRABBER_HXX
+
+#include "qt_common.hxx"
+
+#include "com/sun/star/media/XFrameGrabber.hdl"
+
+namespace avmedia { namespace quicktime {
+
+// ----------------
+// - FrameGrabber -
+// ----------------
+
+class FrameGrabber : public ::cppu::WeakImplHelper2 < ::com::sun::star::media::XFrameGrabber,
+ ::com::sun::star::lang::XServiceInfo >
+{
+public:
+
+ FrameGrabber( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& rxMgr );
+ ~FrameGrabber();
+
+ bool create( const ::rtl::OUString& rURL );
+
+ // XFrameGrabber
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::graphic::XGraphic > SAL_CALL grabFrame( double fMediaTime ) 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);
+
+private:
+
+ ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > mxMgr;
+ ::rtl::OUString maURL;
+ QTMovie* mpMovie;
+ sal_Bool mbInitialized;
+ long mnVersion;
+};
+
+} // namespace quicktime
+} // namespace avmedia
+
+#endif // QT_FRAMEGRABBER_HXX
+
diff --git a/avmedia/source/quicktime/qt_manager.cxx b/avmedia/source/quicktime/qt_manager.cxx
new file mode 100644
index 000000000000..7fa4d0adc1cd
--- /dev/null
+++ b/avmedia/source/quicktime/qt_manager.cxx
@@ -0,0 +1,92 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+
+#include "qt_manager.hxx"
+#include "qt_player.hxx"
+
+#include <tools/urlobj.hxx>
+
+using namespace ::com::sun::star;
+
+namespace avmedia { namespace quicktime {
+// ----------------
+// - Manager -
+// ----------------
+
+Manager::Manager( const uno::Reference< lang::XMultiServiceFactory >& rxMgr ) :
+ mxMgr( rxMgr )
+{
+ OSL_TRACE( "avmediaquicktime: Manager::Manager" );
+}
+
+// ------------------------------------------------------------------------------
+
+Manager::~Manager()
+{
+}
+
+// ------------------------------------------------------------------------------
+
+uno::Reference< media::XPlayer > SAL_CALL Manager::createPlayer( const ::rtl::OUString& rURL )
+ throw (uno::RuntimeException)
+{
+ Player* pPlayer( new Player( mxMgr ) );
+ uno::Reference< media::XPlayer > xRet( pPlayer );
+ INetURLObject aURL( rURL );
+
+ OSL_TRACE( "avmediaquicktime: Manager::createPlayer" );
+
+ if( !pPlayer->create( aURL.GetMainURL( INetURLObject::DECODE_UNAMBIGUOUS ) ) )
+ xRet = uno::Reference< media::XPlayer >();
+
+ return xRet;
+}
+
+// ------------------------------------------------------------------------------
+
+::rtl::OUString SAL_CALL Manager::getImplementationName( )
+ throw (uno::RuntimeException)
+{
+ return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( AVMEDIA_QUICKTIME_MANAGER_IMPLEMENTATIONNAME ) );
+}
+
+// ------------------------------------------------------------------------------
+
+sal_Bool SAL_CALL Manager::supportsService( const ::rtl::OUString& ServiceName )
+ throw (uno::RuntimeException)
+{
+ return ServiceName.equalsAsciiL( RTL_CONSTASCII_STRINGPARAM ( AVMEDIA_QUICKTIME_MANAGER_SERVICENAME ) );
+}
+
+// ------------------------------------------------------------------------------
+
+uno::Sequence< ::rtl::OUString > SAL_CALL Manager::getSupportedServiceNames( )
+ throw (uno::RuntimeException)
+{
+ uno::Sequence< ::rtl::OUString > aRet(1);
+ aRet[0] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM ( AVMEDIA_QUICKTIME_MANAGER_SERVICENAME ) );
+
+ return aRet;
+}
+
+} // namespace quicktime
+} // namespace avmedia
diff --git a/avmedia/source/quicktime/qt_manager.hxx b/avmedia/source/quicktime/qt_manager.hxx
new file mode 100644
index 000000000000..ecbf4224c746
--- /dev/null
+++ b/avmedia/source/quicktime/qt_manager.hxx
@@ -0,0 +1,60 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+
+#ifndef QT_MANAGER_HXX
+#define QT_MANAGER_HXX
+
+#include "qt_common.hxx"
+
+#include "com/sun/star/media/XManager.hdl"
+
+// -----------
+// - Manager -
+// -----------
+
+namespace avmedia { namespace quicktime {
+
+class Manager : public ::cppu::WeakImplHelper2 < ::com::sun::star::media::XManager,
+ ::com::sun::star::lang::XServiceInfo >
+{
+public:
+
+ Manager( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& rxMgr );
+ ~Manager();
+
+ // XManager
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::media::XPlayer > SAL_CALL createPlayer( const ::rtl::OUString& aURL ) 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);
+private:
+
+ ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > mxMgr;
+};
+
+} // namespace quicktime
+} // namespace avmedia
+
+#endif // QT_MANAGER_HXX
+
diff --git a/avmedia/source/quicktime/qt_player.cxx b/avmedia/source/quicktime/qt_player.cxx
new file mode 100644
index 000000000000..3f5b35ede333
--- /dev/null
+++ b/avmedia/source/quicktime/qt_player.cxx
@@ -0,0 +1,459 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+
+#include <math.h>
+
+#include "qt_player.hxx"
+#include "qt_framegrabber.hxx"
+#include "qt_window.hxx"
+
+using namespace ::com::sun::star;
+
+namespace avmedia { namespace quicktime {
+
+// ----------------
+// - Player -
+// ----------------
+
+Player::Player( const uno::Reference< lang::XMultiServiceFactory >& rxMgr ) :
+ mxMgr( rxMgr ),
+ mpMovie( nil ),
+ /* GST
+ mbFakeVideo (sal_False ),
+ */
+ mnUnmutedVolume( 0 ),
+ mnStopTime( DBL_MAX ), //max double
+ mbMuted( false ),
+ mbLooping( false ),
+ mbInitialized( false ),
+ mnWindowID( 0 ),
+ mnDuration( 0 ),
+ mnWidth( 0 ),
+ mnHeight( 0 ),
+ mnVersion( 0 ),
+ maSizeCondition( osl_createCondition() )
+{
+ OSErr result;
+
+ NSApplicationLoad();
+ NSAutoreleasePool* pool = [[NSAutoreleasePool alloc] init];
+ mbInitialized = true;
+ [pool release];
+}
+
+// ------------------------------------------------------------------------------
+
+Player::~Player()
+{
+ if( mpMovie )
+ {
+ [mpMovie release];
+ mpMovie = nil;
+ }
+}
+// ------------------------------------------------------------------------------
+
+QTMovie* Player::getMovie()
+{
+ OSL_ASSERT( mpMovie );
+ return mpMovie;
+}
+
+// ------------------------------------------------------------------------------
+
+bool Player::create( const ::rtl::OUString& rURL )
+{
+ bool bRet = false;
+ // create the Movie
+ if( mbInitialized )
+ {
+ NSAutoreleasePool* pool = [[NSAutoreleasePool alloc] init];
+
+ if( mpMovie )
+ {
+ [mpMovie release];
+ mpMovie = nil;
+ }
+
+ NSString* aNSStr = [[[NSString alloc] initWithCharacters: rURL.getStr() length: rURL.getLength()]stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding] ;
+ NSURL* aURL = [NSURL URLWithString:aNSStr ];
+
+
+ NSError* pErr = nil;
+ mpMovie = [QTMovie movieWithURL:aURL error:&pErr];
+ if(mpMovie)
+ {
+ [mpMovie retain];
+ maURL = rURL;
+ bRet = true;
+ }
+ if( pErr )
+ {
+ OSL_TRACE( "NSMovie create failed with error %ld (%s)",
+ (long)[pErr code],
+ [[pErr localizedDescription] UTF8String]
+ );
+ }
+ [pool release];
+ }
+
+ return bRet;
+}
+
+// ------------------------------------------------------------------------------
+
+void SAL_CALL Player::start( )
+ throw (uno::RuntimeException)
+{
+ OSL_TRACE ("Player::start");
+
+ if( mpMovie )
+ {
+ [mpMovie play];
+ }
+}
+
+// ------------------------------------------------------------------------------
+
+void SAL_CALL Player::stop( )
+ throw (uno::RuntimeException)
+{
+ OSL_TRACE ("Player::stop");
+ if( mpMovie )
+ {
+ [mpMovie stop];
+ }
+}
+
+// ------------------------------------------------------------------------------
+
+sal_Bool SAL_CALL Player::isPlaying()
+ throw (uno::RuntimeException)
+{
+ bool bRet = false;
+
+ if ( mpMovie )
+ {
+ if ([mpMovie rate] != 0)
+ {
+ bRet = true;
+ }
+ }
+
+ return bRet;
+}
+
+// ------------------------------------------------------------------------------
+
+double SAL_CALL Player::getDuration( )
+ throw (uno::RuntimeException)
+{
+ // slideshow checks for non-zero duration, so cheat here
+ double duration = 0.01;
+
+ if ( mpMovie ) // && mnDuration > 0 ) {
+ {
+ QTTime structDuration = [mpMovie duration] ;
+ duration = (double)structDuration.timeValue / (double)structDuration.timeScale;
+ }
+
+ return duration;
+}
+
+// ------------------------------------------------------------------------------
+
+void SAL_CALL Player::setMediaTime( double fTime )
+ throw (uno::RuntimeException)
+{
+ OSL_TRACE ("Player::setMediaTime");
+
+ if ( mpMovie )
+ {
+ [mpMovie setCurrentTime: QTMakeTimeWithTimeInterval(fTime)];
+ }
+}
+
+// ------------------------------------------------------------------------------
+
+double SAL_CALL Player::getMediaTime( )
+ throw (uno::RuntimeException)
+{
+ double position = 0.0;
+
+ if ( mpMovie )
+ {
+ QTTime structDuration = [mpMovie currentTime] ;
+ position = (double)structDuration.timeValue / (double)structDuration.timeScale;
+ }
+
+ if(isPlaying() && position>mnStopTime)
+ {
+ stop();
+ }
+
+ return position;
+}
+
+// ------------------------------------------------------------------------------
+
+void SAL_CALL Player::setStopTime( double fTime )
+ throw (uno::RuntimeException)
+{
+ OSL_TRACE ("Player::setStopTime %f", fTime);
+
+ mnStopTime = fTime;
+}
+
+// ------------------------------------------------------------------------------
+
+double SAL_CALL Player::getStopTime( )
+ throw (uno::RuntimeException)
+{
+ double fRet = mnStopTime;
+
+ return fRet;
+}
+
+// ------------------------------------------------------------------------------
+
+void SAL_CALL Player::setRate( double fRate )
+ throw (uno::RuntimeException)
+{
+ OSL_TRACE ("Player::setRate");
+
+ // Quicktime: 0 = stop, 1 = normal speed, 2 = double speed, -1 = normal speed backwards
+ if ( mpMovie )
+ {
+ [mpMovie setRate: fRate];
+ }
+}
+
+// ------------------------------------------------------------------------------
+
+double SAL_CALL Player::getRate( )
+ throw (uno::RuntimeException)
+{
+ // Quicktime: 0 = stop, 1 = normal speed, 2 = double speed, -1 = normal speed backwards
+ double rate = 1.0;
+
+ OSL_TRACE ("Player::getRate");
+
+ if ( mpMovie )
+ {
+ rate = (double) [mpMovie rate];
+ }
+
+ return rate;
+}
+
+// ------------------------------------------------------------------------------
+
+void SAL_CALL Player::setPlaybackLoop( sal_Bool bSet )
+ throw (uno::RuntimeException)
+{
+ OSL_TRACE ("Player::setPlaybackLoop? %s", bSet?"True":"False" );
+
+ if(bSet)
+ {
+ [mpMovie setAttribute:[NSNumber numberWithBool:YES] forKey: QTMovieLoopsAttribute] ;
+ }
+ else
+ {
+ [mpMovie setAttribute:[NSNumber numberWithBool:NO] forKey: QTMovieLoopsAttribute] ;
+ }
+}
+
+// ------------------------------------------------------------------------------
+
+sal_Bool SAL_CALL Player::isPlaybackLoop( )
+ throw (uno::RuntimeException)
+{
+ bool bRet = [[mpMovie attributeForKey:QTMovieLoopsAttribute] boolValue];
+
+ OSL_TRACE ("Player::isPlaybackLoop ? %s", bRet?"True":"False" );
+
+ return bRet;
+}
+
+// ------------------------------------------------------------------------------
+
+void SAL_CALL Player::setMute( sal_Bool bSet )
+ throw (uno::RuntimeException)
+{
+ OSL_TRACE( "set mute: %d muted: %d unmuted volume: %lf", bSet, mbMuted, mnUnmutedVolume );
+
+ // change the volume to 0 or the unmuted volume
+ if( mpMovie && mbMuted != bSet )
+ {
+ [mpMovie setMuted: bSet ];
+ mbMuted = bSet;
+ }
+
+}
+
+// ------------------------------------------------------------------------------
+
+sal_Bool SAL_CALL Player::isMute( )
+ throw (uno::RuntimeException)
+{
+ OSL_TRACE ("Player::isMuted");
+
+ return mbMuted;
+}
+
+// ------------------------------------------------------------------------------
+
+void SAL_CALL Player::setVolumeDB( sal_Int16 nVolumeDB )
+ throw (uno::RuntimeException)
+{
+ // OOo db volume -40 = QTVolume 0
+ // OOo db volume 0 = QTvolume 1
+ if(nVolumeDB==-40)
+ {
+ mnUnmutedVolume = 0;
+ }
+ else
+ {
+ mnUnmutedVolume = pow( 10.0, nVolumeDB / 20.0 );
+ }
+
+ OSL_TRACE( "set volume: %d gst volume: %f", nVolumeDB, mnUnmutedVolume );
+
+ // change volume
+ if( !mbMuted && mpMovie )
+ {
+ [mpMovie setVolume: mnUnmutedVolume ];
+ }
+}
+
+// ------------------------------------------------------------------------------
+
+sal_Int16 SAL_CALL Player::getVolumeDB( )
+ throw (uno::RuntimeException)
+{
+ sal_Int16 nVolumeDB = 0.0;
+
+ if( mpMovie )
+ {
+ float volume = 0.0;
+
+ volume = [mpMovie volume];
+ if(volume>0) //protect from log10(0)
+ {
+ nVolumeDB = (sal_Int16) ( 20.0*log10 ( volume ) );
+ }
+ else
+ {
+ nVolumeDB = -40 ; // QT zero volume is no volume, -40db
+ }
+ }
+
+ return nVolumeDB;
+}
+
+// ------------------------------------------------------------------------------
+
+awt::Size SAL_CALL Player::getPreferredPlayerWindowSize( )
+ throw (uno::RuntimeException)
+{
+ NSSize nsSize = [[mpMovie attributeForKey:QTMovieNaturalSizeAttribute] sizeValue];
+ awt::Size aSize( nsSize.width, nsSize.height );
+ return aSize;
+}
+
+
+// ------------------------------------------------------------------------------
+
+uno::Reference< ::media::XPlayerWindow > SAL_CALL Player::createPlayerWindow( const uno::Sequence< uno::Any >& aArguments )
+ throw (uno::RuntimeException)
+{
+ uno::Reference< ::media::XPlayerWindow > xRet;
+ awt::Size aSize( getPreferredPlayerWindowSize() );
+ NSSize nsSize( NSMakeSize(aSize.Width, aSize.Height) );
+
+ OSL_TRACE( "Player::createPlayerWindow %d %d length: %d", aSize.Width, aSize.Height, aArguments.getLength() );
+
+ if( aSize.Width > 0 && aSize.Height > 0 )
+ {
+ sal_IntPtr nPtr = NULL;
+ aArguments[0] >>= nPtr;
+ NSView* pParentView = reinterpret_cast< NSView * >(nPtr);
+
+ ::avmedia::quicktime::Window* pWindow = new ::avmedia::quicktime::Window( mxMgr, *this, pParentView );
+ xRet = pWindow;
+ }
+
+ return xRet;
+}
+
+// ------------------------------------------------------------------------------
+
+uno::Reference< media::XFrameGrabber > SAL_CALL Player::createFrameGrabber( )
+ throw (::com::sun::star::uno::RuntimeException)
+{
+ uno::Reference< media::XFrameGrabber > xRet;
+ OSL_TRACE ("Player::createFrameGrabber");
+
+ if( !maURL.isEmpty() )
+ {
+ FrameGrabber* pGrabber = new FrameGrabber( mxMgr );
+
+ xRet = pGrabber;
+
+ if( !pGrabber->create( maURL ) )
+ {
+ xRet.clear();
+ }
+ }
+
+ return xRet;
+}
+
+// ------------------------------------------------------------------------------
+
+::rtl::OUString SAL_CALL Player::getImplementationName( )
+ throw (uno::RuntimeException)
+{
+ return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( AVMEDIA_QUICKTIME_PLAYER_IMPLEMENTATIONNAME ) );
+}
+
+// ------------------------------------------------------------------------------
+
+sal_Bool SAL_CALL Player::supportsService( const ::rtl::OUString& ServiceName )
+ throw (uno::RuntimeException)
+{
+ return ServiceName.equalsAsciiL( RTL_CONSTASCII_STRINGPARAM ( AVMEDIA_QUICKTIME_PLAYER_SERVICENAME ) );
+}
+
+// ------------------------------------------------------------------------------
+
+uno::Sequence< ::rtl::OUString > SAL_CALL Player::getSupportedServiceNames( )
+ throw (uno::RuntimeException)
+{
+ uno::Sequence< ::rtl::OUString > aRet(1);
+ aRet[0] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM ( AVMEDIA_QUICKTIME_PLAYER_SERVICENAME ) );
+
+ return aRet;
+}
+
+} // namespace quicktime
+} // namespace avmedia
diff --git a/avmedia/source/quicktime/qt_player.hxx b/avmedia/source/quicktime/qt_player.hxx
new file mode 100644
index 000000000000..a2cd7b5c242d
--- /dev/null
+++ b/avmedia/source/quicktime/qt_player.hxx
@@ -0,0 +1,107 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+
+#ifndef QT_PLAYER_HXX
+#define QT_PLAYER_HXX
+
+#include <osl/conditn.h>
+#include "qt_common.hxx"
+
+#include "com/sun/star/media/XPlayer.hdl"
+
+namespace avmedia { namespace quicktime {
+
+/*
+// ----------
+// - Player -
+// ----------
+*/
+
+class Player : public ::cppu::WeakImplHelper2< ::com::sun::star::media::XPlayer,
+ ::com::sun::star::lang::XServiceInfo >
+{
+public:
+
+ Player( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& rxMgr );
+ ~Player();
+
+ bool create( const ::rtl::OUString& rURL );
+
+// void processMessage( GstMessage *message );
+
+ // XPlayer
+ virtual void SAL_CALL start( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL stop( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL isPlaying( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual double SAL_CALL getDuration( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL setMediaTime( double fTime ) throw (::com::sun::star::uno::RuntimeException);
+ virtual double SAL_CALL getMediaTime( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL setStopTime( double fTime ) throw (::com::sun::star::uno::RuntimeException);
+ virtual double SAL_CALL getStopTime( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL setRate( double fRate ) throw (::com::sun::star::uno::RuntimeException);
+ virtual double SAL_CALL getRate( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL setPlaybackLoop( sal_Bool bSet ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL isPlaybackLoop( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL setMute( sal_Bool bSet ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL isMute( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL setVolumeDB( sal_Int16 nVolumeDB ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Int16 SAL_CALL getVolumeDB( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::awt::Size SAL_CALL getPreferredPlayerWindowSize( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::media::XPlayerWindow > SAL_CALL createPlayerWindow( const ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Any >& aArguments ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::media::XFrameGrabber > SAL_CALL createFrameGrabber( ) 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);
+
+ QTMovie* getMovie();
+
+private:
+ ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > mxMgr;
+
+ ::rtl::OUString maURL;
+
+ QTMovie *mpMovie; // the Movie object
+ /* GST
+ sal_Bool mbFakeVideo;
+ */
+ float mnUnmutedVolume;
+ double mnStopTime;
+
+ sal_Bool mbMuted;
+ sal_Bool mbLooping;
+ sal_Bool mbInitialized;
+
+ long mnWindowID;
+ long mnDuration;
+ int mnWidth;
+ int mnHeight;
+
+ long mnVersion;
+ oslCondition maSizeCondition;
+};
+
+} // namespace quicktime
+} // namespace avmedia
+
+#endif // QT_PLAYER_HXX
+
diff --git a/avmedia/source/quicktime/qt_uno.cxx b/avmedia/source/quicktime/qt_uno.cxx
new file mode 100644
index 000000000000..62a73bf8756c
--- /dev/null
+++ b/avmedia/source/quicktime/qt_uno.cxx
@@ -0,0 +1,71 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+#include "qt_manager.hxx"
+
+using namespace ::com::sun::star;
+
+// -------------------
+// - factory methods -
+// -------------------
+
+static uno::Reference< uno::XInterface > SAL_CALL create_MediaPlayer( const uno::Reference< lang::XMultiServiceFactory >& rxFact )
+{
+ return uno::Reference< uno::XInterface >( *new ::avmedia::quicktime::Manager( rxFact ) );
+}
+
+// ------------------------------------------
+// - component_getImplementationEnvironment -
+// ------------------------------------------
+
+extern "C" void SAL_CALL component_getImplementationEnvironment( const sal_Char ** ppEnvTypeName, uno_Environment ** /* ppEnv */ )
+{
+ *ppEnvTypeName = CPPU_CURRENT_LANGUAGE_BINDING_NAME;
+}
+
+// ------------------------
+// - component_getFactory -
+// ------------------------
+
+extern "C" void* SAL_CALL component_getFactory( const sal_Char* pImplName, void* pServiceManager, void* /* pRegistryKey */ )
+{
+ uno::Reference< lang::XSingleServiceFactory > xFactory;
+ void* pRet = 0;
+
+ if( rtl_str_compare( pImplName, AVMEDIA_QUICKTIME_MANAGER_IMPLEMENTATIONNAME ) == 0 )
+ {
+ const ::rtl::OUString aServiceName( ::rtl::OUString::createFromAscii( AVMEDIA_QUICKTIME_MANAGER_SERVICENAME ) );
+
+ xFactory = uno::Reference< lang::XSingleServiceFactory >( ::cppu::createSingleFactory(
+ reinterpret_cast< lang::XMultiServiceFactory* >( pServiceManager ),
+ ::rtl::OUString::createFromAscii( AVMEDIA_QUICKTIME_MANAGER_IMPLEMENTATIONNAME ),
+ create_MediaPlayer, uno::Sequence< ::rtl::OUString >( &aServiceName, 1 ) ) );
+ }
+
+ if( xFactory.is() )
+ {
+ xFactory->acquire();
+ pRet = xFactory.get();
+ }
+
+ return pRet;
+}
+
diff --git a/avmedia/source/quicktime/qt_window.cxx b/avmedia/source/quicktime/qt_window.cxx
new file mode 100644
index 000000000000..e8874170abbc
--- /dev/null
+++ b/avmedia/source/quicktime/qt_window.cxx
@@ -0,0 +1,348 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+
+#include <com/sun/star/awt/SystemPointer.hpp>
+#include <com/sun/star/awt/PosSize.hpp>
+
+#include "qt_window.hxx"
+#include "qt_player.hxx"
+
+using namespace ::com::sun::star;
+
+namespace avmedia { namespace quicktime {
+
+// -----------
+// - statics -
+// -----------
+
+static ::osl::Mutex& ImplGetOwnStaticMutex()
+{
+ static ::osl::Mutex* pMutex = NULL;
+
+ if( pMutex == NULL )
+ {
+ ::osl::MutexGuard aGuard( ::osl::Mutex::getGlobalMutex() );
+
+ if( pMutex == NULL )
+ {
+ static ::osl::Mutex aMutex;
+ pMutex = &aMutex;
+ }
+ }
+
+ return *pMutex;
+}
+
+// ---------------
+// - Window -
+// ---------------
+
+// ------------------------------------------------------------------------------
+
+Window::Window( const uno::Reference< lang::XMultiServiceFactory >& i_rxMgr, Player& i_rPlayer, NSView* i_pParentView ) :
+ mxMgr( i_rxMgr ),
+ maListeners( maMutex ),
+ meZoomLevel( media::ZoomLevel_NOT_AVAILABLE ),
+ mrPlayer( i_rPlayer ),
+ mnPointerType( awt::SystemPointer::ARROW ),
+ mpParentView( i_pParentView ),
+ mpMovieView( nil )
+{
+
+ ::osl::MutexGuard aGuard( ImplGetOwnStaticMutex() );
+
+
+ if( mpParentView ) // sanity check
+ {
+
+ NSRect aViewRect = [mpParentView frame];
+ aViewRect.origin.x = aViewRect.origin.y = 0;
+ mpMovieView = [[QTMovieView alloc] initWithFrame: aViewRect];
+ [mpMovieView setMovie: mrPlayer.getMovie() ];
+ [mpMovieView setControllerVisible: NO];
+ [mpMovieView setPreservesAspectRatio: YES];
+ [mpMovieView setAutoresizingMask: NSViewWidthSizable | NSViewHeightSizable];
+ [mpParentView addSubview: mpMovieView];
+ [mpParentView setAutoresizesSubviews: YES];
+ }
+
+ OSL_TRACE ("Window::Window");
+}
+
+// ------------------------------------------------------------------------------
+
+Window::~Window()
+{
+ if( mpMovieView )
+ {
+ [mpMovieView removeFromSuperview];
+ [mpMovieView setMovie:nil];
+ [mpMovieView release];
+ mpMovieView = nil;
+ }
+}
+
+bool Window::create( const ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Any >& aArguments )
+{
+ return true;
+}
+
+// XPlayerWindow
+// ------------------------------------------------------------------------------
+
+void SAL_CALL Window::update( )
+ throw (uno::RuntimeException)
+{
+ ;
+}
+
+// ------------------------------------------------------------------------------
+
+sal_Bool SAL_CALL Window::setZoomLevel( media::ZoomLevel eZoomLevel )
+ throw (uno::RuntimeException)
+{
+ return false;
+}
+
+// ------------------------------------------------------------------------------
+
+media::ZoomLevel SAL_CALL Window::getZoomLevel( )
+ throw (uno::RuntimeException)
+{
+ return meZoomLevel;
+}
+
+// ------------------------------------------------------------------------------
+
+void SAL_CALL Window::setPointerType( sal_Int32 nPointerType )
+ throw (uno::RuntimeException)
+{
+ mnPointerType = nPointerType;
+}
+
+// XWindow
+// ------------------------------------------------------------------------------
+
+void SAL_CALL Window::setPosSize( sal_Int32 X, sal_Int32 Y, sal_Int32 Width, sal_Int32 Height, sal_Int16 Flags )
+ throw (uno::RuntimeException)
+{
+ if( mpParentView && mpMovieView )
+ {
+ NSRect aRect = [mpMovieView frame];
+ if( (Flags & awt::PosSize::WIDTH) )
+ aRect.size.width = Width;
+ if( (Flags & awt::PosSize::HEIGHT) )
+ aRect.size.height = Height;
+ }
+}
+
+// ------------------------------------------------------------------------------
+
+awt::Rectangle SAL_CALL Window::getPosSize()
+ throw (uno::RuntimeException)
+{
+ awt::Rectangle aRet;
+
+ NSRect aRect = [mpMovieView frame];
+ aRet.X = aRet.Y = 0;
+ aRet.Width = aRect.size.width;
+ aRet.Height = aRect.size.height;
+
+ return aRet;
+}
+
+// ------------------------------------------------------------------------------
+
+void SAL_CALL Window::setVisible( sal_Bool bVisible )
+ throw (uno::RuntimeException)
+{
+ OSL_TRACE ("Window::setVisible");
+
+}
+
+// ------------------------------------------------------------------------------
+
+void SAL_CALL Window::setEnable( sal_Bool bEnable )
+ throw (uno::RuntimeException)
+{
+ ;
+}
+
+// ------------------------------------------------------------------------------
+
+void SAL_CALL Window::setFocus( )
+ throw (uno::RuntimeException)
+{
+ OSL_TRACE ("Window::setFocus");
+}
+
+// ------------------------------------------------------------------------------
+
+void SAL_CALL Window::addWindowListener( const uno::Reference< awt::XWindowListener >& xListener )
+ throw (uno::RuntimeException)
+{
+ maListeners.addInterface( getCppuType( &xListener ), xListener );
+}
+
+// ------------------------------------------------------------------------------
+
+void SAL_CALL Window::removeWindowListener( const uno::Reference< awt::XWindowListener >& xListener )
+ throw (uno::RuntimeException)
+{
+ maListeners.removeInterface( getCppuType( &xListener ), xListener );
+}
+
+// ------------------------------------------------------------------------------
+
+void SAL_CALL Window::addFocusListener( const uno::Reference< awt::XFocusListener >& xListener )
+ throw (uno::RuntimeException)
+{
+ maListeners.addInterface( getCppuType( &xListener ), xListener );
+}
+
+// ------------------------------------------------------------------------------
+
+void SAL_CALL Window::removeFocusListener( const uno::Reference< awt::XFocusListener >& xListener )
+ throw (uno::RuntimeException)
+{
+ maListeners.removeInterface( getCppuType( &xListener ), xListener );
+}
+
+// ------------------------------------------------------------------------------
+
+void SAL_CALL Window::addKeyListener( const uno::Reference< awt::XKeyListener >& xListener )
+ throw (uno::RuntimeException)
+{
+ maListeners.addInterface( getCppuType( &xListener ), xListener );
+}
+
+// ------------------------------------------------------------------------------
+
+void SAL_CALL Window::removeKeyListener( const uno::Reference< awt::XKeyListener >& xListener )
+ throw (uno::RuntimeException)
+{
+ maListeners.removeInterface( getCppuType( &xListener ), xListener );
+}
+
+// ------------------------------------------------------------------------------
+
+void SAL_CALL Window::addMouseListener( const uno::Reference< awt::XMouseListener >& xListener )
+ throw (uno::RuntimeException)
+{
+ maListeners.addInterface( getCppuType( &xListener ), xListener );
+}
+
+// ------------------------------------------------------------------------------
+
+void SAL_CALL Window::removeMouseListener( const uno::Reference< awt::XMouseListener >& xListener )
+ throw (uno::RuntimeException)
+{
+ maListeners.removeInterface( getCppuType( &xListener ), xListener );
+}
+
+// ------------------------------------------------------------------------------
+
+void SAL_CALL Window::addMouseMotionListener( const uno::Reference< awt::XMouseMotionListener >& xListener )
+ throw (uno::RuntimeException)
+{
+ maListeners.addInterface( getCppuType( &xListener ), xListener );
+}
+
+// ------------------------------------------------------------------------------
+
+void SAL_CALL Window::removeMouseMotionListener( const uno::Reference< awt::XMouseMotionListener >& xListener )
+ throw (uno::RuntimeException)
+{
+ maListeners.removeInterface( getCppuType( &xListener ), xListener );
+}
+
+// ------------------------------------------------------------------------------
+
+void SAL_CALL Window::addPaintListener( const uno::Reference< awt::XPaintListener >& xListener )
+ throw (uno::RuntimeException)
+{
+ maListeners.addInterface( getCppuType( &xListener ), xListener );
+}
+
+// ------------------------------------------------------------------------------
+
+void SAL_CALL Window::removePaintListener( const uno::Reference< awt::XPaintListener >& xListener )
+ throw (uno::RuntimeException)
+{
+ maListeners.removeInterface( getCppuType( &xListener ), xListener );
+}
+
+
+// XComponent
+// ------------------------------------------------------------------------------
+
+void SAL_CALL Window::dispose( )
+ throw (uno::RuntimeException)
+{
+}
+
+// ------------------------------------------------------------------------------
+
+void SAL_CALL Window::addEventListener( const uno::Reference< lang::XEventListener >& xListener )
+ throw (uno::RuntimeException)
+{
+ maListeners.addInterface( getCppuType( &xListener ), xListener );
+}
+
+// ------------------------------------------------------------------------------
+
+void SAL_CALL Window::removeEventListener( const uno::Reference< lang::XEventListener >& xListener )
+ throw (uno::RuntimeException)
+{
+ maListeners.removeInterface( getCppuType( &xListener ), xListener );
+}
+
+// XServiceInfo
+// ------------------------------------------------------------------------------
+
+::rtl::OUString SAL_CALL Window::getImplementationName( )
+ throw (uno::RuntimeException)
+{
+ return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( AVMEDIA_QUICKTIME_WINDOW_IMPLEMENTATIONNAME ) );
+}
+
+// ------------------------------------------------------------------------------
+
+sal_Bool SAL_CALL Window::supportsService( const ::rtl::OUString& ServiceName )
+ throw (uno::RuntimeException)
+{
+ return ServiceName.equalsAsciiL( RTL_CONSTASCII_STRINGPARAM ( AVMEDIA_QUICKTIME_WINDOW_SERVICENAME ) );
+}
+
+// ------------------------------------------------------------------------------
+
+uno::Sequence< ::rtl::OUString > SAL_CALL Window::getSupportedServiceNames( )
+ throw (uno::RuntimeException)
+{
+ uno::Sequence< ::rtl::OUString > aRet(1);
+ aRet[0] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM ( AVMEDIA_QUICKTIME_WINDOW_SERVICENAME ) );
+
+ return aRet;
+}
+
+} // namespace quicktime
+} // namespace avmedia
diff --git a/avmedia/source/quicktime/qt_window.hxx b/avmedia/source/quicktime/qt_window.hxx
new file mode 100644
index 000000000000..a9ced0688ed5
--- /dev/null
+++ b/avmedia/source/quicktime/qt_window.hxx
@@ -0,0 +1,109 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+
+#ifndef QT_WINDOW_HXX
+#define QT_WINDOW_HXX
+
+#include "qt_common.hxx"
+#include <cppuhelper/interfacecontainer.h>
+
+#include "com/sun/star/media/XPlayerWindow.hdl"
+
+namespace avmedia { namespace quicktime {
+
+// ---------------
+// - Window -
+// ---------------
+
+class Player;
+
+class Window : public ::cppu::WeakImplHelper2 < ::com::sun::star::media::XPlayerWindow,
+ ::com::sun::star::lang::XServiceInfo >
+{
+public:
+
+ Window( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& i_rxMgr,
+ Player& i_rPlayer,
+ NSView* i_pParentView
+ );
+ ~Window();
+
+ bool create( const ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Any >& aArguments );
+ void processGraphEvent();
+ void updatePointer();
+
+ // XPlayerWindow
+ virtual void SAL_CALL update( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual sal_Bool SAL_CALL setZoomLevel( ::com::sun::star::media::ZoomLevel ZoomLevel ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::media::ZoomLevel SAL_CALL getZoomLevel( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL setPointerType( sal_Int32 nPointerType ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XWindow
+ virtual void SAL_CALL setPosSize( sal_Int32 X, sal_Int32 Y, sal_Int32 Width, sal_Int32 Height, sal_Int16 Flags ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::awt::Rectangle SAL_CALL getPosSize( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL setVisible( sal_Bool Visible ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL setEnable( sal_Bool Enable ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL setFocus( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL addWindowListener( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindowListener >& xListener ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL removeWindowListener( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindowListener >& xListener ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL addFocusListener( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XFocusListener >& xListener ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL removeFocusListener( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XFocusListener >& xListener ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL addKeyListener( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XKeyListener >& xListener ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL removeKeyListener( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XKeyListener >& xListener ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL addMouseListener( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XMouseListener >& xListener ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL removeMouseListener( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XMouseListener >& xListener ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL addMouseMotionListener( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XMouseMotionListener >& xListener ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL removeMouseMotionListener( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XMouseMotionListener >& xListener ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL addPaintListener( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XPaintListener >& xListener ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL removePaintListener( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XPaintListener >& xListener ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XComponent
+ virtual void SAL_CALL dispose( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL addEventListener( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XEventListener >& xListener ) throw (::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL removeEventListener( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XEventListener >& aListener ) 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);
+
+private:
+
+ ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > mxMgr;
+
+ ::osl::Mutex maMutex;
+ ::cppu::OMultiTypeInterfaceContainerHelper maListeners;
+ ::com::sun::star::media::ZoomLevel meZoomLevel;
+ Player& mrPlayer;
+ int mnPointerType;
+
+ NSView* mpParentView; // parent view for our own private movie view
+ QTMovieView* mpMovieView; // the view containing the movie object, output target and controller
+
+ void ImplLayoutVideoWindow();
+};
+
+} // namespace quicktime
+} // namespace avmedia
+
+#endif // QT_WINDOW_HXX
+
diff --git a/basctl/source/basicide/objdlg.cxx b/basctl/source/basicide/objdlg.cxx
index b9c85ee1246b..a2431a686494 100644
--- a/basctl/source/basicide/objdlg.cxx
+++ b/basctl/source/basicide/objdlg.cxx
@@ -66,26 +66,41 @@ void ObjectTreeListBox::MouseButtonDown( const MouseEvent& rMEvt )
if ( rMEvt.IsLeft() && ( rMEvt.GetClicks() == 2 ) )
{
- BasicEntryDescriptor aDesc( GetEntryDescriptor( GetCurEntry() ) );
+ OpenCurrent();
+ }
+}
+
+void ObjectTreeListBox::KeyInput( const KeyEvent& rEvt )
+{
+ if ( rEvt.GetKeyCode() == KEY_RETURN && OpenCurrent() )
+ {
+ return;
+ }
+ BasicTreeListBox::KeyInput( rEvt );
+}
+
+bool ObjectTreeListBox::OpenCurrent()
+{
+ BasicEntryDescriptor aDesc( GetEntryDescriptor( GetCurEntry() ) );
- if ( aDesc.GetType() == OBJ_TYPE_METHOD )
+ if ( aDesc.GetType() == OBJ_TYPE_METHOD )
+ {
+ BasicIDEShell* pIDEShell = IDE_DLL()->GetShell();
+ SfxViewFrame* pViewFrame = pIDEShell ? pIDEShell->GetViewFrame() : NULL;
+ SfxDispatcher* pDispatcher = pViewFrame ? pViewFrame->GetDispatcher() : NULL;
+ if( pDispatcher )
{
- BasicIDEShell* pIDEShell = IDE_DLL()->GetShell();
- SfxViewFrame* pViewFrame = pIDEShell ? pIDEShell->GetViewFrame() : NULL;
- SfxDispatcher* pDispatcher = pViewFrame ? pViewFrame->GetDispatcher() : NULL;
- if( pDispatcher )
- {
- SbxItem aSbxItem( SID_BASICIDE_ARG_SBX, aDesc.GetDocument(), aDesc.GetLibName(), aDesc.GetName(),
- aDesc.GetMethodName(), ConvertType( aDesc.GetType() ) );
- pDispatcher->Execute( SID_BASICIDE_SHOWSBX,
- SFX_CALLMODE_SYNCHRON, &aSbxItem, 0L );
- }
+ SbxItem aSbxItem( SID_BASICIDE_ARG_SBX, aDesc.GetDocument(), aDesc.GetLibName(), aDesc.GetName(),
+ aDesc.GetMethodName(), ConvertType( aDesc.GetType() ) );
+ pDispatcher->Execute( SID_BASICIDE_SHOWSBX,
+ SFX_CALLMODE_SYNCHRON, &aSbxItem, 0L );
+ return true;
}
}
+ return false;
}
-
ObjectCatalog::ObjectCatalog( Window * pParent )
:FloatingWindow( pParent, IDEResId( RID_BASICIDE_OBJCAT ) )
,aMacroTreeList( this, IDEResId( RID_TLB_MACROS ) )
diff --git a/basctl/source/basicide/objdlg.hxx b/basctl/source/basicide/objdlg.hxx
index feda77309b63..273b3239a77b 100644
--- a/basctl/source/basicide/objdlg.hxx
+++ b/basctl/source/basicide/objdlg.hxx
@@ -40,7 +40,9 @@ private:
virtual void Command( const CommandEvent& rCEvt );
virtual void MouseButtonDown( const MouseEvent& rMEvt );
+ virtual void KeyInput( const KeyEvent& rEvt );
+ bool OpenCurrent();
public:
ObjectTreeListBox( Window* pParent, const ResId& rRes );
~ObjectTreeListBox();
diff --git a/basegfx/inc/basegfx/color/bcolormodifier.hxx b/basegfx/inc/basegfx/color/bcolormodifier.hxx
index 4009239b00c4..01659c47ccc6 100644
--- a/basegfx/inc/basegfx/color/bcolormodifier.hxx
+++ b/basegfx/inc/basegfx/color/bcolormodifier.hxx
@@ -61,12 +61,12 @@ namespace basegfx
{
private:
protected:
- // noone is allowed to incarnate the abstract base class
+ // no one is allowed to incarnate the abstract base class
// except derivations
BColorModifier() {}
public:
- // noone should directly destroy it; all incarnations should be
+ // no one should directly destroy it; all incarnations should be
// handled in a boost::shared_ptr of type BColorModifierSharedPtr
virtual ~BColorModifier();
diff --git a/basegfx/inc/basegfx/polygon/b2dpolygon.hxx b/basegfx/inc/basegfx/polygon/b2dpolygon.hxx
index 4b91efdce444..a00288d8e07f 100644
--- a/basegfx/inc/basegfx/polygon/b2dpolygon.hxx
+++ b/basegfx/inc/basegfx/polygon/b2dpolygon.hxx
@@ -112,7 +112,7 @@ namespace basegfx
/** check edge for being a bezier segment
- This test the existance of control vectors, but do not apply
+ This test the existence of control vectors, but do not apply
testAndSolveTrivialBezier() to the bezier segment, so it is still useful
to do so.
Since it can use internal data representations, it is faster
diff --git a/basegfx/inc/basegfx/polygon/b2dpolygontools.hxx b/basegfx/inc/basegfx/polygon/b2dpolygontools.hxx
index c853f26bbf7b..63dc4ac84ad8 100644
--- a/basegfx/inc/basegfx/polygon/b2dpolygontools.hxx
+++ b/basegfx/inc/basegfx/polygon/b2dpolygontools.hxx
@@ -463,7 +463,7 @@ namespace basegfx
@param fEnd
The maximum distance for the last point. No more points behind this distance will be created.
- Use 0.0 to proccess the whole polygon. Negative values are truncated to 0.0. It also
+ Use 0.0 to process the whole polygon. Negative values are truncated to 0.0. It also
needs to be more or equal to fStart, else it is truncated to fStart.
@return
diff --git a/basegfx/inc/basegfx/range/rangeexpander.hxx b/basegfx/inc/basegfx/range/rangeexpander.hxx
index fb260f6875cf..de28b0e0fb75 100644
--- a/basegfx/inc/basegfx/range/rangeexpander.hxx
+++ b/basegfx/inc/basegfx/range/rangeexpander.hxx
@@ -43,7 +43,7 @@ namespace basegfx
in at the function operator.
@tpl RangeType
- Range type to operate with. Preferrably, one of B1*Range,
+ Range type to operate with. Preferably, one of B1*Range,
B2*Range, or B3*Range.
*/
template< typename RangeType > class RangeExpander
diff --git a/basegfx/inc/basegfx/tools/keystoplerp.hxx b/basegfx/inc/basegfx/tools/keystoplerp.hxx
index 31c50a7b10fe..a98fbbe03637 100644
--- a/basegfx/inc/basegfx/tools/keystoplerp.hxx
+++ b/basegfx/inc/basegfx/tools/keystoplerp.hxx
@@ -56,7 +56,7 @@ namespace basegfx
@param rKeyStops
Vector of stops, must contain at least two elements
- (though preferrably more, otherwise you probably don't
+ (though preferably more, otherwise you probably don't
need key stop lerping in the first place). All
elements must be of monotonically increasing value.
*/
@@ -67,7 +67,7 @@ namespace basegfx
@param rKeyStops
Sequence of stops, must contain at least two elements
- (though preferrably more, otherwise you probably don't
+ (though preferably more, otherwise you probably don't
need key stop lerping in the first place). All
elements must be of monotonically increasing value.
*/
diff --git a/basegfx/source/polygon/b2dpolygonclipper.cxx b/basegfx/source/polygon/b2dpolygonclipper.cxx
index 7dd59d1fecae..39d7e8c9e436 100644
--- a/basegfx/source/polygon/b2dpolygonclipper.cxx
+++ b/basegfx/source/polygon/b2dpolygonclipper.cxx
@@ -808,7 +808,7 @@ namespace basegfx
if(nIndex > 1)
{
- // consume vertices until a single seperate triangle has been visited.
+ // consume vertices until a single separate triangle has been visited.
if(!((nIndex+1)%3))
{
// if any of the last three vertices was outside
diff --git a/basegfx/source/polygon/b2dpolygontools.cxx b/basegfx/source/polygon/b2dpolygontools.cxx
index 7afcfb358b07..8cdcc7fbe767 100644
--- a/basegfx/source/polygon/b2dpolygontools.cxx
+++ b/basegfx/source/polygon/b2dpolygontools.cxx
@@ -713,13 +713,13 @@ namespace basegfx
{
if(fTools::moreOrEqual(fDistance, fEdgeLength))
{
- // end point of choosen edge
+ // end point of chosen edge
const sal_uInt32 nNextIndex((nIndex + 1) % nPointCount);
aRetval = rCandidate.getB2DPoint(nNextIndex);
}
else if(fTools::equalZero(fDistance))
{
- // start point of choosen edge
+ // start point of chosen edge
aRetval = aRetval;
}
else
@@ -3419,7 +3419,7 @@ namespace basegfx
}
}
- // substract length of current edge
+ // subtract length of current edge
fPositionInEdge -= fEdgeLength;
}
diff --git a/basegfx/source/polygon/b2dsvgpolypolygon.cxx b/basegfx/source/polygon/b2dsvgpolypolygon.cxx
index 05cb42004dba..12f05d2b595b 100644
--- a/basegfx/source/polygon/b2dsvgpolypolygon.cxx
+++ b/basegfx/source/polygon/b2dsvgpolypolygon.cxx
@@ -241,7 +241,7 @@ namespace basegfx
nY += nLastY;
}
- // ensure existance of start point
+ // ensure existence of start point
if(!aCurrPoly.count())
{
aCurrPoly.append(B2DPoint(nLastX, nLastY));
@@ -305,7 +305,7 @@ namespace basegfx
nY += nLastY;
}
- // ensure existance of start point
+ // ensure existence of start point
if(!aCurrPoly.count())
{
aCurrPoly.append(B2DPoint(nLastX, nLastY));
@@ -356,7 +356,7 @@ namespace basegfx
const double nX2Prime((nX1 * 2.0 + nX) / 3.0);
const double nY2Prime((nY1 * 2.0 + nY) / 3.0);
- // ensure existance of start point
+ // ensure existence of start point
if(!aCurrPoly.count())
{
aCurrPoly.append(B2DPoint(nLastX, nLastY));
@@ -396,7 +396,7 @@ namespace basegfx
nY += nLastY;
}
- // ensure existance of start point
+ // ensure existence of start point
if(!aCurrPoly.count())
{
aCurrPoly.append(B2DPoint(nLastX, nLastY));
diff --git a/basegfx/source/raster/rasterconvert3d.cxx b/basegfx/source/raster/rasterconvert3d.cxx
index a69157b80e6f..07ba306b2d00 100644
--- a/basegfx/source/raster/rasterconvert3d.cxx
+++ b/basegfx/source/raster/rasterconvert3d.cxx
@@ -118,7 +118,7 @@ namespace basegfx
// sort current scanline using comparator. Only X is used there
// since all entries are already in one processed line. This needs to be done
- // everytime since not only new spans may have benn added or old removed,
+ // every time since not only new spans may have benn added or old removed,
// but incrementing may also have changed the order
::std::sort(aCurrentLine.begin(), aCurrentLine.end(), lineComparator());
diff --git a/basegfx/source/workbench/gauss.hxx b/basegfx/source/workbench/gauss.hxx
index 2e3b46bdb9d3..e290bb484394 100644
--- a/basegfx/source/workbench/gauss.hxx
+++ b/basegfx/source/workbench/gauss.hxx
@@ -102,7 +102,7 @@ bool eliminate( Matrix& matrix,
Result vector. Given matrix must have space for one column (rows entries).
@return true, if back substitution was possible (i.e. no division
- by zero occured).
+ by zero occurred).
*/
template <class Matrix, class Vector, typename BaseType>
bool substitute( const Matrix& matrix,
diff --git a/basic/inc/basic/sberrors.hxx b/basic/inc/basic/sberrors.hxx
index 8799a203fbd9..a2364ae36bb2 100644
--- a/basic/inc/basic/sberrors.hxx
+++ b/basic/inc/basic/sberrors.hxx
@@ -193,7 +193,7 @@ typedef sal_uIntPtr SbError;
#define ERRCODE_BASIC_GETPROP_FAILED ((LAST_SBX_ERROR_ID+62UL) | ERRCODE_AREA_SBX | \
ERRCODE_CLASS_RUNTIME) // Unable to get property
-// Compiler Errors (do not occure at runtime)
+// Compiler Errors (do not occur at runtime)
// These IDs can shift at any time
#define ERRCODE_BASIC_UNEXPECTED ((LAST_SBX_ERROR_ID+63UL) | ERRCODE_AREA_SBX | \
diff --git a/basic/inc/basic/sbxdef.hxx b/basic/inc/basic/sbxdef.hxx
index cf8f4fde1047..87bbb172ab1b 100644
--- a/basic/inc/basic/sbxdef.hxx
+++ b/basic/inc/basic/sbxdef.hxx
@@ -332,7 +332,7 @@ enum SbxError { // Ergebnis einer Rechenoperation/Konversion
#define SBXCR_SBX 0x20584253 // SBX(blank)
-// List of predefined SBX-IDs. New SBX-IDs must be precisly defined so that
+// List of predefined SBX-IDs. New SBX-IDs must be precisely defined so that
// they are unique within the Stream and appropriate Factory.
#define SBXID_VALUE 0x4E4E // NN: SbxValue
diff --git a/basic/source/classes/sb.cxx b/basic/source/classes/sb.cxx
index cb707d2dd1dd..25800470536d 100644
--- a/basic/source/classes/sb.cxx
+++ b/basic/source/classes/sb.cxx
@@ -1044,7 +1044,7 @@ void StarBASIC::implClearDependingVarsOnDelete( StarBASIC* pDeletedBasic )
/**************************************************************************
*
-* Creation/Managment of modules
+* Creation/Management of modules
*
**************************************************************************/
diff --git a/basic/source/classes/sbunoobj.cxx b/basic/source/classes/sbunoobj.cxx
index 4823e8d84b35..1417ba50a198 100644
--- a/basic/source/classes/sbunoobj.cxx
+++ b/basic/source/classes/sbunoobj.cxx
@@ -187,12 +187,12 @@ Reference< XIdlReflection > getCoreReflection_Impl( void )
xContext->getValueByName(
::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("/singletons/com.sun.star.reflection.theCoreReflection") ) )
>>= xCoreReflection;
- OSL_ENSURE( xCoreReflection.is(), "### CoreReflection singleton not accessable!?" );
+ OSL_ENSURE( xCoreReflection.is(), "### CoreReflection singleton not accessible!?" );
}
if( !xCoreReflection.is() )
{
throw DeploymentException(
- ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("/singletons/com.sun.star.reflection.theCoreReflection singleton not accessable") ),
+ ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("/singletons/com.sun.star.reflection.theCoreReflection singleton not accessible") ),
Reference< XInterface >() );
}
}
@@ -230,13 +230,13 @@ Reference< XHierarchicalNameAccess > getTypeProvider_Impl( void )
xContext->getValueByName(
::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("/singletons/com.sun.star.reflection.theTypeDescriptionManager") ) )
>>= xAccess;
- OSL_ENSURE( xAccess.is(), "### TypeDescriptionManager singleton not accessable!?" );
+ OSL_ENSURE( xAccess.is(), "### TypeDescriptionManager singleton not accessible!?" );
}
if( !xAccess.is() )
{
throw DeploymentException(
::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM
- ("/singletons/com.sun.star.reflection.theTypeDescriptionManager singleton not accessable") ),
+ ("/singletons/com.sun.star.reflection.theTypeDescriptionManager singleton not accessible") ),
Reference< XInterface >() );
}
}
@@ -264,7 +264,7 @@ Reference< XTypeConverter > getTypeConverter_Impl( void )
{
throw DeploymentException(
::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM
- ("com.sun.star.script.Converter service not accessable") ),
+ ("com.sun.star.script.Converter service not accessible") ),
Reference< XInterface >() );
}
}
@@ -2603,7 +2603,7 @@ void clearUnoMethodsForBasic( StarBASIC* pBasic )
if ( pModBasic == pBasic )
{
// for now the solution is to remove the method from the list and to clear it,
- // but in case the element should be correctly transfered to another StarBASIC,
+ // but in case the element should be correctly transferred to another StarBASIC,
// we should either set module parent to NULL without clearing it, or even
// set the new StarBASIC as the parent of the module
// pObject->SetParent( NULL );
@@ -3743,7 +3743,7 @@ void SbUnoService::SFX_NOTIFY( SfxBroadcaster& rBC, const TypeId& rBCType,
continue;
com::sun::star::uno::Type aType( xParamTypeDesc->getTypeClass(), xParamTypeDesc->getName() );
- // sbx paramter needs offset 1
+ // sbx parameter needs offset 1
pAnyArgs[i] = sbxToUnoValue( pParams->Get( iSbx ), aType );
// Check for out parameter if not already done
diff --git a/basic/source/classes/sbxmod.cxx b/basic/source/classes/sbxmod.cxx
index 827b7ecebdb4..4b46d1889d36 100644
--- a/basic/source/classes/sbxmod.cxx
+++ b/basic/source/classes/sbxmod.cxx
@@ -1297,7 +1297,7 @@ void SbModule::RunInit()
void SbModule::AddVarName( const String& aName )
{
- // see if the name is added allready
+ // see if the name is added already
std::vector< String >::iterator it_end = mModuleVariableNames.end();
for ( std::vector< String >::iterator it = mModuleVariableNames.begin(); it != it_end; ++it )
{
diff --git a/basic/source/comp/dim.cxx b/basic/source/comp/dim.cxx
index 64043c454cfb..76bc801d3407 100644
--- a/basic/source/comp/dim.cxx
+++ b/basic/source/comp/dim.cxx
@@ -595,7 +595,7 @@ void SbiParser::DefType( sal_Bool bPrivate )
pDim = NULL;
pElem = VarDecl(&pDim,sal_False,sal_False);
if( !pElem )
- bDone = sal_True; // Error occured
+ bDone = sal_True; // Error occurred
}
if( pElem )
{
@@ -727,14 +727,14 @@ void SbiParser::DefEnum( sal_Bool bPrivate )
pElem = VarDecl( &pDim, sal_False, sal_True );
if( !pElem )
{
- bDone = sal_True; // Error occured
+ bDone = sal_True; // Error occurred
break;
}
else if( pDim )
{
delete pDim;
Error( SbERR_SYNTAX );
- bDone = sal_True; // Error occured
+ bDone = sal_True; // Error occurred
break;
}
@@ -764,7 +764,7 @@ void SbiParser::DefEnum( sal_Bool bPrivate )
if( pOld )
{
Error( SbERR_VAR_DEFINED, pElem->GetName() );
- bDone = sal_True; // Error occured
+ bDone = sal_True; // Error occurred
break;
}
diff --git a/basic/source/comp/exprgen.cxx b/basic/source/comp/exprgen.cxx
index 63c090ec66fc..3d41f9f60cee 100644
--- a/basic/source/comp/exprgen.cxx
+++ b/basic/source/comp/exprgen.cxx
@@ -258,7 +258,7 @@ void SbiExpression::Gen( RecursiveMode eRecMode )
{
sal_uInt16 uBase = pParser->nBase;
if( pParser->IsCompatible() )
- uBase |= 0x8000; // #109275 Flag compatiblity
+ uBase |= 0x8000; // #109275 Flag compatibility
pParser->aGen.Gen( _BASED, uBase );
pParser->aGen.Gen( _ARGV );
}
diff --git a/basic/source/runtime/runtime.cxx b/basic/source/runtime/runtime.cxx
index d7878a28d28f..2a5e2b5d868c 100644
--- a/basic/source/runtime/runtime.cxx
+++ b/basic/source/runtime/runtime.cxx
@@ -776,7 +776,7 @@ sal_Bool SbiRuntime::Step()
pInst->nErl = nLine;
pErrCode = pCode;
pErrStmnt = pStmnt;
- // An error occured in an error handler
+ // An error occurred in an error handler
// force parent handler ( if there is one )
// to handle the error
bool bLetParentHandleThis = false;
diff --git a/basic/source/runtime/step1.cxx b/basic/source/runtime/step1.cxx
index 95d8d844f4ee..0a357468d036 100644
--- a/basic/source/runtime/step1.cxx
+++ b/basic/source/runtime/step1.cxx
@@ -376,7 +376,7 @@ void SbiRuntime::StepRESUME( sal_uInt32 nOp1 )
}
else
pCode = pErrStmnt;
- if ( pError ) // current in error handler ( and got a Resume Next statment )
+ if ( pError ) // current in error handler ( and got a Resume Next statement )
SbxErrObject::getUnoErrObject()->Clear();
if( nOp1 > 1 )
@@ -553,7 +553,7 @@ void SbiRuntime::StepBASED( sal_uInt32 nOp1 )
SbxVariable* p1 = new SbxVariable;
SbxVariableRef x2 = PopVar();
- // #109275 Check compatiblity mode
+ // #109275 Check compatibility mode
bool bCompatible = ((nOp1 & 0x8000) != 0);
sal_uInt16 uBase = static_cast<sal_uInt16>(nOp1 & 1); // Can only be 0 or 1
p1->PutInteger( uBase );
diff --git a/basic/source/runtime/step2.cxx b/basic/source/runtime/step2.cxx
index db5ddc59ee56..3a5c1314f28c 100644
--- a/basic/source/runtime/step2.cxx
+++ b/basic/source/runtime/step2.cxx
@@ -81,7 +81,7 @@ SbxVariable* SbiRuntime::FindElement
{
// emulate pcode here
StepARGC();
- // psuedo StepLOADSC
+ // pseudo StepLOADSC
String sArg = aName.Copy( 1, aName.Len() - 2 );
SbxVariable* p = new SbxVariable;
p->PutString( sArg );
diff --git a/basic/source/sbx/sbxint.cxx b/basic/source/sbx/sbxint.cxx
index eca771a89c8d..110e0cacd872 100644
--- a/basic/source/sbx/sbxint.cxx
+++ b/basic/source/sbx/sbxint.cxx
@@ -530,7 +530,7 @@ void ImpPutInt64( SbxValues* p, sal_Int64 n )
start:
switch( +p->eType )
{
- // Check neccessary
+ // Check necessary
case SbxCHAR:
aTmp.pChar = &p->nChar; goto direct;
case SbxBYTE:
@@ -557,7 +557,7 @@ start:
aTmp.eType = SbxDataType( p->eType | SbxBYREF );
p = &aTmp; goto start;
- // Check not neccessary
+ // Check not necessary
case SbxSALINT64:
p->nInt64 = n; break;
case SbxSINGLE:
@@ -833,7 +833,7 @@ void ImpPutUInt64( SbxValues* p, sal_uInt64 n )
start:
switch( +p->eType )
{
- // Check neccessary
+ // Check necessary
case SbxCHAR:
aTmp.pChar = &p->nChar; goto direct;
case SbxBYTE:
@@ -865,7 +865,7 @@ start:
aTmp.eType = SbxDataType( p->eType | SbxBYREF );
p = &aTmp; goto start;
- // Check not neccessary
+ // Check not necessary
case SbxSALUINT64:
p->uInt64 = n; break;
diff --git a/basic/source/uno/namecont.cxx b/basic/source/uno/namecont.cxx
index 112014e3dc71..4e40c432cb39 100644
--- a/basic/source/uno/namecont.cxx
+++ b/basic/source/uno/namecont.cxx
@@ -654,7 +654,7 @@ sal_Bool SfxLibraryContainer::init_Impl(
}
else
{
- // Default pathes
+ // Default paths
maLibraryPath = SvtPathOptions().GetBasicPath();
}
@@ -1313,7 +1313,7 @@ SfxLibrary* SfxLibraryContainer::getImplLib( const String& rLibraryName )
// Storing with password encryption
-// Empty implementation, avoids unneccesary implementation in dlgcont.cxx
+// Empty implementation, avoids unnecessary implementation in dlgcont.cxx
sal_Bool SfxLibraryContainer::implStorePasswordLibrary(
SfxLibrary*,
const OUString&,
diff --git a/basic/workben/mgrtest.cxx b/basic/workben/mgrtest.cxx
index 142b387cc698..5331bb7dea29 100644
--- a/basic/workben/mgrtest.cxx
+++ b/basic/workben/mgrtest.cxx
@@ -151,33 +151,33 @@ TestWindow::TestWindow() :
aToolBox.InsertBreak();
aToolBox.InsertItem( TB_CREATELIB1, "CreateLib1" );
- aToolBox.SetHelpText( TB_CREATELIB1, "Create Libary LIB1" );
+ aToolBox.SetHelpText( TB_CREATELIB1, "Create Library LIB1" );
aToolBox.InsertItem( TB_CREATELIB2, "CreateLib2" );
- aToolBox.SetHelpText( TB_CREATELIB2, "Create Libary LIB2" );
+ aToolBox.SetHelpText( TB_CREATELIB2, "Create Library LIB2" );
aToolBox.InsertItem( TB_CREATELIB3, "CreateLib3" );
- aToolBox.SetHelpText( TB_CREATELIB3, "Create Libary LIB3" );
+ aToolBox.SetHelpText( TB_CREATELIB3, "Create Library LIB3" );
aToolBox.InsertSeparator();
aToolBox.InsertItem( TB_LOADLIB1, "LoadLib1" );
- aToolBox.SetHelpText( TB_LOADLIB1, "Load Libary LIB1" );
+ aToolBox.SetHelpText( TB_LOADLIB1, "Load Library LIB1" );
aToolBox.InsertItem( TB_LOADLIB2, "LoadLib2" );
- aToolBox.SetHelpText( TB_LOADLIB2, "Load Libary LIB2" );
+ aToolBox.SetHelpText( TB_LOADLIB2, "Load Library LIB2" );
aToolBox.InsertItem( TB_LOADLIB3, "LoadLib3" );
- aToolBox.SetHelpText( TB_LOADLIB3, "Load Libary LIB3" );
+ aToolBox.SetHelpText( TB_LOADLIB3, "Load Library LIB3" );
aToolBox.InsertSeparator();
aToolBox.InsertItem( TB_STORELIBX, "StoreLibX" );
- aToolBox.SetHelpText( TB_STORELIBX, "Store Libary LIBX" );
+ aToolBox.SetHelpText( TB_STORELIBX, "Store Library LIBX" );
aToolBox.InsertItem( TB_UNLOADX, "UnloadX" );
- aToolBox.SetHelpText( TB_UNLOADX, "Unload Libary LIBX" );
+ aToolBox.SetHelpText( TB_UNLOADX, "Unload Library LIBX" );
aToolBox.InsertItem( TB_LOADX, "LoadX" );
- aToolBox.SetHelpText( TB_LOADX, "Load Libary LIBX" );
+ aToolBox.SetHelpText( TB_LOADX, "Load Library LIBX" );
aToolBox.InsertItem( TB_EXECX, "ExecX" );
aToolBox.SetHelpText( TB_EXECX, "Execute 'Libary' LIBX" );
aToolBox.InsertItem( TB_REMOVEX, "RemoveX" );
- aToolBox.SetHelpText( TB_REMOVEX, "Remove Libary LIBX" );
+ aToolBox.SetHelpText( TB_REMOVEX, "Remove Library LIBX" );
aToolBox.InsertItem( TB_REMOVEDELX, "RemDelX" );
- aToolBox.SetHelpText( TB_REMOVEDELX, "Remove and delete Libary LIBX" );
+ aToolBox.SetHelpText( TB_REMOVEDELX, "Remove and delete Library LIBX" );
pBasMgr = 0;
diff --git a/bean/com/sun/star/beans/LocalOfficeConnection.java b/bean/com/sun/star/beans/LocalOfficeConnection.java
index 8fd16caf8817..f2e26e9a960a 100644
--- a/bean/com/sun/star/beans/LocalOfficeConnection.java
+++ b/bean/com/sun/star/beans/LocalOfficeConnection.java
@@ -98,7 +98,7 @@ public class LocalOfficeConnection
* pipev := local_office_connection_pipe_name
* </pre>
*
- * @param url This is UNO URL which discribes the type of a connection.
+ * @param url This is UNO URL which describes the type of a connection.
*/
public void setUnoUrl(String url)
throws java.net.MalformedURLException
@@ -601,9 +601,9 @@ public class LocalOfficeConnection
}
/**
- * Retrives the ammount of time to wait for the startup.
+ * Retrives the amount of time to wait for the startup.
*
- * @return The ammount of time to wait in seconds(?).
+ * @return The amount of time to wait in seconds(?).
*/
public int getStartupTime()
{
diff --git a/bean/com/sun/star/beans/LocalOfficeWindow.java b/bean/com/sun/star/beans/LocalOfficeWindow.java
index f19703e4b30a..c6e8314258e9 100644
--- a/bean/com/sun/star/beans/LocalOfficeWindow.java
+++ b/bean/com/sun/star/beans/LocalOfficeWindow.java
@@ -243,14 +243,14 @@ public class LocalOfficeWindow
}
/**
- * Retrives a platform dependant system window identifier.
+ * Retrives a platform dependent system window identifier.
*
* @return The system window identifier.
*/
private native long getNativeWindow();
/**
- * Retrives a platform dependant system window type.
+ * Retrives a platform dependent system window type.
*
* @return The system window type.
*/
diff --git a/bean/com/sun/star/comp/beans/LocalOfficeConnection.java b/bean/com/sun/star/comp/beans/LocalOfficeConnection.java
index c16cbdbd9e16..626dfd6cd217 100644
--- a/bean/com/sun/star/comp/beans/LocalOfficeConnection.java
+++ b/bean/com/sun/star/comp/beans/LocalOfficeConnection.java
@@ -172,7 +172,7 @@ public class LocalOfficeConnection
* pipev := local_office_connection_pipe_name
* </pre>
*
- * @param url This is UNO URL which discribes the type of a connection.
+ * @param url This is UNO URL which describes the type of a connection.
*/
public void setUnoUrl(String url)
throws java.net.MalformedURLException
@@ -786,9 +786,9 @@ public class LocalOfficeConnection
}
/**
- * Retrives the ammount of time to wait for the startup.
+ * Retrives the amount of time to wait for the startup.
*
- * @return The ammount of time to wait in seconds(?).
+ * @return The amount of time to wait in seconds(?).
*/
public int getStartupTime()
{
diff --git a/bean/com/sun/star/comp/beans/LocalOfficeWindow.java b/bean/com/sun/star/comp/beans/LocalOfficeWindow.java
index bc3425fae770..c7be5fe4cdb9 100644
--- a/bean/com/sun/star/comp/beans/LocalOfficeWindow.java
+++ b/bean/com/sun/star/comp/beans/LocalOfficeWindow.java
@@ -238,14 +238,14 @@ public class LocalOfficeWindow
}
/**
- * Retrives a platform dependant system window identifier.
+ * Retrives a platform dependent system window identifier.
*
* @return The system window identifier.
*/
private native long getNativeWindow();
/**
- * Retrives a platform dependant system window type.
+ * Retrives a platform dependent system window type.
*
* @return The system window type.
*/
diff --git a/bean/com/sun/star/comp/beans/OOoBean.java b/bean/com/sun/star/comp/beans/OOoBean.java
index ae369cf47678..47b3a87655e0 100644
--- a/bean/com/sun/star/comp/beans/OOoBean.java
+++ b/bean/com/sun/star/comp/beans/OOoBean.java
@@ -458,7 +458,7 @@ public class OOoBean
to be called after the container window is displayed.
@throws SystemWindowException
- if no system window can be aquired.
+ if no system window can be acquired.
@throws NoConnectionException
if the connection is not established.
@@ -483,14 +483,14 @@ public class OOoBean
// @requirement FUNC.PAR.RWL/0.4
// @estimation 16h
/** This method must be called when the OOoBean before the
- sytem window may be released by it's parent AWT/Swing component.
+ system window may be released by it's parent AWT/Swing component.
This is the case when java.awt.Component.isDisplayable() returns
true. This is definitely the case when the OOoBean is removed
from it's parent container.
@throws SystemWindowException
- if system window is not aquired.
+ if system window is not acquired.
@throws NoConnectionException
if the connection is not established.
diff --git a/bean/com/sun/star/comp/beans/SystemWindowException.java b/bean/com/sun/star/comp/beans/SystemWindowException.java
index 30426b8632b9..593c6ffd2170 100644
--- a/bean/com/sun/star/comp/beans/SystemWindowException.java
+++ b/bean/com/sun/star/comp/beans/SystemWindowException.java
@@ -24,7 +24,7 @@
package com.sun.star.comp.beans;
/** indicates that an operation needed a system window,
- but no system window was aquired yet.
+ but no system window was acquired yet.
@see com.sun.star.comp.beans.OOoBean.aquireSystemWindow
diff --git a/bean/qa/complex/bean/OOoBeanTest.java b/bean/qa/complex/bean/OOoBeanTest.java
index 29699b5d6a62..6274a46b2632 100644
--- a/bean/qa/complex/bean/OOoBeanTest.java
+++ b/bean/qa/complex/bean/OOoBeanTest.java
@@ -467,7 +467,7 @@ public class OOoBeanTest
}
/** Tests focus problem just like test6, but the implementation is a little
- * different. The bean is added and removed from withing the event dispatch
+ * different. The bean is added and removed from within the event dispatch
* thread. Using Thread.sleep at various points (#1, #2, #3) seems to workaround
* the problem.
* @throws Exception
diff --git a/bean/qa/complex/bean/WriterFrame.java b/bean/qa/complex/bean/WriterFrame.java
index 43c42d92af8f..fb2869b197c7 100644
--- a/bean/qa/complex/bean/WriterFrame.java
+++ b/bean/qa/complex/bean/WriterFrame.java
@@ -172,7 +172,7 @@ class WriterFrame extends java.awt.Frame
|| client.width != unoWin.width
|| client.height != unoWin.height)
{
- System.out.println("\nPosition of client are of Java frame does not match the postion" +
+ System.out.println("\nPosition of client are of Java frame does not match the position" +
"of the UNO window. These are the values of Java frame, followed by" +
"the UNO window: ");
System.out.println(client);
diff --git a/binaryurp/source/writer.cxx b/binaryurp/source/writer.cxx
index 9cfffbca126a..47022ffadd92 100755
--- a/binaryurp/source/writer.cxx
+++ b/binaryurp/source/writer.cxx
@@ -132,7 +132,7 @@ void Writer::queueReply(
void Writer::unblock() {
// Assumes that osl::Condition::set works as a memory barrier, so that
- // changes made by preceeding sendDirectRequest/Reply calls are visible to
+ // changes made by preceding sendDirectRequest/Reply calls are visible to
// subsequent sendRequest/Reply calls:
unblocked_.set();
}
diff --git a/bridges/inc/bridges/cpp_uno/bridge.hxx b/bridges/inc/bridges/cpp_uno/bridge.hxx
index 3e7fd5096a1a..4490861f2fa6 100644
--- a/bridges/inc/bridges/cpp_uno/bridge.hxx
+++ b/bridges/inc/bridges/cpp_uno/bridge.hxx
@@ -463,7 +463,7 @@ inline void SAL_CALL cppu_cppenv_computeObjectIdentifier(
}
catch (::com::sun::star::uno::RuntimeException &)
{
- OSL_ENSURE( 0, "### RuntimeException occured udring queryInterface()!" );
+ OSL_ENSURE( 0, "### RuntimeException occurred udring queryInterface()!" );
}
}
}
diff --git a/bridges/inc/bridges/cpp_uno/shared/vtablefactory.hxx b/bridges/inc/bridges/cpp_uno/shared/vtablefactory.hxx
index 34c601bf91e6..00f6e24babf8 100644
--- a/bridges/inc/bridges/cpp_uno/shared/vtablefactory.hxx
+++ b/bridges/inc/bridges/cpp_uno/shared/vtablefactory.hxx
@@ -62,7 +62,7 @@ public:
void * start;
#ifdef USE_DOUBLE_MMAP
- /** When seperately mmapping the block for writing and executing
+ /** When separately mmapping the block for writing and executing
exec points to the same memory as start, except start is used
exclusively for writing and exec for executing
*/
diff --git a/bridges/source/cpp_uno/cc50_solaris_intel/cpp2uno.cxx b/bridges/source/cpp_uno/cc50_solaris_intel/cpp2uno.cxx
index e231fcada401..20b66332d299 100644
--- a/bridges/source/cpp_uno/cc50_solaris_intel/cpp2uno.cxx
+++ b/bridges/source/cpp_uno/cc50_solaris_intel/cpp2uno.cxx
@@ -155,7 +155,7 @@ void cpp2uno_call(
(*pThis->getUnoI()->pDispatcher)(
pThis->getUnoI(), pMemberTypeDescr, pUnoReturn, pUnoArgs, &pUnoExc );
- // in case no exception occured...
+ // in case no exception occurred...
if (pUnoExc)
{
// destruct temporary in/inout params
@@ -174,7 +174,7 @@ void cpp2uno_call(
&aUnoExc, pThis->getBridge()->getUno2Cpp() );
// has to destruct the any
}
- else // else no exception occured...
+ else // else no exception occurred...
{
// temporary params
for ( ; nTempIndizes--; )
diff --git a/bridges/source/cpp_uno/cc50_solaris_intel/except.cxx b/bridges/source/cpp_uno/cc50_solaris_intel/except.cxx
index ea2ca3bb3300..900772281410 100644
--- a/bridges/source/cpp_uno/cc50_solaris_intel/except.cxx
+++ b/bridges/source/cpp_uno/cc50_solaris_intel/except.cxx
@@ -329,7 +329,7 @@ void cc50_solaris_intel_raiseException( uno_Any * pUnoExc, uno_Mapping * pUno2Cp
OUStringToOString(
*reinterpret_cast< OUString const * >( &pUnoExc->pType->pTypeName ),
RTL_TEXTENCODING_ASCII_US ) );
- fprintf( stderr, "> uno exception occured: %s\n", cstr.getStr() );
+ fprintf( stderr, "> uno exception occurred: %s\n", cstr.getStr() );
#endif
bridges::cpp_uno::shared::ArrayPointer< unsigned char > thunkPtr(
new unsigned char[24]);
@@ -430,7 +430,7 @@ void cc50_solaris_intel_fillUnoException(
}
#if OSL_DEBUG_LEVEL > 1
- fprintf( stderr, "> c++ exception occured: %s\n",
+ fprintf( stderr, "> c++ exception occurred: %s\n",
::rtl::OUStringToOString(
pExcTypeDescr->pTypeName,
RTL_TEXTENCODING_ASCII_US ).getStr() );
diff --git a/bridges/source/cpp_uno/cc50_solaris_intel/uno2cpp.cxx b/bridges/source/cpp_uno/cc50_solaris_intel/uno2cpp.cxx
index 612ec11570cc..28ab5a060793 100644
--- a/bridges/source/cpp_uno/cc50_solaris_intel/uno2cpp.cxx
+++ b/bridges/source/cpp_uno/cc50_solaris_intel/uno2cpp.cxx
@@ -208,7 +208,7 @@ static inline void cpp_call(
nStackLongs
);
- // NO exception occured...
+ // NO exception occurred...
*ppUnoExc = 0;
// reconvert temporary params
diff --git a/bridges/source/cpp_uno/cc50_solaris_sparc/cpp2uno.cxx b/bridges/source/cpp_uno/cc50_solaris_sparc/cpp2uno.cxx
index e552dc545714..31bf1e9b11d6 100644
--- a/bridges/source/cpp_uno/cc50_solaris_sparc/cpp2uno.cxx
+++ b/bridges/source/cpp_uno/cc50_solaris_sparc/cpp2uno.cxx
@@ -158,7 +158,7 @@ static typelib_TypeClass cpp2uno_call(
(*pThis->getUnoI()->pDispatcher)(
pThis->getUnoI(), pMemberTypeDescr, pUnoReturn, pUnoArgs, &pUnoExc );
- // in case no exception occured...
+ // in case no exception occurred...
if (pUnoExc)
{
// destruct temporary in/inout params
@@ -179,7 +179,7 @@ static typelib_TypeClass cpp2uno_call(
// is here for dummy
return typelib_TypeClass_VOID;
}
- else // else no exception occured...
+ else // else no exception occurred...
{
// temporary params
for ( ; nTempIndizes--; )
diff --git a/bridges/source/cpp_uno/cc50_solaris_sparc/except.cxx b/bridges/source/cpp_uno/cc50_solaris_sparc/except.cxx
index ca0b414f9ec1..97c80e464bc4 100644
--- a/bridges/source/cpp_uno/cc50_solaris_sparc/except.cxx
+++ b/bridges/source/cpp_uno/cc50_solaris_sparc/except.cxx
@@ -330,7 +330,7 @@ void cc50_solaris_sparc_raiseException( uno_Any * pUnoExc, uno_Mapping * pUno2Cp
OUStringToOString(
*reinterpret_cast< OUString const * >( &pUnoExc->pType->pTypeName ),
RTL_TEXTENCODING_ASCII_US ) );
- fprintf( stderr, "> uno exception occured: %s\n", cstr.getStr() );
+ fprintf( stderr, "> uno exception occurred: %s\n", cstr.getStr() );
#endif
bridges::cpp_uno::shared::ArrayPointer< unsigned int > thunkPtr(
new unsigned int[6]);
@@ -423,7 +423,7 @@ void cc50_solaris_sparc_fillUnoException(
}
#if OSL_DEBUG_LEVEL > 1
- fprintf( stderr, "> c++ exception occured: %s\n",
+ fprintf( stderr, "> c++ exception occurred: %s\n",
::rtl::OUStringToOString(
pExcTypeDescr->pTypeName,
RTL_TEXTENCODING_ASCII_US ).getStr() );
diff --git a/bridges/source/cpp_uno/cc50_solaris_sparc/uno2cpp.cxx b/bridges/source/cpp_uno/cc50_solaris_sparc/uno2cpp.cxx
index 6e6538253826..939e96bf6c9b 100644
--- a/bridges/source/cpp_uno/cc50_solaris_sparc/uno2cpp.cxx
+++ b/bridges/source/cpp_uno/cc50_solaris_sparc/uno2cpp.cxx
@@ -199,7 +199,7 @@ static void cpp_call(
nStackLongs
);
- // NO exception occured...
+ // NO exception occurred...
*ppUnoExc = 0;
// reconvert temporary params
diff --git a/bridges/source/cpp_uno/gcc3_freebsd_intel/cpp2uno.cxx b/bridges/source/cpp_uno/gcc3_freebsd_intel/cpp2uno.cxx
index f58a9fe3dc28..03103e6d78d2 100644
--- a/bridges/source/cpp_uno/gcc3_freebsd_intel/cpp2uno.cxx
+++ b/bridges/source/cpp_uno/gcc3_freebsd_intel/cpp2uno.cxx
@@ -159,7 +159,7 @@ void cpp2uno_call(
(*pThis->getUnoI()->pDispatcher)(
pThis->getUnoI(), pMemberTypeDescr, pUnoReturn, pUnoArgs, &pUnoExc );
- // in case an exception occured...
+ // in case an exception occurred...
if (pUnoExc)
{
// destruct temporary in/inout params
@@ -178,7 +178,7 @@ void cpp2uno_call(
&aUnoExc, pThis->getBridge()->getUno2Cpp() );
// has to destruct the any
}
- else // else no exception occured...
+ else // else no exception occurred...
{
// temporary params
for ( ; nTempIndizes--; )
diff --git a/bridges/source/cpp_uno/gcc3_freebsd_intel/except.cxx b/bridges/source/cpp_uno/gcc3_freebsd_intel/except.cxx
index 0a0c8bed24f8..307185f58a8e 100644
--- a/bridges/source/cpp_uno/gcc3_freebsd_intel/except.cxx
+++ b/bridges/source/cpp_uno/gcc3_freebsd_intel/except.cxx
@@ -24,7 +24,12 @@
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_bridges.hxx"
+#if ((__GNUC__ == 4) && (__GNUC_MINOR__ >= 6))
+#include <exception>
+#endif
+
#include <stdio.h>
+#include <string.h>
#include <dlfcn.h>
#include <cxxabi.h>
#include <hash_map>
@@ -233,7 +238,7 @@ void raiseException( uno_Any * pUnoExc, uno_Mapping * pUno2Cpp )
OUStringToOString(
*reinterpret_cast< OUString const * >( &pUnoExc->pType->pTypeName ),
RTL_TEXTENCODING_ASCII_US ) );
- fprintf( stderr, "> uno exception occured: %s\n", cstr.getStr() );
+ fprintf( stderr, "> uno exception occurred: %s\n", cstr.getStr() );
#endif
void * pCppExc;
type_info * rtti;
@@ -307,7 +312,7 @@ void fillUnoException( __cxa_exception * header, uno_Any * pUnoExc, uno_Mapping
OUString unoName( toUNOname( header->exceptionType->name() ) );
#if OSL_DEBUG_LEVEL > 1
OString cstr_unoName( OUStringToOString( unoName, RTL_TEXTENCODING_ASCII_US ) );
- fprintf( stderr, "> c++ exception occured: %s\n", cstr_unoName.getStr() );
+ fprintf( stderr, "> c++ exception occurred: %s\n", cstr_unoName.getStr() );
#endif
typelib_typedescription_getByName( &pExcTypeDescr, unoName.pData );
if (0 == pExcTypeDescr)
diff --git a/bridges/source/cpp_uno/gcc3_freebsd_intel/uno2cpp.cxx b/bridges/source/cpp_uno/gcc3_freebsd_intel/uno2cpp.cxx
index a11653131c27..a3651338d982 100644
--- a/bridges/source/cpp_uno/gcc3_freebsd_intel/uno2cpp.cxx
+++ b/bridges/source/cpp_uno/gcc3_freebsd_intel/uno2cpp.cxx
@@ -266,7 +266,7 @@ static void cpp_call(
pAdjustedThisPtr, aVtableSlot.index,
pCppReturn, pReturnTypeDescr->eTypeClass,
(sal_Int32 *)pCppStackStart, (pCppStack - pCppStackStart) / sizeof(sal_Int32) );
- // NO exception occured...
+ // NO exception occurred...
*ppUnoExc = 0;
// reconvert temporary params
diff --git a/bridges/source/cpp_uno/gcc3_freebsd_powerpc/cpp2uno.cxx b/bridges/source/cpp_uno/gcc3_freebsd_powerpc/cpp2uno.cxx
new file mode 100644
index 000000000000..7ec40d1467b3
--- /dev/null
+++ b/bridges/source/cpp_uno/gcc3_freebsd_powerpc/cpp2uno.cxx
@@ -0,0 +1,791 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_bridges.hxx"
+
+#include <string.h>
+
+#include <com/sun/star/uno/genfunc.hxx>
+#include <uno/data.h>
+#include <typelib/typedescription.hxx>
+
+#include "bridges/cpp_uno/shared/bridge.hxx"
+#include "bridges/cpp_uno/shared/cppinterfaceproxy.hxx"
+#include "bridges/cpp_uno/shared/types.hxx"
+#include "bridges/cpp_uno/shared/vtablefactory.hxx"
+
+#include "share.hxx"
+// #include <stdio.h>
+
+
+using namespace ::com::sun::star::uno;
+
+namespace
+{
+
+//==================================================================================================
+static typelib_TypeClass cpp2uno_call(
+ bridges::cpp_uno::shared::CppInterfaceProxy * pThis,
+ const typelib_TypeDescription * pMemberTypeDescr,
+ typelib_TypeDescriptionReference * pReturnTypeRef, // 0 indicates void return
+ sal_Int32 nParams, typelib_MethodParameter * pParams,
+ void ** gpreg, void ** fpreg, void ** ovrflw,
+ sal_Int64 * pRegisterReturn /* space for register return */ )
+{
+ int ng = 0; //number of gpr registers used
+#ifndef __NO_FPRS__
+ int nf = 0; //number of fpr regsiters used
+#endif
+ void ** pCppStack; //temporary stack pointer
+
+ // gpreg: [ret *], this, [gpr params]
+ // fpreg: [fpr params]
+ // ovrflw: [gpr or fpr params (properly aligned)]
+
+ // return
+ typelib_TypeDescription * pReturnTypeDescr = 0;
+ if (pReturnTypeRef)
+ TYPELIB_DANGER_GET( &pReturnTypeDescr, pReturnTypeRef );
+
+ void * pUnoReturn = 0;
+ void * pCppReturn = 0; // complex return ptr: if != 0 && != pUnoReturn, reconversion need
+
+ if (pReturnTypeDescr)
+ {
+ if (bridges::cpp_uno::shared::isSimpleType( pReturnTypeDescr ))
+ {
+ pUnoReturn = pRegisterReturn; // direct way for simple types
+ }
+ else // complex return via ptr (pCppReturn)
+ {
+ pCppReturn = *(void **)gpreg;
+ gpreg++;
+ ng++;
+
+ pUnoReturn = (bridges::cpp_uno::shared::relatesToInterfaceType( pReturnTypeDescr )
+ ? alloca( pReturnTypeDescr->nSize )
+ : pCppReturn); // direct way
+ }
+ }
+ // pop this
+ gpreg++;
+ ng++;
+
+ // stack space
+ OSL_ENSURE( sizeof(void *) == sizeof(sal_Int32), "### unexpected size!" );
+ // parameters
+ void ** pUnoArgs = (void **)alloca( 4 * sizeof(void *) * nParams );
+ void ** pCppArgs = pUnoArgs + nParams;
+ // indizes of values this have to be converted (interface conversion cpp<=>uno)
+ sal_Int32 * pTempIndizes = (sal_Int32 *)(pUnoArgs + (2 * nParams));
+ // type descriptions for reconversions
+ typelib_TypeDescription ** ppTempParamTypeDescr = (typelib_TypeDescription **)(pUnoArgs + (3 * nParams));
+
+ sal_Int32 nTempIndizes = 0;
+
+ for ( sal_Int32 nPos = 0; nPos < nParams; ++nPos )
+ {
+ const typelib_MethodParameter & rParam = pParams[nPos];
+ typelib_TypeDescription * pParamTypeDescr = 0;
+ TYPELIB_DANGER_GET( &pParamTypeDescr, rParam.pTypeRef );
+
+ if (!rParam.bOut && bridges::cpp_uno::shared::isSimpleType( pParamTypeDescr ))
+ // value
+ {
+
+ switch (pParamTypeDescr->eTypeClass)
+ {
+
+ case typelib_TypeClass_DOUBLE:
+#ifndef __NO_FPRS__
+ if (nf < 8) {
+ pCppArgs[nPos] = fpreg;
+ pUnoArgs[nPos] = fpreg;
+ nf++;
+ fpreg += 2;
+#else
+ if (ng & 1) {
+ ng++;
+ gpreg++;
+ }
+ if (ng < 8) {
+ pCppArgs[nPos] = gpreg;
+ pUnoArgs[nPos] = gpreg;
+ ng += 2;
+ gpreg += 2;
+#endif
+ } else {
+ if (((long)ovrflw) & 4) ovrflw++;
+ pCppArgs[nPos] = ovrflw;
+ pUnoArgs[nPos] = ovrflw;
+ ovrflw += 2;
+ }
+ break;
+
+ case typelib_TypeClass_FLOAT:
+ // fpreg are all double values so need to
+ // modify fpreg to be a single word float value
+#ifndef __NO_FPRS__
+ if (nf < 8) {
+ float tmp = (float) (*((double *)fpreg));
+ (*((float *) fpreg)) = tmp;
+ pCppArgs[nPos] = fpreg;
+ pUnoArgs[nPos] = fpreg;
+ nf++;
+ fpreg += 2;
+#else
+ if (ng < 8) {
+ pCppArgs[nPos] = gpreg;
+ pUnoArgs[nPos] = gpreg;
+ ng++;
+ gpreg++;
+#endif
+ } else {
+#if 0 /* abi is not being followed correctly */
+ if (((long)ovrflw) & 4) ovrflw++;
+ float tmp = (float) (*((double *)ovrflw));
+ (*((float *) ovrflw)) = tmp;
+ pCppArgs[nPos] = ovrflw;
+ pUnoArgs[nPos] = ovrflw;
+ ovrflw += 2;
+#else
+ pCppArgs[nPos] = ovrflw;
+ pUnoArgs[nPos] = ovrflw;
+ ovrflw += 1;
+#endif
+ }
+ break;
+
+ case typelib_TypeClass_HYPER:
+ case typelib_TypeClass_UNSIGNED_HYPER:
+ if (ng & 1) {
+ ng++;
+ gpreg++;
+ }
+ if (ng < 8) {
+ pCppArgs[nPos] = gpreg;
+ pUnoArgs[nPos] = gpreg;
+ ng += 2;
+ gpreg += 2;
+ } else {
+ if (((long)ovrflw) & 4) ovrflw++;
+ pCppArgs[nPos] = ovrflw;
+ pUnoArgs[nPos] = ovrflw;
+ ovrflw += 2;
+ }
+ break;
+
+ case typelib_TypeClass_BYTE:
+ case typelib_TypeClass_BOOLEAN:
+ if (ng < 8) {
+ pCppArgs[nPos] = (((char *)gpreg) + 3);
+ pUnoArgs[nPos] = (((char *)gpreg) + 3);
+ ng++;
+ gpreg++;
+ } else {
+ pCppArgs[nPos] = (((char *)ovrflw) + 3);
+ pUnoArgs[nPos] = (((char *)ovrflw) + 3);
+ ovrflw++;
+ }
+ break;
+
+
+ case typelib_TypeClass_CHAR:
+ case typelib_TypeClass_SHORT:
+ case typelib_TypeClass_UNSIGNED_SHORT:
+ if (ng < 8) {
+ pCppArgs[nPos] = (((char *)gpreg)+ 2);
+ pUnoArgs[nPos] = (((char *)gpreg)+ 2);
+ ng++;
+ gpreg++;
+ } else {
+ pCppArgs[nPos] = (((char *)ovrflw) + 2);
+ pUnoArgs[nPos] = (((char *)ovrflw) + 2);
+ ovrflw++;
+ }
+ break;
+
+
+ default:
+ if (ng < 8) {
+ pCppArgs[nPos] = gpreg;
+ pUnoArgs[nPos] = gpreg;
+ ng++;
+ gpreg++;
+ } else {
+ pCppArgs[nPos] = ovrflw;
+ pUnoArgs[nPos] = ovrflw;
+ ovrflw++;
+ }
+ break;
+
+ }
+ // no longer needed
+ TYPELIB_DANGER_RELEASE( pParamTypeDescr );
+ }
+ else // ptr to complex value | ref
+ {
+
+ if (ng < 8) {
+ pCppArgs[nPos] = *(void **)gpreg;
+ pCppStack = gpreg;
+ ng++;
+ gpreg++;
+ } else {
+ pCppArgs[nPos] = *(void **)ovrflw;
+ pCppStack = ovrflw;
+ ovrflw++;
+ }
+
+ if (! rParam.bIn) // is pure out
+ {
+ // uno out is unconstructed mem!
+ pUnoArgs[nPos] = alloca( pParamTypeDescr->nSize );
+ pTempIndizes[nTempIndizes] = nPos;
+ // will be released at reconversion
+ ppTempParamTypeDescr[nTempIndizes++] = pParamTypeDescr;
+ }
+ // is in/inout
+ else if (bridges::cpp_uno::shared::relatesToInterfaceType( pParamTypeDescr ))
+ {
+ uno_copyAndConvertData( pUnoArgs[nPos] = alloca( pParamTypeDescr->nSize ),
+ *(void **)pCppStack, pParamTypeDescr,
+ pThis->getBridge()->getCpp2Uno() );
+ pTempIndizes[nTempIndizes] = nPos; // has to be reconverted
+ // will be released at reconversion
+ ppTempParamTypeDescr[nTempIndizes++] = pParamTypeDescr;
+ }
+ else // direct way
+ {
+ pUnoArgs[nPos] = *(void **)pCppStack;
+ // no longer needed
+ TYPELIB_DANGER_RELEASE( pParamTypeDescr );
+ }
+ }
+ }
+
+ // ExceptionHolder
+ uno_Any aUnoExc; // Any will be constructed by callee
+ uno_Any * pUnoExc = &aUnoExc;
+
+ // invoke uno dispatch call
+ (*pThis->getUnoI()->pDispatcher)( pThis->getUnoI(), pMemberTypeDescr, pUnoReturn, pUnoArgs, &pUnoExc );
+
+ // in case an exception occurred...
+ if (pUnoExc)
+ {
+ // destruct temporary in/inout params
+ for ( ; nTempIndizes--; )
+ {
+ sal_Int32 nIndex = pTempIndizes[nTempIndizes];
+
+ if (pParams[nIndex].bIn) // is in/inout => was constructed
+ uno_destructData( pUnoArgs[nIndex], ppTempParamTypeDescr[nTempIndizes], 0 );
+ TYPELIB_DANGER_RELEASE( ppTempParamTypeDescr[nTempIndizes] );
+ }
+ if (pReturnTypeDescr)
+ TYPELIB_DANGER_RELEASE( pReturnTypeDescr );
+
+ CPPU_CURRENT_NAMESPACE::raiseException( &aUnoExc, pThis->getBridge()->getUno2Cpp() );
+ // has to destruct the any
+ // is here for dummy
+ return typelib_TypeClass_VOID;
+ }
+ else // else no exception occurred...
+ {
+ // temporary params
+ for ( ; nTempIndizes--; )
+ {
+ sal_Int32 nIndex = pTempIndizes[nTempIndizes];
+ typelib_TypeDescription * pParamTypeDescr = ppTempParamTypeDescr[nTempIndizes];
+
+ if (pParams[nIndex].bOut) // inout/out
+ {
+ // convert and assign
+ uno_destructData( pCppArgs[nIndex], pParamTypeDescr, cpp_release );
+ uno_copyAndConvertData( pCppArgs[nIndex], pUnoArgs[nIndex], pParamTypeDescr,
+ pThis->getBridge()->getUno2Cpp() );
+ }
+ // destroy temp uno param
+ uno_destructData( pUnoArgs[nIndex], pParamTypeDescr, 0 );
+
+ TYPELIB_DANGER_RELEASE( pParamTypeDescr );
+ }
+ // return
+ if (pCppReturn) // has complex return
+ {
+ if (pUnoReturn != pCppReturn) // needs reconversion
+ {
+ uno_copyAndConvertData( pCppReturn, pUnoReturn, pReturnTypeDescr,
+ pThis->getBridge()->getUno2Cpp() );
+ // destroy temp uno return
+ uno_destructData( pUnoReturn, pReturnTypeDescr, 0 );
+ }
+ // complex return ptr is set to return reg
+ *(void **)pRegisterReturn = pCppReturn;
+ }
+ if (pReturnTypeDescr)
+ {
+ typelib_TypeClass eRet = (typelib_TypeClass)pReturnTypeDescr->eTypeClass;
+ TYPELIB_DANGER_RELEASE( pReturnTypeDescr );
+ return eRet;
+ }
+ else
+ return typelib_TypeClass_VOID;
+ }
+}
+
+
+//==================================================================================================
+static typelib_TypeClass cpp_mediate(
+ sal_Int32 nFunctionIndex,
+ sal_Int32 nVtableOffset,
+ void ** gpreg, void ** fpreg, void ** ovrflw,
+ sal_Int64 * pRegisterReturn /* space for register return */ )
+{
+ OSL_ENSURE( sizeof(sal_Int32)==sizeof(void *), "### unexpected!" );
+
+ // gpreg: [ret *], this, [other gpr params]
+ // fpreg: [fpr params]
+ // ovrflw: [gpr or fpr params (properly aligned)]
+
+ void * pThis;
+ if (nFunctionIndex & 0x80000000 )
+ {
+ nFunctionIndex &= 0x7fffffff;
+ pThis = gpreg[1];
+ }
+ else
+ {
+ pThis = gpreg[0];
+ }
+
+ pThis = static_cast< char * >(pThis) - nVtableOffset;
+ bridges::cpp_uno::shared::CppInterfaceProxy * pCppI
+ = bridges::cpp_uno::shared::CppInterfaceProxy::castInterfaceToProxy(
+ pThis);
+
+ typelib_InterfaceTypeDescription * pTypeDescr = pCppI->getTypeDescr();
+
+ OSL_ENSURE( nFunctionIndex < pTypeDescr->nMapFunctionIndexToMemberIndex, "### illegal vtable index!" );
+ if (nFunctionIndex >= pTypeDescr->nMapFunctionIndexToMemberIndex)
+ {
+ throw RuntimeException(
+ rtl::OUString::createFromAscii("illegal vtable index!"),
+ (XInterface *)pThis );
+ }
+
+ // determine called method
+ sal_Int32 nMemberPos = pTypeDescr->pMapFunctionIndexToMemberIndex[nFunctionIndex];
+ OSL_ENSURE( nMemberPos < pTypeDescr->nAllMembers, "### illegal member index!" );
+
+ TypeDescription aMemberDescr( pTypeDescr->ppAllMembers[nMemberPos] );
+
+ typelib_TypeClass eRet;
+ switch (aMemberDescr.get()->eTypeClass)
+ {
+ case typelib_TypeClass_INTERFACE_ATTRIBUTE:
+ {
+ if (pTypeDescr->pMapMemberIndexToFunctionIndex[nMemberPos] == nFunctionIndex)
+ {
+ // is GET method
+ eRet = cpp2uno_call(
+ pCppI, aMemberDescr.get(),
+ ((typelib_InterfaceAttributeTypeDescription *)aMemberDescr.get())->pAttributeTypeRef,
+ 0, 0, // no params
+ gpreg, fpreg, ovrflw, pRegisterReturn );
+ }
+ else
+ {
+ // is SET method
+ typelib_MethodParameter aParam;
+ aParam.pTypeRef =
+ ((typelib_InterfaceAttributeTypeDescription *)aMemberDescr.get())->pAttributeTypeRef;
+ aParam.bIn = sal_True;
+ aParam.bOut = sal_False;
+
+ eRet = cpp2uno_call(
+ pCppI, aMemberDescr.get(),
+ 0, // indicates void return
+ 1, &aParam,
+ gpreg, fpreg, ovrflw, pRegisterReturn );
+ }
+ break;
+ }
+ case typelib_TypeClass_INTERFACE_METHOD:
+ {
+ // is METHOD
+ switch (nFunctionIndex)
+ {
+ case 1: // acquire()
+ pCppI->acquireProxy(); // non virtual call!
+ eRet = typelib_TypeClass_VOID;
+ break;
+ case 2: // release()
+ pCppI->releaseProxy(); // non virtual call!
+ eRet = typelib_TypeClass_VOID;
+ break;
+ case 0: // queryInterface() opt
+ {
+ typelib_TypeDescription * pTD = 0;
+ TYPELIB_DANGER_GET( &pTD, reinterpret_cast< Type * >( gpreg[2] )->getTypeLibType() );
+ if (pTD)
+ {
+ XInterface * pInterface = 0;
+ (*pCppI->getBridge()->getCppEnv()->getRegisteredInterface)(
+ pCppI->getBridge()->getCppEnv(),
+ (void **)&pInterface, pCppI->getOid().pData,
+ (typelib_InterfaceTypeDescription *)pTD );
+
+ if (pInterface)
+ {
+ ::uno_any_construct(
+ reinterpret_cast< uno_Any * >( gpreg[0] ),
+ &pInterface, pTD, cpp_acquire );
+ pInterface->release();
+ TYPELIB_DANGER_RELEASE( pTD );
+ *(void **)pRegisterReturn = gpreg[0];
+ eRet = typelib_TypeClass_ANY;
+ break;
+ }
+ TYPELIB_DANGER_RELEASE( pTD );
+ }
+ } // else perform queryInterface()
+ default:
+ eRet = cpp2uno_call(
+ pCppI, aMemberDescr.get(),
+ ((typelib_InterfaceMethodTypeDescription *)aMemberDescr.get())->pReturnTypeRef,
+ ((typelib_InterfaceMethodTypeDescription *)aMemberDescr.get())->nParams,
+ ((typelib_InterfaceMethodTypeDescription *)aMemberDescr.get())->pParams,
+ gpreg, fpreg, ovrflw, pRegisterReturn );
+ }
+ break;
+ }
+ default:
+ {
+ throw RuntimeException(
+ rtl::OUString::createFromAscii("no member description found!"),
+ (XInterface *)pThis );
+ // is here for dummy
+ eRet = typelib_TypeClass_VOID;
+ }
+ }
+
+ return eRet;
+}
+
+//==================================================================================================
+/**
+ * is called on incoming vtable calls
+ * (called by asm snippets)
+ */
+static void cpp_vtable_call( int nFunctionIndex, int nVtableOffset, void** gpregptr, void** fpregptr, void** ovrflw)
+{
+ sal_Int32 gpreg[8];
+ memcpy( gpreg, gpregptr, 32);
+
+#ifndef __NO_FPRS__
+ double fpreg[8];
+ memcpy( fpreg, fpregptr, 64);
+#endif
+
+ volatile long nRegReturn[2];
+
+ // fprintf(stderr,"in cpp_vtable_call nFunctionIndex is %x\n",nFunctionIndex);
+ // fprintf(stderr,"in cpp_vtable_call nVtableOffset is %x\n",nVtableOffset);
+ // fflush(stderr);
+
+ typelib_TypeClass aType =
+ cpp_mediate( nFunctionIndex, nVtableOffset, (void**)gpreg,
+#ifndef __NO_FPRS__
+ (void**)fpreg,
+#else
+ NULL,
+#endif
+ ovrflw, (sal_Int64*)nRegReturn );
+
+ switch( aType )
+ {
+
+ // move return value into register space
+ // (will be loaded by machine code snippet)
+
+ case typelib_TypeClass_BOOLEAN:
+ case typelib_TypeClass_BYTE:
+ __asm__( "lbz 3,%0\n\t" : :
+ "m"(nRegReturn[0]) );
+ break;
+
+ case typelib_TypeClass_CHAR:
+ case typelib_TypeClass_SHORT:
+ case typelib_TypeClass_UNSIGNED_SHORT:
+ __asm__( "lhz 3,%0\n\t" : :
+ "m"(nRegReturn[0]) );
+ break;
+
+ case typelib_TypeClass_FLOAT:
+#ifndef __NO_FPRS__
+ __asm__( "lfs 1,%0\n\t" : :
+ "m" (*((float*)nRegReturn)) );
+ #else
+ __asm__( "lwz 3,%0\n\t" : :
+ "m"(nRegReturn[0]) );
+#endif
+ break;
+
+ case typelib_TypeClass_DOUBLE:
+#ifndef __NO_FPRS__
+ __asm__( "lfd 1,%0\n\t" : :
+ "m" (*((double*)nRegReturn)) );
+#else
+ __asm__( "lwz 3,%0\n\t" : :
+ "m"(nRegReturn[0]) );
+ __asm__( "lwz 4,%0\n\t" : :
+ "m"(nRegReturn[1]) );
+#endif
+ break;
+
+ case typelib_TypeClass_HYPER:
+ case typelib_TypeClass_UNSIGNED_HYPER:
+ __asm__( "lwz 4,%0\n\t" : :
+ "m"(nRegReturn[1]) ); // fall through
+
+ default:
+ __asm__( "lwz 3,%0\n\t" : :
+ "m"(nRegReturn[0]) );
+ break;
+ }
+}
+
+
+int const codeSnippetSize = 108;
+
+unsigned char * codeSnippet( unsigned char * code, sal_Int32 functionIndex, sal_Int32 vtableOffset,
+ bool simpleRetType)
+{
+
+ // fprintf(stderr,"in codeSnippet functionIndex is %x\n", functionIndex);
+ // fprintf(stderr,"in codeSnippet vtableOffset is %x\n", vtableOffset);
+ // fflush(stderr);
+
+ if (! simpleRetType )
+ functionIndex |= 0x80000000;
+
+ unsigned long * p = (unsigned long *) code;
+
+ // OSL_ASSERT( sizeof (long) == 4 );
+ OSL_ASSERT((((unsigned long)code) & 0x3) == 0 ); //aligned to 4 otherwise a mistake
+
+ /* generate this code */
+ // # so first save gpr 3 to gpr 10 (aligned to 4)
+ // stw r3,-2048(r1)
+ // stw r4,-2044(r1)
+ // stw r5,-2040(r1)
+ // stw r6,-2036(r1)
+ // stw r7,-2032(r1)
+ // stw r8,-2028(r1)
+ // stw r9,-2024(r1)
+ // stw r10,-2020(r1)
+
+
+ // # next save fpr 1 to fpr 8 (aligned to 8)
+ // if dedicated floating point registers are used
+ // stfd f1,-2016(r1)
+ // stfd f2,-2008(r1)
+ // stfd f3,-2000(r1)
+ // stfd f4,-1992(r1)
+ // stfd f5,-1984(r1)
+ // stfd f6,-1976(r1)
+ // stfd f7,-1968(r1)
+ // stfd f8,-1960(r1)
+
+ // # now here is where cpp_vtable_call must go
+ // lis r3,-8531
+ // ori r3,r3,48879
+ // mtctr r3
+
+ // # now load up the functionIndex
+ // lis r3,-8531
+ // ori r3,r3,48879
+
+ // # now load up the vtableOffset
+ // lis r4,-8531
+ // ori r4,r4,48879
+
+ // #now load up the pointer to the saved gpr registers
+ // addi r5,r1,-2048
+
+ // #now load up the pointer to the saved fpr registers
+ // addi r6,r1,-2016
+ // if no dedicated floating point registers are used than we have NULL
+ // pointer there
+ // li r6, 0
+ //
+
+ // #now load up the pointer to the overflow call stack
+ // addi r7,r1,8
+ // bctr
+
+ * p++ = 0x9061f800;
+ * p++ = 0x9081f804;
+ * p++ = 0x90a1f808;
+ * p++ = 0x90c1f80c;
+ * p++ = 0x90e1f810;
+ * p++ = 0x9101f814;
+ * p++ = 0x9121f818;
+ * p++ = 0x9141f81c;
+#ifndef __NO_FPRS__
+ * p++ = 0xd821f820;
+ * p++ = 0xd841f828;
+ * p++ = 0xd861f830;
+ * p++ = 0xd881f838;
+ * p++ = 0xd8a1f840;
+ * p++ = 0xd8c1f848;
+ * p++ = 0xd8e1f850;
+ * p++ = 0xd901f858;
+#else
+ /* these nops could be replaced with a smaller codeSnippetSize - 8 * 4 */
+ * p++ = 0x60000000;
+ * p++ = 0x60000000;
+ * p++ = 0x60000000;
+ * p++ = 0x60000000;
+ * p++ = 0x60000000;
+ * p++ = 0x60000000;
+ * p++ = 0x60000000;
+ * p++ = 0x60000000;
+#endif
+ * p++ = 0x3c600000 | (((unsigned long)cpp_vtable_call) >> 16);
+ * p++ = 0x60630000 | (((unsigned long)cpp_vtable_call) & 0x0000FFFF);
+ * p++ = 0x7c6903a6;
+ * p++ = 0x3c600000 | (((unsigned long)functionIndex) >> 16);
+ * p++ = 0x60630000 | (((unsigned long)functionIndex) & 0x0000FFFF);
+ * p++ = 0x3c800000 | (((unsigned long)vtableOffset) >> 16);
+ * p++ = 0x60840000 | (((unsigned long)vtableOffset) & 0x0000FFFF);
+ * p++ = 0x38a1f800;
+#ifndef __NO_FPRS__
+ * p++ = 0x38c1f820;
+#else
+ * p++ = 0x38c00000;
+#endif
+ * p++ = 0x38e10008;
+ * p++ = 0x4e800420;
+ return (code + codeSnippetSize);
+
+}
+
+
+}
+
+void bridges::cpp_uno::shared::VtableFactory::flushCode(unsigned char const * bptr, unsigned char const * eptr)
+{
+ int const lineSize = 32;
+ for (unsigned char const * p = bptr; p < eptr + lineSize; p += lineSize) {
+ __asm__ volatile ("dcbst 0, %0" : : "r"(p) : "memory");
+ }
+ __asm__ volatile ("sync" : : : "memory");
+ for (unsigned char const * p = bptr; p < eptr + lineSize; p += lineSize) {
+ __asm__ volatile ("icbi 0, %0" : : "r"(p) : "memory");
+ }
+ __asm__ volatile ("isync" : : : "memory");
+}
+
+struct bridges::cpp_uno::shared::VtableFactory::Slot { void * fn; };
+
+bridges::cpp_uno::shared::VtableFactory::Slot *
+bridges::cpp_uno::shared::VtableFactory::mapBlockToVtable(void * block)
+{
+ return static_cast< Slot * >(block) + 2;
+}
+
+sal_Size bridges::cpp_uno::shared::VtableFactory::getBlockSize(
+ sal_Int32 slotCount)
+{
+ return (slotCount + 2) * sizeof (Slot) + slotCount * codeSnippetSize;
+}
+
+bridges::cpp_uno::shared::VtableFactory::Slot *
+bridges::cpp_uno::shared::VtableFactory::initializeBlock(
+ void * block, sal_Int32 slotCount)
+{
+ Slot * slots = mapBlockToVtable(block);
+ slots[-2].fn = 0;
+ slots[-1].fn = 0;
+ return slots + slotCount;
+}
+
+unsigned char * bridges::cpp_uno::shared::VtableFactory::addLocalFunctions(
+ Slot ** slots, unsigned char * code, sal_PtrDiff writetoexecdiff,
+ typelib_InterfaceTypeDescription const * type, sal_Int32 functionOffset,
+ sal_Int32 functionCount, sal_Int32 vtableOffset)
+{
+ (*slots) -= functionCount;
+ Slot * s = *slots;
+ // fprintf(stderr, "in addLocalFunctions functionOffset is %x\n",functionOffset);
+ // fprintf(stderr, "in addLocalFunctions vtableOffset is %x\n",vtableOffset);
+ // fflush(stderr);
+
+ for (sal_Int32 i = 0; i < type->nMembers; ++i) {
+ typelib_TypeDescription * member = 0;
+ TYPELIB_DANGER_GET(&member, type->ppMembers[i]);
+ OSL_ASSERT(member != 0);
+ switch (member->eTypeClass) {
+ case typelib_TypeClass_INTERFACE_ATTRIBUTE:
+ // Getter:
+ (s++)->fn = code + writetoexecdiff;
+ code = codeSnippet(
+ code, functionOffset++, vtableOffset,
+ bridges::cpp_uno::shared::isSimpleType(
+ reinterpret_cast<
+ typelib_InterfaceAttributeTypeDescription * >(
+ member)->pAttributeTypeRef));
+
+ // Setter:
+ if (!reinterpret_cast<
+ typelib_InterfaceAttributeTypeDescription * >(
+ member)->bReadOnly)
+ {
+ (s++)->fn = code + writetoexecdiff;
+ code = codeSnippet(code, functionOffset++, vtableOffset, true);
+ }
+ break;
+
+ case typelib_TypeClass_INTERFACE_METHOD:
+ (s++)->fn = code + writetoexecdiff;
+ code = codeSnippet(
+ code, functionOffset++, vtableOffset,
+ bridges::cpp_uno::shared::isSimpleType(
+ reinterpret_cast<
+ typelib_InterfaceMethodTypeDescription * >(
+ member)->pReturnTypeRef));
+ break;
+
+ default:
+ OSL_ASSERT(false);
+ break;
+ }
+ TYPELIB_DANGER_RELEASE(member);
+ }
+ return code;
+}
+
diff --git a/bridges/source/cpp_uno/gcc3_freebsd_powerpc/except.cxx b/bridges/source/cpp_uno/gcc3_freebsd_powerpc/except.cxx
new file mode 100644
index 000000000000..507f671dd3b0
--- /dev/null
+++ b/bridges/source/cpp_uno/gcc3_freebsd_powerpc/except.cxx
@@ -0,0 +1,283 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_bridges.hxx"
+
+#include <stdio.h>
+#include <string.h>
+#include <dlfcn.h>
+#include <cxxabi.h>
+#include <hash_map>
+
+#include <rtl/strbuf.hxx>
+#include <rtl/ustrbuf.hxx>
+#include <osl/diagnose.h>
+#include <osl/mutex.hxx>
+
+#include <com/sun/star/uno/genfunc.hxx>
+#include <typelib/typedescription.hxx>
+#include <uno/any2.h>
+
+#include "share.hxx"
+
+
+using namespace ::std;
+using namespace ::osl;
+using namespace ::rtl;
+using namespace ::com::sun::star::uno;
+using namespace ::__cxxabiv1;
+
+
+namespace CPPU_CURRENT_NAMESPACE
+{
+
+void dummy_can_throw_anything( char const * )
+{
+}
+
+//==================================================================================================
+static OUString toUNOname( char const * p ) SAL_THROW( () )
+{
+#if OSL_DEBUG_LEVEL > 1
+ char const * start = p;
+#endif
+
+ // example: N3com3sun4star4lang24IllegalArgumentExceptionE
+
+ OUStringBuffer buf( 64 );
+ OSL_ASSERT( 'N' == *p );
+ ++p; // skip N
+
+ while ('E' != *p)
+ {
+ // read chars count
+ long n = (*p++ - '0');
+ while ('0' <= *p && '9' >= *p)
+ {
+ n *= 10;
+ n += (*p++ - '0');
+ }
+ buf.appendAscii( p, n );
+ p += n;
+ if ('E' != *p)
+ buf.append( (sal_Unicode)'.' );
+ }
+
+#if OSL_DEBUG_LEVEL > 1
+ OUString ret( buf.makeStringAndClear() );
+ OString c_ret( OUStringToOString( ret, RTL_TEXTENCODING_ASCII_US ) );
+ fprintf( stderr, "> toUNOname(): %s => %s\n", start, c_ret.getStr() );
+ return ret;
+#else
+ return buf.makeStringAndClear();
+#endif
+}
+
+//==================================================================================================
+class RTTI
+{
+ typedef hash_map< OUString, type_info *, OUStringHash > t_rtti_map;
+
+ Mutex m_mutex;
+ t_rtti_map m_rttis;
+ t_rtti_map m_generatedRttis;
+
+ void * m_hApp;
+
+public:
+ RTTI() SAL_THROW( () );
+ ~RTTI() SAL_THROW( () );
+
+ type_info * getRTTI( typelib_CompoundTypeDescription * ) SAL_THROW( () );
+};
+//__________________________________________________________________________________________________
+RTTI::RTTI() SAL_THROW( () )
+ : m_hApp( dlopen( 0, RTLD_LAZY ) )
+{
+}
+//__________________________________________________________________________________________________
+RTTI::~RTTI() SAL_THROW( () )
+{
+ dlclose( m_hApp );
+}
+
+//__________________________________________________________________________________________________
+type_info * RTTI::getRTTI( typelib_CompoundTypeDescription *pTypeDescr ) SAL_THROW( () )
+{
+ type_info * rtti;
+
+ OUString const & unoName = *(OUString const *)&pTypeDescr->aBase.pTypeName;
+
+ MutexGuard guard( m_mutex );
+ t_rtti_map::const_iterator iRttiFind( m_rttis.find( unoName ) );
+ if (iRttiFind == m_rttis.end())
+ {
+ // RTTI symbol
+ OStringBuffer buf( 64 );
+ buf.append( RTL_CONSTASCII_STRINGPARAM("_ZTIN") );
+ sal_Int32 index = 0;
+ do
+ {
+ OUString token( unoName.getToken( 0, '.', index ) );
+ buf.append( token.getLength() );
+ OString c_token( OUStringToOString( token, RTL_TEXTENCODING_ASCII_US ) );
+ buf.append( c_token );
+ }
+ while (index >= 0);
+ buf.append( 'E' );
+
+ OString symName( buf.makeStringAndClear() );
+ rtti = (type_info *)dlsym( m_hApp, symName.getStr() );
+
+ if (rtti)
+ {
+ pair< t_rtti_map::iterator, bool > insertion(
+ m_rttis.insert( t_rtti_map::value_type( unoName, rtti ) ) );
+ OSL_ENSURE( insertion.second, "### inserting new rtti failed?!" );
+ }
+ else
+ {
+ // try to lookup the symbol in the generated rtti map
+ t_rtti_map::const_iterator iFind( m_generatedRttis.find( unoName ) );
+ if (iFind == m_generatedRttis.end())
+ {
+ // we must generate it !
+ // symbol and rtti-name is nearly identical,
+ // the symbol is prefixed with _ZTI
+ char const * rttiName = symName.getStr() +4;
+#if OSL_DEBUG_LEVEL > 1
+ fprintf( stderr,"generated rtti for %s\n", rttiName );
+#endif
+ if (pTypeDescr->pBaseTypeDescription)
+ {
+ // ensure availability of base
+ type_info * base_rtti = getRTTI(
+ (typelib_CompoundTypeDescription *)pTypeDescr->pBaseTypeDescription );
+ rtti = new __si_class_type_info(
+ strdup( rttiName ), (__class_type_info *)base_rtti );
+ }
+ else
+ {
+ // this class has no base class
+ rtti = new __class_type_info( strdup( rttiName ) );
+ }
+
+ pair< t_rtti_map::iterator, bool > insertion(
+ m_generatedRttis.insert( t_rtti_map::value_type( unoName, rtti ) ) );
+ OSL_ENSURE( insertion.second, "### inserting new generated rtti failed?!" );
+ }
+ else // taking already generated rtti
+ {
+ rtti = iFind->second;
+ }
+ }
+ }
+ else
+ {
+ rtti = iRttiFind->second;
+ }
+
+ return rtti;
+}
+
+//--------------------------------------------------------------------------------------------------
+static void deleteException( void * pExc )
+{
+ __cxa_exception const * header = ((__cxa_exception const *)pExc - 1);
+ typelib_TypeDescription * pTD = 0;
+ OUString unoName( toUNOname( header->exceptionType->name() ) );
+ ::typelib_typedescription_getByName( &pTD, unoName.pData );
+ OSL_ENSURE( pTD, "### unknown exception type! leaving out destruction => leaking!!!" );
+ if (pTD)
+ {
+ ::uno_destructData( pExc, pTD, cpp_release );
+ ::typelib_typedescription_release( pTD );
+ }
+}
+
+//==================================================================================================
+void raiseException( uno_Any * pUnoExc, uno_Mapping * pUno2Cpp )
+{
+ void * pCppExc;
+ type_info * rtti;
+
+ {
+ // construct cpp exception object
+ typelib_TypeDescription * pTypeDescr = 0;
+ TYPELIB_DANGER_GET( &pTypeDescr, pUnoExc->pType );
+ OSL_ASSERT( pTypeDescr );
+ if (! pTypeDescr)
+ terminate();
+
+ pCppExc = __cxa_allocate_exception( pTypeDescr->nSize );
+ ::uno_copyAndConvertData( pCppExc, pUnoExc->pData, pTypeDescr, pUno2Cpp );
+
+ // destruct uno exception
+ ::uno_any_destruct( pUnoExc, 0 );
+ // avoiding locked counts
+ static RTTI * s_rtti = 0;
+ if (! s_rtti)
+ {
+ MutexGuard guard( Mutex::getGlobalMutex() );
+ if (! s_rtti)
+ {
+#ifdef LEAK_STATIC_DATA
+ s_rtti = new RTTI();
+#else
+ static RTTI rtti_data;
+ s_rtti = &rtti_data;
+#endif
+ }
+ }
+ rtti = (type_info *)s_rtti->getRTTI( (typelib_CompoundTypeDescription *) pTypeDescr );
+ TYPELIB_DANGER_RELEASE( pTypeDescr );
+ OSL_ENSURE( rtti, "### no rtti for throwing exception!" );
+ if (! rtti)
+ terminate();
+ }
+
+ __cxa_throw( pCppExc, rtti, deleteException );
+}
+
+//==================================================================================================
+void fillUnoException( __cxa_exception * header, uno_Any * pExc, uno_Mapping * pCpp2Uno )
+{
+ OSL_ENSURE( header, "### no exception header!!!" );
+ if (! header)
+ terminate();
+
+ typelib_TypeDescription * pExcTypeDescr = 0;
+ OUString unoName( toUNOname( header->exceptionType->name() ) );
+ ::typelib_typedescription_getByName( &pExcTypeDescr, unoName.pData );
+ OSL_ENSURE( pExcTypeDescr, "### can not get type description for exception!!!" );
+ if (! pExcTypeDescr)
+ terminate();
+
+ // construct uno exception any
+ ::uno_any_constructAndConvert( pExc, header->adjustedPtr, pExcTypeDescr, pCpp2Uno );
+ ::typelib_typedescription_release( pExcTypeDescr );
+}
+
+}
+
diff --git a/bridges/source/cpp_uno/gcc3_freebsd_powerpc/makefile.mk b/bridges/source/cpp_uno/gcc3_freebsd_powerpc/makefile.mk
new file mode 100644
index 000000000000..d88f64808e06
--- /dev/null
+++ b/bridges/source/cpp_uno/gcc3_freebsd_powerpc/makefile.mk
@@ -0,0 +1,76 @@
+#**************************************************************
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+#**************************************************************
+
+
+
+PRJ=..$/..$/..
+
+PRJNAME=bridges
+TARGET=gcc3_uno
+LIBTARGET=no
+ENABLE_EXCEPTIONS=TRUE
+
+# --- Settings -----------------------------------------------------
+
+.INCLUDE : settings.mk
+
+# --- Files --------------------------------------------------------
+.IF "$(COM)$(OS)$(CPU)$(COMNAME)$(CPUNAME)" == "GCCLINUXPgcc3POWERPC"
+
+.IF "$(cppu_no_leak)" == ""
+CFLAGS += -DLEAK_STATIC_DATA
+.ENDIF
+
+# In case someone enabled the non-standard -fomit-frame-pointer which does not
+# work with the .cxx sources in this directory:
+CFLAGSCXX += -fno-omit-frame-pointer
+
+NOOPTFILES= \
+ $(SLO)$/uno2cpp.obj
+
+
+CFLAGSNOOPT=-O0
+
+SLOFILES= \
+ $(SLO)$/except.obj \
+ $(SLO)$/cpp2uno.obj \
+ $(SLO)$/uno2cpp.obj
+
+SHL1TARGET= $(TARGET)
+
+SHL1DEF=$(MISC)$/$(SHL1TARGET).def
+SHL1IMPLIB=i$(TARGET)
+SHL1VERSIONMAP=..$/..$/bridge_exports.map
+SHL1RPATH=URELIB
+
+SHL1OBJS= $(SLOFILES)
+SHL1LIBS = $(SLB)$/cpp_uno_shared.lib
+
+SHL1STDLIBS= \
+ $(CPPULIB) \
+ $(SALLIB)
+
+.ENDIF
+
+# --- Targets ------------------------------------------------------
+
+.INCLUDE : target.mk
+
diff --git a/bridges/source/cpp_uno/gcc3_freebsd_powerpc/share.hxx b/bridges/source/cpp_uno/gcc3_freebsd_powerpc/share.hxx
new file mode 100644
index 000000000000..edd97d6a7987
--- /dev/null
+++ b/bridges/source/cpp_uno/gcc3_freebsd_powerpc/share.hxx
@@ -0,0 +1,87 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+
+
+#include "uno/mapping.h"
+
+#include <typeinfo>
+#include <exception>
+#include <cstddef>
+
+namespace CPPU_CURRENT_NAMESPACE
+{
+
+ void dummy_can_throw_anything( char const * );
+
+
+// ----- following decl from libstdc++-v3/libsupc++/unwind-cxx.h and unwind.h
+
+struct _Unwind_Exception
+{
+ unsigned exception_class __attribute__((__mode__(__DI__)));
+ void * exception_cleanup;
+ unsigned private_1 __attribute__((__mode__(__word__)));
+ unsigned private_2 __attribute__((__mode__(__word__)));
+} __attribute__((__aligned__));
+
+struct __cxa_exception
+{
+ ::std::type_info *exceptionType;
+ void (*exceptionDestructor)(void *);
+
+ ::std::unexpected_handler unexpectedHandler;
+ ::std::terminate_handler terminateHandler;
+
+ __cxa_exception *nextException;
+
+ int handlerCount;
+
+ int handlerSwitchValue;
+ const unsigned char *actionRecord;
+ const unsigned char *languageSpecificData;
+ void *catchTemp;
+ void *adjustedPtr;
+
+ _Unwind_Exception unwindHeader;
+};
+
+extern "C" void *__cxa_allocate_exception(
+ std::size_t thrown_size ) throw();
+extern "C" void __cxa_throw (
+ void *thrown_exception, std::type_info *tinfo, void (*dest) (void *) ) __attribute__((noreturn));
+
+struct __cxa_eh_globals
+{
+ __cxa_exception *caughtExceptions;
+ unsigned int uncaughtExceptions;
+};
+extern "C" __cxa_eh_globals *__cxa_get_globals () throw();
+
+// -----
+
+//==================================================================================================
+void raiseException(
+ uno_Any * pUnoExc, uno_Mapping * pUno2Cpp );
+//==================================================================================================
+void fillUnoException(
+ __cxa_exception * header, uno_Any *, uno_Mapping * pCpp2Uno );
+}
diff --git a/bridges/source/cpp_uno/gcc3_freebsd_powerpc/uno2cpp.cxx b/bridges/source/cpp_uno/gcc3_freebsd_powerpc/uno2cpp.cxx
new file mode 100644
index 000000000000..65b402b492a2
--- /dev/null
+++ b/bridges/source/cpp_uno/gcc3_freebsd_powerpc/uno2cpp.cxx
@@ -0,0 +1,668 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_bridges.hxx"
+
+#include <malloc.h>
+
+#include <com/sun/star/uno/genfunc.hxx>
+#include <uno/data.h>
+
+#include "bridges/cpp_uno/shared/bridge.hxx"
+#include "bridges/cpp_uno/shared/types.hxx"
+#include "bridges/cpp_uno/shared/unointerfaceproxy.hxx"
+#include "bridges/cpp_uno/shared/vtables.hxx"
+
+#include "share.hxx"
+
+
+using namespace ::rtl;
+using namespace ::com::sun::star::uno;
+
+namespace
+{
+
+
+//==================================================================================================
+static void callVirtualMethod(
+ void * pAdjustedThisPtr,
+ sal_Int32 nVtableIndex,
+ void * pRegisterReturn,
+ typelib_TypeClass eReturnType,
+ char * pPT,
+ sal_Int32 * pStackLongs,
+ sal_Int32 nStackLongs)
+{
+
+ // parameter list is mixed list of * and values
+ // reference parameters are pointers
+
+ // the basic idea here is to use gpr[8] as a storage area for
+ // the future values of registers r3 to r10 needed for the call,
+ // and similarly fpr[8] as a storage area for the future values
+ // of floating point registers f1 to f8
+
+ unsigned long * mfunc; // actual function to be invoked
+ void (*ptr)();
+ int gpr[8]; // storage for gpregisters, map to r3-r10
+ int off; // offset used to find function
+#ifndef __NO_FPRS__
+ double fpr[8]; // storage for fpregisters, map to f1-f8
+ int f; // number of fprs mapped so far
+ double dret; // temporary function return values
+#endif
+ int n; // number of gprs mapped so far
+ long *p; // pointer to parameter overflow area
+ int c; // character of parameter type being decoded
+ int iret, iret2;
+
+ // Because of the Power PC calling conventions we could be passing
+ // parameters in both register types and on the stack. To create the
+ // stack parameter area we need we now simply allocate local
+ // variable storage param[] that is at least the size of the parameter stack
+ // (more than enough space) which we can overwrite the parameters into.
+
+ // Note: This keeps us from having to decode the signature twice and
+ // prevents problems with later local variables.
+
+ // Note: could require up to 2*nStackLongs words of parameter stack area
+ // if the call has many float parameters (i.e. floats take up only 1
+ // word on the stack but double takes 2 words in parameter area in the
+ // stack frame .
+
+ // Update! floats on the outgoing parameter stack only take up 1 word
+ // (stfs is used) which is not correct according to the ABI but we
+ // will match what the compiler does until this is figured out
+
+ // this grows the current stack to the appropriate size
+ // and sets the outgoing stack pointer p to the right place
+ __asm__ __volatile__ (
+ "rlwinm %0,%0,3,3,28\n\t"
+ "addi %0,%0,22\n\t"
+ "rlwinm %0,%0,0,4,28\n\t"
+ "lwz 0,0(1)\n\t"
+ "subf 1,%0,1\n\t"
+ "stw 0,0(1)\n\t"
+ : : "r" (nStackLongs) : "0" );
+
+ __asm__ __volatile__ ( "addi %0,1,8" : "=r" (p) : );
+
+ // never called
+ // if (! pAdjustedThisPtr ) dummy_can_throw_anything("xxx"); // address something
+
+
+ // now begin to load the C++ function arguments into storage
+ n = 0;
+#ifndef __NO_FPRS__
+ f = 0;
+#endif
+
+ // now we need to parse the entire signature string */
+ // until we get the END indicator */
+
+ // treat complex return pointer like any other parameter //
+
+#if 0
+ /* Let's figure out what is really going on here*/
+ fprintf(stderr,"callVirtualMethod parameters string is %s\n",pPT);
+ int k = nStackLongs;
+ long * q = (long *)pStackLongs;
+ while (k > 0) {
+ fprintf(stderr,"uno stack is: %x\n",*q);
+ k--;
+ q++;
+ }
+#endif
+
+ /* parse the argument list up to the ending ) */
+ while (*pPT != 'X') {
+ c = *pPT;
+ switch (c) {
+ case 'D': /* type is double */
+#ifndef __NO_FPRS__
+ if (f < 8) {
+ fpr[f++] = *((double *)pStackLongs); /* store in register */
+#else
+ if (n & 1)
+ n++;
+ if (n < 8) {
+ gpr[n++] = *pStackLongs;
+ gpr[n++] = *(pStackLongs+1);
+#endif
+ } else {
+ if (((long) p) & 4)
+ p++;
+ *p++ = *pStackLongs; /* or on the parameter stack */
+ *p++ = *(pStackLongs + 1);
+ }
+ pStackLongs += 2;
+ break;
+
+ case 'F': /* type is float */
+ /* this assumes that floats are stored as 1 32 bit word on param
+ stack and that if passed in parameter stack to C, should be
+ as double word.
+
+ Whoops: the abi is not actually followed by gcc, need to
+ store floats as a *single* word on outgoing parameter stack
+ to match what gcc actually does
+ */
+#ifndef __NO_FPRS__
+ if (f < 8) {
+ fpr[f++] = *((float *)pStackLongs);
+#else
+ if (n < 8) {
+ gpr[n++] = *pStackLongs;
+#endif
+ } else {
+#if 0 /* if abi were followed */
+ if (((long) p) & 4)
+ p++;
+ *((double *)p) = *((float *)pStackLongs);
+ p += 2;
+#else
+ *((float *)p) = *((float *)pStackLongs);
+ p += 1;
+#endif
+ }
+ pStackLongs += 1;
+ break;
+
+ case 'H': /* type is long long */
+ if (n & 1) n++; /* note even elements gpr[] will map to
+ odd registers*/
+ if (n <= 6) {
+ gpr[n++] = *pStackLongs;
+ gpr[n++] = *(pStackLongs+1);
+ } else {
+ if (((long) p) & 4)
+ p++;
+ *p++ = *pStackLongs;
+ *p++ = *(pStackLongs+1);
+ }
+ pStackLongs += 2;
+ break;
+
+ case 'S':
+ if (n < 8) {
+ gpr[n++] = *((unsigned short*)pStackLongs);
+ } else {
+ *p++ = *((unsigned short *)pStackLongs);
+ }
+ pStackLongs += 1;
+ break;
+
+ case 'B':
+ if (n < 8) {
+ gpr[n++] = *((char *)pStackLongs);
+ } else {
+ *p++ = *((char *)pStackLongs);
+ }
+ pStackLongs += 1;
+ break;
+
+ default:
+ if (n < 8) {
+ gpr[n++] = *pStackLongs;
+ } else {
+ *p++ = *pStackLongs;
+ }
+ pStackLongs += 1;
+ break;
+ }
+ pPT++;
+ }
+
+ /* figure out the address of the function we need to invoke */
+ off = nVtableIndex;
+ off = off * 4; // 4 bytes per slot
+ mfunc = *((unsigned long **)pAdjustedThisPtr); // get the address of the vtable
+ mfunc = (unsigned long *)((char *)mfunc + off); // get the address from the vtable entry at offset
+ mfunc = *((unsigned long **)mfunc); // the function is stored at the address
+ ptr = (void (*)())mfunc;
+
+ /* Set up the machine registers and invoke the function */
+
+ __asm__ __volatile__ (
+ "lwz 3, 0(%0)\n\t"
+ "lwz 4, 4(%0)\n\t"
+ "lwz 5, 8(%0)\n\t"
+ "lwz 6, 12(%0)\n\t"
+ "lwz 7, 16(%0)\n\t"
+ "lwz 8, 20(%0)\n\t"
+ "lwz 9, 24(%0)\n\t"
+ "lwz 10, 28(%0)\n\t"
+#ifndef __NO_FPRS__
+ "lfd 1, 0(%1)\n\t"
+ "lfd 2, 8(%1)\n\t"
+ "lfd 3, 16(%1)\n\t"
+ "lfd 4, 24(%1)\n\t"
+ "lfd 5, 32(%1)\n\t"
+ "lfd 6, 40(%1)\n\t"
+ "lfd 7, 48(%1)\n\t"
+ "lfd 8, 56(%1)\n\t"
+ : : "r" (gpr), "r" (fpr)
+#else
+ : : "r" (gpr)
+#endif
+ : "0", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12"
+ );
+
+ (*ptr)();
+
+ __asm__ __volatile__ (
+ "mr %0, 3\n\t"
+ "mr %1, 4\n\t"
+#ifndef __NO_FPRS__
+ "fmr %2, 1\n\t"
+ : "=r" (iret), "=r" (iret2), "=f" (dret)
+#else
+ : "=r" (iret), "=r" (iret2)
+#endif
+ : );
+
+ switch( eReturnType )
+ {
+ case typelib_TypeClass_HYPER:
+ case typelib_TypeClass_UNSIGNED_HYPER:
+ ((long*)pRegisterReturn)[0] = iret;
+ ((long*)pRegisterReturn)[1] = iret2;
+ case typelib_TypeClass_LONG:
+ case typelib_TypeClass_UNSIGNED_LONG:
+ case typelib_TypeClass_ENUM:
+ ((long*)pRegisterReturn)[0] = iret;
+ break;
+ case typelib_TypeClass_CHAR:
+ case typelib_TypeClass_SHORT:
+ case typelib_TypeClass_UNSIGNED_SHORT:
+ *(unsigned short*)pRegisterReturn = (unsigned short)iret;
+ break;
+ case typelib_TypeClass_BOOLEAN:
+ case typelib_TypeClass_BYTE:
+ *(unsigned char*)pRegisterReturn = (unsigned char)iret;
+ break;
+ case typelib_TypeClass_FLOAT:
+#ifndef __NO_FPRS__
+ *(float*)pRegisterReturn = (float)dret;
+#else
+ ((unsigned int*)pRegisterReturn)[0] = iret;
+#endif
+ break;
+ case typelib_TypeClass_DOUBLE:
+#ifndef __NO_FPRS__
+ *(double*)pRegisterReturn = dret;
+#else
+ ((unsigned int*)pRegisterReturn)[0] = iret;
+ ((unsigned int*)pRegisterReturn)[1] = iret2;
+#endif
+ break;
+ default:
+ break;
+ }
+}
+
+
+//==================================================================================================
+static void cpp_call(
+ bridges::cpp_uno::shared::UnoInterfaceProxy * pThis,
+ bridges::cpp_uno::shared::VtableSlot aVtableSlot,
+ typelib_TypeDescriptionReference * pReturnTypeRef,
+ sal_Int32 nParams, typelib_MethodParameter * pParams,
+ void * pUnoReturn, void * pUnoArgs[], uno_Any ** ppUnoExc )
+{
+ // max space for: [complex ret ptr], values|ptr ...
+ char * pCppStack =
+ (char *)alloca( sizeof(sal_Int32) + ((nParams+2) * sizeof(sal_Int64)) );
+ char * pCppStackStart = pCppStack;
+
+ // need to know parameter types for callVirtualMethod so generate a signature string
+ char * pParamType = (char *) alloca(nParams+2);
+ char * pPT = pParamType;
+
+ // return
+ typelib_TypeDescription * pReturnTypeDescr = 0;
+ TYPELIB_DANGER_GET( &pReturnTypeDescr, pReturnTypeRef );
+ // OSL_ENSURE( pReturnTypeDescr, "### expected return type description!" );
+
+ void * pCppReturn = 0; // if != 0 && != pUnoReturn, needs reconversion
+
+ if (pReturnTypeDescr)
+ {
+ if (bridges::cpp_uno::shared::isSimpleType( pReturnTypeDescr ))
+ {
+ pCppReturn = pUnoReturn; // direct way for simple types
+ }
+ else
+ {
+ // complex return via ptr
+ pCppReturn = *(void **)pCppStack =
+ (bridges::cpp_uno::shared::relatesToInterfaceType( pReturnTypeDescr )
+ ? alloca( pReturnTypeDescr->nSize ): pUnoReturn); // direct way
+ *pPT++ = 'I'; //signify that a complex return type on stack
+ pCppStack += sizeof(void *);
+ }
+ }
+ // push this
+ void* pAdjustedThisPtr = reinterpret_cast< void **>(pThis->getCppI()) + aVtableSlot.offset;
+ *(void**)pCppStack = pAdjustedThisPtr;
+ pCppStack += sizeof( void* );
+ *pPT++ = 'I';
+
+ // stack space
+ // OSL_ENSURE( sizeof(void *) == sizeof(sal_Int32), "### unexpected size!" );
+ // args
+ void ** pCppArgs = (void **)alloca( 3 * sizeof(void *) * nParams );
+ // indizes of values this have to be converted (interface conversion cpp<=>uno)
+ sal_Int32 * pTempIndizes = (sal_Int32 *)(pCppArgs + nParams);
+ // type descriptions for reconversions
+ typelib_TypeDescription ** ppTempParamTypeDescr = (typelib_TypeDescription **)(pCppArgs + (2 * nParams));
+
+ sal_Int32 nTempIndizes = 0;
+
+ for ( sal_Int32 nPos = 0; nPos < nParams; ++nPos )
+ {
+ const typelib_MethodParameter & rParam = pParams[nPos];
+ typelib_TypeDescription * pParamTypeDescr = 0;
+ TYPELIB_DANGER_GET( &pParamTypeDescr, rParam.pTypeRef );
+
+ if (!rParam.bOut && bridges::cpp_uno::shared::isSimpleType( pParamTypeDescr ))
+ {
+ uno_copyAndConvertData( pCppArgs[nPos] = pCppStack, pUnoArgs[nPos], pParamTypeDescr,
+ pThis->getBridge()->getUno2Cpp() );
+
+ switch (pParamTypeDescr->eTypeClass)
+ {
+
+ // we need to know type of each param so that we know whether to use
+ // gpr or fpr to pass in parameters:
+ // Key: I - int, long, pointer, etc means pass in gpr
+ // B - byte value passed in gpr
+ // S - short value passed in gpr
+ // F - float value pass in fpr
+ // D - double value pass in fpr
+ // H - long long int pass in proper pairs of gpr (3,4) (5,6), etc
+ // X - indicates end of parameter description string
+
+ case typelib_TypeClass_LONG:
+ case typelib_TypeClass_UNSIGNED_LONG:
+ case typelib_TypeClass_ENUM:
+ *pPT++ = 'I';
+ break;
+ case typelib_TypeClass_SHORT:
+ case typelib_TypeClass_CHAR:
+ case typelib_TypeClass_UNSIGNED_SHORT:
+ *pPT++ = 'S';
+ break;
+ case typelib_TypeClass_BOOLEAN:
+ case typelib_TypeClass_BYTE:
+ *pPT++ = 'B';
+ break;
+ case typelib_TypeClass_FLOAT:
+ *pPT++ = 'F';
+ break;
+ case typelib_TypeClass_DOUBLE:
+ *pPT++ = 'D';
+ pCppStack += sizeof(sal_Int32); // extra long
+ break;
+ case typelib_TypeClass_HYPER:
+ case typelib_TypeClass_UNSIGNED_HYPER:
+ *pPT++ = 'H';
+ pCppStack += sizeof(sal_Int32); // extra long
+ default:
+ break;
+ }
+
+ // no longer needed
+ TYPELIB_DANGER_RELEASE( pParamTypeDescr );
+ }
+ else // ptr to complex value | ref
+ {
+ if (! rParam.bIn) // is pure out
+ {
+ // cpp out is constructed mem, uno out is not!
+ uno_constructData(
+ *(void **)pCppStack = pCppArgs[nPos] = alloca( pParamTypeDescr->nSize ),
+ pParamTypeDescr );
+ pTempIndizes[nTempIndizes] = nPos; // default constructed for cpp call
+ // will be released at reconversion
+ ppTempParamTypeDescr[nTempIndizes++] = pParamTypeDescr;
+ }
+ // is in/inout
+ else if (bridges::cpp_uno::shared::relatesToInterfaceType( pParamTypeDescr ))
+ {
+ uno_copyAndConvertData(
+ *(void **)pCppStack = pCppArgs[nPos] = alloca( pParamTypeDescr->nSize ),
+ pUnoArgs[nPos], pParamTypeDescr,
+ pThis->getBridge()->getUno2Cpp() );
+
+ pTempIndizes[nTempIndizes] = nPos; // has to be reconverted
+ // will be released at reconversion
+ ppTempParamTypeDescr[nTempIndizes++] = pParamTypeDescr;
+ }
+ else // direct way
+ {
+ *(void **)pCppStack = pCppArgs[nPos] = pUnoArgs[nPos];
+ // no longer needed
+ TYPELIB_DANGER_RELEASE( pParamTypeDescr );
+ }
+ // KBH: FIXME: is this the right way to pass these
+ *pPT++='I';
+ }
+ pCppStack += sizeof(sal_Int32); // standard parameter length
+ }
+
+ // terminate the signature string
+ *pPT++='X';
+ *pPT=0;
+
+ try
+ {
+ OSL_ENSURE( !( (pCppStack - pCppStackStart ) & 3), "UNALIGNED STACK !!! (Please DO panic)" );
+ callVirtualMethod(
+ pAdjustedThisPtr, aVtableSlot.index,
+ pCppReturn, pReturnTypeDescr->eTypeClass, pParamType,
+ (sal_Int32 *)pCppStackStart, (pCppStack - pCppStackStart) / sizeof(sal_Int32) );
+ // NO exception occurred...
+ *ppUnoExc = 0;
+
+ // reconvert temporary params
+ for ( ; nTempIndizes--; )
+ {
+ sal_Int32 nIndex = pTempIndizes[nTempIndizes];
+ typelib_TypeDescription * pParamTypeDescr = ppTempParamTypeDescr[nTempIndizes];
+
+ if (pParams[nIndex].bIn)
+ {
+ if (pParams[nIndex].bOut) // inout
+ {
+ uno_destructData( pUnoArgs[nIndex], pParamTypeDescr, 0 ); // destroy uno value
+ uno_copyAndConvertData( pUnoArgs[nIndex], pCppArgs[nIndex], pParamTypeDescr,
+ pThis->getBridge()->getCpp2Uno() );
+ }
+ }
+ else // pure out
+ {
+ uno_copyAndConvertData( pUnoArgs[nIndex], pCppArgs[nIndex], pParamTypeDescr,
+ pThis->getBridge()->getCpp2Uno() );
+ }
+ // destroy temp cpp param => cpp: every param was constructed
+ uno_destructData( pCppArgs[nIndex], pParamTypeDescr, cpp_release );
+
+ TYPELIB_DANGER_RELEASE( pParamTypeDescr );
+ }
+ // return value
+ if (pCppReturn && pUnoReturn != pCppReturn)
+ {
+ uno_copyAndConvertData( pUnoReturn, pCppReturn, pReturnTypeDescr,
+ pThis->getBridge()->getCpp2Uno() );
+ uno_destructData( pCppReturn, pReturnTypeDescr, cpp_release );
+ }
+ }
+ catch (...)
+ {
+ // fill uno exception
+ fillUnoException( CPPU_CURRENT_NAMESPACE::__cxa_get_globals()->caughtExceptions,
+ *ppUnoExc, pThis->getBridge()->getCpp2Uno() );
+
+ // temporary params
+ for ( ; nTempIndizes--; )
+ {
+ sal_Int32 nIndex = pTempIndizes[nTempIndizes];
+ // destroy temp cpp param => cpp: every param was constructed
+ uno_destructData( pCppArgs[nIndex], ppTempParamTypeDescr[nTempIndizes], cpp_release );
+ TYPELIB_DANGER_RELEASE( ppTempParamTypeDescr[nTempIndizes] );
+ }
+ // return type
+ if (pReturnTypeDescr)
+ TYPELIB_DANGER_RELEASE( pReturnTypeDescr );
+ }
+}
+
+}
+
+namespace bridges { namespace cpp_uno { namespace shared {
+
+void unoInterfaceProxyDispatch(
+ uno_Interface * pUnoI, const typelib_TypeDescription * pMemberDescr,
+ void * pReturn, void * pArgs[], uno_Any ** ppException )
+{
+ // is my surrogate
+ bridges::cpp_uno::shared::UnoInterfaceProxy * pThis
+ = static_cast< bridges::cpp_uno::shared::UnoInterfaceProxy *> (pUnoI);
+
+ switch (pMemberDescr->eTypeClass)
+ {
+ case typelib_TypeClass_INTERFACE_ATTRIBUTE:
+ {
+
+ VtableSlot aVtableSlot(
+ getVtableSlot(
+ reinterpret_cast<
+ typelib_InterfaceAttributeTypeDescription const * >(
+ pMemberDescr)));
+
+ if (pReturn)
+ {
+ // dependent dispatch
+ cpp_call(
+ pThis, aVtableSlot,
+ ((typelib_InterfaceAttributeTypeDescription *)pMemberDescr)->pAttributeTypeRef,
+ 0, 0, // no params
+ pReturn, pArgs, ppException );
+ }
+ else
+ {
+ // is SET
+ typelib_MethodParameter aParam;
+ aParam.pTypeRef =
+ ((typelib_InterfaceAttributeTypeDescription *)pMemberDescr)->pAttributeTypeRef;
+ aParam.bIn = sal_True;
+ aParam.bOut = sal_False;
+
+ typelib_TypeDescriptionReference * pReturnTypeRef = 0;
+ OUString aVoidName( RTL_CONSTASCII_USTRINGPARAM("void") );
+ typelib_typedescriptionreference_new(
+ &pReturnTypeRef, typelib_TypeClass_VOID, aVoidName.pData );
+
+ // dependent dispatch
+ aVtableSlot.index += 1; //get then set method
+ cpp_call(
+ pThis, aVtableSlot,
+ pReturnTypeRef,
+ 1, &aParam,
+ pReturn, pArgs, ppException );
+
+ typelib_typedescriptionreference_release( pReturnTypeRef );
+ }
+
+ break;
+ }
+ case typelib_TypeClass_INTERFACE_METHOD:
+ {
+
+ VtableSlot aVtableSlot(
+ getVtableSlot(
+ reinterpret_cast<
+ typelib_InterfaceMethodTypeDescription const * >(
+ pMemberDescr)));
+ switch (aVtableSlot.index)
+ {
+ // standard calls
+ case 1: // acquire uno interface
+ (*pUnoI->acquire)( pUnoI );
+ *ppException = 0;
+ break;
+ case 2: // release uno interface
+ (*pUnoI->release)( pUnoI );
+ *ppException = 0;
+ break;
+ case 0: // queryInterface() opt
+ {
+ typelib_TypeDescription * pTD = 0;
+ TYPELIB_DANGER_GET( &pTD, reinterpret_cast< Type * >( pArgs[0] )->getTypeLibType() );
+ if (pTD)
+ {
+ uno_Interface * pInterface = 0;
+ (*pThis->pBridge->getUnoEnv()->getRegisteredInterface)(
+ pThis->pBridge->getUnoEnv(),
+ (void **)&pInterface, pThis->oid.pData, (typelib_InterfaceTypeDescription *)pTD );
+
+ if (pInterface)
+ {
+ ::uno_any_construct(
+ reinterpret_cast< uno_Any * >( pReturn ),
+ &pInterface, pTD, 0 );
+ (*pInterface->release)( pInterface );
+ TYPELIB_DANGER_RELEASE( pTD );
+ *ppException = 0;
+ break;
+ }
+ TYPELIB_DANGER_RELEASE( pTD );
+ }
+ } // else perform queryInterface()
+ default:
+ // dependent dispatch
+ cpp_call(
+ pThis, aVtableSlot,
+ ((typelib_InterfaceMethodTypeDescription *)pMemberDescr)->pReturnTypeRef,
+ ((typelib_InterfaceMethodTypeDescription *)pMemberDescr)->nParams,
+ ((typelib_InterfaceMethodTypeDescription *)pMemberDescr)->pParams,
+ pReturn, pArgs, ppException );
+ }
+ break;
+ }
+ default:
+ {
+ ::com::sun::star::uno::RuntimeException aExc(
+ OUString( RTL_CONSTASCII_USTRINGPARAM("illegal member type description!") ),
+ ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface >() );
+
+ Type const & rExcType = ::getCppuType( &aExc );
+ // binary identical null reference
+ ::uno_type_any_construct( *ppException, &aExc, rExcType.getTypeLibType(), 0 );
+ }
+ }
+}
+
+} } }
diff --git a/bridges/source/cpp_uno/gcc3_freebsd_powerpc64/cpp2uno.cxx b/bridges/source/cpp_uno/gcc3_freebsd_powerpc64/cpp2uno.cxx
new file mode 100644
index 000000000000..4e99d26b2edc
--- /dev/null
+++ b/bridges/source/cpp_uno/gcc3_freebsd_powerpc64/cpp2uno.cxx
@@ -0,0 +1,718 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_bridges.hxx"
+
+#include <com/sun/star/uno/genfunc.hxx>
+#include <uno/data.h>
+#include <typelib/typedescription.hxx>
+
+#include "bridges/cpp_uno/shared/bridge.hxx"
+#include "bridges/cpp_uno/shared/cppinterfaceproxy.hxx"
+#include "bridges/cpp_uno/shared/types.hxx"
+#include "bridges/cpp_uno/shared/vtablefactory.hxx"
+
+#include "share.hxx"
+#include <stdio.h>
+#include <string.h>
+
+
+using namespace ::com::sun::star::uno;
+
+namespace
+{
+
+//==================================================================================================
+static typelib_TypeClass cpp2uno_call(
+ bridges::cpp_uno::shared::CppInterfaceProxy * pThis,
+ const typelib_TypeDescription * pMemberTypeDescr,
+ typelib_TypeDescriptionReference * pReturnTypeRef, // 0 indicates void return
+ sal_Int32 nParams, typelib_MethodParameter * pParams,
+ void ** gpreg, void ** fpreg, void ** ovrflw,
+ sal_Int64 * pRegisterReturn /* space for register return */ )
+{
+#ifdef CMC_DEBUG
+ fprintf(stderr, "as far as cpp2uno_call\n");
+#endif
+
+ int ng = 0; //number of gpr registers used
+ int nf = 0; //number of fpr regsiters used
+
+ // gpreg: [ret *], this, [gpr params]
+ // fpreg: [fpr params]
+ // ovrflw: [gpr or fpr params (properly aligned)]
+
+ // return
+ typelib_TypeDescription * pReturnTypeDescr = 0;
+ if (pReturnTypeRef)
+ TYPELIB_DANGER_GET( &pReturnTypeDescr, pReturnTypeRef );
+
+ void * pUnoReturn = 0;
+ void * pCppReturn = 0; // complex return ptr: if != 0 && != pUnoReturn, reconversion need
+
+ if (pReturnTypeDescr)
+ {
+ if (bridges::cpp_uno::shared::isSimpleType( pReturnTypeDescr ))
+ {
+ pUnoReturn = pRegisterReturn; // direct way for simple types
+ }
+ else // complex return via ptr (pCppReturn)
+ {
+ pCppReturn = *(void **)gpreg;
+ gpreg++;
+ ng++;
+
+ pUnoReturn = (bridges::cpp_uno::shared::relatesToInterfaceType( pReturnTypeDescr )
+ ? alloca( pReturnTypeDescr->nSize )
+ : pCppReturn); // direct way
+ }
+ }
+ // pop this
+ gpreg++;
+ ng++;
+
+ // stack space
+ OSL_ENSURE( sizeof(void *) == sizeof(sal_Int64), "### unexpected size!" );
+ // parameters
+ void ** pUnoArgs = (void **)alloca( 4 * sizeof(void *) * nParams );
+ void ** pCppArgs = pUnoArgs + nParams;
+ // indizes of values this have to be converted (interface conversion cpp<=>uno)
+ sal_Int32 * pTempIndizes = (sal_Int32 *)(pUnoArgs + (2 * nParams));
+ // type descriptions for reconversions
+ typelib_TypeDescription ** ppTempParamTypeDescr = (typelib_TypeDescription **)(pUnoArgs + (3 * nParams));
+
+ sal_Int32 nTempIndizes = 0;
+ bool bOverFlowUsed = false;
+ for ( sal_Int32 nPos = 0; nPos < nParams; ++nPos )
+ {
+ const typelib_MethodParameter & rParam = pParams[nPos];
+ typelib_TypeDescription * pParamTypeDescr = 0;
+ TYPELIB_DANGER_GET( &pParamTypeDescr, rParam.pTypeRef );
+
+#ifdef CMC_DEBUG
+ fprintf(stderr, "arg %d of %d\n", nPos, nParams);
+#endif
+
+ if (!rParam.bOut && bridges::cpp_uno::shared::isSimpleType( pParamTypeDescr ))
+ {
+#ifdef CMC_DEBUG
+ fprintf(stderr, "simple\n");
+#endif
+
+ switch (pParamTypeDescr->eTypeClass)
+ {
+ case typelib_TypeClass_FLOAT:
+ case typelib_TypeClass_DOUBLE:
+ if (nf < ppc64::MAX_SSE_REGS)
+ {
+ if (pParamTypeDescr->eTypeClass == typelib_TypeClass_FLOAT)
+ {
+ float tmp = (float) (*((double *)fpreg));
+ (*((float *) fpreg)) = tmp;
+ }
+ pCppArgs[nPos] = pUnoArgs[nPos] = fpreg++;
+ nf++;
+ }
+ else
+ {
+ pCppArgs[nPos] = pUnoArgs[nPos] = ovrflw;
+ bOverFlowUsed = true;
+ }
+ if (bOverFlowUsed) ovrflw++;
+ break;
+ case typelib_TypeClass_BYTE:
+ case typelib_TypeClass_BOOLEAN:
+ if (ng < ppc64::MAX_GPR_REGS)
+ {
+ pCppArgs[nPos] = pUnoArgs[nPos] = (((char *)gpreg) + (sizeof(void*)-1));
+ ng++;
+ gpreg++;
+ }
+ else
+ {
+ pCppArgs[nPos] = pUnoArgs[nPos] = (((char *)ovrflw) + (sizeof(void*)-1));
+ bOverFlowUsed = true;
+ }
+ if (bOverFlowUsed) ovrflw++;
+ break;
+ case typelib_TypeClass_CHAR:
+ case typelib_TypeClass_SHORT:
+ case typelib_TypeClass_UNSIGNED_SHORT:
+ if (ng < ppc64::MAX_GPR_REGS)
+ {
+ pCppArgs[nPos] = pUnoArgs[nPos] = (((char *)gpreg) + (sizeof(void*)-2));
+ ng++;
+ gpreg++;
+ }
+ else
+ {
+ pCppArgs[nPos] = pUnoArgs[nPos] = (((char *)ovrflw) + (sizeof(void*)-2));
+ bOverFlowUsed = true;
+ }
+ if (bOverFlowUsed) ovrflw++;
+ break;
+ case typelib_TypeClass_ENUM:
+ case typelib_TypeClass_LONG:
+ case typelib_TypeClass_UNSIGNED_LONG:
+ if (ng < ppc64::MAX_GPR_REGS)
+ {
+ pCppArgs[nPos] = pUnoArgs[nPos] = (((char *)gpreg) + (sizeof(void*)-4));
+ ng++;
+ gpreg++;
+ }
+ else
+ {
+ pCppArgs[nPos] = pUnoArgs[nPos] = (((char *)ovrflw) + (sizeof(void*)-4));
+ bOverFlowUsed = true;
+ }
+ if (bOverFlowUsed) ovrflw++;
+ break;
+ default:
+ if (ng < ppc64::MAX_GPR_REGS)
+ {
+ pCppArgs[nPos] = pUnoArgs[nPos] = gpreg++;
+ ng++;
+ }
+ else
+ {
+ pCppArgs[nPos] = pUnoArgs[nPos] = ovrflw;
+ bOverFlowUsed = true;
+ }
+ if (bOverFlowUsed) ovrflw++;
+ break;
+ }
+
+ // no longer needed
+ TYPELIB_DANGER_RELEASE( pParamTypeDescr );
+ }
+ else // ptr to complex value | ref
+ {
+#ifdef CMC_DEBUG
+ fprintf(stderr, "complex, ng is %d\n", ng);
+#endif
+ void *pCppStack; //temporary stack pointer
+
+ if (ng < ppc64::MAX_GPR_REGS)
+ {
+ pCppArgs[nPos] = pCppStack = *gpreg++;
+ ng++;
+ }
+ else
+ {
+ pCppArgs[nPos] = pCppStack = *ovrflw;
+ bOverFlowUsed = true;
+ }
+ if (bOverFlowUsed) ovrflw++;
+
+ if (! rParam.bIn) // is pure out
+ {
+ // uno out is unconstructed mem!
+ pUnoArgs[nPos] = alloca( pParamTypeDescr->nSize );
+ pTempIndizes[nTempIndizes] = nPos;
+ // will be released at reconversion
+ ppTempParamTypeDescr[nTempIndizes++] = pParamTypeDescr;
+ }
+ // is in/inout
+ else if (bridges::cpp_uno::shared::relatesToInterfaceType( pParamTypeDescr ))
+ {
+ uno_copyAndConvertData( pUnoArgs[nPos] = alloca( pParamTypeDescr->nSize ),
+ pCppStack, pParamTypeDescr,
+ pThis->getBridge()->getCpp2Uno() );
+ pTempIndizes[nTempIndizes] = nPos; // has to be reconverted
+ // will be released at reconversion
+ ppTempParamTypeDescr[nTempIndizes++] = pParamTypeDescr;
+ }
+ else // direct way
+ {
+ pUnoArgs[nPos] = pCppStack;
+ // no longer needed
+ TYPELIB_DANGER_RELEASE( pParamTypeDescr );
+ }
+ }
+ }
+
+#ifdef CMC_DEBUG
+ fprintf(stderr, "end of params\n");
+#endif
+
+ // ExceptionHolder
+ uno_Any aUnoExc; // Any will be constructed by callee
+ uno_Any * pUnoExc = &aUnoExc;
+
+ // invoke uno dispatch call
+ (*pThis->getUnoI()->pDispatcher)( pThis->getUnoI(), pMemberTypeDescr, pUnoReturn, pUnoArgs, &pUnoExc );
+
+ // in case an exception occurred...
+ if (pUnoExc)
+ {
+ // destruct temporary in/inout params
+ for ( ; nTempIndizes--; )
+ {
+ sal_Int32 nIndex = pTempIndizes[nTempIndizes];
+
+ if (pParams[nIndex].bIn) // is in/inout => was constructed
+ uno_destructData( pUnoArgs[nIndex], ppTempParamTypeDescr[nTempIndizes], 0 );
+ TYPELIB_DANGER_RELEASE( ppTempParamTypeDescr[nTempIndizes] );
+ }
+ if (pReturnTypeDescr)
+ TYPELIB_DANGER_RELEASE( pReturnTypeDescr );
+
+ CPPU_CURRENT_NAMESPACE::raiseException( &aUnoExc, pThis->getBridge()->getUno2Cpp() );
+ // has to destruct the any
+ // is here for dummy
+ return typelib_TypeClass_VOID;
+ }
+ else // else no exception occurred...
+ {
+ // temporary params
+ for ( ; nTempIndizes--; )
+ {
+ sal_Int32 nIndex = pTempIndizes[nTempIndizes];
+ typelib_TypeDescription * pParamTypeDescr = ppTempParamTypeDescr[nTempIndizes];
+
+ if (pParams[nIndex].bOut) // inout/out
+ {
+ // convert and assign
+ uno_destructData( pCppArgs[nIndex], pParamTypeDescr, cpp_release );
+ uno_copyAndConvertData( pCppArgs[nIndex], pUnoArgs[nIndex], pParamTypeDescr,
+ pThis->getBridge()->getUno2Cpp() );
+ }
+ // destroy temp uno param
+ uno_destructData( pUnoArgs[nIndex], pParamTypeDescr, 0 );
+
+ TYPELIB_DANGER_RELEASE( pParamTypeDescr );
+ }
+ // return
+ if (pCppReturn) // has complex return
+ {
+ if (pUnoReturn != pCppReturn) // needs reconversion
+ {
+ uno_copyAndConvertData( pCppReturn, pUnoReturn, pReturnTypeDescr,
+ pThis->getBridge()->getUno2Cpp() );
+ // destroy temp uno return
+ uno_destructData( pUnoReturn, pReturnTypeDescr, 0 );
+ }
+ // complex return ptr is set to return reg
+ *(void **)pRegisterReturn = pCppReturn;
+ }
+ if (pReturnTypeDescr)
+ {
+ typelib_TypeClass eRet = (typelib_TypeClass)pReturnTypeDescr->eTypeClass;
+ TYPELIB_DANGER_RELEASE( pReturnTypeDescr );
+ return eRet;
+ }
+ else
+ return typelib_TypeClass_VOID;
+ }
+}
+
+
+//==================================================================================================
+static typelib_TypeClass cpp_mediate(
+ sal_uInt64 nOffsetAndIndex,
+ void ** gpreg, void ** fpreg, long sp,
+ sal_Int64 * pRegisterReturn /* space for register return */ )
+{
+ OSL_ENSURE( sizeof(sal_Int64)==sizeof(void *), "### unexpected!" );
+
+ sal_Int32 nVtableOffset = (nOffsetAndIndex >> 32);
+ sal_Int32 nFunctionIndex = (nOffsetAndIndex & 0xFFFFFFFF);
+
+ long sf = *(long*)sp;
+ void ** ovrflw = (void**)(sf + 112);
+
+ // gpreg: [ret *], this, [other gpr params]
+ // fpreg: [fpr params]
+ // ovrflw: [gpr or fpr params (properly aligned)]
+
+ void * pThis;
+ if (nFunctionIndex & 0x80000000 )
+ {
+ nFunctionIndex &= 0x7fffffff;
+ pThis = gpreg[1];
+#ifdef CMC_DEBUG
+ fprintf(stderr, "pThis is gpreg[1]\n");
+#endif
+ }
+ else
+ {
+ pThis = gpreg[0];
+#ifdef CMC_DEBUG
+ fprintf(stderr, "pThis is gpreg[0]\n");
+#endif
+ }
+
+#ifdef CMC_DEBUG
+ fprintf(stderr, "pThis is %lx\n", pThis);
+#endif
+
+ pThis = static_cast< char * >(pThis) - nVtableOffset;
+
+#ifdef CMC_DEBUG
+ fprintf(stderr, "pThis is now %lx\n", pThis);
+#endif
+
+ bridges::cpp_uno::shared::CppInterfaceProxy * pCppI
+ = bridges::cpp_uno::shared::CppInterfaceProxy::castInterfaceToProxy(
+ pThis);
+
+ typelib_InterfaceTypeDescription * pTypeDescr = pCppI->getTypeDescr();
+
+#ifdef CMC_DEBUG
+ fprintf(stderr, "indexes are %d %d\n", nFunctionIndex, pTypeDescr->nMapFunctionIndexToMemberIndex);
+#endif
+
+ OSL_ENSURE( nFunctionIndex < pTypeDescr->nMapFunctionIndexToMemberIndex, "### illegal vtable index!" );
+ if (nFunctionIndex >= pTypeDescr->nMapFunctionIndexToMemberIndex)
+ {
+ throw RuntimeException(
+ rtl::OUString::createFromAscii("illegal vtable index!"),
+ (XInterface *)pThis );
+ }
+
+ // determine called method
+ sal_Int32 nMemberPos = pTypeDescr->pMapFunctionIndexToMemberIndex[nFunctionIndex];
+ OSL_ENSURE( nMemberPos < pTypeDescr->nAllMembers, "### illegal member index!" );
+
+#ifdef CMC_DEBUG
+ fprintf(stderr, "members are %d %d\n", nMemberPos, pTypeDescr->nAllMembers);
+#endif
+
+ TypeDescription aMemberDescr( pTypeDescr->ppAllMembers[nMemberPos] );
+
+ typelib_TypeClass eRet;
+ switch (aMemberDescr.get()->eTypeClass)
+ {
+ case typelib_TypeClass_INTERFACE_ATTRIBUTE:
+ {
+ if (pTypeDescr->pMapMemberIndexToFunctionIndex[nMemberPos] == nFunctionIndex)
+ {
+ // is GET method
+ eRet = cpp2uno_call(
+ pCppI, aMemberDescr.get(),
+ ((typelib_InterfaceAttributeTypeDescription *)aMemberDescr.get())->pAttributeTypeRef,
+ 0, 0, // no params
+ gpreg, fpreg, ovrflw, pRegisterReturn );
+ }
+ else
+ {
+ // is SET method
+ typelib_MethodParameter aParam;
+ aParam.pTypeRef =
+ ((typelib_InterfaceAttributeTypeDescription *)aMemberDescr.get())->pAttributeTypeRef;
+ aParam.bIn = sal_True;
+ aParam.bOut = sal_False;
+
+ eRet = cpp2uno_call(
+ pCppI, aMemberDescr.get(),
+ 0, // indicates void return
+ 1, &aParam,
+ gpreg, fpreg, ovrflw, pRegisterReturn );
+ }
+ break;
+ }
+ case typelib_TypeClass_INTERFACE_METHOD:
+ {
+ // is METHOD
+ switch (nFunctionIndex)
+ {
+ case 1: // acquire()
+ pCppI->acquireProxy(); // non virtual call!
+ eRet = typelib_TypeClass_VOID;
+ break;
+ case 2: // release()
+ pCppI->releaseProxy(); // non virtual call!
+ eRet = typelib_TypeClass_VOID;
+ break;
+ case 0: // queryInterface() opt
+ {
+ typelib_TypeDescription * pTD = 0;
+ TYPELIB_DANGER_GET( &pTD, reinterpret_cast< Type * >( gpreg[2] )->getTypeLibType() );
+ if (pTD)
+ {
+ XInterface * pInterface = 0;
+ (*pCppI->getBridge()->getCppEnv()->getRegisteredInterface)(
+ pCppI->getBridge()->getCppEnv(),
+ (void **)&pInterface, pCppI->getOid().pData,
+ (typelib_InterfaceTypeDescription *)pTD );
+
+ if (pInterface)
+ {
+ ::uno_any_construct(
+ reinterpret_cast< uno_Any * >( gpreg[0] ),
+ &pInterface, pTD, cpp_acquire );
+ pInterface->release();
+ TYPELIB_DANGER_RELEASE( pTD );
+ *(void **)pRegisterReturn = gpreg[0];
+ eRet = typelib_TypeClass_ANY;
+ break;
+ }
+ TYPELIB_DANGER_RELEASE( pTD );
+ }
+ } // else perform queryInterface()
+ default:
+ eRet = cpp2uno_call(
+ pCppI, aMemberDescr.get(),
+ ((typelib_InterfaceMethodTypeDescription *)aMemberDescr.get())->pReturnTypeRef,
+ ((typelib_InterfaceMethodTypeDescription *)aMemberDescr.get())->nParams,
+ ((typelib_InterfaceMethodTypeDescription *)aMemberDescr.get())->pParams,
+ gpreg, fpreg, ovrflw, pRegisterReturn );
+ }
+ break;
+ }
+ default:
+ {
+#ifdef CMC_DEBUG
+ fprintf(stderr, "screwed\n");
+#endif
+
+ throw RuntimeException(
+ rtl::OUString::createFromAscii("no member description found!"),
+ (XInterface *)pThis );
+ // is here for dummy
+ eRet = typelib_TypeClass_VOID;
+ }
+ }
+
+#ifdef CMC_DEBUG
+ fprintf(stderr, "end of cpp_mediate\n");
+#endif
+ return eRet;
+}
+
+extern "C" void privateSnippetExecutor( ... )
+{
+ volatile long nOffsetAndIndex;
+
+ //mr %r3, %r11 # move into arg1 the 64bit value passed from OOo
+ __asm__ __volatile__ (
+ "mr %0, 11\n\t"
+ : "=r" (nOffsetAndIndex) : );
+
+ sal_uInt64 gpreg[ppc64::MAX_GPR_REGS];
+ double fpreg[ppc64::MAX_SSE_REGS];
+
+ __asm__ __volatile__ (
+ "std 3, 0(%0)\t\n"
+ "std 4, 8(%0)\t\n"
+ "std 5, 16(%0)\t\n"
+ "std 6, 24(%0)\t\n"
+ "std 7, 32(%0)\t\n"
+ "std 8, 40(%0)\t\n"
+ "std 9, 48(%0)\t\n"
+ "std 10, 56(%0)\t\n"
+ "stfd 1, 0(%1)\t\n"
+ "stfd 2, 8(%1)\t\n"
+ "stfd 3, 16(%1)\t\n"
+ "stfd 4, 24(%1)\t\n"
+ "stfd 5, 32(%1)\t\n"
+ "stfd 6, 40(%1)\t\n"
+ "stfd 7, 48(%1)\t\n"
+ "stfd 8, 56(%1)\t\n"
+ "stfd 9, 64(%1)\t\n"
+ "stfd 10, 72(%1)\t\n"
+ "stfd 11, 80(%1)\t\n"
+ "stfd 12, 88(%1)\t\n"
+ "stfd 13, 96(%1)\t\n"
+ : : "r" (gpreg), "r" (fpreg)
+ : "r0", "r3", "r4", "r5", "r6", "r7", "r8", "r9", "r10",
+ "fr1", "fr2", "fr3", "fr4", "fr5", "fr6", "fr7", "fr8", "fr9",
+ "fr10", "fr11", "fr12", "fr13"
+ );
+
+ volatile long sp;
+
+ //stack pointer
+ __asm__ __volatile__ (
+ "mr %0, 1\n\t"
+ : "=r" (sp) : );
+
+ volatile long nRegReturn[1];
+
+ typelib_TypeClass aType =
+ cpp_mediate( nOffsetAndIndex, (void**)gpreg, (void**)fpreg, sp, (sal_Int64*)nRegReturn);
+
+ switch( aType )
+ {
+ case typelib_TypeClass_VOID:
+ break;
+ case typelib_TypeClass_BOOLEAN:
+ case typelib_TypeClass_BYTE:
+ __asm__( "lbz 3,%0\n\t"
+ : : "m" (nRegReturn[0]) );
+ break;
+ case typelib_TypeClass_CHAR:
+ case typelib_TypeClass_UNSIGNED_SHORT:
+ __asm__( "lhz 3,%0\n\t"
+ : : "m" (nRegReturn[0]) );
+ break;
+ case typelib_TypeClass_SHORT:
+ __asm__( "lha 3,%0\n\t"
+ : : "m" (nRegReturn[0]) );
+ break;
+ case typelib_TypeClass_ENUM:
+ case typelib_TypeClass_UNSIGNED_LONG:
+ __asm__( "lwz 3,%0\n\t"
+ : : "m"(nRegReturn[0]) );
+ break;
+ case typelib_TypeClass_LONG:
+ __asm__( "lwa 3,%0\n\t"
+ : : "m"(nRegReturn[0]) );
+ break;
+ case typelib_TypeClass_FLOAT:
+ __asm__( "lfs 1,%0\n\t"
+ : : "m" (*((float*)nRegReturn)) );
+ break;
+ case typelib_TypeClass_DOUBLE:
+ __asm__( "lfd 1,%0\n\t"
+ : : "m" (*((double*)nRegReturn)) );
+ break;
+ default:
+ __asm__( "ld 3,%0\n\t"
+ : : "m" (nRegReturn[0]) );
+ break;
+ }
+}
+
+const int codeSnippetSize = 24;
+
+unsigned char * codeSnippet( unsigned char * code, sal_Int32 nFunctionIndex, sal_Int32 nVtableOffset,
+ bool simpleRetType)
+{
+#ifdef CMC_DEBUG
+ fprintf(stderr,"in codeSnippet functionIndex is %x\n", nFunctionIndex);
+ fprintf(stderr,"in codeSnippet vtableOffset is %x\n", nVtableOffset);
+#endif
+
+ sal_uInt64 nOffsetAndIndex = ( ( (sal_uInt64) nVtableOffset ) << 32 ) | ( (sal_uInt64) nFunctionIndex );
+
+ if ( !simpleRetType )
+ nOffsetAndIndex |= 0x80000000;
+
+ void ** raw = (void **)&code[0];
+ memcpy(raw, (char*) privateSnippetExecutor, 16);
+ raw[2] = (void*) nOffsetAndIndex;
+#ifdef CMC_DEBUG
+ fprintf(stderr, "in: offset/index is %x %x %d, %lx\n",
+ nFunctionIndex, nVtableOffset, !simpleRetType, raw[2]);
+#endif
+ return (code + codeSnippetSize);
+}
+
+}
+
+void bridges::cpp_uno::shared::VtableFactory::flushCode(unsigned char const * bptr, unsigned char const * eptr)
+{
+ int const lineSize = 32;
+ for (unsigned char const * p = bptr; p < eptr + lineSize; p += lineSize) {
+ __asm__ volatile ("dcbst 0, %0" : : "r"(p) : "memory");
+ }
+ __asm__ volatile ("sync" : : : "memory");
+ for (unsigned char const * p = bptr; p < eptr + lineSize; p += lineSize) {
+ __asm__ volatile ("icbi 0, %0" : : "r"(p) : "memory");
+ }
+ __asm__ volatile ("isync" : : : "memory");
+}
+
+struct bridges::cpp_uno::shared::VtableFactory::Slot { void * fn; };
+
+bridges::cpp_uno::shared::VtableFactory::Slot *
+bridges::cpp_uno::shared::VtableFactory::mapBlockToVtable(void * block)
+{
+ return static_cast< Slot * >(block) + 2;
+}
+
+sal_Size bridges::cpp_uno::shared::VtableFactory::getBlockSize(
+ sal_Int32 slotCount)
+{
+ return (slotCount + 2) * sizeof (Slot) + slotCount * codeSnippetSize;
+}
+
+bridges::cpp_uno::shared::VtableFactory::Slot *
+bridges::cpp_uno::shared::VtableFactory::initializeBlock(
+ void * block, sal_Int32 slotCount)
+{
+ Slot * slots = mapBlockToVtable(block);
+ slots[-2].fn = 0;
+ slots[-1].fn = 0;
+ return slots + slotCount;
+}
+
+unsigned char * bridges::cpp_uno::shared::VtableFactory::addLocalFunctions(
+ Slot ** slots, unsigned char * code, sal_PtrDiff writetoexecdiff,
+ typelib_InterfaceTypeDescription const * type, sal_Int32 functionOffset,
+ sal_Int32 functionCount, sal_Int32 vtableOffset)
+{
+ (*slots) -= functionCount;
+ Slot * s = *slots;
+#ifdef CMC_DEBUG
+ fprintf(stderr, "in addLocalFunctions functionOffset is %x\n",functionOffset);
+ fprintf(stderr, "in addLocalFunctions vtableOffset is %x\n",vtableOffset);
+#endif
+
+ for (sal_Int32 i = 0; i < type->nMembers; ++i) {
+ typelib_TypeDescription * member = 0;
+ TYPELIB_DANGER_GET(&member, type->ppMembers[i]);
+ OSL_ASSERT(member != 0);
+ switch (member->eTypeClass) {
+ case typelib_TypeClass_INTERFACE_ATTRIBUTE:
+ // Getter:
+ (s++)->fn = code + writetoexecdiff;
+ code = codeSnippet(
+ code, functionOffset++, vtableOffset,
+ bridges::cpp_uno::shared::isSimpleType(
+ reinterpret_cast<
+ typelib_InterfaceAttributeTypeDescription * >(
+ member)->pAttributeTypeRef));
+
+ // Setter:
+ if (!reinterpret_cast<
+ typelib_InterfaceAttributeTypeDescription * >(
+ member)->bReadOnly)
+ {
+ (s++)->fn = code + writetoexecdiff;
+ code = codeSnippet(code, functionOffset++, vtableOffset, true);
+ }
+ break;
+
+ case typelib_TypeClass_INTERFACE_METHOD:
+ (s++)->fn = code + writetoexecdiff;
+ code = codeSnippet(
+ code, functionOffset++, vtableOffset,
+ bridges::cpp_uno::shared::isSimpleType(
+ reinterpret_cast<
+ typelib_InterfaceMethodTypeDescription * >(
+ member)->pReturnTypeRef));
+ break;
+
+ default:
+ OSL_ASSERT(false);
+ break;
+ }
+ TYPELIB_DANGER_RELEASE(member);
+ }
+ return code;
+}
+
+/* vi:set tabstop=4 shiftwidth=4 expandtab: */
diff --git a/bridges/source/cpp_uno/gcc3_freebsd_powerpc64/except.cxx b/bridges/source/cpp_uno/gcc3_freebsd_powerpc64/except.cxx
new file mode 100644
index 000000000000..507f671dd3b0
--- /dev/null
+++ b/bridges/source/cpp_uno/gcc3_freebsd_powerpc64/except.cxx
@@ -0,0 +1,283 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_bridges.hxx"
+
+#include <stdio.h>
+#include <string.h>
+#include <dlfcn.h>
+#include <cxxabi.h>
+#include <hash_map>
+
+#include <rtl/strbuf.hxx>
+#include <rtl/ustrbuf.hxx>
+#include <osl/diagnose.h>
+#include <osl/mutex.hxx>
+
+#include <com/sun/star/uno/genfunc.hxx>
+#include <typelib/typedescription.hxx>
+#include <uno/any2.h>
+
+#include "share.hxx"
+
+
+using namespace ::std;
+using namespace ::osl;
+using namespace ::rtl;
+using namespace ::com::sun::star::uno;
+using namespace ::__cxxabiv1;
+
+
+namespace CPPU_CURRENT_NAMESPACE
+{
+
+void dummy_can_throw_anything( char const * )
+{
+}
+
+//==================================================================================================
+static OUString toUNOname( char const * p ) SAL_THROW( () )
+{
+#if OSL_DEBUG_LEVEL > 1
+ char const * start = p;
+#endif
+
+ // example: N3com3sun4star4lang24IllegalArgumentExceptionE
+
+ OUStringBuffer buf( 64 );
+ OSL_ASSERT( 'N' == *p );
+ ++p; // skip N
+
+ while ('E' != *p)
+ {
+ // read chars count
+ long n = (*p++ - '0');
+ while ('0' <= *p && '9' >= *p)
+ {
+ n *= 10;
+ n += (*p++ - '0');
+ }
+ buf.appendAscii( p, n );
+ p += n;
+ if ('E' != *p)
+ buf.append( (sal_Unicode)'.' );
+ }
+
+#if OSL_DEBUG_LEVEL > 1
+ OUString ret( buf.makeStringAndClear() );
+ OString c_ret( OUStringToOString( ret, RTL_TEXTENCODING_ASCII_US ) );
+ fprintf( stderr, "> toUNOname(): %s => %s\n", start, c_ret.getStr() );
+ return ret;
+#else
+ return buf.makeStringAndClear();
+#endif
+}
+
+//==================================================================================================
+class RTTI
+{
+ typedef hash_map< OUString, type_info *, OUStringHash > t_rtti_map;
+
+ Mutex m_mutex;
+ t_rtti_map m_rttis;
+ t_rtti_map m_generatedRttis;
+
+ void * m_hApp;
+
+public:
+ RTTI() SAL_THROW( () );
+ ~RTTI() SAL_THROW( () );
+
+ type_info * getRTTI( typelib_CompoundTypeDescription * ) SAL_THROW( () );
+};
+//__________________________________________________________________________________________________
+RTTI::RTTI() SAL_THROW( () )
+ : m_hApp( dlopen( 0, RTLD_LAZY ) )
+{
+}
+//__________________________________________________________________________________________________
+RTTI::~RTTI() SAL_THROW( () )
+{
+ dlclose( m_hApp );
+}
+
+//__________________________________________________________________________________________________
+type_info * RTTI::getRTTI( typelib_CompoundTypeDescription *pTypeDescr ) SAL_THROW( () )
+{
+ type_info * rtti;
+
+ OUString const & unoName = *(OUString const *)&pTypeDescr->aBase.pTypeName;
+
+ MutexGuard guard( m_mutex );
+ t_rtti_map::const_iterator iRttiFind( m_rttis.find( unoName ) );
+ if (iRttiFind == m_rttis.end())
+ {
+ // RTTI symbol
+ OStringBuffer buf( 64 );
+ buf.append( RTL_CONSTASCII_STRINGPARAM("_ZTIN") );
+ sal_Int32 index = 0;
+ do
+ {
+ OUString token( unoName.getToken( 0, '.', index ) );
+ buf.append( token.getLength() );
+ OString c_token( OUStringToOString( token, RTL_TEXTENCODING_ASCII_US ) );
+ buf.append( c_token );
+ }
+ while (index >= 0);
+ buf.append( 'E' );
+
+ OString symName( buf.makeStringAndClear() );
+ rtti = (type_info *)dlsym( m_hApp, symName.getStr() );
+
+ if (rtti)
+ {
+ pair< t_rtti_map::iterator, bool > insertion(
+ m_rttis.insert( t_rtti_map::value_type( unoName, rtti ) ) );
+ OSL_ENSURE( insertion.second, "### inserting new rtti failed?!" );
+ }
+ else
+ {
+ // try to lookup the symbol in the generated rtti map
+ t_rtti_map::const_iterator iFind( m_generatedRttis.find( unoName ) );
+ if (iFind == m_generatedRttis.end())
+ {
+ // we must generate it !
+ // symbol and rtti-name is nearly identical,
+ // the symbol is prefixed with _ZTI
+ char const * rttiName = symName.getStr() +4;
+#if OSL_DEBUG_LEVEL > 1
+ fprintf( stderr,"generated rtti for %s\n", rttiName );
+#endif
+ if (pTypeDescr->pBaseTypeDescription)
+ {
+ // ensure availability of base
+ type_info * base_rtti = getRTTI(
+ (typelib_CompoundTypeDescription *)pTypeDescr->pBaseTypeDescription );
+ rtti = new __si_class_type_info(
+ strdup( rttiName ), (__class_type_info *)base_rtti );
+ }
+ else
+ {
+ // this class has no base class
+ rtti = new __class_type_info( strdup( rttiName ) );
+ }
+
+ pair< t_rtti_map::iterator, bool > insertion(
+ m_generatedRttis.insert( t_rtti_map::value_type( unoName, rtti ) ) );
+ OSL_ENSURE( insertion.second, "### inserting new generated rtti failed?!" );
+ }
+ else // taking already generated rtti
+ {
+ rtti = iFind->second;
+ }
+ }
+ }
+ else
+ {
+ rtti = iRttiFind->second;
+ }
+
+ return rtti;
+}
+
+//--------------------------------------------------------------------------------------------------
+static void deleteException( void * pExc )
+{
+ __cxa_exception const * header = ((__cxa_exception const *)pExc - 1);
+ typelib_TypeDescription * pTD = 0;
+ OUString unoName( toUNOname( header->exceptionType->name() ) );
+ ::typelib_typedescription_getByName( &pTD, unoName.pData );
+ OSL_ENSURE( pTD, "### unknown exception type! leaving out destruction => leaking!!!" );
+ if (pTD)
+ {
+ ::uno_destructData( pExc, pTD, cpp_release );
+ ::typelib_typedescription_release( pTD );
+ }
+}
+
+//==================================================================================================
+void raiseException( uno_Any * pUnoExc, uno_Mapping * pUno2Cpp )
+{
+ void * pCppExc;
+ type_info * rtti;
+
+ {
+ // construct cpp exception object
+ typelib_TypeDescription * pTypeDescr = 0;
+ TYPELIB_DANGER_GET( &pTypeDescr, pUnoExc->pType );
+ OSL_ASSERT( pTypeDescr );
+ if (! pTypeDescr)
+ terminate();
+
+ pCppExc = __cxa_allocate_exception( pTypeDescr->nSize );
+ ::uno_copyAndConvertData( pCppExc, pUnoExc->pData, pTypeDescr, pUno2Cpp );
+
+ // destruct uno exception
+ ::uno_any_destruct( pUnoExc, 0 );
+ // avoiding locked counts
+ static RTTI * s_rtti = 0;
+ if (! s_rtti)
+ {
+ MutexGuard guard( Mutex::getGlobalMutex() );
+ if (! s_rtti)
+ {
+#ifdef LEAK_STATIC_DATA
+ s_rtti = new RTTI();
+#else
+ static RTTI rtti_data;
+ s_rtti = &rtti_data;
+#endif
+ }
+ }
+ rtti = (type_info *)s_rtti->getRTTI( (typelib_CompoundTypeDescription *) pTypeDescr );
+ TYPELIB_DANGER_RELEASE( pTypeDescr );
+ OSL_ENSURE( rtti, "### no rtti for throwing exception!" );
+ if (! rtti)
+ terminate();
+ }
+
+ __cxa_throw( pCppExc, rtti, deleteException );
+}
+
+//==================================================================================================
+void fillUnoException( __cxa_exception * header, uno_Any * pExc, uno_Mapping * pCpp2Uno )
+{
+ OSL_ENSURE( header, "### no exception header!!!" );
+ if (! header)
+ terminate();
+
+ typelib_TypeDescription * pExcTypeDescr = 0;
+ OUString unoName( toUNOname( header->exceptionType->name() ) );
+ ::typelib_typedescription_getByName( &pExcTypeDescr, unoName.pData );
+ OSL_ENSURE( pExcTypeDescr, "### can not get type description for exception!!!" );
+ if (! pExcTypeDescr)
+ terminate();
+
+ // construct uno exception any
+ ::uno_any_constructAndConvert( pExc, header->adjustedPtr, pExcTypeDescr, pCpp2Uno );
+ ::typelib_typedescription_release( pExcTypeDescr );
+}
+
+}
+
diff --git a/bridges/source/cpp_uno/gcc3_freebsd_powerpc64/makefile.mk b/bridges/source/cpp_uno/gcc3_freebsd_powerpc64/makefile.mk
new file mode 100644
index 000000000000..701c628d6573
--- /dev/null
+++ b/bridges/source/cpp_uno/gcc3_freebsd_powerpc64/makefile.mk
@@ -0,0 +1,75 @@
+#**************************************************************
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+#**************************************************************
+
+
+
+PRJ=..$/..$/..
+
+PRJNAME=bridges
+TARGET=gcc3_uno
+LIBTARGET=no
+ENABLE_EXCEPTIONS=TRUE
+
+# --- Settings -----------------------------------------------------
+
+.INCLUDE : settings.mk
+
+# --- Files --------------------------------------------------------
+
+.IF "$(COM)$(OS)$(CPU)$(COMNAME)$(CPUNAME)" == "GCCLINUXPgcc3POWERPC64"
+
+.IF "$(cppu_no_leak)" == ""
+CFLAGS += -DLEAK_STATIC_DATA
+.ENDIF
+
+# In case someone enabled the non-standard -fomit-frame-pointer which does not
+# work with the .cxx sources in this directory:
+CFLAGSCXX += -fno-omit-frame-pointer
+
+NOOPTFILES= \
+ $(SLO)$/uno2cpp.obj \
+ $(SLO)$/cpp2uno.obj
+
+CFLAGSNOOPT=-O0
+
+SLOFILES= \
+ $(SLO)$/except.obj \
+ $(SLO)$/cpp2uno.obj \
+ $(SLO)$/uno2cpp.obj
+
+SHL1TARGET= $(TARGET)
+
+SHL1DEF=$(MISC)$/$(SHL1TARGET).def
+SHL1IMPLIB=i$(TARGET)
+SHL1VERSIONMAP=..$/..$/bridge_exports.map
+
+SHL1OBJS= $(SLOFILES)
+SHL1LIBS = $(SLB)$/cpp_uno_shared.lib
+
+SHL1STDLIBS= \
+ $(CPPULIB) \
+ $(SALLIB)
+
+.ENDIF
+
+# --- Targets ------------------------------------------------------
+
+.INCLUDE : target.mk
diff --git a/bridges/source/cpp_uno/gcc3_freebsd_powerpc64/share.hxx b/bridges/source/cpp_uno/gcc3_freebsd_powerpc64/share.hxx
new file mode 100644
index 000000000000..a6545dd4b77a
--- /dev/null
+++ b/bridges/source/cpp_uno/gcc3_freebsd_powerpc64/share.hxx
@@ -0,0 +1,92 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+
+
+#include "uno/mapping.h"
+
+#include <typeinfo>
+#include <exception>
+#include <cstddef>
+
+namespace CPPU_CURRENT_NAMESPACE
+{
+
+ void dummy_can_throw_anything( char const * );
+
+
+// ----- following decl from libstdc++-v3/libsupc++/unwind-cxx.h and unwind.h
+
+struct _Unwind_Exception
+{
+ unsigned exception_class __attribute__((__mode__(__DI__)));
+ void * exception_cleanup;
+ unsigned private_1 __attribute__((__mode__(__word__)));
+ unsigned private_2 __attribute__((__mode__(__word__)));
+} __attribute__((__aligned__));
+
+struct __cxa_exception
+{
+ ::std::type_info *exceptionType;
+ void (*exceptionDestructor)(void *);
+
+ ::std::unexpected_handler unexpectedHandler;
+ ::std::terminate_handler terminateHandler;
+
+ __cxa_exception *nextException;
+
+ int handlerCount;
+
+ int handlerSwitchValue;
+ const unsigned char *actionRecord;
+ const unsigned char *languageSpecificData;
+ void *catchTemp;
+ void *adjustedPtr;
+
+ _Unwind_Exception unwindHeader;
+};
+
+extern "C" void *__cxa_allocate_exception(
+ std::size_t thrown_size ) throw();
+extern "C" void __cxa_throw (
+ void *thrown_exception, std::type_info *tinfo, void (*dest) (void *) ) __attribute__((noreturn));
+
+struct __cxa_eh_globals
+{
+ __cxa_exception *caughtExceptions;
+ unsigned int uncaughtExceptions;
+};
+extern "C" __cxa_eh_globals *__cxa_get_globals () throw();
+
+// -----
+
+//==================================================================================================
+void raiseException(
+ uno_Any * pUnoExc, uno_Mapping * pUno2Cpp );
+//==================================================================================================
+void fillUnoException(
+ __cxa_exception * header, uno_Any *, uno_Mapping * pCpp2Uno );
+}
+
+namespace ppc64
+{
+ enum ppclimits { MAX_GPR_REGS = 8, MAX_SSE_REGS = 13 };
+}
diff --git a/bridges/source/cpp_uno/gcc3_freebsd_powerpc64/uno2cpp.cxx b/bridges/source/cpp_uno/gcc3_freebsd_powerpc64/uno2cpp.cxx
new file mode 100644
index 000000000000..0766a76939af
--- /dev/null
+++ b/bridges/source/cpp_uno/gcc3_freebsd_powerpc64/uno2cpp.cxx
@@ -0,0 +1,596 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_bridges.hxx"
+
+#include <malloc.h>
+
+#include <com/sun/star/uno/genfunc.hxx>
+#include <uno/data.h>
+
+#include "bridges/cpp_uno/shared/bridge.hxx"
+#include "bridges/cpp_uno/shared/types.hxx"
+#include "bridges/cpp_uno/shared/unointerfaceproxy.hxx"
+#include "bridges/cpp_uno/shared/vtables.hxx"
+
+#include "share.hxx"
+
+#include <stdio.h>
+#include <string.h>
+
+
+using namespace ::rtl;
+using namespace ::com::sun::star::uno;
+
+void MapReturn(long r3, double dret, typelib_TypeClass eTypeClass, void *pRegisterReturn)
+{
+ switch (eTypeClass)
+ {
+ case typelib_TypeClass_HYPER:
+ case typelib_TypeClass_UNSIGNED_HYPER:
+ *reinterpret_cast<sal_uInt64 *>( pRegisterReturn ) = r3;
+ break;
+ case typelib_TypeClass_LONG:
+ case typelib_TypeClass_UNSIGNED_LONG:
+ case typelib_TypeClass_ENUM:
+ *reinterpret_cast<sal_uInt32 *>( pRegisterReturn ) = r3;
+ break;
+ case typelib_TypeClass_CHAR:
+ case typelib_TypeClass_SHORT:
+ case typelib_TypeClass_UNSIGNED_SHORT:
+ *reinterpret_cast<sal_uInt16 *>( pRegisterReturn ) = (unsigned short)r3;
+ break;
+ case typelib_TypeClass_BOOLEAN:
+ case typelib_TypeClass_BYTE:
+ *reinterpret_cast<sal_uInt8 *>( pRegisterReturn ) = (unsigned char)r3;
+ break;
+ case typelib_TypeClass_FLOAT:
+ *reinterpret_cast<float *>( pRegisterReturn ) = dret;
+ break;
+ case typelib_TypeClass_DOUBLE:
+ *reinterpret_cast<double *>( pRegisterReturn ) = dret;
+ break;
+ default:
+ break;
+ }
+}
+
+namespace
+{
+//==================================================================================================
+static void callVirtualMethod(void * pThis, sal_uInt32 nVtableIndex,
+ void * pRegisterReturn, typelib_TypeDescription * pReturnTypeDescr,
+ sal_uInt64 *pStack, sal_uInt32 nStack,
+ sal_uInt64 *pGPR, sal_uInt32 nGPR,
+ double *pFPR, sal_uInt32 nFPR)
+{
+ // Stack, if used, must be 16-bytes aligned
+ if ( nStack )
+ nStack = ( nStack + 1 ) & ~1;
+
+ // Should not happen, but...
+ if ( nFPR > ppc64::MAX_SSE_REGS )
+ nFPR = ppc64::MAX_SSE_REGS;
+ if ( nGPR > ppc64::MAX_GPR_REGS )
+ nGPR = ppc64::MAX_GPR_REGS;
+
+#ifdef CMC_DEBUG
+ // Let's figure out what is really going on here
+ {
+ fprintf( stderr, "= callVirtualMethod() =\nGPR's (%d): ", nGPR );
+ for ( int i = 0; i < nGPR; ++i )
+ fprintf( stderr, "0x%lx, ", pGPR[i] );
+ fprintf( stderr, "\nFPR's (%d): ", nFPR );
+ for ( int i = 0; i < nFPR; ++i )
+ fprintf( stderr, "0x%lx (%f), ", pFPR[i], pFPR[i] );
+ fprintf( stderr, "\nStack (%d): ", nStack );
+ for ( int i = 0; i < nStack; ++i )
+ fprintf( stderr, "0x%lx, ", pStack[i] );
+ fprintf( stderr, "\n" );
+ }
+#endif
+
+ // Load parameters to stack, if necessary
+ sal_uInt64 *stack = (sal_uInt64 *) __builtin_alloca( nStack * 8 );
+ memcpy( stack, pStack, nStack * 8 );
+
+ // Get pointer to method
+ sal_uInt64 pMethod = *((sal_uInt64 *)pThis);
+ pMethod += 8 * nVtableIndex;
+ pMethod = *((sal_uInt64 *)pMethod);
+
+ typedef void (* FunctionCall )( sal_uInt64, sal_uInt64, sal_uInt64, sal_uInt64, sal_uInt64, sal_uInt64, sal_uInt64, sal_uInt64 );
+ FunctionCall pFunc = (FunctionCall)pMethod;
+
+ volatile double dret;
+
+ // fill registers
+ __asm__ __volatile__ (
+ "ld 3, 0(%0)\n\t"
+ "ld 4, 8(%0)\n\t"
+ "ld 5, 16(%0)\n\t"
+ "ld 6, 24(%0)\n\t"
+ "ld 7, 32(%0)\n\t"
+ "ld 8, 40(%0)\n\t"
+ "ld 9, 48(%0)\n\t"
+ "ld 10, 56(%0)\n\t"
+ "lfd 1, 0(%1)\n\t"
+ "lfd 2, 8(%1)\n\t"
+ "lfd 3, 16(%1)\n\t"
+ "lfd 4, 24(%1)\n\t"
+ "lfd 5, 32(%1)\n\t"
+ "lfd 6, 40(%1)\n\t"
+ "lfd 7, 48(%1)\n\t"
+ "lfd 8, 56(%1)\n\t"
+ "lfd 9, 64(%1)\n\t"
+ "lfd 10, 72(%1)\n\t"
+ "lfd 11, 80(%1)\n\t"
+ "lfd 12, 88(%1)\n\t"
+ "lfd 13, 96(%1)\n\t"
+ : : "r" (pGPR), "r" (pFPR)
+ : "r0", "r3", "r4", "r5", "r6", "r7", "r8", "r9", "r10",
+ "fr1", "fr2", "fr3", "fr4", "fr5", "fr6", "fr7", "fr8", "fr9",
+ "fr10", "fr11", "fr12", "fr13"
+ );
+
+ // tell gcc that r3 to r11 are not available to it for doing the TOC and exception munge on the func call
+ register sal_uInt64 r3 asm("r3");
+ register sal_uInt64 r4 asm("r4");
+ register sal_uInt64 r5 asm("r5");
+ register sal_uInt64 r6 asm("r6");
+ register sal_uInt64 r7 asm("r7");
+ register sal_uInt64 r8 asm("r8");
+ register sal_uInt64 r9 asm("r9");
+ register sal_uInt64 r10 asm("r10");
+ register sal_uInt64 r11 asm("r11");
+
+ (*pFunc)(r3, r4, r5, r6, r7, r8, r9, r10);
+
+ // get return value
+ __asm__ __volatile__ (
+ "mr %1, 3\n\t"
+ "mr %2, 4\n\t"
+ "fmr %0, 1\n\t"
+ : "=f" (dret), "=r" (r3), "=r" (r4) : );
+
+ MapReturn(r3, dret, pReturnTypeDescr->eTypeClass, pRegisterReturn);
+}
+
+// Macros for easier insertion of values to registers or stack
+// pSV - pointer to the source
+// nr - order of the value [will be increased if stored to register]
+// pFPR, pGPR - pointer to the registers
+// pDS - pointer to the stack [will be increased if stored here]
+
+// The value in %xmm register is already prepared to be retrieved as a float,
+// thus we treat float and double the same
+#define INSERT_FLOAT( pSV, nr, pFPR, pDS, bOverflow ) \
+ if ( nr < ppc64::MAX_SSE_REGS ) \
+ pFPR[nr++] = *reinterpret_cast<float *>( pSV ); \
+ else \
+ bOverFlow = true; \
+ if (bOverFlow) \
+ *pDS++ = *reinterpret_cast<sal_uInt64 *>( pSV ); // verbatim!
+
+#define INSERT_DOUBLE( pSV, nr, pFPR, pDS, bOverflow ) \
+ if ( nr < ppc64::MAX_SSE_REGS ) \
+ pFPR[nr++] = *reinterpret_cast<double *>( pSV ); \
+ else \
+ bOverFlow = true; \
+ if (bOverFlow) \
+ *pDS++ = *reinterpret_cast<sal_uInt64 *>( pSV ); // verbatim!
+
+#define INSERT_INT64( pSV, nr, pGPR, pDS, bOverflow ) \
+ if ( nr < ppc64::MAX_GPR_REGS ) \
+ pGPR[nr++] = *reinterpret_cast<sal_uInt64 *>( pSV ); \
+ else \
+ bOverFlow = true; \
+ if (bOverFlow) \
+ *pDS++ = *reinterpret_cast<sal_uInt64 *>( pSV );
+
+#define INSERT_INT32( pSV, nr, pGPR, pDS, bOverflow ) \
+ if ( nr < ppc64::MAX_GPR_REGS ) \
+ pGPR[nr++] = *reinterpret_cast<sal_uInt32 *>( pSV ); \
+ else \
+ bOverFlow = true; \
+ if (bOverFlow) \
+ *pDS++ = *reinterpret_cast<sal_uInt32 *>( pSV );
+
+#define INSERT_INT16( pSV, nr, pGPR, pDS, bOverflow ) \
+ if ( nr < ppc64::MAX_GPR_REGS ) \
+ pGPR[nr++] = *reinterpret_cast<sal_uInt16 *>( pSV ); \
+ else \
+ bOverFlow = true; \
+ if (bOverFlow) \
+ *pDS++ = *reinterpret_cast<sal_uInt16 *>( pSV );
+
+#define INSERT_INT8( pSV, nr, pGPR, pDS, bOverflow ) \
+ if ( nr < ppc64::MAX_GPR_REGS ) \
+ pGPR[nr++] = *reinterpret_cast<sal_uInt8 *>( pSV ); \
+ else \
+ bOverFlow = true; \
+ if (bOverFlow) \
+ *pDS++ = *reinterpret_cast<sal_uInt8 *>( pSV );
+
+//==================================================================================================
+static void cpp_call(
+ bridges::cpp_uno::shared::UnoInterfaceProxy * pThis,
+ bridges::cpp_uno::shared::VtableSlot aVtableSlot,
+ typelib_TypeDescriptionReference * pReturnTypeRef,
+ sal_Int32 nParams, typelib_MethodParameter * pParams,
+ void * pUnoReturn, void * pUnoArgs[], uno_Any ** ppUnoExc )
+{
+ // max space for: [complex ret ptr], values|ptr ...
+ sal_uInt64 * pStack = (sal_uInt64 *)alloca( (nParams+3) * sizeof(sal_Int64) );
+ sal_uInt64 * pStackStart = pStack;
+
+ sal_uInt64 pGPR[ppc64::MAX_GPR_REGS];
+ sal_uInt32 nGPR = 0;
+
+ double pFPR[ppc64::MAX_SSE_REGS];
+ sal_uInt32 nFPR = 0;
+
+ // return
+ typelib_TypeDescription * pReturnTypeDescr = 0;
+ TYPELIB_DANGER_GET( &pReturnTypeDescr, pReturnTypeRef );
+ OSL_ENSURE( pReturnTypeDescr, "### expected return type description!" );
+
+ void * pCppReturn = 0; // if != 0 && != pUnoReturn, needs reconversion
+
+ bool bOverFlow = false;
+
+ if (pReturnTypeDescr)
+ {
+#ifdef CMC_DEBUG
+ fprintf(stderr, "return type is %d\n", pReturnTypeDescr->eTypeClass);
+#endif
+ if (bridges::cpp_uno::shared::isSimpleType( pReturnTypeDescr ))
+ {
+ pCppReturn = pUnoReturn; // direct way for simple types
+#ifdef CMC_DEBUG
+ fprintf(stderr, "simple return\n");
+#endif
+ }
+ else
+ {
+ // complex return via ptr
+ pCppReturn = (bridges::cpp_uno::shared::relatesToInterfaceType( pReturnTypeDescr )
+ ? alloca( pReturnTypeDescr->nSize ) : pUnoReturn);
+#ifdef CMC_DEBUG
+ fprintf(stderr, "pCppReturn/pUnoReturn is %lx/%lx", pCppReturn, pUnoReturn);
+#endif
+ INSERT_INT64( &pCppReturn, nGPR, pGPR, pStack, bOverFlow );
+ }
+ }
+ // push "this" pointer
+ void * pAdjustedThisPtr = reinterpret_cast< void ** >( pThis->getCppI() ) + aVtableSlot.offset;
+#ifdef CMC_DEBUG
+ fprintf(stderr, "this pointer is %p\n", pAdjustedThisPtr);
+#endif
+ INSERT_INT64( &pAdjustedThisPtr, nGPR, pGPR, pStack, bOverFlow );
+
+ // Args
+ void ** pCppArgs = (void **)alloca( 3 * sizeof(void *) * nParams );
+ // indizes of values this have to be converted (interface conversion cpp<=>uno)
+ sal_Int32 * pTempIndizes = (sal_Int32 *)(pCppArgs + nParams);
+ // type descriptions for reconversions
+ typelib_TypeDescription ** ppTempParamTypeDescr = (typelib_TypeDescription **)(pCppArgs + (2 * nParams));
+
+ sal_Int32 nTempIndizes = 0;
+
+#ifdef CMC_DEBUG
+ fprintf(stderr, "n params is %d\n", nParams);
+#endif
+
+ for ( sal_Int32 nPos = 0; nPos < nParams; ++nPos )
+ {
+ const typelib_MethodParameter & rParam = pParams[nPos];
+ typelib_TypeDescription * pParamTypeDescr = 0;
+ TYPELIB_DANGER_GET( &pParamTypeDescr, rParam.pTypeRef );
+
+#ifdef CMC_DEBUG
+ fprintf(stderr, "param %d is %d %d %d\n", nPos, rParam.bOut, bridges::cpp_uno::shared::isSimpleType( pParamTypeDescr ),
+ pParamTypeDescr->eTypeClass);
+#endif
+
+ if (!rParam.bOut && bridges::cpp_uno::shared::isSimpleType( pParamTypeDescr ))
+ {
+// uno_copyAndConvertData( pCppArgs[nPos] = alloca( 8 ), pUnoArgs[nPos], pParamTypeDescr,
+ uno_copyAndConvertData( pCppArgs[nPos] = pStack, pUnoArgs[nPos], pParamTypeDescr,
+ pThis->getBridge()->getUno2Cpp() );
+ switch (pParamTypeDescr->eTypeClass)
+ {
+ case typelib_TypeClass_HYPER:
+ case typelib_TypeClass_UNSIGNED_HYPER:
+#ifdef CMC_DEBUG
+ fprintf(stderr, "hyper is %lx\n", pCppArgs[nPos]);
+#endif
+ INSERT_INT64( pCppArgs[nPos], nGPR, pGPR, pStack, bOverFlow );
+ break;
+ case typelib_TypeClass_LONG:
+ case typelib_TypeClass_UNSIGNED_LONG:
+ case typelib_TypeClass_ENUM:
+#ifdef CMC_DEBUG
+ fprintf(stderr, "long is %x\n", pCppArgs[nPos]);
+#endif
+ INSERT_INT32( pCppArgs[nPos], nGPR, pGPR, pStack, bOverFlow );
+ break;
+ case typelib_TypeClass_SHORT:
+ case typelib_TypeClass_CHAR:
+ case typelib_TypeClass_UNSIGNED_SHORT:
+ INSERT_INT16( pCppArgs[nPos], nGPR, pGPR, pStack, bOverFlow );
+ break;
+ case typelib_TypeClass_BOOLEAN:
+ case typelib_TypeClass_BYTE:
+ INSERT_INT8( pCppArgs[nPos], nGPR, pGPR, pStack, bOverFlow );
+ break;
+ case typelib_TypeClass_FLOAT:
+ INSERT_FLOAT( pCppArgs[nPos], nFPR, pFPR, pStack, bOverFlow );
+ break;
+ case typelib_TypeClass_DOUBLE:
+ INSERT_DOUBLE( pCppArgs[nPos], nFPR, pFPR, pStack, bOverFlow );
+ break;
+ }
+
+ // no longer needed
+ TYPELIB_DANGER_RELEASE( pParamTypeDescr );
+
+ }
+ else // ptr to complex value | ref
+ {
+#ifdef CMC_DEBUG
+ fprintf(stderr, "complex type again %d\n", rParam.bIn);
+#endif
+ if (! rParam.bIn) // is pure out
+ {
+#ifdef CMC_DEBUG
+ fprintf(stderr, "complex size is %d\n", pParamTypeDescr->nSize );
+#endif
+ // cpp out is constructed mem, uno out is not!
+ uno_constructData(
+ pCppArgs[nPos] = alloca( pParamTypeDescr->nSize ),
+ pParamTypeDescr );
+ pTempIndizes[nTempIndizes] = nPos; // default constructed for cpp call
+ // will be released at reconversion
+ ppTempParamTypeDescr[nTempIndizes++] = pParamTypeDescr;
+ }
+ // is in/inout
+ else if (bridges::cpp_uno::shared::relatesToInterfaceType( pParamTypeDescr ))
+ {
+#ifdef CMC_DEBUG
+ fprintf(stderr, "this one\n");
+#endif
+ uno_copyAndConvertData(
+ pCppArgs[nPos] = alloca( pParamTypeDescr->nSize ),
+ pUnoArgs[nPos], pParamTypeDescr, pThis->getBridge()->getUno2Cpp() );
+
+ pTempIndizes[nTempIndizes] = nPos; // has to be reconverted
+ // will be released at reconversion
+ ppTempParamTypeDescr[nTempIndizes++] = pParamTypeDescr;
+ }
+ else // direct way
+ {
+#ifdef CMC_DEBUG
+ fprintf(stderr, "that one, passing %lx through\n", pUnoArgs[nPos]);
+#endif
+ pCppArgs[nPos] = pUnoArgs[nPos];
+ // no longer needed
+ TYPELIB_DANGER_RELEASE( pParamTypeDescr );
+ }
+ INSERT_INT64( &(pCppArgs[nPos]), nGPR, pGPR, pStack, bOverFlow );
+ }
+ }
+
+ try
+ {
+ callVirtualMethod(
+ pAdjustedThisPtr, aVtableSlot.index,
+ pCppReturn, pReturnTypeDescr,
+ pStackStart, ( pStack - pStackStart ),
+ pGPR, nGPR,
+ pFPR, nFPR );
+ // NO exception occurred...
+ *ppUnoExc = 0;
+
+ // reconvert temporary params
+ for ( ; nTempIndizes--; )
+ {
+ sal_Int32 nIndex = pTempIndizes[nTempIndizes];
+ typelib_TypeDescription * pParamTypeDescr = ppTempParamTypeDescr[nTempIndizes];
+
+ if (pParams[nIndex].bIn)
+ {
+ if (pParams[nIndex].bOut) // inout
+ {
+ uno_destructData( pUnoArgs[nIndex], pParamTypeDescr, 0 ); // destroy uno value
+ uno_copyAndConvertData( pUnoArgs[nIndex], pCppArgs[nIndex], pParamTypeDescr,
+ pThis->getBridge()->getCpp2Uno() );
+ }
+ }
+ else // pure out
+ {
+ uno_copyAndConvertData( pUnoArgs[nIndex], pCppArgs[nIndex], pParamTypeDescr,
+ pThis->getBridge()->getCpp2Uno() );
+ }
+ // destroy temp cpp param => cpp: every param was constructed
+ uno_destructData( pCppArgs[nIndex], pParamTypeDescr, cpp_release );
+
+ TYPELIB_DANGER_RELEASE( pParamTypeDescr );
+ }
+ // return value
+ if (pCppReturn && pUnoReturn != pCppReturn)
+ {
+ uno_copyAndConvertData( pUnoReturn, pCppReturn, pReturnTypeDescr,
+ pThis->getBridge()->getCpp2Uno() );
+ uno_destructData( pCppReturn, pReturnTypeDescr, cpp_release );
+ }
+ }
+ catch (...)
+ {
+ // fill uno exception
+ fillUnoException( CPPU_CURRENT_NAMESPACE::__cxa_get_globals()->caughtExceptions,
+ *ppUnoExc, pThis->getBridge()->getCpp2Uno() );
+
+ // temporary params
+ for ( ; nTempIndizes--; )
+ {
+ sal_Int32 nIndex = pTempIndizes[nTempIndizes];
+ // destroy temp cpp param => cpp: every param was constructed
+ uno_destructData( pCppArgs[nIndex], ppTempParamTypeDescr[nTempIndizes], cpp_release );
+ TYPELIB_DANGER_RELEASE( ppTempParamTypeDescr[nTempIndizes] );
+ }
+ // return type
+ if (pReturnTypeDescr)
+ TYPELIB_DANGER_RELEASE( pReturnTypeDescr );
+ }
+}
+
+}
+
+namespace bridges { namespace cpp_uno { namespace shared {
+
+void unoInterfaceProxyDispatch(
+ uno_Interface * pUnoI, const typelib_TypeDescription * pMemberDescr,
+ void * pReturn, void * pArgs[], uno_Any ** ppException )
+{
+ // is my surrogate
+ bridges::cpp_uno::shared::UnoInterfaceProxy * pThis
+ = static_cast< bridges::cpp_uno::shared::UnoInterfaceProxy *> (pUnoI);
+ typelib_InterfaceTypeDescription * pTypeDescr = pThis->pTypeDescr;
+
+ switch (pMemberDescr->eTypeClass)
+ {
+ case typelib_TypeClass_INTERFACE_ATTRIBUTE:
+ {
+
+ VtableSlot aVtableSlot(
+ getVtableSlot(
+ reinterpret_cast<
+ typelib_InterfaceAttributeTypeDescription const * >(
+ pMemberDescr)));
+
+ if (pReturn)
+ {
+ // dependent dispatch
+ cpp_call(
+ pThis, aVtableSlot,
+ ((typelib_InterfaceAttributeTypeDescription *)pMemberDescr)->pAttributeTypeRef,
+ 0, 0, // no params
+ pReturn, pArgs, ppException );
+ }
+ else
+ {
+ // is SET
+ typelib_MethodParameter aParam;
+ aParam.pTypeRef =
+ ((typelib_InterfaceAttributeTypeDescription *)pMemberDescr)->pAttributeTypeRef;
+ aParam.bIn = sal_True;
+ aParam.bOut = sal_False;
+
+ typelib_TypeDescriptionReference * pReturnTypeRef = 0;
+ OUString aVoidName( RTL_CONSTASCII_USTRINGPARAM("void") );
+ typelib_typedescriptionreference_new(
+ &pReturnTypeRef, typelib_TypeClass_VOID, aVoidName.pData );
+
+ // dependent dispatch
+ aVtableSlot.index += 1; //get then set method
+ cpp_call(
+ pThis, aVtableSlot,
+ pReturnTypeRef,
+ 1, &aParam,
+ pReturn, pArgs, ppException );
+
+ typelib_typedescriptionreference_release( pReturnTypeRef );
+ }
+
+ break;
+ }
+ case typelib_TypeClass_INTERFACE_METHOD:
+ {
+
+ VtableSlot aVtableSlot(
+ getVtableSlot(
+ reinterpret_cast<
+ typelib_InterfaceMethodTypeDescription const * >(
+ pMemberDescr)));
+ switch (aVtableSlot.index)
+ {
+ // standard calls
+ case 1: // acquire uno interface
+ (*pUnoI->acquire)( pUnoI );
+ *ppException = 0;
+ break;
+ case 2: // release uno interface
+ (*pUnoI->release)( pUnoI );
+ *ppException = 0;
+ break;
+ case 0: // queryInterface() opt
+ {
+ typelib_TypeDescription * pTD = 0;
+ TYPELIB_DANGER_GET( &pTD, reinterpret_cast< Type * >( pArgs[0] )->getTypeLibType() );
+ if (pTD)
+ {
+ uno_Interface * pInterface = 0;
+ (*pThis->pBridge->getUnoEnv()->getRegisteredInterface)(
+ pThis->pBridge->getUnoEnv(),
+ (void **)&pInterface, pThis->oid.pData, (typelib_InterfaceTypeDescription *)pTD );
+
+ if (pInterface)
+ {
+ ::uno_any_construct(
+ reinterpret_cast< uno_Any * >( pReturn ),
+ &pInterface, pTD, 0 );
+ (*pInterface->release)( pInterface );
+ TYPELIB_DANGER_RELEASE( pTD );
+ *ppException = 0;
+ break;
+ }
+ TYPELIB_DANGER_RELEASE( pTD );
+ }
+ } // else perform queryInterface()
+ default:
+ // dependent dispatch
+ cpp_call(
+ pThis, aVtableSlot,
+ ((typelib_InterfaceMethodTypeDescription *)pMemberDescr)->pReturnTypeRef,
+ ((typelib_InterfaceMethodTypeDescription *)pMemberDescr)->nParams,
+ ((typelib_InterfaceMethodTypeDescription *)pMemberDescr)->pParams,
+ pReturn, pArgs, ppException );
+ }
+ break;
+ }
+ default:
+ {
+ ::com::sun::star::uno::RuntimeException aExc(
+ OUString( RTL_CONSTASCII_USTRINGPARAM("illegal member type description!") ),
+ ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface >() );
+
+ Type const & rExcType = ::getCppuType( &aExc );
+ // binary identical null reference
+ ::uno_type_any_construct( *ppException, &aExc, rExcType.getTypeLibType(), 0 );
+ }
+ }
+}
+
+} } }
diff --git a/bridges/source/cpp_uno/gcc3_freebsd_x86-64/cpp2uno.cxx b/bridges/source/cpp_uno/gcc3_freebsd_x86-64/cpp2uno.cxx
index f027a41e5bac..632529bd1c87 100644
--- a/bridges/source/cpp_uno/gcc3_freebsd_x86-64/cpp2uno.cxx
+++ b/bridges/source/cpp_uno/gcc3_freebsd_x86-64/cpp2uno.cxx
@@ -194,7 +194,7 @@ static typelib_TypeClass cpp2uno_call(
// invoke uno dispatch call
(*pThis->getUnoI()->pDispatcher)( pThis->getUnoI(), pMemberTypeDescr, pUnoReturn, pUnoArgs, &pUnoExc );
- // in case an exception occured...
+ // in case an exception occurred...
if ( pUnoExc )
{
// destruct temporary in/inout params
@@ -213,7 +213,7 @@ static typelib_TypeClass cpp2uno_call(
// is here for dummy
return typelib_TypeClass_VOID;
}
- else // else no exception occured...
+ else // else no exception occurred...
{
// temporary params
for ( ; nTempIndizes--; )
diff --git a/bridges/source/cpp_uno/gcc3_freebsd_x86-64/except.cxx b/bridges/source/cpp_uno/gcc3_freebsd_x86-64/except.cxx
index 078424d5be37..24e6adaa412e 100644
--- a/bridges/source/cpp_uno/gcc3_freebsd_x86-64/except.cxx
+++ b/bridges/source/cpp_uno/gcc3_freebsd_x86-64/except.cxx
@@ -238,7 +238,7 @@ void raiseException( uno_Any * pUnoExc, uno_Mapping * pUno2Cpp )
OUStringToOString(
*reinterpret_cast< OUString const * >( &pUnoExc->pType->pTypeName ),
RTL_TEXTENCODING_ASCII_US ) );
- fprintf( stderr, "> uno exception occured: %s\n", cstr.getStr() );
+ fprintf( stderr, "> uno exception occurred: %s\n", cstr.getStr() );
#endif
void * pCppExc;
type_info * rtti;
@@ -312,7 +312,7 @@ void fillUnoException( __cxa_exception * header, uno_Any * pUnoExc, uno_Mapping
OUString unoName( toUNOname( header->exceptionType->name() ) );
#if OSL_DEBUG_LEVEL > 1
OString cstr_unoName( OUStringToOString( unoName, RTL_TEXTENCODING_ASCII_US ) );
- fprintf( stderr, "> c++ exception occured: %s\n", cstr_unoName.getStr() );
+ fprintf( stderr, "> c++ exception occurred: %s\n", cstr_unoName.getStr() );
#endif
typelib_typedescription_getByName( &pExcTypeDescr, unoName.pData );
if (0 == pExcTypeDescr)
diff --git a/bridges/source/cpp_uno/gcc3_freebsd_x86-64/uno2cpp.cxx b/bridges/source/cpp_uno/gcc3_freebsd_x86-64/uno2cpp.cxx
index 8aa9e3271be6..cc3d83d95ecb 100644
--- a/bridges/source/cpp_uno/gcc3_freebsd_x86-64/uno2cpp.cxx
+++ b/bridges/source/cpp_uno/gcc3_freebsd_x86-64/uno2cpp.cxx
@@ -407,7 +407,7 @@ static void cpp_call(
Reference< XInterface >());
}
- // NO exception occured...
+ // NO exception occurred...
*ppUnoExc = 0;
// reconvert temporary params
diff --git a/bridges/source/cpp_uno/gcc3_linux_alpha/cpp2uno.cxx b/bridges/source/cpp_uno/gcc3_linux_alpha/cpp2uno.cxx
index f75639a4fd28..fc9f8af53b6b 100644
--- a/bridges/source/cpp_uno/gcc3_linux_alpha/cpp2uno.cxx
+++ b/bridges/source/cpp_uno/gcc3_linux_alpha/cpp2uno.cxx
@@ -268,7 +268,7 @@ static typelib_TypeClass cpp2uno_call(
// invoke uno dispatch call
(*pThis->getUnoI()->pDispatcher)( pThis->getUnoI(), pMemberTypeDescr, pUnoReturn, pUnoArgs, &pUnoExc );
- // in case an exception occured...
+ // in case an exception occurred...
if (pUnoExc)
{
// destruct temporary in/inout params
@@ -287,7 +287,7 @@ static typelib_TypeClass cpp2uno_call(
// is here for dummy
return typelib_TypeClass_VOID;
}
- else // else no exception occured...
+ else // else no exception occurred...
{
// temporary params
for ( ; nTempIndizes--; )
diff --git a/bridges/source/cpp_uno/gcc3_linux_alpha/uno2cpp.cxx b/bridges/source/cpp_uno/gcc3_linux_alpha/uno2cpp.cxx
index d927bc7fcf2e..bf7b734e1058 100644
--- a/bridges/source/cpp_uno/gcc3_linux_alpha/uno2cpp.cxx
+++ b/bridges/source/cpp_uno/gcc3_linux_alpha/uno2cpp.cxx
@@ -337,7 +337,7 @@ static void cpp_call(
pStackStart, (pStack - pStackStart),
pGPR, nRegs,
pFPR, nRegs );
- // NO exception occured...
+ // NO exception occurred...
*ppUnoExc = 0;
// reconvert temporary params
diff --git a/bridges/source/cpp_uno/gcc3_linux_arm/cpp2uno.cxx b/bridges/source/cpp_uno/gcc3_linux_arm/cpp2uno.cxx
index b16988fe4a48..7ab52372d5ab 100644
--- a/bridges/source/cpp_uno/gcc3_linux_arm/cpp2uno.cxx
+++ b/bridges/source/cpp_uno/gcc3_linux_arm/cpp2uno.cxx
@@ -182,7 +182,7 @@ namespace
(*pThis->getUnoI()->pDispatcher)(
pThis->getUnoI(), pMemberTypeDescr, pUnoReturn, pUnoArgs, &pUnoExc );
- // in case an exception occured...
+ // in case an exception occurred...
if (pUnoExc)
{
// destruct temporary in/inout params
@@ -203,7 +203,7 @@ namespace
// is here for dummy
return typelib_TypeClass_VOID;
}
- else // else no exception occured...
+ else // else no exception occurred...
{
// temporary params
for ( ; nTempIndizes--; )
diff --git a/bridges/source/cpp_uno/gcc3_linux_arm/except.cxx b/bridges/source/cpp_uno/gcc3_linux_arm/except.cxx
index 1b06ecea6e25..461b00604f97 100644
--- a/bridges/source/cpp_uno/gcc3_linux_arm/except.cxx
+++ b/bridges/source/cpp_uno/gcc3_linux_arm/except.cxx
@@ -223,7 +223,7 @@ namespace CPPU_CURRENT_NAMESPACE
OUStringToOString(
*reinterpret_cast< OUString const * >( &pUnoExc->pType->pTypeName ),
RTL_TEXTENCODING_ASCII_US ) );
- fprintf( stderr, "> uno exception occured: %s\n", cstr.getStr() );
+ fprintf( stderr, "> uno exception occurred: %s\n", cstr.getStr() );
#endif
void * pCppExc;
type_info * rtti;
@@ -310,7 +310,7 @@ namespace CPPU_CURRENT_NAMESPACE
OUString unoName( toUNOname( header->exceptionType->name() ) );
#if OSL_DEBUG_LEVEL > 1
OString cstr_unoName( OUStringToOString( unoName, RTL_TEXTENCODING_ASCII_US ) );
- fprintf( stderr, "> c++ exception occured: %s\n", cstr_unoName.getStr() );
+ fprintf( stderr, "> c++ exception occurred: %s\n", cstr_unoName.getStr() );
#endif
typelib_typedescription_getByName( &pExcTypeDescr, unoName.pData );
if (0 == pExcTypeDescr)
diff --git a/bridges/source/cpp_uno/gcc3_linux_arm/uno2cpp.cxx b/bridges/source/cpp_uno/gcc3_linux_arm/uno2cpp.cxx
index b51d3c46d993..517b9f6154ce 100644
--- a/bridges/source/cpp_uno/gcc3_linux_arm/uno2cpp.cxx
+++ b/bridges/source/cpp_uno/gcc3_linux_arm/uno2cpp.cxx
@@ -465,7 +465,7 @@ static void cpp_call(
(pStack - pStackStart),
pGPR, nGPR);
- // NO exception occured...
+ // NO exception occurred...
*ppUnoExc = 0;
// reconvert temporary params
diff --git a/bridges/source/cpp_uno/gcc3_linux_hppa/cpp2uno.cxx b/bridges/source/cpp_uno/gcc3_linux_hppa/cpp2uno.cxx
index 042d24a054c0..5d087b23f792 100644
--- a/bridges/source/cpp_uno/gcc3_linux_hppa/cpp2uno.cxx
+++ b/bridges/source/cpp_uno/gcc3_linux_hppa/cpp2uno.cxx
@@ -301,7 +301,7 @@ namespace
fprintf(stderr, "after dispatch\n");
#endif
- // in case an exception occured...
+ // in case an exception occurred...
if (pUnoExc)
{
// destruct temporary in/inout params
@@ -322,7 +322,7 @@ namespace
// is here for dummy
return typelib_TypeClass_VOID;
}
- else // else no exception occured...
+ else // else no exception occurred...
{
// temporary params
for ( ; nTempIndizes--; )
diff --git a/bridges/source/cpp_uno/gcc3_linux_hppa/except.cxx b/bridges/source/cpp_uno/gcc3_linux_hppa/except.cxx
index 63267f5e69f5..a289050e6921 100644
--- a/bridges/source/cpp_uno/gcc3_linux_hppa/except.cxx
+++ b/bridges/source/cpp_uno/gcc3_linux_hppa/except.cxx
@@ -223,7 +223,7 @@ namespace CPPU_CURRENT_NAMESPACE
OUStringToOString(
*reinterpret_cast< OUString const * >( &pUnoExc->pType->pTypeName ),
RTL_TEXTENCODING_ASCII_US ) );
- fprintf( stderr, "> uno exception occured: %s\n", cstr.getStr() );
+ fprintf( stderr, "> uno exception occurred: %s\n", cstr.getStr() );
#endif
void * pCppExc;
type_info * rtti;
@@ -303,7 +303,7 @@ namespace CPPU_CURRENT_NAMESPACE
OUString unoName( toUNOname( header->exceptionType->name() ) );
#if OSL_DEBUG_LEVEL > 1
OString cstr_unoName( OUStringToOString( unoName, RTL_TEXTENCODING_ASCII_US ) );
- fprintf( stderr, "> c++ exception occured: %s\n", cstr_unoName.getStr() );
+ fprintf( stderr, "> c++ exception occurred: %s\n", cstr_unoName.getStr() );
#endif
typelib_typedescription_getByName( &pExcTypeDescr, unoName.pData );
if (0 == pExcTypeDescr)
diff --git a/bridges/source/cpp_uno/gcc3_linux_hppa/uno2cpp.cxx b/bridges/source/cpp_uno/gcc3_linux_hppa/uno2cpp.cxx
index 33c1d076ff5a..1b2667bc4b95 100644
--- a/bridges/source/cpp_uno/gcc3_linux_hppa/uno2cpp.cxx
+++ b/bridges/source/cpp_uno/gcc3_linux_hppa/uno2cpp.cxx
@@ -318,7 +318,7 @@ static void cpp_call(
pStackStart,
(pStack - pStackStart), pGPR, pFPR);
- // NO exception occured...
+ // NO exception occurred...
*ppUnoExc = 0;
// reconvert temporary params
diff --git a/bridges/source/cpp_uno/gcc3_linux_ia64/cpp2uno.cxx b/bridges/source/cpp_uno/gcc3_linux_ia64/cpp2uno.cxx
index 85c583b350ee..a5982f9262a2 100644
--- a/bridges/source/cpp_uno/gcc3_linux_ia64/cpp2uno.cxx
+++ b/bridges/source/cpp_uno/gcc3_linux_ia64/cpp2uno.cxx
@@ -244,7 +244,7 @@ static typelib_TypeClass cpp2uno_call(
// invoke uno dispatch call
(*pThis->getUnoI()->pDispatcher)( pThis->getUnoI(), pMemberTypeDescr, pUnoReturn, pUnoArgs, &pUnoExc );
- // in case an exception occured...
+ // in case an exception occurred...
if (pUnoExc)
{
// destruct temporary in/inout params
@@ -264,7 +264,7 @@ static typelib_TypeClass cpp2uno_call(
// is here for dummy
return typelib_TypeClass_VOID;
}
- else // else no exception occured...
+ else // else no exception occurred...
{
// temporary params
for ( ; nTempIndizes--; )
diff --git a/bridges/source/cpp_uno/gcc3_linux_ia64/uno2cpp.cxx b/bridges/source/cpp_uno/gcc3_linux_ia64/uno2cpp.cxx
index 311f282707b7..9bd2f59bebf4 100644
--- a/bridges/source/cpp_uno/gcc3_linux_ia64/uno2cpp.cxx
+++ b/bridges/source/cpp_uno/gcc3_linux_ia64/uno2cpp.cxx
@@ -500,7 +500,7 @@ static void cpp_call(
pStackStart, ( pStack - pStackStart ),
pGPR, nGPR,
pFPR, nFPR );
- // NO exception occured...
+ // NO exception occurred...
*ppUnoExc = 0;
// reconvert temporary params
diff --git a/bridges/source/cpp_uno/gcc3_linux_intel/cpp2uno.cxx b/bridges/source/cpp_uno/gcc3_linux_intel/cpp2uno.cxx
index 776bc8153959..5de57aa4760f 100644
--- a/bridges/source/cpp_uno/gcc3_linux_intel/cpp2uno.cxx
+++ b/bridges/source/cpp_uno/gcc3_linux_intel/cpp2uno.cxx
@@ -159,7 +159,7 @@ void cpp2uno_call(
(*pThis->getUnoI()->pDispatcher)(
pThis->getUnoI(), pMemberTypeDescr, pUnoReturn, pUnoArgs, &pUnoExc );
- // in case an exception occured...
+ // in case an exception occurred...
if (pUnoExc)
{
// destruct temporary in/inout params
@@ -178,7 +178,7 @@ void cpp2uno_call(
&aUnoExc, pThis->getBridge()->getUno2Cpp() );
// has to destruct the any
}
- else // else no exception occured...
+ else // else no exception occurred...
{
// temporary params
for ( ; nTempIndizes--; )
diff --git a/bridges/source/cpp_uno/gcc3_linux_intel/except.cxx b/bridges/source/cpp_uno/gcc3_linux_intel/except.cxx
index fecb4629f833..3e097b8660fc 100644
--- a/bridges/source/cpp_uno/gcc3_linux_intel/except.cxx
+++ b/bridges/source/cpp_uno/gcc3_linux_intel/except.cxx
@@ -223,7 +223,7 @@ void raiseException( uno_Any * pUnoExc, uno_Mapping * pUno2Cpp )
OUStringToOString(
*reinterpret_cast< OUString const * >( &pUnoExc->pType->pTypeName ),
RTL_TEXTENCODING_ASCII_US ) );
- fprintf( stderr, "> uno exception occured: %s\n", cstr.getStr() );
+ fprintf( stderr, "> uno exception occurred: %s\n", cstr.getStr() );
#endif
void * pCppExc;
type_info * rtti;
@@ -297,7 +297,7 @@ void fillUnoException( __cxa_exception * header, uno_Any * pUnoExc, uno_Mapping
OUString unoName( toUNOname( header->exceptionType->name() ) );
#if OSL_DEBUG_LEVEL > 1
OString cstr_unoName( OUStringToOString( unoName, RTL_TEXTENCODING_ASCII_US ) );
- fprintf( stderr, "> c++ exception occured: %s\n", cstr_unoName.getStr() );
+ fprintf( stderr, "> c++ exception occurred: %s\n", cstr_unoName.getStr() );
#endif
typelib_typedescription_getByName( &pExcTypeDescr, unoName.pData );
if (0 == pExcTypeDescr)
diff --git a/bridges/source/cpp_uno/gcc3_linux_intel/uno2cpp.cxx b/bridges/source/cpp_uno/gcc3_linux_intel/uno2cpp.cxx
index 0336c1717457..bcaec7acfc8d 100644
--- a/bridges/source/cpp_uno/gcc3_linux_intel/uno2cpp.cxx
+++ b/bridges/source/cpp_uno/gcc3_linux_intel/uno2cpp.cxx
@@ -266,7 +266,7 @@ static void cpp_call(
pAdjustedThisPtr, aVtableSlot.index,
pCppReturn, pReturnTypeDescr->eTypeClass,
(sal_Int32 *)pCppStackStart, (pCppStack - pCppStackStart) / sizeof(sal_Int32) );
- // NO exception occured...
+ // NO exception occurred...
*ppUnoExc = 0;
// reconvert temporary params
diff --git a/bridges/source/cpp_uno/gcc3_linux_m68k/cpp2uno.cxx b/bridges/source/cpp_uno/gcc3_linux_m68k/cpp2uno.cxx
index 073ea80053ab..7f6cfb309668 100644
--- a/bridges/source/cpp_uno/gcc3_linux_m68k/cpp2uno.cxx
+++ b/bridges/source/cpp_uno/gcc3_linux_m68k/cpp2uno.cxx
@@ -196,7 +196,7 @@ namespace
fprintf(stderr, "after dispatch\n");
#endif
- // in case an exception occured...
+ // in case an exception occurred...
if (pUnoExc)
{
// destruct temporary in/inout params
@@ -217,7 +217,7 @@ namespace
// is here for dummy
return typelib_TypeClass_VOID;
}
- else // else no exception occured...
+ else // else no exception occurred...
{
// temporary params
for ( ; nTempIndizes--; )
diff --git a/bridges/source/cpp_uno/gcc3_linux_m68k/except.cxx b/bridges/source/cpp_uno/gcc3_linux_m68k/except.cxx
index 63267f5e69f5..a289050e6921 100644
--- a/bridges/source/cpp_uno/gcc3_linux_m68k/except.cxx
+++ b/bridges/source/cpp_uno/gcc3_linux_m68k/except.cxx
@@ -223,7 +223,7 @@ namespace CPPU_CURRENT_NAMESPACE
OUStringToOString(
*reinterpret_cast< OUString const * >( &pUnoExc->pType->pTypeName ),
RTL_TEXTENCODING_ASCII_US ) );
- fprintf( stderr, "> uno exception occured: %s\n", cstr.getStr() );
+ fprintf( stderr, "> uno exception occurred: %s\n", cstr.getStr() );
#endif
void * pCppExc;
type_info * rtti;
@@ -303,7 +303,7 @@ namespace CPPU_CURRENT_NAMESPACE
OUString unoName( toUNOname( header->exceptionType->name() ) );
#if OSL_DEBUG_LEVEL > 1
OString cstr_unoName( OUStringToOString( unoName, RTL_TEXTENCODING_ASCII_US ) );
- fprintf( stderr, "> c++ exception occured: %s\n", cstr_unoName.getStr() );
+ fprintf( stderr, "> c++ exception occurred: %s\n", cstr_unoName.getStr() );
#endif
typelib_typedescription_getByName( &pExcTypeDescr, unoName.pData );
if (0 == pExcTypeDescr)
diff --git a/bridges/source/cpp_uno/gcc3_linux_m68k/uno2cpp.cxx b/bridges/source/cpp_uno/gcc3_linux_m68k/uno2cpp.cxx
index 841ff25dcd98..aca3814f6737 100644
--- a/bridges/source/cpp_uno/gcc3_linux_m68k/uno2cpp.cxx
+++ b/bridges/source/cpp_uno/gcc3_linux_m68k/uno2cpp.cxx
@@ -297,7 +297,7 @@ static void cpp_call(
pStackStart,
(pStack - pStackStart));
- // NO exception occured...
+ // NO exception occurred...
*ppUnoExc = 0;
// reconvert temporary params
diff --git a/bridges/source/cpp_uno/gcc3_linux_mips/cpp2uno.cxx b/bridges/source/cpp_uno/gcc3_linux_mips/cpp2uno.cxx
index 8ee1e053683d..08d3ef5f78b6 100644
--- a/bridges/source/cpp_uno/gcc3_linux_mips/cpp2uno.cxx
+++ b/bridges/source/cpp_uno/gcc3_linux_mips/cpp2uno.cxx
@@ -308,7 +308,7 @@ namespace
fprintf(stderr,"cpp2uno_call2,after dispatch\n");
#endif
- // in case an exception occured...
+ // in case an exception occurred...
if (pUnoExc)
{
// destruct temporary in/inout params
@@ -328,7 +328,7 @@ namespace
// is here for dummy
return typelib_TypeClass_VOID;
}
- else // else no exception occured...
+ else // else no exception occurred...
{
// temporary params
for ( ; nTempIndizes--; )
@@ -678,7 +678,7 @@ namespace
40: 00000000 nop
be careful, we use the argument space reserved by the caller to
- write down regs. This can avoid the need to make use of arbitary far away
+ write down regs. This can avoid the need to make use of arbitrary far away
stack space or to allocate a function frame for this code snippet itself.
Since only functions with variable arguments will overwrite the space,
cpp_vtable_call should be safe.
diff --git a/bridges/source/cpp_uno/gcc3_linux_mips/except.cxx b/bridges/source/cpp_uno/gcc3_linux_mips/except.cxx
index 948c4513eeca..edc98d7fe649 100644
--- a/bridges/source/cpp_uno/gcc3_linux_mips/except.cxx
+++ b/bridges/source/cpp_uno/gcc3_linux_mips/except.cxx
@@ -220,7 +220,7 @@ void raiseException( uno_Any * pUnoExc, uno_Mapping * pUno2Cpp )
OUStringToOString(
*reinterpret_cast< OUString const * >( &pUnoExc->pType->pTypeName ),
RTL_TEXTENCODING_ASCII_US ) );
- fprintf( stderr, "> uno exception occured: %s\n", cstr.getStr() );
+ fprintf( stderr, "> uno exception occurred: %s\n", cstr.getStr() );
#endif
void * pCppExc;
type_info * rtti;
@@ -294,7 +294,7 @@ void fillUnoException( __cxa_exception * header, uno_Any * pUnoExc, uno_Mapping
OUString unoName( toUNOname( header->exceptionType->name() ) );
#if defined BRIDGES_DEBUG
OString cstr_unoName( OUStringToOString( unoName, RTL_TEXTENCODING_ASCII_US ) );
- fprintf( stderr, "> c++ exception occured: %s\n", cstr_unoName.getStr() );
+ fprintf( stderr, "> c++ exception occurred: %s\n", cstr_unoName.getStr() );
#endif
typelib_typedescription_getByName( &pExcTypeDescr, unoName.pData );
if (0 == pExcTypeDescr)
diff --git a/bridges/source/cpp_uno/gcc3_linux_mips/uno2cpp.cxx b/bridges/source/cpp_uno/gcc3_linux_mips/uno2cpp.cxx
index bd6807547cbf..4b1fd5b4cefe 100644
--- a/bridges/source/cpp_uno/gcc3_linux_mips/uno2cpp.cxx
+++ b/bridges/source/cpp_uno/gcc3_linux_mips/uno2cpp.cxx
@@ -108,7 +108,7 @@ namespace
fprintf(stderr,"overflow area pointer p=%p\n",p);
/* Let's figure out what is really going on here*/
- fprintf(stderr,"callVirtualMethod paramters string is %s\n",pPT);
+ fprintf(stderr,"callVirtualMethod parameters string is %s\n",pPT);
int k = nStackLongs;
long * q = (long *)pStackLongs;
while (k > 0) {
@@ -401,7 +401,7 @@ namespace
pAdjustedThisPtr, aVtableSlot.index,
pCppReturn, pReturnTypeDescr->eTypeClass, pParamType,
(sal_Int32 *)pCppStackStart, (pCppStack - pCppStackStart) / sizeof(sal_Int32) );
- // NO exception occured...
+ // NO exception occurred...
*ppUnoExc = 0;
// reconvert temporary params
diff --git a/bridges/source/cpp_uno/gcc3_linux_powerpc/cpp2uno.cxx b/bridges/source/cpp_uno/gcc3_linux_powerpc/cpp2uno.cxx
index f4cb7ecb5937..7ec40d1467b3 100644
--- a/bridges/source/cpp_uno/gcc3_linux_powerpc/cpp2uno.cxx
+++ b/bridges/source/cpp_uno/gcc3_linux_powerpc/cpp2uno.cxx
@@ -292,7 +292,7 @@ static typelib_TypeClass cpp2uno_call(
// invoke uno dispatch call
(*pThis->getUnoI()->pDispatcher)( pThis->getUnoI(), pMemberTypeDescr, pUnoReturn, pUnoArgs, &pUnoExc );
- // in case an exception occured...
+ // in case an exception occurred...
if (pUnoExc)
{
// destruct temporary in/inout params
@@ -312,7 +312,7 @@ static typelib_TypeClass cpp2uno_call(
// is here for dummy
return typelib_TypeClass_VOID;
}
- else // else no exception occured...
+ else // else no exception occurred...
{
// temporary params
for ( ; nTempIndizes--; )
diff --git a/bridges/source/cpp_uno/gcc3_linux_powerpc/uno2cpp.cxx b/bridges/source/cpp_uno/gcc3_linux_powerpc/uno2cpp.cxx
index e63bf17e3b47..693d54cea4d6 100644
--- a/bridges/source/cpp_uno/gcc3_linux_powerpc/uno2cpp.cxx
+++ b/bridges/source/cpp_uno/gcc3_linux_powerpc/uno2cpp.cxx
@@ -125,7 +125,7 @@ static void callVirtualMethod(
#if 0
/* Let's figure out what is really going on here*/
- fprintf(stderr,"callVirtualMethod paramters string is %s\n",pPT);
+ fprintf(stderr,"callVirtualMethod parameters string is %s\n",pPT);
int k = nStackLongs;
long * q = (long *)pStackLongs;
while (k > 0) {
@@ -483,7 +483,7 @@ static void cpp_call(
pAdjustedThisPtr, aVtableSlot.index,
pCppReturn, pReturnTypeDescr->eTypeClass, pParamType,
(sal_Int32 *)pCppStackStart, (pCppStack - pCppStackStart) / sizeof(sal_Int32) );
- // NO exception occured...
+ // NO exception occurred...
*ppUnoExc = 0;
// reconvert temporary params
diff --git a/bridges/source/cpp_uno/gcc3_linux_powerpc64/cpp2uno.cxx b/bridges/source/cpp_uno/gcc3_linux_powerpc64/cpp2uno.cxx
index 59de0bd9c1fa..4e99d26b2edc 100644
--- a/bridges/source/cpp_uno/gcc3_linux_powerpc64/cpp2uno.cxx
+++ b/bridges/source/cpp_uno/gcc3_linux_powerpc64/cpp2uno.cxx
@@ -263,7 +263,7 @@ static typelib_TypeClass cpp2uno_call(
// invoke uno dispatch call
(*pThis->getUnoI()->pDispatcher)( pThis->getUnoI(), pMemberTypeDescr, pUnoReturn, pUnoArgs, &pUnoExc );
- // in case an exception occured...
+ // in case an exception occurred...
if (pUnoExc)
{
// destruct temporary in/inout params
@@ -283,7 +283,7 @@ static typelib_TypeClass cpp2uno_call(
// is here for dummy
return typelib_TypeClass_VOID;
}
- else // else no exception occured...
+ else // else no exception occurred...
{
// temporary params
for ( ; nTempIndizes--; )
diff --git a/bridges/source/cpp_uno/gcc3_linux_powerpc64/uno2cpp.cxx b/bridges/source/cpp_uno/gcc3_linux_powerpc64/uno2cpp.cxx
index 1ba2fa3e8d88..47fe7fd272d8 100644
--- a/bridges/source/cpp_uno/gcc3_linux_powerpc64/uno2cpp.cxx
+++ b/bridges/source/cpp_uno/gcc3_linux_powerpc64/uno2cpp.cxx
@@ -410,7 +410,7 @@ static void cpp_call(
pStackStart, ( pStack - pStackStart ),
pGPR, nGPR,
pFPR, nFPR );
- // NO exception occured...
+ // NO exception occurred...
*ppUnoExc = 0;
// reconvert temporary params
diff --git a/bridges/source/cpp_uno/gcc3_linux_s390/cpp2uno.cxx b/bridges/source/cpp_uno/gcc3_linux_s390/cpp2uno.cxx
index eef4a4576bd8..eb32fa41f064 100644
--- a/bridges/source/cpp_uno/gcc3_linux_s390/cpp2uno.cxx
+++ b/bridges/source/cpp_uno/gcc3_linux_s390/cpp2uno.cxx
@@ -251,7 +251,7 @@ static typelib_TypeClass cpp2uno_call(
// invoke uno dispatch call
(*pThis->getUnoI()->pDispatcher)( pThis->getUnoI(), pMemberTypeDescr, pUnoReturn, pUnoArgs, &pUnoExc );
- // in case an exception occured...
+ // in case an exception occurred...
if (pUnoExc)
{
// destruct temporary in/inout params
@@ -270,7 +270,7 @@ static typelib_TypeClass cpp2uno_call(
// is here for dummy
return typelib_TypeClass_VOID;
}
- else // else no exception occured...
+ else // else no exception occurred...
{
// temporary params
for ( ; nTempIndizes--; )
diff --git a/bridges/source/cpp_uno/gcc3_linux_s390/uno2cpp.cxx b/bridges/source/cpp_uno/gcc3_linux_s390/uno2cpp.cxx
index fcee3b5e8d09..20fba60acad6 100644
--- a/bridges/source/cpp_uno/gcc3_linux_s390/uno2cpp.cxx
+++ b/bridges/source/cpp_uno/gcc3_linux_s390/uno2cpp.cxx
@@ -439,7 +439,7 @@ static void cpp_call(
pAdjustedThisPtr, aVtableSlot.index,
pCppReturn, pReturnTypeDescr->eTypeClass, pParamType,
(sal_Int32 *)pCppStackStart, (pCppStack - pCppStackStart) / sizeof(sal_Int32) );
- // NO exception occured...
+ // NO exception occurred...
*ppUnoExc = 0;
// reconvert temporary params
diff --git a/bridges/source/cpp_uno/gcc3_linux_s390x/cpp2uno.cxx b/bridges/source/cpp_uno/gcc3_linux_s390x/cpp2uno.cxx
index e720984b9f46..cc53eba4b557 100644
--- a/bridges/source/cpp_uno/gcc3_linux_s390x/cpp2uno.cxx
+++ b/bridges/source/cpp_uno/gcc3_linux_s390x/cpp2uno.cxx
@@ -253,7 +253,7 @@ static typelib_TypeClass cpp2uno_call(
// invoke uno dispatch call
(*pThis->getUnoI()->pDispatcher)( pThis->getUnoI(), pMemberTypeDescr, pUnoReturn, pUnoArgs, &pUnoExc );
- // in case an exception occured...
+ // in case an exception occurred...
if (pUnoExc)
{
// destruct temporary in/inout params
@@ -272,7 +272,7 @@ static typelib_TypeClass cpp2uno_call(
// is here for dummy
return typelib_TypeClass_VOID;
}
- else // else no exception occured...
+ else // else no exception occurred...
{
// temporary params
for ( ; nTempIndizes--; )
diff --git a/bridges/source/cpp_uno/gcc3_linux_s390x/uno2cpp.cxx b/bridges/source/cpp_uno/gcc3_linux_s390x/uno2cpp.cxx
index 1e77f3d11daf..6ac65862b075 100644
--- a/bridges/source/cpp_uno/gcc3_linux_s390x/uno2cpp.cxx
+++ b/bridges/source/cpp_uno/gcc3_linux_s390x/uno2cpp.cxx
@@ -342,7 +342,7 @@ static void cpp_call(
pStackStart, (pStack - pStackStart),
pGPR, nGPR,
pFPR, nFPR );
- // NO exception occured...
+ // NO exception occurred...
*ppUnoExc = 0;
// reconvert temporary params
diff --git a/bridges/source/cpp_uno/gcc3_linux_sparc/cpp2uno.cxx b/bridges/source/cpp_uno/gcc3_linux_sparc/cpp2uno.cxx
index 8f52fd2ef679..ec579fa5f167 100644
--- a/bridges/source/cpp_uno/gcc3_linux_sparc/cpp2uno.cxx
+++ b/bridges/source/cpp_uno/gcc3_linux_sparc/cpp2uno.cxx
@@ -159,7 +159,7 @@ static typelib_TypeClass cpp2uno_call(
// invoke uno dispatch call
(*pThis->getUnoI()->pDispatcher)(pThis->getUnoI(), pMemberTypeDescr, pUnoReturn, pUnoArgs, &pUnoExc );
- // in case an exception occured...
+ // in case an exception occurred...
if (pUnoExc)
{
// destruct temporary in/inout params
@@ -178,7 +178,7 @@ static typelib_TypeClass cpp2uno_call(
// is here for dummy
return typelib_TypeClass_VOID;
}
- else // else no exception occured...
+ else // else no exception occurred...
{
// temporary params
for ( ; nTempIndizes--; )
diff --git a/bridges/source/cpp_uno/gcc3_linux_sparc/except.cxx b/bridges/source/cpp_uno/gcc3_linux_sparc/except.cxx
index 698233b4e4a4..e5a08a6677d0 100644
--- a/bridges/source/cpp_uno/gcc3_linux_sparc/except.cxx
+++ b/bridges/source/cpp_uno/gcc3_linux_sparc/except.cxx
@@ -223,7 +223,7 @@ void raiseException( uno_Any * pUnoExc, uno_Mapping * pUno2Cpp )
OUStringToOString(
*reinterpret_cast< OUString const * >( &pUnoExc->pType->pTypeName ),
RTL_TEXTENCODING_ASCII_US ) );
- fprintf( stderr, "> uno exception occured: %s\n", cstr.getStr() );
+ fprintf( stderr, "> uno exception occurred: %s\n", cstr.getStr() );
#endif
void * pCppExc;
type_info * rtti;
@@ -297,7 +297,7 @@ void fillUnoException( __cxa_exception * header, uno_Any * pUnoExc, uno_Mapping
OUString unoName( toUNOname( header->exceptionType->name() ) );
#if defined BRIDGES_DEBUG
OString cstr_unoName( OUStringToOString( unoName, RTL_TEXTENCODING_ASCII_US ) );
- fprintf( stderr, "> c++ exception occured: %s\n", cstr_unoName.getStr() );
+ fprintf( stderr, "> c++ exception occurred: %s\n", cstr_unoName.getStr() );
#endif
typelib_typedescription_getByName( &pExcTypeDescr, unoName.pData );
if (0 == pExcTypeDescr)
diff --git a/bridges/source/cpp_uno/gcc3_linux_sparc/uno2cpp.cxx b/bridges/source/cpp_uno/gcc3_linux_sparc/uno2cpp.cxx
index 0b44265c257f..0e546d9d72d7 100644
--- a/bridges/source/cpp_uno/gcc3_linux_sparc/uno2cpp.cxx
+++ b/bridges/source/cpp_uno/gcc3_linux_sparc/uno2cpp.cxx
@@ -408,7 +408,7 @@ static void cpp_call(
pReturnTypeDescr->eTypeClass,
(sal_Int32 *)pCppStackStart,
nStackLongs);
- // NO exception occured...
+ // NO exception occurred...
*ppUnoExc = 0;
// reconvert temporary params
diff --git a/bridges/source/cpp_uno/gcc3_linux_x86-64/cpp2uno.cxx b/bridges/source/cpp_uno/gcc3_linux_x86-64/cpp2uno.cxx
index f027a41e5bac..632529bd1c87 100644
--- a/bridges/source/cpp_uno/gcc3_linux_x86-64/cpp2uno.cxx
+++ b/bridges/source/cpp_uno/gcc3_linux_x86-64/cpp2uno.cxx
@@ -194,7 +194,7 @@ static typelib_TypeClass cpp2uno_call(
// invoke uno dispatch call
(*pThis->getUnoI()->pDispatcher)( pThis->getUnoI(), pMemberTypeDescr, pUnoReturn, pUnoArgs, &pUnoExc );
- // in case an exception occured...
+ // in case an exception occurred...
if ( pUnoExc )
{
// destruct temporary in/inout params
@@ -213,7 +213,7 @@ static typelib_TypeClass cpp2uno_call(
// is here for dummy
return typelib_TypeClass_VOID;
}
- else // else no exception occured...
+ else // else no exception occurred...
{
// temporary params
for ( ; nTempIndizes--; )
diff --git a/bridges/source/cpp_uno/gcc3_linux_x86-64/except.cxx b/bridges/source/cpp_uno/gcc3_linux_x86-64/except.cxx
index 8ea0be39fe2e..8148070c906a 100644
--- a/bridges/source/cpp_uno/gcc3_linux_x86-64/except.cxx
+++ b/bridges/source/cpp_uno/gcc3_linux_x86-64/except.cxx
@@ -225,7 +225,7 @@ void raiseException( uno_Any * pUnoExc, uno_Mapping * pUno2Cpp )
OUStringToOString(
*reinterpret_cast< OUString const * >( &pUnoExc->pType->pTypeName ),
RTL_TEXTENCODING_ASCII_US ) );
- fprintf( stderr, "> uno exception occured: %s\n", cstr.getStr() );
+ fprintf( stderr, "> uno exception occurred: %s\n", cstr.getStr() );
#endif
void * pCppExc;
type_info * rtti;
@@ -299,7 +299,7 @@ void fillUnoException( __cxa_exception * header, uno_Any * pUnoExc, uno_Mapping
OUString unoName( toUNOname( header->exceptionType->name() ) );
#if OSL_DEBUG_LEVEL > 1
OString cstr_unoName( OUStringToOString( unoName, RTL_TEXTENCODING_ASCII_US ) );
- fprintf( stderr, "> c++ exception occured: %s\n", cstr_unoName.getStr() );
+ fprintf( stderr, "> c++ exception occurred: %s\n", cstr_unoName.getStr() );
#endif
typelib_typedescription_getByName( &pExcTypeDescr, unoName.pData );
if (0 == pExcTypeDescr)
diff --git a/bridges/source/cpp_uno/gcc3_linux_x86-64/uno2cpp.cxx b/bridges/source/cpp_uno/gcc3_linux_x86-64/uno2cpp.cxx
index a9891192a29c..fa597a71ee99 100644
--- a/bridges/source/cpp_uno/gcc3_linux_x86-64/uno2cpp.cxx
+++ b/bridges/source/cpp_uno/gcc3_linux_x86-64/uno2cpp.cxx
@@ -408,7 +408,7 @@ static void cpp_call(
Reference< XInterface >());
}
- // NO exception occured...
+ // NO exception occurred...
*ppUnoExc = 0;
// reconvert temporary params
diff --git a/bridges/source/cpp_uno/gcc3_macosx_intel/cpp2uno.cxx b/bridges/source/cpp_uno/gcc3_macosx_intel/cpp2uno.cxx
index fb9e0effa441..3843718349cf 100644
--- a/bridges/source/cpp_uno/gcc3_macosx_intel/cpp2uno.cxx
+++ b/bridges/source/cpp_uno/gcc3_macosx_intel/cpp2uno.cxx
@@ -162,7 +162,7 @@ void cpp2uno_call(
(*pThis->getUnoI()->pDispatcher)(
pThis->getUnoI(), pMemberTypeDescr, pUnoReturn, pUnoArgs, &pUnoExc );
- // in case an exception occured...
+ // in case an exception occurred...
if (pUnoExc)
{
// destruct temporary in/inout params
@@ -181,7 +181,7 @@ void cpp2uno_call(
&aUnoExc, pThis->getBridge()->getUno2Cpp() );
// has to destruct the any
}
- else // else no exception occured...
+ else // else no exception occurred...
{
// temporary params
for ( ; nTempIndizes--; )
diff --git a/bridges/source/cpp_uno/gcc3_macosx_intel/except.cxx b/bridges/source/cpp_uno/gcc3_macosx_intel/except.cxx
index 53c654ad7f79..8c890a7a2cfb 100644
--- a/bridges/source/cpp_uno/gcc3_macosx_intel/except.cxx
+++ b/bridges/source/cpp_uno/gcc3_macosx_intel/except.cxx
@@ -224,7 +224,7 @@ void raiseException( uno_Any * pUnoExc, uno_Mapping * pUno2Cpp )
OUStringToOString(
*reinterpret_cast< OUString const * >( &pUnoExc->pType->pTypeName ),
RTL_TEXTENCODING_ASCII_US ) );
- fprintf( stderr, "> uno exception occured: %s\n", cstr.getStr() );
+ fprintf( stderr, "> uno exception occurred: %s\n", cstr.getStr() );
#endif
void * pCppExc;
type_info * rtti;
@@ -298,7 +298,7 @@ void fillUnoException( __cxa_exception * header, uno_Any * pUnoExc, uno_Mapping
OUString unoName( toUNOname( header->exceptionType->name() ) );
#if OSL_DEBUG_LEVEL > 1
OString cstr_unoName( OUStringToOString( unoName, RTL_TEXTENCODING_ASCII_US ) );
- fprintf( stderr, "> c++ exception occured: %s\n", cstr_unoName.getStr() );
+ fprintf( stderr, "> c++ exception occurred: %s\n", cstr_unoName.getStr() );
#endif
typelib_typedescription_getByName( &pExcTypeDescr, unoName.pData );
if (0 == pExcTypeDescr)
diff --git a/bridges/source/cpp_uno/gcc3_macosx_intel/uno2cpp.cxx b/bridges/source/cpp_uno/gcc3_macosx_intel/uno2cpp.cxx
index 2f6179b58cce..562e621e51bc 100644
--- a/bridges/source/cpp_uno/gcc3_macosx_intel/uno2cpp.cxx
+++ b/bridges/source/cpp_uno/gcc3_macosx_intel/uno2cpp.cxx
@@ -283,7 +283,7 @@ static void cpp_call(
pAdjustedThisPtr, aVtableSlot.index,
pCppReturn, pReturnTypeDescr, bSimpleReturn,
(sal_Int32 *)pCppStackStart, (pCppStack - pCppStackStart) / sizeof(sal_Int32) );
- // NO exception occured...
+ // NO exception occurred...
*ppUnoExc = 0;
// reconvert temporary params
diff --git a/bridges/source/cpp_uno/gcc3_macosx_powerpc/cpp2uno.cxx b/bridges/source/cpp_uno/gcc3_macosx_powerpc/cpp2uno.cxx
index 4457c7412b14..4b91d0fdb1a3 100644
--- a/bridges/source/cpp_uno/gcc3_macosx_powerpc/cpp2uno.cxx
+++ b/bridges/source/cpp_uno/gcc3_macosx_powerpc/cpp2uno.cxx
@@ -142,7 +142,7 @@ static typelib_TypeClass cpp2uno_call(
}
}
- // now the stack has all of the paramters stored in it ready to be processed
+ // now the stack has all of the parameters stored in it ready to be processed
// so we are ready to build the uno call stack
pCppStack = (char *)ovrflw;
@@ -238,7 +238,7 @@ static typelib_TypeClass cpp2uno_call(
(*pThis->getUnoI()->pDispatcher)(
pThis->getUnoI(), pMemberTypeDescr, pUnoReturn, pUnoArgs, &pUnoExc );
- // in case an exception occured...
+ // in case an exception occurred...
if (pUnoExc)
{
// destruct temporary in/inout params
@@ -259,7 +259,7 @@ static typelib_TypeClass cpp2uno_call(
// is here for dummy
return typelib_TypeClass_VOID;
}
- else // else no exception occured...
+ else // else no exception occurred...
{
// temporary params
for ( ; nTempIndizes--; )
diff --git a/bridges/source/cpp_uno/gcc3_macosx_powerpc/uno2cpp.cxx b/bridges/source/cpp_uno/gcc3_macosx_powerpc/uno2cpp.cxx
index c1c7e6ff8d4a..0d1a26de94fb 100644
--- a/bridges/source/cpp_uno/gcc3_macosx_powerpc/uno2cpp.cxx
+++ b/bridges/source/cpp_uno/gcc3_macosx_powerpc/uno2cpp.cxx
@@ -445,7 +445,7 @@ static void cpp_call(
pAdjustedThisPtr, aVtableSlot.index,
pCppReturn, pReturnTypeDescr->eTypeClass, pParamType,
(sal_Int32 *)pCppStackStart, (pCppStack - pCppStackStart) / sizeof(sal_Int32) );
- // NO exception occured...
+ // NO exception occurred...
*ppUnoExc = 0;
// reconvert temporary params
diff --git a/bridges/source/cpp_uno/gcc3_netbsd_intel/cpp2uno.cxx b/bridges/source/cpp_uno/gcc3_netbsd_intel/cpp2uno.cxx
index cadc775ddbbf..8811012fa0e3 100644
--- a/bridges/source/cpp_uno/gcc3_netbsd_intel/cpp2uno.cxx
+++ b/bridges/source/cpp_uno/gcc3_netbsd_intel/cpp2uno.cxx
@@ -159,7 +159,7 @@ static typelib_TypeClass cpp2uno_call(
// invoke uno dispatch call
(*pThis->pUnoI->pDispatcher)( pThis->pUnoI, pMemberTypeDescr, pUnoReturn, pUnoArgs, &pUnoExc );
- // in case an exception occured...
+ // in case an exception occurred...
if (pUnoExc)
{
// destruct temporary in/inout params
@@ -178,7 +178,7 @@ static typelib_TypeClass cpp2uno_call(
// is here for dummy
return typelib_TypeClass_VOID;
}
- else // else no exception occured...
+ else // else no exception occurred...
{
// temporary params
for ( ; nTempIndizes--; )
diff --git a/bridges/source/cpp_uno/gcc3_netbsd_intel/except.cxx b/bridges/source/cpp_uno/gcc3_netbsd_intel/except.cxx
index a60cdd000490..4b084800822f 100644
--- a/bridges/source/cpp_uno/gcc3_netbsd_intel/except.cxx
+++ b/bridges/source/cpp_uno/gcc3_netbsd_intel/except.cxx
@@ -226,7 +226,7 @@ void raiseException( uno_Any * pUnoExc, uno_Mapping * pUno2Cpp )
OUStringToOString(
*reinterpret_cast< OUString const * >( &pUnoExc->pType->pTypeName ),
RTL_TEXTENCODING_ASCII_US ) );
- fprintf( stderr, "> uno exception occured: %s\n", cstr.getStr() );
+ fprintf( stderr, "> uno exception occurred: %s\n", cstr.getStr() );
#endif
void * pCppExc;
type_info * rtti;
@@ -300,7 +300,7 @@ void fillUnoException( __cxa_exception * header, uno_Any * pUnoExc, uno_Mapping
OUString unoName( toUNOname( header->exceptionType->name() ) );
#if defined DEBUG
OString cstr_unoName( OUStringToOString( unoName, RTL_TEXTENCODING_ASCII_US ) );
- fprintf( stderr, "> c++ exception occured: %s\n", cstr_unoName.getStr() );
+ fprintf( stderr, "> c++ exception occurred: %s\n", cstr_unoName.getStr() );
#endif
typelib_typedescription_getByName( &pExcTypeDescr, unoName.pData );
if (0 == pExcTypeDescr)
diff --git a/bridges/source/cpp_uno/gcc3_netbsd_intel/uno2cpp.cxx b/bridges/source/cpp_uno/gcc3_netbsd_intel/uno2cpp.cxx
index e812ffe95ff4..7a45e9176424 100644
--- a/bridges/source/cpp_uno/gcc3_netbsd_intel/uno2cpp.cxx
+++ b/bridges/source/cpp_uno/gcc3_netbsd_intel/uno2cpp.cxx
@@ -246,7 +246,7 @@ static void cpp_call(
pThis->pCppI, nVtableCall,
pCppReturn, pReturnTypeDescr->eTypeClass,
(sal_Int32 *)pCppStackStart, (pCppStack - pCppStackStart) / sizeof(sal_Int32) );
- // NO exception occured...
+ // NO exception occurred...
*ppUnoExc = 0;
// reconvert temporary params
diff --git a/bridges/source/cpp_uno/gcc3_os2_intel/cpp2uno.cxx b/bridges/source/cpp_uno/gcc3_os2_intel/cpp2uno.cxx
index 1b7e645fda39..1f33b15d64b1 100644
--- a/bridges/source/cpp_uno/gcc3_os2_intel/cpp2uno.cxx
+++ b/bridges/source/cpp_uno/gcc3_os2_intel/cpp2uno.cxx
@@ -160,7 +160,7 @@ static typelib_TypeClass cpp2uno_call(
fprintf( stderr, ">cpp2uno_call pUnoExc %x\n", pUnoExc);
#endif
- // in case an exception occured...
+ // in case an exception occurred...
if (pUnoExc)
{
// destruct temporary in/inout params
@@ -181,7 +181,7 @@ static typelib_TypeClass cpp2uno_call(
// is here for dummy
return typelib_TypeClass_VOID;
}
- else // else no exception occured...
+ else // else no exception occurred...
{
// temporary params
for ( ; nTempIndizes--; )
diff --git a/bridges/source/cpp_uno/gcc3_os2_intel/except.cxx b/bridges/source/cpp_uno/gcc3_os2_intel/except.cxx
index 5bc6d6e0b72f..4bd4a61832a1 100644
--- a/bridges/source/cpp_uno/gcc3_os2_intel/except.cxx
+++ b/bridges/source/cpp_uno/gcc3_os2_intel/except.cxx
@@ -233,7 +233,7 @@ void raiseException( uno_Any * pUnoExc, uno_Mapping * pUno2Cpp )
OUStringToOString(
*reinterpret_cast< OUString const * >( &pUnoExc->pType->pTypeName ),
RTL_TEXTENCODING_ASCII_US ) );
- fprintf( stderr, "> uno exception occured: %s\n", cstr.getStr() );
+ fprintf( stderr, "> uno exception occurred: %s\n", cstr.getStr() );
#endif
void * pCppExc;
type_info * rtti;
@@ -307,7 +307,7 @@ void fillUnoException( __cxa_exception * header, uno_Any * pUnoExc, uno_Mapping
OUString unoName( toUNOname( header->exceptionType->name() ) );
#if OSL_DEBUG_LEVEL > 1
OString cstr_unoName( OUStringToOString( unoName, RTL_TEXTENCODING_ASCII_US ) );
- fprintf( stderr, "> c++ exception occured: %s\n", cstr_unoName.getStr() );
+ fprintf( stderr, "> c++ exception occurred: %s\n", cstr_unoName.getStr() );
#endif
typelib_typedescription_getByName( &pExcTypeDescr, unoName.pData );
if (0 == pExcTypeDescr)
diff --git a/bridges/source/cpp_uno/gcc3_os2_intel/uno2cpp.cxx b/bridges/source/cpp_uno/gcc3_os2_intel/uno2cpp.cxx
index 33d5f22334d9..e70beec1b1c3 100644
--- a/bridges/source/cpp_uno/gcc3_os2_intel/uno2cpp.cxx
+++ b/bridges/source/cpp_uno/gcc3_os2_intel/uno2cpp.cxx
@@ -265,7 +265,7 @@ static void cpp_call(
pAdjustedThisPtr, aVtableSlot.index,
pCppReturn, pReturnTypeDescr->eTypeClass,
(sal_Int32 *)pCppStackStart, (pCppStack - pCppStackStart) / sizeof(sal_Int32) );
- // NO exception occured...
+ // NO exception occurred...
*ppUnoExc = 0;
// reconvert temporary params
diff --git a/bridges/source/cpp_uno/gcc3_solaris_intel/cpp2uno.cxx b/bridges/source/cpp_uno/gcc3_solaris_intel/cpp2uno.cxx
index 759cbf3e2727..ca44f6bb0271 100644
--- a/bridges/source/cpp_uno/gcc3_solaris_intel/cpp2uno.cxx
+++ b/bridges/source/cpp_uno/gcc3_solaris_intel/cpp2uno.cxx
@@ -158,7 +158,7 @@ static typelib_TypeClass cpp2uno_call(
(*pThis->getUnoI()->pDispatcher)(
pThis->getUnoI(), pMemberTypeDescr, pUnoReturn, pUnoArgs, &pUnoExc );
- // in case an exception occured...
+ // in case an exception occurred...
if (pUnoExc)
{
// destruct temporary in/inout params
@@ -179,7 +179,7 @@ static typelib_TypeClass cpp2uno_call(
// is here for dummy
return typelib_TypeClass_VOID;
}
- else // else no exception occured...
+ else // else no exception occurred...
{
// temporary params
for ( ; nTempIndizes--; )
diff --git a/bridges/source/cpp_uno/gcc3_solaris_intel/except.cxx b/bridges/source/cpp_uno/gcc3_solaris_intel/except.cxx
index 8242bbfb7d6b..fc5704381ff5 100644
--- a/bridges/source/cpp_uno/gcc3_solaris_intel/except.cxx
+++ b/bridges/source/cpp_uno/gcc3_solaris_intel/except.cxx
@@ -224,7 +224,7 @@ void raiseException( uno_Any * pUnoExc, uno_Mapping * pUno2Cpp )
OUStringToOString(
*reinterpret_cast< OUString const * >( &pUnoExc->pType->pTypeName ),
RTL_TEXTENCODING_ASCII_US ) );
- fprintf( stderr, "> uno exception occured: %s\n", cstr.getStr() );
+ fprintf( stderr, "> uno exception occurred: %s\n", cstr.getStr() );
#endif
void * pCppExc;
type_info * rtti;
@@ -298,7 +298,7 @@ void fillUnoException( __cxa_exception * header, uno_Any * pUnoExc, uno_Mapping
OUString unoName( toUNOname( header->exceptionType->name() ) );
#if OSL_DEBUG_LEVEL > 1
OString cstr_unoName( OUStringToOString( unoName, RTL_TEXTENCODING_ASCII_US ) );
- fprintf( stderr, "> c++ exception occured: %s\n", cstr_unoName.getStr() );
+ fprintf( stderr, "> c++ exception occurred: %s\n", cstr_unoName.getStr() );
#endif
typelib_typedescription_getByName( &pExcTypeDescr, unoName.pData );
if (0 == pExcTypeDescr)
diff --git a/bridges/source/cpp_uno/gcc3_solaris_intel/uno2cpp.cxx b/bridges/source/cpp_uno/gcc3_solaris_intel/uno2cpp.cxx
index 9c7995933793..8c7ab0b35ab6 100644
--- a/bridges/source/cpp_uno/gcc3_solaris_intel/uno2cpp.cxx
+++ b/bridges/source/cpp_uno/gcc3_solaris_intel/uno2cpp.cxx
@@ -256,7 +256,7 @@ static void cpp_call(
pAdjustedThisPtr, aVtableSlot.index,
pCppReturn, pReturnTypeDescr->eTypeClass,
(sal_Int32 *)pCppStackStart, (pCppStack - pCppStackStart) / sizeof(sal_Int32) );
- // NO exception occured...
+ // NO exception occurred...
*ppUnoExc = 0;
// reconvert temporary params
diff --git a/bridges/source/cpp_uno/gcc3_solaris_sparc/cpp2uno.cxx b/bridges/source/cpp_uno/gcc3_solaris_sparc/cpp2uno.cxx
index 63b6c2000249..20d86ca3aeed 100644
--- a/bridges/source/cpp_uno/gcc3_solaris_sparc/cpp2uno.cxx
+++ b/bridges/source/cpp_uno/gcc3_solaris_sparc/cpp2uno.cxx
@@ -158,7 +158,7 @@ static typelib_TypeClass cpp2uno_call(
// invoke uno dispatch call
(*pThis->getUnoI()->pDispatcher)(pThis->getUnoI(), pMemberTypeDescr, pUnoReturn, pUnoArgs, &pUnoExc );
- // in case an exception occured...
+ // in case an exception occurred...
if (pUnoExc)
{
// destruct temporary in/inout params
@@ -177,7 +177,7 @@ static typelib_TypeClass cpp2uno_call(
// is here for dummy
return typelib_TypeClass_VOID;
}
- else // else no exception occured...
+ else // else no exception occurred...
{
// temporary params
for ( ; nTempIndizes--; )
diff --git a/bridges/source/cpp_uno/gcc3_solaris_sparc/except.cxx b/bridges/source/cpp_uno/gcc3_solaris_sparc/except.cxx
index 51a28735d651..35459702c575 100644
--- a/bridges/source/cpp_uno/gcc3_solaris_sparc/except.cxx
+++ b/bridges/source/cpp_uno/gcc3_solaris_sparc/except.cxx
@@ -222,7 +222,7 @@ void raiseException( uno_Any * pUnoExc, uno_Mapping * pUno2Cpp )
OUStringToOString(
*reinterpret_cast< OUString const * >( &pUnoExc->pType->pTypeName ),
RTL_TEXTENCODING_ASCII_US ) );
- fprintf( stderr, "> uno exception occured: %s\n", cstr.getStr() );
+ fprintf( stderr, "> uno exception occurred: %s\n", cstr.getStr() );
#endif
void * pCppExc;
type_info * rtti;
@@ -296,7 +296,7 @@ void fillUnoException( __cxa_exception * header, uno_Any * pUnoExc, uno_Mapping
OUString unoName( toUNOname( header->exceptionType->name() ) );
#if defined BRIDGES_DEBUG
OString cstr_unoName( OUStringToOString( unoName, RTL_TEXTENCODING_ASCII_US ) );
- fprintf( stderr, "> c++ exception occured: %s\n", cstr_unoName.getStr() );
+ fprintf( stderr, "> c++ exception occurred: %s\n", cstr_unoName.getStr() );
#endif
typelib_typedescription_getByName( &pExcTypeDescr, unoName.pData );
if (0 == pExcTypeDescr)
diff --git a/bridges/source/cpp_uno/gcc3_solaris_sparc/uno2cpp.cxx b/bridges/source/cpp_uno/gcc3_solaris_sparc/uno2cpp.cxx
index 326f5ca68b88..91f0714cdf29 100644
--- a/bridges/source/cpp_uno/gcc3_solaris_sparc/uno2cpp.cxx
+++ b/bridges/source/cpp_uno/gcc3_solaris_sparc/uno2cpp.cxx
@@ -403,7 +403,7 @@ static void cpp_call(
pReturnTypeDescr->eTypeClass,
(sal_Int32 *)pCppStackStart,
nStackLongs);
- // NO exception occured...
+ // NO exception occurred...
*ppUnoExc = 0;
// reconvert temporary params
diff --git a/bridges/source/cpp_uno/mingw_intel/cpp2uno.cxx b/bridges/source/cpp_uno/mingw_intel/cpp2uno.cxx
index 4797817868bf..641d04b7667a 100644
--- a/bridges/source/cpp_uno/mingw_intel/cpp2uno.cxx
+++ b/bridges/source/cpp_uno/mingw_intel/cpp2uno.cxx
@@ -166,7 +166,7 @@ void cpp2uno_call(
(*pThis->getUnoI()->pDispatcher)(
pThis->getUnoI(), pMemberTypeDescr, pUnoReturn, pUnoArgs, &pUnoExc );
- // in case an exception occured...
+ // in case an exception occurred...
if (pUnoExc)
{
// destruct temporary in/inout params
@@ -185,7 +185,7 @@ void cpp2uno_call(
&aUnoExc, pThis->getBridge()->getUno2Cpp() );
// has to destruct the any
}
- else // else no exception occured...
+ else // else no exception occurred...
{
// temporary params
for ( ; nTempIndizes--; )
diff --git a/bridges/source/cpp_uno/mingw_intel/except.cxx b/bridges/source/cpp_uno/mingw_intel/except.cxx
index 6f2365d8d1d1..30b6951eedde 100644
--- a/bridges/source/cpp_uno/mingw_intel/except.cxx
+++ b/bridges/source/cpp_uno/mingw_intel/except.cxx
@@ -209,7 +209,7 @@ void raiseException( uno_Any * pUnoExc, uno_Mapping * pUno2Cpp )
OUStringToOString(
*reinterpret_cast< OUString const * >( &pUnoExc->pType->pTypeName ),
RTL_TEXTENCODING_ASCII_US ) );
- fprintf( stderr, "> uno exception occured: %s\n", cstr.getStr() );
+ fprintf( stderr, "> uno exception occurred: %s\n", cstr.getStr() );
#endif
void * pCppExc;
type_info * rtti;
@@ -283,7 +283,7 @@ void fillUnoException( __cxa_exception * header, uno_Any * pUnoExc, uno_Mapping
OUString unoName( toUNOname( header->exceptionType->name() ) );
#if OSL_DEBUG_LEVEL > 1
OString cstr_unoName( OUStringToOString( unoName, RTL_TEXTENCODING_ASCII_US ) );
- fprintf( stderr, "> c++ exception occured: %s\n", cstr_unoName.getStr() );
+ fprintf( stderr, "> c++ exception occurred: %s\n", cstr_unoName.getStr() );
#endif
typelib_typedescription_getByName( &pExcTypeDescr, unoName.pData );
if (0 == pExcTypeDescr)
diff --git a/bridges/source/cpp_uno/mingw_intel/uno2cpp.cxx b/bridges/source/cpp_uno/mingw_intel/uno2cpp.cxx
index 03d6886a788d..27e656705735 100644
--- a/bridges/source/cpp_uno/mingw_intel/uno2cpp.cxx
+++ b/bridges/source/cpp_uno/mingw_intel/uno2cpp.cxx
@@ -300,7 +300,7 @@ static void cpp_call(
pAdjustedThisPtr, aVtableSlot.index,
pCppReturn, pReturnTypeDescr,
(sal_Int32 *)pCppStackStart, (pCppStack - pCppStackStart) / sizeof(sal_Int32) );
- // NO exception occured...
+ // NO exception occurred...
*ppUnoExc = 0;
// reconvert temporary params
diff --git a/bridges/source/cpp_uno/msvc_win32_intel/cpp2uno.cxx b/bridges/source/cpp_uno/msvc_win32_intel/cpp2uno.cxx
index 915ff6274642..81cf2bd3ff9a 100644
--- a/bridges/source/cpp_uno/msvc_win32_intel/cpp2uno.cxx
+++ b/bridges/source/cpp_uno/msvc_win32_intel/cpp2uno.cxx
@@ -161,7 +161,7 @@ static inline typelib_TypeClass cpp2uno_call(
(*pThis->getUnoI()->pDispatcher)(
pThis->getUnoI(), pMemberTypeDescr, pUnoReturn, pUnoArgs, &pUnoExc );
- // in case an exception occured...
+ // in case an exception occurred...
if (pUnoExc)
{
// destruct temporary in/inout params
@@ -186,7 +186,7 @@ static inline typelib_TypeClass cpp2uno_call(
// is here for dummy
return typelib_TypeClass_VOID;
}
- else // else no exception occured...
+ else // else no exception occurred...
{
// temporary params
while (nTempIndizes--)
diff --git a/bridges/source/cpp_uno/msvc_win32_intel/except.cxx b/bridges/source/cpp_uno/msvc_win32_intel/except.cxx
index 494e8b1514fd..68355c31c790 100644
--- a/bridges/source/cpp_uno/msvc_win32_intel/except.cxx
+++ b/bridges/source/cpp_uno/msvc_win32_intel/except.cxx
@@ -614,7 +614,7 @@ int msci_filterCppException(
RuntimeException exc(
OUString( RTL_CONSTASCII_USTRINGPARAM(
"[msci_uno bridge error] unexpected "
- "C++ exception occured!") ),
+ "C++ exception occurred!") ),
Reference< XInterface >() );
uno_type_any_constructAndConvert(
pUnoExc, &exc, ::getCppuType( &exc ).getTypeLibType(), pCpp2Uno );
diff --git a/bridges/source/cpp_uno/msvc_win32_intel/uno2cpp.cxx b/bridges/source/cpp_uno/msvc_win32_intel/uno2cpp.cxx
index 790e8cc43a84..a1463054ec76 100644
--- a/bridges/source/cpp_uno/msvc_win32_intel/uno2cpp.cxx
+++ b/bridges/source/cpp_uno/msvc_win32_intel/uno2cpp.cxx
@@ -286,7 +286,7 @@ static void cpp_call(
return;
}
- // NO exception occured
+ // NO exception occurred
*ppUnoExc = 0;
// reconvert temporary params
diff --git a/bridges/source/cpp_uno/s5abi_macosx_x86-64/cpp2uno.cxx b/bridges/source/cpp_uno/s5abi_macosx_x86-64/cpp2uno.cxx
index e649dd32e51b..b08cd6c47425 100644
--- a/bridges/source/cpp_uno/s5abi_macosx_x86-64/cpp2uno.cxx
+++ b/bridges/source/cpp_uno/s5abi_macosx_x86-64/cpp2uno.cxx
@@ -194,7 +194,7 @@ static typelib_TypeClass cpp2uno_call(
// invoke uno dispatch call
(*pThis->getUnoI()->pDispatcher)( pThis->getUnoI(), pMemberTypeDescr, pUnoReturn, pUnoArgs, &pUnoExc );
- // in case an exception occured...
+ // in case an exception occurred...
if ( pUnoExc )
{
// destruct temporary in/inout params
@@ -213,7 +213,7 @@ static typelib_TypeClass cpp2uno_call(
// is here for dummy
return typelib_TypeClass_VOID;
}
- else // else no exception occured...
+ else // else no exception occurred...
{
// temporary params
for ( ; nTempIndizes--; )
diff --git a/bridges/source/cpp_uno/s5abi_macosx_x86-64/except.cxx b/bridges/source/cpp_uno/s5abi_macosx_x86-64/except.cxx
index 96a65fc0fdb6..53abcf355140 100644
--- a/bridges/source/cpp_uno/s5abi_macosx_x86-64/except.cxx
+++ b/bridges/source/cpp_uno/s5abi_macosx_x86-64/except.cxx
@@ -174,9 +174,15 @@ type_info * RTTI::getRTTI( typelib_CompoundTypeDescription *pTypeDescr ) SAL_THR
// symbol and rtti-name is nearly identical,
// the symbol is prefixed with _ZTI
char const * rttiName = symName.getStr() +4;
-#if OSL_DEBUG_LEVEL > 1
+#if OSL_DEBUG_LEVEL >= 1
fprintf( stderr,"generated rtti for %s\n", rttiName );
+ const OString aCUnoName = OUStringToOString( unoName, RTL_TEXTENCODING_UTF8);
+ OSL_TRACE( "TypeInfo for \"%s\" not found and cannot be generated.\n", aCUnoName.getStr());
#endif
+#if 0 // TODO: enable it again when the generated class_type_infos always work.
+ // Forcing the toolchain to create authentic typeinfos is much better though
+ // than the sick concept of reverse-engineering the platform's toolchain
+ // and generating the missing type_infos.
if (pTypeDescr->pBaseTypeDescription)
{
// ensure availability of base
@@ -190,10 +196,12 @@ type_info * RTTI::getRTTI( typelib_CompoundTypeDescription *pTypeDescr ) SAL_THR
// this class has no base class
rtti = new __class_type_info( strdup( rttiName ) );
}
+#else
+ rtti = NULL;
+#endif
- pair< t_rtti_map::iterator, bool > insertion(
- m_generatedRttis.insert( t_rtti_map::value_type( unoName, rtti ) ) );
- OSL_ENSURE( insertion.second, "### inserting new generated rtti failed?!" );
+ bool bOK = m_generatedRttis.insert( t_rtti_map::value_type( unoName, rtti )).second;
+ OSL_ENSURE( bOK, "### inserting new generated rtti failed?!" );
}
else // taking already generated rtti
{
@@ -213,6 +221,8 @@ type_info * RTTI::getRTTI( typelib_CompoundTypeDescription *pTypeDescr ) SAL_THR
static void deleteException( void * pExc )
{
__cxa_exception const * header = ((__cxa_exception const *)pExc - 1);
+ if( !header->exceptionType) // TODO: remove this when getRTTI() always returns non-NULL
+ return; // NOTE: leak for now
typelib_TypeDescription * pTD = 0;
OUString unoName( toUNOname( header->exceptionType->name() ) );
::typelib_typedescription_getByName( &pTD, unoName.pData );
@@ -232,7 +242,7 @@ void raiseException( uno_Any * pUnoExc, uno_Mapping * pUno2Cpp )
OUStringToOString(
*reinterpret_cast< OUString const * >( &pUnoExc->pType->pTypeName ),
RTL_TEXTENCODING_ASCII_US ) );
- fprintf( stderr, "> uno exception occured: %s\n", cstr.getStr() );
+ fprintf( stderr, "> uno exception occurred: %s\n", cstr.getStr() );
#endif
void * pCppExc;
type_info * rtti;
@@ -306,7 +316,7 @@ void fillUnoException( __cxa_exception * header, uno_Any * pUnoExc, uno_Mapping
OUString unoName( toUNOname( header->exceptionType->name() ) );
#if OSL_DEBUG_LEVEL > 1
OString cstr_unoName( OUStringToOString( unoName, RTL_TEXTENCODING_ASCII_US ) );
- fprintf( stderr, "> c++ exception occured: %s\n", cstr_unoName.getStr() );
+ fprintf( stderr, "> c++ exception occurred: %s\n", cstr_unoName.getStr() );
#endif
typelib_typedescription_getByName( &pExcTypeDescr, unoName.pData );
if (0 == pExcTypeDescr)
diff --git a/bridges/source/cpp_uno/s5abi_macosx_x86-64/share.hxx b/bridges/source/cpp_uno/s5abi_macosx_x86-64/share.hxx
index 279b275b271c..5b29f135c04c 100644
--- a/bridges/source/cpp_uno/s5abi_macosx_x86-64/share.hxx
+++ b/bridges/source/cpp_uno/s5abi_macosx_x86-64/share.hxx
@@ -85,6 +85,8 @@ extern "C" __cxa_eh_globals *__cxa_get_globals () throw();
// -----
+#if 0 // #i124421# disabled because its use in except.cxx is disabled
+
// on OSX 64bit the class_type_info classes are specified
// in http://refspecs.linuxbase.org/cxxabi-1.86.html#rtti but
// these details are not generally available in a public header
@@ -106,6 +108,8 @@ public:
{}
};
+#endif
+
//==================================================================================================
void raiseException(
uno_Any * pUnoExc, uno_Mapping * pUno2Cpp );
diff --git a/bridges/source/cpp_uno/s5abi_macosx_x86-64/uno2cpp.cxx b/bridges/source/cpp_uno/s5abi_macosx_x86-64/uno2cpp.cxx
index e40ad9fbb32d..6afd0ae4488e 100644
--- a/bridges/source/cpp_uno/s5abi_macosx_x86-64/uno2cpp.cxx
+++ b/bridges/source/cpp_uno/s5abi_macosx_x86-64/uno2cpp.cxx
@@ -409,7 +409,7 @@ static void cpp_call(
Reference< XInterface >());
}
- // NO exception occured...
+ // NO exception occurred...
*ppUnoExc = 0;
// reconvert temporary params
diff --git a/bridges/source/cpp_uno/shared/component.cxx b/bridges/source/cpp_uno/shared/component.cxx
index 6ec7cb7404f4..433c7860ea38 100644
--- a/bridges/source/cpp_uno/shared/component.cxx
+++ b/bridges/source/cpp_uno/shared/component.cxx
@@ -144,7 +144,7 @@ static void s_stub_computeObjectIdentifier(va_list * pParam)
catch (::com::sun::star::uno::RuntimeException &)
{
OSL_ENSURE(
- 0, "### RuntimeException occured udring queryInterface()!" );
+ 0, "### RuntimeException occurred udring queryInterface()!" );
}
}
}
diff --git a/bridges/source/jni_uno/jni_base.h b/bridges/source/jni_uno/jni_base.h
index f6a7b5e2b588..23334100021a 100644
--- a/bridges/source/jni_uno/jni_base.h
+++ b/bridges/source/jni_uno/jni_base.h
@@ -122,7 +122,7 @@ inline bool JNI_context::assert_no_exception() const
if (JNI_FALSE != m_env->ExceptionCheck())
{
m_env->ExceptionClear();
- OSL_ENSURE( 0, "unexpected java exception occured!" );
+ OSL_ENSURE( 0, "unexpected java exception occurred!" );
return false;
}
return true;
diff --git a/bridges/source/jni_uno/jni_bridge.cxx b/bridges/source/jni_uno/jni_bridge.cxx
index 8c3322590fba..b9204aa65f2b 100644
--- a/bridges/source/jni_uno/jni_bridge.cxx
+++ b/bridges/source/jni_uno/jni_bridge.cxx
@@ -297,7 +297,7 @@ void JNI_context::java_exc_occured() const
if (! jo_exc.is())
{
throw BridgeRuntimeError(
- OUSTR("java exception occured, but not available!?") +
+ OUSTR("java exception occurred, but not available!?") +
get_stack_trace() );
}
diff --git a/bridges/source/jni_uno/jni_java2uno.cxx b/bridges/source/jni_uno/jni_java2uno.cxx
index 77783cbda5ee..46ffd20e5c4d 100644
--- a/bridges/source/jni_uno/jni_java2uno.cxx
+++ b/bridges/source/jni_uno/jni_java2uno.cxx
@@ -105,7 +105,7 @@ void Bridge::handle_uno_exc( JNI_context const & jni, uno_Any * uno_exc ) const
{
OUStringBuffer buf( 128 );
buf.appendAscii(
- RTL_CONSTASCII_STRINGPARAM("exception occured java->uno: [") );
+ RTL_CONSTASCII_STRINGPARAM("exception occurred java->uno: [") );
buf.append( OUString::unacquired( &uno_exc->pType->pTypeName ) );
buf.appendAscii( RTL_CONSTASCII_STRINGPARAM("] ") );
buf.append(
@@ -356,7 +356,7 @@ jobject Bridge::call_uno(
#endif
return 0; // void return
}
- else // exception occured
+ else // exception occurred
{
// destruct uno in args
for ( sal_Int32 nPos = 0; nPos < nParams; ++nPos )
diff --git a/bridges/source/jni_uno/jni_uno2java.cxx b/bridges/source/jni_uno/jni_uno2java.cxx
index 713f7ee2c851..6e7f76c78a94 100644
--- a/bridges/source/jni_uno/jni_uno2java.cxx
+++ b/bridges/source/jni_uno/jni_uno2java.cxx
@@ -73,7 +73,7 @@ void Bridge::handle_java_exc(
if (! jo_exc.is())
{
throw BridgeRuntimeError(
- OUSTR("java exception occured, but no java exception available!?") +
+ OUSTR("java exception occurred, but no java exception available!?") +
jni.get_stack_trace() );
}
@@ -121,7 +121,7 @@ void Bridge::handle_java_exc(
#if OSL_DEBUG_LEVEL > 1
OUStringBuffer trace_buf( 128 );
trace_buf.appendAscii(
- RTL_CONSTASCII_STRINGPARAM("exception occured uno->java: [") );
+ RTL_CONSTASCII_STRINGPARAM("exception occurred uno->java: [") );
trace_buf.append( exc_name );
trace_buf.appendAscii( RTL_CONSTASCII_STRINGPARAM("] ") );
trace_buf.append(
@@ -408,7 +408,7 @@ void Bridge::call_java(
}
} // else: already set integral uno return value
- // no exception occured
+ // no exception occurred
*uno_exc = 0;
}
#ifdef BROKEN_ALLOCA
@@ -779,7 +779,7 @@ void SAL_CALL UNO_proxy_dispatch(
reinterpret_cast< uno_Any * >( uno_ret ),
0, 0, 0 );
}
- // no exception occured
+ // no exception occurred
*uno_exc = 0;
}
}
diff --git a/canvas/inc/canvas/base/bitmapcanvasbase.hxx b/canvas/inc/canvas/base/bitmapcanvasbase.hxx
index 647f739d7527..833e214ea029 100644
--- a/canvas/inc/canvas/base/bitmapcanvasbase.hxx
+++ b/canvas/inc/canvas/base/bitmapcanvasbase.hxx
@@ -48,7 +48,7 @@ namespace canvas
@tpl Mutex
Lock strategy to use. Defaults to using the
- OBaseMutex-provided lock. Everytime one of the methods is
+ OBaseMutex-provided lock. Every time one of the methods is
entered, an object of type Mutex is created with m_aMutex as
the sole parameter, and destroyed again when the method scope
is left.
diff --git a/canvas/inc/canvas/base/bufferedgraphicdevicebase.hxx b/canvas/inc/canvas/base/bufferedgraphicdevicebase.hxx
index 931b04191629..2cb89158fbd3 100644
--- a/canvas/inc/canvas/base/bufferedgraphicdevicebase.hxx
+++ b/canvas/inc/canvas/base/bufferedgraphicdevicebase.hxx
@@ -73,7 +73,7 @@ namespace canvas
@tpl Mutex
Lock strategy to use. Defaults to using the
- OBaseMutex-provided lock. Everytime one of the methods is
+ OBaseMutex-provided lock. Every time one of the methods is
entered, an object of type Mutex is created with m_aMutex as
the sole parameter, and destroyed again when the method scope
is left.
diff --git a/canvas/inc/canvas/base/canvasbase.hxx b/canvas/inc/canvas/base/canvasbase.hxx
index b4ffb2360630..286093f321d9 100644
--- a/canvas/inc/canvas/base/canvasbase.hxx
+++ b/canvas/inc/canvas/base/canvasbase.hxx
@@ -78,13 +78,13 @@ namespace canvas
Canvas helper implementation for the backend in question. This
object will be held as a member of this template class, and
basically gets forwarded all XCanvas API calls. Furthermore,
- everytime the canvas API semantically changes the content of
+ every time the canvas API semantically changes the content of
the canvas, CanvasHelper::modifying() will get called
(<em>before</em> the actual modification takes place).
@tpl Mutex
Lock strategy to use. Defaults to using the
- OBaseMutex-provided lock. Everytime one of the methods is
+ OBaseMutex-provided lock. Every time one of the methods is
entered, an object of type Mutex is created with m_aMutex as
the sole parameter, and destroyed again when the method scope
is left.
diff --git a/canvas/inc/canvas/base/canvascustomspritebase.hxx b/canvas/inc/canvas/base/canvascustomspritebase.hxx
index 52e044af1b8b..40f31a5da260 100644
--- a/canvas/inc/canvas/base/canvascustomspritebase.hxx
+++ b/canvas/inc/canvas/base/canvascustomspritebase.hxx
@@ -60,7 +60,7 @@ namespace canvas
@tpl Mutex
Lock strategy to use. Defaults to using the
- OBaseMutex-provided lock. Everytime one of the methods is
+ OBaseMutex-provided lock. Every time one of the methods is
entered, an object of type Mutex is created with m_aMutex as
the sole parameter, and destroyed again when the method scope
is left.
diff --git a/canvas/inc/canvas/base/doublebitmapbase.hxx b/canvas/inc/canvas/base/doublebitmapbase.hxx
index 916e83c7740b..aca04fb57daf 100644
--- a/canvas/inc/canvas/base/doublebitmapbase.hxx
+++ b/canvas/inc/canvas/base/doublebitmapbase.hxx
@@ -49,7 +49,7 @@ namespace canvas
@tpl Mutex
Lock strategy to use. Defaults to using the
- OBaseMutex-provided lock. Everytime one of the methods is
+ OBaseMutex-provided lock. Every time one of the methods is
entered, an object of type Mutex is created with m_aMutex as
the sole parameter, and destroyed again when the method scope
is left.
diff --git a/canvas/inc/canvas/base/floatbitmapbase.hxx b/canvas/inc/canvas/base/floatbitmapbase.hxx
index 0e5157af4a34..d52b625aedb4 100644
--- a/canvas/inc/canvas/base/floatbitmapbase.hxx
+++ b/canvas/inc/canvas/base/floatbitmapbase.hxx
@@ -49,7 +49,7 @@ namespace canvas
@tpl Mutex
Lock strategy to use. Defaults to using the
- OBaseMutex-provided lock. Everytime one of the methods is
+ OBaseMutex-provided lock. Every time one of the methods is
entered, an object of type Mutex is created with m_aMutex as
the sole parameter, and destroyed again when the method scope
is left.
diff --git a/canvas/inc/canvas/base/graphicdevicebase.hxx b/canvas/inc/canvas/base/graphicdevicebase.hxx
index 374fdfa728d4..3dfaa16d6864 100644
--- a/canvas/inc/canvas/base/graphicdevicebase.hxx
+++ b/canvas/inc/canvas/base/graphicdevicebase.hxx
@@ -90,7 +90,7 @@ namespace canvas
@tpl Mutex
Lock strategy to use. Defaults to using the
- BaseMutexHelper-provided lock. Everytime one of the methods is
+ BaseMutexHelper-provided lock. Every time one of the methods is
entered, an object of type Mutex is created with m_aMutex as
the sole parameter, and destroyed again when the method scope
is left.
diff --git a/canvas/inc/canvas/base/integerbitmapbase.hxx b/canvas/inc/canvas/base/integerbitmapbase.hxx
index 47e990caa92b..e1e7d76849b6 100644
--- a/canvas/inc/canvas/base/integerbitmapbase.hxx
+++ b/canvas/inc/canvas/base/integerbitmapbase.hxx
@@ -49,7 +49,7 @@ namespace canvas
@tpl Mutex
Lock strategy to use. Defaults to using the
- OBaseMutex-provided lock. Everytime one of the methods is
+ OBaseMutex-provided lock. Every time one of the methods is
entered, an object of type Mutex is created with m_aMutex as
the sole parameter, and destroyed again when the method scope
is left.
diff --git a/canvas/inc/canvas/base/spritecanvasbase.hxx b/canvas/inc/canvas/base/spritecanvasbase.hxx
index 66df2d802411..21ab86c28128 100644
--- a/canvas/inc/canvas/base/spritecanvasbase.hxx
+++ b/canvas/inc/canvas/base/spritecanvasbase.hxx
@@ -52,7 +52,7 @@ namespace canvas
@tpl Mutex
Lock strategy to use. Defaults to using the
- OBaseMutex-provided lock. Everytime one of the methods is
+ OBaseMutex-provided lock. Every time one of the methods is
entered, an object of type Mutex is created with m_aMutex as
the sole parameter, and destroyed again when the method scope
is left.
diff --git a/canvas/inc/canvas/canvastools.hxx b/canvas/inc/canvas/canvastools.hxx
index e369ef4c5482..55430d349172 100755
--- a/canvas/inc/canvas/canvastools.hxx
+++ b/canvas/inc/canvas/canvastools.hxx
@@ -454,7 +454,7 @@ namespace canvas
/// Convert standard 8888 RGBA color to vcl color
::com::sun::star::uno::Sequence<sal_Int8> colorToStdIntSequence( const ::Color& rColor );
- // Modeled closely after boost::numeric_cast, only that we
+ // Modelled closely after boost::numeric_cast, only that we
// issue some trace output here and throw a RuntimeException
/** Cast numeric value into another (numeric) data type
@@ -470,7 +470,7 @@ namespace canvas
typedef ::std::numeric_limits< Source > SourceLimits;
typedef ::std::numeric_limits< Target > TargetLimits;
- if( ( arg<0 && !TargetLimits::is_signed) || // loosing the sign here
+ if( ( arg<0 && !TargetLimits::is_signed) || // losing the sign here
( SourceLimits::is_signed && arg<TargetLimits::min()) || // underflow will happen
( arg>TargetLimits::max() ) ) // overflow will happen
{
diff --git a/canvas/inc/canvas/rendering/irendermodule.hxx b/canvas/inc/canvas/rendering/irendermodule.hxx
index 64faeb2dbadd..12764c5bc3e0 100644
--- a/canvas/inc/canvas/rendering/irendermodule.hxx
+++ b/canvas/inc/canvas/rendering/irendermodule.hxx
@@ -114,7 +114,7 @@ namespace canvas
/** Query error status
- @returns true, if an error occured during primitive
+ @returns true, if an error occurred during primitive
construction.
*/
virtual bool isError() = 0;
diff --git a/canvas/source/cairo/cairo_canvasbitmap.cxx b/canvas/source/cairo/cairo_canvasbitmap.cxx
index 4adf92794dd8..02200d0a6583 100644
--- a/canvas/source/cairo/cairo_canvasbitmap.cxx
+++ b/canvas/source/cairo/cairo_canvasbitmap.cxx
@@ -49,7 +49,7 @@ namespace
{
HBITMAP surface2HBitmap( const SurfaceSharedPtr& rSurface, const basegfx::B2ISize& rSize )
{
- // cant seem to retrieve HBITMAP from cairo. copy content then
+ // can't seem to retrieve HBITMAP from cairo. copy content then
HDC hScreenDC=GetDC(NULL);
HBITMAP hBmpBitmap = CreateCompatibleBitmap( hScreenDC,
rSize.getX(),
@@ -242,7 +242,7 @@ namespace cairocanvas
cairo_paint( pAlphaCairo.get() );
pAlphaCairo.reset();
- // cant seem to retrieve HBITMAP from cairo. copy content then
+ // can't seem to retrieve HBITMAP from cairo. copy content then
uno::Sequence< uno::Any > args( 1 );
args[1] = uno::Any( sal_Int64(surface2HBitmap(pAlphaSurface,maSize)) );
diff --git a/canvas/source/cairo/cairo_canvasfont.cxx b/canvas/source/cairo/cairo_canvasfont.cxx
index cebcfc6fe67a..ae73362336b5 100644
--- a/canvas/source/cairo/cairo_canvasfont.cxx
+++ b/canvas/source/cairo/cairo_canvasfont.cxx
@@ -87,7 +87,7 @@ namespace cairocanvas
maFont->SetLanguage(MsLangId::convertLocaleToLanguage(rFontRequest.Locale));
- // adjust to stretched/shrinked font
+ // adjust to stretched/shrunk font
if( !::rtl::math::approxEqual( rFontMatrix.m00, rFontMatrix.m11) )
{
OutputDevice* pOutDev( mpRefDevice->getOutputDevice() );
diff --git a/canvas/source/cairo/cairo_canvashelper.cxx b/canvas/source/cairo/cairo_canvashelper.cxx
index a8045fefdecf..b0306ae3c3ca 100644
--- a/canvas/source/cairo/cairo_canvashelper.cxx
+++ b/canvas/source/cairo/cairo_canvashelper.cxx
@@ -598,7 +598,7 @@ namespace cairocanvas
aColor = pBitmapReadAcc->GetColor( nY, nX );
// cairo need premultiplied color values
- // TODO(rodo) handle endianess
+ // TODO(rodo) handle endianness
#ifdef OSL_BIGENDIAN
if( pAlphaReadAcc )
nAlpha = data[ nOff++ ];
diff --git a/canvas/source/cairo/cairo_quartz_cairo.cxx b/canvas/source/cairo/cairo_quartz_cairo.cxx
index db8316fd894a..50072943f31c 100644
--- a/canvas/source/cairo/cairo_quartz_cairo.cxx
+++ b/canvas/source/cairo/cairo_quartz_cairo.cxx
@@ -310,7 +310,7 @@ namespace cairo
}
/**
- * cairo::createBitmapSurface: Create platfrom native Canvas surface from BitmapSystemData
+ * cairo::createBitmapSurface: Create platform native Canvas surface from BitmapSystemData
* @param OutputDevice (not used)
* @param rData Platform native image data (struct BitmapSystemData in vcl/inc/bitmap.hxx)
* @param rSize width and height of the new surface
diff --git a/canvas/source/cairo/cairo_textlayout.cxx b/canvas/source/cairo/cairo_textlayout.cxx
index 35f498ddfc08..4a776bb7e734 100644
--- a/canvas/source/cairo/cairo_textlayout.cxx
+++ b/canvas/source/cairo/cairo_textlayout.cxx
@@ -343,7 +343,7 @@ namespace cairocanvas
/**
* TextLayout::isCairoRenderable
*
- * Features currenly not supported by Cairo (VCL rendering is used as fallback):
+ * Features currently not supported by Cairo (VCL rendering is used as fallback):
* - vertical glyphs
*
* @return true, if text/font can be rendered with cairo
@@ -547,7 +547,7 @@ namespace cairocanvas
FontMetric aMetric( rOutDev.GetFontMetric(aFont) );
long nWidth = 0;
- // width calculation is deep magic and platform/font dependant.
+ // width calculation is deep magic and platform/font dependent.
// width == 0 means no scaling, and usually width == height means the same.
// Other values mean horizontal scaling (narrow or stretching)
// see issue #101566
diff --git a/canvas/source/cairo/cairo_win32_cairo.cxx b/canvas/source/cairo/cairo_win32_cairo.cxx
index e5f42eaa89d7..86ec2c62dd86 100644
--- a/canvas/source/cairo/cairo_win32_cairo.cxx
+++ b/canvas/source/cairo/cairo_win32_cairo.cxx
@@ -88,7 +88,7 @@ namespace cairo
}
/**
- * Surface::Surface: Create platfrom native Canvas surface from BitmapSystemData
+ * Surface::Surface: Create platform native Canvas surface from BitmapSystemData
* @param pBmpData Platform native image data (struct BitmapSystemData in vcl/inc/bitmap.hxx)
*
* Create a surface based on image data on pBmpData
@@ -255,7 +255,7 @@ namespace cairo
/**
- * cairo::createBitmapSurface: Create platfrom native Canvas surface from BitmapSystemData
+ * cairo::createBitmapSurface: Create platform native Canvas surface from BitmapSystemData
* @param OutputDevice (not used)
* @param rData Platform native image data (struct BitmapSystemData in vcl/inc/bitmap.hxx)
* @param rSize width and height of the new surface
diff --git a/canvas/source/cairo/cairo_xlib_cairo.cxx b/canvas/source/cairo/cairo_xlib_cairo.cxx
index 4fa58fa06a3f..d78d1ddc7daf 100644
--- a/canvas/source/cairo/cairo_xlib_cairo.cxx
+++ b/canvas/source/cairo/cairo_xlib_cairo.cxx
@@ -154,7 +154,7 @@ namespace cairo
}
/**
- * Surface::Surface: Create platfrom native Canvas surface from BitmapSystemData
+ * Surface::Surface: Create platform native Canvas surface from BitmapSystemData
* @param pSysData Platform native system environment data (struct SystemEnvData in vcl/inc/sysdata.hxx)
* @param pBmpData Platform native image data (struct BitmapSystemData in vcl/inc/bitmap.hxx)
* @param width width of the new surface
diff --git a/canvas/source/directx/dx_vcltools.cxx b/canvas/source/directx/dx_vcltools.cxx
index 6f6625cccec2..b33009f8e618 100644
--- a/canvas/source/directx/dx_vcltools.cxx
+++ b/canvas/source/directx/dx_vcltools.cxx
@@ -116,7 +116,7 @@ namespace dxcanvas
!aBmpSysData.pDIB )
{
// first of all, ensure that Bitmap contains a DIB, by
- // aquiring a read access
+ // acquiring a read access
BitmapReadAccess* pReadAcc = rBmp.AcquireReadAccess();
// TODO(P2): Acquiring a read access can actually
diff --git a/canvas/source/tools/pagemanager.cxx b/canvas/source/tools/pagemanager.cxx
index ebf3b69a3165..22b954d2929f 100644
--- a/canvas/source/tools/pagemanager.cxx
+++ b/canvas/source/tools/pagemanager.cxx
@@ -171,7 +171,7 @@ namespace canvas
PageContainer_t::iterator it(maPages.begin());
while(it != aEnd)
{
- // if the page at hand takes the fragment, we immediatelly
+ // if the page at hand takes the fragment, we immediately
// call select() to pull the information from the associated
// image to the hardware surface.
if((*it)->nakedFragment(pFragment))
diff --git a/canvas/source/tools/surface.hxx b/canvas/source/tools/surface.hxx
index 204fa2ff269e..98388d515083 100644
--- a/canvas/source/tools/surface.hxx
+++ b/canvas/source/tools/surface.hxx
@@ -43,7 +43,7 @@ namespace canvas
// Surface
//////////////////////////////////////////////////////////////////////////////////
- /** surfaces denote occupied areas withing pages.
+ /** surfaces denote occupied areas within pages.
pages encapsulate the hardware buffers that
contain image data which can be used for texturing.
diff --git a/canvas/source/tools/surfaceproxy.hxx b/canvas/source/tools/surfaceproxy.hxx
index d1a67159cf16..bb8665aac8d3 100644
--- a/canvas/source/tools/surfaceproxy.hxx
+++ b/canvas/source/tools/surfaceproxy.hxx
@@ -41,7 +41,7 @@ namespace canvas
Surface proxies are the connection between *one* source image
and *one or more* hardware surfaces (or textures). in a
- logical structure surface proxies represent soley this
+ logical structure surface proxies represent solely this
dependeny plus some simple cache management.
*/
class SurfaceProxy : public ISurfaceProxy
diff --git a/canvas/source/vcl/canvasfont.cxx b/canvas/source/vcl/canvasfont.cxx
index f42279bd7e5d..4222e22d5457 100644
--- a/canvas/source/vcl/canvasfont.cxx
+++ b/canvas/source/vcl/canvasfont.cxx
@@ -67,7 +67,7 @@ namespace vclcanvas
maFont->SetLanguage(MsLangId::convertLocaleToLanguage(rFontRequest.Locale));
- // adjust to stretched/shrinked font
+ // adjust to stretched/shrunk font
if( !::rtl::math::approxEqual( rFontMatrix.m00, rFontMatrix.m11) )
{
OutputDevice& rOutDev( rOutDevProvider->getOutDev() );
diff --git a/canvas/workben/canvasdemo.cxx b/canvas/workben/canvasdemo.cxx
index 5728d1d7b0cd..999e6c7f9785 100644
--- a/canvas/workben/canvasdemo.cxx
+++ b/canvas/workben/canvasdemo.cxx
@@ -471,7 +471,7 @@ class DemoRenderer
//begin hacks
//This stuff doesn't belong here, but probably in curves
//This stuff doesn't work in VCL b/c vcl doesn't do beziers
- //Hah! Everytime the window redraws, we do this
+ //Hah! Every time the window redraws, we do this
double ax;
double ay;
double bx;
diff --git a/chart2/source/controller/chartapiwrapper/Chart2ModelContact.hxx b/chart2/source/controller/chartapiwrapper/Chart2ModelContact.hxx
index a1df143e95cd..bbfaa57328a2 100755
--- a/chart2/source/controller/chartapiwrapper/Chart2ModelContact.hxx
+++ b/chart2/source/controller/chartapiwrapper/Chart2ModelContact.hxx
@@ -88,7 +88,7 @@ public:
*/
::com::sun::star::awt::Size GetPageSize() const;
- /** calculates the current axes title sizes and substract that space them from the given recangle
+ /** calculates the current axes title sizes and subtract that space them from the given recangle
*/
::com::sun::star::awt::Rectangle SubstractAxisTitleSizes( const ::com::sun::star::awt::Rectangle& rPositionRect );
diff --git a/chart2/source/controller/chartapiwrapper/ChartDocumentWrapper.cxx b/chart2/source/controller/chartapiwrapper/ChartDocumentWrapper.cxx
index c138755767fa..9bdcb3dcfb59 100755
--- a/chart2/source/controller/chartapiwrapper/ChartDocumentWrapper.cxx
+++ b/chart2/source/controller/chartapiwrapper/ChartDocumentWrapper.cxx
@@ -1025,7 +1025,7 @@ void ChartDocumentWrapper::impl_resetAddIn()
{
try
{
- //make sure that the add-in does not hold a refernce to us anymore:
+ //make sure that the add-in does not hold a references to us anymore:
Reference< lang::XComponent > xComp( xAddIn, uno::UNO_QUERY );
if( xComp.is())
xComp->dispose();
diff --git a/chart2/source/controller/dialogs/DataBrowserModel.cxx b/chart2/source/controller/dialogs/DataBrowserModel.cxx
index 2e2b5f7dacdd..d3b02ef8409d 100644
--- a/chart2/source/controller/dialogs/DataBrowserModel.cxx
+++ b/chart2/source/controller/dialogs/DataBrowserModel.cxx
@@ -413,7 +413,7 @@ void DataBrowserModel::insertDataSeries( sal_Int32 nAfterColumnIndex )
}
if( nSeriesNumberFormat != 0 )
{
- //give the new series the same number format as the former series especially for bubble charts thus the bubble size values can be edited with same format immidiately
+ //give the new series the same number format as the former series especially for bubble charts thus the bubble size values can be edited with same format immediately
Reference< beans::XPropertySet > xNewSeriesProps( xNewSeries, uno::UNO_QUERY );
if( xNewSeriesProps.is() )
xNewSeriesProps->setPropertyValue( C2U( "NumberFormat" ), uno::makeAny( nSeriesNumberFormat ) );
diff --git a/chart2/source/controller/dialogs/ObjectNameProvider.cxx b/chart2/source/controller/dialogs/ObjectNameProvider.cxx
index 9113d55aa00f..22bd50a5cf2c 100644
--- a/chart2/source/controller/dialogs/ObjectNameProvider.cxx
+++ b/chart2/source/controller/dialogs/ObjectNameProvider.cxx
@@ -567,7 +567,7 @@ rtl::OUString ObjectNameProvider::getHelpText( const rtl::OUString& rObjectCID,
else if( OBJECTTYPE_DIAGRAM == eObjectType )
{
//todo different names for different diagram types ???
- //or different names for series of diferent charttypes
+ //or different names for series of different charttypes
}
*/
else if( OBJECTTYPE_DATA_CURVE == eObjectType )
diff --git a/chart2/source/controller/main/ChartController.cxx b/chart2/source/controller/main/ChartController.cxx
index f537ef026626..d885d809bb4a 100644
--- a/chart2/source/controller/main/ChartController.cxx
+++ b/chart2/source/controller/main/ChartController.cxx
@@ -235,7 +235,7 @@ void ChartController::TheModel::tryTermination()
}
catch( util::CloseVetoException& )
{
- //since we have indicated to give up the ownership with paramter true in close call
+ //since we have indicated to give up the ownership with parameter true in close call
//the one who has thrown the CloseVetoException is the new owner
#if OSL_DEBUG_LEVEL > 2
diff --git a/chart2/source/inc/DataSeriesHelper.hxx b/chart2/source/inc/DataSeriesHelper.hxx
index 2ec5f080c4b6..f3f3bd8b26bc 100644
--- a/chart2/source/inc/DataSeriesHelper.hxx
+++ b/chart2/source/inc/DataSeriesHelper.hxx
@@ -102,7 +102,7 @@ OOO_DLLPUBLIC_CHARTTOOLS ::rtl::OUString getDataSeriesLabel(
::com::sun::star::chart2::XDataSeries > & xSeries,
const ::rtl::OUString & rLabelSequenceRole );
-/** Get the label of a labeled sequence including neccessary automatic generation
+/** Get the label of a labeled sequence including necessary automatic generation
*/
OOO_DLLPUBLIC_CHARTTOOLS ::rtl::OUString getLabelForLabeledDataSequence(
const ::com::sun::star::uno::Reference<
diff --git a/chart2/source/inc/DiagramHelper.hxx b/chart2/source/inc/DiagramHelper.hxx
index 55e1e7ed4901..b485bb09300f 100644
--- a/chart2/source/inc/DiagramHelper.hxx
+++ b/chart2/source/inc/DiagramHelper.hxx
@@ -156,7 +156,7 @@ public:
::com::sun::star::chart2::XDiagram > & xDiagram,
sal_Int32 nNewDimensionCount );
- /** Replaces all occurences of xCooSysToReplace in the tree with
+ /** Replaces all occurrences of xCooSysToReplace in the tree with
xReplacement in the diagram's tree
*/
SAL_DLLPRIVATE static void replaceCoordinateSystem(
diff --git a/chart2/source/inc/ObjectIdentifier.hxx b/chart2/source/inc/ObjectIdentifier.hxx
index 10331995520f..ad7fb497e73b 100644
--- a/chart2/source/inc/ObjectIdentifier.hxx
+++ b/chart2/source/inc/ObjectIdentifier.hxx
@@ -86,7 +86,7 @@ class OOO_DLLPUBLIC_CHARTTOOLS ObjectIdentifier
//syntax of a CID: CID:/classification/ObjectID
//where classification: nothing or "MultiClick" or "DragMethod=DragMethodServiceName" and "DragParameter=DragParameterString"
- // or a combination of these seperated with a colon
+ // or a combination of these separated with a colon
//where DragMethodServiceName can be a selfdefined servicename for special actions //todo define standard service for this purpose
//where DragParameterString is any string you like to transport information to your special drag service
// only semicolon, colon, equal sign and slash are not allowed characters
diff --git a/chart2/source/tools/LifeTime.cxx b/chart2/source/tools/LifeTime.cxx
index d283e00a0ce3..5a81a1fc5cb4 100644
--- a/chart2/source/tools/LifeTime.cxx
+++ b/chart2/source/tools/LifeTime.cxx
@@ -267,7 +267,7 @@ bool CloseableLifeTimeManager::impl_isDisposedOrClosed( bool bAssert )
void CloseableLifeTimeManager
::g_close_endTryClose(sal_Bool bDeliverOwnership, sal_Bool /* bMyVeto */ )
{
- //this method is called, if the try to close was not successfull
+ //this method is called, if the try to close was not successful
osl::Guard< osl::Mutex > aGuard( m_aAccessMutex );
impl_setOwnership( bDeliverOwnership, sal_False );
@@ -311,7 +311,7 @@ bool CloseableLifeTimeManager::impl_isDisposedOrClosed( bool bAssert )
void CloseableLifeTimeManager
::g_close_endTryClose_doClose()
{
- //this method is called, if the try to close was successfull
+ //this method is called, if the try to close was successful
osl::ResettableGuard< osl::Mutex > aGuard( m_aAccessMutex );
m_bInTryClose = sal_False;
diff --git a/chart2/source/tools/XMLRangeHelper.cxx b/chart2/source/tools/XMLRangeHelper.cxx
index 8ebebfec6ef0..ea6032d0cce5 100644
--- a/chart2/source/tools/XMLRangeHelper.cxx
+++ b/chart2/source/tools/XMLRangeHelper.cxx
@@ -353,7 +353,7 @@ CellRange getCellRangeFromXMLString( const OUString & rXMLString )
nStartPos, nEndPos - 1,
aResult ))
{
- // if an error occured, bail out
+ // if an error occurred, bail out
return CellRange();
}
}
diff --git a/chart2/source/view/axes/VCartesianAxis.cxx b/chart2/source/view/axes/VCartesianAxis.cxx
index 9d1f02cf5056..6ccebba1c558 100644
--- a/chart2/source/view/axes/VCartesianAxis.cxx
+++ b/chart2/source/view/axes/VCartesianAxis.cxx
@@ -592,7 +592,7 @@ bool VCartesianAxis::createTextShapes(
, TickFactory_2D* pTickFactory
, sal_Int32 nScreenDistanceBetweenTicks )
{
- //returns true if the text shapes have been created succesfully
+ //returns true if the text shapes have been created successfully
//otherwise false - in this case the AxisLabelProperties have changed
//and contain new instructions for the next try for text shape creation
diff --git a/chart2/source/view/charttypes/Splines.cxx b/chart2/source/view/charttypes/Splines.cxx
index 179a315f429f..8615c9bfc8bc 100644
--- a/chart2/source/view/charttypes/Splines.cxx
+++ b/chart2/source/view/charttypes/Splines.cxx
@@ -107,7 +107,7 @@ private:
*/
void Calculate();
- /** @descr this function corresponds to the algoritm 4.76 in [2] and
+ /** @descr this function corresponds to the algorithm 4.76 in [2] and
theorem 5.3.7 in [3]
[2] Engeln-MĂŒllges, Gisela: Numerik-Algorithmen: Verfahren, Beispiele, Anwendungen
diff --git a/chart2/source/view/diagram/VDiagram.cxx b/chart2/source/view/diagram/VDiagram.cxx
index 64281ef117d6..7e9582ef5112 100644
--- a/chart2/source/view/diagram/VDiagram.cxx
+++ b/chart2/source/view/diagram/VDiagram.cxx
@@ -379,7 +379,7 @@ void VDiagram::adjustAspectRatio3d( const awt::Size& rAvailableSize )
lcl_ensureScaleValue(fScaleX);
}
else
- fScaleX = 1.0;//looking from top or bottom hieght is irrelevant
+ fScaleX = 1.0;//looking from top or bottom height is irrelevant
}
else
{
@@ -424,7 +424,7 @@ void VDiagram::adjustAspectRatio3d( const awt::Size& rAvailableSize )
lcl_ensureScaleValue(fScaleY);
}
else
- fScaleY = 1.0;//looking from top or bottom hieght is irrelevant
+ fScaleY = 1.0;//looking from top or bottom height is irrelevant
*/
}
else if( fScaleY>0 && fScaleZ>0 )
@@ -437,7 +437,7 @@ void VDiagram::adjustAspectRatio3d( const awt::Size& rAvailableSize )
lcl_ensureScaleValue(fScaleX);
}
else
- fScaleX = 1.0;//looking from top or bottom hieght is irrelevant
+ fScaleX = 1.0;//looking from top or bottom height is irrelevant
}
else
{
diff --git a/chart2/source/view/inc/MinimumAndMaximumSupplier.hxx b/chart2/source/view/inc/MinimumAndMaximumSupplier.hxx
index 623fe38d5f42..a4aa732cd211 100644
--- a/chart2/source/view/inc/MinimumAndMaximumSupplier.hxx
+++ b/chart2/source/view/inc/MinimumAndMaximumSupplier.hxx
@@ -57,7 +57,7 @@ public:
virtual bool isExpandNarrowValuesTowardZero( sal_Int32 nDimensionIndex ) = 0;
virtual bool isSeperateStackingForDifferentSigns( sal_Int32 nDimensionIndex ) = 0;
- //return a constant out of ::com::sun::star::chart::TimeUnit that allows to display the smallest distance between occuring dates
+ //return a constant out of ::com::sun::star::chart::TimeUnit that allows to display the smallest distance between occurring dates
virtual long calculateTimeResolutionOnXAxis() = 0;
virtual void setTimeResolutionOnXAxis( long nTimeResolution, const Date& rNullDate ) = 0;
};
diff --git a/chart2/source/view/main/ChartView.cxx b/chart2/source/view/main/ChartView.cxx
index 00e3efca0ac2..3df17927494f 100644
--- a/chart2/source/view/main/ChartView.cxx
+++ b/chart2/source/view/main/ChartView.cxx
@@ -907,7 +907,7 @@ void SeriesPlotterContainer::setScalesFromCooSysToPlotter()
void SeriesPlotterContainer::setNumberFormatsFromAxes()
{
- //set numberfarmats to plotter to enable them to display the data labels in the numberfromat of teh axis
+ //set numberfarmats to plotter to enable them to display the data labels in the numberfromat of the axis
::std::vector< VSeriesPlotter* >::const_iterator aPlotterIter = m_aSeriesPlotterList.begin();
const ::std::vector< VSeriesPlotter* >::const_iterator aPlotterEnd = m_aSeriesPlotterList.end();
@@ -1513,7 +1513,7 @@ awt::Rectangle ChartView::impl_createDiagramAndContent( SeriesPlotterContainer&
pVCooSys->setTransformationSceneToScreen( B3DHomMatrixToHomogenMatrix(
createTransformationSceneToScreen( aVDiagram.getCurrentRectangle() ) ));
}
- pVCooSys->updatePositions();//todo: logically this belongs to the condition above, but it seems also to be neccessary to give the axes group shapes the right bounding rects for hit test - probably caused by bug i106183 -> check again if fixed
+ pVCooSys->updatePositions();//todo: logically this belongs to the condition above, but it seems also to be necessary to give the axes group shapes the right bounding rects for hit test - probably caused by bug i106183 -> check again if fixed
}
//create axes and grids for the final size
@@ -2543,7 +2543,7 @@ void ChartView::createShapes()
.getOrCreateChartRootShape( m_xDrawPage ) );
SdrPage* pPage = ChartView::getSdrPage();
- if(pPage) //it is neccessary to use the implementation here as the uno page does not provide a propertyset
+ if(pPage) //it is necessary to use the implementation here as the uno page does not provide a propertyset
pPage->SetPageScale(basegfx::B2DVector(aPageSize.Width,aPageSize.Height));
else
{
diff --git a/chart2/source/view/main/PlottingPositionHelper.cxx b/chart2/source/view/main/PlottingPositionHelper.cxx
index 63982ad83d35..fd71c32bac18 100644
--- a/chart2/source/view/main/PlottingPositionHelper.cxx
+++ b/chart2/source/view/main/PlottingPositionHelper.cxx
@@ -216,7 +216,7 @@ awt::Point PlottingPositionHelper::transformSceneToScreenPosition( const drawing
//@todo would like to have a cheaper method to do this transformation
awt::Point aScreenPoint( static_cast<sal_Int32>(rScenePosition3D.PositionX), static_cast<sal_Int32>(rScenePosition3D.PositionY) );
- //transformation from scene to screen (only neccessary for 3D):
+ //transformation from scene to screen (only necessary for 3D):
if(3==nDimensionCount)
{
//create 3D anchor shape
diff --git a/cli_ure/source/climaker/climaker_app.cxx b/cli_ure/source/climaker/climaker_app.cxx
index 3ceda3f0d367..4f540a6c188e 100644
--- a/cli_ure/source/climaker/climaker_app.cxx
+++ b/cli_ure/source/climaker/climaker_app.cxx
@@ -718,7 +718,7 @@ SAL_IMPLEMENT_MAIN()
osl_getThreadTextEncoding() ) );
fprintf(
stderr,
- "\n> error: .NET exception occured: %s\n> dying abnormally...",
+ "\n> error: .NET exception occurred: %s\n> dying abnormally...",
msg.getStr() );
ret = 1;
}
diff --git a/cli_ure/source/native/makefile.mk b/cli_ure/source/native/makefile.mk
index a19337ce2c96..1cce59ef366c 100644
--- a/cli_ure/source/native/makefile.mk
+++ b/cli_ure/source/native/makefile.mk
@@ -152,7 +152,7 @@ $(SIGN): $(SHL1TARGETN)
#do not forget to deliver cli_cppuhelper.config. It is NOT embedded in the policy file.
.IF "$(CCNUMVER)" >= "001399999999"
#.NET 2 and higher
-# If the x86 switch is ommitted then the system assumes the assembly to be MSIL.
+# If the x86 switch is omitted then the system assumes the assembly to be MSIL.
# The policy file is still found when an application tries to load an older
# cli_cppuhelper.dll but the system cannot locate it. It possibly assumes that the
# assembly is also 'MSIL' like its policy file.
diff --git a/cli_ure/source/native/native_bootstrap.cxx b/cli_ure/source/native/native_bootstrap.cxx
index 8dfa92aa60f5..2c4bbaa0d624 100644
--- a/cli_ure/source/native/native_bootstrap.cxx
+++ b/cli_ure/source/native/native_bootstrap.cxx
@@ -69,7 +69,7 @@ namespace
* @param subKeyName name of the subkey to open
*
* @return the installation path or NULL, if no installation was found or
- * if an error occured
+ * if an error occurred
*/
WCHAR* getPathFromRegistryKey( HKEY hroot, LPCWSTR subKeyName )
{
diff --git a/cli_ure/source/uno_bridge/cli_bridge.cxx b/cli_ure/source/uno_bridge/cli_bridge.cxx
index 4845d51e9e8f..9fe5d0f79760 100644
--- a/cli_ure/source/uno_bridge/cli_bridge.cxx
+++ b/cli_ure/source/uno_bridge/cli_bridge.cxx
@@ -190,8 +190,8 @@ namespace cli_uno
I doubt that the the case that the ref count raises from 0 to 1
can occur. uno_ext_getMapping returns an acquired mapping. Every time
that function is called then a new mapping is created. Following the
- rules of ref counted objects, then if the ref count is null noone has
- a reference to the object anymore. Hence noone can call acquire. If someone
+ rules of ref counted objects, then if the ref count is null no one has
+ a reference to the object anymore. Hence no one can call acquire. If someone
calls acquire then they must have kept an unacquired pointer which is
illegal.
*/
diff --git a/cli_ure/source/uno_bridge/cli_data.cxx b/cli_ure/source/uno_bridge/cli_data.cxx
index 61295a0c4041..d8fccccb85e3 100644
--- a/cli_ure/source/uno_bridge/cli_data.cxx
+++ b/cli_ure/source/uno_bridge/cli_data.cxx
@@ -1647,7 +1647,7 @@ void Bridge::map_to_cli(
}
OSL_ASSERT (nPos != -1);
int offset = pCTD->pMemberOffsets[nPos];
- //Whith the offset within the exception we can get the message string
+ //With the offset within the exception we can get the message string
System::String* sMessage = mapUnoString(*(rtl_uString**)
((char*) uno_data + offset));
//We need to find a constructor for the exception that takes the message string
diff --git a/cli_ure/source/uno_bridge/cli_proxy.cxx b/cli_ure/source/uno_bridge/cli_proxy.cxx
index 9425ab044a06..8afa3449f716 100644
--- a/cli_ure/source/uno_bridge/cli_proxy.cxx
+++ b/cli_ure/source/uno_bridge/cli_proxy.cxx
@@ -1102,7 +1102,7 @@ void SAL_CALL cli_proxy_dispatch(
{
uno_any_construct( (uno_Any *)uno_ret, 0, 0, 0 );
}
- // no excetpion occured
+ // no excetpion occurred
*uno_exc = 0;
}
else
diff --git a/cli_ure/source/uno_bridge/cli_uno.cxx b/cli_ure/source/uno_bridge/cli_uno.cxx
index e34fe411a71c..9f21c68f0c4f 100644
--- a/cli_ure/source/uno_bridge/cli_uno.cxx
+++ b/cli_ure/source/uno_bridge/cli_uno.cxx
@@ -183,7 +183,7 @@ System::Object* Bridge::call_uno(uno_Interface * pUnoI,
}
return 0; // void return
}
- else // exception occured
+ else // exception occurred
{
// destruct uno in args
for ( sal_Int32 nPos = 0; nPos < nParams; ++nPos )
@@ -276,7 +276,7 @@ void Bridge::call_cli(
map_to_uno(
uno_ret, retInvoke, return_type, false /* no assign */);
}
- // no exception occured
+ // no exception occurred
*uno_exc = 0;
}
diff --git a/codemaker/source/javamaker/javatype.cxx b/codemaker/source/javamaker/javatype.cxx
index 5d7515fd6c9a..ec5f520b789f 100644
--- a/codemaker/source/javamaker/javatype.cxx
+++ b/codemaker/source/javamaker/javatype.cxx
@@ -2171,7 +2171,7 @@ void handleInterfaceType(
rtl::OString(
RTL_CONSTASCII_STRINGPARAM("Bad type information"))); //TODO
}
- //TODO: exploit the fact that attribute getter/setter methods preceed
+ //TODO: exploit the fact that attribute getter/setter methods precede
// real methods
rtl::OUString attrNameUtf16(reader.getFieldName(i));
sal_uInt16 getter = SAL_MAX_UINT16;
diff --git a/comphelper/inc/comphelper/IdPropArrayHelper.hxx b/comphelper/inc/comphelper/IdPropArrayHelper.hxx
index c81a1e7d8d2a..63d640e8d261 100644
--- a/comphelper/inc/comphelper/IdPropArrayHelper.hxx
+++ b/comphelper/inc/comphelper/IdPropArrayHelper.hxx
@@ -66,7 +66,7 @@ namespace comphelper
}
/** call this in the getInfoHelper method of your derived class. The method returns the array helper of the
- class, which is created if neccessary.
+ class, which is created if necessary.
*/
::cppu::IPropertyArrayHelper* getArrayHelper(sal_Int32 nId);
diff --git a/comphelper/inc/comphelper/accessiblecontexthelper.hxx b/comphelper/inc/comphelper/accessiblecontexthelper.hxx
index e1c8f3b622b7..e2eefb89bc5b 100644
--- a/comphelper/inc/comphelper/accessiblecontexthelper.hxx
+++ b/comphelper/inc/comphelper/accessiblecontexthelper.hxx
@@ -118,7 +118,7 @@ namespace comphelper
the context does. A good approach to implement the lock may be to derive you own context
not only from OAccessibleContextHelper, but also from IMutex.</p>
- <p>One more note. This lock is definately not used once the dtor is reached. Means whatever
+ <p>One more note. This lock is definitely not used once the dtor is reached. Means whatever
the dtor implementation does, it does <em>not</em> guard the external lock. See this as a contract.
<br/>You should ensure the same thing for own derivees which do not supply the lock themself,
but get them from yet another derivee.</p>
diff --git a/comphelper/inc/comphelper/accimplaccess.hxx b/comphelper/inc/comphelper/accimplaccess.hxx
index eb8ce5826771..218d22214710 100644
--- a/comphelper/inc/comphelper/accimplaccess.hxx
+++ b/comphelper/inc/comphelper/accimplaccess.hxx
@@ -105,7 +105,7 @@ namespace comphelper
@param _rxComponent
is the component which should be examined.
@return
- the pointer to the implementation, if successfull. The only known error condition so far
+ the pointer to the implementation, if successful. The only known error condition so far
is an invalid context (which means it is <NULL/>, or the implementation is not derived
from <type>OAccessibleImplementationAccess</type>, or retrieving the implementation failed).
*/
diff --git a/comphelper/inc/comphelper/componentcontext.hxx b/comphelper/inc/comphelper/componentcontext.hxx
index 74485ba93b51..cada747372f0 100644
--- a/comphelper/inc/comphelper/componentcontext.hxx
+++ b/comphelper/inc/comphelper/componentcontext.hxx
@@ -137,7 +137,7 @@ namespace comphelper
@throws ::com::sun::star::lang::ServiceNotRegisteredException
if the given service is not registered
@throws Exception
- if an exception occured during creating the component
+ if an exception occurred during creating the component
@return
the newly created component. Is never <NULL/>.
*/
@@ -148,7 +148,7 @@ namespace comphelper
@throws ::com::sun::star::lang::ServiceNotRegisteredException
if the given service is not registered
@throws Exception
- if an exception occured during creating the component
+ if an exception occurred during creating the component
@return
the newly created component. Is never <NULL/>.
*/
@@ -162,7 +162,7 @@ namespace comphelper
@throws ::com::sun::star::lang::ServiceNotRegisteredException
if the given service is not registered
@throws Exception
- if an exception occured during creating the component
+ if an exception occurred during creating the component
@return
the newly created component. Is never <NULL/>.
*/
@@ -176,7 +176,7 @@ namespace comphelper
@throws ::com::sun::star::lang::ServiceNotRegisteredException
if the given service is not registered
@throws Exception
- if an exception occured during creating the component
+ if an exception occurred during creating the component
@return
the newly created component. Is never <NULL/>.
*/
diff --git a/comphelper/inc/comphelper/configurationhelper.hxx b/comphelper/inc/comphelper/configurationhelper.hxx
index 0531e2103c5a..63c2bf9f7ca5 100644
--- a/comphelper/inc/comphelper/configurationhelper.hxx
+++ b/comphelper/inc/comphelper/configurationhelper.hxx
@@ -41,7 +41,7 @@
// namespaces
// no panic .. this define will be reseted at the end of this file.
-// BUT doing so it's neccessary to add all includes BEFORE this css-value
+// BUT doing so it's necessary to add all includes BEFORE this css-value
// will be defined :_)
#ifdef css
#error "Who use css? I need it as namespace alias."
@@ -98,7 +98,7 @@ class COMPHELPER_DLLPUBLIC ConfigurationHelper
*
* @param eMode
* specify the open mode for the returned configuration access.
- * It's interpreted as a flag field and can be any usefull combination
+ * It's interpreted as a flag field and can be any useful combination
* of values of EConfigurationModes.
*
* @throw Any exceptions the underlying configuration can throw.
@@ -191,7 +191,7 @@ class COMPHELPER_DLLPUBLIC ConfigurationHelper
* or which should be created with default values.
*
* @return A reference to the found (or new created) set node.
- * Cant be NULL .. in such case an exception occure !
+ * Can't be NULL .. in such case an exception occurred !
*
* @throw Any exceptions the underlying configuration can throw.
* E.g. css::uno::Exception if the provided configuration
@@ -208,7 +208,7 @@ class COMPHELPER_DLLPUBLIC ConfigurationHelper
* The cached configuration access must be provided here.
*
* @param xCFG
- * the configuration root, where changes should be commited.
+ * the configuration root, where changes should be committed.
*
* @throw Any exceptions the underlying configuration can throw.
* E.g. css::uno::Exception if the provided configuration
@@ -223,7 +223,7 @@ class COMPHELPER_DLLPUBLIC ConfigurationHelper
* Because it opens the specified configuration package, reads the key and
* closes the configuration again.
*
- * So its not very usefull to use this method for reading multiple keys at the same time.
+ * So its not very useful to use this method for reading multiple keys at the same time.
* (Excepting these keys exists inside different configuration packages ...))
*/
static css::uno::Any readDirectKey(const css::uno::Reference< css::lang::XMultiServiceFactory > xSMGR ,
@@ -239,7 +239,7 @@ class COMPHELPER_DLLPUBLIC ConfigurationHelper
* Because it opens the specified configuration package, writes the key, flush
* all changes and closes the configuration again.
*
- * So its not very usefull to use this method for writing multiple keys at the same time.
+ * So its not very useful to use this method for writing multiple keys at the same time.
* (Excepting these keys exists inside different configuration packages ...))
*/
static void writeDirectKey(const css::uno::Reference< css::lang::XMultiServiceFactory > xSMGR ,
diff --git a/comphelper/inc/comphelper/containermultiplexer.hxx b/comphelper/inc/comphelper/containermultiplexer.hxx
index 131a27b8c0e1..4ca28c329cdc 100644
--- a/comphelper/inc/comphelper/containermultiplexer.hxx
+++ b/comphelper/inc/comphelper/containermultiplexer.hxx
@@ -39,7 +39,7 @@ namespace comphelper
//= OContainerListener
//=====================================================================
/** a non-UNO container listener
- <p>Usefull if you have a non-refcountable class which should act as container listener.<br/>
+ <p>Useful if you have a non-refcountable class which should act as container listener.<br/>
In this case, derive this class from OContainerListener, and create an adapter
<type>OContainerListenerAdapter</type> which multiplexes the changes.</p>
*/
diff --git a/comphelper/inc/comphelper/docpasswordhelper.hxx b/comphelper/inc/comphelper/docpasswordhelper.hxx
index 989329298ca2..d434ee694625 100644
--- a/comphelper/inc/comphelper/docpasswordhelper.hxx
+++ b/comphelper/inc/comphelper/docpasswordhelper.hxx
@@ -58,7 +58,7 @@ class COMPHELPER_DLLPUBLIC IDocPasswordVerifier
public:
virtual ~IDocPasswordVerifier();
- /** Will be called everytime a password needs to be verified.
+ /** Will be called every time a password needs to be verified.
@param rPassword
The password to be verified
@@ -74,12 +74,12 @@ public:
- DocPasswordVerifierResult_WRONG_PASSWORD, if the password is
wrong. The user may be asked again for a new password.
- DocPasswordVerifierResult_ABORT, if an unrecoverable error
- occured while password verification. The password request loop
+ occurred while password verification. The password request loop
will be aborted.
*/
virtual DocPasswordVerifierResult verifyPassword( const ::rtl::OUString& rPassword, ::com::sun::star::uno::Sequence< ::com::sun::star::beans::NamedValue >& o_rEncryptionData ) = 0;
- /** Will be called everytime an encryption data needs to be verified.
+ /** Will be called every time an encryption data needs to be verified.
@param rEncryptionData
The data will be validated
@@ -90,7 +90,7 @@ public:
- DocPasswordVerifierResult_WRONG_PASSWORD, if the encryption data is
wrong.
- DocPasswordVerifierResult_ABORT, if an unrecoverable error
- occured while data verification. The password request loop
+ occurred while data verification. The password request loop
will be aborted.
*/
virtual DocPasswordVerifierResult verifyEncryptionData( const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::NamedValue >& o_rEncryptionData ) = 0;
diff --git a/comphelper/inc/comphelper/embeddedobjectcontainer.hxx b/comphelper/inc/comphelper/embeddedobjectcontainer.hxx
index 320f494b8d26..060fd7355f29 100644
--- a/comphelper/inc/comphelper/embeddedobjectcontainer.hxx
+++ b/comphelper/inc/comphelper/embeddedobjectcontainer.hxx
@@ -101,7 +101,7 @@ public:
CreateEmbeddedObject( const com::sun::star::uno::Sequence < sal_Int8 >&,
const com::sun::star::uno::Sequence < com::sun::star::beans::PropertyValue >&, ::rtl::OUString& );
- // insert an embedded object into the container - objects persistant representation will be added to the storage
+ // insert an embedded object into the container - objects persistent representation will be added to the storage
sal_Bool InsertEmbeddedObject( const ::com::sun::star::uno::Reference < ::com::sun::star::embed::XEmbeddedObject >&, ::rtl::OUString& );
// load an embedded object from a MediaDescriptor and insert it into the container
@@ -175,7 +175,7 @@ sal_Bool RemoveEmbeddedObject( const ::com::sun::star::uno::Reference
*
* \param _xStorage The storeage where to store the objects.
* \param _bClearModifedFlag If <TRUE/> then the modifed flag will be set to <FALSE/> otherwise nothing happen.
- * \return <FALSE/> if no error occured, otherwise <TRUE/>.
+ * \return <FALSE/> if no error occurred, otherwise <TRUE/>.
*/
sal_Bool SetPersistentEntries(const com::sun::star::uno::Reference< com::sun::star::embed::XStorage >& _xStorage,bool _bClearModifedFlag = true);
};
diff --git a/comphelper/inc/comphelper/implementationreference.hxx b/comphelper/inc/comphelper/implementationreference.hxx
index 3719dc693c0f..b0fb49d07a80 100644
--- a/comphelper/inc/comphelper/implementationreference.hxx
+++ b/comphelper/inc/comphelper/implementationreference.hxx
@@ -56,7 +56,7 @@ namespace comphelper
As this template is geared towards fast, internal pointer
access, validity of the UNO reference is _not_ checked for
every pointer access. The client of this template is
- responsible to check that, whereever necessary, via the is()
+ responsible to check that, wherever necessary, via the is()
method.
@tpl CppType
diff --git a/comphelper/inc/comphelper/interaction.hxx b/comphelper/inc/comphelper/interaction.hxx
index 54592ca515bb..53a8489a80b2 100644
--- a/comphelper/inc/comphelper/interaction.hxx
+++ b/comphelper/inc/comphelper/interaction.hxx
@@ -47,7 +47,7 @@ namespace comphelper
*/
class OInteractionSelect
{
- sal_Bool m_bSelected : 1; /// indicates if the select event occured
+ sal_Bool m_bSelected : 1; /// indicates if the select event occurred
protected:
OInteractionSelect() : m_bSelected(sal_False) { }
diff --git a/comphelper/inc/comphelper/locale.hxx b/comphelper/inc/comphelper/locale.hxx
index e227720f6d00..4ea878ecf073 100644
--- a/comphelper/inc/comphelper/locale.hxx
+++ b/comphelper/inc/comphelper/locale.hxx
@@ -53,13 +53,13 @@ class COMPHELPER_DLLPUBLIC Locale
public:
- /** @short seperates LANGUAGE and COUNTRY part of an ISO formated Locale. */
+ /** @short separates LANGUAGE and COUNTRY part of an ISO formated Locale. */
static const sal_Unicode SEPERATOR_LC;
- /** @short seperates COUNTRY and VARIANT part of an ISO formated Locale. */
+ /** @short separates COUNTRY and VARIANT part of an ISO formated Locale. */
static const sal_Unicode SEPERATOR_CV;
- /** @short seperates COUNTRY and VARIANT part of an ISO formated Locale.
+ /** @short separates COUNTRY and VARIANT part of an ISO formated Locale.
@descr Its true for some linux derivates only :-( */
static const sal_Unicode SEPERATOR_CV_LINUX;
@@ -105,7 +105,7 @@ class COMPHELPER_DLLPUBLIC Locale
public:
- /** @short will be throw during convertion, if a Locale cant be interpreted. */
+ /** @short will be throw during conversion, if a Locale can't be interpreted. */
struct MalFormedLocaleException
{
public:
@@ -343,8 +343,8 @@ class COMPHELPER_DLLPUBLIC Locale
If no "same" nor any "similar" locale could be found,
we try "x-default" and "x-notranslate" explicitly.
- Sometimes localized variables are optimized and doesnt use
- localzation realy. E.g. in case the localized value is a fix
+ Sometimes localized variables are optimized and doesn't use
+ localzation really. E.g. in case the localized value is a fix
product name.
If no locale match till now, we use any other existing
@@ -429,7 +429,7 @@ class COMPHELPER_DLLPUBLIC Locale
@return [boolean]
TRUE if at least one part of such Locale
- isnt the same.
+ isn't the same.
*/
sal_Bool operator!=(const Locale& aComparable) const;
};
diff --git a/comphelper/inc/comphelper/mediadescriptor.hxx b/comphelper/inc/comphelper/mediadescriptor.hxx
index 250153208b6a..8797252aa688 100644
--- a/comphelper/inc/comphelper/mediadescriptor.hxx
+++ b/comphelper/inc/comphelper/mediadescriptor.hxx
@@ -51,7 +51,7 @@ namespace comphelper{
Further this helper defines often used functions (as e.g. open of the required streams,
consistent checks etcpp.) and it defines all useable property names.
- @attention This class isnt threadsafe and must be guarded from outside!
+ @attention This class isn't threadsafe and must be guarded from outside!
*/
class COMPHELPER_DLLPUBLIC MediaDescriptor : public SequenceAsHashMap
{
@@ -144,7 +144,7 @@ class COMPHELPER_DLLPUBLIC MediaDescriptor : public SequenceAsHashMap
to open the stream (as e.g. URL, ReadOnly, PostData etcpp.).
It creates a seekable stream and put it into the descriptor.
- A might existing InteractionHandler will be used automaticly,
+ A might existing InteractionHandler will be used automatically,
to solve problems!
In case of local file the system file locking is used.
@@ -162,7 +162,7 @@ class COMPHELPER_DLLPUBLIC MediaDescriptor : public SequenceAsHashMap
to open the stream (as e.g. URL, ReadOnly, PostData etcpp.).
It creates a seekable stream and put it into the descriptor.
- A might existing InteractionHandler will be used automaticly,
+ A might existing InteractionHandler will be used automatically,
to solve problems!
In case of local file the system file locking is used based on
@@ -176,7 +176,7 @@ class COMPHELPER_DLLPUBLIC MediaDescriptor : public SequenceAsHashMap
//---------------------------------------
/** @short it checks if the descriptor describes a readonly stream.
- @descr The descriptor itself isnt changed doing so.
+ @descr The descriptor itself isn't changed doing so.
It's only checked if the stream seems to be based
of a real readonly file.
@@ -318,7 +318,7 @@ class COMPHELPER_DLLPUBLIC MediaDescriptor : public SequenceAsHashMap
to open the stream (as e.g. URL, ReadOnly, PostData etcpp.).
It creates a seekable stream and put it into the descriptor.
- A might existing InteractionHandler will be used automaticly,
+ A might existing InteractionHandler will be used automatically,
to solve problems!
@param bLockFile
diff --git a/comphelper/inc/comphelper/numberedcollection.hxx b/comphelper/inc/comphelper/numberedcollection.hxx
index 47780e49b4dc..5576c1912f2b 100644
--- a/comphelper/inc/comphelper/numberedcollection.hxx
+++ b/comphelper/inc/comphelper/numberedcollection.hxx
@@ -58,7 +58,7 @@ namespace comphelper{
/** @short defines a collection of UNO components, where every component will get it's own unique number.
@descr Such number will be unique at runtime only ... but it supports fragmentation.
- Note: This collection uses weak refrences only to know her components.
+ Note: This collection uses weak references only to know her components.
So lifetime of thise components must be controlled outside.
@threadsafe
@@ -154,14 +154,14 @@ class COMPHELPER_DLLPUBLIC NumberedCollection : private ::cppu::BaseMutex
//---------------------------------------
/** @short trys to find an unique number not already used within this collection.
- @descr It reuses the smalles number which isnt used by any component
+ @descr It reuses the smalles number which isn't used by any component
of this collection. (fragmentation!) If collection is full (means there
is no free number) the special value INVALID_NUMBER will be returned.
- @note Those method cant be called within a multithreaded environment ..
+ @note Those method can't be called within a multithreaded environment ..
Because such number wont be "reserved" for the calli of these method
it can happen that two calls returns the same number (reasoned by the fact that first calli
- doesnt used the returned number already.
+ doesn't used the returned number already.
So the outside code has to make sure that retrieving and using of those number
will be an atomic operation.
diff --git a/comphelper/inc/comphelper/propagg.hxx b/comphelper/inc/comphelper/propagg.hxx
index 4057a87a11f2..b3197f2cbeb4 100644
--- a/comphelper/inc/comphelper/propagg.hxx
+++ b/comphelper/inc/comphelper/propagg.hxx
@@ -72,9 +72,9 @@ namespace internal
class IPropertyInfoService
{
public:
- /** get the prefered handle for the given property
+ /** get the preferred handle for the given property
@param _rName the property name
- @return the handle the property should be refered by, or -1 if there are no
+ @return the handle the property should be referred by, or -1 if there are no
preferences for the given property
*/
virtual sal_Int32 getPreferedPropertyId(const ::rtl::OUString& _rName) = 0;
@@ -108,11 +108,11 @@ public:
aggregate properties get depend from the following two parameters.
@param _pInfoService
If not NULL, the object pointed to is used to calc handles which should be used
- for refering the aggregate's properties from outside.
+ for referring the aggregate's properties from outside.
If one of the properties returned from the info service conflict with other handles
alread present (e.g. through _rProperties), the property is handled as if -1 was returned.
If NULL (or, for a special property, a call to getPreferedPropertyId returns -1),
- the aggregate property(ies) get a new handle which they can be refered by from outside.
+ the aggregate property(ies) get a new handle which they can be referred by from outside.
@param _nFirstAggregateId
if the object is about to create new handles for the aggregate properties, it uses
id's ascending from this given id.
@@ -143,8 +143,8 @@ public:
virtual sal_Int32 SAL_CALL fillHandles( /*out*/sal_Int32* _pHandles, const ::com::sun::star::uno::Sequence< ::rtl::OUString >& _rPropNames );
/** returns information about a property of the aggregate.
- @param _pPropName points to a string to recieve the property name. No name is returned if this is NULL.
- @param _pOriginalHandle points to a sal_Int32 to recieve the original property hande. No original handle is returned
+ @param _pPropName points to a string to receive the property name. No name is returned if this is NULL.
+ @param _pOriginalHandle points to a sal_Int32 to receive the original property hande. No original handle is returned
if this is NULL.
@param _nHandle the handle of the property as got by, for instance, fillHandles
diff --git a/comphelper/inc/comphelper/proparrhlp.hxx b/comphelper/inc/comphelper/proparrhlp.hxx
index 420b2ac44cce..651d2a067b5e 100644
--- a/comphelper/inc/comphelper/proparrhlp.hxx
+++ b/comphelper/inc/comphelper/proparrhlp.hxx
@@ -73,7 +73,7 @@ public:
}
/** call this in the getInfoHelper method of your derived class. The method returns the array helper of the
- class, which is created if neccessary.
+ class, which is created if necessary.
*/
::cppu::IPropertyArrayHelper* getArrayHelper();
diff --git a/comphelper/inc/comphelper/property.hxx b/comphelper/inc/comphelper/property.hxx
index 041570e67b52..e0eeaf005754 100644
--- a/comphelper/inc/comphelper/property.hxx
+++ b/comphelper/inc/comphelper/property.hxx
@@ -138,7 +138,7 @@ COMPHELPER_DLLPUBLIC void copyProperties(const staruno::Reference<starbeans::XPr
//==================================================================
/** helper for implementing ::cppu::OPropertySetHelper::convertFastPropertyValue
- @param _rConvertedValue the conversion result (if successfull)
+ @param _rConvertedValue the conversion result (if successful)
@param _rOldValue the old value of the property, calculated from _rCurrentValue
@param _rValueToSet the new value which is about to be set
@param _rCurrentValue the current value of the property
@@ -162,7 +162,7 @@ sal_Bool tryPropertyValue(staruno::Any& /*out*/_rConvertedValue, staruno::Any& /
}
/** helper for implementing ::cppu::OPropertySetHelper::convertFastPropertyValue for enum values
- @param _rConvertedValue the conversion result (if successfull)
+ @param _rConvertedValue the conversion result (if successful)
@param _rOldValue the old value of the property, calculated from _rCurrentValue
@param _rValueToSet the new value which is about to be set
@param _rCurrentValue the current value of the property
@@ -192,7 +192,7 @@ sal_Bool tryPropertyValueEnum(staruno::Any& /*out*/_rConvertedValue, staruno::An
}
/** helper for implementing ::cppu::OPropertySetHelper::convertFastPropertyValue for boolean properties
- @param _rConvertedValue the conversion result (if successfull)
+ @param _rConvertedValue the conversion result (if successful)
@param _rOldValue the old value of the property, calculated from _rCurrentValue
@param _rValueToSet the new value which is about to be set
@param _rCurrentValue the current value of the property
@@ -215,7 +215,7 @@ inline sal_Bool tryPropertyValue(staruno::Any& /*out*/_rConvertedValue, staruno:
}
/** helper for implementing ::cppu::OPropertySetHelper::convertFastPropertyValue
- @param _rConvertedValue the conversion result (if successfull)
+ @param _rConvertedValue the conversion result (if successful)
@param _rOldValue the old value of the property, calculated from _rCurrentValue
@param _rValueToSet the new value which is about to be set
@param _rCurrentValue the current value of the property
diff --git a/comphelper/inc/comphelper/seqstream.hxx b/comphelper/inc/comphelper/seqstream.hxx
index 411da4360b43..3f0fe1bf27d6 100644
--- a/comphelper/inc/comphelper/seqstream.hxx
+++ b/comphelper/inc/comphelper/seqstream.hxx
@@ -103,12 +103,12 @@ protected:
public:
/** constructs the object. Everything written into the stream through the XOutputStream methods will be forwarded
- to the sequence, reallocating it if neccessary. Writing will start at offset 0 within the sequence.
+ to the sequence, reallocating it if necessary. Writing will start at offset 0 within the sequence.
@param _rSeq a reference to the sequence which will be used for output.
The caller is responsible for taking care of the lifetime of the stream
object and the sequence. If you're in doubt about this, use <code>closeOutput</code>
before destroying the sequence
- @param _nResizeFactor the factor which is used for resizing the sequence when neccessary. In every
+ @param _nResizeFactor the factor which is used for resizing the sequence when necessary. In every
resize step, the new sequence size will be calculated by multiplying the current
size with this factor, rounded off to the next multiple of 4.
@param _nMinimumResize the minmal number of bytes which is additionally allocated on resizing
diff --git a/comphelper/inc/comphelper/sequence.hxx b/comphelper/inc/comphelper/sequence.hxx
index 14552484d694..096c7129e0d6 100644
--- a/comphelper/inc/comphelper/sequence.hxx
+++ b/comphelper/inc/comphelper/sequence.hxx
@@ -43,7 +43,7 @@ namespace comphelper
//-------------------------------------------------------------------------
/** search the given string within the given sequence, return the positions where it was found.
- if _bOnlyFirst is sal_True, only the first occurence will be returned.
+ if _bOnlyFirst is sal_True, only the first occurrence will be returned.
*/
COMPHELPER_DLLPUBLIC staruno::Sequence<sal_Int16> findValue(const staruno::Sequence< ::rtl::OUString >& _rList, const ::rtl::OUString& _rValue, sal_Bool _bOnlyFirst = sal_False);
diff --git a/comphelper/inc/comphelper/sequenceashashmap.hxx b/comphelper/inc/comphelper/sequenceashashmap.hxx
index 1b54292185d5..92e2b8dd7d6f 100644
--- a/comphelper/inc/comphelper/sequenceashashmap.hxx
+++ b/comphelper/inc/comphelper/sequenceashashmap.hxx
@@ -109,7 +109,7 @@ class COMPHELPER_DLLPUBLIC SequenceAsHashMap : public SequenceAsHashMapBase
SequenceAsHashMap(const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::NamedValue >& lSource);
//---------------------------------------
- /** @short not realy used but maybe usefull :-)
+ /** @short not really used but maybe useful :-)
*/
~SequenceAsHashMap();
@@ -254,7 +254,7 @@ class COMPHELPER_DLLPUBLIC SequenceAsHashMap : public SequenceAsHashMapBase
specified default value otherwhise.
@descr If a value should be extracted only in case
- the requsted property exists realy (without creating
+ the requsted property exists really (without creating
of new items as it the index operator of a
has_map does!) this method can be used.
@@ -292,7 +292,7 @@ class COMPHELPER_DLLPUBLIC SequenceAsHashMap : public SequenceAsHashMapBase
does not already exist.
@descr To check if the property already exists only
- her name is used for compare. Its value isnt
+ her name is used for compare. Its value isn't
checked!
@param sKey
@@ -356,18 +356,18 @@ class COMPHELPER_DLLPUBLIC SequenceAsHashMap : public SequenceAsHashMapBase
the current content of this instance.
@descr Because the content of STL container
- cant be analyzed easy, such dump function
- seem to be usefull.
+ can't be analyzed easy, such dump function
+ seems to be useful.
Of course its available in debug versions
only.
@param pFileName
a system file name.
- (doesnt matter if relativ or absolute)
+ (doesn't matter if relativ or absolute)
@param pComment
used to mark the dump inside the same log file.
- Can be usefull to analyze changes of this
+ Can be useful to analyze changes of this
hash map due to the parts of an operation.
*/
#if OSL_DEBUG_LEVEL > 1
diff --git a/comphelper/inc/comphelper/sequenceasvector.hxx b/comphelper/inc/comphelper/sequenceasvector.hxx
index f72ded99332d..eb93228b3367 100644
--- a/comphelper/inc/comphelper/sequenceasvector.hxx
+++ b/comphelper/inc/comphelper/sequenceasvector.hxx
@@ -48,7 +48,7 @@ namespace comphelper{
@descr That provides the possibility to modify
sequences very easy ...
- Of course this can be usefull only, if
+ Of course this can be useful only, if
count of modifications is high, so copying
of the sequence make sense!
*/
diff --git a/comphelper/inc/comphelper/string.hxx b/comphelper/inc/comphelper/string.hxx
index a760507843be..34d4dabea5e0 100644
--- a/comphelper/inc/comphelper/string.hxx
+++ b/comphelper/inc/comphelper/string.hxx
@@ -70,14 +70,14 @@ COMPHELPER_DLLPUBLIC rtl::OUString searchAndReplaceAsciiL(
rtl::OUString const & to, sal_Int32 beginAt = 0,
sal_Int32 * replacedAt = NULL);
-/** replaces, in the given source string, all occurences of a given ASCII pattern
+/** replaces, in the given source string, all occurrences of a given ASCII pattern
with another ASCII pattern
*/
COMPHELPER_DLLPUBLIC ::rtl::OUString searchAndReplaceAllAsciiWithAscii(
const ::rtl::OUString& source, const sal_Char* from, const sal_Char* to,
const sal_Int32 beginAt = 0 );
-/** does an in-place replacement of the first occurance of a sub string with
+/** does an in-place replacement of the first occurrence of a sub string with
another string
@param source
diff --git a/comphelper/inc/comphelper/types.hxx b/comphelper/inc/comphelper/types.hxx
index 3e0483d0a2b9..9bbbcefda095 100644
--- a/comphelper/inc/comphelper/types.hxx
+++ b/comphelper/inc/comphelper/types.hxx
@@ -99,7 +99,7 @@ namespace comphelper
/** check if a type you have at hand at runtime is equal to another type you have at compile time
*/
template <class TYPE>
- sal_Bool isAReference(const staruno::Any& _rVal, TYPE* pDummy)
+ sal_Bool isAReference(const staruno::Any& _rVal, TYPE*)
{
return _rVal.getValueType().equals(
cppu::getTypeFavourUnsigned(
diff --git a/comphelper/source/container/embeddedobjectcontainer.cxx b/comphelper/source/container/embeddedobjectcontainer.cxx
index 4a02119d4bbe..91a9a86a0763 100644
--- a/comphelper/source/container/embeddedobjectcontainer.cxx
+++ b/comphelper/source/container/embeddedobjectcontainer.cxx
@@ -445,7 +445,7 @@ void EmbeddedObjectContainer::AddEmbeddedObject( const ::com::sun::star::uno::Re
uno::Reference < container::XNameAccess > xAccess( pImpl->mxStorage, uno::UNO_QUERY );
uno::Reference < embed::XEmbedPersist > xEmb( xObj, uno::UNO_QUERY );
uno::Reference < embed::XLinkageSupport > xLink( xEmb, uno::UNO_QUERY );
- // if the object has a persistance and the object is not a link than it must have persistence entry in the storage
+ // if the object has a persistence and the object is not a link than it must have persistence entry in the storage
OSL_ENSURE( !( xEmb.is() && ( !xLink.is() || !xLink->isLink() ) ) || xAccess->hasByName(rName),
"Added element not in storage!" );
#endif
@@ -751,7 +751,7 @@ uno::Reference < embed::XEmbeddedObject > EmbeddedObjectContainer::CopyAndGetEmb
if ( rName.isEmpty() )
rName = CreateUniqueObjectName();
- // objects without persistance are not really stored by the method
+ // objects without persistence are not really stored by the method
if ( xObj.is() && StoreEmbeddedObject( xObj, rName, sal_True ) )
{
xResult = Get_Impl( rName, xObj);
@@ -798,7 +798,7 @@ uno::Reference < embed::XEmbeddedObject > EmbeddedObjectContainer::CopyAndGetEmb
// this must be an object based on properties, otherwise we can not copy it currently
uno::Reference< beans::XPropertySet > xOrigProps( xObj->getComponent(), uno::UNO_QUERY_THROW );
- // use object class ID to create a new one and tranfer all the properties
+ // use object class ID to create a new one and transfer all the properties
uno::Reference < embed::XEmbedObjectCreator > xCreator(
::comphelper::getProcessServiceFactory()->createInstance(
::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.embed.EmbeddedObjectCreator") ) ),
@@ -863,7 +863,7 @@ uno::Reference < embed::XEmbeddedObject > EmbeddedObjectContainer::CopyAndGetEmb
}
}
- OSL_ENSURE( xResult.is(), "Can not copy embedded object that has no persistance!\n" );
+ OSL_ENSURE( xResult.is(), "Can not copy embedded object that has no persistence!\n" );
if ( xResult.is() )
{
@@ -1033,7 +1033,7 @@ sal_Bool EmbeddedObjectContainer::RemoveEmbeddedObject( const uno::Reference < e
uno::Reference < embed::XLinkageSupport > xLink( xPersist, uno::UNO_QUERY );
sal_Bool bIsNotEmbedded = !xPersist.is() || xLink.is() && xLink->isLink();
- // if the object has a persistance and the object is not a link than it must have persistence entry in the storage
+ // if the object has a persistence and the object is not a link than it must have persistence entry in the storage
OSL_ENSURE( bIsNotEmbedded || xAccess->hasByName(aName), "Removing element not present in storage!" );
#endif
@@ -1147,7 +1147,7 @@ sal_Bool EmbeddedObjectContainer::RemoveEmbeddedObject( const uno::Reference < e
try
{
#if OSL_DEBUG_LEVEL > 1
- // if the object has a persistance and the object is not a link than it must have persistence entry in storage
+ // if the object has a persistence and the object is not a link than it must have persistence entry in storage
OSL_ENSURE( bIsNotEmbedded || pImpl->mxStorage->hasByName( aName ), "The object has no persistence entry in the storage!" );
#endif
if ( xPersist.is() && pImpl->mxStorage->hasByName( aName ) )
@@ -1551,10 +1551,10 @@ sal_Bool EmbeddedObjectContainer::StoreChildren(sal_Bool _bOasisFormat,sal_Bool
}
else
{
- //do nothing.embeded model is not modified, no need to persist.
+ //do nothing. Embedded model is not modified, no need to persist.
}
}
- else //the embeded object is in active status, always store back it.
+ else //the embedded object is in active status, always store back it.
{
xPersist->storeOwn();
}
diff --git a/comphelper/source/container/enumerablemap.cxx b/comphelper/source/container/enumerablemap.cxx
index 6ac8775ab9bc..45191b0bce3d 100644
--- a/comphelper/source/container/enumerablemap.cxx
+++ b/comphelper/source/container/enumerablemap.cxx
@@ -344,7 +344,7 @@ namespace comphelper
}
private:
- // sicne we share our mutex with the main map, we need to keep it alive as long as we live
+ // since we share our mutex with the main map, we need to keep it alive as long as we live
Reference< XInterface > m_xKeepMapAlive;
::std::auto_ptr< MapData > m_pMapDataCopy;
MapEnumerator m_aEnumerator;
diff --git a/comphelper/source/misc/accessiblecontexthelper.cxx b/comphelper/source/misc/accessiblecontexthelper.cxx
index aa093182bb4a..1bf4f69f439e 100644
--- a/comphelper/source/misc/accessiblecontexthelper.cxx
+++ b/comphelper/source/misc/accessiblecontexthelper.cxx
@@ -216,7 +216,7 @@ namespace comphelper
{
// TODO: this whole method (as well as the class AccessibleEventBuffer) should be removed
// The reasons why they have been introduces id that we needed to collect a set of events
- // before notifying them alltogether (after releasing our mutex). With the other
+ // before notifying them altogether (after releasing our mutex). With the other
// NotifyAccessibleEvent being asynchronous now, this should not be necessary anymore
// - clients could use the other version now.
diff --git a/comphelper/source/misc/asyncnotification.cxx b/comphelper/source/misc/asyncnotification.cxx
index 795df3ec6f3b..1c2336f21aad 100644
--- a/comphelper/source/misc/asyncnotification.cxx
+++ b/comphelper/source/misc/asyncnotification.cxx
@@ -249,7 +249,7 @@ namespace comphelper
void SAL_CALL AsyncEventNotifier::onTerminated()
{
AsyncEventNotifier_TBASE::onTerminated();
- // when we were started (->run), we aquired ourself. Release this now
+ // when we were started (->run), we acquired ourself. Release this now
// that we were finally terminated
release();
}
diff --git a/comphelper/source/misc/locale.cxx b/comphelper/source/misc/locale.cxx
index c16e14dbe9d9..5ef0b0eaab00 100644
--- a/comphelper/source/misc/locale.cxx
+++ b/comphelper/source/misc/locale.cxx
@@ -426,7 +426,7 @@ void Locale::setVariant(const ::rtl::OUString& sVariant)
/* Attention: Use own interface methods to set the
different parts of this locale. Because the
check the incoming value and throw an exception
- automaticly ...
+ automatically ...
*/
void Locale::fromISO(const ::rtl::OUString& sISO)
throw(Locale::MalFormedLocaleException)
@@ -511,7 +511,7 @@ sal_Bool Locale::similar(const Locale& aComparable) const
Locale aReference(sReferenceISO);
// Note: The same language or "en"/"en-US" should be preferred as fallback.
- // On the other side some localized variables doesnt use localzation in real.
+ // On the other side some localized variables doesn't use localzation in real.
// May be the use a "fix" value only ... marked as X-DEFAULT or X-NOTRANSLATE.
// At least it can be discussed, if any language is a valid fallback ...
// But in case some office functionality depends on that (that means real functionality instead
diff --git a/comphelper/source/misc/mediadescriptor.cxx b/comphelper/source/misc/mediadescriptor.cxx
index bb7e52f63667..9b13f7679f14 100644
--- a/comphelper/source/misc/mediadescriptor.cxx
+++ b/comphelper/source/misc/mediadescriptor.cxx
@@ -715,7 +715,7 @@ sal_Bool MediaDescriptor::impl_openStreamWithURL( const ::rtl::OUString& sURL, s
css::uno::Reference< css::ucb::XCommandEnvironment > xCommandEnv(static_cast< css::ucb::XCommandEnvironment* >(pCommandEnv), css::uno::UNO_QUERY);
// try to create the content
- // no content -> no stream => return immediatly with FALSE
+ // no content -> no stream => return immediately with FALSE
::ucbhelper::Content aContent;
css::uno::Reference< css::ucb::XContent > xContent;
try
@@ -733,7 +733,7 @@ sal_Bool MediaDescriptor::impl_openStreamWithURL( const ::rtl::OUString& sURL, s
// try to open the file in read/write mode
// (if its allowed to do so).
// But handle errors in a "hidden mode". Because
- // we try it readonly later - if read/write isnt an option.
+ // we try it readonly later - if read/write isn't an option.
css::uno::Reference< css::io::XStream > xStream ;
css::uno::Reference< css::io::XInputStream > xInputStream;
@@ -750,7 +750,7 @@ sal_Bool MediaDescriptor::impl_openStreamWithURL( const ::rtl::OUString& sURL, s
{
try
{
- // TODO: use "special" still interaction to supress error messages
+ // TODO: use "special" still interaction to suppress error messages
xStream = aContent.openWriteableStream();
if (xStream.is())
xInputStream = xStream->getInputStream();
@@ -771,7 +771,7 @@ sal_Bool MediaDescriptor::impl_openStreamWithURL( const ::rtl::OUString& sURL, s
}
}
- // If opening of the stream in read/write mode wasnt allowed
+ // If opening of the stream in read/write mode wasn't allowed
// or failed by an error - we must try it in readonly mode.
if (!xInputStream.is())
{
@@ -846,7 +846,7 @@ sal_Bool MediaDescriptor::impl_openStreamWithURL( const ::rtl::OUString& sURL, s
they are part of an URL.
Do not use the URLTransformer service here. Because
- it parses the URL in another way. It's main part isnt enough
+ it parses the URL in another way. It's main part isn't enough
and it's complete part contains the jumpmark (fragment) parameter ...
*/
static ::rtl::OUString SERVICENAME_URIREFERENCEFACTORY = ::rtl::OUString::createFromAscii("com.sun.star.uri.UriReferenceFactory");
@@ -867,7 +867,7 @@ sal_Bool MediaDescriptor::impl_openStreamWithURL( const ::rtl::OUString& sURL, s
catch(const css::uno::Exception&)
{}
- // If an error ocurred ... return the original URL.
+ // If an error occurred ... return the original URL.
// It's a try .-)
return sURL;
}
diff --git a/comphelper/source/misc/numberedcollection.cxx b/comphelper/source/misc/numberedcollection.cxx
index b6a1e1e371bf..1dc77cf59b15 100644
--- a/comphelper/source/misc/numberedcollection.cxx
+++ b/comphelper/source/misc/numberedcollection.cxx
@@ -213,7 +213,7 @@ void SAL_CALL NumberedCollection::releaseNumberForComponent(const css::uno::Refe
::sal_Int32 c = (::sal_Int32)m_lComponents.size ();
::sal_Int32 i = 1;
- // c cant be less then 0 ... otherwhise hash.size() has an error :-)
+ // c can't be less than 0 ... otherwise hash.size() has an error :-)
// But we need at least n+1 numbers here.
c += 1;
diff --git a/comphelper/source/misc/proxyaggregation.cxx b/comphelper/source/misc/proxyaggregation.cxx
index e02c91da3093..da849f6a2247 100644
--- a/comphelper/source/misc/proxyaggregation.cxx
+++ b/comphelper/source/misc/proxyaggregation.cxx
@@ -58,7 +58,7 @@ namespace comphelper
// then the proxy itself
if ( xFactory.is() )
{
- { // i36686 OJ: achieve the desctruction of the tempoary -> otherwise it leads to _rRefCount -= 2
+ { // i36686 OJ: achieve the destruction of the tempoary -> otherwise it leads to _rRefCount -= 2
m_xProxyAggregate = xFactory->createProxy( _rxComponent );
}
if ( m_xProxyAggregate.is() )
diff --git a/comphelper/source/misc/scopeguard.cxx b/comphelper/source/misc/scopeguard.cxx
index 023bef0ebf7b..e7a16ea8ed6d 100644
--- a/comphelper/source/misc/scopeguard.cxx
+++ b/comphelper/source/misc/scopeguard.cxx
@@ -44,11 +44,11 @@ ScopeGuard::~ScopeGuard()
OSL_ENSURE(
false, rtl::OUStringToOString(
rtl::OUString( RTL_CONSTASCII_USTRINGPARAM(
- "UNO exception occured: ") ) +
+ "UNO exception occurred: ") ) +
exc.Message, RTL_TEXTENCODING_UTF8 ).getStr() );
}
catch (...) {
- OSL_ENSURE( false, "unknown exception occured!" );
+ OSL_ENSURE( false, "unknown exception occurred!" );
}
}
else
diff --git a/comphelper/source/misc/sequenceashashmap.cxx b/comphelper/source/misc/sequenceashashmap.cxx
index 51bcea4fc753..4280b011a38c 100644
--- a/comphelper/source/misc/sequenceashashmap.cxx
+++ b/comphelper/source/misc/sequenceashashmap.cxx
@@ -130,7 +130,7 @@ void SequenceAsHashMap::operator<<(const css::uno::Sequence< css::uno::Any >& lS
(!lP.Value.hasValue())
)
throw css::beans::IllegalTypeException(
- ::rtl::OUString::createFromAscii("PropertyValue struct contains no usefull informations."),
+ ::rtl::OUString::createFromAscii("PropertyValue struct contains no useful informations."),
css::uno::Reference< css::uno::XInterface >());
(*this)[lP.Name] = lP.Value;
continue;
@@ -144,7 +144,7 @@ void SequenceAsHashMap::operator<<(const css::uno::Sequence< css::uno::Any >& lS
(!lN.Value.hasValue())
)
throw css::beans::IllegalTypeException(
- ::rtl::OUString::createFromAscii("NamedValue struct contains no usefull informations."),
+ ::rtl::OUString::createFromAscii("NamedValue struct contains no useful informations."),
css::uno::Reference< css::uno::XInterface >());
(*this)[lN.Name] = lN.Value;
continue;
diff --git a/configure.in b/configure.in
index 9398ec9b59ef..b7d1fc3c6f68 100644
--- a/configure.in
+++ b/configure.in
@@ -58,6 +58,9 @@ AC_ARG_WITH(system-apache-commons,
AC_ARG_ENABLE(online-update,
[ --disable-online-update Disables the Online Update feature.
],,enable_online_update=yes)
+AC_ARG_ENABLE(unit-tests,
+[ --disable-unit-tests Disables default unit tests (eg. unit tests using Google test, ...).
+],,enable_unit_tests=yes)
AC_ARG_ENABLE(ldap,
[ --disable-ldap Disables the use of LDAP backend via OpenLDAP
],,)
@@ -362,7 +365,7 @@ AC_ARG_ENABLE(randr-link,
open it at runtime
],,enable_randr_link=yes)
AC_ARG_WITH(bundled-extension-blobs,
-[ --with-bundled-extension-blobs Whitespace seperated list of files in the tarball directory
+[ --with-bundled-extension-blobs Whitespace separated list of files in the tarball directory
that are to be bundled as-is for installation as extensions
at the first program start. Make sure to only bundle extensions
which can be installed without requiring a license dialog
@@ -370,7 +373,7 @@ AC_ARG_WITH(bundled-extension-blobs,
files LICENSE_aggregated and NOTICE_aggregated accordingly
],,)
#AC_ARG_WITH(bundled-prereg-extensions,
-#[ --with-bundled-prereg-extensions Whitespace seperated list of files in the tarball directory that
+#[ --with-bundled-prereg-extensions Whitespace separated list of files in the tarball directory that
# are to be bundled as pre-registered extensions. Make sure to only bundle
# extensions which can be installed without requiring a license dialog
#],,)
@@ -1446,6 +1449,19 @@ else
fi
AC_SUBST(ENABLE_ONLINE_UPDATE)
+dnl ===================================================================
+dnl Unit Tests
+dnl ===================================================================
+AC_MSG_CHECKING([whether to enable unit tests])
+if test "$enable_unit_tests" = "yes" -o "$enable_unit_tests" = "TRUE"; then
+ ENABLE_UNIT_TESTS="YES"
+ BUILD_TYPE="$BUILD_TYPE GTEST"
+ AC_MSG_RESULT([yes])
+else
+ ENABLE_UNIT_TESTS=""
+ AC_MSG_RESULT([no])
+fi
+AC_SUBST(ENABLE_UNIT_TESTS)
AC_MSG_CHECKING([whether to enable native CUPS support])
if test "$test_cups" = "yes" -a \( "$enable_cups" = "yes" -o "$enable_cups" = "TRUE" \) ; then
@@ -2882,7 +2898,7 @@ if test "z$with_build_version" != "z"; then
BUILD_VER_STRING=$with_build_version
AC_MSG_RESULT([yes, $BUILD_VER_STRING])
else
- BUILD_VER_STRING=
+ BUILD_VER_STRING=`date +"%Y-%m-%d %H:%M:%S (%a, %d %b %Y)"`
AC_MSG_RESULT([no])
fi
AC_SUBST(BUILD_VER_STRING)
@@ -3656,7 +3672,7 @@ if test "z$enable_odk" = "z" -o "$enable_odk" != "no"; then
save_CPPFLAGS=$CPPFLAGS
CXXFLAGS="$CXXFLAGS -I$JAVA_HOME/include"
CPPFLAGS="$CPPFLAGS -I$JAVA_HOME/include"
- # LIBS contains -lcrypt etc due to teh AC_CHECK_LIBS which obviously
+ # LIBS contains -lcrypt etc due to the AC_CHECK_LIBS which obviously
# do not make sense here (and 'd make the check fail)
save_LIBS=$LIBS
LIBS=""
@@ -3911,7 +3927,7 @@ dnl Checks for a MacOS platform SDK compatible with an OSX 10.7 deployment targe
dnl ===================================================================
if test "$_os" = "Darwin"; then
sdk_target=10.7
- AC_MSG_CHECKING([checking SDK compatiblity with OSX $sdk_target])
+ AC_MSG_CHECKING([checking SDK compatibility with OSX $sdk_target])
sdk_minor=`echo $sdk_target | cut -d"." -f2`
@@ -5464,7 +5480,7 @@ if test \( "$_os" = "WINNT" \) ; then
fi
AC_MSG_NOTICE([found atls.lib in "$ATL_LIB"? "$HAVE_ATL_LIB"])
- dnl TODO check also MFC libraries, they seem to have diferent names
+ dnl TODO check also MFC libraries, they seem to have different names
dnl mfc42.lib mfc90.lib
if test -d "$MFC_LIB"; then
HAVE_MFC_LIB="yes"
@@ -6294,8 +6310,8 @@ if test "$ENABLE_MEDIAWIKI" = "YES" -o "$ENABLE_REPORTBUILDER" = "YES"; then
AC_MSG_RESULT([external])
if test "$ENABLE_MEDIAWIKI" = "YES"; then
if test -z $COMMONS_CODEC_JAR; then
- AC_CHECK_FILE(/usr/share/java/commons-codec-1.6.jar,
- [ COMMONS_CODEC_JAR=/usr/share/java/commons-codec-1.6.jar ],
+ AC_CHECK_FILE(/usr/share/java/commons-codec-1.9.jar,
+ [ COMMONS_CODEC_JAR=/usr/share/java/commons-codec-1.9.jar ],
[
AC_CHECK_FILE(/usr/share/java/commons-codec.jar,
[ COMMONS_CODEC_JAR=/usr/share/java/commons-codec.jar ],
@@ -6309,8 +6325,8 @@ if test "$ENABLE_MEDIAWIKI" = "YES" -o "$ENABLE_REPORTBUILDER" = "YES"; then
fi
if test -z $COMMONS_LANG_JAR; then
- AC_CHECK_FILE(/usr/share/java/commons-lang-2.4.jar,
- [ COMMONS_LANG_JAR=/usr/share/java/commons-lang-2.4.jar ],
+ AC_CHECK_FILE(/usr/share/java/commons-lang3-3.3.jar,
+ [ COMMONS_LANG_JAR=/usr/share/java/commons-lang3-3.3.jar ],
[
AC_CHECK_FILE(/usr/share/java/commons-lang.jar,
[ COMMONS_LANG_JAR=/usr/share/java/commons-lang.jar ],
@@ -6340,8 +6356,8 @@ if test "$ENABLE_MEDIAWIKI" = "YES" -o "$ENABLE_REPORTBUILDER" = "YES"; then
fi
if test "$ENABLE_MEDIAWIKI" = "YES" -o "$ENABLE_REPORTBUILDER" = "YES"; then
if test -z $COMMONS_LOGGING_JAR; then
- AC_CHECK_FILE(/usr/share/java/commons-logging-1.1.1.jar,
- [ COMMONS_LOGGING_JAR=/usr/share/java/commons-logging-1.1.1.jar ],
+ AC_CHECK_FILE(/usr/share/java/commons-logging-1.1.3.jar,
+ [ COMMONS_LOGGING_JAR=/usr/share/java/commons-logging-1.1.3.jar ],
[
AC_CHECK_FILE(/usr/share/java/commons-logging.jar,
[ COMMONS_LOGGING_JAR=/usr/share/java/commons-logging.jar ],
diff --git a/connectivity/inc/connectivity/FValue.hxx b/connectivity/inc/connectivity/FValue.hxx
index dd8d1083c405..48f63f43c3c0 100644
--- a/connectivity/inc/connectivity/FValue.hxx
+++ b/connectivity/inc/connectivity/FValue.hxx
@@ -251,7 +251,7 @@ namespace connectivity
ORowSetValue& operator=(const ::rtl::OUString& _rRH);
// the type isn't set it will be set to VARCHAR if the type is different change it
ORowSetValue& operator=(const ::com::sun::star::uno::Sequence<sal_Int8>& _rRH);
- // we the possiblity to save a any for bookmarks
+ // we the possibility to save a any for bookmarks
ORowSetValue& operator=(const ::com::sun::star::uno::Any& _rAny);
operator sal_Bool() const { return isNull() ? sal_False : getBool(); }
diff --git a/connectivity/inc/connectivity/dbmetadata.hxx b/connectivity/inc/connectivity/dbmetadata.hxx
index 23a4f2f164bd..bfb67d4decc0 100644
--- a/connectivity/inc/connectivity/dbmetadata.hxx
+++ b/connectivity/inc/connectivity/dbmetadata.hxx
@@ -144,7 +144,7 @@ namespace dbtools
*/
bool shouldEscapeDateTime() const;
- /** auto increment columns should be automaticly used as primary key.
+ /** auto increment columns should be automatically used as primary key.
*/
bool isAutoIncrementPrimaryKey() const;
diff --git a/connectivity/inc/connectivity/dbtools.hxx b/connectivity/inc/connectivity/dbtools.hxx
index 16ff8cddc2ab..82738108d777 100644
--- a/connectivity/inc/connectivity/dbtools.hxx
+++ b/connectivity/inc/connectivity/dbtools.hxx
@@ -255,7 +255,7 @@ namespace dbtools
If (and only if) <arg>CommandType</arg> is CommandType.COMMAND, the fields collection which is returned
by this function here is a temporary object. It is kept alive by another object, which is to be
created temporarily, too. To ensure that the fields you get are valid as long as you need them,
- the owner which controls their life time is transfered to this parameter upon return.<br/>
+ the owner which controls their life time is transferred to this parameter upon return.<br/>
Your fields live as long as this component lives.<br/>
@@ -330,7 +330,7 @@ namespace dbtools
const StandardSQLState _eSQLState = SQL_ERROR_UNSPECIFIED,
const sal_Int32 _nErrorCode = 0);
- /** search the parent hierachy for a data source.
+ /** search the parent hierarchy for a data source.
*/
OOO_DLLPUBLIC_DBTOOLS ::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XDataSource> findDataSource(const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface >& _xParent);
@@ -363,7 +363,7 @@ namespace dbtools
@param _pAsciiSettingsName
the ASCII name of the setting to obtain
@param _rSettingsValue
- the value of the setting, upon successfull return
+ the value of the setting, upon successful return
@return
<FALSE/> if the setting is not present in the <member scope="com::sun::star::sdb">DataSource::Info</member>
@@ -610,7 +610,7 @@ namespace dbtools
const ::com::sun::star::uno::Reference< ::com::sun::star::task::XInteractionHandler >& _rxHandler,
const ::std::bit_vector& _aParametersSet = ::std::bit_vector());
- /** call the appropiate set method for the specific sql type @see com::sun::star::sdbc::DataType
+ /** call the appropriate set method for the specific sql type @see com::sun::star::sdbc::DataType
@param _xParams the parameters where to set the value
@param parameterIndex the index of the parameter, 1 based
@param x the value to set
@@ -624,7 +624,7 @@ namespace dbtools
sal_Int32 sqlType,
sal_Int32 scale=0) throw(::com::sun::star::sdbc::SQLException, ::com::sun::star::uno::RuntimeException);
- /** call the appropiate set method for the specific sql type @see com::sun::star::sdbc::DataType
+ /** call the appropriate set method for the specific sql type @see com::sun::star::sdbc::DataType
@param _xParams the parameters where to set the value
@param parameterIndex the index of the parameter, 1 based
@param x the value to set
diff --git a/connectivity/inc/connectivity/parameters.hxx b/connectivity/inc/connectivity/parameters.hxx
index 4a4b79681ae2..cd51bd529630 100644
--- a/connectivity/inc/connectivity/parameters.hxx
+++ b/connectivity/inc/connectivity/parameters.hxx
@@ -84,7 +84,7 @@ namespace dbtools
/// the column object for this parameter, as returned by the query composer
::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet >
xComposerColumn;
- /// the indicies of inner parameters which need to be filled when this concrete parameter is set
+ /// the indices of inner parameters which need to be filled when this concrete parameter is set
::std::vector< sal_Int32 > aInnerIndexes;
/// default ctor
@@ -267,7 +267,7 @@ namespace dbtools
@param _rxComponent
the database component to initialize from. Must not be <NULL/>
@return
- <TRUE/> if and only if the initialization was successfull
+ <TRUE/> if and only if the initialization was successful
@postcond
if and only if <TRUE/> is returned, then <member>m_xInnerParamColumns</member> contains the collection of
diff --git a/connectivity/inc/connectivity/sdbcx/VCatalog.hxx b/connectivity/inc/connectivity/sdbcx/VCatalog.hxx
index 13e96b3e0c77..6ee7a9227cdd 100644
--- a/connectivity/inc/connectivity/sdbcx/VCatalog.hxx
+++ b/connectivity/inc/connectivity/sdbcx/VCatalog.hxx
@@ -83,7 +83,7 @@ namespace connectivity
*/
virtual ::rtl::OUString buildName( const ::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XRow >& _xRow);
- /** fills a vector with the nescessary names which can be used in combination with the collections.
+ /** fills a vector with the necessary names which can be used in combination with the collections.
For each row buildName will be called.
@param _xResult
The resultset which should be used to fill the names. Will be disposed after return and set to NULL.
diff --git a/connectivity/inc/connectivity/sqlerror.hxx b/connectivity/inc/connectivity/sqlerror.hxx
index 828ef32225c3..e1d896922f09 100644
--- a/connectivity/inc/connectivity/sqlerror.hxx
+++ b/connectivity/inc/connectivity/sqlerror.hxx
@@ -173,7 +173,7 @@ namespace connectivity
the ErrorCondition which hit you
@param _rxContext
- the context in which the error occured. This will be filled in as
+ the context in which the error occurred. This will be filled in as
<member scope="com::sun::star::uno">Exception::Context</member> member.
@param _rParamValue1
@@ -210,7 +210,7 @@ namespace connectivity
Note: You should prefer the version of <type>raiseException</type> which takes
an additional <type>Context</type> parameter, since this allows clients of your
- exception to examine where the error occured.
+ exception to examine where the error occurred.
@param _eCondition
the ErrorCondition which hit you
@@ -248,7 +248,7 @@ namespace connectivity
the ErrorCondition which hit you
@param _rxContext
- the context in which the error occured. This will be filled in as
+ the context in which the error occurred. This will be filled in as
<member scope="com::sun::star::uno">Exception::Context</member> member.
@param _rExceptionType
@@ -294,7 +294,7 @@ namespace connectivity
the ErrorCondition which hit you
@param _rxContext
- the context in which the error occured. This will be filled in as
+ the context in which the error occurred. This will be filled in as
<member scope="com::sun::star::uno">Exception::Context</member> member.
@param _rParamValue1
diff --git a/connectivity/inc/connectivity/sqliterator.hxx b/connectivity/inc/connectivity/sqliterator.hxx
index c7d1ed30afec..cf73a5aa5ac5 100644
--- a/connectivity/inc/connectivity/sqliterator.hxx
+++ b/connectivity/inc/connectivity/sqliterator.hxx
@@ -166,7 +166,7 @@ namespace connectivity
const OSQLParseNode* getSimpleGroupByTree() const;
const OSQLParseNode* getSimpleHavingTree() const;
- /** returns the errors which occured during parsing.
+ /** returns the errors which occurred during parsing.
The returned object contains a chain (via SQLException::NextException) of SQLExceptions.
*/
@@ -333,12 +333,12 @@ namespace connectivity
/** appends an SQLException corresponding to the given error code to our error collection
@param _eError
- the code of the error which occured
+ the code of the error which occurred
@param _pReplaceToken1
- if not <NULL/>, the first occurance of '#' in the error message will be replaced
+ if not <NULL/>, the first occurrence of '#' in the error message will be replaced
with the given token
@param _pReplaceToken2
- if not <NULL/>, and if _rReplaceToken1 is not <NULL/>, the second occurance of '#'
+ if not <NULL/>, and if _rReplaceToken1 is not <NULL/>, the second occurrence of '#'
in the error message will be replaced with _rReplaceToken2
*/
void impl_appendError( IParseContext::ErrorCode _eError,
diff --git a/connectivity/inc/connectivity/sqlnode.hxx b/connectivity/inc/connectivity/sqlnode.hxx
index ac9ffc0226e1..39475db472a8 100644
--- a/connectivity/inc/connectivity/sqlnode.hxx
+++ b/connectivity/inc/connectivity/sqlnode.hxx
@@ -301,7 +301,7 @@ namespace connectivity
too, to check whether they contain nested sub queries.
@param _pErrorHolder
- takes the error which occured while generating the statement, if any. Might be <NULL/>,
+ takes the error which occurred while generating the statement, if any. Might be <NULL/>,
in this case the error is not reported back, and can only be recognized by examing the
return value.
@@ -412,7 +412,7 @@ namespace connectivity
::rtl::OUString &_rTable
,const ::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XDatabaseMetaData >& _xMetaData);
- // susbtitute all occurences of :var or [name] into the dynamic parameter ?
+ // susbtitute all occurrences of :var or [name] into the dynamic parameter ?
// _pNode will be modified if parameters exists
static void substituteParameterNames(OSQLParseNode* _pNode);
diff --git a/connectivity/inc/connectivity/virtualdbtools.hxx b/connectivity/inc/connectivity/virtualdbtools.hxx
index 60d65ba3a2d1..9370bcf79a55 100644
--- a/connectivity/inc/connectivity/virtualdbtools.hxx
+++ b/connectivity/inc/connectivity/virtualdbtools.hxx
@@ -91,7 +91,7 @@ namespace comphelper {
instance, which is acquired <em>once</em>.</p>
@return
a pointer to an object implementing the IDataAccessToolsFactory interface,
- aquired exactly <em>once</em>.
+ acquired exactly <em>once</em>.
*/
extern "C" OOO_DLLPUBLIC_DBTOOLS void* SAL_CALL createDataAccessToolsFactory();
diff --git a/connectivity/qa/complex/connectivity/JdbcLongVarCharTest.java b/connectivity/qa/complex/connectivity/JdbcLongVarCharTest.java
index fedfcb4a72ad..3209bcce9954 100644
--- a/connectivity/qa/complex/connectivity/JdbcLongVarCharTest.java
+++ b/connectivity/qa/complex/connectivity/JdbcLongVarCharTest.java
@@ -117,7 +117,7 @@ public class JdbcLongVarCharTest extends ComplexTestCase
}
catch (java.lang.Exception e)
{
- System.out.println("== Exception occured while testing ==");
+ System.out.println("== Exception occurred while testing ==");
e.printStackTrace();
} finally
{
diff --git a/connectivity/qa/complex/connectivity/hsqldb/DatabaseMetaData.java b/connectivity/qa/complex/connectivity/hsqldb/DatabaseMetaData.java
index 9a0471b7fad7..17589f27554b 100644
--- a/connectivity/qa/complex/connectivity/hsqldb/DatabaseMetaData.java
+++ b/connectivity/qa/complex/connectivity/hsqldb/DatabaseMetaData.java
@@ -68,7 +68,7 @@ public class DatabaseMetaData {
} catch( java.lang.IllegalAccessException ex ) {
assure("IllegalAccessException!",false);
} catch( SQLException ex ) {
- assure("SQLException occured: " + ex.getMessage() ,false);
+ assure("SQLException occurred: " + ex.getMessage() ,false);
} catch( java.lang.reflect.InvocationTargetException ex ) {
assure("IllegalAccessException!",false);
} finally {
diff --git a/connectivity/source/commontools/TSkipDeletedSet.cxx b/connectivity/source/commontools/TSkipDeletedSet.cxx
index a1185f67a799..566f23c06f0b 100644
--- a/connectivity/source/commontools/TSkipDeletedSet.cxx
+++ b/connectivity/source/commontools/TSkipDeletedSet.cxx
@@ -61,7 +61,7 @@ sal_Bool OSkipDeletedSet::skipDeleted(IResultSetHelper::Movement _eCursorPositio
nDelOffset = 1;
break;
case IResultSetHelper::LAST:
- eDelPosition = IResultSetHelper::PRIOR; // lsat row is invalid so position before
+ eDelPosition = IResultSetHelper::PRIOR; // last row is invalid so position before
nDelOffset = 1;
break;
case IResultSetHelper::RELATIVE:
diff --git a/connectivity/source/commontools/parameters.cxx b/connectivity/source/commontools/parameters.cxx
index 10ba937a21f0..3915b7c2e8c9 100644
--- a/connectivity/source/commontools/parameters.cxx
+++ b/connectivity/source/commontools/parameters.cxx
@@ -192,7 +192,7 @@ namespace dbtools
}
// we need to map the parameter names (which is all we get from the 's
- // MasterFields property) to indicies, which are needed by the XParameters
+ // MasterFields property) to indices, which are needed by the XParameters
// interface of the row set)
Reference<XPropertySet> xParam;
for ( sal_Int32 i = 0; i < m_nInnerCount; ++i )
@@ -205,7 +205,7 @@ namespace dbtools
::rtl::OUString sName;
xParam->getPropertyValue( OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_NAME) ) >>= sName;
- // only append additonal paramters when they are not already in the list
+ // only append additional parameters when they are not already in the list
ParameterInformation::iterator aExistentPos = m_aParameterInformation.find( sName );
OSL_ENSURE( !_bSecondRun || ( aExistentPos != m_aParameterInformation.end() ),
"ParameterManager::collectInnerParameters: the parameter information should already exist in the second run!" );
@@ -479,9 +479,9 @@ namespace dbtools
( nSmallestIndexLinkedByColumnName > nLargestIndexNotLinkedByColumnName ),
"ParameterManager::createOuterParameters: inconsistency!" );
- // for the master-detail links, where the detail field denoted a column name, we created an addtional ("artificial")
+ // for the master-detail links, where the detail field denoted a column name, we created an additional ("artificial")
// filter, and *appended* it to all other (potentially) existing filters of the row set. This means that the indexes
- // for the parameters resulting from the artifical filter should be larger than any other parameter index, and this
+ // for the parameters resulting from the artificial filter should be larger than any other parameter index, and this
// is what the assertion checks.
// If the assertion fails, then we would need another handling for the "parameters visited" flags, since they're based
// on parameter indexes *without* the artificial filter (because this filter is not visible from the outside).
@@ -561,7 +561,7 @@ namespace dbtools
Any aParamType, aScale, aValue;
// loop through all master fields. For each of them, get the respective column from the
- // parent , and forward it's current value as paramter value to the (inner) row set
+ // parent , and forward it's current value as parameter value to the (inner) row set
for ( sal_Int32 i = 0; i < nMasterLen; ++i, ++pMasterFields, ++pDetailFields )
{
// does the name denote a valid column in the parent?
diff --git a/connectivity/source/cpool/ZConnectionPool.hxx b/connectivity/source/cpool/ZConnectionPool.hxx
index 7160e2c81e1b..42b4ecaef6ef 100644
--- a/connectivity/source/cpool/ZConnectionPool.hxx
+++ b/connectivity/source/cpool/ZConnectionPool.hxx
@@ -68,7 +68,7 @@ namespace connectivity
typedef struct
{
TPooledConnections aConnections;
- sal_Int32 nALiveCount; // will be decremented everytime a time says to, when will reach zero the pool will be deleted
+ sal_Int32 nALiveCount; // will be decremented every time a time says to, when will reach zero the pool will be deleted
} TConnectionPool;
struct TDigestHolder
diff --git a/connectivity/source/cpool/ZPoolCollection.hxx b/connectivity/source/cpool/ZPoolCollection.hxx
index 970f3f5f892b..e1667aef594e 100644
--- a/connectivity/source/cpool/ZPoolCollection.hxx
+++ b/connectivity/source/cpool/ZPoolCollection.hxx
@@ -53,7 +53,7 @@ namespace connectivity
::com::sun::star::beans::XPropertyChangeListener
> OPoolCollection_Base;
- /// OPoolCollection: controll the whole connection pooling for oo
+ /// OPoolCollection: control the whole connection pooling for oo
class OPoolCollection : public OPoolCollection_Base
{
diff --git a/connectivity/source/drivers/ado/ADatabaseMetaDataResultSet.cxx b/connectivity/source/drivers/ado/ADatabaseMetaDataResultSet.cxx
index d5c6d53bf200..bc5107c26b02 100644
--- a/connectivity/source/drivers/ado/ADatabaseMetaDataResultSet.cxx
+++ b/connectivity/source/drivers/ado/ADatabaseMetaDataResultSet.cxx
@@ -147,7 +147,7 @@ Reference< ::com::sun::star::io::XInputStream > SAL_CALL ODatabaseMetaDataResult
WpADOField aField = ADOS::getField(m_pRecordSet,columnIndex);
if((aField.GetAttributes() & adFldLong) == adFldLong)
{
- //Copy the data only upto the Actual Size of Field.
+ //Copy the data only up to the Actual Size of Field.
sal_Int32 nSize = aField.GetActualSize();
Sequence<sal_Int8> aData(nSize);
long index = 0;
diff --git a/connectivity/source/drivers/ado/AResultSet.cxx b/connectivity/source/drivers/ado/AResultSet.cxx
index 9e9c5610ceb7..1f57671ca037 100644
--- a/connectivity/source/drivers/ado/AResultSet.cxx
+++ b/connectivity/source/drivers/ado/AResultSet.cxx
@@ -179,7 +179,7 @@ Reference< ::com::sun::star::io::XInputStream > SAL_CALL OResultSet::getBinarySt
if((aField.GetAttributes() & adFldLong) == adFldLong)
{
- //Copy the data only upto the Actual Size of Field.
+ //Copy the data only up to the Actual Size of Field.
sal_Int32 nSize = aField.GetActualSize();
Sequence<sal_Int8> aData(nSize);
long index = 0;
diff --git a/connectivity/source/drivers/dbase/DTable.cxx b/connectivity/source/drivers/dbase/DTable.cxx
index 130e8a42c223..29563a668d5a 100644
--- a/connectivity/source/drivers/dbase/DTable.cxx
+++ b/connectivity/source/drivers/dbase/DTable.cxx
@@ -2290,7 +2290,7 @@ void ODbaseTable::alterColumn(sal_Int32 index,
}
catch(const Exception&)
{
- OSL_ENSURE(0,"ODbaseTable::alterColumn: Exception occured!");
+ OSL_ENSURE(0,"ODbaseTable::alterColumn: Exception occurred!");
throw;
}
}
diff --git a/connectivity/source/drivers/evoab2/NDatabaseMetaData.cxx b/connectivity/source/drivers/evoab2/NDatabaseMetaData.cxx
index 67273c6bf533..64103fc885f6 100644
--- a/connectivity/source/drivers/evoab2/NDatabaseMetaData.cxx
+++ b/connectivity/source/drivers/evoab2/NDatabaseMetaData.cxx
@@ -628,7 +628,7 @@ sal_Bool SAL_CALL OEvoabDatabaseMetaData::allTablesAreSelectable( ) throw(SQLEx
// -------------------------------------------------------------------------
sal_Bool SAL_CALL OEvoabDatabaseMetaData::isReadOnly( ) throw(SQLException, RuntimeException)
{
- // For now definately read-only, no support for update/delete
+ // For now definitely read-only, no support for update/delete
return sal_True;
}
// -------------------------------------------------------------------------
diff --git a/connectivity/source/drivers/evoab2/NDriver.hxx b/connectivity/source/drivers/evoab2/NDriver.hxx
index 402ccb623c33..660c1e5d47f7 100644
--- a/connectivity/source/drivers/evoab2/NDriver.hxx
+++ b/connectivity/source/drivers/evoab2/NDriver.hxx
@@ -31,7 +31,7 @@
#include <osl/module.h>
#define EVOAB_EVOLUTION_SCHEMA "evolution"
-/*In Future, when seperate schema is required for ldap, groupwise*/
+/*In Future, when separate schema is required for ldap, groupwise*/
#define EVOAB_LDAP_SCHEMA "ldap"
#define EVOAB_GWISE_SCHEMA "groupwise"
diff --git a/connectivity/source/drivers/evoab2/NStatement.cxx b/connectivity/source/drivers/evoab2/NStatement.cxx
index adc22739e5b6..fbf212517f79 100644
--- a/connectivity/source/drivers/evoab2/NStatement.cxx
+++ b/connectivity/source/drivers/evoab2/NStatement.cxx
@@ -423,7 +423,7 @@ EBookQuery *OCommonStatement::whereAnalysis( const OSQLParseNode* parseTree )
m_pConnection->throwGenericSQLException(STR_QUERY_NOT_LIKE_TOO_COMPLEX,*this);
}
else if( (aMatchString.indexOf ( WILDCARD ) == aMatchString.lastIndexOf ( WILDCARD ) ) )
- { // One occurance of '%' matches...
+ { // One occurrence of '%' matches...
if ( aMatchString.indexOf ( WILDCARD ) == 0 )
pResult = createTest( aColumnName, E_BOOK_QUERY_ENDS_WITH, aMatchString.copy( 1 ) );
else if ( aMatchString.indexOf ( WILDCARD ) == aMatchString.getLength() - 1 )
diff --git a/connectivity/source/drivers/file/FPreparedStatement.cxx b/connectivity/source/drivers/file/FPreparedStatement.cxx
index e573b72ac47f..b742049ab7dc 100644
--- a/connectivity/source/drivers/file/FPreparedStatement.cxx
+++ b/connectivity/source/drivers/file/FPreparedStatement.cxx
@@ -423,7 +423,7 @@ Reference<XResultSet> OPreparedStatement::initResultSet()
m_pResultSet->clear();
Reference<XResultSet> xRs(m_pResultSet);
- // check if we got enough paramters
+ // check if we got enough parameters
if ( (m_aParameterRow.isValid() && ( m_aParameterRow->get().size() -1 ) < m_xParamColumns->get().size()) ||
(m_xParamColumns.isValid() && !m_aParameterRow.isValid() && !m_aParameterRow->get().empty()) )
m_pConnection->throwGenericSQLException(STR_INVALID_PARA_COUNT,*this);
diff --git a/connectivity/source/drivers/jdbc/DatabaseMetaData.cxx b/connectivity/source/drivers/jdbc/DatabaseMetaData.cxx
index 6cffc1afd322..37bfd7b3d8ae 100644
--- a/connectivity/source/drivers/jdbc/DatabaseMetaData.cxx
+++ b/connectivity/source/drivers/jdbc/DatabaseMetaData.cxx
@@ -127,7 +127,7 @@ Reference< XResultSet > SAL_CALL java_sql_DatabaseMetaData::getTables(
// Java-Call absetzen
static jmethodID mID(NULL);
obtainMethodId(t.pEnv, cMethodName,cSignature, mID);
- OSL_VERIFY_RES( !isExceptionOccured(t.pEnv,sal_True),"Exception occured!");
+ OSL_VERIFY_RES( !isExceptionOccured(t.pEnv,sal_True),"Exception occurred!");
jvalue args[4];
args[3].l = 0;
@@ -135,7 +135,7 @@ Reference< XResultSet > SAL_CALL java_sql_DatabaseMetaData::getTables(
if ( typeFilterCount )
{
jobjectArray pObjArray = static_cast< jobjectArray >( t.pEnv->NewObjectArray( (jsize)typeFilterCount, java_lang_String::st_getMyClass(), 0 ) );
- OSL_VERIFY_RES( !isExceptionOccured( t.pEnv, sal_True ), "Exception occured!" );
+ OSL_VERIFY_RES( !isExceptionOccured( t.pEnv, sal_True ), "Exception occurred!" );
const ::rtl::OUString* typeFilter = _types.getConstArray();
bool bIncludeAllTypes = false;
for ( sal_Int32 i=0; i<typeFilterCount; ++i, ++typeFilter )
@@ -147,7 +147,7 @@ Reference< XResultSet > SAL_CALL java_sql_DatabaseMetaData::getTables(
}
jstring aT = convertwchar_tToJavaString( t.pEnv, *typeFilter );
t.pEnv->SetObjectArrayElement( pObjArray, (jsize)i, aT );
- OSL_VERIFY_RES( !isExceptionOccured( t.pEnv, sal_True ), "Exception occured!" );
+ OSL_VERIFY_RES( !isExceptionOccured( t.pEnv, sal_True ), "Exception occurred!" );
}
if ( bIncludeAllTypes )
@@ -155,7 +155,7 @@ Reference< XResultSet > SAL_CALL java_sql_DatabaseMetaData::getTables(
// the SDBC API allows to pass "%" as table type filter, but in JDBC, "all table types"
// is represented by the table type being <null/>
t.pEnv->DeleteLocalRef( pObjArray );
- OSL_VERIFY_RES( !isExceptionOccured( t.pEnv, sal_True ), "Exception occured!" );
+ OSL_VERIFY_RES( !isExceptionOccured( t.pEnv, sal_True ), "Exception occurred!" );
}
else
{
@@ -183,23 +183,23 @@ Reference< XResultSet > SAL_CALL java_sql_DatabaseMetaData::getTables(
if ( aCatalogFilter.hasValue() )
{
t.pEnv->DeleteLocalRef((jstring)args[0].l);
- OSL_VERIFY_RES( !isExceptionOccured( t.pEnv, sal_True ), "Exception occured!" );
+ OSL_VERIFY_RES( !isExceptionOccured( t.pEnv, sal_True ), "Exception occurred!" );
}
if(args[1].l)
{
t.pEnv->DeleteLocalRef((jstring)args[1].l);
- OSL_VERIFY_RES( !isExceptionOccured( t.pEnv, sal_True ), "Exception occured!" );
+ OSL_VERIFY_RES( !isExceptionOccured( t.pEnv, sal_True ), "Exception occurred!" );
}
if(tableNamePattern.getLength())
{
t.pEnv->DeleteLocalRef((jstring)args[2].l);
- OSL_VERIFY_RES( !isExceptionOccured( t.pEnv, sal_True ), "Exception occured!" );
+ OSL_VERIFY_RES( !isExceptionOccured( t.pEnv, sal_True ), "Exception occurred!" );
}
//for(INT16 i=0;i<len;i++)
if ( args[3].l )
{
t.pEnv->DeleteLocalRef( (jobjectArray)args[3].l );
- OSL_VERIFY_RES( !isExceptionOccured( t.pEnv, sal_True ), "Exception occured!" );
+ OSL_VERIFY_RES( !isExceptionOccured( t.pEnv, sal_True ), "Exception occurred!" );
}
if ( jThrow )
diff --git a/connectivity/source/drivers/jdbc/JDriver.cxx b/connectivity/source/drivers/jdbc/JDriver.cxx
index 8b788b708b79..e499e0c9ba43 100644
--- a/connectivity/source/drivers/jdbc/JDriver.cxx
+++ b/connectivity/source/drivers/jdbc/JDriver.cxx
@@ -111,7 +111,7 @@ Reference< XConnection > SAL_CALL java_sql_Driver::connect( const ::rtl::OUStrin
java_sql_Connection* pConnection = new java_sql_Connection( *this );
xOut = pConnection;
if ( !pConnection->construct(url,info) )
- xOut.clear(); // an error occured and the java driver didn't throw an exception
+ xOut.clear(); // an error occurred and the java driver didn't throw an exception
else
m_aLogger.log( LogLevel::INFO, STR_LOG_DRIVER_SUCCESS );
}
diff --git a/connectivity/source/drivers/kab/KStatement.cxx b/connectivity/source/drivers/kab/KStatement.cxx
index 5042098e51ff..bfc10d17ded3 100644
--- a/connectivity/source/drivers/kab/KStatement.cxx
+++ b/connectivity/source/drivers/kab/KStatement.cxx
@@ -522,7 +522,7 @@ sal_Bool KabCommonStatement::convertFastPropertyValue(
// -------------------------------------------------------------------------
void KabCommonStatement::setFastPropertyValue_NoBroadcast(sal_Int32 nHandle,const Any&) throw (Exception)
{
- // set the value to whatever is nescessary
+ // set the value to whatever is necessary
switch (nHandle)
{
case PROPERTY_ID_QUERYTIMEOUT:
diff --git a/connectivity/source/drivers/macab/MacabRecords.cxx b/connectivity/source/drivers/macab/MacabRecords.cxx
index ba1b9b900769..fb63663ff155 100644
--- a/connectivity/source/drivers/macab/MacabRecords.cxx
+++ b/connectivity/source/drivers/macab/MacabRecords.cxx
@@ -934,7 +934,7 @@ void MacabRecords::insertPropertyIntoMacabRecord(const ABPropertyType _propertyT
* scalar type, an error, or an unknown type are found.
* Because of that, the following checks only occur for this type.
* We store whether we have successfully placed this property
- * into the MacabRecord (or whether an unrecoverable error occured).
+ * into the MacabRecord (or whether an unrecoverable error occurred).
* Then, we try over and over again to place the property into the
* record. There are three possible results:
* 1) Success!
diff --git a/connectivity/source/drivers/macab/MacabStatement.cxx b/connectivity/source/drivers/macab/MacabStatement.cxx
index 9f4d38b33130..a85c715eca22 100644
--- a/connectivity/source/drivers/macab/MacabStatement.cxx
+++ b/connectivity/source/drivers/macab/MacabStatement.cxx
@@ -549,7 +549,7 @@ sal_Bool MacabCommonStatement::convertFastPropertyValue(
// -------------------------------------------------------------------------
void MacabCommonStatement::setFastPropertyValue_NoBroadcast(sal_Int32 nHandle,const Any&) throw (Exception)
{
- // set the value to whatever is nescessary
+ // set the value to whatever is necessary
switch (nHandle)
{
case PROPERTY_ID_QUERYTIMEOUT:
diff --git a/connectivity/source/inc/TSkipDeletedSet.hxx b/connectivity/source/inc/TSkipDeletedSet.hxx
index 872588772419..ae3af24a1e17 100644
--- a/connectivity/source/inc/TSkipDeletedSet.hxx
+++ b/connectivity/source/inc/TSkipDeletedSet.hxx
@@ -56,7 +56,7 @@ namespace connectivity
/**
skipDeleted moves the resultset to the position defined by the parameters
- it garantees that the row isn't deleted
+ it guarantees that the row isn't deleted
@param
IResultSetHelper::Movement _eCursorPosition in which direction the resultset should be moved
sal_Int32 _nOffset the position relativ to the movement
diff --git a/connectivity/source/inc/ado/ADatabaseMetaDataResultSet.hxx b/connectivity/source/inc/ado/ADatabaseMetaDataResultSet.hxx
index 407e8d8b8670..93ff948c30eb 100644
--- a/connectivity/source/inc/ado/ADatabaseMetaDataResultSet.hxx
+++ b/connectivity/source/inc/ado/ADatabaseMetaDataResultSet.hxx
@@ -63,7 +63,7 @@ namespace connectivity
public ::cppu::OPropertySetHelper,
public ::comphelper::OPropertyArrayUsageHelper<ODatabaseMetaDataResultSet>
{
- ::std::vector<sal_Int32> m_aColMapping; // pos 0 is unused so we don't have to decrement 1 everytime
+ ::std::vector<sal_Int32> m_aColMapping; // pos 0 is unused so we don't have to decrement 1 every time
::std::map<sal_Int32, TInt2IntMap > m_aValueRange;
::std::map<sal_Int32, TInt2IntMap >::iterator m_aValueRangeIter;
diff --git a/connectivity/source/inc/file/FNumericFunctions.hxx b/connectivity/source/inc/file/FNumericFunctions.hxx
index d9bb3cf67b67..2230b88e345c 100644
--- a/connectivity/source/inc/file/FNumericFunctions.hxx
+++ b/connectivity/source/inc/file/FNumericFunctions.hxx
@@ -174,7 +174,7 @@ namespace connectivity
> SELECT LOG(-2);
-> NULL
- If called with two parameters, this function returns the logarithm of X for an arbitary base B:
+ If called with two parameters, this function returns the logarithm of X for an arbitrary base B:
> SELECT LOG(2,65536);
-> 16.000000
diff --git a/connectivity/source/inc/file/FResultSet.hxx b/connectivity/source/inc/file/FResultSet.hxx
index 934ced70917c..6bdedc72d4d4 100644
--- a/connectivity/source/inc/file/FResultSet.hxx
+++ b/connectivity/source/inc/file/FResultSet.hxx
@@ -93,7 +93,7 @@ namespace connectivity
protected:
::std::vector<void*> m_aBindVector;
- ::std::vector<sal_Int32> m_aColMapping; // pos 0 is unused so we don't have to decrement 1 everytime
+ ::std::vector<sal_Int32> m_aColMapping; // pos 0 is unused so we don't have to decrement 1 every time
::std::vector<sal_Int32> m_aOrderbyColumnNumber;
::std::vector<TAscendingOrder> m_aOrderbyAscending;
diff --git a/connectivity/source/inc/file/FStatement.hxx b/connectivity/source/inc/file/FStatement.hxx
index 01c69aed3193..f7516a59a60f 100644
--- a/connectivity/source/inc/file/FStatement.hxx
+++ b/connectivity/source/inc/file/FStatement.hxx
@@ -70,7 +70,7 @@ namespace connectivity
{
protected:
- ::std::vector<sal_Int32> m_aColMapping; // pos 0 is unused so we don't have to decrement 1 everytime
+ ::std::vector<sal_Int32> m_aColMapping; // pos 0 is unused so we don't have to decrement 1 every time
::std::vector<sal_Int32> m_aParameterIndexes; // maps the parameter index to column index
::std::vector<sal_Int32> m_aOrderbyColumnNumber;
::std::vector<TAscendingOrder> m_aOrderbyAscending;
diff --git a/connectivity/source/inc/flat/ETable.hxx b/connectivity/source/inc/flat/ETable.hxx
index 9525ea089711..0042e2e3d3b3 100644
--- a/connectivity/source/inc/flat/ETable.hxx
+++ b/connectivity/source/inc/flat/ETable.hxx
@@ -44,7 +44,7 @@ namespace connectivity
class OFlatTable : public OFlatTable_BASE
{
- // maps a row postion to a file position
+ // maps a row position to a file position
TRowPositionsInFile m_aFilePosToEndLinePos;
::std::map<sal_Int32, TRowPositionsInFile::iterator>
m_aRowPosToFilePos;
diff --git a/connectivity/source/inc/java/ContextClassLoader.hxx b/connectivity/source/inc/java/ContextClassLoader.hxx
index aa6493fa1a1b..3a178c9feb94 100644
--- a/connectivity/source/inc/java/ContextClassLoader.hxx
+++ b/connectivity/source/inc/java/ContextClassLoader.hxx
@@ -48,7 +48,7 @@ namespace connectivity { namespace jdbc
{
public:
/** creates the instance. If isActive returns <FALSE/> afterwards, then an exception
- happend in the JVM, which should be raised as UNO exception by the caller
+ happened in the JVM, which should be raised as UNO exception by the caller
@param environment
the current JNI environment
diff --git a/connectivity/source/inc/java/tools.hxx b/connectivity/source/inc/java/tools.hxx
index b9a3e1871f87..1bb1bb754e74 100644
--- a/connectivity/source/inc/java/tools.hxx
+++ b/connectivity/source/inc/java/tools.hxx
@@ -70,13 +70,13 @@ namespace connectivity
::com::sun::star::uno::Reference< ::com::sun::star::container::XNameAccess > Map2XNameAccess(JNIEnv *pEnv,jobject _pMap);
jobject convertTypeMapToJavaMap(JNIEnv *pEnv,const ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameAccess > & _rMap);
- /** return if a exception occured
+ /** return if a exception occurred
@param pEnv
The native java env
@param _bClear
<TRUE/> if the execption should be cleared
@return
- <TRUE/> if an exception is occured
+ <TRUE/> if an exception is occurred
*/
sal_Bool isExceptionOccured(JNIEnv *pEnv,sal_Bool _bClear);
diff --git a/connectivity/source/inc/odbc/ODatabaseMetaDataResultSet.hxx b/connectivity/source/inc/odbc/ODatabaseMetaDataResultSet.hxx
index 22fdfe32085a..f7bde3ccd8a9 100644
--- a/connectivity/source/inc/odbc/ODatabaseMetaDataResultSet.hxx
+++ b/connectivity/source/inc/odbc/ODatabaseMetaDataResultSet.hxx
@@ -63,7 +63,7 @@ namespace connectivity
public ::cppu::OPropertySetHelper,
public ::comphelper::OPropertyArrayUsageHelper<ODatabaseMetaDataResultSet>
{
- ::connectivity::TIntVector m_aColMapping; // pos 0 is unused so we don't have to decrement 1 everytime
+ ::connectivity::TIntVector m_aColMapping; // pos 0 is unused so we don't have to decrement 1 every time
::std::map<sal_Int32, ::connectivity::TInt2IntMap > m_aValueRange;
::std::map<sal_Int32, ::connectivity::TString2IntMap > m_aStrValueRange;
diff --git a/connectivity/source/parse/sqlnode.cxx b/connectivity/source/parse/sqlnode.cxx
index 6306fcbf76ca..e828b45444c4 100644
--- a/connectivity/source/parse/sqlnode.cxx
+++ b/connectivity/source/parse/sqlnode.cxx
@@ -515,7 +515,7 @@ void OSQLParseNode::impl_parseNodeToString_throw(::rtl::OUStringBuffer& rString,
}
// ok we found the field, if the following node is the
- // comparision operator '=' we filter it as well
+ // comparison operator '=' we filter it as well
if (bFilter)
{
if (SQL_ISRULE(this, comparison_predicate))
@@ -696,7 +696,7 @@ void OSQLParseNode::impl_parseLikeNodeToString_throw( ::rtl::OUStringBuffer& rSt
}
catch ( Exception& )
{
- OSL_ENSURE( false, "OSQLParseNode::impl_parseLikeNodeToString_throw Exception occured!" );
+ OSL_ENSURE( false, "OSQLParseNode::impl_parseLikeNodeToString_throw Exception occurred!" );
}
if ( !m_aChildren[0]->isLeaf() )
{
diff --git a/connectivity/workben/skeleton/SResultSet.hxx b/connectivity/workben/skeleton/SResultSet.hxx
index cd47cd4dc761..b819d56a7e5a 100644
--- a/connectivity/workben/skeleton/SResultSet.hxx
+++ b/connectivity/workben/skeleton/SResultSet.hxx
@@ -74,7 +74,7 @@ namespace connectivity
protected:
TVoidVector m_aBindVector;
::std::vector<sal_Int32> m_aLengthVector;
- ::std::vector<sal_Int32> m_aColMapping; // pos 0 is unused so we don't have to decrement 1 everytime
+ ::std::vector<sal_Int32> m_aColMapping; // pos 0 is unused so we don't have to decrement 1 every time
::std::vector< ORowSetValue> m_aRow; // only used when SQLGetData can't be called in any order
OStatement_Base* m_pStatement;
::com::sun::star::uno::WeakReferenceHelper m_aStatement;
diff --git a/connectivity/workben/skeleton/how_to_write_a_driver.txt b/connectivity/workben/skeleton/how_to_write_a_driver.txt
index ad4ab99bad2c..30baa17700f7 100644
--- a/connectivity/workben/skeleton/how_to_write_a_driver.txt
+++ b/connectivity/workben/skeleton/how_to_write_a_driver.txt
@@ -27,7 +27,7 @@ Pre implementation steps
- copy all files from connectivity/workben/skeleton into your new created directory under
connectivity/source/drivers and rename the first char of the files to one which isn't used so far
( please have a look at the other drivers )
-- search all occurances of skeleton and replace them to a name which you prefer
+- search all occurrences of skeleton and replace them to a name which you prefer
1. Implement a class called driver or modify the existing skeleton -> have a look at SDriver.?xx
2. Implement a class called connection -> have a look at SConnection.?xx
diff --git a/cosv/inc/cosv/persist.hxx b/cosv/inc/cosv/persist.hxx
index 2a17ff3742ef..27d6f7c8f402 100644
--- a/cosv/inc/cosv/persist.hxx
+++ b/cosv/inc/cosv/persist.hxx
@@ -60,7 +60,7 @@ class Persistent
virtual ~Persistent() {}
const Path & MyPath() const;
- /// @return all pathes without completing delimiter, even directories.
+ /// @return all paths without completing delimiter, even directories.
const char * StrPath() const;
bool Exists() const;
diff --git a/cosv/inc/cosv/ploc_dir.hxx b/cosv/inc/cosv/ploc_dir.hxx
index 1d4fb9900c42..eac7f7cc7522 100644
--- a/cosv/inc/cosv/ploc_dir.hxx
+++ b/cosv/inc/cosv/ploc_dir.hxx
@@ -86,7 +86,7 @@ class Directory : public Persistent
const char * i_sFilter = "*.*",
E_Recursivity i_eRecursivity = flat ) const;
private:
- // Interface Peristent:
+ // Interface Persistent:
virtual const Path &
inq_MyPath() const;
diff --git a/cosv/inc/cosv/tpl/dyn.hxx b/cosv/inc/cosv/tpl/dyn.hxx
index e03408329a68..2489c893a655 100644
--- a/cosv/inc/cosv/tpl/dyn.hxx
+++ b/cosv/inc/cosv/tpl/dyn.hxx
@@ -35,7 +35,7 @@ namespace csv
deleted in its D'tor.
Dyn's main purpose is for class members on the heap:
- You can't forget to delete them in the D'tor. Constness will be transfered
+ You can't forget to delete them in the D'tor. Constness will be transferred
to the hold object.
Dyn forbids the CopyC'tor and operator=(). So you can't incidentally
diff --git a/cppu/inc/uno/threadpool.h b/cppu/inc/uno/threadpool.h
index 835afb5b6b81..a72d15d65df4 100644
--- a/cppu/inc/uno/threadpool.h
+++ b/cppu/inc/uno/threadpool.h
@@ -64,7 +64,7 @@ void SAL_CALL uno_getIdOfCurrentThread( sal_Sequence **ppThreadId )
/**
- If the internal refcount drops to zero, the association betwen threadId and
+ If the internal refcount drops to zero, the association between threadId and
thread is broken.
*/
void SAL_CALL uno_releaseIdFromCurrentThread()
@@ -117,7 +117,7 @@ void SAL_CALL
uno_threadpool_detach( uno_ThreadPool hPool ) SAL_THROW_EXTERN_C();
/**
- Puts a job into the pool. A job may eiter be a request or a reply
+ Puts a job into the pool. A job may either be a request or a reply
(replies have a 0 in the doRequest parameter). This function is non-blocking.
A request may either be synchronous or asynchronous.
diff --git a/cppu/source/LogBridge/LogBridge.cxx b/cppu/source/LogBridge/LogBridge.cxx
index 9c1ec2e4b263..2b0a7fa4fee8 100644
--- a/cppu/source/LogBridge/LogBridge.cxx
+++ b/cppu/source/LogBridge/LogBridge.cxx
@@ -242,7 +242,7 @@ void LogProbe(
rtl_logfile_longTrace( "} LogBridge () %s",sTemp.getStr());
if ( ppException && *ppException )
{
- rtl_logfile_trace( " excption occured : ");
+ rtl_logfile_trace( " exception occurred : ");
typelib_TypeDescription * pElementTypeDescr = 0;
TYPELIB_DANGER_GET( &pElementTypeDescr, (*ppException)->pType );
const ::rtl::OString sValue( ::rtl::OUStringToOString(pElementTypeDescr->pTypeName,osl_getThreadTextEncoding()));
diff --git a/cppu/source/helper/purpenv/helper_purpenv_Proxy.cxx b/cppu/source/helper/purpenv/helper_purpenv_Proxy.cxx
index 73b5cb263c08..c09c5516a7fb 100644
--- a/cppu/source/helper/purpenv/helper_purpenv_Proxy.cxx
+++ b/cppu/source/helper/purpenv/helper_purpenv_Proxy.cxx
@@ -488,7 +488,7 @@ void Proxy::dispatch(typelib_TypeDescriptionReference * pReturnTypeRef,
*ppException = 0;
}
- else // exception occured
+ else // exception occurred
{
for (sal_Int32 nPos = 0; nPos < nParams; ++ nPos)
{
diff --git a/cppu/source/threadpool/threadpool.hxx b/cppu/source/threadpool/threadpool.hxx
index 1b3ed0309844..b7056ed145e1 100644
--- a/cppu/source/threadpool/threadpool.hxx
+++ b/cppu/source/threadpool/threadpool.hxx
@@ -115,7 +115,7 @@ namespace cppu_threadpool {
void * enter( const ByteSequence &aThreadId, sal_Int64 nDisposeId );
/********
- * @return true, if queue could be succesfully revoked.
+ * @return true, if queue could be successfully revoked.
********/
sal_Bool revokeQueue( const ByteSequence & aThreadId , sal_Bool bAsynchron );
diff --git a/cppu/source/uno/data.cxx b/cppu/source/uno/data.cxx
index d23f61e7901d..2465c47805b1 100644
--- a/cppu/source/uno/data.cxx
+++ b/cppu/source/uno/data.cxx
@@ -104,7 +104,7 @@ void * binuno_queryInterface( void * pUnoI, typelib_TypeDescriptionReference * p
#if OSL_DEBUG_LEVEL > 1
OUStringBuffer buf( 128 );
buf.appendAscii(
- RTL_CONSTASCII_STRINGPARAM("### exception occured querying for interface ") );
+ RTL_CONSTASCII_STRINGPARAM("### exception occurred querying for interface ") );
buf.append( * reinterpret_cast< OUString const * >( &pDestType->pTypeName ) );
buf.appendAscii( RTL_CONSTASCII_STRINGPARAM(": [") );
buf.append( * reinterpret_cast< OUString const * >( &pExc->pType->pTypeName ) );
diff --git a/cppu/source/uno/lbmap.cxx b/cppu/source/uno/lbmap.cxx
index 4b19b70aa701..55c85e75782b 100644
--- a/cppu/source/uno/lbmap.cxx
+++ b/cppu/source/uno/lbmap.cxx
@@ -253,7 +253,7 @@ static void SAL_CALL mediate_mapInterface(
OSL_ENSURE( 0 != pTo, "### cannot release out interface: leaking!" );
if (0 != pTo)
(*pTo->releaseInterface)( pTo, pOut );
- *ppOut = 0; // set to 0 anyway, because mapping was not successfull!
+ *ppOut = 0; // set to 0 anyway, because mapping was not successful!
}
}
else
diff --git a/cppuhelper/inc/cppuhelper/compbase_ex.hxx b/cppuhelper/inc/cppuhelper/compbase_ex.hxx
index 2de0d90e9a60..847fdb7483cc 100644
--- a/cppuhelper/inc/cppuhelper/compbase_ex.hxx
+++ b/cppuhelper/inc/cppuhelper/compbase_ex.hxx
@@ -41,7 +41,7 @@ class SAL_NO_VTABLE WeakComponentImplHelperBase
, public ::com::sun::star::lang::XComponent
{
protected:
- /** boradcast helper for disposing events
+ /** broadcast helper for disposing events
*/
::cppu::OBroadcastHelper rBHelper;
diff --git a/cppuhelper/inc/cppuhelper/propshlp.hxx b/cppuhelper/inc/cppuhelper/propshlp.hxx
index 10a6d6e97045..813ca16fe465 100644
--- a/cppuhelper/inc/cppuhelper/propshlp.hxx
+++ b/cppuhelper/inc/cppuhelper/propshlp.hxx
@@ -60,7 +60,7 @@ public:
{}
/**
- Folowing the rule, the first virtual method impies the virtual destructor.
+ Following the rule, the first virtual method impies the virtual destructor.
*/
virtual ~IPropertyArrayHelper();
@@ -317,7 +317,7 @@ public:
Method to be called by OPropertySetHelper::fire.
@param bIgnoreRuntimeExceptionsWhileFiring
- indicates whether occuring RuntimeExceptions shall be
+ indicates whether occurring RuntimeExceptions shall be
ignored when firing notifications
@see OPropertySetHelper::fire
@@ -365,7 +365,7 @@ public:
of this object. Stored in the variable rBHelper.
@param bIgnoreRuntimeExceptionsWhileFiring
- indicates whether occuring RuntimeExceptions will be
+ indicates whether occurring RuntimeExceptions will be
ignored when firing notifications (vetoableChange((),
propertyChange()) to listeners.
PropertyVetoExceptions may still be thrown.
@@ -388,7 +388,7 @@ public:
additional event notifier
@param bIgnoreRuntimeExceptionsWhileFiring
- indicates whether occuring RuntimeExceptions will be
+ indicates whether occurring RuntimeExceptions will be
ignored when firing notifications (vetoableChange((),
propertyChange()) to listeners.
PropertyVetoExceptions may still be thrown.
diff --git a/cppuhelper/source/bootstrap.cxx b/cppuhelper/source/bootstrap.cxx
index 07c111604c5c..3ada9e9d4a43 100644
--- a/cppuhelper/source/bootstrap.cxx
+++ b/cppuhelper/source/bootstrap.cxx
@@ -609,7 +609,7 @@ Reference< XComponentContext > SAL_CALL bootstrap()
case osl_Process_E_NotFound:
throw BootstrapException( OUSTR( "image not found!" ) );
case osl_Process_E_TimedOut:
- throw BootstrapException( OUSTR( "timout occured!" ) );
+ throw BootstrapException( OUSTR( "timeout occurred!" ) );
case osl_Process_E_NoPermission:
throw BootstrapException( OUSTR( "permission denied!" ) );
case osl_Process_E_Unknown:
diff --git a/cppuhelper/source/component.cxx b/cppuhelper/source/component.cxx
index 16b7f7a24d31..d4e6ff9d84ec 100644
--- a/cppuhelper/source/component.cxx
+++ b/cppuhelper/source/component.cxx
@@ -175,7 +175,7 @@ void OComponentHelper::dispose()
EventObject aEvt;
aEvt.Source = xSource;
// inform all listeners to release this object
- // The listener container are automaticly cleared
+ // The listener container are automatically cleared
rBHelper.aLC.disposeAndClear( aEvt );
// notify subclasses to do their dispose
disposing();
diff --git a/cppuhelper/source/component_context.cxx b/cppuhelper/source/component_context.cxx
index 9fcca3da44ad..a2067c895308 100644
--- a/cppuhelper/source/component_context.cxx
+++ b/cppuhelper/source/component_context.cxx
@@ -581,7 +581,7 @@ Any ComponentContext::lookupMap( OUString const & rName )
#if OSL_DEBUG_LEVEL > 0
::fprintf(
stderr,
- "### omitting context for service instanciation!\n" );
+ "### omitting context for service instantiation!\n" );
#endif
xInstance = args.getLength()
? xFac2->createInstanceWithArguments( args )
@@ -611,7 +611,7 @@ Any ComponentContext::lookupMap( OUString const & rName )
Any caught( getCaughtException() );
OUStringBuffer buf;
buf.appendAscii( RTL_CONSTASCII_STRINGPARAM(
- "exception occured raising singleton \"") );
+ "exception occurred raising singleton \"") );
buf.append( rName );
buf.appendAscii( RTL_CONSTASCII_STRINGPARAM("\": ") );
buf.append( exc.Message );
diff --git a/cppuhelper/source/findsofficepath.c b/cppuhelper/source/findsofficepath.c
index 1600a359525e..d915bec3df6a 100644
--- a/cppuhelper/source/findsofficepath.c
+++ b/cppuhelper/source/findsofficepath.c
@@ -40,7 +40,7 @@
* @param subKeyName name of the subkey to open
*
* @return the installation path or NULL, if no installation was found or
- * if an error occured
+ * if an error occurred
*/
static char* getPathFromRegistryKey( HKEY hroot, const char* subKeyName )
{
@@ -82,7 +82,7 @@ static char* getPathFromRegistryKey( HKEY hroot, const char* subKeyName )
* Gets the installation path from the Windows Registry.
*
* @return the installation path or NULL, if no installation was found or
- * if an error occured
+ * if an error occurred
*/
static char* platformSpecific()
{
@@ -125,7 +125,7 @@ static char* platformSpecific()
* is in one of the directories listed in the PATH environment variable.</p>
*
* @return the installation path or NULL, if no installation was found or
- * if an error occured
+ * if an error occurred
*/
static char* platformSpecific()
{
diff --git a/cppuhelper/source/propshlp.cxx b/cppuhelper/source/propshlp.cxx
index 3863207e50d3..cb050797f4ca 100644
--- a/cppuhelper/source/propshlp.cxx
+++ b/cppuhelper/source/propshlp.cxx
@@ -234,7 +234,7 @@ void OPropertySetHelper::disposing() SAL_THROW( () )
aEvt.Source = rSource;
// inform all listeners to reelease this object
- // The listener container are automaticly cleared
+ // The listener container are automatically cleared
aBoundLC.disposeAndClear( aEvt );
aVetoableLC.disposeAndClear( aEvt );
}
@@ -329,7 +329,7 @@ void OPropertySetHelper::removePropertyChangeListener(
{
MutexGuard aGuard( rBHelper.rMutex );
OSL_ENSURE( !rBHelper.bDisposed, "object is disposed" );
- // all listeners are automaticly released in a dispose call
+ // all listeners are automatically released in a dispose call
if( !rBHelper.bInDispose && !rBHelper.bDisposed )
{
if( rPropertyName.getLength() )
@@ -409,7 +409,7 @@ void OPropertySetHelper::removeVetoableChangeListener(
{
MutexGuard aGuard( rBHelper.rMutex );
OSL_ENSURE( !rBHelper.bDisposed, "object is disposed" );
- // all listeners are automaticly released in a dispose call
+ // all listeners are automatically released in a dispose call
if( !rBHelper.bInDispose && !rBHelper.bDisposed )
{
if( rPropertyName.getLength() )
diff --git a/cppuhelper/source/servicefactory.cxx b/cppuhelper/source/servicefactory.cxx
index 02339c1e9054..ed30ad88dee4 100644
--- a/cppuhelper/source/servicefactory.cxx
+++ b/cppuhelper/source/servicefactory.cxx
@@ -125,7 +125,7 @@ Reference< registry::XSimpleRegistry > SAL_CALL createSimpleRegistry(
#if OSL_DEBUG_LEVEL > 0
OString cstr_msg(
OUStringToOString( exc.Message, RTL_TEXTENCODING_ASCII_US ) );
- OSL_ENSURE( !"### exception occured:", cstr_msg.getStr() );
+ OSL_ENSURE( !"### exception occurred:", cstr_msg.getStr() );
#else
(void) exc; // avoid warning about unused variable
#endif
@@ -156,7 +156,7 @@ Reference< registry::XSimpleRegistry > SAL_CALL createNestedRegistry(
#if OSL_DEBUG_LEVEL > 0
OString cstr_msg(
OUStringToOString( exc.Message, RTL_TEXTENCODING_ASCII_US ) );
- OSL_ENSURE( !"### exception occured:", cstr_msg.getStr() );
+ OSL_ENSURE( !"### exception occurred:", cstr_msg.getStr() );
#else
(void) exc; // avoid warning about unused variable
#endif
diff --git a/cppuhelper/test/testhelper.cxx b/cppuhelper/test/testhelper.cxx
index 09694ad9b318..4f0131873b4b 100644
--- a/cppuhelper/test/testhelper.cxx
+++ b/cppuhelper/test/testhelper.cxx
@@ -92,7 +92,7 @@ SAL_IMPLEMENT_MAIN()
catch (Exception & exc)
{
OString cstr_msg( OUStringToOString( exc.Message, RTL_TEXTENCODING_ASCII_US ) );
- OSL_ENSURE( ! "exception occured: ", cstr_msg.getStr() );
+ OSL_ENSURE( ! "exception occurred: ", cstr_msg.getStr() );
}
printf( "Test finished\n" );
diff --git a/cpputools/source/registercomponent/registercomponent.cxx b/cpputools/source/registercomponent/registercomponent.cxx
index d4b05601d4b5..f9bd2482a981 100644
--- a/cpputools/source/registercomponent/registercomponent.cxx
+++ b/cpputools/source/registercomponent/registercomponent.cxx
@@ -134,7 +134,7 @@ static void usingRegisterImpl()
fprintf(stderr, " -c locationUrls\n"
" the location of a component (a url to a shared\n"
" library or a absolute url to a .jar file) or a\n"
- " list of urls seperated by ';' or ' '. Note if a\n"
+ " list of urls separated by ';' or ' '. Note if a\n"
" list of urls is specified, the components must\n"
" all need the same loader (quoting is possible with\n"
" \\ or \"\").\n");
diff --git a/crashrep/source/unx/main.cxx b/crashrep/source/unx/main.cxx
index 86c9ac50265c..28c4052a9799 100644
--- a/crashrep/source/unx/main.cxx
+++ b/crashrep/source/unx/main.cxx
@@ -144,7 +144,7 @@ static string xml_encode( const string &rString )
string temp = rString;
string::size_type pos = 0;
- // First replace all occurences of '&' because it may occur in further
+ // First replace all occurrences of '&' because it may occur in further
// encoded chardters too
for( pos = 0; (pos = temp.find( '&', pos )) != string::npos; pos += 4 )
diff --git a/crashrep/source/win32/soreport.cpp b/crashrep/source/win32/soreport.cpp
index 8521a2ce2d66..4813be286369 100644
--- a/crashrep/source/win32/soreport.cpp
+++ b/crashrep/source/win32/soreport.cpp
@@ -565,7 +565,7 @@ static string xml_encode( const string &rString )
string temp = rString;
string::size_type pos = 0;
- // First replace all occurences of '&' because it may occur in further
+ // First replace all occurrences of '&' because it may occur in further
// encoded chardters too
for( pos = 0; (pos = temp.find( '&', pos )) != string::npos; pos += 4 )
diff --git a/cui/source/customize/acccfg.cxx b/cui/source/customize/acccfg.cxx
index 1b3e2e9355c2..23893e9b4f2a 100644
--- a/cui/source/customize/acccfg.cxx
+++ b/cui/source/customize/acccfg.cxx
@@ -615,7 +615,7 @@ void SfxAccCfgLBoxString_Impl::Paint(const Point& aPos ,
sal_uInt16 /*nFlags*/,
SvLBoxEntry* pEntry )
{
- /*/ ??? realy needed !!!
+ /*/ ??? really needed !!!
Font aOldFont(rDevice.GetFont());
Font aNewFont(aOldFont );
rDevice.SetFont( aFont );
diff --git a/cui/source/customize/cfg.cxx b/cui/source/customize/cfg.cxx
index 277a2c70c0b6..5d504dfdc913 100644
--- a/cui/source/customize/cfg.cxx
+++ b/cui/source/customize/cfg.cxx
@@ -4209,7 +4209,7 @@ void ToolbarSaveInData::Reset()
}
catch ( uno::Exception& )
{
- // error occured removing the settings
+ // error occurred removing the settings
// TODO - add error dialog in future?
}
}
@@ -4402,7 +4402,7 @@ void ToolbarSaveInData::RemoveToolbar( SvxConfigEntry* pToolbar )
}
catch ( uno::Exception& )
{
- // error occured removing the settings
+ // error occurred removing the settings
}
}
diff --git a/cui/source/dialogs/SpellDialog.cxx b/cui/source/dialogs/SpellDialog.cxx
index 6ba8871595b7..6c95a20b62b2 100644
--- a/cui/source/dialogs/SpellDialog.cxx
+++ b/cui/source/dialogs/SpellDialog.cxx
@@ -397,7 +397,7 @@ void SpellDialog::SpellContinue_Impl(bool bUseSavedSentence, bool bIgnoreCurrent
{
//initially or after the last error of a sentence MarkNextError will fail
//then GetNextSentence() has to be called followed again by MarkNextError()
- //MarkNextError is not initally called if the UndoEdit mode is active
+ //MarkNextError is not initially called if the UndoEdit mode is active
bool bNextSentence = false;
if((!aSentenceED.IsUndoEditMode() && aSentenceED.MarkNextError( bIgnoreCurrentError )) ||
true == ( bNextSentence = GetNextSentence_Impl(bUseSavedSentence, aSentenceED.IsUndoEditMode()) && aSentenceED.MarkNextError( false )))
diff --git a/cui/source/dialogs/about.cxx b/cui/source/dialogs/about.cxx
index 13b87e3f49ea..a5151d3c4f65 100644
--- a/cui/source/dialogs/about.cxx
+++ b/cui/source/dialogs/about.cxx
@@ -554,7 +554,7 @@ void AboutDialog::Paint( const Rectangle& rRect )
SetClipRegion( rRect );
// workaround to ensure that the background is painted correct
- // on MacOS for exmaple the background was grey and the image and other controls white
+ // on MacOS for example the background was grey and the image and other controls white
SetFillColor(GetSettings().GetStyleSettings().GetWindowColor());
SetLineColor();
DrawRect(rRect);
diff --git a/cui/source/dialogs/commonlingui.hxx b/cui/source/dialogs/commonlingui.hxx
index 53b6cea87355..b787bbee9f7f 100644
--- a/cui/source/dialogs/commonlingui.hxx
+++ b/cui/source/dialogs/commonlingui.hxx
@@ -119,7 +119,7 @@ public:
// users of this class may want to insert own controls in some places, where the ordinary
// Z-Order determined by construction time is not sufficient
// Use the following methods for this
- enum ControlGroup // control groups in this window which cannot be devided (e.g. are adjacent in the Z order)
+ enum ControlGroup // control groups in this window which cannot be divided (e.g. are adjacent in the Z order)
{
eLeftRightWords, // the controls for the two words (original and suggestion), including the labels
eSuggestionLabel, // the label for the suggestion
diff --git a/cui/source/dialogs/scriptdlg.cxx b/cui/source/dialogs/scriptdlg.cxx
index 2d3bd0597371..81dde0675ed5 100644
--- a/cui/source/dialogs/scriptdlg.cxx
+++ b/cui/source/dialogs/scriptdlg.cxx
@@ -1552,7 +1552,7 @@ void SvxScriptOrgDialog::RestorePreviousSelection()
}
else if ( aException.getValueType() == ::getCppuType( ( const provider::ScriptFrameworkErrorException* ) NULL ) )
{
- // A Script Framework error has occured
+ // A Script Framework error has occurred
provider::ScriptFrameworkErrorException sfe;
aException >>= sfe;
return GetErrorMessage( sfe );
diff --git a/cui/source/dialogs/showcols.cxx b/cui/source/dialogs/showcols.cxx
index dd34aba2b9ad..c4ec95a3174f 100644
--- a/cui/source/dialogs/showcols.cxx
+++ b/cui/source/dialogs/showcols.cxx
@@ -82,7 +82,7 @@ IMPL_LINK( FmShowColsDialog, OnClickedOk, Button*, EMPTYARG )
}
catch(...)
{
- DBG_ERROR("FmShowColsDialog::OnClickedOk Exception occured!");
+ DBG_ERROR("FmShowColsDialog::OnClickedOk Exception occurred!");
}
}
}
@@ -123,7 +123,7 @@ void FmShowColsDialog::SetColumns(const ::com::sun::star::uno::Reference< ::com:
}
catch(...)
{
- DBG_ERROR("FmShowColsDialog::SetColumns Exception occured!");
+ DBG_ERROR("FmShowColsDialog::SetColumns Exception occurred!");
}
// if the col is hidden, put it into the list
diff --git a/cui/source/factory/dlgfact.cxx b/cui/source/factory/dlgfact.cxx
index f86a683a7df2..194d1c2031bd 100644
--- a/cui/source/factory/dlgfact.cxx
+++ b/cui/source/factory/dlgfact.cxx
@@ -1363,12 +1363,20 @@ AbstractSvxSearchSimilarityDialog * AbstractDialogFactory_Impl::CreateSvxSearchS
return NULL;
}
-SfxAbstractTabDialog* AbstractDialogFactory_Impl::CreateSvxBorderBackgroundDlg( Window* pParent,
- const SfxItemSet& rCoreSet,
- sal_Bool bEnableSelector)
-{
- SfxTabDialog* pDlg = new SvxBorderBackgroundDlg( pParent, rCoreSet, bEnableSelector);
- return new AbstractTabDialog_Impl( pDlg );
+//UUUU
+SfxAbstractTabDialog* AbstractDialogFactory_Impl::CreateSvxBorderBackgroundDlg(
+ Window* pParent,
+ const SfxItemSet& rCoreSet,
+ bool bEnableSelector,
+ bool bEnableDrawingLayerFillStyles)
+{
+ SfxTabDialog* pDlg = new SvxBorderBackgroundDlg(
+ pParent,
+ rCoreSet,
+ bEnableSelector,
+ bEnableDrawingLayerFillStyles);
+
+ return new AbstractTabDialog_Impl(pDlg);
}
AbstractSvxTransformTabDialog* AbstractDialogFactory_Impl::CreateSvxTransformTabDialog( Window* pParent,
diff --git a/cui/source/factory/dlgfact.hxx b/cui/source/factory/dlgfact.hxx
index cdb579b87d23..39fb0b6fa53f 100644
--- a/cui/source/factory/dlgfact.hxx
+++ b/cui/source/factory/dlgfact.hxx
@@ -647,9 +647,14 @@ public:
virtual AbstractFmShowColsDialog * CreateFmShowColsDialog( Window* pParent ); //add for FmShowColsDialog
virtual AbstractSvxZoomDialog * CreateSvxZoomDialog( Window* pParent, //add for SvxZoomDialog
const SfxItemSet& rCoreSet);
- virtual SfxAbstractTabDialog* CreateSvxBorderBackgroundDlg( Window* pParent, //add for SvxBorderBackgroundDlg
- const SfxItemSet& rCoreSet,
- sal_Bool bEnableSelector = sal_False) ;
+
+ //UUUU add for SvxBorderBackgroundDlg
+ virtual SfxAbstractTabDialog* CreateSvxBorderBackgroundDlg(
+ Window* pParent,
+ const SfxItemSet& rCoreSet,
+ bool bEnableSelector = false,
+ bool bEnableDrawingLayerFillStyles = false);
+
virtual AbstractSvxTransformTabDialog* CreateSvxTransformTabDialog( Window* pParent, //add for SvxTransformTabDialog
const SfxItemSet* pAttr,
const SdrView* pView,
diff --git a/cui/source/inc/bbdlg.hxx b/cui/source/inc/bbdlg.hxx
index fe2ac3416c00..51cb1baf65fe 100644
--- a/cui/source/inc/bbdlg.hxx
+++ b/cui/source/inc/bbdlg.hxx
@@ -34,17 +34,20 @@
class SvxBorderBackgroundDlg: public SfxTabDialog
{
public:
- SvxBorderBackgroundDlg( Window *pParent,
- const SfxItemSet& rCoreSet,
- sal_Bool bEnableSelector = sal_False );
+ SvxBorderBackgroundDlg(Window *pParent,
+ const SfxItemSet& rCoreSet,
+ bool bEnableSelector = false,
+ bool bEnableDrawingLayerFillStyles = false);
~SvxBorderBackgroundDlg();
protected:
- virtual void PageCreated( sal_uInt16 nPageId, SfxTabPage& rTabPage );
+ virtual void PageCreated(sal_uInt16 nPageId,SfxTabPage& rTabPage);
private:
- sal_Bool bEnableBackgroundSelector; // fuer Border/Background-Dlg
+ /// bitfield
+ bool mbEnableBackgroundSelector : 1; // fuer Border/Background-Dlg
+ bool mbEnableDrawingLayerFillStyles : 1; // for full DrawingLayer FillStyles
};
diff --git a/cui/source/inc/cuihyperdlg.hxx b/cui/source/inc/cuihyperdlg.hxx
index cae78241f1eb..f55ebdfa49cc 100644
--- a/cui/source/inc/cuihyperdlg.hxx
+++ b/cui/source/inc/cuihyperdlg.hxx
@@ -67,7 +67,7 @@ public :
class SvxHpLinkDlg : public IconChoiceDialog
{
private:
- SvxHlinkCtrl maCtrl; // Controler
+ SvxHlinkCtrl maCtrl; // Controller
SfxBindings* mpBindings;
SfxItemSet* mpItemSet;
diff --git a/cui/source/inc/cuires.hrc b/cui/source/inc/cuires.hrc
index 7a0dac234d7b..17f5fc78b929 100755
--- a/cui/source/inc/cuires.hrc
+++ b/cui/source/inc/cuires.hrc
@@ -42,7 +42,11 @@
#define RID_SVXDLG_TEXT (RID_SVX_START + 183)
#define RID_SVXDLG_TRANSFORM (RID_SVX_START + 45)
#define RID_SVXDLG_LINE (RID_SVX_START + 50)
-#define RID_SVXDLG_BBDLG (RID_SVX_START + 40)
+
+//UUUU
+#define RID_SVXDLG_BBDLG_BACKGROUND (RID_SVX_START + 40)
+#define RID_SVXDLG_BBDLG_AREA_TRANS (RID_SVX_START + 41)
+
#define RID_SVXDLG_CAPTION (RID_SVX_START + 151)
#define RID_SVXDLG_AREA (RID_SVX_START + 55)
#define RID_SVXSTRARY_PAPERSIZE_STD (RID_SVX_START + 142)
diff --git a/cui/source/inc/cuitabline.hxx b/cui/source/inc/cuitabline.hxx
index 26f2f8a2ef63..64574c0f4e2e 100644
--- a/cui/source/inc/cuitabline.hxx
+++ b/cui/source/inc/cuitabline.hxx
@@ -131,7 +131,7 @@ private:
//#58425# Symbole auf einer Linie (z.B. StarChart) ->
SdrObjList* pSymbolList; //a list of symbols to be shown in menu. Symbol at position SID_ATTR_SYMBOLTYPE is to be shown in preview. The list position is to be used cyclic.
bool bNewSize;
- Graphic aAutoSymbolGraphic; //a graphic to be displayed in the preview in case that an automatic symbol is choosen
+ Graphic aAutoSymbolGraphic; //a graphic to be displayed in the preview in case that an automatic symbol is chosen
long nNumMenuGalleryItems;
long nSymbolType;
SfxItemSet* pSymbolAttr; //attributes for the shown symbols; only necessary if not equal to line properties
diff --git a/cui/source/inc/page.hxx b/cui/source/inc/page.hxx
index efc15e345169..5cb0930e0e05 100644
--- a/cui/source/inc/page.hxx
+++ b/cui/source/inc/page.hxx
@@ -80,7 +80,7 @@
<SvxLRSpaceItem>: <SID_ATTR_LRSPACE>
*/
-struct SvxPage_Impl;
+//UUUU struct SvxPage_Impl;
typedef sal_uInt16 MarginPosition;
class SvxPageDescPage : public SfxTabPage
@@ -88,6 +88,7 @@ class SvxPageDescPage : public SfxTabPage
using TabPage::ActivatePage;
using TabPage::DeactivatePage;
+private:
// paper format
FixedLine aPaperSizeFl;
FixedText aPaperFormatText;
@@ -167,7 +168,14 @@ class SvxPageDescPage : public SfxTabPage
Paper ePaperStart;
Paper ePaperEnd;
- SvxPage_Impl* pImpl;
+ //UUUU SvxPage_Impl* pImpl;
+ MarginPosition m_nPos;
+ Printer* mpDefPrinter;
+
+ bool mbDelPrinter : 1;
+
+ //UUUU
+ bool mbEnableDrawingLayerFillStyles : 1;
#ifdef _SVX_PAGE_CXX
void Init_Impl();
@@ -208,6 +216,9 @@ class SvxPageDescPage : public SfxTabPage
SvxPageDescPage( Window* pParent, const SfxItemSet& rSet );
+ //UUUU
+ void EnableDrawingLayerFillStyles(bool bNew) { mbEnableDrawingLayerFillStyles = bNew; }
+
protected:
virtual void ActivatePage( const SfxItemSet& rSet );
virtual int DeactivatePage( SfxItemSet* pSet = 0 );
diff --git a/cui/source/inc/transfrm.hxx b/cui/source/inc/transfrm.hxx
index 9f3f155241d5..3e595c285262 100644
--- a/cui/source/inc/transfrm.hxx
+++ b/cui/source/inc/transfrm.hxx
@@ -134,7 +134,7 @@ private:
bool mbSizeDisabled;
bool mbAdjustDisabled;
- // frome size
+ // from size
// #i75273#
double mfOldWidth;
double mfOldHeight;
diff --git a/cui/source/options/optcolor.hrc b/cui/source/options/optcolor.hrc
index 809f04f19658..0e0cbd5ed02e 100644
--- a/cui/source/options/optcolor.hrc
+++ b/cui/source/options/optcolor.hrc
@@ -187,16 +187,16 @@
#define _FT_WIDTH 120
-#define _LINE_HEIGHT 15
+#define _LINE_HEIGHT 16
#define _FT_HEIGHT 10
#define _CB_WIDTH 130
#define _FT_XPOS 14
#define _CB_XPOS 6
-#define _LB_XPOS 139
-#define _LB_WIDTH 50
+#define _LB_XPOS 119
+#define _LB_WIDTH 70
#define _LB_HEIGHT 50
#define _WN_WIDTH 30
-#define _WN_HEIGHT 12
+#define _WN_HEIGHT 14
#define _WN_XPOS 195
#define FT_SMARTTAGS 168
diff --git a/cui/source/options/optcolor.src b/cui/source/options/optcolor.src
index 4983f1f8b61c..04f0c7ad6526 100644
--- a/cui/source/options/optcolor.src
+++ b/cui/source/options/optcolor.src
@@ -49,7 +49,7 @@ TabPage RID_SVXPAGE_COLORCONFIG
ListBox LB_COLORSCHEME
{
HelpID = "cui:ListBox:RID_SVXPAGE_COLORCONFIG:LB_COLORSCHEME";
- Pos = MAP_APPFONT ( 65 , 14 ) ;
+ Pos = MAP_APPFONT ( 65 , 13 ) ;
Size = MAP_APPFONT ( 77 , 58 ) ;
Border = TRUE;
Sort = TRUE;
@@ -79,14 +79,14 @@ TabPage RID_SVXPAGE_COLORCONFIG
Control CT_COLORCONFIG
{
Pos = MAP_APPFONT ( 12 , 45 ) ;
- Size = MAP_APPFONT ( 236 , 134 ) ;
+ Size = MAP_APPFONT ( 236 , 138 ) ;
Border = TRUE;
DialogControl = TRUE;
OutputSize = TRUE ;
ScrollBar VB_VSCROLL
{
Pos = MAP_APPFONT ( 228 , 10 ) ;
- Size = MAP_APPFONT ( 8 , 124 ) ;
+ Size = MAP_APPFONT ( 8 , 128 ) ;
VScroll = TRUE;
};
String ST_ON
@@ -131,7 +131,7 @@ TabPage RID_SVXPAGE_COLORCONFIG
OutputSize = TRUE ;
Pos = MAP_APPFONT ( 0 , 10 ) ;
- Size = MAP_APPFONT ( 228 , 124 ) ;
+ Size = MAP_APPFONT ( 228 , 128 ) ;
DialogControl = TRUE;
FixedText FT_GENERAL
diff --git a/cui/source/options/optsave.cxx b/cui/source/options/optsave.cxx
index 99d58e6be460..c71a1eedf1f5 100644
--- a/cui/source/options/optsave.cxx
+++ b/cui/source/options/optsave.cxx
@@ -178,6 +178,7 @@ SfxSaveTabPage::SfxSaveTabPage( Window* pParent, const SfxItemSet& rCoreSet ) :
aDefaultFormatFL ( this, CUI_RES( FL_FILTER ) ),
aODFVersionFT ( this, CUI_RES( FT_ODF_VERSION ) ),
aODFVersionLB ( this, CUI_RES( LB_ODF_VERSION ) ),
+ aODFEncryptionCB ( this, CUI_RES( BTN_ODFENCRYPTION ) ),
aSizeOptimizationCB ( this, CUI_RES( BTN_NOPRETTYPRINTING ) ),
aWarnAlienFormatCB ( this, CUI_RES( BTN_WARNALIENFORMAT ) ),
aDocTypeFT ( this, CUI_RES( FT_APP ) ),
@@ -384,6 +385,12 @@ sal_Bool SfxSaveTabPage::FillItemSet( SfxItemSet& rSet )
bModified |= sal_True;
}
+ if ( aODFEncryptionCB.IsChecked() != aODFEncryptionCB.GetSavedValue() )
+ {
+ rSet.Put( SfxBoolItem( GetWhich( SID_ATTR_ODFENCRYPTION ), aODFEncryptionCB.IsChecked() ) );
+ bModified |= sal_True;
+ }
+
if ( aSizeOptimizationCB.IsChecked() != aSizeOptimizationCB.GetSavedValue() )
{
rSet.Put( SfxBoolItem( GetWhich( SID_ATTR_PRETTYPRINTING ), !aSizeOptimizationCB.IsChecked() ) );
@@ -596,6 +603,9 @@ void SfxSaveTabPage::Reset( const SfxItemSet& )
aWarnAlienFormatCB.Enable(!aSaveOpt.IsReadOnly(SvtSaveOptions::E_WARNALIENFORMAT));
// aAutoSaveCB.Enable(!aSaveOpt.IsReadOnly(SvtSaveOptions::E_AUTOSAVE));
+ // ODF encryption
+ aODFEncryptionCB.Check( !aSaveOpt.IsUseSHA1InODF12());
+
// the pretty printing
aSizeOptimizationCB.Check( !aSaveOpt.IsPrettyPrinting());
// aSizeOptimizationCB.Enable(!aSaveOpt.IsReadOnly(SvtSaveOptions::E_DOPRETTYPRINTING ));
@@ -620,6 +630,7 @@ void SfxSaveTabPage::Reset( const SfxItemSet& )
aDocInfoCB.SaveValue();
aBackupCB.SaveValue();
aWarnAlienFormatCB.SaveValue();
+ aODFEncryptionCB.SaveValue();
aSizeOptimizationCB.SaveValue();
aAutoSaveCB.SaveValue();
aAutoSaveEdit.SaveValue();
diff --git a/cui/source/options/optsave.hrc b/cui/source/options/optsave.hrc
index a637f4a2ee66..e7057936e9de 100644
--- a/cui/source/options/optsave.hrc
+++ b/cui/source/options/optsave.hrc
@@ -40,6 +40,7 @@
#define BTN_WARNALIENFORMAT 22
#define FT_ODF_VERSION 23
#define LB_ODF_VERSION 24
+#define BTN_ODFENCRYPTION 25
#define GB_RELATIVE 40
#define BTN_RELATIVE_FSYS 41
diff --git a/cui/source/options/optsave.hxx b/cui/source/options/optsave.hxx
index a2e2c5df39d1..cf5d7e4d268e 100644
--- a/cui/source/options/optsave.hxx
+++ b/cui/source/options/optsave.hxx
@@ -66,6 +66,7 @@ private:
FixedLine aDefaultFormatFL;
FixedText aODFVersionFT;
ListBox aODFVersionLB;
+ CheckBox aODFEncryptionCB;
CheckBox aSizeOptimizationCB;
CheckBox aWarnAlienFormatCB;
FixedText aDocTypeFT;
diff --git a/cui/source/options/optsave.src b/cui/source/options/optsave.src
index 6b0d0bbafede..892cf7b75c71 100644
--- a/cui/source/options/optsave.src
+++ b/cui/source/options/optsave.src
@@ -156,36 +156,43 @@ TabPage RID_SFXPAGE_SAVE
< "1.2 Extended (recommended)"; 0x7fffffff ; > ;
};
};
+ CheckBox BTN_ODFENCRYPTION
+ {
+ HelpID = "cui:CheckBox:RID_SFXPAGE_SAVE:BTN_ODFENCRYPTION";
+ Pos = MAP_APPFONT ( 12 , 120 ) ;
+ Size = MAP_APPFONT ( 248 , 10 ) ;
+ Text [ en-US ] = "Enable AES-256 encryption (ODF 1.2)" ;
+ };
CheckBox BTN_NOPRETTYPRINTING
{
HelpID = "cui:CheckBox:RID_SFXPAGE_SAVE:BTN_NOPRETTYPRINTING";
- Pos = MAP_APPFONT ( 12 , 120 ) ;
+ Pos = MAP_APPFONT ( 12 , 131 ) ;
Size = MAP_APPFONT ( 248 , 10 ) ;
Text [ en-US ] = "Size optimization for ODF format" ;
};
CheckBox BTN_WARNALIENFORMAT
{
HelpID = "cui:CheckBox:RID_SFXPAGE_SAVE:BTN_WARNALIENFORMAT";
- Pos = MAP_APPFONT ( 12 , 131 ) ;
+ Pos = MAP_APPFONT ( 12 , 142 ) ;
Size = MAP_APPFONT ( 248 , 10 ) ;
Text [ en-US ] = "Warn when not saving in ODF or default format" ;
};
FixedText FT_APP
{
- Pos = MAP_APPFONT ( 12 , 142 ) ;
+ Pos = MAP_APPFONT ( 12 , 153 ) ;
Size = MAP_APPFONT ( 120 , 8 ) ;
Text [ en-US ] = "D~ocument type";
};
FixedText FT_FILTER
{
- Pos = MAP_APPFONT ( 136 , 142 ) ;
+ Pos = MAP_APPFONT ( 136 , 153 ) ;
Size = MAP_APPFONT ( 120 , 8 ) ;
Text [ en-US ] = "Always sa~ve as";
};
ListBox LB_APP
{
HelpID = "cui:ListBox:RID_SFXPAGE_SAVE:LB_APP";
- Pos = MAP_APPFONT ( 12 , 153 ) ;
+ Pos = MAP_APPFONT ( 12 , 164 ) ;
Size = MAP_APPFONT ( 108 , 58 ) ;
Border = TRUE;
DropDown = TRUE;
@@ -202,14 +209,14 @@ TabPage RID_SFXPAGE_SAVE
};
FixedImage FI_FILTER
{
- Pos = MAP_APPFONT ( 129, 154 ) ;
+ Pos = MAP_APPFONT ( 129, 153 ) ;
Size = MAP_APPFONT ( 6 , 6 ) ;
Hide = TRUE;
};
ListBox LB_FILTER
{
HelpID = "cui:ListBox:RID_SFXPAGE_SAVE:LB_FILTER";
- Pos = MAP_APPFONT ( 136 , 153 ) ;
+ Pos = MAP_APPFONT ( 136 , 164 ) ;
Size = MAP_APPFONT ( 108 , 58 ) ;
Border = TRUE;
Sort = TRUE;
@@ -217,16 +224,16 @@ TabPage RID_SFXPAGE_SAVE
};
FixedImage FI_ODF_WARNING
{
- Pos = MAP_APPFONT ( 12, 169 ) ;
+ Pos = MAP_APPFONT ( 12, 180 ) ;
Size = MAP_APPFONT ( 8 , 8 ) ;
Hide = TRUE;
};
FixedText FT_WARN
{
- Pos = MAP_APPFONT ( 23 , 169 ) ;
+ Pos = MAP_APPFONT ( 23 , 180 ) ;
Size = MAP_APPFONT ( 239 , 8 ) ;
Hide = TRUE;
- Text [ en-US ] = "Not using ODF 1.2 Extended may cause infomation to be lost.";
+ Text [ en-US ] = "Not using ODF 1.2 Extended may cause information to be lost.";
};
Image IMG_ODF_WARNING
{
diff --git a/cui/source/options/treeopt.cxx b/cui/source/options/treeopt.cxx
index 8928896b9a6d..6762083b0935 100644
--- a/cui/source/options/treeopt.cxx
+++ b/cui/source/options/treeopt.cxx
@@ -1627,6 +1627,7 @@ SfxItemSet* OfaTreeOptionsDialog::CreateItemSet( sal_uInt16 nId )
SID_SAVEREL_INET, SID_SAVEREL_FSYS,
SID_ATTR_PRETTYPRINTING, SID_ATTR_PRETTYPRINTING,
SID_ATTR_WARNALIENFORMAT, SID_ATTR_WARNALIENFORMAT,
+ SID_ATTR_ODFENCRYPTION, SID_ATTR_ODFENCRYPTION,
0 );
SFX_APP()->GetOptions(*pRet);
break;
@@ -2679,6 +2680,22 @@ ExtensionsTabPage::~ExtensionsTabPage()
{
Hide();
DeactivatePage();
+
+ if ( m_xPage.is() )
+ {
+ Reference< XComponent > xComponent( m_xPage, UNO_QUERY );
+ if ( xComponent.is() )
+ {
+ try
+ {
+ xComponent->dispose();
+ }
+ catch ( const Exception & )
+ {
+ }
+ }
+ m_xPage.clear();
+ }
}
// -----------------------------------------------------------------------
diff --git a/cui/source/tabpages/bbdlg.cxx b/cui/source/tabpages/bbdlg.cxx
index afaf3c4afb64..7d8c604e32e7 100644
--- a/cui/source/tabpages/bbdlg.cxx
+++ b/cui/source/tabpages/bbdlg.cxx
@@ -35,18 +35,37 @@
#include "backgrnd.hxx"
#include <dialmgr.hxx>
-// class SvxBorderBackgroundDlg ------------------------------------------
+//UUUU
+#include "cuitabarea.hxx"
-SvxBorderBackgroundDlg::SvxBorderBackgroundDlg( Window *pParent,
- const SfxItemSet& rCoreSet,
- sal_Bool bEnableSelector ) :
+// class SvxBorderBackgroundDlg ------------------------------------------
- SfxTabDialog( pParent, CUI_RES( RID_SVXDLG_BBDLG ), &rCoreSet ),
- bEnableBackgroundSelector( bEnableSelector )
+SvxBorderBackgroundDlg::SvxBorderBackgroundDlg(Window *pParent,
+ const SfxItemSet& rCoreSet,
+ bool bEnableSelector,
+ bool bEnableDrawingLayerFillStyles)
+: SfxTabDialog(
+ pParent,
+ CUI_RES(
+ bEnableDrawingLayerFillStyles ? RID_SVXDLG_BBDLG_AREA_TRANS : RID_SVXDLG_BBDLG_BACKGROUND),
+ &rCoreSet),
+ mbEnableBackgroundSelector(bEnableSelector),
+ mbEnableDrawingLayerFillStyles(bEnableDrawingLayerFillStyles)
{
FreeResource();
- AddTabPage( RID_SVXPAGE_BORDER, SvxBorderTabPage::Create, 0 );
- AddTabPage( RID_SVXPAGE_BACKGROUND, SvxBackgroundTabPage::Create, 0 );
+ AddTabPage(RID_SVXPAGE_BORDER,SvxBorderTabPage::Create,0);
+
+ if(mbEnableDrawingLayerFillStyles)
+ {
+ //UUUU Here we want full DrawingLayer FillStyle access, so add Area and Transparency TabPages
+ AddTabPage( RID_SVXPAGE_AREA, SvxAreaTabPage::Create, 0 );
+ AddTabPage( RID_SVXPAGE_TRANSPARENCE, SvxTransparenceTabPage::Create, 0);
+ }
+ else
+ {
+ //UUUU Use the more simple Background TabPage
+ AddTabPage(RID_SVXPAGE_BACKGROUND, SvxBackgroundTabPage::Create, 0);
+ }
}
// -----------------------------------------------------------------------
@@ -57,12 +76,48 @@ SvxBorderBackgroundDlg::~SvxBorderBackgroundDlg()
// -----------------------------------------------------------------------
-void SvxBorderBackgroundDlg::PageCreated( sal_uInt16 nPageId, SfxTabPage& rTabPage )
+void SvxBorderBackgroundDlg::PageCreated(sal_uInt16 nPageId, SfxTabPage& rTabPage)
{
- // Umschalten zwischen Farbe/Grafik ermoeglichen:
+ switch(nPageId)
+ {
+ case RID_SVXPAGE_BACKGROUND:
+ {
+ // allow switching between Color/graphic
+ if(mbEnableBackgroundSelector)
+ {
+ static_cast< SvxBackgroundTabPage& >(rTabPage).ShowSelector();
+ }
+ break;
+ }
- if ( bEnableBackgroundSelector && (RID_SVXPAGE_BACKGROUND == nPageId) )
- ((SvxBackgroundTabPage&)rTabPage).ShowSelector( );
-}
+ //UUUU inits for Area and Transparency TabPages
+ // The selection attribute lists (XPropertyList derivates, e.g. XColorList for
+ // the color table) need to be added as items (e.g. SvxColorTableItem) to make
+ // these pages find the needed attributes for fill style suggestions.
+ // These are added in SwDocStyleSheet::GetItemSet() for the SFX_STYLE_FAMILY_PARA on
+ // demand, but could also be directly added from the DrawModel.
+ case RID_SVXPAGE_AREA:
+ {
+ SfxItemSet aNew(
+ *GetInputSetImpl()->GetPool(),
+ SID_COLOR_TABLE, SID_BITMAP_LIST,
+ SID_OFFER_IMPORT, SID_OFFER_IMPORT,
+ 0, 0);
+ aNew.Put(*GetInputSetImpl());
+
+ // add flag for direct graphic content selection
+ aNew.Put(SfxBoolItem(SID_OFFER_IMPORT, true));
+
+ rTabPage.PageCreated(aNew);
+ break;
+ }
+ case RID_SVXPAGE_TRANSPARENCE:
+ {
+ rTabPage.PageCreated(*GetInputSetImpl());
+ break;
+ }
+ }
+}
+//eof
diff --git a/cui/source/tabpages/bbdlg.src b/cui/source/tabpages/bbdlg.src
index 520884a6a266..6a8ebc178970 100644
--- a/cui/source/tabpages/bbdlg.src
+++ b/cui/source/tabpages/bbdlg.src
@@ -24,15 +24,16 @@
#include <cuires.hrc>
#include <svx/dialogs.hrc>
- // RID_SVXDLG_BBDLG ------------------------------------------------------
-TabDialog RID_SVXDLG_BBDLG
+// RID_SVXDLG_BBDLG_BACKGROUND and RID_SVXDLG_BBDLG_AREA_TRANS ------------
+
+TabDialog RID_SVXDLG_BBDLG_BACKGROUND
{
OutputSize = TRUE ;
SVLook = TRUE ;
Size = MAP_APPFONT ( 328 , 155 ) ;
Text [ en-US ] = "Border / Background" ;
Moveable = TRUE ;
- // Closeable = TRUE; hat ja einen OKButton
+
TabControl 1
{
OutputSize = TRUE ;
@@ -53,6 +54,45 @@ TabDialog RID_SVXDLG_BBDLG
};
};
};
+
+TabDialog RID_SVXDLG_BBDLG_AREA_TRANS
+{
+ OutputSize = TRUE ;
+ SVLook = TRUE ;
+ Size = MAP_APPFONT ( 328 , 155 ) ;
+ Text [ en-US ] = "Border / Background" ;
+ Moveable = TRUE ;
+
+ TabControl 1
+ {
+ OutputSize = TRUE ;
+ Pos = MAP_APPFONT ( 2 , 10 ) ;
+ Size = MAP_APPFONT ( 260 , 135 ) ;
+ PageList =
+ {
+ PageItem
+ {
+ Identifier = RID_SVXPAGE_BORDER ;
+ Text [ en-US ] = "Borders" ;
+ };
+
+ //UUUU new Area and Transparence TabPages
+ PageItem
+ {
+ Identifier = RID_SVXPAGE_AREA;
+ PageResID = RID_SVXPAGE_AREA;
+ Text [ en-US ] = "Area" ;
+ };
+ PageItem
+ {
+ Identifier = RID_SVXPAGE_TRANSPARENCE;
+ PageResID = RID_SVXPAGE_TRANSPARENCE;
+ Text [ en-US ] = "Transparency" ;
+ };
+ };
+ };
+};
+
// ********************************************************************** EOF
diff --git a/cui/source/tabpages/page.cxx b/cui/source/tabpages/page.cxx
index 8e46557a89e9..89bea48d29bb 100644
--- a/cui/source/tabpages/page.cxx
+++ b/cui/source/tabpages/page.cxx
@@ -19,8 +19,6 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_cui.hxx"
@@ -61,12 +59,15 @@
#include <editeng/eerdll.hxx>
#include <editeng/editrids.hrc> // for RID_SVXSTR_PAPERBIN...,
#include <svx/svxids.hrc>
-
-// #i4219#
#include <svtools/optionsdrawinglayer.hxx>
#include <svl/slstitm.hxx> //CHINA001
#include <svl/aeitem.hxx> //CHINA001
#include <sfx2/request.hxx> //CHINA001
+
+//UUUU
+#include <svx/xdef.hxx>
+#include <svx/unobrushitemhelper.hxx>
+
// configuration helper =======================================================
/** Helper to get a configuration setting.
@@ -208,19 +209,20 @@ sal_Bool IsEqualSize_Impl( const SvxSizeItem* pSize, const Size& rSize )
#define MARGIN_TOP ( (MarginPosition)0x0004 )
#define MARGIN_BOTTOM ( (MarginPosition)0x0008 )
-struct SvxPage_Impl
-{
- MarginPosition m_nPos;
- Printer* mpDefPrinter;
- bool mbDelPrinter;
-
- SvxPage_Impl() :
- m_nPos( 0 ),
- mpDefPrinter( 0 ),
- mbDelPrinter( false ) {}
-
- ~SvxPage_Impl() { if ( mbDelPrinter ) delete mpDefPrinter; }
-};
+//UUUU
+//struct SvxPage_Impl
+//{
+// MarginPosition m_nPos;
+// Printer* mpDefPrinter;
+// bool mbDelPrinter;
+//
+// SvxPage_Impl() :
+// m_nPos( 0 ),
+// mpDefPrinter( 0 ),
+// mbDelPrinter( false ) {}
+//
+// ~SvxPage_Impl() { if ( mbDelPrinter ) delete mpDefPrinter; }
+//};
// class SvxPageDescPage --------------------------------------------------
@@ -240,10 +242,8 @@ SfxTabPage* SvxPageDescPage::Create( Window* pParent, const SfxItemSet& rSet )
// -----------------------------------------------------------------------
-SvxPageDescPage::SvxPageDescPage( Window* pParent, const SfxItemSet& rAttr ) :
-
- SfxTabPage( pParent, CUI_RES( RID_SVXPAGE_PAGE ), rAttr ),
-
+SvxPageDescPage::SvxPageDescPage( Window* pParent, const SfxItemSet& rAttr )
+: SfxTabPage( pParent, CUI_RES( RID_SVXPAGE_PAGE ), rAttr ),
aPaperSizeFl ( this, CUI_RES( FL_PAPER_SIZE ) ),
aPaperFormatText ( this, CUI_RES( FT_PAPER_FORMAT ) ),
aPaperSizeBox ( this, CUI_RES( LB_PAPER_SIZE ) ),
@@ -290,8 +290,17 @@ SvxPageDescPage::SvxPageDescPage( Window* pParent, const SfxItemSet& rAttr ) :
eMode ( SVX_PAGE_MODE_STANDARD ),
ePaperStart ( PAPER_A3 ),
ePaperEnd ( PAPER_ENV_DL ),
- pImpl ( new SvxPage_Impl )
+ //UUUU
+ // pImpl ( new SvxPage_Impl ),
+
+ //UUUU
+ m_nPos( 0 ),
+ mpDefPrinter( 0 ),
+ mbDelPrinter( false ),
+
+ //UUUU
+ mbEnableDrawingLayerFillStyles(false)
{
bBorderModified = false;
FreeResource();
@@ -351,27 +360,28 @@ SvxPageDescPage::SvxPageDescPage( Window* pParent, const SfxItemSet& rAttr ) :
SetFieldUnit( aPaperHeightEdit, eFUnit );
if ( SfxViewShell::Current() && SfxViewShell::Current()->GetPrinter() )
- pImpl->mpDefPrinter = (Printer*)SfxViewShell::Current()->GetPrinter();
+ {
+ mpDefPrinter = (Printer*)SfxViewShell::Current()->GetPrinter();
+ }
else
{
- pImpl->mpDefPrinter = new Printer;
- pImpl->mbDelPrinter = true;
+ mpDefPrinter = new Printer;
+ mbDelPrinter = true;
}
- MapMode aOldMode = pImpl->mpDefPrinter->GetMapMode();
- pImpl->mpDefPrinter->SetMapMode( MAP_TWIP );
+ MapMode aOldMode = mpDefPrinter->GetMapMode();
+ mpDefPrinter->SetMapMode( MAP_TWIP );
// First- und Last-Werte f"ur die R"ander setzen
- Size aPaperSize = pImpl->mpDefPrinter->GetPaperSize();
- Size aPrintSize = pImpl->mpDefPrinter->GetOutputSize();
+ Size aPaperSize = mpDefPrinter->GetPaperSize();
+ Size aPrintSize = mpDefPrinter->GetOutputSize();
/*
* einen Punkt ( 0,0 ) in logische Koordinaten zu konvertieren,
* sieht aus wie Unsinn; ist aber sinnvoll, wenn der Ursprung des
* Koordinatensystems verschoben ist.
*/
- Point aPrintOffset = pImpl->mpDefPrinter->GetPageOffset() -
- pImpl->mpDefPrinter->PixelToLogic( Point() );
- pImpl->mpDefPrinter->SetMapMode( aOldMode );
+ Point aPrintOffset = mpDefPrinter->GetPageOffset() - mpDefPrinter->PixelToLogic( Point() );
+ mpDefPrinter->SetMapMode( aOldMode );
long nOffset = !aPrintOffset.X() && !aPrintOffset.Y() ? 0 : PRINT_OFFSET;
aLeftMarginEdit.SetFirst( aLeftMarginEdit.Normalize( aPrintOffset.X() ), FUNIT_TWIP );
@@ -425,7 +435,10 @@ SvxPageDescPage::SvxPageDescPage( Window* pParent, const SfxItemSet& rAttr ) :
SvxPageDescPage::~SvxPageDescPage()
{
- delete pImpl;
+ if(mbDelPrinter)
+ {
+ delete mpDefPrinter;
+ }
}
// -----------------------------------------------------------------------
@@ -509,7 +522,7 @@ void SvxPageDescPage::Reset( const SfxItemSet& rSet )
// allgemeine Seitendaten
SvxNumType eNumType = SVX_ARABIC;
- bLandscape = ( pImpl->mpDefPrinter->GetOrientation() == ORIENTATION_LANDSCAPE );
+ bLandscape = ( mpDefPrinter->GetOrientation() == ORIENTATION_LANDSCAPE );
sal_uInt16 nUse = (sal_uInt16)SVX_PAGE_ALL;
pItem = GetItem( rSet, SID_ATTR_PAGE );
@@ -538,7 +551,7 @@ void SvxPageDescPage::Reset( const SfxItemSet& rSet )
{
nPaperBin = ( (const SvxPaperBinItem*)pItem )->GetValue();
- if ( nPaperBin >= pImpl->mpDefPrinter->GetPaperBinCount() )
+ if ( nPaperBin >= mpDefPrinter->GetPaperBinCount() )
nPaperBin = PAPERBIN_PRINTER_SETTINGS;
}
@@ -547,21 +560,21 @@ void SvxPageDescPage::Reset( const SfxItemSet& rSet )
if ( PAPERBIN_PRINTER_SETTINGS == nPaperBin )
aBinName = EE_RESSTR( RID_SVXSTR_PAPERBIN_SETTINGS );
else
- aBinName = pImpl->mpDefPrinter->GetPaperBinName( (sal_uInt16)nPaperBin );
+ aBinName = mpDefPrinter->GetPaperBinName( (sal_uInt16)nPaperBin );
sal_uInt16 nEntryPos = aPaperTrayBox.InsertEntry( aBinName );
aPaperTrayBox.SetEntryData( nEntryPos, (void*)(sal_uLong)nPaperBin );
aPaperTrayBox.SelectEntry( aBinName );
// Size rausholen
- Size aPaperSize = SvxPaperInfo::GetPaperSize( pImpl->mpDefPrinter );
+ Size aPaperSize = SvxPaperInfo::GetPaperSize( mpDefPrinter );
pItem = GetItem( rSet, SID_ATTR_PAGE_SIZE );
if ( pItem )
aPaperSize = ( (const SvxSizeItem*)pItem )->GetSize();
bool bOrientationSupport =
- pImpl->mpDefPrinter->HasSupport( SUPPORT_SET_ORIENTATION );
+ mpDefPrinter->HasSupport( SUPPORT_SET_ORIENTATION );
#ifdef OS2
// unter OS/2 wird bei HasSupport() immer sal_True returned
// aber nur als Dummy, deshalb FALSE
@@ -1005,11 +1018,11 @@ IMPL_LINK( SvxPageDescPage, PaperBinHdl_Impl, ListBox *, EMPTYARG )
aPaperTrayBox.SetEntryData( nEntryPos,
(void*)(sal_uLong)PAPERBIN_PRINTER_SETTINGS );
String aPaperBin( EditResId( RID_SVXSTR_PAPERBIN ) );
- sal_uInt16 nBinCount = pImpl->mpDefPrinter->GetPaperBinCount();
+ sal_uInt16 nBinCount = mpDefPrinter->GetPaperBinCount();
for ( sal_uInt16 i = 0; i < nBinCount; ++i )
{
- String aName = pImpl->mpDefPrinter->GetPaperBinName(i);
+ String aName = mpDefPrinter->GetPaperBinName(i);
if ( !aName.Len() )
{
@@ -1158,27 +1171,26 @@ IMPL_LINK( SvxPageDescPage, SwapOrientation_Impl, RadioButton *, pBtn )
void SvxPageDescPage::SwapFirstValues_Impl( bool bSet )
{
- MapMode aOldMode = pImpl->mpDefPrinter->GetMapMode();
+ MapMode aOldMode = mpDefPrinter->GetMapMode();
Orientation eOri = ORIENTATION_PORTRAIT;
if ( bLandscape )
eOri = ORIENTATION_LANDSCAPE;
- Orientation eOldOri = pImpl->mpDefPrinter->GetOrientation();
- pImpl->mpDefPrinter->SetOrientation( eOri );
- pImpl->mpDefPrinter->SetMapMode( MAP_TWIP );
+ Orientation eOldOri = mpDefPrinter->GetOrientation();
+ mpDefPrinter->SetOrientation( eOri );
+ mpDefPrinter->SetMapMode( MAP_TWIP );
// First- und Last-Werte f"ur die R"ander setzen
- Size aPaperSize = pImpl->mpDefPrinter->GetPaperSize();
- Size aPrintSize = pImpl->mpDefPrinter->GetOutputSize();
+ Size aPaperSize = mpDefPrinter->GetPaperSize();
+ Size aPrintSize = mpDefPrinter->GetOutputSize();
/*
* einen Punkt ( 0,0 ) in logische Koordinaten zu konvertieren,
* sieht aus wie Unsinn; ist aber sinnvoll, wenn der Ursprung des
* Koordinatensystems verschoben ist.
*/
- Point aPrintOffset = pImpl->mpDefPrinter->GetPageOffset() -
- pImpl->mpDefPrinter->PixelToLogic( Point() );
- pImpl->mpDefPrinter->SetMapMode( aOldMode );
- pImpl->mpDefPrinter->SetOrientation( eOldOri );
+ Point aPrintOffset = mpDefPrinter->GetPageOffset() - mpDefPrinter->PixelToLogic( Point() );
+ mpDefPrinter->SetMapMode( aOldMode );
+ mpDefPrinter->SetOrientation( eOldOri );
sal_Int64 nSetL = aLeftMarginEdit.Denormalize(
aLeftMarginEdit.GetValue( FUNIT_TWIP ) );
@@ -1260,90 +1272,124 @@ void SvxPageDescPage::UpdateExample_Impl( bool bResetbackground )
// -----------------------------------------------------------------------
-void SvxPageDescPage::ResetBackground_Impl( const SfxItemSet& rSet )
+void SvxPageDescPage::ResetBackground_Impl(const SfxItemSet& rSet)
{
- sal_uInt16 nWhich = GetWhich( SID_ATTR_PAGE_HEADERSET );
+ sal_uInt16 nWhich(GetWhich(SID_ATTR_PAGE_HEADERSET));
- if ( rSet.GetItemState( nWhich, sal_False ) == SFX_ITEM_SET )
+ if(SFX_ITEM_SET == rSet.GetItemState(nWhich, sal_False))
{
- const SvxSetItem& rSetItem =
- (const SvxSetItem&)rSet.Get( nWhich, sal_False );
+ const SvxSetItem& rSetItem = static_cast< const SvxSetItem& >(rSet.Get(nWhich, sal_False));
const SfxItemSet& rTmpSet = rSetItem.GetItemSet();
- const SfxBoolItem& rOn =
- (const SfxBoolItem&)rTmpSet.Get( GetWhich( SID_ATTR_PAGE_ON ) );
+ const SfxBoolItem& rOn = static_cast< const SfxBoolItem& >(rTmpSet.Get(GetWhich(SID_ATTR_PAGE_ON)));
- if ( rOn.GetValue() )
+ if(rOn.GetValue())
{
- nWhich = GetWhich( SID_ATTR_BRUSH );
+ drawinglayer::attribute::SdrAllFillAttributesHelperPtr aHeaderFillAttributes;
- if ( rTmpSet.GetItemState( nWhich ) == SFX_ITEM_SET )
+ if(mbEnableDrawingLayerFillStyles)
+ {
+ //UUUU create FillAttributes directly from DrawingLayer FillStyle entries
+ aHeaderFillAttributes.reset(new drawinglayer::attribute::SdrAllFillAttributesHelper(rTmpSet));
+ }
+ else
{
- const SvxBrushItem& rItem =
- (const SvxBrushItem&)rTmpSet.Get( nWhich );
- aBspWin.SetHdColor( rItem.GetColor() );
+ nWhich = GetWhich(SID_ATTR_BRUSH);
+
+ if(SFX_ITEM_SET == rTmpSet.GetItemState(nWhich))
+ {
+ //UUUU create FillAttributes from SvxBrushItem
+ const SvxBrushItem& rItem = static_cast< const SvxBrushItem& >(rTmpSet.Get(nWhich));
+ SfxItemSet aTempSet(*rTmpSet.GetPool(), XATTR_FILL_FIRST, XATTR_FILL_LAST);
+
+ setSvxBrushItemAsFillAttributesToTargetSet(rItem, aTempSet);
+ aHeaderFillAttributes.reset(new drawinglayer::attribute::SdrAllFillAttributesHelper(aTempSet));
+ }
}
- nWhich = GetWhich( SID_ATTR_BORDER_OUTER );
- if ( rTmpSet.GetItemState( nWhich ) == SFX_ITEM_SET )
+ aBspWin.setHeaderFillAttributes(aHeaderFillAttributes);
+ nWhich = GetWhich(SID_ATTR_BORDER_OUTER);
+
+ if(rTmpSet.GetItemState(nWhich) == SFX_ITEM_SET)
{
- const SvxBoxItem& rItem =
- (const SvxBoxItem&)rTmpSet.Get( nWhich );
- aBspWin.SetHdBorder( rItem );
+ const SvxBoxItem& rItem = static_cast< const SvxBoxItem& >(rTmpSet.Get(nWhich));
+ aBspWin.SetHdBorder(rItem);
}
}
}
- nWhich = GetWhich( SID_ATTR_PAGE_FOOTERSET );
+ nWhich = GetWhich(SID_ATTR_PAGE_FOOTERSET);
- if ( rSet.GetItemState( nWhich, sal_False ) == SFX_ITEM_SET )
+ if(SFX_ITEM_SET == rSet.GetItemState(nWhich, sal_False))
{
- const SvxSetItem& rSetItem =
- (const SvxSetItem&)rSet.Get( nWhich, sal_False );
+ const SvxSetItem& rSetItem = static_cast< const SvxSetItem& >(rSet.Get(nWhich,sal_False));
const SfxItemSet& rTmpSet = rSetItem.GetItemSet();
- const SfxBoolItem& rOn =
- (const SfxBoolItem&)rTmpSet.Get( GetWhich( SID_ATTR_PAGE_ON ) );
+ const SfxBoolItem& rOn = static_cast< const SfxBoolItem& >(rTmpSet.Get(GetWhich(SID_ATTR_PAGE_ON)));
- if ( rOn.GetValue() )
+ if(rOn.GetValue())
{
- nWhich = GetWhich( SID_ATTR_BRUSH );
+ drawinglayer::attribute::SdrAllFillAttributesHelperPtr aFooterFillAttributes;
- if ( rTmpSet.GetItemState( nWhich ) == SFX_ITEM_SET )
+ if(mbEnableDrawingLayerFillStyles)
{
- const SvxBrushItem& rItem =
- (const SvxBrushItem&)rTmpSet.Get( nWhich );
- aBspWin.SetFtColor( rItem.GetColor() );
+ //UUUU create FillAttributes directly from DrawingLayer FillStyle entries
+ aFooterFillAttributes.reset(new drawinglayer::attribute::SdrAllFillAttributesHelper(rTmpSet));
+ }
+ else
+ {
+ nWhich = GetWhich(SID_ATTR_BRUSH);
+
+ if(SFX_ITEM_SET == rTmpSet.GetItemState(nWhich))
+ {
+ //UUUU create FillAttributes from SvxBrushItem
+ const SvxBrushItem& rItem = static_cast< const SvxBrushItem& >(rTmpSet.Get(nWhich));
+ SfxItemSet aTempSet(*rTmpSet.GetPool(), XATTR_FILL_FIRST, XATTR_FILL_LAST);
+
+ setSvxBrushItemAsFillAttributesToTargetSet(rItem, aTempSet);
+ aFooterFillAttributes.reset(new drawinglayer::attribute::SdrAllFillAttributesHelper(aTempSet));
+ }
}
- nWhich = GetWhich( SID_ATTR_BORDER_OUTER );
- if ( rTmpSet.GetItemState( nWhich ) == SFX_ITEM_SET )
+ aBspWin.setFooterFillAttributes(aFooterFillAttributes);
+ nWhich = GetWhich(SID_ATTR_BORDER_OUTER);
+
+ if(rTmpSet.GetItemState(nWhich) == SFX_ITEM_SET)
{
- const SvxBoxItem& rItem =
- (const SvxBoxItem&)rTmpSet.Get( nWhich );
- aBspWin.SetFtBorder( rItem );
+ const SvxBoxItem& rItem = static_cast< const SvxBoxItem& >(rTmpSet.Get(nWhich));
+ aBspWin.SetFtBorder(rItem);
}
}
}
- const SfxPoolItem* pItem = GetItem( rSet, SID_ATTR_BRUSH );
+ drawinglayer::attribute::SdrAllFillAttributesHelperPtr aPageFillAttributes;
+ const SfxPoolItem* pItem = 0;
- if ( pItem )
+ if(mbEnableDrawingLayerFillStyles)
{
- aBspWin.SetColor( ( (const SvxBrushItem*)pItem )->GetColor() );
- const Graphic* pGrf = ( (const SvxBrushItem*)pItem )->GetGraphic();
+ //UUUU create FillAttributes directly from DrawingLayer FillStyle entries
+ aPageFillAttributes.reset(new drawinglayer::attribute::SdrAllFillAttributesHelper(rSet));
+ }
+ else
+ {
+ pItem = GetItem(rSet, SID_ATTR_BRUSH);
- if ( pGrf )
+ if(pItem)
{
- Bitmap aBitmap = pGrf->GetBitmap();
- aBspWin.SetBitmap( &aBitmap );
+ //UUUU create FillAttributes from SvxBrushItem
+ const SvxBrushItem& rItem = static_cast< const SvxBrushItem& >(*pItem);
+ SfxItemSet aTempSet(*rSet.GetPool(), XATTR_FILL_FIRST, XATTR_FILL_LAST);
+
+ setSvxBrushItemAsFillAttributesToTargetSet(rItem, aTempSet);
+ aPageFillAttributes.reset(new drawinglayer::attribute::SdrAllFillAttributesHelper(aTempSet));
}
- else
- aBspWin.SetBitmap( NULL );
}
- pItem = GetItem( rSet, SID_ATTR_BORDER_OUTER );
+ aBspWin.setPageFillAttributes(aPageFillAttributes);
+ pItem = GetItem(rSet, SID_ATTR_BORDER_OUTER);
- if ( pItem )
- aBspWin.SetBorder( (SvxBoxItem&)*pItem );
+ if(pItem)
+ {
+ aBspWin.SetBorder(static_cast< const SvxBoxItem& >(*pItem));
+ }
}
// -----------------------------------------------------------------------
@@ -1387,15 +1433,30 @@ void SvxPageDescPage::InitHeadFoot_Impl( const SfxItemSet& rSet )
aBspWin.SetHeader( sal_False );
// im Beispiel Hintergrund und Umrandung anzeigen
- sal_uInt16 nWhich = GetWhich( SID_ATTR_BRUSH );
+ drawinglayer::attribute::SdrAllFillAttributesHelperPtr aHeaderFillAttributes;
- if ( rHeaderSet.GetItemState( nWhich ) >= SFX_ITEM_AVAILABLE )
+ if(mbEnableDrawingLayerFillStyles)
{
- const SvxBrushItem& rItem =
- (const SvxBrushItem&)rHeaderSet.Get( nWhich );
- aBspWin.SetHdColor( rItem.GetColor() );
+ //UUUU create FillAttributes directly from DrawingLayer FillStyle entries
+ aHeaderFillAttributes.reset(new drawinglayer::attribute::SdrAllFillAttributesHelper(rHeaderSet));
+ }
+ else
+ {
+ const sal_uInt16 nWhich(GetWhich(SID_ATTR_BRUSH));
+
+ if(rHeaderSet.GetItemState(nWhich) >= SFX_ITEM_AVAILABLE)
+ {
+ //UUUU aBspWin.SetHdColor(rItem.GetColor());
+ const SvxBrushItem& rItem = static_cast< const SvxBrushItem& >(rHeaderSet.Get(nWhich));
+ SfxItemSet aTempSet(*rHeaderSet.GetPool(), XATTR_FILL_FIRST, XATTR_FILL_LAST);
+
+ setSvxBrushItemAsFillAttributesToTargetSet(rItem, aTempSet);
+ aHeaderFillAttributes.reset(new drawinglayer::attribute::SdrAllFillAttributesHelper(aTempSet));
+ }
}
- nWhich = GetWhich( SID_ATTR_BORDER_OUTER );
+
+ aBspWin.setHeaderFillAttributes(aHeaderFillAttributes);
+ const sal_uInt16 nWhich(GetWhich(SID_ATTR_BORDER_OUTER));
if ( rHeaderSet.GetItemState( nWhich ) >= SFX_ITEM_AVAILABLE )
{
@@ -1434,15 +1495,30 @@ void SvxPageDescPage::InitHeadFoot_Impl( const SfxItemSet& rSet )
aBspWin.SetFooter( sal_False );
// im Beispiel Hintergrund und Umrandung anzeigen
- sal_uInt16 nWhich = GetWhich( SID_ATTR_BRUSH );
+ drawinglayer::attribute::SdrAllFillAttributesHelperPtr aFooterFillAttributes;
- if ( rFooterSet.GetItemState( nWhich ) >= SFX_ITEM_AVAILABLE )
+ if(mbEnableDrawingLayerFillStyles)
{
- const SvxBrushItem& rItem =
- (const SvxBrushItem&)rFooterSet.Get( nWhich );
- aBspWin.SetFtColor( rItem.GetColor() );
+ //UUUU create FillAttributes directly from DrawingLayer FillStyle entries
+ aFooterFillAttributes.reset(new drawinglayer::attribute::SdrAllFillAttributesHelper(rFooterSet));
+ }
+ else
+ {
+ const sal_uInt16 nWhich(GetWhich(SID_ATTR_BRUSH));
+
+ if(rFooterSet.GetItemState(nWhich) >= SFX_ITEM_AVAILABLE)
+ {
+ //UUUU aBspWin.SetFtColor(rItem.GetColor());
+ const SvxBrushItem& rItem = (const SvxBrushItem&)rFooterSet.Get(nWhich);
+ SfxItemSet aTempSet(*rFooterSet.GetPool(), XATTR_FILL_FIRST, XATTR_FILL_LAST);
+
+ setSvxBrushItemAsFillAttributesToTargetSet(rItem, aTempSet);
+ aFooterFillAttributes.reset(new drawinglayer::attribute::SdrAllFillAttributesHelper(aTempSet));
+ }
}
- nWhich = GetWhich( SID_ATTR_BORDER_OUTER );
+
+ aBspWin.setFooterFillAttributes(aFooterFillAttributes);
+ const sal_uInt16 nWhich(GetWhich(SID_ATTR_BORDER_OUTER));
if ( rFooterSet.GetItemState( nWhich ) >= SFX_ITEM_AVAILABLE )
{
@@ -1458,6 +1534,7 @@ void SvxPageDescPage::InitHeadFoot_Impl( const SfxItemSet& rSet )
void SvxPageDescPage::ActivatePage( const SfxItemSet& rSet )
{
InitHeadFoot_Impl( rSet );
+ UpdateExample_Impl();
ResetBackground_Impl( rSet );
RangeHdl_Impl( 0 );
}
@@ -1702,7 +1779,7 @@ bool SvxPageDescPage::IsPrinterRangeOverflow(
MetricField& rField, long nFirstMargin, long nLastMargin, MarginPosition nPos )
{
bool bRet = false;
- bool bCheck = ( ( pImpl->m_nPos & nPos ) == 0 );
+ bool bCheck = ( ( m_nPos & nPos ) == 0 );
long nValue = static_cast<long>(rField.GetValue());
if ( bCheck &&
( nValue < nFirstMargin || nValue > nLastMargin ) &&
@@ -1721,53 +1798,74 @@ bool SvxPageDescPage::IsPrinterRangeOverflow(
void SvxPageDescPage::CheckMarginEdits( bool _bClear )
{
if ( _bClear )
- pImpl->m_nPos = 0;
+ m_nPos = 0;
sal_Int64 nValue = aLeftMarginEdit.GetValue();
if ( nValue < nFirstLeftMargin || nValue > nLastLeftMargin )
- pImpl->m_nPos |= MARGIN_LEFT;
+ m_nPos |= MARGIN_LEFT;
nValue = aRightMarginEdit.GetValue();
if ( nValue < nFirstRightMargin || nValue > nLastRightMargin )
- pImpl->m_nPos |= MARGIN_RIGHT;
+ m_nPos |= MARGIN_RIGHT;
nValue = aTopMarginEdit.GetValue();
if ( nValue < nFirstTopMargin || nValue > nLastTopMargin )
- pImpl->m_nPos |= MARGIN_TOP;
+ m_nPos |= MARGIN_TOP;
nValue = aBottomMarginEdit.GetValue();
if ( nValue < nFirstBottomMargin || nValue > nLastBottomMargin )
- pImpl->m_nPos |= MARGIN_BOTTOM;
+ m_nPos |= MARGIN_BOTTOM;
}
bool SvxPageDescPage::IsMarginOutOfRange()
{
- bool bRet = ( ( ( !( pImpl->m_nPos & MARGIN_LEFT ) &&
+ bool bRet = ( ( ( !( m_nPos & MARGIN_LEFT ) &&
( aLeftMarginEdit.GetText() != aLeftMarginEdit.GetSavedValue() ) ) &&
( aLeftMarginEdit.GetValue() < nFirstLeftMargin ||
aLeftMarginEdit.GetValue() > nLastLeftMargin ) ) ||
- ( ( !( pImpl->m_nPos & MARGIN_RIGHT ) &&
+ ( ( !( m_nPos & MARGIN_RIGHT ) &&
( aRightMarginEdit.GetText() != aRightMarginEdit.GetSavedValue() ) ) &&
( aRightMarginEdit.GetValue() < nFirstRightMargin ||
aRightMarginEdit.GetValue() > nLastRightMargin ) ) ||
- ( ( !( pImpl->m_nPos & MARGIN_TOP ) &&
+ ( ( !( m_nPos & MARGIN_TOP ) &&
( aTopMarginEdit.GetText() != aTopMarginEdit.GetSavedValue() ) ) &&
( aTopMarginEdit.GetValue() < nFirstTopMargin ||
aTopMarginEdit.GetValue() > nLastTopMargin ) ) ||
- ( ( !( pImpl->m_nPos & MARGIN_BOTTOM ) &&
+ ( ( !( m_nPos & MARGIN_BOTTOM ) &&
( aBottomMarginEdit.GetText() != aBottomMarginEdit.GetSavedValue() ) ) &&
( aBottomMarginEdit.GetValue() < nFirstBottomMargin ||
aBottomMarginEdit.GetValue() > nLastBottomMargin ) ) );
return bRet;
}
-void SvxPageDescPage::PageCreated (SfxAllItemSet aSet) //add CHINA001
+void SvxPageDescPage::PageCreated(SfxAllItemSet aSet) //add CHINA001
{
- SFX_ITEMSET_ARG (&aSet,pModeItem,SfxAllEnumItem,SID_ENUM_PAGE_MODE );
- SFX_ITEMSET_ARG (&aSet,pPaperStartItem,SfxAllEnumItem,SID_PAPER_START );
- SFX_ITEMSET_ARG (&aSet,pPaperEndItem,SfxAllEnumItem,SID_PAPER_END );
- SFX_ITEMSET_ARG (&aSet,pCollectListItem,SfxStringListItem,SID_COLLECT_LIST );
- if (pModeItem)
+ SFX_ITEMSET_ARG(&aSet,pModeItem,SfxAllEnumItem,SID_ENUM_PAGE_MODE);
+ SFX_ITEMSET_ARG(&aSet,pPaperStartItem,SfxAllEnumItem,SID_PAPER_START);
+ SFX_ITEMSET_ARG(&aSet,pPaperEndItem,SfxAllEnumItem,SID_PAPER_END);
+ SFX_ITEMSET_ARG(&aSet,pCollectListItem,SfxStringListItem,SID_COLLECT_LIST);
+
+ //UUUU
+ SFX_ITEMSET_ARG (&aSet, pSupportDrawingLayerFillStyleItem, SfxBoolItem, SID_DRAWINGLAYER_FILLSTYLES);
+
+ if(pModeItem)
+ {
SetMode((SvxModeType)pModeItem->GetEnumValue());
- if (pPaperStartItem && pPaperEndItem)
- SetPaperFormatRanges( (Paper)pPaperStartItem->GetEnumValue(), (Paper)pPaperEndItem->GetEnumValue() );
- if (pCollectListItem)
+ }
+
+ if(pPaperStartItem && pPaperEndItem)
+ {
+ SetPaperFormatRanges((Paper)pPaperStartItem->GetEnumValue(),(Paper)pPaperEndItem->GetEnumValue());
+ }
+
+ if(pCollectListItem)
+ {
SetCollectionList(pCollectListItem->GetList());
+ }
+
+ if(pSupportDrawingLayerFillStyleItem)
+ {
+ const bool bNew(pSupportDrawingLayerFillStyleItem->GetValue());
+
+ EnableDrawingLayerFillStyles(bNew);
+ }
}
+
+//eof
diff --git a/cui/source/tabpages/tparea.cxx b/cui/source/tabpages/tparea.cxx
index 3340c68ffde6..06fd964add8b 100644
--- a/cui/source/tabpages/tparea.cxx
+++ b/cui/source/tabpages/tparea.cxx
@@ -840,8 +840,11 @@ void SvxAreaTabPage::Construct()
void SvxAreaTabPage::ActivatePage( const SfxItemSet& rSet )
{
- sal_uInt16 _nPos = 0;
- sal_uInt16 nCount;
+ //UUUU use evtl. previously selected entry to avoid changing values just by
+ // switching TabPages in dialogs using this TabPage
+ sal_uInt16 _nPos(nPos);
+ sal_uInt16 nCount(0);
+
//add CHINA001 Begin
SFX_ITEMSET_ARG (&rSet,pPageTypeItem,SfxUInt16Item,SID_PAGE_TYPE );
SFX_ITEMSET_ARG (&rSet,pPosItem,SfxUInt16Item,SID_TABPAGE_POS );
@@ -2756,6 +2759,7 @@ void SvxAreaTabPage::PageCreated (SfxAllItemSet aSet) //add CHINA001
SFX_ITEMSET_ARG (&aSet,pDlgTypeItem,SfxUInt16Item,SID_DLG_TYPE );
SFX_ITEMSET_ARG (&aSet,pPosItem,SfxUInt16Item,SID_TABPAGE_POS );
+
//UUUU
SFX_ITEMSET_ARG (&aSet, pOfferImportItem, SfxBoolItem, SID_OFFER_IMPORT );
diff --git a/cui/source/tabpages/tpline.cxx b/cui/source/tabpages/tpline.cxx
index 9a6f7fb97a0d..aba1d19c915c 100644
--- a/cui/source/tabpages/tpline.cxx
+++ b/cui/source/tabpages/tpline.cxx
@@ -1928,7 +1928,7 @@ IMPL_LINK( SvxLineTabPage, GraphicHdl_Impl, MenuButton *, pButton )
aSymbolSize=aSize;
}
else if( nPreviousSymbolType == SVX_SYMBOLTYPE_BRUSHITEM )
- { //#i31097# Data Point Symbol size changes when a different symbol is choosen(maoyg)
+ { //#i31097# Data Point Symbol size changes when a different symbol is chosen(maoyg)
if( aSymbolSize.Width() != aSymbolSize.Height() )
{
aSize.setWidth( (long)( aSymbolSize.Width() + aSymbolSize.Height() )/2 );
diff --git a/cui/source/tabpages/transfrm.cxx b/cui/source/tabpages/transfrm.cxx
index 64dbab803c0d..587c256d9fa9 100644
--- a/cui/source/tabpages/transfrm.cxx
+++ b/cui/source/tabpages/transfrm.cxx
@@ -835,7 +835,7 @@ void SvxPositionSizeTabPage::Construct()
if(!maAnchor.equal(pCandidate->GetAnchorPos()))
{
- // diferent anchor positions
+ // different anchor positions
maMtrPosX.SetText( String() );
maMtrPosY.SetText( String() );
mbPageDisabled = sal_True;
diff --git a/dbaccess/qa/complex/dbaccess/DatabaseDocument.java b/dbaccess/qa/complex/dbaccess/DatabaseDocument.java
index 6e0f43df91e5..da944aaeb905 100644
--- a/dbaccess/qa/complex/dbaccess/DatabaseDocument.java
+++ b/dbaccess/qa/complex/dbaccess/DatabaseDocument.java
@@ -886,7 +886,7 @@ public class DatabaseDocument extends TestCase implements com.sun.star.document.
for (int i = 0; i < _expectedEvents.length; ++i)
{
- assertEquals("wrong event at positon " + (i + 1) + " for '" + _context + "'",
+ assertEquals("wrong event at position " + (i + 1) + " for '" + _context + "'",
_expectedEvents[i], _actualEvents.get(i));
}
}
diff --git a/dbaccess/source/core/api/CacheSet.cxx b/dbaccess/source/core/api/CacheSet.cxx
index cd21bf96f98e..2b76e757d37b 100644
--- a/dbaccess/source/core/api/CacheSet.cxx
+++ b/dbaccess/source/core/api/CacheSet.cxx
@@ -171,11 +171,11 @@ OCacheSet::~OCacheSet()
}
catch(Exception&)
{
- OSL_ENSURE(0,"Exception occured");
+ OSL_ENSURE(0,"Exception occurred");
}
catch(...)
{
- OSL_ENSURE(0,"Unknown Exception occured");
+ OSL_ENSURE(0,"Unknown Exception occurred");
}
DBG_DTOR(OCacheSet,NULL);
@@ -300,7 +300,7 @@ void OCacheSet::fillParameters( const ORowSetRow& _rRow
::rtl::OUString aQuote = getIdentifierQuoteString();
- sal_Int32 nCheckCount = 1; // index for the orginal values
+ sal_Int32 nCheckCount = 1; // index for the original values
sal_Int32 i = 1;
::rtl::OUString sIsNull(RTL_CONSTASCII_USTRINGPARAM(" IS NULL"));
diff --git a/dbaccess/source/core/api/KeySet.cxx b/dbaccess/source/core/api/KeySet.cxx
index aa2539946104..f3464c35f476 100644
--- a/dbaccess/source/core/api/KeySet.cxx
+++ b/dbaccess/source/core/api/KeySet.cxx
@@ -182,7 +182,7 @@ OKeySet::~OKeySet()
}
catch(...)
{
- OSL_ENSURE(0,"Unknown Exception occured");
+ OSL_ENSURE(0,"Unknown Exception occurred");
}
m_xComposer = NULL;
diff --git a/dbaccess/source/core/api/RowSet.cxx b/dbaccess/source/core/api/RowSet.cxx
index 974b60e8b442..5b7e0a1ac3cf 100644
--- a/dbaccess/source/core/api/RowSet.cxx
+++ b/dbaccess/source/core/api/RowSet.cxx
@@ -2313,7 +2313,7 @@ sal_Bool ORowSet::impl_initComposer_throw( ::rtl::OUString& _out_rCommandToExecu
if ( m_bIgnoreResult )
{ // append a "0=1" filter
// don't simply overwrite an existent filter, this would lead to problems if this existent
- // filter contains paramters (since a keyset may add parameters itself)
+ // filter contains parameters (since a keyset may add parameters itself)
// 2003-12-12 - #23418# - fs@openoffice.org
m_xComposer->setElementaryQuery( m_xComposer->getQuery( ) );
m_xComposer->setFilter( ::rtl::OUString::createFromAscii( "0 = 1" ) );
diff --git a/dbaccess/source/core/api/RowSet.hxx b/dbaccess/source/core/api/RowSet.hxx
index e1554e4e35a8..755d4be95c80 100644
--- a/dbaccess/source/core/api/RowSet.hxx
+++ b/dbaccess/source/core/api/RowSet.hxx
@@ -173,7 +173,7 @@ namespace dbaccess
m_xActiveConnection points to a valid SDB-level connection
@throws com::sun::star::sdb::SQLException
- if an database-related error occured
+ if a database-related error occurred
@throws com::sun::star::uno::RuntimeException
if any of the components involved throws a com::sun::star::uno::RuntimeException
@@ -217,7 +217,7 @@ namespace dbaccess
void checkUpdateIterator();
const connectivity::ORowSetValue& getInsertValue(sal_Int32 columnIndex);
void setParameter(sal_Int32 parameterIndex, const connectivity::ORowSetValue& x);
- // resizes the parameter vector if nescessary
+ // resizes the parameter vector if necessary
::connectivity::ORowSetValue& getParameterStorage( sal_Int32 parameterIndex );
void updateValue(sal_Int32 columnIndex,const connectivity::ORowSetValue& x);
diff --git a/dbaccess/source/core/api/RowSetBase.cxx b/dbaccess/source/core/api/RowSetBase.cxx
index 6458dcd7faf4..7a05b9641b20 100644
--- a/dbaccess/source/core/api/RowSetBase.cxx
+++ b/dbaccess/source/core/api/RowSetBase.cxx
@@ -1134,7 +1134,7 @@ void ORowSetBase::setCurrentRow( sal_Bool _bMoved, sal_Bool _bDoNotify, const OR
#if OSL_DEBUG_LEVEL > 0
sal_Int32 nNewRow = m_pCache->getRow();
#endif
- OSL_ENSURE(nOldRow == nNewRow,"Old position is not equal to new postion");
+ OSL_ENSURE(nOldRow == nNewRow,"Old position is not equal to new position");
m_aCurrentRow = m_pCache->m_aMatrixIter;
m_bIsInsertRow = sal_False;
OSL_ENSURE(!m_aCurrentRow.isNull(),"CurrentRow is nul after positionCache!");
diff --git a/dbaccess/source/core/api/RowSetBase.hxx b/dbaccess/source/core/api/RowSetBase.hxx
index 73e265a3c495..51998b4c19b9 100644
--- a/dbaccess/source/core/api/RowSetBase.hxx
+++ b/dbaccess/source/core/api/RowSetBase.hxx
@@ -236,7 +236,7 @@ namespace dbaccess
void movementFailed();
ORowSetRow getOldRow(sal_Bool _bWasNew);
- /** move the cache the postion defined by the member functor
+ /** move the cache the position defined by the member functor
@param _aCheckFunctor
Return <TRUE/> when we already stand on the row we want to.
@param _aMovementFunctor
@@ -405,7 +405,7 @@ namespace dbaccess
private:
::std::auto_ptr<ORowSetNotifierImpl> m_pImpl;
ORowSetBase* m_pRowSet;
- // not aquired! This is not necessary because this class here is to be used on the stack within
+ // not acquired! This is not necessary because this class here is to be used on the stack within
// a method of ORowSetBase (or derivees)
sal_Bool m_bWasNew;
sal_Bool m_bWasModified;
diff --git a/dbaccess/source/core/api/RowSetCache.cxx b/dbaccess/source/core/api/RowSetCache.cxx
index d8ebf30f2d75..31fba3e39e7c 100644
--- a/dbaccess/source/core/api/RowSetCache.cxx
+++ b/dbaccess/source/core/api/RowSetCache.cxx
@@ -1030,7 +1030,7 @@ sal_Bool ORowSetCache::moveWindow()
if(m_nStartPos < 0)
m_nStartPos = 0;
}
- // here we need only to check if the begining row is valid. If not we have to fetch it.
+ // here we need only to check if the beginning row is valid. If not we have to fetch it.
if(!m_pMatrix->begin()->isValid())
{
aIter = m_pMatrix->begin();
@@ -1063,7 +1063,7 @@ sal_Bool ORowSetCache::moveWindow()
sal_Bool ORowSetCache::first( )
{
// first move to the first row
- // then check if the cache window is at the begining
+ // then check if the cache window is at the beginning
// when not postionize the window and fill it with data
// smart moving of the window -> clear only the rows whom are out of range
sal_Bool bRet = m_pCacheSet->first();
diff --git a/dbaccess/source/core/api/definitioncolumn.cxx b/dbaccess/source/core/api/definitioncolumn.cxx
index a83604e04b89..fb7b810bd21b 100644
--- a/dbaccess/source/core/api/definitioncolumn.cxx
+++ b/dbaccess/source/core/api/definitioncolumn.cxx
@@ -357,7 +357,7 @@ OColumnWrapper::OColumnWrapper( const Reference< XPropertySet > & rCol, const bo
{
DBG_CTOR(OColumnWrapper,NULL);
// which type of aggregate property do we have?
- // we distingish the properties by the containment of optional properties
+ // we distinguish the properties by the containment of optional properties
m_nColTypeID = 0;
if ( m_xAggregate.is() )
{
diff --git a/dbaccess/source/core/api/query.cxx b/dbaccess/source/core/api/query.cxx
index 98a36650bb8b..3eb0f9eca9b5 100644
--- a/dbaccess/source/core/api/query.cxx
+++ b/dbaccess/source/core/api/query.cxx
@@ -288,7 +288,7 @@ void SAL_CALL OQuery::propertyChange( const PropertyChangeEvent& _rSource ) thro
"OQuery::propertyChange : where did this call come from ?");
if (m_eDoingCurrently == SETTING_PROPERTIES)
- // we're setting the property ourself, so we will do the neccessary notifications later
+ // we're setting the property ourself, so we will do the necessary notifications later
return;
// forward this to our own member holding a copy of the property value
diff --git a/dbaccess/source/core/api/querycomposer.cxx b/dbaccess/source/core/api/querycomposer.cxx
index f71b98a1cc80..c7fa7e47f5c2 100644
--- a/dbaccess/source/core/api/querycomposer.cxx
+++ b/dbaccess/source/core/api/querycomposer.cxx
@@ -122,7 +122,7 @@ OQueryComposer::OQueryComposer(const Reference< XConnection>& _xConnection)
{
RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "dbaccess", "Ocke.Janssen@sun.com", "OQueryComposer::OQueryComposer" );
DBG_CTOR(OQueryComposer,NULL);
- OSL_ENSURE(_xConnection.is()," Connection cant be null!");
+ OSL_ENSURE(_xConnection.is()," Connection can't be null!");
Reference<XMultiServiceFactory> xFac( _xConnection, UNO_QUERY_THROW );
m_xComposer.set( xFac->createInstance( SERVICE_NAME_SINGLESELECTQUERYCOMPOSER ), UNO_QUERY_THROW );
diff --git a/dbaccess/source/core/api/querycontainer.cxx b/dbaccess/source/core/api/querycontainer.cxx
index c91ee7d417b7..0241444e74b0 100644
--- a/dbaccess/source/core/api/querycontainer.cxx
+++ b/dbaccess/source/core/api/querycontainer.cxx
@@ -249,7 +249,7 @@ void SAL_CALL OQueryContainer::dropByName( const ::rtl::OUString& _rName ) throw
throw DisposedException( ::rtl::OUString(), *this );
// now simply forward the remove request to the CommandDefinition container, we're a listener for the removal
- // and thus we do everything neccessary in ::elementRemoved
+ // and thus we do everything necessary in ::elementRemoved
m_xCommandDefinitions->removeByName(_rName);
}
diff --git a/dbaccess/source/core/dataaccess/ComponentDefinition.cxx b/dbaccess/source/core/dataaccess/ComponentDefinition.cxx
index 71d6cd301b50..cd0517fc0c86 100644
--- a/dbaccess/source/core/dataaccess/ComponentDefinition.cxx
+++ b/dbaccess/source/core/dataaccess/ComponentDefinition.cxx
@@ -312,7 +312,7 @@ void OComponentDefinition::columnAppended( const Reference< XPropertySet >& _rxS
// but xColDesc will live longer than this. So effectively, the setParent call was pretty useless.
//
// The intention for this parenting was that the column descriptor is able to find the data source,
- // by traveling up the parent hierachy until there's an XDataSource. This didn't work (which
+ // by traveling up the parent hierarchy until there's an XDataSource. This didn't work (which
// for instance causes #i65023#). We need another way to properly ensure this.
notifyDataSourceModified();
diff --git a/dbaccess/source/core/dataaccess/ModelImpl.hxx b/dbaccess/source/core/dataaccess/ModelImpl.hxx
index 8b76d323edce..8360d4f0bf7b 100644
--- a/dbaccess/source/core/dataaccess/ModelImpl.hxx
+++ b/dbaccess/source/core/dataaccess/ModelImpl.hxx
@@ -270,7 +270,7 @@ public:
/** stores the embedded storage ("database")
@param _bPreventRootCommits
- Normally, committing the embedded storage results in also commiting the root storage
+ Normally, committing the embedded storage results in also committing the root storage
- this is an automatism for data safety reasons.
If you pass <TRUE/> here, committing the root storage is prevented for this particular
call.
diff --git a/dbaccess/source/core/dataaccess/connection.cxx b/dbaccess/source/core/dataaccess/connection.cxx
index b71a8e15ee3a..13fbb4946311 100644
--- a/dbaccess/source/core/dataaccess/connection.cxx
+++ b/dbaccess/source/core/dataaccess/connection.cxx
@@ -315,7 +315,7 @@ OConnection::OConnection(ODatabaseSource& _rDB
, const Reference< XMultiServiceFactory >& _rxORB)
:OSubComponent(m_aMutex, static_cast< OWeakObject* >(&_rDB))
// as the queries reroute their refcounting to us, this m_aMutex is okey. If the queries
- // container would do it's own refcounting, it would have to aquire m_pMutex
+ // container would do it's own refcounting, it would have to acquire m_pMutex
// same for tables
,m_aTableFilter(_rDB.m_pImpl->m_aTableFilter)
,m_aTableTypeFilter(_rDB.m_pImpl->m_aTableTypeFilter)
diff --git a/dbaccess/source/core/dataaccess/databasedocument.cxx b/dbaccess/source/core/dataaccess/databasedocument.cxx
index f0da7a07476d..2a21b0b3b464 100644
--- a/dbaccess/source/core/dataaccess/databasedocument.cxx
+++ b/dbaccess/source/core/dataaccess/databasedocument.cxx
@@ -992,7 +992,7 @@ void ODatabaseDocument::impl_storeAs_throw( const ::rtl::OUString& _rURL, const
// if we're in the process of initializing the document (which effectively means it is an implicit
// initialization triggered in storeAsURL), the we do not notify events, since to an observer, the SaveAs
- // should not be noticable
+ // should not be noticeable
bool bIsInitializationProcess = impl_isInitializing();
if ( !bIsInitializationProcess )
diff --git a/dbaccess/source/core/dataaccess/databasedocument.hxx b/dbaccess/source/core/dataaccess/databasedocument.hxx
index d2aa28034d44..2256522d2ed5 100644
--- a/dbaccess/source/core/dataaccess/databasedocument.hxx
+++ b/dbaccess/source/core/dataaccess/databasedocument.hxx
@@ -503,7 +503,7 @@ private:
/** closes the frames of all connected controllers
@param _bDeliverOwnership
- determines if the ownership should be transfered to the component which
+ determines if the ownership should be transferred to the component which
possibly vetos the closing
@raises ::com::sun::star::util::CloseVetoException
diff --git a/dbaccess/source/core/dataaccess/datasource.cxx b/dbaccess/source/core/dataaccess/datasource.cxx
index 348408609f1b..f0bb910db27a 100644
--- a/dbaccess/source/core/dataaccess/datasource.cxx
+++ b/dbaccess/source/core/dataaccess/datasource.cxx
@@ -330,7 +330,7 @@ class OSharedConnectionManager : public OConnectionHelper_BASE
typedef ::std::map< Reference< XConnection >,TConnectionMap::iterator> TSharedConnectionMap;// holds the shared connections
::osl::Mutex m_aMutex;
- TConnectionMap m_aConnections; // remeber the master connection in conjunction with the digest
+ TConnectionMap m_aConnections; // remember the master connection in conjunction with the digest
TSharedConnectionMap m_aSharedConnection; // the shared connections with conjunction with an iterator into the connections map
Reference< XProxyFactory > m_xProxyFactory;
@@ -1232,7 +1232,7 @@ Reference< XConnection > SAL_CALL ODatabaseSource::connectWithCompletion( const
if (bNewPasswordGiven)
{
m_pImpl->m_sFailedPassword = m_pImpl->m_aPassword;
- // assume that we had an authentication problem. Without this we may, after an unsucessful connect, while
+ // assume that we had an authentication problem. Without this we may, after an unsuccessful connect, while
// the user gave us a password an the order to remember it, never allow an password input again (at least
// not without restarting the session)
m_pImpl->m_aPassword = ::rtl::OUString();
@@ -1393,8 +1393,8 @@ void SAL_CALL ODatabaseSource::flushed( const EventObject& /*rEvent*/ ) throw (R
//
// Since this is a conceptual problem as long as we do use those ZIP packages (in fact, we *cannot*
// provide the desired functionality as long as we do not have a package format which allows O(1) writes),
- // we cannot completely fix this. However, we can relax the problem by commiting more often - often
- // enough so that data loss is more seldom, and seldom enough so that there's no noticable performance
+ // we cannot completely fix this. However, we can relax the problem by committing more often - often
+ // enough so that data loss is more seldom, and seldom enough so that there's no noticeable performance
// decrease.
//
// For this, we introduced a few places which XFlushable::flush their connections, and register as
diff --git a/dbaccess/source/core/misc/DatabaseDataProvider.cxx b/dbaccess/source/core/misc/DatabaseDataProvider.cxx
index d3fdfce13834..79a64226baf9 100644
--- a/dbaccess/source/core/misc/DatabaseDataProvider.cxx
+++ b/dbaccess/source/core/misc/DatabaseDataProvider.cxx
@@ -237,7 +237,7 @@ uno::Reference< chart2::data::XDataSource > SAL_CALL DatabaseDataProvider::creat
{
}
}
- if ( !bRet ) // no command set or an error occured, use Internal data handler
+ if ( !bRet ) // no command set or an error occurred, use Internal data handler
{
uno::Reference< lang::XInitialization> xIni(m_xInternal,uno::UNO_QUERY);
if ( xIni.is() )
diff --git a/dbaccess/source/ext/adabas/Acomponentmodule.hxx b/dbaccess/source/ext/adabas/Acomponentmodule.hxx
index 9df3b28eedab..5048c25d88c8 100644
--- a/dbaccess/source/ext/adabas/Acomponentmodule.hxx
+++ b/dbaccess/source/ext/adabas/Acomponentmodule.hxx
@@ -24,7 +24,7 @@
#ifndef _EXTENSIONS_COMPONENT_MODULE_HXX_
#define _EXTENSIONS_COMPONENT_MODULE_HXX_
-/** you may find this file helpfull if you implement a component (in it's own library) which can't use
+/** you may find this file helpful if you implement a component (in it's own library) which can't use
the usual infrastructure.<br/>
More precise, you find helper classes to ease the use of resources and the registration of services.
<p>
diff --git a/dbaccess/source/filter/xml/xmlfilter.cxx b/dbaccess/source/filter/xml/xmlfilter.cxx
index c2a8d7cbd4bd..c226e658f1bf 100644
--- a/dbaccess/source/filter/xml/xmlfilter.cxx
+++ b/dbaccess/source/filter/xml/xmlfilter.cxx
@@ -383,7 +383,7 @@ sal_Int32 ReadThroughComponent(
if ( !xStorage->hasByName( sStreamName ) || !xStorage->isStreamElement( sStreamName ) )
{
// stream name not found! Then try the compatibility name.
- // if no stream can be opened, return immediatly with OK signal
+ // if no stream can be opened, return immediately with OK signal
// do we even have an alternative name?
if ( NULL == pCompatibilityStreamName )
diff --git a/dbaccess/source/ui/app/AppController.hxx b/dbaccess/source/ui/app/AppController.hxx
index edbfdda503e5..41890dee2e6f 100644
--- a/dbaccess/source/ui/app/AppController.hxx
+++ b/dbaccess/source/ui/app/AppController.hxx
@@ -280,7 +280,7 @@ namespace dbaui
@param _bMove
if <TRUE/> the name of the content must be inserted without any change, otherwise not.
@return
- <TRUE/> if the paste opertions was successfull, otherwise <FALSE/>.
+ <TRUE/> if the paste opertions was successful, otherwise <FALSE/>.
*/
sal_Bool paste( ElementType _eType,const ::svx::ODataAccessDescriptor& _rPasteData ,const String& _sParentFolder = String(),sal_Bool _bMove = sal_False);
@@ -338,7 +338,7 @@ namespace dbaui
const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XComponent >& _xDefinition
);
- /** Inserts a new object into the hierachy given be the type.
+ /** Inserts a new object into the hierarchy given be the type.
@param _eType
Where to insert the new item.
@param _sParentFolder
@@ -348,7 +348,7 @@ namespace dbaui
@param _bMove
if <TRUE/> the name of the content must be inserted without any change, otherwise not.
@return
- <TRUE/> if the insert opertions was successfull, otherwise <FALSE/>.
+ <TRUE/> if the insert opertions was successful, otherwise <FALSE/>.
*/
sal_Bool insertHierachyElement( ElementType _eType
,const String& _sParentFolder
diff --git a/dbaccess/source/ui/app/AppControllerDnD.cxx b/dbaccess/source/ui/app/AppControllerDnD.cxx
index 1c81fcdaf26f..2b5e262788e4 100644
--- a/dbaccess/source/ui/app/AppControllerDnD.cxx
+++ b/dbaccess/source/ui/app/AppControllerDnD.cxx
@@ -294,7 +294,7 @@ void OApplicationController::deleteTables(const ::std::vector< ::rtl::OUString>&
if(e.TargetException >>= aSql)
aErrorInfo = aSql;
else
- OSL_ENSURE(sal_False, "OApplicationController::implDropTable: something strange happended!");
+ OSL_ENSURE(sal_False, "OApplicationController::implDropTable: something strange happened!");
}
catch( const Exception& )
{
@@ -415,7 +415,7 @@ void OApplicationController::deleteObjects( ElementType _eType, const ::std::vec
if ( e.TargetException >>= aSql )
showError( SQLExceptionInfo( e.TargetException ) );
else
- OSL_ENSURE( sal_False, "OApplicationController::deleteObjects: something strange happended!" );
+ OSL_ENSURE( sal_False, "OApplicationController::deleteObjects: something strange happened!" );
}
catch( const Exception& )
{
@@ -689,7 +689,7 @@ sal_Bool OApplicationController::paste( ElementType _eType,const ::svx::ODataAcc
if ( CommandType::QUERY == nCommandType || CommandType::COMMAND == nCommandType )
{
- // read all nescessary data
+ // read all necessary data
::rtl::OUString sCommand;
sal_Bool bEscapeProcessing = sal_True;
diff --git a/dbaccess/source/ui/app/AppDetailPageHelper.hxx b/dbaccess/source/ui/app/AppDetailPageHelper.hxx
index ea24dd944ed0..17bc2bc684c7 100644
--- a/dbaccess/source/ui/app/AppDetailPageHelper.hxx
+++ b/dbaccess/source/ui/app/AppDetailPageHelper.hxx
@@ -87,7 +87,7 @@ namespace dbaui
the resulting rectangle
@return
- <TRUE/> when successfull
+ <TRUE/> when successful
*/
sal_Bool ImplGetGraphicCenterRect( const Graphic& rGraphic, Rectangle& rResultRect ) const;
void ImplInitSettings( sal_Bool bFont, sal_Bool bForeground, sal_Bool bBackground );
diff --git a/dbaccess/source/ui/app/AppDetailView.cxx b/dbaccess/source/ui/app/AppDetailView.cxx
index 2d887feafd92..a99c095cef60 100644
--- a/dbaccess/source/ui/app/AppDetailView.cxx
+++ b/dbaccess/source/ui/app/AppDetailView.cxx
@@ -482,7 +482,7 @@ void OTasksWindow::setHelpText(sal_uInt16 _nId)
{
String sText = ModuleRes(_nId);
- // calulate the size of the text field
+ // calculate the size of the text field
// Size aHelpTextSize = m_aHelpText.GetSizePixel();
// Size aHelpTextPixelSize = LogicToPixel( aHelpTextSize, MAP_APPFONT );
// Rectangle aPrimaryRect( Point(0,0), aHelpTextSize );
diff --git a/dbaccess/source/ui/browser/brwctrlr.cxx b/dbaccess/source/ui/browser/brwctrlr.cxx
index 0bc5d5b0ccfa..2d902fead81f 100644
--- a/dbaccess/source/ui/browser/brwctrlr.cxx
+++ b/dbaccess/source/ui/browser/brwctrlr.cxx
@@ -2112,7 +2112,7 @@ void SbaXDataBrowserController::Execute(sal_uInt16 nId, const Sequence< Property
else
{
if ( !SaveModified( ) )
- // give the user a chance to save the current record (if neccessary)
+ // give the user a chance to save the current record (if necessary)
break;
// maybe the user wanted to reject the modified record ?
@@ -2877,7 +2877,7 @@ public:
bool WaitUntilReallyLoaded(bool _bOnlyIfLoaded);
- // waits 'til the first positioned event after the loaded event. returns true if successfull,
+ // waits 'til the first positioned event after the loaded event. returns true if successful,
// false if the form was disposed or unloaded before or while waiting
// if _bOnlyIfLoaded is false and the form isn't loaded already loaded, false will be returned
// (without any wating)
diff --git a/dbaccess/source/ui/browser/genericcontroller.cxx b/dbaccess/source/ui/browser/genericcontroller.cxx
index 25f311e58ec1..8f2187779806 100644
--- a/dbaccess/source/ui/browser/genericcontroller.cxx
+++ b/dbaccess/source/ui/browser/genericcontroller.cxx
@@ -561,7 +561,7 @@ void OGenericUnoController::ImplBroadcastFeatureState(const ::rtl::OUString& _rF
sal_uInt16 nFeat = m_aSupportedFeatures[ _rFeature ].nFeatureId;
FeatureState aFeatState( GetState( nFeat ) );
- FeatureState& rCachedState = m_aStateCache[nFeat]; // creates if neccessary
+ FeatureState& rCachedState = m_aStateCache[nFeat]; // creates if necessary
if ( !_bIgnoreCache )
{
// check if we really need to notify the listeners : this method may be called much more often than needed, so check
@@ -863,7 +863,7 @@ void OGenericUnoController::addStatusListener(const Reference< XStatusListener >
if ( m_xUrlTransformer.is() )
m_xUrlTransformer->parseStrict( aParsedURL );
- // remeber the listener together with the URL
+ // remember the listener together with the URL
m_arrStatusListener.insert( m_arrStatusListener.end(), DispatchTarget( aParsedURL, aListener ) );
// initially broadcast the state
diff --git a/dbaccess/source/ui/browser/sbagrid.cxx b/dbaccess/source/ui/browser/sbagrid.cxx
index d432db22a454..06a00fa688c0 100644
--- a/dbaccess/source/ui/browser/sbagrid.cxx
+++ b/dbaccess/source/ui/browser/sbagrid.cxx
@@ -1234,7 +1234,7 @@ Reference< XPropertySet > SbaGridControl::getField(sal_uInt16 nModelPos)
}
catch(Exception&)
{
- OSL_ENSURE(0,"SbaGridControl::getField Exception occured!");
+ OSL_ENSURE(0,"SbaGridControl::getField Exception occurred!");
}
return xEmptyReturn;
diff --git a/dbaccess/source/ui/browser/unodatbr.cxx b/dbaccess/source/ui/browser/unodatbr.cxx
index 040455535ba9..05d549f2335d 100644
--- a/dbaccess/source/ui/browser/unodatbr.cxx
+++ b/dbaccess/source/ui/browser/unodatbr.cxx
@@ -2057,7 +2057,7 @@ void SbaTableQueryBrowser::Execute(sal_uInt16 nId, const Sequence< PropertyValue
{
aDescriptor[daSelection] <<= aSelection;
aDescriptor[daBookmarkSelection] <<= sal_False;
- // these are selection indicies
+ // these are selection indices
// before we change this, all clients have to be adjusted
// so that they recognize the new BookmarkSelection property!
}
@@ -2303,7 +2303,7 @@ IMPL_LINK(SbaTableQueryBrowser, OnExpandEntry, SvLBoxEntry*, _pParent)
if(e.TargetException >>= aSql)
aInfo = aSql;
else
- OSL_ENSURE(sal_False, "SbaTableQueryBrowser::OnExpandEntry: something strange happended!");
+ OSL_ENSURE(sal_False, "SbaTableQueryBrowser::OnExpandEntry: something strange happened!");
}
catch( const Exception& )
{
@@ -2314,7 +2314,7 @@ IMPL_LINK(SbaTableQueryBrowser, OnExpandEntry, SvLBoxEntry*, _pParent)
}
else
return 0L;
- // 0 indicates that an error occured
+ // 0 indicates that an error occurred
}
else
{ // we have to expand the queries or bookmarks
@@ -2776,7 +2776,7 @@ bool SbaTableQueryBrowser::implSelect( SvLBoxEntry* _pEntry )
if(e.TargetException >>= aSql)
showError(SQLExceptionInfo(aSql));
else
- OSL_ENSURE(sal_False, "SbaTableQueryBrowser::implSelect: something strange happended!");
+ OSL_ENSURE(sal_False, "SbaTableQueryBrowser::implSelect: something strange happened!");
// reset the values
xRowSetProps->setPropertyValue(PROPERTY_DATASOURCENAME,Any());
xRowSetProps->setPropertyValue(PROPERTY_ACTIVE_CONNECTION,Any());
@@ -3115,7 +3115,7 @@ void SbaTableQueryBrowser::unloadAndCleanup( sal_Bool _bDisposeConnection )
if(e.TargetException >>= aSql)
showError(SQLExceptionInfo(aSql));
else
- OSL_ENSURE(sal_False, "SbaTableQueryBrowser::unloadAndCleanup: something strange happended!");
+ OSL_ENSURE(sal_False, "SbaTableQueryBrowser::unloadAndCleanup: something strange happened!");
}
catch(Exception&)
{
diff --git a/dbaccess/source/ui/control/dbtreelistbox.cxx b/dbaccess/source/ui/control/dbtreelistbox.cxx
index da7766899797..84cc55c44c0d 100644
--- a/dbaccess/source/ui/control/dbtreelistbox.cxx
+++ b/dbaccess/source/ui/control/dbtreelistbox.cxx
@@ -184,7 +184,7 @@ void DBTreeListBox::RequestingChilds( SvLBoxEntry* pParent )
{
if (!m_aPreExpandHandler.Call(pParent))
{
- // an error occured. The method calling us will reset the entry flags, so it can't be expanded again.
+ // an error occurred. The method calling us will reset the entry flags, so it can't be expanded again.
// But we want that the user may do a second try (i.e. because he misstypes a password in this try), so
// we have to reset these flags controlling the expand ability
PostUserEvent(LINK(this, DBTreeListBox, OnResetEntry), pParent);
diff --git a/dbaccess/source/ui/control/tabletree.cxx b/dbaccess/source/ui/control/tabletree.cxx
index 4101744b37bd..c34b4b697c8c 100644
--- a/dbaccess/source/ui/control/tabletree.cxx
+++ b/dbaccess/source/ui/control/tabletree.cxx
@@ -246,7 +246,7 @@ void OTableTreeListBox::UpdateTableList( const Reference< XConnection >& _rxConn
}
catch(Exception&)
{
- // a non-SQLException exception occured ... simply throw an SQLException
+ // a non-SQLException exception occurred ... simply throw an SQLException
SQLException aInfo;
aInfo.Message = sCurrentActionError;
throw aInfo;
diff --git a/dbaccess/source/ui/dlg/AdabasStat.hxx b/dbaccess/source/ui/dlg/AdabasStat.hxx
index ca212a976c54..472ba0d32a4d 100644
--- a/dbaccess/source/ui/dlg/AdabasStat.hxx
+++ b/dbaccess/source/ui/dlg/AdabasStat.hxx
@@ -76,7 +76,7 @@ namespace dbaui
m_xConnection; /// valid as long as the page is active
sal_Bool m_bErrorShown; // true when we shown already the error
- // check if the given table is accessable by the connected user
+ // check if the given table is accessible by the connected user
sal_Bool checkSystemTable(const ::rtl::OUString& _rsSystemTable, ::rtl::OUString& _rsSchemaName );
void showError();
diff --git a/dbaccess/source/ui/dlg/ConnectionPage.hxx b/dbaccess/source/ui/dlg/ConnectionPage.hxx
index 9df3bb282fd7..7030f4e29b0e 100644
--- a/dbaccess/source/ui/dlg/ConnectionPage.hxx
+++ b/dbaccess/source/ui/dlg/ConnectionPage.hxx
@@ -47,7 +47,7 @@ namespace dbaui
//= OConnectionTabPage
//=========================================================================
- /** implements the connection page of teh data source properties dialog.
+ /** implements the connection page of the data source properties dialog.
*/
class OConnectionTabPage : public OConnectionHelper
{
diff --git a/dbaccess/source/ui/dlg/DbAdminImpl.hxx b/dbaccess/source/ui/dlg/DbAdminImpl.hxx
index 801c2ce206f6..d5801d06360a 100644
--- a/dbaccess/source/ui/dlg/DbAdminImpl.hxx
+++ b/dbaccess/source/ui/dlg/DbAdminImpl.hxx
@@ -154,7 +154,7 @@ namespace dbaui
*/
String getConnectionURL() const;
- /// fill the nescessary information from the url line
+ /// fill the necessary information from the url line
void convertUrl(SfxItemSet& _rDest);
const MapInt2String& getIndirectProperties() const { return m_aIndirectPropTranslator; }
diff --git a/dbaccess/source/ui/dlg/UserAdmin.cxx b/dbaccess/source/ui/dlg/UserAdmin.cxx
index ad728e337290..7c8e4f99715b 100644
--- a/dbaccess/source/ui/dlg/UserAdmin.cxx
+++ b/dbaccess/source/ui/dlg/UserAdmin.cxx
@@ -138,7 +138,7 @@ OPasswordDialog::OPasswordDialog(Window* _pParent,const String& _sUserName) :
aCancelBtn ( this, ModuleRes( BTN_PASSWORD_CANCEL ) ),
aHelpBtn ( this, ModuleRes( BTN_PASSWORD_HELP ) )
{
- // hide until a help is avalable
+ // hide until a help is available
aHelpBtn.Hide();
FreeResource();
diff --git a/dbaccess/source/ui/dlg/adminpages.hxx b/dbaccess/source/ui/dlg/adminpages.hxx
index 1ee532dafa16..8a583942c651 100644
--- a/dbaccess/source/ui/dlg/adminpages.hxx
+++ b/dbaccess/source/ui/dlg/adminpages.hxx
@@ -159,7 +159,7 @@ namespace dbaui
@param _sReturn
<OUT/> contains the selected name.
@return
- <FALSE/> if an error occured, otherwise <TRUE/>
+ <FALSE/> if an error occurred, otherwise <TRUE/>
*/
sal_Bool getSelectedDataSource(::rtl::OUString& _sReturn,::rtl::OUString& _sCurr);
@@ -218,7 +218,7 @@ namespace dbaui
@param _pCheckBox
The check box which is checked.
@param _nID
- The id in the itemset to set whith the new value.
+ The id in the itemset to set with the new value.
@param _bChangedSomething
<TRUE/> if something changed otherwise <FALSE/>
@param _bRevertValue
@@ -232,7 +232,7 @@ namespace dbaui
@param _pEdit
The check box which is checked.
@param _nID
- The id in the itemset to set whith the new value.
+ The id in the itemset to set with the new value.
@param _bChangedSomething
<TRUE/> if something changed otherwise <FALSE/>
*/
@@ -244,7 +244,7 @@ namespace dbaui
@param _pEdit
The check box which is checked.
@param _nID
- The id in the itemset to set whith the new value.
+ The id in the itemset to set with the new value.
@param _bChangedSomething
<TRUE/> if something changed otherwise <FALSE/>
*/
diff --git a/dbaccess/source/ui/dlg/advancedsettings.cxx b/dbaccess/source/ui/dlg/advancedsettings.cxx
index b63fd5ef1898..cd55d2243c01 100644
--- a/dbaccess/source/ui/dlg/advancedsettings.cxx
+++ b/dbaccess/source/ui/dlg/advancedsettings.cxx
@@ -215,7 +215,7 @@ namespace dbaui
{
OSL_PRECOND( m_aBooleanSettings.empty(), "SpecialSettingsPage::impl_initBooleanSettings: called twice!" );
- // for easier maintainance, write the table in this form, then copy it to m_aBooleanSettings
+ // for easier maintenance, write the table in this form, then copy it to m_aBooleanSettings
BooleanSettingDesc aSettings[] = {
{ &m_pIsSQL92Check, CB_SQL92CHECK, DSID_SQL92CHECK, false },
{ &m_pAppendTableAlias, CB_APPENDTABLEALIAS, DSID_APPEND_TABLE_ALIAS, false },
diff --git a/dbaccess/source/ui/dlg/dbadmin.cxx b/dbaccess/source/ui/dlg/dbadmin.cxx
index 45c44d6539d2..0fe6f5f62d61 100644
--- a/dbaccess/source/ui/dlg/dbadmin.cxx
+++ b/dbaccess/source/ui/dlg/dbadmin.cxx
@@ -488,7 +488,7 @@ SfxItemSet* ODbAdminDialog::createItemSet(SfxItemSet*& _rpSet, SfxItemPool*& _rp
//-------------------------------------------------------------------------
void ODbAdminDialog::destroyItemSet(SfxItemSet*& _rpSet, SfxItemPool*& _rpPool, SfxPoolItem**& _rppDefaults)
{
- // _first_ delete the set (refering the pool)
+ // _first_ delete the set (referring the pool)
if (_rpSet)
{
delete _rpSet;
diff --git a/dbaccess/source/ui/dlg/directsql.cxx b/dbaccess/source/ui/dlg/directsql.cxx
index 8262163635b1..0c3a089561a1 100644
--- a/dbaccess/source/ui/dlg/directsql.cxx
+++ b/dbaccess/source/ui/dlg/directsql.cxx
@@ -246,7 +246,7 @@ DBG_NAME(DirectSQLDialog)
if (xStatement.is())
xStatement->execute(_rStatement);
- // successfull
+ // successful
sStatus = String(ModuleRes(STR_COMMAND_EXECUTED_SUCCESSFULLY));
// dispose the statement
diff --git a/dbaccess/source/ui/dlg/generalpage.cxx b/dbaccess/source/ui/dlg/generalpage.cxx
index b2589b41f6f9..456e760bf8ac 100644
--- a/dbaccess/source/ui/dlg/generalpage.cxx
+++ b/dbaccess/source/ui/dlg/generalpage.cxx
@@ -406,7 +406,7 @@ namespace dbaui
// For the databaseWizard we only have one entry for the MySQL Database,
- // because we have a seperate tabpage to retrieve the respective datasource type
+ // because we have a separate tabpage to retrieve the respective datasource type
// ( ::dbaccess::DST_MYSQL_ODBC || ::dbaccess::DST_MYSQL_JDBC). Therefore we use ::dbaccess::DST_MYSQL_JDBC as a temporary
// representative for all MySQl databases)
// Also, embedded databases (embedded HSQL, at the moment), are not to appear in the list of
diff --git a/dbaccess/source/ui/dlg/generalpage.hxx b/dbaccess/source/ui/dlg/generalpage.hxx
index 6d65ae2ced07..e435f83ce2a0 100644
--- a/dbaccess/source/ui/dlg/generalpage.hxx
+++ b/dbaccess/source/ui/dlg/generalpage.hxx
@@ -113,7 +113,7 @@ namespace dbaui
Link m_aTypeSelectHandler; /// to be called if a new type is selected
Link m_aCreationModeHandler; /// to be called if a new type is selected
Link m_aDocumentSelectionHandler; /// to be called when a document in the RecentDoc list is selected
- Link m_aChooseDocumentHandler; /// to be called when a recent document has been definately chosen
+ Link m_aChooseDocumentHandler; /// to be called when a recent document has been definitely chosen
sal_Bool m_bDisplayingInvalid : 1; // the currently displayed data source is deleted
sal_Bool m_bUserGrabFocus : 1;
bool m_bInitTypeList : 1;
diff --git a/dbaccess/source/ui/dlg/tablespage.cxx b/dbaccess/source/ui/dlg/tablespage.cxx
index 33c1f4da1577..1914b7a22dd1 100644
--- a/dbaccess/source/ui/dlg/tablespage.cxx
+++ b/dbaccess/source/ui/dlg/tablespage.cxx
@@ -258,7 +258,7 @@ DBG_NAME(OTableSubscriptionPage)
// the catalog entry
SvLBoxEntry* pCatalog = m_aTablesList.GetEntryPosByName(sCatalog, pRootEntry);
if (!pCatalog && sCatalog.getLength())
- // the table (resp. its catalog) refered in this filter entry does not exist anymore
+ // the table (resp. its catalog) referred in this filter entry does not exist anymore
continue;
if (bAllSchemas && pCatalog)
@@ -270,7 +270,7 @@ DBG_NAME(OTableSubscriptionPage)
// the schema entry
SvLBoxEntry* pSchema = m_aTablesList.GetEntryPosByName(sSchema, (pCatalog ? pCatalog : pRootEntry));
if (!pSchema && sSchema.getLength())
- // the table (resp. its schema) refered in this filter entry does not exist anymore
+ // the table (resp. its schema) referred in this filter entry does not exist anymore
continue;
if (bAllTables && pSchema)
diff --git a/dbaccess/source/ui/inc/JoinTableView.hxx b/dbaccess/source/ui/inc/JoinTableView.hxx
index 629a2ef0ff67..8ceef0b1b0d7 100644
--- a/dbaccess/source/ui/inc/JoinTableView.hxx
+++ b/dbaccess/source/ui/inc/JoinTableView.hxx
@@ -209,7 +209,7 @@ namespace dbaui
OTableConnection* GetTabConn(const OTableWindow* pLhs,const OTableWindow* pRhs,bool _bSupressCrossOrNaturalJoin = false,const OTableConnection* _rpFirstAfter = NULL) const;
// clears the window map and connection vector without destroying it
- // that means teh data of the windows and connection will be untouched
+ // that means the data of the windows and connection will be untouched
void clearLayoutInformation();
// set the focus to that tab win which most recently had it (or to the first available one)
@@ -247,7 +247,7 @@ namespace dbaui
void modified();
- /** returns if teh given window is visible.
+ /** returns if the given window is visible.
@param _rPoint
The Point to check
@param _rSize
diff --git a/dbaccess/source/ui/inc/TableController.hxx b/dbaccess/source/ui/inc/TableController.hxx
index 3024f5c481d3..e77cecd498f4 100644
--- a/dbaccess/source/ui/inc/TableController.hxx
+++ b/dbaccess/source/ui/inc/TableController.hxx
@@ -55,7 +55,7 @@ namespace dbaui
::rtl::OUString m_sName; // table for update data
::rtl::OUString m_sAutoIncrementValue; // the autoincrement value set in the datasource
String m_sTypeNames; // these type names are the ones out of the resource file
- TOTypeInfoSP m_pTypeInfo; // fall back when type is unkown because database driver has a failure
+ TOTypeInfoSP m_pTypeInfo; // fall back when type is unknown because database driver has a failure
sal_Bool m_bAllowAutoIncrementValue; // no : 1 NO BIT , is true when the datasource has a AutoIncrementValue property in their info property
sal_Bool m_bNew : 1; // is true when we create a new table
@@ -107,7 +107,7 @@ namespace dbaui
inline ::std::vector< ::boost::shared_ptr<OTableRow> >* getRows() { return &m_vRowList; }
- /// returns the postion of the the first empty row
+ /// returns the position of the the first empty row
sal_Int32 getFirstEmptyRowPosition();
inline const OTypeInfoMap* getTypeInfo() const { return &m_aTypeInfo; }
diff --git a/dbaccess/source/ui/inc/UITools.hxx b/dbaccess/source/ui/inc/UITools.hxx
index 116ae17ccea7..730c3af10216 100644
--- a/dbaccess/source/ui/inc/UITools.hxx
+++ b/dbaccess/source/ui/inc/UITools.hxx
@@ -148,7 +148,7 @@ namespace dbaui
/** fills a map and a vector with localized type names
@param _rxConnection the connection to acces the metadata
- @param _rsTypeNames a list of localized type names seperated with ';'
+ @param _rsTypeNames a list of localized type names separated with ';'
@param _rTypeInfoMap the filled map with the type names
@param _rTypeInfoIters the vector filled with map iterators
*/
@@ -222,7 +222,7 @@ namespace dbaui
*/
::com::sun::star::awt::FontDescriptor CreateFontDescriptor( const Font& _rFont );
- /** call teh format dialog and set the selected format at the column
+ /** call the format dialog and set the selected format at the column
@param _xAffectedCol Font to be converted
@param _xField Font to be converted
*/
@@ -419,7 +419,7 @@ namespace dbaui
*/
const SfxFilter* getStandardDatabaseFilter();
- /** opens a save dialog to store a form or report folder in the current hierachy.
+ /** opens a save dialog to store a form or report folder in the current hierarchy.
@param _pParent
The parent of the dialog.
@param _rxORB
@@ -437,7 +437,7 @@ namespace dbaui
@param _bMove
if <TRUE/> the name of the content must be inserted without any change, otherwise not.
@return
- <TRUE/> if the insert opertions was successfull, otherwise <FALSE/>.
+ <TRUE/> if the insert opertions was successful, otherwise <FALSE/>.
*/
sal_Bool insertHierachyElement(
Window* _pParent,
diff --git a/dbaccess/source/ui/inc/brwctrlr.hxx b/dbaccess/source/ui/inc/brwctrlr.hxx
index 71dc1fa62ab6..2a9dcf3f4219 100644
--- a/dbaccess/source/ui/inc/brwctrlr.hxx
+++ b/dbaccess/source/ui/inc/brwctrlr.hxx
@@ -123,7 +123,7 @@ namespace dbaui
sal_Bool m_bLoadCanceled : 1; // the load was canceled somehow
sal_Bool m_bClosingKillOpen : 1; // are we killing the load thread because we are to be suspended ?
- bool m_bCannotSelectUnfiltered : 1; // recieved an DATA_CANNOT_SELECT_UNFILTERED error
+ bool m_bCannotSelectUnfiltered : 1; // received a DATA_CANNOT_SELECT_UNFILTERED error
protected:
class FormErrorHelper
@@ -252,7 +252,7 @@ namespace dbaui
// is synchronized with a foreign ::com::sun::star::form::DatabaseForm you got elsewhere)
virtual sal_Bool InitializeForm(
const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet >& i_formProperties ) = 0;
- // called immediately after a successfull CreateForm
+ // called immediately after a successful CreateForm
// do any initialization (data source etc.) here. the form should be fully functional after that.
// return sal_False if you didn't succeed (don't throw exceptions, they won't be caught)
diff --git a/dbaccess/source/ui/inc/datasourcemap.hxx b/dbaccess/source/ui/inc/datasourcemap.hxx
index 71c650e088d7..71d347dbd788 100644
--- a/dbaccess/source/ui/inc/datasourcemap.hxx
+++ b/dbaccess/source/ui/inc/datasourcemap.hxx
@@ -118,7 +118,7 @@ namespace dbaui
void clearModifiedFlag(const ::rtl::OUString& _rName);
/** tell the map that a data source is scheduled to be deleted.
- @return id for accessing the deleted data source later. -1 if no free id existed or an error occured
+ @return id for accessing the deleted data source later. -1 if no free id existed or an error occurred
*/
sal_Int32 markDeleted(const ::rtl::OUString& _rName);
diff --git a/dbaccess/source/ui/inc/dbadmin.hxx b/dbaccess/source/ui/inc/dbadmin.hxx
index 1f28dd731d4b..82bb30ca883a 100644
--- a/dbaccess/source/ui/inc/dbadmin.hxx
+++ b/dbaccess/source/ui/inc/dbadmin.hxx
@@ -125,7 +125,7 @@ private:
{
AR_LEAVE_MODIFIED, // somthing was modified and has successfully been committed
AR_LEAVE_UNCHANGED, // no changes were made
- AR_KEEP // don't leave the page (e.g. because an error occured)
+ AR_KEEP // don't leave the page (e.g. because an error occurred)
};
/** apply all changes made
*/
diff --git a/dbaccess/source/ui/inc/dbwiz.hxx b/dbaccess/source/ui/inc/dbwiz.hxx
index 84749e4f1612..0b5b5165d6b1 100644
--- a/dbaccess/source/ui/inc/dbwiz.hxx
+++ b/dbaccess/source/ui/inc/dbwiz.hxx
@@ -123,7 +123,7 @@ protected:
{
AR_LEAVE_MODIFIED, // somthing was modified and has successfully been committed
AR_LEAVE_UNCHANGED, // no changes were made
- AR_KEEP // don't leave the page (e.g. because an error occured)
+ AR_KEEP // don't leave the page (e.g. because an error occurred)
};
/** apply all changes made
*/
diff --git a/dbaccess/source/ui/inc/dbwizsetup.hxx b/dbaccess/source/ui/inc/dbwizsetup.hxx
index a848397f4401..f328c381a8a9 100644
--- a/dbaccess/source/ui/inc/dbwizsetup.hxx
+++ b/dbaccess/source/ui/inc/dbwizsetup.hxx
@@ -160,7 +160,7 @@ protected:
{
AR_LEAVE_MODIFIED, // somthing was modified and has successfully been committed
AR_LEAVE_UNCHANGED, // no changes were made
- AR_KEEP // don't leave the page (e.g. because an error occured)
+ AR_KEEP // don't leave the page (e.g. because an error occurred)
};
private:
diff --git a/dbaccess/source/ui/inc/dsitems.hxx b/dbaccess/source/ui/inc/dsitems.hxx
index 8335722b9d00..23842652325e 100644
--- a/dbaccess/source/ui/inc/dsitems.hxx
+++ b/dbaccess/source/ui/inc/dsitems.hxx
@@ -30,7 +30,7 @@ typedef sal_Int32 ItemID;
//= item ids for the data source administration dialog
#define DSID_NAME 1 // name of a data source, SfxStringItem
-#define DSID_ORIGINALNAME 2 // orginal name, internal, SfxStringItem
+#define DSID_ORIGINALNAME 2 // original name, internal, SfxStringItem
#define DSID_CONNECTURL 3 // connection URL, SfxStringItem
#define DSID_TABLEFILTER 4 // table filter, OStringListItem
#define DSID_TYPECOLLECTION 5 // collection of data source types, ODsnTypeCollection
diff --git a/dbaccess/source/ui/inc/sbagrid.hxx b/dbaccess/source/ui/inc/sbagrid.hxx
index d95a328f8460..d2747afe4e4a 100644
--- a/dbaccess/source/ui/inc/sbagrid.hxx
+++ b/dbaccess/source/ui/inc/sbagrid.hxx
@@ -285,7 +285,7 @@ namespace dbaui
@param eObjType
The type to ask for
@param _nPosition
- The position of a tablecell (index position), header bar colum/row cell
+ The position of a tablecell (index position), header bar column/row cell
@return
The description of the specified object.
*/
diff --git a/dbaccess/source/ui/misc/TokenWriter.cxx b/dbaccess/source/ui/misc/TokenWriter.cxx
index 5a3795333ed5..cf87abc4997a 100644
--- a/dbaccess/source/ui/misc/TokenWriter.cxx
+++ b/dbaccess/source/ui/misc/TokenWriter.cxx
@@ -219,7 +219,7 @@ void ODatabaseImportExport::impl_initFromDescriptor( const ODataAccessDescriptor
m_sDataSourceName = _aDataDescriptor.getDataSource();
_aDataDescriptor[daCommandType] >>= m_nCommandType;
_aDataDescriptor[daCommand] >>= m_sName;
- // some additonal information
+ // some additional information
if(_aDataDescriptor.has(daConnection))
{
Reference< XConnection > xPureConn( _aDataDescriptor[daConnection], UNO_QUERY );
diff --git a/dbaccess/source/ui/misc/UITools.cxx b/dbaccess/source/ui/misc/UITools.cxx
index 60f0f358b2bb..5511e8062130 100644
--- a/dbaccess/source/ui/misc/UITools.cxx
+++ b/dbaccess/source/ui/misc/UITools.cxx
@@ -1543,7 +1543,7 @@ TOTypeInfoSP queryPrimaryKeyType(const OTypeInfoMap& _rTypeInfo)
for(;aIter != aEnd;++aIter)
{
// OJ: we don't want to set an autoincrement column to be key
- // because we don't have the possiblity to know how to create
+ // because we don't have the possibility to know how to create
// such auto increment column later on
// so until we know how to do it, we create a column without autoincrement
// if ( !aIter->second->bAutoIncrement )
diff --git a/dbaccess/source/ui/misc/indexcollection.cxx b/dbaccess/source/ui/misc/indexcollection.cxx
index a4046a06d0b2..6d9428154fcd 100644
--- a/dbaccess/source/ui/misc/indexcollection.cxx
+++ b/dbaccess/source/ui/misc/indexcollection.cxx
@@ -263,7 +263,7 @@ namespace dbaui
// adjust the OIndex structure
Indexes::iterator aDropped = findOriginal(_rPos->getOriginalName());
- OSL_ENSURE(aDropped != m_aIndexes.end(), "OIndexCollection::drop: invalid original name, but successfull commit?!");
+ OSL_ENSURE(aDropped != m_aIndexes.end(), "OIndexCollection::drop: invalid original name, but successful commit?!");
aDropped->flagAsNew(GrantIndexAccess());
return sal_True;
diff --git a/dbaccess/source/ui/querydesign/ConnectionLineAccess.cxx b/dbaccess/source/ui/querydesign/ConnectionLineAccess.cxx
index 5d1f64ebe3e5..4ae86f3d9548 100644
--- a/dbaccess/source/ui/querydesign/ConnectionLineAccess.cxx
+++ b/dbaccess/source/ui/querydesign/ConnectionLineAccess.cxx
@@ -118,7 +118,7 @@ namespace dbaui
sal_Int32 nIndex = -1;
if( m_pLine )
{
- // search the postion of our table window in the table window map
+ // search the position of our table window in the table window map
nIndex = m_pLine->GetParent()->GetTabWinMap()->size();
const ::std::vector<OTableConnection*>* pVec = m_pLine->GetParent()->getTableConnections();
::std::vector<OTableConnection*>::const_iterator aIter = pVec->begin();
diff --git a/dbaccess/source/ui/querydesign/JoinTableView.cxx b/dbaccess/source/ui/querydesign/JoinTableView.cxx
index 27c560ec3f3b..7b9d6cdac199 100644
--- a/dbaccess/source/ui/querydesign/JoinTableView.cxx
+++ b/dbaccess/source/ui/querydesign/JoinTableView.cxx
@@ -196,7 +196,7 @@ void OScrollWindowHelper::Resize()
GetVScrollBar()->SetPageSize( aTotalOutputSize.Height() );
GetVScrollBar()->SetVisibleSize( aTotalOutputSize.Height() );
- // adjust the ranges of the scrollbars if neccessary
+ // adjust the ranges of the scrollbars if necessary
long lRange = GetHScrollBar()->GetRange().Max() - GetHScrollBar()->GetRange().Min();
if (m_pTableView->GetScrollOffset().X() + aTotalOutputSize.Width() > lRange)
GetHScrollBar()->SetRangeMax(m_pTableView->GetScrollOffset().X() + aTotalOutputSize.Width() + GetHScrollBar()->GetRange().Min());
@@ -1534,7 +1534,7 @@ long OJoinTableView::PreNotify(NotifyEvent& rNEvt)
else if (pNextConn)
{
GrabFocus();
- // neccessary : a conn may be selected even if a tab win has the focus, in this case
+ // necessary : a conn may be selected even if a tab win has the focus, in this case
// the next travel would select the same conn again if we would not reset te focus ...
SelectConn(pNextConn);
}
diff --git a/dbaccess/source/ui/querydesign/QueryDesignView.cxx b/dbaccess/source/ui/querydesign/QueryDesignView.cxx
index 4521677da251..60f4688da5dc 100644
--- a/dbaccess/source/ui/querydesign/QueryDesignView.cxx
+++ b/dbaccess/source/ui/querydesign/QueryDesignView.cxx
@@ -312,7 +312,7 @@ namespace
bError = sal_True;
}
}
- // check if error occured
+ // check if error occurred
if ( bError )
eErrorCode = eIllegalJoin;
@@ -2912,7 +2912,7 @@ sal_Bool OQueryDesignView::checkStatement()
{
sal_Bool bRet = sal_True;
if ( m_pSelectionBox )
- bRet = m_pSelectionBox->Save(); // a error occured so we return no
+ bRet = m_pSelectionBox->Save(); // a error occurred so we return no
return bRet;
}
//-------------------------------------------------------------------------------
@@ -3201,7 +3201,7 @@ void OQueryDesignView::GetFocus()
OQueryView::GetFocus();
if ( m_pSelectionBox && !m_pSelectionBox->HasChildPathFocus() )
{
- // first we have to deactivate the current cell to refill when nescessary
+ // first we have to deactivate the current cell to refill when necessary
m_pSelectionBox->DeactivateCell();
m_pSelectionBox->ActivateCell(m_pSelectionBox->GetCurRow(), m_pSelectionBox->GetCurColumnId());
m_pSelectionBox->GrabFocus();
@@ -3278,7 +3278,7 @@ void OQueryDesignView::fillFunctionInfo( const ::connectivity::OSQLParseNode* p
,const ::rtl::OUString& sFunctionTerm
,OTableFieldDescRef& aInfo)
{
- // get the type out of the funtion name
+ // get the type out of the function name
OQueryController& rController = static_cast<OQueryController&>(getController());
sal_Int32 nDataType = DataType::DOUBLE;
::rtl::OUString sFieldName = sFunctionTerm;
diff --git a/dbaccess/source/ui/querydesign/QueryTableView.cxx b/dbaccess/source/ui/querydesign/QueryTableView.cxx
index 2400ff2b7267..ec9e3e415bbb 100644
--- a/dbaccess/source/ui/querydesign/QueryTableView.cxx
+++ b/dbaccess/source/ui/querydesign/QueryTableView.cxx
@@ -639,7 +639,7 @@ void OQueryTableView::AddTabWin(const ::rtl::OUString& _rComposedName, const ::r
case KeyType::PRIMARY:
{
- // we have a primary key so look in our list if there exsits a key which this is refered to
+ // we have a primary key so look in our list if there exists a key which this is referred to
OTableWindowMap::const_iterator aIter = pTabWins->begin();
OTableWindowMap::const_iterator aEnd = pTabWins->end();
for(;aIter != aEnd;++aIter)
diff --git a/dbaccess/source/ui/querydesign/SelectionBrowseBox.cxx b/dbaccess/source/ui/querydesign/SelectionBrowseBox.cxx
index efc3895c8bcb..606efe6d99b4 100644
--- a/dbaccess/source/ui/querydesign/SelectionBrowseBox.cxx
+++ b/dbaccess/source/ui/querydesign/SelectionBrowseBox.cxx
@@ -685,7 +685,7 @@ sal_Bool OSelectionBrowseBox::fillColumnRef(const ::rtl::OUString& _sColumnName,
if ( pTabWinList )
{
sal_uInt16 nTabCount = 0;
- if ( !static_cast<OQueryTableView*>(getDesignView()->getTableView())->FindTableFromField(_sColumnName,_pEntry,nTabCount) ) // error occured: column not in table window
+ if ( !static_cast<OQueryTableView*>(getDesignView()->getTableView())->FindTableFromField(_sColumnName,_pEntry,nTabCount) ) // error occurred: column not in table window
{
String sErrorMsg(ModuleRes(RID_STR_FIELD_DOESNT_EXIST));
sErrorMsg.SearchAndReplaceAscii("$name$",_sColumnName);
@@ -1605,7 +1605,7 @@ void OSelectionBrowseBox::InsertColumn(OTableFieldDescRef pEntry, sal_uInt16& _n
DeactivateCell();
- // remember the column id of the current positon
+ // remember the column id of the current position
sal_uInt16 nColumnId = GetColumnId(_nColumnPostion);
// Wenn zu klein oder zu gross, auf Ende der Liste setzen
if ((_nColumnPostion == BROWSER_INVALIDID) || (_nColumnPostion >= getFields().size())) // Anhaengen des Feldes
diff --git a/dbaccess/source/ui/querydesign/SelectionBrowseBox.hxx b/dbaccess/source/ui/querydesign/SelectionBrowseBox.hxx
index b581f849daff..aa0096e52c51 100644
--- a/dbaccess/source/ui/querydesign/SelectionBrowseBox.hxx
+++ b/dbaccess/source/ui/querydesign/SelectionBrowseBox.hxx
@@ -194,7 +194,7 @@ namespace dbaui
@param eObjType
The type to ask for
@param _nPosition
- The position of a tablecell (index position), header bar colum/row cell
+ The position of a tablecell (index position), header bar column/row cell
@return
The name of the specified object.
*/
@@ -267,11 +267,11 @@ namespace dbaui
@param _sFieldName
The field name inserted by the user.
@param _pEntry
- The entry which will contain the nescessary entries.
+ The entry which will contain the necessary entries.
@param _bListAction
Will be set to <TRUE/> when we are in a list action otherwise <FALSE/>
@return
- <TRUE/> if an error occured otherwise <FALSE/>
+ <TRUE/> if an error occurred otherwise <FALSE/>
*/
sal_Bool saveField(const String& _sFieldName,OTableFieldDescRef& _pEntry,sal_Bool& _bListAction);
@@ -291,11 +291,11 @@ namespace dbaui
@param _xMetaData
Use to parse the node to a string.
@param _pEntry
- The entry which will contain the nescessary entries.
+ The entry which will contain the necessary entries.
@param _bListAction
Will be set to <TRUE/> when we are in a list action otherwise <FALSE/>
@return
- <TRUE/> if an error occured otherwise <FALSE/>
+ <TRUE/> if an error occurred otherwise <FALSE/>
*/
sal_Bool fillColumnRef( const ::connectivity::OSQLParseNode* _pColumnRef,
const ::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XConnection >& _rxConnection,
diff --git a/dbaccess/source/ui/querydesign/TableWindow.cxx b/dbaccess/source/ui/querydesign/TableWindow.cxx
index c1e10adc3c64..e2fbaaac8dab 100644
--- a/dbaccess/source/ui/querydesign/TableWindow.cxx
+++ b/dbaccess/source/ui/querydesign/TableWindow.cxx
@@ -220,7 +220,7 @@ sal_Bool OTableWindow::FillListBox()
}
catch(Exception&)
{
- OSL_ENSURE(0,"Exception occured!");
+ OSL_ENSURE(0,"Exception occurred!");
}
try
{
@@ -249,7 +249,7 @@ sal_Bool OTableWindow::FillListBox()
}
catch(Exception&)
{
- OSL_ENSURE(0,"Exception occured!");
+ OSL_ENSURE(0,"Exception occurred!");
}
return sal_True;
diff --git a/dbaccess/source/ui/querydesign/TableWindowAccess.cxx b/dbaccess/source/ui/querydesign/TableWindowAccess.cxx
index d3b174d949c1..6abbf1a17781 100644
--- a/dbaccess/source/ui/querydesign/TableWindowAccess.cxx
+++ b/dbaccess/source/ui/querydesign/TableWindowAccess.cxx
@@ -177,7 +177,7 @@ namespace dbaui
sal_Int32 nIndex = -1;
if( m_pTable )
{
- // search the postion of our table window in the table window map
+ // search the position of our table window in the table window map
OJoinTableView::OTableWindowMap* pMap = m_pTable->getTableView()->GetTabWinMap();
OJoinTableView::OTableWindowMap::iterator aIter = pMap->begin();
OJoinTableView::OTableWindowMap::iterator aEnd = pMap->end();
diff --git a/dbaccess/source/ui/querydesign/querycontroller.cxx b/dbaccess/source/ui/querydesign/querycontroller.cxx
index a14e3959a6db..3a0c33c4343a 100644
--- a/dbaccess/source/ui/querydesign/querycontroller.cxx
+++ b/dbaccess/source/ui/querydesign/querycontroller.cxx
@@ -1612,7 +1612,7 @@ bool OQueryController::doSaveAsDoc(sal_Bool _bSaveAs)
{
::dbtools::SQLExceptionInfo aInfo(e);
showError(aInfo);
- // an error occured so we clear the statement
+ // an error occurred so we clear the statement
sTranslatedStmt = ::rtl::OUString();
}
}
diff --git a/dbaccess/source/ui/relationdesign/RelationTableView.cxx b/dbaccess/source/ui/relationdesign/RelationTableView.cxx
index 8a992b12294d..b46b95dd1c17 100644
--- a/dbaccess/source/ui/relationdesign/RelationTableView.cxx
+++ b/dbaccess/source/ui/relationdesign/RelationTableView.cxx
@@ -314,7 +314,7 @@ bool ORelationTableView::RemoveConnection( OTableConnection* pConn ,sal_Bool /*_
}
catch(Exception&)
{
- OSL_ENSURE(0,"ORelationTableView::RemoveConnection: Something other than SQLException occured!");
+ OSL_ENSURE(0,"ORelationTableView::RemoveConnection: Something other than SQLException occurred!");
}
return false;
}
diff --git a/dbaccess/source/ui/tabledesign/TableController.cxx b/dbaccess/source/ui/tabledesign/TableController.cxx
index 770d62fef16d..5764726d1901 100644
--- a/dbaccess/source/ui/tabledesign/TableController.cxx
+++ b/dbaccess/source/ui/tabledesign/TableController.cxx
@@ -470,7 +470,7 @@ sal_Bool OTableController::doSaveDoc(sal_Bool _bSaveAs)
stopTableListening();
m_xTable = NULL;
}
- // reload(); // a error occured so we have to reload
+ // reload(); // a error occurred so we have to reload
}
return ! (aInfo.isValid() || bError);
}
@@ -949,7 +949,7 @@ void OTableController::loadData()
if(aTypeIter == m_aTypeInfo.end())
aTypeIter = m_aTypeInfo.begin();
- OSL_ENSURE(aTypeIter != m_aTypeInfo.end(),"We have no type infomation!");
+ OSL_ENSURE(aTypeIter != m_aTypeInfo.end(),"We have no type information!");
bool bReadRow = !isAddAllowed();
for(sal_Int32 i=m_vRowList.size(); i < NEWCOLS; i++ )
@@ -1146,7 +1146,7 @@ void OTableController::alterColumns()
xAppend->appendByDescriptor(xNewColumn);
}
catch(const SQLException&)
- { // an error occured so we try to reactivate the old one
+ { // an error occurred so we try to reactivate the old one
xAppend->appendByDescriptor(xColumn);
throw;
}
diff --git a/dbaccess/source/ui/uno/copytablewizard.cxx b/dbaccess/source/ui/uno/copytablewizard.cxx
index 57c2b274897f..64c43ce00fa8 100644
--- a/dbaccess/source/ui/uno/copytablewizard.cxx
+++ b/dbaccess/source/ui/uno/copytablewizard.cxx
@@ -323,7 +323,7 @@ namespace dbaui
const Reference< XPropertySet >& _rxDestTable
);
- /** processes an error which occured during copying
+ /** processes an error which occurred during copying
First, all listeners are ask. If a listener tells to cancel or continue copying, this is reported to the
method's caller. If a listener tells to ask the user, this is done, and the user's decision is
@@ -1114,7 +1114,7 @@ bool CopyTableWizard::impl_processCopyError_nothrow( const CopyTableRowEvent& _r
aError.NextException = _rEvent.Error;
else
{
- // a non-SQL exception happend
+ // a non-SQL exception happened
Exception aException;
OSL_VERIFY( _rEvent.Error >>= aException );
SQLContext aContext;
@@ -1172,11 +1172,11 @@ void CopyTableWizard::impl_copyRows_throw( const Reference< XResultSet >& _rxSou
sal_Int32 nCount = xMeta->getColumnCount();
::std::vector< sal_Int32 > aSourceColTypes;
aSourceColTypes.reserve( nCount + 1 );
- aSourceColTypes.push_back( -1 ); // just to avoid a everytime i-1 call
+ aSourceColTypes.push_back( -1 ); // just to avoid a every time i-1 call
::std::vector< sal_Int32 > aSourcePrec;
aSourcePrec.reserve( nCount + 1 );
- aSourcePrec.push_back( -1 ); // just to avoid a everytime i-1 call
+ aSourcePrec.push_back( -1 ); // just to avoid a every time i-1 call
for ( sal_Int32 k=1; k <= nCount; ++k )
{
diff --git a/desktop/source/app/app.cxx b/desktop/source/app/app.cxx
index b8fb3161e876..0e9a5be41bd7 100644
--- a/desktop/source/app/app.cxx
+++ b/desktop/source/app/app.cxx
@@ -338,7 +338,7 @@ OUString MakeStartupConfigAccessErrorMessage( OUString const & aInternalErrMsg )
if ( pResMgr )
aDiagnosticMessage.append( OUString(String(ResId(STR_INTERNAL_ERRMSG, *pResMgr ))) );
else
- aDiagnosticMessage.appendAscii( "The following internal error has occured:\n\n" );
+ aDiagnosticMessage.appendAscii( "The following internal error has occurred:\n\n" );
aDiagnosticMessage.append( aInternalErrMsg );
}
@@ -348,7 +348,7 @@ OUString MakeStartupConfigAccessErrorMessage( OUString const & aInternalErrMsg )
//=============================================================================
// shows a simple error box with the given message ... but exits from these process !
//
-// Fatal errors cant be solved by the process ... nor any recovery can help.
+// Fatal errors can't be solved by the process ... nor any recovery can help.
// Mostly the installation was damaged and must be repaired manually .. or by calling
// setup again.
//
@@ -1550,7 +1550,7 @@ sal_Bool Desktop::isCrashReporterEnabled()
@param bCrashed [boolean ... out!]
the office crashed last times.
But may be there are no recovery data.
- Usefull to trigger the error report tool without
+ Useful to trigger the error report tool without
showing the recovery UI.
@param bRecoveryDataExists [boolean ... out!]
@@ -1755,7 +1755,7 @@ sal_uInt16 Desktop::Exception(sal_uInt16 nError)
( !pArgs->IsNoRestore() ) && // some use cases of office must work without recovery
( !pArgs->IsHeadless() ) &&
( !pArgs->IsServer() ) &&
- (( nError & EXC_MAJORTYPE ) != EXC_DISPLAY ) && // recovery cant work without UI ... but UI layer seams to be the reason for this crash
+ (( nError & EXC_MAJORTYPE ) != EXC_DISPLAY ) && // recovery can't work without UI ... but UI layer seams to be the reason for this crash
( Application::IsInExecute() ) // crashes during startup and shutdown should be ignored (they indicates a corrupt installation ...)
);
if ( bAllowRecoveryAndSessionManagement )
@@ -1917,7 +1917,7 @@ void Desktop::Main()
RTL_LOGFILE_CONTEXT_TRACE( aLog, "{ GetEnableATToolSupport" );
if( Application::GetSettings().GetMiscSettings().GetEnableATToolSupport() )
{
- sal_Bool bQuitApp;
+ sal_Bool bQuitApp (sal_False);
if( !InitAccessBridge( true, bQuitApp ) )
if( bQuitApp )
@@ -1986,7 +1986,7 @@ void Desktop::Main()
( xSMgr->createInstance(
DEFINE_CONST_UNICODE( "com.sun.star.frame.GlobalEventBroadcaster" ) ), UNO_QUERY );
- /* ensure existance of a default window that messages can be dispatched to
+ /* ensure existence of a default window that messages can be dispatched to
This is for the benefit of testtool which uses PostUserEvent extensively
and else can deadlock while creating this window from another tread while
the main thread is not yet in the event loop.
@@ -2198,7 +2198,7 @@ void Desktop::Main()
// Post user event to startup first application component window
// We have to send this OpenClients message short before execute() to
- // minimize the risk that this message overtakes type detection contruction!!
+ // minimize the risk that this message overtakes type detection construction!!
Application::PostUserEvent( LINK( this, Desktop, OpenClients_Impl ) );
// Post event to enable acceptors
@@ -3081,8 +3081,8 @@ void Desktop::OpenClients()
sal_False , // false => force recovery instead of emergency save
bCrashed ,
bExistsRecoveryData);
- /* TODO we cant be shure, that at least one document could be recovered here successfully
- So we set bLoaded=sal_True to supress opening of the default document.
+ /* TODO we can't be sure, that at least one document could be recovered here successfully
+ So we set bLoaded=sal_True to suppress opening of the default document.
But we should make it more safe. Otherwhise we have an office without an UI ...
...
May be we can check the desktop if some documents are existing there.
@@ -3303,7 +3303,7 @@ String GetURL_Impl(
}
// Add path seperator to these directory and make given URL (rName) absolute by using of current working directory
- // Attention: "setFianlSlash()" is neccessary for calling "smartRel2Abs()"!!!
+ // Attention: "setFianlSlash()" is necessary for calling "smartRel2Abs()"!!!
// Otherwhise last part will be ignored and wrong result will be returned!!!
// "smartRel2Abs()" interpret given URL as file not as path. So he truncate last element to get the base path ...
// But if we add a seperator - he doesn't do it anymore.
diff --git a/desktop/source/app/appinit.cxx b/desktop/source/app/appinit.cxx
index 70fd3b7c810c..d88bd41a7824 100644
--- a/desktop/source/app/appinit.cxx
+++ b/desktop/source/app/appinit.cxx
@@ -170,7 +170,7 @@ static bool configureUcb(bool bServer, rtl::OUString const & rPortalConnect)
#else
// Workaround for P1 #124597#. Instanciate GNOME-VFS-UCP in the thread that initialized
- // GNOME in order to avoid a deadlock that may occure in case UCP gets initialized from
+ // GNOME in order to avoid a deadlock that may occur in case UCP gets initialized from
// a different thread. The latter may happen when calling the Office remotely via UNO.
// THIS IS NOT A FIX, JUST A WORKAROUND!
diff --git a/desktop/source/app/dispatchwatcher.cxx b/desktop/source/app/dispatchwatcher.cxx
index b36eacd6fcf6..2705c25d305c 100644
--- a/desktop/source/app/dispatchwatcher.cxx
+++ b/desktop/source/app/dispatchwatcher.cxx
@@ -222,7 +222,7 @@ sal_Bool DispatchWatcher::executeDispatchRequests( const DispatchList& aDispatch
)
{
// Attention: URL must be parsed full. Otherwise some detections on it will fail!
- // It doesnt matter, if parser isn't available. Because; We try loading of URL then ...
+ // It doesn't matter, if parser isn't available. Because; We try loading of URL then ...
URL aURL ;
aURL.Complete = aName;
diff --git a/desktop/source/app/dispatchwatcher.hxx b/desktop/source/app/dispatchwatcher.hxx
index 41b54d36dfb3..72610332480e 100644
--- a/desktop/source/app/dispatchwatcher.hxx
+++ b/desktop/source/app/dispatchwatcher.hxx
@@ -36,7 +36,7 @@ namespace desktop
{
/*
- Class for controlls dispatching of command URL through office command line. There
+ Class for controls dispatching of command URL through office command line. There
are "dangerous" command URLs, that can result in a running office without UI. To prevent
this situation the implementation surveile all dispatches and looks for an open task if
there is arose a problem. If there is none the office will be shutdown to prevent a
diff --git a/desktop/source/app/langselect.cxx b/desktop/source/app/langselect.cxx
index 8441a6558d00..36d2459d989d 100644
--- a/desktop/source/app/langselect.cxx
+++ b/desktop/source/app/langselect.cxx
@@ -216,7 +216,7 @@ bool LanguageSelection::prepareLanguage()
try
{
// prepare default config provider by localizing it to the selected locale
- // this will ensure localized configuration settings to be selected accoring to the
+ // this will ensure localized configuration settings to be selected according to the
// UI language.
Locale loc = LanguageSelection::IsoStringToLocale(aLocaleString);
// flush any data already written to the configuration (which
diff --git a/desktop/source/app/officeipcthread.cxx b/desktop/source/app/officeipcthread.cxx
index 6791ebebff07..2697f2afe5df 100644
--- a/desktop/source/app/officeipcthread.cxx
+++ b/desktop/source/app/officeipcthread.cxx
@@ -500,7 +500,7 @@ OfficeIPCThread::Status OfficeIPCThread::EnableOfficeIPCThread()
// #119950# Try to connect pipe first. If connected, means another instance already launched.
if( pThread->maPipe.create( pThread->maPipeIdent.getStr(), OPipe::TOption_Open, rSecurity ))
{
- // #119950# Test if launched in a new terminal session for same user. On Windows platform, normally a user is resticted
+ // #119950# Test if launched in a new terminal session for same user. On Windows platform, normally a user is restricted
// to have only one terminal session. But if mutiple terminal session for one user is allowed, crash will happen if launched
// OpenOffice from more than one terminal session. So need to detect and prevent this happen.
@@ -516,7 +516,7 @@ OfficeIPCThread::Status OfficeIPCThread::EnableOfficeIPCThread()
}
}
- else if ( pThread->maPipe.create( pThread->maPipeIdent.getStr(), OPipe::TOption_Create, rSecurity )) // Connection not successfull, now we try to create
+ else if ( pThread->maPipe.create( pThread->maPipeIdent.getStr(), OPipe::TOption_Create, rSecurity )) // Connection not successful, now we try to create
{
// Pipe created
nPipeMode = PIPEMODE_CREATED;
@@ -567,7 +567,7 @@ OfficeIPCThread::Status OfficeIPCThread::EnableOfficeIPCThread()
return IPC_STATUS_BOOTSTRAP_ERROR;
}
}
- // finaly, write the string onto the pipe
+ // finally, write the string onto the pipe
pThread->maStreamPipe.write( aArguments.GetBuffer(), aArguments.Len() );
pThread->maStreamPipe.write( "\0", 1 );
diff --git a/desktop/source/deployment/inc/dp_descriptioninfoset.hxx b/desktop/source/deployment/inc/dp_descriptioninfoset.hxx
index 18b61dda9c21..b99da39e2fe8 100644
--- a/desktop/source/deployment/inc/dp_descriptioninfoset.hxx
+++ b/desktop/source/deployment/inc/dp_descriptioninfoset.hxx
@@ -110,7 +110,7 @@ public:
If the platform element is present but does not specify a platform then an empty
sequence is returned. Examples for invalid platform elements:
<pre>
- <platform />, <platform value="" />, <platfrom value=",">
+ <platform />, <platform value="" />, <platform value=",">
</pre>
The value attribute can contain various platform tokens. They must be separated by
@@ -225,7 +225,7 @@ private:
/** Retrieves a child element which as lang attribute which matches the office locale.
Only top-level children are taken into account. It is also assumed that they are all
- of the same element type and have a lang attribute. The matching algoritm is according
+ of the same element type and have a lang attribute. The matching algorithm is according
to RFC 3066, with the exception that only one variant is allowed.
@param parent
the expression used to obtain the parent of the localized children. It can be null.
diff --git a/desktop/source/deployment/manager/dp_extensionmanager.cxx b/desktop/source/deployment/manager/dp_extensionmanager.cxx
index c5d7c1c4b224..bc57151fa5d2 100644
--- a/desktop/source/deployment/manager/dp_extensionmanager.cxx
+++ b/desktop/source/deployment/manager/dp_extensionmanager.cxx
@@ -588,9 +588,9 @@ ExtensionManager::getSupportedPackageTypes()
return getUserRepository()->getSupportedPackageTypes();
}
//Do some necessary checks and user interaction. This function does not
-//aquire the extension manager mutex and that mutex must not be aquired
+//acquire the extension manager mutex and that mutex must not be acquired
//when this function is called. doChecksForAddExtension does synchronous
-//user interactions which may require aquiring the solar mutex.
+//user interactions which may require acquiring the solar mutex.
//Returns true if the extension can be installed.
bool ExtensionManager::doChecksForAddExtension(
Reference<deploy::XPackageManager> const & xPackageMgr,
@@ -1417,7 +1417,7 @@ sal_Bool ExtensionManager::synchronize(
catch (...)
{
//We catch the exception, so we can write the lastmodified file
- //so we will no repeat this everytime OOo starts.
+ //so we will no repeat this every time AOO starts.
OSL_ENSURE(0, "Extensions Manager: synchronize");
}
OUString lastSyncBundled(RTL_CONSTASCII_USTRINGPARAM(
diff --git a/desktop/source/deployment/misc/dp_descriptioninfoset.cxx b/desktop/source/deployment/misc/dp_descriptioninfoset.cxx
index f204418952d4..75010c1229fa 100644
--- a/desktop/source/deployment/misc/dp_descriptioninfoset.cxx
+++ b/desktop/source/deployment/misc/dp_descriptioninfoset.cxx
@@ -128,7 +128,7 @@ class ExtensionDescription
public:
/**throws an exception if the description.xml is not
available, cannot be read, does not contain the expected data,
- or any other error occured. Therefore it shoult only be used with
+ or any other error occurred. Therefore it shoult only be used with
new extensions.
Throws com::sun::star::uno::RuntimeException,
diff --git a/desktop/source/deployment/misc/dp_misc.cxx b/desktop/source/deployment/misc/dp_misc.cxx
index c3369a75da79..b31c4f35ae09 100644
--- a/desktop/source/deployment/misc/dp_misc.cxx
+++ b/desktop/source/deployment/misc/dp_misc.cxx
@@ -416,7 +416,7 @@ oslProcess raiseProcess(
case osl_Process_E_NotFound:
throw RuntimeException( OUSTR("image not found!"), 0 );
case osl_Process_E_TimedOut:
- throw RuntimeException( OUSTR("timout occured!"), 0 );
+ throw RuntimeException( OUSTR("timout occurred!"), 0 );
case osl_Process_E_NoPermission:
throw RuntimeException( OUSTR("permission denied!"), 0 );
case osl_Process_E_Unknown:
diff --git a/desktop/source/deployment/misc/dp_platform.cxx b/desktop/source/deployment/misc/dp_platform.cxx
index ea07d4193a72..3b04bed99a16 100644
--- a/desktop/source/deployment/misc/dp_platform.cxx
+++ b/desktop/source/deployment/misc/dp_platform.cxx
@@ -171,7 +171,7 @@ namespace
else if (token.equals(OUSTR(PLATFORM_MACOSX_X86)))
ret = checkOSandCPU(OUSTR("MacOSX"), OUSTR("x86"));
else if (token.equals(OUSTR(PLATFORM_MACOSX_X86_64)))
- ret = checkOSandCPU(OUSTR("MacOSX"), OUSTR("x86_64"));
+ ret = checkOSandCPU(OUSTR("MacOSX"), OUSTR("X86_64"));
else if (token.equals(OUSTR(PLATFORM_MACOSX_PPC)))
ret = checkOSandCPU(OUSTR("MacOSX"), OUSTR("PowerPC"));
else if (token.equals(OUSTR(PLATFORM_OS2_X86)))
diff --git a/desktop/source/deployment/misc/dp_resource.cxx b/desktop/source/deployment/misc/dp_resource.cxx
index 9476327d2982..2df7db3c6d72 100644
--- a/desktop/source/deployment/misc/dp_resource.cxx
+++ b/desktop/source/deployment/misc/dp_resource.cxx
@@ -174,7 +174,7 @@ void checkThirdSubtag(::rtl::OUString const & tag)
//=============================================================================
-//We parse the string acording to RFC 3066
+//We parse the string according to RFC 3066
//We only use the primary sub-tag and two subtags. That is lang-country-variant
//We do some simple tests if the string is correct. Actually this should do a
//validating parser
diff --git a/desktop/source/deployment/misc/dp_ucb.cxx b/desktop/source/deployment/misc/dp_ucb.cxx
index 7435535be9c1..aa346918bb60 100644
--- a/desktop/source/deployment/misc/dp_ucb.cxx
+++ b/desktop/source/deployment/misc/dp_ucb.cxx
@@ -156,7 +156,7 @@ bool create_folder(
}
catch (CommandFailedException &) {
// Interaction Handler already handled the error
- // that has occured...
+ // that has occurred...
}
catch (Exception &) {
if (throw_exc)
diff --git a/desktop/source/deployment/registry/configuration/dp_configuration.cxx b/desktop/source/deployment/registry/configuration/dp_configuration.cxx
index 960715276d10..fa83cb179057 100644
--- a/desktop/source/deployment/registry/configuration/dp_configuration.cxx
+++ b/desktop/source/deployment/registry/configuration/dp_configuration.cxx
@@ -128,7 +128,7 @@ class BackendImpl : public ::dp_registry::backend::PackageRegistryBackend
Reference<XCommandEnvironment> const & xCmdEnv );
void configmgrini_flush( Reference<XCommandEnvironment> const & xCmdEnv );
- /* The paramter isURL is false in the case of adding the conf:ini-entry
+ /* The parameter isURL is false in the case of adding the conf:ini-entry
value from the backend db. This entry already contains the path as it
is used in the configmgr.ini.
*/
diff --git a/desktop/source/deployment/registry/dp_backend.cxx b/desktop/source/deployment/registry/dp_backend.cxx
index 09c66c9e9510..1a5dde024124 100644
--- a/desktop/source/deployment/registry/dp_backend.cxx
+++ b/desktop/source/deployment/registry/dp_backend.cxx
@@ -638,7 +638,7 @@ beans::Optional< beans::Ambiguous<sal_Bool> > Package::isRegistered(
catch (Exception &) {
Any exc( ::cppu::getCaughtException() );
throw deployment::DeploymentException(
- OUSTR("unexpected exception occured!"),
+ OUSTR("unexpected exception occurred!"),
static_cast<OWeakObject *>(this), exc );
}
}
diff --git a/desktop/source/deployment/registry/help/dp_help.cxx b/desktop/source/deployment/registry/help/dp_help.cxx
index 5ec3c15fbbdf..eaf9b2864538 100644
--- a/desktop/source/deployment/registry/help/dp_help.cxx
+++ b/desktop/source/deployment/registry/help/dp_help.cxx
@@ -289,7 +289,7 @@ bool BackendImpl::PackageImpl::extensionContainsCompiledHelp()
if ( helpFolder.open() == ::osl::File::E_None)
{
//iterate over the contents of the help folder
- //We assume that all folders withing the help folder contain language specific
+ //We assume that all folders within the help folder contain language specific
//help files. If just one of them does not contain compiled help then this
//function returns false.
::osl::DirectoryItem item;
diff --git a/desktop/source/deployment/registry/inc/dp_backenddb.hxx b/desktop/source/deployment/registry/inc/dp_backenddb.hxx
index 8f03535c1c4f..92d6f1d4ddaf 100644
--- a/desktop/source/deployment/registry/inc/dp_backenddb.hxx
+++ b/desktop/source/deployment/registry/inc/dp_backenddb.hxx
@@ -113,7 +113,7 @@ protected:
::rtl::OUString const & sListTagName,
::rtl::OUString const & sMemberTagName);
- /* returns the values of one particulary child element of all key elements.
+ /* returns the values of one particularly child element of all key elements.
*/
::std::list< ::rtl::OUString> getOneChildFromAllEntries(
::rtl::OUString const & sElementName);
diff --git a/desktop/source/deployment/registry/package/dp_package.cxx b/desktop/source/deployment/registry/package/dp_package.cxx
index 7179f138dc29..585363d4fd36 100644
--- a/desktop/source/deployment/registry/package/dp_package.cxx
+++ b/desktop/source/deployment/registry/package/dp_package.cxx
@@ -105,7 +105,7 @@ class BackendImpl : public ImplBaseT
Reference<deployment::XPackage> bindBundleItem(
OUString const & url, OUString const & mediaType,
- sal_Bool bRemoved, //that is, useing data base information
+ sal_Bool bRemoved, //that is, using data base information
OUString const & identifier,
Reference<ucb::XCommandEnvironment> const & xCmdEnv,
bool notifyDetectionError = true );
@@ -1569,7 +1569,7 @@ void BackendImpl::PackageImpl::scanLegacyBundle(
{
::ucbhelper::Content ucbContent( url, xCmdEnv );
- // check for platform pathes:
+ // check for platform paths:
const OUString title( ucbContent.getPropertyValue(
StrTitle::get() ).get<OUString>() );
if (title.endsWithIgnoreAsciiCaseAsciiL(
diff --git a/desktop/source/migration/cfgfilter.cxx b/desktop/source/migration/cfgfilter.cxx
index 4d95aed2c845..295f953203bc 100644
--- a/desktop/source/migration/cfgfilter.cxx
+++ b/desktop/source/migration/cfgfilter.cxx
@@ -147,7 +147,7 @@ void SAL_CALL CConfigFilter::readData(
// in m_xLayerHandler. we will then submit ourself as a handler to
// the SourceLayer in m_xSourceLayer.
// when the source calls our handler functions we will use the patterns that
- // where given in the ctor to decide whther they should be relaied to the caller
+ // where given in the ctor to decide whether they should be relaied to the caller
if (m_xSourceLayer.is() && layerHandler.is())
{
diff --git a/desktop/source/migration/migration.cxx b/desktop/source/migration/migration.cxx
index 0b3aea554fd1..8e049523613e 100755
--- a/desktop/source/migration/migration.cxx
+++ b/desktop/source/migration/migration.cxx
@@ -221,7 +221,7 @@ void Migration::doMigration()
aMsg += OUStringToOString(e.Message, RTL_TEXTENCODING_ASCII_US);
OSL_ENSURE(sal_False, aMsg.getStr());
}
- OSL_ENSURE(bResult, "Migration has not been successfull");
+ OSL_ENSURE(bResult, "Migration has not been successful");
// shut down migration framework
releaseImpl();
}
diff --git a/desktop/source/migration/services/jvmfwk.cxx b/desktop/source/migration/services/jvmfwk.cxx
index f98e309ef052..0d7d99e4b100 100644
--- a/desktop/source/migration/services/jvmfwk.cxx
+++ b/desktop/source/migration/services/jvmfwk.cxx
@@ -340,7 +340,7 @@ void JavaMigration::migrateJavarc()
{
OSL_ENSURE(0, "[Service implementation " IMPL_NAME
"] XJob::execute: jfw_setSelectedJRE failed.");
- fprintf(stderr, "\nCannot migrate Java. An error occured.\n");
+ fprintf(stderr, "\nCannot migrate Java. An error occurred.\n");
}
}
else if (err == JFW_E_FAILED_VERSION)
diff --git a/desktop/source/splash/splash.cxx b/desktop/source/splash/splash.cxx
index d6cc4ecdab90..81595c047750 100644
--- a/desktop/source/splash/splash.cxx
+++ b/desktop/source/splash/splash.cxx
@@ -446,7 +446,7 @@ bool SplashScreen::loadBitmap(
GraphicFilter* pGF = GraphicFilter::GetGraphicFilter();
pGF->ImportGraphic( aGraphic, String(), aStrm, GRFILTER_FORMAT_DONTKNOW );
- // Default case, we load the intro bitmap from a seperate file
+ // Default case, we load the intro bitmap from a separate file
// (e.g. staroffice_intro.bmp or starsuite_intro.bmp)
_aIntroBmp = aGraphic.GetBitmapEx();
return true;
diff --git a/desktop/win32/source/QuickStart/QuickStart.cpp b/desktop/win32/source/QuickStart/QuickStart.cpp
index 71df2a836ae0..d069353d09c3 100644
--- a/desktop/win32/source/QuickStart/QuickStart.cpp
+++ b/desktop/win32/source/QuickStart/QuickStart.cpp
@@ -52,7 +52,7 @@ TCHAR szWindowClass[MAX_LOADSTRING]; // The title bar text
TCHAR szExitString[MAX_LOADSTRING];
TCHAR szTooltipString[MAX_LOADSTRING];
-// Foward declarations of functions included in this code module:
+// Forward declarations of functions included in this code module:
ATOM MyRegisterClass(HINSTANCE hInstance);
BOOL InitInstance(HINSTANCE, int);
LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);
diff --git a/desktop/win32/source/applauncher/launcher.cxx b/desktop/win32/source/applauncher/launcher.cxx
index 85bb4429d19a..b94458610264 100644
--- a/desktop/win32/source/applauncher/launcher.cxx
+++ b/desktop/win32/source/applauncher/launcher.cxx
@@ -50,7 +50,7 @@ extern "C" int APIENTRY WinMain( HINSTANCE, HINSTANCE, LPSTR, int )
extern "C" int APIENTRY _tWinMain( HINSTANCE, HINSTANCE, LPTSTR, int )
#endif
{
- // Retreive startup info
+ // Retrieve startup info
STARTUPINFO aStartupInfo;
diff --git a/desktop/win32/source/setup/setup.cpp b/desktop/win32/source/setup/setup.cpp
index eb6d464f2d41..09406d8ecc6d 100644
--- a/desktop/win32/source/setup/setup.cpp
+++ b/desktop/win32/source/setup/setup.cpp
@@ -1594,11 +1594,11 @@ boolean SetupAppX::GetCmdLineParameters( LPTSTR *pCmdLine )
break;
}
else if ( (*pSub) == 'a' || (*pSub) == 'A' )
- { // --- Handle Adminstrative Installation ---
+ { // --- Handle Administrative Installation ---
SetAdminInstall( true );
}
else if ( (*pSub) == 'j' || (*pSub) == 'J' )
- { // --- Handle Adminstrative Installation ---
+ { // --- Handle Administrative Installation ---
m_pAdvertise = pStart;
m_bQuiet = true;
bDeleteStart = false;
diff --git a/desktop/win32/source/unoinfo.cxx b/desktop/win32/source/unoinfo.cxx
index dbf34cfa3b4e..dfb538d5fa06 100644
--- a/desktop/win32/source/unoinfo.cxx
+++ b/desktop/win32/source/unoinfo.cxx
@@ -66,7 +66,8 @@ void writePath(
if (end == NULL) {
exit(EXIT_FAILURE);
}
- fprintf(stdout, "%S", path);
+ size_t nWideLen = wcslen(path);
+ fwrite( path, sizeof(wchar_t), nWideLen, stdout);
}
}
@@ -103,7 +104,7 @@ int wmain(int argc, wchar_t ** argv, wchar_t **) {
writeNull();
writePath(path, pathEnd, MY_STRING(L"classes\\unoil.jar"));
writeNull();
- writePath(path, pathEnd, MY_STRING(L"\classes\\ridl.jar"));
+ writePath(path, pathEnd, MY_STRING(L"classes\\ridl.jar"));
writeNull();
writePath(path, pathEnd, MY_STRING(L"classes\\jurt.jar"));
writeNull();
diff --git a/desktop/win32/source/wrapper.h b/desktop/win32/source/wrapper.h
index 9776b3c8fdac..cc1a9c779662 100644
--- a/desktop/win32/source/wrapper.h
+++ b/desktop/win32/source/wrapper.h
@@ -67,7 +67,7 @@
extern "C" int Main()
{
- // Retreive startup info
+ // Retrieve startup info
STARTUPINFO aStartupInfo;
@@ -97,7 +97,7 @@ extern "C" int Main()
_tsplitpath( szApplicationName, szDrive, szDir, szFileName, szExt );
_tmakepath( szApplicationName, szDrive, szDir, szFileName, BIN_EXT_STR );
- // Retreive actual environment
+ // Retrieve actual environment
TCHAR szBuffer[1024];
TCHAR szPathValue[1024] = TEXT("");
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/baseprimitive2d.hxx b/drawinglayer/inc/drawinglayer/primitive2d/baseprimitive2d.hxx
index bd3b7575b38d..72529c55ed84 100644
--- a/drawinglayer/inc/drawinglayer/primitive2d/baseprimitive2d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive2d/baseprimitive2d.hxx
@@ -87,13 +87,13 @@ namespace drawinglayer
using this primitive and do not know it, may get the decomposition and process
these instead. An example is e.g. a fat line, who's decomposition may contain
the geometric representation of that line using filled polygon prmimitives. When
- the renderer knows how to handle fat lines, he may proccess this primitive directly;
+ the renderer knows how to handle fat lines, he may process this primitive directly;
if not he can use the decomposition. With this functionality, renderers may operate by
knowing only a small set of primitives.
When a primitive does not implement get2DDecomposition, it is called a 'Basic Primitive' and
belongs to the set of primitives which a processor should be able to handle. Practice
- will define this minimal sets of primitives. When defined and the concept is prooved,
+ will define this minimal sets of primitives. When defined and the concept is proved,
unique UNO APIs may be defined/implemented for these set to allow more intense work
with primitives using UNO.
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/metafileprimitive2d.hxx b/drawinglayer/inc/drawinglayer/primitive2d/metafileprimitive2d.hxx
index e18bc9062c70..0fbd6c0b316c 100644
--- a/drawinglayer/inc/drawinglayer/primitive2d/metafileprimitive2d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive2d/metafileprimitive2d.hxx
@@ -40,7 +40,7 @@ namespace drawinglayer
This is the MetaFile representing primitive. It's geometry is defined
by MetaFileTransform. The content (defined by MetaFile) will be scaled
- to the geometric definiton by using PrefMapMode and PrefSize of the
+ to the geometric definition by using PrefMapMode and PrefSize of the
Metafile.
It has shown that this not always guarantees that all Metafile content
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/modifiedcolorprimitive2d.hxx b/drawinglayer/inc/drawinglayer/primitive2d/modifiedcolorprimitive2d.hxx
index af8b7b85c412..3226f174058a 100644
--- a/drawinglayer/inc/drawinglayer/primitive2d/modifiedcolorprimitive2d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive2d/modifiedcolorprimitive2d.hxx
@@ -43,7 +43,7 @@ namespace drawinglayer
For the possibilities of color modifications, please refer
to the basegfx::BColorModifier definitions in basegfx. For
processing there is tooling in basegfx to build a stack of
- BColorModifierSharedPtrs to always be able to proccess the correct
+ BColorModifierSharedPtrs to always be able to process the correct
colors.
If a renderer does not handle this primitive, the content will
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/pointarrayprimitive2d.hxx b/drawinglayer/inc/drawinglayer/primitive2d/pointarrayprimitive2d.hxx
index c3b20eb9cf52..f3d358ac4aad 100644
--- a/drawinglayer/inc/drawinglayer/primitive2d/pointarrayprimitive2d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive2d/pointarrayprimitive2d.hxx
@@ -42,7 +42,7 @@ namespace drawinglayer
the logic size of a 'pixel' depends on the view transformation.
This is one of the non-decomposable primitives, so a renderer
- should proccess it (Currently it is only used for grid visualisation,
+ should process it (Currently it is only used for grid visualisation,
but this may change).
*/
class DRAWINGLAYER_DLLPUBLIC PointArrayPrimitive2D : public BasePrimitive2D
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/polygonprimitive2d.hxx b/drawinglayer/inc/drawinglayer/primitive2d/polygonprimitive2d.hxx
index 629fc721826b..dae855d81fe3 100644
--- a/drawinglayer/inc/drawinglayer/primitive2d/polygonprimitive2d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive2d/polygonprimitive2d.hxx
@@ -46,7 +46,7 @@ namespace drawinglayer
this primitive is view-dependent, too.
This is one of the non-decomposable primitives, so a renderer
- should proccess it.
+ should process it.
*/
class DRAWINGLAYER_DLLPUBLIC PolygonHairlinePrimitive2D : public BasePrimitive2D
{
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/polypolygonprimitive2d.hxx b/drawinglayer/inc/drawinglayer/primitive2d/polypolygonprimitive2d.hxx
index 10d9685be373..fdc442f38798 100644
--- a/drawinglayer/inc/drawinglayer/primitive2d/polypolygonprimitive2d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive2d/polypolygonprimitive2d.hxx
@@ -251,7 +251,7 @@ namespace drawinglayer
This primitive defines a PolyPolygon filled with a single color.
This is one of the non-decomposable primitives, so a renderer
- should proccess it.
+ should process it.
*/
class DRAWINGLAYER_DLLPUBLIC PolyPolygonColorPrimitive2D : public BasePrimitive2D
{
diff --git a/drawinglayer/inc/drawinglayer/primitive3d/polygonprimitive3d.hxx b/drawinglayer/inc/drawinglayer/primitive3d/polygonprimitive3d.hxx
index 233085a0e02b..4e0d3998d2e6 100644
--- a/drawinglayer/inc/drawinglayer/primitive3d/polygonprimitive3d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive3d/polygonprimitive3d.hxx
@@ -43,7 +43,7 @@ namespace drawinglayer
this primitive is view-dependent, too.
This is one of the non-decomposable 3D primitives, so a renderer
- should proccess it.
+ should process it.
*/
class DRAWINGLAYER_DLLPUBLIC PolygonHairlinePrimitive3D : public BasePrimitive3D
{
diff --git a/drawinglayer/inc/drawinglayer/primitive3d/polypolygonprimitive3d.hxx b/drawinglayer/inc/drawinglayer/primitive3d/polypolygonprimitive3d.hxx
index 3f6518cb0bf6..1f11f94f9931 100644
--- a/drawinglayer/inc/drawinglayer/primitive3d/polypolygonprimitive3d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive3d/polypolygonprimitive3d.hxx
@@ -39,7 +39,7 @@ namespace drawinglayer
This primitive defines a planar 3D PolyPolygon filled with a single color.
This is one of the non-decomposable primitives, so a renderer
- should proccess it.
+ should process it.
It is assumed here that the PolyPolgon is a single plane in 3D.
*/
diff --git a/drawinglayer/source/primitive2d/metafileprimitive2d.cxx b/drawinglayer/source/primitive2d/metafileprimitive2d.cxx
index 92fafaecf208..7d716896bd20 100644
--- a/drawinglayer/source/primitive2d/metafileprimitive2d.cxx
+++ b/drawinglayer/source/primitive2d/metafileprimitive2d.cxx
@@ -952,7 +952,7 @@ namespace
/** helper to take needed action on ClipRegion change. This method needs to be called
on any Region change, e.g. at the obvious actions doing this, but also at pop-calls
- whcih change the Region of the current context. It takes care of creating the
+ which change the Region of the current context. It takes care of creating the
current embeddec context, set the new Region at the context and eventually prepare
a new target for embracing new geometry to the current region
*/
@@ -972,7 +972,7 @@ namespace
// This ClipPolyPolygon is identical to the current one, so there is no need to
// create a MaskPrimitive2D containing the up-to-now created primitives, but
// this was done before. While this does not lead to wrong primitive
- // representations of the metafile data, it creates unneccesarily expensive
+ // representations of the metafile data, it creates unnecessarily expensive
// representations. Just detecting when no really 'new' ClipPolyPolygon gets set
// solves the problem.
@@ -1143,7 +1143,7 @@ namespace
/** helper to create needed data to emulate the VCL Wallpaper Metafile action.
It is a quite mighty action. This helper decides if color and/or gradient
- background is needed for the wnated bitmap fill and then creates the needed
+ background is needed for the wanted bitmap fill and then creates the needed
WallpaperBitmapPrimitive2D. This primitive was created for this purpose and
takes over all needed logic of orientations and tiling.
*/
@@ -2127,8 +2127,13 @@ namespace
drawinglayer::primitive2d::Primitive2DSequence xSubContent;
{
rTargetHolders.Push();
- // #i# for sub-Mteafile contents, do start with new, default render state
+
+ // for sub-Mteafile contents, do start with new, default render state
+ // #124686# ...but copy font, this is already set accordingly
+ const Font& rTargetFont = rPropertyHolders.Current().getFont();
rPropertyHolders.PushDefault();
+ rPropertyHolders.Current().setFont(rTargetFont);
+
interpretMetafile(aGDIMetaFile, rTargetHolders, rPropertyHolders, rViewInformation);
xSubContent = rTargetHolders.Current().getPrimitive2DSequence(rPropertyHolders.Current());
rPropertyHolders.Pop();
diff --git a/drawinglayer/source/processor2d/contourextractor2d.cxx b/drawinglayer/source/processor2d/contourextractor2d.cxx
index b7b754671301..4db6b06e3956 100644
--- a/drawinglayer/source/processor2d/contourextractor2d.cxx
+++ b/drawinglayer/source/processor2d/contourextractor2d.cxx
@@ -144,7 +144,7 @@ namespace drawinglayer
getViewInformation2D().getExtendedInformationSequence());
updateViewInformation(aViewInformation2D);
- // proccess content
+ // process content
process(rTransformCandidate.getChildren());
// restore transformations
@@ -159,13 +159,13 @@ namespace drawinglayer
const primitive2d::Primitive2DSequence xExtracted2DSceneGeometry(rScenePrimitive2DCandidate.getGeometry2D());
const primitive2d::Primitive2DSequence xExtracted2DSceneShadow(rScenePrimitive2DCandidate.getShadow2D(getViewInformation2D()));
- // proccess content
+ // process content
if(xExtracted2DSceneGeometry.hasElements())
{
process(xExtracted2DSceneGeometry);
}
- // proccess content
+ // process content
if(xExtracted2DSceneShadow.hasElements())
{
process(xExtracted2DSceneShadow);
diff --git a/drawinglayer/source/processor2d/hittestprocessor2d.cxx b/drawinglayer/source/processor2d/hittestprocessor2d.cxx
index dd423d36e6e7..885fc7a10954 100644
--- a/drawinglayer/source/processor2d/hittestprocessor2d.cxx
+++ b/drawinglayer/source/processor2d/hittestprocessor2d.cxx
@@ -231,7 +231,7 @@ namespace drawinglayer
//
// if(xExtracted2DSceneShadow.hasElements())
// {
- // // proccess extracted 2D content
+ // // process extracted 2D content
// process(xExtracted2DSceneShadow);
// }
// }
@@ -256,7 +256,7 @@ namespace drawinglayer
//
// if(xExtracted2DSceneGeometry.hasElements() || xExtracted2DSceneShadow.hasElements())
// {
- // // proccess extracted 2D content
+ // // process extracted 2D content
// process(xExtracted2DSceneGeometry);
// process(xExtracted2DSceneShadow);
// }
@@ -299,7 +299,7 @@ namespace drawinglayer
getViewInformation2D().getExtendedInformationSequence());
updateViewInformation(aViewInformation2D);
- // proccess child content recursively
+ // process child content recursively
process(rTransformCandidate.getChildren());
// restore transformations
diff --git a/drawinglayer/source/processor2d/linegeometryextractor2d.cxx b/drawinglayer/source/processor2d/linegeometryextractor2d.cxx
index 97ecf9da6952..2e98485dd2b3 100644
--- a/drawinglayer/source/processor2d/linegeometryextractor2d.cxx
+++ b/drawinglayer/source/processor2d/linegeometryextractor2d.cxx
@@ -106,7 +106,7 @@ namespace drawinglayer
getViewInformation2D().getExtendedInformationSequence());
updateViewInformation(aViewInformation2D);
- // proccess content
+ // process content
process(rTransformCandidate.getChildren());
// restore transformations
diff --git a/drawinglayer/source/processor2d/textaspolygonextractor2d.cxx b/drawinglayer/source/processor2d/textaspolygonextractor2d.cxx
index 59a47fc790a6..cd5a32bc978f 100644
--- a/drawinglayer/source/processor2d/textaspolygonextractor2d.cxx
+++ b/drawinglayer/source/processor2d/textaspolygonextractor2d.cxx
@@ -89,7 +89,7 @@ namespace drawinglayer
// as can be seen from the TextSimplePortionPrimitive2D and the
// TextDecoratedPortionPrimitive2D, inside of the mnInText marks
- // the following primitives can occurr containing geometry data
+ // the following primitives can occur containing geometry data
// from text decomposition:
//
// - PolyPolygonColorPrimitive2D
@@ -195,7 +195,7 @@ namespace drawinglayer
getViewInformation2D().getExtendedInformationSequence());
updateViewInformation(aViewInformation2D);
- // proccess content
+ // process content
process(rTransformCandidate.getChildren());
// restore transformations
diff --git a/drawinglayer/source/processor2d/vclmetafileprocessor2d.cxx b/drawinglayer/source/processor2d/vclmetafileprocessor2d.cxx
index 38a949e95a73..61098a89d190 100644
--- a/drawinglayer/source/processor2d/vclmetafileprocessor2d.cxx
+++ b/drawinglayer/source/processor2d/vclmetafileprocessor2d.cxx
@@ -2014,7 +2014,7 @@ namespace drawinglayer
// Okay, basic implementation finished and tested. The DPI stuff was hard
// and not easy to find out that it's needed.
- // Since this will not yet happen normally (as long as noone constructs
+ // Since this will not yet happen normally (as long as no one constructs
// transparence primitives with non-trivial transparence content) i will for now not
// refine to tiling here.
@@ -2146,7 +2146,7 @@ namespace drawinglayer
mpPDFExtOutDevData->BeginStructureElement(rTagElement);
}
- // proccess childs normally
+ // process childs normally
process(rStructureTagCandidate.getChildren());
if(mpPDFExtOutDevData && bTagUsed)
diff --git a/drawinglayer/source/processor2d/vclpixelprocessor2d.cxx b/drawinglayer/source/processor2d/vclpixelprocessor2d.cxx
index 9f628493f047..077b094ff793 100644
--- a/drawinglayer/source/processor2d/vclpixelprocessor2d.cxx
+++ b/drawinglayer/source/processor2d/vclpixelprocessor2d.cxx
@@ -663,7 +663,7 @@ namespace drawinglayer
if(bSuppressFatToHairlineCorrection)
{
- // remeber that we enter a PolygonStrokePrimitive2D decomposition,
+ // remember that we enter a PolygonStrokePrimitive2D decomposition,
// used for AA thick line drawing
mnPolygonStrokePrimitive2D++;
diff --git a/drawinglayer/source/processor2d/vclprocessor2d.cxx b/drawinglayer/source/processor2d/vclprocessor2d.cxx
index 0c5aec374bc1..a506ca80d206 100644
--- a/drawinglayer/source/processor2d/vclprocessor2d.cxx
+++ b/drawinglayer/source/processor2d/vclprocessor2d.cxx
@@ -1090,7 +1090,7 @@ namespace drawinglayer
getViewInformation2D().getExtendedInformationSequence());
updateViewInformation(aViewInformation2D);
- // proccess content
+ // process content
process(rTransformCandidate.getChildren());
// restore transformations
@@ -1114,7 +1114,7 @@ namespace drawinglayer
getViewInformation2D().getExtendedInformationSequence());
updateViewInformation(aViewInformation2D);
- // proccess decomposed content
+ // process decomposed content
process(rPagePreviewCandidate.get2DDecomposition(getViewInformation2D()));
// restore transformations
@@ -1387,7 +1387,7 @@ namespace drawinglayer
if(!bDone)
{
- // remeber that we enter a PolygonStrokePrimitive2D decomposition,
+ // remember that we enter a PolygonStrokePrimitive2D decomposition,
// used for AA thick line drawing
mnPolygonStrokePrimitive2D++;
diff --git a/drawinglayer/source/processor3d/geometry2dextractor.cxx b/drawinglayer/source/processor3d/geometry2dextractor.cxx
index 83c2c2eb1c8b..809b8f2c14e9 100644
--- a/drawinglayer/source/processor3d/geometry2dextractor.cxx
+++ b/drawinglayer/source/processor3d/geometry2dextractor.cxx
@@ -138,7 +138,7 @@ namespace drawinglayer
}
case PRIMITIVE3D_ID_SHADOWPRIMITIVE3D :
{
- // accept but ignore labels and shadow; these should be extracted seperately
+ // accept but ignore labels and shadow; these should be extracted separately
break;
}
default :
diff --git a/dtrans/source/cnttype/wbench/testcnttype.cxx b/dtrans/source/cnttype/wbench/testcnttype.cxx
index 8c2834e29560..e305c435769f 100644
--- a/dtrans/source/cnttype/wbench/testcnttype.cxx
+++ b/dtrans/source/cnttype/wbench/testcnttype.cxx
@@ -224,7 +224,7 @@ int SAL_CALL main( int nArgc, char* argv[] )
OUString rdbName = OUString( RTL_CONSTASCII_USTRINGPARAM( RDB_SYSPATH ) );
Reference< XMultiServiceFactory > g_xFactory( createRegistryServiceFactory( rdbName ) );
- // Print a message if an error occured.
+ // Print a message if an error occurred.
if ( !g_xFactory.is( ) )
{
OSL_ENSURE(sal_False, "Can't create RegistryServiceFactory");
diff --git a/dtrans/source/inc/MtaOleClipb.hxx b/dtrans/source/inc/MtaOleClipb.hxx
index f5eb2eeddfb4..ea7f06506083 100644
--- a/dtrans/source/inc/MtaOleClipb.hxx
+++ b/dtrans/source/inc/MtaOleClipb.hxx
@@ -77,7 +77,7 @@ private:
LRESULT sendMessage( UINT msg, WPARAM wParam = 0, LPARAM lParam = 0 );
//---------------------------------------------------------------
- // message handler functions; remeber these functions are called
+ // message handler functions; remember these functions are called
// from a different thread context!
//---------------------------------------------------------------
diff --git a/dtrans/source/win32/clipb/WinClipbImpl.cxx b/dtrans/source/win32/clipb/WinClipbImpl.cxx
index ec1146e501b7..79db8fc06e15 100644
--- a/dtrans/source/win32/clipb/WinClipbImpl.cxx
+++ b/dtrans/source/win32/clipb/WinClipbImpl.cxx
@@ -132,7 +132,7 @@ Reference< XTransferable > SAL_CALL CWinClipbImpl::getContents( ) throw( Runtime
CDTransObjFactory objFactory;
- // remeber pIDo destroys itself due to the smart pointer
+ // remember pIDo destroys itself due to the smart pointer
rClipContent = objFactory.createTransferableFromDataObj( m_pWinClipboard->m_SrvMgr, pIDo );
}
diff --git a/dtrans/source/win32/clipb/WinClipboard.cxx b/dtrans/source/win32/clipb/WinClipboard.cxx
index e272b16a2953..58b322e74b8f 100644
--- a/dtrans/source/win32/clipb/WinClipboard.cxx
+++ b/dtrans/source/win32/clipb/WinClipboard.cxx
@@ -85,7 +85,7 @@ CWinClipboard::CWinClipboard( const Reference< XMultiServiceFactory >& rServiceM
//------------------------------------------------------------------------
// getContent
-// to avoid unecessary traffic we check first if there is a clipboard
+// to avoid unnecessary traffic we check first if there is a clipboard
// content which was set via setContent, in this case we don't need
// to query the content from the clipboard, create a new wrapper object
// and so on, we simply return the orignial XTransferable instead of our
diff --git a/dtrans/source/win32/dtobj/DataFmtTransl.cxx b/dtrans/source/win32/dtobj/DataFmtTransl.cxx
index af808428492d..09f383ce3bc5 100644
--- a/dtrans/source/win32/dtobj/DataFmtTransl.cxx
+++ b/dtrans/source/win32/dtobj/DataFmtTransl.cxx
@@ -170,7 +170,7 @@ DataFlavor CDataFormatTranslator::getDataFlavorFromFormatEtc( const FORMATETC& a
OUString clipFormatName = getClipboardFormatName( aClipformat );
// if we could not get a clipboard format name an
- // error must have occured or it is a standard
+ // error must have occurred or it is a standard
// clipboard format that we don't translate, e.g.
// CF_BITMAP (the office only uses CF_DIB)
if ( clipFormatName.getLength( ) )
diff --git a/dtrans/source/win32/mtaole/MtaOleClipb.cxx b/dtrans/source/win32/mtaole/MtaOleClipb.cxx
index 62381e6b5ea5..9a8f6557bb0d 100644
--- a/dtrans/source/win32/mtaole/MtaOleClipb.cxx
+++ b/dtrans/source/win32/mtaole/MtaOleClipb.cxx
@@ -617,7 +617,7 @@ LRESULT CMtaOleClipboard::onDrawClipboard( )
aGuard.clear( );
}
- // foward the message to the next viewer in the chain
+ // forward the message to the next viewer in the chain
if ( IsWindow( m_hwndNextClipViewer ) )
{
DWORD dwResult;
diff --git a/dtrans/source/win32/workbench/test_wincb.cxx b/dtrans/source/win32/workbench/test_wincb.cxx
index f8cdfc4e85b9..0dcb2d512a8b 100644
--- a/dtrans/source/win32/workbench/test_wincb.cxx
+++ b/dtrans/source/win32/workbench/test_wincb.cxx
@@ -272,7 +272,7 @@ int SAL_CALL main( int nArgc, char* Argv[] )
OUString rdbName = OUString( RTL_CONSTASCII_USTRINGPARAM( RDB_SYSPATH ) );
Reference< XMultiServiceFactory > g_xFactory( createRegistryServiceFactory( rdbName ) );
- // Print a message if an error occured.
+ // Print a message if an error occurred.
if ( !g_xFactory.is( ) )
{
OSL_ENSURE(sal_False, "Can't create RegistryServiceFactory");
diff --git a/editeng/inc/editeng/AccessibleContextBase.hxx b/editeng/inc/editeng/AccessibleContextBase.hxx
index 676300a7f8e3..2597aa0b5206 100644
--- a/editeng/inc/editeng/AccessibleContextBase.hxx
+++ b/editeng/inc/editeng/AccessibleContextBase.hxx
@@ -51,7 +51,7 @@ struct MutexOwner {mutable ::osl::Mutex maMutex;};
/** @descr
This base class provides an implementation of the
- <type>AccessibleContext</type> service. Appart from the
+ <type>AccessibleContext</type> service. Apart from the
<type>XXAccessible<type> and <type>XAccessibleContextContext</type>
interfaces it supports the <type>XServiceInfo</type> interface.
*/
diff --git a/editeng/inc/editeng/AccessibleStaticTextBase.hxx b/editeng/inc/editeng/AccessibleStaticTextBase.hxx
index ed29070d736b..5f0aad94af1f 100644
--- a/editeng/inc/editeng/AccessibleStaticTextBase.hxx
+++ b/editeng/inc/editeng/AccessibleStaticTextBase.hxx
@@ -119,7 +119,7 @@ namespace accessibility
/** Query the current edit source
@attention This method returns by reference, so you are
- responsible for serialization (typically, you aquired the
+ responsible for serialization (typically, you acquired the
solar mutex when calling this method). Thus, the method
should only be called from the main office thread.
diff --git a/editeng/inc/editeng/editdata.hxx b/editeng/inc/editeng/editdata.hxx
index 5d908f4e5cba..e8aa76c6ffcb 100644
--- a/editeng/inc/editeng/editdata.hxx
+++ b/editeng/inc/editeng/editdata.hxx
@@ -38,7 +38,7 @@ class SvxFieldItem;
enum EETextFormat { EE_FORMAT_TEXT = 0x20, EE_FORMAT_RTF, EE_FORMAT_BIN = 0x31, EE_FORMAT_HTML, EE_FORMAT_XML };
enum EEHorizontalTextDirection { EE_HTEXTDIR_DEFAULT, EE_HTEXTDIR_L2R, EE_HTEXTDIR_R2L };
enum EESelectionMode { EE_SELMODE_STD, EE_SELMODE_TXTONLY, EE_SELMODE_HIDDEN };
- // EE_SELMODE_HIDDEN can be used to completely hide the selection. This is usefull e.g. when you want show the selection
+ // EE_SELMODE_HIDDEN can be used to completely hide the selection. This is useful e.g. when you want show the selection
// only as long as your window (which the edit view works on) has the focus
enum EESpellState { EE_SPELL_OK, EE_SPELL_NOLANGUAGE, EE_SPELL_LANGUAGENOTINSTALLED, EE_SPELL_NOSPELLER, EE_SPELL_ERRORFOUND };
enum EVAnchorMode {
diff --git a/editeng/inc/editeng/hangulhanja.hxx b/editeng/inc/editeng/hangulhanja.hxx
index 9e3c1d62f7d8..9080d99272c1 100644
--- a/editeng/inc/editeng/hangulhanja.hxx
+++ b/editeng/inc/editeng/hangulhanja.hxx
@@ -196,7 +196,7 @@ namespace editeng
<p>pseudo-abstract, needs to be overridden</p>
- <p>Note an important thing about the indicies: They are always relative to the <em>previous
+ <p>Note an important thing about the indices: They are always relative to the <em>previous
call</em> of ReplaceUnit. This means whe you get a call to ReplaceUnit, and replace some text
in your document, than you have to remember the document position immediately <em>behind</em>
the changed text. In a next call to ReplaceUnit, an index of <em>0</em> will denote exactly
diff --git a/editeng/inc/editeng/unoedsrc.hxx b/editeng/inc/editeng/unoedsrc.hxx
index 37b803999b97..22d69bc58d3b 100644
--- a/editeng/inc/editeng/unoedsrc.hxx
+++ b/editeng/inc/editeng/unoedsrc.hxx
@@ -231,7 +231,7 @@ public:
i.e. the one at position n is a special case. Because it does
not represent an existing character its bounding box is
defined in relation to preceding characters. It should be
- rougly equivalent to the bounding box of some character when
+ roughly equivalent to the bounding box of some character when
inserted at the end of the text. Its height typically being
the maximal height of all the characters in the text or the
height of the preceding character, its width being at least
diff --git a/editeng/source/accessibility/AccessibleEditableTextPara.cxx b/editeng/source/accessibility/AccessibleEditableTextPara.cxx
index 9ff0c08058df..51fce72ffac9 100644
--- a/editeng/source/accessibility/AccessibleEditableTextPara.cxx
+++ b/editeng/source/accessibility/AccessibleEditableTextPara.cxx
@@ -1554,7 +1554,7 @@ namespace accessibility
for( i = 0; i < nLength; i++ )
pIndices[i] = i;
sort( &pIndices[0], &pIndices[nLength], IndexCompare(pPairs) );
- // create sorted sequences accoring to index array
+ // create sorted sequences according to index array
uno::Sequence<beans::PropertyValue> aNewValues( nLength );
beans::PropertyValue* pNewValues = aNewValues.getArray();
for( i = 0; i < nLength; i++ )
diff --git a/editeng/source/accessibility/AccessibleStaticTextBase.cxx b/editeng/source/accessibility/AccessibleStaticTextBase.cxx
index 6408b10a1c09..a2ea3248f0b6 100644
--- a/editeng/source/accessibility/AccessibleStaticTextBase.cxx
+++ b/editeng/source/accessibility/AccessibleStaticTextBase.cxx
@@ -308,7 +308,7 @@ sal_Unicode cNewLine(0x0a);
throw lang::DisposedException (
::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("object has been already disposed")), mxThis );
- // TODO: Have a differnt method on AccessibleEditableTextPara
+ // TODO: Have a different method on AccessibleEditableTextPara
// that does not care about state changes
mpTextParagraph->SetParagraphIndex( nPara );
diff --git a/editeng/source/editeng/editeng.cxx b/editeng/source/editeng/editeng.cxx
index f8af8401fa1a..87d3cd6ae3dc 100644
--- a/editeng/source/editeng/editeng.cxx
+++ b/editeng/source/editeng/editeng.cxx
@@ -330,7 +330,7 @@ void EditEngine::Draw( OutputDevice* pOutDev, const Rectangle& rOutRect, const P
// Immer die Intersect-Methode, weil beim Metafile ein Muss!
if ( bClip )
{
- // Clip only if neccesary...
+ // Clip only if necessary...
if ( !rStartDocPos.X() && !rStartDocPos.Y() &&
( rOutRect.GetHeight() >= (long)GetTextHeight() ) &&
( rOutRect.GetWidth() >= (long)CalcTextWidth() ) )
diff --git a/editeng/source/editeng/editobj.cxx b/editeng/source/editeng/editobj.cxx
index 3a2a23735e6f..354a84808f2f 100644
--- a/editeng/source/editeng/editobj.cxx
+++ b/editeng/source/editeng/editobj.cxx
@@ -648,7 +648,7 @@ BinTextObject::BinTextObject( SfxItemPool* pP ) :
// pool destruction time of an alien pool, the pool is still alive.
// When registering would happen at an alien pool which just uses an
// EditEngineItemPool as some sub-pool, that pool could already
- // be decoupled and deleted whcih would lead to crashes.
+ // be decoupled and deleted which would lead to crashes.
pPool = getEditEngineItemPool(pP);
if ( pPool )
diff --git a/editeng/source/editeng/editview.cxx b/editeng/source/editeng/editview.cxx
index d144ec342a42..5f0f1a1340b9 100644
--- a/editeng/source/editeng/editview.cxx
+++ b/editeng/source/editeng/editview.cxx
@@ -108,7 +108,7 @@ LanguageType lcl_CheckLanguage(
if (aTmpLocale.Language == aLocale.Language)
nLang = nTmpLang;
}
- if (nLang == LANGUAGE_NONE) // language not found by looking up the sytem language...
+ if (nLang == LANGUAGE_NONE) // language not found by looking up the system language...
nLang = MsLangId::convertLocaleToLanguageWithFallback( aLocale );
if (nLang == LANGUAGE_SYSTEM)
nLang = nTmpLang;
diff --git a/editeng/source/editeng/eehtml.cxx b/editeng/source/editeng/eehtml.cxx
index d0271d785589..2faa3acba855 100644
--- a/editeng/source/editeng/eehtml.cxx
+++ b/editeng/source/editeng/eehtml.cxx
@@ -65,7 +65,7 @@ EditHTMLParser::EditHTMLParser( SvStream& rIn, const String& rBaseURL, SvKeyValu
DBG_ASSERT( RTL_TEXTENCODING_DONTKNOW == GetSrcEncoding( ), "EditHTMLParser::EditHTMLParser: Where does the encoding come from?" );
DBG_ASSERT( !IsSwitchToUCS2(), "EditHTMLParser::::EditHTMLParser: Switch to UCS2?" );
- // Altough the real default encoding is ISO8859-1, we use MS-1252
+ // Although the real default encoding is ISO8859-1, we use MS-1252
// als default encoding.
SetSrcEncoding( GetExtendedCompatibilityTextEncoding( RTL_TEXTENCODING_ISO_8859_1 ) );
diff --git a/editeng/source/editeng/impedit.cxx b/editeng/source/editeng/impedit.cxx
index 892c948afaef..f7f98ebe8f5f 100644
--- a/editeng/source/editeng/impedit.cxx
+++ b/editeng/source/editeng/impedit.cxx
@@ -253,7 +253,7 @@ void ImpEditView::DrawSelection( EditSelection aTmpSel, Region* pRegion, OutputD
if ( aBottomRight.Y() < GetVisDocTop() )
continue;
- // Now that we have Bidi, the first/last index doesn't have to be the 'most outside' postion
+ // Now that we have Bidi, the first/last index doesn't have to be the 'most outside' position
if ( !bPartOfLine )
{
Range aLineXPosStartEnd = pEditEngine->pImpEditEngine->GetLineXPosStartEnd( pTmpPortion, pLine );
diff --git a/editeng/source/editeng/impedit2.cxx b/editeng/source/editeng/impedit2.cxx
index 9d1d100e44f8..5cd0aedfe29e 100644
--- a/editeng/source/editeng/impedit2.cxx
+++ b/editeng/source/editeng/impedit2.cxx
@@ -1776,7 +1776,7 @@ void ImpEditEngine::InitScriptTypes( sal_uInt16 nPara )
if ( ( nScriptType == i18n::ScriptType::WEAK ) || ( nScriptType == rTypes.back().nScriptType ) )
{
- // Expand last ScriptTypePosInfo, don't create weak or unecessary portions
+ // Expand last ScriptTypePosInfo, don't create weak or unnecessary portions
rTypes.back().nEndPos = (sal_uInt16)nEndPos;
}
else
@@ -2045,7 +2045,7 @@ sal_Bool ImpEditEngine::IsRightToLeft( sal_uInt16 nPara ) const
// #103045# if DefaultHorizontalTextDirection is set, use that value, otherwise pool default.
if ( GetDefaultHorizontalTextDirection() != EE_HTEXTDIR_DEFAULT )
{
- pFrameDirItem = NULL; // bR2L allready set to default horizontal text direction
+ pFrameDirItem = NULL; // bR2L already set to default horizontal text direction
}
else
{
diff --git a/editeng/source/editeng/impedit3.cxx b/editeng/source/editeng/impedit3.cxx
index a2e0f1f169f3..874a44b5db26 100644
--- a/editeng/source/editeng/impedit3.cxx
+++ b/editeng/source/editeng/impedit3.cxx
@@ -1037,7 +1037,7 @@ sal_Bool ImpEditEngine::CreateLines( sal_uInt16 nPara, sal_uInt32 nStartPosY )
bBrokenLine = sal_True;
}
// Compression in Fields????
- // I think this could be a little bit difficult and is not very usefull
+ // I think this could be a little bit difficult and is not very useful
bCompressedChars = sal_False;
}
break;
@@ -1247,7 +1247,7 @@ sal_Bool ImpEditEngine::CreateLines( sal_uInt16 nPara, sal_uInt32 nStartPosY )
sal_Bool bCanHyphenate = ( aTmpFont.GetCharSet() != RTL_TEXTENCODING_SYMBOL );
if ( bCompressedChars && pPortion && ( pPortion->GetLen() > 1 ) && pPortion->GetExtraInfos() && pPortion->GetExtraInfos()->bCompressed )
{
- // I need the manipulated DXArray for determining the break postion...
+ // I need the manipulated DXArray for determining the break position...
ImplCalcAsianCompression( pNode, pPortion, nPortionStart, const_cast<sal_Int32*>(( pLine->GetCharPosArray().GetData() + (nPortionStart-pLine->GetStart()) )), 10000, sal_True );
}
if( pPortion )
@@ -1285,7 +1285,7 @@ sal_Bool ImpEditEngine::CreateLines( sal_uInt16 nPara, sal_uInt32 nStartPosY )
for ( sal_uInt16 nP = pLine->GetStartPortion(); nP <= pLine->GetEndPortion(); nP++ )
{
TextPortion* pTP = pParaPortion->GetTextPortions().GetObject( nP );
- // #95819# problem with hard font height attribute, when everthing but the line break has this attribute
+ // #95819# problem with hard font height attribute, when everything but the line break has this attribute
if ( pTP->GetKind() != PORTIONKIND_LINEBREAK )
{
SeekCursor( pNode, nTPos+1, aTmpFont );
@@ -2093,7 +2093,7 @@ void ImpEditEngine::ImpAdjustBlocks( ParaPortion* pParaPortion, EditLine* pLine,
pLastPortion->GetSize().Width()++;
// Correct positions in array
- // Even for kashidas just change positions, VCL will then draw the kashida automaticly
+ // Even for kashidas just change positions, VCL will then draw the kashida automatically
sal_uInt16 nPortionEnd = nPortionStart + pLastPortion->GetLen();
for ( sal_uInt16 _n = nChar; _n < nPortionEnd; _n++ )
{
@@ -3558,7 +3558,74 @@ void ImpEditEngine::Paint( OutputDevice* pOutDev, Rectangle aClipRec, Point aSta
String aText;
aText.Fill( (sal_uInt16)nChars, pTextPortion->GetExtraValue() );
- pOutDev->DrawStretchText( aTmpPos, pTextPortion->GetSize().Width(), aText );
+
+ if(bStripOnly)
+ {
+ // #71056# when converting to primitives, visualized TAB spaces need to be
+ // visualized. Add tab#ed text here. Alternatively a primitive especially
+ // representing this space and the single fill character would be possible, too.
+ // For now, use what we have (the DrawingText callback)
+ const lang::Locale aLocale(GetLocale(EditPaM(pPortion->GetNode(),nIndex + 1)));
+
+ // get Overline color (from ((const SvxOverlineItem*)GetItem())->GetColor() in
+ // consequence, but also already set at pOutDev)
+ const Color aOverlineColor(pOutDev->GetOverlineColor());
+
+ // get TextLine color (from ((const SvxUnderlineItem*)GetItem())->GetColor() in
+ // consequence, but also already set at pOutDev)
+ const Color aTextLineColor(pOutDev->GetTextLineColor());
+
+ // get AllWidth and together with nCharWidth create DXArray using per character
+ // difference
+ const sal_Int32 nAllWidth(pTextPortion->GetSize().Width());
+ const double fSingleCharDiff((double(nAllWidth) / double(nChars)) - double(nCharWidth));
+ sal_Int32* pTmpDXArray = 0;
+
+ if(fSingleCharDiff > 1.0)
+ {
+ // if more than one unit per character, create DXArray to create
+ // something adequate to StretchText
+ const double fAdvance(nCharWidth + fSingleCharDiff);
+ const sal_uInt32 nCount(static_cast< sal_uInt32 >(nChars));
+ pTmpDXArray = new sal_Int32[nCount];
+ double fPos(0.0);
+
+ for(sal_uInt32 a(0); a < nCount; a++)
+ {
+ fPos += fAdvance;
+ pTmpDXArray[a] = basegfx::fround(fPos);
+ }
+ }
+
+ // StripPortions() data callback
+ GetEditEnginePtr()->DrawingText(
+ aTmpPos,
+ aText,
+ 0,
+ nChars,
+ pTmpDXArray,
+ aTmpFont,
+ n,
+ nIndex,
+ pTextPortion->GetRightToLeft(),
+ 0,
+ 0,
+ false,
+ false,
+ false, // support for EOL/EOP TEXT comments
+ &aLocale,
+ aOverlineColor,
+ aTextLineColor);
+
+ if(pTmpDXArray)
+ {
+ delete pTmpDXArray;
+ }
+ }
+ else
+ {
+ pOutDev->DrawStretchText(aTmpPos,pTextPortion->GetSize().Width(),aText);
+ }
}
}
break;
@@ -4447,17 +4514,17 @@ void ImpEditEngine::ImplInitLayoutMode( OutputDevice* pOutDev, sal_uInt16 nPara,
sal_uLong nLayoutMode = pOutDev->GetLayoutMode();
- // We always use the left postion for DrawText()
+ // We always use the left position for DrawText()
nLayoutMode &= ~(TEXT_LAYOUT_BIDI_RTL);
if ( !bCTL && !bR2L)
{
- // No CTL/Bidi checking neccessary
+ // No CTL/Bidi checking necessary
nLayoutMode |= ( TEXT_LAYOUT_COMPLEX_DISABLED | TEXT_LAYOUT_BIDI_STRONG );
}
else
{
- // CTL/Bidi checking neccessary
+ // CTL/Bidi checking necessary
// Don't use BIDI_STRONG, VCL must do some checks.
nLayoutMode &= ~( TEXT_LAYOUT_COMPLEX_DISABLED | TEXT_LAYOUT_BIDI_STRONG );
diff --git a/editeng/source/editeng/impedit4.cxx b/editeng/source/editeng/impedit4.cxx
index 16772dd9a6e4..681dae1b99b2 100644
--- a/editeng/source/editeng/impedit4.cxx
+++ b/editeng/source/editeng/impedit4.cxx
@@ -2051,7 +2051,7 @@ bool ImpEditEngine::SpellSentence(EditView& rEditView,
//make sure that the sentence is never smaller than the error range!
if(aSentencePaM.Max().GetIndex() < aCurSel.Max().GetIndex())
aSentencePaM.Max() = aCurSel.Max();
- //add the portion preceeding the error
+ //add the portion preceding the error
EditSelection aStartSelection(aSentencePaM.Min(), aCurSel.Min());
if(aStartSelection.HasRange())
AddPortionIterated(rEditView, aStartSelection, 0, rToFill);
@@ -3109,7 +3109,7 @@ EditSelection ImpEditEngine::TransliterateText( const EditSelection& rSelection,
if (rData.nLen != rData.aNewText.Len())
bLenChanged = sal_True;
- // Change text without loosing the attributes
+ // Change text without losing the attributes
sal_uInt16 nDiffs = ReplaceTextOnly( rData.aSelection.Min().GetNode(),
rData.nStart, rData.nLen, rData.aNewText, rData.aOffsets );
@@ -3156,7 +3156,7 @@ short ImpEditEngine::ReplaceTextOnly(
{
(void) nLen;
- // Change text without loosing the attributes
+ // Change text without losing the attributes
sal_uInt16 nCharsAfterTransliteration =
sal::static_int_cast< sal_uInt16 >(rOffsets.getLength());
const sal_Int32* pOffsets = rOffsets.getConstArray();
diff --git a/editeng/source/editeng/textconv.hxx b/editeng/source/editeng/textconv.hxx
index 6cfcd3723827..a493564530e7 100644
--- a/editeng/source/editeng/textconv.hxx
+++ b/editeng/source/editeng/textconv.hxx
@@ -51,7 +51,7 @@ class TextConvWrapper : public editeng::HangulHanjaConversion
sal_Bool bStartDone;
sal_Bool bEndDone;
sal_Bool bAllowChange; // storage for _bAllowImplicitChangesForNotConvertibleText
- // paramters value of function GetNextPortion.
+ // parameters value of function GetNextPortion.
// used to transport the value to where it is needed.
diff --git a/editeng/source/misc/hangulhanja.cxx b/editeng/source/misc/hangulhanja.cxx
index d4794b7b83a6..0af4d3d86342 100644
--- a/editeng/source/misc/hangulhanja.cxx
+++ b/editeng/source/misc/hangulhanja.cxx
@@ -811,7 +811,7 @@ namespace editeng
}
}
- // the proper indicies (the wrapper implementation needs indicies relative to the
+ // the proper indices (the wrapper implementation needs indices relative to the
// previous replacement)
DBG_ASSERT( ( m_nReplacementBaseIndex <= m_nCurrentStartIndex ) && ( m_nReplacementBaseIndex <= m_nCurrentEndIndex ),
"HangulHanjaConversion_Impl::implChange: invalid replacement base!" );
diff --git a/editeng/source/misc/unolingu.cxx b/editeng/source/misc/unolingu.cxx
index dfe396e5cafd..12e358295855 100644
--- a/editeng/source/misc/unolingu.cxx
+++ b/editeng/source/misc/unolingu.cxx
@@ -410,7 +410,7 @@ void SvxLinguConfigUpdate::UpdateAll( sal_Bool bForceCheck )
// otherwise we may miss a new installed extension dicitonary
// just because e.g. the spellchecker is not asked what
// languages it does support currently...
- // Since the check is on-demand occuring and executed once it should
+ // Since the check is on-demand occurring and executed once it should
// not be too troublesome.
// In OOo 3.0 we will not need the respective code anymore at all.
// aAny <<= nCurrentDataFilesChangedCheckValue;
diff --git a/embeddedobj/source/commonembedding/persistence.cxx b/embeddedobj/source/commonembedding/persistence.cxx
index 9b64a4bd7ae3..9cc861ab67ab 100644
--- a/embeddedobj/source/commonembedding/persistence.cxx
+++ b/embeddedobj/source/commonembedding/persistence.cxx
@@ -961,13 +961,13 @@ void SAL_CALL OCommonEmbeddedObject::setPersistentEntry(
&& ( m_nObjectState == -1 || nEntryConnectionMode != embed::EntryInitModes::NO_INIT ) )
{
// if the object is not loaded
- // it can not get persistant representation without initialization
+ // it can not get persistent representation without initialization
// if the object is loaded
- // it can switch persistant representation only without initialization
+ // it can switch persistent representation only without initialization
throw embed::WrongStateException(
- ::rtl::OUString::createFromAscii( "Can't change persistant representation of activated object!\n" ),
+ ::rtl::OUString::createFromAscii( "Can't change persistent representation of activated object!\n" ),
uno::Reference< uno::XInterface >( static_cast< ::cppu::OWeakObject* >(this) ) );
}
@@ -1868,7 +1868,7 @@ void SAL_CALL OCommonEmbeddedObject::breakLink( const uno::Reference< embed::XSt
{}
m_pDocHolder->SetComponent( xDocument, m_bReadOnly );
- OSL_ENSURE( m_pDocHolder->GetComponent().is(), "If document cant be created, an exception must be thrown!\n" );
+ OSL_ENSURE( m_pDocHolder->GetComponent().is(), "If document can't be created, an exception must be thrown!\n" );
if ( m_nObjectState == embed::EmbedStates::LOADED )
{
diff --git a/embeddedobj/source/general/dummyobject.cxx b/embeddedobj/source/general/dummyobject.cxx
index b63b6435013c..1ea683513736 100644
--- a/embeddedobj/source/general/dummyobject.cxx
+++ b/embeddedobj/source/general/dummyobject.cxx
@@ -330,7 +330,7 @@ void SAL_CALL ODummyEmbeddedObject::setPersistentEntry(
&& ( m_nObjectState == -1 || nEntryConnectionMode != embed::EntryInitModes::NO_INIT ) )
{
throw embed::WrongStateException(
- ::rtl::OUString::createFromAscii( "Can't change persistant representation of activated object!\n" ),
+ ::rtl::OUString::createFromAscii( "Can't change persistent representation of activated object!\n" ),
uno::Reference< uno::XInterface >( static_cast< ::cppu::OWeakObject* >(this) ) );
}
diff --git a/embeddedobj/source/inc/commonembobj.hxx b/embeddedobj/source/inc/commonembobj.hxx
index c23542272afe..29c024ee981f 100644
--- a/embeddedobj/source/inc/commonembobj.hxx
+++ b/embeddedobj/source/inc/commonembobj.hxx
@@ -100,7 +100,7 @@ protected:
sal_Bool m_bClosed;
sal_Int32 m_nObjectState;
- sal_Int32 m_nTargetState; // should be -1 exept during state changing
+ sal_Int32 m_nTargetState; // should be -1 except during state changing
sal_Int32 m_nUpdateMode;
::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > m_xFactory;
@@ -239,7 +239,7 @@ public:
const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& xFactory,
const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::NamedValue >& aObjectProps );
- // no persistance for linked objects, so the descriptors are provided in constructor
+ // no persistence for linked objects, so the descriptors are provided in constructor
OCommonEmbeddedObject(
const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& xFactory,
const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::NamedValue >& aObjectProps,
diff --git a/embeddedobj/source/msole/olecomponent.cxx b/embeddedobj/source/msole/olecomponent.cxx
index c8540951abf3..46b33eec2f1f 100644
--- a/embeddedobj/source/msole/olecomponent.cxx
+++ b/embeddedobj/source/msole/olecomponent.cxx
@@ -268,7 +268,7 @@ HRESULT OpenIStorageFromURL_Impl( const ::rtl::OUString& aURL, IStorage** ppISto
::rtl::OUString aFilePath;
if ( !ppIStorage || ::osl::FileBase::getSystemPathFromFileURL( aURL, aFilePath ) != ::osl::FileBase::E_None )
- throw uno::RuntimeException(); // TODO: something dangerous happend
+ throw uno::RuntimeException(); // TODO: something dangerous happened
return StgOpenStorage( reinterpret_cast<LPCWSTR>(aFilePath.getStr()),
NULL,
@@ -574,7 +574,7 @@ void OleComponent::CreateNewIStorage_Impl()
// open an IStorage based on the temporary file
::rtl::OUString aTempFilePath;
if ( ::osl::FileBase::getSystemPathFromFileURL( aTempURL, aTempFilePath ) != ::osl::FileBase::E_None )
- throw uno::RuntimeException(); // TODO: something dangerous happend
+ throw uno::RuntimeException(); // TODO: something dangerous happened
HRESULT hr = StgCreateDocfile( reinterpret_cast<LPCWSTR>(aTempFilePath.getStr()), STGM_CREATE | STGM_READWRITE | STGM_TRANSACTED | STGM_DELETEONRELEASE, 0, &m_pNativeImpl->m_pIStorage );
if ( FAILED( hr ) || !m_pNativeImpl->m_pIStorage )
@@ -675,7 +675,7 @@ sal_Bool OleComponent::InitializeObject_Impl()
if ( FAILED( hr ) || !m_pNativeImpl->m_pViewObject2 )
return sal_False;
- // not realy needed for now, since object is updated on saving
+ // not really needed for now, since object is updated on saving
// m_pNativeImpl->m_pViewObject2->SetAdvise( DVASPECT_CONTENT, 0, m_pImplAdviseSink );
// remove all the caches
@@ -846,7 +846,7 @@ void OleComponent::CreateObjectFromFile( const ::rtl::OUString& aFileURL )
::rtl::OUString aFilePath;
if ( ::osl::FileBase::getSystemPathFromFileURL( aFileURL, aFilePath ) != ::osl::FileBase::E_None )
- throw uno::RuntimeException(); // TODO: something dangerous happend
+ throw uno::RuntimeException(); // TODO: something dangerous happened
HRESULT hr = OleCreateFromFile( CLSID_NULL,
reinterpret_cast<LPCWSTR>(aFilePath.getStr()),
@@ -876,7 +876,7 @@ void OleComponent::CreateLinkFromFile( const ::rtl::OUString& aFileURL )
::rtl::OUString aFilePath;
if ( ::osl::FileBase::getSystemPathFromFileURL( aFileURL, aFilePath ) != ::osl::FileBase::E_None )
- throw uno::RuntimeException(); // TODO: something dangerous happend
+ throw uno::RuntimeException(); // TODO: something dangerous happened
HRESULT hr = OleCreateLinkToFile( reinterpret_cast<LPCWSTR>(aFilePath.getStr()),
IID_IUnknown,
diff --git a/embeddedobj/source/msole/oleembed.cxx b/embeddedobj/source/msole/oleembed.cxx
index cf6b01ca98b0..31b927a833e2 100644
--- a/embeddedobj/source/msole/oleembed.cxx
+++ b/embeddedobj/source/msole/oleembed.cxx
@@ -398,7 +398,7 @@ sal_Bool OleEmbeddedObject::TryToConvertToOOo()
close( sal_True );
} catch( uno::Exception& ) {}
- m_xParentStorage->dispose(); // ??? the storage has information loss, it should be closed without commiting!
+ m_xParentStorage->dispose(); // ??? the storage has information loss, it should be closed without committing!
throw uno::RuntimeException(); // the repairing is not possible
}
case 2:
diff --git a/embeddedobj/source/msole/olepersist.cxx b/embeddedobj/source/msole/olepersist.cxx
index f1f36dafd586..38790e42ff76 100644
--- a/embeddedobj/source/msole/olepersist.cxx
+++ b/embeddedobj/source/msole/olepersist.cxx
@@ -1417,13 +1417,13 @@ void SAL_CALL OleEmbeddedObject::setPersistentEntry(
&& ( m_nObjectState == -1 || nEntryConnectionMode != embed::EntryInitModes::NO_INIT ) )
{
// if the object is not loaded
- // it can not get persistant representation without initialization
+ // it can not get persistent representation without initialization
// if the object is loaded
- // it can switch persistant representation only without initialization
+ // it can switch persistent representation only without initialization
throw embed::WrongStateException(
- ::rtl::OUString::createFromAscii( "Can't change persistant representation of activated object!\n" ),
+ ::rtl::OUString::createFromAscii( "Can't change persistent representation of activated object!\n" ),
uno::Reference< uno::XInterface >( static_cast< ::cppu::OWeakObject* >(this) ) );
}
diff --git a/embeddedobj/test/Container1/EmbedContApp.java b/embeddedobj/test/Container1/EmbedContApp.java
index 53b42d0270d1..764a33c815a6 100644
--- a/embeddedobj/test/Container1/EmbedContApp.java
+++ b/embeddedobj/test/Container1/EmbedContApp.java
@@ -564,7 +564,7 @@ public class EmbedContApp extends Applet
{
if ( m_xStorage != null && m_xEmbedObj != null )
{
- // if has persistance store there
+ // if has persistence store there
// if not it is and error, SaveAs had to be used
if ( m_bOwnFile )
@@ -1047,7 +1047,7 @@ public class EmbedContApp extends Applet
public void actionPerformed( ActionEvent e )
{
- // if has persistance store there
+ // if has persistence store there
// if not open SaveAs dialog and store
if ( m_xStorage != null && m_xEmbedObj != null )
{
diff --git a/embeddedobj/test/Container1/NativeView.java b/embeddedobj/test/Container1/NativeView.java
index 46d92dfda4d5..f4bc3647f971 100644
--- a/embeddedobj/test/Container1/NativeView.java
+++ b/embeddedobj/test/Container1/NativeView.java
@@ -48,7 +48,7 @@ public class NativeView extends java.awt.Canvas
/**
* ctor
- * Does nothing realy.
+ * Does nothing really.
* We can use our JNI mechanism for an already visible
* canvas only. So we overload the method for showing ( "setVisible()" )
* and make our intialization there. BUt we try to show an empty clean
@@ -64,8 +64,8 @@ public class NativeView extends java.awt.Canvas
// ____________________
/**
- * Overload this method to make neccessary initializations here.
- * ( e.g. get the window handle and neccessary system informations )
+ * Overload this method to make necessary initializations here.
+ * ( e.g. get the window handle and necessary system informations )
*
* Why here?
* Because the handle seams to be available for already visible windows
@@ -83,7 +83,7 @@ public class NativeView extends java.awt.Canvas
/**
* to guarantee right resize handling inside a swing container
* ( e.g. JSplitPane ) we must provide some informations about our
- * prefered/minimum and maximum size.
+ * preferred/minimum and maximum size.
*/
public Dimension getPreferredSize()
{
@@ -104,7 +104,7 @@ public class NativeView extends java.awt.Canvas
/**
* overload paint routine to show provide against
- * repaint errors if no office view is realy plugged
+ * repaint errors if no office view is really plugged
* into this canvas.
* If handle is present - we shouldn't paint anything further.
* May the remote window is already plugged. In such case we
@@ -153,7 +153,7 @@ public class NativeView extends java.awt.Canvas
// ____________________
/**
- * for using of the JNI methods it's neccessary to load
+ * for using of the JNI methods it's necessary to load
* system library which exports it.
*/
static
diff --git a/embeddedobj/test/MainThreadExecutor/xexecutor.cxx b/embeddedobj/test/MainThreadExecutor/xexecutor.cxx
index 12f37e20961b..ba0eb2f9e678 100644
--- a/embeddedobj/test/MainThreadExecutor/xexecutor.cxx
+++ b/embeddedobj/test/MainThreadExecutor/xexecutor.cxx
@@ -83,7 +83,7 @@ uno::Any SAL_CALL UNOMainThreadExecutor::execute( const uno::Sequence< beans::Na
// while( !pExecutor->isExecuted() )
// ::osl::Thread::yield();
- // TODO: implement transfering of the return values and exceptions
+ // TODO: implement transferring of the return values and exceptions
return uno::Any();
}
diff --git a/embedserv/source/embed/docholder.cxx b/embedserv/source/embed/docholder.cxx
index b71250ef5be0..90ddebd473d3 100644
--- a/embedserv/source/embed/docholder.cxx
+++ b/embedserv/source/embed/docholder.cxx
@@ -1259,7 +1259,7 @@ HRESULT DocumentHolder::SetExtent( const SIZEL *pSize )
// TODO/LATER: in future UNO API should be used for the conversion, currently there is no
if ( aMapMode == embed::EmbedMapUnits::TWIP )
{
- // convertion from ONE_100TH_MM
+ // conversion from ONE_100TH_MM
aNewSize.Width = aNewSize.Width * 144 / 254;
aNewSize.Height = aNewSize.Height * 144 / 254;
}
@@ -1293,7 +1293,7 @@ HRESULT DocumentHolder::GetExtent( SIZEL *pSize )
// TODO/LATER: in future UNO API should be used for the conversion, currently there is no
if ( aMapMode == embed::EmbedMapUnits::TWIP )
{
- // convertion to ONE_100TH_MM
+ // conversion to ONE_100TH_MM
aDocSize.Width = aDocSize.Width * 254 / 144;
aDocSize.Height = aDocSize.Height * 254 / 144;
}
diff --git a/embedserv/source/embed/ed_ioleobject.cxx b/embedserv/source/embed/ed_ioleobject.cxx
index 8268a61f2c00..31e2fab6acff 100644
--- a/embedserv/source/embed/ed_ioleobject.cxx
+++ b/embedserv/source/embed/ed_ioleobject.cxx
@@ -202,7 +202,7 @@ STDMETHODIMP EmbedDocument_Impl::DoVerb(
case OLEIVERB_OPEN:
OSL_ENSURE(m_pDocHolder,"no document to open");
- // the commented code could be usefull in case
+ // the commented code could be useful in case
// outer window would be resized depending from inner one
// RECTL aEmbArea;
// m_pDocHolder->GetVisArea( &aEmbArea );
diff --git a/extensions.lst b/extensions.lst
index e016099fc4f6..f6a91c8f628b 100644
--- a/extensions.lst
+++ b/extensions.lst
@@ -39,7 +39,7 @@
# English dictionary
[ language=en.* || language=de || language=it ]
- 21000528c50707539220e05df554172f http://sourceforge.net/projects/aoo-extensions/files/17102/3/dict-en.oxt/download "dict-en.oxt"
+ 6e6d2112a43b744fa5dc12c4b150d52a http://sourceforge.net/projects/aoo-extensions/files/17102/5/dict-en.oxt/download "dict-en.oxt"
# English (USA, en_US) dictionary
[ language==nl || language==ru ]
@@ -47,7 +47,7 @@
# German dictionary.
[ language=de || language=de_DE || language=nl || language=ru ]
- 1051096689e5e3838b9340cde8c3ce37 http://sourceforge.net/projects/aoo-extensions/files/1075/12/dict-de_DE-frami_2012-06-17.oxt/download "dict-de_DE-frami_2012-06-17.oxt"
+ a9328ce36b272a034b4706721345076d http://sourceforge.net/projects/aoo-extensions/files/1075/13/dict-de_de-frami_2013-12-06.oxt/download "dict-de_DE-frami_2012-06-17.oxt"
# Dutch dictionary.
[ language=nl ]
@@ -92,11 +92,11 @@
# German (Austria) dictionary.
[ language=de || language=de_AT || language=de_DE ]
- 149fd9465b7cac8aca393f2c57e9d562 http://sourceforge.net/projects/aoo-extensions/files/1697/9/dict-de_AT-frami_2012-06-17.oxt/download "dict-de_AT-frami_2012-06-17.oxt"
+ 47b868a8949faba36b8f0ff351940967 http://sourceforge.net/projects/aoo-extensions/files/1697/10/dict-de_at-frami_2013-12-06.oxt/download "dict-de_AT-frami_2012-06-17.oxt"
# German (Switzerland) dictionary.
[ language=de || language=de_CH || language=de_DE ]
- e9ddd3ae2a3213a7bd8b5e49198b6b6b http://sourceforge.net/projects/aoo-extensions/files/1699/9/dict-de_CH-frami_2012-06-17.oxt/download "dict-de_CH-frami_2012-06-17.oxt"
+ f4ab5c31fa394f05dab58ab773ab5012 http://sourceforge.net/projects/aoo-extensions/files/1699/10/dict-de_ch-frami_2013-12-06.oxt/download "dict-de_CH-frami_2012-06-17.oxt"
# Khmer dictionary.
[ language=km ]
@@ -104,7 +104,7 @@
# Scottish Gaelic.
[ language=gd ]
- 88d92378c2bcf22f87f49bf594130238 http://sourceforge.net/projects/aoo-extensions/files/4587/9/hunspell-gd-2.7.oxt/download "hunspell-gd-2.7.oxt"
+ 3a26a49794077643e802cf2cb738ec18 http://sourceforge.net/projects/aoo-extensions/files/4587/10/hunspell-gd-2.8.oxt/download "hunspell-gd-2.8.oxt"
# Basque.
[ language=eu ]
@@ -135,4 +135,8 @@
[ language=pl ]
a69f9221864b1360e38ff3f0b0cc9222 http://sourceforge.net/projects/aoo-extensions/files/806/4/pl-dict.oxt/download "pl-dict.oxt"
+# Portuguese (European).
+[ language=pt || language=pt_PT ]
+ ad882aa5fcd1b48ebc2421b0d25ee178 http://sourceforge.net/projects/aoo-extensions/files/1196/27/oo3x-pt-pt-14.1.1.1.oxt/download "dict-pt.oxt"
+
diff --git a/extensions/prj/build.lst b/extensions/prj/build.lst
index aea444420075..8a815ee31cec 100644
--- a/extensions/prj/build.lst
+++ b/extensions/prj/build.lst
@@ -22,6 +22,7 @@ ex extensions\source\config\ldap nmake - all ex_ldap ex_inc N
ex extensions\source\update\feed nmake - all ex_updchkfeed ex_inc NULL
ex extensions\source\update\check nmake - all ex_updchk ex_inc NULL
ex extensions\source\update\ui nmake - all ex_updchkui ex_inc NULL
+ex extensions\source\mozbootstrap nmake - all ex_mozbootstrap ex_inc NULL
ex extensions\util nmake - all ex_util ex_preload ex_abpilot ex_dbpilots ex_logging ex_ldap ex_propctrlr ex_bib ex_oooimprovecore NULL
# Fails at the moment
diff --git a/extensions/prj/d.lst b/extensions/prj/d.lst
index e4e2e2170870..9c01f3acd4ba 100644
--- a/extensions/prj/d.lst
+++ b/extensions/prj/d.lst
@@ -12,6 +12,7 @@ mkdir: %_DEST%\bin%_EXT%\so
..\%__SRC%\lib\ldapbe2.uno.so %_DEST%\lib%_EXT%\ldapbe2.uno.so
..\%__SRC%\lib\updchk.uno.so %_DEST%\lib%_EXT%\updchk.uno.so
..\%__SRC%\lib\updatefeed.uno.so %_DEST%\lib%_EXT%\updatefeed.uno.so
+..\%__SRC%\lib\mozbootstrap.uno.so %_DEST%\lib%_EXT%\mozbootstrap.uno.so
..\%__SRC%\bin\oleautobridge2.uno.dll %_DEST%\bin%_EXT%\odf4ms\oleautobridge.uno.dll
..\%__SRC%\lib\*.dylib %_DEST%\lib%_EXT%\*.dylib
..\%__SRC%\bin\*.res %_DEST%\bin%_EXT%\*.res
@@ -50,3 +51,4 @@ mkdir: %_DEST%\xml%_EXT%\registry\spool\org\openoffice\Office\Logging
..\%__SRC%\misc\updchk.component %_DEST%\xml%_EXT%\updchk.component
..\%__SRC%\misc\updchk.uno.component %_DEST%\xml%_EXT%\updchk.uno.component
..\%__SRC%\misc\xmx.component %_DEST%\xml%_EXT%\xmx.component
+..\%__SRC%\misc\mozbootstrap.component %_DEST%\xml%_EXT%\mozbootstrap.component
diff --git a/extensions/source/bibliography/framectr.cxx b/extensions/source/bibliography/framectr.cxx
index a2084b8ec073..2d03ac1b82b4 100644
--- a/extensions/source/bibliography/framectr.cxx
+++ b/extensions/source/bibliography/framectr.cxx
@@ -408,7 +408,7 @@ sal_Bool BibFrameController_Impl::SaveModified(const Reference< form::runtime::X
}
catch(Exception&)
{
- DBG_ERROR("SaveModified: Exception occured!");
+ DBG_ERROR("SaveModified: Exception occurred!");
}
bInserted = bIsNew && bResult;
diff --git a/extensions/source/inc/componentmodule.hxx b/extensions/source/inc/componentmodule.hxx
index dd0795f1e424..216722f41be8 100644
--- a/extensions/source/inc/componentmodule.hxx
+++ b/extensions/source/inc/componentmodule.hxx
@@ -24,7 +24,7 @@
#ifndef _EXTENSIONS_COMPONENT_MODULE_HXX_
#define _EXTENSIONS_COMPONENT_MODULE_HXX_
-/** you may find this file helpfull if you implement a component (in it's own library) which can't use
+/** you may find this file helpful if you implement a component (in it's own library) which can't use
the usual infrastructure.<br/>
More precise, you find helper classes to ease the use of resources and the registration of services.
<p>
diff --git a/extensions/source/logging/loghandler.hxx b/extensions/source/logging/loghandler.hxx
index 1d383eb13f9b..ca96a8fdc109 100644
--- a/extensions/source/logging/loghandler.hxx
+++ b/extensions/source/logging/loghandler.hxx
@@ -118,13 +118,13 @@ namespace logging
/** retrieves our formatter's heading, encoded with our encoding
- @return <TRUE/> in case of success, <FALSE/> if any error occured
+ @return <TRUE/> in case of success, <FALSE/> if any error occurred
*/
bool getEncodedHead( ::rtl::OString& _out_rHead ) const;
/** retrieves our formatter's tail, encoded with our encoding
- @return <TRUE/> in case of success, <FALSE/> if any error occured
+ @return <TRUE/> in case of success, <FALSE/> if any error occurred
*/
bool getEncodedTail( ::rtl::OString& _out_rTail ) const;
diff --git a/extensions/source/macosx/spotlight/OOoContentDataParser.m b/extensions/source/macosx/spotlight/OOoContentDataParser.m
index d9e3a452563c..39f37afbeb32 100644
--- a/extensions/source/macosx/spotlight/OOoContentDataParser.m
+++ b/extensions/source/macosx/spotlight/OOoContentDataParser.m
@@ -106,7 +106,7 @@
- (void)parser:(NSXMLParser *)parser parseErrorOccurred:(NSError *)parseError
{
//NSLog(@"parsing finished with error");
- NSLog([NSString stringWithFormat:@"An error occured parsing the document. (Error %i, Description: %@, Line: %i, Column: %i)", [parseError code],
+ NSLog([NSString stringWithFormat:@"An error occurred parsing the document. (Error %i, Description: %@, Line: %i, Column: %i)", [parseError code],
[[parser parserError] localizedDescription], [parser lineNumber],
[parser columnNumber]]);
diff --git a/extensions/source/macosx/spotlight/unzip.h b/extensions/source/macosx/spotlight/unzip.h
index 90d234a5267c..5bcf349def09 100644
--- a/extensions/source/macosx/spotlight/unzip.h
+++ b/extensions/source/macosx/spotlight/unzip.h
@@ -143,8 +143,8 @@ extern int ZEXPORT unzStringFileNameCompare OF ((const char* fileName1,
int iCaseSensitivity));
/*
Compare two filename (fileName1,fileName2).
- If iCaseSenisivity = 1, comparision is case sensitivity (like strcmp)
- If iCaseSenisivity = 2, comparision is not case sensitivity (like strcmpi
+ If iCaseSenisivity = 1, comparison is case sensitivity (like strcmp)
+ If iCaseSenisivity = 2, comparison is not case sensitivity (like strcmpi
or strcasecmp)
If iCaseSenisivity = 0, case sensitivity is defaut of your operating system
(like 1 on Unix, 2 on Windows)
diff --git a/extensions/source/macosx/spotlight/unzip.m b/extensions/source/macosx/spotlight/unzip.m
index 9c5b58ddf7ac..79035803ff2c 100644
--- a/extensions/source/macosx/spotlight/unzip.m
+++ b/extensions/source/macosx/spotlight/unzip.m
@@ -176,7 +176,7 @@ typedef struct
/* ===========================================================================
Read a byte from a gz_stream; update next_in and avail_in. Return EOF
for end of file.
- IN assertion: the stream s has been sucessfully opened for reading.
+ IN assertion: the stream s has been successfully opened for reading.
*/
@@ -312,8 +312,8 @@ local int strcmpcasenosensitive_internal (fileName1,fileName2)
/*
Compare two filename (fileName1,fileName2).
- If iCaseSenisivity = 1, comparision is case sensitivity (like strcmp)
- If iCaseSenisivity = 2, comparision is not case sensitivity (like strcmpi
+ If iCaseSenisivity = 1, comparison is case sensitivity (like strcmp)
+ If iCaseSenisivity = 2, comparison is not case sensitivity (like strcmpi
or strcasecmp)
If iCaseSenisivity = 0, case sensitivity is defaut of your operating system
(like 1 on Unix, 2 on Windows)
diff --git a/extensions/source/mozbootstrap/MMozillaBootstrap.cxx b/extensions/source/mozbootstrap/MMozillaBootstrap.cxx
new file mode 100644
index 000000000000..410c55df9a12
--- /dev/null
+++ b/extensions/source/mozbootstrap/MMozillaBootstrap.cxx
@@ -0,0 +1,233 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_extensions.hxx"
+
+#include "MMozillaBootstrap.hxx"
+
+using namespace com::sun::star::uno;
+using namespace com::sun::star::lang;
+using namespace com::sun::star::mozilla;
+using namespace connectivity::mozab;
+#include <MNSFolders.hxx>
+#include "MNSProfileDiscover.hxx"
+
+static MozillaBootstrap *pMozillaBootstrap=NULL;
+static Reference<XMozillaBootstrap> xMozillaBootstrap;
+extern "C" SAL_DLLPUBLIC_EXPORT void* SAL_CALL OMozillaBootstrap_CreateInstance(const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& _rxFactory)
+{
+ if (!pMozillaBootstrap)
+ {
+ pMozillaBootstrap=new connectivity::mozab::MozillaBootstrap( _rxFactory );
+ pMozillaBootstrap->Init();
+ xMozillaBootstrap = pMozillaBootstrap;
+ }
+ return pMozillaBootstrap;
+}
+
+// --------------------------------------------------------------------------------
+
+
+// --------------------------------------------------------------------------------
+MozillaBootstrap::MozillaBootstrap(
+ const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& _rxFactory)
+ : OMozillaBootstrap_BASE(m_aMutex), m_xMSFactory( _rxFactory )
+{
+}
+// -----------------------------------------------------------------------------
+MozillaBootstrap::~MozillaBootstrap()
+{
+}
+// -----------------------------------------------------------------------------
+void MozillaBootstrap::Init()
+{
+ sal_Bool aProfileExists=sal_False;
+
+ (void)aProfileExists; /* avoid warning about unused parameter */
+
+ m_ProfileAccess = new ProfileAccess();
+ bootupProfile(::com::sun::star::mozilla::MozillaProductType_Mozilla,rtl::OUString());
+}
+
+// --------------------------------------------------------------------------------
+void MozillaBootstrap::disposing()
+{
+ ::osl::MutexGuard aGuard(m_aMutex);
+ OMozillaBootstrap_BASE::disposing();
+}
+
+// static ServiceInfo
+//------------------------------------------------------------------------------
+rtl::OUString MozillaBootstrap::getImplementationName_Static( ) throw(RuntimeException)
+{
+ return rtl::OUString::createFromAscii(MOZAB_MozillaBootstrap_IMPL_NAME);
+}
+//------------------------------------------------------------------------------
+Sequence< ::rtl::OUString > MozillaBootstrap::getSupportedServiceNames_Static( ) throw (RuntimeException)
+{
+ // which service is supported
+ // for more information @see com.sun.star.mozilla.MozillaBootstrap
+ Sequence< ::rtl::OUString > aSNS( 1 );
+ aSNS[0] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.mozilla.MozillaBootstrap"));
+ return aSNS;
+}
+
+//------------------------------------------------------------------
+::rtl::OUString SAL_CALL MozillaBootstrap::getImplementationName( ) throw(RuntimeException)
+{
+ return getImplementationName_Static();
+}
+
+//------------------------------------------------------------------
+sal_Bool SAL_CALL MozillaBootstrap::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;
+}
+
+//------------------------------------------------------------------
+Sequence< ::rtl::OUString > SAL_CALL MozillaBootstrap::getSupportedServiceNames( ) throw(RuntimeException)
+{
+ return getSupportedServiceNames_Static();
+}
+
+
+// XProfileDiscover
+::sal_Int32 SAL_CALL MozillaBootstrap::getProfileCount( ::com::sun::star::mozilla::MozillaProductType product) throw (::com::sun::star::uno::RuntimeException)
+{
+ return m_ProfileAccess->getProfileCount(product);
+}
+::sal_Int32 SAL_CALL MozillaBootstrap::getProfileList( ::com::sun::star::mozilla::MozillaProductType product, ::com::sun::star::uno::Sequence< ::rtl::OUString >& list ) throw (::com::sun::star::uno::RuntimeException)
+{
+ return m_ProfileAccess->getProfileList(product,list);
+}
+::rtl::OUString SAL_CALL MozillaBootstrap::getDefaultProfile( ::com::sun::star::mozilla::MozillaProductType product ) throw (::com::sun::star::uno::RuntimeException)
+{
+ return m_ProfileAccess->getDefaultProfile(product);
+}
+::rtl::OUString SAL_CALL MozillaBootstrap::getProfilePath( ::com::sun::star::mozilla::MozillaProductType product, const ::rtl::OUString& profileName ) throw (::com::sun::star::uno::RuntimeException)
+{
+ return m_ProfileAccess->getProfilePath(product,profileName);
+}
+::sal_Bool SAL_CALL MozillaBootstrap::isProfileLocked( ::com::sun::star::mozilla::MozillaProductType product, const ::rtl::OUString& profileName ) throw (::com::sun::star::uno::RuntimeException)
+{
+ return m_ProfileAccess->isProfileLocked(product,profileName);
+}
+::sal_Bool SAL_CALL MozillaBootstrap::getProfileExists( ::com::sun::star::mozilla::MozillaProductType product, const ::rtl::OUString& profileName ) throw (::com::sun::star::uno::RuntimeException)
+{
+ return m_ProfileAccess->getProfileExists(product,profileName);
+}
+
+// XProfileManager
+::sal_Int32 SAL_CALL MozillaBootstrap::bootupProfile( ::com::sun::star::mozilla::MozillaProductType product, const ::rtl::OUString& profileName ) throw (::com::sun::star::uno::RuntimeException)
+{
+ (void)product; /* avoid warning about unused parameter */
+ (void)profileName; /* avoid warning about unused parameter */
+ return -1;
+}
+::sal_Int32 SAL_CALL MozillaBootstrap::shutdownProfile( ) throw (::com::sun::star::uno::RuntimeException)
+{
+ return -1;
+}
+::com::sun::star::mozilla::MozillaProductType SAL_CALL MozillaBootstrap::getCurrentProduct( ) throw (::com::sun::star::uno::RuntimeException)
+{
+ return ::com::sun::star::mozilla::MozillaProductType_Default;
+}
+::rtl::OUString SAL_CALL MozillaBootstrap::getCurrentProfile( ) throw (::com::sun::star::uno::RuntimeException)
+{
+ return ::rtl::OUString();
+}
+::sal_Bool SAL_CALL MozillaBootstrap::isCurrentProfileLocked( ) throw (::com::sun::star::uno::RuntimeException)
+{
+ return true;
+}
+::rtl::OUString SAL_CALL MozillaBootstrap::setCurrentProfile( ::com::sun::star::mozilla::MozillaProductType product, const ::rtl::OUString& profileName ) throw (::com::sun::star::uno::RuntimeException)
+{
+ (void)product; /* avoid warning about unused parameter */
+ (void)profileName; /* avoid warning about unused parameter */
+ return ::rtl::OUString();
+}
+
+// XProxyRunner
+::sal_Int32 SAL_CALL MozillaBootstrap::Run( const ::com::sun::star::uno::Reference< ::com::sun::star::mozilla::XCodeProxy >& aCode ) throw (::com::sun::star::uno::RuntimeException)
+{
+ (void)aCode; /* avoid warning about unused parameter */
+ return -1;
+}
+
+
+#include <cppuhelper/factory.hxx>
+using ::com::sun::star::uno::Reference;
+using ::com::sun::star::uno::Sequence;
+using ::com::sun::star::lang::XSingleServiceFactory;
+using ::com::sun::star::lang::XMultiServiceFactory;
+
+extern "C" SAL_DLLPUBLIC_EXPORT void SAL_CALL
+component_getImplementationEnvironment(
+ const sal_Char **ppEnvTypeName,
+ uno_Environment ** /*ppEnv*/
+ )
+{
+ *ppEnvTypeName = CPPU_CURRENT_LANGUAGE_BINDING_NAME;
+}
+
+static Reference< XInterface > SAL_CALL createInstance( const Reference< XMultiServiceFactory >& rServiceManager )
+{
+ MozillaBootstrap * pBootstrap = reinterpret_cast<MozillaBootstrap*>(OMozillaBootstrap_CreateInstance(rServiceManager));
+ return *pBootstrap;
+}
+
+extern "C" SAL_DLLPUBLIC_EXPORT void* SAL_CALL component_getFactory(
+ const sal_Char* pImplementationName,
+ void* pServiceManager,
+ void* /*pRegistryKey*/)
+{
+ void* pRet = 0;
+
+ if (pServiceManager)
+ {
+ ::rtl::OUString aImplName( ::rtl::OUString::createFromAscii( pImplementationName ) );
+ Reference< XSingleServiceFactory > xFactory;
+ if (aImplName.equals( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.comp.mozilla.MozillaBootstrap")) ))
+ {
+ Sequence< ::rtl::OUString > aSNS( 1 );
+ aSNS[0] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.mozilla.MozillaBootstrap"));
+
+ xFactory = ::cppu::createSingleFactory(
+ reinterpret_cast< XMultiServiceFactory* > ( pServiceManager),
+ aImplName, createInstance, aSNS );
+ }
+ if ( xFactory.is() )
+ {
+ xFactory->acquire();
+ pRet = xFactory.get();
+ }
+ }
+
+ return pRet;
+};
+
diff --git a/extensions/source/mozbootstrap/MMozillaBootstrap.hxx b/extensions/source/mozbootstrap/MMozillaBootstrap.hxx
new file mode 100644
index 000000000000..afc2ccdbf7c0
--- /dev/null
+++ b/extensions/source/mozbootstrap/MMozillaBootstrap.hxx
@@ -0,0 +1,97 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+
+#ifndef _SMOZILLABOOTSTRAP_HXX
+#define _SMOZILLABOOTSTRAP_HXX
+
+#include <com/sun/star/mozilla/XMozillaBootstrap.hpp>
+#include <com/sun/star/lang/XServiceInfo.hpp>
+#include <cppuhelper/compbase2.hxx>
+#include <osl/module.h>
+
+
+#define MOZAB_MozillaBootstrap_IMPL_NAME "com.sun.star.comp.mozilla.MozillaBootstrap"
+
+namespace connectivity
+{
+ namespace mozab
+ {
+ typedef ::cppu::WeakComponentImplHelper2< ::com::sun::star::mozilla::XMozillaBootstrap,
+ ::com::sun::star::lang::XServiceInfo > OMozillaBootstrap_BASE;
+ class ProfileAccess;
+ class ProfileManager;
+ class MozillaBootstrap : public OMozillaBootstrap_BASE
+ {
+ protected:
+ const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > m_xMSFactory;
+
+ ::osl::Mutex m_aMutex; // mutex is need to control member access
+ virtual ~MozillaBootstrap();
+ protected:
+ ProfileAccess * m_ProfileAccess;
+ ProfileManager * m_ProfileManager;
+ public:
+
+ void Init();
+ MozillaBootstrap(const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& _rxFactory);
+
+ // OComponentHelper
+ virtual void SAL_CALL disposing(void);
+ // XInterface
+ static ::rtl::OUString getImplementationName_Static( ) throw(::com::sun::star::uno::RuntimeException);
+ static ::com::sun::star::uno::Sequence< ::rtl::OUString > getSupportedServiceNames_Static( ) 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);
+
+ // XMozillaBootstrap
+
+ // XProfileDiscover
+ virtual ::sal_Int32 SAL_CALL getProfileCount( ::com::sun::star::mozilla::MozillaProductType product) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::sal_Int32 SAL_CALL getProfileList( ::com::sun::star::mozilla::MozillaProductType product, ::com::sun::star::uno::Sequence< ::rtl::OUString >& list ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getDefaultProfile( ::com::sun::star::mozilla::MozillaProductType product ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getProfilePath( ::com::sun::star::mozilla::MozillaProductType product, const ::rtl::OUString& profileName ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::sal_Bool SAL_CALL isProfileLocked( ::com::sun::star::mozilla::MozillaProductType product, const ::rtl::OUString& profileName ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::sal_Bool SAL_CALL getProfileExists( ::com::sun::star::mozilla::MozillaProductType product, const ::rtl::OUString& profileName ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XProfileManager
+ virtual ::sal_Int32 SAL_CALL bootupProfile( ::com::sun::star::mozilla::MozillaProductType product, const ::rtl::OUString& profileName ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::sal_Int32 SAL_CALL shutdownProfile( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::com::sun::star::mozilla::MozillaProductType SAL_CALL getCurrentProduct( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL getCurrentProfile( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::sal_Bool SAL_CALL isCurrentProfileLocked( ) throw (::com::sun::star::uno::RuntimeException);
+ virtual ::rtl::OUString SAL_CALL setCurrentProfile( ::com::sun::star::mozilla::MozillaProductType product, const ::rtl::OUString& profileName ) throw (::com::sun::star::uno::RuntimeException);
+
+ // XProxyRunner
+ virtual ::sal_Int32 SAL_CALL Run( const ::com::sun::star::uno::Reference< ::com::sun::star::mozilla::XCodeProxy >& aCode ) throw (::com::sun::star::uno::RuntimeException);
+
+ const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >
+ & getMSFactory(void) const { return m_xMSFactory; }
+
+ };
+ }
+
+}
+
+#endif // _SMozillaBootstrap_HXX
diff --git a/extensions/source/mozbootstrap/MNSFolders.cxx b/extensions/source/mozbootstrap/MNSFolders.cxx
new file mode 100644
index 000000000000..c16d36c8f746
--- /dev/null
+++ b/extensions/source/mozbootstrap/MNSFolders.cxx
@@ -0,0 +1,147 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_extensions.hxx"
+#include <MNSFolders.hxx>
+
+#ifdef UNIX
+#include <sys/types.h>
+#include <strings.h>
+#include <string.h>
+#endif // End UNIX
+
+#ifdef WNT
+#include "pre_include_windows.h"
+#include <windows.h>
+#include <stdlib.h>
+#include <shlobj.h>
+#include <objidl.h>
+#include "post_include_windows.h"
+#endif // End WNT
+#include <osl/security.hxx>
+#include <osl/file.hxx>
+#include <osl/thread.h>
+
+using namespace ::com::sun::star::mozilla;
+
+namespace
+{
+ // -------------------------------------------------------------------
+ static ::rtl::OUString lcl_getUserDataDirectory()
+ {
+ ::osl::Security aSecurity;
+ ::rtl::OUString aConfigPath;
+
+ aSecurity.getConfigDir( aConfigPath );
+ return aConfigPath + ::rtl::OUString::createFromAscii( "/" );
+ }
+
+ // -------------------------------------------------------------------
+ static const char* DefaultProductDir[3][3] =
+ {
+ #if defined(XP_WIN)
+ { "Mozilla/SeaMonkey/", NULL, NULL },
+ { "Mozilla/Firefox/", NULL, NULL },
+ { "Thunderbird/", "Mozilla/Thunderbird/", NULL }
+ #elif(MACOSX)
+ { "../Mozilla/SeaMonkey/", NULL, NULL },
+ { "Firefox/", NULL, NULL },
+ { "../Thunderbird/", NULL, NULL }
+ #else
+ { ".mozilla/seamonkey/", NULL, NULL },
+ { ".mozilla/firefox/", NULL, NULL },
+ { ".thunderbird/", ".mozilla-thunderbird/", ".mozilla/thunderbird/" }
+ #endif
+ };
+
+ static const char* ProductRootEnvironmentVariable[3] =
+ {
+ "MOZILLA_PROFILE_ROOT",
+ "MOZILLA_FIREFOX_PROFILE_ROOT",
+ "MOZILLA_THUNDERBIRD_PROFILE_ROOT",
+ };
+
+ // -------------------------------------------------------------------
+ static ::rtl::OUString lcl_guessProfileRoot( MozillaProductType _product )
+ {
+ size_t productIndex = _product - 1;
+
+ static ::rtl::OUString s_productDirectories[3];
+
+ if ( !s_productDirectories[ productIndex ].getLength() )
+ {
+ ::rtl::OUString sProductPath;
+
+ // check whether we have an anevironment variable which helps us
+ const char* pProfileByEnv = getenv( ProductRootEnvironmentVariable[ productIndex ] );
+ if ( pProfileByEnv )
+ {
+ sProductPath = ::rtl::OUString( pProfileByEnv, rtl_str_getLength( pProfileByEnv ), osl_getThreadTextEncoding() );
+ // asume that this is fine, no further checks
+ }
+ else
+ {
+ ::rtl::OUString sProductDirCandidate;
+ const char* pProfileRegistry = "profiles.ini";
+
+ // check all possible candidates
+ for ( size_t i=0; i<3; ++i )
+ {
+ if ( NULL == DefaultProductDir[ productIndex ][ i ] )
+ break;
+
+ sProductDirCandidate = lcl_getUserDataDirectory() +
+ ::rtl::OUString::createFromAscii( DefaultProductDir[ productIndex ][ i ] );
+
+ // check existence
+ ::osl::DirectoryItem aRegistryItem;
+ ::osl::FileBase::RC result = ::osl::DirectoryItem::get( sProductDirCandidate + ::rtl::OUString::createFromAscii( pProfileRegistry ), aRegistryItem );
+ if ( result == ::osl::FileBase::E_None )
+ {
+ ::osl::FileStatus aStatus( FileStatusMask_Validate );
+ result = aRegistryItem.getFileStatus( aStatus );
+ if ( result == ::osl::FileBase::E_None )
+ {
+ // the registry file exists
+ break;
+ }
+ }
+ }
+
+ ::osl::FileBase::getSystemPathFromFileURL( sProductDirCandidate, sProductPath );
+ }
+
+ s_productDirectories[ productIndex ] = sProductPath;
+ }
+
+ return s_productDirectories[ productIndex ];
+ }
+}
+
+// -----------------------------------------------------------------------
+::rtl::OUString getRegistryDir(MozillaProductType product)
+{
+ if (product == MozillaProductType_Default)
+ return ::rtl::OUString();
+
+ return lcl_guessProfileRoot( product );
+}
diff --git a/sw/inc/unobrushitemhelper.hxx b/extensions/source/mozbootstrap/MNSFolders.hxx
index 03edfff1363b..64582d868856 100644
--- a/sw/inc/unobrushitemhelper.hxx
+++ b/extensions/source/mozbootstrap/MNSFolders.hxx
@@ -19,15 +19,21 @@
*
*************************************************************/
-#ifndef _UNOBRUSHITEMHELPER_HXX
-#define _UNOBRUSHITEMHELPER_HXX
-#include <editeng/brshitem.hxx>
-//UUUU helper function definintions for UNO API fallbacks to replace SvxBrushItem
-void setSvxBrushItemAsFillAttributesToTargetSet(const SvxBrushItem& rBrush, SfxItemSet& rToSet);
-SvxBrushItem getSvxBrushItemFromSourceSet(const SfxItemSet& rSourceSet, sal_Bool bSearchInParents = sal_True);
+#ifndef _MNSFOLDERS_HXX_
+#define _MNSFOLDERS_HXX_
-#endif // _UNOBRUSHITEMHELPER_HXX
+#include <sal/types.h>
+#include <osl/diagnose.h>
+#include <osl/conditn.hxx>
+#ifndef _COM_SUN_STAR_MOZILLA_MOZILLPRODUCTTYPE_HPP_
+#include <com/sun/star/mozilla/MozillaProductType.hpp>
+#endif
+
+#include <rtl/ustring.hxx>
+
+::rtl::OUString getRegistryDir(::com::sun::star::mozilla::MozillaProductType product);
+
+#endif
-//eof
diff --git a/extensions/source/mozbootstrap/MNSINIParser.cxx b/extensions/source/mozbootstrap/MNSINIParser.cxx
new file mode 100644
index 000000000000..b1671c2a7a66
--- /dev/null
+++ b/extensions/source/mozbootstrap/MNSINIParser.cxx
@@ -0,0 +1,133 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_extensions.hxx"
+#include <MNSINIParser.hxx>
+#include <rtl/byteseq.hxx>
+
+IniParser::IniParser(OUString const & rIniName) throw(com::sun::star::io::IOException )
+{
+ OUString iniUrl;
+ if (osl_File_E_None != osl_getFileURLFromSystemPath(rIniName.pData, &iniUrl.pData))
+ return;
+
+
+#if OSL_DEBUG_LEVEL > 0
+ OString sFile = OUStringToOString(iniUrl, RTL_TEXTENCODING_ASCII_US);
+ OSL_TRACE(__FILE__" -- parser() - %s\n", sFile.getStr());
+#endif
+ oslFileHandle handle=NULL;
+ oslFileError fileError = osl_File_E_INVAL;
+ try{
+ if (iniUrl.getLength())
+ fileError = osl_openFile(iniUrl.pData, &handle, osl_File_OpenFlag_Read);
+ }
+ catch(::com::sun::star::io::IOException e)
+ {
+#if OSL_DEBUG_LEVEL > 0
+ OString file_tmp = OUStringToOString(iniUrl, RTL_TEXTENCODING_ASCII_US);
+ OSL_TRACE( __FILE__" -- couldn't open file: %s", file_tmp.getStr() );
+#endif
+ }
+
+ if (osl_File_E_None == fileError)
+ {
+ rtl::ByteSequence seq;
+ sal_uInt64 nSize = 0;
+
+ osl_getFileSize(handle, &nSize);
+ OUString sectionName = OUString::createFromAscii("no name section");
+ while (true)
+ {
+ sal_uInt64 nPos;
+ if (osl_File_E_None != osl_getFilePos(handle, &nPos) || nPos >= nSize)
+ break;
+ if (osl_File_E_None != osl_readLine(handle , (sal_Sequence **) &seq))
+ break;
+ OString line( (const sal_Char *) seq.getConstArray(), seq.getLength() );
+ sal_Int32 nIndex = line.indexOf('=');
+ if (nIndex >= 1)
+ {
+ ini_Section *aSection = &mAllSection[sectionName];
+ struct ini_NameValue nameValue;
+ nameValue.sName = OStringToOUString(
+ line.copy(0,nIndex).trim(), RTL_TEXTENCODING_ASCII_US );
+ nameValue.sValue = OStringToOUString(
+ line.copy(nIndex+1).trim(), RTL_TEXTENCODING_UTF8 );
+
+ aSection->lList.push_back(nameValue);
+
+ }
+ else
+ {
+ sal_Int32 nIndexStart = line.indexOf('[');
+ sal_Int32 nIndexEnd = line.indexOf(']');
+ if ( nIndexEnd > nIndexStart && nIndexStart >=0)
+ {
+ sectionName = OStringToOUString(
+ line.copy(nIndexStart + 1,nIndexEnd - nIndexStart -1).trim(), RTL_TEXTENCODING_ASCII_US );
+ if (!sectionName.getLength())
+ sectionName = OUString::createFromAscii("no name section");
+
+ ini_Section *aSection = &mAllSection[sectionName];
+ aSection->sName = sectionName;
+ }
+ }
+ }
+ osl_closeFile(handle);
+ }
+#if OSL_DEBUG_LEVEL > 0
+ else
+ {
+ OString file_tmp = OUStringToOString(iniUrl, RTL_TEXTENCODING_ASCII_US);
+ OSL_TRACE( __FILE__" -- couldn't open file: %s", file_tmp.getStr() );
+ }
+#endif
+}
+#if OSL_DEBUG_LEVEL > 0
+void IniParser::Dump()
+{
+ IniSectionMap::iterator iBegin = mAllSection.begin();
+ IniSectionMap::iterator iEnd = mAllSection.end();
+ for(;iBegin != iEnd;iBegin++)
+ {
+ ini_Section *aSection = &(*iBegin).second;
+ OString sec_name_tmp = OUStringToOString(aSection->sName, RTL_TEXTENCODING_ASCII_US);
+ for(NameValueList::iterator itor=aSection->lList.begin();
+ itor != aSection->lList.end();
+ itor++)
+ {
+ struct ini_NameValue * aValue = &(*itor);
+ OString name_tmp = OUStringToOString(aValue->sName, RTL_TEXTENCODING_ASCII_US);
+ OString value_tmp = OUStringToOString(aValue->sValue, RTL_TEXTENCODING_UTF8);
+ OSL_TRACE(
+ " section=%s name=%s value=%s\n",
+ sec_name_tmp.getStr(),
+ name_tmp.getStr(),
+ value_tmp.getStr() );
+
+ }
+ }
+
+}
+#endif
+
diff --git a/extensions/source/mozbootstrap/MNSINIParser.hxx b/extensions/source/mozbootstrap/MNSINIParser.hxx
new file mode 100644
index 000000000000..f2aaaf4805b9
--- /dev/null
+++ b/extensions/source/mozbootstrap/MNSINIParser.hxx
@@ -0,0 +1,79 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+
+#ifndef __MNSINIPARSER_HXX__
+#define __MNSINIPARSER_HXX__
+
+#include <rtl/ustring.hxx>
+#include <com/sun/star/io/IOException.hpp>
+#include <osl/process.h>
+using namespace rtl;
+
+#include <map>
+#include <list>
+
+#if OSL_DEBUG_LEVEL > 0
+#include <stdio.h>
+#endif
+
+struct ini_NameValue
+{
+ rtl::OUString sName;
+ rtl::OUString sValue;
+
+ inline ini_NameValue() SAL_THROW( () )
+ {}
+ inline ini_NameValue(
+ OUString const & name, OUString const & value ) SAL_THROW( () )
+ : sName( name ),
+ sValue( value )
+ {}
+};
+
+typedef std::list<
+ ini_NameValue
+> NameValueList;
+
+struct ini_Section
+{
+ rtl::OUString sName;
+ NameValueList lList;
+};
+typedef std::map<rtl::OUString,
+ ini_Section
+ >IniSectionMap;
+
+
+class IniParser
+{
+ IniSectionMap mAllSection;
+public:
+ IniSectionMap * getAllSection(){return &mAllSection;};
+ IniParser(OUString const & rIniName) throw(com::sun::star::io::IOException );
+#if OSL_DEBUG_LEVEL > 0
+ void Dump();
+#endif
+
+};
+
+#endif
+
diff --git a/extensions/source/mozbootstrap/MNSProfileDiscover.cxx b/extensions/source/mozbootstrap/MNSProfileDiscover.cxx
new file mode 100644
index 000000000000..ee7d43f47d6b
--- /dev/null
+++ b/extensions/source/mozbootstrap/MNSProfileDiscover.cxx
@@ -0,0 +1,221 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_extensions.hxx"
+#include "MNSProfileDiscover.hxx"
+
+// Registry Keys
+
+static ::rtl::OUString szProfileSubtreeString=::rtl::OUString::createFromAscii("Profiles");
+static ::rtl::OUString szCurrentProfileString= ::rtl::OUString::createFromAscii("CurrentProfile");
+static ::rtl::OUString szDirectoryString =::rtl::OUString::createFromAscii("directory");
+
+#ifndef MAXPATHLEN
+#define MAXPATHLEN 1024
+#endif
+#include <MNSFolders.hxx>
+#include <MNSINIParser.hxx>
+
+namespace connectivity
+{
+ namespace mozab
+ {
+ ProfileStruct::ProfileStruct(MozillaProductType aProduct,::rtl::OUString aProfileName,
+ const ::rtl::OUString& aProfilePath)
+ {
+ product=aProduct;
+ profileName = aProfileName;
+ profilePath = aProfilePath;
+ }
+ ::rtl::OUString ProfileStruct::getProfilePath()
+ {
+ return profilePath;
+ }
+
+ ProfileAccess::~ProfileAccess()
+ {
+ }
+ ProfileAccess::ProfileAccess()
+ {
+ LoadProductsInfo();
+ }
+
+ sal_Int32 ProfileAccess::LoadProductsInfo()
+ {
+ //load SeaMonkey 2 profiles to m_ProductProfileList
+ sal_Int32 count = LoadXPToolkitProfiles(MozillaProductType_Mozilla);
+
+ //load thunderbird profiles to m_ProductProfileList
+ count += LoadXPToolkitProfiles(MozillaProductType_Thunderbird);
+
+ //load firefox profiles to m_ProductProfileList
+ //firefox profile does not containt address book, but maybe others need them
+ count += LoadXPToolkitProfiles(MozillaProductType_Firefox);
+ return count;
+ }
+ //Thunderbird and firefox profiles are saved in profiles.ini
+ sal_Int32 ProfileAccess::LoadXPToolkitProfiles(MozillaProductType product)
+ {
+ sal_Int32 index=product;
+ ProductStruct &m_Product = m_ProductProfileList[index];
+
+ ::rtl::OUString regDir = getRegistryDir(product);
+ ::rtl::OUString profilesIni( regDir );
+ profilesIni += ::rtl::OUString::createFromAscii( "profiles.ini" );
+ IniParser parser( profilesIni );
+ IniSectionMap &mAllSection = *(parser.getAllSection());
+
+ IniSectionMap::iterator iBegin = mAllSection.begin();
+ IniSectionMap::iterator iEnd = mAllSection.end();
+ for(;iBegin != iEnd;iBegin++)
+ {
+ ini_Section *aSection = &(*iBegin).second;
+ ::rtl::OUString profileName;
+ ::rtl::OUString profilePath;
+ ::rtl::OUString sIsRelative;
+ ::rtl::OUString sIsDefault;
+
+ for(NameValueList::iterator itor=aSection->lList.begin();
+ itor != aSection->lList.end();
+ itor++)
+ {
+ struct ini_NameValue * aValue = &(*itor);
+ if (aValue->sName.equals(::rtl::OUString::createFromAscii("Name")))
+ {
+ profileName = aValue->sValue;
+ }
+ else if (aValue->sName.equals(::rtl::OUString::createFromAscii("IsRelative")))
+ {
+ sIsRelative = aValue->sValue;
+ }
+ else if (aValue->sName.equals(::rtl::OUString::createFromAscii("Path")))
+ {
+ profilePath = aValue->sValue;
+ }
+ else if (aValue->sName.equals(::rtl::OUString::createFromAscii("Default")))
+ {
+ sIsDefault = aValue->sValue;
+ }
+ }
+ if (profileName.getLength() != 0 || profilePath.getLength() != 0)
+ {
+ sal_Int32 isRelative = 0;
+ if (sIsRelative.getLength() != 0)
+ {
+ isRelative = sIsRelative.toInt32();
+ }
+
+ ProfileStruct* profileItem = new ProfileStruct(product,profileName,
+ regDir + profilePath);
+ m_Product.mProfileList[profileName] = profileItem;
+
+ sal_Int32 isDefault = 0;
+ if (sIsDefault.getLength() != 0)
+ {
+ isDefault = sIsDefault.toInt32();
+ }
+ if (isDefault)
+ m_Product.mCurrentProfileName = profileName;
+
+ }
+
+ }
+ return static_cast< ::sal_Int32 >(m_Product.mProfileList.size());
+ }
+
+ ::rtl::OUString ProfileAccess::getProfilePath( ::com::sun::star::mozilla::MozillaProductType product, const ::rtl::OUString& profileName ) throw (::com::sun::star::uno::RuntimeException)
+ {
+ sal_Int32 index=product;
+ ProductStruct &m_Product = m_ProductProfileList[index];
+ if (!m_Product.mProfileList.size() || m_Product.mProfileList.find(profileName) == m_Product.mProfileList.end())
+ {
+ //Profile not found
+ return ::rtl::OUString();
+ }
+ else
+ return m_Product.mProfileList[profileName]->getProfilePath();
+ }
+
+ ::sal_Int32 ProfileAccess::getProfileCount( ::com::sun::star::mozilla::MozillaProductType product) throw (::com::sun::star::uno::RuntimeException)
+ {
+ sal_Int32 index=product;
+ ProductStruct &m_Product = m_ProductProfileList[index];
+ return static_cast< ::sal_Int32 >(m_Product.mProfileList.size());
+ }
+ ::sal_Int32 ProfileAccess::getProfileList( ::com::sun::star::mozilla::MozillaProductType product, ::com::sun::star::uno::Sequence< ::rtl::OUString >& list ) throw (::com::sun::star::uno::RuntimeException)
+ {
+ sal_Int32 index=product;
+ ProductStruct &m_Product = m_ProductProfileList[index];
+ list.realloc(static_cast<sal_Int32>(m_Product.mProfileList.size()));
+ sal_Int32 i=0;
+ for(ProfileList::iterator itor=m_Product.mProfileList.begin();
+ itor != m_Product.mProfileList.end();
+ itor++)
+ {
+ ProfileStruct * aProfile = (*itor).second;
+ list[i] = aProfile->getProfileName();
+ i++;
+ }
+
+ return static_cast< ::sal_Int32 >(m_Product.mProfileList.size());
+ }
+
+ ::rtl::OUString ProfileAccess::getDefaultProfile( ::com::sun::star::mozilla::MozillaProductType product ) throw (::com::sun::star::uno::RuntimeException)
+ {
+ sal_Int32 index=product;
+ ProductStruct &m_Product = m_ProductProfileList[index];
+ if (m_Product.mCurrentProfileName.getLength() != 0)
+ {
+ //default profile setted in mozilla registry
+ return m_Product.mCurrentProfileName;
+ }
+ if (m_Product.mProfileList.size() == 0)
+ {
+ //there are not any profiles
+ return ::rtl::OUString();
+ }
+ ProfileStruct * aProfile = (*m_Product.mProfileList.begin()).second;
+ return aProfile->getProfileName();
+ }
+
+ ::sal_Bool ProfileAccess::isProfileLocked( ::com::sun::star::mozilla::MozillaProductType product, const ::rtl::OUString& profileName ) throw (::com::sun::star::uno::RuntimeException)
+ {
+ (void)product; /* avoid warning about unused parameter */
+ (void)profileName; /* avoid warning about unused parameter */
+ return sal_True;
+ }
+
+ ::sal_Bool ProfileAccess::getProfileExists( ::com::sun::star::mozilla::MozillaProductType product, const ::rtl::OUString& profileName ) throw (::com::sun::star::uno::RuntimeException)
+ {
+ sal_Int32 index=product;
+ ProductStruct &m_Product = m_ProductProfileList[index];
+ if (!m_Product.mProfileList.size() || m_Product.mProfileList.find(profileName) == m_Product.mProfileList.end())
+ {
+ return sal_False;
+ }
+ else
+ return sal_True;
+ }
+ }
+}
+
+
diff --git a/extensions/source/mozbootstrap/MNSProfileDiscover.hxx b/extensions/source/mozbootstrap/MNSProfileDiscover.hxx
new file mode 100644
index 000000000000..916b8e437651
--- /dev/null
+++ b/extensions/source/mozbootstrap/MNSProfileDiscover.hxx
@@ -0,0 +1,98 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+#ifndef __MNSProfileDiscover_h___
+#define __MNSProfileDiscover_h___
+
+#include <sal/types.h>
+#include <osl/diagnose.h>
+#include <osl/conditn.hxx>
+#ifndef _COM_SUN_STAR_MOZILLA_MOZILLPRODUCTTYPE_HPP_
+#include <com/sun/star/mozilla/MozillaProductType.hpp>
+#endif
+#include <com/sun/star/uno/RuntimeException.hpp>
+#include <com/sun/star/uno/Sequence.hxx>
+#include <rtl/ustring.hxx>
+
+#include <vector>
+#include <map>
+
+using namespace com::sun::star::mozilla;
+namespace connectivity
+{
+ namespace mozab
+ {
+ class ProfileStruct;
+ }
+}
+typedef ::std::map < ::rtl::OUString, ::connectivity::mozab::ProfileStruct* > ProfileList;
+namespace connectivity
+{
+ namespace mozab
+ {
+ class ProfileStruct
+ {
+ public:
+ ProfileStruct(MozillaProductType aProduct,::rtl::OUString aProfileName,
+ const ::rtl::OUString &aProfilePath );
+ MozillaProductType getProductType() { return product;}
+ ::rtl::OUString getProfileName(){ return profileName;}
+ ::rtl::OUString getProfilePath() ;
+ protected:
+ MozillaProductType product;
+ ::rtl::OUString profileName;
+ ::rtl::OUString profilePath;
+ };
+
+ class ProductStruct
+ {
+ public:
+ void setCurrentProfile(::rtl::OUString aProfileName){mCurrentProfileName = aProfileName;}
+
+ ::rtl::OUString mCurrentProfileName;
+
+ ProfileList mProfileList;
+ };
+
+ //Used to query profiles information
+ class ProfileAccess
+ {
+ public:
+
+ virtual ~ProfileAccess();
+ ProfileAccess();
+ ::rtl::OUString getProfilePath( ::com::sun::star::mozilla::MozillaProductType product, const ::rtl::OUString& profileName ) throw (::com::sun::star::uno::RuntimeException);
+ ::sal_Int32 getProfileCount( ::com::sun::star::mozilla::MozillaProductType product ) throw (::com::sun::star::uno::RuntimeException);
+ ::sal_Int32 getProfileList( ::com::sun::star::mozilla::MozillaProductType product, ::com::sun::star::uno::Sequence< ::rtl::OUString >& list ) throw (::com::sun::star::uno::RuntimeException);
+ ::rtl::OUString getDefaultProfile( ::com::sun::star::mozilla::MozillaProductType product ) throw (::com::sun::star::uno::RuntimeException);
+ ::sal_Bool SAL_CALL isProfileLocked( ::com::sun::star::mozilla::MozillaProductType product, const ::rtl::OUString& profileName ) throw (::com::sun::star::uno::RuntimeException);
+ ::sal_Bool SAL_CALL getProfileExists( ::com::sun::star::mozilla::MozillaProductType product, const ::rtl::OUString& profileName ) throw (::com::sun::star::uno::RuntimeException);
+ protected:
+ ProductStruct m_ProductProfileList[4];
+ sal_Int32 LoadProductsInfo();
+ sal_Int32 LoadXPToolkitProfiles(MozillaProductType product);
+ };
+
+ }
+}
+
+#endif // __MNSProfileDiscover_h___
+
diff --git a/extensions/source/mozbootstrap/makefile.mk b/extensions/source/mozbootstrap/makefile.mk
new file mode 100644
index 000000000000..a6ec4bb4a54e
--- /dev/null
+++ b/extensions/source/mozbootstrap/makefile.mk
@@ -0,0 +1,76 @@
+#**************************************************************
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+#**************************************************************
+
+CALL_CDECL=TRUE
+
+PRJ=..$/..
+PRJNAME=extensions
+TARGET=mozbootstrap
+
+.IF "$(OS)" == "OS2" || "$(OS)" == "WNT"
+all:
+ @echo " Not building under Windows / OS/2"
+.ENDIF
+
+# --- Settings ----------------------------------
+
+LIBTARGET=NO
+ENABLE_EXCEPTIONS=TRUE
+VISIBILITY_HIDDEN=TRUE
+
+.INCLUDE : settings.mk
+
+# no "lib" prefix
+DLLPRE =
+
+# --- Files -------------------------------------
+
+SLOFILES += \
+ $(SLO)$/MNSINIParser.obj \
+ $(SLO)$/MNSProfileDiscover.obj \
+ $(SLO)$/MMozillaBootstrap.obj \
+ $(SLO)$/MNSFolders.obj
+
+# CDEFS+=-DMINIMAL_PROFILEDISCOVER
+
+SHL1TARGET=$(TARGET).uno
+SHL1VERSIONMAP=$(SOLARENV)/src/component.map
+SHL1OBJS=$(SLOFILES)
+SHL1DEF=$(MISC)$/$(SHL1TARGET).def
+DEF1NAME=$(SHL1TARGET)
+
+SHL1STDLIBS=\
+ $(CPPULIB) \
+ $(CPPUHELPERLIB) \
+ $(SALLIB) \
+ $(COMPHELPERLIB)
+
+ALLTAR : $(MISC)/mozbootstrap.component
+
+$(MISC)/mozbootstrap.component .ERRREMOVE : \
+ $(SOLARENV)/bin/createcomponent.xslt mozbootstrap.component
+ $(XSLTPROC) --nonet --stringparam uri \
+ '$(COMPONENTPREFIX_BASIS_NATIVE)$(SHL1TARGETN:f)' -o $@ \
+ $(SOLARENV)/bin/createcomponent.xslt mozbootstrap.component
+
+# --- Targets ----------------------------------
+
+.INCLUDE : target.mk
diff --git a/extensions/source/mozbootstrap/mozbootstrap.component b/extensions/source/mozbootstrap/mozbootstrap.component
new file mode 100644
index 000000000000..618a4b4f3d4a
--- /dev/null
+++ b/extensions/source/mozbootstrap/mozbootstrap.component
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--***********************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ ***********************************************************-->
+<component loader="com.sun.star.loader.SharedLibrary"
+ xmlns="http://openoffice.org/2010/uno-components">
+ <implementation name="com.sun.star.comp.mozilla.MozillaBootstrap">
+ <service name="com.sun.star.mozilla.MozillaBootstrap"/>
+ </implementation>
+</component>
diff --git a/extensions/source/ole/unoconversionutilities.hxx b/extensions/source/ole/unoconversionutilities.hxx
index d17883b712ec..2b1bfcff51f1 100644
--- a/extensions/source/ole/unoconversionutilities.hxx
+++ b/extensions/source/ole/unoconversionutilities.hxx
@@ -1026,7 +1026,7 @@ void UnoConversionUtilities<T>::anyToVariant(VARIANT* pVariant, const Any& rAny)
}
// Creates an SAFEARRAY of the specified element and if necessary
-// creates a SAFEARRAY whith multiple dimensions.
+// creates a SAFEARRAY with multiple dimensions.
// Used by sal_Bool anyToVariant(VARIANT* pVariant, const Any& rAny, VARTYPE type);
template<class T>
SAFEARRAY* UnoConversionUtilities<T>::createUnoSequenceWrapper(const Any& rSeq, VARTYPE elemtype)
@@ -1255,7 +1255,7 @@ size_t UnoConversionUtilities<T>::getOleElementSize( VARTYPE type)
// param rSeq - an Any that has to contain a Sequence
// param dim - the dimension for which the number of elements is being determined,
// must be one.
-// param seqElementCounts - countains the maximum number of elements for each
+// param seqElementCounts - contains the maximum number of elements for each
// dimension. Index 0 contains the number of dimension one.
// After return the Sequence contains the maximum number of
// elements for each dimension.
@@ -1403,7 +1403,7 @@ void UnoConversionUtilities<T>::createUnoObjectWrapper(const Any & rObj, VARIANT
}
}
// Is the object a COM wrapper ( either XInvocation, or Adapter object)
- // or does it suppy an IDispatch by its own ?
+ // or does it supply an IDispatch by its own ?
else
{
Reference<XInterface> xIntComWrapper = xInt;
diff --git a/extensions/source/ole/unoobjw.cxx b/extensions/source/ole/unoobjw.cxx
index eb2323e7ab71..50ff7d65872e 100644
--- a/extensions/source/ole/unoobjw.cxx
+++ b/extensions/source/ole/unoobjw.cxx
@@ -326,7 +326,7 @@ STDMETHODIMP InterfaceOleWrapper_Impl::GetIDsOfNames(REFIID /*riid*/,
// A. Type Information
// -----------------------------------------------------------------------------
// With the help of type information the kind of parameter can be exactly determined
-// and an appropriate conversion can be choosen. A problem arises if a method expects
+// and an appropriate conversion can be chosen. A problem arises if a method expects
// an Any. Then the type info does not tell what the type of the value, that is kept
// by the any, should be. In this situation the decision wheter the param is a
// sequence or an object is made upon the fact if the object has a property "0"
@@ -344,7 +344,7 @@ STDMETHODIMP InterfaceOleWrapper_Impl::GetIDsOfNames(REFIID /*riid*/,
// can easily find out that a param is such an object by queriing for the
// IJScriptValue interface. By this interface one the type and kind ( out, in/out)
// can be determined and the right conversion can be applied.
-// Using ValueObjects we spare us the effort of aquiring and examining type information
+// Using ValueObjects we spare us the effort of acquiring and examining type information
// in order to figure out what the an IDispatch parameter is meant for.
// Normal JScript object parameter can be mixed with JScriptValue object. If an
@@ -1662,7 +1662,7 @@ static HRESULT mapCannotConvertException( CannotConvertException e, unsigned int
// is VT_DISPATCH. The function is used from o2u_createUnoObjectWrapper
// and the result is put into the constructor of the uno - wrapper
// object. If a client asks the object for DISPID_VALUE and this
-// funtion returned VT_DISPATCH then the IDispatch of the same
+// function returned VT_DISPATCH then the IDispatch of the same
// object is being returned.
// See InterfaceOleWrapper_Impl::Invoke, InterfaceOleWrapper_Impl::m_defaultValueType
const VARTYPE getVarType( const Any& value)
diff --git a/extensions/source/oooimprovement/myconfigurationhelper.hxx b/extensions/source/oooimprovement/myconfigurationhelper.hxx
index f2d9b2f72090..e6f4a43cdb7d 100644
--- a/extensions/source/oooimprovement/myconfigurationhelper.hxx
+++ b/extensions/source/oooimprovement/myconfigurationhelper.hxx
@@ -39,7 +39,7 @@ namespace oooimprovement
#error css defined globally
#endif
#define css ::com::sun::star
- // Copy from comphelper module, we cant use that directly from an extension
+ // Copy from comphelper module, we can't use that directly from an extension
class MyConfigurationHelper
{
public:
@@ -82,7 +82,7 @@ namespace oooimprovement
*
* @param eMode
* specify the open mode for the returned configuration access.
- * It's interpreted as a flag field and can be any usefull combination
+ * It's interpreted as a flag field and can be any useful combination
* of values of EConfigurationModes.
*
* @throw css::uno::Any exceptions the underlying configuration can throw.
@@ -177,7 +177,7 @@ namespace oooimprovement
* Because it opens the specified configuration package, reads the key and
* closes the configuration again.
*
- * So its not very usefull to use this method for reading multiple keys at the same time.
+ * So its not very useful to use this method for reading multiple keys at the same time.
* (Excepting these keys exists inside different configuration packages ...))
*/
static css::uno::Any readDirectKey(
@@ -194,7 +194,7 @@ namespace oooimprovement
* Because it opens the specified configuration package, writes the key, flush
* all changes and closes the configuration again.
*
- * So its not very usefull to use this method for writing multiple keys at the same time.
+ * So its not very useful to use this method for writing multiple keys at the same time.
* (Excepting these keys exists inside different configuration packages ...))
*/
static void writeDirectKey(
diff --git a/extensions/source/propctrlr/browserlistbox.cxx b/extensions/source/propctrlr/browserlistbox.cxx
index 607d4155fde3..865e9e405cc9 100644
--- a/extensions/source/propctrlr/browserlistbox.cxx
+++ b/extensions/source/propctrlr/browserlistbox.cxx
@@ -167,7 +167,7 @@ namespace pcr
*/
void SAL_CALL dispose();
- /** sets the notification mode, so that notifications recieved from the controls are
+ /** sets the notification mode, so that notifications received from the controls are
forwarded to our IControlContext either synchronously or asynchronously
@param _eMode
the new notification mode
diff --git a/extensions/source/propctrlr/cellbindinghandler.hxx b/extensions/source/propctrlr/cellbindinghandler.hxx
index fccd9029dfef..9b1369cb4c52 100644
--- a/extensions/source/propctrlr/cellbindinghandler.hxx
+++ b/extensions/source/propctrlr/cellbindinghandler.hxx
@@ -86,7 +86,7 @@ namespace pcr
However, it can also result in a more complex change: The current (UI) state might
depend on the value of more than one other property. Those dependent properties (their
- UI, more precisly) are updated in this method.
+ UI, more precisely) are updated in this method.
@param _nPropid
the ->PropertyId of the dependent property whose UI state is to be updated
diff --git a/extensions/source/propctrlr/cellbindinghelper.hxx b/extensions/source/propctrlr/cellbindinghelper.hxx
index 08c45f6a1b05..dbbbdd42f262 100644
--- a/extensions/source/propctrlr/cellbindinghelper.hxx
+++ b/extensions/source/propctrlr/cellbindinghelper.hxx
@@ -116,7 +116,7 @@ namespace pcr
@precond
The binding is a valid cell binding, or <NULL/>
@return
- <FALSE/> if and only if an error occured and no valid address could be obtained
+ <FALSE/> if and only if an error occurred and no valid address could be obtained
@see isCellBinding
*/
bool getAddressFromCellBinding(
@@ -200,7 +200,7 @@ namespace pcr
) const;
/** retrieves the index of the sheet which our control belongs to
- @return the index of the sheet which our control belongs to or -1, if an error occured
+ @return the index of the sheet which our control belongs to or -1, if an error occurred
*/
sal_Int16 getControlSheetIndex(
::com::sun::star::uno::Reference< ::com::sun::star::sheet::XSpreadsheet >& _out_rxSheet
@@ -265,7 +265,7 @@ namespace pcr
the AddressConversion service
@return
- <TRUE/> if any only if the conversion was successfull
+ <TRUE/> if any only if the conversion was successful
@see com::sun::star::table::CellAddressConversion
@see com::sun::star::table::CellRangeAddressConversion
diff --git a/extensions/source/propctrlr/eventhandler.cxx b/extensions/source/propctrlr/eventhandler.cxx
index 0c2f4b0da7de..36e2d2f48809 100644
--- a/extensions/source/propctrlr/eventhandler.cxx
+++ b/extensions/source/propctrlr/eventhandler.cxx
@@ -914,7 +914,7 @@ namespace pcr
pEventHolder->addEvent( event->second.nId, event->second.sListenerMethodName, aAssignedScript );
}
- // the inital selection in the dialog
+ // the initial selection in the dialog
Sequence< ::rtl::OUString > aNames( pEventHolder->getElementNames() );
const ::rtl::OUString* pChosenEvent = ::std::find( aNames.getConstArray(), aNames.getConstArray() + aNames.getLength(), rForEvent.sListenerMethodName );
sal_uInt16 nInitialSelection = (sal_uInt16)( pChosenEvent - aNames.getConstArray() );
diff --git a/extensions/source/propctrlr/eventhandler.hxx b/extensions/source/propctrlr/eventhandler.hxx
index efd650245c69..6edc3b064290 100644
--- a/extensions/source/propctrlr/eventhandler.hxx
+++ b/extensions/source/propctrlr/eventhandler.hxx
@@ -147,7 +147,7 @@ namespace pcr
private:
/** returns the script events associated with our introspectee
@param _out_rEvents
- Takes, upon successfull return, the events currently associated with the introspectee
+ Takes, upon successful return, the events currently associated with the introspectee
@precond
Our introspectee is a form component
*/
@@ -157,7 +157,7 @@ namespace pcr
/** returns the script events associated with our introspectee
@param _out_rEvents
- Takes, upon successfull return, the events currently associated with the introspectee
+ Takes, upon successful return, the events currently associated with the introspectee
@precond
Our introspectee is a dialog element
*/
@@ -181,7 +181,7 @@ namespace pcr
/** returns the types of the listeners which can be registered at our introspectee
@param _out_rTypes
- Takes, upon successfull return, the types of possible listeners at the introspectee
+ Takes, upon successful return, the types of possible listeners at the introspectee
*/
void impl_getCopmonentListenerTypes_nothrow(
::com::sun::star::uno::Sequence< ::com::sun::star::uno::Type >& _out_rTypes
diff --git a/extensions/source/propctrlr/fontdialog.cxx b/extensions/source/propctrlr/fontdialog.cxx
index e7d2eb263899..0b0fdb50bb75 100644
--- a/extensions/source/propctrlr/fontdialog.cxx
+++ b/extensions/source/propctrlr/fontdialog.cxx
@@ -575,7 +575,7 @@ namespace pcr
const SvxFontListItem& rFontListItem = static_cast<const SvxFontListItem&>(_rpPool->GetDefaultItem(CFID_FONTLIST));
const FontList* pFontList = rFontListItem.GetFontList();
- // _first_ delete the set (refering the pool)
+ // _first_ delete the set (referring the pool)
if (_rpSet)
{
delete _rpSet;
diff --git a/extensions/source/propctrlr/formcomponenthandler.cxx b/extensions/source/propctrlr/formcomponenthandler.cxx
index 12f443a03e45..40915c92e56f 100644
--- a/extensions/source/propctrlr/formcomponenthandler.cxx
+++ b/extensions/source/propctrlr/formcomponenthandler.cxx
@@ -2439,7 +2439,7 @@ namespace pcr
{
DBG_ERROR( "FormComponentPropertyHandler::impl_ensureRowsetConnection_nothrow: caught an exception during error handling!" );
}
- // additional info about what happended
+ // additional info about what happened
String sInfo( PcrRes( RID_STR_UNABLETOCONNECT ) );
INetURLObject aParser( sDataSourceName );
if ( aParser.GetProtocol() != INET_PROT_NOT_VALID )
diff --git a/extensions/source/propctrlr/formcomponenthandler.hxx b/extensions/source/propctrlr/formcomponenthandler.hxx
index 1337ea707e16..3bb0faf65865 100644
--- a/extensions/source/propctrlr/formcomponenthandler.hxx
+++ b/extensions/source/propctrlr/formcomponenthandler.hxx
@@ -405,7 +405,7 @@ namespace pcr
However, it can also result in a more complex change: The current (UI) state might
depend on the value of more than one other property. Those dependent properties (their
- UI, more precisly) are updated in this method.
+ UI, more precisely) are updated in this method.
@param _nPropid
the ->PropertyId of the dependent property whose UI state is to be updated
diff --git a/extensions/source/propctrlr/pcrcomponentcontext.hxx b/extensions/source/propctrlr/pcrcomponentcontext.hxx
index 08f9a1c5ef34..8e518bf8a3bb 100644
--- a/extensions/source/propctrlr/pcrcomponentcontext.hxx
+++ b/extensions/source/propctrlr/pcrcomponentcontext.hxx
@@ -97,7 +97,7 @@ namespace pcr
@throws ::com::sun::star::lang::ServiceNotRegisteredException
if the given service is not registered
@throws Exception
- if an exception occured during creating the component
+ if an exception occurred during creating the component
@return
the newly created component. Is never <NULL/>.
*/
@@ -108,7 +108,7 @@ namespace pcr
@throws ::com::sun::star::lang::ServiceNotRegisteredException
if the given service is not registered
@throws Exception
- if an exception occured during creating the component
+ if an exception occurred during creating the component
@return
the newly created component. Is never <NULL/>.
*/
diff --git a/extensions/source/scanner/twain.cxx b/extensions/source/scanner/twain.cxx
index 19f1d77222ad..8efdce688ed7 100644
--- a/extensions/source/scanner/twain.cxx
+++ b/extensions/source/scanner/twain.cxx
@@ -401,7 +401,7 @@ void ImpTwain::ImplXfer()
GlobalFree( (HGLOBAL) hDIB );
#endif // OS2
- // set resolution of bitmap if neccessary
+ // set resolution of bitmap if necessary
if ( ( nXRes != -1 ) && ( nYRes != - 1 ) && ( nWidth != - 1 ) && ( nHeight != - 1 ) )
{
const MapMode aMapMode( MAP_100TH_INCH, Point(), Fraction( 100, nXRes ), Fraction( 100, nYRes ) );
diff --git a/extensions/source/update/check/download.cxx b/extensions/source/update/check/download.cxx
index 070bdeeba795..0e3ea017a239 100644
--- a/extensions/source/update/check/download.cxx
+++ b/extensions/source/update/check/download.cxx
@@ -270,7 +270,7 @@ bool curl_run(const rtl::OUString& rURL, OutData& out, const rtl::OString& aProx
curl_easy_setopt(pCURL, CURLOPT_WRITEDATA, &out);
curl_easy_setopt(pCURL, CURLOPT_WRITEFUNCTION, &write_function);
- // progress handler - Condition::check unfortunatly is not defined const
+ // progress handler - Condition::check unfortunately is not defined const
curl_easy_setopt(pCURL, CURLOPT_NOPROGRESS, 0);
curl_easy_setopt(pCURL, CURLOPT_PROGRESSFUNCTION, &progress_callback);
curl_easy_setopt(pCURL, CURLOPT_PROGRESSDATA, &out);
diff --git a/extensions/source/update/check/updatecheck.cxx b/extensions/source/update/check/updatecheck.cxx
index 642d7940291f..f2d00b2fad01 100644
--- a/extensions/source/update/check/updatecheck.cxx
+++ b/extensions/source/update/check/updatecheck.cxx
@@ -820,7 +820,7 @@ UpdateCheck::initialize(const uno::Sequence< beans::NamedValue >& rValues,
if( nDownloadSize > 0 )
{
- if ( nDownloadSize <= nFileSize ) // we have already downloaded everthing
+ if ( nDownloadSize <= nFileSize ) // we have already downloaded everything
{
bContinueDownload = false;
bDownloadAvailable = true;
diff --git a/extensions/source/update/check/updatecheckconfig.hxx b/extensions/source/update/check/updatecheckconfig.hxx
index 926efbf9cee8..27262b2cb0cc 100755
--- a/extensions/source/update/check/updatecheckconfig.hxx
+++ b/extensions/source/update/check/updatecheckconfig.hxx
@@ -32,7 +32,7 @@
#include "updatecheckconfiglistener.hxx"
#include "updateinfo.hxx"
-/* Interface to acess configuration data read-only */
+/* Interface to access configuration data read-only */
struct IByNameAccess
{
virtual ::com::sun::star::uno::Any getValue(const sal_Char * pName) = 0;
@@ -217,7 +217,7 @@ T getValue( const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::Name
{
for( sal_Int32 n=0; n < rNamedValues.getLength(); n++ )
{
- // Unfortunatly gcc-3.3 does not like Any.get<T>();
+ // Unfortunately gcc-3.3 does not like Any.get<T>();
if( rNamedValues[n].Name.equalsAscii( pszName ) )
{
T value = T();
diff --git a/extensions/source/update/ui/updatecheckui.cxx b/extensions/source/update/ui/updatecheckui.cxx
index cb93496f3d7e..7fc0cb686d3a 100644
--- a/extensions/source/update/ui/updatecheckui.cxx
+++ b/extensions/source/update/ui/updatecheckui.cxx
@@ -772,7 +772,7 @@ IMPL_LINK( UpdateCheckUI, WindowEventHdl, VclWindowEvent*, pEvent )
Point aWinPos = aIconRect.BottomCenter();
mpBubbleWin->SetTipPosPixel( aWinPos );
if ( mpBubbleWin->IsVisible() )
- mpBubbleWin->Show(); // This will recalc the screen positon of the bubble
+ mpBubbleWin->Show(); // This will recalc the screen position of the bubble
}
}
diff --git a/extensions/test/ole/OleConverterVar1/convTest.cxx b/extensions/test/ole/OleConverterVar1/convTest.cxx
index 90d952213fc5..6e2dd2388be1 100644
--- a/extensions/test/ole/OleConverterVar1/convTest.cxx
+++ b/extensions/test/ole/OleConverterVar1/convTest.cxx
@@ -156,7 +156,7 @@ HRESULT doTest()
varParam1.vt= VT_I1 | VT_BYREF;
varParam1.plVal= &value;
- // Testing the caching of DISPIDs and the process of aquiring member information
+ // Testing the caching of DISPIDs and the process of acquiring member information
// on demand in IDispatch::Invoke
// Step through the corresponding IDispatch implementation of the ole bridge
hr= oletest.Invoke1(static_cast<LPCOLESTR>(L"testinout_methodByte"), &varParam1, &varRet);
diff --git a/extensions/test/ole/StarBasic_OleClient/oleclient.bas b/extensions/test/ole/StarBasic_OleClient/oleclient.bas
index b2783e549c65..41fe415fedbd 100644
--- a/extensions/test/ole/StarBasic_OleClient/oleclient.bas
+++ b/extensions/test/ole/StarBasic_OleClient/oleclient.bas
@@ -498,7 +498,7 @@ If outSCode.Value <> scode_paramNotFound.Value Or inLong2 <> outLong2 _
Exit Function
End If
-'mixed positional and named args with ommitted args as out -args
+'mixed positional and named args with omitted args as out -args
inLong = 1
inLong2 = 2
inLong3 = 3
diff --git a/external/mingwheaders/mingw_atl_headers.patch b/external/mingwheaders/mingw_atl_headers.patch
index bbcbb84fd233..97bb78b4cec4 100644
--- a/external/mingwheaders/mingw_atl_headers.patch
+++ b/external/mingwheaders/mingw_atl_headers.patch
@@ -1634,9 +1634,9 @@
return hRes;
}
--__declspec(selectany) LPCTSTR CRegParser::rgszNeverDelete[] = //Component Catagories
+-__declspec(selectany) LPCTSTR CRegParser::rgszNeverDelete[] = //Component Categories
+#ifdef _INIT_ATL_COMMON_VARS
-+LPCTSTR CRegParser::rgszNeverDelete[] = //Component Catagories
++LPCTSTR CRegParser::rgszNeverDelete[] = //Component Categories
{
_T("CLSID"), _T("TYPELIB")
};
diff --git a/external_deps.lst b/external_deps.lst
index 9931b577088b..1f6b6c4e3950 100644
--- a/external_deps.lst
+++ b/external_deps.lst
@@ -41,6 +41,11 @@ if ( true )
URL1 = http://ucpp.googlecode.com/files/ucpp-1.3.2.tar.gz
URL2 = $(OOO_EXTRAS)$(MD5)-$(name)
+if (ENABLE_UNIT_TESTS == YES)
+ MD5 = 2d6ec8ccdf5c46b05ba54a9fd1d130d7
+ name = gtest-1.7.0.zip
+ URL1 = http://googletest.googlecode.com/files/gtest-1.7.0.zip
+
if ( true )
MD5 = 067201ea8b126597670b5eff72e1f66c
name = mythes-1.2.0.tar.gz
@@ -109,15 +114,14 @@ if (GUI!=UNX || SYSTEM_ZLIB!=YES)
if (SOLAR_JAVA==TRUE && ENABLE_MEDIAWIKI==YES)
MD5 = 2c9b0f83ed5890af02c0df1c1776f39b
name = commons-httpclient-3.1-src.tar.gz
- URL1 = http://archive.apache.org/dist/httpcomponents/commons-httpclient/source/commons-httpclient-3.1-src.tar.gz
+ URL1 = http://archive.apache.org/dist/httpcomponents/commons-httpclient/source/$(name)
URL2 = $(OOO_EXTRAS)$(MD5)-$(name)
if (SOLAR_JAVA==TRUE && ENABLE_MEDIAWIKI==YES)
- MD5 = 2e482c7567908d334785ce7d69ddfff7
- name = commons-codec-1.6-src.tar.gz
- URL1 = http://archive.apache.org/dist/commons/codec/source/commons-codec-1.6-src.tar.gz
- URL2 = http://apache.spinellicreations.com//commons/codec/source/commons-codec-1.6-src.tar.gz
- URL3 = $(OOO_EXTRAS)$(MD5)-$(name)
+ MD5 = db87f7004cefc9d17f7ac841f86122bd
+ name = commons-codec-1.9-src.tar.gz
+ URL1 = http://archive.apache.org/dist/commons/codec/source/$(name)
+ URL2 = $(OOO_EXTRAS)$(MD5)-$(name)
if ( true )
MD5 = 2f6ecca935948f7db92d925d88d0d078
@@ -132,10 +136,9 @@ if ( true )
URL2 = $(OOO_EXTRAS)$(SHA1)-$(name)
if (SOLAR_JAVA==TRUE && (ENABLE_MEDIAWIKI==YES || ENABLE_REPORTBUILDER==YES))
- MD5 = 3c219630e4302863a9a83d0efde889db
- name = commons-logging-1.1.1-src.tar.gz
- # This seems to be the original host, but the MD5 sum does not match.
- # URL1 = http://archive.apache.org/dist/commons/logging/source/commons-logging-1.1.1-src.tar.gz
+ MD5 = e8e197d628436490886d17cffa108fe3
+ name = commons-logging-1.1.3-src.tar.gz
+ URL1 = http://archive.apache.org/dist/commons/logging/source/$(name)
URL2 = $(OOO_EXTRAS)$(MD5)-$(name)
if (SYSTEM_JPEG != YES)
@@ -145,9 +148,9 @@ if (SYSTEM_JPEG != YES)
URL2 = $(OOO_EXTRAS)$(MD5)-$(name)
if (SOLAR_JAVA==TRUE && ENABLE_MEDIAWIKI==YES)
- MD5 = 625ff5f2f968dd908bca43c9469d6e6b
- name = commons-lang-2.4-src.tar.gz
- URL1 = http://archive.apache.org/dist/commons/lang/source/commons-lang-2.4-src.tar.gz
+ MD5 = 4c8c505cc3cba4c467c479e3e0f09ba4
+ name = commons-lang3-3.3-src.tar.gz
+ URL1 = http://archive.apache.org/dist/commons/lang/source/$(name)
URL2 = $(OOO_EXTRAS)$(MD5)-$(name)
if (SYSTEM_OPENSSL!=YES && DISABLE_OPENSSL!=TRUE)
@@ -183,7 +186,7 @@ if (SYSTEM_LIBXSLT != YES)
if (SOLAR_JAVA == TRUE)
MD5 = 63574e3ada44f473892a61a2da433a59
name = apache-tomcat-5.5.36-src.tar.gz
- # URL1 = http://www.alliedquotes.com/mirrors/apache/tomcat/tomcat-5/v5.5.36/src/apache-tomcat-5.5.36-src.tar.gz
+ URL1 = http://archive.apache.org/dist/tomcat/tomcat-5/v5.5.36/src/apache-tomcat-5.5.36-src.tar.gz
URL2 = $(OOO_EXTRAS)$(MD5)-$(name)
if (SOLAR_JAVA == TRUE)
@@ -199,9 +202,9 @@ if (ENABLE_MEDIAWIKI == YES)
URL2 = $(OOO_EXTRAS)$(MD5)-$(name)
if (SYSTEM_PYTHON != YES)
- MD5 = 6334b666b7ff2038c761d7b27ba699c1
- name = Python-2.7.5.tar.bz2
- URL1 = http://www.python.org/ftp/python/2.7.5/Python-2.7.5.tar.bz2
+ MD5 = 1d8728eb0dfcac72a0fd99c17ec7f386
+ name = Python-2.7.6.tgz
+ URL1 = http://www.python.org/ftp/python/2.7.6/Python-2.7.6.tgz
URL2 = $(OOO_EXTRAS)$(MD5)-$(name)
if (SYSTEM_BOOST != YES)
@@ -242,9 +245,9 @@ if ( true )
URL2 = $(OOO_EXTRAS)$(MD5)-$(name)
if (RAT_JAR_HOME==BUILD)
- MD5 = e4244e69eb3644e71c254aea5952a918
- name = apache-rat-incubating-0.8-bin.tar.bz2
- URL1 = http://archive.apache.org/dist/incubator/rat/binaries/$(name)
+ MD5 = 0f926196d42577addec7e1aa5b510605
+ name = apache-rat-0.10-bin.tar.bz2
+ URL1 = http://archive.apache.org/dist/creadur/apache-rat-0.10/$(name)
URL2 = $(OOO_EXTRAS)$(MD5)-$(name)
###############################################################################
@@ -252,9 +255,10 @@ if (RAT_JAR_HOME==BUILD)
#
if (ENABLE_CATEGORY_B==YES && SYSTEM_COINMP!=YES)
- MD5 = 2b5f1ca58d6ef30f18f1415b65bed81c
- name = CoinMP-1.6.0.tgz
- URL1 = $(OOO_EXTRAS)$(MD5)-$(name)
+ MD5 = 1cce53bf4b40ae29790d2c5c9f8b1129
+ name = CoinMP-1.7.6.tgz
+ # URL1 = $(OOO_EXTRAS)$(MD5)-$(name)
+ URL1 = http://www.coin-or.org/download/source/CoinMP/$(name)
if (WITH_CATB_FONTS == YES)
MD5 = 35efabc239af896dfb79be7ebdd6e6b9
diff --git a/extras/source/misc_config/wizard/web/layouts/frame_bottom/tocframe.html.xsl b/extras/source/misc_config/wizard/web/layouts/frame_bottom/tocframe.html.xsl
index 02ad1fe6ef60..370500a96e00 100644
--- a/extras/source/misc_config/wizard/web/layouts/frame_bottom/tocframe.html.xsl
+++ b/extras/source/misc_config/wizard/web/layouts/frame_bottom/tocframe.html.xsl
@@ -25,7 +25,7 @@ This template is a skeleton for single level TOC pages
Do not overwrite this ! copy it and complete the missing
code.
-I use the @ character whereever there is a missing code, so
+I use the @ character wherever there is a missing code, so
you can use a simple find to navigate and find the
places...
diff --git a/extras/source/misc_config/wizard/web/layouts/frame_left/tocframe.html.xsl b/extras/source/misc_config/wizard/web/layouts/frame_left/tocframe.html.xsl
index 3c14f65177cc..321021fc42bc 100644
--- a/extras/source/misc_config/wizard/web/layouts/frame_left/tocframe.html.xsl
+++ b/extras/source/misc_config/wizard/web/layouts/frame_left/tocframe.html.xsl
@@ -25,7 +25,7 @@ This template is a skeleton for single level TOC pages
Do not overwrite this ! copy it and complete the missing
code.
-I use the @ character whereever there is a missing code, so
+I use the @ character wherever there is a missing code, so
you can use a simple find to navigate and find the
places...
diff --git a/extras/source/misc_config/wizard/web/layouts/frame_right/tocframe.html.xsl b/extras/source/misc_config/wizard/web/layouts/frame_right/tocframe.html.xsl
index 8a8338ed6c1e..99fad174bbaa 100644
--- a/extras/source/misc_config/wizard/web/layouts/frame_right/tocframe.html.xsl
+++ b/extras/source/misc_config/wizard/web/layouts/frame_right/tocframe.html.xsl
@@ -25,7 +25,7 @@ This template is a skeleton for single level TOC pages
Do not overwrite this ! copy it and complete the missing
code.
-I use the @ character whereever there is a missing code, so
+I use the @ character wherever there is a missing code, so
you can use a simple find to navigate and find the
places...
diff --git a/extras/source/misc_config/wizard/web/layouts/frame_top/tocframe.html.xsl b/extras/source/misc_config/wizard/web/layouts/frame_top/tocframe.html.xsl
index f356436cd087..5f502a7b24ec 100644
--- a/extras/source/misc_config/wizard/web/layouts/frame_top/tocframe.html.xsl
+++ b/extras/source/misc_config/wizard/web/layouts/frame_top/tocframe.html.xsl
@@ -25,7 +25,7 @@ This template is a skeleton for single level TOC pages
Do not overwrite this ! copy it and complete the missing
code.
-I use the @ character whereever there is a missing code, so
+I use the @ character wherever there is a missing code, so
you can use a simple find to navigate and find the
places...
diff --git a/extras/source/misc_config/wizard/web/layouts/layout.xsl b/extras/source/misc_config/wizard/web/layouts/layout.xsl
index 183cb9dad6c9..f12acb327ea3 100644
--- a/extras/source/misc_config/wizard/web/layouts/layout.xsl
+++ b/extras/source/misc_config/wizard/web/layouts/layout.xsl
@@ -27,7 +27,7 @@ This template is a skeleton for single level TOC pages
Do not overwrite this ! copy it and complete the missing
code.
-I use the @ character whereever there is a missing code, so
+I use the @ character wherever there is a missing code, so
you can use a simple find to navigate and find the
places...
@@ -65,7 +65,7 @@ places...
================================== -->
- <!-- this tempaltes gives the
+ <!-- this templates gives the
relative href of the document. To use
with the <a href="..."> attribute-->
diff --git a/extras/source/misc_config/wizard/web/layouts/layoutF.xsl b/extras/source/misc_config/wizard/web/layouts/layoutF.xsl
index afc55221fb10..7ee961eed627 100644
--- a/extras/source/misc_config/wizard/web/layouts/layoutF.xsl
+++ b/extras/source/misc_config/wizard/web/layouts/layoutF.xsl
@@ -30,7 +30,7 @@ the frameset.
Do not overwrite this ! copy it and complete the missing
code.
-I use the @ character whereever there is a missing code, so
+I use the @ character wherever there is a missing code, so
you can use a simple find to navigate and find the
places...
diff --git a/extras/source/misc_config/wizard/web/layouts/layoutX.xsl b/extras/source/misc_config/wizard/web/layouts/layoutX.xsl
index f22c93486d6d..32d40e26ba33 100644
--- a/extras/source/misc_config/wizard/web/layouts/layoutX.xsl
+++ b/extras/source/misc_config/wizard/web/layouts/layoutX.xsl
@@ -67,7 +67,7 @@
-->
<!-- use this to group documents, it
- is for example usefull when generating tables -->
+ is for example useful when generating tables -->
<xsl:variable name="group" select="3"/>
@@ -160,7 +160,7 @@
================================== -->
- <!-- this tempaltes gives the
+ <!-- this templates gives the
relative href of the document. To use
with the <a href="..."> attribute-->
diff --git a/extras/source/misc_config/wizard/web/layouts/simple/index.html.xsl b/extras/source/misc_config/wizard/web/layouts/simple/index.html.xsl
index ef391c3c00dc..8fed8131de9b 100644
--- a/extras/source/misc_config/wizard/web/layouts/simple/index.html.xsl
+++ b/extras/source/misc_config/wizard/web/layouts/simple/index.html.xsl
@@ -25,7 +25,7 @@ This template is a skeleton for single level TOC pages
Do not overwrite this ! copy it and complete the missing
code.
-I use the @ character whereever there is a missing code, so
+I use the @ character wherever there is a missing code, so
you can use a simple find to navigate and find the
places...
diff --git a/extras/source/misc_config/wizard/web/layouts/source.xml.xsl b/extras/source/misc_config/wizard/web/layouts/source.xml.xsl
index 090ddfee105a..89c2436477e8 100644
--- a/extras/source/misc_config/wizard/web/layouts/source.xml.xsl
+++ b/extras/source/misc_config/wizard/web/layouts/source.xml.xsl
@@ -26,7 +26,7 @@
This templates creates a source.xml file
which is identicall to the source xml tree
used for the transformation.
- This is may be usefull for deveopement/debuging
+ This is may be useful for deveopement/debuging
of layouts.
==================================== -->
diff --git a/extras/source/misc_config/wizard/web/layouts/table_2/index.html.xsl b/extras/source/misc_config/wizard/web/layouts/table_2/index.html.xsl
index ba73bf8fc26a..14d3b1c7bafb 100644
--- a/extras/source/misc_config/wizard/web/layouts/table_2/index.html.xsl
+++ b/extras/source/misc_config/wizard/web/layouts/table_2/index.html.xsl
@@ -24,7 +24,7 @@
This template is a skeleton for single level TOC pages
Do not overwrite this ! copy it and complete the missing
code.
-I use the @ character whereever there is a missing code, so
+I use the @ character wherever there is a missing code, so
you can use a simple find to navigate and find the
places...
====================================================== -->
@@ -104,7 +104,7 @@ places...
<!-- - - -->
<!-- use this to group documents, it
- is for example usefull when generating tables -->
+ is for example useful when generating tables -->
diff --git a/extras/source/misc_config/wizard/web/layouts/table_3/index.html.xsl b/extras/source/misc_config/wizard/web/layouts/table_3/index.html.xsl
index 4883a0ac84ba..d414639f744a 100644
--- a/extras/source/misc_config/wizard/web/layouts/table_3/index.html.xsl
+++ b/extras/source/misc_config/wizard/web/layouts/table_3/index.html.xsl
@@ -24,7 +24,7 @@
This template is a skeleton for single level TOC pages
Do not overwrite this ! copy it and complete the missing
code.
-I use the @ character whereever there is a missing code, so
+I use the @ character wherever there is a missing code, so
you can use a simple find to navigate and find the
places...
====================================================== -->
@@ -104,7 +104,7 @@ places...
<!-- - - -->
<!-- use this to group documents, it
- is for example usefull when generating tables -->
+ is for example useful when generating tables -->
diff --git a/extras/source/misc_config/wizard/web/layouts/zigzag/index.html.xsl b/extras/source/misc_config/wizard/web/layouts/zigzag/index.html.xsl
index 58da407c43e2..a9f87986402b 100644
--- a/extras/source/misc_config/wizard/web/layouts/zigzag/index.html.xsl
+++ b/extras/source/misc_config/wizard/web/layouts/zigzag/index.html.xsl
@@ -25,7 +25,7 @@ This template is a skeleton for single level TOC pages
Do not overwrite this ! copy it and complete the missing
code.
-I use the @ character whereever there is a missing code, so
+I use the @ character wherever there is a missing code, so
you can use a simple find to navigate and find the
places...
diff --git a/fileaccess/source/FileAccess.cxx b/fileaccess/source/FileAccess.cxx
index eb2d3ac73904..b6f1be53b07b 100644
--- a/fileaccess/source/FileAccess.cxx
+++ b/fileaccess/source/FileAccess.cxx
@@ -278,7 +278,7 @@ void OFileAccess::transferImpl( const rtl::OUString& rSource,
// #i29648#
//
#if 0
- // Note: A hierachical UCB content implements interface XChild, which
+ // Note: A hierarchical UCB content implements interface XChild, which
// has a method getParent(). Unfortunately this does not always help
// here, because it is not guaranteed that a content object for a
// non-existing resource can be created. Thus, it will happen that an
@@ -380,7 +380,7 @@ void OFileAccess::transferImpl( const rtl::OUString& rSource,
}
catch ( ::com::sun::star::ucb::CommandFailedException const & )
{
- // Interaction Handler already handled the error that has occured...
+ // Interaction Handler already handled the error that has occurred...
}
}
@@ -408,7 +408,7 @@ void OFileAccess::kill( const rtl::OUString& FileURL )
}
catch ( ::com::sun::star::ucb::CommandFailedException const & )
{
- // Interaction Handler already handled the error that has occured...
+ // Interaction Handler already handled the error that has occurred...
}
}
@@ -510,7 +510,7 @@ void OFileAccess::createFolder( const rtl::OUString& NewFolderURL )
}
catch ( ::com::sun::star::ucb::CommandFailedException const & )
{
- // Interaction Handler already handled the error that has occured...
+ // Interaction Handler already handled the error that has occurred...
continue;
}
}
@@ -579,7 +579,7 @@ Sequence< rtl::OUString > OFileAccess::getFolderContents( const rtl::OUString& F
}
catch ( ::com::sun::star::ucb::CommandFailedException const & )
{
- // Interaction Handler already handled the error that has occured...
+ // Interaction Handler already handled the error that has occurred...
}
if ( xResultSet.is() )
@@ -650,7 +650,7 @@ Reference< XInputStream > OFileAccess::openFileRead( const rtl::OUString& FileUR
}
catch ( ::com::sun::star::ucb::CommandFailedException const & )
{
- // Interaction Handler already handled the error that has occured...
+ // Interaction Handler already handled the error that has occurred...
}
return xRet;
@@ -789,7 +789,7 @@ bool OFileAccess::createNewFile( const rtl::OUString & rParentURL,
catch ( CommandFailedException const & )
{
// Interaction Handler already handled the
- // error that has occured...
+ // error that has occurred...
continue;
}
}
@@ -814,7 +814,7 @@ void SAL_CALL OFileAccess::writeFile( const rtl::OUString& FileURL,
}
catch ( CommandFailedException const & )
{
- // Interaction Handler already handled the error that has occured...
+ // Interaction Handler already handled the error that has occurred...
}
}
catch ( ContentCreationException const & e )
diff --git a/filter/inc/filter/msfilter/escherex.hxx b/filter/inc/filter/msfilter/escherex.hxx
index 1e571f368118..bd92bcada1be 100644
--- a/filter/inc/filter/msfilter/escherex.hxx
+++ b/filter/inc/filter/msfilter/escherex.hxx
@@ -308,7 +308,7 @@
enum ESCHER_BlibType
{ // GEL provided types...
- ERROR = 0, // An error occured during loading
+ ERROR = 0, // An error occurred during loading
UNKNOWN, // An unknown blip type
EMF, // Windows Enhanced Metafile
WMF, // Windows Metafile
diff --git a/filter/inc/filter/msfilter/mscodec.hxx b/filter/inc/filter/msfilter/mscodec.hxx
index fbcf10f424cf..e95391fa11c6 100644
--- a/filter/inc/filter/msfilter/mscodec.hxx
+++ b/filter/inc/filter/msfilter/mscodec.hxx
@@ -279,7 +279,7 @@ public:
Size of the destination buffer.
@return
- true = Encoding was successful (no error occured).
+ true = Encoding was successful (no error occurred).
*/
bool Encode(
const void* pData, sal_Size nDatLen,
@@ -305,7 +305,7 @@ public:
Size of the destination buffer.
@return
- true = Decoding was successful (no error occured).
+ true = Decoding was successful (no error occurred).
*/
bool Decode(
const void* pData, sal_Size nDatLen,
diff --git a/filter/inc/filter/msfilter/msocximex.hxx b/filter/inc/filter/msfilter/msocximex.hxx
index c45acc185c1d..1a71c92bb0fa 100644
--- a/filter/inc/filter/msfilter/msocximex.hxx
+++ b/filter/inc/filter/msfilter/msocximex.hxx
@@ -133,13 +133,13 @@ public:
com::sun::star::drawing::XShape >* /*pShape*/,
sal_Bool /*bFloatingCtrl*/ ) {return sal_False;}
- /*begin: Backwards compatability with office 95 import, modify later*/
+ /*begin: Backwards compatibility with office 95 import, modify later*/
const com::sun::star::uno::Reference<
com::sun::star::lang::XMultiServiceFactory > & GetServiceFactory();
sal_uInt16 GetEditNum() { return ++nEdit; }
sal_uInt16 GetCheckboxNum() { return ++nCheckbox; }
- /*end: Backwards compatability*/
+ /*end: Backwards compatibility*/
protected:
const com::sun::star::uno::Reference< com::sun::star::drawing::XShapes > &
GetShapes();
diff --git a/filter/inc/filter/msfilter/svxmsbas.hxx b/filter/inc/filter/msfilter/svxmsbas.hxx
index cf0756ce9f0a..8725c1a89dd1 100644
--- a/filter/inc/filter/msfilter/svxmsbas.hxx
+++ b/filter/inc/filter/msfilter/svxmsbas.hxx
@@ -71,7 +71,7 @@ public:
sal_uLong SaveOrDelMSVBAStorage( sal_Bool bSaveInto, const String& rStorageName );
// check if the MS-VBA-Storage exist in the RootStorage of the DocShell.
- // If it exist, then return the WarningId for loosing the information.
+ // If it exists, then return the WarningId for losing the information.
static sal_uLong GetSaveWarningOfMSVBAStorage( SfxObjectShell &rDocS );
static String GetMSBasicStorageName();
diff --git a/filter/qa/complex/filter/detection/typeDetection/Helper.java b/filter/qa/complex/filter/detection/typeDetection/Helper.java
index 63aac0e5086d..fcd12b154beb 100644
--- a/filter/qa/complex/filter/detection/typeDetection/Helper.java
+++ b/filter/qa/complex/filter/detection/typeDetection/Helper.java
@@ -139,13 +139,13 @@ public class Helper {
// example: data = "firstData;secondData;;forthData"
// => three tokens => missing one data because the imagine
- // "thirdData" was not recieved by data.nextToken()
+ // "thirdData" was not received by data.nextToken()
// Therefore here comes a special handling for empty datas
boolean nextIsData = false;
int dataCount = 0;
while (data.hasMoreTokens()) {
Object myToken = data.nextToken();
- // if the "thirdData" will be recieved, myToken=";" but
+ // if the "thirdData" will be received, myToken=";" but
// vData must add an empty String
if (myToken.equals(";")){
if (nextIsData ) {
@@ -371,7 +371,7 @@ public class Helper {
/**
* Filles the Hashtable m_hFileURLs with all file names and their URL
- * and the Hashtable m_hFilesTypes with all file names and thier file
+ * and the Hashtable m_hFilesTypes with all file names and their file
* typ name. This informations are extracted from "files.csv"
* This is for faster acccess to get fileURL and fileType of fileAlias
*/
diff --git a/filter/qa/complex/filter/misc/FinalizedMandatoryTest.java b/filter/qa/complex/filter/misc/FinalizedMandatoryTest.java
index 7776c07232ac..7cf77f10cc7a 100644
--- a/filter/qa/complex/filter/misc/FinalizedMandatoryTest.java
+++ b/filter/qa/complex/filter/misc/FinalizedMandatoryTest.java
@@ -187,7 +187,7 @@ public class FinalizedMandatoryTest
// testobject must new created for every test.
// We change in a loop the container and try to flush this changes.
// If we get an expected exception this container is corrupt. It's
- // similar to a document which could not be saved beacuse of invalid
+ // similar to a document which could not be saved because of invalid
// contend. While you don't remove the invalid conted you will never
// be able to save the document. Same here.
try
diff --git a/filter/source/config/cache/basecontainer.cxx b/filter/source/config/cache/basecontainer.cxx
index 9c8206c8ecf8..dfae80338f27 100644
--- a/filter/source/config/cache/basecontainer.cxx
+++ b/filter/source/config/cache/basecontainer.cxx
@@ -61,7 +61,7 @@ BaseContainer::BaseContainer()
m_rCache->load(FilterCache::E_CONTAINS_STANDARD);
// GLOBAL SAFE (!) -> -----------------------
- // TODO use rtl pattern to create it realy threadsafe!
+ // TODO use rtl pattern to create it really threadsafe!
::osl::ResettableMutexGuard aGlobalLock(::osl::Mutex::getGlobalMutex());
if (!m_pPerformanceOptimizer)
m_pPerformanceOptimizer = new ::salhelper::SingletonRef< FilterCache >();
@@ -107,7 +107,7 @@ void BaseContainer::impl_loadOnDemand()
::osl::ResettableMutexGuard aLock(m_aLock);
// A generic container needs all items of a set of our cache!
- // Of course it can block for a while, till the cache is realy filled.
+ // Of course it can block for a while, till the cache is really filled.
// Note: dont load all sets supported by the cache here!
FilterCache::EFillState eRequiredState = FilterCache::E_CONTAINS_NOTHING;
@@ -151,7 +151,7 @@ void BaseContainer::impl_initFlushMode()
m_pFlushCache = m_rCache->clone();
if (!m_pFlushCache)
throw css::uno::RuntimeException(
- ::rtl::OUString::createFromAscii("Cant create write copy of internal used cache on demand."),
+ ::rtl::OUString::createFromAscii("Can't create write copy of internal used cache on demand."),
dynamic_cast< css::container::XNameAccess* >(this));
// <- SAFE
}
@@ -274,7 +274,7 @@ void SAL_CALL BaseContainer::removeByName(const ::rtl::OUString& sItem)
impl_initFlushMode();
FilterCache* pCache = impl_getWorkingCache();
- pCache->removeItem(m_eType, sItem); // throw exceptions automaticly
+ pCache->removeItem(m_eType, sItem); // throw exceptions automatically
aLock.clear();
// <- SAFE ----------------------------------
@@ -333,7 +333,7 @@ css::uno::Any SAL_CALL BaseContainer::getByName(const ::rtl::OUString& sItem)
{
if (!sItem.getLength())
throw css::container::NoSuchElementException(
- ::rtl::OUString::createFromAscii("An empty item cant be part of this cache!"),
+ ::rtl::OUString::createFromAscii("An empty item can't be part of this cache!"),
css::uno::Reference< css::uno::XInterface >(static_cast< css::container::XNameAccess* >(this), css::uno::UNO_QUERY));
css::uno::Any aValue;
@@ -431,7 +431,7 @@ sal_Bool SAL_CALL BaseContainer::hasByName(const ::rtl::OUString& sItem)
css::uno::Type SAL_CALL BaseContainer::getElementType()
throw (css::uno::RuntimeException)
{
- // no lock neccessary - because the type of our items
+ // no lock necessary - because the type of our items
// is fix! no internal call or member needed ...
return ::getCppuType(static_cast< css::uno::Sequence< css::beans::PropertyValue >* >(NULL));
}
@@ -471,7 +471,7 @@ sal_Bool SAL_CALL BaseContainer::hasElements()
css::uno::Reference< css::container::XEnumeration > SAL_CALL BaseContainer::createSubSetEnumerationByQuery(const ::rtl::OUString& /* sQuery */ )
throw (css::uno::RuntimeException)
{
- OSL_ENSURE(sal_False, "not pure virtual ... but not realy implemented .-)");
+ OSL_ENSURE(sal_False, "not pure virtual ... but not really implemented .-)");
::comphelper::OEnumerationByName* pEnum = new ::comphelper::OEnumerationByName(this, css::uno::Sequence< ::rtl::OUString >());
return css::uno::Reference< css::container::XEnumeration >(static_cast< css::container::XEnumeration* >(pEnum), css::uno::UNO_QUERY);
@@ -505,7 +505,7 @@ css::uno::Reference< css::container::XEnumeration > SAL_CALL BaseContainer::crea
catch(const css::uno::Exception&)
{
// invalid cache, internal failure, wrong conversion ...!?
- // doesnt matter
+ // doesn't matter
lKeys.clear();
}
@@ -538,7 +538,7 @@ void SAL_CALL BaseContainer::flush()
if (!m_pFlushCache)
throw css::lang::WrappedTargetRuntimeException(
- ::rtl::OUString::createFromAscii("Cant guarantee cache consistency. Special flush container does not exists!"),
+ ::rtl::OUString::createFromAscii("Can't guarantee cache consistency. Special flush container does not exists!"),
dynamic_cast< css::container::XNameAccess* >(this),
css::uno::Any());
@@ -612,7 +612,7 @@ void SAL_CALL BaseContainer::flush()
void SAL_CALL BaseContainer::addFlushListener(const css::uno::Reference< css::util::XFlushListener >& xListener)
throw (css::uno::RuntimeException)
{
- // no locks neccessary
+ // no locks necessary
// used helper lives if we live and is threadsafe by itself ...
m_lListener.addInterface(::getCppuType(static_cast< css::uno::Reference< css::util::XFlushListener >* >(NULL)),
xListener );
@@ -624,7 +624,7 @@ void SAL_CALL BaseContainer::addFlushListener(const css::uno::Reference< css::ut
void SAL_CALL BaseContainer::removeFlushListener(const css::uno::Reference< css::util::XFlushListener >& xListener)
throw (css::uno::RuntimeException)
{
- // no locks neccessary
+ // no locks necessary
// used helper lives if we live and is threadsafe by itself ...
m_lListener.removeInterface(::getCppuType(static_cast< css::uno::Reference< css::util::XFlushListener >* >(NULL)),
xListener );
diff --git a/filter/source/config/cache/basecontainer.hxx b/filter/source/config/cache/basecontainer.hxx
index b79cfbb51ffc..eac70ce3459f 100644
--- a/filter/source/config/cache/basecontainer.hxx
+++ b/filter/source/config/cache/basecontainer.hxx
@@ -60,7 +60,7 @@ namespace filter{
should be available etc.
@attention The base class BaseLock must be the first of declared ones.
- Otherwhise we cant be shure, that our own mutex member (which is
+ Otherwise we can't be sure, that our own mutex member (which is
present by this base class!) was full initialized inside our own
ctor as first!
*/
@@ -97,7 +97,7 @@ class BaseContainer : public BaseLock
/** @short local filter cache, which is used to collect changes on the
filter configuration first and flush it later.
- @descr Normaly this member isnt used nor initialized. Thats true,
+ @descr Normaly this member isn't used nor initialized. Thats true,
if this container is used for reading only. The first write access
(e.g. by calling insertByName()) creates a copy of the current
global cache m_rCache to initialize the m_pFlushCache member.
@@ -107,7 +107,7 @@ class BaseContainer : public BaseLock
m_pFlushCache and m_rCache must not be synchronized manually here.
m_rCache listen on the global configuration, where m_pFlushCache
- write its data. m_rCache update itself automaticly.
+ write its data. m_rCache update itself automatically.
*/
FilterCache* m_pFlushCache;
@@ -188,7 +188,7 @@ class BaseContainer : public BaseLock
//---------------------------------------
/** @short check if the underlying configuration data was already loaded
- and do it if neccessary automaticly.
+ and do it if necessary automatically.
*/
void impl_loadOnDemand();
@@ -222,7 +222,7 @@ class BaseContainer : public BaseLock
FilterCache* p = impl_getWorkingCache();
p->doSomething();
aLock.clear();
- // after this point p cant b e guaranteed any longer!
+ // after this point p can't b e guaranteed any longer!
*/
FilterCache* impl_getWorkingCache() const;
@@ -291,7 +291,7 @@ class BaseContainer : public BaseLock
//---------------------------------------
// XContainerQuery
- // must be implemented realy by derived class ...
+ // must be implemented really by derived class ...
// We implement return of an empty result here only!
// But we show an assertion :-)
virtual css::uno::Reference< css::container::XEnumeration > SAL_CALL createSubSetEnumerationByQuery(const ::rtl::OUString& sQuery)
diff --git a/filter/source/config/cache/cacheitem.hxx b/filter/source/config/cache/cacheitem.hxx
index 05457a588cc7..9f6a2397cd20 100644
--- a/filter/source/config/cache/cacheitem.hxx
+++ b/filter/source/config/cache/cacheitem.hxx
@@ -158,7 +158,7 @@ class CacheItem : public ::comphelper::SequenceAsHashMap
@param sActLocale
must specify the current office locale.
- Its needed to adress the UIName property inside
+ Its needed to address the UIName property inside
the list of possible ones.
*/
void validateUINames(const ::rtl::OUString& sActLocale);
@@ -170,7 +170,7 @@ class CacheItem : public ::comphelper::SequenceAsHashMap
@descr Normaly the converter routines of the base class
SequenceAsHashMap do this job already.
- But it doesnt provide a "pack" mechanism to
+ But it doesn't provide a "pack" mechanism to
ignore properties with empty (means "void") values.
@return css::uno::Sequence< css::beans::PropertyValue >
@@ -199,9 +199,9 @@ typedef ::std::hash_map< ::rtl::OUString ,
to an extension. Organization as an hash makes it
faster then searching inside vectors.
- On the other side e.g. URLPattern cant be realy adressed
+ On the other side e.g. URLPattern can't be really addressed
by a hash value ... because the use wildcards. But
- there we need key-value pairs too, which cant be provided
+ there we need key-value pairs too, which can't be provided
by a pur vector!
*/
typedef ::std::hash_map< ::rtl::OUString ,
@@ -217,7 +217,7 @@ typedef ::std::hash_map< ::rtl::OUString ,
@descr Every type in this list is combined with an information,
which property matched to the given URL. The user of this
structure can decide then, if a deep detection should be
- supressed e.g. if an URLPattern was used.
+ suppressed e.g. if an URLPattern was used.
*/
struct FlatDetectionInfo
{
diff --git a/filter/source/config/cache/configflush.cxx b/filter/source/config/cache/configflush.cxx
index 68ec1f7191c1..8667ca420652 100644
--- a/filter/source/config/cache/configflush.cxx
+++ b/filter/source/config/cache/configflush.cxx
@@ -122,7 +122,7 @@ void SAL_CALL ConfigFlush::refresh()
void SAL_CALL ConfigFlush::addRefreshListener(const css::uno::Reference< css::util::XRefreshListener >& xListener)
throw(css::uno::RuntimeException)
{
- // no locks neccessary
+ // no locks necessary
// used helper lives if we live and is threadsafe by itself ...
m_lListener.addInterface(::getCppuType(static_cast< css::uno::Reference< css::util::XRefreshListener >* >(NULL)),
xListener);
@@ -132,7 +132,7 @@ void SAL_CALL ConfigFlush::addRefreshListener(const css::uno::Reference< css::ut
void SAL_CALL ConfigFlush::removeRefreshListener(const css::uno::Reference< css::util::XRefreshListener >& xListener)
throw(css::uno::RuntimeException)
{
- // no locks neccessary
+ // no locks necessary
// used helper lives if we live and is threadsafe by itself ...
m_lListener.removeInterface(::getCppuType(static_cast< css::uno::Reference< css::util::XRefreshListener >* >(NULL)),
xListener);
diff --git a/filter/source/config/cache/constant.hxx b/filter/source/config/cache/constant.hxx
index c0b6f9c9a7c1..48358e90fc4b 100644
--- a/filter/source/config/cache/constant.hxx
+++ b/filter/source/config/cache/constant.hxx
@@ -96,7 +96,7 @@ extern rtl::OUString pFilterStrings[];
#define CFGSET_FRAMELOADERS _FILTER_CONFIG_FROM_ASCII_("FrameLoaders" )
#define CFGSET_CONTENTHANDLERS _FILTER_CONFIG_FROM_ASCII_("ContentHandlers")
-/** @short used to adress some configuration keys directly.
+/** @short used to address some configuration keys directly.
@descr Such direct keys should be used with function
FilterCache::impl_getDirectCFGValue() only!
@@ -181,7 +181,7 @@ extern rtl::OUString pFilterStrings[];
#define SERVICE_URLTRANSFORMER _FILTER_CONFIG_FROM_ASCII_("com.sun.star.util.URLTransformer" )
#define SERVICE_FILTERCONFIGREFRESH _FILTER_CONFIG_FROM_ASCII_("com.sun.star.document.FilterConfigRefresh" )
-/** @short some configuration pathes.
+/** @short some configuration paths.
*/
#define CFGPACKAGE_TD_TYPES _FILTER_CONFIG_FROM_ASCII_("/org.openoffice.TypeDetection.Types" )
#define CFGPACKAGE_TD_FILTERS _FILTER_CONFIG_FROM_ASCII_("/org.openoffice.TypeDetection.Filter")
diff --git a/filter/source/config/cache/contenthandlerfactory.cxx b/filter/source/config/cache/contenthandlerfactory.cxx
index c52d65cfdf3d..7edcb85e9694 100644
--- a/filter/source/config/cache/contenthandlerfactory.cxx
+++ b/filter/source/config/cache/contenthandlerfactory.cxx
@@ -92,7 +92,7 @@ css::uno::Reference< css::uno::XInterface > SAL_CALL ContentHandlerFactory::crea
#ifdef _FILTER_CONFIG_MIGRATION_Q_
/* -> TODO - HACK
- check if the given handler name realy exist ...
+ check if the given handler name really exists ...
Because our old implementation worked with an internal
type name instead of a handler name. For a small migration time
we must simulate this old feature :-( */
diff --git a/filter/source/config/cache/filtercache.cxx b/filter/source/config/cache/filtercache.cxx
index 7c3952c01152..8387941c4b41 100644
--- a/filter/source/config/cache/filtercache.cxx
+++ b/filter/source/config/cache/filtercache.cxx
@@ -186,7 +186,7 @@ void FilterCache::takeOver(const FilterCache& rClone)
m_eFillState = rClone.m_eFillState;
// renew all dependencies and optimizations
- // Because we cant be shure, that changed filters on one clone
+ // Because we can't be sure, that changed filters on one clone
// and changed types of another clone work together.
// But here we can check against the lates changes ...
impl_validateAndOptimize();
@@ -222,7 +222,7 @@ void FilterCache::load(EFillState eRequired,
)
)
{
- OSL_ENSURE(sal_False, "Who disturb our \"fill cache on demand\" feature and force loading of ALL data during office startup? Please optimize your code, so a full filled filter cache is not realy needed here!");
+ OSL_ENSURE(sal_False, "Who disturbs our \"fill cache on demand\" feature and force loading of ALL data during office startup? Please optimize your code, so a full filled filter cache is not really needed here!");
}
#endif
@@ -429,14 +429,14 @@ CacheItem FilterCache::getItem( EItemType eType,
{
// ... or load it on demand from the
// underlying configuration layer.
- // Note: NoSuchElementException is thrown automaticly here if
+ // Note: NoSuchElementException is thrown automatically here if
// item could not be loaded!
pIt = impl_loadItemOnDemand(eType, sItem);
}
/* Workaround for #137955#
Draw types and filters are installed ... but draw was disabled during setup.
- We must supress accessing these filters. Otherwise the office can crash.
+ We must suppress accessing these filters. Otherwise the office can crash.
Solution for the next major release: do not install those filters !
*/
if (eType == E_FILTER)
@@ -456,7 +456,7 @@ CacheItem FilterCache::getItem( EItemType eType,
::rtl::OUStringBuffer sMsg(256);
sMsg.appendAscii("The requested filter '" );
sMsg.append (sItem );
- sMsg.appendAscii("' exists ... but it shouldnt; because the corresponding OOo module was not installed.");
+ sMsg.appendAscii("' exists ... but it shouldn't; because the corresponding OOo module was not installed.");
throw css::container::NoSuchElementException(sMsg.makeStringAndClear(), css::uno::Reference< css::uno::XInterface >());
}
}
@@ -505,13 +505,13 @@ void FilterCache::setItem( EItemType eType ,
CacheItemList& rList = impl_getItemList(eType);
// name must be part of the property set too ... otherwhise our
- // container query cant work correctly
+ // container query can't work correctly
CacheItem aItem = aValue;
aItem[PROPNAME_NAME] <<= sItem;
aItem.validateUINames(m_sActLocale);
// remove implicit properties as e.g. FINALIZED or MANDATORY
- // They cant be saved here and must be readed on demand later, if they are needed.
+ // They can't be saved here and must be readed on demand later, if they are needed.
removeStatePropsFromItem(aItem);
rList[sItem] = aItem;
@@ -564,8 +564,8 @@ void FilterCache::addStatePropsToItem( EItemType eType,
{
/* TODO
Hack -->
- The default frame loader cant be located inside te normal set of frame loaders.
- Its an atomic property inside the misc cfg package. So we cant retrieve the information
+ The default frame loader can't be located inside te normal set of frame loaders.
+ Its an atomic property inside the misc cfg package. So we can't retrieve the information
about FINALIZED and MANDATORY very easy ... :-(
=> set it to readonly/required everytimes :-)
*/
@@ -615,8 +615,8 @@ void FilterCache::addStatePropsToItem( EItemType eType,
May by the following reason exists:
- The item does not exists inside the new configuration package org.openoffice.TypeDetection - but
we got it from the old package org.openoffice.Office/TypeDetection. We dont migrate such items
- automaticly to the new format. Because it will disturb e.g. the deinstallation of an external filter
- package. Because such external filter can remove the old file - but not the automaticly created new one ...
+ automatically to the new format. Because it will disturb e.g. the deinstallation of an external filter
+ package. Because such external filter can remove the old file - but not the automatically created new one ...
=> mark item as FINALIZED / MANDATORY, we dont support writing to the old format
*/
@@ -715,7 +715,7 @@ void FilterCache::impl_flushByList(const css::uno::Reference< css::container::XN
// special case. no exception - but not a valid item => set must be finalized or mandatory!
// Reject flush operation by throwing an exception. At least one item couldnt be flushed.
if (!xItem.is())
- throw css::uno::Exception(::rtl::OUString::createFromAscii("Cant add item. Set is finalized or mandatory!"),
+ throw css::uno::Exception(::rtl::OUString::createFromAscii("Can't add item. Set is finalized or mandatory!"),
css::uno::Reference< css::uno::XInterface >() );
CacheItemList::const_iterator pItem = rCache.find(sItem);
@@ -732,7 +732,7 @@ void FilterCache::impl_flushByList(const css::uno::Reference< css::container::XN
// special case. no exception - but not a valid item => it must be finalized or mandatory!
// Reject flush operation by throwing an exception. At least one item couldnt be flushed.
if (!xItem.is())
- throw css::uno::Exception(::rtl::OUString::createFromAscii("Cant change item. Its finalized or mandatory!"),
+ throw css::uno::Exception(::rtl::OUString::createFromAscii("Can't change item. Its finalized or mandatory!"),
css::uno::Reference< css::uno::XInterface >() );
CacheItemList::const_iterator pItem = rCache.find(sItem);
@@ -767,7 +767,7 @@ void FilterCache::detectFlatForURL(const css::util::URL& aURL ,
// i) Step over all well known URL pattern
// and add registered types to the return list too
// Do it as first one - because: if a type match by a
- // pattern a following deep detection can be supressed!
+ // pattern a following deep detection can be suppressed!
// Further we can stop after first match ...
for (CacheItemRegistration::const_iterator pPattReg = m_lURLPattern2Types.begin();
pPattReg != m_lURLPattern2Types.end() ;
@@ -899,7 +899,7 @@ css::uno::Reference< css::uno::XInterface > FilterCache::impl_openConfig(EConfig
}
break;
- default : throw css::uno::Exception(::rtl::OUString::createFromAscii("These configuration node isnt supported here for open!"), 0);
+ default : throw css::uno::Exception(::rtl::OUString::createFromAscii("These configuration node isn't supported here for open!"), 0);
}
{
@@ -1074,7 +1074,7 @@ void FilterCache::impl_validateAndOptimize()
}
// Create a log for all detected problems, which
- // occure in the next feew lines.
+ // occur in the next feew lines.
// If there are some real errors throw a RuntimException!
// If there are some warnings only, show an assertion.
sal_Int32 nErrors = 0;
@@ -1095,7 +1095,7 @@ void FilterCache::impl_validateAndOptimize()
impl_resolveItem4TypeRegistration(&m_lDetectServices, sDetectService, sType);
// get its registration for file Extensions AND(!) URLPattern ...
- // It doesnt matter if these items exists or if our
+ // It doesn't matter if these items exists or if our
// used index access create some default ones ...
// only in case there is no filled set of Extensions AND
// no filled set of URLPattern -> we must try to remove this invalid item
@@ -1134,8 +1134,8 @@ void FilterCache::impl_validateAndOptimize()
// its set list of extensions/url pattern. If its a "normal" type
// set it at the end of this optimized list. But if its
// a "Preferred" one - set it to the front of this list.
- // Of course multiple "Preferred" registrations can occure
- // (they shouldnt - but they can!) ... Ignore it. The last
+ // Of course multiple "Preferred" registrations can occur
+ // (they shouldn't - but they can!) ... Ignore it. The last
// preferred type is useable in the same manner then every
// other type!
sal_Bool bPreferred = sal_False;
@@ -1144,7 +1144,7 @@ void FilterCache::impl_validateAndOptimize()
const ::rtl::OUString* pExtensions = lExtensions.getConstArray();
for (sal_Int32 e=0; e<ce; ++e)
{
- // Note: We must be shure that adress the right hash entry
+ // Note: We must be sure that address the right hash entry
// does not depend from any upper/lower case problems ...
::rtl::OUString sNormalizedExtension = pExtensions[e].toAsciiLowerCase();
@@ -1176,7 +1176,7 @@ void FilterCache::impl_validateAndOptimize()
// Dont check cross references between types and filters, if
// not all filters read from disk!
// OK - this cache can read single filters on demand too ...
- // but then the fill state of this cache shouldnt be set to E_CONTAINS_FILTERS!
+ // but then the fill state of this cache shouldn't be set to E_CONTAINS_FILTERS!
if (!bAllFiltersShouldExist)
continue;
@@ -1204,7 +1204,7 @@ void FilterCache::impl_validateAndOptimize()
sLog.appendAscii("Warning\t:\t" );
sLog.appendAscii("The type \"" );
sLog.append (sType );
- sLog.appendAscii("\" isnt used by any filter, loader or content handler.\n");
+ sLog.appendAscii("\" isn't used by any filter, loader or content handler.\n");
++nWarnings;
}
}
@@ -1391,7 +1391,7 @@ FilterCache::EItemFlushState FilterCache::impl_specifyFlushOperation(const css::
EItemFlushState eState( E_ITEM_UNCHANGED );
- // !? ... such situation can occure, if an item was added and(!) removed before it was flushed :-)
+ // !? ... such situation can occur, if an item was added and(!) removed before it was flushed :-)
if (!bExistsInConfigLayer && !bExistsInMemory)
eState = E_ITEM_UNCHANGED;
else
@@ -1416,7 +1416,7 @@ void FilterCache::impl_resolveItem4TypeRegistration( CacheItemList* pList
throw(css::uno::Exception)
{
CacheItem& rItem = (*pList)[sItem];
- // In case its a new created entry (automaticly done by the hash_map index operator!)
+ // In case its a new created entry (automatically done by the hash_map index operator!)
// we must be shure, that this entry has its own name as property available.
// Its needed later at our container interface!
rItem[PROPNAME_NAME] <<= sItem;
@@ -1449,7 +1449,7 @@ void FilterCache::impl_load(EFillState eRequiredState)
)
{
// Attention! If config couldnt be opened successfully
- // and exception os thrown automaticly and must be forwarded
+ // and exception os thrown automatically and must be forwarded
// to our calli ...
css::uno::Reference< css::container::XNameAccess > xTypes(impl_openConfig(E_PROVIDER_TYPES), css::uno::UNO_QUERY);
{
@@ -1466,7 +1466,7 @@ void FilterCache::impl_load(EFillState eRequiredState)
)
{
// Attention! If config couldnt be opened successfully
- // and exception os thrown automaticly and must be forwarded
+ // and exception os thrown automatically and must be forwarded
// to our calli ...
css::uno::Reference< css::container::XNameAccess > xTypes(impl_openConfig(E_PROVIDER_TYPES), css::uno::UNO_QUERY);
{
@@ -1483,7 +1483,7 @@ void FilterCache::impl_load(EFillState eRequiredState)
)
{
// Attention! If config couldnt be opened successfully
- // and exception os thrown automaticly and must be forwarded
+ // and exception os thrown automatically and must be forwarded
// to our calli ...
css::uno::Reference< css::container::XNameAccess > xFilters(impl_openConfig(E_PROVIDER_FILTERS), css::uno::UNO_QUERY);
{
@@ -1500,7 +1500,7 @@ void FilterCache::impl_load(EFillState eRequiredState)
)
{
// Attention! If config couldnt be opened successfully
- // and exception os thrown automaticly and must be forwarded
+ // and exception os thrown automatically and must be forwarded
// to our calli ...
css::uno::Reference< css::container::XNameAccess > xLoaders(impl_openConfig(E_PROVIDER_OTHERS), css::uno::UNO_QUERY);
{
@@ -1517,7 +1517,7 @@ void FilterCache::impl_load(EFillState eRequiredState)
)
{
// Attention! If config couldnt be opened successfully
- // and exception os thrown automaticly and must be forwarded
+ // and exception os thrown automatically and must be forwarded
// to our calli ...
css::uno::Reference< css::container::XNameAccess > xHandlers(impl_openConfig(E_PROVIDER_OTHERS), css::uno::UNO_QUERY);
{
@@ -1788,7 +1788,7 @@ CacheItem FilterCache::impl_loadItem(const css::uno::Reference< css::container::
throw(css::uno::Exception)
{
// try to get an API object, which points directly to the
- // requested item. If it fail an exception should occure and
+ // requested item. If it fail an exception should occur and
// break this operation. Of course returned API object must be
// checked too.
css::uno::Reference< css::container::XNameAccess > xItem;
@@ -1883,7 +1883,7 @@ CacheItem FilterCache::impl_loadItem(const css::uno::Reference< css::container::
aItem[PROPNAME_USERDATA ] = xItem->getByName(PROPNAME_USERDATA );
aItem[PROPNAME_TEMPLATENAME] = xItem->getByName(PROPNAME_TEMPLATENAME);
//TODO remove it if moving of filter uinames to type uinames
-// will be finished realy
+// will be finished really
#ifdef AS_ENABLE_FILTER_UINAMES
impl_readPatchUINames(xItem, aItem);
#endif // AS_ENABLE_FILTER_UINAMES
@@ -1951,7 +1951,7 @@ CacheItemList::iterator FilterCache::impl_loadItemOnDemand( EItemType
case E_DETECTSERVICE :
{
- OSL_ENSURE(sal_False, "Cant load detect services on demand. Who use this unsupported feature?");
+ OSL_ENSURE(sal_False, "Can't load detect services on demand. Who use this unsupported feature?");
}
break;
}
@@ -2068,7 +2068,7 @@ void FilterCache::impl_saveItem(const css::uno::Reference< css::container::XName
}
//TODO remove it if moving of filter uinames to type uinames
-// will be finished realy
+// will be finished really
#ifdef AS_ENABLE_FILTER_UINAMES
css::uno::Reference< css::container::XNameReplace > xUIName;
xItem->getByName(PROPNAME_UINAME) >>= xUIName;
@@ -2092,7 +2092,7 @@ void FilterCache::impl_saveItem(const css::uno::Reference< css::container::XName
/*-----------------------------------------------
20.10.2003 09:45
- static! => no locks neccessary
+ static! => no locks necessary
-----------------------------------------------*/
css::uno::Sequence< ::rtl::OUString > FilterCache::impl_convertFlagField2FlagNames(sal_Int32 nFlags)
{
@@ -2127,7 +2127,7 @@ css::uno::Sequence< ::rtl::OUString > FilterCache::impl_convertFlagField2FlagNam
/*-----------------------------------------------
27.06.2003 09:26
- static! => no locks neccessary
+ static! => no locks necessary
-----------------------------------------------*/
sal_Int32 FilterCache::impl_convertFlagNames2FlagField(const css::uno::Sequence< ::rtl::OUString >& lNames)
{
@@ -2338,7 +2338,7 @@ void FilterCache::impl_interpretDataVal4Filter(const ::rtl::OUString& sValue,
/*-----------------------------------------------
12.02.2004 08:30
TODO work on a cache copy first, which can be flushed afterwards
- That would be usefully to gurantee a consistent cache.
+ That would be usefully to guarantee a consistent cache.
-----------------------------------------------*/
void FilterCache::impl_readOldFormat()
throw(css::uno::Exception)
@@ -2347,7 +2347,7 @@ void FilterCache::impl_readOldFormat()
static ::rtl::OUString FILTER_SET = ::rtl::OUString::createFromAscii("Filters");
// Attention: Opening/Reading of this old configuration format has to be handled gracefully.
- // Its optional and shouldnt disturb our normal work!
+ // Its optional and shouldn't disturb our normal work!
// E.g. we must check, if the package exists ...
css::uno::Reference< css::container::XNameAccess > xCfg;
@@ -2398,14 +2398,14 @@ CacheItem FilterCache::impl_readOldItem(const css::uno::Reference< css::containe
xSet->getByName(sItem) >>= xItem;
if (!xItem.is())
throw css::uno::Exception(
- ::rtl::OUString::createFromAscii("Cant read old item."),
+ ::rtl::OUString::createFromAscii("Can't read old item."),
css::uno::Reference< css::uno::XInterface >());
CacheItem aItem;
aItem[PROPNAME_NAME] <<= sItem;
// Installed flag ...
- // Isnt used any longer!
+ // Isn't used any longer!
// UIName
impl_readPatchUINames(xItem, aItem);
@@ -2421,7 +2421,7 @@ CacheItem FilterCache::impl_readOldItem(const css::uno::Reference< css::containe
)
{
throw css::uno::Exception(
- ::rtl::OUString::createFromAscii("Cant read old item property DATA."),
+ ::rtl::OUString::createFromAscii("Can't read old item property DATA."),
css::uno::Reference< css::uno::XInterface >());
}
diff --git a/filter/source/config/cache/filtercache.hxx b/filter/source/config/cache/filtercache.hxx
index c955e1ab6541..5aa1ec915c4b 100644
--- a/filter/source/config/cache/filtercache.hxx
+++ b/filter/source/config/cache/filtercache.hxx
@@ -153,7 +153,7 @@ class FilterCache : public BaseLock
*/
enum EItemFlushState
{
- /// indicates an unchanged item (can occure e.g. if an item was added and(!) removed before it was flushed ...
+ /// indicates an unchanged item (can occur e.g. if an item was added and(!) removed before it was flushed ...
E_ITEM_UNCHANGED = 0,
/// indicates an item, which exists inside config layer but not inside our own cache
E_ITEM_REMOVED = 1,
@@ -281,7 +281,7 @@ class FilterCache : public BaseLock
/** @short standard ctor
@descr Its not allowed to do anything here ...
- especialy is forbidden to start operations,
+ especially is forbidden to start operations,
which needs a FilterCache instance too!
Why? Because thie FilterCache instance will be
used as a singleton! And if during this ctor any
@@ -309,12 +309,12 @@ class FilterCache : public BaseLock
After its changed data was flushed to the configuration it can be
removed.
- The original container will get these new data automaticly
+ The original container will get these new data automatically
because it listen for changes on the internal used configuration layer.
- If the new data are needed immediatly inside the original container,
+ If the new data are needed immediately inside the original container,
the method takeOver() can be used to copy all changes back.
The may be following notifications of the configuration will be superflous then.
- But they cant be stopped ...
+ But they can't be stopped ...
All internal structures will be copied here. But the internal used
configuration (update) access wont be copied. The cloned instance contains
@@ -348,7 +348,7 @@ class FilterCache : public BaseLock
if this "load-on-demand" thread does not finished its work before.
This method "load(xxx)" synchronize such load-on-demand requests.
- Of course it would be possible to supress this special load thread
+ Of course it would be possible to suppress this special load thread
in general and start it manualy inside this load() request.
The outside code decide then, if and when this cache will be filled
with all available informations ...
@@ -361,7 +361,7 @@ class FilterCache : public BaseLock
"load-on-demand-thread", which tries to optimize our startup performance
and start this load() only in case the office startup was already finished!
- @throw An exception if the cache could not be filled realy
+ @throw An exception if the cache could not be filled really
or seems to be invalid afterwards. But there is no reaction
at all if this method does nothing inside, because the cache
is already full filled!
@@ -482,7 +482,7 @@ class FilterCache : public BaseLock
@attention This method exists to supports some UNO container interfaces
only. (e.g. XNameAccess.hasByName()). But inside multithreaded
environments there is no guarantee, that this item still exists, if
- its realy requested e.g. by calling getItem()!
+ its really requested e.g. by calling getItem()!
Be aware of some NoSuchElementExistExceptions ...
@param eType
@@ -505,7 +505,7 @@ class FilterCache : public BaseLock
/** @short return an item, which match the specified type and name.
@descr Because this cache can be used inside multithreaded environments
- the caller must be aware of some exceptions - especialy a "NoSuchElementExcepotion".
+ the caller must be aware of some exceptions - especially a "NoSuchElementExcepotion".
May another thread already removed the required item before ...
@param eType
@@ -561,7 +561,7 @@ class FilterCache : public BaseLock
cache item reference.
@descr Such properties can e.g. finalized or mandatory.
- They are not persistent and not realy part of e.g. a
+ They are not persistent and not really part of e.g. a
filter not. But they are attributes of a configuration
entry and can influence our container interface.
@@ -584,12 +584,12 @@ class FilterCache : public BaseLock
attributes there.
@throw [css::uno::Exception]
- if an internal error occured.
+ if an internal error occurred.
Note: If the item is missing inside the underlying configuration
no exception will be thrown. In such case the item is marked as
- finalized/mandatory automaticly
+ finalized/mandatory automatically
Reason: May be the item cames from the old configuration package and
- was not migrated to the new one. So we cant provide write access
+ was not migrated to the new one. So we can't provide write access
to such items ...
*/
virtual void addStatePropsToItem( EItemType eType,
@@ -628,7 +628,7 @@ class FilterCache : public BaseLock
@param aURL
URL of the content, which type should be detected.
- Its already parsed and splitted into its differnt parts,
+ Its already parsed and splitted into its different parts,
like e.g.: main, jump marks etcpp.
@param rFlatTypes
@@ -689,7 +689,7 @@ class FilterCache : public BaseLock
see EConfigProvider for further informations ...
@attention If a configuration access was opened successfully
- all neccessary listener connections will be established
+ all necessary listener connections will be established
too. So this cache will be informed about outside updates.
*/
css::uno::Reference< css::uno::XInterface > impl_openConfig(EConfigProvider eProvide)
@@ -737,7 +737,7 @@ class FilterCache : public BaseLock
@return [css::uno::Any]
the value of the requested key.
- Can be empty if an internal error occured or if the requested
+ Can be empty if an internal error occurred or if the requested
key does not exists!
*/
css::uno::Any impl_getDirectCFGValue(const ::rtl::OUString& sDirectKey);
@@ -762,8 +762,8 @@ class FilterCache : public BaseLock
/** @short validate the whole cache and create
structures for optimized items access.
- @descr Wrong cache items will be removed automaticly.
- Wrong dependencies will be corrected automaticly.
+ @descr Wrong cache items will be removed automatically.
+ Wrong dependencies will be corrected automatically.
If something could not be repaired - an exception
is thrown.
Further some optmized structures will be created.
@@ -783,9 +783,9 @@ class FilterCache : public BaseLock
/** @short register the specified item for the given type.
@descr Because detect services, frame loader or content handler
- are not listed inside the xml configuration as seperated
+ are not listed inside the xml configuration as separated
items (they are properties of any type entry!), this method update
- the internal lists of such items. Thats neccessary to have
+ the internal lists of such items. Thats necessary to have
it accessible for our container interfaces of detect, frame loader
and content handler services.
@@ -839,7 +839,7 @@ class FilterCache : public BaseLock
points to the cache member, which should be filled or updated.
@throw [css::uno::Exception]
- if an unrecoverable error occure inside this operation.
+ if an unrecoverable error occur inside this operation.
*/
void impl_loadSet(const css::uno::Reference< css::container::XNameAccess >& xConfig,
EItemType eType ,
@@ -861,15 +861,15 @@ class FilterCache : public BaseLock
specify, which container item type must be readed.
@param sItem
- means the internal name, which can be used to adress the item
+ means the internal name, which can be used to address the item
properties relativ to the given configuration set.
@param eOption
regulate, which properties of the requested item should be read.
- See defintion of EReadOption for further informations.
+ See definition of EReadOption for further informations.
@throw [css::uno::Exception]
- if an unrecoverable error occure inside this operation.
+ if an unrecoverable error occur inside this operation.
*/
CacheItem impl_loadItem(const css::uno::Reference< css::container::XNameAccess >& xSet ,
EItemType eType ,
@@ -884,7 +884,7 @@ class FilterCache : public BaseLock
@descr The outside code has to be shure, that the item does not already exists
inside this cachse. Otherwise it will be loaded twice. This method
- doesnt check such constellations!
+ doesn't check such constellations!
@param eType
specify the type of config item, which must be interpreted.
@@ -895,14 +895,14 @@ class FilterCache : public BaseLock
the set node name of the requested item.
@return An iterator, which points directly to the new cached item.
- Is a valid iterator if no exception occured here!
+ Is a valid iterator if no exception occurred here!
But to improve robustness - it should be checked :-)
@throw [css::container::NoSuchElementException]
if the item does not exists inside the configuration layer too!
@throw [css::uno::Exception]
- if an unrecoverable error occure inside this operation.
+ if an unrecoverable error occurs inside this operation.
*/
CacheItemList::iterator impl_loadItemOnDemand( EItemType eType,
const ::rtl::OUString& sItem)
@@ -935,7 +935,7 @@ class FilterCache : public BaseLock
//---------------------------------------
- /** @short specify, which save operation is neccessary for the specified item.
+ /** @short specify, which save operation is necessary for the specified item.
@desrc If an item of this cache will be added/removed or modified it will
be changed inside memory only first. But we save its name inside a special
diff --git a/filter/source/config/cache/filterfactory.cxx b/filter/source/config/cache/filterfactory.cxx
index a5f84bd3a183..14eb34ab470c 100644
--- a/filter/source/config/cache/filterfactory.cxx
+++ b/filter/source/config/cache/filterfactory.cxx
@@ -135,7 +135,7 @@ css::uno::Reference< css::uno::XInterface > SAL_CALL FilterFactory::createInstan
#ifdef _FILTER_CONFIG_MIGRATION_Q_
/* -> TODO - HACK
- check if the given filter name realy exist ...
+ check if the given filter name really exists ...
Because our old implementation worked with an internal
type name instead of a filter name. For a small migration time
we must simulate this old feature :-( */
@@ -208,9 +208,9 @@ css::uno::Sequence< ::rtl::OUString > SAL_CALL FilterFactory::getAvailableServic
throw(css::uno::RuntimeException)
{
/* Attention: Instead of getElementNames() this method have to return only filter names,
- which can be created as UNO Services realy. Thats why we search for filters,
+ which can be created as UNO Services really. Thats why we search for filters,
which dont have a valid value for the property "FilterService".
- Of course we cant check for corrupted service names here. We can check
+ Of course we can't check for corrupted service names here. We can check
for empty strings only ...
*/
CacheItem lIProps;
@@ -415,9 +415,9 @@ OUStringList FilterFactory::impl_queryMatchByDocumentService(const QueryTokenize
const CacheItem aFilter = pCache->getItem(FilterCache::E_FILTER, sName);
CacheItem::const_iterator pProp ;
- // "matchByDocumentService=" => any filter will be adressed here
- // "matchByDocumentService=all" => any filter will be adressed here
- // "matchByDocumentService=com.sun.star..." => only filter matching this document service will be adressed
+ // "matchByDocumentService=" => any filter will be addressed here
+ // "matchByDocumentService=all" => any filter will be addressed here
+ // "matchByDocumentService=com.sun.star..." => only filter matching this document service will be addressed
::rtl::OUString sCheckValue = aFilter.getUnpackedValueOrDefault(PROPNAME_DOCUMENTSERVICE, ::rtl::OUString());
if (
( sDocumentService.getLength() ) &&
@@ -430,8 +430,8 @@ OUStringList FilterFactory::impl_queryMatchByDocumentService(const QueryTokenize
// "iflags=" => not allowed
// "iflags=-1" => not allowed
- // "iflags=0" => not usefull
- // "iflags=283648" => only filter, which has set these flag field will be adressed
+ // "iflags=0" => not useful
+ // "iflags=283648" => only filter, which has set these flag field will be addressed
sal_Int32 nCheckValue = aFilter.getUnpackedValueOrDefault(PROPNAME_FLAGS, (sal_Int32)0);
if (
(nIFlags > 0 ) &&
@@ -443,8 +443,8 @@ OUStringList FilterFactory::impl_queryMatchByDocumentService(const QueryTokenize
// "eflags=" => not allowed
// "eflags=-1" => not allowed
- // "eflags=0" => not usefull
- // "eflags=283648" => only filter, which has not set these flag field will be adressed
+ // "eflags=0" => not useful
+ // "eflags=283648" => only filter, which has not set these flag field will be addressed
if (
(nEFlags > 0 ) &&
((nCheckValue & nEFlags) == nEFlags)
@@ -674,7 +674,7 @@ OUStringList FilterFactory::impl_readSortedFilterListFromConfig(const ::rtl::OUS
xUISortConfig->getByName(sModule) >>= xModule;
if (xModule.is()) // only to be on the safe side of life if the exception was not thrown .-)
{
- // Note: convertion of the returned Any to OUStringList throws
+ // Note: conversion of the returned Any to OUStringList throws
// an IllegalArgumentException if the type does not match ...
// but it resets the OUStringList to a length of 0 if the Any is empty!
OUStringList lSortedFilters(xModule->getByName(PROPNAME_SORTEDFILTERLIST));
diff --git a/filter/source/config/cache/frameloaderfactory.cxx b/filter/source/config/cache/frameloaderfactory.cxx
index 731c8d3ef8fe..23cff43ba4f0 100644
--- a/filter/source/config/cache/frameloaderfactory.cxx
+++ b/filter/source/config/cache/frameloaderfactory.cxx
@@ -89,7 +89,7 @@ css::uno::Reference< css::uno::XInterface > SAL_CALL FrameLoaderFactory::createI
#ifdef _FILTER_CONFIG_MIGRATION_Q_
/* -> TODO - HACK
- check if the given loader name realy exist ...
+ check if the given loader name really exists ...
Because our old implementation worked with an internal
type name instead of a loader name. For a small migration time
we must simulate this old feature :-( */
diff --git a/filter/source/config/cache/lateinitlistener.cxx b/filter/source/config/cache/lateinitlistener.cxx
index 3fdd10a2e86a..f7f90ff7957a 100644
--- a/filter/source/config/cache/lateinitlistener.cxx
+++ b/filter/source/config/cache/lateinitlistener.cxx
@@ -119,7 +119,7 @@ void SAL_CALL LateInitListener::disposing(const css::lang::EventObject& /* aEven
// Normaly it should never be called. Because we cancel our listener connection
// if we got the event about finished open of the first office document.
// But if this method was reached, it indicates an office, which was started
- // (might as remote script container for an external API client) but not realy used.
+ // (might as remote script container for an external API client) but not really used.
// SAFE ->
::osl::ResettableMutexGuard aLock(m_aLock);
diff --git a/filter/source/config/cache/querytokenizer.hxx b/filter/source/config/cache/querytokenizer.hxx
index 628778c50609..0d1d3c173bd8 100644
--- a/filter/source/config/cache/querytokenizer.hxx
+++ b/filter/source/config/cache/querytokenizer.hxx
@@ -53,7 +53,7 @@ namespace filter{
</ul>
uses this schema.
- @attention This class is not threadsafe implemented. Because its not neccessary.
+ @attention This class is not threadsafe implemented. Because its not necessary.
But you have to make shure, that ist not used as such :-)
*/
class QueryTokenizer : public ::std::hash_map< ::rtl::OUString ,
@@ -83,7 +83,7 @@ class QueryTokenizer : public ::std::hash_map< ::rtl::OUString
a new query.
@descr The given query is immidiatly analyzed
- and seperated into its token, which can
+ and separated into its token, which can
be access by some specialized method later.
@param sQuery
diff --git a/filter/source/config/cache/typedetection.cxx b/filter/source/config/cache/typedetection.cxx
index c13d608051bc..70644910c2a9 100644
--- a/filter/source/config/cache/typedetection.cxx
+++ b/filter/source/config/cache/typedetection.cxx
@@ -169,7 +169,7 @@ TypeDetection::~TypeDetection()
// verify every flat detected (or preselected!) type
// by calling its registered deep detection service.
// But break this loop if a type match to the given descriptor
- // by an URL pattern(!) or if deep detection isnt allowed from
+ // by an URL pattern(!) or if deep detection isn't allowed from
// outside (bAllowDeep=sal_False) or break the whole detection by
// throwing an exception if creation of the might needed input
// stream failed by e.g. an IO exception ...
@@ -179,7 +179,7 @@ TypeDetection::~TypeDetection()
//*******************************************
// if no flat detected (nor preselected!) type could be
- // verified and no error occured during creation of
+ // verified and no error occurred during creation of
// the might needed input stream, start detection
// which uses all registered deep detection services.
if (
@@ -415,9 +415,9 @@ sal_Bool TypeDetection::impl_getPreselectionForType(const ::rtl::OUString& sPreS
const css::util::URL& aParsedURL ,
FlatDetection& rFlatTypes )
{
- // Can be used to supress execution of some parts of this method
+ // Can be used to suppress execution of some parts of this method
// if its already clear that detected type is valid or not.
- // Its neccessary to use shared code at the end, which update
+ // Its necessary to use shared code at the end, which update
// all return parameters constistency!
sal_Bool bBreakDetection = sal_False;
@@ -456,7 +456,7 @@ sal_Bool TypeDetection::impl_getPreselectionForType(const ::rtl::OUString& sPreS
if (!bBreakDetection)
{
- // We cant check a preselected type for a given stream!
+ // We can't check a preselected type for a given stream!
// So we must believe, that it can work ...
if (aParsedURL.Complete.equalsAsciiL("private:stream", 14))
bBreakDetection = sal_True;
@@ -471,8 +471,8 @@ sal_Bool TypeDetection::impl_getPreselectionForType(const ::rtl::OUString& sPreS
INetURLObject::DECODE_WITH_CHARSET);
sExtension = sExtension.toAsciiLowerCase();
- // otherwhise we must know, if it matches to the given URL realy.
- // especialy if it matches by its extension or pattern registration.
+ // otherwise we must know, if it matches to the given URL really.
+ // especially if it matches by its extension or pattern registration.
OUStringList lExtensions(aType[PROPNAME_EXTENSIONS]);
OUStringList lURLPattern(aType[PROPNAME_URLPATTERN]);
@@ -549,9 +549,9 @@ sal_Bool TypeDetection::impl_getPreselectionForFilter(const ::rtl::OUString& sPr
const css::util::URL& aParsedURL ,
FlatDetection& rFlatTypes )
{
- // Can be used to supress execution of some parts of this method
+ // Can be used to suppress execution of some parts of this method
// if its already clear that detected filter is valid or not.
- // Its neccessary to use shared code at the end, which update
+ // Its necessary to use shared code at the end, which update
// all return parameters constistency!
sal_Bool bBreakDetection = sal_False;
@@ -701,9 +701,9 @@ void TypeDetection::impl_getPreselection(const css::util::URL& aP
And the user normaly preselects a filter or type. The preslected
document service cames from the dialog.
- Further it doesnt matter if the user preselected a filter or a document service.
+ Further it doesn't matter if the user preselected a filter or a document service.
A filter selection is always more explicit then a document service selection.
- So it must be pereferred. An order between type and filter selection cant be discussed .-)
+ So it must be pereferred. An order between type and filter selection can't be discussed .-)
*/
::rtl::OUString sSelectedType = rDescriptor.getUnpackedValueOrDefault(::comphelper::MediaDescriptor::PROP_TYPENAME(), ::rtl::OUString());
@@ -737,8 +737,8 @@ void TypeDetection::impl_getPreselection(const css::util::URL& aP
// solutions:
// a) no types => no detection
// b) deep detection not allowed => return first valid type of list (because its the preferred or the first valid one)
- // or(!) match by URLPattern => in such case a deep detection will be supressed!
- // c) type has no detect service => safe the first occured type without a detect service
+ // or(!) match by URLPattern => in such case a deep detection will be suppressed!
+ // c) type has no detect service => safe the first occurred type without a detect service
// as "last chance"(!). It will be used outside of this method
// if no further type could be detected.
// It must be the first one, because it can be a preferred type.
@@ -1005,7 +1005,7 @@ void TypeDetection::impl_seekStreamToZero(comphelper::MediaDescriptor& rDescript
// <- SAFE
// Attention! If e.g. an office module was not installed sometimes we find a
- // registered detect service, which is referred inside the configuration ... but not realy
+ // registered detect service, which is referred inside the configuration ... but not really
// installed. On the other side we use third party components here, which can make trouble anyway.
// So we should handle errors during creation of such services more gracefully .-)
xDetector = css::uno::Reference< css::document::XExtendedFilterDetection >(
@@ -1087,8 +1087,8 @@ void TypeDetection::impl_seekStreamToZero(comphelper::MediaDescriptor& rDescript
// Dont distrub the user for "non existing files - means empty URLs" or
// if we was forced to detect a stream.
// Reason behind: We must be shure to ask user for "unknown contents" only ...
- // and not for "missing files". Especialy if detection is done by a stream only
- // we cant check if the stream points to an "existing content"!
+ // and not for "missing files". Especially if detection is done by a stream only
+ // we can't check if the stream points to an "existing content"!
if (
(!sURL.getLength() ) || // "non existing file" ?
(!xStream.is() ) || // non existing file !
diff --git a/filter/source/config/cache/typedetection.hxx b/filter/source/config/cache/typedetection.hxx
index 398d9f8af788..9aa41434fcf3 100644
--- a/filter/source/config/cache/typedetection.hxx
+++ b/filter/source/config/cache/typedetection.hxx
@@ -101,11 +101,11 @@ class TypeDetection : public ::cppu::ImplInheritanceHelper1< BaseContainer
MediaDescriptor and validate this information.
@descr Only in case the preselected filter exists and its type registration
- seems to be usefully, it would be used realy as valid type detection
- result. This method doesnt make any deep detection here. It checks only
+ seems to be usefully, it would be used really as valid type detection
+ result. This method doesn't make any deep detection here. It checks only
if the preselection match to the URL by an URLPattern.
This information has to be added to the given rFlatTypes list too.
- The outside code can use it to supress a deep detection then in general.
+ The outside code can use it to suppress a deep detection then in general.
Because pattern are defined as non detectable at all!
@param pDescriptor
@@ -130,16 +130,16 @@ class TypeDetection : public ::cppu::ImplInheritanceHelper1< BaseContainer
@descr It steps over all flat detected types (given by the parameter lFlatTypes),
try it and search for most suitable one.
The specified MediaDescriptor will be patched, so it contain
- the right values everytime. Using of any deep detection service
+ the right values every time. Using of any deep detection service
can be enabled/disabled. And last but not least: If the results
- wont be realy clear (because a flat detected type has no deep
+ wont be really clear (because a flat detected type has no deep
detection service), a "sugested" type name will be returned as "rLastChance".
It can be used after e.g. all well known deep detection services
was used without getting any result. Then this "last-chance-type"
should be returned. Of course using of it can fail too ... but its a try :-)
As an optimization - this method collects the names of all used deep
- detection services. This information can be usefull inside the may be
+ detection services. This information can be useful inside the may be
afterwards called method "impl_detectTypeDeepOnly()"!
@param rDescriptor
@@ -183,7 +183,7 @@ class TypeDetection : public ::cppu::ImplInheritanceHelper1< BaseContainer
and check her results. The first positive result will be
used for return. Its more a "try and error" algorithm then
a real type detection and will be used if a flat detection
- cant work realy ... e.g. if the extension of an URL is
+ can't work really ... e.g. if the extension of an URL is
missing or wrong.
@param rDescriptor
@@ -207,7 +207,7 @@ class TypeDetection : public ::cppu::ImplInheritanceHelper1< BaseContainer
/** @short seek a might existing stream to position 0.
@descr This is an optinal action to be more robust
- in case any detect service doesnt make this seek ...
+ in case any detect service doesn't make this seek ...
Normaly it's part of any called detect service or filter ...
but sometimes it's not done there.
@@ -222,7 +222,7 @@ class TypeDetection : public ::cppu::ImplInheritanceHelper1< BaseContainer
detect service (threadsafe!).
@descr It creates the right uno service, prepare the
- needed MediaDescriptor, call ths right interfaces,
+ needed MediaDescriptor, call this right interfaces,
and return the results.
@attention The results (means type and corresponding filter)
@@ -258,7 +258,7 @@ class TypeDetection : public ::cppu::ImplInheritanceHelper1< BaseContainer
//---------------------------------------
/** @short check if an input stream is already part of the
- given MediaDesciptor and creates a new one if neccessary.
+ given MediaDesciptor and creates a new one if necessary.
@attention This method does further something special!
<ul>
@@ -286,7 +286,7 @@ class TypeDetection : public ::cppu::ImplInheritanceHelper1< BaseContainer
Note : Its content will be adapted to returned result of this method.
Means: The stream will be added to it.
- @throw Any suitable exception if stream should be opened but operation was not sucessfull.
+ @throw Any suitable exception if stream should be opened but operation was not successful.
Note: If an interactionHandler is part of the given descriptor too, it was already used.
Means: let the exception pass trough the top most interface method!
*/
@@ -379,7 +379,7 @@ class TypeDetection : public ::cppu::ImplInheritanceHelper1< BaseContainer
types too !
@note #i60158#
- sometimes our text ascii and our csv filter cant work together.
+ sometimes our text ascii and our csv filter can't work together.
Then we overwrite our detection hardly.
sType param is used as out parameter then too ... and
rDescriptor will be changed by selecting another filter.
diff --git a/filter/source/config/cache/versions.hxx b/filter/source/config/cache/versions.hxx
index b0ae3a56d625..53e13baf29aa 100644
--- a/filter/source/config/cache/versions.hxx
+++ b/filter/source/config/cache/versions.hxx
@@ -27,6 +27,6 @@
//_______________________________________________
//#define _FILTER_CONFIG_Q_ // final Q code base
-#define _FILTER_CONFIG_MIGRATION_Q_ // usefull for migration time, to support some old functionality temp. :-)
+#define _FILTER_CONFIG_MIGRATION_Q_ // useful for migration time, to support some old functionality temp. :-)
#endif // _FILTER_CONFIG_VERSIONS_HXX_
diff --git a/filter/source/config/fragments/makefile.mk b/filter/source/config/fragments/makefile.mk
index 84497eebdd17..971c1bca405e 100644
--- a/filter/source/config/fragments/makefile.mk
+++ b/filter/source/config/fragments/makefile.mk
@@ -156,7 +156,7 @@ PACKLANG_PARAM := --stringparam
PACKLANG_XSL :=
# -----------------------------------------------------------------------------
-# build every module seperated
+# build every module separated
# -----------------------------------------------------------------------------
$(REALFILTERPACKAGES_TYPES_FLAG) : $$(TYPES_4$$(@:b))
diff --git a/filter/source/config/tools/merge/pyAltFCFGMerge b/filter/source/config/tools/merge/pyAltFCFGMerge
index 8015de567522..1adc1f1aa503 100755
--- a/filter/source/config/tools/merge/pyAltFCFGMerge
+++ b/filter/source/config/tools/merge/pyAltFCFGMerge
@@ -311,7 +311,7 @@ def printHelp():
print("parameters:")
print("\tcfg=<file name>")
print("\t\tmust point to a system file, which contains")
- print("\t\tall neccessary configuration data for the merge process.")
+ print("\t\tall necessary configuration data for the merge process.")
print("\tFurther cou can specify every parameter allowed in the")
print("\tconfig file as command line parameter too, to overwrite")
print("\tthe value from the file.")
@@ -502,7 +502,7 @@ class Merger:
self.m_aCfg.getValue(PROP_XMLPACKAGE ),\
self.m_aCfg.getValueWithDefault(PROP_LANGUAGEPACK, False))
- # counts all transfered fragments
+ # counts all transferred fragments
# Can be used later to decide, if a generated package file
# contains "nothing"!
nItemCount = 0
diff --git a/filter/source/config/tools/split/FCFGSplit.java b/filter/source/config/tools/split/FCFGSplit.java
index afd4656ba3b5..24ff179e75f9 100644
--- a/filter/source/config/tools/split/FCFGSplit.java
+++ b/filter/source/config/tools/split/FCFGSplit.java
@@ -182,7 +182,7 @@ public class FCFGSplit
* Its meaned relativ to m_sOutDir. */
private static java.lang.String m_sSubDirContentHandlers;
- /** enable/disable generating of filter groups - seperated by
+ /** enable/disable generating of filter groups - separated by
* application modules. */
private static boolean m_bSeperateFiltersByModule;
@@ -466,7 +466,7 @@ public class FCFGSplit
sTimes.append(" ms\n" );
m_aDebug.setDetailedInfo(sTimes.toString());
- // everyting seems to be ok.
+ // everything seems to be ok.
// Return "OK" to calli.
m_aDebug.setGlobalInfo("Finish.");
System.exit(0);
diff --git a/filter/source/config/tools/split/Splitter.java b/filter/source/config/tools/split/Splitter.java
index 69461bda2b8a..94c94b37efdb 100644
--- a/filter/source/config/tools/split/Splitter.java
+++ b/filter/source/config/tools/split/Splitter.java
@@ -80,7 +80,7 @@ public class Splitter
createDirectoryStructures();
// use some statistic values to check if all cache items
- // will be transformed realy.
+ // will be transformed really.
int nTypes = m_aDataSet.m_aCache.getItemCount(Cache.E_TYPE );
int nFilters = m_aDataSet.m_aCache.getItemCount(Cache.E_FILTER );
int nDetectServices = m_aDataSet.m_aCache.getItemCount(Cache.E_DETECTSERVICE );
diff --git a/filter/source/flash/swfdialog.cxx b/filter/source/flash/swfdialog.cxx
index 256dceac5c9f..4c4acf33f1ac 100644
--- a/filter/source/flash/swfdialog.cxx
+++ b/filter/source/flash/swfdialog.cxx
@@ -171,7 +171,7 @@ Dialog* SWFDialog::createDialog( Window* pParent )
if( mpResMgr && mxSrcDoc.is() )
{
-/* TODO: From the controler we may get information what page is visible and what shapes
+/* TODO: From the controller we may get information what page is visible and what shapes
are selected, if we optionaly want to limit output to that
Any aSelection;
diff --git a/filter/source/flash/swfexporter.cxx b/filter/source/flash/swfexporter.cxx
index 2e7b8ebe57ef..25fd96506e4e 100644
--- a/filter/source/flash/swfexporter.cxx
+++ b/filter/source/flash/swfexporter.cxx
@@ -99,14 +99,33 @@ void PageInfo::addShape( ShapeInfo* pShapeInfo )
// -----------------------------------------------------------------------------
-FlashExporter::FlashExporter(const Reference< XMultiServiceFactory > &rxMSF, sal_Int32 nJPEGCompressMode, sal_Bool bExportOLEAsJPEG)
-: mxMSF( rxMSF ),
- mpWriter( NULL ),
+FlashExporter::FlashExporter(
+ const Reference< XMultiServiceFactory > &rxMSF,
+
+ // #56084# variables for selection export
+ const Reference< XShapes >& rxSelectedShapes,
+ const Reference< XDrawPage >& rxSelectedDrawPage,
+
+ sal_Int32 nJPEGCompressMode,
+ sal_Bool bExportOLEAsJPEG)
+: mxMSF(rxMSF),
+
+ // #56084# variables for selection export
+ mxSelectedShapes(rxSelectedShapes),
+ mxSelectedDrawPage(rxSelectedDrawPage),
+ mbExportSelection(false),
+
+ mpWriter(NULL),
mnJPEGcompressMode(nJPEGCompressMode),
mbExportOLEAsJPEG(bExportOLEAsJPEG),
mbPresentation(true),
- mnPageNumber( - 1 )
+ mnPageNumber(-1)
{
+ if(mxSelectedDrawPage.is() && mxSelectedShapes.is() && mxSelectedShapes->getCount())
+ {
+ // #56084# determine export selection
+ mbExportSelection = true;
+ }
}
// -----------------------------------------------------------------------------
@@ -146,7 +165,16 @@ sal_Bool FlashExporter::exportAll( Reference< XComponent > xDoc, Reference< XOut
return sal_False;
Reference< XDrawPage > xDrawPage;
- xDrawPages->getByIndex(0) >>= xDrawPage;
+
+ // #56084# set xDrawPage directly when exporting selection
+ if(mbExportSelection)
+ {
+ xDrawPage = mxSelectedDrawPage;
+ }
+ else
+ {
+ xDrawPages->getByIndex(0) >>= xDrawPage;
+ }
Reference< XPropertySet > xProp( xDrawPage, UNO_QUERY );
try
@@ -165,17 +193,29 @@ sal_Bool FlashExporter::exportAll( Reference< XComponent > xDoc, Reference< XOut
return false; // no writer, no cookies
}
- const sal_Int32 nPageCount = xDrawPages->getCount();
+ // #56084# nPageCount is 1 when exporting selection
+ const sal_Int32 nPageCount = mbExportSelection ? 1 : xDrawPages->getCount();
sal_uInt16 nPage;
+
if ( xStatusIndicator.is() )
+ {
xStatusIndicator->start(OUString( RTL_CONSTASCII_USTRINGPARAM( "Macromedia Flash (SWF)" )), nPageCount);
+ }
+
for( nPage = 0; nPage < nPageCount; nPage++)
{
+ // #56084# keep PageNumber? We could determine the PageNumber of the single to-be-eported page
+ // when exporting the selection, but this is only used for swf internal, so no need to do so (AFAIK)
mnPageNumber = nPage + 1;
if ( xStatusIndicator.is() )
xStatusIndicator->setValue( nPage );
- xDrawPages->getByIndex(nPage) >>= xDrawPage;
+
+ // #56084# get current xDrawPage when not exporting selection; else alraedy set above
+ if(!mbExportSelection)
+ {
+ xDrawPages->getByIndex(nPage) >>= xDrawPage;
+ }
if( !xDrawPage.is())
continue;
@@ -189,11 +229,25 @@ sal_Bool FlashExporter::exportAll( Reference< XComponent > xDoc, Reference< XOut
continue;
}
- exportBackgrounds( xDrawPage, nPage, false );
- exportBackgrounds( xDrawPage, nPage, true );
+ // #56084# no background when exporting selection
+ if(!mbExportSelection)
+ {
+ exportBackgrounds( xDrawPage, nPage, false );
+ exportBackgrounds( xDrawPage, nPage, true );
+ }
maPagesMap[nPage].mnForegroundID = mpWriter->startSprite();
- exportDrawPageContents( xDrawPage, false, false );
+
+ // #56084# directly export selection in export selection mode
+ if(mbExportSelection)
+ {
+ exportShapes( mxSelectedShapes, false, false );
+ }
+ else
+ {
+ exportDrawPageContents( xDrawPage, false, false );
+ }
+
mpWriter->endSprite();
// AS: If the background is different than the previous slide,
@@ -490,7 +544,7 @@ sal_uInt16 FlashExporter::exportMasterPageObjects(sal_uInt16 nPage, Reference< X
/** export's the definition of the shapes inside this drawing page and adds the
shape infos to the current PageInfo */
-void FlashExporter::exportDrawPageContents( Reference< XDrawPage >& xPage, bool bStream, bool bMaster )
+void FlashExporter::exportDrawPageContents( const Reference< XDrawPage >& xPage, bool bStream, bool bMaster )
{
Reference< XShapes > xShapes( xPage, UNO_QUERY );
exportShapes(xShapes, bStream, bMaster);
@@ -500,7 +554,7 @@ void FlashExporter::exportDrawPageContents( Reference< XDrawPage >& xPage, bool
/** export's the definition of the shapes inside this XShapes container and adds the
shape infos to the current PageInfo */
-void FlashExporter::exportShapes( Reference< XShapes >& xShapes, bool bStream, bool bMaster )
+void FlashExporter::exportShapes( const Reference< XShapes >& xShapes, bool bStream, bool bMaster )
{
OSL_ENSURE( (xShapes->getCount() <= 0xffff), "overflow in FlashExporter::exportDrawPageContents()" );
@@ -532,7 +586,7 @@ void FlashExporter::exportShapes( Reference< XShapes >& xShapes, bool bStream, b
// -----------------------------------------------------------------------------
/** export this shape definition and adds it's info to the current PageInfo */
-void FlashExporter::exportShape( Reference< XShape >& xShape, bool bMaster )
+void FlashExporter::exportShape( const Reference< XShape >& xShape, bool bMaster )
{
Reference< XPropertySet > xPropSet( xShape, UNO_QUERY );
if( !xPropSet.is() )
diff --git a/filter/source/flash/swfexporter.hxx b/filter/source/flash/swfexporter.hxx
index 6c7167f55579..03e5e6d06052 100644
--- a/filter/source/flash/swfexporter.hxx
+++ b/filter/source/flash/swfexporter.hxx
@@ -155,7 +155,15 @@ typedef ::std::map<sal_uInt32, PageInfo> PageInfoMap;
class FlashExporter
{
public:
- FlashExporter( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& rxMSF, sal_Int32 nJPEGCompressMode = -1, sal_Bool bExportOLEAsJPEG = false);
+ FlashExporter(
+ const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& rxMSF,
+
+ // #56084# variables for selection export
+ const ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShapes >& rxSelectedShapes,
+ const ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XDrawPage >& rxSelectedDrawPage,
+
+ sal_Int32 nJPEGCompressMode = -1,
+ sal_Bool bExportOLEAsJPEG = false);
~FlashExporter();
void Flush();
@@ -176,6 +184,12 @@ public:
private:
::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > mxMSF;
+
+ // #56084# variables for selection export
+ const ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShapes > mxSelectedShapes;
+ const ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XDrawPage > mxSelectedDrawPage;
+ bool mbExportSelection;
+
::com::sun::star::uno::Reference< ::com::sun::star::document::XExporter > mxGraphicExporter;
PageInfoMap maPagesMap;
@@ -183,9 +197,9 @@ private:
sal_uInt16 exportDrawPageBackground(sal_uInt16 nPage, ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XDrawPage >& xPage);
sal_uInt16 exportMasterPageObjects(sal_uInt16 nPage, ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XDrawPage >& xMasterPage);
- void exportDrawPageContents( ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XDrawPage >& xPage, bool bStream, bool bMaster );
- void exportShapes( ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShapes >& xShapes, bool bStream, bool bMaster );
- void exportShape( ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShape >& xShape, bool bMaster);
+ void exportDrawPageContents( const ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XDrawPage >& xPage, bool bStream, bool bMaster );
+ void exportShapes( const ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShapes >& xShapes, bool bStream, bool bMaster );
+ void exportShape( const ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShape >& xShape, bool bMaster);
sal_uInt32 ActionSummer(::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShape >& xShape);
sal_uInt32 ActionSummer(::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShapes >& xShapes);
diff --git a/filter/source/flash/swffilter.cxx b/filter/source/flash/swffilter.cxx
index 511c7be38b9f..aafbfe60eb1d 100644
--- a/filter/source/flash/swffilter.cxx
+++ b/filter/source/flash/swffilter.cxx
@@ -35,6 +35,13 @@
#include <com/sun/star/frame/XModel.hpp>
#include <com/sun/star/task/XStatusIndicatorFactory.hpp>
#include <com/sun/star/io/XOutputStream.hpp>
+
+#include <com/sun/star/drawing/XDrawPage.hpp>
+#include <com/sun/star/drawing/XShapes.hpp>
+#include <com/sun/star/frame/XDesktop.hdl>
+#include <com/sun/star/frame/XController.hdl>
+#include <com/sun/star/view/XSelectionSupplier.hpp>
+
#include <cppuhelper/implbase1.hxx>
#include <cppuhelper/implbase4.hxx>
#include <osl/file.hxx>
@@ -51,6 +58,7 @@ using namespace ::com::sun::star::lang;
using namespace ::com::sun::star::drawing;
using namespace ::com::sun::star::presentation;
using namespace ::com::sun::star::task;
+using namespace ::com::sun::star::view;
using ::rtl::OUString;
using ::rtl::OString;
@@ -152,6 +160,11 @@ class FlashExportFilter : public cppu::WeakImplHelper4
Reference< XMultiServiceFactory > mxMSF;
Reference< XStatusIndicator> mxStatusIndicator;
+ // #56084# variables for selection export
+ Reference< XShapes > mxSelectedShapes;
+ Reference< XDrawPage > mxSelectedDrawPage;
+ bool mbExportSelection;
+
osl::File* mpFile;
public:
@@ -180,7 +193,13 @@ public:
// -----------------------------------------------------------------------------
FlashExportFilter::FlashExportFilter(const Reference< XMultiServiceFactory > &rxMSF)
-: mxMSF( rxMSF )
+: mxDoc(),
+ mxMSF( rxMSF ),
+ mxStatusIndicator(),
+ mxSelectedShapes(),
+ mxSelectedDrawPage(),
+ mbExportSelection(false),
+ mpFile(0)
{
}
@@ -192,7 +211,7 @@ OUString exportBackground(FlashExporter &aFlashExporter, Reference< XDrawPage >
OUString filename = STR("slide") + VAL(nPage+1) + STR(suffix) + STR(".swf");
OUString fullpath = sPath + STR("/") + filename;
- // AS: If suffix is "o" then the last paramter is true (for exporting objects).
+ // AS: If suffix is "o" then the last parameter is true (for exporting objects).
Reference<XOutputStream> xOutputStreamWrap(*(new OslOutputStreamWrapper(fullpath)), UNO_QUERY);
sal_uInt16 nCached = aFlashExporter.exportBackgrounds( xDrawPage, xOutputStreamWrap, sal::static_int_cast<sal_uInt16>( nPage ), *suffix == 'o' );
aFlashExporter.Flush();
@@ -238,7 +257,56 @@ sal_Bool SAL_CALL FlashExportFilter::filter( const ::com::sun::star::uno::Sequen
Sequence< PropertyValue > aFilterData;
aFilterData = findPropertyValue<Sequence< PropertyValue > >(aDescriptor, "FilterData", aFilterData);
- if (findPropertyValue<sal_Bool>(aFilterData, "ExportMultipleFiles", false ))
+ // #56084# check if selection shall be exported only; if yes, get the selected page and the selection itself
+ if(findPropertyValue<sal_Bool>(aDescriptor, "SelectionOnly", sal_False))
+ {
+ Reference< XDesktop > xDesktop(mxMSF->createInstance(::rtl::OUString::createFromAscii("com.sun.star.frame.Desktop")), UNO_QUERY);
+
+ if(xDesktop.is())
+ {
+ Reference< XFrame > xFrame(xDesktop->getCurrentFrame());
+
+ if(xFrame.is())
+ {
+ Reference< XController > xController(xFrame->getController());
+
+ if(xController.is())
+ {
+ Reference< XDrawView > xDrawView(xController, UNO_QUERY);
+
+ if(xDrawView.is())
+ {
+ mxSelectedDrawPage = xDrawView->getCurrentPage();
+ }
+
+ if(mxSelectedDrawPage.is())
+ {
+ Reference< XSelectionSupplier > xSelection(xController, UNO_QUERY);
+
+ if(xSelection.is())
+ {
+ Any aSelection;
+
+ if(xSelection->getSelection() >>= aSelection)
+ {
+ aSelection >>= mxSelectedShapes;
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+
+ if(mxSelectedDrawPage.is() && mxSelectedShapes.is() && mxSelectedShapes->getCount())
+ {
+ // #56084# to export selection we need the selected page and the selected shapes.
+ // There must be shapes selected, else fallback to regular export (export all)
+ mbExportSelection = true;
+ }
+
+ // #56084# no multiple files (suppress) when selection since selection can only export a single page
+ if (!mbExportSelection && findPropertyValue<sal_Bool>(aFilterData, "ExportMultipleFiles", false ))
{
ExportAsMultipleFiles(aDescriptor);
}
@@ -332,8 +400,12 @@ sal_Bool FlashExportFilter::ExportAsMultipleFiles(const Sequence< PropertyValue
err = osl_writeFile(xBackgroundConfig, "slides=", strlen("slides="), &bytesWritten);
}
- FlashExporter aFlashExporter( mxMSF, findPropertyValue<sal_Int32>(aFilterData, "CompressMode", 75),
- findPropertyValue<sal_Bool>(aFilterData, "ExportOLEAsJPEG", false));
+ FlashExporter aFlashExporter(
+ mxMSF,
+ mxSelectedShapes,
+ mxSelectedDrawPage,
+ findPropertyValue<sal_Int32>(aFilterData, "CompressMode", 75),
+ findPropertyValue<sal_Bool>(aFilterData, "ExportOLEAsJPEG", false));
const sal_Int32 nPageCount = xDrawPages->getCount();
if ( mxStatusIndicator.is() )
@@ -424,8 +496,12 @@ sal_Bool FlashExportFilter::ExportAsSingleFile(const Sequence< PropertyValue >&
return sal_False;
}
- FlashExporter aFlashExporter( mxMSF, findPropertyValue<sal_Int32>(aFilterData, "CompressMode", 75),
- findPropertyValue<sal_Bool>(aFilterData, "ExportOLEAsJPEG", false));
+ FlashExporter aFlashExporter(
+ mxMSF,
+ mxSelectedShapes,
+ mxSelectedDrawPage,
+ findPropertyValue<sal_Int32>(aFilterData, "CompressMode", 75),
+ findPropertyValue<sal_Bool>(aFilterData, "ExportOLEAsJPEG", false));
return aFlashExporter.exportAll( mxDoc, xOutputStream, mxStatusIndicator );
}
diff --git a/filter/source/flash/swfwriter.cxx b/filter/source/flash/swfwriter.cxx
index a6a2793b947e..f270a269b852 100644
--- a/filter/source/flash/swfwriter.cxx
+++ b/filter/source/flash/swfwriter.cxx
@@ -545,7 +545,7 @@ sal_Bool Writer::streamSound( const char * filename )
// not the sum of the number of samples in the L and R channels.
//
// The return code = number of bytes output in mp3buffer. This can be 0.
-// If it is <0, an error occured.
+// If it is <0, an error occurred.
for (int samples_written = 0; samples_written < info.frames; samples_written += samples_per_frame)
diff --git a/filter/source/flash/swfwriter1.cxx b/filter/source/flash/swfwriter1.cxx
index 018cae8e2b7f..16b68d4b190b 100644
--- a/filter/source/flash/swfwriter1.cxx
+++ b/filter/source/flash/swfwriter1.cxx
@@ -607,7 +607,7 @@ void Writer::Impl_writeText( const Point& rPos, const String& rText, const sal_I
// write text element
-/* test code to create a bound rect, not realy working for rotated text
+/* test code to create a bound rect, not really working for rotated text
Size aTextSize( map( Size( mpVDev->GetTextWidth( rText ), mpVDev->GetTextHeight() ) ) );
Point aMetricPoint( map( Point( aMetric.GetLeading(), aMetric.GetAscent() ) ) );
@@ -710,7 +710,7 @@ void Writer::Impl_writeText( const Point& rPos, const String& rText, const sal_I
maShapeIds.push_back( nTextId );
- // AS: Write strikeout and underline, if neccessary. This code was originally taken from the SVG
+ // AS: Write strikeout and underline, if necessary. This code was originally taken from the SVG
// export facility, although the positioning had to be tweaked a little. I can't explain the
// numbers, but the flash lines up very well with the original OOo document. All of this should
// probably be converted to polygons as part of the meta file, though, as we don't handle any
@@ -757,9 +757,9 @@ void Writer::Impl_writeText( const Point& rPos, const String& rText, const sal_I
}
// -----------------------------------------------------------------------------
-// AS: Because JPEGs require the alpha channel provided seperately (JPEG does not
-// natively support alpha channel, but SWF lets you provide it seperately), we
-// extract the alpha channel into a seperate array here.
+// AS: Because JPEGs require the alpha channel provided separately (JPEG does not
+// natively support alpha channel, but SWF lets you provide it separately), we
+// extract the alpha channel into a separate array here.
void getBitmapData( const BitmapEx& aBmpEx, sal_uInt8*& tgadata, sal_uInt8*& tgaAlphadata, sal_uInt32& nWidth, sal_uInt32& nHeight )
{
if( !aBmpEx.IsEmpty() )
@@ -860,7 +860,7 @@ sal_uInt16 Writer::defineBitmap( const BitmapEx &bmpSource, sal_Int32 nJPEGQuali
#endif
// AS: SWF files let you provide an Alpha mask for JPEG images, but we have
- // to ZLIB compress the alpha channel seperately.
+ // to ZLIB compress the alpha channel separately.
uLong alpha_compressed_size = 0;
sal_uInt8 *pAlphaCompressed = NULL;
if (bmpSource.IsAlpha() || bmpSource.IsTransparent())
@@ -1043,7 +1043,7 @@ void Writer::Impl_writeBmp( sal_uInt16 nBitmapId, sal_uInt32 width, sal_uInt32 h
void Writer::Impl_writeJPEG(sal_uInt16 nBitmapId, const sal_uInt8* pJpgData, sal_uInt32 nJpgDataLength, sal_uInt8 *pAlphaCompressed, sal_uInt32 alpha_compressed_size )
{
- // AS: Go through the actuall JPEG bits, seperating out the
+ // AS: Go through the actuall JPEG bits, separating out the
// header fields from the actual image fields. Fields are
// identifed by 0xFFXX where XX is the field type. Both
// the header and the image need start and stop (D8 and D9),
@@ -1092,7 +1092,7 @@ void Writer::Impl_writeJPEG(sal_uInt16 nBitmapId, const sal_uInt8* pJpgData, sal
nLength = 2 + (pJpgSearch[2]<<8) + pJpgSearch[3];
}
- // AS: I'm refering to libjpeg for a list of what these
+ // AS: I'm referring to libjpeg for a list of what these
// markers are. See jdmarker.c for a list.
// AS: I'm ignoring application specific markers 0xE1...0xEF
// and comments 0xFE. I don't know what
diff --git a/filter/source/graphicfilter/ieps/ieps.cxx b/filter/source/graphicfilter/ieps/ieps.cxx
index 588c0584a47e..b81bd79d5717 100644
--- a/filter/source/graphicfilter/ieps/ieps.cxx
+++ b/filter/source/graphicfilter/ieps/ieps.cxx
@@ -173,7 +173,7 @@ static oslProcessError runProcessWithPathSearch(const rtl::OUString &rProgName,
*
* Because one of our programs is called "convert" and there is a convert
* in the windows system directory, we want to explicitly search the PATH
- * to avoid picking up on that one if ImageMagick's convert preceeds it in
+ * to avoid picking up on that one if ImageMagick's convert precedes it in
* PATH.
*
*/
diff --git a/filter/source/graphicfilter/ipbm/ipbm.cxx b/filter/source/graphicfilter/ipbm/ipbm.cxx
index b8ca0d1434db..a25a54fda4a7 100644
--- a/filter/source/graphicfilter/ipbm/ipbm.cxx
+++ b/filter/source/graphicfilter/ipbm/ipbm.cxx
@@ -107,7 +107,8 @@ sal_Bool PBMReader::ReadPBM( SvStream & rPBM, Graphic & rGraphic )
{
case 0 :
maBmp = Bitmap( Size( mnWidth, mnHeight ), 1 );
- if ( ( mpAcc = maBmp.AcquireWriteAccess() ) == sal_False )
+ mpAcc = maBmp.AcquireWriteAccess();
+ if ( !mpAcc )
return sal_False;
mpAcc->SetPaletteEntryCount( 2 );
mpAcc->SetPaletteColor( 0, BitmapColor( 0xff, 0xff, 0xff ) );
@@ -122,7 +123,8 @@ sal_Bool PBMReader::ReadPBM( SvStream & rPBM, Graphic & rGraphic )
else
maBmp = Bitmap( Size( mnWidth, mnHeight ), 8);
- if ( ( mpAcc = maBmp.AcquireWriteAccess() ) == sal_False )
+ mpAcc = maBmp.AcquireWriteAccess();
+ if ( !mpAcc )
return sal_False;
mnCol = (sal_uInt16)mnMaxVal + 1;
if ( mnCol > 256 )
@@ -137,7 +139,8 @@ sal_Bool PBMReader::ReadPBM( SvStream & rPBM, Graphic & rGraphic )
break;
case 2 :
maBmp = Bitmap( Size( mnWidth, mnHeight ), 24 );
- if ( ( mpAcc = maBmp.AcquireWriteAccess() ) == sal_False )
+ mpAcc = maBmp.AcquireWriteAccess();
+ if ( !mpAcc )
return sal_False;
break;
}
diff --git a/filter/source/graphicfilter/ipcd/ipcd.cxx b/filter/source/graphicfilter/ipcd/ipcd.cxx
index 58b6c648f681..ec65b26d4308 100644
--- a/filter/source/graphicfilter/ipcd/ipcd.cxx
+++ b/filter/source/graphicfilter/ipcd/ipcd.cxx
@@ -155,7 +155,8 @@ sal_Bool PCDReader::ReadPCD( SvStream & rPCD, Graphic & rGraphic, FilterConfigIt
nBMPHeight = nWidth;
}
aBmp = Bitmap( Size( nBMPWidth, nBMPHeight ), 24 );
- if ( ( mpAcc = aBmp.AcquireWriteAccess() ) == sal_False )
+ mpAcc = aBmp.AcquireWriteAccess();
+ if ( !mpAcc )
return sal_False;
ReadImage( 5 ,65 );
diff --git a/filter/source/graphicfilter/ipcx/ipcx.cxx b/filter/source/graphicfilter/ipcx/ipcx.cxx
index 6f3340ecaffa..dd25dceb3d15 100644
--- a/filter/source/graphicfilter/ipcx/ipcx.cxx
+++ b/filter/source/graphicfilter/ipcx/ipcx.cxx
@@ -114,7 +114,8 @@ sal_Bool PCXReader::ReadPCX( SvStream & rPCX, Graphic & rGraphic )
if ( nStatus )
{
aBmp = Bitmap( Size( nWidth, nHeight ), nDestBitsPerPixel );
- if ( ( pAcc = aBmp.AcquireWriteAccess() ) == sal_False )
+ pAcc = aBmp.AcquireWriteAccess();
+ if ( !pAcc )
return sal_False;
if ( nDestBitsPerPixel <= 8 )
diff --git a/filter/source/graphicfilter/iras/iras.cxx b/filter/source/graphicfilter/iras/iras.cxx
index 7efafda5fcb0..48224e7605ac 100644
--- a/filter/source/graphicfilter/iras/iras.cxx
+++ b/filter/source/graphicfilter/iras/iras.cxx
@@ -103,7 +103,8 @@ sal_Bool RASReader::ReadRAS( SvStream & rRAS, Graphic & rGraphic )
return sal_False;
maBmp = Bitmap( Size( mnWidth, mnHeight ), mnDstBitsPerPix );
- if ( ( mpAcc = maBmp.AcquireWriteAccess() ) == sal_False )
+ mpAcc = maBmp.AcquireWriteAccess();
+ if ( !mpAcc )
return sal_False;
if ( mnDstBitsPerPix <= 8 ) // paletten bildchen
diff --git a/filter/source/graphicfilter/itga/itga.cxx b/filter/source/graphicfilter/itga/itga.cxx
index 7e51d82979c4..7243fa96de48 100644
--- a/filter/source/graphicfilter/itga/itga.cxx
+++ b/filter/source/graphicfilter/itga/itga.cxx
@@ -685,7 +685,7 @@ sal_Bool TGAReader::ImplReadPalette()
mpFileHeader->nColorMapEntrySize = 0x3f; // patch for the following switch routine
}
mpColorMap = new sal_uInt32[ nColors ]; // we will always index dwords
- if ( mpColorMap == sal_False )
+ if ( !mpColorMap ) // NOTE: check for new-result==NULL because exceptions are disabled in this module
return sal_False; // out of memory %&!$&/!"ïżœ$
switch( mpFileHeader->nColorMapEntrySize )
diff --git a/filter/source/msfilter/countryid.cxx b/filter/source/msfilter/countryid.cxx
index b6c5d25d89ce..a3795a94c574 100644
--- a/filter/source/msfilter/countryid.cxx
+++ b/filter/source/msfilter/countryid.cxx
@@ -325,7 +325,7 @@ CountryId ConvertLanguageToCountry( LanguageType eLanguage )
LanguageType ConvertCountryToLanguage( CountryId eCountry )
{
- // just find the first occurance of eCountry and return the language type
+ // just find the first occurrence of eCountry and return the language type
const CountryEntry* pEntry = std::find_if( pTable, pEnd, CountryEntryPred_Country( eCountry ) );
return (pEntry != pEnd) ? pEntry->meLanguage : LANGUAGE_DONTKNOW;
}
diff --git a/filter/source/msfilter/dffpropset.cxx b/filter/source/msfilter/dffpropset.cxx
index e96283ec98d0..80c3c839a893 100644
--- a/filter/source/msfilter/dffpropset.cxx
+++ b/filter/source/msfilter/dffpropset.cxx
@@ -1132,7 +1132,7 @@ void DffPropSet::ReadPropSet( SvStream& rIn, bool bSetUninitializedOnly )
sal_uInt32 nMergeFlags = nContent;
nMergeFlags &= ( nMergeFlags >> 16 ) | 0xffff0000; // clearing low word
- nMergeFlags &= ( ( nCurrentFlags & 0xffff0000 ) // remove allready hard set
+ nMergeFlags &= ( ( nCurrentFlags & 0xffff0000 ) // remove already hard set
| ( nCurrentFlags >> 16 ) ) ^ 0xffffffff; // attributes from mergeflags
nCurrentFlags &= ( ( nMergeFlags & 0xffff0000 ) // apply zero master bits
| ( nMergeFlags >> 16 ) ) ^ 0xffffffff;
diff --git a/filter/source/msfilter/escherex.cxx b/filter/source/msfilter/escherex.cxx
index bc3399e1ba96..1f6db0d8b530 100644
--- a/filter/source/msfilter/escherex.cxx
+++ b/filter/source/msfilter/escherex.cxx
@@ -2598,7 +2598,7 @@ void ConvertEnhancedCustomShapeEquation( SdrObjCustomShape* pCustoShape,
if ( pAny )
*pAny >>= sEquationSource;
sal_Int32 nEquationSourceCount = sEquationSource.getLength();
- if ( nEquationSourceCount )
+ if ( nEquationSourceCount && (nEquationSourceCount <= 128) )
{
sal_Int32 i;
for ( i = 0; i < nEquationSourceCount; i++ )
@@ -2644,7 +2644,18 @@ void ConvertEnhancedCustomShapeEquation( SdrObjCustomShape* pCustoShape,
if ( aIter->nOperation & nMask )
{
aIter->nOperation ^= nMask;
- aIter->nPara[ i ] = rEquationOrder[ aIter->nPara[ i ] & 0x3ff ] | 0x400;
+ const sal_Int32 nIndex(aIter->nPara[ i ] & 0x3ff);
+
+ // #124661# check index access, there are cases where this is out of bound leading
+ // to errors up to crashes when executed
+ if(nIndex < rEquationOrder.size())
+ {
+ aIter->nPara[ i ] = rEquationOrder[ nIndex ] | 0x400;
+ }
+ else
+ {
+ OSL_ENSURE(false, "Attempted out of bound access to rEquationOrder of CustomShape (!)");
+ }
}
nMask <<= 1;
}
diff --git a/filter/source/msfilter/msdffimp.cxx b/filter/source/msfilter/msdffimp.cxx
index c9bb76029dd6..c65cfc057832 100644
--- a/filter/source/msfilter/msdffimp.cxx
+++ b/filter/source/msfilter/msdffimp.cxx
@@ -2012,20 +2012,23 @@ void DffPropertyReader::ApplyCustomShapeGeometryAttributes( SvStream& rIn, SfxIt
if ( SeekToContent( DFF_Prop_pFormulas, rIn ) )
rIn >> nNumElem >> nNumElemMem >> nElemSize;
- sal_Int16 nP1, nP2, nP3;
- sal_uInt16 nFlags;
-
- uno::Sequence< rtl::OUString > aEquations( nNumElem );
- for ( i = 0; i < nNumElem; i++ )
+ if ( nNumElem <= 128 )
{
- rIn >> nFlags >> nP1 >> nP2 >> nP3;
- aEquations[ i ] = EnhancedCustomShape2d::GetEquation( nFlags, nP1, nP2, nP3 );
+ sal_Int16 nP1, nP2, nP3;
+ sal_uInt16 nFlags;
+
+ uno::Sequence< rtl::OUString > aEquations( nNumElem );
+ for ( i = 0; i < nNumElem; i++ )
+ {
+ rIn >> nFlags >> nP1 >> nP2 >> nP3;
+ aEquations[ i ] = EnhancedCustomShape2d::GetEquation( nFlags, nP1, nP2, nP3 );
+ }
+ // pushing the whole Equations element
+ const rtl::OUString sEquations( RTL_CONSTASCII_USTRINGPARAM ( "Equations" ) );
+ aProp.Name = sEquations;
+ aProp.Value <<= aEquations;
+ aPropVec.push_back( aProp );
}
- // pushing the whole Equations element
- const rtl::OUString sEquations( RTL_CONSTASCII_USTRINGPARAM ( "Equations" ) );
- aProp.Name = sEquations;
- aProp.Value <<= aEquations;
- aPropVec.push_back( aProp );
}
////////////////////////////////////////
@@ -2732,42 +2735,55 @@ void DffPropertyReader::ApplyAttributes( SvStream& rIn, SfxItemSet& rSet, DffObj
}
if ( bHasShadow )
{
- // #160376# sj: activating shadow only if fill and or linestyle is used
- // this is required because of the latest drawing layer core changes.
- // Issue i104085 is related to this.
- sal_uInt32 nLineFlags(GetPropertyValue( DFF_Prop_fNoLineDrawDash ));
- if(!IsHardAttribute( DFF_Prop_fLine ) && !IsCustomShapeStrokedByDefault( rObjData.eShapeType ))
- nLineFlags &= ~0x08;
- sal_uInt32 nFillFlags(GetPropertyValue( DFF_Prop_fNoFillHitTest ));
- if(!IsHardAttribute( DFF_Prop_fFilled ) && !IsCustomShapeFilledByDefault( rObjData.eShapeType ))
- nFillFlags &= ~0x10;
- if ( nFillFlags & 0x10 )
- {
- MSO_FillType eMSO_FillType = (MSO_FillType)GetPropertyValue( DFF_Prop_fillType, mso_fillSolid );
- switch( eMSO_FillType )
+ static bool bCheckShadow(false);
+
+ // #124477# Found no reason not to set shadow, esp. since it is applied to evtl. existing text
+ // and will lead to an error of in PPT someone used text and added the object shadow to the
+ // object carryintg that text. I found no cases where this leads to problems (the old bugtracker
+ // task #160376# from sj is unfortunately no longer available). Keeping the code for now
+ // to allow easy fallback when this shows problems in the future
+ if(bCheckShadow)
+ {
+ // #160376# sj: activating shadow only if fill and or linestyle is used
+ // this is required because of the latest drawing layer core changes.
+ // Issue i104085 is related to this.
+ sal_uInt32 nLineFlags(GetPropertyValue( DFF_Prop_fNoLineDrawDash ));
+ if(!IsHardAttribute( DFF_Prop_fLine ) && !IsCustomShapeStrokedByDefault( rObjData.eShapeType ))
+ nLineFlags &= ~0x08;
+ sal_uInt32 nFillFlags(GetPropertyValue( DFF_Prop_fNoFillHitTest ));
+ if(!IsHardAttribute( DFF_Prop_fFilled ) && !IsCustomShapeFilledByDefault( rObjData.eShapeType ))
+ nFillFlags &= ~0x10;
+ if ( nFillFlags & 0x10 )
{
- case mso_fillSolid :
- case mso_fillPattern :
- case mso_fillTexture :
- case mso_fillPicture :
- case mso_fillShade :
- case mso_fillShadeCenter :
- case mso_fillShadeShape :
- case mso_fillShadeScale :
- case mso_fillShadeTitle :
- break;
- // case mso_fillBackground :
- default:
- nFillFlags &=~0x10; // no fillstyle used
- break;
+ MSO_FillType eMSO_FillType = (MSO_FillType)GetPropertyValue( DFF_Prop_fillType, mso_fillSolid );
+ switch( eMSO_FillType )
+ {
+ case mso_fillSolid :
+ case mso_fillPattern :
+ case mso_fillTexture :
+ case mso_fillPicture :
+ case mso_fillShade :
+ case mso_fillShadeCenter :
+ case mso_fillShadeShape :
+ case mso_fillShadeScale :
+ case mso_fillShadeTitle :
+ break;
+ // case mso_fillBackground :
+ default:
+ nFillFlags &=~0x10; // no fillstyle used
+ break;
+ }
}
+ if ( ( ( nLineFlags & 0x08 ) == 0 ) && ( ( nFillFlags & 0x10 ) == 0 ) && ( rObjData.eShapeType != mso_sptPictureFrame )) // if there is no fillstyle and linestyle
+ bHasShadow = sal_False; // we are turning shadow off.
}
- if ( ( ( nLineFlags & 0x08 ) == 0 ) && ( ( nFillFlags & 0x10 ) == 0 ) && ( rObjData.eShapeType != mso_sptPictureFrame )) // if there is no fillstyle and linestyle
- bHasShadow = sal_False; // we are turning shadow off.
- if ( bHasShadow )
- rSet.Put( SdrOnOffItem(SDRATTR_SHADOW, bHasShadow ) );
+ if(bHasShadow)
+ {
+ rSet.Put(SdrOnOffItem(SDRATTR_SHADOW, bHasShadow));
+ }
}
+
ApplyLineAttributes( rSet, rObjData.eShapeType ); // #i28269#
ApplyFillAttributes( rIn, rSet, rObjData );
if ( rObjData.eShapeType != mso_sptNil || IsProperty( DFF_Prop_pVertices ) )
@@ -3392,7 +3408,7 @@ bool SvxMSDffManager::SeekToRec( SvStream& rSt, sal_uInt16 nRecId, sal_uLong nMa
}
while ( rSt.GetError() == 0 && rSt.Tell() < nMaxFilePos && !bRet );
if ( !bRet )
- rSt.Seek( nFPosMerk ); // restore orginal FilePos
+ rSt.Seek( nFPosMerk ); // restore original FilePos
return bRet;
}
@@ -3633,7 +3649,7 @@ Color SvxMSDffManager::MSO_CLR_ToColor( sal_uInt32 nColorCode, sal_uInt16 nConte
aColor = Color( (sal_uInt8)nR, (sal_uInt8)nG, (sal_uInt8)nB );
}
break;
- case 0x04 : // substract grey level RGB(p,p,p)
+ case 0x04 : // subtract grey level RGB(p,p,p)
{
sal_Int16 nR = (sal_Int16)aColor.GetRed() - (sal_Int16)nParameter;
sal_Int16 nG = (sal_Int16)aColor.GetGreen() - (sal_Int16)nParameter;
@@ -3647,7 +3663,7 @@ Color SvxMSDffManager::MSO_CLR_ToColor( sal_uInt32 nColorCode, sal_uInt16 nConte
aColor = Color( (sal_uInt8)nR, (sal_uInt8)nG, (sal_uInt8)nB );
}
break;
- case 0x05 : // substract from grey level RGB(p,p,p)
+ case 0x05 : // subtract from grey level RGB(p,p,p)
{
sal_Int16 nR = (sal_Int16)nParameter - (sal_Int16)aColor.GetRed();
sal_Int16 nG = (sal_Int16)nParameter - (sal_Int16)aColor.GetGreen();
@@ -6160,25 +6176,46 @@ void SvxMSDffManager::GetDrawingGroupContainerData( SvStream& rSt, sal_uLong nLe
nLenFBSE = nLength;
// ist FBSE gross genug fuer unsere Daten
sal_Bool bOk = ( nSkipBLIPLen + 4 + nSkipBLIPPos + 4 <= nLenFBSE );
+ bool bBLIPIsDirectlyEmbedded(false);
- if( bOk )
+ if(bOk)
{
- rSt.SeekRel( nSkipBLIPLen );
+ rSt.SeekRel(nSkipBLIPLen);
rSt >> nBLIPLen;
- rSt.SeekRel( nSkipBLIPPos );
+
+ // #125187# do not simply skip these four bytes, but read them. This value
+ // is zero when the BLIP is embedded to the FBSE directly following in the
+ // stream, else 1. Use this as hint to be more reliable (see below)
+ rSt >> nBLIPPos;
+
+ if(0 == nBLIPPos)
+ {
+ bBLIPIsDirectlyEmbedded = true;
+ }
+
rSt >> nBLIPPos;
bOk = rSt.GetError() == 0;
- nLength -= nSkipBLIPLen+ 4 + nSkipBLIPPos + 4;
+ nLength -= nSkipBLIPLen + 4 + nSkipBLIPPos + 4;
}
if( bOk )
{
- // Besonderheit:
- // Falls nBLIPLen kleiner ist als nLenFBSE UND nBLIPPos Null ist,
- // nehmen wir an, dass das Bild IM FBSE drin steht!
- if( (!nBLIPPos) && (nBLIPLen < nLenFBSE) )
+ // #125187# the original check to test if the BLIP is following embeded in the FBSE was
+ // was (!nBLIPPos && nBLIPLen < nLenFBSE), but there are ppt documents
+ // where this is not sufficient (what means that for BLIPs in the picture
+ // stream the same conditions can be true sometimes). I experimented with various
+ // ppt files and detected that the four bytes before reading the nBLIPPos
+ // contain a flag which describes that embedding more reliable, thus I will
+ // use it here now in the form of the bBLIPIsDirectlyEmbedded variable (see above).
+ // This modification works with all ppt files I found which use directly embedded
+ // BLIPs and with the file which showed the error. More work may be needed when
+ // exceptions to this more strict schema may show up, though.
+ if(0 == nBLIPPos && nBLIPLen < nLenFBSE && bBLIPIsDirectlyEmbedded)
+ {
+ // get BLIP file position as directly following embedded
nBLIPPos = rSt.Tell() + 4;
+ }
// Das hat ja fein geklappt!
// Wir merken uns, dass wir einen FBSE mehr im Pointer Array haben.
diff --git a/filter/source/msfilter/msocximex.cxx b/filter/source/msfilter/msocximex.cxx
index f101c3cc4d16..9b2a72cc96e8 100644
--- a/filter/source/msfilter/msocximex.cxx
+++ b/filter/source/msfilter/msocximex.cxx
@@ -113,7 +113,7 @@ long ReadAlign(SvStorageStream *pS, long nPos, int nAmount)
// referenced externally. On import from ms document try to save images for controls here.
// Images are stored in directory called temp in the user installation directory. Next version of OO/SO
// hopefully will address this issue and allow a choice e.g. images for controls to be stored as links
-// or embeded in the document.
+// or embedded in the document.
// [out]location path to the stream to where the image is to be stored,
// if same name exists in folder then this function calcuates a new name
@@ -740,7 +740,7 @@ class ContainerRecReader
{
sal_uInt32 nUnknown_32b; // unknown 32 bit structure, flags ?
sal_uInt16 nUnknown_16b; // unknown 16 bit structure
- sal_uInt16 nMysteryLen; // lenght of unknown sub record
+ sal_uInt16 nMysteryLen; // length of unknown sub record
*pS >> nUnknown_32b;
*pS >> nUnknown_16b;
@@ -4487,7 +4487,7 @@ OCX_Control * SvxMSConvertOCXControls::OCX_Factory(
//Begin nasty hack
/*
There is a truly horrible thing with EditControls and FormattedField
- Controls, they both pretend to have an EDITBOX ClassId for compability
+ Controls, they both pretend to have an EDITBOX ClassId for compatibility
reasons, at some stage in the future hopefully there will be a proper
FormulaField ClassId rather than this piggybacking two controls onto the
same ClassId, when this happens uncomment the FORMULAFIELD in the OCX_Tab
@@ -4566,8 +4566,8 @@ sal_Bool SvxMSConvertOCXControls::ReadOCXStream( SvStorageRef& rSrc1,
pSt->SetNumberFormatInt( NUMBERFORMAT_INT_LITTLEENDIAN );
/*Get Class Id of this object, see if it is one of the types
- *that this importer can handle, call the appropiate handler
- to read that control, and call the appropiate handler to
+ *that this importer can handle, call the appropriate handler
+ to read that control, and call the appropriate handler to
insert that control
*/
@@ -4603,8 +4603,8 @@ sal_Bool SvxMSConvertOCXControls::ReadOCXExcelKludgeStream(
{
sal_Bool bRet=sal_False;
/*Get Class Id of this object, see if it is one of the types
- *that this importer can handle, call the appropiate handler
- to read that control, and call the appropiate handler to
+ *that this importer can handle, call the appropriate handler
+ to read that control, and call the appropriate handler to
insert that control
*/
/*The Excel Kludge is to concatenate a class id with a contents
diff --git a/filter/source/msfilter/msvbahelper.cxx b/filter/source/msfilter/msvbahelper.cxx
index 431262cc78bc..e9f657447c45 100644
--- a/filter/source/msfilter/msvbahelper.cxx
+++ b/filter/source/msfilter/msvbahelper.cxx
@@ -423,7 +423,7 @@ MacroResolvedInfo resolveVBAMacro( SfxObjectShell* pShell, const rtl::OUString&
return aRes;
}
-// Treat the args as possible inouts ( convertion at bottom of method )
+// Treat the args as possible inouts ( conversion at bottom of method )
sal_Bool executeMacro( SfxObjectShell* pShell, const String& sMacroName, uno::Sequence< uno::Any >& aArgs, uno::Any& aRet, const uno::Any& /*aCaller*/)
{
sal_Bool bRes = sal_False;
diff --git a/filter/source/msfilter/svxmsbas.cxx b/filter/source/msfilter/svxmsbas.cxx
index 5c02f056b154..309faf40dac8 100644
--- a/filter/source/msfilter/svxmsbas.cxx
+++ b/filter/source/msfilter/svxmsbas.cxx
@@ -313,7 +313,7 @@ sal_Bool SvxImportMSVBasic::ImportCode_Impl( const String& rStorageName,
const String &sBasicModule = aVBA.GetStreamName( i);
#endif
/* #117718# expose information regarding type of Module
- * Class, Form or plain 'ould VBA module with a REM statment
+ * Class, Form or plain 'ould VBA module with a REM statement
* at the top of the module. Mapping of Module Name
* to type is performed in VBA_Impl::Open() method,
* ( msvbasic.cxx ) by examining the PROJECT stream.
diff --git a/filter/source/svg/svgexport.cxx b/filter/source/svg/svgexport.cxx
index 1938ee451db2..bf47d2a7d529 100644
--- a/filter/source/svg/svgexport.cxx
+++ b/filter/source/svg/svgexport.cxx
@@ -31,6 +31,8 @@
#include "svgfilter.hxx"
#include "impsvgdialog.hxx"
+#include <com/sun/star/graphic/XPrimitiveFactory2D.hpp>
+
#include <svx/unopage.hxx>
#include <svx/unoshape.hxx>
#include <svx/svdpage.hxx>
@@ -41,6 +43,8 @@
#include <svx/svdlegacy.hxx>
#include <svx/svdetc.hxx>
+using namespace ::com::sun::star::graphic;
+using namespace ::com::sun::star::geometry;
using ::rtl::OUString;
// -------------
@@ -215,6 +219,11 @@ sal_Bool SVGFilter::implExport( const Sequence< PropertyValue >& rDescriptor )
{
pValue[ i ].Value >>= maFilterData;
}
+ else if( pValue[ i ].Name.equalsAscii( "ShapeSelection" ) )
+ {
+ // #124608# read selection if given
+ pValue[ i ].Value >>= maShapeSelection;
+ }
}
// if no filter data is given use stored/prepared ones
@@ -395,6 +404,7 @@ sal_Bool SVGFilter::implExportDocument( const Reference< XDrawPages >& rxMasterP
"SVGFilter::implExportDocument: invalid parameter" );
OUString aAttr;
+ sal_Int32 nDocX = 0, nDocY = 0; // #124608#
sal_Int32 nDocWidth = 0, nDocHeight = 0;
sal_Int32 nVisible = -1, nVisibleMaster = -1;
sal_Bool bRet = sal_False;
@@ -405,10 +415,61 @@ sal_Bool SVGFilter::implExportDocument( const Reference< XDrawPages >& rxMasterP
const Reference< XPropertySet > xDefaultPagePropertySet( mxDefaultPage, UNO_QUERY );
const Reference< XExtendedDocumentHandler > xExtDocHandler( mpSVGExport->GetDocHandler(), UNO_QUERY );
- if( xDefaultPagePropertySet.is() )
+ // #124608#
+ mbExportSelection = maShapeSelection.is() && maShapeSelection->getCount();
+
+ if(xDefaultPagePropertySet.is())
{
- xDefaultPagePropertySet->getPropertyValue( B2UCONST( "Width" ) ) >>= nDocWidth;
- xDefaultPagePropertySet->getPropertyValue( B2UCONST( "Height" ) ) >>= nDocHeight;
+ xDefaultPagePropertySet->getPropertyValue(B2UCONST("Width")) >>= nDocWidth;
+ xDefaultPagePropertySet->getPropertyValue(B2UCONST("Height")) >>= nDocHeight;
+ }
+
+ if(mbExportSelection)
+ {
+ // #124608# create BoundRange and set nDocX, nDocY, nDocWidth and nDocHeight
+ basegfx::B2DRange aShapeRange;
+
+ Reference< XPrimitiveFactory2D > xPrimitiveFactory(
+ mxMSF->createInstance(
+ String(RTL_CONSTASCII_USTRINGPARAM("com.sun.star.comp.graphic.PrimitiveFactory2D"))),
+ UNO_QUERY);
+
+ // use XPrimitiveFactory2D and go the way over getting the primitives; this
+ // will give better precision (doubles) and be based on the true object
+ // geometry. If needed aViewInformation may be expanded to carry a view
+ // resolution for which to prepare the geometry.
+ if(xPrimitiveFactory.is())
+ {
+ Reference< XShape > xShapeCandidate;
+ const Sequence< PropertyValue > aViewInformation;
+ const Sequence< PropertyValue > aParams;
+
+ for(sal_Int32 a(0); a < maShapeSelection->getCount(); a++)
+ {
+ if((maShapeSelection->getByIndex(a) >>= xShapeCandidate) && xShapeCandidate.is())
+ {
+ const Sequence< Reference< XPrimitive2D > > aPrimitiveSequence(
+ xPrimitiveFactory->createPrimitivesFromXShape( xShapeCandidate, aParams ));
+ const sal_Int32 nCount(aPrimitiveSequence.getLength());
+
+ for(sal_Int32 nIndex = 0; nIndex < nCount; nIndex++)
+ {
+ const RealRectangle2D aRect(aPrimitiveSequence[nIndex]->getRange(aViewInformation));
+
+ aShapeRange.expand(basegfx::B2DTuple(aRect.X1, aRect.Y1));
+ aShapeRange.expand(basegfx::B2DTuple(aRect.X2, aRect.Y2));
+ }
+ }
+ }
+ }
+
+ if(!aShapeRange.isEmpty())
+ {
+ nDocX = basegfx::fround(aShapeRange.getMinX());
+ nDocY = basegfx::fround(aShapeRange.getMinY());
+ nDocWidth = basegfx::fround(aShapeRange.getWidth());
+ nDocHeight = basegfx::fround(aShapeRange.getHeight());
+ }
}
if( xExtDocHandler.is() && !mpSVGExport->IsUseTinyProfile() )
@@ -431,11 +492,23 @@ sal_Bool SVGFilter::implExportDocument( const Reference< XDrawPages >& rxMasterP
mpSVGExport->AddAttribute( XML_NAMESPACE_NONE, "height", aAttr );
#endif
- aAttr = B2UCONST( "0 0 " );
+ // #124608# set viewBox explicitely to the exported content
+ if(mbExportSelection)
+ {
+ aAttr = OUString::valueOf( nDocX );
+ aAttr += B2UCONST( " " );
+ aAttr += OUString::valueOf( nDocY );
+ aAttr += B2UCONST( " " );
+ }
+ else
+ {
+ aAttr = B2UCONST( "0 0 " );
+ }
+
aAttr += OUString::valueOf( nDocWidth );
aAttr += B2UCONST( " " );
aAttr += OUString::valueOf( nDocHeight );
- mpSVGExport->SetViewBox( Rectangle( Point(), Size( nDocWidth, nDocHeight ) ) );
+ mpSVGExport->SetViewBox( Rectangle( Point(nDocX, nDocY), Size( nDocWidth, nDocHeight ) ) );
mpSVGExport->AddAttribute( XML_NAMESPACE_NONE, "viewBox", aAttr );
mpSVGExport->AddAttribute( XML_NAMESPACE_NONE, "preserveAspectRatio", B2UCONST( "xMidYMid" ) );
mpSVGExport->AddAttribute( XML_NAMESPACE_NONE, "fill-rule", B2UCONST( "evenodd" ) );
@@ -509,8 +582,17 @@ sal_Bool SVGFilter::implExportDocument( const Reference< XDrawPages >& rxMasterP
if( -1 != nVisible )
{
- if( bSinglePage )
- implExportPages( rxMasterPages, nVisibleMaster, nVisibleMaster, nVisibleMaster, sal_True );
+ if(bSinglePage)
+ {
+ if(mbExportSelection)
+ {
+ // #124608# export a given object selection, so no MasterPage export at all
+ }
+ else
+ {
+ implExportPages(rxMasterPages,nVisibleMaster,nVisibleMaster,nVisibleMaster,sal_True);
+ }
+ }
else
{
implGenerateMetaData( rxMasterPages, rxDrawPages );
@@ -625,7 +707,17 @@ sal_Bool SVGFilter::implExportPages( const Reference< XDrawPages >& rxPages,
if( xDrawPage.is() )
{
- Reference< XShapes > xShapes( xDrawPage, UNO_QUERY );
+ Reference< XShapes > xShapes;
+
+ if(mbExportSelection)
+ {
+ // #124608# export a given object selection
+ xShapes = maShapeSelection;
+ }
+ else
+ {
+ xShapes = Reference< XShapes >( xDrawPage, UNO_QUERY );
+ }
if( xShapes.is() )
{
@@ -862,6 +954,7 @@ sal_Bool SVGFilter::implCreateObjects( const Reference< XDrawPages >& rxMasterPa
{
if( SVG_EXPORT_ALLPAGES == nPageToExport )
{
+ // export the whole document
sal_Int32 i, nCount;
for( i = 0, nCount = rxMasterPages->getCount(); i < nCount; ++i )
@@ -901,34 +994,43 @@ sal_Bool SVGFilter::implCreateObjects( const Reference< XDrawPages >& rxMasterPa
DBG_ASSERT( nPageToExport >= 0 && nPageToExport < rxDrawPages->getCount(),
"SVGFilter::implCreateObjects: invalid page number to export" );
- Reference< XDrawPage > xDrawPage;
-
- rxDrawPages->getByIndex( nPageToExport ) >>= xDrawPage;
+ if(mbExportSelection)
+ {
+ // #124608# export a given object selection
+ implCreateObjectsFromShapes(maShapeSelection);
+ }
+ else
+ {
+ // export a given xDrawPage
+ Reference< XDrawPage > xDrawPage;
- if( xDrawPage.is() )
- {
- Reference< XMasterPageTarget > xMasterTarget( xDrawPage, UNO_QUERY );
+ rxDrawPages->getByIndex(nPageToExport) >>= xDrawPage;
- if( xMasterTarget.is() )
+ if(xDrawPage.is())
{
- Reference< XDrawPage > xMasterPage( xMasterTarget->getMasterPage() );
+ Reference< XMasterPageTarget > xMasterTarget(xDrawPage,UNO_QUERY);
- if( xMasterPage.is() )
+ if(xMasterTarget.is())
{
- Reference< XShapes > xShapes( xMasterPage, UNO_QUERY );
+ Reference< XDrawPage > xMasterPage(xMasterTarget->getMasterPage());
- implCreateObjectsFromBackground( xMasterPage );
+ if(xMasterPage.is())
+ {
+ Reference< XShapes > xShapes(xMasterPage,UNO_QUERY);
+
+ implCreateObjectsFromBackground(xMasterPage);
- if( xShapes.is() )
- implCreateObjectsFromShapes( xShapes );
+ if(xShapes.is())
+ implCreateObjectsFromShapes(xShapes);
+ }
}
- }
- Reference< XShapes > xShapes( xDrawPage, UNO_QUERY );
+ Reference< XShapes > xShapes(xDrawPage,UNO_QUERY);
- if( xShapes.is() )
- implCreateObjectsFromShapes( xShapes );
- }
+ if(xShapes.is())
+ implCreateObjectsFromShapes(xShapes);
+ }
+ }
}
return sal_True;
diff --git a/filter/source/svg/svgfilter.cxx b/filter/source/svg/svgfilter.cxx
index e7f3a3f5c8f8..4e4c5abfd47c 100644
--- a/filter/source/svg/svgfilter.cxx
+++ b/filter/source/svg/svgfilter.cxx
@@ -32,6 +32,7 @@
#include <com/sun/star/drawing/XDrawView.hpp>
#include <com/sun/star/frame/XDesktop.hdl>
#include <com/sun/star/frame/XController.hdl>
+#include <com/sun/star/view/XSelectionSupplier.hpp>
#define SVG_FILTER_SERVICE_NAME "com.sun.star.comp.Draw.SVGFilter"
#define SVG_FILTER_IMPLEMENTATION_NAME SVG_FILTER_SERVICE_NAME
@@ -51,7 +52,22 @@ SVGFilter::SVGFilter( const Reference< XMultiServiceFactory > &rxMSF ) :
mpSVGWriter( NULL ),
mpDefaultSdrPage( NULL ),
mpSdrModel( NULL ),
- mbPresentation( sal_False )
+ mbPresentation( sal_False ),
+ mpObjects( NULL ),
+ mxSrcDoc(),
+#ifdef SOLAR_JAVA
+ mxDstDoc(),
+#endif
+ mxDefaultPage(),
+ maFilterData(),
+ maShapeSelection(),
+ mbExportSelection(false),
+ maUniqueIdVector(),
+ mnMasterSlideId(0),
+ mnSlideId(0),
+ mnDrawingGroupId(0),
+ mnDrawingId(0),
+ maOldFieldHdl()
{
}
@@ -86,6 +102,20 @@ sal_Bool SAL_CALL SVGFilter::filter( const Sequence< PropertyValue >& rDescripto
#endif
if( mxSrcDoc.is() )
{
+ // #124608# detext selection
+ sal_Bool bSelectionOnly = sal_False;
+ bool bGotSelection(false);
+ Reference< drawing::XShapes > xShapes;
+
+ // #124608# extract Single selection wanted from dialog return values
+ for ( sal_Int32 nInd = 0; nInd < rDescriptor.getLength(); nInd++ )
+ {
+ if ( rDescriptor[nInd].Name.equalsAscii( "SelectionOnly" ) )
+ {
+ rDescriptor[nInd].Value >>= bSelectionOnly;
+ }
+ }
+
uno::Reference< frame::XDesktop > xDesktop( mxMSF->createInstance( ::rtl::OUString::createFromAscii( "com.sun.star.frame.Desktop" ) ),
uno::UNO_QUERY);
if( xDesktop.is() )
@@ -110,22 +140,66 @@ sal_Bool SAL_CALL SVGFilter::filter( const Sequence< PropertyValue >& rDescripto
getPropertyValue( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Number" ) ) ) >>= nCurrentPageNumber;
}
}
+
+ if(bSelectionOnly)
+ {
+ // #124608# when selection only is wanted, get the current object selection
+ // from the DrawView
+ Reference< view::XSelectionSupplier > xSelection (xController, UNO_QUERY);
+
+ if (xSelection.is())
+ {
+ uno::Any aSelection;
+
+ if(xSelection->getSelection() >>= aSelection)
+ {
+ bGotSelection = (sal_True == ( aSelection >>= xShapes ));
+ }
+ }
+ }
}
}
}
- Sequence< PropertyValue > aNewDescriptor( rDescriptor );
-
- if( nCurrentPageNumber > 0 )
+ if(bSelectionOnly && bGotSelection && 0 == xShapes->getCount())
{
- const sal_uInt32 nOldLength = rDescriptor.getLength();
-
- aNewDescriptor.realloc( nOldLength + 1 );
- aNewDescriptor[ nOldLength ].Name = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "PagePos" ) );
- aNewDescriptor[ nOldLength ].Value <<= static_cast< sal_Int16 >( nCurrentPageNumber - 1 );
+ // #124608# export selection, got xShapes but no shape selected -> nothing
+ // to export, we are done (maybe return true, but a hint that nothing was done
+ // may be useful; it may have happened by error)
+ bRet = sal_False;
}
+ else
+ {
+ Sequence< PropertyValue > aNewDescriptor(rDescriptor);
+ const bool bSinglePage(nCurrentPageNumber > 0);
+
+ if(bSinglePage || bGotSelection)
+ {
+ const sal_uInt32 nOldLength = rDescriptor.getLength();
+ sal_uInt32 nInsert(nOldLength);
+
+ aNewDescriptor.realloc(nOldLength + (bSinglePage ? 1 : 0) + (bGotSelection ? 1 : 0));
+
+ if(bSinglePage)
+ {
+ aNewDescriptor[nInsert].Name = ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("PagePos"));
+ aNewDescriptor[nInsert].Value <<= static_cast<sal_Int16>(nCurrentPageNumber - 1);
+ nInsert++;
+ }
- bRet = implExport( aNewDescriptor );
+ if(bGotSelection)
+ {
+ // #124608# add retrieved ShapeSelection if export of only selected shapes is wanted
+ // so that the filter implementation can use it
+ aNewDescriptor[nInsert].Name = ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("ShapeSelection"));
+ aNewDescriptor[nInsert].Value <<= xShapes;
+ // reactivate this when you add other properties to aNewDescriptor
+ // nInsert++;
+ }
+ }
+
+ bRet = implExport(aNewDescriptor);
+ }
}
else
bRet = sal_False;
diff --git a/filter/source/svg/svgfilter.hxx b/filter/source/svg/svgfilter.hxx
index 97a660eed7f1..b4822079ad2f 100644
--- a/filter/source/svg/svgfilter.hxx
+++ b/filter/source/svg/svgfilter.hxx
@@ -246,6 +246,11 @@ private:
#endif
Reference< XDrawPage > mxDefaultPage;
Sequence< PropertyValue > maFilterData;
+
+ // #124608# explicit ShapeSelection for export when export of the selection is wanted
+ Reference< XShapes > maShapeSelection;
+ bool mbExportSelection;
+
UniqueIdVector maUniqueIdVector;
sal_Int32 mnMasterSlideId;
sal_Int32 mnSlideId;
diff --git a/filter/source/svg/svgwriter.cxx b/filter/source/svg/svgwriter.cxx
index 416020c03d62..26f3d2ad78d7 100644
--- a/filter/source/svg/svgwriter.cxx
+++ b/filter/source/svg/svgwriter.cxx
@@ -1647,7 +1647,11 @@ void SVGActionWriter::ImplWriteActions( const GDIMetaFile& rMtf,
if(aStartArrow.Count())
{
mapCurShape->maShapePolyPoly = aStartArrow;
- mapCurShape->maId = *pElementId + B2UCONST("_") + ::rtl::OUString::valueOf(nEntryCount++);
+
+ if( pElementId ) // #i124825# pElementId is optinal, may be zero
+ {
+ mapCurShape->maId = *pElementId + B2UCONST("_") + ::rtl::OUString::valueOf(nEntryCount++);
+ }
ImplWriteShape( *mapCurShape );
}
@@ -1655,7 +1659,11 @@ void SVGActionWriter::ImplWriteActions( const GDIMetaFile& rMtf,
if(aEndArrow.Count())
{
mapCurShape->maShapePolyPoly = aEndArrow;
- mapCurShape->maId = *pElementId + B2UCONST("_") + ::rtl::OUString::valueOf(nEntryCount++);
+
+ if( pElementId ) // #i124825# pElementId is optinal, may be zero
+ {
+ mapCurShape->maId = *pElementId + B2UCONST("_") + ::rtl::OUString::valueOf(nEntryCount++);
+ }
ImplWriteShape( *mapCurShape );
}
diff --git a/filter/source/xmlfilterdetect/filterdetect.cxx b/filter/source/xmlfilterdetect/filterdetect.cxx
index 0e07630961c3..cf7c28da852b 100644
--- a/filter/source/xmlfilterdetect/filterdetect.cxx
+++ b/filter/source/xmlfilterdetect/filterdetect.cxx
@@ -186,7 +186,7 @@ Reference< com::sun::star::frame::XModel > xModel;
}
catch(Exception &)
{
- OSL_ENSURE( sal_False, "An Exception occured while opening File stream" );
+ OSL_ENSURE( sal_False, "An Exception occurred while opening File stream" );
}
if(sTypeName.equalsAscii(""))
{
diff --git a/filter/source/xslt/common/math.xsl b/filter/source/xslt/common/math.xsl
index 6f2c9afd1064..5ea625607c97 100644
--- a/filter/source/xslt/common/math.xsl
+++ b/filter/source/xslt/common/math.xsl
@@ -35,7 +35,7 @@ Public Functions
abs(x)
max(x1,x2)
min(x1,x2)
- power(x,power(interger only), rounding-factor=100)
+ power(x,power(integer only), rounding-factor=100)
sqrt(x, rounding-factor=100)
convert2radian(x,rounding-factor=100)
convert2degree(x,rounding-factor=100)
diff --git a/filter/source/xslt/export/spreadsheetml/ooo2spreadsheetml.xsl b/filter/source/xslt/export/spreadsheetml/ooo2spreadsheetml.xsl
index 48f846b75b68..439ae4ed3ca6 100644
--- a/filter/source/xslt/export/spreadsheetml/ooo2spreadsheetml.xsl
+++ b/filter/source/xslt/export/spreadsheetml/ooo2spreadsheetml.xsl
@@ -83,7 +83,7 @@
<xsl:param name="targetBaseURL" select="'./'" />
<!-- OPTIONAL: (MANDATORY: for input document with relative internal links)
- To access contents of a office file (content like the meta.xml, styles.xml file or graphics) a URL could be choosen.
+ To access contents of a office file (content like the meta.xml, styles.xml file or graphics) a URL could be chosen.
This could be even a JAR URL. The sourceBase of the content URL "jar:file:/C:/temp/Test.sxw!/content.xml" would be
"jar:file:/C:/temp/Test.sxw!/" for example.
When working with OpenOffice API a Package-URL encoded over HTTP can be used to access the jared contents of the the jared document. -->
diff --git a/filter/source/xslt/export/spreadsheetml/table.xsl b/filter/source/xslt/export/spreadsheetml/table.xsl
index 7aae5ddfa0db..e2accc359fc1 100644
--- a/filter/source/xslt/export/spreadsheetml/table.xsl
+++ b/filter/source/xslt/export/spreadsheetml/table.xsl
@@ -471,7 +471,7 @@
<xsl:param name="calculatedCellPosition" select="1" /><!-- the later table position of the current cell -->
<xsl:param name="calculatedRowPosition" /><!-- the later table position of the current row -->
<xsl:param name="setIndex" select="false()" /> <!-- if not '0' @ss:Index used for neglecting repeteated empty cells -->
- <xsl:param name="repetition" select="@table:number-columns-repeated" /> <!-- used for explicit writen out cells -->
+ <xsl:param name="repetition" select="@table:number-columns-repeated" /> <!-- used for explicit written out cells -->
<xsl:param name="repetitionCellPosition" select="$calculatedCellPosition" /><!-- during repetition formula needs exact cell positioning -->
<xsl:param name="nextMatchedCellPosition"><!-- the later table position of the next cell -->
<xsl:choose>
diff --git a/filter/source/xslt/export/wordml/ooo2wordml_draw.xsl b/filter/source/xslt/export/wordml/ooo2wordml_draw.xsl
index 76b5bcb8cebb..5f4013e64202 100644
--- a/filter/source/xslt/export/wordml/ooo2wordml_draw.xsl
+++ b/filter/source/xslt/export/wordml/ooo2wordml_draw.xsl
@@ -49,7 +49,7 @@
</xsl:variable>
<xsl:choose>
<!--
- deal with captions and frames first. draw:text-box is a powerfull element in OOo, its GUI name is frame. And OOo use it to contain Captions
+ deal with captions and frames first. draw:text-box is a powerful element in OOo, its GUI name is frame. And OOo use it to contain Captions
Since there is not a corresponding object in word, so we draw the text-box itself and its children separately. If it look like a Caption only frame
we'll adjust the text-box position to make it look pretty
-->
diff --git a/filter/source/xslt/export/wordml/ooo2wordml_field.xsl b/filter/source/xslt/export/wordml/ooo2wordml_field.xsl
index 954b79d42a79..6909b71aa07d 100644
--- a/filter/source/xslt/export/wordml/ooo2wordml_field.xsl
+++ b/filter/source/xslt/export/wordml/ooo2wordml_field.xsl
@@ -359,7 +359,7 @@ $field_number_format_style ='ćŁč, 莰, 揁, ...' ">
</w:fldSimple>
</xsl:template>
<xsl:template name="field_convert_linebreak">
- <!-- this template convert the linebreak (&#x0A; and &#x0D;) in continous text to Ms word element<w:br/> -->
+ <!-- this template convert the linebreak (&#x0A; and &#x0D;) in continuous text to Ms word element<w:br/> -->
<xsl:param name="field_input_text"/>
<xsl:if test="not (contains($field_input_text,'&#x0A;'))">
<w:t>
diff --git a/filter/source/xslt/import/spreadsheetml/spreadsheetml2ooo.xsl b/filter/source/xslt/import/spreadsheetml/spreadsheetml2ooo.xsl
index 934f0fa662e6..e6e19d0900e0 100644
--- a/filter/source/xslt/import/spreadsheetml/spreadsheetml2ooo.xsl
+++ b/filter/source/xslt/import/spreadsheetml/spreadsheetml2ooo.xsl
@@ -4274,7 +4274,7 @@
<xsl:when test="ss:Alignment/@ss:Vertical = 'Center'">middle</xsl:when>
<xsl:when test="ss:Alignment/@ss:Vertical = 'Bottom'">bottom</xsl:when>
<xsl:when test="ss:Alignment/@ss:Vertical = 'Automatic'">middle</xsl:when>
- <!-- actually for vertical writen characters, not supported by StarOffice/OpenOffice now yet -->
+ <!-- actually for vertical written characters, not supported by StarOffice/OpenOffice now yet -->
<xsl:otherwise>middle</xsl:otherwise>
</xsl:choose>
</xsl:variable>
diff --git a/filter/source/xslt/import/uof2/uof2odf.xsl b/filter/source/xslt/import/uof2/uof2odf.xsl
index be6c3fbd877e..363c7f26f928 100644
--- a/filter/source/xslt/import/uof2/uof2odf.xsl
+++ b/filter/source/xslt/import/uof2/uof2odf.xsl
@@ -2162,10 +2162,10 @@
</xsl:for-each>
</xsl:template>
<xsl:template match="歗:äžŠäž‹æ ‡ç±»ćž‹_4143" mode="sentence">
- <xsl:variable name="positon">
+ <xsl:variable name="position">
<xsl:value-of select="."/>
</xsl:variable>
- <xsl:attribute name="style:text-position"><xsl:choose><xsl:when test="contains($positon,'sup')">super 58%</xsl:when><xsl:when test="contains($positon,'sub')">sub 58%</xsl:when></xsl:choose></xsl:attribute>
+ <xsl:attribute name="style:text-position"><xsl:choose><xsl:when test="contains($position,'sup')">super 58%</xsl:when><xsl:when test="contains($position,'sub')">sub 58%</xsl:when></xsl:choose></xsl:attribute>
</xsl:template>
<xsl:template match="歗:猩攟_4144" mode="sentence">
<xsl:attribute name="style:text-scale"><xsl:value-of select="."/>%</xsl:attribute>
@@ -13233,7 +13233,7 @@ iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAIAAABLbSncAAAAKElEQVR4nGNRZrhz57+yCuNdBjCAs1kg
</xsl:when>
</xsl:choose>
<xsl:attribute name="draw:opacity">100%</xsl:attribute>
- <!-- no Foreward Color data in ODF -->
+ <!-- no Forward Color data in ODF -->
<xsl:if test="ć›ŸèĄš:æ•°æźæ ‡èź°_E70E/@èƒŒæ™Żè‰ČE711">
<xsl:attribute name="draw:stroke" select="'solid'"/>
<xsl:attribute name="svg:stroke-color" select="ć›ŸèĄš:æ•°æźæ ‡èź°_E70E/@èƒŒæ™Żè‰ČE711"/>
diff --git a/filter/source/xslt/import/wordml/wordml2ooo.xsl b/filter/source/xslt/import/wordml/wordml2ooo.xsl
index 89ac99ddeb07..1f4b1fb4632f 100644
--- a/filter/source/xslt/import/wordml/wordml2ooo.xsl
+++ b/filter/source/xslt/import/wordml/wordml2ooo.xsl
@@ -233,7 +233,7 @@
<xsl:template match="w:body">
<xsl:element name="office:body">
<xsl:element name="office:text">
- <!-- to add the sequece variable declaration at the begining of the office:body G.Y.-->
+ <!-- to add the sequece variable declaration at the beginning of the office:body G.Y.-->
<text:sequence-decls>
<xsl:call-template name="default_seqence_declaration"/>
<xsl:apply-templates select="/w:wordDocument/w:body//w:instrText[substring(normalize-space(text()),1,3) = 'SEQ' ] | /w:wordDocument/w:body//w:fldSimple[substring(normalize-space(@w:instr),1,3) = 'SEQ' ] " mode="sequence_declare"/>
diff --git a/filter/source/xslt/import/wordml/wordml2ooo_draw.xsl b/filter/source/xslt/import/wordml/wordml2ooo_draw.xsl
index bbc202e90d1f..afe739dd213f 100644
--- a/filter/source/xslt/import/wordml/wordml2ooo_draw.xsl
+++ b/filter/source/xslt/import/wordml/wordml2ooo_draw.xsl
@@ -1720,7 +1720,7 @@
<xsl:number from="/w:wordDocument/w:body" level="any" count="v:textpath" format="1"/>
</xsl:variable>
<xsl:variable name="font-family">
- <!-- we need remove the addtional &quot; from font-family -->
+ <!-- we need remove the additional &quot; from font-family -->
<xsl:value-of select="translate(substring-before(substring-after(@style,'font-family:'),';'), '&quot;' ,'')"/>
</xsl:variable>
<xsl:variable name="font-size">
diff --git a/filter/source/xslt/import/wordml/wordml2ooo_path.xsl b/filter/source/xslt/import/wordml/wordml2ooo_path.xsl
index 1deb000815a9..4c9d1da103ea 100644
--- a/filter/source/xslt/import/wordml/wordml2ooo_path.xsl
+++ b/filter/source/xslt/import/wordml/wordml2ooo_path.xsl
@@ -1529,7 +1529,7 @@
<xsl:value-of select="concat( $curr-char,$second-char , ':' , $position +2)"/>
</xsl:if>
<xsl:if test="$isvalid = '0' ">
- <xsl:message>ooo2wordml_path.xsl: Error command occured </xsl:message>
+ <xsl:message>ooo2wordml_path.xsl: Error command occurred </xsl:message>
</xsl:if>
</xsl:when>
<xsl:when test="$curr-char = 'n' ">
@@ -1546,7 +1546,7 @@
<xsl:value-of select="concat( $curr-char,$second-char , ':' , $position +2)"/>
</xsl:if>
<xsl:if test="$isvalid = '0' ">
- <xsl:message>ooo2wordml_path.xsl: Error command occured </xsl:message>
+ <xsl:message>ooo2wordml_path.xsl: Error command occurred </xsl:message>
</xsl:if>
</xsl:when>
<xsl:when test="$curr-char = 'w' ">
@@ -1563,7 +1563,7 @@
<xsl:value-of select="concat( $curr-char,$second-char , ':' , $position +2)"/>
</xsl:if>
<xsl:if test="$isvalid = '0' ">
- <xsl:message>ooo2wordml_path.xsl: Error command occured </xsl:message>
+ <xsl:message>ooo2wordml_path.xsl: Error command occurred </xsl:message>
</xsl:if>
</xsl:when>
<xsl:when test="$curr-char = 'q' ">
@@ -1581,7 +1581,7 @@
<xsl:value-of select="concat( $curr-char,$second-char , ':' , $position +2)"/>
</xsl:if>
<xsl:if test="$isvalid = '0' ">
- <xsl:message>ooo2wordml_path.xsl: Error command occured </xsl:message>
+ <xsl:message>ooo2wordml_path.xsl: Error command occurred </xsl:message>
</xsl:if>
</xsl:when>
<xsl:when test="$curr-char = 'h' ">
@@ -1597,7 +1597,7 @@
<xsl:value-of select="concat( $curr-char,$second-char , ':' , $position +2)"/>
</xsl:if>
<xsl:if test="$isvalid = '0' ">
- <xsl:message>ooo2wordml_path.xsl: Error command occured </xsl:message>
+ <xsl:message>ooo2wordml_path.xsl: Error command occurred </xsl:message>
</xsl:if>
</xsl:when>
<xsl:when test="string-length(translate($curr-char , 'mlcxetrv' ,'')) = 0 ">
diff --git a/filter/source/xslt/odf2xhtml/export/common/table/table_cells.xsl b/filter/source/xslt/odf2xhtml/export/common/table/table_cells.xsl
index abbb3fa5b4cf..b4a042f77967 100644
--- a/filter/source/xslt/odf2xhtml/export/common/table/table_cells.xsl
+++ b/filter/source/xslt/odf2xhtml/export/common/table/table_cells.xsl
@@ -64,7 +64,7 @@
<!-- matching cells to give out -> covered table cells are not written out -->
<xsl:template match="table:table-cell">
<xsl:param name="globalData" />
- <!-- position of the current input cell to get the correct colum style (hidden are also counted)-->
+ <!-- position of the current input cell to get the correct column style (hidden are also counted)-->
<xsl:param name="allTableColumns" />
<xsl:param name="maxRowLength" />
<xsl:param name="tableDataType" />
@@ -101,7 +101,7 @@
<xsl:choose>
<xsl:when test="function-available('common:node-set')">
<xsl:call-template name="create-table-cell">
- <!-- position of the current input cell to get the correct colum style (hidden are also counted)-->
+ <!-- position of the current input cell to get the correct column style (hidden are also counted)-->
<xsl:with-param name="allTableColumns" select="$allTableColumns" />
<xsl:with-param name="maxRowLength" select="$maxRowLength" />
<xsl:with-param name="precedingColumns" select="sum(common:node-set($precedingCells)/*)" />
@@ -111,7 +111,7 @@
</xsl:when>
<xsl:when test="function-available('xalan:nodeset')">
<xsl:call-template name="create-table-cell">
- <!-- position of the current input cell to get the correct colum style (hidden are also counted)-->
+ <!-- position of the current input cell to get the correct column style (hidden are also counted)-->
<xsl:with-param name="allTableColumns" select="$allTableColumns" />
<xsl:with-param name="maxRowLength" select="$maxRowLength" />
<xsl:with-param name="precedingColumns" select="sum(xalan:nodeset($precedingCells)/*)" />
@@ -121,7 +121,7 @@
</xsl:when>
<xsl:when test="function-available('xt:node-set')">
<xsl:call-template name="create-table-cell">
- <!-- position of the current input cell to get the correct colum style (hidden are also counted)-->
+ <!-- position of the current input cell to get the correct column style (hidden are also counted)-->
<xsl:with-param name="allTableColumns" select="$allTableColumns" />
<xsl:with-param name="maxRowLength" select="$maxRowLength" />
<xsl:with-param name="precedingColumns" select="sum(xt:node-set($precedingCells)/*)" />
@@ -138,7 +138,7 @@
<!-- current node is a table:table-cell -->
<xsl:template name="create-table-cell">
- <!-- position of the current input cell to get the correct colum style (hidden are also counted)-->
+ <!-- position of the current input cell to get the correct column style (hidden are also counted)-->
<xsl:param name="allTableColumns" />
<xsl:param name="globalData" />
<xsl:param name="maxRowLength" />
diff --git a/filter/source/xslt/odf2xhtml/export/common/table/table_rows.xsl b/filter/source/xslt/odf2xhtml/export/common/table/table_rows.xsl
index ece5fb12b04e..6fb56108b295 100644
--- a/filter/source/xslt/odf2xhtml/export/common/table/table_rows.xsl
+++ b/filter/source/xslt/odf2xhtml/export/common/table/table_rows.xsl
@@ -66,7 +66,7 @@
<xsl:param name="allTableColumns" />
<!-- Some Office Calc documents simulate a background by repeating one of the later cells until end of used space
- (The value of "table:number-columns-repeated" is enourmous). Writing out all these cells would be fatal in time
+ (The value of "table:number-columns-repeated" is enormous). Writing out all these cells would be fatal in time
and output size. Therefore, this global variable shows us the longest row with content. -->
<xsl:variable name="maxRowLength" select="count($allTableColumns/table:table-column)" />
<xsl:if test="$debugEnabled">
diff --git a/filter/source/xslt/odf2xhtml/export/common/table_of_content.xsl b/filter/source/xslt/odf2xhtml/export/common/table_of_content.xsl
index 31b31b44efed..42b1b3b05040 100644
--- a/filter/source/xslt/odf2xhtml/export/common/table_of_content.xsl
+++ b/filter/source/xslt/odf2xhtml/export/common/table_of_content.xsl
@@ -452,7 +452,7 @@ Scenarios unmatched:
</xsl:choose>
</xsl:template>
- <!-- As the span width will be mapped to column width, the preceding span widths have to be substracted -->
+ <!-- As the span width will be mapped to column width, the preceding span widths have to be subtracted -->
<xsl:template name="create-cell-width">
<xsl:param name="width"/>
<xsl:param name="unit"/>
diff --git a/filter/source/xslt/odf2xhtml/export/xhtml/body.xsl b/filter/source/xslt/odf2xhtml/export/xhtml/body.xsl
index a2373c5685b2..b8aae4774e31 100644
--- a/filter/source/xslt/odf2xhtml/export/xhtml/body.xsl
+++ b/filter/source/xslt/odf2xhtml/export/xhtml/body.xsl
@@ -797,7 +797,7 @@
<xsl:when test="$createDiv and normalize-space(.) != ''">
<!-- every following frame sibling till the next draw:frame
have to be incapuslated within a div with left indent.
- To be moved alltogether arcording the indent (usually right) -->
+ To be moved altogether arcording the indent (usually right) -->
<xsl:comment>Next 'div' added for floating.</xsl:comment>
<xsl:element name="div">
<xsl:attribute name="style">
@@ -881,7 +881,7 @@
- <!-- As draw:fame may occure within more elements than in text:p and draw:page -->
+ <!-- As draw:fame may occur within more elements than in text:p and draw:page -->
<xsl:template match="draw:frame">
<xsl:param name="globalData"/>
<xsl:param name="previousFrameWidths" select="0"/>
@@ -990,7 +990,7 @@
<xsl:if test="@text:anchor-type='paragraph'">
<xsl:comment>Next 'div' is emulating the top hight of a draw:frame.</xsl:comment>
<!-- When the svg:y is set relativ to the paragraph content, the best way to emulate a positive height,
- is to add an invisbile division inbetween with a height.
+ is to add an invisbile division between with a height.
Often text will flow into this 'gap', which is handled separately!
-->
<xsl:if test="$svgY &gt; 0">
@@ -1551,7 +1551,7 @@
B)
Since OASIS Open Document XML (implemented in OOo2.0) only one parent type exists for list items
- the 'text:list' element. The XHTML element 'ol', 'ul' will be choosen upon the list style type.
+ the 'text:list' element. The XHTML element 'ol', 'ul' will be chosen upon the list style type.
C)
An Office list may be spread over the whole document. Linked by their style and text:continue-numbering='true'.
diff --git a/filter/source/xslt/odf2xhtml/export/xhtml/opendoc2xhtml.xsl b/filter/source/xslt/odf2xhtml/export/xhtml/opendoc2xhtml.xsl
index 2652e321167c..34868592f3b4 100644
--- a/filter/source/xslt/odf2xhtml/export/xhtml/opendoc2xhtml.xsl
+++ b/filter/source/xslt/odf2xhtml/export/xhtml/opendoc2xhtml.xsl
@@ -95,7 +95,7 @@
<xsl:param name="targetURL" select="'./'" />
<!-- OPTIONAL: (MANDATORY: for input document with relative internal links)
- To access contents of a office file (content like the meta.xml, styles.xml file or graphics) a URL could be choosen.
+ To access contents of a office file (content like the meta.xml, styles.xml file or graphics) a URL could be chosen.
This could be even a JAR URL. The sourceBase of the content URL "jar:file:/C:/temp/Test.sxw!/content.xml" would be
"jar:file:/C:/temp/Test.sxw!/" for example.
When working with OpenOffice API a Package-URL encoded over HTTP can be used to access the jared contents of the the jared document. -->
diff --git a/filter/source/xsltdialog/xmlfiltertestdialog.cxx b/filter/source/xsltdialog/xmlfiltertestdialog.cxx
index 5530e51c8028..06c2467a4d34 100644
--- a/filter/source/xsltdialog/xmlfiltertestdialog.cxx
+++ b/filter/source/xsltdialog/xmlfiltertestdialog.cxx
@@ -378,7 +378,7 @@ void XMLFilterTestDialog::onExportBrowse()
if( (nFound == 15) && (aType.getLength() && aService == mpFilterInfo->maDocumentService) )
{
- // see if this filter is not supressed in dialog
+ // see if this filter is not suppressed in dialog
if( (nFlags & 0x1000) == 0 )
{
aAny = xTypeDetection->getByName( aType );
diff --git a/filter/source/xsltfilter/com/sun/star/comp/xsltfilter/Base64.java b/filter/source/xsltfilter/com/sun/star/comp/xsltfilter/Base64.java
index b51fe7e6e3c7..ee1464ca38ac 100644
--- a/filter/source/xsltfilter/com/sun/star/comp/xsltfilter/Base64.java
+++ b/filter/source/xsltfilter/com/sun/star/comp/xsltfilter/Base64.java
@@ -473,7 +473,7 @@ public class Base64
* anywhere along their length by specifying
* <var>srcOffset</var> and <var>destOffset</var>.
* This method does not check to make sure your arrays
- * are large enough to accomodate <var>srcOffset</var> + 3 for
+ * are large enough to accommodate <var>srcOffset</var> + 3 for
* the <var>source</var> array or <var>destOffset</var> + 4 for
* the <var>destination</var> array.
* The actual number of significant bytes in your array is
@@ -826,7 +826,7 @@ public class Base64
* anywhere along their length by specifying
* <var>srcOffset</var> and <var>destOffset</var>.
* This method does not check to make sure your arrays
- * are large enough to accomodate <var>srcOffset</var> + 4 for
+ * are large enough to accommodate <var>srcOffset</var> + 4 for
* the <var>source</var> array or <var>destOffset</var> + 3 for
* the <var>destination</var> array.
* This method returns the actual number of bytes that
diff --git a/forms/qa/complex/forms/CheckOGroupBoxModel.java b/forms/qa/complex/forms/CheckOGroupBoxModel.java
index 32d5834df108..fa47baa33d8a 100644
--- a/forms/qa/complex/forms/CheckOGroupBoxModel.java
+++ b/forms/qa/complex/forms/CheckOGroupBoxModel.java
@@ -117,15 +117,15 @@ public class CheckOGroupBoxModel
}
catch (com.sun.star.beans.PropertyVetoException e)
{
- fail("Exception occured while trying to change the properties.");
+ fail("Exception occurred while trying to change the properties.");
}
catch (com.sun.star.lang.IllegalArgumentException e)
{
- fail("Exception occured while trying to change the properties.");
+ fail("Exception occurred while trying to change the properties.");
}
catch (com.sun.star.lang.WrappedTargetException e)
{
- fail("Exception occured while trying to change the properties.");
+ fail("Exception occurred while trying to change the properties.");
} // end of try-catch
assertTrue("Listener was not called.", ml.wasListenerCalled());
diff --git a/forms/source/component/Columns.cxx b/forms/source/component/Columns.cxx
index c307de658074..484ce1c9ef5f 100644
--- a/forms/source/component/Columns.cxx
+++ b/forms/source/component/Columns.cxx
@@ -194,7 +194,7 @@ Sequence<Type> SAL_CALL OGridColumn::getTypes() throw(RuntimeException)
Any SAL_CALL OGridColumn::queryAggregation( const Type& _rType ) throw (RuntimeException)
{
Any aReturn;
- // some functionality at our aggregate cannot be reasonably fullfilled here.
+ // some functionality at our aggregate cannot be reasonably fulfilled here.
if ( _rType.equals(::getCppuType(static_cast< Reference< XFormComponent >* >(NULL)))
|| _rType.equals(::getCppuType(static_cast< Reference< XServiceInfo >* >(NULL)))
|| _rType.equals(::getCppuType(static_cast< Reference< XBindableValue >* >(NULL)))
diff --git a/forms/source/component/DatabaseForm.cxx b/forms/source/component/DatabaseForm.cxx
index 7ab4b71fe59e..a7012ca7fcc6 100644
--- a/forms/source/component/DatabaseForm.cxx
+++ b/forms/source/component/DatabaseForm.cxx
@@ -90,7 +90,7 @@
#include <ctype.h>
#include <hash_map>
-// compatiblity: DatabaseCursorType is dead, but for compatiblity reasons we still have to write it ...
+// compatibility: DatabaseCursorType is dead, but for compatibility reasons we still have to write it ...
namespace com {
namespace sun {
namespace star {
@@ -3099,7 +3099,7 @@ void SAL_CALL ODatabaseForm::rowSetChanged(const EventObject& /*event*/) throw(
// if our parent is an ODatabaseForm, too, then after this rowSetChanged we'll get a "reloaded"
// or a "loaded" event.
// If somebody gave us another parent which is an XRowSet but doesn't handle an execute as
- // "load" respectivly "reload" ... can't do anything ....
+ // "load" respectively "reload" ... can't do anything ....
}
//------------------------------------------------------------------------------
diff --git a/forms/source/component/FormComponent.cxx b/forms/source/component/FormComponent.cxx
index 34ad5eabd7e0..73cf49db0cb1 100644
--- a/forms/source/component/FormComponent.cxx
+++ b/forms/source/component/FormComponent.cxx
@@ -1330,7 +1330,7 @@ OBoundControlModel::OBoundControlModel(
m_aValuePropertyType = _pOriginal->m_aValuePropertyType;
m_aControlSource = _pOriginal->m_aControlSource;
m_bInputRequired = _pOriginal->m_bInputRequired;
- // m_xLabelControl, though being a property, is not to be cloned, not even the reference will be transfered.
+ // m_xLabelControl, though being a property, is not to be cloned, not even the reference will be transferred.
// (the former should be clear - a clone of the object we're only referencing does not make sense)
// (the second would violate the restriction for label controls that they're part of the
// same form component hierarchy - we ourself are no part, yet, so we can't have a label control)
@@ -1967,7 +1967,7 @@ void SAL_CALL OBoundControlModel::propertyChange( const PropertyChangeEvent& evt
// if the DBColumn value changed, transfer it to the control
if ( evt.PropertyName.equals( PROPERTY_VALUE ) )
{
- OSL_ENSURE( evt.Source == getField(), "OBoundControlModel::propertyChange: value changes from components other than our database colum?" );
+ OSL_ENSURE( evt.Source == getField(), "OBoundControlModel::propertyChange: value changes from components other than our database column?" );
osl::MutexGuard aGuard(m_aMutex);
if ( m_bForwardValueChanges && m_xColumn.is() )
transferDbValueToControl();
@@ -2246,7 +2246,7 @@ void OBoundControlModel::impl_connectDatabaseColumn_noNotify( bool _bFromReload
}
// now that we're connected (more or less, even if we did not find a column),
- // we definately want to forward any potentially occuring value changes
+ // we definitely want to forward any potentially occurring value changes
m_bForwardValueChanges = sal_True;
// let derived classes react on this new connection
diff --git a/forms/source/component/ListBox.cxx b/forms/source/component/ListBox.cxx
index 65c6e7cee269..db395a5b2946 100644
--- a/forms/source/component/ListBox.cxx
+++ b/forms/source/component/ListBox.cxx
@@ -1257,7 +1257,7 @@ namespace frm
{
Any aReturn;
- // by definition, multiple selected entries are transfered as NULL if the
+ // by definition, multiple selected entries are transferred as NULL if the
// binding does not support string lists
if ( _rSelectSequence.getLength() <= 1 )
{
diff --git a/forms/source/component/RadioButton.hxx b/forms/source/component/RadioButton.hxx
index dc9c85f7b375..7e59f7984a77 100644
--- a/forms/source/component/RadioButton.hxx
+++ b/forms/source/component/RadioButton.hxx
@@ -77,7 +77,7 @@ protected:
private:
/** sets the given value as new State at the aggregate
@precond
- our mutex is aquired exactly once
+ our mutex is acquired exactly once
*/
void setNewAggregateState( const ::com::sun::star::uno::Any& _rValue );
};
diff --git a/forms/source/component/clickableimage.cxx b/forms/source/component/clickableimage.cxx
index a159a91ce2b4..3a63e7010a9d 100644
--- a/forms/source/component/clickableimage.cxx
+++ b/forms/source/component/clickableimage.cxx
@@ -600,7 +600,7 @@ namespace frm
Any SAL_CALL OClickableImageBaseModel::queryAggregation(const Type& _rType) throw (RuntimeException)
{
// order matters:
- // we definately want to "overload" the XImageProducer interface of our aggregate,
+ // we definitely want to "overload" the XImageProducer interface of our aggregate,
// thus check OClickableImageBaseModel_Base (which provides this) first
Any aReturn = OClickableImageBaseModel_Base::queryInterface( _rType );
diff --git a/forms/source/component/propertybaghelper.cxx b/forms/source/component/propertybaghelper.cxx
index 6222435ab828..7876858620ee 100644
--- a/forms/source/component/propertybaghelper.cxx
+++ b/forms/source/component/propertybaghelper.cxx
@@ -131,7 +131,7 @@ namespace frm
if ( ( nHandle != -1 ) && rPropInfo.fillPropertyMembersByHandle( NULL, NULL, nHandle ) )
nHandle = -1;
- // seach a free handle in <math>F_1009</math>
+ // search a free handle in <math>F_1009</math>
if ( nHandle == -1 )
{
sal_Int32 nPrime = 1009;
diff --git a/forms/source/inc/FormComponent.hxx b/forms/source/inc/FormComponent.hxx
index 88a62abdf368..86eb85a2b1d3 100644
--- a/forms/source/inc/FormComponent.hxx
+++ b/forms/source/inc/FormComponent.hxx
@@ -194,7 +194,7 @@ public:
the aggregate. In this case, you <em>have</em> to call doSetDelegator within your
own constructor.
- This is helpfull, if your derived class wants to cache an interface of the aggregate.
+ This is helpful, if your derived class wants to cache an interface of the aggregate.
In this case, the aggregate needs to be queried for this interface <b>before</b> the
<member scope="com::sun::star::uno">XAggregation::setDelegator</member> call.
@@ -674,7 +674,7 @@ private:
const sal_Bool m_bSupportsExternalBinding : 1; // do we support XBindableValue?
const sal_Bool m_bSupportsValidation : 1; // do we support XValidatable?
sal_Bool m_bForwardValueChanges : 1; // do we currently handle changes in the bound database field?
- sal_Bool m_bTransferingValue : 1; // true if we're currently transfering our value to an external binding
+ sal_Bool m_bTransferingValue : 1; // true if we're currently transferring our value to an external binding
sal_Bool m_bIsCurrentValueValid : 1; // flag specifying whether our current value is valid, relative to our external validator
sal_Bool m_bBindingControlsRO : 1; // is our ReadOnly property currently controlled by our external binding?
sal_Bool m_bBindingControlsEnable : 1; // is our Enabled property currently controlled by our external binding?
diff --git a/forms/source/richtext/richtextcontrol.cxx b/forms/source/richtext/richtextcontrol.cxx
index ffdece17b2c1..57bb9b6965f9 100644
--- a/forms/source/richtext/richtextcontrol.cxx
+++ b/forms/source/richtext/richtextcontrol.cxx
@@ -243,7 +243,7 @@ namespace frm
DBG_ASSERT( pPeer, "ORichTextControl::createPeer: invalid peer returned!" );
if ( pPeer )
{
- // by definition, the returned component is aquired once
+ // by definition, the returned component is acquired once
pPeer->release();
// announce the peer to the base class
@@ -344,7 +344,7 @@ namespace frm
// the peer itself
ORichTextPeer* pPeer = new ORichTextPeer;
- pPeer->acquire(); // by definition, the returned object is aquired once
+ pPeer->acquire(); // by definition, the returned object is acquired once
// the VCL control for the peer
RichTextControl* pRichTextControl = new RichTextControl( pEngine, _pParentWindow, _nStyle, NULL, pPeer );
diff --git a/forms/source/richtext/richtextcontrol.hxx b/forms/source/richtext/richtextcontrol.hxx
index 2298fee9195b..6959bfd929d0 100644
--- a/forms/source/richtext/richtextcontrol.hxx
+++ b/forms/source/richtext/richtextcontrol.hxx
@@ -109,7 +109,7 @@ namespace frm
public:
/** factory method
@return
- a new ORichTextPeer instance, which has been aquired once!
+ a new ORichTextPeer instance, which has been acquired once!
*/
static ORichTextPeer* Create(
const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControlModel >& _rxModel,
diff --git a/forms/source/richtext/richtextimplcontrol.cxx b/forms/source/richtext/richtextimplcontrol.cxx
index 21749f091b13..222c7878fe61 100644
--- a/forms/source/richtext/richtextimplcontrol.cxx
+++ b/forms/source/richtext/richtextimplcontrol.cxx
@@ -67,7 +67,7 @@ namespace frm
,m_bHasEverBeenShown ( false )
{
OSL_ENSURE( m_pAntiImpl, "RichTextControlImpl::RichTextControlImpl: invalid window!" );
- OSL_ENSURE( m_pEngine, "RichTextControlImpl::RichTextControlImpl: invalid edit engine! This will *definately* crash!" );
+ OSL_ENSURE( m_pEngine, "RichTextControlImpl::RichTextControlImpl: invalid edit engine! This will *definitely* crash!" );
m_pViewport = new RichTextViewPort( m_pAntiImpl );
m_pViewport->setAttributeInvalidationHandler( LINK( this, RichTextControlImpl, OnInvalidateAllAttributes ) );
@@ -124,7 +124,7 @@ namespace frm
// type (Latin, Asian, Complex). However, if we have an observer who is interested
// in the state of this attribute, we have to kind of *merge* the three attributes
// to only one.
- // This is usefull in case the observer is for instance a toolbox which contains only
+ // This is useful in case the observer is for instance a toolbox which contains only
// an, e.g., "bold" slot, and thus not interested in the particular script type of the
// current selection.
SvxScriptSetItem aNormalizedSet( (WhichId)_pHandler->first, *m_pView->GetAttribs().GetPool() );
@@ -307,7 +307,7 @@ namespace frm
// the AutoPaperSize bits set.
// So in order to be properly notified, we would need the AutoPaperSize. But, with
// AutoPaperSize, other things do not work anymore: Either, when we set a MaxAutoPaperSize,
- // then the view does automatic soft line breaks at the paper end - which we definately do
+ // then the view does automatic soft line breaks at the paper end - which we definitely do
// want. Or, if we did not set a MaxAutoPaperSize, then the view does not automatically scroll
// anymore in horizontal direction.
// So this is some kind of lose-lose situation ... :(
diff --git a/forms/source/solar/component/navbarcontrol.cxx b/forms/source/solar/component/navbarcontrol.cxx
index e0ffc53d619b..3101ef4fbb7f 100644
--- a/forms/source/solar/component/navbarcontrol.cxx
+++ b/forms/source/solar/component/navbarcontrol.cxx
@@ -180,7 +180,7 @@ namespace frm
ONavigationBarPeer* pPeer = ONavigationBarPeer::Create( maContext.getLegacyServiceFactory(), pParentWin, getModel() );
DBG_ASSERT( pPeer, "ONavigationBarControl::createPeer: invalid peer returned!" );
if ( pPeer )
- // by definition, the returned component is aquired once
+ // by definition, the returned component is acquired once
pPeer->release();
// announce the peer to the base class
@@ -275,7 +275,7 @@ namespace frm
// the peer itself
ONavigationBarPeer* pPeer = new ONavigationBarPeer( _rxORB );
- pPeer->acquire(); // by definition, the returned object is aquired once
+ pPeer->acquire(); // by definition, the returned object is acquired once
// the VCL control for the peer
Reference< XModel > xContextDocument( getXModel( _rxModel ) );
diff --git a/forms/source/solar/component/navbarcontrol.hxx b/forms/source/solar/component/navbarcontrol.hxx
index 3d8b12994866..d574553269a2 100644
--- a/forms/source/solar/component/navbarcontrol.hxx
+++ b/forms/source/solar/component/navbarcontrol.hxx
@@ -99,7 +99,7 @@ namespace frm
public:
/** factory method
@return
- a new ONavigationBarPeer instance, which has been aquired once!
+ a new ONavigationBarPeer instance, which has been acquired once!
*/
static ONavigationBarPeer* Create(
const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& _rxORB,
diff --git a/forms/source/solar/inc/navtoolbar.hxx b/forms/source/solar/inc/navtoolbar.hxx
index bc6464c04717..787eb9e6fab6 100644
--- a/forms/source/solar/inc/navtoolbar.hxx
+++ b/forms/source/solar/inc/navtoolbar.hxx
@@ -85,7 +85,7 @@ namespace frm
then the states of the features are updated
@param _pDispatcher
- the new (or old) dispatcher. The caller is reponsible for
+ the new (or old) dispatcher. The caller is responsible for
ensuring the life time of the object does exceed the life time
of the tool bar instance.
*/
diff --git a/forms/source/xforms/binding.cxx b/forms/source/xforms/binding.cxx
index c1722b8ab081..0f7e6ac45279 100644
--- a/forms/source/xforms/binding.cxx
+++ b/forms/source/xforms/binding.cxx
@@ -674,7 +674,7 @@ void Binding::bind( bool bForceRebind )
}
}
- // now evaluate remaining MIPs in the apropriate context
+ // now evaluate remaining MIPs in the appropriate context
maReadonly.evaluate( rContext );
maRelevant.evaluate( rContext );
maRequired.evaluate( rContext );
@@ -1274,7 +1274,7 @@ void Binding::handleEvent( const XEvent_t& xEvent )
// the modification of the 'mnDeferModifyNotifications'-member
// is necessary to prevent infinite notication looping.
- // This can happend in case the binding which caused
+ // This can happened in case the binding which caused
// the notification chain is listening to those events
// as well...
bool bPreserveValueModified = mbValueModified;
diff --git a/forms/source/xforms/convert.hxx b/forms/source/xforms/convert.hxx
index 4cd804ca098f..035902149a2b 100644
--- a/forms/source/xforms/convert.hxx
+++ b/forms/source/xforms/convert.hxx
@@ -94,7 +94,7 @@ public:
sal_Int16 _nWhitespaceTreatment
);
- /** replace all occurences 0x08, 0x0A, 0x0D with 0x20
+ /** replace all occurrences 0x08, 0x0A, 0x0D with 0x20
*/
static ::rtl::OUString replaceWhitespace( const ::rtl::OUString& _rString );
diff --git a/forms/source/xforms/datatypes.hxx b/forms/source/xforms/datatypes.hxx
index 9bcb3c1f0c0a..cb0dadc74cf9 100644
--- a/forms/source/xforms/datatypes.hxx
+++ b/forms/source/xforms/datatypes.hxx
@@ -219,11 +219,11 @@ namespace xforms
The normalization must respect the "<" and "==" relations on the value
space. That is, if two values are equal, their normalizations must be equal, too.
- Similarily, if <code>foo</code> is less than <code>bar</code>, the same
+ Similarly, if <code>foo</code> is less than <code>bar</code>, the same
must hold for their normalizations.
@param _rValue
- the value to translate. Guranteed to be not <NULL/>, and of type <member>ValueType</member>
+ the value to translate. Guaranteed to be not <NULL/>, and of type <member>ValueType</member>
@param _rDoubleValue
output parameter to hold the resulting double value
*/
diff --git a/forms/source/xforms/model.cxx b/forms/source/xforms/model.cxx
index 7f6bd4effca6..6162b3848a6a 100644
--- a/forms/source/xforms/model.cxx
+++ b/forms/source/xforms/model.cxx
@@ -289,7 +289,7 @@ void Model::dbg_assertInvariant() const
//
-// MIP managment
+// MIP management
//
void Model::addMIP( void* pTag, const XNode_t& xNode, const MIP& rMIP )
diff --git a/forms/source/xforms/model_ui.cxx b/forms/source/xforms/model_ui.cxx
index b440b2972d78..4c3a203b0350 100644
--- a/forms/source/xforms/model_ui.cxx
+++ b/forms/source/xforms/model_ui.cxx
@@ -134,7 +134,7 @@ void lcl_OutPosition( OUStringBuffer& rBuffer,
{
OSL_ENSURE( xNode->getParentNode().is(), "need parent" );
- // count # of occurences of this node
+ // count # of occurrences of this node
sal_Int32 nFound = 0;
sal_Int32 nPosition = -1;
if( xNode->getParentNode().is() )
diff --git a/formula/source/core/api/token.cxx b/formula/source/core/api/token.cxx
index 8694254ed409..0ac806d6d49f 100644
--- a/formula/source/core/api/token.cxx
+++ b/formula/source/core/api/token.cxx
@@ -1051,7 +1051,7 @@ bool FormulaMissingContext::AddMissing( FormulaTokenArray *pNewArr, const Missin
case ocOffset:
// FIXME: rather tough.
- // if arg 3 (height) ommitted, export arg1 (rows)
+ // if arg 3 (height) omitted, export arg1 (rows)
break;
default:
break;
diff --git a/fpicker/source/aqua/SalAquaFilePicker.cxx b/fpicker/source/aqua/SalAquaFilePicker.cxx
index 65bb422556b1..809e4633e209 100644
--- a/fpicker/source/aqua/SalAquaFilePicker.cxx
+++ b/fpicker/source/aqua/SalAquaFilePicker.cxx
@@ -86,7 +86,7 @@ using namespace ::com::sun::star::uno;
namespace
{
- // controling event notifications
+ // controlling event notifications
const bool STARTUP_SUSPENDED = true;
const bool STARTUP_ALIVE = false;
diff --git a/fpicker/source/aqua/SalAquaFolderPicker.cxx b/fpicker/source/aqua/SalAquaFolderPicker.cxx
index 3e40a8edfa68..f3bf06f6d3d4 100644
--- a/fpicker/source/aqua/SalAquaFolderPicker.cxx
+++ b/fpicker/source/aqua/SalAquaFolderPicker.cxx
@@ -73,7 +73,7 @@ using namespace ::com::sun::star::uno;
namespace
{
- // controling event notifications
+ // controlling event notifications
uno::Sequence<rtl::OUString> SAL_CALL FolderPicker_getSupportedServiceNames()
{
uno::Sequence<rtl::OUString> aRet(2);
diff --git a/fpicker/source/office/OfficeFilePicker.cxx b/fpicker/source/office/OfficeFilePicker.cxx
index c303976872d9..79af62b97e95 100644
--- a/fpicker/source/office/OfficeFilePicker.cxx
+++ b/fpicker/source/office/OfficeFilePicker.cxx
@@ -267,7 +267,7 @@ WinBits SvtFilePicker::getWinBits( WinBits& rExtraBits )
WinBits nBits = 0L;
rExtraBits = 0L;
- // set the standard bits acording to the service name
+ // set the standard bits according to the service name
if ( m_nServiceType == TemplateDescription::FILEOPEN_SIMPLE )
{
nBits = WB_OPEN;
diff --git a/fpicker/source/office/fpinteraction.cxx b/fpicker/source/office/fpinteraction.cxx
index 224acd01bec5..5fd6033460e0 100644
--- a/fpicker/source/office/fpinteraction.cxx
+++ b/fpicker/source/office/fpinteraction.cxx
@@ -93,7 +93,7 @@ namespace svt
// intercept some interesting interactions
- // The "does not exist" interaction will be supressed here completly.
+ // The "does not exist" interaction will be suppressed here completly.
if (m_eInterceptions & OFilePickerInteractionHandler::E_DOESNOTEXIST)
{
InteractiveIOException aIoException;
diff --git a/fpicker/source/office/fpsmartcontent.cxx b/fpicker/source/office/fpsmartcontent.cxx
index afdda61c0ab6..8c21084c833d 100644
--- a/fpicker/source/office/fpsmartcontent.cxx
+++ b/fpicker/source/office/fpsmartcontent.cxx
@@ -93,7 +93,7 @@ namespace svt
void SmartContent::enableDefaultInteractionHandler()
{
// Don't free the memory here! It will be done by the next
- // call automaticly - releasing of the uno reference ...
+ // call automatically - releasing of the uno reference ...
m_pOwnInteraction = NULL;
m_xOwnInteraction = Reference< XInteractionHandler >();
@@ -127,7 +127,7 @@ namespace svt
void SmartContent::disableInteractionHandler()
{
// Don't free the memory here! It will be done by the next
- // call automaticly - releasing of the uno reference ...
+ // call automatically - releasing of the uno reference ...
m_pOwnInteraction = NULL;
m_xOwnInteraction.clear();
@@ -201,12 +201,12 @@ namespace svt
else
bIs = m_pContent->isDocument();
- // from here on, we definately know that the content is valid
+ // from here on, we definitely know that the content is valid
m_eState = VALID;
}
catch( Exception& )
{
- // now we're definately invalid
+ // now we're definitely invalid
m_eState = INVALID;
}
return bIs;
@@ -224,12 +224,12 @@ namespace svt
m_pContent->getPropertyValue( ::rtl::OUString::createFromAscii( "Title" ) ) >>= sTitle;
_rTitle = sTitle;
- // from here on, we definately know that the content is valid
+ // from here on, we definitely know that the content is valid
m_eState = VALID;
}
catch( ::com::sun::star::uno::Exception& )
{
- // now we're definately invalid
+ // now we're definitely invalid
m_eState = INVALID;
}
}
@@ -252,14 +252,14 @@ namespace svt
String aParentURL = String( xParent->getIdentifier()->getContentIdentifier() );
bRet = ( aParentURL.Len() > 0 && aParentURL != (String)(m_pContent->getURL()) );
- // now we're definately valid
+ // now we're definitely valid
m_eState = VALID;
}
}
}
catch( const Exception& )
{
- // now we're definately invalid
+ // now we're definitely invalid
m_eState = INVALID;
}
return bRet;
@@ -287,12 +287,12 @@ namespace svt
}
}
- // now we're definately valid
+ // now we're definitely valid
m_eState = VALID;
}
catch( Exception& )
{
- // now we're definately invalid
+ // now we're definitely invalid
m_eState = INVALID;
}
return bRet;
diff --git a/fpicker/source/office/iodlg.cxx b/fpicker/source/office/iodlg.cxx
index cdca7b9b3b77..045086d7105e 100644
--- a/fpicker/source/office/iodlg.cxx
+++ b/fpicker/source/office/iodlg.cxx
@@ -2253,7 +2253,7 @@ short SvtFileDialog::PrepareExecute()
UpdateControls( aObj.GetMainURL( INetURLObject::NO_DECODE ) );
- // Somebody might want to enable some controls acording to the current filter
+ // Somebody might want to enable some controls according to the current filter
FilterSelect();
// Zustand der Steuerelemente anpassen.
@@ -3137,7 +3137,7 @@ void SvtFileDialog::setImage( sal_Int16 /*aImageFormat*/, const Any& rImage )
sal_Bool SvtFileDialog::setShowState( sal_Bool /*bShowState*/ )
{
// #97633 for the system filedialog it's
- // usefull to make the preview switchable
+ // useful to make the preview switchable
// because the preview occupies
// half of the size of the file listbox
// which is not the case here,
diff --git a/fpicker/source/unx/gnome/SalGtkFilePicker.cxx b/fpicker/source/unx/gnome/SalGtkFilePicker.cxx
index 01a4edec42a5..e613d71e841c 100644
--- a/fpicker/source/unx/gnome/SalGtkFilePicker.cxx
+++ b/fpicker/source/unx/gnome/SalGtkFilePicker.cxx
@@ -73,7 +73,7 @@ using namespace ::com::sun::star::uno;
namespace
{
- // controling event notifications
+ // controlling event notifications
const bool STARTUP_SUSPENDED = true;
const bool STARTUP_ALIVE = false;
diff --git a/fpicker/source/unx/gnome/SalGtkFolderPicker.cxx b/fpicker/source/unx/gnome/SalGtkFolderPicker.cxx
index 298ec456da91..e6ebe5b75ee0 100644
--- a/fpicker/source/unx/gnome/SalGtkFolderPicker.cxx
+++ b/fpicker/source/unx/gnome/SalGtkFolderPicker.cxx
@@ -66,7 +66,7 @@ using namespace ::com::sun::star::uno;
namespace
{
- // controling event notifications
+ // controlling event notifications
uno::Sequence<rtl::OUString> SAL_CALL FolderPicker_getSupportedServiceNames()
{
uno::Sequence<rtl::OUString> aRet(2);
diff --git a/fpicker/source/unx/kde4/KDE4FilePicker.cxx b/fpicker/source/unx/kde4/KDE4FilePicker.cxx
index c25751cbf84e..07d803bf119b 100644
--- a/fpicker/source/unx/kde4/KDE4FilePicker.cxx
+++ b/fpicker/source/unx/kde4/KDE4FilePicker.cxx
@@ -86,7 +86,7 @@ using namespace ::com::sun::star::uno;
namespace
{
- // controling event notifications
+ // controlling event notifications
const bool STARTUP_SUSPENDED = true;
const bool STARTUP_ALIVE = false;
diff --git a/fpicker/source/win32/filepicker/FileOpenDlg.hxx b/fpicker/source/win32/filepicker/FileOpenDlg.hxx
index 3e4977923f89..f36b29fe9451 100644
--- a/fpicker/source/win32/filepicker/FileOpenDlg.hxx
+++ b/fpicker/source/win32/filepicker/FileOpenDlg.hxx
@@ -209,10 +209,10 @@ public:
// the method returns:
// 0 - when the dialog was canceled by the user
// 1 - when the dialog was closed with ok
- // -1 - when an error occured
+ // -1 - when an error occurred
sal_Int16 SAL_CALL doModal();
- // returns the last dialog error that occured
+ // returns the last dialog error that occurred
sal_uInt32 SAL_CALL getLastDialogError() const;
// retrievs the currently selected file
diff --git a/fpicker/source/win32/filepicker/FilePicker.cxx b/fpicker/source/win32/filepicker/FilePicker.cxx
index 01294ef3a25a..ef9ba521beb3 100644
--- a/fpicker/source/win32/filepicker/FilePicker.cxx
+++ b/fpicker/source/win32/filepicker/FilePicker.cxx
@@ -66,7 +66,7 @@ using namespace ::com::sun::star::ui::dialogs::TemplateDescription;
namespace
{
- // controling event notifications
+ // controlling event notifications
const bool STARTUP_SUSPENDED = true;
const bool STARTUP_ALIVE = false;
diff --git a/fpicker/source/win32/filepicker/PreviewCtrl.cxx b/fpicker/source/win32/filepicker/PreviewCtrl.cxx
index 6b23790e9f89..21cad6690322 100644
--- a/fpicker/source/win32/filepicker/PreviewCtrl.cxx
+++ b/fpicker/source/win32/filepicker/PreviewCtrl.cxx
@@ -259,7 +259,7 @@ CFilePreview::CFilePreview(
wndClsEx.lpszClassName = PREVIEWWND_CLASS_NAME;
// register the preview window class
- // !!! Win95 - the window class will be unregistered automaticly
+ // !!! Win95 - the window class will be unregistered automatically
// if the dll is unloaded
// Win2000 - the window class must be unregistered manually
// if the dll is unloaded
@@ -414,7 +414,7 @@ sal_Bool SAL_CALL CFilePreview::show( sal_Bool bShow )
// if the preview is shown and enabled
// preview of the given file will be shown
// returns true on success or false if an error
-// occured (the file in not there or not accessible etc.)
+// occurred (the file in not there or not accessible etc.)
//---------------------------------------------------
sal_Bool SAL_CALL CFilePreview::update( const rtl::OUString& aFileName )
diff --git a/fpicker/source/win32/filepicker/PreviewCtrl.hxx b/fpicker/source/win32/filepicker/PreviewCtrl.hxx
index 18b32a32c821..f96cdf37fd6d 100644
--- a/fpicker/source/win32/filepicker/PreviewCtrl.hxx
+++ b/fpicker/source/win32/filepicker/PreviewCtrl.hxx
@@ -147,7 +147,7 @@ public:
// if the preview is shown and enabled
// preview of the given file will be shown
// returns true on success or false if an error
- // occured (the file in not there or not accessible etc.)
+ // occurred (the file in not there or not accessible etc.)
virtual sal_Bool SAL_CALL update( const rtl::OUString& aFileName );
protected:
diff --git a/fpicker/source/win32/filepicker/VistaFilePicker.cxx b/fpicker/source/win32/filepicker/VistaFilePicker.cxx
index 54abcf4d07db..486cb7bfb679 100644
--- a/fpicker/source/win32/filepicker/VistaFilePicker.cxx
+++ b/fpicker/source/win32/filepicker/VistaFilePicker.cxx
@@ -80,7 +80,7 @@ namespace vista{
namespace
{
- // controling event notifications
+ // controlling event notifications
const bool STARTUP_SUSPENDED = true;
const bool STARTUP_ALIVE = false;
@@ -321,7 +321,7 @@ void SAL_CALL VistaFilePicker::setDisplayDirectory(const ::rtl::OUString& sDirec
}
//-----------------------------------------------------------------------------------------
-// @deprecated cant be supported any longer ... see IDL description for further details
+// @deprecated can't be supported any longer ... see IDL description for further details
css::uno::Sequence< ::rtl::OUString > SAL_CALL VistaFilePicker::getFiles()
throw(css::uno::RuntimeException)
{
diff --git a/fpicker/source/win32/filepicker/VistaFilePickerImpl.cxx b/fpicker/source/win32/filepicker/VistaFilePickerImpl.cxx
index 79f8144e8b72..4d6046ffd672 100644
--- a/fpicker/source/win32/filepicker/VistaFilePickerImpl.cxx
+++ b/fpicker/source/win32/filepicker/VistaFilePickerImpl.cxx
@@ -876,7 +876,7 @@ void VistaFilePickerImpl::impl_sta_ShowDialogModal(const RequestRef& rRequest)
TFileSaveDialog iSave = m_iDialogSave;
// it's important to know if we are showing the dialog.
- // Some dialog interface methods cant be called then or some
+ // Some dialog interface methods can't be called then or some
// tasks must be done differently .-) (e.g. see impl_sta_getSelectedFiles())
m_bInExecute = sal_True;
diff --git a/fpicker/source/win32/filepicker/VistaFilePickerImpl.hxx b/fpicker/source/win32/filepicker/VistaFilePickerImpl.hxx
index f052db57cc64..4c19a6b00257 100644
--- a/fpicker/source/win32/filepicker/VistaFilePickerImpl.hxx
+++ b/fpicker/source/win32/filepicker/VistaFilePickerImpl.hxx
@@ -260,9 +260,9 @@ class VistaFilePickerImpl : private ::cppu::BaseMutex
void impl_sta_EnableControl(const RequestRef& rRequest);
//---------------------------------------------------------------------
- /** create all needed (optional!) UI controls adressed by the field nFeatures.
+ /** create all needed (optional!) UI controls addressed by the field nFeatures.
* The given number nFeatures is used as a flag field. Use const values FEATURE_XXX
- * to adress it.
+ * to address it.
*
* Internal new controls will be added to the dialog. Every control can be accessed
* by it's own control id. Those control ID must be one of the const set
diff --git a/fpicker/source/win32/filepicker/WinFileOpenImpl.cxx b/fpicker/source/win32/filepicker/WinFileOpenImpl.cxx
index 24754a16e94d..1e1ba364bd04 100644
--- a/fpicker/source/win32/filepicker/WinFileOpenImpl.cxx
+++ b/fpicker/source/win32/filepicker/WinFileOpenImpl.cxx
@@ -683,7 +683,7 @@ void SAL_CALL CWinFileOpenImpl::onSelChanged(HWND)
// string to the file name edit line
// this would overwritte our text when we would set
// the default name in onInitDone, so we have to
- // remeber that this is the first SelChanged message
+ // remember that this is the first SelChanged message
// and set the default name here to overwrite the
// windows setting
InitialSetDefaultName();
diff --git a/fpicker/source/win32/filepicker/dialogcustomcontrols.cxx b/fpicker/source/win32/filepicker/dialogcustomcontrols.cxx
index 27cef4531a50..041f8d034467 100644
--- a/fpicker/source/win32/filepicker/dialogcustomcontrols.cxx
+++ b/fpicker/source/win32/filepicker/dialogcustomcontrols.cxx
@@ -70,7 +70,7 @@ void SAL_CALL CDialogCustomControlBase::AlignToBuddy(HWND aBuddyHandle)
int cy_new = rcBuddy.bottom - rcBuddy.top;
// keep the vertical position because
- // the Windows dialog controler does
+ // the Windows dialog controller does
// this job
RECT rcMe;
GetWindowRect(m_CustomControlHandle,&rcMe);
diff --git a/fpicker/source/win32/filepicker/dibpreview.cxx b/fpicker/source/win32/filepicker/dibpreview.cxx
index 328ae764da96..75b450b5bee3 100644
--- a/fpicker/source/win32/filepicker/dibpreview.cxx
+++ b/fpicker/source/win32/filepicker/dibpreview.cxx
@@ -419,7 +419,7 @@ ATOM SAL_CALL CDIBPreview::RegisterDibPreviewWindowClass()
wndClsEx.lpszClassName = PREVIEWWND_CLASS_NAME;
// register the preview window class
- // !!! Win95 - the window class will be unregistered automaticly
+ // !!! Win95 - the window class will be unregistered automatically
// if the dll is unloaded
// Win2000 - the window class must be unregistered manually
// if the dll is unloaded
diff --git a/fpicker/source/win32/filepicker/filepickerstate.cxx b/fpicker/source/win32/filepicker/filepickerstate.cxx
index cd7d022220fd..16d698f2848e 100644
--- a/fpicker/source/win32/filepicker/filepickerstate.cxx
+++ b/fpicker/source/win32/filepicker/filepickerstate.cxx
@@ -665,7 +665,7 @@ inline sal_Bool SAL_CALL CExecuteFilePickerState::IsListboxControl( HWND hwndCon
//---------------------------------------------
// because listboxes (comboboxes) and their labels
-// are seperated we have to translate the listbox
+// are separated we have to translate the listbox
// id to their corresponding label id
// the convention is that the label id of a listbox
// is the id of the listbox + 100
diff --git a/fpicker/source/win32/filepicker/helppopupwindow.cxx b/fpicker/source/win32/filepicker/helppopupwindow.cxx
index 72cad22675b5..1024a2cc08a7 100644
--- a/fpicker/source/win32/filepicker/helppopupwindow.cxx
+++ b/fpicker/source/win32/filepicker/helppopupwindow.cxx
@@ -561,7 +561,7 @@ ATOM SAL_CALL CHelpPopupWindow::RegisterWindowClass( )
wndClsEx.lpszClassName = HELPPOPUPWND_CLASS_NAME;
// register the preview window class
- // !!! Win95 - the window class will be unregistered automaticly
+ // !!! Win95 - the window class will be unregistered automatically
// if the dll is unloaded
// Win2000 - the window class must be unregistered manually
// if the dll is unloaded
diff --git a/fpicker/source/win32/filepicker/helppopupwindow.hxx b/fpicker/source/win32/filepicker/helppopupwindow.hxx
index f28ed1adff29..4021e9d9ebde 100644
--- a/fpicker/source/win32/filepicker/helppopupwindow.hxx
+++ b/fpicker/source/win32/filepicker/helppopupwindow.hxx
@@ -86,9 +86,9 @@ public:
/*
Shows the window with the text that was last set.
- The posistion is the prefered position. The window
+ The position is the preferred position. The window
may itself show at a slightly different position
- if it fits not at the prefered position.
+ if it fits not at the preferred position.
*/
void SAL_CALL show( sal_Int32 x, sal_Int32 y );
diff --git a/fpicker/source/win32/filepicker/workbench/Test_fps.cxx b/fpicker/source/win32/filepicker/workbench/Test_fps.cxx
index fb738ba8efe5..c4b616887f01 100644
--- a/fpicker/source/win32/filepicker/workbench/Test_fps.cxx
+++ b/fpicker/source/win32/filepicker/workbench/Test_fps.cxx
@@ -267,7 +267,7 @@ int SAL_CALL main(int nArgc, char* Argv[], char* Env[] )
OUString rdbName = OUString( RTL_CONSTASCII_USTRINGPARAM( RDB_SYSPATH ) );
Reference< XMultiServiceFactory > g_xFactory( createRegistryServiceFactory( rdbName ) );
- // Print a message if an error occured.
+ // Print a message if an error occurred.
if ( g_xFactory.is() == sal_False )
{
OSL_ENSURE(sal_False, "Can't create RegistryServiceFactory");
@@ -366,7 +366,7 @@ int SAL_CALL main(int nArgc, char* Argv[], char* Env[] )
// Cast factory to XComponent
Reference< XComponent > xComponent( g_xFactory, UNO_QUERY );
- // Print a message if an error occured.
+ // Print a message if an error occurred.
if ( xComponent.is() == sal_False )
{
OSL_ENSURE(sal_False, "Error shuting down");
diff --git a/fpicker/source/win32/folderpicker/MtaFop.cxx b/fpicker/source/win32/folderpicker/MtaFop.cxx
index 556ad48c9460..54c88ceb0175 100644
--- a/fpicker/source/win32/folderpicker/MtaFop.cxx
+++ b/fpicker/source/win32/folderpicker/MtaFop.cxx
@@ -197,7 +197,7 @@ CMtaFolderPicker::~CMtaFolderPicker( )
// force the destruction of the sta thread request window
// and the end of the thread
- // remeber: DestroyWindow may only be called from within
+ // remember: DestroyWindow may only be called from within
// the thread that created the window
if ( IsWindow( m_hwndStaRequestWnd ) )
{
@@ -205,7 +205,7 @@ CMtaFolderPicker::~CMtaFolderPicker( )
// we place unregister class here because
// if we have a valid window we must have
- // sucessfully registered a window class
+ // successfully registered a window class
// if the creation of the window itself
// failed after registering the window
// class we have unregistered it immediately
diff --git a/fpicker/source/win32/folderpicker/MtaFop.hxx b/fpicker/source/win32/folderpicker/MtaFop.hxx
index 69e147ec477c..8f2d4c52fba5 100644
--- a/fpicker/source/win32/folderpicker/MtaFop.hxx
+++ b/fpicker/source/win32/folderpicker/MtaFop.hxx
@@ -140,7 +140,7 @@ private:
sal_Bool SAL_CALL createStaRequestWindow( );
//---------------------------------------------------------------
- // message handler functions; remeber these functions are called
+ // message handler functions; remember these functions are called
// from a different thread context!
//---------------------------------------------------------------
diff --git a/fpicker/source/win32/folderpicker/workbench/Test_fops.cxx b/fpicker/source/win32/folderpicker/workbench/Test_fops.cxx
index 53124d4afc21..3fa4dd3ff2e4 100644
--- a/fpicker/source/win32/folderpicker/workbench/Test_fops.cxx
+++ b/fpicker/source/win32/folderpicker/workbench/Test_fops.cxx
@@ -129,7 +129,7 @@ int SAL_CALL main(int /*nArgc*/, char* /*Argv[]*/, char* /*Env[]*/ )
OUString rdbName = OUString( RTL_CONSTASCII_USTRINGPARAM( RDB_SYSPATH ) );
Reference< XMultiServiceFactory > g_xFactory( createRegistryServiceFactory( rdbName ) );
- // Print a message if an error occured.
+ // Print a message if an error occurred.
if ( g_xFactory.is() == sal_False )
{
OSL_ENSURE(sal_False, "Can't create RegistryServiceFactory");
@@ -180,7 +180,7 @@ int SAL_CALL main(int /*nArgc*/, char* /*Argv[]*/, char* /*Env[]*/ )
// Cast factory to XComponent
Reference< XComponent > xComponent( g_xFactory, UNO_QUERY );
- // Print a message if an error occured.
+ // Print a message if an error occurred.
if ( xComponent.is() == sal_False )
{
OSL_ENSURE(sal_False, "Error shuting down");
diff --git a/framework/inc/classes/checkediterator.hxx b/framework/inc/classes/checkediterator.hxx
index 1956085c1695..b962023f436d 100644
--- a/framework/inc/classes/checkediterator.hxx
+++ b/framework/inc/classes/checkediterator.hxx
@@ -61,7 +61,7 @@ namespace framework{
@short implement a iterator which support 2 end states!
@descr For our search methods we need a "walking" iterator object with special functionality!
We must check for 3 different states of an iterator - normal position, exact end, after end.
- It's neccessary to detect if we have not found a entry and must return our default or
+ It's necessary to detect if we have not found a entry and must return our default or
default already returned and we must break loop!
see using in class FilterCache too for further informations!
@@ -114,7 +114,7 @@ class CheckedIterator
/*-****************************************************************************************************//**
@short initialize instance with valid container
- @descr Set new container at an instance of this class. The other member will set automaticly!
+ @descr Set new container at an instance of this class. The other member will set automatically!
m_pPosition = first element in container
m_eEndState = BEFOREEND
diff --git a/framework/inc/classes/droptargetlistener.hxx b/framework/inc/classes/droptargetlistener.hxx
index aaca8e47637e..36f937f5adda 100644
--- a/framework/inc/classes/droptargetlistener.hxx
+++ b/framework/inc/classes/droptargetlistener.hxx
@@ -59,7 +59,7 @@ class DropTargetListener : private ThreadHelpBase
// member
private:
- /// uno service manager to create neccessary services
+ /// uno service manager to create necessary services
css::uno::Reference< css::lang::XMultiServiceFactory > m_xFactory;
/// weakreference to target frame (Don't use a hard reference. Owner can't delete us then!)
css::uno::WeakReference< css::frame::XFrame > m_xTargetFrame;
diff --git a/framework/inc/classes/filtercache.hxx b/framework/inc/classes/filtercache.hxx
index 9f27b29cccec..f156c4f47f3c 100644
--- a/framework/inc/classes/filtercache.hxx
+++ b/framework/inc/classes/filtercache.hxx
@@ -83,7 +83,7 @@ namespace framework{
/*-************************************************************************************************************//**
@short cache for all filter and type information
@descr Frameloader- and filterfactory need some informations about our current registered filters and types.
- For better performance its neccessary to cache all needed values.
+ For better performance its necessary to cache all needed values.
@implements -
@base ThreadHelpBase
diff --git a/framework/inc/classes/filtercachedata.hxx b/framework/inc/classes/filtercachedata.hxx
index f9367f358a76..ea46d659fe30 100644
--- a/framework/inc/classes/filtercachedata.hxx
+++ b/framework/inc/classes/filtercachedata.hxx
@@ -73,7 +73,7 @@ namespace framework{
#define PACKAGENAME_TYPEDETECTION_STANDARD DECLARE_ASCII("Office.TypeDetection" ) /// Names of our configuration files.
#define PACKAGENAME_TYPEDETECTION_ADDITIONAL DECLARE_ASCII("Office.TypeDetectionAdditional" )
-#define CFG_PATH_SEPERATOR DECLARE_ASCII("/" ) /// seperator for configuration pathes
+#define CFG_PATH_SEPERATOR DECLARE_ASCII("/" ) /// seperator for configuration paths
#define PROPERTY_SEPERATOR sal_Unicode(',') /// seperator for own formated property strings of types and filters
#define LIST_SEPERATOR sal_Unicode(';') /// seperator for own formated lists as part of our own formated type- or filter-string
#define LOCALE_FALLBACK DECLARE_ASCII("en-US" ) /// fallback, if configuration can't give us current set locale ...
@@ -469,7 +469,7 @@ class SetNodeHash : public ::std::hash_map< ::rtl::OUString ,
//-------------------------------------------------------------------------------------------------------------
public:
//---------------------------------------------------------------------------------------------------------
- // The only way to free ALL memory realy!
+ // The only way to free ALL memory really!
//---------------------------------------------------------------------------------------------------------
inline void free()
{
@@ -481,7 +481,7 @@ class SetNodeHash : public ::std::hash_map< ::rtl::OUString ,
//---------------------------------------------------------------------------------------------------------
// Append changed, added or removed items to special lists
- // Neccessary for saving changes
+ // Necessary for saving changes
//---------------------------------------------------------------------------------------------------------
void appendChange( const ::rtl::OUString& sName ,
EModifyState eState );
@@ -507,7 +507,7 @@ class PerformanceHash : public ::std::hash_map< ::rtl::OUString
{
public:
//---------------------------------------------------------------------------------------------------------
- // try to free all used memory REALY!
+ // try to free all used memory REALLY!
//---------------------------------------------------------------------------------------------------------
inline void free()
{
@@ -576,7 +576,7 @@ class DataContainer : private ThreadHelpBase
/** @short identifies different sets of the TypeDetection configuration package.
@descr Most functions on top of this configuration package are the same ...
- but must be executed on different places inside ths configuration structures.
+ but must be executed on different places inside this configuration structures.
These enum values can be used ate some interface methods to specify, which
configuration set should be used.
Further it must be possible to start the same action for more then one cfg type.
@@ -778,8 +778,8 @@ class FilterCFGAccess : public ::utl::ConfigItem
// member
//-------------------------------------------------------------------------------------------------------------
private:
- EFilterPackage m_ePackage ; // ... not realy used yet! should split configuration in STANDARD and ADDITIONAL filter
- sal_Int32 m_nVersion ; // file format version of configuration! (neccessary for "xml2xcd" transformation!)
+ EFilterPackage m_ePackage ; // ... not really used yet! should split configuration in STANDARD and ADDITIONAL filter
+ sal_Int32 m_nVersion ; // file format version of configuration! (necessary for "xml2xcd" transformation!)
sal_Int32 m_nKeyCountTypes ; // follow key counts present count of configuration properties for types/filters ... and depends from m_nVersion - must be set right!
sal_Int32 m_nKeyCountFilters ;
sal_Int32 m_nKeyCountDetectors ;
@@ -815,7 +815,7 @@ class FilterCFGListener : public css::util::XChangesListener
DataContainer* m_pData;
// we must know, if we are already registered as listener or not.
- // That can be usefull to supress double registration calls ...
+ // That can be useful to suppress double registration calls ...
// which may will force double call backs in our disposing method!
// Such superflous calls can be dangerous.
sal_Bool m_bListening;
diff --git a/framework/inc/classes/framecontainer.hxx b/framework/inc/classes/framecontainer.hxx
index a07585d87f89..1665a8eb87d8 100644
--- a/framework/inc/classes/framecontainer.hxx
+++ b/framework/inc/classes/framecontainer.hxx
@@ -99,7 +99,7 @@ class FrameContainer : private ThreadHelpBase
/// list to hold all frames
TFrameContainer m_aContainer;
- /// one container item can be the current active frame. Its neccessary for Desktop or Frame implementation.
+ /// one container item can be the current active frame. Its necessary for Desktop or Frame implementation.
css::uno::Reference< css::frame::XFrame > m_xActiveFrame;
/*DEPRECATEME
/// indicates using of the automatic async quit feature in case last task will be closed
diff --git a/framework/inc/classes/protocolhandlercache.hxx b/framework/inc/classes/protocolhandlercache.hxx
index ee727bb5f978..3e2a1e30bf37 100644
--- a/framework/inc/classes/protocolhandlercache.hxx
+++ b/framework/inc/classes/protocolhandlercache.hxx
@@ -57,7 +57,7 @@ namespace framework{
#define PACKAGENAME_PROTOCOLHANDLER DECLARE_ASCII("Office.ProtocolHandler" ) /// name of our configuration package
-#define CFG_PATH_SEPERATOR DECLARE_ASCII("/" ) /// seperator for configuration pathes
+#define CFG_PATH_SEPERATOR DECLARE_ASCII("/" ) /// seperator for configuration paths
#define CFG_ENCODING_OPEN DECLARE_ASCII("[\'" ) /// used to start encoding of set names
#define CFG_ENCODING_CLOSE DECLARE_ASCII("\']" ) /// used to finish encoding of set names
@@ -116,7 +116,7 @@ typedef BaseHash< ProtocolHandler > HandlerHash;
- another one maps her registered pattern to her uno names to
perform search on such data
But this lists a static for all instances of this class. So it's possible to
- create new objects without opening configuration twice and free memory automaticly
+ create new objects without opening configuration twice and free memory automatically
if last object will gone.
@attention We implement a singleton concept - so we doesn't need any mutex member here.
@@ -165,7 +165,7 @@ class FWI_DLLPUBLIC HandlerCache
We set a data container pointer for filling or reading ... this class use it temp.
After successfuly calling of read(), we can use filled container directly or merge it with an existing one.
After successfuly calling of write() all values of given data container are flushed to our configuration -
- but current implementation doesn't support writeing realy.
+ but current implementation doesn't support writeing really.
@base ::utl::ConfigItem
base mechanism for configuration access
diff --git a/framework/inc/classes/servicemanager.hxx b/framework/inc/classes/servicemanager.hxx
index cb7feedc3856..299031bc1bd0 100644
--- a/framework/inc/classes/servicemanager.hxx
+++ b/framework/inc/classes/servicemanager.hxx
@@ -63,7 +63,7 @@ namespace framework{
/*-************************************************************************************************************//**
@short create a new global servicemanager
- @descr A global servicemanager is neccessary to instanciate UNO-services. To do this, you need
+ @descr A global servicemanager is necessary to instanciate UNO-services. To do this, you need
a factory to create new objects with special type. That's the reason for a servicemanager.
@implements -
@@ -118,9 +118,9 @@ class ServiceManager
@short initialize global uno service manager and return it
@descr This method create a new manager only at first call. We confiscate this with a static
pointer, which will be initialized only, if it NULL!
- Then you can call this method everytime to get a reference to the manager.
+ Then you can call this method every time to get a reference to the manager.
If you will initialize an uno application you must set returned reference in ::comphelper::setProcessServiceFactory()!
- The created manager use "applicat.rdb" and "userXX.rdb" automaticly.
+ The created manager use "applicat.rdb" and "userXX.rdb" automatically.
@seealso -
@@ -149,7 +149,7 @@ class ServiceManager
/*-****************************************************************************************************//**
@short return a reference to a uno servicemanager instance which use your specified user registry file
@descr This do the same like method before - but instead of "userXX.rdb" we use your file.
- These is neccessary, if you will run more then one uno application at the same time in same environment!
+ These is necessary, if you will run more then one uno application at the same time in same environment!
All created servicemanager use the same "applicat.rdb" but different user registries.
@ATTENTION Given file name must be a full qualified system file name. If file not already exist we create a new one!
@@ -211,7 +211,7 @@ class ServiceManager
@param -
@return reference to created static own global mutex
- @onerror No error should occure.
+ @onerror No error should occur.
*//*-*****************************************************************************************************/
MUTEX& impl_getOwnGlobalMutex();
@@ -224,7 +224,7 @@ class ServiceManager
@param "sRegistryFile", file name of user registry.
@return A reference to a new initialized servicemanager with a valid registry.
- It can be NULL, if an error occured.
+ It can be NULL, if an error occurred.
@onerror Return a NULL-reference.
*//*-*****************************************************************************************************/
diff --git a/framework/inc/commands.h b/framework/inc/commands.h
index 88843267117b..5333565b5aa8 100644
--- a/framework/inc/commands.h
+++ b/framework/inc/commands.h
@@ -45,7 +45,7 @@ namespace framework{
#define COMMAND_PLUGIN DECLARE_ASCII("-plugin" ) /// office is plugged into a browser
#define COMMAND_HEADLESS DECLARE_ASCII("-headless" ) /// office runs in headless mode for scripting
-#define COMMAND_INVISIBLE DECLARE_ASCII("-invisible" ) /// office runs in invisible mode which supress splash screen and first empry document
+#define COMMAND_INVISIBLE DECLARE_ASCII("-invisible" ) /// office runs in invisible mode which suppress splash screen and first empry document
#define COMMAND_SERVER DECLARE_ASCII("-server" ) /// office runs as server
} // namespace framework
diff --git a/framework/inc/dispatch/basedispatcher.hxx b/framework/inc/dispatch/basedispatcher.hxx
index 0b60fb359a26..82b5325052a5 100644
--- a/framework/inc/dispatch/basedispatcher.hxx
+++ b/framework/inc/dispatch/basedispatcher.hxx
@@ -153,8 +153,8 @@ struct LoadBinding
css::uno::Reference< css::frame::XDispatch > xHandler ; // if handler was used, this reference will be valid
css::uno::Reference< css::frame::XFrameLoader > xLoader ; // if loader was used, this reference will be valid
css::uno::Reference< css::frame::XFrame > xFrame ; // Target of loading
- css::util::URL aURL ; // dispatched URL - neccessary to find listener for status event!
- css::uno::Sequence< css::beans::PropertyValue > lDescriptor ; // dispatched arguments - neccessary for "reactForLoadingState()"!
+ css::util::URL aURL ; // dispatched URL - necessary to find listener for status event!
+ css::uno::Sequence< css::beans::PropertyValue > lDescriptor ; // dispatched arguments - necessary for "reactForLoadingState()"!
css::uno::Any aAsyncInfo ; // superclasses could use them to save her own user specific data for these asynchron call-info
css::uno::Reference< css::frame::XDispatchResultListener > xListener;
};
@@ -228,7 +228,7 @@ class LoaderThreads : private ::std::vector< LoadBinding >
/*-************************************************************************************************************//**
@short base class for dispatcher implementations
- @descr Most of our dispatch implementations do everytime the same. They try to handle or load
+ @descr Most of our dispatch implementations do every time the same. They try to handle or load
somethinmg into a target ... normaly a frame/task/pluginframe!
They must do it synchron or sometimes asynchron. They must wait for callbacks and
notify registered listener with right status events.
@@ -255,7 +255,7 @@ class BaseDispatcher : // interfaces
public css::frame::XNotifyingDispatch ,
public css::frame::XLoadEventListener , // => XEventListener too!
// baseclasses
- // Order is neccessary for right initialization!
+ // Order is necessary for right initialization!
protected ThreadHelpBase ,
protected TransactionBase ,
public ::cppu::OWeakObject
@@ -311,7 +311,7 @@ class BaseDispatcher : // interfaces
task if operation failed ...!?
By overwriting these pure virtual methods it's possible to do such things.
We call you with all available informations ... you should react for it.
- BUT - don't send any status events to your listener! We will do it everytime.
+ BUT - don't send any status events to your listener! We will do it every time.
(other listener could be informed as well!)
You will called back in: a) "reactForLoadingState()" , if URL was loaded into a frame
diff --git a/framework/inc/dispatch/blankdispatcher.hxx b/framework/inc/dispatch/blankdispatcher.hxx
index d08dcf9754f6..9879e992df7e 100644
--- a/framework/inc/dispatch/blankdispatcher.hxx
+++ b/framework/inc/dispatch/blankdispatcher.hxx
@@ -70,7 +70,7 @@ namespace framework{
@threadsafe yes
*//*-*************************************************************************************************************/
class BlankDispatcher : // -interfaces ... are supported by our BaseDispatcher!
- // -baseclasses ... order is neccessary for right initialization!
+ // -baseclasses ... order is necessary for right initialization!
public BaseDispatcher
{
//-------------------------------------------------------------------------------------------------------------
diff --git a/framework/inc/dispatch/closedispatcher.hxx b/framework/inc/dispatch/closedispatcher.hxx
index 205c22a3106a..06e37f51550f 100644
--- a/framework/inc/dispatch/closedispatcher.hxx
+++ b/framework/inc/dispatch/closedispatcher.hxx
@@ -65,13 +65,13 @@ namespace framework{
@descr These URLs implements a special functionality to close a document or the whole frame ...
and handle the state, it was the last frame or document. Then we create the
default backing document which can be used to open new ones using the file open dialog
- or some other menu entries. Or we terminate the whole application in case this backing mode shouldnt
+ or some other menu entries. Or we terminate the whole application in case this backing mode shouldn't
be used.
*/
class CloseDispatcher : public css::lang::XTypeProvider
, public css::frame::XNotifyingDispatch // => XDispatch
, public css::frame::XDispatchInformationProvider
- // baseclasses ... order is neccessary for right initialization!
+ // baseclasses ... order is necessary for right initialization!
, private ThreadHelpBase
, public ::cppu::OWeakObject
{
@@ -205,10 +205,10 @@ class CloseDispatcher : public css::lang::XTypeProvider
//---------------------------------------
/** @short prepare m_xCloseFrame so it should be closeable without problems.
- @descr Thats needed to be shure, that the document cant disagree
+ @descr Thats needed to be sure, that the document can't disagree
later with e.g. an office termination.
The problem: Closing of documents can show UI. If the user
- ignores it and open/close other documents, we cant know
+ ignores it and open/close other documents, we can't know
which state the office has after closing of this frame.
@param bAllowSuspend
@@ -236,8 +236,8 @@ class CloseDispatcher : public css::lang::XTypeProvider
before (e.g. by calling implts_closeView()!
Otherwhise e.g. the XController->suspend()
- call isnt made and no UI warn the user about
- loosing document changes. Because the
+ call isn't made and no UI warn the user about
+ losing document changes. Because the
frame is closed ....
@return [bool]
@@ -282,7 +282,7 @@ class CloseDispatcher : public css::lang::XTypeProvider
directly used as css::frame::DispatchResultState value.
@param aResult
- not used yet realy ...
+ not used yet really ...
*/
void implts_notifyResultListener(const css::uno::Reference< css::frame::XDispatchResultListener >& xListener,
sal_Int16 nState ,
@@ -290,13 +290,13 @@ class CloseDispatcher : public css::lang::XTypeProvider
//---------------------------------------
/** @short try to find the right target frame where this close request
- must be realy done.
+ must be really done.
@descr The problem behind: closing some resources depends sometimes from the
context where its dispatched. Sometimes the start frame of the dispatch
has to be closed itself (target=_self) ... sometimes it's parent frame
has to be closed - BUT(!) it means a parent frame containing a top level
- window. _top cant be used then for dispatch - because it adress TopFrames
+ window. _top can't be used then for dispatch - because it address TopFrames
not frames containg top level windows. So normaly _magic (which btw does not
exists at the moment .-) ) should be used. So we interpret target=<empty>
as _magic !
diff --git a/framework/inc/dispatch/createdispatcher.hxx b/framework/inc/dispatch/createdispatcher.hxx
index 3450cdfa0b31..fc35f205653b 100644
--- a/framework/inc/dispatch/createdispatcher.hxx
+++ b/framework/inc/dispatch/createdispatcher.hxx
@@ -77,7 +77,7 @@ namespace framework{
@threadsafe yes
*//*-*************************************************************************************************************/
class CreateDispatcher : // -interfaces ... are supported by our BaseDispatcher!
- // -baseclasses ... order is neccessary for right initialization!
+ // -baseclasses ... order is necessary for right initialization!
public BaseDispatcher
{
//-------------------------------------------------------------------------------------------------------------
diff --git a/framework/inc/dispatch/dispatchprovider.hxx b/framework/inc/dispatch/dispatchprovider.hxx
index 78c4c17e946c..05dff041cbda 100644
--- a/framework/inc/dispatch/dispatchprovider.hxx
+++ b/framework/inc/dispatch/dispatchprovider.hxx
@@ -66,7 +66,7 @@ namespace framework{
//_________________________________________________________________________________________________________________
/**
- @descr We know some special dispatch objects with diffrent functionality.
+ @descr We know some special dispatch objects with different functionality.
The can be created internaly by the following DispatchProvider.
Here we define some identifier to force creation of the right one.
*/
@@ -108,7 +108,7 @@ class DispatchProvider : // interfaces
public css::lang::XTypeProvider ,
public css::frame::XDispatchProvider ,
// baseclasses
- // Order is neccessary for right initialization!
+ // Order is necessary for right initialization!
private ThreadHelpBase ,
private TransactionBase ,
public ::cppu::OWeakObject
diff --git a/framework/inc/dispatch/helpagentdispatcher.hxx b/framework/inc/dispatch/helpagentdispatcher.hxx
index cfd4cf448ed5..4487296bee02 100644
--- a/framework/inc/dispatch/helpagentdispatcher.hxx
+++ b/framework/inc/dispatch/helpagentdispatcher.hxx
@@ -42,7 +42,7 @@ namespace framework
// define css alias ... and undefine it at the end of this file !!!
#ifdef css
- #error "I tried to use css as namespace define inside non exported header ... but it was already defined by somwhere else. .-)"
+ #error "I tried to use css as namespace define inside non exported header ... but it was already defined by somewhere else. .-)"
#else
#define css ::com::sun::star
#endif
diff --git a/framework/inc/dispatch/interceptionhelper.hxx b/framework/inc/dispatch/interceptionhelper.hxx
index c8bf5eb9c68f..41240ab73b3b 100644
--- a/framework/inc/dispatch/interceptionhelper.hxx
+++ b/framework/inc/dispatch/interceptionhelper.hxx
@@ -260,7 +260,7 @@ class InterceptionHelper : public css::frame::XDispatchProvider
@descr It capsulate more then one queryDispatch() requests and return a lits of dispatch objects
as result. Because both lists (in and out) coreespond together, it's not allowed to
- pack it - means supress NULL references!
+ pack it - means suppress NULL references!
@param lDescriptor
a list of queryDispatch() arguments.
diff --git a/framework/inc/dispatch/mailtodispatcher.hxx b/framework/inc/dispatch/mailtodispatcher.hxx
index 0f0466ae83fb..ae84635ffba2 100644
--- a/framework/inc/dispatch/mailtodispatcher.hxx
+++ b/framework/inc/dispatch/mailtodispatcher.hxx
@@ -70,7 +70,7 @@ namespace framework{
/**
@short protocol handler for "mailto:" URLs
@descr It's a special dispatch object which is used registered for "mailto:*" URLs and
- will be automaticly used from the framework dispatch mechanism if such URL occured.
+ will be automatically used from the framework dispatch mechanism if such URL occurred.
@base ThreadHelpBase
exports a lock member to guarantee right initialize value of it
@@ -87,7 +87,7 @@ class MailToDispatcher : // interfaces
public css::frame::XDispatchProvider ,
public css::frame::XNotifyingDispatch, // => XDispatch
// baseclasses
- // Order is neccessary for right initialization!
+ // Order is necessary for right initialization!
private ThreadHelpBase ,
public cppu::OWeakObject
{
diff --git a/framework/inc/dispatch/menudispatcher.hxx b/framework/inc/dispatch/menudispatcher.hxx
index 89e078e56723..ba7cab46c8f8 100644
--- a/framework/inc/dispatch/menudispatcher.hxx
+++ b/framework/inc/dispatch/menudispatcher.hxx
@@ -106,7 +106,7 @@ class MenuDispatcher : // interfaces
public css::frame::XDispatch ,
public css::frame::XFrameActionListener ,
// baseclasses
- // Order is neccessary for right initialization!
+ // Order is necessary for right initialization!
public ThreadHelpBase ,
public cppu::OWeakObject
{
@@ -122,7 +122,7 @@ class MenuDispatcher : // interfaces
/*-****************************************************************************************************//**
@short standard ctor
- @descr These initialize a new instance of ths class with needed informations for work.
+ @descr These initialize a new instance of this class with needed informations for work.
@seealso using at owner
@@ -149,7 +149,7 @@ class MenuDispatcher : // interfaces
/*-****************************************************************************************************//**
@short dispatch URL with arguments
- @descr Every dispatch create a new task. If load of URL failed task will deleted automaticly!
+ @descr Every dispatch create a new task. If load of URL failed task will deleted automatically!
@seealso -
@@ -171,7 +171,7 @@ class MenuDispatcher : // interfaces
@seealso method loadCancelled()
@param "xControl" , css::uno::Reference to a valid listener for state events.
- @param "aURL" , URL about listener will be informed, if something occured.
+ @param "aURL" , URL about listener will be informed, if something occurred.
@return -
@onerror -
diff --git a/framework/inc/dispatch/oxt_handler.hxx b/framework/inc/dispatch/oxt_handler.hxx
index 705b557572f4..291cd1e37493 100644
--- a/framework/inc/dispatch/oxt_handler.hxx
+++ b/framework/inc/dispatch/oxt_handler.hxx
@@ -139,7 +139,7 @@ class Oxt_Handler : // interfaces
, public css::frame::XNotifyingDispatch // => XDispatch
, public css::document::XExtendedFilterDetection
// baseclasses
- // Order is neccessary for right initialization!
+ // Order is necessary for right initialization!
, private ThreadHelpBase
, public ::cppu::OWeakObject
{
diff --git a/framework/inc/dispatch/popupmenudispatcher.hxx b/framework/inc/dispatch/popupmenudispatcher.hxx
index 29d1570adcba..6a03192e7a99 100644
--- a/framework/inc/dispatch/popupmenudispatcher.hxx
+++ b/framework/inc/dispatch/popupmenudispatcher.hxx
@@ -121,7 +121,7 @@ class PopupMenuDispatcher : // interfaces
public css::frame::XFrameActionListener ,
public css::lang::XInitialization ,
// baseclasses
- // Order is neccessary for right initialization!
+ // Order is necessary for right initialization!
public ThreadHelpBase ,
public cppu::OWeakObject
{
diff --git a/framework/inc/dispatch/selfdispatcher.hxx b/framework/inc/dispatch/selfdispatcher.hxx
index a8dda70246ef..d84a4f16bf7a 100644
--- a/framework/inc/dispatch/selfdispatcher.hxx
+++ b/framework/inc/dispatch/selfdispatcher.hxx
@@ -72,7 +72,7 @@ namespace framework{
@threadsafe yes
*//*-*************************************************************************************************************/
class SelfDispatcher : // -interfaces ... are supported by our BaseDispatcher!
- // -baseclasses ... order is neccessary for right initialization!
+ // -baseclasses ... order is necessary for right initialization!
public BaseDispatcher
{
//-------------------------------------------------------------------------------------------------------------
diff --git a/framework/inc/dispatch/servicehandler.hxx b/framework/inc/dispatch/servicehandler.hxx
index 8d95dd20ec92..79fd44700ce7 100644
--- a/framework/inc/dispatch/servicehandler.hxx
+++ b/framework/inc/dispatch/servicehandler.hxx
@@ -70,10 +70,10 @@ namespace framework{
/**
@short protocol handler for "service:*" URLs
@descr It's a special dispatch/provider object which is registered for such URL pattern and will
- be automaticly used by the framework dispatch mechanism if such URL occured.
+ be automatically used by the framework dispatch mechanism if such URL occurred.
His job is to create any registered uno components which must be coded inside
dispatched URL (may with some optional given parameters). After that such created
- service must be hold his self alive. Such mechanism can be usefull for UI components
+ service must be hold his self alive. Such mechanism can be useful for UI components
(e.g. Dialogs, Wizards) only.
@base ThreadHelpBase
@@ -91,7 +91,7 @@ class ServiceHandler : // interfaces
public css::frame::XDispatchProvider ,
public css::frame::XNotifyingDispatch, // => XDispatch
// baseclasses
- // Order is neccessary for right initialization!
+ // Order is necessary for right initialization!
private ThreadHelpBase ,
public cppu::OWeakObject
{
diff --git a/framework/inc/dispatch/startmoduledispatcher.hxx b/framework/inc/dispatch/startmoduledispatcher.hxx
index 41d9c6e14f4d..8e7c890b4b0e 100644
--- a/framework/inc/dispatch/startmoduledispatcher.hxx
+++ b/framework/inc/dispatch/startmoduledispatcher.hxx
@@ -64,7 +64,7 @@ namespace framework{
class StartModuleDispatcher : public css::lang::XTypeProvider
, public css::frame::XNotifyingDispatch // => XDispatch
, public css::frame::XDispatchInformationProvider
- // baseclasses ... order is neccessary for right initialization!
+ // baseclasses ... order is necessary for right initialization!
, private ThreadHelpBase
, public ::cppu::OWeakObject
{
@@ -180,7 +180,7 @@ class StartModuleDispatcher : public css::lang::XTypeProvider
directly used as css::frame::DispatchResultState value.
@param aResult
- not used yet realy ...
+ not used yet really ...
*/
void implts_notifyResultListener(const css::uno::Reference< css::frame::XDispatchResultListener >& xListener,
sal_Int16 nState ,
diff --git a/framework/inc/dispatch/systemexec.hxx b/framework/inc/dispatch/systemexec.hxx
index 8b8b201aa3a5..39d30066c269 100644
--- a/framework/inc/dispatch/systemexec.hxx
+++ b/framework/inc/dispatch/systemexec.hxx
@@ -70,7 +70,7 @@ namespace framework{
/**
@short protocol handler for "systemexec:*" URLs
@descr It's a special dispatch/provider object which is registered for such URL pattern and will
- be automaticly used by the framework dispatch mechanism if such URL occured.
+ be automatically used by the framework dispatch mechanism if such URL occurred.
It forwards all URL's to the underlying operating system.
So it would e.g. be possible to open HTML files outside the office within a web browser.
@@ -87,7 +87,7 @@ class SystemExec : // interfaces
public css::frame::XDispatchProvider ,
public css::frame::XNotifyingDispatch, // => XDispatch
// baseclasses
- // Order is neccessary for right initialization!
+ // Order is necessary for right initialization!
private ThreadHelpBase ,
public cppu::OWeakObject
{
diff --git a/framework/inc/framework/addonmenu.hxx b/framework/inc/framework/addonmenu.hxx
index 83b7f2b7243e..6768dc700580 100644
--- a/framework/inc/framework/addonmenu.hxx
+++ b/framework/inc/framework/addonmenu.hxx
@@ -30,6 +30,7 @@
#include <com/sun/star/frame/XFrame.hpp>
#include <com/sun/star/beans/PropertyValue.hpp>
#include <com/sun/star/uno/Sequence.hxx>
+#include <com/sun/star/lang/XMultiServiceFactory.hpp>
//_________________________________________________________________________________________________________________
// includes of other projects
@@ -92,23 +93,25 @@ class FWE_DLLPUBLIC AddonMenuManager
static sal_Bool IsAddonMenuId( sal_uInt16 nId ) { return (( nId >= ADDONMENU_ITEMID_START ) && ( nId < ADDONMENU_ITEMID_END )); }
// Check if the context string matches the provided xModel context
- static sal_Bool IsCorrectContext( const ::com::sun::star::uno::Reference< ::com::sun::star::frame::XModel >& rModel, const rtl::OUString& aContext );
+ static sal_Bool IsCorrectContext( const ::rtl::OUString& rModuleIdentifier, const rtl::OUString& aContext );
// Factory method to create different Add-On menu types
static PopupMenu* CreatePopupMenuType( MenuType eMenuType, const com::sun::star::uno::Reference< com::sun::star::frame::XFrame >& rFrame );
// Create the Add-Ons menu
- static AddonMenu* CreateAddonMenu( const ::com::sun::star::uno::Reference< ::com::sun::star::frame::XFrame >& rFrame );
+ static AddonMenu* CreateAddonMenu( const ::com::sun::star::uno::Reference< ::com::sun::star::frame::XFrame >& rFrame,
+ const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& rServiceManager );
// Merge the Add-Ons help menu items into the given menu bar at a defined pos
static void MergeAddonHelpMenu( const com::sun::star::uno::Reference< com::sun::star::frame::XFrame >& rFrame,
- MenuBar* pMergeMenuBar );
+ MenuBar* pMergeMenuBar,
+ const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& rServiceManager );
// Merge the addon popup menus into the given menu bar at the provided pos.
static void MergeAddonPopupMenus( const com::sun::star::uno::Reference< com::sun::star::frame::XFrame >& rFrame,
- const com::sun::star::uno::Reference< com::sun::star::frame::XModel >& rModel,
sal_uInt16 nMergeAtPos,
- MenuBar* pMergeMenuBar );
+ MenuBar* pMergeMenuBar,
+ const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& rServiceManager );
// Returns the next position to insert a menu item/sub menu
static sal_uInt16 GetNextPos( sal_uInt16 nPos );
@@ -120,7 +123,7 @@ class FWE_DLLPUBLIC AddonMenuManager
sal_uInt16& nUniqueMenuId,
com::sun::star::uno::Sequence< com::sun::star::uno::Sequence< com::sun::star::beans::PropertyValue > > aAddonMenuDefinition,
const com::sun::star::uno::Reference< com::sun::star::frame::XFrame >& rFrame,
- const com::sun::star::uno::Reference< com::sun::star::frame::XModel >& rModel );
+ const ::rtl::OUString& rModuleIdentifier );
// Retrieve the menu entry property values from a sequence
static void GetMenuEntry( const com::sun::star::uno::Sequence< com::sun::star::beans::PropertyValue >& rAddonMenuEntry,
diff --git a/framework/inc/framework/addonsoptions.hxx b/framework/inc/framework/addonsoptions.hxx
index b53aea694af9..13a9ead43875 100644
--- a/framework/inc/framework/addonsoptions.hxx
+++ b/framework/inc/framework/addonsoptions.hxx
@@ -41,7 +41,7 @@
/*-************************************************************************************************************//**
@descr The method GetAddonsMenu() returns a list of property values.
- Use follow defines to seperate values by names.
+ Use follow defines to separate values by names.
*//*-*************************************************************************************************************/
#define ADDONSMENUITEM_STRING_URL "URL"
#define ADDONSMENUITEM_STRING_TITLE "Title"
@@ -128,7 +128,7 @@ typedef ::std::vector< MergeStatusbarInstruction > MergeStatusbarInstructionCont
/*-************************************************************************************************************//**
@short forward declaration to our private date container implementation
@descr We use these class as internal member to support small memory requirements.
- You can create the container if it is neccessary. The class which use these mechanism
+ You can create the container if it is necessary. The class which use these mechanism
is faster and smaller then a complete implementation!
*//*-*************************************************************************************************************/
diff --git a/framework/inc/framework/framelistanalyzer.hxx b/framework/inc/framework/framelistanalyzer.hxx
index 7179b22854b7..38dc3fed7684 100644
--- a/framework/inc/framework/framelistanalyzer.hxx
+++ b/framework/inc/framework/framelistanalyzer.hxx
@@ -46,7 +46,7 @@ namespace framework{
/** analyze and split the current available frame list of a given frames supplier
into different parts.
- These analyzed informations can be used e.g. to decide if it's neccessary
+ These analyzed informations can be used e.g. to decide if it's necessary
to switch into the backing mode, close the current active frame only or
exit the whole application explicitly or implicitly.
*/
@@ -93,13 +93,13 @@ class FWE_DLLPUBLIC FrameListAnalyzer
::com::sun::star::uno::Sequence< ::com::sun::star::uno::Reference< ::com::sun::star::frame::XFrame > > m_lModelFrames;
/** contains all frames, which does not contain the same model like the reference frame.
- Filling of it can't be supressed by m_eDetectMode.
+ Filling of it can't be suppressed by m_eDetectMode.
The reference frame is never part of this list!
All frames inside this list are visible ones. */
::com::sun::star::uno::Sequence< ::com::sun::star::uno::Reference< ::com::sun::star::frame::XFrame > > m_lOtherVisibleFrames;
/** contains all frames, which does not contain the same model like the reference frame.
- Filling of it can't be supressed by m_eDetectMode.
+ Filling of it can't be suppressed by m_eDetectMode.
The reference frame is never part of this list!
All frames inside this list are hidden ones. */
::com::sun::star::uno::Sequence< ::com::sun::star::uno::Reference< ::com::sun::star::frame::XFrame > > m_lOtherHiddenFrames;
diff --git a/framework/inc/framework/preventduplicateinteraction.hxx b/framework/inc/framework/preventduplicateinteraction.hxx
index 19f4077c0660..83407b713593 100644
--- a/framework/inc/framework/preventduplicateinteraction.hxx
+++ b/framework/inc/framework/preventduplicateinteraction.hxx
@@ -189,7 +189,7 @@ class FWE_DLLPUBLIC PreventDuplicateInteraction : private ThreadHelpBase2
@param xSMGR
uno service manager for creating services internaly
- @threadsafe not neccessary
+ @threadsafe not necessary
*/
PreventDuplicateInteraction(const css::uno::Reference< css::lang::XMultiServiceFactory >& xSMGR);
@@ -225,10 +225,10 @@ class FWE_DLLPUBLIC PreventDuplicateInteraction : private ThreadHelpBase2
@short add a new interaction to the list of interactions, which
must be handled by this helper.
- @descr This method must be called immediatly after a new instance of this helper was
+ @descr This method must be called immediately after a new instance of this helper was
created. Without such list of InteractionRules, this instances does nothing!
On the other side there is no possibility to remove rules.
- So the same instance cant be used within different transactions.
+ So the same instance can't be used within different transactions.
It's a OneWay-object .-)
@param aInteractionInfo
diff --git a/framework/inc/general.h b/framework/inc/general.h
index d7f9f5bc7d3e..018457b925ea 100644
--- a/framework/inc/general.h
+++ b/framework/inc/general.h
@@ -29,7 +29,7 @@
#include <macros/generic.hxx>
-/* Normaly XInterface isnt used here ...
+/* Normaly XInterface isn't used here ...
But we need it to be able to define namespace alias css to anything related to ::com::sun::star
:-) */
#include <com/sun/star/uno/XInterface.hpp>
diff --git a/framework/inc/helper/fixeddocumentproperties.hxx b/framework/inc/helper/fixeddocumentproperties.hxx
index 51e450407060..5ee78a616108 100644
--- a/framework/inc/helper/fixeddocumentproperties.hxx
+++ b/framework/inc/helper/fixeddocumentproperties.hxx
@@ -37,15 +37,15 @@ struct FixedDocumentProperties
sal_Bool m_bAutoloadEnabled ; /// Automatic reload enabled/disabled ?
sal_Int32 m_nAutoloadSecs ; /// Time cycle for automatic reload
::rtl::OUString m_sAutoloadURL ; /// URL for automatic reload
- ::rtl::OUString m_sBlindCopiesTo ; /// Adress for BCC
- ::rtl::OUString m_sCopiesTo ; /// Adress CC
+ ::rtl::OUString m_sBlindCopiesTo ; /// Address for BCC
+ ::rtl::OUString m_sCopiesTo ; /// Address CC
com::sun::star::util::DateTime m_aCreationDate ; /// Time and date of document creation
::rtl::OUString m_sDefaultTarget ; /// Name of default target
::rtl::OUString m_sDescription ; /// Short description and comments
sal_Int16 m_nEditingCycles ; /// Document number
sal_Int32 m_nEditingDuration ; /// Duration since last edit
com::sun::star::uno::Sequence< sal_Int8 > m_seqExtraData ; /// Buffer of bytes for some extra data
- ::rtl::OUString m_sInReplyTo ; /// Adress for reply to ...
+ ::rtl::OUString m_sInReplyTo ; /// Address for reply to ...
sal_Bool m_bIsEncrypted ; /// Document is en/decrypted
::rtl::OUString m_sKeywords ; /// Some keywords
::rtl::OUString m_sMIMEType ; /// MIME-type of document
@@ -60,7 +60,7 @@ struct FixedDocumentProperties
sal_Bool m_bQueryTemplate ; /// Search for template ?
::rtl::OUString m_sRecipient ; /// Name of recipient
::rtl::OUString m_sReferences ; /// Some references to other things
- ::rtl::OUString m_sReplyTo ; /// Adress to reply
+ ::rtl::OUString m_sReplyTo ; /// Address to reply
sal_Bool m_bSaveGraphicsCompressed ; /// Compressed/non compressed graphics
sal_Bool m_bSaveOriginalGraphics ; /// Include graphics
sal_Bool m_bSaveVersionOnClose ; /// Save version on close of document ?
diff --git a/framework/inc/helper/ocomponentaccess.hxx b/framework/inc/helper/ocomponentaccess.hxx
index f4c60fac2cc3..a63ef13c9f8f 100644
--- a/framework/inc/helper/ocomponentaccess.hxx
+++ b/framework/inc/helper/ocomponentaccess.hxx
@@ -83,7 +83,7 @@ namespace framework{
@devstatus ready to use
*//*-*************************************************************************************************************/
-class OComponentAccess : private ThreadHelpBase , // Must be the first of baseclasses - Is neccessary for right initialization of objects!
+class OComponentAccess : private ThreadHelpBase , // Must be the first of baseclasses - Is necessary for right initialization of objects!
public ::cppu::WeakImplHelper1< ::com::sun::star::container::XEnumerationAccess >
{
//-------------------------------------------------------------------------------------------------------------
@@ -199,12 +199,12 @@ class OComponentAccess : private ThreadHelpBase , // M
/*-****************************************************************************************************//**
@short recursive method (!) to collect all components of all frames from the subtree of given node
- @descr This is neccessary to create the enumeration.
+ @descr This is necessary to create the enumeration.
@seealso method createEnumeration
@param "xNode" , root of subtree and start point of search
- @param "seqComponents", result list of search. We cant use a return value, we search recursive
+ @param "seqComponents", result list of search. We can't use a return value, we search recursive
and must collect all informations.
@return -
diff --git a/framework/inc/helper/ocomponentenumeration.hxx b/framework/inc/helper/ocomponentenumeration.hxx
index 46a59172f29a..106ee4e6bf5f 100644
--- a/framework/inc/helper/ocomponentenumeration.hxx
+++ b/framework/inc/helper/ocomponentenumeration.hxx
@@ -67,7 +67,7 @@ namespace framework{
@short implement a helper for a oneway enumeration of components
@descr You can step during this list only for one time! Its a snapshot.
Don't forget to release the reference. You are the owner of an instance of this implementation.
- You cant use this as a baseclass. Please use it as a dynamical object for return.
+ You can't use this as a baseclass. Please use it as a dynamical object for return.
@implements XInterface
XTypeProvider
diff --git a/framework/inc/helper/oframes.hxx b/framework/inc/helper/oframes.hxx
index 632c8397ac32..378862f7b422 100644
--- a/framework/inc/helper/oframes.hxx
+++ b/framework/inc/helper/oframes.hxx
@@ -83,7 +83,7 @@ namespace framework{
@devstatus deprecated
*//*-*************************************************************************************************************/
-class OFrames : private ThreadHelpBase , // Must be the first of baseclasses - Is neccessary for right initialization of objects!
+class OFrames : private ThreadHelpBase , // Must be the first of baseclasses - Is necessary for right initialization of objects!
public ::cppu::WeakImplHelper1< ::com::sun::star::frame::XFrames >
{
//-------------------------------------------------------------------------------------------------------------
diff --git a/framework/inc/helper/otasksenumeration.hxx b/framework/inc/helper/otasksenumeration.hxx
index fe091c945cde..fbbe055b6661 100644
--- a/framework/inc/helper/otasksenumeration.hxx
+++ b/framework/inc/helper/otasksenumeration.hxx
@@ -68,7 +68,7 @@ namespace framework{
@short implement a helper for a oneway enumeration of tasks
@descr You can step during this list only for one time! Its a snapshot.
Don't forget to release the reference. You are the owner of an instance of this implementation.
- You cant use this as a baseclass. Please use it as a dynamical object for return.
+ You can't use this as a baseclass. Please use it as a dynamical object for return.
@implements XInterface
XTypeProvider
diff --git a/framework/inc/helper/persistentwindowstate.hxx b/framework/inc/helper/persistentwindowstate.hxx
index c56ff204404c..7750b1f84dfe 100644
--- a/framework/inc/helper/persistentwindowstate.hxx
+++ b/framework/inc/helper/persistentwindowstate.hxx
@@ -87,7 +87,7 @@ class PersistentWindowState : // interfaces
public css::lang::XTypeProvider,
public css::lang::XInitialization,
public css::frame::XFrameActionListener, // => XEventListener
- // baseclasses (order neccessary for right initialization!)
+ // baseclasses (order necessary for right initialization!)
private ThreadHelpBase,
public ::cppu::OWeakObject
{
@@ -177,7 +177,7 @@ class PersistentWindowState : // interfaces
@param xWindow
must point to the container window of the frame.
- We use it VCL part here - because the toolkit doesnt
+ We use it VCL part here - because the toolkit doesn't
provide the right functionality!
@return [string]
@@ -207,7 +207,7 @@ class PersistentWindowState : // interfaces
@param xWindow
must point to the container window of the frame.
- We use it VCL part here - because the toolkit doesnt
+ We use it VCL part here - because the toolkit doesn't
provide the right functionality!
@param sWindowState
diff --git a/framework/inc/helper/statusindicator.hxx b/framework/inc/helper/statusindicator.hxx
index 3230f56b7f83..852073394d5e 100644
--- a/framework/inc/helper/statusindicator.hxx
+++ b/framework/inc/helper/statusindicator.hxx
@@ -70,7 +70,7 @@ namespace framework{
*/
class StatusIndicator : public css::lang::XTypeProvider
, public css::task::XStatusIndicator
- , private ThreadHelpBase // Order of baseclasses is neccessary for right initializaton!
+ , private ThreadHelpBase // Order of baseclasses is necessary for right initializaton!
, public ::cppu::OWeakObject // => XInterface
{
//-------------------------------------------
diff --git a/framework/inc/helper/statusindicatorfactory.hxx b/framework/inc/helper/statusindicatorfactory.hxx
index 4ae0796c88c8..10a7e4ac0f54 100644
--- a/framework/inc/helper/statusindicatorfactory.hxx
+++ b/framework/inc/helper/statusindicatorfactory.hxx
@@ -289,7 +289,7 @@ class StatusIndicatorFactory : public css::lang::XTypeProvider
if it's allowed to do so.
- @descr By default we show the parent window automaticly
+ @descr By default we show the parent window automatically
if this progress is used.
If that isn't a valid operation, the user of this
progress can suppress this feature by initializaing
diff --git a/framework/inc/helper/tagwindowasmodified.hxx b/framework/inc/helper/tagwindowasmodified.hxx
index e78f2e46f407..dcba1a86ea54 100644
--- a/framework/inc/helper/tagwindowasmodified.hxx
+++ b/framework/inc/helper/tagwindowasmodified.hxx
@@ -65,7 +65,7 @@ namespace framework{
/*-************************************************************************************************************//**
@short listen for modify events on model and tag frame container window so it can react accordingly
- @descr Used e.g. by our MAC port where such state is shown seperately on some controls of the
+ @descr Used e.g. by our MAC port where such state is shown separately on some controls of the
title bar.
@base ThreadHelpBase
@@ -83,7 +83,7 @@ class TagWindowAsModified : // interfaces
public css::lang::XInitialization,
public css::frame::XFrameActionListener, // => XEventListener
public css::util::XModifyListener, // => XEventListener
- // baseclasses (order neccessary for right initialization!)
+ // baseclasses (order necessary for right initialization!)
private ThreadHelpBase,
public ::cppu::OWeakObject
{
diff --git a/framework/inc/helper/titlebarupdate.hxx b/framework/inc/helper/titlebarupdate.hxx
index f48a947eceac..10c211732cf7 100644
--- a/framework/inc/helper/titlebarupdate.hxx
+++ b/framework/inc/helper/titlebarupdate.hxx
@@ -121,7 +121,7 @@ class TitleBarUpdate : // interfaces
, public css::lang::XInitialization
, public css::frame::XTitleChangeListener // => XEventListener
, public css::frame::XFrameActionListener // => XEventListener
- // baseclasses (order neccessary for right initialization!)
+ // baseclasses (order necessary for right initialization!)
, private ThreadHelpBase
, public ::cppu::OWeakObject
{
@@ -213,7 +213,7 @@ class TitleBarUpdate : // interfaces
//____________________________
/** @short set a new icon and title on the title bar of our connected frame window.
- @descr It does not check if an update is realy needed. That has to be done outside.
+ @descr It does not check if an update is really needed. That has to be done outside.
It retrieves all needed informations and update the title bar - nothing less -
nothing more.
*/
diff --git a/framework/inc/helper/vclstatusindicator.hxx b/framework/inc/helper/vclstatusindicator.hxx
index 5c7aedd2341e..ff686fe23b95 100644
--- a/framework/inc/helper/vclstatusindicator.hxx
+++ b/framework/inc/helper/vclstatusindicator.hxx
@@ -69,7 +69,7 @@ class VCLStatusIndicator : public css::task::XStatusIndicator
/** shows the progress.
- @attention This member isnt synchronized using our own mutex!
+ @attention This member isn't synchronized using our own mutex!
Its guarded by the solarmutex only. Otherwhise
we have to lock two of them, which can force a deadlock ...
*/
diff --git a/framework/inc/interaction/quietinteraction.hxx b/framework/inc/interaction/quietinteraction.hxx
index c6dc88cb92d3..0c64226fcf74 100644
--- a/framework/inc/interaction/quietinteraction.hxx
+++ b/framework/inc/interaction/quietinteraction.hxx
@@ -60,7 +60,7 @@ namespace framework{
/**
@short handle interactions non visible
- @descr Sometimes it's neccessary to use a non visible interaction handler.
+ @descr Sometimes it's necessary to use a non visible interaction handler.
He can't do anything, which a visible one can handle.
But it can be used to intercept problems e.g. during loading of documents.
@@ -98,7 +98,7 @@ class QuietInteraction : public css::lang::XTypeProvider
@interface XInteractionHandler
@short called from outside to handle a problem
@descr The only interaction we can handle here is to
- decide which of two ambigous filters should be realy used.
+ decide which of two ambigous filters should be really used.
We use the user selected one every time.
All other request will be aborted and can break the code,
which use this interaction handler.
@@ -121,7 +121,7 @@ class QuietInteraction : public css::lang::XTypeProvider
@short ctor to guarantee right initialized instances of this class
@descr -
- @threadsafe not neccessary
+ @threadsafe not necessary
*/
QuietInteraction();
@@ -130,7 +130,7 @@ class QuietInteraction : public css::lang::XTypeProvider
@short return the handled interaction request
@descr We saved any getted interaction request internaly.
May the outside user of this class is interessted
- on that. Especialy we gotted an unknown interaction
+ on that. Especially we gotted an unknown interaction
and aborted it hard.
@return [com.sun.star.uno.Any]
diff --git a/framework/inc/jobs/configaccess.hxx b/framework/inc/jobs/configaccess.hxx
index d18ae3406017..2bba3053bea5 100644
--- a/framework/inc/jobs/configaccess.hxx
+++ b/framework/inc/jobs/configaccess.hxx
@@ -80,7 +80,7 @@ class FWI_DLLPUBLIC ConfigAccess : public ThreadHelpBase
/**
reference to the uno service manager
- It's neccessary to instanciate own needed services.
+ It's necessary to instanciate own needed services.
*/
css::uno::Reference< css::lang::XMultiServiceFactory > m_xSMGR;
diff --git a/framework/inc/jobs/helponstartup.hxx b/framework/inc/jobs/helponstartup.hxx
index dfa8a48ab516..60d9f67af674 100644
--- a/framework/inc/jobs/helponstartup.hxx
+++ b/framework/inc/jobs/helponstartup.hxx
@@ -111,7 +111,7 @@ class HelpOnStartup : private ThreadHelpBase
/** @short does nothing real ...
@descr But it should exists as virtual function,
- so this class cant make trouble
+ so this class can't make trouble
related to inline/symbols etcpp.!
*/
virtual ~HelpOnStartup();
@@ -158,11 +158,11 @@ class HelpOnStartup : private ThreadHelpBase
/** @short tries to locate the open help module and return
the url of the currently shown help content.
- @descr It returns an empty string, if the help isnt still
+ @descr It returns an empty string, if the help isn't still
open at calling time.
@return The URL of the current shown help content;
- or an empty value if the help isnt still open.
+ or an empty value if the help isn't still open.
*/
::rtl::OUString its_getCurrentHelpURL();
@@ -180,7 +180,7 @@ class HelpOnStartup : private ThreadHelpBase
::sal_Bool its_isHelpUrlADefaultOne(const ::rtl::OUString& sHelpURL);
//---------------------------------------
- /** @short checks, if the help module should be shown automaticly for the
+ /** @short checks, if the help module should be shown automatically for the
currently opened office module.
@descr This value is readed from the module configuration.
diff --git a/framework/inc/jobs/job.hxx b/framework/inc/jobs/job.hxx
index 129484823aec..9b34456d0b57 100644
--- a/framework/inc/jobs/job.hxx
+++ b/framework/inc/jobs/job.hxx
@@ -100,7 +100,7 @@ class Job : public css::lang::XTypeProvider
private:
/**
- hold all neccessary informations about this job.
+ hold all necessary informations about this job.
It can be used for both modes: with and without configuration.
*/
JobData m_aJobCfg;
@@ -126,7 +126,7 @@ class Job : public css::lang::XTypeProvider
We use it too, to listen for closing events of this ressource.
Please note: If m_xFrame is set - m_xModel should be NULL.
- Only one environment can be supported realy.
+ Only one environment can be supported really.
*/
css::uno::Reference< css::frame::XFrame > m_xFrame;
@@ -136,13 +136,13 @@ class Job : public css::lang::XTypeProvider
We use it too, to listen for closing events of this ressource.
Please note: If m_xModel is set - m_xFrame should be NULL.
- Only one environment can be supported realy.
+ Only one environment can be supported really.
*/
css::uno::Reference< css::frame::XModel > m_xModel;
/**
We are registered at this instance to listen for office shutdown events.
- It's neccessary supress it (if possible) or to react in the right way.
+ It's necessary suppress it (if possible) or to react in the right way.
*/
css::uno::Reference< css::frame::XDesktop > m_xDesktop;
@@ -163,7 +163,7 @@ class Job : public css::lang::XTypeProvider
/**
Holds the state, if we are listen for desktop/frame or model closing events or not.
- The used references are not realy enough to detect a valid listener connection.
+ The used references are not really enough to detect a valid listener connection.
Thats why we use this additional information here too.
*/
sal_Bool m_bListenOnDesktop;
@@ -182,7 +182,7 @@ class Job : public css::lang::XTypeProvider
indicates in which state the internal job currently exist.
We can use this information to throw any suitable veto exception
- to prevent the environment against dieing or supress superflous dispose()
+ to prevent the environment against dieing or suppress superflous dispose()
calls at the job.
*/
ERunState m_eRunState;
diff --git a/framework/inc/jobs/jobconst.hxx b/framework/inc/jobs/jobconst.hxx
index 9923d4f3757b..c4f4c5d279dc 100644
--- a/framework/inc/jobs/jobconst.hxx
+++ b/framework/inc/jobs/jobconst.hxx
@@ -53,7 +53,7 @@ namespace framework{
@descr The protocol between job executor/dispatch and jobs is fix and well defined.
But why every implemented job should write such constant values directly into
- it's code. Typos can occure or code will be changed by new developers ...
+ it's code. Typos can occur or code will be changed by new developers ...
Shared set of constant values can help to improve the mentainance of this code.
*/
class FWI_DLLPUBLIC JobConst
diff --git a/framework/inc/jobs/jobdata.hxx b/framework/inc/jobs/jobdata.hxx
index faea7ffbe40d..08ec01f4f359 100644
--- a/framework/inc/jobs/jobdata.hxx
+++ b/framework/inc/jobs/jobdata.hxx
@@ -57,7 +57,7 @@ namespace framework{
// definitions
/**
- @short holds all neccessary informations about a job and
+ @short holds all necessary informations about a job and
handle it's configuration (if any exist!)
@descr It can be used rom different use cases as a container
(or proxy) for all config data of a registered job.
@@ -145,8 +145,8 @@ class JobData : private ThreadHelpBase
/** Some jobs can be registered to "logical events", which are generated on demand if another document event
occures. E.g. "onDocumentOpened" in case "OnNew" or "OnLoad" was notified to the JobExecutor instance.
And normaly the original event is transported as parameter set to the executed job. But then such job
- cant differ between e.g. "OnNew" and "onDocumentOpened".
- That's why we must know, for which type of event the job was realy triggered .-)
+ can't differ between e.g. "OnNew" and "onDocumentOpened".
+ That's why we must know, for which type of event the job was really triggered .-)
The information "sDocEvent" from this struct must be set on the member JobData::m_sEvent from outside
user of such Jobdata structure.
@@ -198,7 +198,7 @@ class JobData : private ThreadHelpBase
/**
the alias name of this job.
Is used as entry of configuration set for job registration, to find all
- neccessary properties of it..
+ necessary properties of it..
*/
::rtl::OUString m_sAlias;
@@ -232,7 +232,7 @@ class JobData : private ThreadHelpBase
css::uno::Sequence< css::beans::NamedValue > m_lArguments;
/**
- after a job was sucessfully executed (by any outside code using our
+ after a job was successfully executed (by any outside code using our
informations) it can return a result. This member make it part of this
container too. So it can be used for further things.
We use it also to update our internal state and the configuration
diff --git a/framework/inc/jobs/jobexecutor.hxx b/framework/inc/jobs/jobexecutor.hxx
index a2497d9a70c5..5aa643c44696 100644
--- a/framework/inc/jobs/jobexecutor.hxx
+++ b/framework/inc/jobs/jobexecutor.hxx
@@ -64,7 +64,7 @@ namespace framework{
@short implements a job executor, which can be triggered from any code
@descr It uses the given trigger event to locate any registered job service
inside the configuration and execute it. Of course it controls the
- liftime of such jobs too.
+ lifetime of such jobs too.
*/
class JobExecutor : public css::lang::XTypeProvider
, public css::lang::XServiceInfo
diff --git a/framework/inc/jobs/jobresult.hxx b/framework/inc/jobs/jobresult.hxx
index 85a626d3a5f4..0676e4a0f20d 100644
--- a/framework/inc/jobs/jobresult.hxx
+++ b/framework/inc/jobs/jobresult.hxx
@@ -92,7 +92,7 @@ class JobResult : private ThreadHelpBase
/**
an user of us must know, which (possible) parts of
- a "pure result" was realy set by an executed job.
+ a "pure result" was really set by an executed job.
Means which other members of this class are valid.
This mask can be used to find it out.
*/
diff --git a/framework/inc/jobs/joburl.hxx b/framework/inc/jobs/joburl.hxx
index 4a4ac4ecebc2..7a7eb86fe533 100644
--- a/framework/inc/jobs/joburl.hxx
+++ b/framework/inc/jobs/joburl.hxx
@@ -67,7 +67,7 @@ namespace framework{
@short can be used to parse, validate and work with job URL's
@descr Job URLs are specified by the following syntax:
vnd.sun.star.job:{[event=<name>]|[alias=<name>]|[service=<name>]}
- This class can analyze this structure and seperate it into his different parts.
+ This class can analyze this structure and separate it into his different parts.
After doing that these parts are accessible by the methods of this class.
*/
class JobURL : private ThreadHelpBase
diff --git a/framework/inc/jobs/shelljob.hxx b/framework/inc/jobs/shelljob.hxx
index ef04c7d4417b..149b469fde1c 100644
--- a/framework/inc/jobs/shelljob.hxx
+++ b/framework/inc/jobs/shelljob.hxx
@@ -92,7 +92,7 @@ class ShellJob : private ThreadHelpBase
/** @short does nothing real ...
@descr But it should exists as virtual function,
- so this class cant make trouble
+ so this class can't make trouble
related to inline/symbols etcpp.!
*/
virtual ~ShellJob();
diff --git a/framework/inc/loadstate.h b/framework/inc/loadstate.h
index d55c0e613abb..1010a26dc2a0 100644
--- a/framework/inc/loadstate.h
+++ b/framework/inc/loadstate.h
@@ -41,12 +41,12 @@ namespace framework{
/**
These enum values specify all possible results of a load request.
It doesn't matter, if this load operation used dispatch() or loadComponentFromURL().
- The meaning is everytime the same.
+ The meaning is every time the same.
*/
enum ELoadState
{
E_UNSPECIFIED = 0, // indicates the operation was not already started
- E_SUCCESS = 1, // the load request was successfull
+ E_SUCCESS = 1, // the load request was successful
E_IOERROR = 2, // there was an io error internaly
E_INTERACTION = 3, // there was an interaction, which couldn't be handled (doesn't include IO interactions => see E_IOERROR before)
E_FAILED = 4 // for unknown or unspecified errors
diff --git a/framework/inc/macros/debug/assertion.hxx b/framework/inc/macros/debug/assertion.hxx
index 8f3cd54125a5..8f34d839890c 100644
--- a/framework/inc/macros/debug/assertion.hxx
+++ b/framework/inc/macros/debug/assertion.hxx
@@ -195,7 +195,7 @@
LOG_EXCEPTION( SMETHOD, SOWNMESSAGE, SEXCEPTIONMESSAGE )
Show some exception info by using current set output mode by define LOGTYPE!
- We use a seperated scope {} do protect us against multiple variable definitions.
+ We use a separated scope {} do protect us against multiple variable definitions.
_____________________________________________________________________________________________________________*/
#define LOG_EXCEPTION( SMETHOD, SOWNMESSAGE, SEXCEPTIONMESSAGE ) \
diff --git a/framework/inc/macros/debug/event.hxx b/framework/inc/macros/debug/event.hxx
index 1949761c2cb5..c7d0b6c1639f 100644
--- a/framework/inc/macros/debug/event.hxx
+++ b/framework/inc/macros/debug/event.hxx
@@ -52,7 +52,7 @@
/*_____________________________________________________________________________________________________________
LOG_FRAMEACTIONEVENT( SFRAMETYPE, SFRAMENAME, AFRAMEACTION )
- Use this macro to print debug informations about sending of events to listener for controling right order.
+ Use this macro to print debug informations about sending of events to listener for controlling right order.
( Use new scope in macro to declare sBuffer more then on time in same "parentscope"! )
_____________________________________________________________________________________________________________*/
diff --git a/framework/inc/macros/debug/filterdbg.hxx b/framework/inc/macros/debug/filterdbg.hxx
index 5ef6e920ac6f..f8cb43aac641 100644
--- a/framework/inc/macros/debug/filterdbg.hxx
+++ b/framework/inc/macros/debug/filterdbg.hxx
@@ -26,7 +26,7 @@
//*************************************************************************************************************
// special macros for time measures
-// 1) LOGFILE_FILTERDBG used it to define log file for this operations (default will be set automaticly)
+// 1) LOGFILE_FILTERDBG used it to define log file for this operations (default will be set automatically)
// 4) LOG_FILTERDBG write debug info to log file
//*************************************************************************************************************
diff --git a/framework/inc/macros/debug/memorymeasure.hxx b/framework/inc/macros/debug/memorymeasure.hxx
index 1253154789d1..7d52ed2c15c1 100644
--- a/framework/inc/macros/debug/memorymeasure.hxx
+++ b/framework/inc/macros/debug/memorymeasure.hxx
@@ -26,7 +26,7 @@
//*************************************************************************************************************
// special macros for time measures
-// 1) LOGFILE_MEMORYMEASURE used it to define log file for this operations (default will be set automaticly)
+// 1) LOGFILE_MEMORYMEASURE used it to define log file for this operations (default will be set automatically)
// 2) MAKE_MEMORY_SNAPSHOT make snapshot of currently set memory informations of OS
// 3) LOG_MEMORYMEASURE write measured time to logfile
//*************************************************************************************************************
diff --git a/framework/inc/macros/debug/timemeasure.hxx b/framework/inc/macros/debug/timemeasure.hxx
index 012fba83dada..f6dea01ff899 100644
--- a/framework/inc/macros/debug/timemeasure.hxx
+++ b/framework/inc/macros/debug/timemeasure.hxx
@@ -26,7 +26,7 @@
//*************************************************************************************************************
// special macros for time measures
-// 1) LOGFILE_TIMEMEASURE used it to define log file for this operations (default will be set automaticly)
+// 1) LOGFILE_TIMEMEASURE used it to define log file for this operations (default will be set automatically)
// 2) START_TIMEMEASURE start new measure by using given variable names
// 3) START_TIMEMEASURE stop current measure by using given variable names and return time
// 4) LOG_TIMEMEASURE write measured time to logfile
diff --git a/framework/inc/macros/xserviceinfo.hxx b/framework/inc/macros/xserviceinfo.hxx
index f571ddb33cc2..e9e9d05960cb 100644
--- a/framework/inc/macros/xserviceinfo.hxx
+++ b/framework/inc/macros/xserviceinfo.hxx
@@ -66,7 +66,7 @@ namespace framework{
1) DECLARE_XSERVICEINFO => use it to declare XServiceInfo in your header
2) DEFINE_XSERVICEINFO_MULTISERVICE( CLASS, XINTERFACECAST, SERVICENAME, IMPLEMENTATIONNAME ) => use it to define XServiceInfo for multi service mode
3) DEFINE_XSERVICEINFO_ONEINSTANCESERVICE( CLASS, XINTERFACECAST, SERVICENAME, IMPLEMENTATIONNAME ) => use it to define XServiceInfo for one instance service mode
- 4) DEFINE_INIT_SERVICE( CLASS ) => use it to implement your own impl_initService() method, which is neccessary for initializeing object by using his own reference!
+ 4) DEFINE_INIT_SERVICE( CLASS ) => use it to implement your own impl_initService() method, which is necessary for initializeing object by using his own reference!
_________________________________________________________________________________________________________________*/
diff --git a/framework/inc/macros/xtypeprovider.hxx b/framework/inc/macros/xtypeprovider.hxx
index ad8cbf85382c..0b8368566e36 100644
--- a/framework/inc/macros/xtypeprovider.hxx
+++ b/framework/inc/macros/xtypeprovider.hxx
@@ -314,8 +314,8 @@ ________________________________________________________________________________
// implementation of XTypeProvider
//*****************************************************************************************************************
// implementation of XTypeProvider without additional interface for getTypes()
-// XTypeProvider is used as the only one interface automaticly.
-// Following defines don't use XTypeProvider automaticly!!!!
+// XTypeProvider is used as the only one interface automatically.
+// Following defines don't use XTypeProvider automatically!!!!
#define DEFINE_XTYPEPROVIDER_0( CLASS ) \
PRIVATE_DEFINE_XTYPEPROVIDER_PURE( CLASS )
diff --git a/framework/inc/protocols.h b/framework/inc/protocols.h
index c886f1d4551a..afa2a0a26a1b 100644
--- a/framework/inc/protocols.h
+++ b/framework/inc/protocols.h
@@ -41,7 +41,7 @@ namespace framework{
//_______________________________________________________________________
/**
some protocols must be checked during loading or dispatching URLs manually
- It can be neccessary to decide, if a URL represent a non visible content or
+ It can be necessary to decide, if a URL represent a non visible content or
a real visible component.
*/
diff --git a/framework/inc/queries.h b/framework/inc/queries.h
index 611a532bc2cd..fbc4d7350657 100644
--- a/framework/inc/queries.h
+++ b/framework/inc/queries.h
@@ -359,7 +359,7 @@ class QueryAnalyzer
//---------------------------------------------------------------------------------------------------------
// access to additional parameter values
- // Methods return default of realy set values!
+ // Methods return default of really set values!
//---------------------------------------------------------------------------------------------------------
sal_uInt32 getIFlags () const { return m_nIFlags ; }
sal_uInt32 getEFlags () const { return m_nEFlags ; }
diff --git a/framework/inc/recording/dispatchrecordersupplier.hxx b/framework/inc/recording/dispatchrecordersupplier.hxx
index b226dc07fe41..555342583883 100644
--- a/framework/inc/recording/dispatchrecordersupplier.hxx
+++ b/framework/inc/recording/dispatchrecordersupplier.hxx
@@ -74,7 +74,7 @@ class DispatchRecorderSupplier : // interfaces
public css::lang::XServiceInfo ,
public css::frame::XDispatchRecorderSupplier ,
// baseclasses
- // Order is neccessary for right initialization!
+ // Order is necessary for right initialization!
private ThreadHelpBase ,
public ::cppu::OWeakObject
{
@@ -86,7 +86,7 @@ class DispatchRecorderSupplier : // interfaces
//_______________________________________
/** provided dispatch recorder of this supplier instance
- @life Is controled from outside. Because this variable is setted
+ @life Is controlled from outside. Because this variable is setted
from there and not created internaly. But we release our
reference to it if we die.
*/
diff --git a/framework/inc/services/autorecovery.hxx b/framework/inc/services/autorecovery.hxx
index 91b5cfea10ec..96c1c72b3124 100644
--- a/framework/inc/services/autorecovery.hxx
+++ b/framework/inc/services/autorecovery.hxx
@@ -117,7 +117,7 @@ struct DispatchParams
@descr If our dispatch() method was forced to start the
internal operation asynchronous ... we send an event
- to start and return immediatly. But we must be shure that
+ to start and return immediately. But we must be sure that
our instance live if the event callback reach us.
So we hold an uno reference to ourself.
*/
@@ -136,7 +136,7 @@ class AutoRecovery : public css::lang::XTypeProvider
, public css::document::XEventListener // => css.lang.XEventListener
, public css::util::XChangesListener // => css.lang.XEventListener
, public css::util::XModifyListener // => css.lang.XEventListener
- // attention! Must be the first base class to guarentee right initialize lock ...
+ // attention! Must be the first base class to guarantee right initialize lock ...
, private ThreadHelpBase
, public ::cppu::OBroadcastHelper
, public ::cppu::OPropertySetHelper // => XPropertySet, XFastPropertySet, XMultiPropertySet
@@ -174,9 +174,9 @@ class AutoRecovery : public css::lang::XTypeProvider
/* FINAL STATES */
- /// the Auto/Emergency saved document isnt useable any longer
+ /// the Auto/Emergency saved document isn't useable any longer
E_DAMAGED = 64,
- /// the Auto/Emergency saved document isnt realy up-to-date (some changes can be missing)
+ /// the Auto/Emergency saved document isn't really up-to-date (some changes can be missing)
E_INCOMPLETE = 128,
/// the Auto/Emergency saved document was processed successfully
E_SUCCEDED = 512
@@ -198,7 +198,7 @@ class AutoRecovery : public css::lang::XTypeProvider
// TODO document me
enum ETimerType
{
- /** the timer shouldnt be used next time */
+ /** the timer shouldn't be used next time */
E_DONT_START_TIMER,
/** timer (was/must be) started with normal AutoSaveTimeIntervall */
E_NORMAL_AUTOSAVE_INTERVALL,
@@ -208,7 +208,7 @@ class AutoRecovery : public css::lang::XTypeProvider
/** timer mst be started with a very(!) short time intervall,
to poll for the end of an user action, which does not allow saving documents in general */
E_POLL_TILL_AUTOSAVE_IS_ALLOWED,
- /** dont start the timer - but calls the same action then before immediatly again! */
+ /** dont start the timer - but calls the same action then before immediately again! */
E_CALL_ME_BACK
};
@@ -250,7 +250,7 @@ class AutoRecovery : public css::lang::XTypeProvider
css::uno::Reference< css::frame::XModel > Document;
//-------------------------------
- /** @short knows, if the document is realy modified since the last autosave,
+ /** @short knows, if the document is really modified since the last autosave,
or was postponed, because it was an active one etcpp...
@descr Because we have no CHANGE TRACKING mechanism, based on office document,
@@ -264,7 +264,7 @@ class AutoRecovery : public css::lang::XTypeProvider
//-------------------------------
/** Because our applications not ready for concurrent save requests at the same time,
- we have supress our own AutoSave for the moment, a document will be already saved
+ we have suppress our own AutoSave for the moment, a document will be already saved
by others.
*/
sal_Bool UsedForSaving;
@@ -298,7 +298,7 @@ class AutoRecovery : public css::lang::XTypeProvider
::rtl::OUString AppModule; // e.g. com.sun.star.text.TextDocument - used to identify app module
::rtl::OUString FactoryService; // the service to create a document of the module
::rtl::OUString RealFilter; // real filter, which was used at loading time
- ::rtl::OUString DefaultFilter; // supports saving of the default format without loosing data
+ ::rtl::OUString DefaultFilter; // supports saving of the default format without losing data
::rtl::OUString Extension; // file extension of the default filter
::rtl::OUString Title; // can be used as "DisplayName" on every recovery UI!
::com::sun::star::uno::Sequence< ::rtl::OUString >
@@ -398,9 +398,9 @@ class AutoRecovery : public css::lang::XTypeProvider
ListenerHash m_lListener;
/** @descr This member is used to prevent us against re-entrance problems.
- A mutex cant help to prevent us from concurrent using of members
+ A mutex can't help to prevent us from concurrent using of members
inside the same thread. But e.g. our internaly used stl structures
- are not threadsafe ... and furthermore they cant be used at the same time
+ are not threadsafe ... and furthermore they can't be used at the same time
for iteration and add/remove requests!
So we have to detect such states and ... show a warning.
May be there will be a better solution next time ... (copying the cache temp.
@@ -561,7 +561,7 @@ class AutoRecovery : public css::lang::XTypeProvider
@descr ... but only keys related to the AutoSave mechanism.
Means: State and Timer intervall.
- E.g. the recovery list isnt adressed here.
+ E.g. the recovery list isn't addressed here.
@throw [com.sun.star.uno.RuntimeException]
if config could not be opened or readed successfully!
@@ -705,7 +705,7 @@ class AutoRecovery : public css::lang::XTypeProvider
/** @short save all current opened documents to a specific
backup directory.
- @descr Only realy changed documents will be saved here.
+ @descr Only really changed documents will be saved here.
Further this method returns a suggestion, if and how it should
be called again. May be some documents was not saved yet
@@ -905,7 +905,7 @@ class AutoRecovery : public css::lang::XTypeProvider
E.g. our svtools::ConfigItems() has to be flushed explicitly .-(
- Note: This method cant fail. Flushing of config entries is an
+ Note: This method can't fail. Flushing of config entries is an
optional feature. Errors can be ignored.
*/
void impl_flushALLConfigChanges();
@@ -961,14 +961,14 @@ class AutoRecovery : public css::lang::XTypeProvider
a) An external progress is provided by our CrashSave or Recovery dialog.
b) We must create our own progress e.g. for an AutoSave
c) Sometimes our application filters dont use the progress
- provided by the MediaDescriptor. They uses the Frame everytime to create
+ provided by the MediaDescriptor. They uses the Frame every time to create
it's own progress. So we implemented a HACK for these and now we set
an InterceptedProgress there for the time WE use this frame for loading/storing documents .-)
@param xNewFrame
must be set only in case WE create a new frame (e.g. for loading documents
on session restore or recovery). Then search for a frame using rInfo.Document must
- be supressed and xFrame must be preferred instead .-)
+ be suppressed and xFrame must be preferred instead .-)
@param rInfo
used e.g. to find the frame corresponding to a document.
@@ -989,14 +989,14 @@ class AutoRecovery : public css::lang::XTypeProvider
/** try to remove the specified file from disc.
Every URL supported by our UCB component can be used here.
- Further it doesnt matter if the file realy exists or not.
+ Further it doesn't matter if the file really exists or not.
Because removing a non exsistent file will have the same
result at the end ... a non existing file .-)
On the other side removing of files from disc is an optional
feature. If we are not able doing so ... its not a real problem.
Ok - users disc place will be samller then ... but we should produce
- a crash during crash save because we cant delete a temporary file only !
+ a crash during crash save because we can't delete a temporary file only !
@param sURL
the url of the file, which should be removed.
@@ -1005,10 +1005,10 @@ class AutoRecovery : public css::lang::XTypeProvider
//---------------------------------------
/** try to remove ".lock" file from disc if office will be terminated
- not using the offical way .-)
+ not using the official way .-)
This method has to be handled "optional". So every error inside
- has to be ignored ! This method CANT FAIL ... it can forget something only .-)
+ has to be ignored ! This method CAN'T FAIL ... it can forget something only .-)
*/
static void st_impl_removeLockFile();
};
diff --git a/framework/inc/services/backingcomp.hxx b/framework/inc/services/backingcomp.hxx
index f2b724c31c04..09bfb440ec56 100644
--- a/framework/inc/services/backingcomp.hxx
+++ b/framework/inc/services/backingcomp.hxx
@@ -78,7 +78,7 @@ class BackingComp : public css::lang::XTypeProvider
, public css::lang::XInitialization
, public css::frame::XController // => XComponent
, public css::awt::XKeyListener // => XEventListener
- // attention! Must be the first base class to guarentee right initialize lock ...
+ // attention! Must be the first base class to guarantee right initialize lock ...
, private ThreadHelpBase
, public ::cppu::OWeakObject
{
diff --git a/framework/inc/services/contenthandlerfactory.hxx b/framework/inc/services/contenthandlerfactory.hxx
index 2760446b3d9e..399e9f6cca8a 100644
--- a/framework/inc/services/contenthandlerfactory.hxx
+++ b/framework/inc/services/contenthandlerfactory.hxx
@@ -106,7 +106,7 @@ class ContentHandlerFactory : // interfaces
public css::container::XNameContainer , // => XNameReplace => XNameAccess => XElementAccess
public css::util::XFlushable ,
// base classes
- // Order is neccessary for right initialization of it!
+ // Order is necessary for right initialization of it!
private ThreadHelpBase ,
private TransactionBase ,
public ::cppu::OWeakObject
diff --git a/framework/inc/services/desktop.hxx b/framework/inc/services/desktop.hxx
index 0a019f479fe8..812e86f06724 100644
--- a/framework/inc/services/desktop.hxx
+++ b/framework/inc/services/desktop.hxx
@@ -144,7 +144,7 @@ class Desktop : // interfaces
public css::task::XInteractionHandler ,
public css::frame::XUntitledNumbers ,
// base classes
- // Order is neccessary for right initialization!
+ // Order is necessary for right initialization!
private ThreadHelpBase ,
private TransactionBase ,
public ::cppu::OBroadcastHelper ,
@@ -186,7 +186,7 @@ class Desktop : // interfaces
Btw: Desktop.terminate() was designed in the past to be used
within an UI based envrionment. So it's allowed e.g. to
- call XController.suspend() here. If UI isnt an option ... please
+ call XController.suspend() here. If UI isn't an option ... please
use XCloseable.close() at these desktop implementation.
... if it will be supported in the future .-))
@@ -411,9 +411,9 @@ class Desktop : // interfaces
*
* Iterates over all child frames and try to close them.
* Given parameter bAllowUI enable/disable showing any UI
- * (which mostly occure on calling XController->suspend()).
+ * (which mostly occur on calling XController->suspend()).
*
- * These method doesnt stop if one frame could not be closed.
+ * These method doesn't stop if one frame could not be closed.
* It will ignore such frames and try all other ones.
* But it returns false in such case - true otherwise.
*
@@ -426,7 +426,7 @@ class Desktop : // interfaces
//-------------------------------------------------------------------------------------------------------------
// debug methods
- // (should be private everytime!)
+ // (should be private every time!)
//-------------------------------------------------------------------------------------------------------------
#ifdef ENABLE_ASSERTIONS
private:
@@ -442,7 +442,7 @@ class Desktop : // interfaces
//-------------------------------------------------------------------------------------------------------------
// variables
- // (should be private everytime!)
+ // (should be private every time!)
//-------------------------------------------------------------------------------------------------------------
private:
@@ -476,7 +476,7 @@ class Desktop : // interfaces
//---------------------------------------------------------------------
/** special terminate listener which loads images asynchronous for current open documents.
- * Because internaly it uses blocking system APIs ... it cant be guaranteed that
+ * Because internaly it uses blocking system APIs ... it can't be guaranteed that
* running jobs can be cancelled successfully if the corressponding document will be closed ...
* it will not hinder those documents on closing. Instead it let all jobs running ...
* but at least on terminate we have to wait for all those blocked requests.
@@ -487,15 +487,15 @@ class Desktop : // interfaces
//---------------------------------------------------------------------
/** special terminate listener shuting down the SfxApplication.
* Because these desktop instance closes documents and informs listener
- * only ... it does not realy shutdown the whole application.
+ * only ... it does not really shutdown the whole application.
*
* Btw: That wouldnt be possible by design ... because Desktop.terminate()
- * has to return a boolean value about success ... it cant realy shutdown the
+ * has to return a boolean value about success ... it can't really shutdown the
* process .-)
*
* So we uses a trick: A special listener (exactly these one here) listen for notifyTermination()
* and shutdown the process asynchronous. But desktop has to make this special
- * notification as realy last one ... Otherwhise it can happen that asynchronous
+ * notification as really last one ... Otherwise it can happen that asynchronous
* shutdown will be faster then all other code around Desktop.terminate() .-))
*/
css::uno::Reference< css::frame::XTerminateListener > m_xSfxTerminator;
diff --git a/framework/inc/services/detectorfactory.hxx b/framework/inc/services/detectorfactory.hxx
index 405fc7514601..96c7de307b37 100644
--- a/framework/inc/services/detectorfactory.hxx
+++ b/framework/inc/services/detectorfactory.hxx
@@ -93,7 +93,7 @@ class DetectorFactory : // interfaces
public css::container::XNameContainer , // => XNameReplace => XNameAccess => XElementAccess
public css::util::XFlushable ,
// base classes
- // Order is neccessary for right initialization of it!
+ // Order is necessary for right initialization of it!
private ThreadHelpBase ,
public ::cppu::OWeakObject
{
@@ -361,7 +361,7 @@ class DetectorFactory : // interfaces
/** @short check if searched entry exist inside this container.
@attention In multithreaded environments it's not guaranteed, that a
- queried item exist next time realy! It can be deleted by
+ queried item exist next time really! It can be deleted by
another thread ...
@param sName
@@ -378,7 +378,7 @@ class DetectorFactory : // interfaces
/** @short return the uno type, which is used for all container items.
- @return Type of sequence< com::sun::star::beans::PropertyValue > everytime - because it's fix.
+ @return Type of sequence< com::sun::star::beans::PropertyValue > every time - because it's fix.
*/
virtual css::uno::Type SAL_CALL getElementType()
@@ -406,8 +406,8 @@ class DetectorFactory : // interfaces
Calling of flush() will do that.
At the same time all currently registered flush listener will be informed,
so they can update her structures too.
- Note: Before all these operations are started realy, all changes will be
- verified and if neccessary some corrections will be done.
+ Note: Before all these operations are started really, all changes will be
+ verified and if necessary some corrections will be done.
In case the cache will be invalid and could not be repaired an exception is thrown!
Normaly this container will not work correctly afterwards ...
diff --git a/framework/inc/services/frame.hxx b/framework/inc/services/frame.hxx
index c03747e51709..72e9061cfdc3 100644
--- a/framework/inc/services/frame.hxx
+++ b/framework/inc/services/frame.hxx
@@ -94,7 +94,7 @@ namespace framework{
// exported const
//_________________________________________________________________________________________________________________
-// This enum can be used to set differnt active states of frames
+// This enum can be used to set different active states of frames
enum EActiveState
{
E_INACTIVE , // I'am not a member of active path in tree and i don't have the focus.
@@ -152,7 +152,7 @@ class Frame : // interfaces
public css::frame::XTitle ,
public css::frame::XTitleChangeBroadcaster ,
// base classes
- // Order is neccessary for right initialization of this class!
+ // Order is necessary for right initialization of this class!
public ThreadHelpBase ,
public TransactionBase ,
public PropertySetHelper , // helper implements ThreadHelpbase, TransactionBase, XPropertySet, XPropertySetInfo
diff --git a/framework/inc/services/frameloaderfactory.hxx b/framework/inc/services/frameloaderfactory.hxx
index 4ed165c1e173..9ebd6cab93e9 100644
--- a/framework/inc/services/frameloaderfactory.hxx
+++ b/framework/inc/services/frameloaderfactory.hxx
@@ -248,14 +248,14 @@ class FrameLoaderFactory : public ThreadHelpBase
@param -
@return A list of well known loader. Is static at runtime!
- @onerror No error should occure.
+ @onerror No error should occur.
*//*-*****************************************************************************************************/
virtual css::uno::Sequence< ::rtl::OUString > SAL_CALL getElementNames() throw( css::uno::RuntimeException );
/*-****************************************************************************************************//**
@short check if searched frame loader exist in configuration
- @descr Normaly nobody need these method realy (use getElementNames() in combination with getByName()).
+ @descr Normaly nobody needs really these method (use getElementNames() in combination with getByName()).
We guarantee correctness of these mechanism. There is no reason to check for existing elements then ...
but if you have an unknwon name and has no fun to search it in returned sequence ...
you can call these ...
@@ -266,7 +266,7 @@ class FrameLoaderFactory : public ThreadHelpBase
@param "sName", implementation name of searched frame loader
@return sal_True if loader exist, sal_False otherwise.
- @onerror No error should occure.
+ @onerror No error should occur.
*//*-*****************************************************************************************************/
virtual sal_Bool SAL_CALL hasByName( const ::rtl::OUString& sName ) throw( css::uno::RuntimeException );
@@ -277,14 +277,14 @@ class FrameLoaderFactory : public ThreadHelpBase
/*-****************************************************************************************************//**
@short return the type of retrun value of method XNameAccess::getByName()
- @descr In these implementation its a Sequence< PropertyValue > everytime!
+ @descr In these implementation its a Sequence< PropertyValue > every time!
@seealso description of interface XNameAccess
@param -
@return Type of Sequence< PropertyValue >.
- @onerror No error should occure.
+ @onerror No error should occur.
*//*-*****************************************************************************************************/
virtual css::uno::Type SAL_CALL getElementType() throw( css::uno::RuntimeException );
@@ -299,7 +299,7 @@ class FrameLoaderFactory : public ThreadHelpBase
@param -
@return sal_True if information available, sal_False otherwise.
- @onerror No error should occure.
+ @onerror No error should occur.
*//*-*****************************************************************************************************/
virtual sal_Bool SAL_CALL hasElements() throw( css::uno::RuntimeException );
@@ -329,7 +329,7 @@ class FrameLoaderFactory : public ThreadHelpBase
@param "pLoaderInfo" configuration structure of these loader.
@return -
- @onerror No error should occure.
+ @onerror No error should occur.
*//*-*****************************************************************************************************/
void impl_initializeLoader( css::uno::Reference< css::uno::XInterface >& xLoader, const Loader& pLoaderInfo );
diff --git a/framework/inc/services/layoutmanager.hxx b/framework/inc/services/layoutmanager.hxx
index a653ded3873a..287f4fb1d563 100644
--- a/framework/inc/services/layoutmanager.hxx
+++ b/framework/inc/services/layoutmanager.hxx
@@ -101,7 +101,7 @@ namespace framework
typedef ::comphelper::OPropertyContainer LayoutManager_PBase;
class LayoutManager : public LayoutManager_Base ,
// base classes
- // Order is neccessary for right initialization!
+ // Order is necessary for right initialization!
private ThreadHelpBase , // Struct for right initalization of mutex member! Must be first of baseclasses.
public ::cppu::OBroadcastHelper ,
public ILayoutNotifications ,
diff --git a/framework/inc/services/license.hxx b/framework/inc/services/license.hxx
index 29aacc5db5e9..c0a291bc7d38 100644
--- a/framework/inc/services/license.hxx
+++ b/framework/inc/services/license.hxx
@@ -68,7 +68,7 @@ namespace framework
public css::task::XJob ,
public css::util::XCloseable ,
// base classes
- // Order is neccessary for right initialization!
+ // Order is necessary for right initialization!
private ThreadHelpBase , // Struct for right initalization of mutex member! Must be first of baseclasses.
public ::cppu::OWeakObject // => XWeak, XInterface
{
diff --git a/framework/inc/services/logindialog.hxx b/framework/inc/services/logindialog.hxx
index 8b9089ff4590..ec025ae082e5 100644
--- a/framework/inc/services/logindialog.hxx
+++ b/framework/inc/services/logindialog.hxx
@@ -372,7 +372,7 @@ class cIMPL_Dialog : public ModalDialog
@descr This dialog need his own ressource. We can't use the global ressource manager!
We must use our own.
You must give us the ressource language. If no right ressource could be found -
- any existing one is used automaticly!
+ any existing one is used automatically!
@seealso method setValues()
@@ -445,7 +445,7 @@ class LoginDialog : public XTYPEPROVIDER ,
public XSERVICEINFO ,
public XDIALOG ,
public XFLUSHABLE ,
- private ThreadHelpBase , // Order of baseclasses is neccessary for right initialization!
+ private ThreadHelpBase , // Order of baseclasses is necessary for right initialization!
public OBROADCASTHELPER ,
public OPROPERTYSETHELPER ,
public OWEAKOBJECT
@@ -502,7 +502,7 @@ class LoginDialog : public XTYPEPROVIDER ,
/*-****************************************************************************************************//**
@short write changed values to configuration
- @descr Normaly the dialog returns with an OK or ERROR value. If OK occure - we flush data
+ @descr Normaly the dialog returns with an OK or ERROR value. If OK occur - we flush data
auomaticly. But otherwise we do nothing. If user of this service wish to use property set
only without any UI(!) - he must call "flush()" explicitly to write data!
@@ -597,7 +597,7 @@ class LoginDialog : public XTYPEPROVIDER ,
Don't use this directly!
You must try to convert the value of given propertyhandle and
return results of this operation. This will be use to ask vetoable
- listener. If no listener have a veto, we will change value realy!
+ listener. If no listener have a veto, we will change value really!
( in method setFastPropertyValue_NoBroadcast(...) )
@seealso class OPropertySetHelper
@@ -623,7 +623,7 @@ class LoginDialog : public XTYPEPROVIDER ,
@descr This method is calling from helperclass "OPropertySetHelper".
Don't use this directly!
Handle and value are valid everyway! You must set the new value only.
- After this, baseclass send messages to all listener automaticly.
+ After this, baseclass send messages to all listener automatically.
@seealso OPropertySetHelper
@@ -708,7 +708,7 @@ class LoginDialog : public XTYPEPROVIDER ,
/*-****************************************************************************************************//**
@short helper method to check if a property will change his value
- @descr Is neccessary for vetoable listener mechanism of OPropertySethelper.
+ @descr Is necessary for vetoable listener mechanism of OPropertySethelper.
@seealso -
@@ -803,9 +803,9 @@ class LoginDialog : public XTYPEPROVIDER ,
/*-****************************************************************************************************//**
@short helper methods to read/write properties from/to ini file
- @descr Using of Config-Class isn't easy everytime :-(
- Thats the reason for these helper. State of operation isn't realy important ..
- but we assert impossible cases or occured errors!
+ @descr Using of Config-Class isn't easy every time :-(
+ Thats the reason for these helper. State of operation isn't really important ..
+ but we assert impossible cases or occurred errors!
@seealso -
diff --git a/framework/inc/services/modulemanager.hxx b/framework/inc/services/modulemanager.hxx
index aa2b8d55cd0e..8a4bbaa83ac5 100644
--- a/framework/inc/services/modulemanager.hxx
+++ b/framework/inc/services/modulemanager.hxx
@@ -64,7 +64,7 @@ class ModuleManager : public css::lang::XTypeProvider
, public css::frame::XModuleManager
, public css::container::XNameReplace // => XNameAccess, XElementAccess
, public css::container::XContainerQuery
- // attention! Must be the first base class to guarentee right initialize lock ...
+ // attention! Must be the first base class to guarantee right initialize lock ...
, private ThreadHelpBase
, public ::cppu::OWeakObject
{
@@ -154,7 +154,7 @@ class ModuleManager : public css::lang::XTypeProvider
Note: A writable configuration access
must be created explicitly. Otherwise
- we cant make sure that broken write requests
+ we can't make sure that broken write requests
wont affect our read access !
@return [com.sun.star.container.XNameAccess]
diff --git a/framework/inc/services/pathsettings.hxx b/framework/inc/services/pathsettings.hxx
index 5a47393e9df7..a988c703876c 100644
--- a/framework/inc/services/pathsettings.hxx
+++ b/framework/inc/services/pathsettings.hxx
@@ -67,7 +67,7 @@ class PathSettings : public css::lang::XTypeProvider ,
public css::lang::XServiceInfo ,
public css::util::XChangesListener , // => XEventListener
// base classes
- // Order is neccessary for right initialization!
+ // Order is necessary for right initialization!
private ThreadHelpBase ,
public ::cppu::OBroadcastHelper ,
public ::cppu::OPropertySetHelper , // => XPropertySet / XFastPropertySet / XMultiPropertySet
@@ -113,7 +113,7 @@ class PathSettings : public css::lang::XTypeProvider ,
/// this special path is used to generate feature depending content there
::rtl::OUString sWritePath;
- /// indicates real single pathes, which uses WritePath property only
+ /// indicates real single paths, which uses WritePath property only
sal_Bool bIsSinglePath;
/// simple handling of finalized/mandatory states ... => we know one state READONLY only .-)
@@ -164,7 +164,7 @@ class PathSettings : public css::lang::XTypeProvider ,
public:
/** initialize a new instance of this class.
- Attention: It's neccessary for right function of this class, that the order of base
+ Attention: It's necessary for right function of this class, that the order of base
classes is the right one. Because we transfer information from one base to another
during this ctor runs! */
PathSettings(const css::uno::Reference< css::lang::XMultiServiceFactory >& xSMGR);
@@ -227,7 +227,7 @@ class PathSettings : public css::lang::XTypeProvider ,
sal_Bool bReSubst);
- /** converts our new string list schema to the old ";" seperated schema ... */
+ /** converts our new string list schema to the old ";" separated schema ... */
::rtl::OUString impl_convertPath2OldStyle(const PathSettings::PathInfo& rPath ) const;
OUStringList impl_convertOldStyle2Path(const ::rtl::OUString& sOldStylePath) const;
diff --git a/framework/inc/services/pluginframe.hxx b/framework/inc/services/pluginframe.hxx
index 555cc19718c5..3673d6df1dcf 100644
--- a/framework/inc/services/pluginframe.hxx
+++ b/framework/inc/services/pluginframe.hxx
@@ -80,7 +80,7 @@ namespace framework{
class PlugInFrame : public css::lang::XInitialization ,
public css::mozilla::XPluginInstance ,
public css::frame::XDispatchResultListener , // => XEVENTLISTENER
- public Frame // Order of baseclasses is neccessary for right initialization!
+ public Frame // Order of baseclasses is necessary for right initialization!
{
//-------------------------------------------------------------------------------------------------------------
// public methods
@@ -268,7 +268,7 @@ class PlugInFrame : public css::lang::XInitialization ,
sal_Bool m_bILoad ; /// PlugInFrame has a valid loader which load the document and wait for finished/cancelled
sal_Bool m_bIHaveDocument ; /// We have a document loaded successful.
css::uno::Reference< css::frame::XDispatchProvider > m_xPlugInDispatcher ; /// Dispatcher to forward dispatches to browser
- static sal_Bool m_bRemoteFactoriesExist ; /// indicates, if remote factories was already registered (neccessary one times only!)
+ static sal_Bool m_bRemoteFactoriesExist ; /// indicates, if remote factories was already registered (necessary one times only!)
SvtCommandOptions m_aCommandOptions ; /// ref counted class to support disabling commands defined by configuration file
}; // class PlugInFrame
diff --git a/framework/inc/services/substitutepathvars.hxx b/framework/inc/services/substitutepathvars.hxx
index b6234cf7a54f..8604e61dac3c 100644
--- a/framework/inc/services/substitutepathvars.hxx
+++ b/framework/inc/services/substitutepathvars.hxx
@@ -188,7 +188,7 @@ enum PreDefVariable
PREDEFVAR_PROGURL,
PREDEFVAR_USERURL,
PREDEFVAR_WORKDIRURL,
- // --> PB 2004-10-27 #i32656# - new variable of hierachy service
+ // --> PB 2004-10-27 #i32656# - new variable of hierarchy service
PREDEFVAR_BASEINSTURL,
PREDEFVAR_USERDATAURL,
// <--
diff --git a/framework/inc/services/task.hxx b/framework/inc/services/task.hxx
index 731e783f83f2..f97cabd1712e 100644
--- a/framework/inc/services/task.hxx
+++ b/framework/inc/services/task.hxx
@@ -77,7 +77,7 @@ namespace framework{
*//*-*************************************************************************************************************/
class Task : public css::frame::XTask , // => XFrame => XComponent
- public Frame // Order of baseclasses is neccessary for right initialization!
+ public Frame // Order of baseclasses is necessary for right initialization!
{
//-------------------------------------------------------------------------------------------------------------
// public methods
@@ -429,7 +429,7 @@ class Task : public css::frame::XTask , // => XFrame => XComponent
Don't use this directly!
You must try to convert the value of given propertyhandle and
return results of this operation. This will be use to ask vetoable
- listener. If no listener have a veto, we will change value realy!
+ listener. If no listener have a veto, we will change value really!
( in method setFastPropertyValue_NoBroadcast(...) )
@seealso OPropertySetHelper
@@ -455,7 +455,7 @@ class Task : public css::frame::XTask , // => XFrame => XComponent
@descr This method is calling from helperclass "OPropertySetHelper".
Don't use this directly!
Handle and value are valid everyway! You must set the new value only.
- After this, baseclass send messages to all listener automaticly.
+ After this, baseclass send messages to all listener automatically.
@seealso OPropertySetHelper
diff --git a/framework/inc/services/taskcreatorsrv.hxx b/framework/inc/services/taskcreatorsrv.hxx
index 4533ca542534..d7f8f3015e18 100644
--- a/framework/inc/services/taskcreatorsrv.hxx
+++ b/framework/inc/services/taskcreatorsrv.hxx
@@ -62,7 +62,7 @@ namespace framework
class TaskCreatorService : public css::lang::XTypeProvider
, public css::lang::XServiceInfo
, public css::lang::XSingleServiceFactory
- // attention! Must be the first base class to guarentee right initialize lock ...
+ // attention! Must be the first base class to guarantee right initialize lock ...
, private ThreadHelpBase
, public ::cppu::OWeakObject
{
@@ -99,7 +99,7 @@ class TaskCreatorService : public css::lang::XTypeProvider
static const ::rtl::OUString ARGUMENT_SUPPORTPERSISTENTWINDOWSTATE;
/** [sal_Bool] enable/disable special mode, where the title bar of our
- the new created frame will be updated automaticly.
+ the new created frame will be updated automatically.
Default = ON !
*/
static const ::rtl::OUString ARGUMENT_ENABLE_TITLEBARUPDATE;
diff --git a/framework/inc/stdtypes.h b/framework/inc/stdtypes.h
index ba1dbc8de6da..72f4a1fb22bc 100644
--- a/framework/inc/stdtypes.h
+++ b/framework/inc/stdtypes.h
@@ -104,7 +104,7 @@ struct KeyEventEqualsFunc
/**
Basic string list based on a std::vector()
- It implements some additional funtionality which can be usefull but
+ It implements some additional funtionality which can be useful but
is missing at the normal vector implementation.
*/
class OUStringList : public ::comphelper::SequenceAsVector< ::rtl::OUString >
@@ -128,7 +128,7 @@ class OUStringList : public ::comphelper::SequenceAsVector< ::rtl::OUString >
return ::std::find(begin(), end(), sElement);
}
- // the only way to free used memory realy!
+ // the only way to free used memory really!
void free()
{
OUStringList().swap( *this );
@@ -139,7 +139,7 @@ class OUStringList : public ::comphelper::SequenceAsVector< ::rtl::OUString >
/**
Basic string queue based on a std::queue()
- It implements some additional funtionality which can be usefull but
+ It implements some additional funtionality which can be useful but
is missing at the normal std implementation.
*/
typedef ::std::queue< ::rtl::OUString > OUStringQueue;
@@ -148,7 +148,7 @@ typedef ::std::queue< ::rtl::OUString > OUStringQueue;
/**
Basic hash based on a std::hash_map() which provides key=[OUString] and value=[template type] pairs
- It implements some additional funtionality which can be usefull but
+ It implements some additional funtionality which can be useful but
is missing at the normal hash implementation.
*/
template< class TType >
@@ -159,7 +159,7 @@ class BaseHash : public ::std::hash_map< ::rtl::OUString ,
{
public:
- // the only way to free used memory realy!
+ // the only way to free used memory really!
void free()
{
BaseHash().swap( *this );
diff --git a/framework/inc/threadhelp/fairrwlock.hxx b/framework/inc/threadhelp/fairrwlock.hxx
index 1979e8926d8d..f815c7afe8d7 100644
--- a/framework/inc/threadhelp/fairrwlock.hxx
+++ b/framework/inc/threadhelp/fairrwlock.hxx
@@ -85,7 +85,7 @@ class FairRWLock : public IRWLock
@short standard ctor
@descr Initialize instance with right start values for correct working.
no reader could exist => m_nReadCount = 0
- don't block first comming writer => m_aWriteCondition.set()
+ don't block first coming writer => m_aWriteCondition.set()
@seealso -
@@ -231,7 +231,7 @@ class FairRWLock : public IRWLock
@attention Don't call this method if you are not a writer!
Results are not defined then ...
- An upgrade can't be implemented realy ... because acquiring new access
+ An upgrade can't be really implemented ... because acquiring new access
will be the same - there no differences!
@seealso -
diff --git a/framework/inc/threadhelp/gate.hxx b/framework/inc/threadhelp/gate.hxx
index d081b2e7183d..0a4aad96f83b 100644
--- a/framework/inc/threadhelp/gate.hxx
+++ b/framework/inc/threadhelp/gate.hxx
@@ -165,7 +165,7 @@ class Gate : public IGate
@short open gate for current waiting threads
@descr All current waiting threads stand in wait() at line "m_aPassage.wait()" ...
With this call you can open the passage for these waiting ones.
- The "gap" is closed by any new thread which call wait() automaticly!
+ The "gap" is closed by any new thread which call wait() automatically!
@seealso method wait()
@seealso method open()
diff --git a/framework/inc/threadhelp/inoncopyable.h b/framework/inc/threadhelp/inoncopyable.h
index 7fa18d1e22c4..da05ec905ac4 100644
--- a/framework/inc/threadhelp/inoncopyable.h
+++ b/framework/inc/threadhelp/inoncopyable.h
@@ -52,8 +52,8 @@ namespace framework{
/*-************************************************************************************************************//**
@descr Use this as one of your base classes to disable
- all possiblities to copy or assign one object to another one!
- We declare neccessary functions private to do so.
+ all possibilities to copy or assign one object to another one!
+ We declare necessary functions private to do so.
*//*-*************************************************************************************************************/
class INonCopyable
{
diff --git a/framework/inc/threadhelp/itransactionmanager.h b/framework/inc/threadhelp/itransactionmanager.h
index 1ca85c2de4ac..03d966f8be3c 100644
--- a/framework/inc/threadhelp/itransactionmanager.h
+++ b/framework/inc/threadhelp/itransactionmanager.h
@@ -44,7 +44,7 @@ namespace framework{
/*-************************************************************************************************************//**
@descr Describe different states of a feature of following implementation.
- During live time of an object different working states occure:
+ During live time of an object different working states occur:
initialization - working - closing - closed
If you whish to implement thread safe classes you should use these feature to protect
your code against calls at wrong time. e.g. you are not full initialized but somewhere
@@ -113,7 +113,7 @@ enum EExceptionMode
/*-************************************************************************************************************//**
@descr How can you use the transaction manager?
Use it in combination with an TransactionGuard, which register your transaction in ctor
- and release in dtor automaticly! Follow interface class can be used to make using
+ and release in dtor automatically! Follow interface class can be used to make using
of different manager implmentations possible by using same guard.
*//*-*************************************************************************************************************/
class ITransactionManager
diff --git a/framework/inc/threadhelp/lockhelper.hxx b/framework/inc/threadhelp/lockhelper.hxx
index d79bd689146c..b6d49e68d683 100644
--- a/framework/inc/threadhelp/lockhelper.hxx
+++ b/framework/inc/threadhelp/lockhelper.hxx
@@ -79,12 +79,12 @@ enum ELockType
@short helper to set right lock in right situation
@descr This helper support different types of locking:
a) no locks - transparent for user!
- This could be usefull for simluation or single threaded environments!
+ This could be useful for simluation or single threaded environments!
b) own mutex
- An object use his own osl-mutex to be threadsafe. Usefull for easy and exclusiv locking.
+ An object use his own osl-mutex to be threadsafe. Useful for easy and exclusiv locking.
c) solar mutex
An object use our solar mutex and will be a part of a greater safed "threadsafe code block".
- Could be usefull for simulation and testing of higher modules!
+ Could be useful for simulation and testing of higher modules!
d) fair rw-lock
An object use an implementation of a fair rw-lock. This increase granularity of t hreadsafe mechanism
and should be used for high performance threadsafe code!
@@ -153,10 +153,10 @@ class FWI_DLLPUBLIC LockHelper : public IMutex
// ... or the solarmuex as "m_pSolarMutex" (must be set from outside! because some components must be vcl-free!)
// ... but sometimes you need a shareable osl mutex!
// In this case you has some problems: i ) If your lock type is set to E_OWNMUTEX => it's easy; you can use your member "m_pOwnMutex" - it's a osl mutex.
- // Creation and using of "m_pShareableOslMutex" isn't neccessary!
+ // Creation and use of "m_pShareableOslMutex" isn't necessary!
// ii ) Otherwise you have no osl mutex ... so you must create "m_pShareableOslMutex" and use it twice!
- // In this case you must lock two member everytime - "m_pShareableMutex" AND "m_pFairRWLock" or "m_pSolarMutex" or ...
- // It isn't realy fine - but the only possible way.
+ // In this case you must lock two members every time - "m_pShareableMutex" AND "m_pFairRWLock" or "m_pSolarMutex" or ...
+ // It isn't really fine - but the only possible way.
// iii) There exist another special case - E_NOTHING is set! Then we should create this shareable mutex ...
// nad you can use it ... but this implmentation ignore it.
//-------------------------------------------------------------------------------------------------------------
diff --git a/framework/inc/threadhelp/readguard.hxx b/framework/inc/threadhelp/readguard.hxx
index 8abd10eb0190..61e943b47da3 100644
--- a/framework/inc/threadhelp/readguard.hxx
+++ b/framework/inc/threadhelp/readguard.hxx
@@ -63,7 +63,7 @@ namespace framework{
@descr This guard should be used to set a lock for reading object internal member.
Nobody can control it but don't use member after successfuly locking for writing!
We never need a own mutex to safe our internal member access - because
- a guard is used as function-local member only. There exist no multithreaded access to it realy ...
+ a guard is used as function-local member only. There exists no multithreaded access to it really ...
@attention a) To prevent us against wrong using, the default ctor, copy ctor and the =operator are maked private!
b) Use interface "IRWLock" of set LockHelper only - because we must support a finer granularity of locking.
@@ -111,7 +111,7 @@ class ReadGuard : private INonCopyable
/*-****************************************************************************************************//**
@short dtor
- @descr We unlock the used lock member automaticly if user forget it.
+ @descr We unlock the used lock member automatically if user forgets it.
@seealso -
@@ -148,7 +148,7 @@ class ReadGuard : private INonCopyable
/*-****************************************************************************************************//**
@short unset read lock
@descr Call this method to unlock the rw-lock temp.!
- Normaly we do it at dtor automaticly for you ...
+ Normaly we do it at dtor automatically for you ...
@seealso method lock()
@@ -173,7 +173,7 @@ class ReadGuard : private INonCopyable
/*-****************************************************************************************************//**
@short disable using of these functions!
- @descr It's not allowed to use this methods. Different problem can occure otherwise.
+ @descr It's not allowed to use this methods. Different problems can occur otherwise.
Thats why we disable it by make it private.
@seealso other ctor
diff --git a/framework/inc/threadhelp/resetableguard.hxx b/framework/inc/threadhelp/resetableguard.hxx
index 5dfe0dced88d..556b46f43300 100644
--- a/framework/inc/threadhelp/resetableguard.hxx
+++ b/framework/inc/threadhelp/resetableguard.hxx
@@ -84,7 +84,7 @@ class ResetableGuard : private INonCopyable
/*-****************************************************************************************************//**
@short ctors
@descr Use these ctor methods to initialize the guard right.
- Given lock reference must be valid - otherwise crashes could occure!
+ Given lock reference must be valid - otherwise crashes could occur!
@seealso -
@@ -169,7 +169,7 @@ class ResetableGuard : private INonCopyable
/*-****************************************************************************************************//**
@short disable using of these functions!
- @descr It's not allowed to use this methods. Different problem can occure otherwise.
+ @descr It's not allowed to use this methods. Different problems can occur otherwise.
Thats why we disable it by make it private.
@seealso other ctor
diff --git a/framework/inc/threadhelp/transactionguard.hxx b/framework/inc/threadhelp/transactionguard.hxx
index f62037d293b5..d2a86ae9e9c8 100644
--- a/framework/inc/threadhelp/transactionguard.hxx
+++ b/framework/inc/threadhelp/transactionguard.hxx
@@ -58,9 +58,9 @@ namespace framework{
@descr If you whish to support non breakable method calls without lockingf any mutex, rw-lock or
something like that - you should use this guard implementation.
Initialize it at first in your method and don't release it till end of your function!
- Your "transaction" is registered in ctor and automaticly released in dtor.
+ Your "transaction" is registered in ctor and automatically released in dtor.
Use set/get of working mode to enable/disable further transactions.
- It's possible too, to enable automaticly throwing of some exceptions for illegal
+ It's possible too, to enable automatically throwing of some exceptions for illegal
transaction requests ... e.g. interface call for already disposed objects.
@attention To prevent us against wrong using, the default ctor, copy ctor and the =operator are maked private!
@@ -80,9 +80,9 @@ class TransactionGuard : private INonCopyable
/*-****************************************************************************************************//**
@short ctors
@descr Use these ctor methods to initialize the guard right.
- Given reference must be valid - otherwise crashes could occure!
+ Given reference must be valid - otherwise crashes could occur!
- @attention It's not neccessary to lock any mutex here! Because a ctor should not be called
+ @attention It's not necessary to lock any mutex here! Because a ctor should not be called
from different threads at the same time ... this class use no refcount mechanism!
@seealso -
@@ -158,7 +158,7 @@ class TransactionGuard : private INonCopyable
/*-****************************************************************************************************//**
@short disable using of these functions!
- @descr It's not allowed to use this methods. Different problem can occure otherwise.
+ @descr It's not allowed to use this methods. Different problems can occur otherwise.
Thats why we disable it by make it private.
@seealso other ctor
diff --git a/framework/inc/threadhelp/transactionmanager.hxx b/framework/inc/threadhelp/transactionmanager.hxx
index b363788ea581..d911edf50614 100644
--- a/framework/inc/threadhelp/transactionmanager.hxx
+++ b/framework/inc/threadhelp/transactionmanager.hxx
@@ -67,7 +67,7 @@ namespace framework{
synchronization like e.g. mutex, rw-lock!
That protect your code against wrong calls at wrong time ... e.g. calls after disposing an object!
Use combination of EExceptionMode and ERejectReason to detect rejected requests
- and react for it. You can enable automaticly throwing of exceptions too.
+ and react for it. You can enable automatically throwing of exceptions too.
@implements ITransactionManager
@base INonCopyable
diff --git a/framework/inc/threadhelp/writeguard.hxx b/framework/inc/threadhelp/writeguard.hxx
index 5fb442dddc92..a8b99460b7bf 100644
--- a/framework/inc/threadhelp/writeguard.hxx
+++ b/framework/inc/threadhelp/writeguard.hxx
@@ -61,7 +61,7 @@ namespace framework{
@short implement a guard to set write locks
@descr This guard should be used to set a lock for reading AND writing object internal member.
We never need a own mutex to safe our internal member access - because
- a guard is used as function-local member only. There exist no multithreaded access to it realy ...
+ a guard is used as function-local member only. There exist no multithreaded access to it really ...
@attention a) To prevent us against wrong using, the default ctor, copy ctor and the =operator are maked private!
b) Use interface "IRWLock" of set LockHelper only - because we must support a finer granularity of locking.
@@ -109,7 +109,7 @@ class WriteGuard : private INonCopyable
/*-****************************************************************************************************//**
@short dtor
- @descr We unlock the used lock member automaticly if user forget it.
+ @descr We unlock the used lock member automatically if user forget it.
@seealso -
@@ -160,7 +160,7 @@ class WriteGuard : private INonCopyable
/*-****************************************************************************************************//**
@short unset write lock
@descr Call this method to unlock the rw-lock temp.!
- Normaly we do it at dtor automaticly for you ...
+ Normaly we do it at dtor automatically for you ...
@seealso method lock()
@@ -175,7 +175,7 @@ class WriteGuard : private INonCopyable
{
case E_READLOCK : {
// User has downgraded to a read lock before!
- // => There isn't realy a write lock ...
+ // => There isn't really a write lock ...
m_pLock->releaseReadAccess();
m_eMode = E_NOLOCK;
}
@@ -219,7 +219,7 @@ class WriteGuard : private INonCopyable
@param -
@return Current set lock mode.
- @onerror No error should occure.
+ @onerror No error should occur.
*//*-*****************************************************************************************************/
inline ELockMode getMode() const
{
@@ -233,7 +233,7 @@ class WriteGuard : private INonCopyable
/*-****************************************************************************************************//**
@short disable using of these functions!
- @descr It's not allowed to use this methods. Different problem can occure otherwise.
+ @descr It's not allowed to use this methods. Different problem can occur otherwise.
Thats why we disable it by make it private.
@seealso other ctor
diff --git a/framework/inc/uifactory/uielementfactorymanager.hxx b/framework/inc/uifactory/uielementfactorymanager.hxx
index 763ee3357cf1..a5ec9f09dae2 100644
--- a/framework/inc/uifactory/uielementfactorymanager.hxx
+++ b/framework/inc/uifactory/uielementfactorymanager.hxx
@@ -62,7 +62,7 @@ namespace framework
class ConfigurationAccess_FactoryManager : // interfaces
// baseclasses
- // Order is neccessary for right initialization!
+ // Order is necessary for right initialization!
private ThreadHelpBase ,
public ::cppu::WeakImplHelper1< ::com::sun::star::container::XContainerListener>
{
diff --git a/framework/inc/xml/acceleratorconfigurationreader.hxx b/framework/inc/xml/acceleratorconfigurationreader.hxx
index 172b39e2e8f1..5468b9450ff0 100644
--- a/framework/inc/xml/acceleratorconfigurationreader.hxx
+++ b/framework/inc/xml/acceleratorconfigurationreader.hxx
@@ -126,7 +126,7 @@ class AcceleratorConfigurationReader : public css::xml::sax::XDocumentHandler
/** @short provide informations abou the parsing state.
@descr We use it to find out the line and column, where
- an error occure.
+ an error occur.
*/
css::uno::Reference< css::xml::sax::XLocator > m_xLocator;
diff --git a/framework/qa/complex/XUserInputInterception/EventTest.java b/framework/qa/complex/XUserInputInterception/EventTest.java
index daa0d586e397..dda68f17fdc2 100644
--- a/framework/qa/complex/XUserInputInterception/EventTest.java
+++ b/framework/qa/complex/XUserInputInterception/EventTest.java
@@ -415,7 +415,7 @@ public class EventTest {
return true;
}
/**
- * This event does nothing usefull
+ * This event does nothing useful
* @param oEvent refers to the object that fired the event.
*/
public void disposing( EventObject oEvent ){
@@ -451,7 +451,7 @@ public class EventTest {
return true;
}
/**
- * This event does nothing usefull
+ * This event does nothing useful
* @param oEvent refers to the object that fired the event.
*/
public void disposing( EventObject oEvent ){
diff --git a/framework/qa/complex/contextMenuInterceptor/ContextMenuInterceptor.java b/framework/qa/complex/contextMenuInterceptor/ContextMenuInterceptor.java
index 953e7b0c5ac5..77da45516894 100644
--- a/framework/qa/complex/contextMenuInterceptor/ContextMenuInterceptor.java
+++ b/framework/qa/complex/contextMenuInterceptor/ContextMenuInterceptor.java
@@ -123,7 +123,7 @@ public class ContextMenuInterceptor implements XContextMenuInterceptor
}
catch (com.sun.star.uno.Exception ex)
{
- // something strange has happend!
+ // something strange has happened!
}
catch (java.lang.Throwable ex)
{
diff --git a/framework/qa/complex/dispatches/Interceptor.java b/framework/qa/complex/dispatches/Interceptor.java
index c4fb088a2a7c..d41b6ba59dee 100644
--- a/framework/qa/complex/dispatches/Interceptor.java
+++ b/framework/qa/complex/dispatches/Interceptor.java
@@ -90,7 +90,7 @@ public class Interceptor implements XDispatchProvider,
/** counts calls of setSlave...().
So the outside API test can use this value to know if this interceptor
- was realy added to the interceptor chain of OOo.
+ was really added to the interceptor chain of OOo.
*/
private int m_nRegistrationCount = 0;
@@ -260,7 +260,7 @@ public class Interceptor implements XDispatchProvider,
// ____________________
/** set a new list of URL's, which should be used on registration time
- (that's why it's neccessary to call this impl-method before the interceptor
+ (that's why it's necessary to call this impl-method before the interceptor
is used at the OOo API!) to optimize the interception chain.
*/
public synchronized void setURLs4InterceptionInfo(String[] lURLs)
@@ -271,7 +271,7 @@ public class Interceptor implements XDispatchProvider,
// ____________________
/** set a new list of URL's, which should be blocked by this interceptor.
- (that's why it's neccessary to call this impl-method before the interceptor
+ (that's why it's necessary to call this impl-method before the interceptor
is used at the OOo API!)
*/
public synchronized void setURLs4URLs4Blocking(String[] lURLs)
diff --git a/framework/qa/complex/dispatches/checkdispatchapi.java b/framework/qa/complex/dispatches/checkdispatchapi.java
index fd93a8029841..270a89fffbbc 100644
--- a/framework/qa/complex/dispatches/checkdispatchapi.java
+++ b/framework/qa/complex/dispatches/checkdispatchapi.java
@@ -125,7 +125,7 @@ public class checkdispatchapi
}
catch (java.lang.Throwable ex)
{
- fail("Cant initialize test environment.");
+ fail("Can't initialize test environment.");
}
}
@@ -258,7 +258,7 @@ public class checkdispatchapi
public void checkInterceptorLifeTime()
{
// Note: It's important for the following test, that aInterceptor will be hold alive by the uno reference
- // xInterceptor. Otherwhise we cant check some internal states of aInterceptor at the end of this method, because
+ // xInterceptor. Otherwise we can't check some internal states of aInterceptor at the end of this method, because
// it was already killed .-)
Interceptor aInterceptor = new Interceptor();
@@ -283,7 +283,7 @@ public class checkdispatchapi
if (bIsRegistered)
{
- fail("Interceptor was not deregistered automaticly on closing the corresponding frame.");
+ fail("Interceptor was not deregistered automatically on closing the corresponding frame.");
}
System.out.println("Destruction of interception chain works as designed .-)");
diff --git a/framework/qa/complex/framework/autosave/AutoSave.java b/framework/qa/complex/framework/autosave/AutoSave.java
index 2bd97f45bea6..8b3da1a541b7 100644
--- a/framework/qa/complex/framework/autosave/AutoSave.java
+++ b/framework/qa/complex/framework/autosave/AutoSave.java
@@ -317,7 +317,7 @@ public class AutoSave
{
m_aLog.log(Protocol.TYPE_WARNING , "got IOException on calling doc.store()." );
m_aLog.log(Protocol.TYPE_WARNING_INFO, "Please check the reason for that more in detail." );
- m_aLog.log(Protocol.TYPE_WARNING_INFO, "A message like \"Concurrent save requests are not allowed.\" was intended and doesnt show an error!");
+ m_aLog.log(Protocol.TYPE_WARNING_INFO, "A message like \"Concurrent save requests are not allowed.\" was intended and doesn't show an error!");
m_aLog.log(Protocol.TYPE_WARNING_INFO, "Message of the original exception:" );
m_aLog.log(Protocol.TYPE_WARNING_INFO, exIO.getMessage());
}
@@ -351,14 +351,14 @@ public class AutoSave
}
else
{
- m_aLog.log(Protocol.TYPE_ERROR, "closeDoc() = ERROR. Doc doesnt provide needed interface!");
+ m_aLog.log(Protocol.TYPE_ERROR, "closeDoc() = ERROR. Doc doesn't provide needed interface!");
}
}
catch(com.sun.star.util.CloseVetoException exVeto)
{
m_aLog.log(Protocol.TYPE_WARNING , "got CloseVetoException on calling doc.close()." );
m_aLog.log(Protocol.TYPE_WARNING_INFO, "Please check the reason for that more in detail." );
- m_aLog.log(Protocol.TYPE_WARNING_INFO, "A message like \"Cant close while saving.\" was intended and doesnt show an error!");
+ m_aLog.log(Protocol.TYPE_WARNING_INFO, "A message like \"Can't close while saving.\" was intended and doesn't show an error!");
m_aLog.log(Protocol.TYPE_WARNING_INFO, exVeto.getMessage());
}
diff --git a/framework/qa/complex/framework/autosave/Protocol.java b/framework/qa/complex/framework/autosave/Protocol.java
index 271d4bdf977e..2196ce3d30c8 100644
--- a/framework/qa/complex/framework/autosave/Protocol.java
+++ b/framework/qa/complex/framework/autosave/Protocol.java
@@ -59,10 +59,10 @@ import java.sql.*;
/**
* Implements a log mechanism to create a protocol of all steps of e.g. an api test
* It provides the possibility to write the logged meesages to a file and/or
- * to stdout/stderr (if neccessary at the same time!).
+ * to stdout/stderr (if necessary at the same time!).
*
* TODO
- * - implement filter, which e.g. supress showing of INFO data
+ * - implement filter, which e.g. suppress showing of INFO data
*/
public class Protocol extends JComponent
{
@@ -195,7 +195,7 @@ public class Protocol extends JComponent
private int m_nType;
/// of course, we have to know the logged message too :-)
private String m_sMessage;
- /// and it can be usefull to know the current time, when this line was created
+ /// and it can be useful to know the current time, when this line was created
private Timestamp m_aStamp;
/** ctor for fast initializing of such line */
@@ -502,7 +502,7 @@ public class Protocol extends JComponent
// ____________________
/**
- * For some modes it's neccessary, that we write some additional
+ * For some modes it's necessary, that we write some additional
* informations to the log. E.g. for html we must generate close targets.
*/
public synchronized void finish()
@@ -524,7 +524,7 @@ public class Protocol extends JComponent
/**
* log an unspecified message.
*
- * Sometimes it's not neccessary to set a special type for an message.
+ * Sometimes it's not necessary to set a special type for an message.
* The pure message seams to be enough. The type of such "pure messages"
* will be set to INFO.
*
@@ -635,7 +635,7 @@ public class Protocol extends JComponent
++m_nLine;
- // it's neccessary to open scopes before creatig the protocol line
+ // it's necessary to open scopes before creatig the protocol line
// to guarantee right tab handling for new scope value!
if ((nType & TYPE_SCOPE_OPEN) == TYPE_SCOPE_OPEN)
++m_nScope;
@@ -645,7 +645,7 @@ public class Protocol extends JComponent
String sAsciiLog = aLine.toString();
String sHTMLLog = aLine.toHTML();
- // it's neccessary to close scope after creatig the protocol line
+ // it's necessary to close scope after creatig the protocol line
// to guarantee right tab handling for old scope value!
if (
( m_nScope > 0 ) &&
@@ -671,7 +671,7 @@ public class Protocol extends JComponent
System.err.print(sAsciiLog);
// no else - it's a bit field of possible reactions!
// But these both conditions must be handled together.
- // Because we cant generate different types of log contents to the same log file.
+ // Because we can't generate different types of log contents to the same log file.
// We preferr HTML if both types are set.
if (
((m_nMode & MODE_HTML ) == MODE_HTML ) ||
@@ -757,7 +757,7 @@ public class Protocol extends JComponent
* returns a generic html header for generating html log files
*
* It's used from the method finish() to generate a valid html formated file.
- * For that its neccessary to open some special html targets like e.g. <html>.
+ * For that its necessary to open some special html targets like e.g. <html>.
*
* @return A string, which includes the whole header.
*
diff --git a/framework/qa/complex/framework/recovery/RecoveryTest.java b/framework/qa/complex/framework/recovery/RecoveryTest.java
index 58c530a2d7fb..98ec2390bbaa 100644
--- a/framework/qa/complex/framework/recovery/RecoveryTest.java
+++ b/framework/qa/complex/framework/recovery/RecoveryTest.java
@@ -584,7 +584,7 @@ public class RecoveryTest extends ComplexTestCase {
}
String tempURL = utils.getOfficeTempDir(xMSF);
- log.println("the destination for saveing is: " + tempURL);
+ log.println("the destination for saving is: " + tempURL);
try{
oUITools.setTextEditFiledText("Save to", tempURL);
} catch (java.lang.Exception e){
@@ -603,7 +603,7 @@ public class RecoveryTest extends ComplexTestCase {
/**
* This function gets the current screen size and calculate the first
- * quarter of it. This qaurter was used to postion to Office windows.
+ * quarter of it. This qaurter was used to position to Office windows.
* Further this function calculates the maximum window size so the window
* is visible if it placed on extreme position.
*/
@@ -725,7 +725,7 @@ public class RecoveryTest extends ComplexTestCase {
try{
xMathDoc = SOF.createMathDoc(frameName);
} catch (com.sun.star.uno.Exception e) {
- log.println("Exception occured while creating math document '"+frameName+"':");
+ log.println("Exception occurred while creating math document '"+frameName+"':");
failed("Couldn't create test environment");
}
return xMathDoc;
@@ -739,16 +739,16 @@ public class RecoveryTest extends ComplexTestCase {
try {
xPS.setPropertyValue("Formula", expFormula);
} catch(com.sun.star.lang.WrappedTargetException e) {
- log.println("Exception occured while filling math document with content.");
+ log.println("Exception occurred while filling math document with content.");
failed("Couldn't create test environment");
} catch(com.sun.star.lang.IllegalArgumentException e) {
- log.println("Exception occured while filling math document with content.");
+ log.println("Exception occurred while filling math document with content.");
failed("Couldn't create test environment");
} catch(com.sun.star.beans.PropertyVetoException e) {
- log.println("Exception occured while filling math document with content.");
+ log.println("Exception occurred while filling math document with content.");
failed("Couldn't create test environment");
} catch(com.sun.star.beans.UnknownPropertyException e) {
- log.println("Exception occured while filling math document with content.");
+ log.println("Exception occurred while filling math document with content.");
failed("Couldn't create test environment");
}
}
@@ -758,7 +758,7 @@ public class RecoveryTest extends ComplexTestCase {
try{
xImpressDoc = SOF.createImpressDoc(frameName);
} catch (com.sun.star.uno.Exception e) {
- log.println("Exception occured while creating impress document '"+frameName+"':");
+ log.println("Exception occurred while creating impress document '"+frameName+"':");
failed("Couldn't create test environment");
}
return xImpressDoc;
@@ -809,7 +809,7 @@ public class RecoveryTest extends ComplexTestCase {
try{
xDrawDoc = SOF.createDrawDoc(frameName);
} catch (com.sun.star.uno.Exception e) {
- log.println("Exception occured while creating draw document '"+frameName+"':");
+ log.println("Exception occurred while creating draw document '"+frameName+"':");
failed("Couldn't create test environment");
}
return xDrawDoc;
@@ -861,16 +861,16 @@ public class RecoveryTest extends ComplexTestCase {
new Type(XStyle.class),oShapeProps.getPropertyValue("Style"));
oShapeProps.setPropertyValue("ZOrder", new Integer(1));
} catch (com.sun.star.lang.WrappedTargetException e) {
- log.println("Exception occured while setting or getting property value while filling draw document with content.");
+ log.println("Exception occurred while setting or getting property value while filling draw document with content.");
failed("Couldn't create test environment");
} catch (com.sun.star.beans.UnknownPropertyException e) {
- log.println("Exception occured while setting or getting property value while filling draw document with content.");
+ log.println("Exception occurred while setting or getting property value while filling draw document with content.");
failed("Couldn't create test environment");
} catch (com.sun.star.lang.IllegalArgumentException e) {
- log.println("Exception occured while setting or getting property value while filling draw document with content.");
+ log.println("Exception occurred while setting or getting property value while filling draw document with content.");
failed("Couldn't create test environment");
} catch (com.sun.star.beans.PropertyVetoException e) {
- log.println("Exception occured while setting or getting property value while filling draw document with content.");
+ log.println("Exception occurred while setting or getting property value while filling draw document with content.");
failed("Couldn't create test environment");
}
}
@@ -888,7 +888,7 @@ public class RecoveryTest extends ComplexTestCase {
try {
xTextDoc = SOF.createTextDoc(frameName);
} catch (com.sun.star.uno.Exception e) {
- log.println("Exception occured while creating text document '"+frameName+"':");
+ log.println("Exception occurred while creating text document '"+frameName+"':");
failed("Couldn't create test environment");
}
return xTextDoc;
@@ -915,10 +915,10 @@ public class RecoveryTest extends ComplexTestCase {
oCursor, ControlCharacter.LINE_BREAK, false );
}
} catch ( com.sun.star.lang.IllegalArgumentException e ){
- log.println("Exception occured while filling text document with content.");
+ log.println("Exception occurred while filling text document with content.");
failed("Couldn't create test environment");
} catch (com.sun.star.uno.Exception e) {
- log.println("Exception occured while filling text document with content.");
+ log.println("Exception occurred while filling text document with content.");
failed("Couldn't create test environment");
}
}
@@ -930,7 +930,7 @@ public class RecoveryTest extends ComplexTestCase {
try {
xSheetDoc = SOF.createCalcDoc(frameName);
} catch (com.sun.star.uno.Exception e) {
- log.println("Exception occured while creating calc document '"+frameName+"':");
+ log.println("Exception occurred while creating calc document '"+frameName+"':");
failed("Couldn't create test environment");
}
return xSheetDoc;
@@ -956,19 +956,19 @@ public class RecoveryTest extends ComplexTestCase {
oSheet.getCellByPosition(3, 2).setFormula("xTextDoc");
oSheet.getCellByPosition(3, 3).setFormula("xTextDoc");
} catch (com.sun.star.lang.WrappedTargetException e) {
- log.println("Exception occured while filling calc document with content.");
+ log.println("Exception occurred while filling calc document with content.");
failed("Couldn't create test environment");
} catch (com.sun.star.container.NoSuchElementException e) {
- log.println("Exception occured while filling calc document with content.");
+ log.println("Exception occurred while filling calc document with content.");
failed("Couldn't create test environment");
} catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- log.println("Exception occured while filling calc document with content.");
+ log.println("Exception occurred while filling calc document with content.");
failed("Couldn't create test environment");
} catch (com.sun.star.lang.IllegalArgumentException e) {
- log.println("Exception occured while filling calc document with content.");
+ log.println("Exception occurred while filling calc document with content.");
failed("Couldn't create test environment");
} catch (com.sun.star.uno.Exception e) {
- log.println("Exception occured while filling calc document with content.");
+ log.println("Exception occurred while filling calc document with content.");
failed("Couldn't create test environment");
}
}
diff --git a/framework/qa/complex/imageManager/_XInitialization.java b/framework/qa/complex/imageManager/_XInitialization.java
index 0337c6a160b4..78e21c82dd79 100644
--- a/framework/qa/complex/imageManager/_XInitialization.java
+++ b/framework/qa/complex/imageManager/_XInitialization.java
@@ -71,7 +71,7 @@ public class _XInitialization {
}
} catch (com.sun.star.uno.Exception e) {
- System.out.println("Exception occured while method calling.") ;
+ System.out.println("Exception occurred while method calling.") ;
result = false ;
}
diff --git a/framework/qa/complex/imageManager/_XTypeProvider.java b/framework/qa/complex/imageManager/_XTypeProvider.java
index f25571ac8992..27356488e96d 100644
--- a/framework/qa/complex/imageManager/_XTypeProvider.java
+++ b/framework/qa/complex/imageManager/_XTypeProvider.java
@@ -54,7 +54,7 @@ public class _XTypeProvider {
/**
* Just calls the method.<p>
- * Has <b>OK</b> status if no runtime exceptions occured.
+ * Has <b>OK</b> status if no runtime exceptions occurred.
*/
public boolean _getImplementationId() {
boolean result = true;
diff --git a/framework/qa/complex/loadAllDocuments/CheckXComponentLoader.java b/framework/qa/complex/loadAllDocuments/CheckXComponentLoader.java
index 6495ccab97c1..e9e9f77d6863 100644
--- a/framework/qa/complex/loadAllDocuments/CheckXComponentLoader.java
+++ b/framework/qa/complex/loadAllDocuments/CheckXComponentLoader.java
@@ -71,7 +71,7 @@ import static org.junit.Assert.*;
The parameters for this have to be "ftp_access" and "http_access".
If they are not given, tests for ftp and http will fail.
- @todo We need a further test for accessing UNC pathes on windows!
+ @todo We need a further test for accessing UNC paths on windows!
*/
public class CheckXComponentLoader
{
@@ -185,7 +185,7 @@ public class CheckXComponentLoader
// define default loader for testing
// TODO think about using of bot loader instances!
m_xLoader = UnoRuntime.queryInterface(XComponentLoader.class, m_xDesktop);
- assertNotNull("Desktop service doesnt support needed component loader interface.", m_xLoader);
+ assertNotNull("Desktop service doesn't support needed component loader interface.", m_xLoader);
// get temp path for this environment
final String tempDirURL = util.utils.getOfficeTemp/*Dir*/(getMSF());
@@ -529,7 +529,7 @@ public class CheckXComponentLoader
// loadURL(m_xLoader, RESULT_ILLEGALARGUMENTEXCEPTION, sEmptyDocs, "_blank", 0,
// lProps);
//
-// System.out.println("check case senstive URLs");
+// System.out.println("check case sensitive URLs");
//
// sIllegalArgs = new String[] {
// "sLot:5000", "sloT:10909", ".unO:SaveAs", ".uno:OPEN",
diff --git a/framework/qa/complex/loadAllDocuments/StatusIndicator.java b/framework/qa/complex/loadAllDocuments/StatusIndicator.java
index e16e3221affb..5c5e069cbe38 100644
--- a/framework/qa/complex/loadAllDocuments/StatusIndicator.java
+++ b/framework/qa/complex/loadAllDocuments/StatusIndicator.java
@@ -53,7 +53,7 @@ public class StatusIndicator implements com.sun.star.task.XStatusIndicator
/**
* @const SHOWSTATUS_NO don't show the status - but save information about using of this indicator object
- * @const SHOWSTATUS_LOG the possible set protocol object will be used (it covers STDOUT, STDERR automaticly too)
+ * @const SHOWSTATUS_LOG the possible set protocol object will be used (it covers STDOUT, STDERR automatically too)
* @const SHOWSTATUS_DIALOG the status will be shown inside a java dialog
* @const SHOWSTATUS_LINK the status will be notified to interested listener (one listener only!)
*/
diff --git a/framework/qa/complex/loadAllDocuments/StreamSimulator.java b/framework/qa/complex/loadAllDocuments/StreamSimulator.java
index 340ddc6dd5e8..52556f0cd0dd 100644
--- a/framework/qa/complex/loadAllDocuments/StreamSimulator.java
+++ b/framework/qa/complex/loadAllDocuments/StreamSimulator.java
@@ -75,7 +75,7 @@ public class StreamSimulator implements com.sun.star.io.XInputStream ,
* @throw com.sun.star.io.NotConnectedException
* in case the internal streams to the file on disk couldn't
* be established.
- * They are neccessary. Otherwhise this simulator can't
+ * They are necessary. Otherwise this simulator can't
* really work.
*/
public StreamSimulator(XMultiServiceFactory xMSF,
@@ -121,7 +121,7 @@ public class StreamSimulator implements com.sun.star.io.XInputStream ,
/**
* following methods simulates the XInputStream.
* The notice all actions inside the internal protocol
- * and try to map all neccessary functions to the internal
+ * and try to map all necessary functions to the internal
* open in-stream.
*/
public int readBytes(byte[][] lData, int nBytesToRead )
@@ -275,7 +275,7 @@ public class StreamSimulator implements com.sun.star.io.XInputStream ,
/**
* following methods simulates the XOutputStream.
* The notice all actions inside the internal protocol
- * and try to map all neccessary functions to the internal
+ * and try to map all necessary functions to the internal
* open out-stream.
*/
public void writeBytes(byte[] lData)
@@ -369,7 +369,7 @@ public class StreamSimulator implements com.sun.star.io.XInputStream ,
/**
* following methods simulates the XSeekable.
* The notice all actions inside the internal protocol
- * and try to map all neccessary functions to the internal
+ * and try to map all necessary functions to the internal
* open stream.
*/
public void seek(long nLocation )
diff --git a/framework/qa/complex/path_settings/PathSettingsTest.java b/framework/qa/complex/path_settings/PathSettingsTest.java
index 043df0356d63..48e5d13e34ee 100644
--- a/framework/qa/complex/path_settings/PathSettingsTest.java
+++ b/framework/qa/complex/path_settings/PathSettingsTest.java
@@ -198,7 +198,7 @@ public class PathSettingsTest
}
/**
- * Simple existance test, if this fails, the Lists must update
+ * Simple existence test, if this fails, the Lists must update
*/
@Test
public void checkInternalListConsistence()
@@ -909,7 +909,7 @@ public class PathSettingsTest
*/
private String changeToCorrectValue(String path)
{
- // the simplest possiblity
+ // the simplest possibility
if (path == null || path.equals(""))
{
String sTempDir = System.getProperty("java.io.tmpdir");
diff --git a/framework/source/accelerators/acceleratorcache.cxx b/framework/source/accelerators/acceleratorcache.cxx
index 467e35967ae4..13bf1bc802ea 100644
--- a/framework/source/accelerators/acceleratorcache.cxx
+++ b/framework/source/accelerators/acceleratorcache.cxx
@@ -69,7 +69,7 @@ AcceleratorCache::AcceleratorCache(const AcceleratorCache& rCopy)
//-----------------------------------------------
AcceleratorCache::~AcceleratorCache()
{
- // Dont save anything automaticly here.
+ // Dont save anything automatically here.
// The user has to do that explicitly!
}
diff --git a/framework/source/accelerators/acceleratorconfiguration.cxx b/framework/source/accelerators/acceleratorconfiguration.cxx
index 5396622fa326..71c8b16bf05b 100644
--- a/framework/source/accelerators/acceleratorconfiguration.cxx
+++ b/framework/source/accelerators/acceleratorconfiguration.cxx
@@ -587,7 +587,7 @@ void XMLBasedAcceleratorConfiguration::impl_ts_save(const css::uno::Reference< c
css::uno::Reference< css::io::XTruncate > xClearable(xStream, css::uno::UNO_QUERY_THROW);
xClearable->truncate();
- // TODO can be removed if seek(0) is done by truncate() automaticly!
+ // TODO can be removed if seek(0) is done by truncate() automatically!
css::uno::Reference< css::io::XSeekable > xSeek(xStream, css::uno::UNO_QUERY);
if (xSeek.is())
xSeek->seek(0);
@@ -637,7 +637,7 @@ AcceleratorCache& XMLBasedAcceleratorConfiguration::impl_getCFG(sal_Bool bWriteA
}
// in case, we have a writeable cache, we use it for reading too!
- // Otherwhise the API user cant find its own changes ...
+ // Otherwise the API user can't find its own changes ...
if (m_pWriteCache)
return *m_pWriteCache;
else
@@ -1255,7 +1255,7 @@ void SAL_CALL XCUBasedAcceleratorConfiguration::changesOccurred(const css::util:
// Only path of form "PrimaryKeys/Modules/Module['<module_name>']/Key['<command_url>']/Command[<locale>]" will
// be interesting for use. Sometimes short path values are given also by the broadcaster ... but they must be ignored :-)
- // So we try to split the path into 3 parts (module isnt important here, because we already know it ... because
+ // So we try to split the path into 3 parts (module isn't important here, because we already know it ... because
// these instance is bound to a specific module configuration ... or it''s the global configuration where no module is given at all.
::rtl::OUString sOrgPath ;
@@ -1680,7 +1680,7 @@ AcceleratorCache& XCUBasedAcceleratorConfiguration::impl_getCFG(sal_Bool bPrefer
}
// in case, we have a writeable cache, we use it for reading too!
- // Otherwhise the API user cant find its own changes ...
+ // Otherwise the API user can't find its own changes ...
if (m_pPrimaryWriteCache)
return *m_pPrimaryWriteCache;
else
@@ -1700,7 +1700,7 @@ AcceleratorCache& XCUBasedAcceleratorConfiguration::impl_getCFG(sal_Bool bPrefer
}
// in case, we have a writeable cache, we use it for reading too!
- // Otherwhise the API user cant find its own changes ...
+ // Otherwise the API user can't find its own changes ...
if (m_pSecondaryWriteCache)
return *m_pSecondaryWriteCache;
else
diff --git a/framework/source/accelerators/acceleratorexecute.cxx b/framework/source/accelerators/acceleratorexecute.cxx
index c14bf14f7ffc..96502750384e 100644
--- a/framework/source/accelerators/acceleratorexecute.cxx
+++ b/framework/source/accelerators/acceleratorexecute.cxx
@@ -174,7 +174,7 @@ void AcceleratorExecute::execute(const css::awt::KeyEvent& aAWTKey)
{
::rtl::OUString sCommand = impl_ts_findCommand(aAWTKey);
- // No Command found? Do nothing! User isnt interested on any error handling .-)
+ // No Command found? Do nothing! User isn't interested on any error handling .-)
if (!sCommand.getLength())
return;
diff --git a/framework/source/accelerators/acceleratorexecute.hxx b/framework/source/accelerators/acceleratorexecute.hxx
index 90dccefa5023..de3a0797e2a3 100644
--- a/framework/source/accelerators/acceleratorexecute.hxx
+++ b/framework/source/accelerators/acceleratorexecute.hxx
@@ -93,7 +93,7 @@ struct TMutexInit
Because exceution of an accelerator command can be dangerous
(in case it force an office shutdown for key "ALT+F4"!)
all internal dispatches are done asynchronous.
- Menas that the trigger call doesnt wait till the dispatch
+ Menas that the trigger call doesn't wait till the dispatch
is finished. You can call very often. All requests will be
queued internal and dispatched ASAP.
diff --git a/framework/source/accelerators/keymapping.cxx b/framework/source/accelerators/keymapping.cxx
index 5f6a8ba98716..7d32ebe6303e 100644
--- a/framework/source/accelerators/keymapping.cxx
+++ b/framework/source/accelerators/keymapping.cxx
@@ -187,7 +187,7 @@ sal_uInt16 KeyMapping::mapIdentifierToCode(const ::rtl::OUString& sIdentifier)
sal_uInt16 nCode = 0;
if (!KeyMapping::impl_st_interpretIdentifierAsPureKeyCode(sIdentifier, nCode))
throw css::lang::IllegalArgumentException(
- DECLARE_ASCII("Cant map given identifier to a valid key code value."),
+ DECLARE_ASCII("Can't map given identifier to a valid key code value."),
css::uno::Reference< css::uno::XInterface >(),
0);
diff --git a/framework/source/accelerators/presethandler.cxx b/framework/source/accelerators/presethandler.cxx
index a3df27e28915..d0aea1799f41 100644
--- a/framework/source/accelerators/presethandler.cxx
+++ b/framework/source/accelerators/presethandler.cxx
@@ -277,7 +277,7 @@ css::uno::Reference< css::embed::XStorage > PresetHandler::getOrCreateRootStorag
/*
// TODO remove me!
// Attention: This is temp. workaround ... We create a temp. storage file
- // based of a sytem directory. This must be used so, till the storage implementation
+ // based of a system directory. This must be used so, till the storage implementation
// can work on directories too.
*/
css::uno::Sequence< css::uno::Any > lArgs(2);
@@ -445,7 +445,7 @@ void PresetHandler::connectToResource( PresetHandler::EConfigType
// a) inside share layer we should not create any new structures ... We jave to use
// existing ones only!
- // b) inside user layer we can (SOFT mode!) but sometimes we shouldnt (HARD mode!)
+ // b) inside user layer we can (SOFT mode!) but sometimes we shouldn't (HARD mode!)
// create new empty structures. We should preferr using of any existing structure.
sal_Int32 eShareMode = (css::embed::ElementModes::READ | css::embed::ElementModes::NOCREATE);
sal_Int32 eUserMode = (css::embed::ElementModes::READWRITE );
@@ -879,7 +879,7 @@ css::uno::Reference< css::embed::XStorage > PresetHandler::impl_openLocalizedPat
)
return css::uno::Reference< css::embed::XStorage >();
- // it doesnt matter, if there is a locale fallback or not
+ // it doesn't matter, if there is a locale fallback or not
// If creation of storages is allowed, we do it anyway.
// Otherwhise we have no acc config at all, which can make other trouble.
::rtl::OUString sLocalizedPath;
diff --git a/framework/source/accelerators/storageholder.cxx b/framework/source/accelerators/storageholder.cxx
index 86860c00c21a..17a5745e1340 100644
--- a/framework/source/accelerators/storageholder.cxx
+++ b/framework/source/accelerators/storageholder.cxx
@@ -201,7 +201,7 @@ css::uno::Reference< css::embed::XStorage > StorageHolder::openPath(const ::rtl:
/* TODO URGENT!
in case we found some "already existing storages" on the path before and increased its UseCount ...
and now we will get an exception on creating a new sub storage ...
- we must decrease all UseCounts, which was touched before. Otherwise these storages cant be closed!
+ we must decrease all UseCounts, which was touched before. Otherwise these storages can't be closed!
Idea: Using of another structure member "PossibleUseCount" as vector of unique numbers.
Every thread use another unique number to identify all "owned candidates".
@@ -257,7 +257,7 @@ StorageHolder::TStorageList StorageHolder::getAllPathStorages(const ::rtl::OUStr
if (pCheck == m_lStorages.end())
{
// at least one path element was not found
- // Seems that this path isnt open ...
+ // Seems that this path isn't open ...
lStoragesOfPath.clear();
return lStoragesOfPath;
}
@@ -308,7 +308,7 @@ void StorageHolder::closePath(const ::rtl::OUString& rPath)
::rtl::OUString sNormedPath = StorageHolder::impl_st_normPath(rPath);
OUStringList lFolders = StorageHolder::impl_st_parsePath(sNormedPath);
- /* convert list of pathes in the following way:
+ /* convert list of paths in the following way:
[0] = "path_1" => "path_1
[1] = "path_2" => "path_1/path_2"
[2] = "path_3" => "path_1/path_2/path_3"
diff --git a/framework/source/application/framework.cxx b/framework/source/application/framework.cxx
index 42edd1e990c4..73d2c45d618e 100644
--- a/framework/source/application/framework.cxx
+++ b/framework/source/application/framework.cxx
@@ -175,7 +175,7 @@ void FrameWork::impl_analyzeCommandArguments()
sal_uInt32 nCount = aInfo.getCommandArgCount();
for ( sal_uInt32 nArgument=0; nArgument<nCount; ++nArgument )
{
- // If extraction of current argument successfull ...
+ // If extraction of current argument successful ...
if ( aInfo.getCommandArg( nArgument, sArgument ) == osl_Process_E_None )
{
// ... search for matching with supported values.
diff --git a/framework/source/application/login.cxx b/framework/source/application/login.cxx
index cdcea2444d0c..31980fce9533 100644
--- a/framework/source/application/login.cxx
+++ b/framework/source/application/login.cxx
@@ -63,8 +63,8 @@
//_________________________________________________________________________________________________________________
#define TEMPFILE_ENCODING RTL_TEXTENCODING_UTF8 // encoding of written temp. ascii file
-#define LOGIN_RDB DECLARE_ASCII("login.rdb") // name of our own registry file - neccessary to create own servicemanager
-#define SEPERATOR "\n" // used to seperate parts in temp. file
+#define LOGIN_RDB DECLARE_ASCII("login.rdb") // name of our own registry file - necessary to create own servicemanager
+#define SEPERATOR "\n" // used to separate parts in temp. file
#define MINARGUMENTCOUNT 1 // count of min. required arguments
#define ARGUMENTFOUND 0 // OUString::compareTo returns 0 if searched string match given one
@@ -99,7 +99,7 @@ using namespace ::com::sun::star::beans ;
@descr We need this temp. file to share informations between our dialog and different processes, which
can't use vcl directly. Caller of this executable give us the file name as an argument - we save
all informations in it - caller can read it and MUST delete temp. file.
- This is neccessary for example; to hide the password!
+ This is necessary for example; to hide the password!
@implements -
@@ -149,7 +149,7 @@ void LoginApplication::Main()
impl_parseCommandline();
LOG_ASSERT( !(m_sTempFile.getLength()<1), "LoginApplication::Main()\nWrong or missing argument for temp. file detected!\n" )
- // Try to get neccessary dialog service.
+ // Try to get necessary dialog service.
// By the way - cast it to interface XPropertySet too - we need it later.
// (define SERVICENAME... comes from defines.hxx!)
Reference< XDialog > xLoginDialog( xServiceManager->createInstance( SERVICENAME_LOGINDIALOG ), UNO_QUERY );
@@ -200,7 +200,7 @@ void LoginApplication::Main()
}
// Build string for output.
- // At this point it doesnt matter if information exist or not!
+ // At this point it doesn't matter if information exist or not!
// Format of output: "<decision> [0|1] SEPERATOR
// <username> [string] SEPERATOR
// <password> [string] SEPERATOR
@@ -229,8 +229,8 @@ void LoginApplication::Main()
sBuffer.appendAscii ( SEPERATOR );
// Write informations in temp. file.
- // If given file name isnt valid ... caller will have a problem!!!
- // If fil already exist (That's out of specification!!!) we overwrite it everytime.
+ // If given file name isn't valid ... caller will have a problem!!!
+ // If fil already exist (That's out of specification!!!) we overwrite it every time.
FILE* pFile = fopen( m_sTempFile.getStr(), "w" );
LOG_ASSERT( !(pFile==NULL), "LoginApplication::Main()\nCould not open file!\n" );
if( pFile != NULL )
@@ -257,7 +257,7 @@ void LoginApplication::impl_parseCommandline()
OUString sArgument ;
OUString sValue ;
- // Warn programmer if argument count isnt ok!
+ // Warn programmer if argument count isn't ok!
LOG_ASSERT( !(nCount!=MINARGUMENTCOUNT), "LoginApplication::impl_parseCommandline()\nWrong argument count detected!\n" )
// Reset all possible argument variables to defaults if someone is missing.
diff --git a/framework/source/classes/framecontainer.cxx b/framework/source/classes/framecontainer.cxx
index 7700a9976a23..5f10cc264a38 100644
--- a/framework/source/classes/framecontainer.cxx
+++ b/framework/source/classes/framecontainer.cxx
@@ -73,12 +73,12 @@ namespace framework{
@short initialize an empty container
@descr The container will be empty then - special features (e.g. the async quit mechanism) are disabled.
- @threadsafe not neccessary - its not a singleton
+ @threadsafe not necessary - its not a singleton
@modified 01.07.2002 14:42,as96863
*****************************************************************************************************************/
FrameContainer::FrameContainer()
// initialize base classes first.
- // Order is neccessary for right initilization of his and OUR member ... m_aLock
+ // Order is necessary for right initilization of his and OUR member ... m_aLock
: ThreadHelpBase ( &Application::GetSolarMutex() )
/*DEPRECATEME
, m_bAsyncQuit ( sal_False ) // default must be "disabled"!
@@ -91,7 +91,7 @@ FrameContainer::FrameContainer()
@short deinitialize may a filled container
@descr Special features (if the currently are running) will be dsiabled and we free all used other ressources.
- @threadsafe not neccessary - its not a singleton
+ @threadsafe not necessary - its not a singleton
@modified 01.07.2002 14:43,as96863
*****************************************************************************************************************/
FrameContainer::~FrameContainer()
@@ -139,7 +139,7 @@ void FrameContainer::append( const css::uno::Reference< css::frame::XFrame >& xF
void FrameContainer::remove( const css::uno::Reference< css::frame::XFrame >& xFrame )
{
/* SAFE { */
- // write lock neccessary for follwing erase()!
+ // write lock necessary for follwing erase()!
WriteGuard aWriteLock( m_aLock );
TFrameIterator aSearchedItem = ::std::find( m_aContainer.begin(), m_aContainer.end(), xFrame );
@@ -244,7 +244,7 @@ sal_uInt32 FrameContainer::getCount() const
So it will be marked as deprecated and should be replaced by "getAllElements()".
@param nIndex
- a valud between 0 and (getCount()-1) to adress one container item
+ a valud between 0 and (getCount()-1) to address one container item
@return a reference to a frame inside the container, which match with given index
@@ -278,7 +278,7 @@ css::uno::Reference< css::frame::XFrame > FrameContainer::operator[]( sal_uInt32
@short returns a snapshot of all currently existing frames inside this container
@descr Should be used to replace the deprecated functions getCount()/operator[]!
- @return a list of all frame refrences inside this container
+ @return a list of all frame references inside this container
@threadsafe yes
@modified 01.07.2002 15:09,as96863
diff --git a/framework/source/classes/menumanager.cxx b/framework/source/classes/menumanager.cxx
index d33c5d3917d4..d95df5544428 100644
--- a/framework/source/classes/menumanager.cxx
+++ b/framework/source/classes/menumanager.cxx
@@ -192,7 +192,7 @@ MenuManager::MenuManager(
AddonMenuManager::HasAddonMenuElements() )
{
sal_uInt16 nCount = 0;
- AddonMenu* pSubMenu = AddonMenuManager::CreateAddonMenu( rFrame );
+ AddonMenu* pSubMenu = AddonMenuManager::CreateAddonMenu( rFrame, xServiceFactory );
if ( pSubMenu && ( pSubMenu->GetItemCount() > 0 ))
{
if ( pPopupMenu->GetItemType( nCount-1 ) != MENUITEM_SEPARATOR )
@@ -907,7 +907,7 @@ IMPL_LINK( MenuManager, Activate, Menu *, pMenu )
::rtl::OUString aCommand( m_aMenuItemCommand );
if ( m_aMenuItemCommand.matchIgnoreAsciiCase( UNO_COMMAND, 0 ))
{
- // Remove protocol part from command so we can use an easier comparision method
+ // Remove protocol part from command so we can use an easier comparison method
aCommand = aCommand.copy( UNO_COMMAND.getLength() );
}
diff --git a/framework/source/classes/taskcreator.cxx b/framework/source/classes/taskcreator.cxx
index 672275578e3b..bf8420a9b76f 100644
--- a/framework/source/classes/taskcreator.cxx
+++ b/framework/source/classes/taskcreator.cxx
@@ -68,7 +68,7 @@ namespace framework{
//_________________________________________________________________________________________________________________
/*-****************************************************************************************************//**
- @short initialize instance with neccessary informations
+ @short initialize instance with necessary informations
@descr We need a valid uno service manager to create or instanciate new services.
All other informations to create frames or tasks come in on right interface methods.
@@ -129,7 +129,7 @@ css::uno::Reference< css::frame::XFrame > TaskCreator::createTask( const ::rtl::
catch(const css::uno::Exception&)
{}
- // no catch here ... without an task creator service we cant open ANY document window within the office.
+ // no catch here ... without an task creator service we can't open ANY document window within the office.
// Thats IMHO not a good idea. Then we should accept the stacktrace showing us the real problem.
// BTW: The used fallback creator service (IMPLEMENTATIONNAME_FWK_TASKCREATOR) is implemented in the same
// library then these class here ... Why we should not be able to create it ?
diff --git a/framework/source/dispatch/closedispatcher.cxx b/framework/source/dispatch/closedispatcher.cxx
index a7f8aed73a24..8fab1bff5da6 100644
--- a/framework/source/dispatch/closedispatcher.cxx
+++ b/framework/source/dispatch/closedispatcher.cxx
@@ -129,7 +129,7 @@ css::uno::Sequence< css::frame::DispatchInformation > SAL_CALL CloseDispatcher::
{
if (nCommandGroup == css::frame::CommandGroup::VIEW)
{
- /* Attention: Dont add .uno:CloseFrame here. Because its not realy
+ /* Attention: Dont add .uno:CloseFrame here. Because its not really
a configurable feature ... and further it does not have
a valid UIName entry inside the GenericCommands.xcu ... */
css::uno::Sequence< css::frame::DispatchInformation > lViewInfos(1);
@@ -215,13 +215,13 @@ void SAL_CALL CloseDispatcher::dispatchWithNotification(const css::util::URL&
}
// OK - URLs are the right ones.
- // But we cant execute synchronously :-)
+ // But we can't execute synchronously :-)
// May we are called from a generic key-input handler,
- // which isnt aware that this call kill its own environment ...
+ // which isn't aware that this call kill its own environment ...
// Do it asynchronous everytimes!
// But dont forget to hold usself alive.
- // We are called back from an environment, which doesnt know an uno reference.
+ // We are called back from an environment, which doesn't know an uno reference.
// They call us back by using our c++ interface.
m_xResultListener = xListener;
@@ -254,7 +254,7 @@ void SAL_CALL CloseDispatcher::dispatchWithNotification(const css::util::URL&
Now we do the following:
- close all views to the same document, if needed and possible
- make the current frame empty
- ! This step is neccessary to handle errors during closing the
+ ! This step is necessary to handle errors during closing the
document inside the frame. May the document shows a dialog and
the user ignore it. Then the state of the office can be changed
during we try to close frame and document.
@@ -306,7 +306,7 @@ IMPL_LINK( CloseDispatcher, impl_asyncCallback, void*, EMPTYARG )
FrameListAnalyzer aCheck1(xDesktop, xCloseFrame, FrameListAnalyzer::E_HELP | FrameListAnalyzer::E_BACKINGCOMPONENT);
// a) If the curent frame (where the close dispatch was requested for) does not have
- // any parent frame ... it will close this frame only. Such frame isnt part of the
+ // any parent frame ... it will close this frame only. Such frame isn't part of the
// global desktop tree ... and such frames are used as "implementation details" only.
// E.g. the live previews of our wizards doing such things. And then the owner of the frame
// is responsible for closing the application or accepting closing of the application
@@ -315,9 +315,9 @@ IMPL_LINK( CloseDispatcher, impl_asyncCallback, void*, EMPTYARG )
bCloseFrame = sal_True;
else
- // b) The help window cant disagree with any request.
- // Because it doesnt implement a controller - it uses a window only.
- // Further t cant be the last open frame - if we do all other things
+ // b) The help window can't disagree with any request.
+ // Because it doesn't implement a controller - it uses a window only.
+ // Further t can't be the last open frame - if we do all other things
// right inside this CloseDispatcher implementation.
// => close it!
if (aCheck1.m_bReferenceIsHelp)
@@ -326,7 +326,7 @@ IMPL_LINK( CloseDispatcher, impl_asyncCallback, void*, EMPTYARG )
// c) If we are already in "backing mode", we have to terminate
// the application, if this special frame is closed.
- // It doesnt matter, how many other frames (can be the help or hidden frames only)
+ // It doesn't matter, how many other frames (can be the help or hidden frames only)
// are open then.
// => terminate the application!
if (aCheck1.m_bReferenceIsBacking)
@@ -436,7 +436,7 @@ IMPL_LINK( CloseDispatcher, impl_asyncCallback, void*, EMPTYARG )
// We reached this method only, by using a reference to ourself :-)
// Further this member is used to detect still running and not yet finished
// ansynchronous operations. So its time now to release this reference.
- // But hold it temp alive. Otherwhise we die before we can finish this method realy :-))
+ // But hold it temp alive. Otherwise we die before we can finish this method really :-))
css::uno::Reference< css::uno::XInterface > xTempHold = m_xSelfHold;
m_xSelfHold.clear();
m_xResultListener.clear();
@@ -500,9 +500,9 @@ sal_Bool CloseDispatcher::implts_prepareFrameForClosing(const css::uno::Referenc
}
}
- // dont remove the component realy by e.g. calling setComponent(null, null).
+ // dont remove the component really by e.g. calling setComponent(null, null).
// It's enough to suspend the controller.
- // If we close the frame later this controller doesnt show the same dialog again.
+ // If we close the frame later this controller doesn't show the same dialog again.
return sal_True;
}
@@ -621,8 +621,8 @@ css::uno::Reference< css::frame::XFrame > CloseDispatcher::static_impl_searchRig
if (xTopWindowCheck.is())
{
// b1) Note: Toolkit interface XTopWindow sometimes is used by real VCL-child-windows also .-)
- // Be sure that these window is realy a "top system window".
- // Attention ! Checking Window->GetParent() isnt the right approach here.
+ // Be sure that these window is really a "top system window".
+ // Attention ! Checking Window->GetParent() isn't the right approach here.
// Because sometimes VCL create "implicit border windows" as parents even we created
// a simple XWindow using the toolkit only .-(
::vos::OGuard aSolarLock(&Application::GetSolarMutex());
diff --git a/framework/source/dispatch/dispatchinformationprovider.cxx b/framework/source/dispatch/dispatchinformationprovider.cxx
index 6d4a64dfe779..50fbba156b83 100644
--- a/framework/source/dispatch/dispatchinformationprovider.cxx
+++ b/framework/source/dispatch/dispatchinformationprovider.cxx
@@ -85,7 +85,7 @@ css::uno::Sequence< sal_Int16 > SAL_CALL DispatchInformationProvider::getSupport
for (i1=0; i1<c1; ++i1)
{
- // ignore controller, which doesnt implement the right interface
+ // ignore controller, which doesn't implement the right interface
css::uno::Reference< css::frame::XDispatchInformationProvider > xProvider = lProvider[i1];
if (!xProvider.is())
continue;
@@ -119,7 +119,7 @@ css::uno::Sequence< css::frame::DispatchInformation > SAL_CALL DispatchInformati
{
try
{
- // ignore controller, which doesnt implement the right interface
+ // ignore controller, which doesn't implement the right interface
css::uno::Reference< css::frame::XDispatchInformationProvider > xProvider = lProvider[i1];
if (!xProvider.is())
continue;
diff --git a/framework/source/dispatch/dispatchprovider.cxx b/framework/source/dispatch/dispatchprovider.cxx
index eff34eb56e8d..76707461c70b 100644
--- a/framework/source/dispatch/dispatchprovider.cxx
+++ b/framework/source/dispatch/dispatchprovider.cxx
@@ -100,7 +100,7 @@ DEFINE_XTYPEPROVIDER_2( DispatchProvider ,
/**
@short standard ctor/dtor
- @descr These initialize a new instance of tihs class with needed informations for work.
+ @descr These initialize a new instance of this class with needed informations for work.
We hold a weakreference to our owner frame which start dispatches at us.
We can't use a normal reference because he hold a reference of us too ...
nobody can die so ...!
@@ -388,7 +388,7 @@ css::uno::Reference< css::frame::XDispatch > DispatchProvider::implts_queryFrame
{
// Don''t use findFrame() here - because it's not possible to find
// a top lebel frame without knowing his name. And a frame with name
- // "" can't be realy searched! That's why forward query to any parent
+ // "" can't be really searched! That's why forward query to any parent
// explicitly.
css::uno::Reference< css::frame::XDispatchProvider > xProvider( xFrame->getCreator(), css::uno::UNO_QUERY );
if (xProvider.is())
@@ -428,7 +428,7 @@ css::uno::Reference< css::frame::XDispatch > DispatchProvider::implts_queryFrame
{
css::uno::Reference< css::frame::XDispatchProvider > xParent( xFrame->getCreator(), css::uno::UNO_QUERY );
if (xParent.is())
- // SELF => we must adress the parent directly... and not his parent or any other parent!
+ // SELF => we must address the parent directly... and not his parent or any other parent!
xDispatcher = xParent->queryDispatch(aURL, SPECIALTARGET_SELF, 0);
}
@@ -509,7 +509,7 @@ css::uno::Reference< css::frame::XDispatch > DispatchProvider::implts_queryFrame
// Not for controller - not for protocol handler
// It should be a loadable content - may be a file. Check it ...
- // This check is neccessary to found out, that
+ // This check is necessary to found out, that
// support for some protocols isn't installed by user. May be
// "ftp" isn't available. So we suppress creation of our self dispatcher.
// The result will be clear. He can't handle it - but he would try it.
@@ -606,7 +606,7 @@ css::uno::Reference< css::frame::XDispatch > DispatchProvider::implts_searchProt
}
catch(css::uno::Exception&) {}
- // look if initialization is neccessary
+ // look if initialization is necessary
css::uno::Reference< css::lang::XInitialization > xInit( xHandler, css::uno::UNO_QUERY );
if (xInit.is())
{
@@ -646,7 +646,7 @@ css::uno::Reference< css::frame::XDispatch > DispatchProvider::implts_searchProt
Thats why we implement this method. It return an already existing helper or create a new one otherwise.
@attention The parameter sTarget and nSearchFlags are defaulted to "" and 0!
- Please use it only, if you can be shure, that the realy given by the outside calli!
+ Please use it only, if you can be sure, that the really given by the outside calli!
Mostly it depends from the parameter eHelper is they are required or not.
@param eHelper
diff --git a/framework/source/dispatch/helpagentdispatcher.cxx b/framework/source/dispatch/helpagentdispatcher.cxx
index 31f848cd152b..c1c4e5c9e50b 100644
--- a/framework/source/dispatch/helpagentdispatcher.cxx
+++ b/framework/source/dispatch/helpagentdispatcher.cxx
@@ -217,7 +217,7 @@ void HelpAgentDispatcher::implts_acceptCurrentURL()
aWriteLock.unlock();
// <- SAFE
- // We must make sure that this URL isnt marked as ignored by the user.
+ // We must make sure that this URL isn't marked as ignored by the user.
// Otherwhise the user wont see the corresponding help content in the future.
SvtHelpOptions().resetAgentIgnoreURLCounter(sAcceptedURL);
@@ -285,7 +285,7 @@ void HelpAgentDispatcher::implts_startTimer()
// SAFE ->
// Timer uses pointer to this help agent dispatcher ...
// But normaly we are ref counted. So we must make sure that this
- // dispatcher isnt killed during the timer runs .-)
+ // dispatcher isn't killed during the timer runs .-)
WriteGuard aWriteLock(m_aLock);
m_xSelfHold = css::uno::Reference< css::uno::XInterface >(static_cast< css::frame::XDispatch* >(this), css::uno::UNO_QUERY_THROW);
aWriteLock.unlock();
diff --git a/framework/source/dispatch/interceptionhelper.cxx b/framework/source/dispatch/interceptionhelper.cxx
index 672c41106655..104bf50348f6 100644
--- a/framework/source/dispatch/interceptionhelper.cxx
+++ b/framework/source/dispatch/interceptionhelper.cxx
@@ -97,7 +97,7 @@ css::uno::Reference< css::frame::XDispatch > SAL_CALL InterceptionHelper::queryD
ReadGuard aReadLock(m_aLock);
// a) first search an interceptor, which match to this URL by it's URL pattern registration
- // Note: if it return NULL - it does not mean an empty interceptor list automaticly!
+ // Note: if it return NULL - it does not mean an empty interceptor list automatically!
css::uno::Reference< css::frame::XDispatchProvider > xInterceptor;
InterceptorList::const_iterator pIt = m_lInterceptionRegs.findByPattern(aURL.Complete);
if (pIt != m_lInterceptionRegs.end())
@@ -107,7 +107,7 @@ css::uno::Reference< css::frame::XDispatch > SAL_CALL InterceptionHelper::queryD
// Use first interceptor everytimes.
// Note: it doesn't matter, which direction this helper implementation use to ask interceptor objects.
// Using of member m_aInterceptorList will starts at the beginning everytimes.
- // It depends from the filling operation, in which direction it works realy!
+ // It depends from the filling operation, in which direction it works really!
if (!xInterceptor.is() && m_lInterceptionRegs.size()>0)
{
pIt = m_lInterceptionRegs.begin();
@@ -300,7 +300,7 @@ void SAL_CALL InterceptionHelper::disposing(const css::lang::EventObject& aEvent
css::uno::Reference< css::frame::XDispatchProvider > xThis(static_cast< ::cppu::OWeakObject* >(this), css::uno::UNO_QUERY_THROW);
// We need a full copy of all currently registered interceptor objects.
- // Otherwhise we cant iterate over this vector without the risk, that our iterator will be invalid.
+ // Otherwise we can't iterate over this vector without the risk, that our iterator will be invalid.
// Because this vetor will be influenced by every deregistered interceptor.
InterceptionHelper::InterceptorList aCopy = m_lInterceptionRegs;
diff --git a/framework/source/dispatch/loaddispatcher.cxx b/framework/source/dispatch/loaddispatcher.cxx
index a7f179128678..c5638b4f23cd 100644
--- a/framework/source/dispatch/loaddispatcher.cxx
+++ b/framework/source/dispatch/loaddispatcher.cxx
@@ -128,7 +128,7 @@ css::uno::Any LoadDispatcher::impl_dispatch( const css::util::URL& rURL,
const css::uno::Reference< css::frame::XDispatchResultListener >& xListener )
{
// Attention: May be nobody outside hold such temp. dispatch object alive (because
- // the container in which we resists isnt implemented threadsafe but updated by a timer
+ // the container in which we resists isn't implemented threadsafe but updated by a timer
// and clear our reference ...) we should hold us self alive!
css::uno::Reference< css::uno::XInterface > xThis(static_cast< css::frame::XNotifyingDispatch* >(this), css::uno::UNO_QUERY);
@@ -144,7 +144,7 @@ css::uno::Any LoadDispatcher::impl_dispatch( const css::util::URL& rURL,
{
if (xListener.is())
xListener->dispatchFinished(
- css::frame::DispatchResultEvent(xThis, css::frame::DispatchResultState::DONTKNOW, css::uno::Any())); // DONTKNOW? ... not realy started ... not realy failed :-)
+ css::frame::DispatchResultEvent(xThis, css::frame::DispatchResultState::DONTKNOW, css::uno::Any())); // DONTKNOW? ... not really started ... not really failed :-)
}
css::uno::Reference< css::frame::XFrame > xBaseFrame(m_xOwnerFrame.get(), css::uno::UNO_QUERY);
diff --git a/framework/source/dispatch/mailtodispatcher.cxx b/framework/source/dispatch/mailtodispatcher.cxx
index e7b03f0f8ba0..2a60ab8cf858 100644
--- a/framework/source/dispatch/mailtodispatcher.cxx
+++ b/framework/source/dispatch/mailtodispatcher.cxx
@@ -103,7 +103,7 @@ DEFINE_INIT_SERVICE(MailToDispatcher,
/**
@short standard ctor
- @descr These initialize a new instance of ths class with needed informations for work.
+ @descr These initialize a new instance of this class with needed informations for work.
@param xContext
reference to uno component context
@@ -140,7 +140,7 @@ MailToDispatcher::~MailToDispatcher()
be asked by the generic dispatch mechanism inside framework, if he can handle this
special URL wich match his registration. He can agree by returning of a valid dispatch
instance or disagree by returning <NULL/>.
- We don't create new dispatch instances here realy - we return THIS as result to handle it
+ We don't create new dispatch instances here really - we return THIS as result to handle it
at the same implementation.
@modified 02.05.2002 15:25, as96863
@@ -195,7 +195,7 @@ css::uno::Sequence< css::uno::Reference< css::frame::XDispatch > > SAL_CALL Mail
void SAL_CALL MailToDispatcher::dispatch( const css::util::URL& aURL ,
const css::uno::Sequence< css::beans::PropertyValue >& lArguments ) throw( css::uno::RuntimeException )
{
- // dispatch() is an [oneway] call ... and may our user release his reference to us immediatly.
+ // dispatch() is an [oneway] call ... and may our user release his reference to us immediately.
// So we should hold us self alive till this call ends.
css::uno::Reference< css::frame::XNotifyingDispatch > xSelfHold(static_cast< ::cppu::OWeakObject* >(this), css::uno::UNO_QUERY);
implts_dispatch(aURL,lArguments);
@@ -222,7 +222,7 @@ void SAL_CALL MailToDispatcher::dispatchWithNotification( const css::util::URL&
const css::uno::Sequence< css::beans::PropertyValue >& lArguments,
const css::uno::Reference< css::frame::XDispatchResultListener >& xListener ) throw( css::uno::RuntimeException )
{
- // This class was designed to die by reference. And if user release his reference to us immediatly after calling this method
+ // This class was designed to die by reference. And if user release his reference to us immediately after calling this method
// we can run into some problems. So we hold us self alive till this method ends.
// Another reason: We can use this reference as source of sending event at the end too.
css::uno::Reference< css::frame::XNotifyingDispatch > xThis(static_cast< ::cppu::OWeakObject* >(this), css::uno::UNO_QUERY);
@@ -256,8 +256,8 @@ void SAL_CALL MailToDispatcher::dispatchWithNotification( const css::util::URL&
@return <TRUE/> if dispatch could be started successfully
Note: Our internal used shell executor doesn't return any state value - so we must
- belive that call was successfully.
- <FALSE/> if neccessary ressource couldn't be created or an exception was thrown.
+ believe that call was successfully.
+ <FALSE/> if necessary ressource couldn't be created or an exception was thrown.
@modified 30.04.2002 14:49, as96863
*/
@@ -306,7 +306,7 @@ sal_Bool MailToDispatcher::implts_dispatch( const css::util::URL&
@param xListener
reference to a valid listener for state events
@param aURL
- URL about listener will be informed, if something occured
+ URL about listener will be informed, if something occurred
@modified 30.04.2002 14:49, as96863
*/
diff --git a/framework/source/dispatch/menudispatcher.cxx b/framework/source/dispatch/menudispatcher.cxx
index 2eef9101cf0a..d06f4c49d659 100644
--- a/framework/source/dispatch/menudispatcher.cxx
+++ b/framework/source/dispatch/menudispatcher.cxx
@@ -344,10 +344,10 @@ sal_Bool MenuDispatcher::impl_setMenuBar( MenuBar* pMenuBar, sal_Bool bMenuFromR
xModel = uno::Reference< XModel >( xController->getModel(), UNO_QUERY );
// retrieve addon popup menus and add them to our menu bar
- AddonMenuManager::MergeAddonPopupMenus( xFrame, xModel, nPos, pMenuBar );
+ AddonMenuManager::MergeAddonPopupMenus( xFrame, nPos, pMenuBar, m_xFactory );
// retrieve addon help menu items and add them to our help menu
- AddonMenuManager::MergeAddonHelpMenu( xFrame, pMenuBar );
+ AddonMenuManager::MergeAddonHelpMenu( xFrame, pMenuBar, m_xFactory );
}
// set new menu on our system window and create new menu manager
@@ -411,7 +411,7 @@ IMPL_LINK( MenuDispatcher, Close_Impl, void*, EMPTYARG )
ATTENTION
- If you miss a test for one of this parameters, contact the autor or add it himself !(?)
+ If you miss a test for one of this parameters, contact the author or add it himself !(?)
But ... look for right testing! See using of this methods!
-----------------------------------------------------------------------------------------------------------------*/
diff --git a/framework/source/dispatch/oxt_handler.cxx b/framework/source/dispatch/oxt_handler.cxx
index 0307f2e9aae4..da9d539b4e33 100644
--- a/framework/source/dispatch/oxt_handler.cxx
+++ b/framework/source/dispatch/oxt_handler.cxx
@@ -175,12 +175,12 @@ Oxt_Handler::~Oxt_Handler()
@short try to load audio file
@descr This method try to load given audio file by URL and play it. We use vcl/Sound class to do that.
- Playing of sound is asynchron everytime.
+ Playing of sound is asynchron every time.
@attention We must hold us alive by ourself ... because we use async. vcl sound player ... but playing is started
in async interface call "dispatch()" too. And caller forget us imediatly. But then our uno ref count
will decreased to 0 and will die. The only solution is to use own reference to our implementation.
- But we do it for realy started jobs only and release it during call back of vcl.
+ But we do it for really started jobs only and release it during call back of vcl.
@seealso class vcl/Sound
@seealso method implts_PlayerNotify()
@@ -250,7 +250,7 @@ void SAL_CALL Oxt_Handler::dispatch( const css::util::URL&
@attention a) We don't need any mutex here ... because we don't use any member!
b) Dont' use internal player instance "m_pPlayer" to detect given sound file!
- It's not neccessary to do that ... and we can use temp. variable to do the same.
+ It's not necessary to do that ... and we can use temp. variable to do the same.
This way is easy - we don't must synchronize it with currently played sounds!
Another reason to do so ... We are a listener on our internal ma_Player object.
If you would call "IsSoundFile()" on this instance, he would call us back and
@@ -267,7 +267,7 @@ void SAL_CALL Oxt_Handler::dispatch( const css::util::URL&
::rtl::OUString SAL_CALL Oxt_Handler::detect( css::uno::Sequence< css::beans::PropertyValue >& lDescriptor )
throw( css::uno::RuntimeException )
{
- // Our default is "nothing". So we can return it, if detection failed or fily type is realy unknown.
+ // Our default is "nothing". So we can return it, if detection failed or fily type is really unknown.
::rtl::OUString sTypeName;
// Analyze given descriptor to find filename or input stream or ...
diff --git a/framework/source/dispatch/servicehandler.cxx b/framework/source/dispatch/servicehandler.cxx
index 7b214da8e1ac..c806fa016c7d 100644
--- a/framework/source/dispatch/servicehandler.cxx
+++ b/framework/source/dispatch/servicehandler.cxx
@@ -102,7 +102,7 @@ DEFINE_INIT_SERVICE(ServiceHandler,
/**
@short standard ctor
- @descr These initialize a new instance of ths class with needed informations for work.
+ @descr These initialize a new instance of this class with needed informations for work.
@param xFactory
reference to uno servicemanager for creation of new services
@@ -139,7 +139,7 @@ ServiceHandler::~ServiceHandler()
be asked by the generic dispatch mechanism inside framework, if he can handle this
special URL wich match his registration. He can agree by returning of a valid dispatch
instance or disagree by returning <NULL/>.
- We don't create new dispatch instances here realy - we return THIS as result to handle it
+ We don't create new dispatch instances here really - we return THIS as result to handle it
at the same implementation.
@modified 02.05.2002 15:25, as96863
@@ -193,7 +193,7 @@ css::uno::Sequence< css::uno::Reference< css::frame::XDispatch > > SAL_CALL Serv
void SAL_CALL ServiceHandler::dispatch( const css::util::URL& aURL ,
const css::uno::Sequence< css::beans::PropertyValue >& lArguments ) throw( css::uno::RuntimeException )
{
- // dispatch() is an [oneway] call ... and may our user release his reference to us immediatly.
+ // dispatch() is an [oneway] call ... and may our user release his reference to us immediately.
// So we should hold us self alive till this call ends.
css::uno::Reference< css::frame::XNotifyingDispatch > xSelfHold(static_cast< ::cppu::OWeakObject* >(this), css::uno::UNO_QUERY);
implts_dispatch(aURL,lArguments);
@@ -220,7 +220,7 @@ void SAL_CALL ServiceHandler::dispatchWithNotification( const css::util::URL&
const css::uno::Sequence< css::beans::PropertyValue >& lArguments,
const css::uno::Reference< css::frame::XDispatchResultListener >& xListener ) throw( css::uno::RuntimeException )
{
- // This class was designed to die by reference. And if user release his reference to us immediatly after calling this method
+ // This class was designed to die by reference. And if user release his reference to us immediately after calling this method
// we can run into some problems. So we hold us self alive till this method ends.
// Another reason: We can use this reference as source of sending event at the end too.
css::uno::Reference< css::frame::XNotifyingDispatch > xThis(static_cast< ::cppu::OWeakObject* >(this), css::uno::UNO_QUERY);
@@ -292,7 +292,7 @@ css::uno::Reference< css::uno::XInterface > ServiceHandler::implts_dispatch( con
if (!sServiceName.getLength())
return css::uno::Reference< css::uno::XInterface >();
- // If a service doesnt support an optional job executor interface - he can't get
+ // If a service doesn't support an optional job executor interface - he can't get
// any given parameters!
// Because we can't know if we must call createInstanceWithArguments() or XJobExecutor::trigger() ...
@@ -326,7 +326,7 @@ css::uno::Reference< css::uno::XInterface > ServiceHandler::implts_dispatch( con
@param xListener
reference to a valid listener for state events
@param aURL
- URL about listener will be informed, if something occured
+ URL about listener will be informed, if something occurred
@modified 30.04.2002 14:49, as96863
*/
diff --git a/framework/source/fwe/classes/actiontriggerpropertyset.cxx b/framework/source/fwe/classes/actiontriggerpropertyset.cxx
index 78437de31817..1dcc71be10d7 100644
--- a/framework/source/fwe/classes/actiontriggerpropertyset.cxx
+++ b/framework/source/fwe/classes/actiontriggerpropertyset.cxx
@@ -310,7 +310,7 @@ void SAL_CALL ActionTriggerPropertySet::getFastPropertyValue(
if( pInfoHelper == NULL )
{
// Define static member to give structure of properties to baseclass "OPropertySetHelper".
- // "impl_getStaticPropertyDescriptor" is a non exported and static funtion, who will define a static propertytable.
+ // "impl_getStaticPropertyDescriptor" is a non exported and static function, who will define a static propertytable.
// "sal_True" say: Table is sorted by name.
static OPropertyArrayHelper aInfoHelper( impl_getStaticPropertyDescriptor(), sal_True );
pInfoHelper = &aInfoHelper;
diff --git a/framework/source/fwe/classes/actiontriggerseparatorpropertyset.cxx b/framework/source/fwe/classes/actiontriggerseparatorpropertyset.cxx
index 23215dbbf84f..eaf5445d1195 100644
--- a/framework/source/fwe/classes/actiontriggerseparatorpropertyset.cxx
+++ b/framework/source/fwe/classes/actiontriggerseparatorpropertyset.cxx
@@ -254,7 +254,7 @@ void SAL_CALL ActionTriggerSeparatorPropertySet::getFastPropertyValue(
if( pInfoHelper == NULL )
{
// Define static member to give structure of properties to baseclass "OPropertySetHelper".
- // "impl_getStaticPropertyDescriptor" is a non exported and static funtion, who will define a static propertytable.
+ // "impl_getStaticPropertyDescriptor" is a non exported and static function, who will define a static propertytable.
// "sal_True" say: Table is sorted by name.
static OPropertyArrayHelper aInfoHelper( impl_getStaticPropertyDescriptor(), sal_True );
pInfoHelper = &aInfoHelper;
diff --git a/framework/source/fwe/classes/addonmenu.cxx b/framework/source/fwe/classes/addonmenu.cxx
index e0b45bfc062e..dc6823b93838 100644
--- a/framework/source/fwe/classes/addonmenu.cxx
+++ b/framework/source/fwe/classes/addonmenu.cxx
@@ -33,6 +33,7 @@
#include <macros/debug/assertion.hxx>
#include <framework/imageproducer.hxx>
#include <framework/menuconfiguration.hxx>
+#include <services.h>
//_________________________________________________________________________________________________________________
// interface includes
@@ -40,7 +41,7 @@
#include <com/sun/star/uno/Reference.hxx>
#include <com/sun/star/util/URL.hpp>
#include <com/sun/star/util/XURLTransformer.hpp>
-#include <com/sun/star/lang/XServiceInfo.hpp>
+#include <com/sun/star/frame/XModuleManager.hpp>
//_________________________________________________________________________________________________________________
// includes of other projects
@@ -108,18 +109,21 @@ AddonPopupMenu::~AddonPopupMenu()
// ------------------------------------------------------------------------
-static Reference< XModel > GetModelFromFrame( const Reference< XFrame >& rFrame )
+static ::rtl::OUString GetModuleIdentifier( const Reference< XMultiServiceFactory >& rServiceManager,
+ const Reference< XFrame >& rFrame )
{
- // Query for the model to get check the context information
- Reference< XModel > xModel;
- if ( rFrame.is() )
+ Reference< XModuleManager > xModuleManager( rServiceManager->createInstance( SERVICENAME_MODULEMANAGER ), UNO_QUERY );
+ if ( xModuleManager.is() )
{
- Reference< XController > xController( rFrame->getController(), UNO_QUERY );
- if ( xController.is() )
- xModel = xController->getModel();
+ try
+ {
+ return xModuleManager->identify( rFrame );
+ }
+ catch ( Exception& )
+ {
+ }
}
-
- return xModel;
+ return ::rtl::OUString();
}
// ------------------------------------------------------------------------
@@ -146,7 +150,8 @@ PopupMenu* AddonMenuManager::CreatePopupMenuType( MenuType eMenuType, const Refe
}
// Create the Add-Ons menu
-AddonMenu* AddonMenuManager::CreateAddonMenu( const Reference< XFrame >& rFrame )
+AddonMenu* AddonMenuManager::CreateAddonMenu( const Reference< XFrame >& rFrame,
+ const Reference< XMultiServiceFactory >& rServiceManager )
{
AddonsOptions aOptions;
AddonMenu* pAddonMenu = NULL;
@@ -156,8 +161,8 @@ AddonMenu* AddonMenuManager::CreateAddonMenu( const Reference< XFrame >& rFrame
if ( rAddonMenuEntries.getLength() > 0 )
{
pAddonMenu = (AddonMenu *)AddonMenuManager::CreatePopupMenuType( ADDON_MENU, rFrame );
- Reference< XModel > xModel = GetModelFromFrame( rFrame );
- AddonMenuManager::BuildMenu( pAddonMenu, ADDON_MENU, MENU_APPEND, nUniqueMenuId, rAddonMenuEntries, rFrame, xModel );
+ ::rtl::OUString aModuleIdentifier = GetModuleIdentifier( rServiceManager, rFrame );
+ AddonMenuManager::BuildMenu( pAddonMenu, ADDON_MENU, MENU_APPEND, nUniqueMenuId, rAddonMenuEntries, rFrame, aModuleIdentifier );
// Don't return an empty Add-On menu
if ( pAddonMenu->GetItemCount() == 0 )
@@ -194,7 +199,9 @@ static sal_uInt16 FindMenuId( Menu* pMenu, const String aCommand )
// Merge the Add-Ons help menu items into the given menu bar at a defined pos
-void AddonMenuManager::MergeAddonHelpMenu( const Reference< XFrame >& rFrame, MenuBar* pMergeMenuBar )
+void AddonMenuManager::MergeAddonHelpMenu( const Reference< XFrame >& rFrame,
+ MenuBar* pMergeMenuBar,
+ const Reference< XMultiServiceFactory >& rServiceManager )
{
if ( pMergeMenuBar )
{
@@ -245,8 +252,8 @@ void AddonMenuManager::MergeAddonHelpMenu( const Reference< XFrame >& rFrame, Me
if ( nInsPos < nItemCount && pHelpMenu->GetItemType( nInsPos ) != MENUITEM_SEPARATOR )
nInsSepAfterPos = nInsPos;
- Reference< XModel > xModel = GetModelFromFrame( rFrame );
- AddonMenuManager::BuildMenu( pHelpMenu, ADDON_MENU, nInsPos, nUniqueMenuId, rAddonHelpMenuEntries, rFrame, xModel );
+ ::rtl::OUString aModuleIdentifier = GetModuleIdentifier( rServiceManager, rFrame );
+ AddonMenuManager::BuildMenu( pHelpMenu, ADDON_MENU, nInsPos, nUniqueMenuId, rAddonHelpMenuEntries, rFrame, aModuleIdentifier );
if ( pHelpMenu->GetItemCount() > nItemCount )
{
@@ -267,9 +274,9 @@ void AddonMenuManager::MergeAddonHelpMenu( const Reference< XFrame >& rFrame, Me
// Merge the addon popup menus into the given menu bar at the provided pos.
void AddonMenuManager::MergeAddonPopupMenus( const Reference< XFrame >& rFrame,
- const Reference< XModel >& rModel,
sal_uInt16 nMergeAtPos,
- MenuBar* pMergeMenuBar )
+ MenuBar* pMergeMenuBar,
+ const Reference< XMultiServiceFactory >& rServiceManager )
{
if ( pMergeMenuBar )
{
@@ -283,6 +290,7 @@ void AddonMenuManager::MergeAddonPopupMenus( const Reference< XFrame >& rFrame,
::rtl::OUString aContext;
Sequence< Sequence< PropertyValue > > aAddonSubMenu;
sal_uInt16 nUniqueMenuId = ADDONMENU_ITEMID_START;
+ ::rtl::OUString aModuleIdentifier = GetModuleIdentifier( rServiceManager, rFrame );
const Sequence< Sequence< PropertyValue > >& rAddonMenuEntries = aAddonsOptions.GetAddonsMenuBarPart();
for ( sal_Int32 i = 0; i < rAddonMenuEntries.getLength(); i++ )
@@ -297,12 +305,12 @@ void AddonMenuManager::MergeAddonPopupMenus( const Reference< XFrame >& rFrame,
if ( aTitle.getLength() > 0 &&
aURL.getLength() > 0 &&
aAddonSubMenu.getLength() > 0 &&
- AddonMenuManager::IsCorrectContext( rModel, aContext ))
+ AddonMenuManager::IsCorrectContext( aModuleIdentifier, aContext ))
{
sal_uInt16 nId = nUniqueMenuId++;
AddonPopupMenu* pAddonPopupMenu = (AddonPopupMenu *)AddonMenuManager::CreatePopupMenuType( ADDON_POPUPMENU, rFrame );
- AddonMenuManager::BuildMenu( pAddonPopupMenu, ADDON_MENU, MENU_APPEND, nUniqueMenuId, aAddonSubMenu, rFrame, rModel );
+ AddonMenuManager::BuildMenu( pAddonPopupMenu, ADDON_MENU, MENU_APPEND, nUniqueMenuId, aAddonSubMenu, rFrame, aModuleIdentifier );
if ( pAddonPopupMenu->GetItemCount() > 0 )
{
@@ -327,7 +335,7 @@ void AddonMenuManager::BuildMenu( PopupMenu* pCurrent
sal_uInt16& nUniqueMenuId,
Sequence< Sequence< PropertyValue > > aAddonMenuDefinition,
const Reference< XFrame >& rFrame,
- const Reference< XModel >& rModel )
+ const ::rtl::OUString& rModuleIdentifier )
{
Sequence< Sequence< PropertyValue > > aAddonSubMenu;
sal_Bool bInsertSeparator = sal_False;
@@ -346,7 +354,7 @@ void AddonMenuManager::BuildMenu( PopupMenu* pCurrent
{
GetMenuEntry( aAddonMenuDefinition[i], aTitle, aURL, aTarget, aImageId, aContext, aAddonSubMenu );
- if ( !IsCorrectContext( rModel, aContext ) || ( !aTitle.getLength() && !aURL.getLength() ))
+ if ( !IsCorrectContext( rModuleIdentifier, aContext ) || ( !aTitle.getLength() && !aURL.getLength() ))
continue;
if ( aURL == ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "private:separator" )))
@@ -357,7 +365,7 @@ void AddonMenuManager::BuildMenu( PopupMenu* pCurrent
if ( aAddonSubMenu.getLength() > 0 )
{
pSubMenu = AddonMenuManager::CreatePopupMenuType( nSubMenuType, rFrame );
- AddonMenuManager::BuildMenu( pSubMenu, nSubMenuType, MENU_APPEND, nUniqueMenuId, aAddonSubMenu, rFrame, rModel );
+ AddonMenuManager::BuildMenu( pSubMenu, nSubMenuType, MENU_APPEND, nUniqueMenuId, aAddonSubMenu, rFrame, rModuleIdentifier );
// Don't create a menu item for an empty sub menu
if ( pSubMenu->GetItemCount() == 0 )
@@ -426,26 +434,18 @@ void AddonMenuManager::GetMenuEntry( const Sequence< PropertyValue >& rAddonMenu
}
// Check if the context string matches the provided xModel context
-sal_Bool AddonMenuManager::IsCorrectContext( const Reference< XModel >& rModel, const ::rtl::OUString& aContext )
+sal_Bool AddonMenuManager::IsCorrectContext( const ::rtl::OUString& rModuleIdentifier, const ::rtl::OUString& aContext )
{
- if ( rModel.is() )
- {
- Reference< com::sun::star::lang::XServiceInfo > xServiceInfo( rModel, UNO_QUERY );
- if ( xServiceInfo.is() )
- {
- sal_Int32 nIndex = 0;
- do
- {
- ::rtl::OUString aToken = aContext.getToken( 0, ',', nIndex );
+ if ( aContext.isEmpty() )
+ return sal_True;
- if ( xServiceInfo->supportsService( aToken ))
- return sal_True;
- }
- while ( nIndex >= 0 );
- }
+ if ( !rModuleIdentifier.isEmpty() )
+ {
+ sal_Int32 nIndex = aContext.indexOf( rModuleIdentifier );
+ return ( nIndex >= 0 );
}
- return ( aContext.getLength() == 0 );
+ return sal_False;
}
}
diff --git a/framework/source/fwe/classes/framelistanalyzer.cxx b/framework/source/fwe/classes/framelistanalyzer.cxx
index b30bda183b40..460d09bb1bb3 100644
--- a/framework/source/fwe/classes/framelistanalyzer.cxx
+++ b/framework/source/fwe/classes/framelistanalyzer.cxx
@@ -90,7 +90,7 @@ FrameListAnalyzer::~FrameListAnalyzer()
We try to get a snapshot of all opened frames, which are part of the desktop frame container.
Of course we can't access frames, which stands outside of this tree.
- But it's neccessary to collect top frames here only. Otherwhise we interpret closing of last
+ But it's necessary to collect top frames here only. Otherwise we interpret closing of last
frame wrong. Further we analyze this list and split into different parts.
E.g. for "CloseDoc" we must know, which frames of the given list referr to the same model.
These frames must be closed then. But all other frames must be untouched.
@@ -126,7 +126,7 @@ void FrameListAnalyzer::impl_analyze()
// ask for the model of the given reference frame.
// It must be compared with the model of every frame of the container
// to sort it into the list of frames with the same model.
- // Supress this step, if right detect mode isn't set.
+ // Suppress this step, if right detect mode isn't set.
css::uno::Reference< css::frame::XModel > xReferenceModel;
if ((m_eDetectMode & E_MODEL) == E_MODEL )
{
@@ -138,7 +138,7 @@ void FrameListAnalyzer::impl_analyze()
}
// check, if the reference frame is in hidden mode.
- // But look, if this analyze step is realy needed.
+ // But look, if this analyze step is really needed.
css::uno::Reference< css::beans::XPropertySet > xSet(m_xReferenceFrame, css::uno::UNO_QUERY);
if (
((m_eDetectMode & E_HIDDEN) == E_HIDDEN) &&
@@ -149,7 +149,7 @@ void FrameListAnalyzer::impl_analyze()
}
// check, if the reference frame includes the backing component.
- // But look, if this analyze step is realy needed.
+ // But look, if this analyze step is really needed.
if (((m_eDetectMode & E_BACKINGCOMPONENT) == E_BACKINGCOMPONENT) && m_xReferenceFrame.is() )
{
try
@@ -169,7 +169,7 @@ void FrameListAnalyzer::impl_analyze()
}
// check, if the reference frame includes the help module.
- // But look, if this analyze step is realy needed.
+ // But look, if this analyze step is really needed.
if (
((m_eDetectMode & E_HELP) == E_HELP ) &&
(m_xReferenceFrame.is() ) &&
@@ -210,7 +210,7 @@ void FrameListAnalyzer::impl_analyze()
// -------------------------------------------------
// a) Is it the special help task?
- // Return it seperated from any return list.
+ // Return it separated from any return list.
if (
((m_eDetectMode & E_HELP) == E_HELP ) &&
(xFrame->getName()==SPECIALTARGET_HELPTASK)
@@ -222,7 +222,7 @@ void FrameListAnalyzer::impl_analyze()
// -------------------------------------------------
// b) Or is includes this task the special backing component?
- // Return it seperated from any return list.
+ // Return it separated from any return list.
// But check if the reference task itself is the backing frame.
// Our user mst know it to decide right.
if ((m_eDetectMode & E_BACKINGCOMPONENT) == E_BACKINGCOMPONENT)
@@ -289,8 +289,8 @@ void FrameListAnalyzer::impl_analyze()
catch(css::lang::IndexOutOfBoundsException)
{
// stop copying if index seams to be wrong.
- // This interface can't realy guarantee its count for multithreaded
- // environments. So it can occure!
+ // This interface can't really guarantee its count for multithreaded
+ // environments. So it can occur!
}
// Pack both lists by using the actual step positions.
diff --git a/framework/source/fwe/dispatch/interaction.cxx b/framework/source/fwe/dispatch/interaction.cxx
index 9b4cd8c98e1f..d68a1677e417 100644
--- a/framework/source/fwe/dispatch/interaction.cxx
+++ b/framework/source/fwe/dispatch/interaction.cxx
@@ -45,7 +45,7 @@ namespace framework{
Why? Normaly interaction should show a filter selection dialog and ask user for his decision.
He can select any filter - then instances of these class will be called by handler ... or user
close dialog without any selection. Then another continuation should be slected by handler to
- abort continuations ... Retrying isn't very usefull here ... I think.
+ abort continuations ... Retrying isn't very useful here ... I think.
@implements XInteractionFilterSelect
@@ -116,7 +116,7 @@ private:
};
//---------------------------------------------------------------------------------------------------------
-// initialize instance with all neccessary informations
+// initialize instance with all necessary informations
// We use it without any further checks on our member then ...!
//---------------------------------------------------------------------------------------------------------
RequestFilterSelect_Impl::RequestFilterSelect_Impl( const ::rtl::OUString& sURL )
@@ -261,7 +261,7 @@ uno::Reference < task::XInteractionRequest > RequestAmbigousFilter::GetRequest()
}
//---------------------------------------------------------------------------------------------------------
-// initialize instance with all neccessary informations
+// initialize instance with all necessary informations
// We use it without any further checks on our member then ...!
//---------------------------------------------------------------------------------------------------------
RequestAmbigousFilter_Impl::RequestAmbigousFilter_Impl( const ::rtl::OUString& sURL ,
diff --git a/framework/source/fwe/helper/titlehelper.cxx b/framework/source/fwe/helper/titlehelper.cxx
index cfeb3fbb745e..0afda09133ee 100644
--- a/framework/source/fwe/helper/titlehelper.cxx
+++ b/framework/source/fwe/helper/titlehelper.cxx
@@ -596,7 +596,7 @@ void TitleHelper::impl_appendModuleName (::rtl::OUStringBuffer& sTitle)
const ::rtl::OUString sUIName = lProps.getUnpackedValueOrDefault (OFFICEFACTORY_PROPNAME_UINAME, ::rtl::OUString());
// An UIname property is an optional value !
- // So please add it to the title in case it does realy exists only.
+ // So please add it to the title in case it does really exists only.
if (sUIName.getLength() > 0)
{
sTitle.appendAscii (" " );
diff --git a/framework/source/fwe/helper/undomanagerhelper.cxx b/framework/source/fwe/helper/undomanagerhelper.cxx
index 2a828ce8eeb7..4e640f47dba9 100644
--- a/framework/source/fwe/helper/undomanagerhelper.cxx
+++ b/framework/source/fwe/helper/undomanagerhelper.cxx
@@ -187,7 +187,7 @@ namespace framework
void cancel( const Reference< XInterface >& i_context )
{
m_caughtException <<= RuntimeException(
- ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Concurrency error: an ealier operation on the stack failed." ) ),
+ ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Concurrency error: an earlier operation on the stack failed." ) ),
i_context
);
m_finishCondition.set();
diff --git a/framework/source/fwe/xml/eventsdocumenthandler.cxx b/framework/source/fwe/xml/eventsdocumenthandler.cxx
index f5f06639435e..cd03dbd63c99 100644
--- a/framework/source/fwe/xml/eventsdocumenthandler.cxx
+++ b/framework/source/fwe/xml/eventsdocumenthandler.cxx
@@ -192,7 +192,7 @@ throw( SAXException, RuntimeException )
if ( m_bEventsStartFound )
{
::rtl::OUString aErrorMessage = getErrorLineString();
- aErrorMessage += ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Element 'event:events' cannot be embeded into 'event:events'!" ));
+ aErrorMessage += ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Element 'event:events' cannot be embedded into 'event:events'!" ));
throw SAXException( aErrorMessage, Reference< XInterface >(), Any() );
}
@@ -205,7 +205,7 @@ throw( SAXException, RuntimeException )
if ( !m_bEventsStartFound )
{
::rtl::OUString aErrorMessage = getErrorLineString();
- aErrorMessage += ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Element 'event:event' must be embeded into element 'event:events'!" ));
+ aErrorMessage += ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Element 'event:event' must be embedded into element 'event:events'!" ));
throw SAXException( aErrorMessage, Reference< XInterface >(), Any() );
}
diff --git a/framework/source/fwe/xml/saxnamespacefilter.cxx b/framework/source/fwe/xml/saxnamespacefilter.cxx
index 578d6bc3f703..d6572b29d652 100644
--- a/framework/source/fwe/xml/saxnamespacefilter.cxx
+++ b/framework/source/fwe/xml/saxnamespacefilter.cxx
@@ -98,7 +98,7 @@ void SAL_CALL SaxNamespaceFilter::startElement(
try
{
- // apply namespaces to all remaing attributes
+ // apply namespaces to all remaining attributes
for ( ::std::vector< sal_Int16 >::const_iterator i(
aAttributeIndexes.begin());
i != aAttributeIndexes.end(); ++i )
diff --git a/framework/source/fwe/xml/statusbardocumenthandler.cxx b/framework/source/fwe/xml/statusbardocumenthandler.cxx
index b77d6bf33ddf..1c142c4a865e 100644
--- a/framework/source/fwe/xml/statusbardocumenthandler.cxx
+++ b/framework/source/fwe/xml/statusbardocumenthandler.cxx
@@ -242,7 +242,7 @@ throw( SAXException, RuntimeException )
if ( m_bStatusBarStartFound )
{
::rtl::OUString aErrorMessage = getErrorLineString();
- aErrorMessage += ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Element 'statusbar:statusbar' cannot be embeded into 'statusbar:statusbar'!" ));
+ aErrorMessage += ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Element 'statusbar:statusbar' cannot be embedded into 'statusbar:statusbar'!" ));
throw SAXException( aErrorMessage, Reference< XInterface >(), Any() );
}
@@ -255,7 +255,7 @@ throw( SAXException, RuntimeException )
if ( !m_bStatusBarStartFound )
{
::rtl::OUString aErrorMessage = getErrorLineString();
- aErrorMessage += ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Element 'statusbar:statusbaritem' must be embeded into element 'statusbar:statusbar'!" ));
+ aErrorMessage += ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Element 'statusbar:statusbaritem' must be embedded into element 'statusbar:statusbar'!" ));
throw SAXException( aErrorMessage, Reference< XInterface >(), Any() );
}
diff --git a/framework/source/fwe/xml/toolboxdocumenthandler.cxx b/framework/source/fwe/xml/toolboxdocumenthandler.cxx
index 950b98a3f667..bb63446b5cf0 100644
--- a/framework/source/fwe/xml/toolboxdocumenthandler.cxx
+++ b/framework/source/fwe/xml/toolboxdocumenthandler.cxx
@@ -251,7 +251,7 @@ throw( SAXException, RuntimeException )
if ( m_bToolBarStartFound )
{
::rtl::OUString aErrorMessage = getErrorLineString();
- aErrorMessage += ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Element 'toolbar:toolbar' cannot be embeded into 'toolbar:toolbar'!" ));
+ aErrorMessage += ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Element 'toolbar:toolbar' cannot be embedded into 'toolbar:toolbar'!" ));
throw SAXException( aErrorMessage, Reference< XInterface >(), Any() );
}
else
@@ -300,7 +300,7 @@ throw( SAXException, RuntimeException )
if ( !m_bToolBarStartFound )
{
::rtl::OUString aErrorMessage = getErrorLineString();
- aErrorMessage += ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Element 'toolbar:toolbaritem' must be embeded into element 'toolbar:toolbar'!" ));
+ aErrorMessage += ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Element 'toolbar:toolbaritem' must be embedded into element 'toolbar:toolbar'!" ));
throw SAXException( aErrorMessage, Reference< XInterface >(), Any() );
}
@@ -401,7 +401,7 @@ throw( SAXException, RuntimeException )
case TB_ATTRIBUTE_STYLE:
{
- // read space seperated item style list
+ // read space separated item style list
::rtl::OUString aTemp = xAttribs->getValueByIndex( n );
sal_Int32 nIndex = 0;
diff --git a/framework/source/fwi/classes/protocolhandlercache.cxx b/framework/source/fwi/classes/protocolhandlercache.cxx
index cb6dcc0971ff..c80762648e74 100644
--- a/framework/source/fwi/classes/protocolhandlercache.cxx
+++ b/framework/source/fwi/classes/protocolhandlercache.cxx
@@ -99,7 +99,7 @@ PatternHash::iterator PatternHash::findPatternKey( const ::rtl::OUString& sURL )
/**
@short initialize static member of class HandlerCache
@descr We use a singleton pattern to implement this handler cache.
- That means it use two static member list to hold all neccessary informations
+ That means it use two static member list to hold all necessary informations
and a ref count mechanism to create/destroy it on demand.
@modified 30.04.2002 11:13, as96863
@@ -113,7 +113,7 @@ HandlerCFGAccess* HandlerCache::m_pConfig = NULL;
/**
@short ctor of the cache of all registered protoco handler
- @descr It tries to open the right configuration package automaticly
+ @descr It tries to open the right configuration package automatically
and fill the internal structures. After that the cache can be
used for read access on this data and perform some search
operations on it.
@@ -198,7 +198,7 @@ sal_Bool HandlerCache::search( const ::rtl::OUString& sURL, ProtocolHandler* pRe
/**
@short search for a registered handler by using an URL struct
- @descr We combine neccessary parts of this struct to a valid URL string
+ @descr We combine necessary parts of this struct to a valid URL string
and call our other search method ...
It's a helper for outside code.
@@ -247,7 +247,7 @@ void HandlerCache::takeOver(HandlerHash* pHandler, PatternHash* pPattern)
/**
@short dtor of the config access class
- @descr It opens the configuration package automaticly by using base class mechanism.
+ @descr It opens the configuration package automatically by using base class mechanism.
After that "read()" method of this class should be called to use it.
@param sPackage
diff --git a/framework/source/fwi/jobs/configaccess.cxx b/framework/source/fwi/jobs/configaccess.cxx
index 66c9306583fe..97d4a176b74a 100644
--- a/framework/source/fwi/jobs/configaccess.cxx
+++ b/framework/source/fwi/jobs/configaccess.cxx
@@ -214,7 +214,7 @@ void ConfigAccess::close()
@descr It's not allowed to safe this c++ (!) reference outside. You have
to use it directly. Further you must use our public lock member m_aLock
to synchronize your code with our internal structures and our interface
- methods. Acquire it before you call cfg() and release it afterwards immediatly.
+ methods. Acquire it before you call cfg() and release it afterwards immediately.
E.g.: ConfigAccess aAccess(...);
ReadGuard aReadLock(aAccess.m_aLock);
diff --git a/framework/source/fwi/threadhelp/lockhelper.cxx b/framework/source/fwi/threadhelp/lockhelper.cxx
index cb52285f087a..6574ced494be 100644
--- a/framework/source/fwi/threadhelp/lockhelper.cxx
+++ b/framework/source/fwi/threadhelp/lockhelper.cxx
@@ -163,7 +163,7 @@ LockHelper::~LockHelper()
we must simulate it as a write access!
@attention If a shareable osl mutex exist, he must be used as twice!
- It's neccessary for some cppu-helper classes ...
+ It's necessary for some cppu-helper classes ...
@seealso method acquireWriteAccess()
@@ -200,7 +200,7 @@ void LockHelper::acquire()
we must simulate it as a write access!
@attention If a shareable osl mutex exist, he must be used as twice!
- It's neccessary for some cppu-helper classes ...
+ It's necessary for some cppu-helper classes ...
@seealso method releaseWriteAccess()
@@ -237,7 +237,7 @@ void LockHelper::release()
We use m_eLockType to differ between all possible "lock-member"!!!
@attention If a shareable osl mutex exist, he must be used as twice!
- It's neccessary for some cppu-helper classes ...
+ It's necessary for some cppu-helper classes ...
@seealso method releaseReadAccess()
@@ -273,7 +273,7 @@ void LockHelper::acquireReadAccess()
We use m_eLockType to differ between all possible "lock-member"!!!
@attention If a shareable osl mutex exist, he must be used as twice!
- It's neccessary for some cppu-helper classes ...
+ It's necessary for some cppu-helper classes ...
@seealso method acquireReadAccess()
@@ -311,7 +311,7 @@ void LockHelper::releaseReadAccess()
We use m_eLockType to differ between all possible "lock-member"!!!
@attention If a shareable osl mutex exist, he must be used as twice!
- It's neccessary for some cppu-helper classes ...
+ It's necessary for some cppu-helper classes ...
@seealso method releaseWriteAccess()
@@ -347,7 +347,7 @@ void LockHelper::acquireWriteAccess()
We use m_eLockType to differ between all possible "lock-member"!!!
@attention If a shareable osl mutex exist, he must be used as twice!
- It's neccessary for some cppu-helper classes ...
+ It's necessary for some cppu-helper classes ...
@seealso method acquireWriteAccess()
@@ -388,10 +388,10 @@ void LockHelper::releaseWriteAccess()
@attention a) Don't call this method if you are not a writer!
Results are not defined then ...
- An upgrade can't be implemented realy ... because acquiring new access
+ An upgrade can't be implemented really ... because acquiring new access
will be the same - there no differences!
b) Without function if m_eLockTyp is different from E_FAIRRWLOCK(!) ...
- because, a mutex don't support it realy.
+ because, a mutex don't support it really.
@seealso -
diff --git a/framework/source/fwi/threadhelp/transactionmanager.cxx b/framework/source/fwi/threadhelp/transactionmanager.cxx
index da3a43c9a287..2cda4d422a53 100644
--- a/framework/source/fwi/threadhelp/transactionmanager.cxx
+++ b/framework/source/fwi/threadhelp/transactionmanager.cxx
@@ -102,7 +102,7 @@ TransactionManager::~TransactionManager()
@short set new working mode
@descr These implementation knows for states of working: E_INIT, E_WORK, E_CLOSING, E_CLOSE
You can step during this ones only from the left to the right side and start at left side again!
- (This is neccessary e.g. for refcounted objects!)
+ (This is necessary e.g. for refcounted objects!)
This call will block till all current existing transactions was finished.
Follow results occure:
E_INIT : All requests on this implementation are refused.
@@ -146,7 +146,7 @@ void TransactionManager::setWorkingMode( EWorkingMode eMode )
}
// Wait for current existing transactions then!
- // (Only neccessary for changing to E_BEFORECLOSE or E_CLOSE! ...
+ // (Only necessary for changing to E_BEFORECLOSE or E_CLOSE! ...
// otherwise; if you wait at setting E_WORK another thrad could finish a acquire-call during our unlock() and wait() call
// ... and we will wait forever here!!!)
// Don't forget to release access mutex before.
@@ -213,7 +213,7 @@ EWorkingMode TransactionManager::getWorkingMode() const
@seealso method unregisterTransaction()
- @param "eMode" ,used to enable/disable throwing exceptions automaticly for rejected calls
+ @param "eMode" ,used to enable/disable throwing exceptions automatically for rejected calls
@param "eReason" ,reason for rejected calls if eMode=E_NOEXCEPTIONS
@return -
@@ -317,7 +317,7 @@ sal_Bool TransactionManager::isCallRejected( ERejectReason& eReason ) const
/*-****************************************************************************************************//**
@short throw any exceptions for rejected calls
- @descr If user whish to use our automaticly exception mode we use this impl-method.
+ @descr If user whish to use our automatically exception mode we use this impl-method.
We check all combinations of eReason and eExceptionMode and throw right exception with some
descriptions for recipient of it.
diff --git a/framework/source/fwi/uielement/constitemcontainer.cxx b/framework/source/fwi/uielement/constitemcontainer.cxx
index 3c0c5c92a06f..c5330a4965dc 100644
--- a/framework/source/fwi/uielement/constitemcontainer.cxx
+++ b/framework/source/fwi/uielement/constitemcontainer.cxx
@@ -434,7 +434,7 @@ throw (::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang
if( pInfoHelper == NULL )
{
// Define static member to give structure of properties to baseclass "OPropertySetHelper".
- // "impl_getStaticPropertyDescriptor" is a non exported and static funtion, who will define a static propertytable.
+ // "impl_getStaticPropertyDescriptor" is a non exported and static function, who will define a static propertytable.
// "sal_True" say: Table is sorted by name.
static ::cppu::OPropertyArrayHelper aInfoHelper( impl_getStaticPropertyDescriptor(), sal_True );
pInfoHelper = &aInfoHelper;
diff --git a/framework/source/fwi/uielement/rootitemcontainer.cxx b/framework/source/fwi/uielement/rootitemcontainer.cxx
index c19aeb365578..a8df8b64215d 100644
--- a/framework/source/fwi/uielement/rootitemcontainer.cxx
+++ b/framework/source/fwi/uielement/rootitemcontainer.cxx
@@ -402,7 +402,7 @@ void SAL_CALL RootItemContainer::getFastPropertyValue( com::sun::star::uno::Any&
if( pInfoHelper == NULL )
{
// Define static member to give structure of properties to baseclass "OPropertySetHelper".
- // "impl_getStaticPropertyDescriptor" is a non exported and static funtion, who will define a static propertytable.
+ // "impl_getStaticPropertyDescriptor" is a non exported and static function, who will define a static propertytable.
// "sal_True" say: Table is sorted by name.
static ::cppu::OPropertyArrayHelper aInfoHelper( impl_getStaticPropertyDescriptor(), sal_True );
pInfoHelper = &aInfoHelper;
diff --git a/framework/source/helper/ocomponentaccess.cxx b/framework/source/helper/ocomponentaccess.cxx
index c24ba52c73c4..5343f8559349 100755
--- a/framework/source/helper/ocomponentaccess.cxx
+++ b/framework/source/helper/ocomponentaccess.cxx
@@ -230,7 +230,7 @@ css::uno::Reference< XComponent > OComponentAccess::impl_getFrameComponent( cons
ATTENTION
- If you miss a test for one of this parameters, contact the autor or add it himself !(?)
+ If you miss a test for one of this parameters, contact the author or add it himself !(?)
But ... look for right testing! See using of this methods!
-----------------------------------------------------------------------------------------------------------------*/
diff --git a/framework/source/helper/ocomponentenumeration.cxx b/framework/source/helper/ocomponentenumeration.cxx
index 6619319e5ef9..a5cdc03362d9 100755
--- a/framework/source/helper/ocomponentenumeration.cxx
+++ b/framework/source/helper/ocomponentenumeration.cxx
@@ -188,7 +188,7 @@ void OComponentEnumeration::impl_resetObject()
ATTENTION
- If you miss a test for one of this parameters, contact the autor or add it himself !(?)
+ If you miss a test for one of this parameters, contact the author or add it himself !(?)
But ... look for right testing! See using of this methods!
-----------------------------------------------------------------------------------------------------------------*/
diff --git a/framework/source/helper/oframes.cxx b/framework/source/helper/oframes.cxx
index 2f9b833d1e7f..b3d96e40d935 100755
--- a/framework/source/helper/oframes.cxx
+++ b/framework/source/helper/oframes.cxx
@@ -420,7 +420,7 @@ void OFrames::impl_appendSequence( Sequence< css::uno::Reference< XFram
ATTENTION
- If you miss a test for one of this parameters, contact the autor or add it himself !(?)
+ If you miss a test for one of this parameters, contact the author or add it himself !(?)
But ... look for right testing! See using of this methods!
-----------------------------------------------------------------------------------------------------------------*/
diff --git a/framework/source/helper/persistentwindowstate.cxx b/framework/source/helper/persistentwindowstate.cxx
index 003039477054..b3c806efee21 100644
--- a/framework/source/helper/persistentwindowstate.cxx
+++ b/framework/source/helper/persistentwindowstate.cxx
@@ -288,7 +288,7 @@ void PersistentWindowState::implst_setWindowStateOnConfig(const css::uno::Refere
::vos::OClearableGuard aSolarLock(Application::GetSolarMutex());
Window* pWindow = VCLUnoHelper::GetWindow(xWindow);
- // check for system window is neccessary to guarantee correct pointer cast!
+ // check for system window is necessary to guarantee correct pointer cast!
if (
(pWindow ) &&
(pWindow->IsSystemWindow())
@@ -326,7 +326,7 @@ void PersistentWindowState::implst_setWindowStateOnWindow(const css::uno::Refere
if (!pWindow)
return;
- // check for system and work window - its neccessary to guarantee correct pointer cast!
+ // check for system and work window - its necessary to guarantee correct pointer cast!
sal_Bool bSystemWindow = pWindow->IsSystemWindow();
sal_Bool bWorkWindow = (pWindow->GetType() == WINDOW_WORKWINDOW);
diff --git a/framework/source/helper/statusindicatorfactory.cxx b/framework/source/helper/statusindicatorfactory.cxx
index d086f414f82d..05d38dcd00bf 100644
--- a/framework/source/helper/statusindicatorfactory.cxx
+++ b/framework/source/helper/statusindicatorfactory.cxx
@@ -269,7 +269,7 @@ void StatusIndicatorFactory::end(const css::uno::Reference< css::task::XStatusIn
else
{
// Our stack is empty. No further child exists.
- // Se we must "end" our progress realy
+ // Se we must "end" our progress really
if (xProgress.is())
xProgress->end();
// Now hide the progress bar again.
@@ -367,7 +367,7 @@ void StatusIndicatorFactory::implts_makeParentVisibleIfAllowed()
xParentWindow = xPluggWindow;
// dont disturb user in case he put the loading document into the background!
- // Supress any setVisible() or toFront() call in case the initial show was
+ // Suppress any setVisible() or toFront() call in case the initial show was
// already made.
css::uno::Reference< css::awt::XWindow2 > xVisibleCheck(xParentWindow, css::uno::UNO_QUERY);
sal_Bool bIsVisible = sal_False;
@@ -394,11 +394,11 @@ void StatusIndicatorFactory::implts_makeParentVisibleIfAllowed()
}
}
- // Ok the window should be made visible ... becuase it isnt currently visible.
+ // Ok the window should be made visible ... because it isn't currently visible.
// BUT ..!
// We need a Hack for our applications: They get her progress from the frame directly
// on saving documents. Because there is no progress set on the MediaDescriptor.
- // But that's wrong. In case the document was opened hidden, they shouldnt use any progress .-(
+ // But that's wrong. In case the document was opened hidden, they shouldn't use any progress .-(
// They only possible workaround: dont show the parent window here, if the document was opened hidden.
sal_Bool bHiddenDoc = sal_False;
if (xFrame.is())
@@ -421,7 +421,7 @@ void StatusIndicatorFactory::implts_makeParentVisibleIfAllowed()
return;
// OK: The document was not opened in hidden mode ...
- // and the window isnt already visible.
+ // and the window isn't already visible.
// Show it and bring it to front.
// But before we have to be sure, that our internal used helper progress
// is visible too.
diff --git a/framework/source/helper/uiconfigelementwrapperbase.cxx b/framework/source/helper/uiconfigelementwrapperbase.cxx
index 8c068d84a1f3..f251626a7973 100644
--- a/framework/source/helper/uiconfigelementwrapperbase.cxx
+++ b/framework/source/helper/uiconfigelementwrapperbase.cxx
@@ -432,7 +432,7 @@ void SAL_CALL UIConfigElementWrapperBase::getFastPropertyValue( com::sun::star::
if( pInfoHelper == NULL )
{
// Define static member to give structure of properties to baseclass "OPropertySetHelper".
- // "impl_getStaticPropertyDescriptor" is a non exported and static funtion, who will define a static propertytable.
+ // "impl_getStaticPropertyDescriptor" is a non exported and static function, who will define a static propertytable.
// "sal_True" say: Table is sorted by name.
static ::cppu::OPropertyArrayHelper aInfoHelper( impl_getStaticPropertyDescriptor(), sal_True );
pInfoHelper = &aInfoHelper;
diff --git a/framework/source/helper/uielementwrapperbase.cxx b/framework/source/helper/uielementwrapperbase.cxx
index 1295a208555e..a6957000d874 100644
--- a/framework/source/helper/uielementwrapperbase.cxx
+++ b/framework/source/helper/uielementwrapperbase.cxx
@@ -220,7 +220,7 @@ void SAL_CALL UIElementWrapperBase::getFastPropertyValue( com::sun::star::uno::A
if( pInfoHelper == NULL )
{
// Define static member to give structure of properties to baseclass "OPropertySetHelper".
- // "impl_getStaticPropertyDescriptor" is a non exported and static funtion, who will define a static propertytable.
+ // "impl_getStaticPropertyDescriptor" is a non exported and static function, who will define a static propertytable.
// "sal_True" say: Table is sorted by name.
static ::cppu::OPropertyArrayHelper aInfoHelper( impl_getStaticPropertyDescriptor(), sal_True );
pInfoHelper = &aInfoHelper;
diff --git a/framework/source/helper/vclstatusindicator.cxx b/framework/source/helper/vclstatusindicator.cxx
index 025e360699a5..db1b578a554d 100644
--- a/framework/source/helper/vclstatusindicator.cxx
+++ b/framework/source/helper/vclstatusindicator.cxx
@@ -67,7 +67,7 @@ VCLStatusIndicator::VCLStatusIndicator(const css::uno::Reference< css::lang::XMu
{
if (!m_xParentWindow.is())
throw css::uno::RuntimeException(
- ::rtl::OUString::createFromAscii("Cant work without a parent window!"),
+ ::rtl::OUString::createFromAscii("Can't work without a parent window!"),
static_cast< css::task::XStatusIndicator* >(this));
}
diff --git a/framework/source/inc/accelerators/acceleratorcache.hxx b/framework/source/inc/accelerators/acceleratorcache.hxx
index c5710feba3cd..cddec3f3a73e 100644
--- a/framework/source/inc/accelerators/acceleratorcache.hxx
+++ b/framework/source/inc/accelerators/acceleratorcache.hxx
@@ -58,7 +58,7 @@ namespace framework
copy-on-write ... How? Do the following:
*/
-class AcceleratorCache : public ThreadHelpBase // attention! Must be the first base class to guarentee right initialize lock ...
+class AcceleratorCache : public ThreadHelpBase // attention! Must be the first base class to guarantee right initialize lock ...
{
//______________________________________
// const, types
diff --git a/framework/source/inc/accelerators/acceleratorconfiguration.hxx b/framework/source/inc/accelerators/acceleratorconfiguration.hxx
index ea0dcefbe1f0..792031248938 100644
--- a/framework/source/inc/accelerators/acceleratorconfiguration.hxx
+++ b/framework/source/inc/accelerators/acceleratorconfiguration.hxx
@@ -87,7 +87,7 @@ typedef PresetHandler AcceleratorPresets;
/**
implements a read/write access to the accelerator configuration.
*/
-class XMLBasedAcceleratorConfiguration : protected ThreadHelpBase // attention! Must be the first base class to guarentee right initialize lock ...
+class XMLBasedAcceleratorConfiguration : protected ThreadHelpBase // attention! Must be the first base class to guarantee right initialize lock ...
, public IStorageListener
, public ::cppu::OWeakObject
, public css::lang::XTypeProvider
@@ -305,7 +305,7 @@ class XMLBasedAcceleratorConfiguration : protected ThreadHelpBase
};
-class XCUBasedAcceleratorConfiguration : protected ThreadHelpBase // attention! Must be the first base class to guarentee right initialize lock ...
+class XCUBasedAcceleratorConfiguration : protected ThreadHelpBase // attention! Must be the first base class to guarantee right initialize lock ...
, public ::cppu::OWeakObject
, public css::lang::XTypeProvider
, public css::util::XChangesListener
diff --git a/framework/source/inc/accelerators/keymapping.hxx b/framework/source/inc/accelerators/keymapping.hxx
index 4d696d124620..eafefd069eac 100644
--- a/framework/source/inc/accelerators/keymapping.hxx
+++ b/framework/source/inc/accelerators/keymapping.hxx
@@ -147,7 +147,7 @@ class KeyMapping
if this method returns sal_True!
@return [boolean]
- sal_True if convertion was successfully.
+ sal_True if conversion was successfully.
*/
sal_Bool impl_st_interpretIdentifierAsPureKeyCode(const ::rtl::OUString& sIdentifier,
sal_uInt16& rCode );
diff --git a/framework/source/inc/accelerators/presethandler.hxx b/framework/source/inc/accelerators/presethandler.hxx
index 6e6f2c5ab3b3..242c75d40dde 100644
--- a/framework/source/inc/accelerators/presethandler.hxx
+++ b/framework/source/inc/accelerators/presethandler.hxx
@@ -71,7 +71,7 @@ namespace framework
"menubar" "default" "menubar"
*/
-class PresetHandler : private ThreadHelpBase // attention! Must be the first base class to guarentee right initialize lock ...
+class PresetHandler : private ThreadHelpBase // attention! Must be the first base class to guarantee right initialize lock ...
{
//-------------------------------------------
// const
@@ -109,7 +109,7 @@ class PresetHandler : private ThreadHelpBase // attention! Must be the first bas
//---------------------------------------
/** @short because a concurrent access to the same storage from different implementations
- isnt supported, we have to share it with others.
+ isn't supported, we have to share it with others.
@descr This struct makes it possible to use any shared storage
in combination with a SingletonRef<> template ...
@@ -176,7 +176,7 @@ class PresetHandler : private ThreadHelpBase // attention! Must be the first bas
::salhelper::SingletonRef< TSharedStorages > m_aSharedStorages;
//---------------------------------------
- /** @short if we run in document mode, we cant use the global root storages!
+ /** @short if we run in document mode, we can't use the global root storages!
We have to use a special document storage explicitly. */
StorageHolder m_lDocumentStorages;
@@ -245,7 +245,7 @@ class PresetHandler : private ThreadHelpBase // attention! Must be the first bas
@descr Because this class should be useable in combination
with ::salhelper::SingletonRef template this ctor
- cant have any special parameters!
+ can't have any special parameters!
@param xSMGR
points to an uno service manager, which is used internaly
@@ -337,7 +337,7 @@ class PresetHandler : private ThreadHelpBase // attention! Must be the first bas
and we use e.g. "/en-US/default.xml" internaly.
If no localization exists for this preset set, this class
- will work in default mode - means "no locale" - automaticly.
+ will work in default mode - means "no locale" - automatically.
e.g. "/default.xml"
@throw com::sun::star::uno::RuntimeException(!)
@@ -397,7 +397,7 @@ class PresetHandler : private ThreadHelpBase // attention! Must be the first bas
@descr Note: Targets resist inside the user
layer. Normaly they are opened in read/write mode.
- But it will be opened readonly automaticly if that isnt possible
+ But it will be opened readonly automatically if that isn't possible
(may be the file is write protected on the system ...).
@param sTarget
@@ -414,12 +414,12 @@ class PresetHandler : private ThreadHelpBase // attention! Must be the first bas
sal_Bool bCreateIfMissing);
//---------------------------------------
- /** @short do anything which is neccessary to flush all changes
+ /** @short do anything which is necessary to flush all changes
back to disk.
@descr We have to call commit on all cached sub storages on the
path from the root storage upside down to the working storage
- (which are not realy used, but required to be holded alive!).
+ (which are not really used, but required to be holded alive!).
*/
void commitUserChanges();
diff --git a/framework/source/inc/accelerators/storageholder.hxx b/framework/source/inc/accelerators/storageholder.hxx
index c3a4392e2641..29418c7425c5 100644
--- a/framework/source/inc/accelerators/storageholder.hxx
+++ b/framework/source/inc/accelerators/storageholder.hxx
@@ -66,7 +66,7 @@ namespace framework
/**
TODO document me
*/
-class StorageHolder : private ThreadHelpBase // attention! Must be the first base class to guarentee right initialize lock ...
+class StorageHolder : private ThreadHelpBase // attention! Must be the first base class to guarantee right initialize lock ...
{
//-------------------------------------------
// types
@@ -207,7 +207,7 @@ class StorageHolder : private ThreadHelpBase // attention! Must be the first bas
@descr First this method try to open the requested sub element
using the given open mode. If it failed there is second step,
which tries to do the same again ... but removing a might existing
- WRITE flag from the open mode. The user can supress this fallback
+ WRITE flag from the open mode. The user can suppress this fallback
handling by setting the parameter bAllowFallback to sal_False.
@param xBaseStorage
diff --git a/framework/source/inc/dispatch/loaddispatcher.hxx b/framework/source/inc/dispatch/loaddispatcher.hxx
index 4f8c68e181af..e37cd44eab70 100644
--- a/framework/source/inc/dispatch/loaddispatcher.hxx
+++ b/framework/source/inc/dispatch/loaddispatcher.hxx
@@ -87,7 +87,7 @@ class LoadDispatcher : private ThreadHelpBase
public:
- /** @short creates a new instance and initialize it with all neccessary parameters.
+ /** @short creates a new instance and initialize it with all necessary parameters.
@descr Every instance of such LoadDispatcher can be used for the specified context only.
That means: It can be used to load any further requested content into tzhe here(!)
@@ -104,7 +104,7 @@ class LoadDispatcher : private ThreadHelpBase
which define such target.
@param nSearchFlags
- used in case sTargetFrame isnt a special one.
+ used in case sTargetFrame isn't a special one.
*/
LoadDispatcher(const css::uno::Reference< css::lang::XMultiServiceFactory >& xSMGR ,
const css::uno::Reference< css::frame::XFrame >& xOwnerFrame ,
diff --git a/framework/source/inc/dispatch/windowcommanddispatch.hxx b/framework/source/inc/dispatch/windowcommanddispatch.hxx
index 0b73ef4c24cc..d3a45adef022 100644
--- a/framework/source/inc/dispatch/windowcommanddispatch.hxx
+++ b/framework/source/inc/dispatch/windowcommanddispatch.hxx
@@ -92,7 +92,7 @@ class WindowCommandDispatch : private ThreadHelpBase
/// knows the frame, where we dispatch our commands as weak reference
css::uno::WeakReference< css::frame::XFrame > m_xFrame;
- /// knows the VCL window (where the hard coded commands occured) as weak XWindow reference
+ /// knows the VCL window (where the hard coded commands occurred) as weak XWindow reference
css::uno::WeakReference< css::awt::XWindow > m_xWindow;
//___________________________________________
diff --git a/framework/source/inc/loadenv/actionlockguard.hxx b/framework/source/inc/loadenv/actionlockguard.hxx
index 421a6876cd24..47f72d98e150 100644
--- a/framework/source/inc/loadenv/actionlockguard.hxx
+++ b/framework/source/inc/loadenv/actionlockguard.hxx
@@ -77,7 +77,7 @@ class ActionLockGuard : private ThreadHelpBase
//---------------------------------------
/** @short default ctor to initialize a "non working guard".
- @descr That can be usefull in cases, where no resource still exists,
+ @descr That can be useful in cases, where no resource still exists,
but will be available next time. Then this guard can be used
in a mode "use guard for more then one resources".
*/
@@ -88,7 +88,7 @@ class ActionLockGuard : private ThreadHelpBase
}
//---------------------------------------
- /** @short initialize new guard instance and lock the given resource immediatly.
+ /** @short initialize new guard instance and lock the given resource immediately.
@param xLock
points to the outside resource, which should be locked.
diff --git a/framework/source/inc/loadenv/loadenv.hxx b/framework/source/inc/loadenv/loadenv.hxx
index d1929ddfe67b..07c7d4cb8b0e 100644
--- a/framework/source/inc/loadenv/loadenv.hxx
+++ b/framework/source/inc/loadenv/loadenv.hxx
@@ -210,7 +210,7 @@ class LoadEnv : private ThreadHelpBase
/** @short holds the information about the finished load process.
- @descr The content of m_xTargetFrame cant be used as valid indicator,
+ @descr The content of m_xTargetFrame can't be used as valid indicator,
(in case the micht existing old document was reactivated)
we must hold the result of the load process explicitly.
*/
@@ -241,7 +241,7 @@ class LoadEnv : private ThreadHelpBase
@throw Currently there is no reason to throw such exception!
@throw A RuntimeException in case any internal process indicates, that
- the whole runtime cant be used any longer.
+ the whole runtime can't be used any longer.
*/
LoadEnv(const css::uno::Reference< css::lang::XMultiServiceFactory >& xSMGR)
throw(LoadEnvException, css::uno::RuntimeException);
@@ -303,10 +303,10 @@ class LoadEnv : private ThreadHelpBase
This value is set to a default value "UNKNWON_CONTENT", which force
an internal check, if this content is loadable or not.
But may this check was already made by the caller of this method and
- passing this information to this LoadEnv instance can supress this
+ passing this information to this LoadEnv instance can suppress this
might expensive check.
- That can be usefull in case this information is needed outside too,
- to decide if its neccessary to create some resources for this load
+ That can be useful in case this information is needed outside too,
+ to decide if its necessary to create some resources for this load
request ... or to reject the request imidiatly if it seems to be not
loadable in general.
@@ -315,7 +315,7 @@ class LoadEnv : private ThreadHelpBase
The real reason, a suitable message and ID will be given here immidiatly.
@throw A RuntimeException in case any internal process indicates, that
- the whole runtime cant be used any longer.
+ the whole runtime can't be used any longer.
*/
virtual void initializeLoading(const ::rtl::OUString& sURL ,
const css::uno::Sequence< css::beans::PropertyValue >& lMediaDescriptor,
@@ -335,7 +335,7 @@ class LoadEnv : private ThreadHelpBase
a frame with a controller/model inside can be possible. For loading
of a "non visible component" only an information about a successfully start
can be provided.
- Further it cant be guranteed, that the internal process runs synchronous.
+ Further it can't be guaranteed, that the internal process runs synchronous.
Thats why we preferr using of specialized methods afterwards e.g. to:
- wait till the internal job will be finished
and get the results
@@ -346,7 +346,7 @@ class LoadEnv : private ThreadHelpBase
The reason, a suitable message and ID will be given here immidiatly.
@throw A RuntimeException in case any internal process indicates, that
- the whole runtime cant be used any longer.
+ the whole runtime can't be used any longer.
*/
virtual void startLoading()
throw(LoadEnvException, css::uno::RuntimeException);
@@ -371,7 +371,7 @@ class LoadEnv : private ThreadHelpBase
@throw ... currently not used :-)
@throw A RuntimeException in case any internal process indicates, that
- the whole runtime cant be used any longer.
+ the whole runtime can't be used any longer.
*/
virtual sal_Bool waitWhileLoading(sal_uInt32 nTimeout = 0)
throw(LoadEnvException, css::uno::RuntimeException);
@@ -477,7 +477,7 @@ class LoadEnv : private ThreadHelpBase
In such cases a RuntimeException would be to hard for the outside code :-)
@throw A RuntimeException in case any internal process indicates, that
- the whole runtime cant be used any longer.
+ the whole runtime can't be used any longer.
*/
void impl_reactForLoadingState()
throw(LoadEnvException, css::uno::RuntimeException);
@@ -498,12 +498,12 @@ class LoadEnv : private ThreadHelpBase
@attention Not all types we know, are supported by filters. So it does not
indicates an error, if no suitable filter(loader etcpp will be found
for a type. But a type must be detected for the specified content.
- Otherwhise its an error and loading cant be finished successfully.
+ Otherwise its an error and loading can't be finished successfully.
@throw A LoadEnvException if detection failed.
@throw A RuntimeException in case any internal process indicates, that
- the whole runtime cant be used any longer.
+ the whole runtime can't be used any longer.
*/
void impl_detectTypeAndFilter()
throw(LoadEnvException, css::uno::RuntimeException);
@@ -531,7 +531,7 @@ class LoadEnv : private ThreadHelpBase
for the detected content type (must be done before by calling
impl_detectTypeAndFilter()). Because such handler does not depend
from a real target frame, location of such frame will be
- supressed here.
+ suppressed here.
In case handle failed all new created resources will be
removed before a suitable exception is thrown.
(Excepting a RuntimeException occure!)
@@ -541,7 +541,7 @@ class LoadEnv : private ThreadHelpBase
@throw A LoadEnvException if handling failed.
@throw A RuntimeException in case any internal process indicates, that
- the whole runtime cant be used any longer.
+ the whole runtime can't be used any longer.
*/
sal_Bool impl_handleContent()
throw(LoadEnvException, css::uno::RuntimeException);
@@ -562,7 +562,7 @@ class LoadEnv : private ThreadHelpBase
@throw A LoadEnvException if loading failed.
@throw A RuntimeException in case any internal process indicates, that
- the whole runtime cant be used any longer.
+ the whole runtime can't be used any longer.
*/
sal_Bool impl_loadContent()
throw(LoadEnvException, css::uno::RuntimeException);
@@ -590,7 +590,7 @@ class LoadEnv : private ThreadHelpBase
In such cases a RuntimeException would be to hard for the outside code :-)
@throw A RuntimeException in case any internal process indicates, that
- the whole runtime cant be used any longer.
+ the whole runtime can't be used any longer.
*/
css::uno::Reference< css::frame::XFrame > impl_searchAlreadyLoaded()
throw(LoadEnvException, css::uno::RuntimeException);
@@ -623,7 +623,7 @@ class LoadEnv : private ThreadHelpBase
In such cases a RuntimeException would be to hard for the outside code :-)
@throw A RuntimeException in case any internal process indicates, that
- the whole runtime cant be used any longer.
+ the whole runtime can't be used any longer.
*/
css::uno::Reference< css::frame::XFrame > impl_searchRecycleTarget()
throw(LoadEnvException, css::uno::RuntimeException);
@@ -631,11 +631,11 @@ class LoadEnv : private ThreadHelpBase
//_______________________________________
/** @short because showing of a frame is needed more then once ...
- it's implemented as an seperate method .-)
+ it's implemented as an separate method .-)
@descr Note: Showing of a frame is bound to a special feature ...
a) If we recycle any existing frame, we must bring it to front.
- Showing of such frame isnt needed realy .. because we recycle
+ Showing of such frame isn't needed really .. because we recycle
visible frames only!
b) If the document was already shown (e.g. by our progress implementation)
we do nothing here. The reason behind: The document was already shown ..
@@ -662,7 +662,7 @@ class LoadEnv : private ThreadHelpBase
/** @short checks weather a frame is already used for another load request or not.
- @descr Such frames cant be used for our "recycle feature"!
+ @descr Such frames can't be used for our "recycle feature"!
@param xFrame
the frame, which should be checked.
diff --git a/framework/source/inc/loadenv/loadenvexception.hxx b/framework/source/inc/loadenv/loadenvexception.hxx
index cd416e8a382a..8cb5d1c84512 100644
--- a/framework/source/inc/loadenv/loadenvexception.hxx
+++ b/framework/source/inc/loadenv/loadenvexception.hxx
@@ -53,7 +53,7 @@ namespace css = ::com::sun::star;
load environment only.
@descr Of course outside code must wrapp it, to transport
- the occured information to its caller.
+ the occurred information to its caller.
@author as96863
*/
@@ -106,11 +106,11 @@ class LoadEnvException
ID_COULD_NOT_REACTIVATE_CONTROLLER,
/** @short inidcates an already running load operation. Of yourse the same
- instance cant be used for multiple load requests at the same time.
+ instance can't be used for multiple load requests at the same time.
*/
ID_STILL_RUNNING,
- /** @short sometiems we cant specify the reason for an error, because we
+ /** @short sometiems we can't specify the reason for an error, because we
was interrupted by an called code in an unexpected way ...
*/
ID_GENERAL_ERROR
@@ -128,7 +128,7 @@ class LoadEnvException
/** @short An ID, which make this exception unique among others. */
sal_Int32 m_nID;
- /** @short Contains the original exception, if any occured. */
+ /** @short Contains the original exception, if any occurred. */
css::uno::Any m_exOriginal;
/** TODO
@@ -144,7 +144,7 @@ class LoadEnvException
/** @short initialize a new instance with an ID.
@descr Some other items of this exception
(e.g. a suitable message) will be generated
- automaticly.
+ automatically.
@param nID
One of the defined const IDs of this class.
@@ -160,7 +160,7 @@ class LoadEnvException
an wrap a detected exception into this one.
@descr Some other items of this exception
(e.g. a suitable message) will be generated
- automaticly.
+ automatically.
@param nID
One of the defined const IDs of this class.
diff --git a/framework/source/inc/pattern/frame.hxx b/framework/source/inc/pattern/frame.hxx
index 00b2416263b0..ad940f31f48b 100644
--- a/framework/source/inc/pattern/frame.hxx
+++ b/framework/source/inc/pattern/frame.hxx
@@ -72,8 +72,8 @@ inline css::uno::Reference< css::frame::XModel > extractFrameModel(const css::un
@descr It try to close the given resource first.
Delegating of the ownership can be influenced from
- outside. If closing isnt possible (because the
- needed interface isnt available) dispose() is tried instead.
+ outside. If closing isn't possible (because the
+ needed interface isn't available) dispose() is tried instead.
Al possible exception are handled inside.
So the user of this method has to look for the return value only.
@@ -111,10 +111,10 @@ inline sal_Bool closeIt(const css::uno::Reference< css::uno::XInterface >& xReso
catch(const css::lang::DisposedException&)
{} // disposed is closed is ...
catch(const css::uno::RuntimeException&)
- { throw; } // shouldnt be suppressed!
+ { throw; } // shouldn't be suppressed!
catch(const css::uno::Exception&)
{ return sal_False; } // ??? We defined to return a boolen value instead of throwing exceptions ...
- // (OK: RuntimeExceptions shouldnt be catched inside the core ..)
+ // (OK: RuntimeExceptions shouldn't be catched inside the core ..)
return sal_True;
}
diff --git a/framework/source/inc/pattern/storages.hxx b/framework/source/inc/pattern/storages.hxx
index 2ee2bb92996a..f34369dd5053 100644
--- a/framework/source/inc/pattern/storages.hxx
+++ b/framework/source/inc/pattern/storages.hxx
@@ -62,7 +62,7 @@ css::uno::Reference< css::embed::XStorage > createTempStorageBasedOnFolder(const
const css::uno::Reference< css::lang::XMultiServiceFactory >& xSMGR ,
sal_Bool bReadOnly)
{
- // error during opening the temp file isnt realy a runtime error -> handle it gracefully
+ // error during opening the temp file isn't really a runtime error -> handle it gracefully
css::uno::Reference< css::io::XOutputStream > xTempFile(xSMGR->createInstance(SERVICENAME_TEMPFILE), css::uno::UNO_QUERY);
if (!xTempFile.is())
return css::uno::Reference< css::embed::XStorage >();
diff --git a/framework/source/inc/pattern/window.hxx b/framework/source/inc/pattern/window.hxx
index b188159f32eb..b7f491b70016 100644
--- a/framework/source/inc/pattern/window.hxx
+++ b/framework/source/inc/pattern/window.hxx
@@ -74,7 +74,7 @@ static ::rtl::OUString getWindowState(const css::uno::Reference< css::awt::XWind
ByteString sWindowState;
Window* pWindow = VCLUnoHelper::GetWindow(xWindow);
- // check for system window is neccessary to guarantee correct pointer cast!
+ // check for system window is necessary to guarantee correct pointer cast!
if (pWindow!=NULL && pWindow->IsSystemWindow())
{
sal_uLong nMask = WINDOWSTATE_MASK_ALL;
@@ -102,7 +102,7 @@ static void setWindowState(const css::uno::Reference< css::awt::XWindow >& xWind
::vos::OClearableGuard aSolarGuard(Application::GetSolarMutex());
Window* pWindow = VCLUnoHelper::GetWindow(xWindow);
- // check for system window is neccessary to guarantee correct pointer cast!
+ // check for system window is necessary to guarantee correct pointer cast!
if (
(pWindow ) &&
(pWindow->IsSystemWindow()) &&
@@ -128,8 +128,8 @@ static ::sal_Bool isTopWindow(const css::uno::Reference< css::awt::XWindow >& xW
if (xTopWindowCheck.is())
{
// Note: Toolkit interface XTopWindow sometimes is used by real VCL-child-windows also .-)
- // Be sure that these window is realy a "top system window".
- // Attention ! Checking Window->GetParent() isnt the right approach here.
+ // Be sure that these window is really a "top system window".
+ // Attention ! Checking Window->GetParent() isn't the right approach here.
// Because sometimes VCL create "implicit border windows" as parents even we created
// a simple XWindow using the toolkit only .-(
::vos::OGuard aSolarLock(&Application::GetSolarMutex());
diff --git a/framework/source/interaction/quietinteraction.cxx b/framework/source/interaction/quietinteraction.cxx
index dbf823a17175..24fbd14a1c02 100644
--- a/framework/source/interaction/quietinteraction.cxx
+++ b/framework/source/interaction/quietinteraction.cxx
@@ -94,7 +94,7 @@ QuietInteraction::QuietInteraction()
void SAL_CALL QuietInteraction::handle( const css::uno::Reference< css::task::XInteractionRequest >& xRequest ) throw( css::uno::RuntimeException )
{
- // safe the request for outside analyzing everytime!
+ // safe the request for outside analyzing every time!
css::uno::Any aRequest = xRequest->getRequest();
/* SAFE { */
WriteGuard aWriteLock(m_aLock);
@@ -138,7 +138,7 @@ void SAL_CALL QuietInteraction::handle( const css::uno::Reference< css::task::XI
{
if (xFilter.is())
{
- // user selected filter wins everytime!
+ // user selected filter wins every time!
xFilter->setFilter( aAmbigousFilterRequest.SelectedFilter );
xFilter->select();
}
diff --git a/framework/source/jobs/helponstartup.cxx b/framework/source/jobs/helponstartup.cxx
index a6d6ad282d91..5c8799b336ce 100644
--- a/framework/source/jobs/helponstartup.cxx
+++ b/framework/source/jobs/helponstartup.cxx
@@ -166,7 +166,7 @@ css::uno::Any SAL_CALL HelpOnStartup::execute(const css::uno::Sequence< css::bea
return css::uno::Any();
// check current state of the help module
- // a) help isnt open => show default page for the detected module
+ // a) help isn't open => show default page for the detected module
// b) help shows any other default page(!) => show default page for the detected module
// c) help shows any other content => do nothing (user travelled to any other content and leaved the set of default pages)
::rtl::OUString sCurrentHelpURL = its_getCurrentHelpURL();
@@ -227,7 +227,7 @@ void SAL_CALL HelpOnStartup::disposing(const css::lang::EventObject& aEvent)
// check for right environment.
// If its not a DocumentEvent, which triggered this job,
- // we cant work correctly! => return immediatly and do nothing
+ // we can't work correctly! => return immediately and do nothing
::rtl::OUString sEnvType = lEnvironment.getUnpackedValueOrDefault(PROP_ENVTYPE, ::rtl::OUString());
if (!sEnvType.equals(ENVTYPE_DOCUMENTEVENT))
return ::rtl::OUString();
diff --git a/framework/source/jobs/job.cxx b/framework/source/jobs/job.cxx
index b9f7d483dfba..bbe212da67d0 100644
--- a/framework/source/jobs/job.cxx
+++ b/framework/source/jobs/job.cxx
@@ -226,7 +226,7 @@ void Job::execute( /*IN*/ const css::uno::Sequence< css::beans::NamedValue >& lD
css::uno::Reference< css::task::XJob > xSJob;
css::uno::Sequence< css::beans::NamedValue > lJobArgs = impl_generateJobArgs(lDynamicArgs);
- // It's neccessary to hold us self alive!
+ // It's necessary to hold us self alive!
// Otherwhise we might die by ref count ...
css::uno::Reference< css::task::XJobListener > xThis(static_cast< ::cppu::OWeakObject* >(this), css::uno::UNO_QUERY);
@@ -426,7 +426,7 @@ css::uno::Sequence< css::beans::NamedValue > Job::impl_generateJobArgs( /*IN*/ c
}
// get the configuration data from the job data container ... if possible
- // Means: if this job has any configuration data. Note: only realy
+ // Means: if this job has any configuration data. Note: only really
// filled lists will be set to the return structure at the end of this method.
css::uno::Sequence< css::beans::NamedValue > lConfigArgs ;
css::uno::Sequence< css::beans::NamedValue > lJobConfigArgs;
@@ -477,8 +477,8 @@ css::uno::Sequence< css::beans::NamedValue > Job::impl_generateJobArgs( /*IN*/ c
@short analyze the given job result and change the job configuration
@descr Note: Some results can be handled only, if this job has a valid configuration!
For "not configured jobs" (means pure services) they can be ignored.
- But these cases are handled by our JobData member. We can call it everytime.
- It does the right things automaticly. E.g. if the job has no configuration ...
+ But these cases are handled by our JobData member. We can call it every time.
+ It does the right things automatically. E.g. if the job has no configuration ...
it does nothing during setJobConfig()!
@param aResult
@@ -546,7 +546,7 @@ void Job::impl_reactForJobResult( /*IN*/ const css::uno::Any& aResult )
at the global desktop instance. That will hold us
alive and additional we get the information, if the
office whish to shutdown. If then an internal job
- is running we will have the chance to supress that
+ is running we will have the chance to suppress that
by throwing a veto exception. If our internal wrapped
job finished his work, we can release this listener
connection.
@@ -707,7 +707,7 @@ void SAL_CALL Job::jobFinished( /*IN*/ const css::uno::Reference< css::task::XAs
/* SAFE { */
WriteGuard aWriteLock(m_aLock);
- // It's neccessary to check this.
+ // It's necessary to check this.
// May this job was cancelled by any other reason
// some milliseconds before. :-)
if (m_xJob.is() && m_xJob==xJob)
@@ -722,7 +722,7 @@ void SAL_CALL Job::jobFinished( /*IN*/ const css::uno::Reference< css::task::XAs
}
// And let the start method "execute()" finishing it's job.
- // But do it everytime. So any outside blocking code can finish
+ // But do it every time. So any outside blocking code can finish
// his work too.
m_aAsyncWait.set();
@@ -787,7 +787,7 @@ void SAL_CALL Job::queryTermination( /*IN*/ const css::lang::EventObject& ) thro
Then we had not throwed a veto exception. But now we must agree with this situation and break
all our internal processes. Its not a good idea to mark this instance as non startable any longer
inside queryTermination() if no job was unning too. Because that would disable this job and may
- the office does not realy shutdownm, because another listener has thrown the suitable exception.
+ the office does not really shutdownm, because another listener has thrown the suitable exception.
@param aEvent
describes the broadcaster and must be the desktop instance
diff --git a/framework/source/jobs/jobdata.cxx b/framework/source/jobs/jobdata.cxx
index defdf4fff0a6..85d422a36f0f 100644
--- a/framework/source/jobs/jobdata.cxx
+++ b/framework/source/jobs/jobdata.cxx
@@ -88,7 +88,7 @@ const sal_Char* JobData::PROP_CONTEXT = "Context"
/**
@short standard ctor
@descr It initialize this new instance.
- But for real working it's neccessary to call setAlias() or setService() later.
+ But for real working it's necessary to call setAlias() or setService() later.
Because we need the job data ...
@param xSMGR
@@ -159,7 +159,7 @@ JobData::~JobData()
//________________________________
/**
@short initalize this instance as a job with configuration
- @descr They given alias can be used to adress some configuraton data.
+ @descr They given alias can be used to address some configuraton data.
We read it and fill our internal structures. Of course old informations
will be lost doing so.
@@ -255,7 +255,7 @@ void JobData::setService( const ::rtl::OUString& sService )
//________________________________
/**
@short initialize this instance with new job values.
- @descr It reads automaticly all properties of the specified
+ @descr It reads automatically all properties of the specified
job (using it's alias name) and "register it" for the
given event. This registration will not be validated against
the underlying configuration! (That must be done from outside.
@@ -312,7 +312,7 @@ void JobData::setJobConfig( const css::uno::Sequence< css::beans::NamedValue >&
if (m_eMode==E_ALIAS)
{
// It doesn't matter if this config object was already opened before.
- // It doesn nothing here then ... or it change the mode automaticly, if
+ // It doesn nothing here then ... or it change the mode automatically, if
// it was opened using another one before.
::rtl::OUString sKey;
sKey = ::rtl::OUString::createFromAscii(JOBCFG_ROOT);
@@ -377,7 +377,7 @@ void JobData::setResult( const JobResult& aResult )
//________________________________
/**
@short set a new environment descriptor for this job
- @descr It must(!) be done everytime this container is initialized
+ @descr It must(!) be done every time this container is initialized
with new job datas e.g.: setAlias()/setEvent()/setService() ...
Otherwhise the environment will be unknown!
*/
@@ -505,7 +505,7 @@ css::uno::Sequence< css::beans::NamedValue > JobData::getConfig() const
@short return information, if this job is part of the global configuration package
org.openoffice.Office.Jobs
@descr Because jobs can be executed by the dispatch framework using an uno service name
- directly - an executed job must not have any configuration realy. Such jobs
+ directly - an executed job must not have any configuration really. Such jobs
must provide the right interfaces only! But after finishing jobs can return
some informations (e.g. for updating her configuration ...). We must know
if such request is valid or not then.
@@ -527,9 +527,9 @@ sal_Bool JobData::hasConfig() const
And there exist two of them: one for an administrator ... and one for the
current user. We change it for the user layer only. So this JobDispatch can't be
started any more ... till the administrator change his timestamp.
- That can be usefull for post setup scenarios, which must run one time only.
+ That can be useful for post setup scenarios, which must run one time only.
- Note: This method don't do anything, if ths represented job doesn't have a configuration!
+ Note: This method don't do anything, if this represented job doesn't have a configuration!
*/
void JobData::disableJob()
{
@@ -542,7 +542,7 @@ void JobData::disableJob()
// update the configuration
// It doesn't matter if this config object was already opened before.
- // It doesn nothing here then ... or it change the mode automaticly, if
+ // It doesn nothing here then ... or it change the mode automatically, if
// it was opened using another one before.
::rtl::OUStringBuffer sKey(256);
sKey.appendAscii(JobData::EVENTCFG_ROOT );
@@ -675,7 +675,7 @@ css::uno::Sequence< ::rtl::OUString > JobData::getEnabledJobsForEvent( const css
// get all alias names of jobs, which are part of this job list
// But Some of them can be disabled by it's time stamp values.
- // We create an additional job name list iwth the same size, then the original list ...
+ // We create an additional job name list with the same size, then the original list ...
// step over all job entries ... check her time stamps ... and put only job names to the
// destination list, which represent an enabled job.
css::uno::Sequence< ::rtl::OUString > lAllJobs = xJobList->getElementNames();
@@ -726,7 +726,7 @@ css::uno::Sequence< ::rtl::OUString > JobData::getEnabledJobsForEvent( const css
But note: that does not set defaults for internal used members, which
does not relate to any job property! e.g. the reference to the global
uno service manager. Such informations are used for internal processes only
- and are neccessary for our work.
+ and are necessary for our work.
*/
void JobData::impl_reset()
{
diff --git a/framework/source/jobs/jobdispatch.cxx b/framework/source/jobs/jobdispatch.cxx
index c9be11d13356..28d76978a6f3 100644
--- a/framework/source/jobs/jobdispatch.cxx
+++ b/framework/source/jobs/jobdispatch.cxx
@@ -230,9 +230,9 @@ css::uno::Sequence< css::uno::Reference< css::frame::XDispatch > > SAL_CALL JobD
If a job is already running, (it can only occure for asynchronous jobs)
don't start the same job a second time. Queue in the given dispatch parameter
- and return immediatly. If the current running job call us back, we will start this
+ and return immediately. If the current running job call us back, we will start this
new dispatch request.
- If no job is running - queue the parameter too! But then start the new job immediatly.
+ If no job is running - queue the parameter too! But then start the new job immediately.
We have to queue it every time - because it hold us alive by ref count!
@param aURL
@@ -298,7 +298,7 @@ void JobDispatch::impl_dispatchEvent( /*IN*/ const ::rtl::OUString&
// no jobs ... no execution
// But a may given listener will know something ...
// I think this operaton was finished successfully.
- // It's not realy an error, if no registered jobs could be located.
+ // It's not really an error, if no registered jobs could be located.
// Step over all found jobs and execute it
int nExecutedJobs=0;
for (int j=0; j<lJobs.getLength(); ++j)
@@ -329,7 +329,7 @@ void JobDispatch::impl_dispatchEvent( /*IN*/ const ::rtl::OUString&
// Special mode for listener.
// We dont notify it directly here. We delegate that
// to the job implementation. But we must set ourself there too.
- // Because this job must fake the source adress of the event.
+ // Because this job must fake the source address of the event.
// Otherwhise the listener may will ignore it.
if (xListener.is())
pJob->setDispatchResultFake(xListener, xThis);
@@ -391,7 +391,7 @@ void JobDispatch::impl_dispatchService( /*IN*/ const ::rtl::OUString&
// Special mode for listener.
// We dont notify it directly here. We delegate that
// to the job implementation. But we must set ourself there too.
- // Because this job must fake the source adress of the event.
+ // Because this job must fake the source address of the event.
// Otherwhise the listener may will ignore it.
if (xListener.is())
pJob->setDispatchResultFake(xListener, xThis);
@@ -442,7 +442,7 @@ void JobDispatch::impl_dispatchAlias( /*IN*/ const ::rtl::OUString&
// Special mode for listener.
// We dont notify it directly here. We delegate that
// to the job implementation. But we must set ourself there too.
- // Because this job must fake the source adress of the event.
+ // Because this job must fake the source address of the event.
// Otherwhise the listener may will ignore it.
if (xListener.is())
pJob->setDispatchResultFake(xListener, xThis);
diff --git a/framework/source/jobs/jobexecutor.cxx b/framework/source/jobs/jobexecutor.cxx
index 6d3b66e5bb9b..21c6245b009d 100644
--- a/framework/source/jobs/jobexecutor.cxx
+++ b/framework/source/jobs/jobexecutor.cxx
@@ -160,7 +160,7 @@ JobExecutor::~JobExecutor()
/**
@short implementation of XJobExecutor interface
@descr We use the given event to locate any registered job inside our configuration
- and execute it. Further we control the lifetime of it and supress
+ and execute it. Further we control the lifetime of it and suppress
shutdown of the office till all jobs was finished.
@param sEvent
@@ -175,7 +175,7 @@ void SAL_CALL JobExecutor::trigger( const ::rtl::OUString& sEvent ) throw(css::u
// Optimization!
// Check if the given event name exist inside configuration and reject wrong requests.
- // This optimization supress using of the cfg api for getting event and job descriptions ...
+ // This optimization suppress using of the cfg api for getting event and job descriptions ...
if (m_lEvents.find(sEvent) == m_lEvents.end())
return;
@@ -232,7 +232,7 @@ void SAL_CALL JobExecutor::notifyEvent( const css::document::EventObject& aEvent
// Optimization!
// Check if the given event name exist inside configuration and reject wrong requests.
- // This optimization supress using of the cfg api for getting event and job descriptions.
+ // This optimization suppress using of the cfg api for getting event and job descriptions.
// see using of m_lEvents.find() below ...
// retrieve event context from event source
diff --git a/framework/source/jobs/jobresult.cxx b/framework/source/jobs/jobresult.cxx
index 33e2785abdc2..fdf04a39c50d 100644
--- a/framework/source/jobs/jobresult.cxx
+++ b/framework/source/jobs/jobresult.cxx
@@ -69,7 +69,7 @@ JobResult::JobResult()
{
// reset the flag mask!
// It will reset the accessible state of this object.
- // That can be usefull if something will fail here ...
+ // That can be useful if something will fail here ...
m_eParts = E_NOPART;
}
@@ -126,7 +126,7 @@ JobResult::JobResult( /*IN*/ const css::uno::Any& aResult )
// reset the flag mask!
// It will reset the accessible state of this object.
- // That can be usefull if something will fail here ...
+ // That can be useful if something will fail here ...
m_eParts = E_NOPART;
// analyze the result and update our other members
@@ -182,7 +182,7 @@ JobResult::JobResult( const JobResult& rCopy )
*/
JobResult::~JobResult()
{
- // Nothing realy to do here.
+ // Nothing really to do here.
}
//________________________________
@@ -210,7 +210,7 @@ void JobResult::operator=( const JobResult& rCopy )
/**
@short checks for existing parts of the analyzed result
@descr The internal flag mask was set after analyzing of the pure result.
- An user of us can check here, if the required part was realy part
+ An user of us can check here, if the required part was really part
of this result. Otherwhise it would use invalid informations ...
by using our other members!
diff --git a/framework/source/jobs/joburl.cxx b/framework/source/jobs/joburl.cxx
index 360bb8419a70..0cafa64beee4 100644
--- a/framework/source/jobs/joburl.cxx
+++ b/framework/source/jobs/joburl.cxx
@@ -82,7 +82,7 @@ JobURL::JobURL( /*IN*/ const ::rtl::OUString& sURL )
sal_Int32 t = JOBURL_PROTOCOL_LEN;
do
{
- // seperate all token of "{[event=<name>],[alias=<name>],[service=<name>]}"
+ // separate all token of "{[event=<name>],[alias=<name>],[service=<name>]}"
::rtl::OUString sToken = sURL.getToken(0, JOBURL_PART_SEPERATOR, t);
::rtl::OUString sPartValue ;
::rtl::OUString sPartArguments;
@@ -155,7 +155,7 @@ sal_Bool JobURL::isValid() const
@return <TRUE/> if an event part of the job URL exist and the out parameter
sEvent was filled.
- @attention The out parameter will be reseted everytime. Don't use it if method returns <FALSE/>!
+ @attention The out parameter will be reseted every time. Don't use it if method returns <FALSE/>!
*/
sal_Bool JobURL::getEvent( /*OUT*/ ::rtl::OUString& sEvent ) const
{
@@ -188,7 +188,7 @@ sal_Bool JobURL::getEvent( /*OUT*/ ::rtl::OUString& sEvent ) const
@return <TRUE/> if an alias part of the job URL exist and the out parameter
sAlias was filled.
- @attention The out parameter will be reseted everytime. Don't use it if method returns <FALSE/>!
+ @attention The out parameter will be reseted every time. Don't use it if method returns <FALSE/>!
*/
sal_Bool JobURL::getAlias( /*OUT*/ ::rtl::OUString& sAlias ) const
{
@@ -221,7 +221,7 @@ sal_Bool JobURL::getAlias( /*OUT*/ ::rtl::OUString& sAlias ) const
@return <TRUE/> if an service part of the job URL exist and the out parameter
sService was filled.
- @attention The out parameter will be reseted everytime. Don't use it if method returns <FALSE/>!
+ @attention The out parameter will be reseted every time. Don't use it if method returns <FALSE/>!
*/
sal_Bool JobURL::getService( /*OUT*/ ::rtl::OUString& sService ) const
{
@@ -278,7 +278,7 @@ sal_Bool JobURL::implst_split( /*IN*/ const ::rtl::OUString& sPart ,
// Otherwhise we do nothing and return sal_False.
if (bPartFound)
{
- // But may the part has optional arguments - seperated by a "?".
+ // But may the part has optional arguments - separated by a "?".
// Do so - we set the return value with the whole part string.
// Arguments will be set to an empty string as default.
// If we detect the right sign - we split the arguments and overwrite the default.
@@ -321,7 +321,7 @@ void JobURL::impldbg_checkIt()
JobURL::impldbg_checkURL("vnd.sun.star.job:service=;" , E_UNKNOWN, "" , "" , "" , NULL, NULL, NULL);
// check combinations
- // Note: No additional spaces or tabs are allowed after a seperator occured.
+ // Note: No additional spaces or tabs are allowed after a seperator occurred.
// Tab and spaces before a seperator will be used as value!
JobURL::impldbg_checkURL("vnd.sun.star.job:event=onMyEvent;alias=myAlias;service=css.Service" , E_EVENT | E_ALIAS | E_SERVICE , "onMyEvent", "myAlias", "css.Service" , NULL, NULL, NULL);
JobURL::impldbg_checkURL("vnd.sun.star.job:service=css.Service;alias=myAlias" , E_ALIAS | E_SERVICE , "" , "myAlias", "css.Service" , NULL, NULL, NULL);
diff --git a/framework/source/jobs/shelljob.cxx b/framework/source/jobs/shelljob.cxx
index fdbe5850004b..9dbb5eab8694 100644
--- a/framework/source/jobs/shelljob.cxx
+++ b/framework/source/jobs/shelljob.cxx
@@ -54,19 +54,19 @@ namespace framework{
//_______________________________________________
// definitions
-/** adress job configuration inside argument set provided on method execute(). */
+/** address job configuration inside argument set provided on method execute(). */
static const ::rtl::OUString PROP_JOBCONFIG = ::rtl::OUString::createFromAscii("JobConfig");
-/** adress job configuration property "Command". */
+/** address job configuration property "Command". */
static const ::rtl::OUString PROP_COMMAND = ::rtl::OUString::createFromAscii("Command");
-/** adress job configuration property "Arguments". */
+/** address job configuration property "Arguments". */
static const ::rtl::OUString PROP_ARGUMENTS = ::rtl::OUString::createFromAscii("Arguments");
-/** adress job configuration property "DeactivateJobIfDone". */
+/** address job configuration property "DeactivateJobIfDone". */
static const ::rtl::OUString PROP_DEACTIVATEJOBIFDONE = ::rtl::OUString::createFromAscii("DeactivateJobIfDone");
-/** adress job configuration property "CheckExitCode". */
+/** address job configuration property "CheckExitCode". */
static const ::rtl::OUString PROP_CHECKEXITCODE = ::rtl::OUString::createFromAscii("CheckExitCode");
//-----------------------------------------------
@@ -116,7 +116,7 @@ css::uno::Any SAL_CALL ShellJob::execute(const css::uno::Sequence< css::beans::N
::rtl::OUString sRealCommand = impl_substituteCommandVariables(sCommand);
// Command is required as minimum.
- // If it does not exists ... we cant do our job.
+ // If it does not exists ... we can't do our job.
// Deactivate such miss configured job silently .-)
if (sRealCommand.getLength() < 1)
return ShellJob::impl_generateAnswer4Deactivation();
diff --git a/framework/source/layoutmanager/layoutmanager.cxx b/framework/source/layoutmanager/layoutmanager.cxx
index 54b0c79d012c..04d5afe170c2 100644
--- a/framework/source/layoutmanager/layoutmanager.cxx
+++ b/framework/source/layoutmanager/layoutmanager.cxx
@@ -940,7 +940,7 @@ void LayoutManager::implts_backupProgressBarWrapper()
return;
// safe a backup copy of the current progress!
- // This copy will be used automaticly inside createProgressBar() which is called
+ // This copy will be used automatically inside createProgressBar() which is called
// implictly from implts_doLayout() .-)
m_xProgressBarBackup = m_aProgressBarElement.m_xUIElement;
diff --git a/framework/source/layoutmanager/toolbarlayoutmanager.cxx b/framework/source/layoutmanager/toolbarlayoutmanager.cxx
index ce01521d865f..a2ab45041ea9 100644
--- a/framework/source/layoutmanager/toolbarlayoutmanager.cxx
+++ b/framework/source/layoutmanager/toolbarlayoutmanager.cxx
@@ -332,6 +332,12 @@ Rectangle ToolbarLayoutManager::implts_calcDockingArea()
// Note: For each docking area row resp. column only the size of largest UIElement is collected.
for ( UIElementVector::const_iterator pConstIter = m_aUIElements.begin(); pConstIter != m_aUIElements.end(); ++pConstIter )
{
+ if ( !pConstIter->m_bVisible
+ || pConstIter->m_bMasterHide )
+ {
+ continue;
+ }
+
uno::Reference< ui::XUIElement > xUIElement( pConstIter->m_xUIElement, uno::UNO_QUERY );
if ( xUIElement.is() )
{
@@ -340,7 +346,8 @@ Rectangle ToolbarLayoutManager::implts_calcDockingArea()
if ( xWindow.is() && xDockWindow.is() )
{
Window* pWindow = VCLUnoHelper::GetWindow( xWindow );
- if ( pWindow && !xDockWindow->isFloating() && pConstIter->m_bVisible )
+ if ( pWindow != NULL
+ && !xDockWindow->isFloating() )
{
const awt::Rectangle aPosSize = xWindow->getPosSize();
insertDockingAreaSize(
@@ -572,9 +579,6 @@ bool ToolbarLayoutManager::implts_setToolbarVisibility(
{
implts_setLayoutDirty();
}
- aUIElement.m_bVisible = bVisible;
- implts_writeWindowStateData( aUIElement );
- implts_setToolbar( aUIElement );
bRet = true;
}
@@ -586,6 +590,9 @@ bool ToolbarLayoutManager::showToolbar( const ::rtl::OUString& rResourceURL )
{
UIElement aUIElement = implts_findToolbar( rResourceURL );
const bool bRet = implts_setToolbarVisibility( true, aUIElement );
+ aUIElement.m_bVisible = true;
+ implts_writeWindowStateData( aUIElement );
+ implts_setToolbar( aUIElement );
implts_sortUIElements();
return bRet;
}
@@ -594,6 +601,9 @@ bool ToolbarLayoutManager::hideToolbar( const ::rtl::OUString& rResourceURL )
{
UIElement aUIElement = implts_findToolbar( rResourceURL );
const bool bRet = implts_setToolbarVisibility( false, aUIElement );
+ aUIElement.m_bVisible = false;
+ implts_writeWindowStateData( aUIElement );
+ implts_setToolbar( aUIElement );
implts_sortUIElements();
return bRet;
}
@@ -662,8 +672,9 @@ void ToolbarLayoutManager::setVisible( bool bVisible )
UIElementVector::iterator pIter;
for ( pIter = aUIElementVector.begin(); pIter != aUIElementVector.end(); pIter++ )
{
- pIter->m_bMasterHide = !bVisible;
implts_setToolbarVisibility( bVisible, *pIter );
+ pIter->m_bMasterHide = !bVisible;
+ implts_setToolbar( *pIter );
}
implts_sortUIElements();
@@ -758,16 +769,18 @@ bool ToolbarLayoutManager::dockAllToolbars()
{
std::vector< ::rtl::OUString > aToolBarNameVector;
- ::rtl::OUString aElementType;
- ::rtl::OUString aElementName;
-
ReadGuard aReadLock( m_aLock );
UIElementVector::iterator pIter;
for ( pIter = m_aUIElements.begin(); pIter != m_aUIElements.end(); pIter++ )
{
- if ( pIter->m_aType.equalsAscii( "toolbar" ) && pIter->m_xUIElement.is() &&
- pIter->m_bFloating && pIter->m_bVisible )
+ if ( pIter->m_aType.equalsAscii( "toolbar" )
+ && pIter->m_xUIElement.is()
+ && pIter->m_bFloating
+ && pIter->m_bVisible
+ && !pIter->m_bMasterHide )
+ {
aToolBarNameVector.push_back( pIter->m_aName );
+ }
}
aReadLock.unlock();
@@ -1212,7 +1225,7 @@ void ToolbarLayoutManager::implts_reparentToolbars()
uno::Reference< awt::XWindow > xWindow;
try
{
- // We have to retreive the window reference with try/catch as it is
+ // We have to retrieve the window reference with try/catch as it is
// possible that all elements have been disposed!
xWindow = uno::Reference< awt::XWindow >( xUIElement->getRealInterface(), uno::UNO_QUERY );
}
@@ -1222,7 +1235,7 @@ void ToolbarLayoutManager::implts_reparentToolbars()
Window* pWindow = VCLUnoHelper::GetWindow( xWindow );
if ( pWindow )
{
- // Reparent our child windows acording to their current state.
+ // Reparent our child windows according to their current state.
if ( pIter->m_bFloating )
pWindow->SetParent( pContainerWindow );
else
@@ -1371,7 +1384,7 @@ uno::Reference< ui::XUIElement > ToolbarLayoutManager::implts_createElement( con
void ToolbarLayoutManager::implts_setElementData( UIElement& rElement, const uno::Reference< awt::XDockableWindow >& rDockWindow )
{
ReadGuard aReadLock( m_aLock );
- bool bShowElement( rElement.m_bVisible && !rElement.m_bMasterHide && implts_isParentWindowVisible() );
+ const bool bShowElement( rElement.m_bVisible && !rElement.m_bMasterHide && implts_isParentWindowVisible() );
aReadLock.unlock();
uno::Reference< awt::XDockableWindow > xDockWindow( rDockWindow );
@@ -2012,7 +2025,10 @@ void ToolbarLayoutManager::implts_getDockingAreaElementInfos( ui::DockingArea eD
UIElementVector::iterator pIter;
for ( pIter = m_aUIElements.begin(); pIter != m_aUIElements.end(); pIter++ )
{
- if ( pIter->m_aDockedData.m_nDockedArea == eDockingArea && pIter->m_bVisible && !pIter->m_bFloating )
+ if ( pIter->m_aDockedData.m_nDockedArea == eDockingArea
+ && pIter->m_bVisible
+ && !pIter->m_bMasterHide
+ && !pIter->m_bFloating )
{
uno::Reference< ui::XUIElement > xUIElement( pIter->m_xUIElement );
if ( xUIElement.is() )
@@ -2196,7 +2212,10 @@ void ToolbarLayoutManager::implts_getDockingAreaElementInfoOnSingleRowCol( ui::D
UIElementVector::iterator pEnd = m_aUIElements.end();
for ( pIter = m_aUIElements.begin(); pIter != pEnd; pIter++ )
{
- if ( pIter->m_aDockedData.m_nDockedArea == eDockingArea )
+ if ( pIter->m_aDockedData.m_nDockedArea == eDockingArea
+ && pIter->m_bVisible
+ && !pIter->m_bMasterHide
+ && !pIter->m_bFloating )
{
bool bSameRowCol = bHorzDockArea ? ( pIter->m_aDockedData.m_aPos.Y() == nRowCol ) : ( pIter->m_aDockedData.m_aPos.X() == nRowCol );
uno::Reference< ui::XUIElement > xUIElement( pIter->m_xUIElement );
@@ -2209,8 +2228,11 @@ void ToolbarLayoutManager::implts_getDockingAreaElementInfoOnSingleRowCol( ui::D
vos::OGuard aGuard( Application::GetSolarMutex() );
Window* pWindow = VCLUnoHelper::GetWindow( xWindow );
uno::Reference< awt::XDockableWindow > xDockWindow( xWindow, uno::UNO_QUERY );
- if ( pWindow && pIter->m_bVisible && xDockWindow.is() && !pIter->m_bFloating )
+ if ( pWindow != NULL
+ && xDockWindow.is() )
+ {
aWindowVector.push_back( *pIter ); // docked windows
+ }
}
}
}
diff --git a/framework/source/loadenv/loadenv.cxx b/framework/source/loadenv/loadenv.cxx
index a7bf1e5605da..530621d90310 100644
--- a/framework/source/loadenv/loadenv.cxx
+++ b/framework/source/loadenv/loadenv.cxx
@@ -280,9 +280,9 @@ void LoadEnv::initializeLoading(const ::rtl::OUString&
m_bReactivateControllerOnError = sal_False ;
m_bLoaded = sal_False ;
- // try to find out, if its realy a content, which can be loaded or must be "handled"
+ // try to find out, if its really a content, which can be loaded or must be "handled"
// We use a default value for this in-parameter. Then we have to start a complex check method
- // internaly. But if this check was already done outside it can be supressed to perform
+ // internaly. But if this check was already done outside it can be suppressed to perform
// the load request. We take over the result then!
if (m_eContentType == E_UNSUPPORTED_CONTENT)
{
@@ -292,7 +292,7 @@ void LoadEnv::initializeLoading(const ::rtl::OUString&
}
// make URL part of the MediaDescriptor
- // It doesnt mater, if its already an item of it.
+ // It doesn't mater, if its already an item of it.
// It must be the same value ... so we can overwrite it :-)
m_lMediaDescriptor[::comphelper::MediaDescriptor::PROP_URL()] <<= sURL;
@@ -311,8 +311,8 @@ void LoadEnv::initializeLoading(const ::rtl::OUString&
if (pIt != m_lMediaDescriptor.end())
m_lMediaDescriptor.erase(pIt);
- // patch the MediaDescriptor, so it fullfill the outside requirements
- // Means especialy items like e.g. UI InteractionHandler, Status Indicator,
+ // patch the MediaDescriptor, so it fulfill the outside requirements
+ // Means especially items like e.g. UI InteractionHandler, Status Indicator,
// MacroExecutionMode etcpp.
/*TODO progress is bound to a frame ... How can we set it here? */
@@ -432,7 +432,7 @@ void LoadEnv::startLoading()
bStarted = impl_loadContent();
// not started => general error
- // We cant say - what was the reason for.
+ // We can't say - what was the reason for.
if (!bStarted)
throw LoadEnvException(LoadEnvException::ID_GENERAL_ERROR);
}
@@ -447,8 +447,8 @@ sal_Bool LoadEnv::waitWhileLoading(sal_uInt32 nTimeout)
throw(LoadEnvException, css::uno::RuntimeException)
{
// Because its not a good idea to block the main thread
- // (and we cant be shure that we are currently not used inside the
- // main thread!), we cant use conditions here realy. We must yield
+ // (and we can't be sure that we are currently not used inside the
+ // main thread!), we can't use conditions here really. We must yield
// in an intellegent manner :-)
sal_Int32 nTime = nTimeout;
@@ -504,14 +504,14 @@ void LoadEnv::cancelLoading()
/* Attention:
After returning from any cancel/dispose call, neither the frame nor weself
may be called back. Because only we can cancel this job, we already know
- the result! => Thats why its not usefull nor neccessary to wait for any
+ the result! => Thats why its not useful nor necessary to wait for any
asynchronous listener notification.
*/
m_bLoaded = sal_False;
m_xAsynchronousJob.clear();
}
- // or may be its a content handler? Such handler cant be cancelled in its running
- // operation :-( And we cant deregister us there again :-(
+ // or may be its a content handler? Such handler can't be cancelled in its running
+ // operation :-( And we can't deregister us there again :-(
// => The only chance is an exception :-)
else
throw LoadEnvException(LoadEnvException::ID_STILL_RUNNING);
@@ -653,7 +653,7 @@ void LoadEnv::impl_setResult(sal_Bool bResult)
impl_reactForLoadingState();
// clearing of this reference will unblock waitWhileLoading()!
- // So we must be shure, that loading process was realy finished.
+ // So we must be sure, that loading process was really finished.
// => do it as last operation of this method ...
m_xAsynchronousJob.clear();
@@ -701,7 +701,7 @@ LoadEnv::EContentType LoadEnv::classifyContent(const ::rtl::OUString&
// all needed resources. If they are missing - the following
// load request will fail.
- /* Attention: The following code cant work on such special URLs!
+ /* Attention: The following code can't work on such special URLs!
It should not break the office .. but it make no sense
to start expensive object creations and complex search
algorithm if its clear, that such URLs must be handled
@@ -832,7 +832,7 @@ void LoadEnv::impl_detectTypeAndFilter()
ReadGuard aReadLock(m_aLock);
// Attention: Because our stl media descriptor is a copy of an uno sequence
- // we cant use as an in/out parameter here. Copy it before and dont forget to
+ // we can't use as an in/out parameter here. Copy it before and dont forget to
// update structure afterwards again!
css::uno::Sequence< css::beans::PropertyValue > lDescriptor = m_lMediaDescriptor.getAsConstPropertyValueList();
css::uno::Reference< css::lang::XMultiServiceFactory > xSMGR = m_xSMGR;
@@ -862,7 +862,7 @@ void LoadEnv::impl_detectTypeAndFilter()
aWriteLock.unlock();
// <- SAFE
- // But the type isnt enough. For loading sometimes we need more informations.
+ // But the type isn't enough. For loading sometimes we need more informations.
// E.g. for our "_default" feature, where we recylce any frame which contains
// and "Untitled" document, we must know if the new document is based on a template!
// But this information is available as a filter property only.
@@ -895,7 +895,7 @@ void LoadEnv::impl_detectTypeAndFilter()
// Then we have to add the property "AsTemplate".
// We need this information to decide afterwards if we can use a "recycle frame"
// for target "_default" or has to create a new one everytimes.
- // On the other side we have to supress that, if this property already exists
+ // On the other side we have to suppress that, if this property already exists
// and should trigger a special handling. Then the outside calli of this method here,
// has to know, what he is doing .-)
@@ -944,7 +944,7 @@ sal_Bool LoadEnv::impl_handleContent()
m_lMediaDescriptor >> lDescriptor;
css::util::URL aURL = m_aURL;
- // get neccessary container to query for a handler object
+ // get necessary container to query for a handler object
css::uno::Reference< css::lang::XMultiServiceFactory > xFactory(m_xSMGR->createInstance(SERVICENAME_CONTENTHANDLERFACTORY), css::uno::UNO_QUERY);
css::uno::Reference< css::container::XContainerQuery > xQuery (xFactory , css::uno::UNO_QUERY);
@@ -1146,7 +1146,7 @@ sal_Bool LoadEnv::impl_loadContent()
// if it will be run out of scope.
// Note further: ignore if this internal guard already contains a resource.
- // Might impl_searchRecylcTarget() set it before. But incase this impl-method wasnt used
+ // Might impl_searchRecylcTarget() set it before. But incase this impl-method wasn't used
// and the target frame was new created ... this lock here must be set!
css::uno::Reference< css::document::XActionLockable > xTargetLock(xTargetFrame, css::uno::UNO_QUERY);
m_aTargetLock.setResource(xTargetLock);
@@ -1242,7 +1242,7 @@ css::uno::Reference< css::uno::XInterface > LoadEnv::impl_searchLoader()
// Otherwhise ...
// We need this type information to locate an registered frame loader
- // Without such information we cant work!
+ // Without such information we can't work!
::rtl::OUString sType = m_lMediaDescriptor.getUnpackedValueOrDefault(::comphelper::MediaDescriptor::PROP_TYPENAME(), ::rtl::OUString());
if (!sType.getLength())
throw LoadEnvException(LoadEnvException::ID_INVALID_MEDIADESCRIPTOR);
@@ -1340,7 +1340,7 @@ css::uno::Reference< css::frame::XFrame > LoadEnv::impl_searchAlreadyLoaded()
}
// check URL
- // May its not usefull to start expensive document search, if it
+ // May its not useful to start expensive document search, if it
// can fail only .. because we load from a stream or model directly!
if (
(ProtocolCheck::isProtocol(m_aURL.Complete, ProtocolCheck::E_PRIVATE_STREAM )) ||
@@ -1360,7 +1360,7 @@ css::uno::Reference< css::frame::XFrame > LoadEnv::impl_searchAlreadyLoaded()
return css::uno::Reference< css::frame::XFrame >(); // task list can be empty!
// Note: To detect if a document was alrady loaded before
- // we check URLs here only. But might the existing and the requred
+ // we check URLs here only. But might the existing and the required
// document has different versions! Then its URLs are the same ...
sal_Int16 nNewVersion = m_lMediaDescriptor.getUnpackedValueOrDefault(::comphelper::MediaDescriptor::PROP_VERSION(), (sal_Int16)(-1));
@@ -1406,7 +1406,7 @@ css::uno::Reference< css::frame::XFrame > LoadEnv::impl_searchAlreadyLoaded()
}
// get the original load arguments from the current document
- // and decide if its realy the same then the one will be.
+ // and decide if its really the same then the one will be.
// It must be visible and must use the same file revision ...
// or must not have any file revision set (-1 == -1!)
::comphelper::MediaDescriptor lOldDocDescriptor(xModel->getArgs());
@@ -1641,7 +1641,7 @@ void LoadEnv::impl_reactForLoadingState()
{
::vos::OClearableGuard aSolarGuard(Application::GetSolarMutex());
Window* pWindow = VCLUnoHelper::GetWindow(xWindow);
- // check for system window is neccessary to guarantee correct pointer cast!
+ // check for system window is necessary to guarantee correct pointer cast!
if (pWindow && pWindow->IsSystemWindow())
((WorkWindow*)pWindow)->Minimize();
}
@@ -1661,7 +1661,7 @@ void LoadEnv::impl_reactForLoadingState()
{
::rtl::OUString sFrameName;
pFrameName->second >>= sFrameName;
- // Check the name again. e.g. "_default" isnt allowed.
+ // Check the name again. e.g. "_default" isn't allowed.
// On the other side "_beamer" is a valid name :-)
if (TargetHelper::isValidNameForFrame(sFrameName))
m_xTargetFrame->setName(sFrameName);
diff --git a/framework/source/loadenv/targethelper.cxx b/framework/source/loadenv/targethelper.cxx
index 42e9fa335d20..6a2d889cd1a7 100644
--- a/framework/source/loadenv/targethelper.cxx
+++ b/framework/source/loadenv/targethelper.cxx
@@ -88,8 +88,8 @@ sal_Bool TargetHelper::matchSpecialTarget(const ::rtl::OUString& sCheckTarget ,
-----------------------------------------------*/
sal_Bool TargetHelper::isValidNameForFrame(const ::rtl::OUString& sName)
{
- // some special targets are realy special ones :-)
- // E.g. the are realy used to locate one frame inside the frame tree.
+ // some special targets are really special ones :-)
+ // E.g. the are really used to locate one frame inside the frame tree.
if (
(!sName.getLength() ) ||
(TargetHelper::matchSpecialTarget(sName, E_HELPTASK)) ||
diff --git a/framework/source/recording/dispatchrecordersupplier.cxx b/framework/source/recording/dispatchrecordersupplier.cxx
index 7ec1ac1e0178..43663ba459a6 100644
--- a/framework/source/recording/dispatchrecordersupplier.cxx
+++ b/framework/source/recording/dispatchrecordersupplier.cxx
@@ -90,7 +90,7 @@ DEFINE_INIT_SERVICE(
/**
@short standard constructor to create instance
@descr Because an instance will be initialized by her interface methods
- it's not neccessary to do anything here.
+ it's not necessary to do anything here.
*/
DispatchRecorderSupplier::DispatchRecorderSupplier( const css::uno::Reference< css::lang::XMultiServiceFactory >& xFactory )
// init baseclasses first!
diff --git a/framework/source/services/autorecovery.cxx b/framework/source/services/autorecovery.cxx
index 15896d076d61..287af8706bbf 100644
--- a/framework/source/services/autorecovery.cxx
+++ b/framework/source/services/autorecovery.cxx
@@ -225,7 +225,7 @@ static const sal_Int32 GIVE_UP_RETRY = 1; // in
// enable the following defines in case you whish to simulate a full disc for debug purposes .-)
-// this define throws everytime a document is stored or a configuration change
+// this define throws every time a document is stored or a configuration change
// should be flushed an exception ... so the special error handler for this scenario is triggered
// #define TRIGGER_FULL_DISC_CHECK
@@ -624,10 +624,10 @@ void SAL_CALL AutoRecovery::dispatch(const css::util::URL&
::comphelper::SequenceAsHashMap lArgs(lArguments);
// check if somewhere wish to disable recovery temp. for this office session
- // This can be done immediatly ... must not been done asynchronous.
+ // This can be done immediately ... must not been done asynchronous.
if ((eNewJob & AutoRecovery::E_DISABLE_AUTORECOVERY) == AutoRecovery::E_DISABLE_AUTORECOVERY)
{
- // it's important to set a flag internaly, so AutoRecovery will be supressed - even if it's requested.
+ // it's important to set a flag internaly, so AutoRecovery will be suppressed - even if it's requested.
m_eJob |= eNewJob;
implts_stopTimer();
implts_stopListening();
@@ -873,8 +873,8 @@ void SAL_CALL AutoRecovery::notifyEvent(const css::document::EventObject& aEvent
implts_updateModifiedState(xDocument);
}
/* at least one document starts saving process =>
- Our application code isnt ready for multiple save requests
- at the same time. So we have to supress our AutoSave feature
+ Our application code isn't ready for multiple save requests
+ at the same time. So we have to suppress our AutoSave feature
for the moment, till this other save requests will be finished.
*/
else
@@ -899,7 +899,7 @@ void SAL_CALL AutoRecovery::notifyEvent(const css::document::EventObject& aEvent
/* document saved as copy => mark it as "non used by concurrent save operation".
so we can try to create a backup copy if next time AutoSave is started too.
Dont remove temp. files or change the modified state of the document!
- It was not realy saved to the original file ...
+ It was not really saved to the original file ...
*/
else
if (aEvent.EventName.equals(EVENT_ON_SAVETODONE))
@@ -978,7 +978,7 @@ void SAL_CALL AutoRecovery::changesOccurred(const css::util::ChangesEvent& aEven
// Note: This call stops the timer and starts it again.
// But it checks the different timer states internaly and
- // may be supress the restart!
+ // may be suppress the restart!
implts_updateTimer();
}
@@ -1063,7 +1063,7 @@ css::uno::Reference< css::container::XNameAccess > AutoRecovery::implts_openConf
catch(const css::uno::Exception&)
{
// These config keys are not sooooo important, that
- // we are interested on errors here realy .-)
+ // we are interested on errors here really .-)
nMinSpaceDocSave = MIN_DISCSPACE_DOCSAVE;
nMinSpaceConfigSave = MIN_DISCSPACE_CONFIGSAVE;
}
@@ -1211,7 +1211,7 @@ void AutoRecovery::implts_specifyDefaultFilterAndExtension(AutoRecovery::TDocume
if (!rInfo.AppModule.getLength())
{
throw css::uno::RuntimeException(
- ::rtl::OUString::createFromAscii("Cant find out the default filter and its extension, if no application module is known!"),
+ ::rtl::OUString::createFromAscii("Can't find out the default filter and its extension, if no application module is known!"),
static_cast< css::frame::XDispatch* >(this));
}
@@ -1271,7 +1271,7 @@ void AutoRecovery::implts_specifyAppModuleAndFactory(AutoRecovery::TDocumentInfo
{
ENSURE_OR_THROW2(
rInfo.AppModule.getLength() || rInfo.Document.is(),
- "Cant find out the application module nor its factory URL, if no application module (or a suitable) document is known!",
+ "Can't find out the application module nor its factory URL, if no application module (or a suitable) document is known!",
*this );
// SAFE -> ----------------------------------
@@ -1427,7 +1427,7 @@ void AutoRecovery::implts_flushConfigItem(const AutoRecovery::TDocumentInfo& rIn
catch(const css::uno::Exception& ex)
{
// a) FULL DISC seams to be the problem behind => show error and retry it forever (e.g. retry=300)
- // b) unknown problem (may be locking problem) => reset RETRY value to more usefull value(!) (e.g. retry=3)
+ // b) unknown problem (may be locking problem) => reset RETRY value to more useful value(!) (e.g. retry=3)
// c) unknown problem (may be locking problem) + 1..2 repeating operations => throw the original exception to force generation of a stacktrace !
// SAFE ->
@@ -1682,7 +1682,7 @@ IMPL_LINK(AutoRecovery, implts_timerExpired, void*, EMPTYARG)
sal_Bool bAllowUserIdleLoop = sal_True;
AutoRecovery::ETimerType eSuggestedTimer = implts_saveDocs(bAllowUserIdleLoop, sal_False);
- // If timer isnt used for "short callbacks" (means polling
+ // If timer isn't used for "short callbacks" (means polling
// for special states) ... reset the handle state of all
// cache items. Such handle state indicates, that a document
// was already saved during the THIS(!) AutoSave session.
@@ -1803,7 +1803,7 @@ void AutoRecovery::implts_registerDocument(const css::uno::Reference< css::frame
implts_specifyAppModuleAndFactory(aNew);
// Hack! Check for "illegal office documents" ... as e.g. the Basic IDE
- // Its not realy a full featured office document. It doesnt provide an URL, any filter, a factory URL etcpp.
+ // Its not really a full featured office document. It doesn't provide an URL, any filter, a factory URL etcpp.
// TODO file bug to Basci IDE developers. They must remove the office document API from its service.
if (
(!aNew.OrgURL.getLength() ) &&
@@ -1881,7 +1881,7 @@ void AutoRecovery::implts_deregisterDocument(const css::uno::Reference< css::fra
aCacheLock.unlock();
// Sometimes we close documents by ourself.
- // And these documents cant be deregistered.
+ // And these documents can't be deregistered.
// Otherwhise we loos our configuration data ... but need it !
// see SessionSave !
if (aInfo.IgnoreClosing)
@@ -1899,7 +1899,7 @@ void AutoRecovery::implts_deregisterDocument(const css::uno::Reference< css::fra
/* This method is called within disposing() of the document too. But there it's not a good idea to
deregister us as listener. Furter it make no sense - because the broadcaster dies.
- So we supress deregistration in such case ...
+ So we suppress deregistration in such case ...
*/
if (bStopListening)
implts_stopModifyListeningOnDoc(aInfo);
@@ -2200,7 +2200,7 @@ void AutoRecovery::implts_prepareSessionShutdown()
So we have to check a second time, if this property is set ....
Best place doing so is to check it immeditaly before saving
and supressingd saving the document then.
- Of course removing the corresponding cache entry isnt an option.
+ Of course removing the corresponding cache entry isn't an option.
Because it would disturb iteration over the cache !
So we ignore such documents only ...
Hopefully next time they are not inserted in our cache.
@@ -2304,11 +2304,11 @@ AutoRecovery::ETimerType AutoRecovery::implts_saveDocs( sal_Bool bAl
// ii) For a CrashSave ... add it to the list of dangerous documents and
// save it after all other documents was saved successfully. That decrease
// the chance for a crash inside a crash.
- // On the other side it's not neccessary for documents, which are not modified.
+ // On the other side it's not necessary for documents, which are not modified.
// They can be handled normaly - means we patch the corresponding configuration entry only.
// iii) For a SessionSave ... ignore it! There is no time to wait for this save operation.
- // Because the WindowManager will kill the process if it doesnt react immediatly.
- // On the other side we cant risk a concurrent save request ... because we know
+ // Because the WindowManager will kill the process if it doesn't react immediately.
+ // On the other side we can't risk a concurrent save request ... because we know
// that it will produce a crash.
// Attention: Because eJob is used as a flag field, you have to check for the worst case first.
@@ -2460,7 +2460,7 @@ void AutoRecovery::implts_saveOneDoc(const ::rtl::OUString&
bError = sal_True;
// a) FULL DISC seams to be the problem behind => show error and retry it forever (e.g. retry=300)
- // b) unknown problem (may be locking problem) => reset RETRY value to more usefull value(!) (e.g. retry=3)
+ // b) unknown problem (may be locking problem) => reset RETRY value to more useful value(!) (e.g. retry=3)
// c) unknown problem (may be locking problem) + 1..2 repeating operations => throw the original exception to force generation of a stacktrace !
// SAFE ->
@@ -2500,12 +2500,12 @@ void AutoRecovery::implts_saveOneDoc(const ::rtl::OUString&
rInfo.DocumentState |= AutoRecovery::E_INCOMPLETE;
}
- // make sure the progress isnt referred any longer
+ // make sure the progress isn't referred any longer
impl_forgetProgress(rInfo, lNewArgs, css::uno::Reference< css::frame::XFrame >());
// try to remove the old temp file.
// Ignore any error here. We have a new temp file, which is up to date.
- // The only thing is: we fill the disk with temp files, if we cant remove old ones :-)
+ // The only thing is: we fill the disk with temp files, if we can't remove old ones :-)
::rtl::OUString sRemoveFile = rInfo.OldTempURL;
rInfo.OldTempURL = rInfo.NewTempURL;
rInfo.NewTempURL = ::rtl::OUString();
@@ -2700,7 +2700,7 @@ AutoRecovery::ETimerType AutoRecovery::implts_openDocs(const DispatchParams& aPa
/* Normaly we listen as XModifyListener on a document to know if a document was changed
since our last AutoSave. And we deregister us in case we know this state.
But directly after one document as recovered ... we must start listening.
- Otherwhise the first "modify" doesnt reach us. Because we ourself called setModified()
+ Otherwise the first "modify" doesn't reach us. Because we ourselves called setModified()
on the document via API. And currently we dont listen for any events (not at the GlobalEventBroadcaster
nor at any document!).
*/
@@ -2853,7 +2853,7 @@ void AutoRecovery::implts_generateNewTempURL(const ::rtl::OUString&
// This unique name must solve an optimization problem too!
// In case we are asked to save unmodified documents too - and one of them
// is an empty one (because it was new created using e.g. an URL private:factory/...)
- // we should not save it realy. Then we put the information about such "empty document"
+ // we should not save it really. Then we put the information about such "empty document"
// into the configuration and dont create any recovery file on disk.
// We use the title of the document to make it unique.
::rtl::OUStringBuffer sUniqueName;
@@ -3053,10 +3053,10 @@ void AutoRecovery::implts_resetHandleStates(sal_Bool /*bLoadCache*/)
//-----------------------------------------------
void AutoRecovery::implts_prepareEmergencySave()
{
- // Be sure to know all open documents realy .-)
+ // Be sure to know all open documents really .-)
implts_verifyCacheAgainstDesktopDocumentList();
- // hide all docs, so the user cant disturb our emergency save .-)
+ // hide all docs, so the user can't disturb our emergency save .-)
implts_changeAllDocVisibility(sal_False);
}
@@ -3081,7 +3081,7 @@ void AutoRecovery::implts_doEmergencySave(const DispatchParams& aParams)
// during normal AutoSave more then once. Because
// it postpone active documents and save it later.
// That is normaly done by recalling it from a timer.
- // Here we must do it immediatly!
+ // Here we must do it immediately!
// Of course this method returns the right state -
// because it knows, that we are running in ERMERGENCY SAVE mode .-)
@@ -3141,7 +3141,7 @@ void AutoRecovery::implts_doSessionSave(const DispatchParams& aParams)
{
LOG_RECOVERY("AutoRecovery::implts_doSessionSave()")
- // Be sure to know all open documents realy .-)
+ // Be sure to know all open documents really .-)
implts_verifyCacheAgainstDesktopDocumentList();
// for all docs, store their current view/names in the configurtion
@@ -3151,7 +3151,7 @@ void AutoRecovery::implts_doSessionSave(const DispatchParams& aParams)
// during normal AutoSave more then once. Because
// it postpone active documents and save it later.
// That is normaly done by recalling it from a timer.
- // Here we must do it immediatly!
+ // Here we must do it immediately!
// Of course this method returns the right state -
// because it knows, that we are running in SESSION SAVE mode .-)
@@ -3377,7 +3377,7 @@ void SAL_CALL AutoRecovery::getFastPropertyValue(css::uno::Any& aValue ,
sal_Bool bRecoveryData = ((sal_Bool)(m_lDocCache.size()>0));
- // exists session data ... => then we cant say, that these
+ // exists session data ... => then we can't say, that these
// data are valid for recovery. So we have to return sal_False then!
if (bSessionData)
bRecoveryData = sal_False;
@@ -3590,7 +3590,7 @@ void AutoRecovery::impl_establishProgress(const AutoRecovery::TDocumentInfo&
// for loading documents into this frame)!
// But if no frame exists ... we can try to locate it using any frame bound to the provided
// document. Of course we must live without any frame in case the document does not exists at this
- // point. But this state shouldnt occure. In such case xNewFrame should be valid ... hopefully .-)
+ // point. But this state shouldn't occure. In such case xNewFrame should be valid ... hopefully .-)
css::uno::Reference< css::frame::XFrame > xFrame = xNewFrame;
if (
(!xFrame.is() ) &&
@@ -3629,7 +3629,7 @@ void AutoRecovery::impl_establishProgress(const AutoRecovery::TDocumentInfo&
// So we use a two step mechanism:
// 1) we set the progress inside the MediaDescriptor, which will be provided to the filter
// 2) and we set a special Frame property, which overwrites the normal behaviour of Frame::createStatusIndicator .-)
- // But we supress 2) in case we uses an internal progress. Because then it doesnt matter
+ // But we suppress 2) in case we uses an internal progress. Because then it doesn't matter
// if our applications make it wrong. In such case the internal progress resists at the same frame
// and there is no need to forward progress activities to e.g. an outside dialog .-)
if (
@@ -3656,7 +3656,7 @@ void AutoRecovery::impl_forgetProgress(const AutoRecovery::TDocumentInfo&
// for loading documents into this frame)!
// But if no frame exists ... we can try to locate it using any frame bound to the provided
// document. Of course we must live without any frame in case the document does not exists at this
- // point. But this state shouldnt occure. In such case xNewFrame should be valid ... hopefully .-)
+ // point. But this state shouldn't occure. In such case xNewFrame should be valid ... hopefully .-)
css::uno::Reference< css::frame::XFrame > xFrame = xNewFrame;
if (
(!xFrame.is() ) &&
diff --git a/framework/source/services/backingcomp.cxx b/framework/source/services/backingcomp.cxx
index d9b3bc144034..e1952e4f3e3d 100644
--- a/framework/source/services/backingcomp.cxx
+++ b/framework/source/services/backingcomp.cxx
@@ -376,7 +376,7 @@ css::uno::Reference< css::uno::XInterface > SAL_CALL BackingComp::impl_createIns
/** returns a new factory instance for instances of this class.
It uses a helper class of the cppuhelper project as factory.
- It will be initialized with all neccessary informations and
+ It will be initialized with all necessary informations and
will be able afterwards to create instance of this class.
This factory call us back inside our method impl_createInstance().
So we can create and initialize ourself. Only filtering of creation
@@ -405,7 +405,7 @@ css::uno::Reference< css::lang::XSingleServiceFactory > BackingComp::impl_create
attach this component to a target frame.
We has to use the container window of this frame as parent window of our own component window.
- But it's not allowed to work with it realy. May another component used it too.
+ But it's not allowed to work with it really. May another component used it too.
Currently we need it only to create our child component window and support it's
interfaces inside our queryInterface() method. The user of us must have e.g. the
XWindow interface of it to be able to call setComponent(xWindow,xController) at the
@@ -542,7 +542,7 @@ void SAL_CALL BackingComp::attachFrame( /*IN*/ const css::uno::Reference< css::f
This component does not know any model. It will be represented by a window and
it's controller only.
- return <FALSE/> everytime.
+ return <FALSE/> every time.
*/
sal_Bool SAL_CALL BackingComp::attachModel( /*IN*/ const css::uno::Reference< css::frame::XModel >& )
@@ -642,7 +642,7 @@ sal_Bool SAL_CALL BackingComp::suspend( /*IN*/ sal_Bool )
and inform us. We must release its reference only here. Of course we check the given reference
here and reject callback from unknown sources.
- Note: deregistration as listener isnt neccessary here. The broadcaster do it automaticly.
+ Note: deregistration as listener isn't necessary here. The broadcaster do it automatically.
@param aEvent
describe the broadcaster of this callback
@@ -764,7 +764,7 @@ void SAL_CALL BackingComp::addEventListener( /*IN*/ const css::uno::Reference< c
/** not supported.
- Because registration is not supported too, we must do nothing here. Nobody can call this method realy.
+ Because registration is not supported too, we must do nothing here. Nobody can call this method really.
@param xListener
not used.
@@ -783,7 +783,7 @@ void SAL_CALL BackingComp::removeEventListener( /*IN*/ const css::uno::Reference
Inside attachFrame() we created our component window. But it was not allowed there, to
initialitze it. E.g. the menu must be set at the container window of the frame, which
is our parent window. But may at that time another component used it.
- That's why our creator has to inform us, when it's time to initialize us realy.
+ That's why our creator has to inform us, when it's time to initialize us really.
Currently only calling of this method must be done. But further implementatoins
can use special in parameter to configure this initialization ...
diff --git a/framework/source/services/backingwindow.cxx b/framework/source/services/backingwindow.cxx
index b7cb95a47cce..df5f01926d0f 100644
--- a/framework/source/services/backingwindow.cxx
+++ b/framework/source/services/backingwindow.cxx
@@ -482,7 +482,7 @@ void BackingWindow::initControls()
nYPos += (maProductSize.Height()*3)/2;
- // set a slighly larger font than normal labels on the texts
+ // set a slightly larger font than normal labels on the texts
maTextFont.SetSize( Size( 0, 11 ) );
maTextFont.SetWeight( WEIGHT_NORMAL );
diff --git a/framework/source/services/desktop.cxx b/framework/source/services/desktop.cxx
index 6b3271349cc7..006389388b0a 100644
--- a/framework/source/services/desktop.cxx
+++ b/framework/source/services/desktop.cxx
@@ -221,7 +221,7 @@ DEFINE_INIT_SERVICE ( Desktop,
@attention a) Don't use your own reference during an UNO-Service-ctor! There is no guarantee, that you
will get over this. (e.g. using of your reference as parameter to initialize some member)
- Do such things in DEFINE_INIT_SERVICE() method, which is called automaticly after your ctor!!!
+ Do such things in DEFINE_INIT_SERVICE() method, which is called automatically after your ctor!!!
b) Baseclass OBroadcastHelper is a typedef in namespace cppu!
The microsoft compiler has some problems to handle it right BY using namespace explicitly ::cppu::OBroadcastHelper.
If we write it without a namespace or expand the typedef to OBrodcastHelperVar<...> -> it will be OK!?
@@ -416,7 +416,7 @@ sal_Bool SAL_CALL Desktop::terminate()
if ( xPipeTerminator.is() )
xPipeTerminator->notifyTermination( aEvent );
- // Must be realy the last listener to be called.
+ // Must be really the last listener to be called.
// Because it shutdown the whole process asynchronous !
if ( xSfxTerminator.is() )
xSfxTerminator->notifyTermination( aEvent );
@@ -579,7 +579,7 @@ css::uno::Reference< css::lang::XComponent > SAL_CALL Desktop::getCurrentCompone
/*-************************************************************************************************************//**
@interface XDesktop
@short return the current active frame in hierarchy
- @descr There can be more then one different active pathes in our frame hierarchy. But only one of them
+ @descr There can be more then one different active paths in our frame hierarchy. But only one of them
could be the most active frame (normal he has the focus).
Don't mix it with getActiveFrame()! That will return our current active frame, which must be
a direct child of us and should be a part(!) of an active path.
@@ -658,7 +658,7 @@ css::uno::Reference< css::lang::XComponent > SAL_CALL Desktop::loadComponentFrom
/*-************************************************************************************************************//**
@interface XTasksSupplier
@short get access to create enumerations of ouer taskchilds
- @descr Direct childs of desktop are tasks everytime.
+ @descr Direct childs of desktop are tasks every time.
Call these method to could create enumerations of it.
But; Don't forget - you will be the owner of returned object and must release it!
@@ -779,7 +779,7 @@ css::uno::Sequence< css::uno::Reference< css::frame::XDispatch > > SAL_CALL Desk
@short supports registration/deregistration of interception objects, which
are interested on special dispatches.
- @descr Its realy provided by an internal helper, which is used inside the dispatch api too.
+ @descr Its really provided by an internal helper, which is used inside the dispatch api too.
@param xInterceptor
the interceptor object, which wish to be (de)registered.
@@ -857,7 +857,7 @@ void SAL_CALL Desktop::setActiveFrame( const css::uno::Reference< css::frame::XF
// If nothing will change - do nothing!
// Otherwise set new active frame ...
// and deactivate last frame.
- // It's neccessary for our FrameActionEvent listener on a frame!
+ // It's necessary for our FrameActionEvent listener on a frame!
css::uno::Reference< css::frame::XFrame > xLastActiveChild = m_aChildTaskContainer.getActive();
if( xLastActiveChild != xFrame )
{
@@ -1053,7 +1053,7 @@ css::uno::Reference< css::frame::XFrame > SAL_CALL Desktop::findFrame( const ::r
// force using of "if() else if() ..."
//-----------------------------------------------------------------------------------------------------
- // get threadsafe some neccessary member which are neccessary for following functionality
+ // get threadsafe some necessary member which are necessary for following functionality
/* SAFE { */
ReadGuard aReadLock( m_aLock );
css::uno::Reference< css::lang::XMultiServiceFactory > xFactory = m_xFactory;
@@ -1063,7 +1063,7 @@ css::uno::Reference< css::frame::XFrame > SAL_CALL Desktop::findFrame( const ::r
//-----------------------------------------------------------------------------------------------------
// I.I) "_blank"
// create a new task as child of this desktop instance
- // Note: Used helper TaskCreator use us automaticly ...
+ // Note: Used helper TaskCreator use us automatically ...
//-----------------------------------------------------------------------------------------------------
if ( sTargetFrameName==SPECIALTARGET_BLANK )
{
@@ -1102,10 +1102,10 @@ css::uno::Reference< css::frame::XFrame > SAL_CALL Desktop::findFrame( const ::r
// But we ust break further searches if target was already found.
// Order of using flags is fix: SELF - CHILDREN - SIBLINGS - PARENT
// TASK and CREATE are handled special.
- // But note: Such flags are not valid for the desktop - especialy SIBLINGS or PARENT.
+ // But note: Such flags are not valid for the desktop - especially SIBLINGS or PARENT.
//-------------------------------------------------------------------------------------------------
- // get threadsafe some neccessary member which are neccessary for following functionality
+ // get threadsafe some necessary member which are necessary for following functionality
/* SAFE { */
aReadLock.lock();
::rtl::OUString sOwnName = m_sName;
@@ -1129,9 +1129,9 @@ css::uno::Reference< css::frame::XFrame > SAL_CALL Desktop::findFrame( const ::r
// II.II) TASKS
// This is a special flag. Normaly it regulate search inside tasks and forbid access to parent trees.
// But the desktop exists outside such task trees. They are our sub trees. So the desktop implement
- // a special feature: We use it to start search on our direct childrens only. That means we supress
- // search on ALL child frames. May that can be usefull to get access on opened document tasks
- // only without filter out all non realy required sub frames ...
+ // a special feature: We use it to start search on our direct childrens only. That means we suppress
+ // search on ALL child frames. May that can be useful to get access on opened document tasks
+ // only without filter out all non really required sub frames ...
// Used helper method on our container doesn't create any frame - its a search only.
//-------------------------------------------------------------------------------------------------
if (
@@ -1160,7 +1160,7 @@ css::uno::Reference< css::frame::XFrame > SAL_CALL Desktop::findFrame( const ::r
//-------------------------------------------------------------------------------------------------
// II.IV) CREATE
// If we haven't found any valid target frame by using normal flags - but user allowed us to create
- // a new one ... we should do that. Used TaskCreator use us automaticly as parent!
+ // a new one ... we should do that. Used TaskCreator use us automatically as parent!
//-------------------------------------------------------------------------------------------------
if (
( ! xTarget.is() ) &&
@@ -1187,12 +1187,12 @@ void SAL_CALL Desktop::dispose()
WriteGuard aWriteLock( m_aLock );
// Look for multiple calls of this method!
- // If somewhere call dispose() twice - he will be stopped here realy!!!
+ // If somewhere call dispose() twice - he will be stopped here really!!!
TransactionGuard aTransaction( m_aTransactionManager, E_HARDEXCEPTIONS );
// Now - we are alone and its the first call of this method ...
// otherwise call before had thrown a DisposedException / hopefully .-)
- // But we dont use the transaction object created before ... we reset it immediatly ...
+ // But we dont use the transaction object created before ... we reset it immediately ...
// two lines of code ... for what ?
// The answer: We wished to synchronize concurrent dispose() calls -> OK
// But next line will wait for all currently running transaction (even if they
@@ -1211,7 +1211,7 @@ void SAL_CALL Desktop::dispose()
// Following lines of code can be called outside a synchronized block ...
// Because our transaction manager will block all new requests to this object.
// So nobody can use us any longer.
- // Exception: Only removing of listener will work ... and this code cant be dangerous.
+ // Exception: Only removing of listener will work ... and this code can't be dangerous.
// First we has to kill all listener connections.
// They might rely on our member and can hinder us on releasing them.
@@ -1328,7 +1328,7 @@ void SAL_CALL Desktop::dispatchFinished( const css::frame::DispatchResultEvent&
/*-************************************************************************************************************//**
@interface XEventListener
@short not implemented!
- @descr We are a status listener ... and so we must be an event listener too ... But we doesn't need it realy!
+ @descr We are a status listener ... and so we must be an event listener too ... But we doesn't need it really!
We are a temp. listener only and our lifetime isn't smaller then of our temp. used dispatcher.
@seealso method loadComponentFromURL()
@@ -1346,7 +1346,7 @@ void SAL_CALL Desktop::disposing( const css::lang::EventObject& ) throw( css::un
/*-************************************************************************************************************//**
@interface XInteractionHandler
- @short callback for loadComponentFromURL for detected exceptions during load proccess
+ @short callback for loadComponentFromURL for detected exceptions during load process
@descr In this case we must cancel loading and throw these detected exception again as result
of our own called method.
@@ -1437,7 +1437,7 @@ void SAL_CALL Desktop::handle( const css::uno::Reference< css::task::XInteractio
/* SAFE AREA ------------------------------------------------------------------------------------------- */
// Ok now it's time to break yield loop of loadComponentFromURL().
- // But only for realy aborted requests!
+ // But only for really aborted requests!
// For example warnings will be approved and we wait for any success story ...
if (bAbort)
{
@@ -1490,7 +1490,7 @@ void SAL_CALL Desktop::releaseNumberForComponent( const css::uno::Reference< css
Don't use this directly!
You must try to convert the value of given DESKTOP_PROPHANDLE and
return results of this operation. This will be used to ask vetoable
- listener. If no listener has a veto, we will change value realy!
+ listener. If no listener has a veto, we will change value really!
( in method setFastPropertyValue_NoBroadcast(...) )
@attention Methods of OPropertySethelper are safed by using our shared osl mutex! (see ctor!)
@@ -1555,7 +1555,7 @@ sal_Bool SAL_CALL Desktop::convertFastPropertyValue( css::uno::Any& aCon
@descr This method is calling from helperclass "OPropertySetHelper".
Don't use this directly!
Handle and value are valid everyway! You must set the new value only.
- After this, baseclass send messages to all listener automaticly.
+ After this, baseclass send messages to all listener automatically.
@seealso class OPropertySetHelper
@@ -1658,7 +1658,7 @@ void SAL_CALL Desktop::getFastPropertyValue( css::uno::Any& aValue ,
if( pInfoHelper == NULL )
{
// Define static member to give structure of properties to baseclass "OPropertySetHelper".
- // "impl_getStaticPropertyDescriptor" is a non exported and static funtion, who will define a static propertytable.
+ // "impl_getStaticPropertyDescriptor" is a non exported and static function, who will define a static propertytable.
// "sal_True" say: Table is sorted by name.
static ::cppu::OPropertyArrayHelper aInfoHelper( impl_getStaticPropertyDescriptor(), sal_True );
pInfoHelper = &aInfoHelper;
@@ -1956,7 +1956,7 @@ void Desktop::impl_sendNotifyTerminationEvent()
// Reactivate controller.
// It can happen that XController.suspend() returned true ... but a registered close listener
// throwed these veto exception. Then the controller has to be reactivated. Otherwise
- // these document doesnt work any more.
+ // these document doesn't work any more.
if (
(bSuspended ) &&
(xController.is())
diff --git a/framework/source/services/frame.cxx b/framework/source/services/frame.cxx
index 92800cc61ff4..e48fbbc84f64 100644
--- a/framework/source/services/frame.cxx
+++ b/framework/source/services/frame.cxx
@@ -257,7 +257,7 @@ DEFINE_INIT_SERVICE ( Frame,
@attention a) Don't use your own reference during an UNO-Service-ctor! There is no guarantee, that you
will get over this. (e.g. using of your reference as parameter to initialize some member)
- Do such things in DEFINE_INIT_SERVICE() method, which is called automaticly after your ctor!!!
+ Do such things in DEFINE_INIT_SERVICE() method, which is called automatically after your ctor!!!
b) Baseclass OBroadcastHelper is a typedef in namespace cppu!
The microsoft compiler has some problems to handle it right BY using namespace explicitly ::cppu::OBroadcastHelper.
If we write it without a namespace or expand the typedef to OBrodcastHelperVar<...> -> it will be OK!?
@@ -426,7 +426,7 @@ css::uno::Reference< css::frame::XFrame > SAL_CALL Frame::getActiveFrame() throw
ReadGuard aReadLock( m_aLock );
// Return current active frame.
- // This information is avaliable on the container.
+ // This information is available on the container.
return m_aChildFrameContainer.getActive();
}
@@ -455,7 +455,7 @@ void SAL_CALL Frame::setActiveFrame( const css::uno::Reference< css::frame::XFra
/* SAFE AREA ----------------------------------------------------------------------------------------------- */
WriteGuard aWriteLock( m_aLock );
- // Copy neccessary member for threadsafe access!
+ // Copy necessary member for threadsafe access!
// m_aChildFrameContainer is threadsafe himself and he live if we live!!!
// ...and our transaction is non breakable too ...
css::uno::Reference< css::frame::XFrame > xActiveChild = m_aChildFrameContainer.getActive();
@@ -572,7 +572,7 @@ void SAL_CALL Frame::initialize( const css::uno::Reference< css::awt::XWindow >&
if ( m_xContainerWindow.is() )
throw css::uno::RuntimeException(
- ::rtl::OUString::createFromAscii("Frame::initialized() is called more then once, which isnt usefull nor allowed."),
+ ::rtl::OUString::createFromAscii("Frame::initialized() is called more then once, which isn't useful nor allowed."),
static_cast< css::frame::XFrame* >(this));
// Look for rejected calls first!
@@ -816,7 +816,7 @@ css::uno::Reference< css::frame::XFrame > SAL_CALL Frame::findFrame( const ::rtl
// force using of "if() else if() ..."
//-----------------------------------------------------------------------------------------------------
- // get threadsafe some neccessary member which are neccessary for following functionality
+ // get threadsafe some necessary member which are necessary for following functionality
/* SAFE { */
ReadGuard aReadLock( m_aLock );
css::uno::Reference< css::frame::XFrame > xParent ( m_xParent, css::uno::UNO_QUERY );
@@ -829,7 +829,7 @@ css::uno::Reference< css::frame::XFrame > SAL_CALL Frame::findFrame( const ::rtl
//-----------------------------------------------------------------------------------------------------
// I.I) "_blank"
// Not allowed for a normal frame - but for the desktop.
- // Use helper class to do so. It use the desktop automaticly.
+ // Use helper class to do so. It use the desktop automatically.
//-----------------------------------------------------------------------------------------------------
if ( sTargetFrameName==SPECIALTARGET_BLANK )
{
@@ -914,7 +914,7 @@ css::uno::Reference< css::frame::XFrame > SAL_CALL Frame::findFrame( const ::rtl
// TASK and CREATE are handled special.
//-------------------------------------------------------------------------------------------------
- // get threadsafe some neccessary member which are neccessary for following functionality
+ // get threadsafe some necessary member which are necessary for following functionality
/* SAFE { */
aReadLock.lock();
::rtl::OUString sOwnName = m_sName;
@@ -964,7 +964,7 @@ css::uno::Reference< css::frame::XFrame > SAL_CALL Frame::findFrame( const ::rtl
//-------------------------------------------------------------------------------------------------
// II.III.I) SIBLINGS
// Search on all our direct siblings - means all childrens of our parent.
- // Use this flag in combination with TASK. We must supress such upper search if
+ // Use this flag in combination with TASK. We must suppress such upper search if
// user has not set it and if we are a top frame.
//
// Attention: Don't forward this request to our parent as a findFrame() call.
@@ -1040,7 +1040,7 @@ css::uno::Reference< css::frame::XFrame > SAL_CALL Frame::findFrame( const ::rtl
//-------------------------------------------------------------------------------------------------
// II.IV) CREATE
// If we haven't found any valid target frame by using normal flags - but user allowed us to create
- // a new one ... we should do that. Used TaskCreator use Desktop instance automaticly as parent!
+ // a new one ... we should do that. Used TaskCreator use Desktop instance automatically as parent!
//-------------------------------------------------------------------------------------------------
if (
( ! xTarget.is() ) &&
@@ -1088,7 +1088,7 @@ sal_Bool SAL_CALL Frame::isTop() throw( css::uno::RuntimeException )
/*-****************************************************************************************************//**
@short activate frame in hierarchy
- @descr This feature is used to mark active pathes in our frame hierarchy.
+ @descr This feature is used to mark active paths in our frame hierarchy.
You can be a listener for this event to react for it ... change some internal states or something else.
@seealso method deactivate()
@@ -1110,8 +1110,8 @@ void SAL_CALL Frame::activate() throw( css::uno::RuntimeException )
/* SAFE AREA ----------------------------------------------------------------------------------------------- */
WriteGuard aWriteLock( m_aLock );
- // Copy neccessary member and free the lock.
- // It's not neccessary for m_aChildFrameContainer ... because
+ // Copy necessary member and free the lock.
+ // It's not necessary for m_aChildFrameContainer ... because
// he is threadsafe himself and live if we live.
// We use a registered transaction to prevent us against
// breaks during this operation!
@@ -1136,7 +1136,7 @@ void SAL_CALL Frame::activate() throw( css::uno::RuntimeException )
// Deactivate sibling path and forward activation to parent ... if any parent exist!
if( xParent.is() == sal_True )
{
- // Everytime set THIS frame as active child of parent and activate it.
+ // Every time set THIS frame as active child of parent and activate it.
// We MUST have a valid path from bottom to top as active path!
// But we must deactivate the old active sibling path first.
@@ -1151,7 +1151,7 @@ void SAL_CALL Frame::activate() throw( css::uno::RuntimeException )
// But we do nothing then! We are already activated.
xParent->activate();
}
- // Its neccessary to send event NOW - not before.
+ // Its necessary to send event NOW - not before.
// Activation goes from bottom to top!
// Thats the reason to activate parent first and send event now.
implts_sendFrameActionEvent( css::frame::FrameAction_FRAME_ACTIVATED );
@@ -1188,7 +1188,7 @@ void SAL_CALL Frame::activate() throw( css::uno::RuntimeException )
/*-****************************************************************************************************//**
@short deactivate frame in hierarchy
- @descr This feature is used to deactive pathes in our frame hierarchy.
+ @descr This feature is used to deactive paths in our frame hierarchy.
You can be a listener for this event to react for it ... change some internal states or something else.
@seealso method activate()
@@ -1210,7 +1210,7 @@ void SAL_CALL Frame::deactivate() throw( css::uno::RuntimeException )
/* SAFE AREA ----------------------------------------------------------------------------------------------- */
WriteGuard aWriteLock( m_aLock );
- // Copy neccessary member and free the lock.
+ // Copy necessary member and free the lock.
css::uno::Reference< css::frame::XFrame > xActiveChild = m_aChildFrameContainer.getActive() ;
css::uno::Reference< css::frame::XFramesSupplier > xParent ( m_xParent, css::uno::UNO_QUERY ) ;
css::uno::Reference< css::frame::XFrame > xThis ( static_cast< ::cppu::OWeakObject* >(this), css::uno::UNO_QUERY );
@@ -1893,7 +1893,7 @@ void SAL_CALL Frame::dispose() throw( css::uno::RuntimeException )
// should exist. Otherwhise it's the problem of the outside caller.
// Note:
// (a) Do it after stopWindowListening(). May that force some active/deactive
- // notifications which we doesn't need here realy.
+ // notifications which we doesn't need here really.
// (b) Don't forget to save the old value of IsDialogCancelEnabled() to
// restore it afterwards. We cannot call EnableDialogCancel( sal_False )
// as we would kill the headless mode!
@@ -1972,7 +1972,7 @@ void SAL_CALL Frame::dispose() throw( css::uno::RuntimeException )
m_bSelfClose = sal_False;
m_bIsHidden = sal_True;
- // Disable this instance for further working realy!
+ // Disable this instance for further working really!
m_aTransactionManager.setWorkingMode( E_CLOSE );
// Don't forget it restore old value -
@@ -2042,7 +2042,7 @@ css::uno::Reference< css::task::XStatusIndicator > SAL_CALL Frame::createStatusI
/* SAFE AREA ----------------------------------------------------------------------------------------------- */
ReadGuard aReadLock( m_aLock );
- // Make snapshot of neccessary member and define default return value.
+ // Make snapshot of necessary member and define default return value.
css::uno::Reference< css::task::XStatusIndicator > xExternal(m_xIndicatorInterception.get(), css::uno::UNO_QUERY);
css::uno::Reference< css::task::XStatusIndicatorFactory > xFactory = m_xIndicatorFactoryHelper;
@@ -2388,7 +2388,7 @@ void SAL_CALL Frame::windowClosing( const css::lang::EventObject& ) throw( css::
/*-****************************************************************************************************//**
@short react for a show event for the internal container window
- @descr Normaly we doesn't need this information realy. But we can use it to
+ @descr Normaly we doesn't need this information really. But we can use it to
implement the special feature "trigger first visible task".
Algorithm: - first we have to check if we are a top (task) frame
@@ -2483,7 +2483,7 @@ void SAL_CALL Frame::disposing( const css::lang::EventObject& aEvent ) throw( cs
if( aEvent.Source == m_xContainerWindow )
{
- // NECCESSARY: Impl-method is threadsafe by himself!
+ // NECESSARY: Impl-method is threadsafe by himself!
aWriteLock.unlock();
implts_stopWindowListening();
aWriteLock.lock();
@@ -2858,7 +2858,7 @@ void Frame::implts_setIconOnWindow()
TransactionGuard aTransaction( m_aTransactionManager, E_HARDEXCEPTIONS );
/* SAFE AREA ----------------------------------------------------------------------------------------------- */
- // Make snapshot of neccessary members and release lock.
+ // Make snapshot of necessary members and release lock.
ReadGuard aReadLock( m_aLock );
css::uno::Reference< css::awt::XWindow > xContainerWindow( m_xContainerWindow, css::uno::UNO_QUERY );
css::uno::Reference< css::frame::XController > xController ( m_xController , css::uno::UNO_QUERY );
@@ -2937,9 +2937,9 @@ void Frame::implts_setIconOnWindow()
/*-************************************************************************************************************//**
@short helper to start/stop listeneing for window events on container window
- @descr If we get a new container window, we must set it on internal memeber ...
+ @descr If we get a new container window, we must set it on internal member ...
and stop listening at old one ... and start listening on new one!
- But sometimes (in dispose() call!) it's neccessary to stop listeneing without starting
+ But sometimes (in dispose() call!) it's necessary to stop listeneing without starting
on new connections. So we split this functionality to make it easier at use.
@seealso method initialize()
@@ -2957,7 +2957,7 @@ void Frame::implts_startWindowListening()
TransactionGuard aTransaction( m_aTransactionManager, E_HARDEXCEPTIONS );
/* SAFE AREA ----------------------------------------------------------------------------------------------- */
- // Make snapshot of neccessary member!
+ // Make snapshot of necessary member!
ReadGuard aReadLock( m_aLock );
css::uno::Reference< css::awt::XWindow > xContainerWindow = m_xContainerWindow ;
css::uno::Reference< css::lang::XMultiServiceFactory > xFactory = m_xFactory ;
@@ -3000,7 +3000,7 @@ void Frame::implts_stopWindowListening()
TransactionGuard aTransaction( m_aTransactionManager, E_SOFTEXCEPTIONS );
/* SAFE AREA ----------------------------------------------------------------------------------------------- */
- // Make snapshot of neccessary member!
+ // Make snapshot of necessary member!
ReadGuard aReadLock( m_aLock );
css::uno::Reference< css::awt::XWindow > xContainerWindow = m_xContainerWindow ;
css::uno::Reference< css::lang::XMultiServiceFactory > xFactory = m_xFactory ;
@@ -3061,7 +3061,7 @@ void Frame::implts_checkSuicide()
aReadLock.unlock();
/* } SAFE */
// force close and deliver owner ship to source of possible throwed veto exception
- // Attention: Because this method isn't designed to throw such exception we must supress
+ // Attention: Because this method isn't designed to throw such exception we must suppress
// it for outside code!
try
{
@@ -3089,7 +3089,7 @@ void Frame::implts_checkSuicide()
void Frame::impl_setCloser( /*IN*/ const css::uno::Reference< css::frame::XFrame >& xFrame ,
/*IN*/ sal_Bool bState )
{
- // Note: If start module isnt installed - no closer has to be shown!
+ // Note: If start module isn't installed - no closer has to be shown!
if (!SvtModuleOptions().IsModuleInstalled(SvtModuleOptions::E_SSTARTMODULE))
return;
@@ -3124,7 +3124,7 @@ void Frame::impl_checkMenuCloser()
ReadGuard aReadLock(m_aLock);
// only top frames, which are part of our desktop hierarchy, can
- // do so! By the way - we need the desktop instance to have acess
+ // do so! By the way - we need the desktop instance to have access
// to all other top level frames too.
css::uno::Reference< css::frame::XDesktop > xDesktop (m_xParent, css::uno::UNO_QUERY);
css::uno::Reference< css::frame::XFramesSupplier > xTaskSupplier(xDesktop , css::uno::UNO_QUERY);
@@ -3150,7 +3150,7 @@ void Frame::impl_checkMenuCloser()
// If there exist ate least one other frame - there are two frames currently open.
// But we can enable this closer only, if one of these two tasks includes the help module.
// The "other frame" couldn't be the help. Because then it wouldn't be part of this "other list".
- // In such case it will be seperated to the reference aAnalyzer.m_xHelp!
+ // In such case it will be separated to the reference aAnalyzer.m_xHelp!
// But we must check, if weself includes the help ...
// Check aAnalyzer.m_bReferenceIsHelp!
if (
@@ -3180,7 +3180,7 @@ void Frame::impl_checkMenuCloser()
xNewCloserFrame = this;
}
- // Look for neccessary actions ...
+ // Look for necessary actions ...
// Only if the closer state must be moved from one frame to another one
// or must be enabled/disabled at all.
/* STATIC SAFE { */
diff --git a/framework/source/services/modulemanager.cxx b/framework/source/services/modulemanager.cxx
index 294c299b622a..9a34e17a6b7b 100644
--- a/framework/source/services/modulemanager.cxx
+++ b/framework/source/services/modulemanager.cxx
@@ -171,7 +171,7 @@ ModuleManager::~ModuleManager()
if (sModule.getLength() < 1)
throw css::frame::UnknownModuleException(
- ::rtl::OUString::createFromAscii("Cant find suitable module for the given component."),
+ ::rtl::OUString::createFromAscii("Can't find suitable module for the given component."),
static_cast< ::cppu::OWeakObject* >(this));
return sModule;
@@ -205,7 +205,7 @@ void SAL_CALL ModuleManager::replaceByName(const ::rtl::OUString& sName ,
// get access to the element
// Note: Dont use impl_getConfig() method here. Because it creates a readonly access only, further
// it cache it as a member of this module manager instance. If we change some props there ... but dont
- // flush changes (because an error occured) we will read them later. If we use a different config access
+ // flush changes (because an error occurred) we will read them later. If we use a different config access
// we can close it without a flush ... and our read data wont be affected .-)
css::uno::Reference< css::uno::XInterface > xCfg = ::comphelper::ConfigurationHelper::openConfig(
xSMGR,
diff --git a/framework/source/services/pathsettings.cxx b/framework/source/services/pathsettings.cxx
index 532a916cbc7a..f6f8cb959890 100644
--- a/framework/source/services/pathsettings.cxx
+++ b/framework/source/services/pathsettings.cxx
@@ -300,7 +300,7 @@ PathSettings::PathInfo PathSettings::impl_readNewFormat(const ::rtl::OUString& s
//sal_Bool bMandatory = ((aInfo.Attributes & css::beans::PropertyAttribute::REMOVEABLE) != css::beans::PropertyAttribute::REMOVEABLE);
// Note: Till we support finalized / mandatory on our API more in detail we handle
- // all states simple as READONLY ! But because all realy needed pathes are "mandatory" by default
+ // all states simple as READONLY ! But because all really needed paths are "mandatory" by default
// we have to handle "finalized" as the real "readonly" indicator .
aPathVal.bIsReadonly = bFinalized;
}
@@ -318,8 +318,8 @@ void PathSettings::impl_storePath(const PathSettings::PathInfo& aPath)
css::uno::Reference< css::container::XNameAccess > xCfgOld = fa_getCfgOld();
// try to replace path-parts with well known and uspported variables.
- // So an office can be moved easialy to another location without loosing
- // it's related pathes.
+ // So an office can be moved easialy to another location without losing
+ // it's related paths.
PathInfo aResubstPath(aPath);
impl_subst(aResubstPath, sal_True);
@@ -340,11 +340,11 @@ void PathSettings::impl_storePath(const PathSettings::PathInfo& aPath)
::comphelper::ConfigurationHelper::flush(xCfgNew);
// remove the whole path from the old configuration !
- // Otherwise we cant make sure that the diff between new and old configuration
- // on loading time realy represent an user setting !!!
+ // Otherwise we can't make sure that the diff between new and old configuration
+ // on loading time really represent an user setting !!!
// Check if the given path exists inside the old configuration.
- // Because our new configuration knows more then the list of old pathes ... !
+ // Because our new configuration knows more then the list of old paths ... !
if (xCfgOld->hasByName(aResubstPath.sPathName))
{
css::uno::Reference< css::beans::XPropertySet > xProps(xCfgOld, css::uno::UNO_QUERY_THROW);
@@ -404,7 +404,7 @@ PathSettings::EChangeOp PathSettings::impl_updatePath(const ::rtl::OUString& sPa
aPath = impl_readNewFormat(sPath);
aPath.sPathName = sPath;
// replace all might existing variables with real values
- // Do it before these old pathes will be compared against the
+ // Do it before these old paths will be compared against the
// new path configuration. Otherwise some striungs uses different variables ... but substitution
// will produce strings with same content (because some variables are redundant!)
impl_subst(aPath, sal_False);
@@ -423,7 +423,7 @@ PathSettings::EChangeOp PathSettings::impl_updatePath(const ::rtl::OUString& sPa
// can be disabled for a new major
OUStringList lOldVals = impl_readOldFormat(sPath);
// replace all might existing variables with real values
- // Do it before these old pathes will be compared against the
+ // Do it before these old paths will be compared against the
// new path configuration. Otherwise some striungs uses different variables ... but substitution
// will produce strings with same content (because some variables are redundant!)
impl_subst(lOldVals, fa_getSubstitution(), sal_False);
@@ -433,7 +433,7 @@ PathSettings::EChangeOp PathSettings::impl_updatePath(const ::rtl::OUString& sPa
{ throw exRun; }
// Normal(!) exceptions can be ignored!
// E.g. in case an addon installs a new path, which was not well known for an OOo 1.x installation
- // we cant find a value for it inside the "old" configuration. So a NoSuchElementException
+ // we can't find a value for it inside the "old" configuration. So a NoSuchElementException
// will be normal .-)
catch(const css::uno::Exception&)
{}
@@ -509,8 +509,8 @@ css::uno::Sequence< sal_Int32 > PathSettings::impl_mapPathName2IDList(const ::rt
// Why ?
// The outside code must fire N events for every changed property.
// And the knowing about packaging of variables of the structure PathInfo
- // follow these group IDs ! But if such ID isnt in the range of [0..IDGROUP_COUNT]
- // the outside cant determine the right group ... and cant fire the right events .-)
+ // follow these group IDs ! But if such ID isn't in the range of [0..IDGROUP_COUNT]
+ // the outside can't determine the right group ... and can't fire the right events .-)
css::uno::Sequence< sal_Int32 > lIDs(IDGROUP_COUNT);
lIDs[0] = IDGROUP_OLDSTYLE ;
@@ -889,7 +889,7 @@ void PathSettings::impl_setPathValue( sal_Int32 nID ,
::rtl::OUStringBuffer sMsg(256);
sMsg.appendAscii("The path '" );
sMsg.append (aChangePath.sPathName);
- sMsg.appendAscii("' is defined as SINGLE_PATH. It's sub set of internal pathes cant be set.");
+ sMsg.appendAscii("' is defined as SINGLE_PATH. It's sub set of internal paths can't be set.");
throw css::uno::Exception(sMsg.makeStringAndClear(),
static_cast< ::cppu::OWeakObject* >(this));
}
@@ -909,7 +909,7 @@ void PathSettings::impl_setPathValue( sal_Int32 nID ,
::rtl::OUStringBuffer sMsg(256);
sMsg.appendAscii("The path '" );
sMsg.append (aChangePath.sPathName);
- sMsg.appendAscii("' is defined as SINGLE_PATH. It's sub set of internal pathes cant be set.");
+ sMsg.appendAscii("' is defined as SINGLE_PATH. It's sub set of internal paths can't be set.");
throw css::uno::Exception(sMsg.makeStringAndClear(),
static_cast< ::cppu::OWeakObject* >(this));
}
@@ -975,7 +975,7 @@ sal_Bool PathSettings::impl_isValidPath(const OUStringList& lPath) const
sal_Bool PathSettings::impl_isValidPath(const ::rtl::OUString& sPath) const
{
// allow empty path to reset a path.
-// idea by LLA to support empty pathes
+// idea by LLA to support empty paths
// if (sPath.getLength() == 0)
// {
// return sal_True;
@@ -1102,7 +1102,7 @@ css::uno::Reference< css::util::XStringSubstitution > PathSettings::fa_getSubsti
{
// create the needed substitution service.
// We must replace all used variables inside readed path values.
- // In case we can't do so ... the whole office can't work realy.
+ // In case we can't do so ... the whole office can't work really.
// That's why it seams to be OK to throw a RuntimeException then.
xSubst = css::uno::Reference< css::util::XStringSubstitution >(
xSMGR->createInstance(SERVICENAME_SUBSTITUTEPATHVARIABLES),
@@ -1135,7 +1135,7 @@ css::uno::Reference< css::container::XNameAccess > PathSettings::fa_getCfgOld()
::comphelper::ConfigurationHelper::openConfig(
xSMGR,
CFG_NODE_OLD,
- ::comphelper::ConfigurationHelper::E_STANDARD), // not readonly! Somtimes we need write access there !!!
+ ::comphelper::ConfigurationHelper::E_STANDARD), // not readonly! Sometimes we need write access there !!!
css::uno::UNO_QUERY_THROW);
// SAFE ->
diff --git a/framework/source/services/substitutepathvars.cxx b/framework/source/services/substitutepathvars.cxx
index c4debde83410..345f3df47ad3 100644
--- a/framework/source/services/substitutepathvars.cxx
+++ b/framework/source/services/substitutepathvars.cxx
@@ -98,7 +98,7 @@
#define REPLACELENGTH_LANGID 9
#define REPLACELENGTH_VLANG 8
#define REPLACELENGTH_WORKDIRURL 13
-// --> PB 2004-10-27 #i32656# - new variable of hierachy service
+// --> PB 2004-10-27 #i32656# - new variable of hierarchy service
#define REPLACELENGTH_BASEINSTURL 14
#define REPLACELENGTH_USERDATAURL 14
// <--
@@ -121,7 +121,7 @@
#define VARIABLE_PROGURL "$(progurl)"
#define VARIABLE_USERURL "$(userurl)"
#define VARIABLE_WORKDIRURL "$(workdirurl)"
-// --> PB 2004-10-27 #i32656# - new variable of hierachy service
+// --> PB 2004-10-27 #i32656# - new variable of hierarchy service
#define VARIABLE_BASEINSTURL "$(baseinsturl)"
#define VARIABLE_USERDATAURL "$(userdataurl)"
// <--
@@ -213,7 +213,7 @@ static FixedVariable aFixedVarTable[] =
{ VARIABLE_PROGURL, PREDEFVAR_PROGURL, REPLACELENGTH_PROGURL, true },
{ VARIABLE_USERURL, PREDEFVAR_USERURL, REPLACELENGTH_USERURL, true },
{ VARIABLE_WORKDIRURL, PREDEFVAR_WORKDIRURL, REPLACELENGTH_WORKDIRURL,true }, // Special variable (transient) and don't use for resubstitution!
- // --> PB 2004-10-27 #i32656# - new variable of hierachy service
+ // --> PB 2004-10-27 #i32656# - new variable of hierarchy service
{ VARIABLE_BASEINSTURL, PREDEFVAR_BASEINSTURL, REPLACELENGTH_BASEINSTURL,true },
{ VARIABLE_USERDATAURL, PREDEFVAR_USERDATAURL, REPLACELENGTH_USERDATAURL,true },
// <--
@@ -957,12 +957,12 @@ throw ( NoSuchElementException, RuntimeException )
// Fill return value with result
if ( bSubstitutionCompleted )
{
- // Substitution successfull!
+ // Substitution successful!
aResult = aWorkText;
}
else
{
- // Substitution not successfull!
+ // Substitution not successful!
if ( nDepth == nMaxRecursiveDepth )
{
// recursion depth reached!
@@ -1182,14 +1182,14 @@ void SubstitutePathVariables::SetPredefinedPathVariables( PredefinedPathVariable
// Set $(inst), $(instpath), $(insturl)
aPreDefPathVariables.m_FixedVar[ PREDEFVAR_INSTURL ] = aPreDefPathVariables.m_FixedVar[ PREDEFVAR_INSTPATH ];
aPreDefPathVariables.m_FixedVar[ PREDEFVAR_INST ] = aPreDefPathVariables.m_FixedVar[ PREDEFVAR_INSTPATH ];
- // --> PB 2004-10-27 #i32656# - new variable of hierachy service
+ // --> PB 2004-10-27 #i32656# - new variable of hierarchy service
aPreDefPathVariables.m_FixedVar[ PREDEFVAR_BASEINSTURL ]= aPreDefPathVariables.m_FixedVar[ PREDEFVAR_INSTPATH ];
// <--
// Set $(user), $(userpath), $(userurl)
aPreDefPathVariables.m_FixedVar[ PREDEFVAR_USERURL ] = aPreDefPathVariables.m_FixedVar[ PREDEFVAR_USERPATH ];
aPreDefPathVariables.m_FixedVar[ PREDEFVAR_USER ] = aPreDefPathVariables.m_FixedVar[ PREDEFVAR_USERPATH ];
- // --> PB 2004-11-11 #i32656# - new variable of hierachy service
+ // --> PB 2004-11-11 #i32656# - new variable of hierarchy service
aPreDefPathVariables.m_FixedVar[ PREDEFVAR_USERDATAURL ]= aPreDefPathVariables.m_FixedVar[ PREDEFVAR_USERPATH ];
// <--
diff --git a/framework/source/services/taskcreatorsrv.cxx b/framework/source/services/taskcreatorsrv.cxx
index 1cf8a597fd6c..1dbd0c554d6a 100644
--- a/framework/source/services/taskcreatorsrv.cxx
+++ b/framework/source/services/taskcreatorsrv.cxx
@@ -175,7 +175,7 @@ css::uno::Reference< css::uno::XInterface > SAL_CALL TaskCreatorService::createI
//------------------->
// HACK #125187# + #i53630#
// Mark all document windows as "special ones", so VCL can bind
- // special features to it. Because VCL doesnt know anything about documents ...
+ // special features to it. Because VCL doesn't know anything about documents ...
// Note: Doing so it's no longer supported, that e.g. our wizards can use findFrame(_blank)
// to create it's previes frames. They must do it manually by using WindowDescriptor+Toolkit!
css::uno::Reference< css::frame::XDesktop > xDesktop(xParentFrame, css::uno::UNO_QUERY);
@@ -246,7 +246,7 @@ css::uno::Reference< css::awt::XWindow > TaskCreatorService::implts_createContai
// get toolkit to create task container window
css::uno::Reference< css::awt::XToolkit > xToolkit( xSMGR->createInstance( SERVICENAME_VCLTOOLKIT ), css::uno::UNO_QUERY_THROW);
- // Check if child frames can be created realy. We need at least a valid window at the parent frame ...
+ // Check if child frames can be created really. We need at least a valid window at the parent frame ...
css::uno::Reference< css::awt::XWindowPeer > xParentWindowPeer;
if ( ! bTopWindow)
{
@@ -315,7 +315,7 @@ css::uno::Reference< css::frame::XFrame > TaskCreatorService::implts_createFrame
xNewFrame->initialize( xContainerWindow );
// Put frame to the frame tree.
- // Note: The property creator/parent will be set on the new putted frame automaticly ... by the parent container.
+ // Note: The property creator/parent will be set on the new putted frame automatically ... by the parent container.
if (xParentFrame.is())
{
css::uno::Reference< css::frame::XFramesSupplier > xSupplier (xParentFrame, css::uno::UNO_QUERY_THROW);
diff --git a/framework/source/tabwin/tabwindow.cxx b/framework/source/tabwin/tabwindow.cxx
index 45a47aaefd52..8741ff8ca046 100644
--- a/framework/source/tabwin/tabwindow.cxx
+++ b/framework/source/tabwin/tabwindow.cxx
@@ -908,7 +908,7 @@ void SAL_CALL TabWindow::getFastPropertyValue( css::uno::Any& aValue ,
if( pInfoHelper == NULL )
{
// Define static member to give structure of properties to baseclass "OPropertySetHelper".
- // "impl_getStaticPropertyDescriptor" is a non exported and static funtion, who will define a static propertytable.
+ // "impl_getStaticPropertyDescriptor" is a non exported and static function, who will define a static propertytable.
// "sal_True" say: Table is sorted by name.
static ::cppu::OPropertyArrayHelper aInfoHelper( impl_getStaticPropertyDescriptor(), sal_True );
pInfoHelper = &aInfoHelper;
diff --git a/framework/source/uiconfiguration/moduleuicfgsupplier.cxx b/framework/source/uiconfiguration/moduleuicfgsupplier.cxx
index 8573e98650b1..56b1be090622 100644
--- a/framework/source/uiconfiguration/moduleuicfgsupplier.cxx
+++ b/framework/source/uiconfiguration/moduleuicfgsupplier.cxx
@@ -192,7 +192,7 @@ RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "framework", "Ocke.Janssen@sun.com", "Modul
m_xUserCfgRootStorage = Reference< XStorage >( xStorageFactory->createInstanceWithArguments( aArgs ), UNO_QUERY );
// Create wrapper object for module user interface configuration managers, so they are able to call commit/revert on
- // root storage and nothing more (saftey)!
+ // root storage and nothing more (safety)!
RootStorageWrapper* pUserRootStorageWrapper = new RootStorageWrapper( Reference< XTransactedObject >( m_xUserCfgRootStorage, UNO_QUERY ));
m_xUserRootCommit = Reference< XTransactedObject>( static_cast< OWeakObject *>( pUserRootStorageWrapper ), UNO_QUERY );
}
diff --git a/framework/source/uiconfiguration/moduleuiconfigurationmanager.cxx b/framework/source/uiconfiguration/moduleuiconfigurationmanager.cxx
index f749c1df863c..b2fd4dae036a 100644
--- a/framework/source/uiconfiguration/moduleuiconfigurationmanager.cxx
+++ b/framework/source/uiconfiguration/moduleuiconfigurationmanager.cxx
@@ -419,7 +419,7 @@ ModuleUIConfigurationManager::UIElementData* ModuleUIConfigurationManager::impl
}
}
- // Not successfull, we have to look into our default vector/hash_map combination
+ // Not successful, we have to look into our default vector/hash_map combination
UIElementDataHashMap& rDefaultHashMap = m_aUIElements[LAYER_DEFAULT][nElementType].aElementsHashMap;
pIter = rDefaultHashMap.find( aResourceURL );
if ( pIter != rDefaultHashMap.end() )
diff --git a/framework/source/uiconfiguration/uicategorydescription.cxx b/framework/source/uiconfiguration/uicategorydescription.cxx
index 5a0ee8726e21..afeda03427b5 100644
--- a/framework/source/uiconfiguration/uicategorydescription.cxx
+++ b/framework/source/uiconfiguration/uicategorydescription.cxx
@@ -94,7 +94,7 @@ namespace framework
// Configuration access class for PopupMenuControllerFactory implementation
//*****************************************************************************************************************
-class ConfigurationAccess_UICategory : // Order is neccessary for right initialization!
+class ConfigurationAccess_UICategory : // Order is necessary for right initialization!
private ThreadHelpBase ,
public ::cppu::WeakImplHelper2<XNameAccess,XContainerListener>
{
@@ -166,7 +166,7 @@ ConfigurationAccess_UICategory::ConfigurationAccess_UICategory( const rtl::OUStr
m_bCacheFilled( sal_False )
{
RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "framework", "Ocke.Janssen@sun.com", "ConfigurationAccess_UICategory::ConfigurationAccess_UICategory" );
- // Create configuration hierachical access name
+ // Create configuration hierarchical access name
m_aConfigCategoryAccess += aModuleName;
m_aConfigCategoryAccess += rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( CONFIGURATION_CATEGORY_ELEMENT_ACCESS ));
diff --git a/framework/source/uiconfiguration/uiconfigurationmanagerimpl.cxx b/framework/source/uiconfiguration/uiconfigurationmanagerimpl.cxx
index 66f4062f71aa..ce079b6c6040 100644
--- a/framework/source/uiconfiguration/uiconfigurationmanagerimpl.cxx
+++ b/framework/source/uiconfiguration/uiconfigurationmanagerimpl.cxx
@@ -391,7 +391,7 @@ UIConfigurationManagerImpl::UIElementData* UIConfigurationManagerImpl::impl_fin
if ( m_bUseDefault )
{
- // Not successfull, we have to look into our default vector/hash_map combination
+ // Not successful, we have to look into our default vector/hash_map combination
UIElementDataHashMap& rDefaultHashMap = m_aUIElements[LAYER_DEFAULT][nElementType].aElementsHashMap;
pIter = rDefaultHashMap.find( aResourceURL );
if ( pIter != rDefaultHashMap.end() )
diff --git a/framework/source/uiconfiguration/windowstateconfiguration.cxx b/framework/source/uiconfiguration/windowstateconfiguration.cxx
index 41ef92f882fd..294ede963817 100644
--- a/framework/source/uiconfiguration/windowstateconfiguration.cxx
+++ b/framework/source/uiconfiguration/windowstateconfiguration.cxx
@@ -141,7 +141,7 @@ class ConfigurationAccess_WindowState : // interfaces
public XNameContainer ,
public XContainerListener ,
// baseclasses
- // Order is neccessary for right initialization!
+ // Order is necessary for right initialization!
private ThreadHelpBase ,
public ::cppu::OWeakObject
{
@@ -210,7 +210,7 @@ class ConfigurationAccess_WindowState : // interfaces
WINDOWSTATE_MASK_DOCKSIZE = 32768
};
- // Cache structure. Valid values are described by tje eMask member. All other values should not be
+ // Cache structure. Valid values are described by the eMask member. All other values should not be
// provided to outside code!
struct WindowStateInfo
{
@@ -296,7 +296,7 @@ ConfigurationAccess_WindowState::ConfigurationAccess_WindowState( const rtl::OUS
m_bConfigAccessInitialized( sal_False ),
m_bModified( sal_False )
{
- // Create configuration hierachical access name
+ // Create configuration hierarchical access name
m_aConfigWindowAccess += aModuleName;
m_aConfigWindowAccess += rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( CONFIGURATION_WINDOWSTATE_ACCESS ));
m_xConfigProvider = Reference< XMultiServiceFactory >( rServiceManager->createInstance( SERVICENAME_CFGPROVIDER ), UNO_QUERY );
diff --git a/framework/source/uielement/menubarmanager.cxx b/framework/source/uielement/menubarmanager.cxx
index 759da39c4da3..13f20f14f234 100644
--- a/framework/source/uielement/menubarmanager.cxx
+++ b/framework/source/uielement/menubarmanager.cxx
@@ -1292,17 +1292,13 @@ void MenuBarManager::FillMenuManager( Menu* pMenu, const Reference< XFrame >& rF
aCommand == aSpecialWindowCommand )
{
// Retrieve addon popup menus and add them to our menu bar
- Reference< com::sun::star::frame::XModel > xModel;
- Reference< com::sun::star::frame::XController > xController( rFrame->getController(), UNO_QUERY );
- if ( xController.is() )
- xModel = Reference< com::sun::star::frame::XModel >( xController->getModel(), UNO_QUERY );
- framework::AddonMenuManager::MergeAddonPopupMenus( rFrame, xModel, nPos, (MenuBar *)pMenu );
+ framework::AddonMenuManager::MergeAddonPopupMenus( rFrame, nPos, (MenuBar *)pMenu, mxServiceFactory );
break;
}
}
// Merge the Add-Ons help menu items into the Office help menu
- framework::AddonMenuManager::MergeAddonHelpMenu( rFrame, (MenuBar *)pMenu );
+ framework::AddonMenuManager::MergeAddonHelpMenu( rFrame, (MenuBar *)pMenu, mxServiceFactory );
}
String aEmpty;
@@ -1398,7 +1394,7 @@ void MenuBarManager::FillMenuManager( Menu* pMenu, const Reference< XFrame >& rF
{
// Create addon popup menu if there exist elements and this is the tools popup menu
sal_uInt16 nCount = 0;
- AddonMenu* pSubMenu = AddonMenuManager::CreateAddonMenu( rFrame );
+ AddonMenu* pSubMenu = AddonMenuManager::CreateAddonMenu( rFrame, mxServiceFactory );
if ( pSubMenu && ( pSubMenu->GetItemCount() > 0 ))
{
if ( pPopup->GetItemType( nCount-1 ) != MENUITEM_SEPARATOR )
diff --git a/framework/source/uielement/popuptoolbarcontroller.cxx b/framework/source/uielement/popuptoolbarcontroller.cxx
index 5e160d40b275..81a7546da187 100644
--- a/framework/source/uielement/popuptoolbarcontroller.cxx
+++ b/framework/source/uielement/popuptoolbarcontroller.cxx
@@ -156,10 +156,13 @@ PopupMenuToolbarController::createPopupWindow()
return xRet;
pToolBox->SetItemDown( m_nToolBoxId, sal_True );
+ WindowAlign eAlign( pToolBox->GetAlign() );
sal_uInt16 nId = m_xPopupMenu->execute(
css::uno::Reference< css::awt::XWindowPeer >( getParent(), css::uno::UNO_QUERY ),
VCLUnoHelper::ConvertToAWTRect( pToolBox->GetItemRect( m_nToolBoxId ) ),
- css::awt::PopupMenuDirection::EXECUTE_DEFAULT );
+ ( eAlign == WINDOWALIGN_TOP || eAlign == WINDOWALIGN_BOTTOM ) ?
+ css::awt::PopupMenuDirection::EXECUTE_DOWN :
+ css::awt::PopupMenuDirection::EXECUTE_RIGHT );
pToolBox->SetItemDown( m_nToolBoxId, sal_False );
if ( nId )
@@ -336,7 +339,7 @@ void NewToolbarController::functionExecuted( const OUString &rCommand )
If the given URL can be located as an action command of one menu item of the
popup menu of this control, we return sal_True. Otherwhise we return sal_False.
Further we return a fallback URL, in case we have to return sal_False. Because
- the outside code must select a valid item of the popup menu everytime ...
+ the outside code must select a valid item of the popup menu every time ...
and we define it here. By the way this m ethod was written to handle
error situations gracefully. E.g. it can be called during creation time
but then we have no valid menu. For this case we know another fallback URL.
@@ -344,7 +347,7 @@ void NewToolbarController::functionExecuted( const OUString &rCommand )
@param rPopupMenu
pounts to the popup menu, on which item we try to locate the given URL
- Can be NULL! Search will be supressed then.
+ Can be NULL! Search will be suppressed then.
@param sURL
the URL for searching
diff --git a/framework/source/uielement/uicommanddescription.cxx b/framework/source/uielement/uicommanddescription.cxx
index dbd9b8e5b569..8fcea001b04f 100644
--- a/framework/source/uielement/uicommanddescription.cxx
+++ b/framework/source/uielement/uicommanddescription.cxx
@@ -106,7 +106,7 @@ namespace framework
// Configuration access class for PopupMenuControllerFactory implementation
//*****************************************************************************************************************
-class ConfigurationAccess_UICommand : // Order is neccessary for right initialization!
+class ConfigurationAccess_UICommand : // Order is necessary for right initialization!
private ThreadHelpBase ,
public ::cppu::WeakImplHelper2<XNameAccess,XContainerListener>
{
@@ -224,7 +224,7 @@ ConfigurationAccess_UICommand::ConfigurationAccess_UICommand( const rtl::OUStrin
m_bCacheFilled( sal_False ),
m_bGenericDataRetrieved( sal_False )
{
- // Create configuration hierachical access name
+ // Create configuration hierarchical access name
m_aConfigCmdAccess += aModuleName;
m_aConfigCmdAccess += rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( CONFIGURATION_CMD_ELEMENT_ACCESS ));
diff --git a/framework/source/unotypes/fwk.xml b/framework/source/unotypes/fwk.xml
index 7305212ab7f6..8d8dc1d7a6f7 100644
--- a/framework/source/unotypes/fwk.xml
+++ b/framework/source/unotypes/fwk.xml
@@ -113,7 +113,7 @@
<description>
It's a dispatch object which can handle "mailto:" URLs.
This service is registered in configuration for this protocol
- and wil be used automaticly by the generic dispatch implementation
+ and wil be used automatically by the generic dispatch implementation
of a Frame. It should start an external mail application and forward
this request to it.
</description>
@@ -128,10 +128,10 @@
<name> com.sun.star.comp.framework.ServiceHandler </name>
<description>
It's a special dispatch object which is registered for "service:*" URL pattern
- and will be automaticly used by the framework dispatch mechanism if such URL occured.
+ and will be automatically used by the framework dispatch mechanism if such URL occurred.
His job is to create any registered uno components which must be coded inside
dispatched URL (may with some optional given parameters). After that such created
- service must be hold his self alive. Such mechanism can be usefull for UI components
+ service must be hold his self alive. Such mechanism can be useful for UI components
(e.g. Dialogs, Wizards) only.
</description>
<loader-name> com.sun.star.loader.SharedLibrary </loader-name>
@@ -145,7 +145,7 @@
<name> com.sun.star.comp.framework.JobHandler </name>
<description>
It's a special dispatch object which is registered for "vnd.sun.star.job:*" URL pattern
- and will be automaticly used by the framework dispatch mechanism if such URL occured.
+ and will be automatically used by the framework dispatch mechanism if such URL occurred.
It binds the dispatch mechanism to the generic job execution of this framework module.
That can be used for e.g. addon purposes.
</description>
diff --git a/framework/source/xml/acceleratorconfigurationreader.cxx b/framework/source/xml/acceleratorconfigurationreader.cxx
index a1fd88231847..b9770112f4c0 100644
--- a/framework/source/xml/acceleratorconfigurationreader.cxx
+++ b/framework/source/xml/acceleratorconfigurationreader.cxx
@@ -55,7 +55,7 @@ namespace framework{
structure was detected.
This macro combined the given comment with a generic
- way to find out the XML line (where the error occured)
+ way to find out the XML line (where the error occurred)
to format a suitable message.
@param COMMENT
@@ -131,7 +131,7 @@ void SAL_CALL AcceleratorConfigurationReader::startElement(const ::rtl::OUString
if (eElement == E_ELEMENT_ITEM)
{
if (!m_bInsideAcceleratorList)
- THROW_PARSEEXCEPTION("An element \"accel:item\" must be embeded into 'accel:acceleratorlist'.")
+ THROW_PARSEEXCEPTION("An element \"accel:item\" must be embedded into 'accel:acceleratorlist'.")
if (m_bInsideAcceleratorItem)
THROW_PARSEEXCEPTION("An element \"accel:item\" is not a container.")
m_bInsideAcceleratorItem = sal_True;
@@ -189,7 +189,7 @@ void SAL_CALL AcceleratorConfigurationReader::startElement(const ::rtl::OUString
#ifdef ENABLE_WARNINGS
else
{
- // Attention: Its not realy a reason to throw an exception and kill the office, if the configuration contains
+ // Attention: Its not really a reason to throw an exception and kill the office, if the configuration contains
// multiple registrations for the same key :-) Show a warning ... and ignore the second item.
// THROW_PARSEEXCEPTION("Command is registered for the same key more then once.")
::rtl::OUStringBuffer sMsg(256);
diff --git a/framework/source/xml/imagesdocumenthandler.cxx b/framework/source/xml/imagesdocumenthandler.cxx
index 54d2e46bca08..dce66e5b8c88 100644
--- a/framework/source/xml/imagesdocumenthandler.cxx
+++ b/framework/source/xml/imagesdocumenthandler.cxx
@@ -204,7 +204,7 @@ throw( SAXException, RuntimeException )
if ( m_bImageContainerStartFound )
{
::rtl::OUString aErrorMessage = getErrorLineString();
- aErrorMessage += ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Element 'image:imagecontainer' cannot be embeded into 'image:imagecontainer'!" ));
+ aErrorMessage += ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Element 'image:imagecontainer' cannot be embedded into 'image:imagecontainer'!" ));
throw SAXException( aErrorMessage, Reference< XInterface >(), Any() );
}
@@ -217,14 +217,14 @@ throw( SAXException, RuntimeException )
if ( !m_bImageContainerStartFound )
{
::rtl::OUString aErrorMessage = getErrorLineString();
- aErrorMessage += ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Element 'image:images' must be embeded into element 'image:imagecontainer'!" ));
+ aErrorMessage += ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Element 'image:images' must be embedded into element 'image:imagecontainer'!" ));
throw SAXException( aErrorMessage, Reference< XInterface >(), Any() );
}
if ( m_bImagesStartFound )
{
::rtl::OUString aErrorMessage = getErrorLineString();
- aErrorMessage += ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Element 'image:images' cannot be embeded into 'image:images'!" ));
+ aErrorMessage += ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Element 'image:images' cannot be embedded into 'image:images'!" ));
throw SAXException( aErrorMessage, Reference< XInterface >(), Any() );
}
@@ -321,14 +321,14 @@ throw( SAXException, RuntimeException )
case IMG_ELEMENT_ENTRY:
{
- // Check that image:entry is embeded into image:images!
+ // Check that image:entry is embedded into image:images!
if ( !m_bImagesStartFound )
{
delete m_pImages;
m_pImages = NULL;
::rtl::OUString aErrorMessage = getErrorLineString();
- aErrorMessage += ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Element 'image:entry' must be embeded into element 'image:images'!" ));
+ aErrorMessage += ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Element 'image:entry' must be embedded into element 'image:images'!" ));
throw SAXException( aErrorMessage, Reference< XInterface >(), Any() );
}
@@ -398,25 +398,25 @@ throw( SAXException, RuntimeException )
case IMG_ELEMENT_EXTERNALIMAGES:
{
- // Check that image:externalimages is embeded into image:imagecontainer
+ // Check that image:externalimages is embedded into image:imagecontainer
if ( !m_bImageContainerStartFound )
{
delete m_pImages;
m_pImages = NULL;
::rtl::OUString aErrorMessage = getErrorLineString();
- aErrorMessage += ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Element 'image:externalimages' must be embeded into element 'image:imagecontainer'!" ));
+ aErrorMessage += ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Element 'image:externalimages' must be embedded into element 'image:imagecontainer'!" ));
throw SAXException( aErrorMessage, Reference< XInterface >(), Any() );
}
- // Check that image:externalentry is NOT embeded into image:externalentry
+ // Check that image:externalentry is NOT embedded into image:externalentry
if ( m_bExternalImagesStartFound )
{
delete m_pImages;
m_pImages = NULL;
::rtl::OUString aErrorMessage = getErrorLineString();
- aErrorMessage += ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Element 'image:externalimages' cannot be embeded into 'image:externalimages'!" ));
+ aErrorMessage += ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Element 'image:externalimages' cannot be embedded into 'image:externalimages'!" ));
throw SAXException( aErrorMessage, Reference< XInterface >(), Any() );
}
@@ -436,7 +436,7 @@ throw( SAXException, RuntimeException )
m_pExternalImages = NULL;
::rtl::OUString aErrorMessage = getErrorLineString();
- aErrorMessage += ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Element 'image:externalentry' must be embeded into 'image:externalimages'!" ));
+ aErrorMessage += ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Element 'image:externalentry' must be embedded into 'image:externalimages'!" ));
throw SAXException( aErrorMessage, Reference< XInterface >(), Any() );
}
@@ -448,7 +448,7 @@ throw( SAXException, RuntimeException )
m_pExternalImages = NULL;
::rtl::OUString aErrorMessage = getErrorLineString();
- aErrorMessage += ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Element 'image:externalentry' cannot be embeded into 'image:externalentry'!" ));
+ aErrorMessage += ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Element 'image:externalentry' cannot be embedded into 'image:externalentry'!" ));
throw SAXException( aErrorMessage, Reference< XInterface >(), Any() );
}
diff --git a/framework/test/test.cxx b/framework/test/test.cxx
index aef8153152bc..59c8053ff0ee 100644
--- a/framework/test/test.cxx
+++ b/framework/test/test.cxx
@@ -186,7 +186,7 @@ void TestApplication::Main()
m_xFactory = aManager.getGlobalUNOServiceManager();
setProcessServiceFactory( m_xFactory );
- // Control sucess of operation.
+ // Control success of operation.
LOG_ASSERT( !(m_xFactory.is() ==sal_False ), "TestApplication::Main()\nCan't create global service manager.\n\n" )
LOG_ASSERT( !(getProcessServiceFactory()!=m_xFactory), "TestApplication::Main()\nGlobal servicemanager not set in UNOTOOLS.\n\n" )
@@ -616,7 +616,7 @@ void TestApplication::impl_testDesktop( const Reference< XDesktop >& xDesktop )
LOG_ASSERT( !(xDesktopFrame->getName()!=sName), "TestApplication::impl_testDesktop()\nSetting of name works not correct on desktop.\n\n" )
// Reset name do default!
- // Its neccessary for follow operations.
+ // Its necessary for follow operations.
sName = OUString( RTL_CONSTASCII_USTRINGPARAM("Desktop") );
xDesktopFrame->setName( sName );
@@ -1304,7 +1304,7 @@ sal_Bool TestApplication::impl_testTreeSearch()
}
// Test inside/outside tasks search
- // No frames outside current task should be found if TASKS flag isnt set.
+ // No frames outside current task should be found if TASKS flag isn't set.
// Otherwise he must be found!
if (
( xF21211->findFrame( DECLARE_ASCII("F12" ), FrameSearchFlag::ALL ) == xF12 ) ||
diff --git a/framework/test/test_componentenumeration.bas b/framework/test/test_componentenumeration.bas
index c837bea2fb73..ec52ce6d5cef 100644
--- a/framework/test/test_componentenumeration.bas
+++ b/framework/test/test_componentenumeration.bas
@@ -37,7 +37,7 @@ Sub Main
rem ___________________________________________________________________________________________________________________________________
rem Control service specification of helper class "framework/helper/OComponentAccess".
- rem The follow output must occure: com.sun.star.lang.XTypeProvider
+ rem The follow output must occur: com.sun.star.lang.XTypeProvider
rem com.sun.star.container.XEnumerationAccess -> com.sun.star.container.XElementAccess
msgbox xComponentAccess.dbg_supportedInterfaces
@@ -70,7 +70,7 @@ Sub Main
rem ___________________________________________________________________________________________________________________________________
rem Control service specification of helper class "framework/helper/OComponentEnumeration".
- rem The follow output must occure: com.sun.star.lang.XTypeProvider
+ rem The follow output must occur: com.sun.star.lang.XTypeProvider
rem com.sun.star.lang.XEventListener
rem com.sun.star.container.XEnumeration
msgbox xComponentEnumeration.dbg_supportedInterfaces
diff --git a/framework/test/test_statusindicatorfactory.bas b/framework/test/test_statusindicatorfactory.bas
index 9cd80a6d2605..6c7103c2b770 100644
--- a/framework/test/test_statusindicatorfactory.bas
+++ b/framework/test/test_statusindicatorfactory.bas
@@ -52,7 +52,7 @@ Sub Main
xIndicator2.setValue( 50 )
rem Work with indicator 3.
- rem If working finished automaticly indicator 2 is reactivated.
+ rem If working finished automatically indicator 2 is reactivated.
i = 0
while i<300
xIndicator3.setText( "Indicator 3: Range=300 Value=" + i )
@@ -62,13 +62,13 @@ Sub Main
wend
rem Delete indicator 2 before you deactivate number 3!
- rem The next automaticly activated indicator will be the number 1.
+ rem The next automatically activated indicator will be the number 1.
xIndicator2.end
- msgbox "Indicator 3 will be destroyed. Indicator 2 was deleted ... number 1 must reactivated automaticly!"
+ msgbox "Indicator 3 will be destroyed. Indicator 2 was deleted ... number 1 must reactivated automatically!"
xIndicator3.end
rem Work with indicator 1.
- rem If working finished automaticly the window will be destroyed.
+ rem If working finished automatically the window will be destroyed.
i = 25
while i<100
xIndicator1.setText( "Indicator 1: Range=100 Value=" + i )
@@ -82,7 +82,7 @@ Sub Main
xIndicator1.setText( "Indicator 1: ... set 50 % for progress" )
wait( 1000 )
xIndicator1.setValue( 50 )
- msgbox "Indicator 1 will be destroyed. Indicator window must destroyed automaticly!"
+ msgbox "Indicator 1 will be destroyed. Indicator window must destroyed automatically!"
xIndicator1.end
msgbox "Test for status indicator finished successful!"
diff --git a/framework/test/threadtest.cxx b/framework/test/threadtest.cxx
index ec4285b710fe..a0e7e52608d8 100644
--- a/framework/test/threadtest.cxx
+++ b/framework/test/threadtest.cxx
@@ -290,7 +290,7 @@ class ThreadSafeClass : private TransactionBase
ThreadSafeClass ();
~ThreadSafeClass();
- // This methods are used from differnt threads
+ // This methods are used from different threads
// to test this class.
void init ( sal_Int32 nA ,
sal_Int32 nThreadID );
@@ -348,7 +348,7 @@ void ThreadSafeClass::init( sal_Int32 nA, sal_Int32 nThreadID )
LOG_INIT( nA, nThreadID )
// Look for multiple calls of this method first!
- // Use E_SOFTEXCEPTIONS to disable automaticly throwing of exceptions for some working modes.
+ // Use E_SOFTEXCEPTIONS to disable automatically throwing of exceptions for some working modes.
ERejectReason eReason;
TransactionGuard aTransaction( m_aTransactionManager, E_NOEXCEPTIONS, eReason );
if( eReason == E_UNINITIALIZED )
diff --git a/framework/test/threadtest/threadtest.cxx b/framework/test/threadtest/threadtest.cxx
index 7f79e25d0a98..4776fef75536 100644
--- a/framework/test/threadtest/threadtest.cxx
+++ b/framework/test/threadtest/threadtest.cxx
@@ -288,7 +288,7 @@ class ThreadSafeClass : private ThreadHelpBase
ThreadSafeClass ();
~ThreadSafeClass();
- // This methods are used from differnt threads
+ // This methods are used from different threads
// to test this class.
void init ( sal_Int32 nA ,
sal_Int32 nThreadID );
@@ -340,7 +340,7 @@ ThreadSafeClass::~ThreadSafeClass()
void ThreadSafeClass::init( sal_Int32 nA, sal_Int32 nThreadID )
{
// Look for multiple calls of this method first!
- // Use E_SOFTEXCEPTIONS to disable automaticly throwing of exceptions for some working modes.
+ // Use E_SOFTEXCEPTIONS to disable automatically throwing of exceptions for some working modes.
TransactionGuard aTransaction( m_aTransactionManager, E_SOFTEXCEPTIONS );
// Set write lock for setting internal member AND
diff --git a/framework/test/typecfg/cfgview.cxx b/framework/test/typecfg/cfgview.cxx
index 8dbfb5ec27bb..eddb6d1245c9 100644
--- a/framework/test/typecfg/cfgview.cxx
+++ b/framework/test/typecfg/cfgview.cxx
@@ -183,7 +183,7 @@ CFGView gApplication;
void CFGView::Main()
{
// Init global servicemanager and set it.
- // It's neccessary for other services ... e.g. configuration.
+ // It's necessary for other services ... e.g. configuration.
ServiceManager aManager;
::comphelper::setProcessServiceFactory( aManager.getGlobalUNOServiceManager() );
@@ -240,7 +240,7 @@ void CFGView::impl_printSyntax()
@seealso -
@param "rMember", reference to struct of global application member to fill arguments in it
- @return right filled member struct or unchanged struct if an error occure!
+ @return right filled member struct or unchanged struct if an error occur!
@onerror We do nothing - or warn programmer!
*//*-*************************************************************************************************************/
diff --git a/framework/test/typecfg/xml2xcd.cxx b/framework/test/typecfg/xml2xcd.cxx
index 9922f2c7eeb3..a9409fbfe1b3 100644
--- a/framework/test/typecfg/xml2xcd.cxx
+++ b/framework/test/typecfg/xml2xcd.cxx
@@ -81,7 +81,7 @@ using namespace ::framework ;
3) decrease size of xml file
- don't write full localized values
- use own formated string for all non localized values
- - seperate "Installed" flag for filters
+ - separate "Installed" flag for filters
4) set right values for "Order" property of filters
5) support for ContentHandler
draft 6) reactivate old filter names
@@ -95,7 +95,7 @@ using namespace ::framework ;
#define ARGUMENT_VERSION_INPUT DECLARE_ASCII("-vin=") // argument for file version to read [1|2|3]
#define ARGUMENT_VERSION_OUTPUT DECLARE_ASCII("-vou=") // argument for file version to write [1|2|3]
-#define ARGUMENTLENGTH 5 // All arguments should have the same lenght ... it's better to detect it!
+#define ARGUMENTLENGTH 5 // All arguments should have the same length ... it's better to detect it!
#define ARGUMENTFOUND 0 // OUString::compareTo returns 0 if searched string match given one
#define WRITEABLE_ON DECLARE_ASCII("true" )
@@ -205,7 +205,7 @@ class XCDGenerator : public Application
static ::rtl::OUString impl_encodeSpecialSigns ( const ::rtl::OUString& sValue ); // encode strings for xml
static sal_Unicode impl_defineSeperator ( const ::framework::StringList& lList ); // search seperator for lists
static void impl_initFilterHashNew2Old ( StringHash& aHash ); // initialize converter table to restaurate old filter names
- static void impl_orderAlphabetical ( css::uno::Sequence< ::rtl::OUString >& lList ); // sort stringlist of internal type-, filter- ... names in alphabetical order to generate xcd files everytime in the same way
+ static void impl_orderAlphabetical ( css::uno::Sequence< ::rtl::OUString >& lList ); // sort stringlist of internal type-, filter- ... names in alphabetical order to generate xcd files every time in the same way
static sal_Bool impl_isUsAsciiAlphaDigit ( sal_Unicode c ,
sal_Bool bDigitAllowed = sal_True );
static ::rtl::OUString impl_encodeSetName ( const ::rtl::OUString& rSource );
@@ -229,7 +229,7 @@ void XCDGenerator::Main()
// impl_printCopyright();
// Init global servicemanager and set it.
- // It's neccessary for other services ... e.g. configuration.
+ // It's necessary for other services ... e.g. configuration.
ServiceManager aManager;
::comphelper::setProcessServiceFactory( aManager.getGlobalUNOServiceManager() );
::utl::setProcessServiceFactory ( aManager.getGlobalUNOServiceManager() );
@@ -251,7 +251,7 @@ void XCDGenerator::Main()
// Get some statistic informations of current filled filter cache ... (e.g. count of current activae filters)
// because we need it to check if all filters are converted and written to disk.
- // May be it's possible to lose some of them during convertion!!!
+ // May be it's possible to lose some of them during conversion!!!
m_aData.nOriginalTypes = m_aData.pFilterCache->getAllTypeNames().getLength() ;
m_aData.nOriginalFilters = m_aData.pFilterCache->getAllFilterNames().getLength() ;
m_aData.nOriginalDetectors = m_aData.pFilterCache->getAllDetectorNames().getLength() ;
@@ -324,7 +324,7 @@ void XCDGenerator::impl_printSyntax()
@seealso -
@param "rMember", reference to struct of global application member to fill arguments in it
- @return right filled member struct or unchanged struct if an error occure!
+ @return right filled member struct or unchanged struct if an error occur!
@onerror We do nothing - or warn programmer!
*//*-*************************************************************************************************************/
@@ -638,7 +638,7 @@ void XCDGenerator::impl_generateTypeTemplate()
m_aData.sBufferStandard.appendAscii( "\t\t\t<schema:value cfg:name=\"Data\" cfg:type=\"string\" cfg:writable=\"" );
m_aData.sBufferStandard.appendAscii( m_aData.bWriteable==sal_True ? "true\">\n" : "false\">\n" );
m_aData.sBufferStandard.appendAscii("\t\t\t\t<schema:documentation>\n" );
- m_aData.sBufferStandard.appendAscii( "\t\t\t\t\t<schema:description>Containes all data of a type as an own formated string.{Preferred, MediaType, ClipboardFormat, URLPattern, Extensions, DocumentIconID}</schema:description>\n" );
+ m_aData.sBufferStandard.appendAscii( "\t\t\t\t\t<schema:description>Contains all data of a type as an own formated string.{Preferred, MediaType, ClipboardFormat, URLPattern, Extensions, DocumentIconID}</schema:description>\n" );
m_aData.sBufferStandard.appendAscii( "\t\t\t\t</schema:documentation>\n" );
m_aData.sBufferStandard.appendAscii( "\t\t\t\t<default:data>false</default:data>\n" );
m_aData.sBufferStandard.appendAscii( "\t\t\t</schema:value>\n" );
@@ -1525,7 +1525,7 @@ void XCDGenerator::impl_generateUINamesProperty( ::rtl::OUStringBuffer&
++pUIName;
}
- // Generate full localized set, if some values are realy loclaized.
+ // Generate full localized set, if some values are really loclaized.
if( bDifferent == sal_True )
{
for( ConstStringHashIterator pUIName=lUINames.begin(); pUIName!=lUINames.end(); ++pUIName )
@@ -1603,7 +1603,7 @@ sal_Unicode XCDGenerator::impl_defineSeperator( const ::framework::StringList& l
// Start with first seperator.
// Step over all list items.
// If one item contains this seperator - try next one!
- // If no new one avaliable (5 tests failed!) - show an error message for user.
+ // If no new one available (5 tests failed!) - show an error message for user.
// => File will be wrong then!
// If seperator was changed start search during list again ... because
// new seperator could exist at already compared elements!
diff --git a/hwpfilter/source/hbox.h b/hwpfilter/source/hbox.h
index 619a57b2faee..3742ae9fae23 100644
--- a/hwpfilter/source/hbox.h
+++ b/hwpfilter/source/hbox.h
@@ -443,7 +443,7 @@ struct Columns
return;
}
}
- // last postion.
+ // last position.
if( nCount == nTotal )
AddColumnsSize();
data[nCount++] = pos;
@@ -504,7 +504,7 @@ struct Rows
return;
}
}
- // last postion.
+ // last position.
if( nCount == nTotal )
AddRowsSize();
data[nCount++] = pos;
@@ -562,7 +562,7 @@ struct PicDefFile
};
/**
- * @short Embeded image file
+ * @short Embedded image file
*/
struct PicDefEmbed
{
@@ -610,7 +610,7 @@ typedef union
/**
* There are four kinds of image.
* @li External image
- * @li Embeded image
+ * @li Embedded image
* @li Win32 ole object
* @li Drawing object of hwp
*
@@ -639,7 +639,7 @@ struct Picture: public FBox
/**
* Type of this object
- * It is one of external/ole/embeded/drawing picture
+ * It is one of external/ole/embedded/drawing picture
*/
uchar pictype;
hunit skip[2];
@@ -998,7 +998,7 @@ class Outline: public HBox
*/
hchar user_shape[MAX_OUTLINE_LEVEL];
/**
- * decoration charactor for the level type
+ * decoration character for the level type
*/
hchar deco[MAX_OUTLINE_LEVEL][2]; /* ì‚Źìš©ìž 정의시 ì•žë’€ ëŹžìž */
hchar dummy;
diff --git a/hwpfilter/source/hcode.cpp b/hwpfilter/source/hcode.cpp
index a08676b7e0af..7fa46864038f 100644
--- a/hwpfilter/source/hcode.cpp
+++ b/hwpfilter/source/hcode.cpp
@@ -1265,7 +1265,7 @@ hchar_string kstr2hstr(unsigned char const* src)
/**
- * Transfer interger to string following format
+ * Transfer integer to string following format
*/
char* Int2Str(int value, const char *format, char *buf)
{
diff --git a/hwpfilter/source/hcode.h b/hwpfilter/source/hcode.h
index 6af595aca463..3f76f6d2be29 100644
--- a/hwpfilter/source/hcode.h
+++ b/hwpfilter/source/hcode.h
@@ -64,7 +64,7 @@ DLLEXPORT ::std::string urltounix(const char *src);
DLLEXPORT ::std::string urltowin(const char *src);
#endif
/**
- * Transfer interger to string following format
+ * Transfer integer to string following format
*/
DLLEXPORT char* Int2Str(int value, const char *format, char *buf);
diff --git a/hwpfilter/source/hgzip.cpp b/hwpfilter/source/hgzip.cpp
index c706eabc22b8..7c3d3bf0adaa 100644
--- a/hwpfilter/source/hgzip.cpp
+++ b/hwpfilter/source/hgzip.cpp
@@ -108,7 +108,7 @@ gz_stream *gz_open(HStream & _stream)
/* ===========================================================================
Read a byte from a gz_stream; update next_in and avail_in. Return EOF
for end of file.
- IN assertion: the stream s has been sucessfully opened for reading.
+ IN assertion: the stream s has been successfully opened for reading.
*/
local int get_byte(gz_stream * s)
{
diff --git a/hwpfilter/source/hinfo.cpp b/hwpfilter/source/hinfo.cpp
index c71704dde52a..dad010d397d3 100644
--- a/hwpfilter/source/hinfo.cpp
+++ b/hwpfilter/source/hinfo.cpp
@@ -44,7 +44,7 @@ static bool HWPReadInfoBlock(void *ptr, int len, HWPFile & hwpf)
}
-// Document Infomation
+// Document Information
HWPInfo::HWPInfo(void)
{
diff --git a/hwpfilter/source/hinfo.h b/hwpfilter/source/hinfo.h
index dd02304ab950..68a969efe00d 100644
--- a/hwpfilter/source/hinfo.h
+++ b/hwpfilter/source/hinfo.h
@@ -56,7 +56,7 @@ typedef struct
/* ?????? ??????, ???????? ???? */
typedef struct
{
- char type; // 0- background color, 1 - external image, 2- embeded image
+ char type; // 0- background color, 1 - external image, 2- embedded image
char reserved1[8];
int luminance; /* ???? ( -100 ~ 100 ) */
int contrast; /* ???? ( -100 ~ 100 ) */
diff --git a/hwpfilter/source/hpara.cpp b/hwpfilter/source/hpara.cpp
index fd8c9fe2756f..6af00852e2a4 100644
--- a/hwpfilter/source/hpara.cpp
+++ b/hwpfilter/source/hpara.cpp
@@ -95,7 +95,7 @@ int HWPPara::Read(HWPFile & hwpf, unsigned char flag)
unsigned char same_cshape;
register int ii;
scflag = flag;
-// Paragraph Infomation
+// Paragraph Information
hwpf.Read1b(&reuse_shape, 1);
hwpf.Read2b(&nch, 1);
hwpf.Read2b(&nline, 1);
diff --git a/hwpfilter/source/hpara.h b/hwpfilter/source/hpara.h
index 630f1b61ac66..862498ac9ac3 100644
--- a/hwpfilter/source/hpara.h
+++ b/hwpfilter/source/hpara.h
@@ -46,7 +46,7 @@ struct HBox;
enum
{
PA_USER_COLUMN = 1,
- PA_USER_PAGE = 2, /* p user_page definiton */
+ PA_USER_PAGE = 2, /* p user_page definition */
PA_SECTION_BREAK = 4,
PA_BLOCK_BEGIN = 8,
PA_IN_BLOCK = 16,
@@ -130,11 +130,11 @@ class DLLEXPORT HWPPara
/* layout을 위한 핚수 */
/**
- * Returns the character sytle of paragraph.
+ * Returns the character style of paragraph.
*/
CharShape *GetCharShape(int pos);
/**
- * Returns the sytle of paragraph.
+ * Returns the style of paragraph.
*/
ParaShape *GetParaShape(void);
diff --git a/hwpfilter/source/htags.h b/hwpfilter/source/htags.h
index 106591ff6dbb..ebc7be7b26cd 100644
--- a/hwpfilter/source/htags.h
+++ b/hwpfilter/source/htags.h
@@ -39,7 +39,7 @@
class HWPFile;
/**
- * @short Embeded image
+ * @short Embedded image
*/
struct EmPicture
{
diff --git a/hwpfilter/source/hwpeq.cpp b/hwpfilter/source/hwpeq.cpp
index 1ad3f3aa9971..e53f47290477 100644
--- a/hwpfilter/source/hwpeq.cpp
+++ b/hwpfilter/source/hwpeq.cpp
@@ -444,7 +444,7 @@ static char *make_keyword( char *keyword, const char *token)
return keyword;
}
-// token reading funtion
+// token reading function
struct eq_stack {
MzString white;
MzString token;
@@ -469,7 +469,8 @@ void push_token(MzString &white, MzString &token, istream *strm)
stk->strm = strm;
}
-/* 읜은 토큰의 Ꞟ읎넌 반환한닀. */
+/*
+ 읜은 토큰의 Ꞟ읎넌 반환한닀. */
/* control char, control sequence, binary sequence,
alphabet string, sigle character */
static int next_token(MzString &white, MzString &token, istream *strm)
@@ -489,7 +490,7 @@ static int next_token(MzString &white, MzString &token, istream *strm)
if( !strm->good() || (ch = strm->get()) == EOF )
return 0;
- // read preceeding ws
+ // read preceding ws
if( IS_WS(ch) ) {
do white << (char) ch;
while( IS_WS(ch = strm->get()) );
diff --git a/hwpfilter/source/hwpfile.h b/hwpfilter/source/hwpfile.h
index dafcf4ae3707..714de34a2142 100644
--- a/hwpfilter/source/hwpfile.h
+++ b/hwpfilter/source/hwpfile.h
@@ -194,7 +194,7 @@ class DLLEXPORT HWPFile
bool ParaListRead();
/* 귞늌 등의 추가 ì •ëłŽë„Œ 읜는닀. */
/**
- * Reads additional information like embeded image of hwp file from HIODev
+ * Reads additional information like embedded image of hwp file from HIODev
*/
bool TagsRead(void);
diff --git a/i18npool/inc/xdictionary.hxx b/i18npool/inc/xdictionary.hxx
index 2928d102cbf4..d347feba0683 100644
--- a/i18npool/inc/xdictionary.hxx
+++ b/i18npool/inc/xdictionary.hxx
@@ -39,7 +39,7 @@ namespace com { namespace sun { namespace star { namespace i18n {
// cache structure.
struct WordBreakCache {
sal_Int32 length; // contents length saved here.
- sal_Unicode *contents; // seperated segment contents.
+ sal_Unicode *contents; // separated segment contents.
sal_Int32* wordboundary; // word boundaries in segments.
sal_Int32 size; // size of wordboundary
diff --git a/i18npool/source/localedata/data/localedata_euro.map b/i18npool/source/localedata/data/localedata_euro.map
index 9a1070f761e6..4147a280b88d 100644
--- a/i18npool/source/localedata/data/localedata_euro.map
+++ b/i18npool/source/localedata/data/localedata_euro.map
@@ -68,6 +68,7 @@ getAllCalendars_lv_LV;
getAllCalendars_mk_MK;
getAllCalendars_mt_MT;
getAllCalendars_nb_NO;
+getAllCalendars_nds_DE;
getAllCalendars_nl_BE;
getAllCalendars_nl_NL;
getAllCalendars_nn_NO;
@@ -91,6 +92,7 @@ getAllCalendars_sr_YU;
getAllCalendars_sv_FI;
getAllCalendars_sv_SE;
getAllCalendars_tr_TR;
+getAllCalendars_tt_RU;
getAllCalendars_uk_UA;
getAllCalendars_wa_BE;
getAllCurrencies_ast_ES;
@@ -140,6 +142,7 @@ getAllCurrencies_lv_LV;
getAllCurrencies_mk_MK;
getAllCurrencies_mt_MT;
getAllCurrencies_nb_NO;
+getAllCurrencies_nds_DE;
getAllCurrencies_nl_BE;
getAllCurrencies_nl_NL;
getAllCurrencies_nn_NO;
@@ -163,6 +166,7 @@ getAllCurrencies_sr_YU;
getAllCurrencies_sv_FI;
getAllCurrencies_sv_SE;
getAllCurrencies_tr_TR;
+getAllCurrencies_tt_RU;
getAllCurrencies_uk_UA;
getAllCurrencies_wa_BE;
getAllFormats0_ast_ES;
@@ -212,6 +216,7 @@ getAllFormats0_lv_LV;
getAllFormats0_mk_MK;
getAllFormats0_mt_MT;
getAllFormats0_nb_NO;
+getAllFormats0_nds_DE;
getAllFormats0_nl_BE;
getAllFormats0_nl_NL;
getAllFormats0_nn_NO;
@@ -235,6 +240,7 @@ getAllFormats0_sr_YU;
getAllFormats0_sv_FI;
getAllFormats0_sv_SE;
getAllFormats0_tr_TR;
+getAllFormats0_tt_RU;
getAllFormats0_uk_UA;
getAllFormats0_wa_BE;
getBreakIteratorRules_ast_ES;
@@ -284,6 +290,7 @@ getBreakIteratorRules_lv_LV;
getBreakIteratorRules_mk_MK;
getBreakIteratorRules_mt_MT;
getBreakIteratorRules_nb_NO;
+getBreakIteratorRules_nds_DE;
getBreakIteratorRules_nl_BE;
getBreakIteratorRules_nl_NL;
getBreakIteratorRules_nn_NO;
@@ -307,6 +314,7 @@ getBreakIteratorRules_sr_YU;
getBreakIteratorRules_sv_FI;
getBreakIteratorRules_sv_SE;
getBreakIteratorRules_tr_TR;
+getBreakIteratorRules_tt_RU;
getBreakIteratorRules_uk_UA;
getBreakIteratorRules_wa_BE;
getCollationOptions_ast_ES;
@@ -356,6 +364,7 @@ getCollationOptions_lv_LV;
getCollationOptions_mk_MK;
getCollationOptions_mt_MT;
getCollationOptions_nb_NO;
+getCollationOptions_nds_DE;
getCollationOptions_nl_BE;
getCollationOptions_nl_NL;
getCollationOptions_nn_NO;
@@ -379,6 +388,7 @@ getCollationOptions_sr_YU;
getCollationOptions_sv_FI;
getCollationOptions_sv_SE;
getCollationOptions_tr_TR;
+getCollationOptions_tt_RU;
getCollationOptions_uk_UA;
getCollationOptions_wa_BE;
getCollatorImplementation_ast_ES;
@@ -428,6 +438,7 @@ getCollatorImplementation_lv_LV;
getCollatorImplementation_mk_MK;
getCollatorImplementation_mt_MT;
getCollatorImplementation_nb_NO;
+getCollatorImplementation_nds_DE;
getCollatorImplementation_nl_BE;
getCollatorImplementation_nl_NL;
getCollatorImplementation_nn_NO;
@@ -451,6 +462,7 @@ getCollatorImplementation_sr_YU;
getCollatorImplementation_sv_FI;
getCollatorImplementation_sv_SE;
getCollatorImplementation_tr_TR;
+getCollatorImplementation_tt_RU;
getCollatorImplementation_uk_UA;
getCollatorImplementation_wa_BE;
getContinuousNumberingLevels_ast_ES;
@@ -500,6 +512,7 @@ getContinuousNumberingLevels_lv_LV;
getContinuousNumberingLevels_mk_MK;
getContinuousNumberingLevels_mt_MT;
getContinuousNumberingLevels_nb_NO;
+getContinuousNumberingLevels_nds_DE;
getContinuousNumberingLevels_nl_BE;
getContinuousNumberingLevels_nl_NL;
getContinuousNumberingLevels_nn_NO;
@@ -523,6 +536,7 @@ getContinuousNumberingLevels_sr_YU;
getContinuousNumberingLevels_sv_FI;
getContinuousNumberingLevels_sv_SE;
getContinuousNumberingLevels_tr_TR;
+getContinuousNumberingLevels_tt_RU;
getContinuousNumberingLevels_uk_UA;
getContinuousNumberingLevels_wa_BE;
getFollowPageWords_ast_ES;
@@ -572,6 +586,7 @@ getFollowPageWords_lv_LV;
getFollowPageWords_mk_MK;
getFollowPageWords_mt_MT;
getFollowPageWords_nb_NO;
+getFollowPageWords_nds_DE;
getFollowPageWords_nl_BE;
getFollowPageWords_nl_NL;
getFollowPageWords_nn_NO;
@@ -595,6 +610,7 @@ getFollowPageWords_sr_YU;
getFollowPageWords_sv_FI;
getFollowPageWords_sv_SE;
getFollowPageWords_tr_TR;
+getFollowPageWords_tt_RU;
getFollowPageWords_uk_UA;
getFollowPageWords_wa_BE;
getForbiddenCharacters_ast_ES;
@@ -644,6 +660,7 @@ getForbiddenCharacters_lv_LV;
getForbiddenCharacters_mk_MK;
getForbiddenCharacters_mt_MT;
getForbiddenCharacters_nb_NO;
+getForbiddenCharacters_nds_DE;
getForbiddenCharacters_nl_BE;
getForbiddenCharacters_nl_NL;
getForbiddenCharacters_nn_NO;
@@ -667,6 +684,7 @@ getForbiddenCharacters_sr_YU;
getForbiddenCharacters_sv_FI;
getForbiddenCharacters_sv_SE;
getForbiddenCharacters_tr_TR;
+getForbiddenCharacters_tt_RU;
getForbiddenCharacters_uk_UA;
getForbiddenCharacters_wa_BE;
getIndexAlgorithm_ast_ES;
@@ -716,6 +734,7 @@ getIndexAlgorithm_lv_LV;
getIndexAlgorithm_mk_MK;
getIndexAlgorithm_mt_MT;
getIndexAlgorithm_nb_NO;
+getIndexAlgorithm_nds_DE;
getIndexAlgorithm_nl_BE;
getIndexAlgorithm_nl_NL;
getIndexAlgorithm_nn_NO;
@@ -739,6 +758,7 @@ getIndexAlgorithm_sr_YU;
getIndexAlgorithm_sv_FI;
getIndexAlgorithm_sv_SE;
getIndexAlgorithm_tr_TR;
+getIndexAlgorithm_tt_RU;
getIndexAlgorithm_uk_UA;
getIndexAlgorithm_wa_BE;
getLCInfo_ast_ES;
@@ -788,6 +808,7 @@ getLCInfo_lv_LV;
getLCInfo_mk_MK;
getLCInfo_mt_MT;
getLCInfo_nb_NO;
+getLCInfo_nds_DE;
getLCInfo_nl_BE;
getLCInfo_nl_NL;
getLCInfo_nn_NO;
@@ -811,6 +832,7 @@ getLCInfo_sr_YU;
getLCInfo_sv_FI;
getLCInfo_sv_SE;
getLCInfo_tr_TR;
+getLCInfo_tt_RU;
getLCInfo_uk_UA;
getLCInfo_wa_BE;
getLocaleItem_ast_ES;
@@ -860,6 +882,7 @@ getLocaleItem_lv_LV;
getLocaleItem_mk_MK;
getLocaleItem_mt_MT;
getLocaleItem_nb_NO;
+getLocaleItem_nds_DE;
getLocaleItem_nl_BE;
getLocaleItem_nl_NL;
getLocaleItem_nn_NO;
@@ -883,6 +906,7 @@ getLocaleItem_sr_YU;
getLocaleItem_sv_FI;
getLocaleItem_sv_SE;
getLocaleItem_tr_TR;
+getLocaleItem_tt_RU;
getLocaleItem_uk_UA;
getLocaleItem_wa_BE;
getOutlineNumberingLevels_ast_ES;
@@ -932,6 +956,7 @@ getOutlineNumberingLevels_lv_LV;
getOutlineNumberingLevels_mk_MK;
getOutlineNumberingLevels_mt_MT;
getOutlineNumberingLevels_nb_NO;
+getOutlineNumberingLevels_nds_DE;
getOutlineNumberingLevels_nl_BE;
getOutlineNumberingLevels_nl_NL;
getOutlineNumberingLevels_nn_NO;
@@ -955,6 +980,7 @@ getOutlineNumberingLevels_sr_YU;
getOutlineNumberingLevels_sv_FI;
getOutlineNumberingLevels_sv_SE;
getOutlineNumberingLevels_tr_TR;
+getOutlineNumberingLevels_tt_RU;
getOutlineNumberingLevels_uk_UA;
getOutlineNumberingLevels_wa_BE;
getReservedWords_ast_ES;
@@ -1004,6 +1030,7 @@ getReservedWords_lv_LV;
getReservedWords_mk_MK;
getReservedWords_mt_MT;
getReservedWords_nb_NO;
+getReservedWords_nds_DE;
getReservedWords_nl_BE;
getReservedWords_nl_NL;
getReservedWords_nn_NO;
@@ -1027,6 +1054,7 @@ getReservedWords_sr_YU;
getReservedWords_sv_FI;
getReservedWords_sv_SE;
getReservedWords_tr_TR;
+getReservedWords_tt_RU;
getReservedWords_uk_UA;
getReservedWords_wa_BE;
getSearchOptions_ast_ES;
@@ -1076,6 +1104,7 @@ getSearchOptions_lv_LV;
getSearchOptions_mk_MK;
getSearchOptions_mt_MT;
getSearchOptions_nb_NO;
+getSearchOptions_nds_DE;
getSearchOptions_nl_BE;
getSearchOptions_nl_NL;
getSearchOptions_nn_NO;
@@ -1099,6 +1128,7 @@ getSearchOptions_sr_YU;
getSearchOptions_sv_FI;
getSearchOptions_sv_SE;
getSearchOptions_tr_TR;
+getSearchOptions_tt_RU;
getSearchOptions_uk_UA;
getSearchOptions_wa_BE;
getTransliterations_ast_ES;
@@ -1148,6 +1178,7 @@ getTransliterations_lv_LV;
getTransliterations_mk_MK;
getTransliterations_mt_MT;
getTransliterations_nb_NO;
+getTransliterations_nds_DE;
getTransliterations_nl_BE;
getTransliterations_nl_NL;
getTransliterations_nn_NO;
@@ -1171,6 +1202,7 @@ getTransliterations_sr_YU;
getTransliterations_sv_FI;
getTransliterations_sv_SE;
getTransliterations_tr_TR;
+getTransliterations_tt_RU;
getTransliterations_uk_UA;
getTransliterations_wa_BE;
getUnicodeScripts_ast_ES;
@@ -1220,6 +1252,7 @@ getUnicodeScripts_lv_LV;
getUnicodeScripts_mk_MK;
getUnicodeScripts_mt_MT;
getUnicodeScripts_nb_NO;
+getUnicodeScripts_nds_DE;
getUnicodeScripts_nl_BE;
getUnicodeScripts_nl_NL;
getUnicodeScripts_nn_NO;
@@ -1243,6 +1276,7 @@ getUnicodeScripts_sr_YU;
getUnicodeScripts_sv_FI;
getUnicodeScripts_sv_SE;
getUnicodeScripts_tr_TR;
+getUnicodeScripts_tt_RU;
getUnicodeScripts_uk_UA;
getUnicodeScripts_wa_BE;
diff --git a/i18npool/source/localedata/data/makefile.mk b/i18npool/source/localedata/data/makefile.mk
index d0fee8c5883b..e157747aaa90 100644
--- a/i18npool/source/localedata/data/makefile.mk
+++ b/i18npool/source/localedata/data/makefile.mk
@@ -189,6 +189,7 @@ SHL3OBJS= \
$(SLO)$/localedata_mk_MK.obj \
$(SLO)$/localedata_mt_MT.obj \
$(SLO)$/localedata_nb_NO.obj \
+ $(SLO)$/localedata_nds_DE.obj \
$(SLO)$/localedata_nl_BE.obj \
$(SLO)$/localedata_nl_NL.obj \
$(SLO)$/localedata_nn_NO.obj \
@@ -198,8 +199,8 @@ SHL3OBJS= \
$(SLO)$/localedata_pt_BR.obj \
$(SLO)$/localedata_pt_PT.obj \
$(SLO)$/localedata_ro_RO.obj \
- $(SLO)$/localedata_rue_SK.obj \
$(SLO)$/localedata_ru_RU.obj \
+ $(SLO)$/localedata_rue_SK.obj \
$(SLO)$/localedata_sc_IT.obj \
$(SLO)$/localedata_sh_ME.obj \
$(SLO)$/localedata_sh_RS.obj \
@@ -212,6 +213,7 @@ SHL3OBJS= \
$(SLO)$/localedata_sv_FI.obj \
$(SLO)$/localedata_sv_SE.obj \
$(SLO)$/localedata_tr_TR.obj \
+ $(SLO)$/localedata_tt_RU.obj \
$(SLO)$/localedata_uk_UA.obj \
$(SLO)$/localedata_wa_BE.obj
diff --git a/i18npool/source/localedata/data/nds_DE.xml b/i18npool/source/localedata/data/nds_DE.xml
new file mode 100644
index 000000000000..65ac13851c5b
--- /dev/null
+++ b/i18npool/source/localedata/data/nds_DE.xml
@@ -0,0 +1,375 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE Locale SYSTEM 'locale.dtd'>
+<!--***********************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ ***********************************************************-->
+<Locale versionDTD="2.0.3" allowUpdateFromCLDR="no" version="1.0">
+ <LC_INFO>
+ <Language>
+ <LangID>nds</LangID>
+ <DefaultName>German, Low</DefaultName>
+ </Language>
+ <Country>
+ <CountryID>DE</CountryID>
+ <DefaultName>Germany</DefaultName>
+ </Country>
+ </LC_INFO>
+ <LC_CTYPE>
+ <Separators>
+ <DateSeparator>.</DateSeparator>
+ <ThousandSeparator>.</ThousandSeparator>
+ <DecimalSeparator>,</DecimalSeparator>
+ <TimeSeparator>:</TimeSeparator>
+ <Time100SecSeparator>,</Time100SecSeparator>
+ <ListSeparator>;</ListSeparator>
+ <LongDateDayOfWeekSeparator>, </LongDateDayOfWeekSeparator>
+ <LongDateDaySeparator>. </LongDateDaySeparator>
+ <LongDateMonthSeparator> </LongDateMonthSeparator>
+ <LongDateYearSeparator> </LongDateYearSeparator>
+ </Separators>
+ <Markers>
+ <QuotationStart>‚</QuotationStart>
+ <QuotationEnd>‘</QuotationEnd>
+ <DoubleQuotationStart>„</DoubleQuotationStart>
+ <DoubleQuotationEnd>“</DoubleQuotationEnd>
+ </Markers>
+ <TimeAM>vĂŒĂ¶rm.</TimeAM>
+ <TimePM>naom.</TimePM>
+ <MeasurementSystem>metric</MeasurementSystem>
+ </LC_CTYPE>
+ <LC_FORMAT>
+ <FormatElement msgid="FixedFormatskey1" default="true" type="medium" usage="FIXED_NUMBER" formatindex="0">
+ <FormatCode>Standard</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="FixedFormatskey2" default="true" type="short" usage="FIXED_NUMBER" formatindex="1">
+ <FormatCode>0</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="FixedFormatskey3" default="false" type="medium" usage="FIXED_NUMBER" formatindex="2">
+ <FormatCode>0,00</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="FixedFormatskey4" default="false" type="short" usage="FIXED_NUMBER" formatindex="3">
+ <FormatCode>#.##0</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="FixedFormatskey5" default="false" type="medium" usage="FIXED_NUMBER" formatindex="4">
+ <FormatCode>#.##0,00</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="FixedFormatskey6" default="false" type="medium" usage="FIXED_NUMBER" formatindex="5">
+ <FormatCode>#.###,00</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="ScientificFormatskey1" default="true" type="medium" usage="SCIENTIFIC_NUMBER" formatindex="6">
+ <FormatCode>0,00E+000</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="ScientificFormatskey2" default="false" type="medium" usage="SCIENTIFIC_NUMBER" formatindex="7">
+ <FormatCode>0,00E+00</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="PercentFormatskey1" default="true" type="short" usage="PERCENT_NUMBER" formatindex="8">
+ <FormatCode>0%</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="PercentFormatskey2" default="true" type="long" usage="PERCENT_NUMBER" formatindex="9">
+ <FormatCode>0,00%</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="CurrencyFormatskey1" default="true" type="short" usage="CURRENCY" formatindex="12">
+ <FormatCode>#.##0 [$DM-407];-#.##0 [$DM-407]</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="CurrencyFormatskey2" default="false" type="medium" usage="CURRENCY" formatindex="13">
+ <FormatCode>#.##0,00 [$DM-407];-#.##0,00 [$DM-407]</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="CurrencyFormatskey3" default="false" type="medium" usage="CURRENCY" formatindex="14">
+ <FormatCode>#.##0 [$DM-407];[ROT]-#.##0 [$DM-407]</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="CurrencyFormatskey4" default="true" type="medium" usage="CURRENCY" formatindex="15">
+ <FormatCode>#.##0,00 [$DM-407];[ROT]-#.##0,00 [$DM-407]</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="CurrencyFormatskey5" default="false" type="medium" usage="CURRENCY" formatindex="16">
+ <FormatCode>#.##0,00 CCC</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="CurrencyFormatskey6" default="false" type="medium" usage="CURRENCY" formatindex="17">
+ <FormatCode>#.##0,-- [$DM-407];[ROT]-#.##0,-- [$DM-407]</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey1" default="true" type="short" usage="DATE" formatindex="18">
+ <FormatCode>DD.MM.YY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey9" default="true" type="long" usage="DATE" formatindex="19">
+ <FormatCode>NNNND. MMMM YYYY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey8" default="true" type="medium" usage="DATE" formatindex="20">
+ <FormatCode>DD.MM.YY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey7" default="false" type="medium" usage="DATE" formatindex="21">
+ <FormatCode>DD.MM.YYYY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey10" default="false" type="long" usage="DATE" formatindex="22">
+ <FormatCode>D. MMM YY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey11" default="false" type="long" usage="DATE" formatindex="23">
+ <FormatCode>D. MMM YYYY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey16" default="false" type="long" usage="DATE" formatindex="24">
+ <FormatCode>D. MMM. YYYY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey12" default="false" type="long" usage="DATE" formatindex="25">
+ <FormatCode>D. MMMM YYYY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey17" default="false" type="long" usage="DATE" formatindex="26">
+ <FormatCode>D. MMMM YYYY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey13" default="false" type="long" usage="DATE" formatindex="27">
+ <FormatCode>NN, D. MMM YY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey2" default="false" type="medium" usage="DATE" formatindex="28">
+ <FormatCode>NN DD.MMM YY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey14" default="false" type="long" usage="DATE" formatindex="29">
+ <FormatCode>NN, D. MMMM YYYY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey15" default="false" type="long" usage="DATE" formatindex="30">
+ <FormatCode>NNNND. MMMM YYYY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey18" default="false" type="short" usage="DATE" formatindex="31">
+ <FormatCode>MM-DD</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey19" default="false" type="medium" usage="DATE" formatindex="32">
+ <FormatCode>YY-MM-DD</FormatCode>
+ <DefaultName>ISO 8601 (EN 28601, DIN 5008)</DefaultName>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey20" default="false" type="medium" usage="DATE" formatindex="33">
+ <FormatCode>YYYY-MM-DD</FormatCode>
+ <DefaultName>ISO 8601 (EN 28601, DIN 5008)</DefaultName>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey3" default="false" type="medium" usage="DATE" formatindex="34">
+ <FormatCode>MM.YY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey4" default="false" type="medium" usage="DATE" formatindex="35">
+ <FormatCode>DD.MMM</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey5" default="false" type="medium" usage="DATE" formatindex="36">
+ <FormatCode>MMMM</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey6" default="false" type="medium" usage="DATE" formatindex="37">
+ <FormatCode>QQ YY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey21" default="false" type="medium" usage="DATE" formatindex="38">
+ <FormatCode>WW</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="TimeFormatskey1" default="true" type="short" usage="TIME" formatindex="39">
+ <FormatCode>HH:MM</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="TimeFormatskey2" default="true" type="medium" usage="TIME" formatindex="40">
+ <FormatCode>HH:MM:SS</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="TimeFormatskey3" default="false" type="short" usage="TIME" formatindex="41">
+ <FormatCode>HH:MM AM/PM</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="TimeFormatskey4" default="false" type="medium" usage="TIME" formatindex="42">
+ <FormatCode>HH:MM:SS AM/PM</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="TimeFormatskey5" default="false" type="medium" usage="TIME" formatindex="43">
+ <FormatCode>[HH]:MM:SS</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="TimeFormatskey6" default="false" type="short" usage="TIME" formatindex="44">
+ <FormatCode>MM:SS,00</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="TimeFormatskey7" default="false" type="medium" usage="TIME" formatindex="45">
+ <FormatCode>[HH]:MM:SS,00</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateTimeFormatskey1" default="true" type="medium" usage="DATE_TIME" formatindex="46">
+ <FormatCode>DD.MM.YY HH:MM</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateTimeFormatskey2" default="false" type="medium" usage="DATE_TIME" formatindex="47">
+ <FormatCode>DD.MM.YYYY HH:MM:SS</FormatCode>
+ </FormatElement>
+ </LC_FORMAT>
+ <LC_COLLATION>
+ <Collator default="true" unoid="alphanumeric" />
+ <Collator default="false" unoid="phonebook" />
+ <CollationOptions>
+ <TransliterationModules>IGNORE_CASE</TransliterationModules>
+ </CollationOptions>
+ </LC_COLLATION>
+ <LC_SEARCH ref="en_US"/>
+ <LC_INDEX>
+ <IndexKey phonetic="false" default="true" unoid="alphanumeric">A-Z</IndexKey>
+ <UnicodeScript>0</UnicodeScript>
+ <UnicodeScript>1</UnicodeScript>
+ <FollowPageWord>f.</FollowPageWord>
+ <FollowPageWord>ff.</FollowPageWord>
+ </LC_INDEX>
+ <LC_CALENDAR>
+ <Calendar unoid="gregorian" default="true">
+ <DaysOfWeek>
+ <Day>
+ <DayID>sun</DayID>
+ <DefaultAbbrvName>Sun</DefaultAbbrvName>
+ <DefaultFullName>Sundag</DefaultFullName>
+ </Day>
+ <Day>
+ <DayID>mon</DayID>
+ <DefaultAbbrvName>Mao</DefaultAbbrvName>
+ <DefaultFullName>Maondag</DefaultFullName>
+ </Day>
+ <Day>
+ <DayID>tue</DayID>
+ <DefaultAbbrvName>Din</DefaultAbbrvName>
+ <DefaultFullName>Dingsdag</DefaultFullName>
+ </Day>
+ <Day>
+ <DayID>wed</DayID>
+ <DefaultAbbrvName>Gun</DefaultAbbrvName>
+ <DefaultFullName>Gunsdag</DefaultFullName>
+ </Day>
+ <Day>
+ <DayID>thu</DayID>
+ <DefaultAbbrvName>Dun</DefaultAbbrvName>
+ <DefaultFullName>Dunnerdag</DefaultFullName>
+ </Day>
+ <Day>
+ <DayID>fri</DayID>
+ <DefaultAbbrvName>Fri</DefaultAbbrvName>
+ <DefaultFullName>Fridag</DefaultFullName>
+ </Day>
+ <Day>
+ <DayID>sat</DayID>
+ <DefaultAbbrvName>Sao</DefaultAbbrvName>
+ <DefaultFullName>Saoterdag</DefaultFullName>
+ </Day>
+ </DaysOfWeek>
+ <MonthsOfYear>
+ <Month>
+ <MonthID>jan</MonthID>
+ <DefaultAbbrvName>Har</DefaultAbbrvName>
+ <DefaultFullName>Harremaond</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>feb</MonthID>
+ <DefaultAbbrvName>Ies</DefaultAbbrvName>
+ <DefaultFullName>Iesmaond</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>mar</MonthID>
+ <DefaultAbbrvName>MĂ€t</DefaultAbbrvName>
+ <DefaultFullName>MĂ€ten</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>apr</MonthID>
+ <DefaultAbbrvName>Pri</DefaultAbbrvName>
+ <DefaultFullName>Prillen</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>may</MonthID>
+ <DefaultAbbrvName>Mai</DefaultAbbrvName>
+ <DefaultFullName>Maimaond</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>jun</MonthID>
+ <DefaultAbbrvName>Brk</DefaultAbbrvName>
+ <DefaultFullName>Braokmaond</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>jul</MonthID>
+ <DefaultAbbrvName>Hai</DefaultAbbrvName>
+ <DefaultFullName>Haimaond</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>aug</MonthID>
+ <DefaultAbbrvName>Aar</DefaultAbbrvName>
+ <DefaultFullName>Aarntmaond</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>sep</MonthID>
+ <DefaultAbbrvName>HiÀ</DefaultAbbrvName>
+ <DefaultFullName>HiÀrfstmaond</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>oct</MonthID>
+ <DefaultAbbrvName>Stm</DefaultAbbrvName>
+ <DefaultFullName>Saotmaond</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>nov</MonthID>
+ <DefaultAbbrvName>Nië</DefaultAbbrvName>
+ <DefaultFullName>Niëwelmaond</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>dec</MonthID>
+ <DefaultAbbrvName>Kri</DefaultAbbrvName>
+ <DefaultFullName>Kristmaond</DefaultFullName>
+ </Month>
+ </MonthsOfYear>
+ <Eras>
+ <Era>
+ <EraID>bc</EraID>
+ <DefaultAbbrvName>v. Kr.</DefaultAbbrvName>
+ <DefaultFullName>vĂŒĂ¶r Kristus</DefaultFullName>
+ </Era>
+ <Era>
+ <EraID>ad</EraID>
+ <DefaultAbbrvName>n. Kr.</DefaultAbbrvName>
+ <DefaultFullName>nao Kristus</DefaultFullName>
+ </Era>
+ </Eras>
+ <StartDayOfWeek>
+ <DayID>mon</DayID>
+ </StartDayOfWeek>
+ <MinimalDaysInFirstWeek>4</MinimalDaysInFirstWeek>
+ </Calendar>
+ </LC_CALENDAR>
+ <LC_CURRENCY>
+ <Currency default="true" usedInCompatibleFormatCodes="false">
+ <CurrencyID>EUR</CurrencyID>
+ <CurrencySymbol>€</CurrencySymbol>
+ <BankSymbol>EUR</BankSymbol>
+ <CurrencyName>Euro</CurrencyName>
+ <DecimalPlaces>2</DecimalPlaces>
+ </Currency>
+ <Currency default="false" usedInCompatibleFormatCodes="true">
+ <CurrencyID>DEM</CurrencyID>
+ <CurrencySymbol>DM</CurrencySymbol>
+ <BankSymbol>DEM</BankSymbol>
+ <CurrencyName>Deutsche Mark</CurrencyName>
+ <DecimalPlaces>2</DecimalPlaces>
+ </Currency>
+ </LC_CURRENCY>
+ <LC_TRANSLITERATION ref="en_US"/>
+ <LC_MISC>
+ <BreakIteratorRules>
+ <EditMode/>
+ <DictionaryMode>dict_word_prepostdash</DictionaryMode>
+ <WordCountMode/>
+ <CharacterMode/>
+ <LineMode/>
+ </BreakIteratorRules>
+ <ReservedWords>
+ <trueWord>waor</trueWord>
+ <falseWord>falsk</falseWord>
+ <quarter1Word>1. Veerdeljaor</quarter1Word>
+ <quarter2Word>2. Veerdeljaor</quarter2Word>
+ <quarter3Word>3. Veerdeljaor</quarter3Word>
+ <quarter4Word>4. Veerdeljaor</quarter4Word>
+ <aboveWord>buowen</aboveWord>
+ <belowWord>unnen</belowWord>
+ <quarter1Abbreviation>VJ1</quarter1Abbreviation>
+ <quarter2Abbreviation>VJ2</quarter2Abbreviation>
+ <quarter3Abbreviation>VJ3</quarter3Abbreviation>
+ <quarter4Abbreviation>VJ4</quarter4Abbreviation>
+ </ReservedWords>
+ </LC_MISC>
+ <LC_NumberingLevel ref="en_US"/>
+ <LC_OutLineNumberingLevel ref="en_US"/>
+</Locale>
diff --git a/i18npool/source/localedata/data/tt_RU.xml b/i18npool/source/localedata/data/tt_RU.xml
new file mode 100644
index 000000000000..24451888e2c3
--- /dev/null
+++ b/i18npool/source/localedata/data/tt_RU.xml
@@ -0,0 +1,354 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE Locale SYSTEM 'locale.dtd'>
+<!--***********************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ ***********************************************************-->
+<Locale versionDTD="2.0.3" allowUpdateFromCLDR="no" version="1.2">
+ <LC_INFO>
+ <Language>
+ <LangID>tt</LangID>
+ <DefaultName>Tatar</DefaultName>
+ </Language>
+ <Country>
+ <CountryID>RU</CountryID>
+ <DefaultName>Russia</DefaultName>
+ </Country>
+ </LC_INFO>
+ <LC_CTYPE>
+ <Separators>
+ <DateSeparator>.</DateSeparator>
+ <ThousandSeparator> </ThousandSeparator>
+ <DecimalSeparator>,</DecimalSeparator>
+ <TimeSeparator>:</TimeSeparator>
+ <Time100SecSeparator>,</Time100SecSeparator>
+ <ListSeparator>;</ListSeparator>
+ <LongDateDayOfWeekSeparator> </LongDateDayOfWeekSeparator>
+ <LongDateDaySeparator> </LongDateDaySeparator>
+ <LongDateMonthSeparator> </LongDateMonthSeparator>
+ <LongDateYearSeparator> Đ”.</LongDateYearSeparator>
+ </Separators>
+ <Markers>
+ <QuotationStart>„</QuotationStart>
+ <QuotationEnd>“</QuotationEnd>
+ <DoubleQuotationStart>«</DoubleQuotationStart>
+ <DoubleQuotationEnd>»</DoubleQuotationEnd>
+ </Markers>
+ <TimeAM>ĐșÓ©ĐœĐŽĐ”Đ·</TimeAM>
+ <TimePM>Đșоч</TimePM>
+ <MeasurementSystem>metric</MeasurementSystem>
+ </LC_CTYPE>
+ <LC_FORMAT>
+ <FormatElement msgid="FixedFormatskey1" default="true" type="medium" usage="FIXED_NUMBER" formatindex="0">
+ <FormatCode>Standard</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="FixedFormatskey2" default="true" type="short" usage="FIXED_NUMBER" formatindex="1">
+ <FormatCode>0</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="FixedFormatskey3" default="false" type="medium" usage="FIXED_NUMBER" formatindex="2">
+ <FormatCode>0,00</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="FixedFormatskey4" default="false" type="short" usage="FIXED_NUMBER" formatindex="3">
+ <FormatCode># ##0</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="FixedFormatskey5" default="false" type="medium" usage="FIXED_NUMBER" formatindex="4">
+ <FormatCode># ##0,00</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="FixedFormatskey6" default="false" type="medium" usage="FIXED_NUMBER" formatindex="5">
+ <FormatCode># ###,00</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="ScientificFormatskey1" default="true" type="medium" usage="SCIENTIFIC_NUMBER" formatindex="6">
+ <FormatCode>0,00E+000</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="ScientificFormatskey2" default="false" type="medium" usage="SCIENTIFIC_NUMBER" formatindex="7">
+ <FormatCode>0,00E+00</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="PercentFormatskey1" default="true" type="short" usage="PERCENT_NUMBER" formatindex="8">
+ <FormatCode>0%</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="PercentFormatskey2" default="true" type="long" usage="PERCENT_NUMBER" formatindex="9">
+ <FormatCode>0,00%</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="CurrencyFormatskey1" default="true" type="short" usage="CURRENCY" formatindex="12">
+ <FormatCode># ##0 [$р.-444];-# ##0 [$р.-444]</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="CurrencyFormatskey2" default="false" type="medium" usage="CURRENCY" formatindex="13">
+ <FormatCode># ##0,00 [$р.-444];-# ##0,00 [$р.-444]</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="CurrencyFormatskey3" default="false" type="medium" usage="CURRENCY" formatindex="14">
+ <FormatCode># ##0 [$р.-444];[RED]-# ##0 [$р.-444]</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="CurrencyFormatskey4" default="true" type="medium" usage="CURRENCY" formatindex="15">
+ <FormatCode># ##0,00 [$р.-444];[RED]-# ##0,00 [$р.-444]</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="CurrencyFormatskey5" default="false" type="medium" usage="CURRENCY" formatindex="16">
+ <FormatCode># ##0,00 CCC</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="CurrencyFormatskey6" default="false" type="medium" usage="CURRENCY" formatindex="17">
+ <FormatCode># ##0,-- [$р.-444];[RED]-# ##0,-- [$р.-444]</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey1" default="true" type="short" usage="DATE" formatindex="18">
+ <FormatCode>D.M.YY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey9" default="true" type="long" usage="DATE" formatindex="19">
+ <FormatCode>NNNNDD MMMM, YYYY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey8" default="true" type="medium" usage="DATE" formatindex="20">
+ <FormatCode>DD.MM.YY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey7" default="false" type="medium" usage="DATE" formatindex="21">
+ <FormatCode>DD.MM.YYYY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey10" default="false" type="long" usage="DATE" formatindex="22">
+ <FormatCode>D MMM, YY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey11" default="false" type="long" usage="DATE" formatindex="23">
+ <FormatCode>D MMM, YYYY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey16" default="false" type="long" usage="DATE" formatindex="24">
+ <FormatCode>D. MMM. YYYY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey12" default="false" type="long" usage="DATE" formatindex="25">
+ <FormatCode>D MMMM, YYYY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey17" default="false" type="long" usage="DATE" formatindex="26">
+ <FormatCode>D. MMMM YYYY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey13" default="false" type="long" usage="DATE" formatindex="27">
+ <FormatCode>NN, D MMM, YY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey2" default="false" type="medium" usage="DATE" formatindex="28">
+ <FormatCode>NN DD.MMM YY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey14" default="false" type="long" usage="DATE" formatindex="29">
+ <FormatCode>NN, D MMMM, YYYY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey15" default="false" type="long" usage="DATE" formatindex="30">
+ <FormatCode>NNNND MMMM, YYYY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey18" default="false" type="short" usage="DATE" formatindex="31">
+ <FormatCode>MM-DD</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey19" default="false" type="medium" usage="DATE" formatindex="32">
+ <FormatCode>YY-MM-DD</FormatCode>
+ <DefaultName>ISO 8601</DefaultName>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey20" default="false" type="medium" usage="DATE" formatindex="33">
+ <FormatCode>YYYY-MM-DD</FormatCode>
+ <DefaultName>ISO 8601</DefaultName>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey3" default="false" type="medium" usage="DATE" formatindex="34">
+ <FormatCode>MM.YY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey4" default="false" type="medium" usage="DATE" formatindex="35">
+ <FormatCode>DD.MMM</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey5" default="false" type="medium" usage="DATE" formatindex="36">
+ <FormatCode>MMMM</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey6" default="false" type="medium" usage="DATE" formatindex="37">
+ <FormatCode>QQ YY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey21" default="false" type="medium" usage="DATE" formatindex="38">
+ <FormatCode>WW</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="TimeFormatskey1" default="true" type="short" usage="TIME" formatindex="39">
+ <FormatCode>HH:MM</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="TimeFormatskey2" default="true" type="medium" usage="TIME" formatindex="40">
+ <FormatCode>HH:MM:SS</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="TimeFormatskey3" default="false" type="short" usage="TIME" formatindex="41">
+ <FormatCode>HH:MM AM/PM</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="TimeFormatskey4" default="false" type="medium" usage="TIME" formatindex="42">
+ <FormatCode>HH:MM:SS AM/PM</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="TimeFormatskey5" default="false" type="medium" usage="TIME" formatindex="43">
+ <FormatCode>[HH]:MM:SS</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="TimeFormatskey6" default="false" type="short" usage="TIME" formatindex="44">
+ <FormatCode>MM:SS,00</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="TimeFormatskey7" default="false" type="medium" usage="TIME" formatindex="45">
+ <FormatCode>[HH]:MM:SS,00</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateTimeFormatskey1" default="true" type="medium" usage="DATE_TIME" formatindex="46">
+ <FormatCode>DD.MM.YY HH:MM</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateTimeFormatskey2" default="false" type="medium" usage="DATE_TIME" formatindex="47">
+ <FormatCode>DD.MM.YYYY HH:MM:SS</FormatCode>
+ </FormatElement>
+ </LC_FORMAT>
+ <LC_COLLATION ref="en_US" />
+ <LC_SEARCH ref="en_US"/>
+ <LC_INDEX>
+ <IndexKey phonetic="false" default="true" unoid="alphanumeric">А-ĐŻ Ә Òą Òź Óš Òș Җ</IndexKey>
+ <UnicodeScript>8</UnicodeScript>
+ <FollowPageWord>p.</FollowPageWord>
+ <FollowPageWord>pp.</FollowPageWord>
+ </LC_INDEX>
+ <LC_CALENDAR>
+ <Calendar unoid="gregorian" default="true">
+ <DaysOfWeek>
+ <Day>
+ <DayID>sun</DayID>
+ <DefaultAbbrvName>ĐŻĐș</DefaultAbbrvName>
+ <DefaultFullName>яĐșŃˆÓ™ĐŒĐ±Đ”</DefaultFullName>
+ </Day>
+ <Day>
+ <DayID>mon</DayID>
+ <DefaultAbbrvName>Đ”ÒŻ</DefaultAbbrvName>
+ <DefaultFullName>ĐŽÒŻŃˆÓ™ĐŒĐ±Đ”</DefaultFullName>
+ </Day>
+ <Day>
+ <DayID>tue</DayID>
+ <DefaultAbbrvName>Хш</DefaultAbbrvName>
+ <DefaultFullName>ŃĐžŃˆÓ™ĐŒĐ±Đ”</DefaultFullName>
+ </Day>
+ <Day>
+ <DayID>wed</DayID>
+ <DefaultAbbrvName>Чр</DefaultAbbrvName>
+ <DefaultFullName>Ń‡Ó™Ń€ŃˆÓ™ĐŒĐ±Đ”</DefaultFullName>
+ </Day>
+ <Day>
+ <DayID>thu</DayID>
+ <DefaultAbbrvName>ĐŸĐœ</DefaultAbbrvName>
+ <DefaultFullName>ĐżÓ™ĐœÒ—Đ”ŃˆÓ™ĐŒĐ±Đ”</DefaultFullName>
+ </Day>
+ <Day>
+ <DayID>fri</DayID>
+ <DefaultAbbrvName>Ò–ĐŒ</DefaultAbbrvName>
+ <DefaultFullName>Ò—ĐŸĐŒĐłĐ°</DefaultFullName>
+ </Day>
+ <Day>
+ <DayID>sat</DayID>
+ <DefaultAbbrvName>ĐšĐŒ</DefaultAbbrvName>
+ <DefaultFullName>ŃˆĐžĐŒĐ±Ó™</DefaultFullName>
+ </Day>
+ </DaysOfWeek>
+ <MonthsOfYear>
+ <Month>
+ <MonthID>jan</MonthID>
+ <DefaultAbbrvName>гыĐčĐœ</DefaultAbbrvName>
+ <DefaultFullName>ГыĐčĐœĐČар</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>feb</MonthID>
+ <DefaultAbbrvName>Ń„Đ”ĐČ</DefaultAbbrvName>
+ <DefaultFullName>ЀДĐČŃ€Đ°Đ»ŃŒ</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>mar</MonthID>
+ <DefaultAbbrvName>ĐŒĐ°Ń€</DefaultAbbrvName>
+ <DefaultFullName>Март</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>apr</MonthID>
+ <DefaultAbbrvName>апр</DefaultAbbrvName>
+ <DefaultFullName>ĐĐżŃ€Đ”Đ»ŃŒ</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>may</MonthID>
+ <DefaultAbbrvName>ĐŒĐ°Đč</DefaultAbbrvName>
+ <DefaultFullName>МаĐč</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>jun</MonthID>
+ <DefaultAbbrvName>ĐžŃŽĐœ</DefaultAbbrvName>
+ <DefaultFullName>Đ˜ŃŽĐœŃŒ</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>jul</MonthID>
+ <DefaultAbbrvName>Оюл</DefaultAbbrvName>
+ <DefaultFullName>Đ˜ŃŽĐ»ŃŒ</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>aug</MonthID>
+ <DefaultAbbrvName>Đ°ĐČĐł</DefaultAbbrvName>
+ <DefaultFullName>АĐČгуст</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>sep</MonthID>
+ <DefaultAbbrvName>ŃĐ”Đœ</DefaultAbbrvName>
+ <DefaultFullName>ĐĄĐ”ĐœŃ‚ŃĐ±Ń€ŃŒ</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>oct</MonthID>
+ <DefaultAbbrvName>ĐŸĐșт</DefaultAbbrvName>
+ <DefaultFullName>ОĐșŃ‚ŃĐ±Ń€ŃŒ</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>nov</MonthID>
+ <DefaultAbbrvName>ĐœĐŸŃ</DefaultAbbrvName>
+ <DefaultFullName>ĐĐŸŃĐ±Ń€ŃŒ</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>dec</MonthID>
+ <DefaultAbbrvName>ĐŽĐ”Đș</DefaultAbbrvName>
+ <DefaultFullName>ДДĐșĐ°Đ±Ń€ŃŒ</DefaultFullName>
+ </Month>
+ </MonthsOfYear>
+ <Eras>
+ <Era>
+ <EraID>bc</EraID>
+ <DefaultAbbrvName>б.ч. ĐșаЮәр</DefaultAbbrvName>
+ <DefaultFullName>б.ч. ĐșаЮәр</DefaultFullName>
+ </Era>
+ <Era>
+ <EraID>ad</EraID>
+ <DefaultAbbrvName>б.ч.</DefaultAbbrvName>
+ <DefaultFullName>б.ч.</DefaultFullName>
+ </Era>
+ </Eras>
+ <StartDayOfWeek>
+ <DayID>mon</DayID>
+ </StartDayOfWeek>
+ <MinimalDaysInFirstWeek>1</MinimalDaysInFirstWeek>
+ </Calendar>
+ </LC_CALENDAR>
+ <LC_CURRENCY>
+ <Currency default="true" usedInCompatibleFormatCodes="true">
+ <CurrencyID>RUB</CurrencyID>
+ <CurrencySymbol>Ń€ŃƒĐ±.</CurrencySymbol>
+ <BankSymbol>RUB</BankSymbol>
+ <CurrencyName>РәсәĐč ŃŃƒĐŒŃ‹</CurrencyName>
+ <DecimalPlaces>2</DecimalPlaces>
+ </Currency>
+ </LC_CURRENCY>
+ <LC_TRANSLITERATION ref="en_US"/>
+ <LC_MISC>
+ <ReservedWords>
+ <trueWord>Ń‡Ń‹Đœ</trueWord>
+ <falseWord>ŃĐ»ĐłĐ°Đœ</falseWord>
+ <quarter1Word>1 ĐœŃ‡Đ” чОрДĐș</quarter1Word>
+ <quarter2Word>2 ĐœŃ‡Đ” чОрДĐș</quarter2Word>
+ <quarter3Word>3 ĐœŃ‡Đ” чОрДĐș</quarter3Word>
+ <quarter4Word>4 ĐœŃ‡Đ” чОрДĐș</quarter4Word>
+ <aboveWord>өсĐșә</aboveWord>
+ <belowWord>асĐșĐ°</belowWord>
+ <quarter1Abbreviation>1 чр.</quarter1Abbreviation>
+ <quarter2Abbreviation>2 чр.</quarter2Abbreviation>
+ <quarter3Abbreviation>3 чр.</quarter3Abbreviation>
+ <quarter4Abbreviation>4 чр.</quarter4Abbreviation>
+ </ReservedWords>
+ </LC_MISC>
+ <LC_NumberingLevel ref="en_US"/>
+ <LC_OutLineNumberingLevel ref="en_US"/>
+</Locale>
diff --git a/i18npool/source/localedata/localedata.cxx b/i18npool/source/localedata/localedata.cxx
index ecfe0728e909..7443742b88a4 100644
--- a/i18npool/source/localedata/localedata.cxx
+++ b/i18npool/source/localedata/localedata.cxx
@@ -124,11 +124,13 @@ static const struct {
{ "no_NO", lcl_DATA_EURO },
{ "nn_NO", lcl_DATA_EURO },
{ "nb_NO", lcl_DATA_EURO },
+ { "nds_DE", lcl_DATA_EURO },
{ "pl_PL", lcl_DATA_EURO },
{ "pt_BR", lcl_DATA_EURO },
{ "pt_PT", lcl_DATA_EURO },
{ "ru_RU", lcl_DATA_EURO },
{ "tr_TR", lcl_DATA_EURO },
+ { "tt_RU", lcl_DATA_EURO },
{ "et_EE", lcl_DATA_EURO },
{ "lb_LU", lcl_DATA_EURO },
{ "lt_LT", lcl_DATA_EURO },
diff --git a/icc/README b/icc/README
index 672371d411ad..f6a559ed24c8 100644
--- a/icc/README
+++ b/icc/README
@@ -26,7 +26,7 @@ http://www.color.org
Notes for porters
=================
-the endianess and other platform specific configuration
+the endianness and other platform specific configuration
are in:
<build>/misc/build/SampleICC-1.3.2/IccProfLib/IccProfLibConf.h
diff --git a/icu/createmak.pl b/icu/createmak.pl
index a41094aed525..d715eeac677c 100644
--- a/icu/createmak.pl
+++ b/icu/createmak.pl
@@ -941,7 +941,7 @@ sub create_allinone_all_mak #09.02.2009 09:22
$allinonehelpstring = $prjdir;
$allinonehelpstring =~ s/^\.+\\//; # remove ..\
my $backcount = "";
- while ($allinonehelpstring=~ /.+\\/g) # counts the occuring \
+ while ($allinonehelpstring=~ /.+\\/g) # counts the occurring \
{
$backcount .= "..\\";
}
diff --git a/idl/source/objects/object.cxx b/idl/source/objects/object.cxx
index ebb3f9e834bc..6f08cf0b0cb1 100644
--- a/idl/source/objects/object.cxx
+++ b/idl/source/objects/object.cxx
@@ -296,7 +296,7 @@ void SvMetaClass::ReadContextSvIdl( SvIdlDataBase & rBase,
if( xAutomationInterface.Is() )
{
// Fehler setzen
- rBase.SetError( "Automation allready set",
+ rBase.SetError( "Automation already set",
rInStm.GetToken() );
rBase.WriteError( rInStm );
}
diff --git a/idlc/inc/idlc/errorhandler.hxx b/idlc/inc/idlc/errorhandler.hxx
index 202b357f063f..816584ab502f 100644
--- a/idlc/inc/idlc/errorhandler.hxx
+++ b/idlc/inc/idlc/errorhandler.hxx
@@ -52,7 +52,7 @@ enum ErrorCode
EIDL_CONSTANT_EXPECTED, // We got something else..
EIDL_NAME_CASE_ERROR, // Spelling differences found
EIDL_ENUM_VAL_EXPECTED, // Expected an enumerator
- EIDL_ENUM_VAL_NOT_FOUND, // Didnt find an enumerator with that name
+ EIDL_ENUM_VAL_NOT_FOUND, // Didn't find an enumerator with that name
EIDL_EVAL_ERROR, // Error in evaluating expression
EIDL_AMBIGUOUS, // Ambiguous name definition
EIDL_DECL_NOT_DEFINED, // Forward declared but never defined
@@ -115,7 +115,7 @@ public:
// Report a syntax error in IDL input
void syntaxError(ParseState state, sal_Int32 lineNumber, const sal_Char* errmsg);
- // Report an unsuccesful coercion attempt
+ // Report an unsuccessful coercion attempt
void coercionError(AstExpression *pExpr, ExprType et);
// Report a failed name lookup attempt
diff --git a/idlc/source/astexpression.cxx b/idlc/source/astexpression.cxx
index a2652bfa59ec..8d97bb1742e3 100644
--- a/idlc/source/astexpression.cxx
+++ b/idlc/source/astexpression.cxx
@@ -1255,5 +1255,5 @@ const sal_Char* SAL_CALL exprTypeToString(ExprType t)
return "none";
}
- return ("unkown");
+ return ("unknown");
}
diff --git a/idlc/source/errorhandler.cxx b/idlc/source/errorhandler.cxx
index 359bd400422d..c4d95276c2ba 100644
--- a/idlc/source/errorhandler.cxx
+++ b/idlc/source/errorhandler.cxx
@@ -180,7 +180,7 @@ static const sal_Char* warningCodeToMessage(WarningCode wCode)
case WIDL_WRONG_NAMING_CONV:
return "type or identifier doesn't fulfill the UNO naming convention: ";
}
- return "unkown warning";
+ return "unknown warning";
}
static const sal_Char* parseStateToMessage(ParseState state)
diff --git a/idlc/source/options.cxx b/idlc/source/options.cxx
index 567b6e4e4972..2033df49164e 100644
--- a/idlc/source/options.cxx
+++ b/idlc/source/options.cxx
@@ -30,6 +30,28 @@
#include "rtl/string.hxx"
#include "rtl/strbuf.hxx"
+#include "rtl/ustring.hxx"
+#include "osl/file.hxx"
+
+#ifdef WNT
+# include <windows.h>
+#endif
+
+/*
+#ifndef WIN32_LEAN_AND_MEAN
+# define WIN32_LEAN_AND_MEAN
+# ifdef _MSC_VER
+# pragma warning(push,1)
+# endif
+# include <windows.h>
+# ifdef _MSC_VER
+# pragma warning(pop)
+# endif
+# include <tchar.h>
+# undef WIN32_LEAN_AND_MEAN
+#endif
+*/
+
#include <stdio.h>
#include <string.h>
@@ -182,6 +204,28 @@ bool Options::setOption(char const * option, std::string const & rArg)
return (result);
}
+#ifdef WNT
+/* Helper functiopn to convert windows paths including spaces, brackets etc. into
+ a windows short Url. The ucpp preprocessor has problems with such paths and returns
+ with error.
+*/
+OString convertIncPathtoShortWindowsPath(const OString& incPath) {
+ rtl::OUString path = OStringToOUString(incPath, RTL_TEXTENCODING_UTF8);
+
+ std::vector<sal_Unicode> vec(path.getLength() + 1);
+ //GetShortPathNameW only works if the file can be found!
+ const DWORD len = GetShortPathNameW(
+ reinterpret_cast<LPCWSTR>(path.getStr()), reinterpret_cast<LPWSTR>(&vec[0]), path.getLength() + 1);
+
+ rtl::OUString ret = rtl::OUString(&vec[0], len);
+
+ if (len > 0)
+ return OUStringToOString(ret, RTL_TEXTENCODING_UTF8);
+
+ return incPath;
+}
+#endif
+
bool Options::initOptions(std::vector< std::string > & rArgs) throw(IllegalArgument)
{
std::vector< std::string >::const_iterator first = rArgs.begin(), last = rArgs.end();
@@ -225,7 +269,15 @@ bool Options::initOptions(std::vector< std::string > & rArgs) throw(IllegalArgum
sal_Int32 k = 0;
do
{
- OStringBuffer token; token.append("-I"); token.append(param.getToken(0, ';', k));
+ OStringBuffer token;
+ token.append("-I");
+#ifdef WNT
+ rtl::OString incpath = convertIncPathtoShortWindowsPath(param.getToken(0, ';', k));
+#else
+ rtl::OString incpath = param.getToken(0, ';', k);
+#endif
+ token.append(incpath);
+ //token.append(param.getToken(0, ';', k));
if (buffer.getLength() > 0)
buffer.append(' ');
buffer.append(token);
diff --git a/idlc/test/struct.idl b/idlc/test/struct.idl
index dff641613ff6..cbcfd0c0bd5b 100644
--- a/idlc/test/struct.idl
+++ b/idlc/test/struct.idl
@@ -38,7 +38,7 @@ typedef sequence< long > Id;
//};
/** bla
- BaseStruct defines an * intial struct
+ BaseStruct defines an * initial struct
*/
struct BaseStruct
{
diff --git a/idlc/test/typelookup.idl b/idlc/test/typelookup.idl
index 46d05a9ed05e..2c70bc9c88b2 100644
--- a/idlc/test/typelookup.idl
+++ b/idlc/test/typelookup.idl
@@ -38,7 +38,7 @@ module test
{
/** bla
- BaseStruct defines an * intial struct
+ BaseStruct defines an * initial struct
*/
struct BaseStruct
{
diff --git a/instsetoo_native/inc_ooolangpack/windows/msi_templates/_Validat.idt b/instsetoo_native/inc_ooolangpack/windows/msi_templates/_Validat.idt
index 4098f92c3578..887c31c02202 100644
--- a/instsetoo_native/inc_ooolangpack/windows/msi_templates/_Validat.idt
+++ b/instsetoo_native/inc_ooolangpack/windows/msi_templates/_Validat.idt
@@ -112,7 +112,7 @@ CreateFolder Component_ N Component 1 Identifier Foreign key into the Compone
CreateFolder Directory_ N Directory 1 Identifier Primary key, could be foreign key into the Directory table.
CustomAction Action N Identifier Primary key, name of action, normally appears in sequence table unless private use.
CustomAction Source Y CustomSource The table reference of the source of the code.
-CustomAction Target Y Formatted Excecution parameter, depends on the type of custom action
+CustomAction Target Y Formatted Execution parameter, depends on the type of custom action
CustomAction Type N 1 32767 The numeric custom action type, consisting of source location, code type, entry, option flags.
Dialog Attributes Y 0 2147483647 A 32-bit word that specifies the attribute flags to be applied to this dialog.
Dialog Control_Cancel Y Control 2 Identifier Defines the cancel control. Hitting escape or clicking on the close icon on the dialog is equivalent to pushing this button.
diff --git a/instsetoo_native/inc_openoffice/windows/msi_templates/_Validat.idt b/instsetoo_native/inc_openoffice/windows/msi_templates/_Validat.idt
index 4098f92c3578..887c31c02202 100644
--- a/instsetoo_native/inc_openoffice/windows/msi_templates/_Validat.idt
+++ b/instsetoo_native/inc_openoffice/windows/msi_templates/_Validat.idt
@@ -112,7 +112,7 @@ CreateFolder Component_ N Component 1 Identifier Foreign key into the Compone
CreateFolder Directory_ N Directory 1 Identifier Primary key, could be foreign key into the Directory table.
CustomAction Action N Identifier Primary key, name of action, normally appears in sequence table unless private use.
CustomAction Source Y CustomSource The table reference of the source of the code.
-CustomAction Target Y Formatted Excecution parameter, depends on the type of custom action
+CustomAction Target Y Formatted Execution parameter, depends on the type of custom action
CustomAction Type N 1 32767 The numeric custom action type, consisting of source location, code type, entry, option flags.
Dialog Attributes Y 0 2147483647 A 32-bit word that specifies the attribute flags to be applied to this dialog.
Dialog Control_Cancel Y Control 2 Identifier Defines the cancel control. Hitting escape or clicking on the close icon on the dialog is equivalent to pushing this button.
diff --git a/instsetoo_native/inc_sdkoo/windows/msi_templates/_Validat.idt b/instsetoo_native/inc_sdkoo/windows/msi_templates/_Validat.idt
index 4098f92c3578..887c31c02202 100644
--- a/instsetoo_native/inc_sdkoo/windows/msi_templates/_Validat.idt
+++ b/instsetoo_native/inc_sdkoo/windows/msi_templates/_Validat.idt
@@ -112,7 +112,7 @@ CreateFolder Component_ N Component 1 Identifier Foreign key into the Compone
CreateFolder Directory_ N Directory 1 Identifier Primary key, could be foreign key into the Directory table.
CustomAction Action N Identifier Primary key, name of action, normally appears in sequence table unless private use.
CustomAction Source Y CustomSource The table reference of the source of the code.
-CustomAction Target Y Formatted Excecution parameter, depends on the type of custom action
+CustomAction Target Y Formatted Execution parameter, depends on the type of custom action
CustomAction Type N 1 32767 The numeric custom action type, consisting of source location, code type, entry, option flags.
Dialog Attributes Y 0 2147483647 A 32-bit word that specifies the attribute flags to be applied to this dialog.
Dialog Control_Cancel Y Control 2 Identifier Defines the cancel control. Hitting escape or clicking on the close icon on the dialog is equivalent to pushing this button.
diff --git a/instsetoo_native/inc_ure/windows/msi_templates/_Validat.idt b/instsetoo_native/inc_ure/windows/msi_templates/_Validat.idt
index 4098f92c3578..887c31c02202 100644
--- a/instsetoo_native/inc_ure/windows/msi_templates/_Validat.idt
+++ b/instsetoo_native/inc_ure/windows/msi_templates/_Validat.idt
@@ -112,7 +112,7 @@ CreateFolder Component_ N Component 1 Identifier Foreign key into the Compone
CreateFolder Directory_ N Directory 1 Identifier Primary key, could be foreign key into the Directory table.
CustomAction Action N Identifier Primary key, name of action, normally appears in sequence table unless private use.
CustomAction Source Y CustomSource The table reference of the source of the code.
-CustomAction Target Y Formatted Excecution parameter, depends on the type of custom action
+CustomAction Target Y Formatted Execution parameter, depends on the type of custom action
CustomAction Type N 1 32767 The numeric custom action type, consisting of source location, code type, entry, option flags.
Dialog Attributes Y 0 2147483647 A 32-bit word that specifies the attribute flags to be applied to this dialog.
Dialog Control_Cancel Y Control 2 Identifier Defines the cancel control. Hitting escape or clicking on the close icon on the dialog is equivalent to pushing this button.
diff --git a/instsetoo_native/util/openoffice.lst b/instsetoo_native/util/openoffice.lst
index 4ed8f31fcd7b..b8125cb19796 100644
--- a/instsetoo_native/util/openoffice.lst
+++ b/instsetoo_native/util/openoffice.lst
@@ -5,9 +5,9 @@ Globals
variables
{
APACHEPROJECTNAME Apache OpenOffice
- OOOBASEVERSION 4.1
- OOOPACKAGEVERSION 4.1.0
- UREPACKAGEVERSION 4.1.0
+ OOOBASEVERSION 4.2
+ OOOPACKAGEVERSION 4.2.0
+ UREPACKAGEVERSION 4.2.0
URELAYERVERSION 1
BASISROOTNAME OpenOffice
UNIXBASISROOTNAME openoffice
@@ -39,9 +39,9 @@ Globals
OOOXMLFILEFORMATNAME OpenOffice.org XML
OOOXMLFILEFORMATVERSION 1.0
WRITERCOMPATIBILITYVERSIONOOO11 OpenOffice.org 1.1
- SERVICETAG_PRODUCTNAME Apache OpenOffice 4.1
- SERVICETAG_PRODUCTVERSION 4.1
- SERVICETAG_PARENTNAME Apache OpenOffice 4.1
+ SERVICETAG_PRODUCTNAME Apache OpenOffice 4.2
+ SERVICETAG_PRODUCTVERSION 4.2
+ SERVICETAG_PARENTNAME Apache OpenOffice 4.2
SERVICETAG_SOURCE {buildsource}{minor}(Build:{buildid})
SERVICETAG_URN urn:uuid:500061aa-5666-11e0-8e00-080020a9ed93
REGISTRATION_HOST https://registration.openoffice.org
@@ -59,7 +59,7 @@ Apache_OpenOffice
{
FULLPRODUCTNAME Apache OpenOffice
PRODUCTNAME OpenOffice
- PRODUCTVERSION 4.1.0
+ PRODUCTVERSION 4.2.0
PRODUCTEXTENSION
LONG_PRODUCTEXTENSION
SHORT_PRODUCTEXTENSION
@@ -67,15 +67,15 @@ Apache_OpenOffice
POSTVERSIONEXTENSIONUNIX
BRANDPACKAGEVERSION 4
USERDIRPRODUCTVERSION 4
- ABOUTBOXPRODUCTVERSION 4.1.0
- BASEPRODUCTVERSION 4.1
+ ABOUTBOXPRODUCTVERSION 4.2.0
+ BASEPRODUCTVERSION 4.2
PCPFILENAME openoffice.pcp
UPDATEURL https://ooo-updates.apache.org/aoonext/check.Update
ADD_INCLUDE_FILES cliureversion.mk,clioootypesversion.mk,userland.txt,version.lst
REMOVE_UPGRADE_CODE_FILE upgradecode_remove_ooo.txt
ADDSYSTEMINTEGRATION 1
EVAL
- PACKAGEVERSION 4.1.0
+ PACKAGEVERSION 4.2.0
PACKAGEREVISION {milestone}
LICENSENAME ALv2
GLOBALFILEGID gid_File_Lib_Vcl
@@ -120,7 +120,7 @@ Apache_OpenOffice_Dev
{
FULLPRODUCTNAME AOO-Developer-Build
PRODUCTNAME AOO-Developer-Build
- PRODUCTVERSION 4.1.0
+ PRODUCTVERSION 4.2.0
PRODUCTEXTENSION
LONG_PRODUCTEXTENSION
SHORT_PRODUCTEXTENSION
@@ -130,8 +130,8 @@ Apache_OpenOffice_Dev
POSTVERSIONEXTENSIONUNIX
BRANDPACKAGEVERSION 4
USERDIRPRODUCTVERSION 4
- ABOUTBOXPRODUCTVERSION 4.1.0
- BASEPRODUCTVERSION 4.1
+ ABOUTBOXPRODUCTVERSION 4.2.0
+ BASEPRODUCTVERSION 4.2
DEVELOPMENTPRODUCT 1
BASISPACKAGEPREFIX aoodev
UREPACKAGEPREFIX aoodev
@@ -140,7 +140,7 @@ Apache_OpenOffice_Dev
UPDATEURL https://ooo-updates.apache.org/aoonextdev/check.Update
ADD_INCLUDE_FILES cliureversion.mk,clioootypesversion.mk,javaversion2.dat,userland.txt,version.lst
EVAL
- PACKAGEVERSION 4.1.0
+ PACKAGEVERSION 4.2.0
PACKAGEREVISION {milestone}
LICENSENAME ALv2
GLOBALFILEGID gid_File_Lib_Vcl
@@ -191,14 +191,14 @@ Apache_OpenOffice_SDK
FULLPRODUCTNAME Apache OpenOffice
PRODUCTNAME OpenOffice
PRODUCTDIRNAME OpenOffice_SDK
- PRODUCTVERSION 4.1.0
+ PRODUCTVERSION 4.2.0
PRODUCTEXTENSION
LONG_PRODUCTEXTENSION
SHORT_PRODUCTEXTENSION
POSTVERSIONEXTENSION SDK
POSTVERSIONEXTENSIONUNIX sdk
BRANDPACKAGEVERSION 4
- PACKAGEVERSION 4.1.0
+ PACKAGEVERSION 4.2.0
PACKAGEREVISION {milestone}
PACK_INSTALLED 1
POOLPRODUCT 0
@@ -239,13 +239,13 @@ Apache_OpenOffice_Beta_SDK
FULLPRODUCTNAME Apache OpenOffice Beta
PRODUCTNAME OpenOffice Beta
PRODUCTDIRNAME OpenOffice_SDK_Beta
- PRODUCTVERSION 4.1.0
+ PRODUCTVERSION 4.2.0
PRODUCTEXTENSION
SHORT_PRODUCTEXTENSION
POSTVERSIONEXTENSION SDK
POSTVERSIONEXTENSIONUNIX sdk
BRANDPACKAGEVERSION 4
- PACKAGEVERSION 4.1.0
+ PACKAGEVERSION 4.2.0
PACKAGEREVISION {milestone}
PACK_INSTALLED 1
POOLPRODUCT 0
@@ -285,7 +285,7 @@ Apache_OpenOffice_Dev_SDK
{
FULLPRODUCTNAME AOO-Developer-Build
PRODUCTNAME AOO-Developer-Build
- PRODUCTVERSION 4.1.0
+ PRODUCTVERSION 4.2.0
PRODUCTEXTENSION
LONG_PRODUCTEXTENSION
SHORT_PRODUCTEXTENSION
@@ -294,7 +294,7 @@ Apache_OpenOffice_Dev_SDK
POSTVERSIONEXTENSION SDK
POSTVERSIONEXTENSIONUNIX sdk
BRANDPACKAGEVERSION 4
- PACKAGEVERSION 4.1.0
+ PACKAGEVERSION 4.2.0
PACKAGEREVISION {milestone}
BASISPACKAGEPREFIX aoodev
UREPACKAGEPREFIX aoodev
@@ -338,7 +338,7 @@ Apache_OpenOffice_Beta
{
FULLPRODUCTNAME Apache OpenOffice Beta
PRODUCTNAME OpenOffice Beta
- PRODUCTVERSION 4.1.0
+ PRODUCTVERSION 4.2.0
PRODUCTEXTENSION
SHORT_PRODUCTEXTENSION
BASISROOTNAME AOOBeta
@@ -348,14 +348,14 @@ Apache_OpenOffice_Beta
POSTVERSIONEXTENSION
BRANDPACKAGEVERSION 4
USERDIRPRODUCTVERSION 4
- ABOUTBOXPRODUCTVERSION 4.1.0
- BASEPRODUCTVERSION 4.1
+ ABOUTBOXPRODUCTVERSION 4.2.0
+ BASEPRODUCTVERSION 4.2
UPDATEURL https://ooo-updates.apache.org/aoonextbeta/check.Update
ADD_INCLUDE_FILES cliureversion.mk,clioootypesversion.mk,userland.txt,version.lst
REMOVE_UPGRADE_CODE_FILE upgradecode_remove_ooo.txt
ADDSYSTEMINTEGRATION 0
EVAL
- PACKAGEVERSION 4.1.0
+ PACKAGEVERSION 4.2.0
PACKAGEREVISION {milestone}
LICENSENAME ALv2
GLOBALFILEGID gid_File_Lib_Vcl
diff --git a/javainstaller2/src/JavaSetup/org/openoffice/setup/Controller/PrologueCtrl.java b/javainstaller2/src/JavaSetup/org/openoffice/setup/Controller/PrologueCtrl.java
index b9e0534454ce..5ec249be5b9b 100644
--- a/javainstaller2/src/JavaSetup/org/openoffice/setup/Controller/PrologueCtrl.java
+++ b/javainstaller2/src/JavaSetup/org/openoffice/setup/Controller/PrologueCtrl.java
@@ -82,7 +82,7 @@ public class PrologueCtrl extends PanelController {
// System.err.println("Number of preselected language packages: " + count);
if ( installData.getPreselectedLanguages() == 0 ) {
- // Something misterious happened. Setting all languages again.
+ // Something mysterious happened. Setting all languages again.
ModuleCtrl.setLanguagesPackages(packageData);
}
diff --git a/javainstaller2/src/JavaSetup/org/openoffice/setup/Installer/LinuxInstaller.java b/javainstaller2/src/JavaSetup/org/openoffice/setup/Installer/LinuxInstaller.java
index 72b4c189c84b..70b6f30c9b8a 100644
--- a/javainstaller2/src/JavaSetup/org/openoffice/setup/Installer/LinuxInstaller.java
+++ b/javainstaller2/src/JavaSetup/org/openoffice/setup/Installer/LinuxInstaller.java
@@ -281,7 +281,7 @@ public class LinuxInstaller extends Installer {
if ( returnValue == 0 ) {
log = rpmCommand + "<br><b>Returns: " + returnValue + " Successful installation</b><br>";
LogManager.addCommandsLogfileComment(log);
- } else { // an error occured during installation
+ } else { // an error occurred during installation
if ( packageData.installCanFail() ) {
log = rpmCommand + "<br><b>Returns: " + returnValue + " Problem during installation. Can be ignored.</b><br>";
LogManager.addCommandsLogfileComment(log);
@@ -412,7 +412,7 @@ public class LinuxInstaller extends Installer {
if ( returnValue == 0 ) {
log = rpmCommand + "<br><b>Returns: " + returnValue + " Successful uninstallation</b><br>";
LogManager.addCommandsLogfileComment(log);
- } else { // an error occured during installation
+ } else { // an error occurred during installation
if ( packageData.uninstallCanFail() ) {
log = rpmCommand + "<br><b>Returns: " + returnValue + " Problem during uninstallation. Can be ignored.</b><br>";
LogManager.addCommandsLogfileComment(log);
diff --git a/javainstaller2/src/JavaSetup/org/openoffice/setup/Installer/SolarisInstaller.java b/javainstaller2/src/JavaSetup/org/openoffice/setup/Installer/SolarisInstaller.java
index 0e89f1b4eac2..b848b917efa0 100644
--- a/javainstaller2/src/JavaSetup/org/openoffice/setup/Installer/SolarisInstaller.java
+++ b/javainstaller2/src/JavaSetup/org/openoffice/setup/Installer/SolarisInstaller.java
@@ -215,7 +215,7 @@ public class SolarisInstaller extends Installer {
if ( returnValue == 0 ) {
log = pkgCommand + "<br><b>Returns: " + returnValue + " Successful installation</b><br>";
LogManager.addCommandsLogfileComment(log);
- } else { // an error occured during installation
+ } else { // an error occurred during installation
if ( packageData.installCanFail() ) {
log = pkgCommand + "<br><b>Returns: " + returnValue + " Problem during installation. Can be ignored.</b><br>";
LogManager.addCommandsLogfileComment(log);
@@ -303,7 +303,7 @@ public class SolarisInstaller extends Installer {
if ( returnValue == 0 ) {
log = pkgCommand + "<br><b>Returns: " + returnValue + " Successful uninstallation</b><br>";
LogManager.addCommandsLogfileComment(log);
- } else { // an error occured during installation
+ } else { // an error occurred during installation
if ( packageData.uninstallCanFail() ) {
log = pkgCommand + "<br><b>Returns: " + returnValue + " Problem during uninstallation. Can be ignored.</b><br>";
LogManager.addCommandsLogfileComment(log);
diff --git a/javainstaller2/src/JavaSetup/org/openoffice/setup/InstallerHelper/LinuxHelper.java b/javainstaller2/src/JavaSetup/org/openoffice/setup/InstallerHelper/LinuxHelper.java
index b8aebecf7654..e50543423076 100644
--- a/javainstaller2/src/JavaSetup/org/openoffice/setup/InstallerHelper/LinuxHelper.java
+++ b/javainstaller2/src/JavaSetup/org/openoffice/setup/InstallerHelper/LinuxHelper.java
@@ -489,7 +489,7 @@ import java.util.Vector;public class LinuxHelper {
// all packages, whose "real" package name is not defined in xpd files (for example
// "openoffice-core01-2.0.3-159.rpm" hat the "real" name "openoffice-core01" that is
// used for deinstallation) this can be read in this file. Otherwise it would be
- // neccessary to determine the "real" name with a database question.
+ // necessary to determine the "real" name with a database question.
// The version and release that are also stored in file "packageNames" must not be
// used for deinstallation because they are probably not up to date.
diff --git a/javainstaller2/src/JavaSetup/org/openoffice/setup/SetupData/ProductDescription.java b/javainstaller2/src/JavaSetup/org/openoffice/setup/SetupData/ProductDescription.java
index 6e08e0cdaecb..f93349c98609 100644
--- a/javainstaller2/src/JavaSetup/org/openoffice/setup/SetupData/ProductDescription.java
+++ b/javainstaller2/src/JavaSetup/org/openoffice/setup/SetupData/ProductDescription.java
@@ -137,7 +137,7 @@ public class ProductDescription {
String replace = pair.replacement;
result = matcher.replaceAll(replace);
- // masquerading backslashes in String replace (important for Windows pathes)
+ // masquerading backslashes in String replace (important for Windows paths)
// String[] arr1 = { replace };
// boolean masked = doMaskBackslash(arr1);
// result = matcher.replaceAll(arr1[0]);
diff --git a/javainstaller2/src/JavaSetup/org/openoffice/setup/Util/Controller.java b/javainstaller2/src/JavaSetup/org/openoffice/setup/Util/Controller.java
index 0ebb823ec512..77dcf0952885 100644
--- a/javainstaller2/src/JavaSetup/org/openoffice/setup/Util/Controller.java
+++ b/javainstaller2/src/JavaSetup/org/openoffice/setup/Util/Controller.java
@@ -120,8 +120,8 @@ public class Controller {
// }
installData.setSystemLanguages(realVector);
- } else { // an error occured
- log = pkgCommand + "<br><b>Returns: " + returnValue + " An error occured</b><br>";
+ } else { // an error occurred
+ log = pkgCommand + "<br><b>Returns: " + returnValue + " An error occurred</b><br>";
LogManager.addCommandsLogfileComment(log);
System.err.println("Error in command: " + pkgCommand);
for (int i = 0; i < returnErrorVector.size(); i++) {
diff --git a/javainstaller2/src/JavaSetup/org/openoffice/setup/Util/ExecuteProcess.java b/javainstaller2/src/JavaSetup/org/openoffice/setup/Util/ExecuteProcess.java
index d373c6bc72f5..dd16d89a4e4c 100644
--- a/javainstaller2/src/JavaSetup/org/openoffice/setup/Util/ExecuteProcess.java
+++ b/javainstaller2/src/JavaSetup/org/openoffice/setup/Util/ExecuteProcess.java
@@ -34,7 +34,7 @@ public class ExecuteProcess {
}
static public int executeProcessReturnValue(String[] command) {
- // usage of String arrays because of blanks in pathes
+ // usage of String arrays because of blanks in paths
int returnValue = 0;
try {
@@ -51,7 +51,7 @@ public class ExecuteProcess {
}
static public int executeProcessReturnVector(String[] command, Vector returnVector, Vector returnErrorVector) {
- // usage of String arrays because of blanks in pathes
+ // usage of String arrays because of blanks in paths
int returnValue = -3;
try {
@@ -79,7 +79,7 @@ public class ExecuteProcess {
}
static public int executeProcessReturnVectorEnv(String[] command, String[] envP, Vector returnVector, Vector returnErrorVector) {
- // usage of String arrays because of blanks in pathes
+ // usage of String arrays because of blanks in paths
int returnValue = -3;
try {
diff --git a/javaunohelper/com/sun/star/comp/helper/ComponentContext.java b/javaunohelper/com/sun/star/comp/helper/ComponentContext.java
index 0c5535cad260..a5d71dbbc5bd 100644
--- a/javaunohelper/com/sun/star/comp/helper/ComponentContext.java
+++ b/javaunohelper/com/sun/star/comp/helper/ComponentContext.java
@@ -163,7 +163,7 @@ public class ComponentContext implements XComponentContext, XComponent
catch (com.sun.star.uno.Exception exc)
{
if (DEBUG)
- System.err.println( "### exception occured on late init of singleton instance \"" + rName + "\": " + exc.getMessage() );
+ System.err.println( "### exception occurred on late init of singleton instance \"" + rName + "\": " + exc.getMessage() );
}
if (xInstance != null)
diff --git a/javaunohelper/com/sun/star/comp/helper/ComponentContextEntry.java b/javaunohelper/com/sun/star/comp/helper/ComponentContextEntry.java
index d76160397c0e..623402da5c30 100644
--- a/javaunohelper/com/sun/star/comp/helper/ComponentContextEntry.java
+++ b/javaunohelper/com/sun/star/comp/helper/ComponentContextEntry.java
@@ -44,7 +44,7 @@ public class ComponentContextEntry
/** Creating a late-init singleton entry component context entry.
The second parameter will be ignored and overwritten during
- instanciation of the singleton instance.
+ instantiation of the singleton instance.
@param lateInit
object factory or service string
diff --git a/javaunohelper/com/sun/star/comp/helper/SharedLibraryLoader.java b/javaunohelper/com/sun/star/comp/helper/SharedLibraryLoader.java
index 329a103ff97c..90157249be94 100644
--- a/javaunohelper/com/sun/star/comp/helper/SharedLibraryLoader.java
+++ b/javaunohelper/com/sun/star/comp/helper/SharedLibraryLoader.java
@@ -113,7 +113,7 @@ public class SharedLibraryLoader {
/**
* Registers the SharedLibraryLoader under a RegistryKey.
* <p>
- * @return true if the registration was successfull - otherwise false
+ * @return true if the registration was successful - otherwise false
* @param smgr the ServiceManager
* @param regKey the root key under that the component should be registered
* @see com.sun.star.loader.SharedLibrary
@@ -132,7 +132,7 @@ public class SharedLibraryLoader {
/**
* Registers the SharedLibraryLoader under a RegistryKey.
* <p>
- * @return true if the registration was successfull - otherwise false
+ * @return true if the registration was successful - otherwise false
* @param libName name of the shared library
* @param smgr the ServiceManager
* @param regKey the root key under that the component should be registered
diff --git a/javaunohelper/com/sun/star/lib/uno/helper/InterfaceContainer.java b/javaunohelper/com/sun/star/lib/uno/helper/InterfaceContainer.java
index 44ce6850bc49..d5cf73a1c744 100644
--- a/javaunohelper/com/sun/star/lib/uno/helper/InterfaceContainer.java
+++ b/javaunohelper/com/sun/star/lib/uno/helper/InterfaceContainer.java
@@ -77,7 +77,7 @@ import com.sun.star.uno.UnoRuntime;
* is removed.
* ListIterator.set is not supported.
*
- * A lot of methods resemble those of the to java.util.List interface, allthough
+ * A lot of methods resemble those of the to java.util.List interface, although
* this class does not implement it. However, the list iterators returned, for example by
* the listIterator method implement the java.util.ListIterator interface.
* Implementing the List interface would mean to support all none - optional methods as
@@ -86,9 +86,9 @@ import com.sun.star.uno.UnoRuntime;
* list have to cause changes in the main list. This is a problem, since this class is to be
* used in a multi-threaded environment. The sub list could work on a copy as the iterators
* do, but all the functions which work on an given index could not be properly supported.
- * Unfortunatly, the List interface documentation states that all optional methods implemented
+ * Unfortunately, the List interface documentation states that all optional methods implemented
* by the list have to be implemented in the sub list. That would mean to do without all those
- * critical methods, allthough they might work well in the "main list" (as opposed to sub list).
+ * critical methods, although they might work well in the "main list" (as opposed to sub list).
*/
public class InterfaceContainer implements Cloneable
{
@@ -348,7 +348,7 @@ public class InterfaceContainer implements Cloneable
}
/**
- * Searches for the first occurence of the given argument, testing
+ * Searches for the first occurrence of the given argument, testing
* for equality using the <tt>equals</tt> method.
*
* @param elem an object.
diff --git a/javaunohelper/com/sun/star/lib/uno/helper/MultiTypeInterfaceContainer.java b/javaunohelper/com/sun/star/lib/uno/helper/MultiTypeInterfaceContainer.java
index bfae2711e791..0350e4eccc96 100644
--- a/javaunohelper/com/sun/star/lib/uno/helper/MultiTypeInterfaceContainer.java
+++ b/javaunohelper/com/sun/star/lib/uno/helper/MultiTypeInterfaceContainer.java
@@ -113,7 +113,7 @@ public class MultiTypeInterfaceContainer
// equals. For example:
// Type a= new Type(XInterface.class);
// Type b= new Type(XInterface.class);
- // Allthough a != b , the map interprets both as being the same.
+ // Although a != b , the map interprets both as being the same.
InterfaceContainer cont= (InterfaceContainer) map.get(ckey);
if (cont != null)
{
diff --git a/javaunohelper/com/sun/star/lib/uno/helper/PropertySet.java b/javaunohelper/com/sun/star/lib/uno/helper/PropertySet.java
index 767f09b17ad5..20e997bc809b 100644
--- a/javaunohelper/com/sun/star/lib/uno/helper/PropertySet.java
+++ b/javaunohelper/com/sun/star/lib/uno/helper/PropertySet.java
@@ -404,7 +404,7 @@ XMultiPropertySet
//XPropertySet ----------------------------------------------------
synchronized public void removePropertyChangeListener(String propName, XPropertyChangeListener listener) throws UnknownPropertyException, WrappedTargetException
- { // all listeners are automaticly released in a dispose call
+ { // all listeners are automatically released in a dispose call
if (!bInDispose && !bDisposed)
{
if (propName.length() > 0)
@@ -421,7 +421,7 @@ XMultiPropertySet
//XPropertySet ----------------------------------------------------
synchronized public void removeVetoableChangeListener(String propName, XVetoableChangeListener listener) throws UnknownPropertyException, WrappedTargetException
- {// all listeners are automaticly released in a dispose call
+ {// all listeners are automatically released in a dispose call
if (!bInDispose && !bDisposed)
{
if (propName.length() > 0)
@@ -613,7 +613,7 @@ XMultiPropertySet
* @return true - Conversion was successful. <em>newVal</em> contains a valid value for the property. false -
* conversion failed for some reason.
* @throws com.sun.star.lang.IllegalArgumentException The value provided is unfit for the property.
- * @throws com.sun.star.lang.WrappedTargetException - An exception occured during the conversion, that is to be made known
+ * @throws com.sun.star.lang.WrappedTargetException - An exception occurred during the conversion, that is to be made known
* to the caller.
*/
protected boolean convertPropertyValue(Property property, Object[] newVal, Object[]curVal, Object setVal)
@@ -795,7 +795,7 @@ XMultiPropertySet
* @param property the property for which the new value is set
* @param value the new value for the property.
* @throws com.sun.star.lang.WrappedTargetException An exception, which has to be made known to the caller,
- * occured during the setting of the value.
+ * occurred during the setting of the value.
*/
protected void setPropertyValueNoBroadcast(Property property, Object newVal)
throws WrappedTargetException
@@ -866,7 +866,7 @@ XMultiPropertySet
* a XVetoableChangeListener is meant. For XPropertyChangeListener and XPropertiesChangeListener
* it is to be set to false.
*
- * @param properties Properties wich will be or have been affected.
+ * @param properties Properties which will be or have been affected.
* @param newValues the new values of the properties.
* @param oldValues the old values of the properties.
* @param bVetoable true means fire to VetoableChangeListener, false means fire to
@@ -1054,7 +1054,7 @@ XMultiPropertySet
listenerContainer.removeInterface(XPropertiesChangeListener.class, xPropertiesChangeListener);
}
// XMultiPropertySet -----------------------------------------------------------------------------------
- /** If the array of property names containes an unknown property then it will be ignored.
+ /** If the array of property names contains an unknown property then it will be ignored.
*/
public void setPropertyValues(String[] propNames, Object[] values) throws PropertyVetoException, com.sun.star.lang.IllegalArgumentException, com.sun.star.lang.WrappedTargetException
{
diff --git a/javaunohelper/test/com/sun/star/comp/helper/SharedLibraryLoader_Test.java b/javaunohelper/test/com/sun/star/comp/helper/SharedLibraryLoader_Test.java
index 1aff646c17bd..8f62696378f1 100644
--- a/javaunohelper/test/com/sun/star/comp/helper/SharedLibraryLoader_Test.java
+++ b/javaunohelper/test/com/sun/star/comp/helper/SharedLibraryLoader_Test.java
@@ -67,7 +67,7 @@ public class SharedLibraryLoader_Test {
sharedLibraryLoaderFactory = SharedLibraryLoader.getServiceFactory(null, null);
System.out.print("Test - ");
- System.out.println(sharedLibraryLoaderFactory == null? "failed" : "successfull");
+ System.out.println(sharedLibraryLoaderFactory == null? "failed" : "successful");
System.out.println("*******************************************************************");
System.out.println();
@@ -88,7 +88,7 @@ public class SharedLibraryLoader_Test {
XImplementationLoader.class, sharedLibraryLoaderFactory.createInstance() );
System.out.print("Test - ");
- System.out.println(sharedLibraryLoader == null? "failed" : "successfull");
+ System.out.println(sharedLibraryLoader == null? "failed" : "successful");
System.out.println("*******************************************************************");
System.out.println();
@@ -115,7 +115,7 @@ public class SharedLibraryLoader_Test {
nativeServiceManager = UnoRuntime.queryInterface( XMultiServiceFactory.class, aSMgrFac.createInstance() );
System.out.print("Test - ");
- System.out.println(nativeServiceManager == null? "failed" : "successfull");
+ System.out.println(nativeServiceManager == null? "failed" : "successful");
System.out.println("*******************************************************************");
System.out.println();
@@ -141,7 +141,7 @@ public class SharedLibraryLoader_Test {
simpleRegistry =
UnoRuntime.queryInterface( XSimpleRegistry.class, aRegFac.createInstance() );
System.out.print("Test - ");
- System.out.println(simpleRegistry == null? "failed" : "successfull");
+ System.out.println(simpleRegistry == null? "failed" : "successful");
System.out.println("*******************************************************************");
System.err.println();
return true;
@@ -162,7 +162,7 @@ public class SharedLibraryLoader_Test {
result = SharedLibraryLoader.writeRegistryServiceInfo( null, regKey );
System.out.print("Test - ");
- System.out.println( result==false ? "failed" : "successfull");
+ System.out.println( result==false ? "failed" : "successful");
System.out.println("*******************************************************************");
System.out.println();
return result;
diff --git a/javaunohelper/test/com/sun/star/lib/uno/helper/ComponentBase_Test.java b/javaunohelper/test/com/sun/star/lib/uno/helper/ComponentBase_Test.java
index 67b8e39a022f..bb6eeb00af93 100644
--- a/javaunohelper/test/com/sun/star/lib/uno/helper/ComponentBase_Test.java
+++ b/javaunohelper/test/com/sun/star/lib/uno/helper/ComponentBase_Test.java
@@ -79,7 +79,7 @@ public class ComponentBase_Test
obj1.nDisposingCalled= 0;
obj2.nDisposingCalled= 0;
obj3.nDisposingCalled= 0;
- comp.dispose(); // allready disposed;
+ comp.dispose(); // already disposed;
r[i++]= obj1.nDisposingCalled == 0;
boolean bOk= true;
@@ -139,7 +139,7 @@ public class ComponentBase_Test
for (int c= 0; c < i; c++)
bOk= bOk && r[c];
if (bOk == false)
- System.out.println("Errors occured!");
+ System.out.println("Errors occurred!");
else
System.out.println("No errors.");
diff --git a/javaunohelper/test/com/sun/star/lib/uno/helper/Factory_Test.java b/javaunohelper/test/com/sun/star/lib/uno/helper/Factory_Test.java
index e2e9540cec50..f51a1a365ca0 100644
--- a/javaunohelper/test/com/sun/star/lib/uno/helper/Factory_Test.java
+++ b/javaunohelper/test/com/sun/star/lib/uno/helper/Factory_Test.java
@@ -194,7 +194,7 @@ public class Factory_Test
}
catch (Exception exc)
{
- System.err.println( ">>>>>>>>>> exc occured: " + exc.toString() );
+ System.err.println( ">>>>>>>>>> exc occurred: " + exc.toString() );
exc.printStackTrace();
}
System.exit( 0 );
diff --git a/javaunohelper/test/com/sun/star/lib/uno/helper/InterfaceContainer_Test.java b/javaunohelper/test/com/sun/star/lib/uno/helper/InterfaceContainer_Test.java
index 2f3cf1b2b49b..290f069fc940 100644
--- a/javaunohelper/test/com/sun/star/lib/uno/helper/InterfaceContainer_Test.java
+++ b/javaunohelper/test/com/sun/star/lib/uno/helper/InterfaceContainer_Test.java
@@ -979,7 +979,7 @@ public class InterfaceContainer_Test
for (int c= 0; c < i; c++)
bOk= bOk && r[c];
if ( ! bOk )
- System.out.println("Test finished.\nErrors occured!!!");
+ System.out.println("Test finished.\nErrors occurred!!!");
else
System.out.println("Test finished. \nNo errors.");
diff --git a/javaunohelper/test/com/sun/star/lib/uno/helper/MultiTypeInterfaceContainer_Test.java b/javaunohelper/test/com/sun/star/lib/uno/helper/MultiTypeInterfaceContainer_Test.java
index 85f3ff831d26..17934ecccec1 100644
--- a/javaunohelper/test/com/sun/star/lib/uno/helper/MultiTypeInterfaceContainer_Test.java
+++ b/javaunohelper/test/com/sun/star/lib/uno/helper/MultiTypeInterfaceContainer_Test.java
@@ -357,7 +357,7 @@ public class MultiTypeInterfaceContainer_Test
for (int c= 0; c < i; c++)
bOk= bOk && r[c];
if ( ! bOk )
- System.out.println("Test finished.\nErrors occured!!!");
+ System.out.println("Test finished.\nErrors occurred!!!");
else
System.out.println("Test finished. \nNo errors.");
diff --git a/javaunohelper/test/com/sun/star/lib/uno/helper/PropertySet_Test.java b/javaunohelper/test/com/sun/star/lib/uno/helper/PropertySet_Test.java
index 83f3de5a995d..69c092035a6a 100644
--- a/javaunohelper/test/com/sun/star/lib/uno/helper/PropertySet_Test.java
+++ b/javaunohelper/test/com/sun/star/lib/uno/helper/PropertySet_Test.java
@@ -1075,7 +1075,7 @@ public class PropertySet_Test
for (int c= 0; c < i; c++)
bOk= bOk && r[c];
if (bOk == false)
- System.out.println("Errors occured!");
+ System.out.println("Errors occurred!");
else
System.out.println("No errors.");
return bOk;
@@ -1121,7 +1121,7 @@ class TestClass extends PropertySet
public Property propEnum =
new Property("PropEnum", 14, new Type("com.sun.star.beans.PropertyState", TypeClass.ENUM), (short)0);
public com.sun.star.beans.PropertyState enumPropertyState = com.sun.star.beans.PropertyState.DEFAULT_VALUE;
- // Test private, protected, package access, Anys as arguments and members, members whith a value
+ // Test private, protected, package access, Anys as arguments and members, members with a value
public Property propBoolB= new Property("PropBoolB", 101, new Type(Boolean.TYPE), (short) 0);
protected boolean boolPropB;
diff --git a/javaunohelper/test/com/sun/star/lib/uno/helper/WeakBase_Test.java b/javaunohelper/test/com/sun/star/lib/uno/helper/WeakBase_Test.java
index 944f8552c190..89685a285d74 100644
--- a/javaunohelper/test/com/sun/star/lib/uno/helper/WeakBase_Test.java
+++ b/javaunohelper/test/com/sun/star/lib/uno/helper/WeakBase_Test.java
@@ -195,7 +195,7 @@ public class WeakBase_Test
for (int c= 0; c < i; c++)
bOk= bOk && r[c];
if (bOk == false)
- System.out.println("Errors occured!");
+ System.out.println("Errors occurred!");
else
System.out.println("No errors.");
diff --git a/jurt/com/sun/star/comp/servicemanager/ServiceManager.java b/jurt/com/sun/star/comp/servicemanager/ServiceManager.java
index 3c233f70f272..d25f2930a7c0 100644
--- a/jurt/com/sun/star/comp/servicemanager/ServiceManager.java
+++ b/jurt/com/sun/star/comp/servicemanager/ServiceManager.java
@@ -119,7 +119,7 @@ public class ServiceManager implements XMultiServiceFactory,
* @return the factory for the <code>ServiceManager</code>.
* @param implName the implementation name of the of the service.
* Must be equal to <code>com.sun.star.comp.servicemanager.ServicManager</code>
- * @param multiFactory refernce of the <code>MultiServiceFactory</code>. This parameter will be ignored.
+ * @param multiFactory references of the <code>MultiServiceFactory</code>. This parameter will be ignored.
* @param regKey the root key of the registry. This parameter will be ignored.
*/
public static XSingleServiceFactory getServiceFactory( String implName,
@@ -158,7 +158,7 @@ public class ServiceManager implements XMultiServiceFactory,
* Registers a list of components given by their class names.
* <p>
* @param newImpls list of the components that should be registered, given by their class names.
- * If any exception occured during the registration, the process will be canceled.
+ * If any exception occurred during the registration, the process will be canceled.
* @see com.sun.star.container.XSet
*/
private void xaddFactories( String[] newImpls )
diff --git a/jurt/com/sun/star/lib/uno/environments/remote/IThreadPool.java b/jurt/com/sun/star/lib/uno/environments/remote/IThreadPool.java
index 268d1d48ac75..09438c845557 100644
--- a/jurt/com/sun/star/lib/uno/environments/remote/IThreadPool.java
+++ b/jurt/com/sun/star/lib/uno/environments/remote/IThreadPool.java
@@ -116,7 +116,7 @@ public interface IThreadPool {
/**
* Destroys the thread pool and tries
- * to join all created threads immediatly.
+ * to join all created threads immediately.
*/
public void destroy();
}
diff --git a/jurt/com/sun/star/lib/util/UrlToFileMapper.java b/jurt/com/sun/star/lib/util/UrlToFileMapper.java
index c72ed91145e2..35b65694de76 100644
--- a/jurt/com/sun/star/lib/util/UrlToFileMapper.java
+++ b/jurt/com/sun/star/lib/util/UrlToFileMapper.java
@@ -79,7 +79,7 @@ public final class UrlToFileMapper {
StringHelper.replace(url.getPath(), '+', "%2B")))
: null;
} else {
- // If java.net.URI is avaliable, do
+ // If java.net.URI is available, do
// URI uri = new URI(encodedUrl);
// try {
// return new File(uri);
diff --git a/jurt/source/pipe/com_sun_star_lib_connections_pipe_PipeConnection.c b/jurt/source/pipe/com_sun_star_lib_connections_pipe_PipeConnection.c
index 326f9584a5a0..fae40f97bf01 100644
--- a/jurt/source/pipe/com_sun_star_lib_connections_pipe_PipeConnection.c
+++ b/jurt/source/pipe/com_sun_star_lib_connections_pipe_PipeConnection.c
@@ -342,7 +342,7 @@ JNICALL Java_com_sun_star_lib_connections_pipe_PipeConnection_readJNI
enum {
START = 0,
INMONITOR,
- AQUIRED,
+ ACQUIRED,
GOTBUFFER
};
@@ -374,9 +374,9 @@ JNICALL Java_com_sun_star_lib_connections_pipe_PipeConnection_readJNI
goto error;
}
- /* aquire pipe */
+ /* acquire pipe */
osl_acquirePipe( npipe );
- state = AQUIRED;
+ state = ACQUIRED;
/* allocate a buffer */
if ((nbuff = malloc(len)) == NULL)
@@ -424,7 +424,7 @@ JNICALL Java_com_sun_star_lib_connections_pipe_PipeConnection_readJNI
/* done */
free(nbuff);
- if ( state >= AQUIRED )
+ if ( state >= ACQUIRED )
osl_releasePipe( npipe );
/* exit monitor */
diff --git a/jvmfwk/inc/jvmfwk/framework.h b/jvmfwk/inc/jvmfwk/framework.h
index 89bd7bbacb5e..cb3a0a0f8c07 100644
--- a/jvmfwk/inc/jvmfwk/framework.h
+++ b/jvmfwk/inc/jvmfwk/framework.h
@@ -140,7 +140,7 @@ extern "C" {
-env:UNO_JAVA_JFW_PLUGIN=file:\\solver\\bin\\sunjavaplugin.dll -register ....
</p>
<p>Additionall parameters for the Java VM can be provided. For every parameter
- a seperate bootstrap parameter must be specified. The names are
+ a separate bootstrap parameter must be specified. The names are
<code>UNO_JAVA_JFW_PARAMETER_X</code>, where X is 1,2, .. n. For example:</p>
<p>
regcomp -env:UNO_JAVA_JFW_PARAMETER_1=-Xdebug
@@ -311,7 +311,7 @@ void SAL_CALL jfw_freeJavaInfo(JavaInfo *pInfo);
<code>rtl_uString</code> members is determined
by the respective comparison function (see
<code>rtl::OUString::equals</code>).
- Similiarly the equality of the <code>sal_Sequence</code> is
+ Similarly the equality of the <code>sal_Sequence</code> is
also determined by a comparison
function (see <code>rtl::ByteSequence::operator ==</code>). </p>
<p>
@@ -330,8 +330,8 @@ sal_Bool SAL_CALL jfw_areEqualJavaInfo(
/** determines if a Java Virtual Machine is already running.
<p>As long as the the office and the JREs only support one
- Virtual Machine per process the Java settings, particulary the
- selected Java, are not effective immediatly after changing when
+ Virtual Machine per process the Java settings, particularly the
+ selected Java, are not effective immediately after changing when
a VM has already been running. That is, if a JRE A was used to start
a VM and then a JRE B is selected, then JRE B will only be used
after a restart of the office.</p>
@@ -415,7 +415,7 @@ javaFrameworkError SAL_CALL jfw_isVMRunning(sal_Bool *bRunning);
*/
javaFrameworkError SAL_CALL jfw_findAndSelectJRE(JavaInfo **pInfo);
-/** provides information about all availabe JRE installations.
+/** provides information about all available JRE installations.
<p>The function determines dynamically what JREs are available. It uses
the plug-in libraries to provide lists of available <code>JavaInfo</code>
diff --git a/jvmfwk/plugins/sunmajor/pluginlib/sunversion.cxx b/jvmfwk/plugins/sunmajor/pluginlib/sunversion.cxx
index f1bcabecfd11..c92231e14de6 100644
--- a/jvmfwk/plugins/sunmajor/pluginlib/sunversion.cxx
+++ b/jvmfwk/plugins/sunmajor/pluginlib/sunversion.cxx
@@ -71,12 +71,12 @@ bool SunVersion::init(const char *szVersion)
if ( ! szVersion || strlen(szVersion) == 0)
return false;
- //first get the major,minor,maintainance
+ //first get the major,minor,maintenance
const char * pLast = szVersion;
const char * pCur = szVersion;
//pEnd point to the position after the last character
const char * pEnd = szVersion + strlen(szVersion);
- // 0 = major, 1 = minor, 2 = maintainance, 3 = update
+ // 0 = major, 1 = minor, 2 = maintenance, 3 = update
int nPart = 0;
// position within part beginning with 0
int nPartPos = 0;
@@ -95,7 +95,7 @@ bool SunVersion::init(const char *szVersion)
else if (
! (nPartPos == 0) // prevents: ".4.1", "..1", part must start with digit
&& (
- //seperators after maintainance (1.4.1_01, 1.4.1-beta, or1.4.1
+ //seperators after maintenance (1.4.1_01, 1.4.1-beta, or1.4.1
((pCur == pEnd || *pCur == '_' || *pCur == '-') && (nPart == 2 ))
||
//separators between major-minor and minor-maintainance
@@ -268,7 +268,7 @@ bool SunVersion::operator > (const SunVersion& ver) const
if( &ver == this)
return false;
- //compare major.minor.maintainance
+ //compare major.minor.maintenance
for( int i= 0; i < 4; i ++)
{
// 1.4 > 1.3
diff --git a/jvmfwk/plugins/sunmajor/pluginlib/util.cxx b/jvmfwk/plugins/sunmajor/pluginlib/util.cxx
index 6520d3e8a0c5..e8f048df8c27 100644
--- a/jvmfwk/plugins/sunmajor/pluginlib/util.cxx
+++ b/jvmfwk/plugins/sunmajor/pluginlib/util.cxx
@@ -572,7 +572,7 @@ bool getJavaInfoFromRegistry(const wchar_t* szRegKey,
// Get the path for the runtime lib
if(RegQueryValueExW(hKey, L"JavaHome", 0, &dwType, (unsigned char*) szTmpPath, &dwTmpPathLen) == ERROR_SUCCESS)
{
- // There can be several version entries refering with the same JavaHome,e.g 1.4 and 1.4.1
+ // There can be several version entries referring with the same JavaHome,e.g 1.4 and 1.4.1
OUString usHome((sal_Unicode*) szTmpPath);
// check if there is already an entry with the same JavaHomeruntime lib
// if so, we use the one with the more accurate version
diff --git a/jvmfwk/source/elements.cxx b/jvmfwk/source/elements.cxx
index 675b52d7579a..4113cf00b920 100644
--- a/jvmfwk/source/elements.cxx
+++ b/jvmfwk/source/elements.cxx
@@ -756,7 +756,7 @@ jfw::FileStatus NodeJava::checkSettingsFileStatus() const
{
// This
//function may be called multiple times when a java is started.
- //If the expiretime is too small then we may loop because everytime
+ //If the expiretime is too small then we may loop because every time
//the file is deleted and we need to search for a java again.
if (INSTALL == m_layer)
{
diff --git a/jvmfwk/source/elements.hxx b/jvmfwk/source/elements.hxx
index 0176b3f877ab..cbbc278d9c48 100644
--- a/jvmfwk/source/elements.hxx
+++ b/jvmfwk/source/elements.hxx
@@ -128,7 +128,7 @@ private:
/** creates settings file and fills it with default values.
When this function is called then it creates the
- settings file at the possition determined by the bootstrap parameters
+ settings file at the position determined by the bootstrap parameters
(UNO_JAVA_JFW_USER_DATA, UNO_JAVA_JFW_SHARED_DATA,
UNO_JAVA_JFW_INSTALL_DATA) and m_layer, unless the file already exists
(see createSettingsDocument).
@@ -144,7 +144,7 @@ private:
/** returns the system path to the data file which is to be used. The value
depends on
- the the member m_layer and the bootstrap paramters UNO_JAVA_JFW_USER_DATA,
+ the the member m_layer and the bootstrap parameters UNO_JAVA_JFW_USER_DATA,
UNO_JAVA_JFW_SHARED_DATA and UNO_JAVA_JFW_INSTALL_DATA which this may be.
*/
::rtl::OString getSettingsPath() const;
diff --git a/jvmfwk/source/fwkutil.hxx b/jvmfwk/source/fwkutil.hxx
index 2758db7142b2..4d13464fb390 100644
--- a/jvmfwk/source/fwkutil.hxx
+++ b/jvmfwk/source/fwkutil.hxx
@@ -116,7 +116,7 @@ enum FileStatus
one of the values of FileStatus.
@exception
- Errors occured during determining if the file exists
+ Errors occurred during determining if the file exists
*/
FileStatus checkFileURL(const rtl::OUString & path);
diff --git a/l10ntools/inc/wtranode.hxx b/l10ntools/inc/wtranode.hxx
index d1f2267820e0..b7f1f8571799 100644
--- a/l10ntools/inc/wtranode.hxx
+++ b/l10ntools/inc/wtranode.hxx
@@ -45,7 +45,7 @@ const BRANCH_T C_NR_OF_BRANCHES = 34;
/** @task
This is a node of the parsing-tree which implements the fuctionality of
class WordTransTree.
- WordTransTree is dependant of this class, but NOT the other way!
+ WordTransTree is dependent of this class, but NOT the other way!
**/
class WTT_Node // WordTransTree-Node
{
diff --git a/l10ntools/inc/wtratree.hxx b/l10ntools/inc/wtratree.hxx
index 03309a9dbe4d..2aa7de715502 100644
--- a/l10ntools/inc/wtratree.hxx
+++ b/l10ntools/inc/wtratree.hxx
@@ -45,7 +45,7 @@ class WTT_Node;
/** @task
This class implements the functionality, that class WordTransformer
offers.
- WordTransformer is dependant of this class, but NOT the other way!
+ WordTransformer is dependent of this class, but NOT the other way!
**/
class WordTransTree
{
@@ -118,7 +118,7 @@ class WordTransTree
// Data which are valid only after a completed call to TransformNextToken()
E_Result eCurResult;
- u_char cCurHotkey; // Letter wich is used as hotkey
+ u_char cCurHotkey; // Letter which is used as hotkey
u_char cCurHotkeySign; // Letter which is used to assign hotkey ('~'or '&') .
};
diff --git a/l10ntools/java/l10nconv/java/com/sun/star/tooling/converter/Convert.java b/l10ntools/java/l10nconv/java/com/sun/star/tooling/converter/Convert.java
index 37f6b879395a..cdc28d5926cb 100644
--- a/l10ntools/java/l10nconv/java/com/sun/star/tooling/converter/Convert.java
+++ b/l10ntools/java/l10nconv/java/com/sun/star/tooling/converter/Convert.java
@@ -173,10 +173,10 @@ public class Convert {
OutputHandler.closeAll();
} catch(Exception e){
- System.out.print("An EXCEPTION occured, please check your commad line settings \n"+e.getMessage());
+ System.out.print("An EXCEPTION occurred, please check your commad line settings \n"+e.getMessage());
System.exit(-1);
}catch(Throwable t){
- System.out.print("A FATAL ERROR occured, please check your commad line settings \n"+t.getMessage());
+ System.out.print("A FATAL ERROR occurred, please check your commad line settings \n"+t.getMessage());
System.exit(-1);
}
@@ -451,7 +451,7 @@ public class Convert {
OutputHandler.out("ERROR: "+e.getMessage());
System.exit(-1);
} catch (Throwable t){
- System.out.print("An Error occured while parsing the command line,\n please check your commad line settings.\n "+t.getMessage());
+ System.out.print("An Error occurred while parsing the command line,\n please check your commad line settings.\n "+t.getMessage());
System.exit(-1);
}
diff --git a/l10ntools/java/l10nconv/java/com/sun/star/tooling/converter/ConverterException.java b/l10ntools/java/l10nconv/java/com/sun/star/tooling/converter/ConverterException.java
index 8fde3cd874c1..5c1e5a5336a1 100644
--- a/l10ntools/java/l10nconv/java/com/sun/star/tooling/converter/ConverterException.java
+++ b/l10ntools/java/l10nconv/java/com/sun/star/tooling/converter/ConverterException.java
@@ -22,7 +22,7 @@
/*
* a simple exception
- * just to seperate
+ * just to separate
* it from other
* exceptions
*/
diff --git a/l10ntools/java/l10nconv/java/com/sun/star/tooling/converter/FileMaker.java b/l10ntools/java/l10nconv/java/com/sun/star/tooling/converter/FileMaker.java
index e3991f7c6cb5..859c8f1f0f77 100644
--- a/l10ntools/java/l10nconv/java/com/sun/star/tooling/converter/FileMaker.java
+++ b/l10ntools/java/l10nconv/java/com/sun/star/tooling/converter/FileMaker.java
@@ -41,7 +41,7 @@ import java.io.IOException;
public final class FileMaker {
/**
- * Create a new file if overwriting is not alowed
+ * Create a new file if overwriting is not allowed
* ask if existing files should be overwritten
*
* @param fileName the files name to overwrite
diff --git a/l10ntools/java/l10nconv/java/com/sun/star/tooling/converter/GSIWriter.java b/l10ntools/java/l10nconv/java/com/sun/star/tooling/converter/GSIWriter.java
index acf0ce473c73..269cc99c76eb 100644
--- a/l10ntools/java/l10nconv/java/com/sun/star/tooling/converter/GSIWriter.java
+++ b/l10ntools/java/l10nconv/java/com/sun/star/tooling/converter/GSIWriter.java
@@ -33,7 +33,7 @@ import com.sun.star.tooling.languageResolver.LanguageResolver.LanguageResolvingE
*/
public class GSIWriter extends DataWriter {
/**
- * The seperator used to seperate GSI columns
+ * The seperator used to separate GSI columns
*/
final String seperator=new String("($$)");
@@ -155,16 +155,16 @@ public class GSIWriter extends DataWriter {
else {
// put them together for output
buffer.append(this.blockNr);
- // seperate the fields with ($$)
+ // separate the fields with ($$)
buffer.append(this.seperator);
buffer.append(ResTypeResolver.getExternKey(resType));
- // seperate the fields with ($$)
+ // separate the fields with ($$)
buffer.append(this.seperator);
buffer.append(this.sourceLanguage);
- // seperate the fields with ($$)
+ // separate the fields with ($$)
buffer.append(this.seperator);
buffer.append("int");
- // seperate the fields with ($$)
+ // separate the fields with ($$)
buffer.append(this.seperator);
buffer.append(outData.get(resString));
@@ -189,16 +189,16 @@ public class GSIWriter extends DataWriter {
else {
// put them together for output
buffer.append(this.blockNr);
- // seperate the fields with ($$)
+ // separate the fields with ($$)
buffer.append(this.seperator);
buffer.append(ResTypeResolver.getExternKey(resType));
- // seperate the fields with ($$)
+ // separate the fields with ($$)
buffer.append(this.seperator);
buffer.append(this.targetLanguage);
- // seperate the fields with ($$)
+ // separate the fields with ($$)
buffer.append(this.seperator);
buffer.append("ext");
- // seperate the fields with ($$)
+ // separate the fields with ($$)
buffer.append(this.seperator);
buffer.append(outData.get(resString));
diff --git a/l10ntools/java/l10nconv/java/com/sun/star/tooling/converter/GSIandSDFMerger.java b/l10ntools/java/l10nconv/java/com/sun/star/tooling/converter/GSIandSDFMerger.java
index b6a8b055d542..b98cdd49edad 100644
--- a/l10ntools/java/l10nconv/java/com/sun/star/tooling/converter/GSIandSDFMerger.java
+++ b/l10ntools/java/l10nconv/java/com/sun/star/tooling/converter/GSIandSDFMerger.java
@@ -137,7 +137,7 @@ public class GSIandSDFMerger extends SDFReader {
}else{
// skip=true;
//
-// // we cant match this gsi block to the current sdf block
+// // we can't match this gsi block to the current sdf block
// try matching the next sdf block with this gsi line
dontLoadGSI=true;
}
diff --git a/l10ntools/java/l10nconv/java/com/sun/star/tooling/converter/SDFReader.java b/l10ntools/java/l10nconv/java/com/sun/star/tooling/converter/SDFReader.java
index ab27e894450d..94ee4ad03ee2 100644
--- a/l10ntools/java/l10nconv/java/com/sun/star/tooling/converter/SDFReader.java
+++ b/l10ntools/java/l10nconv/java/com/sun/star/tooling/converter/SDFReader.java
@@ -581,7 +581,7 @@ public class SDFReader extends DataReader {
if ((splitLine = line.split("\t")).length == 15)
return splitLine;
else
- //an error occured
+ //an error occurred
return null;
}
diff --git a/l10ntools/java/l10nconv/java/com/sun/star/tooling/converter/SDFWriter.java b/l10ntools/java/l10nconv/java/com/sun/star/tooling/converter/SDFWriter.java
index a49b2cbf06de..f7fb5643df2c 100644
--- a/l10ntools/java/l10nconv/java/com/sun/star/tooling/converter/SDFWriter.java
+++ b/l10ntools/java/l10nconv/java/com/sun/star/tooling/converter/SDFWriter.java
@@ -38,7 +38,7 @@ import java.util.Map;
*/
public class SDFWriter extends DataWriter {
/**
- * the seperator the seperate columns
+ * the seperator the separate columns
*/
final String seperator=new String("\t");
/**
@@ -109,7 +109,7 @@ public class SDFWriter extends DataWriter {
// put them together for output
buffer.append(outData.get(sourceLineNames[i]));
if(i!=sourceLineNames.length-1) {
- // seperate the fields with tab
+ // separate the fields with tab
buffer.append(seperator);
}else{
// this line is full
@@ -125,7 +125,7 @@ public class SDFWriter extends DataWriter {
// put them together for output
buffer.append(outData.get(targetLineNames[i]));
if(i!=targetLineNames.length-1) {
- // seperate the fields with tab
+ // separate the fields with tab
buffer.append(seperator);
}else{
// this line is full
diff --git a/l10ntools/java/l10nconv/java/com/sun/star/tooling/converter/XLIFFWriter.java b/l10ntools/java/l10nconv/java/com/sun/star/tooling/converter/XLIFFWriter.java
index be1e87d22307..5de18104d0a5 100644
--- a/l10ntools/java/l10nconv/java/com/sun/star/tooling/converter/XLIFFWriter.java
+++ b/l10ntools/java/l10nconv/java/com/sun/star/tooling/converter/XLIFFWriter.java
@@ -492,9 +492,9 @@ public class XLIFFWriter extends DataWriter {
return "<header></header>\n";
}
/**
- * Create the begining of the line holding the body tag of this XIFFFile
+ * Create the beginning of the line holding the body tag of this XIFFFile
*
- * @return a string with the begining of the body tag of this XIFFFile
+ * @return a string with the beginning of the body tag of this XIFFFile
*/
private String openBodyTag() {
return "\t\t<body>\n";
diff --git a/l10ntools/scripts/localize.pl b/l10ntools/scripts/localize.pl
index 811ea6eae0a8..9e0db396c1b0 100755
--- a/l10ntools/scripts/localize.pl
+++ b/l10ntools/scripts/localize.pl
@@ -1036,7 +1036,7 @@ sub usage{
print STDERR " -f <sdffile> To split a big SDF file into particles\n";
print STDERR " <outputfile> To collect and join all particles to one big file\n";
print STDERR " -s <sourceroot> Path to the modules, if no \$SRC_ROOT is set\n";
- print STDERR " -l ( all | <isocode> | <isocode>=fallback ) comma seperated languages\n";
+ print STDERR " -l ( all | <isocode> | <isocode>=fallback ) comma separated languages\n";
print STDERR " -d Use default date in extracted sdf file\n";
print STDERR " -c Create needed directories\n";
print STDERR " -g Sort sdf file before mergeing\n";
diff --git a/l10ntools/scripts/localize_old.pl b/l10ntools/scripts/localize_old.pl
index 17c63272d048..8de7f5877adf 100755
--- a/l10ntools/scripts/localize_old.pl
+++ b/l10ntools/scripts/localize_old.pl
@@ -1031,7 +1031,7 @@ sub usage{
print STDERR " -f <sdffile> To split a big SDF file into particles\n";
print STDERR " <outputfile> To collect and join all particles to one big file\n";
print STDERR " -s <sourceroot> Path to the modules, if no \$SRC_ROOT is set\n";
- print STDERR " -l ( all | <isocode> | <isocode>=fallback ) comma seperated languages\n";
+ print STDERR " -l ( all | <isocode> | <isocode>=fallback ) comma separated languages\n";
print STDERR " -d Use default date in extracted sdf file\n";
print STDERR " -v Verbose\n";
print STDERR "\nExample:\n";
diff --git a/l10ntools/source/cfgmerge.cxx b/l10ntools/source/cfgmerge.cxx
index bab8d714ae8e..0f796b1f920e 100644
--- a/l10ntools/source/cfgmerge.cxx
+++ b/l10ntools/source/cfgmerge.cxx
@@ -246,7 +246,7 @@ extern FILE *GetCfgFile()
aEntry += DirEntry( sPrjRoot );
ByteString sPrjEntry( aEntry.GetFull(), RTL_TEXTENCODING_ASCII_US );
- // create file name, beginnig with project root
+ // create file name, beginning with project root
// (e.g.: source\ui\src\menue.src)
// printf("sFullEntry = %s\n",sFullEntry.GetBuffer());
sActFileName = sFullEntry.Copy( sPrjEntry.Len() + 1 );
diff --git a/l10ntools/source/export.cxx b/l10ntools/source/export.cxx
index 04b23959d646..0ecca7d9231d 100644
--- a/l10ntools/source/export.cxx
+++ b/l10ntools/source/export.cxx
@@ -263,7 +263,7 @@ extern FILE *GetNextFile()
aEntry += DirEntry( sPrjRoot );
ByteString sPrjEntry( aEntry.GetFull(), RTL_TEXTENCODING_ASCII_US );
- // create file name, beginnig with project root
+ // create file name, beginning with project root
// (e.g.: source\ui\src\menue.src)
sActFileName = sFullEntry.Copy( sPrjEntry.Len() + 1 );
diff --git a/l10ntools/source/export2.cxx b/l10ntools/source/export2.cxx
index 34df550280fb..fb9df40b966e 100644
--- a/l10ntools/source/export2.cxx
+++ b/l10ntools/source/export2.cxx
@@ -36,6 +36,7 @@
#include <tools/urlobj.hxx>
#include <time.h>
#include <stdlib.h>
+#include <boost/shared_ptr.hpp>
using namespace std;
//
@@ -339,9 +340,6 @@ void Export::RemoveUTF8ByteOrderMarkerFromFile( const ByteString &rFilename ){
bool Export::CopyFile( const ByteString& source , const ByteString& dest )
{
// cout << "CopyFile( " << source.GetBuffer() << " , " << dest.GetBuffer() << " )\n";
- const int BUFFERSIZE = 8192;
- char buf[ BUFFERSIZE ];
-
FILE* IN_FILE = fopen( source.GetBuffer() , "r" );
if( IN_FILE == NULL )
{
@@ -357,27 +355,34 @@ bool Export::CopyFile( const ByteString& source , const ByteString& dest )
return false;
}
- while( fgets( buf , BUFFERSIZE , IN_FILE ) != NULL )
+ static const int BUFFERSIZE = 0x100000;
+ boost::shared_ptr<char> aScopedBuffer( new char[BUFFERSIZE] );
+ char* buf = aScopedBuffer.get();
+
+ bool bOk = true;
+ while( bOk )
{
- if( fputs( buf , OUT_FILE ) == EOF )
+ if( feof( IN_FILE ) )
+ break;
+ const size_t nBytesRead = fread( buf, 1, BUFFERSIZE, IN_FILE );
+ if( nBytesRead <= 0 )
+ {
+ if( ferror( IN_FILE ) )
+ {
+ cerr << "Export::CopyFile WARNING: Read problems " << dest.GetBuffer() << "\n";
+ bOk = false;
+ }
+ }
+ else if( fwrite( buf, 1, nBytesRead, OUT_FILE ) <= 0 )
{
cerr << "Export::CopyFile WARNING: Write problems " << source.GetBuffer() << "\n";
- fclose( IN_FILE );
- fclose( OUT_FILE );
- return false;
+ bOk = false;
}
}
- if( ferror( IN_FILE ) )
- {
- cerr << "Export::CopyFile WARNING: Read problems " << dest.GetBuffer() << "\n";
- fclose( IN_FILE );
- fclose( OUT_FILE );
- return false;
- }
fclose ( IN_FILE );
fclose ( OUT_FILE );
- return true;
+ return bOk;
}
/*****************************************************************************/
diff --git a/l10ntools/source/filter/merge/FCFGMerge.cfg b/l10ntools/source/filter/merge/FCFGMerge.cfg
index eaba83610bd7..c7f4e5b7231e 100644
--- a/l10ntools/source/filter/merge/FCFGMerge.cfg
+++ b/l10ntools/source/filter/merge/FCFGMerge.cfg
@@ -32,7 +32,7 @@
loglevel = 2
#************************************************
-# This extension is used for all XML files. It doesnt
+# This extension is used for all XML files. It doesn't
# matter if its used for reading fragments or writing
# XML packages.
# Must be given without any additional signes like "."
@@ -44,7 +44,7 @@ loglevel = 2
extension_xcu=xcu
#************************************************
-# This extension is used for all Package files. It doesnt
+# This extension is used for all Package files. It doesn't
# matter if its used for reading such files or writing
# it.
# Must be given without any additional signes like "."
@@ -91,7 +91,7 @@ subdir_contenthandlers = contenthandlers
#************************************************
# This delimiter is used to split every
# item list of the package configuration files
-# (which are temp. created by the make proccess)
+# (which are temp. created by the make process)
# into its tokens.
#
# [REQUIRED]
diff --git a/l10ntools/source/filter/merge/FCFGMerge.java b/l10ntools/source/filter/merge/FCFGMerge.java
index 6600733d6635..9804181bb11f 100644
--- a/l10ntools/source/filter/merge/FCFGMerge.java
+++ b/l10ntools/source/filter/merge/FCFGMerge.java
@@ -115,7 +115,7 @@ public class FCFGMerge
sOut.append("parameters:\n" );
sOut.append("\tcfg=<file name>\n" );
sOut.append("\t\tmust point to a system file, which contains\n" );
- sOut.append("\t\tall neccessary configuration data for the merge process.\n");
+ sOut.append("\t\tall necessary configuration data for the merge process.\n");
sOut.append("\n\tFurther cou can specify every parameter allowed in the\n" );
sOut.append("\n\tconfig file as command line parameter too, to overwrite\n" );
sOut.append("\n\tthe value from the file.\n" );
diff --git a/l10ntools/source/filter/merge/Merger.java b/l10ntools/source/filter/merge/Merger.java
index 5cb2b40f2e75..8f3e47cdc08c 100644
--- a/l10ntools/source/filter/merge/Merger.java
+++ b/l10ntools/source/filter/merge/Merger.java
@@ -199,7 +199,7 @@ public class Merger
m_aCfg.getString (PROP_XMLPACKAGE ),
m_aCfg.getBoolean(PROP_LANGUAGEPACK, false)));
- // counts all transfered fragments
+ // counts all transferred fragments
// Can be used later to decide, if a generated package file
// contains "nothing"!
int nItemCount = 0;
@@ -307,7 +307,7 @@ public class Merger
// special mode for generating language packs.
// In such case we must live with some missing fragment files.
- // Reason behind; Not all filters are realy localized.
+ // Reason behind; Not all filters are really localized.
// But we dont use a different fragment list. We try to locate
// any fragment file in its language-pack version ...
boolean bHandleLanguagePacks = m_aCfg.getBoolean(PROP_LANGUAGEPACK, false);
@@ -340,7 +340,7 @@ public class Merger
}
// copy file content of original fragment
- // Note: A FileNotFoundException will be thrown automaticly by the
+ // Note: A FileNotFoundException will be thrown automatically by the
// used reader objects. Let it break this method too. Our calli is interested
// on such errors :-)
m_aLog.setDetailedInfo("merge fragment \""+aFragment.getPath()+"\" ...");
diff --git a/l10ntools/source/filter/utils/Cache.java b/l10ntools/source/filter/utils/Cache.java
index be1b56f0ddb7..9e6feff30a4c 100644
--- a/l10ntools/source/filter/utils/Cache.java
+++ b/l10ntools/source/filter/utils/Cache.java
@@ -67,7 +67,7 @@ public class Cache
public static final int FORMAT_60 = 0;
/** identify the configuration format of an office 6.y.
- * Properties are realy xml tags again. */
+ * Properties are really xml tags again. */
public static final int FORMAT_6Y = 1;
/** identify the configuration format which is used inside
@@ -336,7 +336,7 @@ public class Cache
*
* @param aXML
* must be a system file of a suitable XML file, which
- * include all neccessary type/filter items.
+ * include all necessary type/filter items.
*
* @param nFormat
* identifies the format of the specified xml file,
@@ -605,7 +605,7 @@ public class Cache
* specify the file encoding for the generated xml file.
*
* @throws [java.lang.Exception]
- * if something fail during convertion.
+ * if something fail during conversion.
*/
public synchronized void toXML(java.io.File aXML ,
int nFormat ,
@@ -700,7 +700,7 @@ public class Cache
* contains the properties in the requested format.
*
* @throws [java.lang.Exception
- * if something fail during convertion.
+ * if something fail during conversion.
*/
private static java.util.HashMap convertTypePropsToExternal(java.util.HashMap aMap ,
int nFormat)
@@ -800,7 +800,7 @@ public class Cache
* contains the properties in the requested format.
*
* @throws [java.lang.Exception
- * if something fail during convertion.
+ * if something fail during conversion.
*/
private static java.util.HashMap convertFilterPropsToExternal(java.util.HashMap aMap ,
int nFormat)
@@ -855,10 +855,10 @@ public class Cache
//-----------------------------------
case FORMAT_6Y :
{
- // supress "Order" property.
+ // suppress "Order" property.
// Will be moved to type entries in 6.y version!
- // supress "UIName" property.
+ // suppress "UIName" property.
// Only type entries will be localized in 6.y version!
/* TODO make it configurable :-) */
aResultMap.put(PROPNAME_UINAME , aMap.get(PROPNAME_UINAME ));
@@ -903,7 +903,7 @@ public class Cache
* contains the properties in the requested format.
*
* @throws [java.lang.Exception
- * if something fail during convertion.
+ * if something fail during conversion.
*/
private static java.util.HashMap convertDetectServicePropsToExternal(java.util.HashMap aMap ,
int nFormat)
@@ -1009,7 +1009,7 @@ public class Cache
/** converts a type property set (using an external format) to
* our internal cache format.
*
- * Especialy the data format string will be expanded
+ * Especially the data format string will be expanded
* to its real properties.
*
* Schema:
@@ -1051,7 +1051,7 @@ public class Cache
// generate new property "DetectService"
// Every type know its detector diretcly from now. No search
- // will be neccessary any longer.
+ // will be necessary any longer.
aResultMap.put(PROPNAME_DETECTSERVICE, new java.lang.String());
// analyze the Data property of the original map
@@ -1132,7 +1132,7 @@ public class Cache
/** converts a filter property set (using an external format) to
* our internal cache format.
*
- * Especialy the data format string will be expanded
+ * Especially the data format string will be expanded
* to its real properties.
*
* Schema:
@@ -1783,7 +1783,7 @@ public class Cache
{
// last token was not a delimiter - new one is such delim
// => ignore this delimiter - but save the information, that
- // it occured
+ // it occurred
bLastWasDelim = true;
}
}
@@ -1939,7 +1939,7 @@ public class Cache
java.lang.String sType = (java.lang.String)aIt1.next();
java.util.HashMap aType = (java.util.HashMap)m_lTypes.get(sType);
if (aType == null)
- throw new java.lang.Exception("type ["+sType+"] dos not exist realy?!");
+ throw new java.lang.Exception("type ["+sType+"] dos not exist really?!");
if (
(!aType.containsKey(PROPNAME_MEDIATYPE )) ||
@@ -1951,7 +1951,7 @@ public class Cache
(!aType.containsKey(PROPNAME_UINAME ))
)
{
- throw new java.lang.Exception("Type \""+sType+"\" does not contain all neccessary properties for a 6.0/6.Y format.");
+ throw new java.lang.Exception("Type \""+sType+"\" does not contain all necessary properties for a 6.0/6.Y format.");
}
if (
@@ -1973,7 +1973,7 @@ public class Cache
(!aType.containsKey(PROPNAME_DETECTSERVICE ))
)
{
- throw new java.lang.Exception("Type \""+sType+"\" does not contain all neccessary properties for a 6.Y format.");
+ throw new java.lang.Exception("Type \""+sType+"\" does not contain all necessary properties for a 6.Y format.");
}
if (((java.lang.Integer)aType.get(PROPNAME_UIORDER)).intValue() < 0)
@@ -2023,7 +2023,7 @@ public class Cache
java.lang.String sFilter = (java.lang.String)aIt1.next();
java.util.HashMap aFilter = (java.util.HashMap)m_lFilters.get(sFilter);
if (aFilter == null)
- throw new java.lang.Exception("filter ["+sFilter+"] dos not exist realy?!");
+ throw new java.lang.Exception("filter ["+sFilter+"] dos not exist really?!");
if (
(!aFilter.containsKey(PROPNAME_DOCUMENTSERVICE )) ||
@@ -2036,7 +2036,7 @@ public class Cache
(!aFilter.containsKey(PROPNAME_USERDATA ))
)
{
- throw new java.lang.Exception("Filter \""+sFilter+"\" does not contain all neccessary properties for a 6.0/6.Y format.");
+ throw new java.lang.Exception("Filter \""+sFilter+"\" does not contain all necessary properties for a 6.0/6.Y format.");
}
if (((java.lang.Integer)aFilter.get(PROPNAME_FLAGS)).intValue() < 1)
@@ -2052,7 +2052,7 @@ public class Cache
(!aFilter.containsKey(PROPNAME_UINAME))
)
{
- throw new java.lang.Exception("Filter \""+sFilter+"\" does not contain all neccessary properties for a 6.0 format.");
+ throw new java.lang.Exception("Filter \""+sFilter+"\" does not contain all necessary properties for a 6.0 format.");
}
if (((java.lang.Integer)aFilter.get(PROPNAME_ORDER)).intValue() < 0)
@@ -2112,7 +2112,7 @@ public class Cache
java.util.HashMap aFilter = (java.util.HashMap)m_lFilters.get(sFilter);
// remove the "graphic helper filters" used by draw and impress
- // They dont have any valid document service name set and cant be handled
+ // They dont have any valid document service name set and can't be handled
// by our generic FrameLoader!
// They must be moved to her own configuration ...
diff --git a/l10ntools/source/filter/utils/ConfigHelper.java b/l10ntools/source/filter/utils/ConfigHelper.java
index 9a35201c4417..855eb52ff8a9 100644
--- a/l10ntools/source/filter/utils/ConfigHelper.java
+++ b/l10ntools/source/filter/utils/ConfigHelper.java
@@ -66,7 +66,7 @@ public class ConfigHelper extends java.util.Properties
*
* @throws [Exception]
* in case the command line contains an unknown
- * schema for specifiying parameters or the
+ * schema for specifying parameters or the
* specified property file does not exists
* or seem to be corrupted.
*/
@@ -245,7 +245,7 @@ public class ConfigHelper extends java.util.Properties
*
* @param bTrim
* if its set to true, trailing and leading whitespace
- * characters will be ommited.
+ * characters will be omitted.
*
* @param bDecode
* if its set to TRUE all liste items will be
diff --git a/l10ntools/source/filter/utils/FileHelper.java b/l10ntools/source/filter/utils/FileHelper.java
index 21c65c4b0b99..64dc5d71b954 100644
--- a/l10ntools/source/filter/utils/FileHelper.java
+++ b/l10ntools/source/filter/utils/FileHelper.java
@@ -34,7 +34,7 @@ import java.util.*;
/**
* It collects some static helper functons to handle file system specific problems.
- * Sometimes it's neccessary to convert URL from/to system pathes;
+ * Sometimes it's necessary to convert URL from/to system paths;
* or from string notation to structural versions (e.g. com.sun.star.util.URL).
* And sometimes java had another notation then the office it has.
* Further it provides functionality to work easiear with the java.io.File class of java.
@@ -47,7 +47,7 @@ public class FileHelper
/**
* Because the office need URLs for loading/saving documents
- * we must convert used system pathes.
+ * we must convert used system paths.
* And java use another notation for file URLs ... correct it.
*
* @param aSystemPath
@@ -92,7 +92,7 @@ public class FileHelper
/**
* The same as getFileURLFromSystemPath() before but uses string parameter instead
- * of a java.io.File type. It exist to supress converting of neccessary parameters in the
+ * of a java.io.File type. It exist to suppress converting of necessary parameters in the
* outside code. But of course getFileURLFromSystemPath(File) will be a little bit faster
* then this method ...
*
@@ -160,7 +160,7 @@ public class FileHelper
/**
* The same as getURLWithProtocolFromSystemPath() before but uses string parameter instead
- * of a java.io.File types. It exist to supress converting of neccessary parameters in the
+ * of a java.io.File types. It exist to suppress converting of necessary parameters in the
* outside code. But of course getURLWithProtocolFromSystemPath(File,File,String) will be
* a little bit faster then this method ...
*
diff --git a/l10ntools/source/filter/utils/XMLHelper.java b/l10ntools/source/filter/utils/XMLHelper.java
index 3074ed182923..9b877f35fd94 100644
--- a/l10ntools/source/filter/utils/XMLHelper.java
+++ b/l10ntools/source/filter/utils/XMLHelper.java
@@ -33,7 +33,7 @@ import java.io.*;
/**
* It provides some constant values and some static helper routines
- * which are neccessary to work with a xml file - especialy
+ * which are necessary to work with a xml file - especially
* the filter configuration.
*
*
@@ -92,8 +92,8 @@ public class XMLHelper
private static final java.lang.String[] DELIMS = {" ", ",", ";", ".", ":", "-", "_", "#", "'", "+", "*", "~", "=", "?"};
/** index of the default separator inside list DELIMS.
- * Its neccessary to know such default separator; because it can
- * be supressed as xml attribute of the corresponding value tag. */
+ * Its necessary to know such default separator; because it can
+ * be suppressed as xml attribute of the corresponding value tag. */
private static final int DEFAULT_SEPARATOR = 0;
//___________________________________________
@@ -102,7 +102,7 @@ public class XMLHelper
* return a property set of all found sub nodes.
*
* Such properties are organized as [name, value] pairs.
- * The type of a xml node will be detected automaticly.
+ * The type of a xml node will be detected automatically.
* Following types are supported:
* xs:int => java.lang.Integer
* xs:bool => java.lang.Boolean
@@ -291,7 +291,7 @@ public class XMLHelper
* the xml string representation.
*
* @throws [java.lang.Exception]
- * if anything during convertion fill fail.
+ * if anything during conversion fill fail.
*/
public static java.lang.String convertPropSetToXML(java.util.HashMap aPropSet ,
int nPrettyTabs)
@@ -386,7 +386,7 @@ public class XMLHelper
* the xml string representation.
*
* @throws [java.lang.Exception]
- * if anything during convertion fill fail.
+ * if anything during conversion fill fail.
*/
private static java.lang.String convertSimpleObjectToXML(java.lang.String sName ,
java.lang.Object aValue ,
@@ -454,7 +454,7 @@ public class XMLHelper
* the xml string representation.
*
* @throws [java.lang.Exception]
- * if anything during convertion fill fail.
+ * if anything during conversion fill fail.
*/
private static java.lang.String convertListToXML(java.lang.String sName ,
java.util.Vector aValue ,
@@ -498,7 +498,7 @@ public class XMLHelper
sValue = encodeHTMLSigns(sValue);
// append item with default separator, which isn a valid separator at all
- // But supress adding of the separator if last element is reached.
+ // But suppress adding of the separator if last element is reached.
sValBuff.append(sValue);
if (i<(c-1))
sValBuff.append("\n");
@@ -559,7 +559,7 @@ public class XMLHelper
* the xml string representation.
*
* @throws [java.lang.Exception]
- * if anything during convertion fill fail.
+ * if anything during conversion fill fail.
*/
private static java.lang.String convertLocalizedValueToXML(java.lang.String sName ,
java.util.HashMap aValue ,
@@ -570,7 +570,7 @@ public class XMLHelper
int c = aValue.size();
if (c < 1)
- throw new java.lang.Exception("Cant detect type of localized values. Because the given list is empty.");
+ throw new java.lang.Exception("Can't detect type of localized values. Because the given list is empty.");
for (int t=0; t<nPrettyTabs; ++t)
sXML.append("\t");
@@ -644,7 +644,7 @@ public class XMLHelper
return null;
}
- // may it supports attributes in general ... but doesn't have anyone realy.
+ // may it supports attributes in general ... but doesn't have anyone really.
org.w3c.dom.NamedNodeMap lAttribs = aNode.getAttributes();
if (lAttribs==null)
{
diff --git a/l10ntools/source/help/HelpLinker.cxx b/l10ntools/source/help/HelpLinker.cxx
index ea28f111116d..a68e1fd52fc1 100644
--- a/l10ntools/source/help/HelpLinker.cxx
+++ b/l10ntools/source/help/HelpLinker.cxx
@@ -865,7 +865,7 @@ void HelpLinker::main( std::vector<std::string> &args,
{
//No extension mode and extension mode using commandline
//!extsource.empty indicates extension mode using commandline
- // -idxcaption paramter is required
+ // -idxcaption parameter is required
std::stringstream aStrStream;
aStrStream << "no index caption stylesheet given" << std::endl;
throw HelpProcessingException( HELPPROCESSING_GENERAL_ERROR, aStrStream.str() );
@@ -889,7 +889,7 @@ void HelpLinker::main( std::vector<std::string> &args,
{
//No extension mode and extension mode using commandline
//!extsource.empty indicates extension mode using commandline
- // -idxcontent paramter is required
+ // -idxcontent parameter is required
std::stringstream aStrStream;
aStrStream << "no index content stylesheet given" << std::endl;
throw HelpProcessingException( HELPPROCESSING_GENERAL_ERROR, aStrStream.str() );
diff --git a/l10ntools/source/merge.cxx b/l10ntools/source/merge.cxx
index ac63bff7aa05..b72ab28e387c 100644
--- a/l10ntools/source/merge.cxx
+++ b/l10ntools/source/merge.cxx
@@ -361,7 +361,7 @@ void MergeDataFile::InsertEntry(
pData->Insert( rPFO , pFEntrys );
}
- // finaly insert the cur string
+ // finally insert the cur string
pFEntrys->InsertEntry( nLANG , rTEXT, rQHTEXT, rTITLE );
}
diff --git a/l10ntools/source/tagtest.cxx b/l10ntools/source/tagtest.cxx
index 572f330bcd3b..a246bf544869 100644
--- a/l10ntools/source/tagtest.cxx
+++ b/l10ntools/source/tagtest.cxx
@@ -1246,7 +1246,7 @@ void TokenParser::TagRef()
match( aTag, TAG_ENDGRAPHIC );
else
match( aTag, TAG_VERSIONEND );
- // don't reset since alowed only once per paragraph
+ // don't reset since allowed only once per paragraph
// RESET_FLAG( nActiveRefTypes, TAG_NOGROUP( aThisToken ) );
}
else
diff --git a/l10ntools/source/xmlparse.cxx b/l10ntools/source/xmlparse.cxx
index a843eda1ffaf..1ee33cfb4b27 100644
--- a/l10ntools/source/xmlparse.cxx
+++ b/l10ntools/source/xmlparse.cxx
@@ -1246,7 +1246,7 @@ XMLFile *SimpleXMLParser::Execute( SvMemoryStream *pStream )
if ( pXMLFile->GetName().Len()) {
aErrorInformation.sMessage = String::CreateFromAscii( "File " );
aErrorInformation.sMessage += pXMLFile->GetName();
- aErrorInformation.sMessage += String::CreateFromAscii( " parsed succesfully" );
+ aErrorInformation.sMessage += String::CreateFromAscii( " parsed successfully" );
}
else
aErrorInformation.sMessage = String::CreateFromAscii( "XML-File parsed successfully" );
diff --git a/l10ntools/source/xrmmerge.cxx b/l10ntools/source/xrmmerge.cxx
index 79982afd8b05..222058446eb0 100644
--- a/l10ntools/source/xrmmerge.cxx
+++ b/l10ntools/source/xrmmerge.cxx
@@ -235,7 +235,7 @@ extern FILE *GetXrmFile()
aEntry += DirEntry( sPrjRoot );
ByteString sPrjEntry( aEntry.GetFull(), RTL_TEXTENCODING_ASCII_US );
- // create file name, beginnig with project root
+ // create file name, beginning with project root
// (e.g.: source\ui\src\menue.src)
sActFileName = sFullEntry.Copy( sPrjEntry.Len() + 1 );
diff --git a/libtextcat/libtextcat-2.2.patch b/libtextcat/libtextcat-2.2.patch
index cae6bf7319ba..c5cf405d864f 100644
--- a/libtextcat/libtextcat-2.2.patch
+++ b/libtextcat/libtextcat-2.2.patch
@@ -726,7 +726,7 @@
+ while(1) {
- const char *q = p;
-+ const char *q = &p[pointer]; /*[modified] previously p++ above (for(;;p++)) now, it's pointer wich is increased so we have to get the new pointer on the buffer*/
++ const char *q = &p[pointer]; /*[modified] previously p++ above (for(;;p++)) now, it's pointer which is increased so we have to get the new pointer on the buffer*/
char *m = n;
/*** First char may be an underscore ***/
@@ -759,7 +759,7 @@
}
}
+
-+ pointer = nextcharstart(p,pointer); /*[modified] p[pointer] must point on the next start of symbol, but whith utf next start is not surely next char*/
++ pointer = nextcharstart(p,pointer); /*[modified] p[pointer] must point on the next start of symbol, but with utf next start is not surely next char*/
}
return;
}
@@ -1088,8 +1088,8 @@
+}
+
+/**
-+ * Originaly this function had only one parameter (conffile) it has been modified since OOo use
-+ * Basicaly prefix is the directory path where fingerprints are stored
++ * Originally this function had only one parameter (conffile) it has been modified since OOo use
++ * Basically prefix is the directory path where fingerprints are stored
+ */
+extern void *special_textcat_Init( const char *conffile, const char *prefix )
{
@@ -1208,8 +1208,8 @@
extern void *textcat_Init( const char *conffile );
/**
-+ * Originaly this function had only one parameter (conffile) it has been modified since OOo must be able to load alternativ DB
-+ * Basicaly prefix is the directory path where fingerprints are stored
++ * Originally this function had only one parameter (conffile) it has been modified since OOo must be able to load alternativ DB
++ * Basically prefix is the directory path where fingerprints are stored
+ */
+extern void *special_textcat_Init( const char *conffile, const char *prefix );
+
@@ -1284,7 +1284,7 @@
+ ++pointer;
+ }
+ }
-+ if(str[pointer]){ /*finaly, if we are not on the \0 character, we jump to the next character*/
++ if(str[pointer]){ /*finally, if we are not on the \0 character, we jump to the next character*/
+ ++pointer;
+ }
+ return pointer;
@@ -1419,14 +1419,14 @@
+
+/*
+ * Is used to jump to the next start of char
-+ * of course it's only usefull when encoding is utf-8
++ * of course it's only useful when encoding is utf-8
+ * This function have been added by Jocelyn Merand to use libtextcat in OOo
+ */
+int nextcharstart(const char *str, int position);
+
+
+/*Copy the char in str to dest
-+ * of course it's only usefull when encoding is utf8 and the symbol is encoded with more than 1 char
++ * of course it's only useful when encoding is utf8 and the symbol is encoded with more than 1 char
+ * return the number of char jumped
+ * This function have been added by Jocelyn Merand to use libtextcat in OOo
+ */
@@ -1434,14 +1434,14 @@
+
+
+/* checks if n-gram lex is a prefix of key and of length len
-+* if _UTF8_ is defined, it uses escap characters and len is not realy the length of lex
++* if _UTF8_ is defined, it uses escap characters and len is not really the length of lex
+* in this case, len is the number of utf-8 char strlen("€") == 3 but len == 1
+*/
+int issame( char *lex, char *key, int len );
+
+
+/* Counts the number of characters
-+* if _UTF8_ is defined, it uses escap characters and the result is not realy the length of str
++* if _UTF8_ is defined, it uses escap characters and the result is not really the length of str
+* in this case, the result is the number of utf-8 char strlen("€") == 3 but utfstrlen("€") == 1
+*/
+#ifdef __cplusplus
diff --git a/libxml2/libxml2-long-path.patch b/libxml2/libxml2-long-path.patch
index 43bc3eca6714..88afed8426ec 100644
--- a/libxml2/libxml2-long-path.patch
+++ b/libxml2/libxml2-long-path.patch
@@ -8,7 +8,7 @@
+#if defined(_WIN32)
+ //We must not change the backslashes to slashes if the the path starts with
+ // \\?\
-+ //Those pathes can be up to 32k characters long.
++ //Those paths can be up to 32k characters long.
+ len = xmlStrlen(path);
+ if ((len > 3) && (path[0] == '\\') && (path[1] == '\\') && (path[2] == '?') && (path[3] == '\\') )
+ return xmlStrdup((const xmlChar *) path);
diff --git a/libxmlsec/xmlsec1-customkeymanage.patch b/libxmlsec/xmlsec1-customkeymanage.patch
index 8bc97c474d56..72861a2f50d0 100644
--- a/libxmlsec/xmlsec1-customkeymanage.patch
+++ b/libxmlsec/xmlsec1-customkeymanage.patch
@@ -796,7 +796,7 @@
+
+/**
+ * xmlSecNssAppliedKeysMngrCreate:
-+ * @slot: array of pointers to NSS PKCS#11 slot infomation.
++ * @slot: array of pointers to NSS PKCS#11 slot information.
+ * @cSlots: number of slots in the array
+ * @handler: the pointer to NSS certificate database.
+ *
@@ -4386,7 +4386,7 @@
+ * every eligibl slot in the list.
+ *
+ * When try to find a slot for a particular mechanism, the slot bound with
-+ * avaliable mechanism will be looked up firstly.
++ * available mechanism will be looked up firstly.
+ */
+#include "globals.h"
+#include <string.h>
diff --git a/libxmlsec/xmlsec1-noverify.patch b/libxmlsec/xmlsec1-noverify.patch
index c51540caa2aa..d483cb85bbc7 100644
--- a/libxmlsec/xmlsec1-noverify.patch
+++ b/libxmlsec/xmlsec1-noverify.patch
@@ -8,7 +8,7 @@
- return(cert);
- }
+ /* JL: OpenOffice.org implements its own certificate verification routine.
-+ The goal is to seperate validation of the signature
++ The goal is to separate validation of the signature
+ and the certificate. For example, OOo could show that the document signature is valid,
+ but the certificate could not be verified. If we do not prevent the verification of
+ the certificate by libxmlsec and the verification fails, then the XML signature will not be
@@ -36,7 +36,7 @@
+
+ /*
+ JL: OpenOffice.org implements its own certificate verification routine.
-+ The goal is to seperate validation of the signature
++ The goal is to separate validation of the signature
+ and the certificate. For example, OOo could show that the document signature is valid,
+ but the certificate could not be verified. If we do not prevent the verification of
+ the certificate by libxmlsec and the verification fails, then the XML signature may not be
diff --git a/lingucomponent/source/hyphenator/altlinuxhyph/hyphen/hyphenimp.cxx b/lingucomponent/source/hyphenator/altlinuxhyph/hyphen/hyphenimp.cxx
index 0f6f08d77bea..3f39a1037a49 100644
--- a/lingucomponent/source/hyphenator/altlinuxhyph/hyphen/hyphenimp.cxx
+++ b/lingucomponent/source/hyphenator/altlinuxhyph/hyphen/hyphenimp.cxx
@@ -191,7 +191,7 @@ Sequence< Locale > SAL_CALL Hyphenator::getLocales()
aSuppLocales[k++] = aTmp;
}
- //! For each dictionary and each locale we need a seperate entry.
+ //! For each dictionary and each locale we need a separate entry.
//! If this results in more than one dictionary per locale than (for now)
//! it is undefined which dictionary gets used.
//! In the future the implementation should support using several dictionaries
diff --git a/lingucomponent/source/languageguessing/simpleguesser.cxx b/lingucomponent/source/languageguessing/simpleguesser.cxx
index bbe4c739020e..9308a109c5f9 100644
--- a/lingucomponent/source/languageguessing/simpleguesser.cxx
+++ b/lingucomponent/source/languageguessing/simpleguesser.cxx
@@ -158,7 +158,7 @@ Guess SimpleGuesser::GuessPrimaryLanguage(char* text)
}
}
/**
- * Is used to know wich language is available, unavailable or both
+ * Is used to know which language is available, unavailable or both
* when mask = 0xF0, return only Available
* when mask = 0x0F, return only Unavailable
* when mask = 0xFF, return both Available and Unavailable
diff --git a/lingucomponent/source/spellcheck/macosxspell/macspellimp.cxx b/lingucomponent/source/spellcheck/macosxspell/macspellimp.cxx
index 41131de15e09..2b5597b37edc 100644
--- a/lingucomponent/source/spellcheck/macosxspell/macspellimp.cxx
+++ b/lingucomponent/source/spellcheck/macosxspell/macspellimp.cxx
@@ -311,7 +311,7 @@ sal_Bool SAL_CALL
// These are be the default values set in the SN_LINGU_PROPERTIES
// PropertySet which are overridden by the supplied ones from the
// last argument.
- // You'll probably like to use a simplier solution than the provided
+ // You'll probably like to use a simpler solution than the provided
// one using the PropertyHelper_Spell.
PropertyHelper_Spell &rHelper = GetPropHelper();
diff --git a/lingucomponent/source/spellcheck/spell/sspellimp.cxx b/lingucomponent/source/spellcheck/spell/sspellimp.cxx
index edfdfa9b8644..7449b6a12270 100644
--- a/lingucomponent/source/spellcheck/spell/sspellimp.cxx
+++ b/lingucomponent/source/spellcheck/spell/sspellimp.cxx
@@ -184,7 +184,7 @@ Sequence< Locale > SAL_CALL SpellChecker::getLocales()
aSuppLocales[k++] = aTmp;
}
- //! For each dictionary and each locale we need a seperate entry.
+ //! For each dictionary and each locale we need a separate entry.
//! If this results in more than one dictionary per locale than (for now)
//! it is undefined which dictionary gets used.
//! In the future the implementation should support using several dictionaries
@@ -379,7 +379,7 @@ sal_Bool SAL_CALL SpellChecker::isValid( const OUString& rWord, const Locale& rL
// These are be the default values set in the SN_LINGU_PROPERTIES
// PropertySet which are overridden by the supplied ones from the
// last argument.
- // You'll probably like to use a simplier solution than the provided
+ // You'll probably like to use a simpler solution than the provided
// one using the PropertyHelper_Spell.
PropertyHelper_Spell &rHelper = GetPropHelper();
diff --git a/lingucomponent/source/thesaurus/libnth/nthesimp.cxx b/lingucomponent/source/thesaurus/libnth/nthesimp.cxx
index d73090c2e35a..47700d5c710b 100644
--- a/lingucomponent/source/thesaurus/libnth/nthesimp.cxx
+++ b/lingucomponent/source/thesaurus/libnth/nthesimp.cxx
@@ -212,7 +212,7 @@ Sequence< Locale > SAL_CALL Thesaurus::getLocales()
aSuppLocales[k++] = aTmp;
}
- //! For each dictionary and each locale we need a seperate entry.
+ //! For each dictionary and each locale we need a separate entry.
//! If this results in more than one dictionary per locale than (for now)
//! it is undefined which dictionary gets used.
//! In the future the implementation should support using several dictionaries
diff --git a/linguistic/inc/linguistic/misc.hxx b/linguistic/inc/linguistic/misc.hxx
index 105a0573f707..4abd62364318 100644
--- a/linguistic/inc/linguistic/misc.hxx
+++ b/linguistic/inc/linguistic/misc.hxx
@@ -161,7 +161,7 @@ String GetModulePath( SvtPathOptions::Pathes ePath, sal_Bool bAddAccessDelim =
String GetWritableDictionaryURL( const String &rDicName );
// looks for the specified file in the list of paths.
-// In case of multiple occurences only the first found is returned.
+// In case of multiple occurrences only the first found is returned.
String SearchFileInPaths( const String &rFile, const ::com::sun::star::uno::Sequence< ::rtl::OUString > &rPaths );
diff --git a/linguistic/qa/complex/linguistic/HangulHanjaConversion.java b/linguistic/qa/complex/linguistic/HangulHanjaConversion.java
index 69b7a4d79a55..6a1cd690e97b 100644
--- a/linguistic/qa/complex/linguistic/HangulHanjaConversion.java
+++ b/linguistic/qa/complex/linguistic/HangulHanjaConversion.java
@@ -84,7 +84,7 @@ public class HangulHanjaConversion {
boolean bList = checkXConversionDictionaryList(
ConversionDictionaryList);
- assertTrue("XConversionDictionaryList doesnt work as expected", bList);
+ assertTrue("XConversionDictionaryList doesn't work as expected", bList);
}
private boolean checkXConversionDictionaryList(Object list) {
diff --git a/linguistic/source/convdicxml.cxx b/linguistic/source/convdicxml.cxx
index 05e5e9e51b7e..536c98daf142 100644
--- a/linguistic/source/convdicxml.cxx
+++ b/linguistic/source/convdicxml.cxx
@@ -373,7 +373,7 @@ sal_uInt32 ConvDicXMLExport::exportDoc( enum ::xmloff::token::XMLTokenEnum /*eCl
void ConvDicXMLExport::_ExportContent()
{
- // aquire sorted list of all keys
+ // acquire sorted list of all keys
ConvMapKeySet aKeySet;
ConvMap::iterator aIt;
for (aIt = rDic.aFromLeft.begin(); aIt != rDic.aFromLeft.end(); ++aIt)
diff --git a/linguistic/source/lngsvcmgr.cxx b/linguistic/source/lngsvcmgr.cxx
index aa37391727be..828f81128a06 100644
--- a/linguistic/source/lngsvcmgr.cxx
+++ b/linguistic/source/lngsvcmgr.cxx
@@ -357,7 +357,7 @@ LngSvcMgrListenerHelper::LngSvcMgrListenerHelper(
//! number of events forwarded.
//! (This may happen already if a property was changed that has several
//! listeners, and each of them is launching an event of it's own!)
- //! Thus this behaviour is necessary to avoid unecessary actions of
+ //! Thus this behaviour is necessary to avoid unnecessary actions of
//! this objects listeners!
// aLaunchTimer.SetTimeout( 2000 );
// aLaunchTimer.SetTimeoutHdl( LINK( this, LngSvcMgrListenerHelper, TimeOut ) );
@@ -1414,7 +1414,7 @@ uno::Sequence< OUString > SAL_CALL
}
else if (0 == rServiceName.compareToAscii( SN_GRAMMARCHECKER ))
{
- // don't clear cache as it makes start with some extentions so slow it looks
+ // don't clear cache as it makes start with some extensions so slow it looks
// like a freeze (a restart is needed anyway after grammar checker installation),
// see https://issues.apache.org/ooo/show_bug.cgi?id=116409
//clearSvcInfoArray(pAvailGrammarSvcs); pAvailGrammarSvcs = 0;
diff --git a/linguistic/workben/sspellimp.cxx b/linguistic/workben/sspellimp.cxx
index 9a1696d479a3..8131d667eed4 100644
--- a/linguistic/workben/sspellimp.cxx
+++ b/linguistic/workben/sspellimp.cxx
@@ -188,7 +188,7 @@ sal_Bool SAL_CALL
// These are be the default values set in the SN_LINGU_PROPERTIES
// PropertySet which are overridden by the supplied ones from the
// last argument.
- // You'll probably like to use a simplier solution than the provided
+ // You'll probably like to use a simpler solution than the provided
// one using the PropertyHelper_Spell.
PropertyHelper_Spell &rHelper = GetPropHelper();
rHelper.SetTmpPropVals( rProperties );
diff --git a/migrationanalysis/src/driver_docs/allstrings.ulf b/migrationanalysis/src/driver_docs/allstrings.ulf
index 1185b6ec99b5..c3544bd46193 100644
--- a/migrationanalysis/src/driver_docs/allstrings.ulf
+++ b/migrationanalysis/src/driver_docs/allstrings.ulf
@@ -19,2374 +19,2374 @@
*
*************************************************************/
-[RID_STR_COMMON_PRODUCTNAME]
-en-US = "OpenOffice.org"
-
-[RID_STR_COMMON_PRODUCTVERSION]
-en-US = "3.0"
-
-[RID_STR_COMMON_NEXTPRODUCTVERSION]
-en-US = "3.1"
-
-[RID_STR_COMMON_OLE_CONTROL]
-en-US = "OLE Control"
-
-[RID_STR_COMMON_OLE_FIELD_LINK]
-en-US = "OLE Field Link"
-
-[RID_STR_COMMON_OLE_UNKNOWN]
-en-US = "Unknown Type"
-
-[RID_STR_COMMON_VB_COMPONENT_MODULE]
-en-US = "Module"
-
-[RID_STR_COMMON_VB_COMPONENT_STANDARD]
-en-US = "Standard Module"
-
-[RID_STR_COMMON_VB_COMPONENT_CLASS]
-en-US = "Class Module"
-
-[RID_STR_COMMON_VB_COMPONENT_USER_FORM]
-en-US = "User Form"
-
-[RID_STR_COMMON_VB_COMPONENT_DOCUMENT]
-en-US = "Document"
-
-[RID_STR_COMMON_VB_COMPONENT_ACTIVEX_DESIGNER]
-en-US = "ActiveX Designer"
-
-[RID_STR_COMMON_VB_COMPONENT_UNKNOWN]
-en-US = "Unknown"
-
-[RID_STR_COMMON_YES_OR_NO]
-en-US = "Yes or No"
-
-[RID_STR_COMMON_DATE]
-en-US = "Date"
-
-[RID_STR_COMMON_NUMBER]
-en-US = "Number"
-
-[RID_STR_COMMON_TEXT]
-en-US = "Text"
-
-[RID_STR_COMMON_UNKNOWN]
-en-US = "Unknown"
-
-[RID_STR_COMMON_DEC_TO_EXTERNAL_LIBRARY]
-en-US = "Declaration to external library"
-
-[RID_STR_COMMON_RESULTS_LOCATION_TYPE_DOCUMENT]
-en-US = "Document"
-
-[RID_STR_COMMON_RESULTS_LOCATION_TYPE_PAGE]
-en-US = "Page"
-
-[RID_STR_COMMON_RESULTS_LOCATION_TYPE_WORKBOOK]
-en-US = "WorkBook"
-
-[RID_STR_COMMON_RESULTS_LOCATION_TYPE_SHEET]
-en-US = "Sheet"
-
-[RID_STR_COMMON_RESULTS_LOCATION_TYPE_PRESENTATION]
-en-US = "Presentation"
-
-[RID_STR_COMMON_RESULTS_LOCATION_TYPE_SLIDE]
-en-US = "Slide"
-
-[RID_STR_COMMON_INVALID_PASSWORD]
-en-US = "Invalid Password"
-
-[RID_STR_COMMON_PASSWORD_SKIPDOC]
-en-US = "Skip Password Protected"
-
-[RID_STR_COMMON_NA]
-en-US = "na"
-
-[RID_STR_COMMON_ATTRIBUTE_BROKEN]
-en-US = "Broken!"
-
-[RID_STR_COMMON_ATTRIBUTE_BUILTIN]
-en-US = "BuiltIn"
-
-[RID_STR_COMMON_ATTRIBUTE_CHECK_DOCUMENT_REFERENCES]
-en-US = "Check document VB-IDE/Tools/References"
-
-[RID_STR_COMMON_ATTRIBUTE_CLASS_ME_COUNT]
-en-US = "Class refs to Me"
-
-[RID_STR_COMMON_ATTRIBUTE_COMPONENT]
-en-US = "Component"
-
-[RID_STR_COMMON_ATTRIBUTE_CONTROLS]
-en-US = "Controls"
-
-[RID_STR_COMMON_ATTRIBUTE_CUSTOM]
-en-US = "Custom"
-
-[RID_STR_COMMON_ATTRIBUTE_DESCRIPTION]
-en-US = "Description"
-
-[RID_STR_COMMON_ATTRIBUTE_GUID]
-en-US = "GUID"
-
-[RID_STR_COMMON_ATTRIBUTE_FILE]
-en-US = "File"
-
-[RID_STR_COMMON_ATTRIBUTE_PROPERTIES]
-en-US = "Properties"
-
-[RID_STR_COMMON_ATTRIBUTE_FURTHER_MACRO_ANALYSIS_NOT_POSSIBLE]
-en-US = "Further macro analysis not possible"
-
-[RID_STR_COMMON_ATTRIBUTE_INCLUDING]
-en-US = "including:"
-
-[RID_STR_COMMON_ATTRIBUTE_INTACT]
-en-US = "Intact"
-
-[RID_STR_COMMON_ATTRIBUTE_ISBROKEN]
-en-US = "IsBroken"
-
-[RID_STR_COMMON_ATTRIBUTE_MAJOR]
-en-US = "Major"
-
-[RID_STR_COMMON_ATTRIBUTE_MINOR]
-en-US = "Minor"
-
-[RID_STR_COMMON_ATTRIBUTE_MISSING]
-en-US = "MISSING"
-
-[RID_STR_COMMON_ATTRIBUTE_NAME]
-en-US = "Name"
-
-[RID_STR_COMMON_ATTRIBUTE_NON_PORTABLE_EXTERNAL_REFERENCES]
-en-US = "Non Portable External References"
-
-[RID_STR_COMMON_ATTRIBUTE_NON_PORTABLE_EXTERNAL_REFERENCES_COUNT]
-en-US = "External Reference Count"
-
-[RID_STR_COMMON_ATTRIBUTE_NUMBER_OF_LINES]
-en-US = "Number of Lines"
-
-[RID_STR_COMMON_ATTRIBUTE_SIGNATURE]
-en-US = "MD5 Hash"
-
-[RID_STR_COMMON_ATTRIBUTE_PASSWORD]
-en-US = "Password"
-
-[RID_STR_COMMON_ATTRIBUTE_PATH]
-en-US = "Path"
-
-[RID_STR_COMMON_ATTRIBUTE_PROCEDURES]
-en-US = "Procedures"
-
-[RID_STR_COMMON_ATTRIBUTE_PROJECT]
-en-US = "Project"
-
-[RID_STR_COMMON_ATTRIBUTE_TYPE]
-en-US = "Type"
-
-[RID_STR_COMMON_ATTRIBUTE_TYPELIB]
-en-US = "Type Library"
-
-[RID_STR_COMMON_ATTRIBUTE_UNABLE_TO_ACCESS_VBPROJECT]
-en-US = "Unable to access VBProject"
-
-[RID_STR_COMMON_ATTRIBUTE_UNKNOWN]
-en-US = "Unknown"
-
-[RID_STR_COMMON_ATTRIBUTE_USERFORM_TYPE]
-en-US = "Control Types"
-
-[RID_STR_COMMON_ATTRIBUTE_USERFORM_TYPES_COUNT]
-en-US = "Control Types Count"
-
-[RID_STR_COMMON_ATTRIBUTE_VALUE]
-en-US = "Value"
-
-[RID_STR_COMMON_ATTRIBUTE_VBPROJECT_PASSWORD]
-en-US = "VBProject Password set"
-
-[RID_STR_COMMON_ISSUE_INFORMATION]
-en-US = "Information"
-
-[RID_STR_COMMON_ISSUE_FORMAT]
-en-US = "Format"
-
-[RID_STR_COMMON_ISSUE_PORTABILITY]
-en-US = "Portability"
-
-[RID_STR_COMMON_ISSUE_VBA_MACROS]
-en-US = "VBA Macros"
-
-[RID_STR_COMMON_ISSUE_CONTENT_AND_DOCUMENT_PROPERTIES]
-en-US = "Content and Document Properties"
-
-[RID_STR_COMMON_NOTE_DOCUMENT_PROPERTIES_LOST]
-en-US = "this summary property is lost"
-
-[RID_STR_COMMON_SUBISSUE_PROPERTIES]
-en-US = "Properties"
-
-[RID_STR_COMMON_SUBISSUE_REFERENCES]
-en-US = "References"
-
-[RID_STR_COMMON_SUBISSUE_EXTERNAL_REFERENCES_IN_MACROS]
-en-US = "External References in Macro"
-
-[RID_STR_COMMON_SUBISSUE_INVALID_PASSWORD_ENTERED]
-en-US = "Invalid Password Entered"
-
-[RID_STR_COMMON_SUBISSUE_DOCUMENT_PARTS_PROTECTION]
-en-US = "Document Parts Protection"
-
-[RID_STR_COMMON_SUBISSUE_MACRO_PASSWORD_PROTECTION]
-en-US = "Password Protected"
-
-[RID_STR_COMMON_SUBISSUE_PASSWORDS_PROTECTION]
-en-US = "Password Protection"
-
-[RID_STR_COMMON_ATTRIBUTE_OBJECT_NAME]
-en-US = "Object Name"
-
-[RID_STR_COMMON_ATTRIBUTE_OBJECT_TYPE]
-en-US = "Object Type"
-
-[RID_STR_COMMON_ATTRIBUTE_SOURCE]
-en-US = "Source"
-
-[RID_STR_COMMON_NOTE_HF_PREPARABLE]
-en-US = "will add additional returns to the header/footer"
-
-[RID_STR_COMMON_PREPARATION_FOLDER]
-en-US = "prepared"
-
-[RID_STR_COMMON_SUBISSUE_DOCUMENT_CUSTOM_PROPERTY]
-en-US = "Document Custom Property"
-
-[RID_STR_COMMON_MACRO_CLASS_COMPLEX]
-en-US = "Complex"
-
-[RID_STR_COMMON_MACRO_CLASS_MEDIUM]
-en-US = "Medium"
-
-[RID_STR_COMMON_MACRO_CLASS_SIMPLE]
-en-US = "Simple"
-
-[RID_STR_COMMON_MACRO_CLASS_NONE]
-en-US = "No Macros"
-
-[RID_STR_COMMON_ISSUE_CLASS_COMPLEX]
-en-US = "Complex"
-
-[RID_STR_COMMON_ISSUE_CLASS_MINOR]
-en-US = "Minor"
-
-[RID_STR_COMMON_ISSUE_CLASS_NONE]
-en-US = "No Issues"
-
-[RID_STR_COMMON_OV_VERSION_STR]
-en-US = "Created by"
-
-[RID_STR_COMMON_OV_DOC_MOD_DATES_COMMENT_TITLE]
-en-US = "Which documents do you need to migrate?"
-
-[RID_STR_COMMON_OV_DOC_MOD_DATES_COMMENT_BODY]
-en-US = "<CR>The last modified date is an indicator of the importance of a document. It helps you decide which documents should just be archived to a read only format such as Adobe PDF and which actually need to be migrated to <PRODUCTNAME> where they can continue to be updated and modified."
-
-[RID_STR_COMMON_OV_LEGEND_TITLE]
-en-US = "Legend"
-
-[RID_STR_COMMON_OV_DOC_MOD_DATES_LEGEND_BODY]
-en-US = "< 3 months: Migrate to <PRODUCTNAME>.<CR>3 - 6 Months: Careful review to see if they should be archived or migrated to <PRODUCTNAME>.<CR>6 - 12 Months: Quick review, either archive or migrate to the read/write <PRODUCTNAME> XML file format.<CR>> 1 Year: Older than 1 year, archive to read-only format such as PDF"
-
-[RID_STR_COMMON_OV_DOC_MACRO_COMMENT_TITLE]
-en-US = "How many documents contain macros?"
-
-[RID_STR_COMMON_OV_DOC_MACRO_COMMENT_BODY]
-en-US = "<CR><PRODUCTNAME> includes <PRODUCTNAME> BASIC, a Basic dialect that is similar to Microsoft's Visual Basic for Application (VBA), but <PRODUCTNAME> uses a different sets of objects to access the underlying Office.<CR>This makes it necessary to migrate the VBA macros into the platform independent <PRODUCTNAME> BASIC. Your local <PRODUCTNAME> Migration partner can help you with these VBA macro migrations."
-
-[RID_STR_COMMON_OV_DOC_MACRO_LEGEND_BODY]
-en-US = "Complex: Macros using Forms, Controls and external references<CR>Medium: Macros with more than 50 lines of code<CR>Simple: Macros with less than 50 lines of code<CR>None: No macros in the document"
-
-[RID_STR_COMMON_OV_HIGH_LEVEL_ANALYSIS_DAW]
-en-US = "Analysis of document migration issues for documents modified within the last <TOPIC> months"
-
-[RID_STR_COMMON_OV_HIGH_LEVEL_ANALYSIS_PAW_NO_LIMIT]
-en-US = "High level analysis of document migration issues"
-
-[RID_STR_COMMON_OV_DOC_ANALYSIS_COMMENT_TITLE]
-en-US = "Which documents may have migration issues?"
-
-[RID_STR_COMMON_OV_DOC_ANALYSIS_COMMENT_BODY]
-en-US = "<CR>Some Microsoft Office documents may not migrate perfectly into <PRODUCTNAME>. These issues are outlined in the <PRODUCTNAME> Migration Guide. <PRODUCTNAME> engineering is working continously to resolve these issues by improving the Microsoft Office filters.<CR>The Document Analysis Wizard has been provided by <PRODUCTNAME> engineering to detect the most important of these migration issues in any Microsoft Office document you wish to specify. These findings are summarised below [refer to the 'List of documents' sheet to see the list of all analyzed documents]."
-
-[RID_STR_COMMON_OV_DOC_ANALYSIS_DAW_LEGEND_BODY]
-en-US = "Complex: More complex migration issues.<CR>Minor: Minor migration issues easily fixed by any user.<CR>None: No issues Migrate to <PRODUCTNAME> without any issues.<CR><CR>Your <PRODUCTNAME> Migration Partners can help you with these more complex migration issues [refer to link above]. For instance they can migrate these documents to custom templates that achieve the same functionality but work well in both Office environments allowing the documents to be freely exchanged."
-
-[RID_STR_COMMON_OV_DOC_ANALYSIS_PAW_LEGEND_BODY]
-en-US = "Complex: More complex migration issues.<CR>Minor: Minor migration issues easily fixed by any user.<CR>None: No issues Migrate to <PRODUCTNAME> without any issues."
-
-[RID_STR_COMMON_OV_DOC_MOD_DATES_CHART_TITLE]
-en-US = "Document modification dates"
-
-[RID_STR_COMMON_OV_DOC_MACRO_CHART_TITLE]
-en-US = "Document with Macro Migration Issues"
-
-[RID_STR_COMMON_OV_DOC_ANALYSIS_CHART_TITLE]
-en-US = "Documents with Document Migration Issues"
-
-[RID_STR_COMMON_PREPARATION_NOTE]
-en-US = "Preparation"
-
-[RID_STR_COMMON_CANNOT_OPEN]
-en-US = "Cannot open - no analysis possible"
-
-[RID_STR_COMMON_RESULTS_SHEET_NAME_OVERVIEW]
-en-US = "Overview"
-
-[RID_STR_COMMON_RESULTS_SHEET_NAME_COSTS]
-en-US = "Issues Analyzed"
-
-[RID_STR_COMMON_RESULTS_SHEET_NAME_DOCISSUES_WORD]
-en-US = "Word Issues"
-
-[RID_STR_COMMON_RESULTS_SHEET_NAME_DOCISSUES_EXCEL]
-en-US = "Excel Issues"
-
-[RID_STR_COMMON_RESULTS_SHEET_NAME_DOCISSUES_POWERPOINT]
-en-US = "PowerPoint Issues"
-
-[RID_STR_COMMON_RESULTS_SHEET_NAME_DOCISSUE_DETAILS]
-en-US = "Issue Details"
-
-[RID_STR_COMMON_RESULTS_SHEET_NAME_DOCREF_DETAILS]
-en-US = "Reference Details"
-
-[RID_STR_COMMON_RESULTS_SHEET_NAME_DOCPROP]
-en-US = "List of documents"
-
-[RID_STR_COMMON_ANALYSIS_STR]
-en-US = "Analysis"
-
-[RID_STR_COMMON_NOTE_PRE]
-en-US = "Note"
-
-[RID_STR_COMMON_NOTE_POST]
-en-US = " on migration"
-
-[RID_STR_COMMON_OLE_EMBEDDED]
-en-US = "Embedded OLE Object"
-
-[RID_STR_COMMON_OLE_LINKED]
-en-US = "Linked OLE Object"
-
-[RID_STR_EXCEL_ISSUE_CHARTS_AND_TABLES]
-en-US = "Charts and Tables"
-
-[RID_STR_EXCEL_ISSUE_FORMAT]
-en-US = "Format"
-
-[RID_STR_EXCEL_ISSUE_FUNCTIONS]
-en-US = "Functions"
-
-[RID_STR_EXCEL_ISSUE_PORTABILITY]
-en-US = "Portability"
-
-[RID_STR_EXCEL_ISSUE_VBA_MACROS]
-en-US = "VBA Macros"
-
-[RID_STR_EXCEL_ISSUE_INFORMATION]
-en-US = "Information"
-
-[RID_STR_EXCEL_SUBISSUE_PIVOT]
-en-US = "Pivot"
-
-[RID_STR_EXCEL_SUBISSUE_ZOOM]
-en-US = "Zoom"
-
-[RID_STR_EXCEL_TRUE]
-en-US = "True"
-
-[RID_STR_EXCEL_FALSE]
-en-US = "False"
-
-[RID_STR_EXCEL_SUBISSUE_MAX_SHEETS_EXCEEDED]
-en-US = "Maximum Sheets Exceeded"
-
-[RID_STR_EXCEL_SUBISSUE_ATTRIBUTES]
-en-US = "Cell Attributes"
-
-[RID_STR_EXCEL_SUBISSUE_EXTERNAL]
-en-US = "External"
-
-[RID_STR_EXCEL_SUBISSUE_SHEET_CHART]
-en-US = "Sheet Chart"
-
-[RID_STR_EXCEL_SUBISSUE_EMBEDDED_CHART]
-en-US = "Embedded Chart"
-
-[RID_STR_EXCEL_SUBISSUE_INVALID_WORKSHEET_NAME]
-en-US = "Invalid Worksheet Name"
-
-[RID_STR_EXCEL_ATTRIBUTE_BADCHARACTER]
-en-US = "'<TOKEN1>' at pos <TOKEN2>"
-
-[RID_STR_EXCEL_ATTRIBUTE_DB_QUERY]
-en-US = "Connection string"
-
-[RID_STR_EXCEL_ATTRIBUTE_NAME]
-en-US = "Name"
-
-[RID_STR_EXCEL_ATTRIBUTE_NUMBER_OF_PIVOTFIELDS]
-en-US = "Number of PivotFields"
-
-[RID_STR_EXCEL_ATTRIBUTE_TITLE]
-en-US = "Title"
-
-[RID_STR_EXCEL_ATTRIBUTE_TYPE]
-en-US = "Type"
-
-[RID_STR_EXCEL_ATTRIBUTE_PIE]
-en-US = "Pie"
-
-[RID_STR_EXCEL_ATTRIBUTE_SLICES_IN_DIFFERENT_DIRECTION]
-en-US = "Slices in diff. direction"
-
-[RID_STR_EXCEL_ATTRIBUTE_LEGEND_NAME]
-en-US = "Legend Name"
-
-[RID_STR_EXCEL_ATTRIBUTE_NUMBER_OF_LEGEND_ENTRIES]
-en-US = "Number of Legend Entries"
-
-[RID_STR_EXCEL_ATTRIBUTE_PIVOT_TABLE_NAME]
-en-US = "PivotTable Name"
-
-[RID_STR_EXCEL_ATTRIBUTE_PIVOT_FIELDS_VISIBLE]
-en-US = "PivotFields Visible"
-
-[RID_STR_EXCEL_ATTRIBUTE_PIVOT_FIELDS_NUM]
-en-US = "Number of PivotFields"
-
-[RID_STR_EXCEL_ATTRIBUTE_PRINT_RANGE]
-en-US = "Print Range"
-
-[RID_STR_EXCEL_ATTRIBUTE_DISPLAY_ZOOM]
-en-US = "Display Zoom"
-
-[RID_STR_EXCEL_ATTRIBUTE_NUMBER_OF_SHEETS]
-en-US = "Number of Sheets"
-
-[RID_STR_EXCEL_ATTRIBUTE_LIST_SOURCE]
-en-US = "ListSource"
-
-[RID_STR_EXCEL_ATTRIBUTE_CUSTOM_FORMULA]
-en-US = "Custom Formula"
-
-[RID_STR_EXCEL_ATTRIBUTE_SET]
-en-US = "Set"
-
-[RID_STR_EXCEL_ATTRIBUTE_LINE_STYLE]
-en-US = "Line Style"
-
-[RID_STR_EXCEL_ATTRIBUTE_DASHED_DOT]
-en-US = "Dashed/Dot"
-
-[RID_STR_EXCEL_ATTRIBUTE_FILL_PATTERN]
-en-US = "Fill Pattern"
-
-[RID_STR_EXCEL_ATTRIBUTE_PATTERNED]
-en-US = "Patterned"
-
-[RID_STR_EXCEL_ATTRIBUTE_FUNCTION_STRING]
-en-US = "Function String"
-
-[RID_STR_EXCEL_ATTRIBUTE_PASSWORD_TO_OPEN]
-en-US = "Password to Open"
-
-[RID_STR_EXCEL_ATTRIBUTE_PASSWORD_TO_MODIFY]
-en-US = "Password to Modify"
-
-[RID_STR_EXCEL_ATTRIBUTE_OBJECT_TYPE]
-en-US = "Object Type"
-
-[RID_STR_EXCEL_ATTRIBUTE_OBJECT_NAME]
-en-US = "Object Name"
-
-[RID_STR_EXCEL_ATTRIBUTE_SOURCE]
-en-US = "Source"
-
-[RID_STR_EXCEL_ATTRIBUTE_VALUE]
-en-US = "Value"
-
-[RID_STR_EXCEL_ATTRIBUTE_UNABLE_TO_ACCESS_VBPROJECT]
-en-US = "Unable to access VBProject"
-
-[RID_STR_EXCEL_ATTRIBUTE_FURTHER_MACRO_ANALYSIS_NOT_POSSIBLE]
-en-US = "Further macro analysis not possible"
-
-[RID_STR_EXCEL_ATTRIBUTE_VBPROJECT_PASSWORD_SET]
-en-US = "VBProject Password Set"
-
-[RID_STR_EXCEL_ATTRIBUTE_PROJECT]
-en-US = "Project"
-
-[RID_STR_EXCEL_ATTRIBUTE_COMPONENT]
-en-US = "Component"
-
-[RID_STR_EXCEL_ATTRIBUTE_PROCEDURES]
-en-US = "Procedures"
-
-[RID_STR_EXCEL_ATTRIBUTE_NUMBER_OF_LINES]
-en-US = "Number of Lines"
-
-[RID_STR_EXCEL_ATTRIBUTE_CONTROLS]
-en-US = "Controls"
-
-[RID_STR_EXCEL_ATTRIBUTE_TYPES]
-en-US = "Types"
-
-[RID_STR_EXCEL_ATTRIBUTE_DESCRIPTION]
-en-US = "Description"
-
-[RID_STR_EXCEL_ATTRIBUTE_FILE]
-en-US = "File"
-
-[RID_STR_EXCEL_ATTRIBUTE_PATH]
-en-US = "Path"
-
-[RID_STR_EXCEL_ATTRIBUTE_MISSING]
-en-US = "MISSING"
-
-[RID_STR_EXCEL_ATTRIBUTE_CHECK_DOCUMENT_REFERENCES]
-en-US = "Check document VB-IDE/Tools/References"
-
-[RID_STR_EXCEL_ATTRIBUTE_MAJOR]
-en-US = "Major"
-
-[RID_STR_EXCEL_ATTRIBUTE_MINOR]
-en-US = "Minor"
-
-[RID_STR_EXCEL_ATTRIBUTE_BUILT_IN]
-en-US = "Built In"
-
-[RID_STR_EXCEL_ATTRIBUTE_INTACT]
-en-US = "Intact"
-
-[RID_STR_EXCEL_ATTRIBUTE_TYPELIB]
-en-US = "TypeLib"
-
-[RID_STR_EXCEL_ATTRIBUTE_GUID]
-en-US = "GUID"
-
-[RID_STR_EXCEL_ATTRIBUTE_CUSTOM]
-en-US = "Custom"
-
-[RID_STR_EXCEL_ATTRIBUTE_IS_BROKEN]
-en-US = "Is Broken"
-
-[RID_STR_EXCEL_ATTRIBUTE_BROKEN]
-en-US = "Broken!"
-
-[RID_STR_EXCEL_ATTRIBUTE_NON_PORTABLE_EXTERNAL_REFERENCES]
-en-US = "Non Portable External References"
-
-[RID_STR_EXCEL_ATTRIBUTE_INCLUDING]
-en-US = "including:"
-
-[RID_STR_EXCEL_ATTRIBUTE_PASSWORD]
-en-US = "Password"
-
-[RID_STR_EXCEL_ENUMERATION_CUSTOM]
-en-US = "Custom"
-
-[RID_STR_EXCEL_ENUMERATION_LIST]
-en-US = "List"
-
-[RID_STR_EXCEL_ENUMERATION_UNKNOWN]
-en-US = "Unknown"
-
-[RID_STR_EXCEL_ENUMERATION_LINE_STYLE_CONTINUOUS]
-en-US = "Continuous"
-
-[RID_STR_EXCEL_ENUMERATION_LINE_STYLE_DASH]
-en-US = "Dash"
-
-[RID_STR_EXCEL_ENUMERATION_LINE_STYLE_DASHDOT]
-en-US = "DashDot"
-
-[RID_STR_EXCEL_ENUMERATION_LINE_STYLE_DOT]
-en-US = "Dot"
-
-[RID_STR_EXCEL_ENUMERATION_LINE_STYLE_DOUBLE]
-en-US = "Double"
-
-[RID_STR_EXCEL_ENUMERATION_LINE_STYLE_SLANTDASHDOT]
-en-US = "SlantDashDot"
-
-[RID_STR_EXCEL_ENUMERATION_LINE_STYLE_LINESTYLENONE]
-en-US = "LineStyleNone"
-
-[RID_STR_EXCEL_NOTE_DB_QUERY]
-en-US = "The connection to the database in <PRODUCTNAME> will be lost . The data will appear correctly but can not be updated."
-
-[RID_STR_EXCEL_NOTE_INVALIDWORKSHEETNAME]
-en-US = "The worksheet name contains characters that are not supported by <PRODUCTNAME>. Please rename your sheet and exclude these characters."
-
-[RID_STR_EXCEL_NOTE_ZOOM]
-en-US = "all sheets will have the same zoom irrespective of their Excel View/Zoom setting after migration to <PRODUCTNAME>"
-
-[RID_STR_EXCEL_NOTE_CELL_ATTRIBUTES_3]
-en-US = "this line style is imported as a solid line. Only solid line syles are supported in <PRODUCTNAME>"
-
-[RID_STR_EXCEL_NOTE_CELL_ATTRIBUTES_4]
-en-US = "this fill pattern is imported as a solid gray. Only solid fill patterns are supported in <PRODUCTNAME>"
-
-[RID_STR_EXCEL_NOTE_CELL_FUNCTIONS_1]
-en-US = "this function returns platform dependent information specific to Windows and is not imported to <PRODUCTNAME>"
-
-[RID_STR_EXCEL_NOTE_CELL_FUNCTIONS_2]
-en-US = "this function returns error codes specific to Excel and is imported in <PRODUCTNAME> as the stub function ErrorType() always returning Err.520"
-
-[RID_STR_EXCEL_NOTE_CELL_FUNCTIONS_3]
-en-US = "this is an external function referenced from an Excel spreadsheet. It does not import correctly to <PRODUCTNAME>. The external reference is stripped and the resulting formula always returns #ADDIN?"
-
-[RID_STR_EXCEL_NOTE_DOCUMENT_PROPERTIES_1]
-en-US = "this summary property is lost"
-
-[RID_STR_EXCEL_NOTE_DOCUMENT_PROPERTIES_2]
-en-US = "this custom property is lost"
-
-[RID_STR_EXCEL_NOTE_SHEET_LIMITS_1]
-en-US = "all sheets will be lost in <PRODUCTNAME> that are greater than "
-
-[RID_STR_EXCEL_NOTE_SHEET_LIMITS_2]
-en-US = "all sheets must be moved to a new workbook before migration that are greater than "
-
-[RID_STR_EXCEL_SUBLOCATION_NA]
-en-US = "na"
-
-[RID_STR_EXCEL_SUBISSUE_WORKBOOK_PROTECTION]
-en-US = "Workbook Protection"
-
-[RID_STR_EXCEL_ATTRIBUTE_PROTECT_TYPE_SHARING]
-en-US = "Protection Sharing"
-
-[RID_STR_EXCEL_ATTRIBUTE_PROTECT_TYPE_STRUCTURE]
-en-US = "Protection Structure"
-
-[RID_STR_EXCEL_ATTRIBUTE_PROTECT_TYPE_WINDOWS]
-en-US = "Protection Windows"
-
-[RID_STR_EXCEL_NOTE_PASSWORD_TO_OPEN]
-en-US = "workbook is protected"
-
-[RID_STR_EXCEL_NOTE_DATATABLE]
-en-US = "no simple workaround, could copy the data table and paste below the chart"
-
-[RID_STR_EXCEL_NOTE_XAXISCATEGORY]
-en-US = "only category option supported. Setup your category labels you need on the sheet"
-
-[RID_STR_EXCEL_NOTE_UNSUPPORTEDTYPE1]
-en-US = "following chart types not supported"
-
-[RID_STR_EXCEL_NOTE_UNSUPPORTEDTYPE2]
-en-US = "pie of pie,exploded 3D pie,bar of pie,bubble,filled radar,exploded doughnut"
-
-[RID_STR_EXCEL_NOTE_TRENDLINE]
-en-US = "replace the trend line by drawing a line on the chart. You must click outside the chart when adding the line and drag it onto the chart. Objects created by clicking on the chart will not import"
-
-[RID_STR_EXCEL_NOTE_DATALABELWITHLEGEND]
-en-US = "after import into <PRODUCTNAME>, select Insert->Data Labels->show legend icon with label and the legend key will appear"
-
-[RID_STR_EXCEL_NOTE_LEGENDPOSITION]
-en-US = "only legend to the right is supported on import. Change legend position in <PRODUCTNAME> after import"
-
-[RID_STR_EXCEL_NOTE_TITLEFONT]
-en-US = "title font with different font size is not supported on import, set a sub-title in <PRODUCTNAME>, then change the font size"
-
-[RID_STR_EXCEL_NOTE_SERIESCHARTTYPE]
-en-US = "multiple series with different chart types. SO only supports one chart type for all series. Adjust the chart type to best display the series"
-
-[RID_STR_EXCEL_NOTE_DATASOURCENOTLINKEDTOCELL]
-en-US = "data sources to catalogue or other external sources not supported. Data source must be set to cell or range on the sheet"
-
-[RID_STR_EXCEL_NOTE_CATEGORYANDDATA]
-en-US = "category names must be located above or to the left of the value ranges"
-
-[RID_STR_EXCEL_NOTE_DATASOURCEONDIFFERENTSHEET]
-en-US = "data sources must be located on the same sheet. Paste the data sources onto the same sheet"
-
-[RID_STR_EXCEL_NOTE_CATEGORYLABELMORETHANONECELL]
-en-US = "category labels spanning multiple cells are not supported. Copy all the text to one cell"
-
-[RID_STR_EXCEL_NOTE_COLUMNBAR]
-en-US = "chart 'series in' must match the data source. For data source in single row, set 'series in' = row. For data source in single column, set 'series in' = column"
-
-[RID_STR_EXCEL_NOTE_BORDER]
-en-US = "chart border will not appear in <PRODUCTNAME>, before import,set border to none, draw a rectangle around the border of the chart"
-
-[RID_STR_EXCEL_NOTE_AXISINTERVAL]
-en-US = " y axis interval setting will be changed in <PRODUCTNAME>. Modify axes interval setting in <PRODUCTNAME>, re-set major interval scale"
-
-[RID_STR_EXCEL_ATTRIBUTE_DATATABLE]
-en-US = "Data Table"
-
-[RID_STR_EXCEL_ATTRIBUTE_INVALIDCHARACTER]
-en-US = "Invalid Characters"
-
-[RID_STR_EXCEL_ATTRIBUTE_XAXISCATEGORY]
-en-US = "Chart Axes"
-
-[RID_STR_EXCEL_ATTRIBUTE_TIMESCALE]
-en-US = "time scale/auto"
-
-[RID_STR_EXCEL_ATTRIBUTE_UNSUPPORTEDTYPE]
-en-US = "Unsupported Chart Type"
-
-[RID_STR_EXCEL_ATTRIBUTE_TRENDLINE]
-en-US = "Trendline"
-
-[RID_STR_EXCEL_ATTRIBUTE_DATALABELWITHLEGEND]
-en-US = "Data Label With Legend"
-
-[RID_STR_EXCEL_ATTRIBUTE_LEGENDPOSITION]
-en-US = "Legend Position"
-
-[RID_STR_EXCEL_ATTRIBUTE_TITLEFONT]
-en-US = "Title Font"
-
-[RID_STR_EXCEL_ATTRIBUTE_DIFFERENT]
-en-US = "Different"
-
-[RID_STR_EXCEL_ATTRIBUTE_SERIESCHARTTYPE]
-en-US = "Multiple series chart type"
-
-[RID_STR_EXCEL_ATTRIBUTE_CHANGED]
-en-US = "changed"
-
-[RID_STR_EXCEL_ATTRIBUTE_DATASOURCE]
-en-US = "Data Source"
-
-[RID_STR_EXCEL_ATTRIBUTE_DATASOURCENOTLINKEDTOCELL]
-en-US = "Not Linked To A Cell"
-
-[RID_STR_EXCEL_ATTRIBUTE_CATEGORYANDDATA]
-en-US = "Category And Data"
-
-[RID_STR_EXCEL_ATTRIBUTE_SEPARATE]
-en-US = "Separate"
-
-[RID_STR_EXCEL_ATTRIBUTE_DATASOURCEONDIFFERENTSHEET]
-en-US = "On Different Sheet"
-
-[RID_STR_EXCEL_ATTRIBUTE_CATEGORYLABEL]
-en-US = "Category Label"
-
-[RID_STR_EXCEL_ATTRIBUTE_CATEGORYLABELMORETHANONECELL]
-en-US = "More Than One Cell"
-
-[RID_STR_EXCEL_ATTRIBUTE_COLUMNBAR]
-en-US = "Column/Bar Chart"
-
-[RID_STR_EXCEL_ATTRIBUTE_ONECOLUMNROW]
-en-US = "Data Source With Single Column/ Chart Series In Row"
-
-[RID_STR_EXCEL_ATTRIBUTE_BORDER]
-en-US = "Border"
-
-[RID_STR_EXCEL_ATTRIBUTE_AXISINTERVAL]
-en-US = "Y Axis Interval"
-
-[RID_STR_EXCEL_ATTRIBUTE_AUTO]
-en-US = "Auto"
-
-[RID_STR_EXCEL_ATTRIBUTE_CHARTNAME]
-en-US = "Chart Name"
-
-[RID_STR_EXCEL_SUBISSUE_CHART_COMPLEX]
-en-US = "Chart Issues Complex"
-
-[RID_STR_EXCEL_SUBISSUE_CHART_MINOR]
-en-US = "Chart Issues Minor"
-
-[RID_STR_EXCEL_ATTRIBUTE_NOTRIGHT]
-en-US = "not at right hand side"
-
-[RID_STR_EXCEL_ATTRIBUTE_NUMBER_OF_CELLS]
-en-US = "number cells effected"
-
-[RID_STR_PP_TRUE]
-en-US = "True"
-
-[RID_STR_PP_FALSE]
-en-US = "False"
-
-[RID_STR_PP_ISSUE_OBJECTS_GRAPHICS_AND_TEXTBOXES]
-en-US = "Objects, Graphics and Textboxes"
-
-[RID_STR_PP_SUBISSUE_COMMENT]
-en-US = "Comment"
-
-[RID_STR_PP_SUBISSUE_MOVIE]
-en-US = "Movie"
-
-[RID_STR_PP_ATTRIBUTE_CONTENT]
-en-US = "Content"
-
-[RID_STR_PP_ATTRIBUTE_LOOP]
-en-US = "Loop"
-
-[RID_STR_PP_ATTRIBUTE_PLAYONENTRY]
-en-US = "PlayOnEntry"
-
-[RID_STR_PP_ATTRIBUTE_REWIND]
-en-US = "Rewind"
-
-[RID_STR_PP_ATTRIBUTE_TYPES]
-en-US = "Types"
-
-[RID_STR_PP_ENUMERATION_VIEW_HANDOUT_MASTER]
-en-US = "View Handout Master"
-
-[RID_STR_PP_ENUMERATION_VIEW_NORMAL]
-en-US = "View Normal"
-
-[RID_STR_PP_ENUMERATION_VIEW_NOTES_MASTER]
-en-US = "View Notes Master"
-
-[RID_STR_PP_ENUMERATION_VIEW_NOTES_PAGE]
-en-US = "View Notes Page"
-
-[RID_STR_PP_ENUMERATION_VIEW_OUTLINE]
-en-US = "View Outline"
-
-[RID_STR_PP_ENUMERATION_VIEW_SLIDE]
-en-US = "View Slide"
-
-[RID_STR_PP_ENUMERATION_VIEW_SLIDE_MASTER]
-en-US = "View Slide Master"
-
-[RID_STR_PP_ENUMERATION_VIEW_SLIDE_SORTER]
-en-US = "View Slide Sorter"
-
-[RID_STR_PP_ENUMERATION_VIEW_TITLE_MASTER]
-en-US = "View Title Master"
-
-[RID_STR_PP_ENUMERATION_UNKNOWN]
-en-US = "Unknown"
-
-[RID_RESXLS_COST_Action_Settings]
-en-US = "Action Settings"
-
-[RID_RESXLS_COST_Add_custom_properties_to_document_Properties_Summary_Comments_field]
-en-US = "Add custom properties to document Properties Summary Comments field."
-
-[RID_RESXLS_COST_Additional_Weighting_Factors]
-en-US = "Additional Weighting Factors"
-
-[RID_RESXLS_COST_All_sheets__256_will_need_to_be_moved_to_a_new_workbook]
-en-US = "All sheets >256 will need to be moved to a new workbook"
-
-[RID_RESXLS_COST_Appearance]
-en-US = "Appearance"
-
-[RID_RESXLS_COST_Application]
-en-US = "Application"
-
-[RID_RESXLS_COST_AutoFilter]
-en-US = "AutoFilter"
-
-[RID_RESXLS_COST_Border_Styles]
-en-US = "Border Styles"
-
-[RID_RESXLS_COST_Cell_Attributes]
-en-US = "Cell Attributes"
-
-[RID_RESXLS_COST_CELL_SPAN_WORKAROUND]
-en-US = "Add extra row below cell. Cut and paste contents running onto 2nd page into new cell."
-
-[RID_RESXLS_COST_Cell_Spanning_Page]
-en-US = "Cell Spanning Page"
-
-[RID_RESXLS_COST_ChangesAndReviewing]
-en-US = "Changes And Reviewing"
-
-[RID_RESXLS_COST_Charts_And_Tables]
-en-US = "Charts And Tables"
-
-[RID_RESXLS_COST_Comment]
-en-US = "Comment"
-
-[RID_RESXLS_COST_Content_And_Document_Properties]
-en-US = "Content And Document Properties"
-
-[RID_RESXLS_COST_ContentAndDocumentProperties]
-en-US = "Content And Document Properties"
-
-[RID_RESXLS_COST_Controls]
-en-US = "Controls"
-
-[RID_RESXLS_COST_Cost]
-en-US = "Cost Comment"
-
-[RID_RESXLS_COST_Cost__In_simple_cases_cut_and_paste_to_new_sheet_3___5_min]
-en-US = "Cost: In simple cases cut and paste to new sheet. 3 - 5 min. May exist functions that refer to these cells. 10+"
-
-[RID_RESXLS_COST_COST_0]
-en-US = "Cost = 0. No work around."
-
-[RID_RESXLS_COST_COST_EMBED_CHART]
-en-US = "Variations in cost can range from 0 - 30 mins. Cost caused by uneven data souce, external data source, unsupported chart types, floating legend position."
-
-[RID_RESXLS_COST_COST_ERROR_TYPE]
-en-US = "Fix up cost can vary depending on the context in which this is used. Cost 3 - 5"
-
-[RID_RESXLS_COST_COST_INFO]
-en-US = "Fix up cost can vary depending on the context in which this is used. Cost 2 - 4"
-
-[RID_RESXLS_COST_COST_INVAL_PASS]
-en-US = "Cost = 0. Rerun analysis with correct password."
-
-[RID_RESXLS_COST_COST_INVALID_WORKSHEET_NAME]
-en-US = "Aufewand: Vergewissern Sie sich nach der Umbenennung, dass alle Makros mit Verweisen auf dieses Arbeitsblatt ebenfalls angepaßt werden. Der Aufwand hĂ€ngt von der Zahl der Codezeilen ab, die auf den Arbeitsblattnamen verweisen."
-en-US = "Cost: When the worksheet has been renamed, ensure that all macros with a reference to the worksheet are also renamed accordingly. Cost depends on how many lines of code there are that refer to the worksheet name."
-
-[RID_RESXLS_COST_Cost_of_4_min_per_line__takes_no_account_of_complexity_of_code__number_of_comment_lines_and_so_on]
-en-US = "Cost of 4 min per line, takes no account of complexity of code, number of comment lines and so on"
-
-[RID_RESXLS_COST_Cost_per_Issue_or_Factor__min]
-en-US = "Cost per Issue or Factor (min)"
-
-[RID_RESXLS_COST_COST_PIVOT]
-en-US = "Cost = 0. Calc does not support dynamically created charts. No workaround."
-
-[RID_RESXLS_COST_COST_SHEET_CHART]
-en-US = "Variations in cost can range from 0 - 30 mins. Cost caused by uneven data souce, external data source, unsupported chart types, floating legend position."
-
-[RID_RESXLS_COST_Cost_variations_occur_because_of_the_use_of_macros_with_controls]
-en-US = "Cost variations occur because of the use of macros with controls."
-
-[RID_RESXLS_COST_COST_VBA_CONT_TYPE]
-en-US = "Cost = 0. Total number of controls better estimate - this information is useful as an indication of complexity of the Forms."
-
-[RID_RESXLS_COST_COST_VBA_CONTROLS]
-en-US = "Cost = 3 minute per control, this does not take account of issues with Frame controls or the number of these controls that have event handlers that need manually linked to migrated code."
-
-[RID_RESXLS_COST_COST_VBA_FORMS]
-en-US = "Cost = 0. Using total number of controls on forms as better estimate"
-
-[RID_RESXLS_COST_COST_VBA_LOC]
-en-US = "Cost of 4 min per line, takes no account of complexity of code, number of comment lines and so on"
-
-[RID_RESXLS_COST_COST_VBA_PROPS]
-en-US = "Cost = 0 using lines of code as better cost estimate."
-
-[RID_RESXLS_COST_Costs__min]
-en-US = "Costs (min)"
-
-[RID_RESXLS_COST_Custom_Bullet_List]
-en-US = "Custom Bullet List"
-
-[RID_RESXLS_COST_Document_Custom_Properties]
-en-US = "Document Custom Properties"
-
-[RID_RESXLS_COST_Document_Parts_Protection]
-en-US = "Document Parts Protection"
-
-[RID_RESXLS_COST_Embedded_Chart]
-en-US = "Chart Issues Minor"
-
-[RID_RESXLS_COST_embedded_objects]
-en-US = "Cost = 0. Most embedded objects come across. If one does not then this may require some reenginering and is not in the scope of an automated cost calculation."
-
-[RID_RESXLS_COST_Embedded_OLE_Object]
-en-US = "Embedded OLE Object"
-
-[RID_RESXLS_COST_Excel]
-en-US = "Excel"
-
-[RID_RESXLS_COST_Excel_Totals]
-en-US = "Excel Totals"
-
-[RID_RESXLS_COST_External]
-en-US = "External"
-
-[RID_RESXLS_COST_External_References_In_Macro___Module__Class_or_UserForm]
-en-US = "External References In Macro - Module, Class or UserForm"
-
-[RID_RESXLS_COST_Factor_Count]
-en-US = "Factor Count"
-
-[RID_RESXLS_COST_Fields]
-en-US = "Fields"
-
-[RID_RESXLS_COST_Filters]
-en-US = "Filters"
-
-[RID_RESXLS_COST_Fixed_SO7]
-en-US = "Fixed <PRODUCTNAME> <PRODUCTVERSION>"
-
-[RID_RESXLS_COST_Form_Field]
-en-US = "Form Field"
-
-[RID_RESXLS_COST_Format]
-en-US = "Format"
-
-[RID_RESXLS_COST_Functions]
-en-US = "Functions"
-
-[RID_RESXLS_COST_Zoom]
-en-US = "Zoom"
-
-[RID_RESXLS_COST_HEADERFOOTER_WORKAROUND]
-en-US = "Insert carriage returns to resize header/ footer to the size of the graphic."
-
-[RID_RESXLS_COST_Hours_Per_MD]
-en-US = "Hours Per MD ="
-
-[RID_RESXLS_COST_Indexes_And_References]
-en-US = "Indexes And References"
-
-[RID_RESXLS_COST_Invalid_Password_Entered]
-en-US = "Invalid Password Entered"
-
-[RID_RESXLS_COST_Invalid_Worksheet_Name]
-en-US = "Invalid Worksheet Name"
-
-[RID_RESXLS_COST_Issue__18_of_the_24_table_border_styles_do_not_display_correctly]
-en-US = "Issue: 18 of the 24 table border styles do not display correctly."
-
-[RID_RESXLS_COST_Issue__256_sheet_limit_exceeded]
-en-US = "Issue: 256 sheet limit exceeded."
-
-[RID_RESXLS_COST_Issue__32000_row_limit_exceeded]
-en-US = "Issue: 32000 row limit exceeded."
-
-[RID_RESXLS_COST_Issue__A_worksheet_in_the_workbook_has_a_name_with_invalid_characters]
-en-US = "Issue: A worksheet in the workbook has a name with invalid characters."
-
-[RID_RESXLS_COST_Issue__AutoFilter_does_not_function_properly]
-en-US = "Issue: AutoFilter does not function properly."
-
-[RID_RESXLS_COST_Issue__Calls_to_windows_API_functions_are_windows_specific]
-en-US = "Issue: Calls to windows API functions are windows specific."
-
-[RID_RESXLS_COST_Issue__Chart_support_is_limited_in_SO7]
-en-US = "Issue: Chart support is limited in <PRODUCTNAME>."
-
-[RID_RESXLS_COST_Issue__Comments_are_lost_on_migration_to_SO7]
-en-US = "Issue: Comments are lost on migration to <PRODUCTNAME>."
-
-[RID_RESXLS_COST_Issue__Custom_Properties_are_lost_on_migration]
-en-US = "Issue: Custom Properties are lost on migration"
-
-[RID_RESXLS_COST_Issue__Document_is_password_protected_and_cannot_be_opened_by_SO]
-en-US = "Issue: Document is password protected and cannot be opened by SO."
-
-[RID_RESXLS_COST_Issue__External_functions_not_supported_by_SO7]
-en-US = "Issue: External functions not supported by <PRODUCTNAME>"
-
-[RID_RESXLS_COST_Issue__External_references_are_windows_specific]
-en-US = "Issue: External references are windows specific."
-
-[RID_RESXLS_COST_Issue__Fields_are_imported_but_need_to_have_the_link_to_datasource_reset]
-en-US = "Issue: Fields are imported but need to have the link to data source reset."
-
-[RID_RESXLS_COST_Issue__Graphics___frames_in_header_footer_tend_to_be_misplaced]
-en-US = "Issue: Graphics & frames in header footer tend to be misplaced."
-
-[RID_RESXLS_COST_Issue__Incorrect_password_entered]
-en-US = "Issue: Incorrect password entered. "
-
-[RID_RESXLS_COST_Issue__Information_relating_to_the_data_source_is_lost_in_migration]
-en-US = "Issue: Information relating to the data source is lost in migration."
-
-[RID_RESXLS_COST_Issue__Invalid_password_entered_Rerun_analysis]
-en-US = "Issue: Invalid password entered. Rerun analysis."
-
-[RID_RESXLS_COST_Issue__Lost_during_migration_No_StarOffice_equivalent]
-en-US = "Issue: Lost during migration. No <PRODUCTNAME> equivalent."
-
-[RID_RESXLS_COST_Issue__Macros_from_old_workbook_versions_do_not_import_into_SO7]
-en-US = "Issue: Macros from old workbook versions do not import into SO9."
-
-[RID_RESXLS_COST_Issue__Modules_will_need_porting_to_StarOffice_Basic]
-en-US = "Issue: Modules will need porting to <PRODUCTNAME> Basic."
-
-[RID_RESXLS_COST_Issue__Most_migrate_ok_but_do_not_roundtrip]
-en-US = "Issue: Most migrate ok but do not roundtrip."
-
-[RID_RESXLS_COST_Issue__Movies_are_not_supported_by_SO7]
-en-US = "Issue: Movies are not supported by <PRODUCTNAME>."
-
-[RID_RESXLS_COST_Issue__Need_to_set_these_to_be_included_in_TOC_in_SO7]
-en-US = "Issue: Need to set these to be included in TOC in <PRODUCTNAME>"
-
-[RID_RESXLS_COST_Issue__Password_protection_of_comments__tracked_changes_and_forms_is_lost]
-en-US = "Issue: Password protection of comments, tracked changes and forms is lost."
-
-[RID_RESXLS_COST_Issue__Pivot_charts_are_not_supported_by_SO7]
-en-US = "Issue: Pivot charts are not supported by <PRODUCTNAME>."
-
-[RID_RESXLS_COST_Issue__Presents_a_cross_platform_interoperability_issue]
-en-US = "Issue: Presents a cross platform interoperability issue."
-
-[RID_RESXLS_COST_Issue__Print_wide_pages_not_supported]
-en-US = "Issue: Print wide pages not supported."
-
-[RID_RESXLS_COST_Issue__Shading_can_be_applied_to_fields_and_to_controls_separately_in_Word]
-en-US = "Issue: Shading can be applied to fields and to controls separately in Word. <PRODUCTNAME> does not differentiate between controls and fields so shading can look different in Writer."
-
-[RID_RESXLS_COST_Issue__Table_imported_as_text_as_no_StarOffice_equivalent]
-en-US = "Issue: Table imported as text as no <PRODUCTNAME> equivalent."
-
-[RID_RESXLS_COST_Issue__Tables_nested_in_tables_are_not_supported_by_SO7]
-en-US = "Issue: Tables nested in tables are not supported by <PRODUCTNAME>."
-
-[RID_RESXLS_COST_Issue__Tabs_are_incorrect_after_migration]
-en-US = "Issue: Tabs are incorrect after migration. Certain format types do not migrate to <PRODUCTNAME>."
-
-[RID_RESXLS_COST_Issue__Text_form_fields_roundtrip_as_Fill_In_field]
-en-US = "Issue: Text form fields roundtrip as Fill In field. Field attributes are lost."
-
-[RID_RESXLS_COST_Issue__Unsupported_formatting_set]
-en-US = "Issue: Unsupported formatting set."
-
-[RID_RESXLS_COST_Issue__Unsupported_function_type]
-en-US = "Issue: Unsupported function type. "
-
-[RID_RESXLS_COST_Issue__Userform_controls_will_need_porting_to_StarOffice_Basic]
-en-US = "Issue: Userform controls will need porting to <PRODUCTNAME> Basic."
-
-[RID_RESXLS_COST_Issue__Userforms_controls_will_need_porting_to_StarOffice_Basic]
-en-US = "Issue: Userform controls will need porting to <PRODUCTNAME> Basic."
-
-[RID_RESXLS_COST_Issue__Userforms_will_need_porting_to_StarOffice_Basic]
-en-US = "Issue: Userforms will need porting to <PRODUCTNAME> Basic."
-
-[RID_RESXLS_COST_Issue__VBProject_is_password_protected_Remove_password__rerun_analysis]
-en-US = "Issue: VBProject is password protected. Remove password, rerun analysis."
-
-[RID_RESXLS_COST_Issue__Will_need_refreshing_in_SO7_External_datasources_and_functions_are_not_supported]
-en-US = "Issue: Will need refreshing in <PRODUCTNAME>. External data sources and functions are not supported"
-
-[RID_RESXLS_COST_Issue__Workbook_protection_is_not_supported]
-en-US = "Issue: Workbook protection is not supported"
-
-[RID_RESXLS_COST_Issue__Writer_cannot_correctly_display_cells_spanning_more_than_1_page]
-en-US = "Issue: Writer cannot correctly display cells spanning more than 1 page."
-
-[RID_RESXLS_COST_Issue_Category]
-en-US = "Issue Category"
-
-[RID_RESXLS_COST_Issue_Count]
-en-US = " Issue Count"
-
-[RID_RESXLS_COST_Issue_Type]
-en-US = "Issue Type"
-
-[RID_RESXLS_COST_Linked_OLE_Object]
-en-US = "Linked OLE Object"
-
-[RID_RESXLS_COST_Mail_Merge_Datasource]
-en-US = "Mail Merge Data Source"
-
-[RID_RESXLS_COST_Mail_Merge_Field]
-en-US = "Mail Merge Field"
-
-[RID_RESXLS_COST_Major_Issue]
-en-US = "Complex Issue"
-
-[RID_RESXLS_COST_MAX_SHEETS_WORKAROUND]
-en-US = "Need to move sheets to new workbook. "
-
-[RID_RESXLS_COST_Maximum_Rows_Exceeded]
-en-US = "Maximum Rows Exceeded"
-
-[RID_RESXLS_COST_Maximum_Sheets_Exceeded]
-en-US = "Maximum Sheets Exceeded"
-
-[RID_RESXLS_COST_Migration_Issues_Costs]
-en-US = "Migration Issues Analyzed"
-
-[RID_RESXLS_COST_Movie]
-en-US = "Movie"
-
-[RID_RESXLS_COST_NESTED_TABLE_WORKAROUND]
-en-US = "In word use split cell to create similar layout."
-
-[RID_RESXLS_COST_Nested_Tables]
-en-US = "Nested Tables"
-
-[RID_RESXLS_COST_Not_Planned]
-en-US = "Not Planned"
-
-[RID_RESXLS_COST_Notes_And_Handouts]
-en-US = "Notes And Handouts"
-
-[RID_RESXLS_COST_Number_Of_External_References]
-en-US = "Number Of External References"
-
-[RID_RESXLS_COST_Number_Of_Lines]
-en-US = "Number Of Lines"
-
-[RID_RESXLS_COST_Number_of_Lines_in_Unique_Modules]
-en-US = "Number of Lines in Unique Code Modules"
-
-[RID_RESXLS_COST_Number_of_Modules]
-en-US = "Number of Modules"
-
-[RID_RESXLS_COST_Number_of_Unique_Modules]
-en-US = "Number of Unique Code Modules"
-
-[RID_RESXLS_COST_Numbering_Reference]
-en-US = "Numbering Reference"
-
-[RID_RESXLS_COST_Numbering_Reference_Comment]
-en-US = "Issue: <PRODUCTNAME> can not import references that refer in a numbered list."
-
-[RID_RESXLS_COST_Object_In_Header_Footer]
-en-US = "Object In Header Footer"
-
-[RID_RESXLS_COST_Objects_And_Graphics]
-en-US = "Objects And Graphics"
-
-[RID_RESXLS_COST_Objects_Graphics_And_Frames]
-en-US = "Objects Graphics And Frames"
-
-[RID_RESXLS_COST_Objects_Graphics_And_Textboxes]
-en-US = "Objects Graphics And Textboxes"
-
-[RID_RESXLS_COST_Old_Workbook_Version]
-en-US = "Old Workbook Version"
-
-[RID_RESXLS_COST_OLE_Control]
-en-US = "OLE Control"
-
-[RID_RESXLS_COST_OLECONTR_COST]
-en-US = "Cost variations occur because of the use of macros with controls."
-
-[RID_RESXLS_COST_Page_Setup]
-en-US = "Page Setup"
-
-[RID_RESXLS_COST_Password_Protected]
-en-US = "Password Protected"
-
-[RID_RESXLS_COST_Password_Protection]
-en-US = "Password Protection"
-
-[RID_RESXLS_COST_Pivot]
-en-US = "Pivot Chart"
-
-[RID_RESXLS_COST_Planned_SO8]
-en-US = "Planned"
-
-[RID_RESXLS_COST_Portability]
-en-US = "Portability"
-
-[RID_RESXLS_COST_PowerPoint]
-en-US = "PowerPoint"
-
-[RID_RESXLS_COST_PowerPoint_Totals]
-en-US = "PowerPoint Totals"
-
-[RID_RESXLS_COST_Prepared_Issue_Count]
-en-US = "Prepared Issue Count"
-
-[RID_RESXLS_COST_Prepared_Savings__min]
-en-US = "Prepared Savings (min)"
-
-[RID_RESXLS_COST_Properties___Module__Class_or_UserForm]
-en-US = "Properties - Module, Class or UserForm"
-
-[RID_RESXLS_COST_Remove_password_to_open]
-en-US = "Remove password to open."
-
-[RID_RESXLS_COST_Remove_the_invalid_characters_from_the_worksheet_name]
-en-US = "Remove the invalid characters from the worksheet name."
-
-[RID_RESXLS_COST_Rerun_analysis_with_correct_password]
-en-US = "Rerun analysis with correct password."
-
-[RID_RESXLS_COST_Reset_link_to_Data_Base_having_setup_a_Datasource_in_SO7]
-en-US = "Reset link to database having setup a data source in <PRODUCTNAME>."
-
-[RID_RESXLS_COST_set_cost_factor_if_the_macro_has_to_be_ported_off_Windows]
-en-US = "Cost = 0. Set a cost factor if the macro has to be ported off Windows. "
-
-[RID_RESXLS_COST_Save_workbook_as_a_new_workbook_version]
-en-US = "Save workbook as a new workbook version."
-
-[RID_RESXLS_COST_Setup_Datasource_in_SO7_using_Tools__Datasource]
-en-US = "Setup data source in <PRODUCTNAME> using Tools/Data source"
-
-[RID_RESXLS_COST_Sheet_Chart]
-en-US = "Chart Issues Complex"
-
-[RID_RESXLS_COST_Status]
-en-US = "Status"
-
-[RID_RESXLS_COST_Table_Of_Authorities]
-en-US = "Table Of Authorities"
-
-[RID_RESXLS_COST_Table_Of_Authorities_Field]
-en-US = "Table Of Authorities Field"
-
-[RID_RESXLS_COST_Table_Of_Contents]
-en-US = "Table Of Contents"
-
-[RID_RESXLS_COST_Tables]
-en-US = "Tables"
-
-[RID_RESXLS_COST_TOC_ISSUE_WORKAROUND]
-en-US = "Tab Issues: use fancy format. Numbering incorrect: remove blank lines with heading style used by TOC. Numbering abuts Header: replace leading tabs in Header style used in TOC with spaces."
-
-[RID_RESXLS_COST_Total_Cost___MD]
-en-US = "Total Cost (MD) = "
-
-[RID_RESXLS_COST_User_Error]
-en-US = "User Error"
-
-[RID_RESXLS_COST_User_Forms_Control_Count]
-en-US = "User Forms Control Count"
-
-[RID_RESXLS_COST_User_Forms_Control_Type_Count]
-en-US = "User Forms Control Type Count"
-
-[RID_RESXLS_COST_User_Forms_Count]
-en-US = "User Forms Count"
-
-[RID_RESXLS_COST_VBA_Macros]
-en-US = "VBA Macros"
-
-[RID_RESXLS_COST_Word]
-en-US = "Word"
-
-[RID_RESXLS_COST_Word_Totals]
-en-US = "Word Totals"
-
-[RID_RESXLS_COST_Work_Around]
-en-US = "Work Around"
-
-[RID_RESXLS_COST_Workaround_Remove_protection_before_importing]
-en-US = "Remove protection before importing"
-
-[RID_RESXLS_COST_WorkbookProtection]
-en-US = "WorkbookProtection "
-
-[RID_RESXLS_DP_Accessed]
-en-US = "Accessed"
-
-[RID_RESXLS_DP_All_Analysed_Documents___Properties]
-en-US = "All Analysed Documents - properties"
-
-[RID_RESXLS_DP_Application]
-en-US = "Application"
-
-[RID_RESXLS_DP_Based_on_Template]
-en-US = "Based on Template"
-
-[RID_RESXLS_DP_Costs]
-en-US = "Costs"
-
-[RID_RESXLS_DP_Created]
-en-US = "Created"
-
-[RID_RESXLS_DP_Document_Details]
-en-US = "Document Details"
-
-[RID_RESXLS_DP_Document_Issue_Costs]
-en-US = "Document Migration Costs (min)"
-
-[RID_RESXLS_DP_Document_Migration_Issues]
-en-US = "Document Migration Issues"
-
-[RID_RESXLS_DP_Document_Name]
-en-US = "Document Name"
-
-[RID_RESXLS_DP_Document_Name_and_Path]
-en-US = "Document Name and Path"
-
-[RID_RESXLS_DP_Issues_Complex_count]
-en-US = "Issues Complex Count"
-
-[RID_RESXLS_DP_Last_Saved_By]
-en-US = "Last Saved By"
-
-[RID_RESXLS_DP_Lines_of_Macro_Code]
-en-US = "Lines of Macro Code"
-
-[RID_RESXLS_DP_Macro_Issues]
-en-US = "Macro Migration Issues"
-
-[RID_RESXLS_DP_Macro_Migration_Costs]
-en-US = "Macro Migration Costs (min)"
-
-[RID_RESXLS_DP_Macro_Migration_Issues]
-en-US = "Macro Migration Issues"
-
-[RID_RESXLS_DP_Migration_Issues]
-en-US = "Document Migration Issues"
-
-[RID_RESXLS_DP_Minor_Issues]
-en-US = "Issues Minor Count"
-
-[RID_RESXLS_DP_Modified]
-en-US = "Modified"
-
-[RID_RESXLS_DP_Pages_Sheets_Slides]
-en-US = "Pages, Sheets or Slides Count"
-
-[RID_RESXLS_DP_Prepareable_Issues_Costs]
-en-US = "Prepareable Issues Savings (min)"
-
-[RID_RESXLS_DP_Prepared_Issues]
-en-US = "Prepareable Document Issues"
-
-[RID_RESXLS_DP_Printed]
-en-US = "Printed"
-
-[RID_RESXLS_DP_Revision]
-en-US = "Revision"
-
-[RID_RESXLS_DP_User_Form_Count]
-en-US = "User Form Count"
-
-[RID_RESXLS_ID_All_Documents_with_Issues___Issue_Details]
-en-US = "All Documents with Issues - Issue Details"
-
-[RID_RESXLS_ID_Application]
-en-US = "Application"
-
-[RID_RESXLS_ID_Column__Left]
-en-US = "Column/ Left"
-
-[RID_RESXLS_ID_Document_Name]
-en-US = "Document Name"
-
-[RID_RESXLS_ID_Document_Name_and_Path]
-en-US = "Document Name and Path"
-
-[RID_RESXLS_ID_Issue_Category]
-en-US = "Issue Category"
-
-[RID_RESXLS_ID_Issue_Details]
-en-US = "Issue Details"
-
-[RID_RESXLS_ID_Issue_Type]
-en-US = "Issue Type"
-
-[RID_RESXLS_ID_Line__Row__Top]
-en-US = "Line/ Row/ Top"
-
-[RID_RESXLS_ID_Location]
-en-US = "Location"
-
-[RID_RESXLS_ID_Location_Type]
-en-US = "Location Type"
-
-[RID_RESXLS_OV_3_to_6_months]
-en-US = "3 - 6 months"
-
-[RID_RESXLS_OV_6_to_12_months]
-en-US = "6 - 12 months"
-
-[RID_RESXLS_OV_Complex]
-en-US = "Complex"
-
-[RID_RESXLS_OV_Cost_estimates_for_migration]
-en-US = "Cost estimates for migration of all analyzed documents"
-
-[RID_RESXLS_OV_Costs]
-en-US = "Costs (MD)"
-
-[RID_RESXLS_OV_Docs_with_DocumentMigrationIssues]
-en-US = "Documents with Document Migration Issues (excludes macro issues)"
-
-[RID_RESXLS_OV_Document_Migration_Costs]
-en-US = "Document Migration Costs<CR>( costs based on: issues listed in Issues Analyzed, excludes macros issues )"
-
-[RID_RESXLS_OV_Document_Modification_Dates]
-en-US = "Document Modification Dates"
-
-[RID_RESXLS_OV_Document_Type]
-en-US = "Type"
-
-[RID_RESXLS_OV_Documents_with_Macro_Migration_Issues]
-en-US = "Documents with Macro Migration Issues"
-
-[RID_RESXLS_OV_Excel]
-en-US = "Excel"
-
-[RID_RESXLS_OV_Excel_Costs]
-en-US = "Excel "
-
-[RID_RESXLS_OV_Excel_Spreadsheet]
-en-US = " Spreadsheets (.xls)"
-
-[RID_RESXLS_OV_Excel_Template]
-en-US = " Templates (.xlt)"
-
-[RID_RESXLS_OV_GREATER_THAN_1_year]
-en-US = "> 1 year"
-
-[RID_RESXLS_OV_Last_Modified]
-en-US = "Last Modified"
-
-[RID_RESXLS_OV_LESS_3_months]
-en-US = "< 3 months"
-
-[RID_RESXLS_OV_LESS_THAN3MONTHS]
-en-US = "Templates (.dot)"
-
-[RID_RESXLS_OV_Macro_Migration_Costs]
-en-US = "Manual Macro Migration Costs<CR>( costs based on: number of lines in unique code modules and number of user form controls )"
-
-[RID_RESXLS_OV_Medium]
-en-US = "Medium"
-
-[RID_RESXLS_OV_Minor]
-en-US = "Minor"
-
-[RID_RESXLS_OV_None]
-en-US = "None"
-
-[RID_RESXLS_OV_Number]
-en-US = "Number"
-
-[RID_RESXLS_OV_Number_of_Documents_Analyzed]
-en-US = "Number of Documents Analyzed"
-
-[RID_RESXLS_OV_NumberOfDocs]
-en-US = "Number of docs"
-
-[RID_RESXLS_OV_Potential_savings_macro_conversion]
-en-US = "Potential Savings with Automated Macro Migration of 20 to 60%"
-
-[RID_RESXLS_OV_Potential_savings_prepared_docs]
-en-US = "Potential Savings with Automated Preparation"
-
-[RID_RESXLS_OV_PowerPoint]
-en-US = "PowerPoint"
-
-[RID_RESXLS_OV_PowerPoint_Costs]
-en-US = "PowerPoint "
-
-[RID_RESXLS_OV_PowerPoint_Document]
-en-US = " Presentations (.ppt)"
-
-[RID_RESXLS_OV_PowerPoint_Template]
-en-US = " Templates (.pot)"
-
-[RID_RESXLS_OV_Simple]
-en-US = "Simple"
-
-[RID_RESXLS_OV_Total]
-en-US = "Total"
-
-[RID_RESXLS_OV_Totals]
-en-US = "Totals"
-
-[RID_RESXLS_OV_Word]
-en-US = "Word"
-
-[RID_RESXLS_OV_Word_Costs]
-en-US = "Word "
-
-[RID_RESXLS_OV_Word_Document]
-en-US = "Documents (.doc)"
-
-[RID_RESXLS_OV_Word_Template]
-en-US = "Templates (.dot)"
-
-[RID_RESXLS_PP_Action_Settings]
-en-US = "Action Settings"
-
-[RID_RESXLS_PP_Application]
-en-US = "Application"
-
-[RID_RESXLS_PP_Content___Document_Properties]
-en-US = "Content & Document Properties"
-
-[RID_RESXLS_PP_Document_Name_and_Path]
-en-US = "Document Name and Path"
-
-[RID_RESXLS_PP_Fields]
-en-US = "Fields"
-
-[RID_RESXLS_PP_Format]
-en-US = "Format"
-
-[RID_RESXLS_PP_Notes___Handouts]
-en-US = "Notes & Handouts"
-
-[RID_RESXLS_PP_Objects__Graphics___Textboxes]
-en-US = "Objects, Graphics & Textboxes"
-
-[RID_RESXLS_PP_Portability]
-en-US = "Portability"
-
-[RID_RESXLS_PP_PowerPoint_Documents_with_Issues___Issue_Summary]
-en-US = "PowerPoint Documents with Issues - Issue Summary"
-
-[RID_RESXLS_PP_PowerPoint_Presentation_Name]
-en-US = "PowerPoint Presentation Name"
-
-[RID_RESXLS_PP_VBA_Macros]
-en-US = "VBA Macros"
-
-[RID_RESXLS_RD_All_Documents_with_Macros___Reference_Details]
-en-US = "All Documents with Macros - Reference Details"
-
-[RID_RESXLS_RD_Application]
-en-US = "Application"
-
-[RID_RESXLS_RD_Description]
-en-US = "Description"
-
-[RID_RESXLS_RD_Document_Name]
-en-US = "Document Name"
-
-[RID_RESXLS_RD_Document_Name_and_Path]
-en-US = "Document Name and Path"
-
-[RID_RESXLS_RD_Location]
-en-US = "Location"
-
-[RID_RESXLS_RD_Reference]
-en-US = "Reference"
-
-[RID_RESXLS_RD_Reference_Details]
-en-US = "Reference Details"
-
-[RID_RESXLS_WI_Application]
-en-US = "Application"
-
-[RID_RESXLS_WI_Changes_and_Reviewing]
-en-US = "Changes and Reviewing"
-
-[RID_RESXLS_WI_Content___Document_Properties]
-en-US = "Content & Document Properties"
-
-[RID_RESXLS_WI_Controls]
-en-US = "Controls"
-
-[RID_RESXLS_WI_Document_Name_and_Path]
-en-US = "Document Name and Path"
-
-[RID_RESXLS_WI_Fields]
-en-US = "Fields"
-
-[RID_RESXLS_WI_Format]
-en-US = "Format"
-
-[RID_RESXLS_WI_Index_and_References]
-en-US = "Index and References"
-
-[RID_RESXLS_WI_Objects__Graphics____Frames]
-en-US = "Objects, Graphics & Frames"
-
-[RID_RESXLS_WI_Portability]
-en-US = "Portability"
-
-[RID_RESXLS_WI_Tables]
-en-US = "Tables"
-
-[RID_RESXLS_WI_VBA_Macros]
-en-US = "VBA Macros"
-
-[RID_RESXLS_WI_Word_Document_Name]
-en-US = "Word Document Name"
-
-[RID_RESXLS_WI_Word_Documents_with_Issues___Issue_Summary]
-en-US = "Word Documents with Issues - Issue Summary"
-
-[RID_RESXLS_XL_Application]
-en-US = "Application"
-
-[RID_RESXLS_XL_Changes___Reviewing]
-en-US = "Changes & Reviewing"
-
-[RID_RESXLS_XL_Charts___Tables]
-en-US = "Charts & Tables"
-
-[RID_RESXLS_XL_Excel_Documents_with_Issues___Issue_Summary]
-en-US = "Excel Documents with Issues - Issue Summary"
-
-[RID_RESXLS_XL_Excel_Spreadsheet_Name]
-en-US = "Excel Spreadsheet Name"
-
-[RID_RESXLS_XL_Filters]
-en-US = "Filters"
-
-[RID_RESXLS_XL_Format]
-en-US = "Format"
-
-[RID_RESXLS_XL_Functions]
-en-US = "Functions"
-
-[RID_RESXLS_XL_Objects___Graphics]
-en-US = "Objects & Graphics"
-
-[RID_STR_DVR_XL_EXCEL_DRIVER]
-en-US = "Excel Driver"
-
-[RID_STR_DVR_XL_ISSUES]
-en-US = "2. Issues"
-
-[RID_STR_DVR_XL_PURPOSE]
-en-US = "1. Purpose"
-
-[RID_STR_DVR_XL_READ_README]
-en-US = "If there are any problems running the Wizard please refer to the Readme.doc"
-
-[RID_STR_DVR_XL_THE_MACROS]
-en-US = "The macros in this document are used by the Analysis Wizard to analyze the collection of Excel documents you specify using the Wizard. It should not be modified in any way, the Wizard will open and close it as required by the tool."
-
-[RID_STR_DVR_XL_THIS_DOC]
-en-US = "This document contains VBA macros which collect and analyse Excel documents for known issues when importing into <PRODUCTNAME>"
-
-[RID_STR_DVR_XL_TITLE]
-en-US = "<PRODUCTNAME> Migration Analysis - Excel Driver"
-
-[RID_STR_DVR_PP_TXT2]
-en-US = "This document contains VBA macros which collect and analyse PowerPoint documents for known issues when importing into <PRODUCTNAME>"
-
-[RID_STR_DVR_PP_TXT3]
-en-US = "<PRODUCTNAME> Migration Analysis - PowerPoint Driver"
-
-[RID_STR_DVR_PP_TXT4]
-en-US = "PowerPoint Driver"
-
-[RID_STR_DVR_PP_TXT5]
-en-US = "Purpose"
-
-[RID_STR_DVR_PP_TXT6]
-en-US = "The macros in this document are used by the Analysis Wizard to analyze the collection of PowerPoint documents you specify using the Wizard. It should not be modified in any way, the Wizard will open and close it as required by the tool."
-
-[RID_STR_DVR_PP_TXT7]
-en-US = "Issues"
-
-[RID_STR_DVR_PP_TXT8]
-en-US = "If there are any problems running the Wizard please refer to the Readme.doc"
-
-[RID_STR_WDVR_SOANA]
-en-US = "<PRODUCTNAME> MIGRATION ANALYSIS - WORD DRIVER"
-
-[RID_STR_WDVR_INTRO]
-en-US = "This document contains VBA macros, which collect and analyse Word documents for known issues when importing into <PRODUCTNAME>"
-
-[RID_STR_WDVR_TITLE]
-en-US = "Word Driver"
-
-[RID_STR_WDVR_PURPO]
-en-US = "Purpose"
-
-[RID_STR_WDVR_PARA1]
-en-US = "The macros in this document are used by the Analysis Wizard to analyze the collection of Word documents you specify using the Wizard. It should not be modified in any way, the Wizard will open and close it as required by the tool."
-
-[RID_STR_WDVR_ISSUE]
-en-US = "Issues"
-
-[RID_STR_WDVR_PARA2]
-en-US = "If there are any problems running the Wizard please refer to the Readme.doc"
-
-[RID_STR_WORD_ATTRIBUTE_ALLOW_ONLY_COMMENTS]
-en-US = "Allow Only Comments"
-
-[RID_STR_WORD_ATTRIBUTE_ALLOW_ONLY_FORM_FIELDS]
-en-US = "Allow Only FormFields"
-
-[RID_STR_WORD_ATTRIBUTE_ALLOW_ONLY_REVISIONS]
-en-US = "Allow Only Revisions"
-
-[RID_STR_WORD_ATTRIBUTE_AUTHOR]
-en-US = "Author"
-
-[RID_STR_WORD_ATTRIBUTE_DATASOURCE]
-en-US = "Datasource"
-
-[RID_STR_WORD_ATTRIBUTE_FIELD_TEXT]
-en-US = "Field Text"
-
-[RID_STR_WORD_ATTRIBUTE_FORM_FIELD_AUTOSIZE]
-en-US = "Autosize"
-
-[RID_STR_WORD_ATTRIBUTE_FORM_FIELD_ENTRY_MACRO]
-en-US = "Entry macro"
-
-[RID_STR_WORD_ATTRIBUTE_FORM_FIELD_EXIT_MACRO]
-en-US = "Exit macro"
-
-[RID_STR_WORD_ATTRIBUTE_FORM_FIELD_FILLIN_ENABLED]
-en-US = "Fill-in enabled"
-
-[RID_STR_WORD_ATTRIBUTE_FORM_FIELD_GREYED]
-en-US = "FormFields Greyed"
-
-[RID_STR_WORD_ATTRIBUTE_FORM_FIELD_HELP_KEY_F1_AUTO_TEXT]
-en-US = "Help Key(F1) [Auto Text]"
-
-[RID_STR_WORD_ATTRIBUTE_FORM_FIELD_HELP_KEY_F1_OWN_TEXT]
-en-US = "Help Key(F1) [Own Text]"
-
-[RID_STR_WORD_ATTRIBUTE_FORM_FIELD_LOCKED]
-en-US = "Locked"
-
-[RID_STR_WORD_ATTRIBUTE_FORM_FIELD_MAX_LENGTH]
-en-US = "Maximum Length"
-
-[RID_STR_WORD_ATTRIBUTE_FORM_FIELD_STATUS_BAR_HELP_AUTO_TEXT]
-en-US = "Status Bar Help [Auto Text]"
-
-[RID_STR_WORD_ATTRIBUTE_FORM_FIELD_STATUS_BAR_HELP_OWN_TEXT]
-en-US = "Status Bar Help [Own Text]"
-
-[RID_STR_WORD_ATTRIBUTE_FORM_FIELD_TEXT_FORM_FIELD_TYPE]
-en-US = "Text Form Field Type"
-
-[RID_STR_WORD_ATTRIBUTE_FOOTER]
-en-US = "Footer"
-
-[RID_STR_WORD_ATTRIBUTE_HEADER]
-en-US = "Header"
-
-[RID_STR_WORD_ATTRIBUTE_FRAME]
-en-US = "Frame"
-
-[RID_STR_WORD_ATTRIBUTE_GRAPHIC]
-en-US = "Graphic"
-
-[RID_STR_WORD_ATTRIBUTE_OBJECT_HEIGHT_GT_H]
-en-US = "Height Greater Than Header Height"
-
-[RID_STR_WORD_ATTRIBUTE_OBJECT_HEIGHT_GT_F]
-en-US = "Height Greater Than Footer Height"
-
-[RID_STR_WORD_ATTRIBUTE_NUM_OF_GRAPHIC]
-en-US = "Number of Graphics"
-
-[RID_STR_WORD_ATTRIBUTE_OBJECT_LOCATED_BELOW_HEADER]
-en-US = "Located Below Header"
-
-[RID_STR_WORD_ATTRIBUTE_NUM_OF_FRAME]
-en-US = "Number of Frames"
-
-[RID_STR_WORD_ATTRIBUTE_HEADER_EVEN_PAGES]
-en-US = "Even Page(s)"
-
-[RID_STR_WORD_ATTRIBUTE_HEADER_FIRST_PAGE]
-en-US = "First Page"
-
-[RID_STR_WORD_ATTRIBUTE_HEADER_ODD_PAGES]
-en-US = "Odd Page(s)"
-
-[RID_STR_WORD_ATTRIBUTE_HEADER_PAGE_DEFAULT]
-en-US = "Page Default"
-
-[RID_STR_WORD_ATTRIBUTE_GRAPHICTYPE]
-en-US = "Graphic Type"
-
-[RID_STR_WORD_ATTRIBUTE_INLINESHAPE]
-en-US = "Inline Shape"
-
-[RID_STR_WORD_ATTRIBUTE_INNER_TABLE]
-en-US = "InnerTable"
-
-[RID_STR_WORD_ATTRIBUTE_LEADER]
-en-US = "Leader"
-
-[RID_STR_WORD_ATTRIBUTE_LINK]
-en-US = "Link"
-
-[RID_STR_WORD_ATTRIBUTE_LOCATION]
-en-US = "Location"
-
-[RID_STR_WORD_ATTRIBUTE_NUMBER_CUSTOM_PARAGRAPHS]
-en-US = "Number of custom paragraphs"
-
-[RID_STR_WORD_ATTRIBUTE_OUTER_TABLE]
-en-US = "Outer Table"
-
-[RID_STR_WORD_ATTRIBUTE_PASSWORD_TO_MODIFY]
-en-US = "Password to Modify"
-
-[RID_STR_WORD_ATTRIBUTE_PASSWORD_TO_OPEN]
-en-US = "Password to Open"
-
-[RID_STR_WORD_ATTRIBUTE_PROTECTION]
-en-US = "Protection"
-
-[RID_STR_WORD_ATTRIBUTE_SET]
-en-US = "Set"
-
-[RID_STR_WORD_ATTRIBUTE_START_COL]
-en-US = "Start Column"
-
-[RID_STR_WORD_ATTRIBUTE_START_ROW]
-en-US = "Start Row"
-
-[RID_STR_WORD_ATTRIBUTE_TEXT]
-en-US = "Text"
-
-[RID_STR_WORD_ATTRIBUTE_TOC_FORMAT_ISSUE]
-en-US = "Potential problem with TOC Format matching Modern style"
-
-[RID_STR_WORD_ATTRIBUTE_TOC_FORMAT_NOT_MIGRATE_CLEAN]
-en-US = "TOC Format will not migrate cleanly"
-
-[RID_STR_WORD_ATTRIBUTE_TOC_FORMAT_NOT_ROUNDTRIP_CLEAN]
-en-US = "TOC will not roundtrip cleanly due to following settings"
-
-[RID_STR_WORD_ATTRIBUTE_TOC_FORMAT_FROM_TEMPLATE_WITH_LEVEL]
-en-US = "Format [FromTemplate] Level"
-
-[RID_STR_WORD_ATTRIBUTE_TOC_FORMAT_FROM_TEMPLATE_TAB_DOTS]
-en-US = "Format [FromTemplate] TabLeader [Dots]"
-
-[RID_STR_WORD_ATTRIBUTE_TOC_FORMAT_FORMAL_WITH_LEVEL]
-en-US = "Format [Formal] Level"
-
-[RID_STR_WORD_ATTRIBUTE_TOC_FORMAT_CLASSIC_WITH_LEVEL]
-en-US = "Format [Classic] Level"
-
-[RID_STR_WORD_ATTRIBUTE_TOC_FORMAT_DISTINCTIVE_WITH_LEVEL]
-en-US = "Format [Distinctive] Level"
-
-[RID_STR_WORD_ENUMERATION_FORM_FIELD_CALCULATION]
-en-US = "Calculation"
-
-[RID_STR_WORD_ENUMERATION_FORM_FIELD_CHECK_BOX]
-en-US = "Check Box Form Field"
-
-[RID_STR_WORD_ENUMERATION_FORM_FIELD_CURRENT_DATE]
-en-US = "Current Date"
-
-[RID_STR_WORD_ENUMERATION_FORM_FIELD_CURRENT_TIME]
-en-US = "Current Time"
-
-[RID_STR_WORD_ENUMERATION_FORM_FIELD_DATE]
-en-US = "Date"
-
-[RID_STR_WORD_ENUMERATION_FORM_FIELD_DEFAULT_DATE]
-en-US = "Default date"
-
-[RID_STR_WORD_ENUMERATION_FORM_FIELD_DEFAULT_EXPRESSION]
-en-US = "Expression"
-
-[RID_STR_WORD_ENUMERATION_FORM_FIELD_DEFAULT_NUMBER]
-en-US = "Default number"
-
-[RID_STR_WORD_ENUMERATION_FORM_FIELD_DEFAULT_TEXT]
-en-US = "Default text"
-
-[RID_STR_WORD_ENUMERATION_FORM_FIELD_DEFAULT_TIME]
-en-US = "Default time"
-
-[RID_STR_WORD_ENUMERATION_FORM_FIELD_DROP_DOWN]
-en-US = "Drop-Down Form Field"
-
-[RID_STR_WORD_ENUMERATION_FORM_FIELD_FORMAT_DATE]
-en-US = "Date format"
-
-[RID_STR_WORD_ENUMERATION_FORM_FIELD_FORMAT_NUMBER]
-en-US = "Number format"
-
-[RID_STR_WORD_ENUMERATION_FORM_FIELD_FORMAT_TEXT]
-en-US = "Text format"
-
-[RID_STR_WORD_ENUMERATION_FORM_FIELD_FORMAT_TIME]
-en-US = "Time format"
-
-[RID_STR_WORD_ENUMERATION_FORM_FIELD_NUMBER]
-en-US = "Number"
-
-[RID_STR_WORD_ENUMERATION_FORM_FIELD_REGULAR]
-en-US = "Regular"
-
-[RID_STR_WORD_ENUMERATION_FORM_FIELD_TEXT]
-en-US = "Text Form Field"
-
-[RID_STR_WORD_ENUMERATION_MAILMERGE_ASK]
-en-US = "Ask"
-
-[RID_STR_WORD_ENUMERATION_MAILMERGE_AUTO_NUMBER]
-en-US = "Auto Number"
-
-[RID_STR_WORD_ENUMERATION_MAILMERGE_AUTO_NUMBER_LEGAL]
-en-US = "Auto Number Legal"
-
-[RID_STR_WORD_ENUMERATION_MAILMERGE_AUTO_NUMBER_OUTLINE]
-en-US = "Auto Number Outline"
-
-[RID_STR_WORD_ENUMERATION_MAILMERGE_FIELD_NAME_NOT_KNOWN]
-en-US = "Field name not known"
-
-[RID_STR_WORD_ENUMERATION_MAILMERGE_FILL_IN]
-en-US = "Fill In"
-
-[RID_STR_WORD_ENUMERATION_MAILMERGE_MERGE_RECORDS]
-en-US = "Merge Records"
-
-[RID_STR_WORD_ENUMERATION_MAILMERGE_MERGE_FIELDS]
-en-US = "Merge Fields"
-
-[RID_STR_WORD_ENUMERATION_MAILMERGE_NEXT]
-en-US = "Next"
-
-[RID_STR_WORD_ENUMERATION_MAILMERGE_REVISION_NUMBER]
-en-US = "Revision Number"
-
-[RID_STR_WORD_ENUMERATION_MAILMERGE_SEQUENCE]
-en-US = "Sequence"
-
-[RID_STR_WORD_ENUMERATION_INDEX_TABLES_CLASSIC]
-en-US = "Classic"
-
-[RID_STR_WORD_ENUMERATION_INDEX_TABLES_DISTINCTIVE]
-en-US = "Distinctive"
-
-[RID_STR_WORD_ENUMERATION_INDEX_TABLES_FANCY]
-en-US = "Fancy"
-
-[RID_STR_WORD_ENUMERATION_INDEX_TABLES_FORMAL]
-en-US = "Formal"
-
-[RID_STR_WORD_ENUMERATION_INDEX_TABLES_MODERN]
-en-US = "Modern"
-
-[RID_STR_WORD_ENUMERATION_INDEX_TABLES_SIMPLE]
-en-US = "Simple"
-
-[RID_STR_WORD_ENUMERATION_INDEX_TABLES_FROM_TEMPLATE]
-en-US = "From Template"
-
-[RID_STR_WORD_ENUMERATION_INDEX_LEADER_DASHES]
-en-US = "Dashes"
-
-[RID_STR_WORD_ENUMERATION_INDEX_LEADER_DOTS]
-en-US = "Dots"
-
-[RID_STR_WORD_ENUMERATION_INDEX_LEADER_HEAVY]
-en-US = "Heavy"
-
-[RID_STR_WORD_ENUMERATION_INDEX_LEADER_LINES]
-en-US = "Lines"
-
-[RID_STR_WORD_ENUMERATION_INDEX_LEADER_MIDDLEDOT]
-en-US = "MiddleDot"
-
-[RID_STR_WORD_ENUMERATION_INDEX_LEADER_SPACES]
-en-US = "Spaces"
-
-[RID_STR_WORD_ENUMERATION_UNKNOWN]
-en-US = "Unknown"
-
-[RID_STR_WORD_FALSE]
-en-US = "False"
-
-[RID_STR_WORD_TRUE]
-en-US = "True"
-
-[RID_STR_WORD_ISSUE_FIELDS]
-en-US = "Fields"
-
-[RID_STR_WORD_ISSUE_INDEX_AND_REFERENCES]
-en-US = "Indexes and References"
-
-[RID_STR_WORD_ISSUE_OBJECTS_GRAPHICS_AND_FRAMES]
-en-US = "Objects, Graphics and Frames"
-
-[RID_STR_WORD_ISSUE_TABLES]
-en-US = "Tables"
-
-[RID_STR_WORD_NOTE_FORM_FIELD_ATTRIBUTES_LOST]
-en-US = "following attribute values lost"
-
-[RID_STR_WORD_NOTE_FORM_FIELD_TYPE_LOST]
-en-US = "Type lost, converted to plain text"
-
-[RID_STR_WORD_NOTE_NESTED_TABLE_WILL_BE_LOST]
-en-US = "The inner table will be lost on roundtrip."
-
-[RID_STR_WORD_NOTE_TOA_FIELD_LOST_ON_ROUNDTRIP]
-en-US = "Field will be lost on roundtrip"
-
-[RID_STR_WORD_NOTE_TOA_MIGRATE_AS_PLAIN_TEXT]
-en-US = "Table will migrate as plain text"
-
-[RID_STR_WORD_SUBISSUE_APPEARANCE]
-en-US = "Appearance"
-
-[RID_STR_WORD_SUBISSUE_COMMENT]
-en-US = "Comment"
-
-[RID_STR_WORD_SUBISSUE_CUSTOM_BULLET_LIST]
-en-US = "Custom bullet list"
-
-[RID_STR_WORD_SUBISSUE_FORM_FIELD]
-en-US = "Form Field"
-
-[RID_STR_WORD_SUBISSUE_MAILMERGE_DATASOURCE]
-en-US = "Mail Merge Datasource"
-
-[RID_STR_WORD_SUBISSUE_MAILMERGE_FIELD]
-en-US = "Mail Merge Field"
-
-[RID_STR_WORD_SUBISSUE_NESTED_TABLES]
-en-US = "Nested Tables"
-
-[RID_STR_WORD_SUBISSUE_OBJECT_IN_HEADER_FOOTER]
-en-US = "Object in Header Footer"
-
-[RID_STR_WORD_SUBISSUE_TABLE_OF_AUTHORITIES]
-en-US = "Table of Authorities"
-
-[RID_STR_WORD_SUBISSUE_TABLE_OF_AUTHORITIES_FIELD]
-en-US = "Table of Authorities Field"
-
-[RID_RESXLT_COST_CHART_Radar_AWF]
-en-US = "Radar chart, Radar with symbol"
-
-[RID_RESXLT_COST_CHART_Radar_Comment]
-en-US = "Although <PRODUCTNAME> Net charts appear similar to Excel Radar charts, but they are not equivalent. Radar charts are drawn clockwise whereas Net charts are drawn counter-clockwise."
-
-[RID_RESXLT_COST_CHART_Scattered_AWF]
-en-US = "Scattered chart"
-
-[RID_RESXLT_COST_CHART_Scattered_Comment]
-en-US = "The XY-Chart of <PRODUCTNAME> has the same appearance as the scattered chart in Excel."
-
-[RID_RESXLT_COST_CHART_Bubble_AWF]
-en-US = "Bubble chart"
-
-[RID_RESXLT_COST_CHART_Bubble_Comment]
-en-US = "XY-Chart has similar functionality to a Bubble chart in Excel but a completely different look."
-
-[RID_RESXLT_COST_CHART_BarOfPie_AWF]
-en-US = "Bar of Pie and Pie of Pie charts"
-
-[RID_RESXLT_COST_CHART_BarOfPie_Comment]
-en-US = "<PRODUCTNAME> imports these types of charts as Column charts, which look completely different."
-
-[RID_RESXLT_COST_CHART_FilledRadar_AWF]
-en-US = "Filled Radar chart"
-
-[RID_RESXLT_COST_CHART_FilledRadar_Comment]
-en-US = "This chart type does not have a <PRODUCTNAME> equivalent. Instead, the import filter in <PRODUCTNAME> converts a Filled Radar chart to a Column chart."
-
-[RID_RESXLT_COST_CHART_Surface_AWF]
-en-US = "Surface chart"
-
-[RID_RESXLT_COST_CHART_Surface_Comment]
-en-US = "This chart type does not have a <PRODUCTNAME> equivalent. The imported chart will look completely different than the original chart."
-
-[RID_RESXLT_COST_PIVOT_MultConsRanges_AWF]
-en-US = "Multiple Consolidation Ranges"
-
-[RID_RESXLT_COST_PIVOT_MultConsRanges_Comment]
-en-US = "A Pivot table from Excel can use data from multiple consolidation ranges, Calc does not support this."
-
-[RID_RESXLT_COST_PIVOT_PivotChart_Comment]
-en-US = "A pivot chart is created dynamically in Excel using a pivot table as it's datasource. <PRODUCTNAME> does not support generating charts from dynamically created tables."
-
-[RID_RESXLT_COST_PIVOT_ManSort_AWF]
-en-US = "Manual Sorting"
-
-[RID_RESXLT_COST_PIVOT_ManSort_Comment]
-en-US = "Pivot table users could sort the results manually. Excel preserves the sorting. Calc does not."
-
-[RID_RESXLT_COST_PIVOT_CalcVal_AWF]
-en-US = "Calculated Values"
-
-[RID_RESXLT_COST_PIVOT_CalcVal_Comment]
-en-US = "Excel users can create a formula that writes the results in a new column within the pivot table. Users can use the same type of formula to replace the content of an existing column. Calc does not support this."
-
-[RID_RESXLT_COST_PIVOT_ExternData_AWF]
-en-US = "External Data"
-
-[RID_RESXLT_COST_PIVOT_ExternData_Comment]
-en-US = "A Pivot table from Excel can use data from external sources. Calc does not support this."
-
-[RID_RESXLS_COST_IAR_Numbering_IssueType]
-en-US = "Numbering Order"
-
-[RID_RESXLS_COST_IAR_Numbering_Comment]
-en-US = "<PRODUCTNAME> first calculates numbering located in frames and then the numbering within the text. Word does not separate this."
-
-[RID_RESXLS_COST_IAR_Numbering_WorkAround]
-en-US = "Move the numberings from within the frames into the text body area."
-
-[RID_RESXLS_COST_WorkbookPartProtection_AWF]
-en-US = "Protection for Parts of Workbooks"
-
-[RID_RESXLS_COST_WorkbookPartProtection_Comment]
-en-US = "In Excel users can protect certain parts of workbooks. Workbooks, sheets, charts and ranges can all be individually protected. These do not all migrate to <PRODUCTNAME>."
-
-[RID_RESXLS_COST_WorkbookPartProtection_WorkAround]
-en-US = "Do not protect Excel workbooks"
-
-[RID_RESXLS_COST_FORMAT_TabStop_IssueType]
-en-US = "Tabstop"
-
-[RID_RESXLS_COST_FORMAT_TabStop_Comment]
-en-US = "The minimum tabstop distance in word is shorter than <PRODUCTNAME>. That means that if, in Word, the user tabs a distance shorter than <PRODUCTNAME>'s minimum, that after migration the text spacing will be pushed one tab further."
-
-[RID_RESXLS_COST_GraphicAnchorEndOfPage_IssueType]
-en-US = "Graphic Object Anchor - End of Page"
-
-[RID_RESXLS_COST_GraphicAnchorEndOfPage_Comment]
-en-US = "If a frame or graphic object (not including AutoShapes) is too close to the end of a page it will be pushed to the next page in <PRODUCTNAME>."
-
-[RID_RESXLS_COST_GraphicAnchorLostGraphic_IssueType]
-en-US = "Graphic Object Anchor - Lost Graphic Object"
-
-[RID_RESXLS_COST_GraphicAnchorLostGraphic_Comment]
-en-US = "If a graphic object is anchored off a paragraph (Format Autoshape | Layout | Advanced | Vertical Position = Paragraph) which contains just a blank carriage return, then this can lead to the graphic object being lost in <PRODUCTNAME>."
-
-[RID_RESXLS_COST_TABLE_Leading_IssueType]
-en-US = "Leading"
-
-[RID_RESXLS_COST_TABLE_Leading_Comment]
-en-US = "Leading can cause extra lines in tables. In a table, if the column width is very close to the text, it can lead to a single character being pushed to new line in <PRODUCTNAME>. This is caused by extra leading in <PRODUCTNAME>."
-
-[RID_RESXLS_COST_TABLE_Misplaced_IssueType]
-en-US = "Misplaced"
-
-[RID_RESXLS_COST_TABLE_Misplaced_Comment]
-en-US = "Text wrapping can cause misplaced tables."
-
-[RID_RESXLS_COST_TOC_HeadlinesWithoutNum_IssueType]
-en-US = "Headings Without Numbering"
-
-[RID_RESXLS_COST_TOC_HeadlinesWithoutNum_Comment]
-en-US = "Many users do not use automatic heading or section numbering. They type the numbers in front of the heading manually instead. Word displays the first TAB of the heading in the TOC. <PRODUCTNAME> does not. The TOC will look different."
-
-[RID_RESXLS_COST_TOC_HeadlinesWithoutNum_WorkAround]
-en-US = "Replace the manual numbering with automatic numbering or add spaces between the manual numbers and the text."
-
-[RID_RESXLS_COST_TABLE_AlignmentOfObjects_IssueType]
-en-US = "Horizontal Alignment of Objects"
-
-[RID_RESXLS_COST_TABLE_AlignmentOfObjects_Comment]
-en-US = "Graphics, WordArt or similar objects located in text tables get displayed in the wrong position when the absolute position of the horizontal alignment is defined instead of a relative position."
-
-[RID_RESXLS_COST_TABLE_AlignmentOfObjects_WorkAround]
-en-US = "Adjust the horizontal alignment manually."
-
-[RID_STR_WORD_ATTRIBUTE_COUNT]
-en-US = "Count"
-
-[RID_STR_EXCEL_NOTE_CELL_FUNCTIONS_DATEDIF]
-en-US = "<PRODUCTNAME> Calc does not have an equivalent 'DATEDIF' function."
-
-[RID_STR_EXCEL_NOTE_CELL_FUNCTIONS_PHONETIC]
-en-US = "<PRODUCTNAME> does not have an equivalent 'PHONETIC' function."
-
-[RID_STR_PP_SUBISSUE_BACKGROUND_NOTE]
-en-US = "Fill style background colors applied to shapes in PowerPoint might be lost after a round trip conversion in <PRODUCTNAME>."
-
-[RID_STR_PP_SUBISSUE_NUMBERING_NOTE]
-en-US = "Only the first paragraph in a numbered sequence can start with "1" in <PRODUCTNAME>. The numbering can only start with "2" or higher in subsequent paragraphs."
-
-[RID_STR_PP_SUBISSUE_HYPERLINK_NOTE]
-en-US = "Unlike PowerPoint, <PRODUCTNAME> does not support multiple text formats in hyperlink text. Instead, <PRODUCTNAME> creates a separate hyperlink for each formatting style in an imported hyperlink."
-
-[RID_STR_PP_SUBISSUE_HYPERLINK_SPLIT_NOTE]
-en-US = "PowerPoint splits the text representation of a hyperlink into several lines when the text box is not wide enough. <PRODUCTNAME> does not split hyperlinks so the hyperlink text might extend out of the text box."
-
-[RID_STR_PP_SUBISSUE_TEMPLATE_NOTE]
-en-US = "<PRODUCTNAME> does not support the PowerPoint 'Title Slide' layout. When you import this layout, most of the subtitle object attributes are converted to hard attributes. PowerPoint 97 users require the multiple master page patch from Microsoft to view 'Title Slide' layouts that are contained in round trip documents."
-
-[RID_STR_PP_SUBISSUE_TABSTOP_NOTE]
-en-US = "Unlike PowerPoint, <PRODUCTNAME> only supports one default tab stop in a document and not one for each text object. If a PowerPoint document uses more than one default tab stop for text objects, <PRODUCTNAME> assigns hard tab stops to these text objects to ensure an identical layout when you import the document. The default tab stops are not reinserted when you save the document in PowerPoint format."
-
-[RID_STR_PP_SUBISSUE_FONTS]
-en-US = "Embedded Fonts"
-
-[RID_STR_PP_SUBISSUE_FONTS_NOTE]
-en-US = "<PRODUCTNAME> doesn't support embedded fonts."
-
-[RID_STR_COMMON_SUBISSUE_TRANSPARENCY_NOTE]
-en-US = "Microsoft Office supports a color attribute that allows you to make a bitmap color transparent without modifying the orginal bitmap. When you import a document with such a bitmap, <PRODUCTNAME> changes the bitmap to match the transparent color. The transparent color attribute is lost."
-
-[RID_STR_COMMON_SUBISSUE_LINE_NOTE]
-en-US = "<PRODUCTNAME> does not support all of the line styles that you can apply to MS Office AutoShapes. As a result, <PRODUCTNAME> replaces double and triple line styles with a single line."
-
-[RID_STR_COMMON_SUBISSUE_GRADIENT_PRESET_NOTE]
-en-US = "<PRODUCTNAME> does not support preset gradient styles."
-
-[RID_STR_COMMON_SUBISSUE_GRADIENT_CORNER_NOTE]
-en-US = "<PRODUCTNAME> does not support the 'from center' gradient style."
-
-[RID_STR_COMMON_SUBISSUE_GRADIENT_CENTER_NOTE]
-en-US = "<PRODUCTNAME> does not support the 'from corner' gradient style."
-
-[RID_RESXLS_COST_DB_Query]
-en-US = "Database Query"
-
-[RID_RESXLS_COST_DB_Query_Comment]
-en-US = "Issue: <PRODUCTNAME> can not import the database query. "
-
-[RID_RESXLS_COST_LineStyle]
-en-US = "Line Style"
-
-[RID_RESXLS_COST_LineStyle_Comment]
-en-US = "Issue: Line style is not supported."
-
-[RID_RESXLS_COST_Numbering]
-en-US = "Numbering"
-
-[RID_RESXLS_COST_Numbering_Comment]
-en-US = "Issue: Text numbering starts with wrong number."
-
-[RID_RESXLS_COST_Template]
-en-US = "Layout 'Title Slide'"
-
-[RID_RESXLS_COST_Template_Comment]
-en-US = "Issue: 'Title Slide' layout is not supported."
-
-[RID_RESXLS_COST_DATEDIF_Note]
-en-US = "Use a date or time function that <PRODUCTNAME> Calc supports."
-
-[RID_RESXLS_COST_Tabstop]
-en-US = "Default Tabulator"
-
-[RID_RESXLS_COST_Tabstop_Comment]
-en-US = "Issue: Different default tabulators are not supported for text objects."
-
-[RID_RESXLS_COST_Transparent]
-en-US = "Transparent Color"
-
-[RID_RESXLS_COST_Transparent_Comment]
-en-US = "Issue: <PRODUCTNAME> does not support the transparent color attribute in bitmaps."
-
-[RID_RESXLS_COST_GradientStyle]
-en-US = "Gradient Style"
-
-[RID_RESXLS_COST_GradientStyle_Comment]
-en-US = "Issue: Unsupported gradient styles used."
-
-[RID_RESXLS_COST_GradientStyle_Note]
-en-US = "Replacing gradient styles by styles that are supported."
-
-[RID_RESXLS_COST_Hyperlink]
-en-US = "Textrange Hyperlinks"
-
-[RID_RESXLS_COST_Hyperlink_Comment]
-en-US = "Issue: Multiple text formatting is not supported in Hyperlinks."
-
-[RID_RESXLS_COST_HyperlinkSplit]
-en-US = "Split Hyperlinks"
-
-[RID_RESXLS_COST_HyperlinkSplit_Comment]
-en-US = "Issue: Hyperlink will not be split onto several lines."
-
-[RID_RESXLS_COST_Background]
-en-US = "Fill Type Background"
-
-[RID_RESXLS_COST_Background_Comment]
-en-US = "Issue: Fillstyle background is not supported."
-
+[RID_STR_COMMON_PRODUCTNAME]
+en-US = "OpenOffice.org"
+
+[RID_STR_COMMON_PRODUCTVERSION]
+en-US = "3.0"
+
+[RID_STR_COMMON_NEXTPRODUCTVERSION]
+en-US = "3.1"
+
+[RID_STR_COMMON_OLE_CONTROL]
+en-US = "OLE Control"
+
+[RID_STR_COMMON_OLE_FIELD_LINK]
+en-US = "OLE Field Link"
+
+[RID_STR_COMMON_OLE_UNKNOWN]
+en-US = "Unknown Type"
+
+[RID_STR_COMMON_VB_COMPONENT_MODULE]
+en-US = "Module"
+
+[RID_STR_COMMON_VB_COMPONENT_STANDARD]
+en-US = "Standard Module"
+
+[RID_STR_COMMON_VB_COMPONENT_CLASS]
+en-US = "Class Module"
+
+[RID_STR_COMMON_VB_COMPONENT_USER_FORM]
+en-US = "User Form"
+
+[RID_STR_COMMON_VB_COMPONENT_DOCUMENT]
+en-US = "Document"
+
+[RID_STR_COMMON_VB_COMPONENT_ACTIVEX_DESIGNER]
+en-US = "ActiveX Designer"
+
+[RID_STR_COMMON_VB_COMPONENT_UNKNOWN]
+en-US = "Unknown"
+
+[RID_STR_COMMON_YES_OR_NO]
+en-US = "Yes or No"
+
+[RID_STR_COMMON_DATE]
+en-US = "Date"
+
+[RID_STR_COMMON_NUMBER]
+en-US = "Number"
+
+[RID_STR_COMMON_TEXT]
+en-US = "Text"
+
+[RID_STR_COMMON_UNKNOWN]
+en-US = "Unknown"
+
+[RID_STR_COMMON_DEC_TO_EXTERNAL_LIBRARY]
+en-US = "Declaration to external library"
+
+[RID_STR_COMMON_RESULTS_LOCATION_TYPE_DOCUMENT]
+en-US = "Document"
+
+[RID_STR_COMMON_RESULTS_LOCATION_TYPE_PAGE]
+en-US = "Page"
+
+[RID_STR_COMMON_RESULTS_LOCATION_TYPE_WORKBOOK]
+en-US = "WorkBook"
+
+[RID_STR_COMMON_RESULTS_LOCATION_TYPE_SHEET]
+en-US = "Sheet"
+
+[RID_STR_COMMON_RESULTS_LOCATION_TYPE_PRESENTATION]
+en-US = "Presentation"
+
+[RID_STR_COMMON_RESULTS_LOCATION_TYPE_SLIDE]
+en-US = "Slide"
+
+[RID_STR_COMMON_INVALID_PASSWORD]
+en-US = "Invalid Password"
+
+[RID_STR_COMMON_PASSWORD_SKIPDOC]
+en-US = "Skip Password Protected"
+
+[RID_STR_COMMON_NA]
+en-US = "na"
+
+[RID_STR_COMMON_ATTRIBUTE_BROKEN]
+en-US = "Broken!"
+
+[RID_STR_COMMON_ATTRIBUTE_BUILTIN]
+en-US = "BuiltIn"
+
+[RID_STR_COMMON_ATTRIBUTE_CHECK_DOCUMENT_REFERENCES]
+en-US = "Check document VB-IDE/Tools/References"
+
+[RID_STR_COMMON_ATTRIBUTE_CLASS_ME_COUNT]
+en-US = "Class refs to Me"
+
+[RID_STR_COMMON_ATTRIBUTE_COMPONENT]
+en-US = "Component"
+
+[RID_STR_COMMON_ATTRIBUTE_CONTROLS]
+en-US = "Controls"
+
+[RID_STR_COMMON_ATTRIBUTE_CUSTOM]
+en-US = "Custom"
+
+[RID_STR_COMMON_ATTRIBUTE_DESCRIPTION]
+en-US = "Description"
+
+[RID_STR_COMMON_ATTRIBUTE_GUID]
+en-US = "GUID"
+
+[RID_STR_COMMON_ATTRIBUTE_FILE]
+en-US = "File"
+
+[RID_STR_COMMON_ATTRIBUTE_PROPERTIES]
+en-US = "Properties"
+
+[RID_STR_COMMON_ATTRIBUTE_FURTHER_MACRO_ANALYSIS_NOT_POSSIBLE]
+en-US = "Further macro analysis not possible"
+
+[RID_STR_COMMON_ATTRIBUTE_INCLUDING]
+en-US = "including:"
+
+[RID_STR_COMMON_ATTRIBUTE_INTACT]
+en-US = "Intact"
+
+[RID_STR_COMMON_ATTRIBUTE_ISBROKEN]
+en-US = "IsBroken"
+
+[RID_STR_COMMON_ATTRIBUTE_MAJOR]
+en-US = "Major"
+
+[RID_STR_COMMON_ATTRIBUTE_MINOR]
+en-US = "Minor"
+
+[RID_STR_COMMON_ATTRIBUTE_MISSING]
+en-US = "MISSING"
+
+[RID_STR_COMMON_ATTRIBUTE_NAME]
+en-US = "Name"
+
+[RID_STR_COMMON_ATTRIBUTE_NON_PORTABLE_EXTERNAL_REFERENCES]
+en-US = "Non Portable External References"
+
+[RID_STR_COMMON_ATTRIBUTE_NON_PORTABLE_EXTERNAL_REFERENCES_COUNT]
+en-US = "External Reference Count"
+
+[RID_STR_COMMON_ATTRIBUTE_NUMBER_OF_LINES]
+en-US = "Number of Lines"
+
+[RID_STR_COMMON_ATTRIBUTE_SIGNATURE]
+en-US = "MD5 Hash"
+
+[RID_STR_COMMON_ATTRIBUTE_PASSWORD]
+en-US = "Password"
+
+[RID_STR_COMMON_ATTRIBUTE_PATH]
+en-US = "Path"
+
+[RID_STR_COMMON_ATTRIBUTE_PROCEDURES]
+en-US = "Procedures"
+
+[RID_STR_COMMON_ATTRIBUTE_PROJECT]
+en-US = "Project"
+
+[RID_STR_COMMON_ATTRIBUTE_TYPE]
+en-US = "Type"
+
+[RID_STR_COMMON_ATTRIBUTE_TYPELIB]
+en-US = "Type Library"
+
+[RID_STR_COMMON_ATTRIBUTE_UNABLE_TO_ACCESS_VBPROJECT]
+en-US = "Unable to access VBProject"
+
+[RID_STR_COMMON_ATTRIBUTE_UNKNOWN]
+en-US = "Unknown"
+
+[RID_STR_COMMON_ATTRIBUTE_USERFORM_TYPE]
+en-US = "Control Types"
+
+[RID_STR_COMMON_ATTRIBUTE_USERFORM_TYPES_COUNT]
+en-US = "Control Types Count"
+
+[RID_STR_COMMON_ATTRIBUTE_VALUE]
+en-US = "Value"
+
+[RID_STR_COMMON_ATTRIBUTE_VBPROJECT_PASSWORD]
+en-US = "VBProject Password set"
+
+[RID_STR_COMMON_ISSUE_INFORMATION]
+en-US = "Information"
+
+[RID_STR_COMMON_ISSUE_FORMAT]
+en-US = "Format"
+
+[RID_STR_COMMON_ISSUE_PORTABILITY]
+en-US = "Portability"
+
+[RID_STR_COMMON_ISSUE_VBA_MACROS]
+en-US = "VBA Macros"
+
+[RID_STR_COMMON_ISSUE_CONTENT_AND_DOCUMENT_PROPERTIES]
+en-US = "Content and Document Properties"
+
+[RID_STR_COMMON_NOTE_DOCUMENT_PROPERTIES_LOST]
+en-US = "this summary property is lost"
+
+[RID_STR_COMMON_SUBISSUE_PROPERTIES]
+en-US = "Properties"
+
+[RID_STR_COMMON_SUBISSUE_REFERENCES]
+en-US = "References"
+
+[RID_STR_COMMON_SUBISSUE_EXTERNAL_REFERENCES_IN_MACROS]
+en-US = "External References in Macro"
+
+[RID_STR_COMMON_SUBISSUE_INVALID_PASSWORD_ENTERED]
+en-US = "Invalid Password Entered"
+
+[RID_STR_COMMON_SUBISSUE_DOCUMENT_PARTS_PROTECTION]
+en-US = "Document Parts Protection"
+
+[RID_STR_COMMON_SUBISSUE_MACRO_PASSWORD_PROTECTION]
+en-US = "Password Protected"
+
+[RID_STR_COMMON_SUBISSUE_PASSWORDS_PROTECTION]
+en-US = "Password Protection"
+
+[RID_STR_COMMON_ATTRIBUTE_OBJECT_NAME]
+en-US = "Object Name"
+
+[RID_STR_COMMON_ATTRIBUTE_OBJECT_TYPE]
+en-US = "Object Type"
+
+[RID_STR_COMMON_ATTRIBUTE_SOURCE]
+en-US = "Source"
+
+[RID_STR_COMMON_NOTE_HF_PREPARABLE]
+en-US = "will add additional returns to the header/footer"
+
+[RID_STR_COMMON_PREPARATION_FOLDER]
+en-US = "prepared"
+
+[RID_STR_COMMON_SUBISSUE_DOCUMENT_CUSTOM_PROPERTY]
+en-US = "Document Custom Property"
+
+[RID_STR_COMMON_MACRO_CLASS_COMPLEX]
+en-US = "Complex"
+
+[RID_STR_COMMON_MACRO_CLASS_MEDIUM]
+en-US = "Medium"
+
+[RID_STR_COMMON_MACRO_CLASS_SIMPLE]
+en-US = "Simple"
+
+[RID_STR_COMMON_MACRO_CLASS_NONE]
+en-US = "No Macros"
+
+[RID_STR_COMMON_ISSUE_CLASS_COMPLEX]
+en-US = "Complex"
+
+[RID_STR_COMMON_ISSUE_CLASS_MINOR]
+en-US = "Minor"
+
+[RID_STR_COMMON_ISSUE_CLASS_NONE]
+en-US = "No Issues"
+
+[RID_STR_COMMON_OV_VERSION_STR]
+en-US = "Created by"
+
+[RID_STR_COMMON_OV_DOC_MOD_DATES_COMMENT_TITLE]
+en-US = "Which documents do you need to migrate?"
+
+[RID_STR_COMMON_OV_DOC_MOD_DATES_COMMENT_BODY]
+en-US = "<CR>The last modified date is an indicator of the importance of a document. It helps you decide which documents should just be archived to a read only format such as Adobe PDF and which actually need to be migrated to <PRODUCTNAME> where they can continue to be updated and modified."
+
+[RID_STR_COMMON_OV_LEGEND_TITLE]
+en-US = "Legend"
+
+[RID_STR_COMMON_OV_DOC_MOD_DATES_LEGEND_BODY]
+en-US = "< 3 months: Migrate to <PRODUCTNAME>.<CR>3 - 6 Months: Careful review to see if they should be archived or migrated to <PRODUCTNAME>.<CR>6 - 12 Months: Quick review, either archive or migrate to the read/write <PRODUCTNAME> XML file format.<CR>> 1 Year: Older than 1 year, archive to read-only format such as PDF"
+
+[RID_STR_COMMON_OV_DOC_MACRO_COMMENT_TITLE]
+en-US = "How many documents contain macros?"
+
+[RID_STR_COMMON_OV_DOC_MACRO_COMMENT_BODY]
+en-US = "<CR><PRODUCTNAME> includes <PRODUCTNAME> BASIC, a Basic dialect that is similar to Microsoft's Visual Basic for Application (VBA), but <PRODUCTNAME> uses a different sets of objects to access the underlying Office.<CR>This makes it necessary to migrate the VBA macros into the platform independent <PRODUCTNAME> BASIC. Your local <PRODUCTNAME> Migration partner can help you with these VBA macro migrations."
+
+[RID_STR_COMMON_OV_DOC_MACRO_LEGEND_BODY]
+en-US = "Complex: Macros using Forms, Controls and external references<CR>Medium: Macros with more than 50 lines of code<CR>Simple: Macros with less than 50 lines of code<CR>None: No macros in the document"
+
+[RID_STR_COMMON_OV_HIGH_LEVEL_ANALYSIS_DAW]
+en-US = "Analysis of document migration issues for documents modified within the last <TOPIC> months"
+
+[RID_STR_COMMON_OV_HIGH_LEVEL_ANALYSIS_PAW_NO_LIMIT]
+en-US = "High level analysis of document migration issues"
+
+[RID_STR_COMMON_OV_DOC_ANALYSIS_COMMENT_TITLE]
+en-US = "Which documents may have migration issues?"
+
+[RID_STR_COMMON_OV_DOC_ANALYSIS_COMMENT_BODY]
+en-US = "<CR>Some Microsoft Office documents may not migrate perfectly into <PRODUCTNAME>. These issues are outlined in the <PRODUCTNAME> Migration Guide. <PRODUCTNAME> engineering is working continuously to resolve these issues by improving the Microsoft Office filters.<CR>The Document Analysis Wizard has been provided by <PRODUCTNAME> engineering to detect the most important of these migration issues in any Microsoft Office document you wish to specify. These findings are summarised below [refer to the 'List of documents' sheet to see the list of all analyzed documents]."
+
+[RID_STR_COMMON_OV_DOC_ANALYSIS_DAW_LEGEND_BODY]
+en-US = "Complex: More complex migration issues.<CR>Minor: Minor migration issues easily fixed by any user.<CR>None: No issues Migrate to <PRODUCTNAME> without any issues.<CR><CR>Your <PRODUCTNAME> Migration Partners can help you with these more complex migration issues [refer to link above]. For instance they can migrate these documents to custom templates that achieve the same functionality but work well in both Office environments allowing the documents to be freely exchanged."
+
+[RID_STR_COMMON_OV_DOC_ANALYSIS_PAW_LEGEND_BODY]
+en-US = "Complex: More complex migration issues.<CR>Minor: Minor migration issues easily fixed by any user.<CR>None: No issues Migrate to <PRODUCTNAME> without any issues."
+
+[RID_STR_COMMON_OV_DOC_MOD_DATES_CHART_TITLE]
+en-US = "Document modification dates"
+
+[RID_STR_COMMON_OV_DOC_MACRO_CHART_TITLE]
+en-US = "Document with Macro Migration Issues"
+
+[RID_STR_COMMON_OV_DOC_ANALYSIS_CHART_TITLE]
+en-US = "Documents with Document Migration Issues"
+
+[RID_STR_COMMON_PREPARATION_NOTE]
+en-US = "Preparation"
+
+[RID_STR_COMMON_CANNOT_OPEN]
+en-US = "Cannot open - no analysis possible"
+
+[RID_STR_COMMON_RESULTS_SHEET_NAME_OVERVIEW]
+en-US = "Overview"
+
+[RID_STR_COMMON_RESULTS_SHEET_NAME_COSTS]
+en-US = "Issues Analyzed"
+
+[RID_STR_COMMON_RESULTS_SHEET_NAME_DOCISSUES_WORD]
+en-US = "Word Issues"
+
+[RID_STR_COMMON_RESULTS_SHEET_NAME_DOCISSUES_EXCEL]
+en-US = "Excel Issues"
+
+[RID_STR_COMMON_RESULTS_SHEET_NAME_DOCISSUES_POWERPOINT]
+en-US = "PowerPoint Issues"
+
+[RID_STR_COMMON_RESULTS_SHEET_NAME_DOCISSUE_DETAILS]
+en-US = "Issue Details"
+
+[RID_STR_COMMON_RESULTS_SHEET_NAME_DOCREF_DETAILS]
+en-US = "Reference Details"
+
+[RID_STR_COMMON_RESULTS_SHEET_NAME_DOCPROP]
+en-US = "List of documents"
+
+[RID_STR_COMMON_ANALYSIS_STR]
+en-US = "Analysis"
+
+[RID_STR_COMMON_NOTE_PRE]
+en-US = "Note"
+
+[RID_STR_COMMON_NOTE_POST]
+en-US = " on migration"
+
+[RID_STR_COMMON_OLE_EMBEDDED]
+en-US = "Embedded OLE Object"
+
+[RID_STR_COMMON_OLE_LINKED]
+en-US = "Linked OLE Object"
+
+[RID_STR_EXCEL_ISSUE_CHARTS_AND_TABLES]
+en-US = "Charts and Tables"
+
+[RID_STR_EXCEL_ISSUE_FORMAT]
+en-US = "Format"
+
+[RID_STR_EXCEL_ISSUE_FUNCTIONS]
+en-US = "Functions"
+
+[RID_STR_EXCEL_ISSUE_PORTABILITY]
+en-US = "Portability"
+
+[RID_STR_EXCEL_ISSUE_VBA_MACROS]
+en-US = "VBA Macros"
+
+[RID_STR_EXCEL_ISSUE_INFORMATION]
+en-US = "Information"
+
+[RID_STR_EXCEL_SUBISSUE_PIVOT]
+en-US = "Pivot"
+
+[RID_STR_EXCEL_SUBISSUE_ZOOM]
+en-US = "Zoom"
+
+[RID_STR_EXCEL_TRUE]
+en-US = "True"
+
+[RID_STR_EXCEL_FALSE]
+en-US = "False"
+
+[RID_STR_EXCEL_SUBISSUE_MAX_SHEETS_EXCEEDED]
+en-US = "Maximum Sheets Exceeded"
+
+[RID_STR_EXCEL_SUBISSUE_ATTRIBUTES]
+en-US = "Cell Attributes"
+
+[RID_STR_EXCEL_SUBISSUE_EXTERNAL]
+en-US = "External"
+
+[RID_STR_EXCEL_SUBISSUE_SHEET_CHART]
+en-US = "Sheet Chart"
+
+[RID_STR_EXCEL_SUBISSUE_EMBEDDED_CHART]
+en-US = "Embedded Chart"
+
+[RID_STR_EXCEL_SUBISSUE_INVALID_WORKSHEET_NAME]
+en-US = "Invalid Worksheet Name"
+
+[RID_STR_EXCEL_ATTRIBUTE_BADCHARACTER]
+en-US = "'<TOKEN1>' at pos <TOKEN2>"
+
+[RID_STR_EXCEL_ATTRIBUTE_DB_QUERY]
+en-US = "Connection string"
+
+[RID_STR_EXCEL_ATTRIBUTE_NAME]
+en-US = "Name"
+
+[RID_STR_EXCEL_ATTRIBUTE_NUMBER_OF_PIVOTFIELDS]
+en-US = "Number of PivotFields"
+
+[RID_STR_EXCEL_ATTRIBUTE_TITLE]
+en-US = "Title"
+
+[RID_STR_EXCEL_ATTRIBUTE_TYPE]
+en-US = "Type"
+
+[RID_STR_EXCEL_ATTRIBUTE_PIE]
+en-US = "Pie"
+
+[RID_STR_EXCEL_ATTRIBUTE_SLICES_IN_DIFFERENT_DIRECTION]
+en-US = "Slices in diff. direction"
+
+[RID_STR_EXCEL_ATTRIBUTE_LEGEND_NAME]
+en-US = "Legend Name"
+
+[RID_STR_EXCEL_ATTRIBUTE_NUMBER_OF_LEGEND_ENTRIES]
+en-US = "Number of Legend Entries"
+
+[RID_STR_EXCEL_ATTRIBUTE_PIVOT_TABLE_NAME]
+en-US = "PivotTable Name"
+
+[RID_STR_EXCEL_ATTRIBUTE_PIVOT_FIELDS_VISIBLE]
+en-US = "PivotFields Visible"
+
+[RID_STR_EXCEL_ATTRIBUTE_PIVOT_FIELDS_NUM]
+en-US = "Number of PivotFields"
+
+[RID_STR_EXCEL_ATTRIBUTE_PRINT_RANGE]
+en-US = "Print Range"
+
+[RID_STR_EXCEL_ATTRIBUTE_DISPLAY_ZOOM]
+en-US = "Display Zoom"
+
+[RID_STR_EXCEL_ATTRIBUTE_NUMBER_OF_SHEETS]
+en-US = "Number of Sheets"
+
+[RID_STR_EXCEL_ATTRIBUTE_LIST_SOURCE]
+en-US = "ListSource"
+
+[RID_STR_EXCEL_ATTRIBUTE_CUSTOM_FORMULA]
+en-US = "Custom Formula"
+
+[RID_STR_EXCEL_ATTRIBUTE_SET]
+en-US = "Set"
+
+[RID_STR_EXCEL_ATTRIBUTE_LINE_STYLE]
+en-US = "Line Style"
+
+[RID_STR_EXCEL_ATTRIBUTE_DASHED_DOT]
+en-US = "Dashed/Dot"
+
+[RID_STR_EXCEL_ATTRIBUTE_FILL_PATTERN]
+en-US = "Fill Pattern"
+
+[RID_STR_EXCEL_ATTRIBUTE_PATTERNED]
+en-US = "Patterned"
+
+[RID_STR_EXCEL_ATTRIBUTE_FUNCTION_STRING]
+en-US = "Function String"
+
+[RID_STR_EXCEL_ATTRIBUTE_PASSWORD_TO_OPEN]
+en-US = "Password to Open"
+
+[RID_STR_EXCEL_ATTRIBUTE_PASSWORD_TO_MODIFY]
+en-US = "Password to Modify"
+
+[RID_STR_EXCEL_ATTRIBUTE_OBJECT_TYPE]
+en-US = "Object Type"
+
+[RID_STR_EXCEL_ATTRIBUTE_OBJECT_NAME]
+en-US = "Object Name"
+
+[RID_STR_EXCEL_ATTRIBUTE_SOURCE]
+en-US = "Source"
+
+[RID_STR_EXCEL_ATTRIBUTE_VALUE]
+en-US = "Value"
+
+[RID_STR_EXCEL_ATTRIBUTE_UNABLE_TO_ACCESS_VBPROJECT]
+en-US = "Unable to access VBProject"
+
+[RID_STR_EXCEL_ATTRIBUTE_FURTHER_MACRO_ANALYSIS_NOT_POSSIBLE]
+en-US = "Further macro analysis not possible"
+
+[RID_STR_EXCEL_ATTRIBUTE_VBPROJECT_PASSWORD_SET]
+en-US = "VBProject Password Set"
+
+[RID_STR_EXCEL_ATTRIBUTE_PROJECT]
+en-US = "Project"
+
+[RID_STR_EXCEL_ATTRIBUTE_COMPONENT]
+en-US = "Component"
+
+[RID_STR_EXCEL_ATTRIBUTE_PROCEDURES]
+en-US = "Procedures"
+
+[RID_STR_EXCEL_ATTRIBUTE_NUMBER_OF_LINES]
+en-US = "Number of Lines"
+
+[RID_STR_EXCEL_ATTRIBUTE_CONTROLS]
+en-US = "Controls"
+
+[RID_STR_EXCEL_ATTRIBUTE_TYPES]
+en-US = "Types"
+
+[RID_STR_EXCEL_ATTRIBUTE_DESCRIPTION]
+en-US = "Description"
+
+[RID_STR_EXCEL_ATTRIBUTE_FILE]
+en-US = "File"
+
+[RID_STR_EXCEL_ATTRIBUTE_PATH]
+en-US = "Path"
+
+[RID_STR_EXCEL_ATTRIBUTE_MISSING]
+en-US = "MISSING"
+
+[RID_STR_EXCEL_ATTRIBUTE_CHECK_DOCUMENT_REFERENCES]
+en-US = "Check document VB-IDE/Tools/References"
+
+[RID_STR_EXCEL_ATTRIBUTE_MAJOR]
+en-US = "Major"
+
+[RID_STR_EXCEL_ATTRIBUTE_MINOR]
+en-US = "Minor"
+
+[RID_STR_EXCEL_ATTRIBUTE_BUILT_IN]
+en-US = "Built In"
+
+[RID_STR_EXCEL_ATTRIBUTE_INTACT]
+en-US = "Intact"
+
+[RID_STR_EXCEL_ATTRIBUTE_TYPELIB]
+en-US = "TypeLib"
+
+[RID_STR_EXCEL_ATTRIBUTE_GUID]
+en-US = "GUID"
+
+[RID_STR_EXCEL_ATTRIBUTE_CUSTOM]
+en-US = "Custom"
+
+[RID_STR_EXCEL_ATTRIBUTE_IS_BROKEN]
+en-US = "Is Broken"
+
+[RID_STR_EXCEL_ATTRIBUTE_BROKEN]
+en-US = "Broken!"
+
+[RID_STR_EXCEL_ATTRIBUTE_NON_PORTABLE_EXTERNAL_REFERENCES]
+en-US = "Non Portable External References"
+
+[RID_STR_EXCEL_ATTRIBUTE_INCLUDING]
+en-US = "including:"
+
+[RID_STR_EXCEL_ATTRIBUTE_PASSWORD]
+en-US = "Password"
+
+[RID_STR_EXCEL_ENUMERATION_CUSTOM]
+en-US = "Custom"
+
+[RID_STR_EXCEL_ENUMERATION_LIST]
+en-US = "List"
+
+[RID_STR_EXCEL_ENUMERATION_UNKNOWN]
+en-US = "Unknown"
+
+[RID_STR_EXCEL_ENUMERATION_LINE_STYLE_CONTINUOUS]
+en-US = "Continuous"
+
+[RID_STR_EXCEL_ENUMERATION_LINE_STYLE_DASH]
+en-US = "Dash"
+
+[RID_STR_EXCEL_ENUMERATION_LINE_STYLE_DASHDOT]
+en-US = "DashDot"
+
+[RID_STR_EXCEL_ENUMERATION_LINE_STYLE_DOT]
+en-US = "Dot"
+
+[RID_STR_EXCEL_ENUMERATION_LINE_STYLE_DOUBLE]
+en-US = "Double"
+
+[RID_STR_EXCEL_ENUMERATION_LINE_STYLE_SLANTDASHDOT]
+en-US = "SlantDashDot"
+
+[RID_STR_EXCEL_ENUMERATION_LINE_STYLE_LINESTYLENONE]
+en-US = "LineStyleNone"
+
+[RID_STR_EXCEL_NOTE_DB_QUERY]
+en-US = "The connection to the database in <PRODUCTNAME> will be lost . The data will appear correctly but can not be updated."
+
+[RID_STR_EXCEL_NOTE_INVALIDWORKSHEETNAME]
+en-US = "The worksheet name contains characters that are not supported by <PRODUCTNAME>. Please rename your sheet and exclude these characters."
+
+[RID_STR_EXCEL_NOTE_ZOOM]
+en-US = "all sheets will have the same zoom irrespective of their Excel View/Zoom setting after migration to <PRODUCTNAME>"
+
+[RID_STR_EXCEL_NOTE_CELL_ATTRIBUTES_3]
+en-US = "this line style is imported as a solid line. Only solid line syles are supported in <PRODUCTNAME>"
+
+[RID_STR_EXCEL_NOTE_CELL_ATTRIBUTES_4]
+en-US = "this fill pattern is imported as a solid gray. Only solid fill patterns are supported in <PRODUCTNAME>"
+
+[RID_STR_EXCEL_NOTE_CELL_FUNCTIONS_1]
+en-US = "this function returns platform dependent information specific to Windows and is not imported to <PRODUCTNAME>"
+
+[RID_STR_EXCEL_NOTE_CELL_FUNCTIONS_2]
+en-US = "this function returns error codes specific to Excel and is imported in <PRODUCTNAME> as the stub function ErrorType() always returning Err.520"
+
+[RID_STR_EXCEL_NOTE_CELL_FUNCTIONS_3]
+en-US = "this is an external function referenced from an Excel spreadsheet. It does not import correctly to <PRODUCTNAME>. The external reference is stripped and the resulting formula always returns #ADDIN?"
+
+[RID_STR_EXCEL_NOTE_DOCUMENT_PROPERTIES_1]
+en-US = "this summary property is lost"
+
+[RID_STR_EXCEL_NOTE_DOCUMENT_PROPERTIES_2]
+en-US = "this custom property is lost"
+
+[RID_STR_EXCEL_NOTE_SHEET_LIMITS_1]
+en-US = "all sheets will be lost in <PRODUCTNAME> that are greater than "
+
+[RID_STR_EXCEL_NOTE_SHEET_LIMITS_2]
+en-US = "all sheets must be moved to a new workbook before migration that are greater than "
+
+[RID_STR_EXCEL_SUBLOCATION_NA]
+en-US = "na"
+
+[RID_STR_EXCEL_SUBISSUE_WORKBOOK_PROTECTION]
+en-US = "Workbook Protection"
+
+[RID_STR_EXCEL_ATTRIBUTE_PROTECT_TYPE_SHARING]
+en-US = "Protection Sharing"
+
+[RID_STR_EXCEL_ATTRIBUTE_PROTECT_TYPE_STRUCTURE]
+en-US = "Protection Structure"
+
+[RID_STR_EXCEL_ATTRIBUTE_PROTECT_TYPE_WINDOWS]
+en-US = "Protection Windows"
+
+[RID_STR_EXCEL_NOTE_PASSWORD_TO_OPEN]
+en-US = "workbook is protected"
+
+[RID_STR_EXCEL_NOTE_DATATABLE]
+en-US = "no simple workaround, could copy the data table and paste below the chart"
+
+[RID_STR_EXCEL_NOTE_XAXISCATEGORY]
+en-US = "only category option supported. Setup your category labels you need on the sheet"
+
+[RID_STR_EXCEL_NOTE_UNSUPPORTEDTYPE1]
+en-US = "following chart types not supported"
+
+[RID_STR_EXCEL_NOTE_UNSUPPORTEDTYPE2]
+en-US = "pie of pie,exploded 3D pie,bar of pie,bubble,filled radar,exploded doughnut"
+
+[RID_STR_EXCEL_NOTE_TRENDLINE]
+en-US = "replace the trend line by drawing a line on the chart. You must click outside the chart when adding the line and drag it onto the chart. Objects created by clicking on the chart will not import"
+
+[RID_STR_EXCEL_NOTE_DATALABELWITHLEGEND]
+en-US = "after import into <PRODUCTNAME>, select Insert->Data Labels->show legend icon with label and the legend key will appear"
+
+[RID_STR_EXCEL_NOTE_LEGENDPOSITION]
+en-US = "only legend to the right is supported on import. Change legend position in <PRODUCTNAME> after import"
+
+[RID_STR_EXCEL_NOTE_TITLEFONT]
+en-US = "title font with different font size is not supported on import, set a sub-title in <PRODUCTNAME>, then change the font size"
+
+[RID_STR_EXCEL_NOTE_SERIESCHARTTYPE]
+en-US = "multiple series with different chart types. SO only supports one chart type for all series. Adjust the chart type to best display the series"
+
+[RID_STR_EXCEL_NOTE_DATASOURCENOTLINKEDTOCELL]
+en-US = "data sources to catalogue or other external sources not supported. Data source must be set to cell or range on the sheet"
+
+[RID_STR_EXCEL_NOTE_CATEGORYANDDATA]
+en-US = "category names must be located above or to the left of the value ranges"
+
+[RID_STR_EXCEL_NOTE_DATASOURCEONDIFFERENTSHEET]
+en-US = "data sources must be located on the same sheet. Paste the data sources onto the same sheet"
+
+[RID_STR_EXCEL_NOTE_CATEGORYLABELMORETHANONECELL]
+en-US = "category labels spanning multiple cells are not supported. Copy all the text to one cell"
+
+[RID_STR_EXCEL_NOTE_COLUMNBAR]
+en-US = "chart 'series in' must match the data source. For data source in single row, set 'series in' = row. For data source in single column, set 'series in' = column"
+
+[RID_STR_EXCEL_NOTE_BORDER]
+en-US = "chart border will not appear in <PRODUCTNAME>, before import,set border to none, draw a rectangle around the border of the chart"
+
+[RID_STR_EXCEL_NOTE_AXISINTERVAL]
+en-US = " y axis interval setting will be changed in <PRODUCTNAME>. Modify axes interval setting in <PRODUCTNAME>, re-set major interval scale"
+
+[RID_STR_EXCEL_ATTRIBUTE_DATATABLE]
+en-US = "Data Table"
+
+[RID_STR_EXCEL_ATTRIBUTE_INVALIDCHARACTER]
+en-US = "Invalid Characters"
+
+[RID_STR_EXCEL_ATTRIBUTE_XAXISCATEGORY]
+en-US = "Chart Axes"
+
+[RID_STR_EXCEL_ATTRIBUTE_TIMESCALE]
+en-US = "time scale/auto"
+
+[RID_STR_EXCEL_ATTRIBUTE_UNSUPPORTEDTYPE]
+en-US = "Unsupported Chart Type"
+
+[RID_STR_EXCEL_ATTRIBUTE_TRENDLINE]
+en-US = "Trendline"
+
+[RID_STR_EXCEL_ATTRIBUTE_DATALABELWITHLEGEND]
+en-US = "Data Label With Legend"
+
+[RID_STR_EXCEL_ATTRIBUTE_LEGENDPOSITION]
+en-US = "Legend Position"
+
+[RID_STR_EXCEL_ATTRIBUTE_TITLEFONT]
+en-US = "Title Font"
+
+[RID_STR_EXCEL_ATTRIBUTE_DIFFERENT]
+en-US = "Different"
+
+[RID_STR_EXCEL_ATTRIBUTE_SERIESCHARTTYPE]
+en-US = "Multiple series chart type"
+
+[RID_STR_EXCEL_ATTRIBUTE_CHANGED]
+en-US = "changed"
+
+[RID_STR_EXCEL_ATTRIBUTE_DATASOURCE]
+en-US = "Data Source"
+
+[RID_STR_EXCEL_ATTRIBUTE_DATASOURCENOTLINKEDTOCELL]
+en-US = "Not Linked To A Cell"
+
+[RID_STR_EXCEL_ATTRIBUTE_CATEGORYANDDATA]
+en-US = "Category And Data"
+
+[RID_STR_EXCEL_ATTRIBUTE_SEPARATE]
+en-US = "Separate"
+
+[RID_STR_EXCEL_ATTRIBUTE_DATASOURCEONDIFFERENTSHEET]
+en-US = "On Different Sheet"
+
+[RID_STR_EXCEL_ATTRIBUTE_CATEGORYLABEL]
+en-US = "Category Label"
+
+[RID_STR_EXCEL_ATTRIBUTE_CATEGORYLABELMORETHANONECELL]
+en-US = "More Than One Cell"
+
+[RID_STR_EXCEL_ATTRIBUTE_COLUMNBAR]
+en-US = "Column/Bar Chart"
+
+[RID_STR_EXCEL_ATTRIBUTE_ONECOLUMNROW]
+en-US = "Data Source With Single Column/ Chart Series In Row"
+
+[RID_STR_EXCEL_ATTRIBUTE_BORDER]
+en-US = "Border"
+
+[RID_STR_EXCEL_ATTRIBUTE_AXISINTERVAL]
+en-US = "Y Axis Interval"
+
+[RID_STR_EXCEL_ATTRIBUTE_AUTO]
+en-US = "Auto"
+
+[RID_STR_EXCEL_ATTRIBUTE_CHARTNAME]
+en-US = "Chart Name"
+
+[RID_STR_EXCEL_SUBISSUE_CHART_COMPLEX]
+en-US = "Chart Issues Complex"
+
+[RID_STR_EXCEL_SUBISSUE_CHART_MINOR]
+en-US = "Chart Issues Minor"
+
+[RID_STR_EXCEL_ATTRIBUTE_NOTRIGHT]
+en-US = "not at right hand side"
+
+[RID_STR_EXCEL_ATTRIBUTE_NUMBER_OF_CELLS]
+en-US = "number cells effected"
+
+[RID_STR_PP_TRUE]
+en-US = "True"
+
+[RID_STR_PP_FALSE]
+en-US = "False"
+
+[RID_STR_PP_ISSUE_OBJECTS_GRAPHICS_AND_TEXTBOXES]
+en-US = "Objects, Graphics and Textboxes"
+
+[RID_STR_PP_SUBISSUE_COMMENT]
+en-US = "Comment"
+
+[RID_STR_PP_SUBISSUE_MOVIE]
+en-US = "Movie"
+
+[RID_STR_PP_ATTRIBUTE_CONTENT]
+en-US = "Content"
+
+[RID_STR_PP_ATTRIBUTE_LOOP]
+en-US = "Loop"
+
+[RID_STR_PP_ATTRIBUTE_PLAYONENTRY]
+en-US = "PlayOnEntry"
+
+[RID_STR_PP_ATTRIBUTE_REWIND]
+en-US = "Rewind"
+
+[RID_STR_PP_ATTRIBUTE_TYPES]
+en-US = "Types"
+
+[RID_STR_PP_ENUMERATION_VIEW_HANDOUT_MASTER]
+en-US = "View Handout Master"
+
+[RID_STR_PP_ENUMERATION_VIEW_NORMAL]
+en-US = "View Normal"
+
+[RID_STR_PP_ENUMERATION_VIEW_NOTES_MASTER]
+en-US = "View Notes Master"
+
+[RID_STR_PP_ENUMERATION_VIEW_NOTES_PAGE]
+en-US = "View Notes Page"
+
+[RID_STR_PP_ENUMERATION_VIEW_OUTLINE]
+en-US = "View Outline"
+
+[RID_STR_PP_ENUMERATION_VIEW_SLIDE]
+en-US = "View Slide"
+
+[RID_STR_PP_ENUMERATION_VIEW_SLIDE_MASTER]
+en-US = "View Slide Master"
+
+[RID_STR_PP_ENUMERATION_VIEW_SLIDE_SORTER]
+en-US = "View Slide Sorter"
+
+[RID_STR_PP_ENUMERATION_VIEW_TITLE_MASTER]
+en-US = "View Title Master"
+
+[RID_STR_PP_ENUMERATION_UNKNOWN]
+en-US = "Unknown"
+
+[RID_RESXLS_COST_Action_Settings]
+en-US = "Action Settings"
+
+[RID_RESXLS_COST_Add_custom_properties_to_document_Properties_Summary_Comments_field]
+en-US = "Add custom properties to document Properties Summary Comments field."
+
+[RID_RESXLS_COST_Additional_Weighting_Factors]
+en-US = "Additional Weighting Factors"
+
+[RID_RESXLS_COST_All_sheets__256_will_need_to_be_moved_to_a_new_workbook]
+en-US = "All sheets >256 will need to be moved to a new workbook"
+
+[RID_RESXLS_COST_Appearance]
+en-US = "Appearance"
+
+[RID_RESXLS_COST_Application]
+en-US = "Application"
+
+[RID_RESXLS_COST_AutoFilter]
+en-US = "AutoFilter"
+
+[RID_RESXLS_COST_Border_Styles]
+en-US = "Border Styles"
+
+[RID_RESXLS_COST_Cell_Attributes]
+en-US = "Cell Attributes"
+
+[RID_RESXLS_COST_CELL_SPAN_WORKAROUND]
+en-US = "Add extra row below cell. Cut and paste contents running onto 2nd page into new cell."
+
+[RID_RESXLS_COST_Cell_Spanning_Page]
+en-US = "Cell Spanning Page"
+
+[RID_RESXLS_COST_ChangesAndReviewing]
+en-US = "Changes And Reviewing"
+
+[RID_RESXLS_COST_Charts_And_Tables]
+en-US = "Charts And Tables"
+
+[RID_RESXLS_COST_Comment]
+en-US = "Comment"
+
+[RID_RESXLS_COST_Content_And_Document_Properties]
+en-US = "Content And Document Properties"
+
+[RID_RESXLS_COST_ContentAndDocumentProperties]
+en-US = "Content And Document Properties"
+
+[RID_RESXLS_COST_Controls]
+en-US = "Controls"
+
+[RID_RESXLS_COST_Cost]
+en-US = "Cost Comment"
+
+[RID_RESXLS_COST_Cost__In_simple_cases_cut_and_paste_to_new_sheet_3___5_min]
+en-US = "Cost: In simple cases cut and paste to new sheet. 3 - 5 min. May exist functions that refer to these cells. 10+"
+
+[RID_RESXLS_COST_COST_0]
+en-US = "Cost = 0. No work around."
+
+[RID_RESXLS_COST_COST_EMBED_CHART]
+en-US = "Variations in cost can range from 0 - 30 mins. Cost caused by uneven data souce, external data source, unsupported chart types, floating legend position."
+
+[RID_RESXLS_COST_COST_ERROR_TYPE]
+en-US = "Fix up cost can vary depending on the context in which this is used. Cost 3 - 5"
+
+[RID_RESXLS_COST_COST_INFO]
+en-US = "Fix up cost can vary depending on the context in which this is used. Cost 2 - 4"
+
+[RID_RESXLS_COST_COST_INVAL_PASS]
+en-US = "Cost = 0. Rerun analysis with correct password."
+
+[RID_RESXLS_COST_COST_INVALID_WORKSHEET_NAME]
+en-US = "Aufewand: Vergewissern Sie sich nach der Umbenennung, dass alle Makros mit Verweisen auf dieses Arbeitsblatt ebenfalls angepaßt werden. Der Aufwand hĂ€ngt von der Zahl der Codezeilen ab, die auf den Arbeitsblattnamen verweisen."
+en-US = "Cost: When the worksheet has been renamed, ensure that all macros with a reference to the worksheet are also renamed accordingly. Cost depends on how many lines of code there are that refer to the worksheet name."
+
+[RID_RESXLS_COST_Cost_of_4_min_per_line__takes_no_account_of_complexity_of_code__number_of_comment_lines_and_so_on]
+en-US = "Cost of 4 min per line, takes no account of complexity of code, number of comment lines and so on"
+
+[RID_RESXLS_COST_Cost_per_Issue_or_Factor__min]
+en-US = "Cost per Issue or Factor (min)"
+
+[RID_RESXLS_COST_COST_PIVOT]
+en-US = "Cost = 0. Calc does not support dynamically created charts. No workaround."
+
+[RID_RESXLS_COST_COST_SHEET_CHART]
+en-US = "Variations in cost can range from 0 - 30 mins. Cost caused by uneven data souce, external data source, unsupported chart types, floating legend position."
+
+[RID_RESXLS_COST_Cost_variations_occur_because_of_the_use_of_macros_with_controls]
+en-US = "Cost variations occur because of the use of macros with controls."
+
+[RID_RESXLS_COST_COST_VBA_CONT_TYPE]
+en-US = "Cost = 0. Total number of controls better estimate - this information is useful as an indication of complexity of the Forms."
+
+[RID_RESXLS_COST_COST_VBA_CONTROLS]
+en-US = "Cost = 3 minute per control, this does not take account of issues with Frame controls or the number of these controls that have event handlers that need manually linked to migrated code."
+
+[RID_RESXLS_COST_COST_VBA_FORMS]
+en-US = "Cost = 0. Using total number of controls on forms as better estimate"
+
+[RID_RESXLS_COST_COST_VBA_LOC]
+en-US = "Cost of 4 min per line, takes no account of complexity of code, number of comment lines and so on"
+
+[RID_RESXLS_COST_COST_VBA_PROPS]
+en-US = "Cost = 0 using lines of code as better cost estimate."
+
+[RID_RESXLS_COST_Costs__min]
+en-US = "Costs (min)"
+
+[RID_RESXLS_COST_Custom_Bullet_List]
+en-US = "Custom Bullet List"
+
+[RID_RESXLS_COST_Document_Custom_Properties]
+en-US = "Document Custom Properties"
+
+[RID_RESXLS_COST_Document_Parts_Protection]
+en-US = "Document Parts Protection"
+
+[RID_RESXLS_COST_Embedded_Chart]
+en-US = "Chart Issues Minor"
+
+[RID_RESXLS_COST_embedded_objects]
+en-US = "Cost = 0. Most embedded objects come across. If one does not then this may require some reenginering and is not in the scope of an automated cost calculation."
+
+[RID_RESXLS_COST_Embedded_OLE_Object]
+en-US = "Embedded OLE Object"
+
+[RID_RESXLS_COST_Excel]
+en-US = "Excel"
+
+[RID_RESXLS_COST_Excel_Totals]
+en-US = "Excel Totals"
+
+[RID_RESXLS_COST_External]
+en-US = "External"
+
+[RID_RESXLS_COST_External_References_In_Macro___Module__Class_or_UserForm]
+en-US = "External References In Macro - Module, Class or UserForm"
+
+[RID_RESXLS_COST_Factor_Count]
+en-US = "Factor Count"
+
+[RID_RESXLS_COST_Fields]
+en-US = "Fields"
+
+[RID_RESXLS_COST_Filters]
+en-US = "Filters"
+
+[RID_RESXLS_COST_Fixed_SO7]
+en-US = "Fixed <PRODUCTNAME> <PRODUCTVERSION>"
+
+[RID_RESXLS_COST_Form_Field]
+en-US = "Form Field"
+
+[RID_RESXLS_COST_Format]
+en-US = "Format"
+
+[RID_RESXLS_COST_Functions]
+en-US = "Functions"
+
+[RID_RESXLS_COST_Zoom]
+en-US = "Zoom"
+
+[RID_RESXLS_COST_HEADERFOOTER_WORKAROUND]
+en-US = "Insert carriage returns to resize header/ footer to the size of the graphic."
+
+[RID_RESXLS_COST_Hours_Per_MD]
+en-US = "Hours Per MD ="
+
+[RID_RESXLS_COST_Indexes_And_References]
+en-US = "Indexes And References"
+
+[RID_RESXLS_COST_Invalid_Password_Entered]
+en-US = "Invalid Password Entered"
+
+[RID_RESXLS_COST_Invalid_Worksheet_Name]
+en-US = "Invalid Worksheet Name"
+
+[RID_RESXLS_COST_Issue__18_of_the_24_table_border_styles_do_not_display_correctly]
+en-US = "Issue: 18 of the 24 table border styles do not display correctly."
+
+[RID_RESXLS_COST_Issue__256_sheet_limit_exceeded]
+en-US = "Issue: 256 sheet limit exceeded."
+
+[RID_RESXLS_COST_Issue__32000_row_limit_exceeded]
+en-US = "Issue: 32000 row limit exceeded."
+
+[RID_RESXLS_COST_Issue__A_worksheet_in_the_workbook_has_a_name_with_invalid_characters]
+en-US = "Issue: A worksheet in the workbook has a name with invalid characters."
+
+[RID_RESXLS_COST_Issue__AutoFilter_does_not_function_properly]
+en-US = "Issue: AutoFilter does not function properly."
+
+[RID_RESXLS_COST_Issue__Calls_to_windows_API_functions_are_windows_specific]
+en-US = "Issue: Calls to windows API functions are windows specific."
+
+[RID_RESXLS_COST_Issue__Chart_support_is_limited_in_SO7]
+en-US = "Issue: Chart support is limited in <PRODUCTNAME>."
+
+[RID_RESXLS_COST_Issue__Comments_are_lost_on_migration_to_SO7]
+en-US = "Issue: Comments are lost on migration to <PRODUCTNAME>."
+
+[RID_RESXLS_COST_Issue__Custom_Properties_are_lost_on_migration]
+en-US = "Issue: Custom Properties are lost on migration"
+
+[RID_RESXLS_COST_Issue__Document_is_password_protected_and_cannot_be_opened_by_SO]
+en-US = "Issue: Document is password protected and cannot be opened by SO."
+
+[RID_RESXLS_COST_Issue__External_functions_not_supported_by_SO7]
+en-US = "Issue: External functions not supported by <PRODUCTNAME>"
+
+[RID_RESXLS_COST_Issue__External_references_are_windows_specific]
+en-US = "Issue: External references are windows specific."
+
+[RID_RESXLS_COST_Issue__Fields_are_imported_but_need_to_have_the_link_to_datasource_reset]
+en-US = "Issue: Fields are imported but need to have the link to data source reset."
+
+[RID_RESXLS_COST_Issue__Graphics___frames_in_header_footer_tend_to_be_misplaced]
+en-US = "Issue: Graphics & frames in header footer tend to be misplaced."
+
+[RID_RESXLS_COST_Issue__Incorrect_password_entered]
+en-US = "Issue: Incorrect password entered. "
+
+[RID_RESXLS_COST_Issue__Information_relating_to_the_data_source_is_lost_in_migration]
+en-US = "Issue: Information relating to the data source is lost in migration."
+
+[RID_RESXLS_COST_Issue__Invalid_password_entered_Rerun_analysis]
+en-US = "Issue: Invalid password entered. Rerun analysis."
+
+[RID_RESXLS_COST_Issue__Lost_during_migration_No_StarOffice_equivalent]
+en-US = "Issue: Lost during migration. No <PRODUCTNAME> equivalent."
+
+[RID_RESXLS_COST_Issue__Macros_from_old_workbook_versions_do_not_import_into_SO7]
+en-US = "Issue: Macros from old workbook versions do not import into SO9."
+
+[RID_RESXLS_COST_Issue__Modules_will_need_porting_to_StarOffice_Basic]
+en-US = "Issue: Modules will need porting to <PRODUCTNAME> Basic."
+
+[RID_RESXLS_COST_Issue__Most_migrate_ok_but_do_not_roundtrip]
+en-US = "Issue: Most migrate ok but do not roundtrip."
+
+[RID_RESXLS_COST_Issue__Movies_are_not_supported_by_SO7]
+en-US = "Issue: Movies are not supported by <PRODUCTNAME>."
+
+[RID_RESXLS_COST_Issue__Need_to_set_these_to_be_included_in_TOC_in_SO7]
+en-US = "Issue: Need to set these to be included in TOC in <PRODUCTNAME>"
+
+[RID_RESXLS_COST_Issue__Password_protection_of_comments__tracked_changes_and_forms_is_lost]
+en-US = "Issue: Password protection of comments, tracked changes and forms is lost."
+
+[RID_RESXLS_COST_Issue__Pivot_charts_are_not_supported_by_SO7]
+en-US = "Issue: Pivot charts are not supported by <PRODUCTNAME>."
+
+[RID_RESXLS_COST_Issue__Presents_a_cross_platform_interoperability_issue]
+en-US = "Issue: Presents a cross platform interoperability issue."
+
+[RID_RESXLS_COST_Issue__Print_wide_pages_not_supported]
+en-US = "Issue: Print wide pages not supported."
+
+[RID_RESXLS_COST_Issue__Shading_can_be_applied_to_fields_and_to_controls_separately_in_Word]
+en-US = "Issue: Shading can be applied to fields and to controls separately in Word. <PRODUCTNAME> does not differentiate between controls and fields so shading can look different in Writer."
+
+[RID_RESXLS_COST_Issue__Table_imported_as_text_as_no_StarOffice_equivalent]
+en-US = "Issue: Table imported as text as no <PRODUCTNAME> equivalent."
+
+[RID_RESXLS_COST_Issue__Tables_nested_in_tables_are_not_supported_by_SO7]
+en-US = "Issue: Tables nested in tables are not supported by <PRODUCTNAME>."
+
+[RID_RESXLS_COST_Issue__Tabs_are_incorrect_after_migration]
+en-US = "Issue: Tabs are incorrect after migration. Certain format types do not migrate to <PRODUCTNAME>."
+
+[RID_RESXLS_COST_Issue__Text_form_fields_roundtrip_as_Fill_In_field]
+en-US = "Issue: Text form fields roundtrip as Fill In field. Field attributes are lost."
+
+[RID_RESXLS_COST_Issue__Unsupported_formatting_set]
+en-US = "Issue: Unsupported formatting set."
+
+[RID_RESXLS_COST_Issue__Unsupported_function_type]
+en-US = "Issue: Unsupported function type. "
+
+[RID_RESXLS_COST_Issue__Userform_controls_will_need_porting_to_StarOffice_Basic]
+en-US = "Issue: Userform controls will need porting to <PRODUCTNAME> Basic."
+
+[RID_RESXLS_COST_Issue__Userforms_controls_will_need_porting_to_StarOffice_Basic]
+en-US = "Issue: Userform controls will need porting to <PRODUCTNAME> Basic."
+
+[RID_RESXLS_COST_Issue__Userforms_will_need_porting_to_StarOffice_Basic]
+en-US = "Issue: Userforms will need porting to <PRODUCTNAME> Basic."
+
+[RID_RESXLS_COST_Issue__VBProject_is_password_protected_Remove_password__rerun_analysis]
+en-US = "Issue: VBProject is password protected. Remove password, rerun analysis."
+
+[RID_RESXLS_COST_Issue__Will_need_refreshing_in_SO7_External_datasources_and_functions_are_not_supported]
+en-US = "Issue: Will need refreshing in <PRODUCTNAME>. External data sources and functions are not supported"
+
+[RID_RESXLS_COST_Issue__Workbook_protection_is_not_supported]
+en-US = "Issue: Workbook protection is not supported"
+
+[RID_RESXLS_COST_Issue__Writer_cannot_correctly_display_cells_spanning_more_than_1_page]
+en-US = "Issue: Writer cannot correctly display cells spanning more than 1 page."
+
+[RID_RESXLS_COST_Issue_Category]
+en-US = "Issue Category"
+
+[RID_RESXLS_COST_Issue_Count]
+en-US = " Issue Count"
+
+[RID_RESXLS_COST_Issue_Type]
+en-US = "Issue Type"
+
+[RID_RESXLS_COST_Linked_OLE_Object]
+en-US = "Linked OLE Object"
+
+[RID_RESXLS_COST_Mail_Merge_Datasource]
+en-US = "Mail Merge Data Source"
+
+[RID_RESXLS_COST_Mail_Merge_Field]
+en-US = "Mail Merge Field"
+
+[RID_RESXLS_COST_Major_Issue]
+en-US = "Complex Issue"
+
+[RID_RESXLS_COST_MAX_SHEETS_WORKAROUND]
+en-US = "Need to move sheets to new workbook. "
+
+[RID_RESXLS_COST_Maximum_Rows_Exceeded]
+en-US = "Maximum Rows Exceeded"
+
+[RID_RESXLS_COST_Maximum_Sheets_Exceeded]
+en-US = "Maximum Sheets Exceeded"
+
+[RID_RESXLS_COST_Migration_Issues_Costs]
+en-US = "Migration Issues Analyzed"
+
+[RID_RESXLS_COST_Movie]
+en-US = "Movie"
+
+[RID_RESXLS_COST_NESTED_TABLE_WORKAROUND]
+en-US = "In word use split cell to create similar layout."
+
+[RID_RESXLS_COST_Nested_Tables]
+en-US = "Nested Tables"
+
+[RID_RESXLS_COST_Not_Planned]
+en-US = "Not Planned"
+
+[RID_RESXLS_COST_Notes_And_Handouts]
+en-US = "Notes And Handouts"
+
+[RID_RESXLS_COST_Number_Of_External_References]
+en-US = "Number Of External References"
+
+[RID_RESXLS_COST_Number_Of_Lines]
+en-US = "Number Of Lines"
+
+[RID_RESXLS_COST_Number_of_Lines_in_Unique_Modules]
+en-US = "Number of Lines in Unique Code Modules"
+
+[RID_RESXLS_COST_Number_of_Modules]
+en-US = "Number of Modules"
+
+[RID_RESXLS_COST_Number_of_Unique_Modules]
+en-US = "Number of Unique Code Modules"
+
+[RID_RESXLS_COST_Numbering_Reference]
+en-US = "Numbering Reference"
+
+[RID_RESXLS_COST_Numbering_Reference_Comment]
+en-US = "Issue: <PRODUCTNAME> can not import references that refer in a numbered list."
+
+[RID_RESXLS_COST_Object_In_Header_Footer]
+en-US = "Object In Header Footer"
+
+[RID_RESXLS_COST_Objects_And_Graphics]
+en-US = "Objects And Graphics"
+
+[RID_RESXLS_COST_Objects_Graphics_And_Frames]
+en-US = "Objects Graphics And Frames"
+
+[RID_RESXLS_COST_Objects_Graphics_And_Textboxes]
+en-US = "Objects Graphics And Textboxes"
+
+[RID_RESXLS_COST_Old_Workbook_Version]
+en-US = "Old Workbook Version"
+
+[RID_RESXLS_COST_OLE_Control]
+en-US = "OLE Control"
+
+[RID_RESXLS_COST_OLECONTR_COST]
+en-US = "Cost variations occur because of the use of macros with controls."
+
+[RID_RESXLS_COST_Page_Setup]
+en-US = "Page Setup"
+
+[RID_RESXLS_COST_Password_Protected]
+en-US = "Password Protected"
+
+[RID_RESXLS_COST_Password_Protection]
+en-US = "Password Protection"
+
+[RID_RESXLS_COST_Pivot]
+en-US = "Pivot Chart"
+
+[RID_RESXLS_COST_Planned_SO8]
+en-US = "Planned"
+
+[RID_RESXLS_COST_Portability]
+en-US = "Portability"
+
+[RID_RESXLS_COST_PowerPoint]
+en-US = "PowerPoint"
+
+[RID_RESXLS_COST_PowerPoint_Totals]
+en-US = "PowerPoint Totals"
+
+[RID_RESXLS_COST_Prepared_Issue_Count]
+en-US = "Prepared Issue Count"
+
+[RID_RESXLS_COST_Prepared_Savings__min]
+en-US = "Prepared Savings (min)"
+
+[RID_RESXLS_COST_Properties___Module__Class_or_UserForm]
+en-US = "Properties - Module, Class or UserForm"
+
+[RID_RESXLS_COST_Remove_password_to_open]
+en-US = "Remove password to open."
+
+[RID_RESXLS_COST_Remove_the_invalid_characters_from_the_worksheet_name]
+en-US = "Remove the invalid characters from the worksheet name."
+
+[RID_RESXLS_COST_Rerun_analysis_with_correct_password]
+en-US = "Rerun analysis with correct password."
+
+[RID_RESXLS_COST_Reset_link_to_Data_Base_having_setup_a_Datasource_in_SO7]
+en-US = "Reset link to database having setup a data source in <PRODUCTNAME>."
+
+[RID_RESXLS_COST_set_cost_factor_if_the_macro_has_to_be_ported_off_Windows]
+en-US = "Cost = 0. Set a cost factor if the macro has to be ported off Windows. "
+
+[RID_RESXLS_COST_Save_workbook_as_a_new_workbook_version]
+en-US = "Save workbook as a new workbook version."
+
+[RID_RESXLS_COST_Setup_Datasource_in_SO7_using_Tools__Datasource]
+en-US = "Setup data source in <PRODUCTNAME> using Tools/Data source"
+
+[RID_RESXLS_COST_Sheet_Chart]
+en-US = "Chart Issues Complex"
+
+[RID_RESXLS_COST_Status]
+en-US = "Status"
+
+[RID_RESXLS_COST_Table_Of_Authorities]
+en-US = "Table Of Authorities"
+
+[RID_RESXLS_COST_Table_Of_Authorities_Field]
+en-US = "Table Of Authorities Field"
+
+[RID_RESXLS_COST_Table_Of_Contents]
+en-US = "Table Of Contents"
+
+[RID_RESXLS_COST_Tables]
+en-US = "Tables"
+
+[RID_RESXLS_COST_TOC_ISSUE_WORKAROUND]
+en-US = "Tab Issues: use fancy format. Numbering incorrect: remove blank lines with heading style used by TOC. Numbering abuts Header: replace leading tabs in Header style used in TOC with spaces."
+
+[RID_RESXLS_COST_Total_Cost___MD]
+en-US = "Total Cost (MD) = "
+
+[RID_RESXLS_COST_User_Error]
+en-US = "User Error"
+
+[RID_RESXLS_COST_User_Forms_Control_Count]
+en-US = "User Forms Control Count"
+
+[RID_RESXLS_COST_User_Forms_Control_Type_Count]
+en-US = "User Forms Control Type Count"
+
+[RID_RESXLS_COST_User_Forms_Count]
+en-US = "User Forms Count"
+
+[RID_RESXLS_COST_VBA_Macros]
+en-US = "VBA Macros"
+
+[RID_RESXLS_COST_Word]
+en-US = "Word"
+
+[RID_RESXLS_COST_Word_Totals]
+en-US = "Word Totals"
+
+[RID_RESXLS_COST_Work_Around]
+en-US = "Work Around"
+
+[RID_RESXLS_COST_Workaround_Remove_protection_before_importing]
+en-US = "Remove protection before importing"
+
+[RID_RESXLS_COST_WorkbookProtection]
+en-US = "WorkbookProtection "
+
+[RID_RESXLS_DP_Accessed]
+en-US = "Accessed"
+
+[RID_RESXLS_DP_All_Analysed_Documents___Properties]
+en-US = "All Analysed Documents - properties"
+
+[RID_RESXLS_DP_Application]
+en-US = "Application"
+
+[RID_RESXLS_DP_Based_on_Template]
+en-US = "Based on Template"
+
+[RID_RESXLS_DP_Costs]
+en-US = "Costs"
+
+[RID_RESXLS_DP_Created]
+en-US = "Created"
+
+[RID_RESXLS_DP_Document_Details]
+en-US = "Document Details"
+
+[RID_RESXLS_DP_Document_Issue_Costs]
+en-US = "Document Migration Costs (min)"
+
+[RID_RESXLS_DP_Document_Migration_Issues]
+en-US = "Document Migration Issues"
+
+[RID_RESXLS_DP_Document_Name]
+en-US = "Document Name"
+
+[RID_RESXLS_DP_Document_Name_and_Path]
+en-US = "Document Name and Path"
+
+[RID_RESXLS_DP_Issues_Complex_count]
+en-US = "Issues Complex Count"
+
+[RID_RESXLS_DP_Last_Saved_By]
+en-US = "Last Saved By"
+
+[RID_RESXLS_DP_Lines_of_Macro_Code]
+en-US = "Lines of Macro Code"
+
+[RID_RESXLS_DP_Macro_Issues]
+en-US = "Macro Migration Issues"
+
+[RID_RESXLS_DP_Macro_Migration_Costs]
+en-US = "Macro Migration Costs (min)"
+
+[RID_RESXLS_DP_Macro_Migration_Issues]
+en-US = "Macro Migration Issues"
+
+[RID_RESXLS_DP_Migration_Issues]
+en-US = "Document Migration Issues"
+
+[RID_RESXLS_DP_Minor_Issues]
+en-US = "Issues Minor Count"
+
+[RID_RESXLS_DP_Modified]
+en-US = "Modified"
+
+[RID_RESXLS_DP_Pages_Sheets_Slides]
+en-US = "Pages, Sheets or Slides Count"
+
+[RID_RESXLS_DP_Prepareable_Issues_Costs]
+en-US = "Prepareable Issues Savings (min)"
+
+[RID_RESXLS_DP_Prepared_Issues]
+en-US = "Prepareable Document Issues"
+
+[RID_RESXLS_DP_Printed]
+en-US = "Printed"
+
+[RID_RESXLS_DP_Revision]
+en-US = "Revision"
+
+[RID_RESXLS_DP_User_Form_Count]
+en-US = "User Form Count"
+
+[RID_RESXLS_ID_All_Documents_with_Issues___Issue_Details]
+en-US = "All Documents with Issues - Issue Details"
+
+[RID_RESXLS_ID_Application]
+en-US = "Application"
+
+[RID_RESXLS_ID_Column__Left]
+en-US = "Column/ Left"
+
+[RID_RESXLS_ID_Document_Name]
+en-US = "Document Name"
+
+[RID_RESXLS_ID_Document_Name_and_Path]
+en-US = "Document Name and Path"
+
+[RID_RESXLS_ID_Issue_Category]
+en-US = "Issue Category"
+
+[RID_RESXLS_ID_Issue_Details]
+en-US = "Issue Details"
+
+[RID_RESXLS_ID_Issue_Type]
+en-US = "Issue Type"
+
+[RID_RESXLS_ID_Line__Row__Top]
+en-US = "Line/ Row/ Top"
+
+[RID_RESXLS_ID_Location]
+en-US = "Location"
+
+[RID_RESXLS_ID_Location_Type]
+en-US = "Location Type"
+
+[RID_RESXLS_OV_3_to_6_months]
+en-US = "3 - 6 months"
+
+[RID_RESXLS_OV_6_to_12_months]
+en-US = "6 - 12 months"
+
+[RID_RESXLS_OV_Complex]
+en-US = "Complex"
+
+[RID_RESXLS_OV_Cost_estimates_for_migration]
+en-US = "Cost estimates for migration of all analyzed documents"
+
+[RID_RESXLS_OV_Costs]
+en-US = "Costs (MD)"
+
+[RID_RESXLS_OV_Docs_with_DocumentMigrationIssues]
+en-US = "Documents with Document Migration Issues (excludes macro issues)"
+
+[RID_RESXLS_OV_Document_Migration_Costs]
+en-US = "Document Migration Costs<CR>( costs based on: issues listed in Issues Analyzed, excludes macros issues )"
+
+[RID_RESXLS_OV_Document_Modification_Dates]
+en-US = "Document Modification Dates"
+
+[RID_RESXLS_OV_Document_Type]
+en-US = "Type"
+
+[RID_RESXLS_OV_Documents_with_Macro_Migration_Issues]
+en-US = "Documents with Macro Migration Issues"
+
+[RID_RESXLS_OV_Excel]
+en-US = "Excel"
+
+[RID_RESXLS_OV_Excel_Costs]
+en-US = "Excel "
+
+[RID_RESXLS_OV_Excel_Spreadsheet]
+en-US = " Spreadsheets (.xls)"
+
+[RID_RESXLS_OV_Excel_Template]
+en-US = " Templates (.xlt)"
+
+[RID_RESXLS_OV_GREATER_THAN_1_year]
+en-US = "> 1 year"
+
+[RID_RESXLS_OV_Last_Modified]
+en-US = "Last Modified"
+
+[RID_RESXLS_OV_LESS_3_months]
+en-US = "< 3 months"
+
+[RID_RESXLS_OV_LESS_THAN3MONTHS]
+en-US = "Templates (.dot)"
+
+[RID_RESXLS_OV_Macro_Migration_Costs]
+en-US = "Manual Macro Migration Costs<CR>( costs based on: number of lines in unique code modules and number of user form controls )"
+
+[RID_RESXLS_OV_Medium]
+en-US = "Medium"
+
+[RID_RESXLS_OV_Minor]
+en-US = "Minor"
+
+[RID_RESXLS_OV_None]
+en-US = "None"
+
+[RID_RESXLS_OV_Number]
+en-US = "Number"
+
+[RID_RESXLS_OV_Number_of_Documents_Analyzed]
+en-US = "Number of Documents Analyzed"
+
+[RID_RESXLS_OV_NumberOfDocs]
+en-US = "Number of docs"
+
+[RID_RESXLS_OV_Potential_savings_macro_conversion]
+en-US = "Potential Savings with Automated Macro Migration of 20 to 60%"
+
+[RID_RESXLS_OV_Potential_savings_prepared_docs]
+en-US = "Potential Savings with Automated Preparation"
+
+[RID_RESXLS_OV_PowerPoint]
+en-US = "PowerPoint"
+
+[RID_RESXLS_OV_PowerPoint_Costs]
+en-US = "PowerPoint "
+
+[RID_RESXLS_OV_PowerPoint_Document]
+en-US = " Presentations (.ppt)"
+
+[RID_RESXLS_OV_PowerPoint_Template]
+en-US = " Templates (.pot)"
+
+[RID_RESXLS_OV_Simple]
+en-US = "Simple"
+
+[RID_RESXLS_OV_Total]
+en-US = "Total"
+
+[RID_RESXLS_OV_Totals]
+en-US = "Totals"
+
+[RID_RESXLS_OV_Word]
+en-US = "Word"
+
+[RID_RESXLS_OV_Word_Costs]
+en-US = "Word "
+
+[RID_RESXLS_OV_Word_Document]
+en-US = "Documents (.doc)"
+
+[RID_RESXLS_OV_Word_Template]
+en-US = "Templates (.dot)"
+
+[RID_RESXLS_PP_Action_Settings]
+en-US = "Action Settings"
+
+[RID_RESXLS_PP_Application]
+en-US = "Application"
+
+[RID_RESXLS_PP_Content___Document_Properties]
+en-US = "Content & Document Properties"
+
+[RID_RESXLS_PP_Document_Name_and_Path]
+en-US = "Document Name and Path"
+
+[RID_RESXLS_PP_Fields]
+en-US = "Fields"
+
+[RID_RESXLS_PP_Format]
+en-US = "Format"
+
+[RID_RESXLS_PP_Notes___Handouts]
+en-US = "Notes & Handouts"
+
+[RID_RESXLS_PP_Objects__Graphics___Textboxes]
+en-US = "Objects, Graphics & Textboxes"
+
+[RID_RESXLS_PP_Portability]
+en-US = "Portability"
+
+[RID_RESXLS_PP_PowerPoint_Documents_with_Issues___Issue_Summary]
+en-US = "PowerPoint Documents with Issues - Issue Summary"
+
+[RID_RESXLS_PP_PowerPoint_Presentation_Name]
+en-US = "PowerPoint Presentation Name"
+
+[RID_RESXLS_PP_VBA_Macros]
+en-US = "VBA Macros"
+
+[RID_RESXLS_RD_All_Documents_with_Macros___Reference_Details]
+en-US = "All Documents with Macros - Reference Details"
+
+[RID_RESXLS_RD_Application]
+en-US = "Application"
+
+[RID_RESXLS_RD_Description]
+en-US = "Description"
+
+[RID_RESXLS_RD_Document_Name]
+en-US = "Document Name"
+
+[RID_RESXLS_RD_Document_Name_and_Path]
+en-US = "Document Name and Path"
+
+[RID_RESXLS_RD_Location]
+en-US = "Location"
+
+[RID_RESXLS_RD_Reference]
+en-US = "Reference"
+
+[RID_RESXLS_RD_Reference_Details]
+en-US = "Reference Details"
+
+[RID_RESXLS_WI_Application]
+en-US = "Application"
+
+[RID_RESXLS_WI_Changes_and_Reviewing]
+en-US = "Changes and Reviewing"
+
+[RID_RESXLS_WI_Content___Document_Properties]
+en-US = "Content & Document Properties"
+
+[RID_RESXLS_WI_Controls]
+en-US = "Controls"
+
+[RID_RESXLS_WI_Document_Name_and_Path]
+en-US = "Document Name and Path"
+
+[RID_RESXLS_WI_Fields]
+en-US = "Fields"
+
+[RID_RESXLS_WI_Format]
+en-US = "Format"
+
+[RID_RESXLS_WI_Index_and_References]
+en-US = "Index and References"
+
+[RID_RESXLS_WI_Objects__Graphics____Frames]
+en-US = "Objects, Graphics & Frames"
+
+[RID_RESXLS_WI_Portability]
+en-US = "Portability"
+
+[RID_RESXLS_WI_Tables]
+en-US = "Tables"
+
+[RID_RESXLS_WI_VBA_Macros]
+en-US = "VBA Macros"
+
+[RID_RESXLS_WI_Word_Document_Name]
+en-US = "Word Document Name"
+
+[RID_RESXLS_WI_Word_Documents_with_Issues___Issue_Summary]
+en-US = "Word Documents with Issues - Issue Summary"
+
+[RID_RESXLS_XL_Application]
+en-US = "Application"
+
+[RID_RESXLS_XL_Changes___Reviewing]
+en-US = "Changes & Reviewing"
+
+[RID_RESXLS_XL_Charts___Tables]
+en-US = "Charts & Tables"
+
+[RID_RESXLS_XL_Excel_Documents_with_Issues___Issue_Summary]
+en-US = "Excel Documents with Issues - Issue Summary"
+
+[RID_RESXLS_XL_Excel_Spreadsheet_Name]
+en-US = "Excel Spreadsheet Name"
+
+[RID_RESXLS_XL_Filters]
+en-US = "Filters"
+
+[RID_RESXLS_XL_Format]
+en-US = "Format"
+
+[RID_RESXLS_XL_Functions]
+en-US = "Functions"
+
+[RID_RESXLS_XL_Objects___Graphics]
+en-US = "Objects & Graphics"
+
+[RID_STR_DVR_XL_EXCEL_DRIVER]
+en-US = "Excel Driver"
+
+[RID_STR_DVR_XL_ISSUES]
+en-US = "2. Issues"
+
+[RID_STR_DVR_XL_PURPOSE]
+en-US = "1. Purpose"
+
+[RID_STR_DVR_XL_READ_README]
+en-US = "If there are any problems running the Wizard please refer to the Readme.doc"
+
+[RID_STR_DVR_XL_THE_MACROS]
+en-US = "The macros in this document are used by the Analysis Wizard to analyze the collection of Excel documents you specify using the Wizard. It should not be modified in any way, the Wizard will open and close it as required by the tool."
+
+[RID_STR_DVR_XL_THIS_DOC]
+en-US = "This document contains VBA macros which collect and analyse Excel documents for known issues when importing into <PRODUCTNAME>"
+
+[RID_STR_DVR_XL_TITLE]
+en-US = "<PRODUCTNAME> Migration Analysis - Excel Driver"
+
+[RID_STR_DVR_PP_TXT2]
+en-US = "This document contains VBA macros which collect and analyse PowerPoint documents for known issues when importing into <PRODUCTNAME>"
+
+[RID_STR_DVR_PP_TXT3]
+en-US = "<PRODUCTNAME> Migration Analysis - PowerPoint Driver"
+
+[RID_STR_DVR_PP_TXT4]
+en-US = "PowerPoint Driver"
+
+[RID_STR_DVR_PP_TXT5]
+en-US = "Purpose"
+
+[RID_STR_DVR_PP_TXT6]
+en-US = "The macros in this document are used by the Analysis Wizard to analyze the collection of PowerPoint documents you specify using the Wizard. It should not be modified in any way, the Wizard will open and close it as required by the tool."
+
+[RID_STR_DVR_PP_TXT7]
+en-US = "Issues"
+
+[RID_STR_DVR_PP_TXT8]
+en-US = "If there are any problems running the Wizard please refer to the Readme.doc"
+
+[RID_STR_WDVR_SOANA]
+en-US = "<PRODUCTNAME> MIGRATION ANALYSIS - WORD DRIVER"
+
+[RID_STR_WDVR_INTRO]
+en-US = "This document contains VBA macros, which collect and analyse Word documents for known issues when importing into <PRODUCTNAME>"
+
+[RID_STR_WDVR_TITLE]
+en-US = "Word Driver"
+
+[RID_STR_WDVR_PURPO]
+en-US = "Purpose"
+
+[RID_STR_WDVR_PARA1]
+en-US = "The macros in this document are used by the Analysis Wizard to analyze the collection of Word documents you specify using the Wizard. It should not be modified in any way, the Wizard will open and close it as required by the tool."
+
+[RID_STR_WDVR_ISSUE]
+en-US = "Issues"
+
+[RID_STR_WDVR_PARA2]
+en-US = "If there are any problems running the Wizard please refer to the Readme.doc"
+
+[RID_STR_WORD_ATTRIBUTE_ALLOW_ONLY_COMMENTS]
+en-US = "Allow Only Comments"
+
+[RID_STR_WORD_ATTRIBUTE_ALLOW_ONLY_FORM_FIELDS]
+en-US = "Allow Only FormFields"
+
+[RID_STR_WORD_ATTRIBUTE_ALLOW_ONLY_REVISIONS]
+en-US = "Allow Only Revisions"
+
+[RID_STR_WORD_ATTRIBUTE_AUTHOR]
+en-US = "Author"
+
+[RID_STR_WORD_ATTRIBUTE_DATASOURCE]
+en-US = "Datasource"
+
+[RID_STR_WORD_ATTRIBUTE_FIELD_TEXT]
+en-US = "Field Text"
+
+[RID_STR_WORD_ATTRIBUTE_FORM_FIELD_AUTOSIZE]
+en-US = "Autosize"
+
+[RID_STR_WORD_ATTRIBUTE_FORM_FIELD_ENTRY_MACRO]
+en-US = "Entry macro"
+
+[RID_STR_WORD_ATTRIBUTE_FORM_FIELD_EXIT_MACRO]
+en-US = "Exit macro"
+
+[RID_STR_WORD_ATTRIBUTE_FORM_FIELD_FILLIN_ENABLED]
+en-US = "Fill-in enabled"
+
+[RID_STR_WORD_ATTRIBUTE_FORM_FIELD_GREYED]
+en-US = "FormFields Greyed"
+
+[RID_STR_WORD_ATTRIBUTE_FORM_FIELD_HELP_KEY_F1_AUTO_TEXT]
+en-US = "Help Key(F1) [Auto Text]"
+
+[RID_STR_WORD_ATTRIBUTE_FORM_FIELD_HELP_KEY_F1_OWN_TEXT]
+en-US = "Help Key(F1) [Own Text]"
+
+[RID_STR_WORD_ATTRIBUTE_FORM_FIELD_LOCKED]
+en-US = "Locked"
+
+[RID_STR_WORD_ATTRIBUTE_FORM_FIELD_MAX_LENGTH]
+en-US = "Maximum Length"
+
+[RID_STR_WORD_ATTRIBUTE_FORM_FIELD_STATUS_BAR_HELP_AUTO_TEXT]
+en-US = "Status Bar Help [Auto Text]"
+
+[RID_STR_WORD_ATTRIBUTE_FORM_FIELD_STATUS_BAR_HELP_OWN_TEXT]
+en-US = "Status Bar Help [Own Text]"
+
+[RID_STR_WORD_ATTRIBUTE_FORM_FIELD_TEXT_FORM_FIELD_TYPE]
+en-US = "Text Form Field Type"
+
+[RID_STR_WORD_ATTRIBUTE_FOOTER]
+en-US = "Footer"
+
+[RID_STR_WORD_ATTRIBUTE_HEADER]
+en-US = "Header"
+
+[RID_STR_WORD_ATTRIBUTE_FRAME]
+en-US = "Frame"
+
+[RID_STR_WORD_ATTRIBUTE_GRAPHIC]
+en-US = "Graphic"
+
+[RID_STR_WORD_ATTRIBUTE_OBJECT_HEIGHT_GT_H]
+en-US = "Height Greater Than Header Height"
+
+[RID_STR_WORD_ATTRIBUTE_OBJECT_HEIGHT_GT_F]
+en-US = "Height Greater Than Footer Height"
+
+[RID_STR_WORD_ATTRIBUTE_NUM_OF_GRAPHIC]
+en-US = "Number of Graphics"
+
+[RID_STR_WORD_ATTRIBUTE_OBJECT_LOCATED_BELOW_HEADER]
+en-US = "Located Below Header"
+
+[RID_STR_WORD_ATTRIBUTE_NUM_OF_FRAME]
+en-US = "Number of Frames"
+
+[RID_STR_WORD_ATTRIBUTE_HEADER_EVEN_PAGES]
+en-US = "Even Page(s)"
+
+[RID_STR_WORD_ATTRIBUTE_HEADER_FIRST_PAGE]
+en-US = "First Page"
+
+[RID_STR_WORD_ATTRIBUTE_HEADER_ODD_PAGES]
+en-US = "Odd Page(s)"
+
+[RID_STR_WORD_ATTRIBUTE_HEADER_PAGE_DEFAULT]
+en-US = "Page Default"
+
+[RID_STR_WORD_ATTRIBUTE_GRAPHICTYPE]
+en-US = "Graphic Type"
+
+[RID_STR_WORD_ATTRIBUTE_INLINESHAPE]
+en-US = "Inline Shape"
+
+[RID_STR_WORD_ATTRIBUTE_INNER_TABLE]
+en-US = "InnerTable"
+
+[RID_STR_WORD_ATTRIBUTE_LEADER]
+en-US = "Leader"
+
+[RID_STR_WORD_ATTRIBUTE_LINK]
+en-US = "Link"
+
+[RID_STR_WORD_ATTRIBUTE_LOCATION]
+en-US = "Location"
+
+[RID_STR_WORD_ATTRIBUTE_NUMBER_CUSTOM_PARAGRAPHS]
+en-US = "Number of custom paragraphs"
+
+[RID_STR_WORD_ATTRIBUTE_OUTER_TABLE]
+en-US = "Outer Table"
+
+[RID_STR_WORD_ATTRIBUTE_PASSWORD_TO_MODIFY]
+en-US = "Password to Modify"
+
+[RID_STR_WORD_ATTRIBUTE_PASSWORD_TO_OPEN]
+en-US = "Password to Open"
+
+[RID_STR_WORD_ATTRIBUTE_PROTECTION]
+en-US = "Protection"
+
+[RID_STR_WORD_ATTRIBUTE_SET]
+en-US = "Set"
+
+[RID_STR_WORD_ATTRIBUTE_START_COL]
+en-US = "Start Column"
+
+[RID_STR_WORD_ATTRIBUTE_START_ROW]
+en-US = "Start Row"
+
+[RID_STR_WORD_ATTRIBUTE_TEXT]
+en-US = "Text"
+
+[RID_STR_WORD_ATTRIBUTE_TOC_FORMAT_ISSUE]
+en-US = "Potential problem with TOC Format matching Modern style"
+
+[RID_STR_WORD_ATTRIBUTE_TOC_FORMAT_NOT_MIGRATE_CLEAN]
+en-US = "TOC Format will not migrate cleanly"
+
+[RID_STR_WORD_ATTRIBUTE_TOC_FORMAT_NOT_ROUNDTRIP_CLEAN]
+en-US = "TOC will not roundtrip cleanly due to following settings"
+
+[RID_STR_WORD_ATTRIBUTE_TOC_FORMAT_FROM_TEMPLATE_WITH_LEVEL]
+en-US = "Format [FromTemplate] Level"
+
+[RID_STR_WORD_ATTRIBUTE_TOC_FORMAT_FROM_TEMPLATE_TAB_DOTS]
+en-US = "Format [FromTemplate] TabLeader [Dots]"
+
+[RID_STR_WORD_ATTRIBUTE_TOC_FORMAT_FORMAL_WITH_LEVEL]
+en-US = "Format [Formal] Level"
+
+[RID_STR_WORD_ATTRIBUTE_TOC_FORMAT_CLASSIC_WITH_LEVEL]
+en-US = "Format [Classic] Level"
+
+[RID_STR_WORD_ATTRIBUTE_TOC_FORMAT_DISTINCTIVE_WITH_LEVEL]
+en-US = "Format [Distinctive] Level"
+
+[RID_STR_WORD_ENUMERATION_FORM_FIELD_CALCULATION]
+en-US = "Calculation"
+
+[RID_STR_WORD_ENUMERATION_FORM_FIELD_CHECK_BOX]
+en-US = "Check Box Form Field"
+
+[RID_STR_WORD_ENUMERATION_FORM_FIELD_CURRENT_DATE]
+en-US = "Current Date"
+
+[RID_STR_WORD_ENUMERATION_FORM_FIELD_CURRENT_TIME]
+en-US = "Current Time"
+
+[RID_STR_WORD_ENUMERATION_FORM_FIELD_DATE]
+en-US = "Date"
+
+[RID_STR_WORD_ENUMERATION_FORM_FIELD_DEFAULT_DATE]
+en-US = "Default date"
+
+[RID_STR_WORD_ENUMERATION_FORM_FIELD_DEFAULT_EXPRESSION]
+en-US = "Expression"
+
+[RID_STR_WORD_ENUMERATION_FORM_FIELD_DEFAULT_NUMBER]
+en-US = "Default number"
+
+[RID_STR_WORD_ENUMERATION_FORM_FIELD_DEFAULT_TEXT]
+en-US = "Default text"
+
+[RID_STR_WORD_ENUMERATION_FORM_FIELD_DEFAULT_TIME]
+en-US = "Default time"
+
+[RID_STR_WORD_ENUMERATION_FORM_FIELD_DROP_DOWN]
+en-US = "Drop-Down Form Field"
+
+[RID_STR_WORD_ENUMERATION_FORM_FIELD_FORMAT_DATE]
+en-US = "Date format"
+
+[RID_STR_WORD_ENUMERATION_FORM_FIELD_FORMAT_NUMBER]
+en-US = "Number format"
+
+[RID_STR_WORD_ENUMERATION_FORM_FIELD_FORMAT_TEXT]
+en-US = "Text format"
+
+[RID_STR_WORD_ENUMERATION_FORM_FIELD_FORMAT_TIME]
+en-US = "Time format"
+
+[RID_STR_WORD_ENUMERATION_FORM_FIELD_NUMBER]
+en-US = "Number"
+
+[RID_STR_WORD_ENUMERATION_FORM_FIELD_REGULAR]
+en-US = "Regular"
+
+[RID_STR_WORD_ENUMERATION_FORM_FIELD_TEXT]
+en-US = "Text Form Field"
+
+[RID_STR_WORD_ENUMERATION_MAILMERGE_ASK]
+en-US = "Ask"
+
+[RID_STR_WORD_ENUMERATION_MAILMERGE_AUTO_NUMBER]
+en-US = "Auto Number"
+
+[RID_STR_WORD_ENUMERATION_MAILMERGE_AUTO_NUMBER_LEGAL]
+en-US = "Auto Number Legal"
+
+[RID_STR_WORD_ENUMERATION_MAILMERGE_AUTO_NUMBER_OUTLINE]
+en-US = "Auto Number Outline"
+
+[RID_STR_WORD_ENUMERATION_MAILMERGE_FIELD_NAME_NOT_KNOWN]
+en-US = "Field name not known"
+
+[RID_STR_WORD_ENUMERATION_MAILMERGE_FILL_IN]
+en-US = "Fill In"
+
+[RID_STR_WORD_ENUMERATION_MAILMERGE_MERGE_RECORDS]
+en-US = "Merge Records"
+
+[RID_STR_WORD_ENUMERATION_MAILMERGE_MERGE_FIELDS]
+en-US = "Merge Fields"
+
+[RID_STR_WORD_ENUMERATION_MAILMERGE_NEXT]
+en-US = "Next"
+
+[RID_STR_WORD_ENUMERATION_MAILMERGE_REVISION_NUMBER]
+en-US = "Revision Number"
+
+[RID_STR_WORD_ENUMERATION_MAILMERGE_SEQUENCE]
+en-US = "Sequence"
+
+[RID_STR_WORD_ENUMERATION_INDEX_TABLES_CLASSIC]
+en-US = "Classic"
+
+[RID_STR_WORD_ENUMERATION_INDEX_TABLES_DISTINCTIVE]
+en-US = "Distinctive"
+
+[RID_STR_WORD_ENUMERATION_INDEX_TABLES_FANCY]
+en-US = "Fancy"
+
+[RID_STR_WORD_ENUMERATION_INDEX_TABLES_FORMAL]
+en-US = "Formal"
+
+[RID_STR_WORD_ENUMERATION_INDEX_TABLES_MODERN]
+en-US = "Modern"
+
+[RID_STR_WORD_ENUMERATION_INDEX_TABLES_SIMPLE]
+en-US = "Simple"
+
+[RID_STR_WORD_ENUMERATION_INDEX_TABLES_FROM_TEMPLATE]
+en-US = "From Template"
+
+[RID_STR_WORD_ENUMERATION_INDEX_LEADER_DASHES]
+en-US = "Dashes"
+
+[RID_STR_WORD_ENUMERATION_INDEX_LEADER_DOTS]
+en-US = "Dots"
+
+[RID_STR_WORD_ENUMERATION_INDEX_LEADER_HEAVY]
+en-US = "Heavy"
+
+[RID_STR_WORD_ENUMERATION_INDEX_LEADER_LINES]
+en-US = "Lines"
+
+[RID_STR_WORD_ENUMERATION_INDEX_LEADER_MIDDLEDOT]
+en-US = "MiddleDot"
+
+[RID_STR_WORD_ENUMERATION_INDEX_LEADER_SPACES]
+en-US = "Spaces"
+
+[RID_STR_WORD_ENUMERATION_UNKNOWN]
+en-US = "Unknown"
+
+[RID_STR_WORD_FALSE]
+en-US = "False"
+
+[RID_STR_WORD_TRUE]
+en-US = "True"
+
+[RID_STR_WORD_ISSUE_FIELDS]
+en-US = "Fields"
+
+[RID_STR_WORD_ISSUE_INDEX_AND_REFERENCES]
+en-US = "Indexes and References"
+
+[RID_STR_WORD_ISSUE_OBJECTS_GRAPHICS_AND_FRAMES]
+en-US = "Objects, Graphics and Frames"
+
+[RID_STR_WORD_ISSUE_TABLES]
+en-US = "Tables"
+
+[RID_STR_WORD_NOTE_FORM_FIELD_ATTRIBUTES_LOST]
+en-US = "following attribute values lost"
+
+[RID_STR_WORD_NOTE_FORM_FIELD_TYPE_LOST]
+en-US = "Type lost, converted to plain text"
+
+[RID_STR_WORD_NOTE_NESTED_TABLE_WILL_BE_LOST]
+en-US = "The inner table will be lost on roundtrip."
+
+[RID_STR_WORD_NOTE_TOA_FIELD_LOST_ON_ROUNDTRIP]
+en-US = "Field will be lost on roundtrip"
+
+[RID_STR_WORD_NOTE_TOA_MIGRATE_AS_PLAIN_TEXT]
+en-US = "Table will migrate as plain text"
+
+[RID_STR_WORD_SUBISSUE_APPEARANCE]
+en-US = "Appearance"
+
+[RID_STR_WORD_SUBISSUE_COMMENT]
+en-US = "Comment"
+
+[RID_STR_WORD_SUBISSUE_CUSTOM_BULLET_LIST]
+en-US = "Custom bullet list"
+
+[RID_STR_WORD_SUBISSUE_FORM_FIELD]
+en-US = "Form Field"
+
+[RID_STR_WORD_SUBISSUE_MAILMERGE_DATASOURCE]
+en-US = "Mail Merge Datasource"
+
+[RID_STR_WORD_SUBISSUE_MAILMERGE_FIELD]
+en-US = "Mail Merge Field"
+
+[RID_STR_WORD_SUBISSUE_NESTED_TABLES]
+en-US = "Nested Tables"
+
+[RID_STR_WORD_SUBISSUE_OBJECT_IN_HEADER_FOOTER]
+en-US = "Object in Header Footer"
+
+[RID_STR_WORD_SUBISSUE_TABLE_OF_AUTHORITIES]
+en-US = "Table of Authorities"
+
+[RID_STR_WORD_SUBISSUE_TABLE_OF_AUTHORITIES_FIELD]
+en-US = "Table of Authorities Field"
+
+[RID_RESXLT_COST_CHART_Radar_AWF]
+en-US = "Radar chart, Radar with symbol"
+
+[RID_RESXLT_COST_CHART_Radar_Comment]
+en-US = "Although <PRODUCTNAME> Net charts appear similar to Excel Radar charts, but they are not equivalent. Radar charts are drawn clockwise whereas Net charts are drawn counter-clockwise."
+
+[RID_RESXLT_COST_CHART_Scattered_AWF]
+en-US = "Scattered chart"
+
+[RID_RESXLT_COST_CHART_Scattered_Comment]
+en-US = "The XY-Chart of <PRODUCTNAME> has the same appearance as the scattered chart in Excel."
+
+[RID_RESXLT_COST_CHART_Bubble_AWF]
+en-US = "Bubble chart"
+
+[RID_RESXLT_COST_CHART_Bubble_Comment]
+en-US = "XY-Chart has similar functionality to a Bubble chart in Excel but a completely different look."
+
+[RID_RESXLT_COST_CHART_BarOfPie_AWF]
+en-US = "Bar of Pie and Pie of Pie charts"
+
+[RID_RESXLT_COST_CHART_BarOfPie_Comment]
+en-US = "<PRODUCTNAME> imports these types of charts as Column charts, which look completely different."
+
+[RID_RESXLT_COST_CHART_FilledRadar_AWF]
+en-US = "Filled Radar chart"
+
+[RID_RESXLT_COST_CHART_FilledRadar_Comment]
+en-US = "This chart type does not have a <PRODUCTNAME> equivalent. Instead, the import filter in <PRODUCTNAME> converts a Filled Radar chart to a Column chart."
+
+[RID_RESXLT_COST_CHART_Surface_AWF]
+en-US = "Surface chart"
+
+[RID_RESXLT_COST_CHART_Surface_Comment]
+en-US = "This chart type does not have a <PRODUCTNAME> equivalent. The imported chart will look completely different than the original chart."
+
+[RID_RESXLT_COST_PIVOT_MultConsRanges_AWF]
+en-US = "Multiple Consolidation Ranges"
+
+[RID_RESXLT_COST_PIVOT_MultConsRanges_Comment]
+en-US = "A Pivot table from Excel can use data from multiple consolidation ranges, Calc does not support this."
+
+[RID_RESXLT_COST_PIVOT_PivotChart_Comment]
+en-US = "A pivot chart is created dynamically in Excel using a pivot table as it's datasource. <PRODUCTNAME> does not support generating charts from dynamically created tables."
+
+[RID_RESXLT_COST_PIVOT_ManSort_AWF]
+en-US = "Manual Sorting"
+
+[RID_RESXLT_COST_PIVOT_ManSort_Comment]
+en-US = "Pivot table users could sort the results manually. Excel preserves the sorting. Calc does not."
+
+[RID_RESXLT_COST_PIVOT_CalcVal_AWF]
+en-US = "Calculated Values"
+
+[RID_RESXLT_COST_PIVOT_CalcVal_Comment]
+en-US = "Excel users can create a formula that writes the results in a new column within the pivot table. Users can use the same type of formula to replace the content of an existing column. Calc does not support this."
+
+[RID_RESXLT_COST_PIVOT_ExternData_AWF]
+en-US = "External Data"
+
+[RID_RESXLT_COST_PIVOT_ExternData_Comment]
+en-US = "A Pivot table from Excel can use data from external sources. Calc does not support this."
+
+[RID_RESXLS_COST_IAR_Numbering_IssueType]
+en-US = "Numbering Order"
+
+[RID_RESXLS_COST_IAR_Numbering_Comment]
+en-US = "<PRODUCTNAME> first calculates numbering located in frames and then the numbering within the text. Word does not separate this."
+
+[RID_RESXLS_COST_IAR_Numbering_WorkAround]
+en-US = "Move the numberings from within the frames into the text body area."
+
+[RID_RESXLS_COST_WorkbookPartProtection_AWF]
+en-US = "Protection for Parts of Workbooks"
+
+[RID_RESXLS_COST_WorkbookPartProtection_Comment]
+en-US = "In Excel users can protect certain parts of workbooks. Workbooks, sheets, charts and ranges can all be individually protected. These do not all migrate to <PRODUCTNAME>."
+
+[RID_RESXLS_COST_WorkbookPartProtection_WorkAround]
+en-US = "Do not protect Excel workbooks"
+
+[RID_RESXLS_COST_FORMAT_TabStop_IssueType]
+en-US = "Tabstop"
+
+[RID_RESXLS_COST_FORMAT_TabStop_Comment]
+en-US = "The minimum tabstop distance in word is shorter than <PRODUCTNAME>. That means that if, in Word, the user tabs a distance shorter than <PRODUCTNAME>'s minimum, that after migration the text spacing will be pushed one tab further."
+
+[RID_RESXLS_COST_GraphicAnchorEndOfPage_IssueType]
+en-US = "Graphic Object Anchor - End of Page"
+
+[RID_RESXLS_COST_GraphicAnchorEndOfPage_Comment]
+en-US = "If a frame or graphic object (not including AutoShapes) is too close to the end of a page it will be pushed to the next page in <PRODUCTNAME>."
+
+[RID_RESXLS_COST_GraphicAnchorLostGraphic_IssueType]
+en-US = "Graphic Object Anchor - Lost Graphic Object"
+
+[RID_RESXLS_COST_GraphicAnchorLostGraphic_Comment]
+en-US = "If a graphic object is anchored off a paragraph (Format Autoshape | Layout | Advanced | Vertical Position = Paragraph) which contains just a blank carriage return, then this can lead to the graphic object being lost in <PRODUCTNAME>."
+
+[RID_RESXLS_COST_TABLE_Leading_IssueType]
+en-US = "Leading"
+
+[RID_RESXLS_COST_TABLE_Leading_Comment]
+en-US = "Leading can cause extra lines in tables. In a table, if the column width is very close to the text, it can lead to a single character being pushed to new line in <PRODUCTNAME>. This is caused by extra leading in <PRODUCTNAME>."
+
+[RID_RESXLS_COST_TABLE_Misplaced_IssueType]
+en-US = "Misplaced"
+
+[RID_RESXLS_COST_TABLE_Misplaced_Comment]
+en-US = "Text wrapping can cause misplaced tables."
+
+[RID_RESXLS_COST_TOC_HeadlinesWithoutNum_IssueType]
+en-US = "Headings Without Numbering"
+
+[RID_RESXLS_COST_TOC_HeadlinesWithoutNum_Comment]
+en-US = "Many users do not use automatic heading or section numbering. They type the numbers in front of the heading manually instead. Word displays the first TAB of the heading in the TOC. <PRODUCTNAME> does not. The TOC will look different."
+
+[RID_RESXLS_COST_TOC_HeadlinesWithoutNum_WorkAround]
+en-US = "Replace the manual numbering with automatic numbering or add spaces between the manual numbers and the text."
+
+[RID_RESXLS_COST_TABLE_AlignmentOfObjects_IssueType]
+en-US = "Horizontal Alignment of Objects"
+
+[RID_RESXLS_COST_TABLE_AlignmentOfObjects_Comment]
+en-US = "Graphics, WordArt or similar objects located in text tables get displayed in the wrong position when the absolute position of the horizontal alignment is defined instead of a relative position."
+
+[RID_RESXLS_COST_TABLE_AlignmentOfObjects_WorkAround]
+en-US = "Adjust the horizontal alignment manually."
+
+[RID_STR_WORD_ATTRIBUTE_COUNT]
+en-US = "Count"
+
+[RID_STR_EXCEL_NOTE_CELL_FUNCTIONS_DATEDIF]
+en-US = "<PRODUCTNAME> Calc does not have an equivalent 'DATEDIF' function."
+
+[RID_STR_EXCEL_NOTE_CELL_FUNCTIONS_PHONETIC]
+en-US = "<PRODUCTNAME> does not have an equivalent 'PHONETIC' function."
+
+[RID_STR_PP_SUBISSUE_BACKGROUND_NOTE]
+en-US = "Fill style background colors applied to shapes in PowerPoint might be lost after a round trip conversion in <PRODUCTNAME>."
+
+[RID_STR_PP_SUBISSUE_NUMBERING_NOTE]
+en-US = "Only the first paragraph in a numbered sequence can start with "1" in <PRODUCTNAME>. The numbering can only start with "2" or higher in subsequent paragraphs."
+
+[RID_STR_PP_SUBISSUE_HYPERLINK_NOTE]
+en-US = "Unlike PowerPoint, <PRODUCTNAME> does not support multiple text formats in hyperlink text. Instead, <PRODUCTNAME> creates a separate hyperlink for each formatting style in an imported hyperlink."
+
+[RID_STR_PP_SUBISSUE_HYPERLINK_SPLIT_NOTE]
+en-US = "PowerPoint splits the text representation of a hyperlink into several lines when the text box is not wide enough. <PRODUCTNAME> does not split hyperlinks so the hyperlink text might extend out of the text box."
+
+[RID_STR_PP_SUBISSUE_TEMPLATE_NOTE]
+en-US = "<PRODUCTNAME> does not support the PowerPoint 'Title Slide' layout. When you import this layout, most of the subtitle object attributes are converted to hard attributes. PowerPoint 97 users require the multiple master page patch from Microsoft to view 'Title Slide' layouts that are contained in round trip documents."
+
+[RID_STR_PP_SUBISSUE_TABSTOP_NOTE]
+en-US = "Unlike PowerPoint, <PRODUCTNAME> only supports one default tab stop in a document and not one for each text object. If a PowerPoint document uses more than one default tab stop for text objects, <PRODUCTNAME> assigns hard tab stops to these text objects to ensure an identical layout when you import the document. The default tab stops are not reinserted when you save the document in PowerPoint format."
+
+[RID_STR_PP_SUBISSUE_FONTS]
+en-US = "Embedded Fonts"
+
+[RID_STR_PP_SUBISSUE_FONTS_NOTE]
+en-US = "<PRODUCTNAME> doesn't support embedded fonts."
+
+[RID_STR_COMMON_SUBISSUE_TRANSPARENCY_NOTE]
+en-US = "Microsoft Office supports a color attribute that allows you to make a bitmap color transparent without modifying the original bitmap. When you import a document with such a bitmap, <PRODUCTNAME> changes the bitmap to match the transparent color. The transparent color attribute is lost."
+
+[RID_STR_COMMON_SUBISSUE_LINE_NOTE]
+en-US = "<PRODUCTNAME> does not support all of the line styles that you can apply to MS Office AutoShapes. As a result, <PRODUCTNAME> replaces double and triple line styles with a single line."
+
+[RID_STR_COMMON_SUBISSUE_GRADIENT_PRESET_NOTE]
+en-US = "<PRODUCTNAME> does not support preset gradient styles."
+
+[RID_STR_COMMON_SUBISSUE_GRADIENT_CORNER_NOTE]
+en-US = "<PRODUCTNAME> does not support the 'from center' gradient style."
+
+[RID_STR_COMMON_SUBISSUE_GRADIENT_CENTER_NOTE]
+en-US = "<PRODUCTNAME> does not support the 'from corner' gradient style."
+
+[RID_RESXLS_COST_DB_Query]
+en-US = "Database Query"
+
+[RID_RESXLS_COST_DB_Query_Comment]
+en-US = "Issue: <PRODUCTNAME> can not import the database query. "
+
+[RID_RESXLS_COST_LineStyle]
+en-US = "Line Style"
+
+[RID_RESXLS_COST_LineStyle_Comment]
+en-US = "Issue: Line style is not supported."
+
+[RID_RESXLS_COST_Numbering]
+en-US = "Numbering"
+
+[RID_RESXLS_COST_Numbering_Comment]
+en-US = "Issue: Text numbering starts with wrong number."
+
+[RID_RESXLS_COST_Template]
+en-US = "Layout 'Title Slide'"
+
+[RID_RESXLS_COST_Template_Comment]
+en-US = "Issue: 'Title Slide' layout is not supported."
+
+[RID_RESXLS_COST_DATEDIF_Note]
+en-US = "Use a date or time function that <PRODUCTNAME> Calc supports."
+
+[RID_RESXLS_COST_Tabstop]
+en-US = "Default Tabulator"
+
+[RID_RESXLS_COST_Tabstop_Comment]
+en-US = "Issue: Different default tabulators are not supported for text objects."
+
+[RID_RESXLS_COST_Transparent]
+en-US = "Transparent Color"
+
+[RID_RESXLS_COST_Transparent_Comment]
+en-US = "Issue: <PRODUCTNAME> does not support the transparent color attribute in bitmaps."
+
+[RID_RESXLS_COST_GradientStyle]
+en-US = "Gradient Style"
+
+[RID_RESXLS_COST_GradientStyle_Comment]
+en-US = "Issue: Unsupported gradient styles used."
+
+[RID_RESXLS_COST_GradientStyle_Note]
+en-US = "Replacing gradient styles by styles that are supported."
+
+[RID_RESXLS_COST_Hyperlink]
+en-US = "Textrange Hyperlinks"
+
+[RID_RESXLS_COST_Hyperlink_Comment]
+en-US = "Issue: Multiple text formatting is not supported in Hyperlinks."
+
+[RID_RESXLS_COST_HyperlinkSplit]
+en-US = "Split Hyperlinks"
+
+[RID_RESXLS_COST_HyperlinkSplit_Comment]
+en-US = "Issue: Hyperlink will not be split onto several lines."
+
+[RID_RESXLS_COST_Background]
+en-US = "Fill Type Background"
+
+[RID_RESXLS_COST_Background_Comment]
+en-US = "Issue: Fillstyle background is not supported."
+
diff --git a/migrationanalysis/src/driver_docs/sources/AnalysisDriver.bas b/migrationanalysis/src/driver_docs/sources/AnalysisDriver.bas
index 33da66dbe7d4..701fa285a29d 100644
--- a/migrationanalysis/src/driver_docs/sources/AnalysisDriver.bas
+++ b/migrationanalysis/src/driver_docs/sources/AnalysisDriver.bas
@@ -1,3639 +1,3639 @@
-Attribute VB_Name = "AnalysisDriver"
-'*************************************************************************
-'
-' Licensed to the Apache Software Foundation (ASF) under one
-' or more contributor license agreements. See the NOTICE file
-' distributed with this work for additional information
-' regarding copyright ownership. The ASF licenses this file
-' to you under the Apache License, Version 2.0 (the
-' "License"); you may not use this file except in compliance
-' with the License. You may obtain a copy of the License at
-'
-' http://www.apache.org/licenses/LICENSE-2.0
-'
-' Unless required by applicable law or agreed to in writing,
-' software distributed under the License is distributed on an
-' "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-' KIND, either express or implied. See the License for the
-' specific language governing permissions and limitations
-' under the License.
-'
-'*************************************************************************
-Option Explicit
-
-' Declare Public variables.
-Public Type ShortItemId
- cb As Long
- abID As Byte
-End Type
-
-Public Type ITEMIDLIST
- mkid As ShortItemId
-End Type
-
-Public Declare Function FindWindow Lib "user32" Alias _
- "FindWindowA" (ByVal lpClassName As String, _
- ByVal lpWindowName As Long) As Long
-
-Private Declare Function GetTickCount Lib "kernel32" () As Long
-
-'This function saves the passed value to the file,
-'under the section and key names specified.
-'If the ini file, lpFileName, does not exist, it is created.
-'If the section, lpSectionName, does not exist, it is created.
-'If the key name, lpKeyName, does not exist, it is created.
-'If the key name exists, it's value, lpString, is replaced.
-Private Declare Function WritePrivateProfileString Lib "kernel32" _
- Alias "WritePrivateProfileStringA" _
- (ByVal lpSectionName As String, _
- ByVal lpKeyName As Any, _
- ByVal lpString As Any, _
- ByVal lpFileName As String) As Long
-
-Private Declare Function GetPrivateProfileString Lib "kernel32" _
- Alias "GetPrivateProfileStringA" _
- (ByVal lpSectionName As String, _
- ByVal lpKeyName As Any, _
- ByVal lpDefault As String, _
- ByVal lpReturnedString As String, _
- ByVal nSize As Long, _
- ByVal lpFileName As String) As Long
-
-Private Declare Function UrlEscape Lib "shlwapi" _
- Alias "UrlEscapeA" _
- (ByVal pszURL As String, _
- ByVal pszEscaped As String, _
- pcchEscaped As Long, _
- ByVal dwFlags As Long) As Long
-
-Public Declare Function SHGetPathFromIDList Lib "shell32.dll" _
- (ByVal pidl As Long, ByVal pszPath As String) As Long
-
-Public Declare Function SHGetSpecialFolderLocation Lib _
- "shell32.dll" (ByVal hwndOwner As Long, ByVal nFolder _
- As Long, pidl As ITEMIDLIST) As Long
-
-Public Const LOCALE_ILANGUAGE As Long = &H1 'language id
-Public Const LOCALE_SLANGUAGE As Long = &H2 'localized name of lang
-Public Const LOCALE_SENGLANGUAGE As Long = &H1001 'English name of lang
-Public Const LOCALE_SABBREVLANGNAME As Long = &H3 'abbreviated lang name
-Public Const LOCALE_SNATIVELANGNAME As Long = &H4 'native name of lang
-Public Const LOCALE_ICOUNTRY As Long = &H5 'country code
-Public Const LOCALE_SCOUNTRY As Long = &H6 'localized name of country
-Public Const LOCALE_SENGCOUNTRY As Long = &H1002 'English name of country
-Public Const LOCALE_SABBREVCTRYNAME As Long = &H7 'abbreviated country name
-Public Const LOCALE_SNATIVECTRYNAME As Long = &H8 'native name of country
-Public Const LOCALE_SINTLSYMBOL As Long = &H15 'intl monetary symbol
-Public Const LOCALE_IDEFAULTLANGUAGE As Long = &H9 'def language id
-Public Const LOCALE_IDEFAULTCOUNTRY As Long = &HA 'def country code
-Public Const LOCALE_IDEFAULTCODEPAGE As Long = &HB 'def oem code page
-Public Const LOCALE_IDEFAULTANSICODEPAGE As Long = &H1004 'def ansi code page
-Public Const LOCALE_IDEFAULTMACCODEPAGE As Long = &H1011 'def mac code page
-
-Public Const LOCALE_IMEASURE As Long = &HD '0 = metric, 1 = US
-Public Const LOCALE_SSHORTDATE As Long = &H1F 'short date format string
-
-'#if(WINVER >= &H0400)
-Public Const LOCALE_SISO639LANGNAME As Long = &H59 'ISO abbreviated language name
-Public Const LOCALE_SISO3166CTRYNAME As Long = &H5A 'ISO abbreviated country name
-'#endif /* WINVER >= as long = &H0400 */
-
-'#if(WINVER >= &H0500)
-Public Const LOCALE_SNATIVECURRNAME As Long = &H1008 'native name of currency
-Public Const LOCALE_IDEFAULTEBCDICCODEPAGE As Long = &H1012 'default ebcdic code page
-Public Const LOCALE_SSORTNAME As Long = &H1013 'sort name
-'#endif /* WINVER >= &H0500 */
-
-Public Declare Function GetSystemDefaultLangID Lib "kernel32" () As Long
-Public Declare Function GetUserDefaultLangID Lib "kernel32" () As Long
-
-Public Declare Function GetLocaleInfo Lib "kernel32" _
- Alias "GetLocaleInfoA" _
- (ByVal Locale As Long, _
- ByVal LCType As Long, _
- ByVal lpLCData As String, _
- ByVal cchData As Long) As Long
-
-
-Public Const CWIZARD = "analysis"
-
-Const CROWOFFSET = 2
-Const CDOCPROP_PAW_ROWOFFSET = 3
-Private mDocPropRowOffset As Long
-
-Const CNUMBERDOC_ALL = "All"
-Const CTOTAL_DOCS_ANALYZED = "TotalDocsAnalysed"
-Const CNUMDAYS_IN_MONTH = 30
-Const CMAX_LIMIT = 10000
-
-Const CISSUE_DETDOCNAME = 1
-Const CISSUE_DETDOCAPPLICATION = CISSUE_DETDOCNAME + 1
-Const CISSUE_DETTYPE = CISSUE_DETDOCAPPLICATION + 1
-Const CISSUE_DETSUBTYPE = CISSUE_DETTYPE + 1
-Const CISSUE_DETLOCATION = CISSUE_DETSUBTYPE + 1
-Const CISSUE_DETSUBLOCATION = CISSUE_DETLOCATION + 1
-Const CISSUE_DETLINE = CISSUE_DETSUBLOCATION + 1
-Const CISSUE_DETCOLUMN = CISSUE_DETLINE + 1
-Const CISSUE_DETATTRIBUTES = CISSUE_DETCOLUMN + 1
-Const CISSUE_DETNAMEANDPATH = CISSUE_DETATTRIBUTES + 1
-
-Const CREF_DETDOCNAME = 1
-Const CREF_DETDOCAPPLICATION = CREF_DETDOCNAME + 1
-Const CREF_DETREFERENCE = CREF_DETDOCAPPLICATION + 1
-Const CREF_DETDESCRIPTION = CREF_DETREFERENCE + 1
-Const CREF_DETLOCATION = CREF_DETDESCRIPTION + 1
-Const CREF_DETATTRIBUTES = CREF_DETLOCATION + 1
-Const CREF_DETNAMEANDPATH = CREF_DETATTRIBUTES + 1
-
-Const CINPUT_DIR = "indir"
-Const COUTPUT_DIR = "outdir"
-Const CRESULTS_FILE = "resultsfile"
-Const CLOG_FILE = "logfile"
-Const CRESULTS_TEMPLATE = "resultstemplate"
-Const CRESULTS_EXIST = "resultsexist"
-Const COVERWRITE_FILE = "overwritefile"
-Const CNEW_RESULTS_FILE = "newresultsfile"
-Const CINCLUDE_SUBDIRS = "includesubdirs"
-Const CDEBUG_LEVEL = "debuglevel"
-Const COUTPUT_TYPE = "outputtype"
-Const COUTPUT_TYPE_XLS = "xls"
-Const COUTPUT_TYPE_XML = "xml"
-Const COUTPUT_TYPE_BOTH = "both"
-Const COVERVIEW_TITLE_LABEL = "OV_Document_Analysis_Overview_lbl"
-Const CDEFAULT_PASSWORD = "defaultpassword"
-Const CVERSION = "version"
-Const CTITLE = "title"
-Const CDOPREPARE = "prepare"
-Const CISSUES_LIMIT = "issuesmonthlimit"
-Const CSINGLE_FILE = "singlefile"
-Const CFILE_LIST = "filelist"
-Const CSTAT_FILE = "statfilename"
-Const C_ABORT_ANALYSIS = "abortanalysis"
-Const C_DOCS_LESS_3_MONTH = "DocumentsYoungerThan3Month"
-Const C_DOCS_LESS_6_MONTH = "DocumentsYoungerThan6Month"
-Const C_DOCS_LESS_12_MONTH = "DocumentsYoungerThan12Month"
-Const C_DOCS_MORE_12_MONTH = "DocumentsOlderThan12Month"
-
-Private Const C_ANALYSIS As String = "Analysis"
-Private Const C_LAST_CHECKPOINT As String = "LastCheckpoint"
-Private Const C_NEXT_FILE As String = "NextFile"
-Private Const C_MAX_CHECK_INI As String = "FilesBeforeSave"
-Private Const C_MAX_WAIT_BEFORE_WRITE_INI As String = "SecondsBeforeSave"
-Private Const C_MAX_RANGE_PROCESS_TIME_INI As String = "ExcelMaxRangeProcessTime"
-Private Const C_ERROR_HANDLING_DOC As String = "_ERROR_HANDLING_DOC_"
-Private Const C_MAX_CHECK As Long = 100
-Private Const C_MAX_WAIT_BEFORE_WRITE As Long = 300 ' sec
-Private Const C_MAX_RANGE_PROCESS_TIME As Integer = 30 'sec
-
-Private Const C_STAT_STARTING As Integer = 1
-Private Const C_STAT_DONE As Integer = 2
-Private Const C_STAT_FINISHED As Integer = 3
-
-Private Type DocumentCount
- numDocsAnalyzed As Long
- numDocsAnalyzedWithIssues As Long
- numMinorIssues As Long
- numComplexIssues As Long
- numMacroIssues As Long
- numPreparableIssues As Long
- totalMacroCosts As Long
- totalDocIssuesCosts As Long
- totalPreparableIssuesCosts As Long
-End Type
-
-Private Type DocModificationDates
- lessThanThreemonths As Long
- threeToSixmonths As Long
- sixToTwelvemonths As Long
- greaterThanOneYear As Long
-End Type
-
-Private Type DocMacroClassifications
- None As Long
- Simple As Long
- Medium As Long
- complex As Long
-End Type
-
-Private Type DocIssueClassifications
- None As Long
- Minor As Long
- complex As Long
-End Type
-
-Const CCOST_COL_OFFSET = -1
-
-Private mLogFilePath As String
-Private mDocIndex As String
-Private mDebugLevel As Long
-Private mIniFilePath As String
-Private mUserFormTypesDict As Scripting.Dictionary
-Private mIssuesDict As Scripting.Dictionary
-Private mMacroDict As Scripting.Dictionary
-Private mPreparedIssuesDict As Scripting.Dictionary
-Private mIssuesClassificationDict As Scripting.Dictionary
-Private mIssuesCostDict As Scripting.Dictionary
-Private mIssuesLimit As Date
-
-Public Const CWORD_DRIVER_FILE = "_OOoDocAnalysisWordDriver.doc"
-Public Const CEXCEL_DRIVER_FILE = "_OOoDocAnalysisExcelDriver.xls"
-Public Const CPP_DRIVER_FILE = "_OOoDocAnalysisPPTDriver.ppt"
-Public Const CWORD_DRIVER_FILE_TEMP = "~$OoDocAnalysisWordDriver.doc"
-Public Const CEXCEL_DRIVER_FILE_TEMP = "~$OoDocAnalysisExcelDriver.xls"
-Public Const CPP_DRIVER_FILE_TEMP = "~$OoDocAnalysisPPTDriver.ppt"
-
-'Doc Properties Offsets - used in WriteDocProperties and GetPreparableFilesFromDocProps
-Const CDOCINFONAME = 1
-Const CDOCINFOAPPLICATION = CDOCINFONAME + 1
-
-Const CDOCINFOISSUE_CLASS = CDOCINFOAPPLICATION + 1
-Const CDOCINFOCOMPLEXISSUES = CDOCINFOISSUE_CLASS + 1
-Const CDOCINFOMINORISSUES = CDOCINFOCOMPLEXISSUES + 1
-Const CDOCINFOPREPAREDISSUES = CDOCINFOMINORISSUES + 1
-
-Const CDOCINFOMACRO_CLASS = CDOCINFOPREPAREDISSUES + 1
-Const CDOCINFOMACRO_USERFORMS = CDOCINFOMACRO_CLASS + 1
-Const CDOCINFOMACRO_LINESOFCODE = CDOCINFOMACRO_USERFORMS + 1
-
-Const CDOCINFODOCISSUECOSTS = CDOCINFOMACRO_LINESOFCODE + 1
-Const CDOCINFOPREPARABLEISSUECOSTS = CDOCINFODOCISSUECOSTS + 1
-Const CDOCINFOMACROISSUECOSTS = CDOCINFOPREPARABLEISSUECOSTS + 1
-
-Const CDOCINFONUMBERPAGES = CDOCINFOMACROISSUECOSTS + 1
-Const CDOCINFOCREATED = CDOCINFONUMBERPAGES + 1
-Const CDOCINFOLASTMODIFIED = CDOCINFOCREATED + 1
-Const CDOCINFOLASTACCESSED = CDOCINFOLASTMODIFIED + 1
-Const CDOCINFOLASTPRINTED = CDOCINFOLASTACCESSED + 1
-Const CDOCINFOLASTSAVEDBY = CDOCINFOLASTPRINTED + 1
-Const CDOCINFOREVISION = CDOCINFOLASTSAVEDBY + 1
-Const CDOCINFOTEMPLATE = CDOCINFOREVISION + 1
-Const CDOCINFONAMEANDPATH = CDOCINFOTEMPLATE + 1
-
-'Overview shapes
-Const COV_DOC_MOD_DATES_CHART = "Chart 21"
-Const COV_DOC_MACRO_CHART = "Chart 22"
-Const COV_DOC_ANALYSIS_CHART = "Chart 23"
-
-Const COV_DOC_MOD_DATES_COMMENT_TXB = "Text Box 25"
-Const COV_DOC_MOD_DATES_LEGEND_TXB = "Text Box 12"
-
-Const COV_DOC_MACRO_COMMENT_TXB = "Text Box 26"
-Const COV_DOC_MACRO_LEGEND_TXB = "Text Box 16"
-
-Const COV_DOC_ANALYSIS_COMMENT_TXB = "Text Box 27"
-Const COV_DOC_ANALYSIS_LEGEND_DAW_TXB = "Text Box 28"
-Const COV_DOC_ANALYSIS_LEGEND_PAW_TXB = "Text Box 18"
-
-Const COV_HIGH_LEVEL_ANALYSIS_RANGE = "OV_High_Level_Analysis_Range"
-Const COV_COST_RANGE = "OV_Cost_Range"
-
-'Sheet labels
-Const COV_HIGH_LEVEL_ANALYSIS_LBL = "OV_High_level_analysis_lbl"
-Const COV_DP_PREPISSUES_COL_LBL = "DocProperties_PreparedIssues_Column"
-Const COV_COSTS_PREPISSUE_COUNT_COL_LBL = "Costs_PreparedIssueCount_Column"
-Const CDP_DAW_HIDDEN_COLS_LBL = "DP_DAW_HIDDEN_COLS_RANGE"
-Const CDP_DAW_HIDDEN_COLS2_LBL = "DP_DAW_HIDDEN_COLS_RANGE2"
-Const CDP_DAW_HIDDEN_ROW_LBL = "DP_DAW_HIDDEN_ROW_RANGE"
-
-Const COV_DAW_SETUP_SHEETS_RUN_LBL = "OV_DAW_SETUP_SHEETS_RUN"
-Const COV_PAW_SETUP_SHEETS_RUN_LBL = "OV_PAW_SETUP_SHEETS_RUN"
-Const COV_Internal_Attributes_Cols_LBL = "OV_Internal_Attributes_Cols"
-
-Const CR_STR = "<CR>"
-Const CR_TOPIC = "<TOPIC>"
-Const CR_PRODUCT = "<PRODUCT>"
-
-Const CLEGEND_FONT_SIZE = 8
-Const CCOMMENTS_FONT_SIZE = 10
-
-Dim mTstart As Single
-Dim mTend As Single
-Public gExcelMaxRangeProcessTime As Integer
-
-Sub AnalyseDirectory()
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "AnalyseDirectory"
-
- Dim iniFilePath As String
- Dim startDir As String
- Dim fileList As String
- Dim storeToDir As String
- Dim resultsFile As String
- Dim resultsTemplate As String
- Dim statFileName As String
- Dim bOverwriteResultsFile As Boolean
- Dim bNewResultsFile As Boolean
- Dim outputType As String
- Dim singleFile As String
- Dim nTimeNeeded As Long
- Dim nIncrementFileCounter As Long
- Dim nMaxWaitBeforeWrite As Long
- Dim fso As Scripting.FileSystemObject
- Set fso = New Scripting.FileSystemObject
-
- SetAppToMinimized
-
- If InDocPreparation Then
- mDocPropRowOffset = CDOCPROP_PAW_ROWOFFSET
- Else
- mDocPropRowOffset = CROWOFFSET
- End If
-
- 'Get Wizard input variables
- SetupWizardVariables fileList, storeToDir, resultsFile, _
- mLogFilePath, resultsTemplate, bOverwriteResultsFile, bNewResultsFile, _
- statFileName, mDebugLevel, outputType, singleFile
-
- startDir = ProfileGetItem("Analysis", CINPUT_DIR, "", mIniFilePath)
-
- nIncrementFileCounter = CLng(ProfileGetItem("Analysis", _
- C_MAX_CHECK_INI, C_MAX_CHECK, mIniFilePath))
- nMaxWaitBeforeWrite = CLng(ProfileGetItem("Analysis", _
- C_MAX_WAIT_BEFORE_WRITE_INI, C_MAX_WAIT_BEFORE_WRITE, mIniFilePath))
- gExcelMaxRangeProcessTime = CInt(ProfileGetItem("Analysis", _
- C_MAX_RANGE_PROCESS_TIME_INI, C_MAX_RANGE_PROCESS_TIME, mIniFilePath))
- LocalizeResources
-
- 'Setup File List
- 'For Prepare - get list from results spreadsheet with docs analysis found as preparable
- 'If no results spreadsheet then just try to prepare all the docs - run over full analysis list
- Dim myFiles As Collection
- Set myFiles = New Collection
- Dim sAnalysisOrPrep As String
- If InDocPreparation And CheckDoPrepare Then
- sAnalysisOrPrep = "Prepared"
- If fso.FileExists(storeToDir & "\" & resultsFile) Then
- If Not GetPrepareFilesToAnalyze(storeToDir & "\" & resultsFile, myFiles, fso) Then
- SetPrepareToNone
- WriteDebug currentFunctionName & ": No files to analyse!"
- GoTo FinalExit 'No files to prepare - exit
- End If
- Else
- If Not GetFilesToAnalyze(fileList, singleFile, myFiles) Then
- SetPrepareToNone
- WriteDebug currentFunctionName & ": No files to analyse! Filelist (" & fileList & ") empty?"
- GoTo FinalExit 'No files to prepare - exit
- End If
- End If
- Else
- sAnalysisOrPrep = "Analyzed"
- If Not GetFilesToAnalyze(fileList, singleFile, myFiles) Then
- WriteDebug currentFunctionName & ": No files to analyse! Filelist (" & fileList & ") empty?"
- GoTo FinalExit
- End If
- End If
-
- Dim index As Long
- Dim numFiles As Long
- Dim nextSave As Long
- Dim startIndex As Long
- Dim bResultsWaiting As Boolean
- Dim AnalysedDocs As Collection
- Dim startDate As Date
- Dim currentDate As Date
-
- Set AnalysedDocs = New Collection
- numFiles = myFiles.count
- bResultsWaiting = False
-
- If (singleFile <> "") Then
- ' No recovery handling for single file analysis and the value in the
- ' ini file should be used for bNewResultsFile
- startIndex = 1
- Else
- bNewResultsFile = bNewResultsFile And GetIndexValues(startIndex, nextSave, myFiles)
- End If
-
- startDate = Now()
-
- ' Analyse all files
- For index = startIndex To numFiles
- Set mIssuesClassificationDict = New Scripting.Dictionary
- mIssuesClassificationDict.CompareMode = TextCompare
- Set mIssuesCostDict = New Scripting.Dictionary
- 'mIssuesCostDict.CompareMode = TextCompare
-
- Set mUserFormTypesDict = New Scripting.Dictionary
- Set mIssuesDict = New Scripting.Dictionary
- Set mMacroDict = New Scripting.Dictionary
- Set mPreparedIssuesDict = New Scripting.Dictionary
-
- 'Write to Application log
- Dim myAnalyser As MigrationAnalyser
- Set myAnalyser = New MigrationAnalyser
-
- If (CheckForAbort) Then GoTo FinalExit
-
- 'Log Analysis
- WriteToStatFile statFileName, C_STAT_STARTING, myFiles.item(index), fso
- WriteToLog "Analyzing", myFiles.item(index)
- WriteToIni C_NEXT_FILE, myFiles.item(index)
- mDocIndex = index
-
- 'Do Analysis
- myAnalyser.DoAnalyse myFiles.item(index), mUserFormTypesDict, startDir, storeToDir, fso
-
- AnalysedDocs.Add myAnalyser.Results
- bResultsWaiting = True
-
- WriteToLog sAnalysisOrPrep, index & "of" & numFiles & _
- " " & getAppSpecificApplicationName & " Documents"
- WriteToLog "Analyzing", "Done"
- WriteToLog sAnalysisOrPrep & "Doc" & index, myFiles.item(index)
- Set myAnalyser = Nothing
-
- If (CheckForAbort) Then GoTo FinalExit
-
- 'No need to output results spreadsheet, just doing prepare
- If CheckDoPrepare Then GoTo CONTINUE_FOR
-
- nTimeNeeded = val(DateDiff("s", startDate, Now()))
- If ((nTimeNeeded > nMaxWaitBeforeWrite) Or _
- (index >= nextSave)) Then
- If WriteResults(storeToDir, resultsFile, resultsTemplate, _
- bOverwriteResultsFile, bNewResultsFile, _
- outputType, AnalysedDocs, fso) Then
- nextSave = index + C_MAX_CHECK
- bResultsWaiting = False
- Set AnalysedDocs = New Collection
- WriteToIni C_LAST_CHECKPOINT, myFiles.item(index)
- startDate = Now()
- Else
- 'write error
- End If
- End If
- WriteToStatFile statFileName, C_STAT_DONE, myFiles.item(index), fso
-CONTINUE_FOR:
- Next index
-
- If (bResultsWaiting) Then
- If WriteResults(storeToDir, resultsFile, resultsTemplate, _
- bOverwriteResultsFile, bNewResultsFile, _
- outputType, AnalysedDocs, fso) Then
- WriteToIni C_LAST_CHECKPOINT, myFiles.item(index - 1)
- Else
- 'write error
- End If
- End If
- WriteToStatFile statFileName, C_STAT_FINISHED, "", fso
-
-FinalExit:
-
- Set fso = Nothing
- Set myFiles = Nothing
- Set mIssuesClassificationDict = Nothing
- Set mIssuesCostDict = Nothing
- Set mUserFormTypesDict = Nothing
- Set mIssuesDict = Nothing
- Set mMacroDict = Nothing
- Set mPreparedIssuesDict = Nothing
-
- Set AnalysedDocs = Nothing
-
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & " : " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-Function WriteResults(storeToDir As String, resultsFile As String, resultsTemplate As String, _
- bOverwriteResultsFile As Boolean, bNewResultsFile As Boolean, _
- outputType As String, AnalysedDocs As Collection, _
- fso As FileSystemObject) As Boolean
-
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "WriteResults"
-
- If InDocPreparation Then
- If outputType = COUTPUT_TYPE_XML Or outputType = COUTPUT_TYPE_BOTH Then
- WriteXMLOutput storeToDir, resultsFile, _
- bOverwriteResultsFile, bNewResultsFile, AnalysedDocs, fso
- End If
- End If
-
- If outputType = COUTPUT_TYPE_XLS Or outputType = COUTPUT_TYPE_BOTH Then
- WriteXLSOutput storeToDir, resultsFile, fso.GetAbsolutePathName(resultsTemplate), _
- bOverwriteResultsFile, bNewResultsFile, AnalysedDocs, fso
- End If
-
- WriteResults = True
- bNewResultsFile = False
-
-FinalExit:
- Exit Function
-
-HandleErrors:
- WriteResults = False
- WriteDebug currentFunctionName & " : " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Function
-
-Function GetFilesToAnalyze_old(startDir As String, bIncludeSubdirs As Boolean, _
- myFiles As Collection) As Boolean
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "GetFilesToAnalyze"
- Dim fso As New FileSystemObject
- Dim theResultsFile As String
- theResultsFile = ProfileGetItem("Analysis", CINPUT_DIR, "c:\", mIniFilePath) & "\" & ProfileGetItem("Analysis", CRESULTS_FILE, "", mIniFilePath)
-
- GetFilesToAnalyze = False
-
- Dim searchTypes As Collection
- Set searchTypes = New Collection
- SetupSearchTypes searchTypes
- If searchTypes.count = 0 Then
- GoTo FinalExit
- End If
-
- Dim myDocFiles As CollectedFiles
- Set myDocFiles = New CollectedFiles
- With myDocFiles
- .BannedList.Add fso.GetAbsolutePathName(getAppSpecificPath & "\" & CWORD_DRIVER_FILE)
- .BannedList.Add fso.GetAbsolutePathName(getAppSpecificPath & "\" & CEXCEL_DRIVER_FILE)
- .BannedList.Add fso.GetAbsolutePathName(getAppSpecificPath & "\" & CPP_DRIVER_FILE)
- .BannedList.Add fso.GetAbsolutePathName(getAppSpecificPath & "\" & CWORD_DRIVER_FILE_TEMP)
- .BannedList.Add fso.GetAbsolutePathName(getAppSpecificPath & "\" & CEXCEL_DRIVER_FILE_TEMP)
- .BannedList.Add fso.GetAbsolutePathName(getAppSpecificPath & "\" & CPP_DRIVER_FILE_TEMP)
- .BannedList.Add theResultsFile
- End With
- myDocFiles.Search rootDir:=startDir, FileSpecs:=searchTypes, _
- IncludeSubdirs:=bIncludeSubdirs
-
- If getAppSpecificApplicationName = CAPPNAME_WORD Then
- Set myFiles = myDocFiles.WordFiles
- ElseIf getAppSpecificApplicationName = CAPPNAME_EXCEL Then
- Set myFiles = myDocFiles.ExcelFiles
- ElseIf getAppSpecificApplicationName = CAPPNAME_POWERPOINT Then
- Set myFiles = myDocFiles.PowerPointFiles
- Else
- WriteDebug currentFunctionName & " : invalid application " & getAppSpecificApplicationName
- GoTo FinalExit
- End If
-
- GetFilesToAnalyze = True
-
-FinalExit:
- Set searchTypes = Nothing
- Set myDocFiles = Nothing
-
- Exit Function
-
-HandleErrors:
- WriteDebug currentFunctionName & " : " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Function
-
-Function GetFilesToAnalyze(fileList As String, startFile As String, _
- myFiles As Collection) As Boolean
-
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "GetFilesToAnalyze"
-
- Dim fso As New FileSystemObject
- Dim fileContent As TextStream
- Dim fileName As String
-
- GetFilesToAnalyze = False
-
- If (startFile = "") Then
- If (fso.FileExists(fileList)) Then
- Set fileContent = fso.OpenTextFile(fileList, ForReading, False, TristateTrue)
- While (Not fileContent.AtEndOfStream)
- fileName = fileContent.ReadLine
- fileName = Trim(fileName)
- If (fileName <> "") Then
- myFiles.Add (fileName)
- End If
- Wend
- fileContent.Close
- End If
- Else
- myFiles.Add (startFile)
- End If
-
- If (myFiles.count <> 0) Then GetFilesToAnalyze = True
-
-FinalExit:
- Set fileContent = Nothing
- Set fso = Nothing
- Exit Function
-
-HandleErrors:
- WriteDebug currentFunctionName & " : " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Function
-
-Function GetPrepareFilesToAnalyze(resultsFilePath As String, myFiles As Collection, _
- fso As FileSystemObject) As Boolean
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "GetPrepareFilesToAnalyze"
-
- GetPrepareFilesToAnalyze = False
-
- If Not fso.FileExists(resultsFilePath) Then
- WriteDebug currentFunctionName & ": results file does not exist : " & resultsFilePath
- GoTo FinalExit
- End If
-
- 'Open results spreadsheet
- Dim xl As Excel.Application
- If getAppSpecificApplicationName = CAPPNAME_EXCEL Then
- Set xl = Application
- xl.Visible = True
- Else
- Set xl = GetExcelInstance
- xl.Visible = False
- End If
- Dim logWb As WorkBook
- Set logWb = xl.Workbooks.Open(resultsFilePath)
-
- Dim wsDocProp As Worksheet
- Set wsDocProp = logWb.Sheets(RID_STR_COMMON_RESULTS_SHEET_NAME_DOCPROP)
-
- Dim startRow As Long
- Dim endRow As Long
- startRow = mDocPropRowOffset + 1
- endRow = GetWorkbookNameValueAsLong(logWb, CTOTAL_DOCS_ANALYZED) + mDocPropRowOffset
-
- GetPreparableFilesFromDocProps wsDocProp, startRow, endRow, fso, myFiles
-
- GetPrepareFilesToAnalyze = (myFiles.count > 0)
-
-FinalExit:
- Set wsDocProp = Nothing
- If Not logWb Is Nothing Then logWb.Close
- Set logWb = Nothing
-
- If getAppSpecificApplicationName <> CAPPNAME_EXCEL Then
- If Not xl Is Nothing Then
- If xl.Workbooks.count = 0 Then
- xl.Quit
- End If
- End If
- End If
- Set xl = Nothing
-
- Exit Function
-
-HandleErrors:
- WriteDebug currentFunctionName & " : " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Function
-
-Function GetPreparableFilesFromDocProps(wsDocProp As Worksheet, startRow As Long, _
- endRow As Long, fso As FileSystemObject, myFiles As Collection) As Boolean
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "GetPreparableFilesFromDocProps"
- GetPreparableFilesFromDocProps = False
-
- Dim index As Long
- Dim fileName As String
- Dim fileExt As String
- Dim docExt As String
- Dim templateExt As String
-
- docExt = getAppSpecificDocExt
- templateExt = getAppSpecificTemplateExt
-
- For index = startRow To endRow
- If GetWorksheetCellValueAsLong(wsDocProp, index, CDOCINFOPREPAREDISSUES) > 0 Then
- fileName = GetWorksheetCellValueAsString(wsDocProp, index, CDOCINFONAME)
- fileExt = "." & fso.GetExtensionName(fileName)
- 'Don't have to worry about search types - just looking at existing results
- 'so just check both legal extensions for this application
- If fileExt = docExt Or fileExt = templateExt Then
- myFiles.Add GetWorksheetCellValueAsString(wsDocProp, index, CDOCINFONAMEANDPATH)
- End If
- End If
- Next index
-
- GetPreparableFilesFromDocProps = myFiles.count > 0
-FinalExit:
- Exit Function
-
-HandleErrors:
- GetPreparableFilesFromDocProps = False
- WriteDebug currentFunctionName & " : " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Function
-
-Sub OpenXLSResultFile(resultsFile As String, _
- resultsTemplate As String, _
- bNewResultsFile As Boolean, _
- excelApp As Excel.Application, _
- resultSheet As Excel.WorkBook)
-
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "OpenXLSResultFile"
-
- If getAppSpecificApplicationName = CAPPNAME_EXCEL Then
- Set excelApp = Application
- excelApp.Visible = True
- Else
- Set excelApp = GetExcelInstance
- excelApp.Visible = False
- End If
-
- If bNewResultsFile Then
- Set resultSheet = excelApp.Workbooks.Add(Template:=resultsTemplate)
- Localize_WorkBook resultSheet
- Else
- Set resultSheet = excelApp.Workbooks.Open(resultsFile)
- End If
-
-FinalExit:
- Exit Sub
-
-HandleErrors:
- excelApp.DisplayAlerts = False
- WriteDebug currentFunctionName & " : " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-Sub CloseXLSResultFile(excelApp As Excel.Application, _
- resultSheet As Excel.WorkBook)
-
- On Error Resume Next
-
- If Not resultSheet Is Nothing Then resultSheet.Close
- Set resultSheet = Nothing
-
- If getAppSpecificApplicationName <> CAPPNAME_EXCEL Then
- If Not excelApp Is Nothing Then
- excelApp.Visible = True
- If excelApp.Workbooks.count = 0 Then
- excelApp.Quit
- End If
- End If
- End If
- Set excelApp = Nothing
-
- Exit Sub
-End Sub
-
-Sub WriteXLSOutput(storeToDir As String, resultsFile As String, resultsTemplate As String, _
- bOverwriteResultsFile As Boolean, bNewResultsFile As Boolean, AnalysedDocs As Collection, _
- fso As Scripting.FileSystemObject)
-
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "WriteXLSOutput"
-
- Dim offsetDocPropRow As Long
- Dim offsetDocIssuesRow As Long
- Dim offsetDocIssueDetailsRow As Long
- Dim offsetDocRefDetailsRow As Long
-
- Const COVERVIEW_SHEET_IDX = 1
- Const CDOCLIST_SHEET_IDX = 2
- Const CISSUES_ANALYSED_SHEET = 3
- Const CISSUE_DETAILS_SHEET = 4
- Const CWORD_ISSUES_SHEET = 5
- Const CEXCEL_ISSUES_SHEET = 6
- Const CPOWERPOINT_ISSUES_SHEET = 7
- Const CREFERENCE_ISSUES_SHEET = 8
-
- 'Begin writing stats to excel
- Dim xl As Excel.Application
- If getAppSpecificApplicationName = CAPPNAME_EXCEL Then
- Set xl = Application
- xl.Visible = True
- Else
- Set xl = GetExcelInstance
- xl.Visible = False
- End If
-
- Dim logWb As WorkBook
-
- If bNewResultsFile Then
- Set logWb = xl.Workbooks.Add(Template:=resultsTemplate)
- Localize_WorkBook logWb
- Else
- Set logWb = xl.Workbooks.Open(storeToDir & "\" & resultsFile)
- End If
-
- SetupAnalysisResultsVariables logWb, offsetDocPropRow, _
- offsetDocIssuesRow, offsetDocIssueDetailsRow, offsetDocRefDetailsRow
-
- ' Iterate through results and write info
- Dim aAnalysis As DocumentAnalysis
- Dim row As Long
- Dim docCounts As DocumentCount
- Dim templateCounts As DocumentCount
-
- Dim issuesRow As Long
- Dim issueDetailsRow As Long
- Dim refDetailsRow As Long
-
- Dim wsOverview As Worksheet
- Dim wsCosts As Worksheet
- Dim wsPgStats As Worksheet
- Dim wsIssues As Worksheet
- Dim wsIssueDetails As Worksheet
- Dim wsRefDetails As Worksheet
-
- Set wsOverview = logWb.Sheets(COVERVIEW_SHEET_IDX)
- Set wsPgStats = logWb.Sheets(CDOCLIST_SHEET_IDX)
-
- 'Some localized names might be longer than 31 chars, excel doesn't
- 'allow such names!
- On Error Resume Next
- wsOverview.name = RID_STR_COMMON_RESULTS_SHEET_NAME_OVERVIEW
- wsPgStats.name = RID_STR_COMMON_RESULTS_SHEET_NAME_DOCPROP
- On Error GoTo HandleErrors
-
- If InDocPreparation Then
- Set wsCosts = logWb.Sheets(CISSUES_ANALYSED_SHEET)
- Dim appName As String
- appName = getAppSpecificApplicationName
- Select Case appName
- Case "Word"
- Set wsIssues = logWb.Worksheets(CWORD_ISSUES_SHEET)
- Case "Excel"
- Set wsIssues = logWb.Worksheets(CEXCEL_ISSUES_SHEET)
- Case "PowerPoint"
- Set wsIssues = logWb.Worksheets(CPOWERPOINT_ISSUES_SHEET)
- Case Default
- Err.Raise Number:=-1, Description:="BadAppName"
- End Select
- Set wsIssueDetails = logWb.Sheets(CISSUE_DETAILS_SHEET)
- Set wsRefDetails = logWb.Sheets(CREFERENCE_ISSUES_SHEET)
- issuesRow = 1 + CROWOFFSET + offsetDocIssuesRow
- issueDetailsRow = 1 + CROWOFFSET + offsetDocIssueDetailsRow
- refDetailsRow = 1 + CROWOFFSET + offsetDocRefDetailsRow
- ' localize PAW worksheets
- Dim wsWordIssues As Worksheet
- Dim wsExcelIssues As Worksheet
- Dim wsPowerPointIssues As Worksheet
- Set wsWordIssues = logWb.Worksheets(CWORD_ISSUES_SHEET)
- Set wsExcelIssues = logWb.Worksheets(CEXCEL_ISSUES_SHEET)
- Set wsPowerPointIssues = logWb.Worksheets(CPOWERPOINT_ISSUES_SHEET)
-
- On Error Resume Next
- wsCosts.name = RID_STR_COMMON_RESULTS_SHEET_NAME_COSTS
- wsIssueDetails.name = RID_STR_COMMON_RESULTS_SHEET_NAME_DOCISSUE_DETAILS
- wsRefDetails.name = RID_STR_COMMON_RESULTS_SHEET_NAME_DOCREF_DETAILS
- wsWordIssues.name = RID_STR_COMMON_RESULTS_SHEET_NAME_DOCISSUES_WORD
- wsExcelIssues.name = RID_STR_COMMON_RESULTS_SHEET_NAME_DOCISSUES_EXCEL
- wsPowerPointIssues.name = RID_STR_COMMON_RESULTS_SHEET_NAME_DOCISSUES_POWERPOINT
- On Error GoTo HandleErrors
- End If
-
- Dim fileName As String
- Dim macroClasses As DocMacroClassifications
- Dim issueClasses As DocIssueClassifications
-
- For row = 1 To AnalysedDocs.count 'Need Row count - so not using Eor Each
- Set aAnalysis = AnalysedDocs.item(row)
- fileName = fso.GetFileName(aAnalysis.name)
-
- If InDocPreparation Then
- issuesRow = WriteDocIssues(wsIssues, issuesRow, aAnalysis, fileName)
- issueDetailsRow = _
- ProcessIssuesAndWriteDocIssueDetails(logWb, wsIssueDetails, issueDetailsRow, aAnalysis, fileName)
- refDetailsRow = _
- WriteDocRefDetails(wsRefDetails, refDetailsRow, aAnalysis, fileName)
- aAnalysis.MacroCosts = getMacroIssueCosts(logWb, aAnalysis)
- WriteDocProperties wsPgStats, row + offsetDocPropRow, aAnalysis, fileName
- Else
- ProcessIssuesForDAW logWb, aAnalysis, fileName
- WriteDocProperties wsPgStats, row + offsetDocPropRow, aAnalysis, fileName
- End If
-
- UpdateAllCounts aAnalysis, docCounts, templateCounts, macroClasses, issueClasses, fso
-
- Set aAnalysis = Nothing
- Next row
-
- ' We change the font used for text box shapes here for the japanese
- ' version, because office 2000 sometimes displays squares instead of
- ' chars
- Dim langStr As String
- Dim userLCID As Long
- Dim textSize As Long
- Dim fontName As String
-
- userLCID = GetUserDefaultLangID()
- langStr = GetUserLocaleInfo(userLCID, LOCALE_SISO639LANGNAME)
-
- If (langStr = "ja") Then
- WriteDebug currentFunctionName & " : Setting font to MS PGothic for 'ja' locale"
- fontName = "MS PGothic"
- textSize = 10
- Else
- fontName = "Arial"
- textSize = CLEGEND_FONT_SIZE
- End If
-
- 'DAW - PAW switches
- If InDocPreparation Then
- SaveAnalysisResultsVariables logWb, issueDetailsRow - (1 + CROWOFFSET), _
- refDetailsRow - (1 + CROWOFFSET)
-
- WriteOverview logWb, docCounts, templateCounts, macroClasses, issueClasses
-
- SetupPAWResultsSpreadsheet logWb, fontName, textSize
- WriteIssueCounts logWb
- Else
- WriteOverview logWb, docCounts, templateCounts, macroClasses, issueClasses
-
- 'StartTiming
- SetupDAWResultsSpreadsheet logWb, fontName, textSize
- 'EndTiming "SetupDAWResultsSpreadsheet"
- End If
-
- SetupPrintRanges logWb, row, issuesRow, issueDetailsRow, refDetailsRow
-
- If resultsFile <> "" Then
- 'Overwrite existing results file without prompting
- If bOverwriteResultsFile Or (Not bNewResultsFile) Then
- xl.DisplayAlerts = False
- End If
-
- logWb.SaveAs fileName:=storeToDir & "\" & resultsFile
- xl.DisplayAlerts = True
- End If
-
-FinalExit:
- If Not xl Is Nothing Then
- xl.Visible = True
- End If
-
- Set wsOverview = Nothing
- Set wsPgStats = Nothing
-
- If InDocPreparation Then
- Set wsCosts = Nothing
- Set wsIssues = Nothing
- Set wsIssueDetails = Nothing
- Set wsRefDetails = Nothing
- End If
-
- If Not logWb Is Nothing Then logWb.Close
- Set logWb = Nothing
-
- If getAppSpecificApplicationName <> CAPPNAME_EXCEL Then
- If Not xl Is Nothing Then
- If xl.Workbooks.count = 0 Then
- xl.Quit
- End If
- End If
- End If
- Set xl = Nothing
-
- Exit Sub
-
-HandleErrors:
- xl.DisplayAlerts = False
-
- WriteDebug currentFunctionName & " : " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-Public Sub StartTiming()
- mTstart = 0
- mTend = 0
- mTstart = GetTickCount()
-End Sub
-Public Sub EndTiming(what As String)
- mTend = GetTickCount()
- WriteDebug "Timing: " & what & ": " & (FormatNumber((mTend - mTstart) / 1000, 0) & " seconds")
- mTstart = 0
- mTend = 0
-End Sub
-Sub WriteIssueCounts(logWb As WorkBook)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "WriteIssueCounts"
-
- Dim Str As String
- Dim str1 As String
- Dim val1 As Long
- Dim count As Long
- Dim vKeyArray As Variant
- Dim vItemArray As Variant
- Dim vPrepKeyArray As Variant
- Dim vPrepItemArray As Variant
-
- vKeyArray = mIssuesDict.Keys
- vItemArray = mIssuesDict.Items
-
- vPrepKeyArray = mPreparedIssuesDict.Keys
- vPrepItemArray = mPreparedIssuesDict.Items
-
- 'Write Issue Counts across all Documents
- For count = 0 To mIssuesDict.count - 1
- str1 = vKeyArray(count)
- val1 = CInt(vItemArray(count))
- logWb.Names(str1).RefersToRange.Cells(1, 1) = _
- logWb.Names(str1).RefersToRange.Cells(1, 1).value + vItemArray(count)
- 'DEBUG: str = str & "Key: " & str1 & " Value: " & val1 & vbLf
- Next count
-
- 'Write Prepared Issues Counts across all Documents
- For count = 0 To mPreparedIssuesDict.count - 1
- str1 = vPrepKeyArray(count)
- val1 = CInt(vPrepItemArray(count))
- AddVariantToWorkbookNameValue logWb, str1, vPrepItemArray(count)
- 'DEBUG: str = str & "Key: " & str1 & " Value: " & val1 & vbLf
- Next count
-
- 'User Form control type count across all analyzed documents of this type
- str1 = getAppSpecificApplicationName & "_" & _
- CSTR_ISSUE_VBA_MACROS & "_" & _
- CSTR_SUBISSUE_PROPERTIES & "_" & _
- CSTR_SUBISSUE_VBA_MACROS_USERFORMS_CONTROLTYPE_COUNT
- SetWorkbookNameValueToLong logWb, str1, mUserFormTypesDict.count
-
- 'Add list of User Form controls and counts to ...USERFORMS_CONTROLTYPE_COUNT field
- If mUserFormTypesDict.count > 0 Then
- vKeyArray = mUserFormTypesDict.Keys
- vItemArray = mUserFormTypesDict.Items
-
- Str = RID_STR_COMMON_ATTRIBUTE_CONTROLS & ": "
- For count = 0 To mUserFormTypesDict.count - 1
- Str = Str & vbLf & vKeyArray(count) & " " & vItemArray(count)
- Next count
- WriteUserFromControlTypesComment logWb, str1, Str
- End If
- 'DEBUG: MsgBox str & vbLf & mIssuesDict.count
-
- WriteUniqueModuleCount logWb
-
-FinalExit:
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & _
- " : logging costs : " & _
- Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-Sub WriteUniqueModuleCount(logWb As WorkBook)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "WriteUniqueModuleCount"
-
- Dim strLabel As String
- Dim uniqueLineCount As Long
- Dim uniqueModuleCount As Long
- Dim count As Long
- Dim vItemArray As Variant
-
- vItemArray = mMacroDict.Items
-
- 'Write Issues Costs
- uniqueLineCount = 0
- For count = 0 To mMacroDict.count - 1
- uniqueLineCount = uniqueLineCount + CInt(vItemArray(count))
- Next count
- uniqueModuleCount = mMacroDict.count
-
-
- strLabel = getAppSpecificApplicationName & "_" & _
- CSTR_ISSUE_VBA_MACROS & "_" & _
- CSTR_SUBISSUE_PROPERTIES & "_" & _
- CSTR_SUBISSUE_VBA_MACROS_UNIQUE_MODULE_COUNT
- SetWorkbookNameValueToLong logWb, strLabel, uniqueModuleCount
-
- strLabel = getAppSpecificApplicationName & "_" & _
- CSTR_ISSUE_VBA_MACROS & "_" & _
- CSTR_SUBISSUE_PROPERTIES & "_" & _
- CSTR_SUBISSUE_VBA_MACROS_UNIQUE_LINE_COUNT
- SetWorkbookNameValueToLong logWb, strLabel, uniqueLineCount
-
-FinalExit:
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & _
- " : logging Unique Module/ Line Counts : " & _
- Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-Sub WriteUserFromControlTypesComment(logWb As WorkBook, name As String, comment As String)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "WriteUserFromControlTypesComment"
-
- On Error Resume Next 'Ignore error if trying to add comment again - would happen on append to results
- logWb.Names(name).RefersToRange.Cells(1, 1).AddComment
-
- On Error GoTo HandleErrors
- logWb.Names(name).RefersToRange.Cells(1, 1).comment.Text Text:=comment
- 'Autosize not supported - Office 2000
- 'logWb.Names(name).RefersToRange.Cells(1, 1).comment.AutoSize = True
- logWb.Names(name).RefersToRange.Cells(1, 1).comment.Visible = False
-
-FinalExit:
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & _
- " : name : " & name & _
- " : comment : " & comment & _
- Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-Sub UpdateAllCounts(aAnalysis As DocumentAnalysis, counts As DocumentCount, templateCounts As DocumentCount, _
- macroClasses As DocMacroClassifications, issueClasses As DocIssueClassifications, _
- fso As FileSystemObject)
- Const CMODDATE_LESS3MONTHS = 91
- Const CMODDATE_LESS6MONTHS = 182
- Const CMODDATE_LESS12MONTHS = 365
-
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "UpdateAllCounts"
- 'DocIssue Classification occurs in setDocOverallIssueClassification under
- ' ProcessIssuesAndWriteDocIssueDetails when all DocIssues are being traversed.
- 'MacroClass for the Doc is setup at the end of the Analyze_Macros in DoAnalysis
- 'Mod Dates are determined in SetDocProperties in DoAnalysis
-
- 'DocMacroClassifications
- Select Case aAnalysis.MacroOverallClass
- Case enMacroComplex
- macroClasses.complex = macroClasses.complex + 1
- Case enMacroMedium
- macroClasses.Medium = macroClasses.Medium + 1
- Case enMacroSimple
- macroClasses.Simple = macroClasses.Simple + 1
- Case Else
- macroClasses.None = macroClasses.None + 1
- End Select
-
- 'DocIssueClassifications
- aAnalysis.BelowIssuesLimit = True
- Select Case aAnalysis.DocOverallIssueClass
- Case enComplex
- issueClasses.complex = issueClasses.complex + 1
- Case enMinor
- issueClasses.Minor = issueClasses.Minor + 1
- Case Else
- issueClasses.None = issueClasses.None + 1
- End Select
-
- 'DocumentCounts
- Dim extStr As String
- extStr = "." & LCase(fso.GetExtensionName(aAnalysis.name))
- If extStr = getAppSpecificDocExt Then
- UpdateDocCounts counts, aAnalysis
- ElseIf extStr = getAppSpecificTemplateExt Then
- UpdateDocCounts templateCounts, aAnalysis
- Else
- WriteDebug currentFunctionName & " : path " & aAnalysis.name & _
- ": unhandled file extesnion " & extStr & " : " & Err.Number & " " & Err.Description & " " & Err.Source
- End If
-
-FinalExit:
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & " : path " & aAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-Sub UpdateDocCounts(counts As DocumentCount, aAnalysis As DocumentAnalysis)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "UpdateDocCounts"
-
- counts.numDocsAnalyzed = counts.numDocsAnalyzed + 1
- If aAnalysis.IssuesCount > 0 Then 'During Analysis incremented
- counts.numDocsAnalyzedWithIssues = counts.numDocsAnalyzedWithIssues + 1
-
- If aAnalysis.BelowIssuesLimit Then
- counts.numMinorIssues = _
- counts.numMinorIssues + aAnalysis.MinorIssuesCount
- 'MinorIssuesCount incemented as all DocIssues are being traversed are being written out - ProcessIssuesAndWriteDocIssueDetails
- counts.numComplexIssues = counts.numComplexIssues + aAnalysis.ComplexIssuesCount 'Calculated
- counts.totalDocIssuesCosts = counts.totalDocIssuesCosts + _
- aAnalysis.DocIssuesCosts
- counts.totalPreparableIssuesCosts = counts.totalPreparableIssuesCosts + _
- aAnalysis.PreparableIssuesCosts
- End If
-
- counts.numMacroIssues = counts.numMacroIssues + aAnalysis.MacroIssuesCount 'During Analysis incremented
- counts.totalMacroCosts = counts.totalMacroCosts + aAnalysis.MacroCosts
- End If
-
-FinalExit:
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & " : path " & aAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-
-Sub WriteDocProperties(wsPgStats As Worksheet, row As Long, aAnalysis As DocumentAnalysis, _
- fileName As String)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "WriteDocProperties"
-
- Dim rowIndex As Long
- rowIndex = row + mDocPropRowOffset
-
- If aAnalysis.Application = RID_STR_COMMON_CANNOT_OPEN Then
- SetWorksheetCellValueToString wsPgStats, rowIndex, CDOCINFONAME, fileName
- SetWorksheetCellValueToString wsPgStats, rowIndex, CDOCINFOAPPLICATION, aAnalysis.Application
- SetWorksheetCellValueToString wsPgStats, rowIndex, CDOCINFONAMEANDPATH, aAnalysis.name
-
- GoTo FinalExit
- End If
-
- If InDocPreparation Then
- SetWorksheetCellValueToString wsPgStats, rowIndex, CDOCINFONAME, fileName
- SetWorksheetCellValueToString wsPgStats, rowIndex, CDOCINFOAPPLICATION, aAnalysis.Application
-
- SetWorksheetCellValueToLong wsPgStats, rowIndex, CDOCINFODOCISSUECOSTS, aAnalysis.DocIssuesCosts
- SetWorksheetCellValueToLong wsPgStats, rowIndex, CDOCINFOPREPARABLEISSUECOSTS, aAnalysis.PreparableIssuesCosts
- SetWorksheetCellValueToLong wsPgStats, rowIndex, CDOCINFOMACROISSUECOSTS, aAnalysis.MacroCosts
-
- SetWorksheetCellValueToString wsPgStats, rowIndex, CDOCINFOISSUE_CLASS, _
- getDocOverallIssueClassificationAsString(aAnalysis.DocOverallIssueClass)
- SetWorksheetCellValueToLong wsPgStats, rowIndex, CDOCINFOCOMPLEXISSUES, aAnalysis.ComplexIssuesCount
- SetWorksheetCellValueToLong wsPgStats, rowIndex, CDOCINFOMINORISSUES, aAnalysis.MinorIssuesCount
- SetWorksheetCellValueToLong wsPgStats, rowIndex, CDOCINFOPREPAREDISSUES, aAnalysis.PreparableIssuesCount
-
- SetWorksheetCellValueToString wsPgStats, rowIndex, CDOCINFOMACRO_CLASS, _
- getDocOverallMacroClassAsString(aAnalysis.MacroOverallClass)
- SetWorksheetCellValueToLong wsPgStats, rowIndex, CDOCINFOMACRO_USERFORMS, aAnalysis.MacroNumUserForms
- SetWorksheetCellValueToLong wsPgStats, rowIndex, CDOCINFOMACRO_LINESOFCODE, aAnalysis.MacroTotalNumLines
-
- SetWorksheetCellValueToLong wsPgStats, rowIndex, CDOCINFONUMBERPAGES, aAnalysis.PageCount
- SetWorksheetCellValueToVariant wsPgStats, rowIndex, CDOCINFOCREATED, CheckDate(aAnalysis.Created)
- SetWorksheetCellValueToVariant wsPgStats, rowIndex, CDOCINFOLASTMODIFIED, CheckDate(aAnalysis.Modified)
- SetWorksheetCellValueToVariant wsPgStats, rowIndex, CDOCINFOLASTACCESSED, CheckDate(aAnalysis.Accessed)
- SetWorksheetCellValueToVariant wsPgStats, rowIndex, CDOCINFOLASTPRINTED, CheckDate(aAnalysis.Printed)
-
- SetWorksheetCellValueToString wsPgStats, rowIndex, CDOCINFOLASTSAVEDBY, aAnalysis.SavedBy
- SetWorksheetCellValueToString wsPgStats, rowIndex, CDOCINFOREVISION, aAnalysis.Revision
- SetWorksheetCellValueToString wsPgStats, rowIndex, CDOCINFOTEMPLATE, aAnalysis.Template
- SetWorksheetCellValueToString wsPgStats, rowIndex, CDOCINFONAMEANDPATH, aAnalysis.name
- Else
- SetWorksheetCellValueToString wsPgStats, rowIndex, CDOCINFONAME, fileName
- SetWorksheetCellValueToString wsPgStats, rowIndex, CDOCINFOAPPLICATION, aAnalysis.Application
- SetWorksheetCellValueToString wsPgStats, rowIndex, CDOCINFOISSUE_CLASS, _
- getDocOverallIssueClassificationAsString(aAnalysis.DocOverallIssueClass)
- SetWorksheetCellValueToString wsPgStats, rowIndex, CDOCINFOMACRO_CLASS, _
- getDocOverallMacroClassAsString(aAnalysis.MacroOverallClass)
- SetWorksheetCellValueToVariant wsPgStats, rowIndex, CDOCINFOLASTMODIFIED, CheckDate(aAnalysis.Modified)
- SetWorksheetCellValueToString wsPgStats, rowIndex, CDOCINFONAMEANDPATH, aAnalysis.name
- End If
-
-FinalExit:
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & " : path " & aAnalysis.name & " : " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-Function CheckDate(myDate As Date) As Variant
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "CheckDate"
-
- Dim lowerNTDateLimit As Date
- If Not IsDate(myDate) Then
- CheckDate = RID_STR_COMMON_NA
- Exit Function
- End If
-
- lowerNTDateLimit = DateSerial(1980, 1, 1)
- CheckDate = IIf(myDate < lowerNTDateLimit, RID_STR_COMMON_NA, myDate)
-FinalExit:
- Exit Function
-
-HandleErrors:
- WriteDebug currentFunctionName & " : date " & myDate & " : " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Function
-
-Function WriteDocIssues(wsIssues As Worksheet, row As Long, _
- aAnalysis As DocumentAnalysis, fileName As String) As Long
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "WriteDocIssues"
-
- Const CNAME = 1
- Const CAPPLICATION = CNAME + 1
- Const CISSUE_COLUMNOFFSET = CAPPLICATION
-
- If aAnalysis.IssuesCount = 0 Then
- WriteDocIssues = row
- Exit Function
- End If
- SetWorksheetCellValueToString wsIssues, row, CNAME, fileName
- SetWorksheetCellValueToString wsIssues, row, CAPPLICATION, aAnalysis.Application
-
- Dim index As Integer
- For index = 1 To aAnalysis.TotalIssueTypes
- If aAnalysis.IssuesCountArray(index) > 0 Then
- SetWorksheetCellValueToString wsIssues, row, CISSUE_COLUMNOFFSET + index, aAnalysis.IssuesCountArray(index)
- End If
- Next index
- SetWorksheetCellValueToString wsIssues, row, CISSUE_COLUMNOFFSET + aAnalysis.TotalIssueTypes + 1, aAnalysis.name
-
- WriteDocIssues = row + 1
-FinalExit:
- Exit Function
-
-HandleErrors:
- WriteDebug currentFunctionName & " : path " & aAnalysis.name & " : " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Function
-Sub ProcessIssuesForDAW(logWb As WorkBook, aAnalysis As DocumentAnalysis, fileName As String)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "ProcessIssuesForDAW"
-
- Dim myIssue As IssueInfo
- Dim issueClass As EnumDocOverallIssueClass
-
- Dim index As Integer
- For index = 1 To aAnalysis.Issues.count
- Set myIssue = aAnalysis.Issues(index)
-
- If Not isMacroIssue(myIssue) Then
- issueClass = getDocIssueClassification(logWb, myIssue)
- CountDocIssuesForDoc issueClass, aAnalysis
- SetOverallDocIssueClassification issueClass, aAnalysis
- End If
-
- Set myIssue = Nothing
- Next index
-
-FinalExit:
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & " : path " & aAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-Function ProcessIssuesAndWriteDocIssueDetails(logWb As WorkBook, wsIssueDetails As Worksheet, DetailsRow As Long, _
- aAnalysis As DocumentAnalysis, fileName As String) As Long
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "ProcessIssueAndWriteDocIssueDetails"
-
- Dim myIssue As IssueInfo
- Dim rowIndex As Long
- Dim issueClass As EnumDocOverallIssueClass
- Dim issueCost As Long
-
- rowIndex = DetailsRow
-
- Dim index As Integer
- For index = 1 To aAnalysis.Issues.count
- Set myIssue = aAnalysis.Issues(index)
-
- ' Process Document Issues and Costs for the Document
- ' Will be output to List of Documents sheet by WriteDocProperties( )
- If Not isMacroIssue(myIssue) Then
- issueClass = getDocIssueClassification(logWb, myIssue)
- CountDocIssuesForDoc issueClass, aAnalysis
- SetOverallDocIssueClassification issueClass, aAnalysis
- issueCost = getDocIssueCost(logWb, aAnalysis, myIssue)
- aAnalysis.DocIssuesCosts = aAnalysis.DocIssuesCosts + issueCost
- If myIssue.Preparable Then
- aAnalysis.PreparableIssuesCosts = aAnalysis.PreparableIssuesCosts + issueCost
- End If
- End If
-
- 'Collate Issue and Factor counts across all Documents
- 'Will be output to the Issues Analyzed sheet by WriteIssueCounts( )
- CollateIssueAndFactorCountsAcrossAllDocs aAnalysis, myIssue, fileName
-
- OutputCommonIssueDetails wsIssueDetails, rowIndex, aAnalysis, myIssue, fileName
- OutputCommonIssueAttributes wsIssueDetails, rowIndex, myIssue
- rowIndex = rowIndex + 1
- Set myIssue = Nothing
- Next index
-
- ProcessIssuesAndWriteDocIssueDetails = rowIndex
-
-FinalExit:
- Exit Function
-
-HandleErrors:
- WriteDebug currentFunctionName & " : path " & aAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Function
-
-Function getDocIssueCost(logWb As WorkBook, aAnalysis As DocumentAnalysis, myIssue As IssueInfo) As Long
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "getDocIssueCost"
-
- Dim issueKey As String
- Dim ret As Long
- ret = 0
-
- issueKey = getAppSpecificApplicationName & "_" & myIssue.IssueTypeXML & "_" & myIssue.SubTypeXML
-
- ret = getIssueValueFromXLSorDict(logWb, aAnalysis, mIssuesCostDict, issueKey, 1, CCOST_COL_OFFSET)
-
-FinalExit:
- getDocIssueCost = ret
- Exit Function
-
-HandleErrors:
- ret = 0
- WriteDebug currentFunctionName & " : path " & aAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Function
-Function getMacroIssueCosts(logWb As WorkBook, aAnalysis As DocumentAnalysis) As Long
- 'Error handling not required
- getMacroIssueCosts = getVBAMacroIssueCost(logWb, aAnalysis) '+ getMacroExtRefIssueCost(logWb, aAnalysis)
- 'NOTE: Currently not counting External Refs as Macro Cost
- 'could be added if porting off Windows
-
-End Function
-
-Function getVBAMacroIssueCost(logWb As WorkBook, aAnalysis As DocumentAnalysis) As Long
- Const CMACRO_ROW_OFFSET_UNIQUE_LINES_COST = 4
- Const CMACRO_ROW_OFFSET_USER_FORMS_COUNT_COST = 5
- Const CMACRO_ROW_OFFSET_USER_FORMS_CONTROL_COUNT_COST = 6
- Const CMACRO_ROW_OFFSET_USER_FORMS_CONTROL_TYPE_COUNT_COST = 7
-
- Const CMACRO_NUM_OF_LINES_FACTOR_KEY = "_UniqueLineCount"
- Const CMACRO_USER_FORMS_COUNT_FACTOR_KEY = "_UserFormsCount"
- Const CMACRO_USER_FORMS_CONTROL_COUNT_FACTOR_KEY = "_UserFormsControlCount"
- Const CMACRO_USER_FORMS_CONTROL_TYPE_COUNT_FACTOR_KEY = "_UserFormsControlTypeCount"
-
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "getVBAMacroIssueCost"
-
- Dim baseIssueKey As String
- Dim ret As Long
- ret = 0
-
- If Not aAnalysis.HasMacros Then GoTo FinalExit
-
- 'Fetch VBA Macro Cost Factors - if required
- baseIssueKey = getAppSpecificApplicationName & "_" & CSTR_ISSUE_VBA_MACROS & "_" & CSTR_SUBISSUE_PROPERTIES
-
- 'Num Lines - Costing taken from "Lines in Unique Modules"
- If aAnalysis.MacroTotalNumLines > 0 Then
- ret = ret + aAnalysis.MacroTotalNumLines * _
- getValueFromXLSorDict(logWb, aAnalysis, mIssuesCostDict, _
- baseIssueKey & CMACRO_NUM_OF_LINES_FACTOR_KEY, baseIssueKey, _
- CMACRO_ROW_OFFSET_UNIQUE_LINES_COST, CCOST_COL_OFFSET)
- End If
- 'User Forms Count
- If aAnalysis.MacroNumUserForms > 0 Then
- ret = ret + aAnalysis.MacroNumUserForms * _
- getValueFromXLSorDict(logWb, aAnalysis, mIssuesCostDict, _
- baseIssueKey & CMACRO_USER_FORMS_COUNT_FACTOR_KEY, baseIssueKey, _
- CMACRO_ROW_OFFSET_USER_FORMS_COUNT_COST, CCOST_COL_OFFSET)
- End If
- 'User Forms Control Count
- If aAnalysis.MacroNumUserFormControls > 0 Then
- ret = ret + aAnalysis.MacroNumUserFormControls * _
- getValueFromXLSorDict(logWb, aAnalysis, mIssuesCostDict, _
- baseIssueKey & CMACRO_USER_FORMS_CONTROL_COUNT_FACTOR_KEY, baseIssueKey, _
- CMACRO_ROW_OFFSET_USER_FORMS_CONTROL_COUNT_COST, CCOST_COL_OFFSET)
- End If
- 'User Forms Control Type Count
- If aAnalysis.MacroNumUserFormControlTypes > 0 Then
- ret = ret + aAnalysis.MacroNumUserFormControlTypes * getValueFromXLSorDict(logWb, aAnalysis, mIssuesCostDict, _
- baseIssueKey & CMACRO_USER_FORMS_CONTROL_TYPE_COUNT_FACTOR_KEY, baseIssueKey, CMACRO_ROW_OFFSET_USER_FORMS_CONTROL_TYPE_COUNT_COST, CCOST_COL_OFFSET)
- End If
-
-
-FinalExit:
- getVBAMacroIssueCost = ret
- Exit Function
-
-HandleErrors:
- ret = 0
- WriteDebug currentFunctionName & " : path " & aAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Function
-Function getMacroExtRefIssueCost(logWb As WorkBook, aAnalysis As DocumentAnalysis) As Long
- Const CMACRO_ROW_OFFSET_NUM_EXTERNAL_REFS_COST = 2
- Const CMACRO_NUM_EXTERNAL_REFS_FACTOR_KEY = "_ExternalRefs"
-
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "getMacroExtRefIssueCost"
- Dim baseIssueKey As String
- Dim ret As Long
- ret = 0
-
- If aAnalysis.MacroNumExternalRefs <= 0 Then GoTo FinalExit
-
- 'Fetch External Ref Cost Factors
- baseIssueKey = getAppSpecificApplicationName & "_" & CSTR_ISSUE_PORTABILITY & "_" & _
- CSTR_SUBISSUE_EXTERNAL_REFERENCES_IN_MACRO
- ret = ret + aAnalysis.MacroNumExternalRefs * _
- getValueFromXLSorDict(logWb, aAnalysis, mIssuesCostDict, _
- baseIssueKey & CMACRO_NUM_EXTERNAL_REFS_FACTOR_KEY, baseIssueKey, _
- CMACRO_ROW_OFFSET_NUM_EXTERNAL_REFS_COST, CCOST_COL_OFFSET)
-
-FinalExit:
- getMacroExtRefIssueCost = ret
- Exit Function
-
-HandleErrors:
- ret = 0
- WriteDebug currentFunctionName & " : path " & aAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Function
-Function getIssueValueFromXLSorDict(logWb As WorkBook, aAnalysis As DocumentAnalysis, dict As Scripting.Dictionary, _
- key As String, row As Long, column As Long) As Long
- 'Error handling not required
- getIssueValueFromXLSorDict = getValueFromXLSorDict(logWb, aAnalysis, dict, key, key, row, column)
-End Function
-
-Function getValueFromXLSorDict(logWb As WorkBook, aAnalysis As DocumentAnalysis, dict As Scripting.Dictionary, _
- dictKey As String, xlsKey As String, row As Long, column As Long) As Long
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "getValueFromXLSorDict"
-
- Dim ret As Long
- ret = 0
-
- If dict.Exists(dictKey) Then
- ret = dict.item(dictKey)
- Else
- On Error Resume Next
- ret = logWb.Names(xlsKey).RefersToRange.Cells(row, column).value
- 'Log as error missing key
- If Err.Number <> 0 Then
- WriteDebug currentFunctionName & _
- " : Issue Cost Key - " & xlsKey & ": label missing from results.xlt Costs sheet, check sheet and add/ check spelling label" & Err.Number & " " & Err.Description & " " & Err.Source
- WriteDebug currentFunctionName & " : dictKey " & dictKey & " : xlsKey " & xlsKey & " : " & Err.Number & " " & Err.Description & " " & Err.Source
- ret = 0
- End If
- On Error GoTo HandleErrors
- dict.Add dictKey, ret
- End If
-
-FinalExit:
- getValueFromXLSorDict = ret
- Exit Function
-
-HandleErrors:
- ret = 0
- WriteDebug currentFunctionName & " : path " & aAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Function
-Function isMacroIssue(myIssue As IssueInfo)
- 'Error handling not required
- isMacroIssue = False
-
- If myIssue.IssueTypeXML = CSTR_ISSUE_VBA_MACROS Or _
- (myIssue.IssueTypeXML = CSTR_ISSUE_PORTABILITY And _
- myIssue.SubTypeXML = CSTR_SUBISSUE_EXTERNAL_REFERENCES_IN_MACRO) Then
- isMacroIssue = True
- End If
-End Function
-Sub CountDocIssuesForDoc(issueClass As EnumDocOverallIssueClass, aAnalysis As DocumentAnalysis)
- 'Error handling not required
-
- If issueClass = enMinor Then
- aAnalysis.MinorIssuesCount = aAnalysis.MinorIssuesCount + 1
- End If
- ' Macro issues are counted during analysis
- ' Complex issues is calculated from: mIssues.count - mMinorIssuesCount - mMacroIssuesCount
-End Sub
-Sub SetOverallDocIssueClassification(issueClass As EnumDocOverallIssueClass, aAnalysis As DocumentAnalysis)
- 'Error handling not required
-
- If aAnalysis.DocOverallIssueClass = enComplex Then Exit Sub
-
- If issueClass = enComplex Then
- aAnalysis.DocOverallIssueClass = enComplex
- Else
- aAnalysis.DocOverallIssueClass = enMinor
- End If
-End Sub
-Function getDocIssueClassification(logWb As WorkBook, myIssue As IssueInfo) As EnumDocOverallIssueClass
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "getDocIssueClassification"
- Dim issueKey As String
- Dim bRet As Boolean
- bRet = False
- getDocIssueClassification = enMinor
-
- issueKey = getAppSpecificApplicationName & "_" & myIssue.IssueTypeXML & "_" & myIssue.SubTypeXML
- If mIssuesClassificationDict.Exists(issueKey) Then
- bRet = mIssuesClassificationDict.item(issueKey)
- Else
- On Error Resume Next
- bRet = logWb.Names(issueKey).RefersToRange.Cells(1, 0).value
- 'Log as error missing key
- If Err.Number <> 0 Then
- WriteDebug currentFunctionName & _
- " : Issue Cost Key - " & issueKey & ": label missing from results.xlt Costs sheet, check sheet and add/ check spelling label" & Err.Number & " " & Err.Description & " " & Err.Source
- bRet = False
- End If
- On Error GoTo HandleErrors
- mIssuesClassificationDict.Add issueKey, bRet
- End If
-
-
-FinalExit:
- If bRet Then
- getDocIssueClassification = enComplex
- End If
- Exit Function
-
-HandleErrors:
- bRet = False
- WriteDebug currentFunctionName & " : issueKey " & issueKey & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Function
-
-Function getDocOverallIssueClassificationAsString(docIssueClass As EnumDocOverallIssueClass) As String
- Dim Str As String
- 'Error handling not required
-
- Select Case docIssueClass
- Case enComplex
- Str = RID_STR_COMMON_ISSUE_CLASS_COMPLEX
- Case enMinor
- Str = RID_STR_COMMON_ISSUE_CLASS_MINOR
- Case Else
- Str = RID_STR_COMMON_ISSUE_CLASS_NONE
- End Select
-
- getDocOverallIssueClassificationAsString = Str
-End Function
-
-Public Function getDocOverallMacroClassAsString(docMacroClass As EnumDocOverallMacroClass) As String
- Dim Str As String
- 'Error handling not required
-
- Select Case docMacroClass
- Case enMacroComplex
- Str = RID_STR_COMMON_MACRO_CLASS_COMPLEX
- Case enMacroMedium
- Str = RID_STR_COMMON_MACRO_CLASS_MEDIUM
- Case enMacroSimple
- Str = RID_STR_COMMON_MACRO_CLASS_SIMPLE
- Case Else
- Str = RID_STR_COMMON_MACRO_CLASS_NONE
- End Select
-
- getDocOverallMacroClassAsString = Str
-End Function
-
-Function WriteDocRefDetails(wsRefDetails As Worksheet, DetailsRow As Long, _
- aAnalysis As DocumentAnalysis, fileName As String) As Long
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "WriteDocRefDetails"
-
- Dim myIssue As IssueInfo
- Dim rowIndex As Long
- rowIndex = DetailsRow
-
- Dim index As Integer
-
- 'Output References for Docs with Macros
- If aAnalysis.HasMacros And (aAnalysis.References.count > 0) Then
- For index = 1 To aAnalysis.References.count
- Set myIssue = aAnalysis.References(index)
- OutputReferenceAttributes wsRefDetails, rowIndex, aAnalysis, myIssue, fileName
- rowIndex = rowIndex + 1
- Set myIssue = Nothing
- Next index
- End If
-
- WriteDocRefDetails = rowIndex
-
-FinalExit:
- Exit Function
-
-HandleErrors:
- WriteDebug currentFunctionName & _
- " : path " & aAnalysis.name & ": " & _
- " : row " & DetailsRow & ": " & _
- Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Function
-Sub OutputReferenceAttributes(wsIssueDetails As Worksheet, rowIndex As Long, _
- aAnalysis As DocumentAnalysis, myIssue As IssueInfo, fileName As String)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "OutputReferenceAttributes"
-
- Dim strAttributes As String
-
- With myIssue
- SetWorksheetCellValueToString wsIssueDetails, rowIndex, CREF_DETDOCNAME, fileName
- SetWorksheetCellValueToString wsIssueDetails, rowIndex, CREF_DETDOCAPPLICATION, aAnalysis.Application
-
- strAttributes = .Values(RID_STR_COMMON_ATTRIBUTE_MAJOR) & "." & .Values(RID_STR_COMMON_ATTRIBUTE_MINOR)
- strAttributes = IIf(strAttributes = "0.0" Or strAttributes = ".", .Values(RID_STR_COMMON_ATTRIBUTE_NAME), _
- .Values(RID_STR_COMMON_ATTRIBUTE_NAME) & " " & .Values(RID_STR_COMMON_ATTRIBUTE_MAJOR) & _
- "." & .Values(RID_STR_COMMON_ATTRIBUTE_MINOR))
- SetWorksheetCellValueToString wsIssueDetails, rowIndex, CREF_DETREFERENCE, strAttributes
-
- If .Values(RID_STR_COMMON_ATTRIBUTE_TYPE) = RID_STR_COMMON_ATTRIBUTE_PROJECT Then
- SetWorksheetCellValueToString wsIssueDetails, rowIndex, CREF_DETDESCRIPTION, RID_STR_COMMON_ATTRIBUTE_PROJECT
- Else
- SetWorksheetCellValueToString wsIssueDetails, rowIndex, CREF_DETDESCRIPTION, _
- IIf(.Values(RID_STR_COMMON_ATTRIBUTE_DESCRIPTION) <> "", .Values(RID_STR_COMMON_ATTRIBUTE_DESCRIPTION), RID_STR_COMMON_NA)
- End If
-
-
- If .Values(RID_STR_COMMON_ATTRIBUTE_ISBROKEN) <> RID_STR_COMMON_ATTRIBUTE_BROKEN Then
- SetWorksheetCellValueToString wsIssueDetails, rowIndex, CREF_DETLOCATION, _
- .Values(RID_STR_COMMON_ATTRIBUTE_FILE)
- Else
- SetWorksheetCellValueToString wsIssueDetails, rowIndex, CREF_DETLOCATION, _
- RID_STR_COMMON_NA
- End If
-
- 'Reference Details
- strAttributes = RID_STR_COMMON_ATTRIBUTE_TYPE & ": " & .Values(RID_STR_COMMON_ATTRIBUTE_TYPE) & vbLf
- strAttributes = strAttributes & RID_STR_COMMON_ATTRIBUTE_PROPERTIES & ": " & _
- .Values(RID_STR_COMMON_ATTRIBUTE_BUILTIN) & " " & .Values(RID_STR_COMMON_ATTRIBUTE_ISBROKEN)
- strAttributes = IIf(.Values(RID_STR_COMMON_ATTRIBUTE_GUID) <> "", _
- strAttributes & vbLf & RID_STR_COMMON_ATTRIBUTE_GUID & ": " & .Values(RID_STR_COMMON_ATTRIBUTE_GUID), _
- strAttributes)
- SetWorksheetCellValueToString wsIssueDetails, rowIndex, CREF_DETATTRIBUTES, strAttributes
-
- SetWorksheetCellValueToString wsIssueDetails, rowIndex, CREF_DETNAMEANDPATH, aAnalysis.name
- End With
-FinalExit:
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & _
- " : path " & aAnalysis.name & ": " & _
- " : rowIndex " & rowIndex & ": " & _
- " : myIssue " & myIssue.IssueTypeXML & "_" & myIssue.SubTypeXML & ": " & _
- Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-Sub OutputCommonIssueAttributes(wsIssueDetails As Worksheet, rowIndex As Long, _
- myIssue As IssueInfo)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "OutputCommonIssueAttributes"
-
- Dim index As Integer
- Dim strAttributes As String
-
- strAttributes = ""
- For index = 1 To myIssue.Attributes.count
- strAttributes = strAttributes & myIssue.Attributes(index) & " - " & _
- myIssue.Values(index)
- strAttributes = strAttributes & IIf(index <> myIssue.Attributes.count, vbLf, "")
-
- Next index
- SetWorksheetCellValueToString wsIssueDetails, rowIndex, CISSUE_DETATTRIBUTES, strAttributes
-
-FinalExit:
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & _
- " : rowIndex " & rowIndex & ": " & _
- " : myIssue " & myIssue.IssueTypeXML & "_" & myIssue.SubTypeXML & ": " & _
- Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-'Store issue cost and factor costs across all documents
-Sub CollateIssueAndFactorCountsAcrossAllDocs(aAnalysis As DocumentAnalysis, myIssue As IssueInfo, fileName As String)
- Const CSTR_USER_FORM = "User Form"
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "CollateIssueAndFactorCountsAcrossAllDocs"
-
- 'Don't want to cost ISSUE_INFORMATION issues
- If myIssue.IssueTypeXML = CSTR_ISSUE_INFORMATION Then Exit Sub
-
- Dim issueKey As String
- issueKey = getAppSpecificApplicationName & "_" & myIssue.IssueTypeXML & "_" & myIssue.SubTypeXML
-
- 'Store costing metrics for Issue
- AddIssueAndOneToDict issueKey
-
- 'Store prepeared issue for costing metrics
- If myIssue.Preparable Then
- AddPreparedIssueAndOneToDict issueKey & "_Prepared"
- End If
-
- 'Additional costing Factors output for VB macros
- If (myIssue.IssueTypeXML = CSTR_ISSUE_VBA_MACROS) And _
- (myIssue.SubTypeXML <> CSTR_SUBISSUE_MACRO_PASSWORD_PROTECTION) Then
-
- 'Unique Macro Module and Line count
- AddMacroModuleHashToMacroDict myIssue
-
- 'Line count
- AddIssueAndValToDict issueKey & "_" & CSTR_SUBISSUE_VBA_MACROS_NUMLINES, myIssue, _
- RID_STR_COMMON_ATTRIBUTE_NUMBER_OF_LINES
-
- 'User From info
- If myIssue.SubLocation = CSTR_USER_FORM Then
- AddIssueAndOneToDict issueKey & "_" & CSTR_SUBISSUE_VBA_MACROS_USERFORMS_COUNT
-
- AddIssueAndValToDict issueKey & "_" & CSTR_SUBISSUE_VBA_MACROS_USERFORMS_CONTROL_COUNT, myIssue, _
- RID_STR_COMMON_ATTRIBUTE_CONTROLS
- End If
- 'Additional costing Factors output for External References
- ElseIf (myIssue.IssueTypeXML = CSTR_ISSUE_PORTABILITY And _
- myIssue.SubTypeXML = CSTR_SUBISSUE_EXTERNAL_REFERENCES_IN_MACRO) Then
-
- AddIssueAndValToDict issueKey & "_" & CSTR_SUBISSUE_EXTERNAL_REFERENCES_IN_MACRO_COUNT, myIssue, _
- RID_STR_COMMON_ATTRIBUTE_NON_PORTABLE_EXTERNAL_REFERENCES_COUNT
- End If
-
-FinalExit:
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & _
- " : path " & aAnalysis.name & ": " & _
- " : myIssue " & myIssue.IssueTypeXML & "_" & myIssue.SubTypeXML & ": " & _
- Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-Sub OutputCommonIssueDetails(wsIssueDetails As Worksheet, rowIndex As Long, _
- aAnalysis As DocumentAnalysis, myIssue As IssueInfo, fileName As String)
- Const CSTR_USER_FORM = "User Form"
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "OutputCommonIssueDetails"
-
- SetWorksheetCellValueToString wsIssueDetails, rowIndex, CISSUE_DETDOCNAME, fileName
- SetWorksheetCellValueToString wsIssueDetails, rowIndex, CISSUE_DETDOCAPPLICATION, aAnalysis.Application
- SetWorksheetCellValueToString wsIssueDetails, rowIndex, CISSUE_DETTYPE, myIssue.IssueType
- SetWorksheetCellValueToString wsIssueDetails, rowIndex, CISSUE_DETSUBTYPE, myIssue.SubType
- SetWorksheetCellValueToString wsIssueDetails, rowIndex, CISSUE_DETLOCATION, myIssue.Location
- SetWorksheetCellValueToString wsIssueDetails, rowIndex, CISSUE_DETSUBLOCATION, _
- IIf(myIssue.SubLocation = "", RID_STR_COMMON_NA, myIssue.SubLocation)
- SetWorksheetCellValueToVariant wsIssueDetails, rowIndex, CISSUE_DETLINE, _
- IIf(myIssue.Line = -1, RID_STR_COMMON_NA, myIssue.Line)
- SetWorksheetCellValueToString wsIssueDetails, rowIndex, CISSUE_DETCOLUMN, _
- IIf(myIssue.column = "", RID_STR_COMMON_NA, myIssue.column)
- SetWorksheetCellValueToString wsIssueDetails, rowIndex, CISSUE_DETNAMEANDPATH, aAnalysis.name
-
-
-FinalExit:
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & _
- " : path " & aAnalysis.name & ": " & _
- " : rowIndex " & rowIndex & ": " & _
- " : myIssue " & myIssue.IssueTypeXML & "_" & myIssue.SubTypeXML & ": " & _
- Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-Sub AddIssueAndBoolValToDict(issueKey As String, issue As IssueInfo, valKey As String)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "AddIssueAndBoolValToDict"
-
- If mIssuesDict.Exists(issueKey) Then
- mIssuesDict.item(issueKey) = mIssuesDict.item(issueKey) + _
- IIf(issue.Values(valKey) > 0, 1, 0)
- Else
- mIssuesDict.Add issueKey, IIf(issue.Values(valKey) > 0, 1, 0)
- End If
-FinalExit:
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & _
- " : issueKey " & issueKey & ": " & _
- " : valKey " & valKey & ": " & _
- Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-Sub AddIssueAndValToDict(issueKey As String, issue As IssueInfo, valKey As String)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "AddIssueAndValToDict"
-
- If mIssuesDict.Exists(issueKey) Then
- mIssuesDict.item(issueKey) = mIssuesDict.item(issueKey) + issue.Values(valKey)
- Else
- mIssuesDict.Add issueKey, issue.Values(valKey)
- End If
-FinalExit:
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & _
- " : issueKey " & issueKey & ": " & _
- " : valKey " & valKey & ": " & _
- Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-Sub AddMacroModuleHashToMacroDict(issue As IssueInfo)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- Dim issueKey As String
- Dim issueVal As String
- currentFunctionName = "AddMacroModuleHashToMacroDict"
-
- issueKey = issue.Values(RID_STR_COMMON_ATTRIBUTE_SIGNATURE)
- If issueKey = RID_STR_COMMON_NA Then Exit Sub
-
- If Not mMacroDict.Exists(issueKey) Then
- mMacroDict.Add issueKey, issue.Values(RID_STR_COMMON_ATTRIBUTE_NUMBER_OF_LINES)
- End If
-FinalExit:
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & _
- " : issueKey " & issueKey & ": " & _
- Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-Sub AddIssueAndOneToDict(key As String)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "AddIssueAndOneToDict"
-
- If mIssuesDict.Exists(key) Then
- mIssuesDict.item(key) = mIssuesDict.item(key) + 1
- Else
- mIssuesDict.Add key, 1
- End If
-FinalExit:
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & " : key " & key & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-Sub AddPreparedIssueAndOneToDict(key As String)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "AddPreparedIssueAndOneToDict"
-
- If mPreparedIssuesDict.Exists(key) Then
- mPreparedIssuesDict.item(key) = mPreparedIssuesDict.item(key) + 1
- Else
- mPreparedIssuesDict.Add key, 1
- End If
-FinalExit:
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & " : key " & key & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-Function GetExcelInstance() As Excel.Application
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "GetExcelInstance"
-
- Dim xl As Excel.Application
- On Error Resume Next
- 'Try and get an existing instance
- Set xl = GetObject(, "Excel.Application")
- If Err.Number = 429 Then
- Set xl = CreateObject("Excel.Application")
- ElseIf Err.Number <> 0 Then
- Set xl = Nothing
- MsgBox "Error: " & Err.Description
- Exit Function
- End If
- Set GetExcelInstance = xl
- Set xl = Nothing
-FinalExit:
- Exit Function
-
-HandleErrors:
- WriteDebug currentFunctionName & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Function
-
-Sub WriteOverview(logWb As WorkBook, DocCount As DocumentCount, templateCount As DocumentCount, _
- macroClasses As DocMacroClassifications, issueClasses As DocIssueClassifications)
- Const COV_ISSUECLASS_COMPLEX = "MAW_ISSUECLASS_COMPLEX"
- Const COV_ISSUECLASS_MINOR = "MAW_ISSUECLASS_MINOR"
- Const COV_ISSUECLASS_NONE = "MAW_ISSUECLASS_NONE"
-
- Const COV_MACROCLASS_COMPLEX = "MAW_MACROCLASS_COMPLEX"
- Const COV_MACROCLASS_MEDIUM = "MAW_MACROCLASS_MEDIUM"
- Const COV_MACROCLASS_SIMPLE = "MAW_MACROCLASS_SIMPLE"
- Const COV_MACROCLASS_NONE = "MAW_MACROCLASS_NONE"
-
- Const COV_ISSUECOUNT_COMPLEX = "MAW_ISSUECOUNT_COMPLEX"
- Const COV_ISSUECOUNT_MINOR = "MAW_ISSUECOUNT_MINOR"
-
- Const COV_MODDATES_LESS3MONTHS = "MAW_MODDATES_LESS3MONTHS"
- Const COV_MODDATES_3TO6MONTHS = "MAW_MODDATES_3TO6MONTHS"
- Const COV_MODDATES_6TO12MONTHS = "MAW_MODDATES_6TO12MONTHS"
- Const COV_MODDATES_MORE12MONTHS = "MAW_MODDATES_MORE12MONTHS"
-
- Const COV_DOC_MIGRATION_COSTS = "Document_Migration_Costs"
- Const COV_DOC_PREPARABLE_COSTS = "Document_Migration_Preparable_Costs"
- Const COV_MACRO_MIGRATION_COSTS = "Macro_Migration_Costs"
-
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "WriteOverview"
-
- Dim appName As String
- appName = getAppSpecificApplicationName
-
- 'OV - Title
- SetWorkbookNameValueToString logWb, COVERVIEW_TITLE_LABEL, GetTitle
- SetWorkbookNameValueToVariant logWb, "AnalysisDate", Now
- SetWorkbookNameValueToString logWb, "AnalysisVersion", _
- RID_STR_COMMON_OV_VERSION_STR & ": " & GetTitle & " " & GetVersion
-
- 'OV - Number of Documents Analyzed
- AddLongToWorkbookNameValue logWb, CNUMBERDOC_ALL & getAppSpecificDocExt, DocCount.numDocsAnalyzed
- AddLongToWorkbookNameValue logWb, CNUMBERDOC_ALL & getAppSpecificTemplateExt, templateCount.numDocsAnalyzed
-
- 'OV - Documents with Document Migration Issues (excludes macro issues)
- AddLongToWorkbookNameValue logWb, appName & "_" & COV_ISSUECLASS_COMPLEX, issueClasses.complex
- AddLongToWorkbookNameValue logWb, appName & "_" & COV_ISSUECLASS_MINOR, issueClasses.Minor
- AddLongToWorkbookNameValue logWb, appName & "_" & COV_ISSUECLASS_NONE, issueClasses.None
-
- 'OV - Documents with Macro Migration Issues
- AddLongToWorkbookNameValue logWb, appName & "_" & COV_MACROCLASS_COMPLEX, macroClasses.complex
- AddLongToWorkbookNameValue logWb, appName & "_" & COV_MACROCLASS_MEDIUM, macroClasses.Medium
- AddLongToWorkbookNameValue logWb, appName & "_" & COV_MACROCLASS_SIMPLE, macroClasses.Simple
- AddLongToWorkbookNameValue logWb, appName & "_" & COV_MACROCLASS_NONE, macroClasses.None
-
- 'OV - Document Modification Dates
- Dim modDates As DocModificationDates
- Call GetDocModificationDates(modDates)
-
- SetWorkbookNameValueToLong logWb, COV_MODDATES_LESS3MONTHS, modDates.lessThanThreemonths
- SetWorkbookNameValueToLong logWb, COV_MODDATES_3TO6MONTHS, modDates.threeToSixmonths
- SetWorkbookNameValueToLong logWb, COV_MODDATES_6TO12MONTHS, modDates.sixToTwelvemonths
- SetWorkbookNameValueToLong logWb, COV_MODDATES_MORE12MONTHS, modDates.greaterThanOneYear
-
-
- If InDocPreparation Then
- 'OV - Document Migration Issues(excludes macro issues)
- AddLongToWorkbookNameValue logWb, appName & "_" & COV_ISSUECOUNT_COMPLEX, _
- DocCount.numComplexIssues + templateCount.numComplexIssues
- AddLongToWorkbookNameValue logWb, appName & "_" & COV_ISSUECOUNT_MINOR, _
- DocCount.numMinorIssues + templateCount.numMinorIssues
-
- 'OV - Document Migration Costs
- AddLongToWorkbookNameValue logWb, appName & "_" & COV_DOC_MIGRATION_COSTS, _
- DocCount.totalDocIssuesCosts + templateCount.totalDocIssuesCosts
-
- 'OV - Document Migration Preparable Costs
- AddLongToWorkbookNameValue logWb, COV_DOC_PREPARABLE_COSTS, _
- DocCount.totalPreparableIssuesCosts + templateCount.totalPreparableIssuesCosts
-
- 'OV - Macro Migration Costs
- AddLongToWorkbookNameValue logWb, appName & "_" & COV_MACRO_MIGRATION_COSTS, _
- DocCount.totalMacroCosts + templateCount.totalMacroCosts
- End If
-
- 'OV - Internal Attributes
- AddLongToWorkbookNameValue logWb, appName & "_" & "TotalDocsAnalysedWithIssues", _
- DocCount.numDocsAnalyzedWithIssues + templateCount.numDocsAnalyzedWithIssues
-
-FinalExit:
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & " : Problem writing overview: " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-Sub SetupDAWResultsSpreadsheet(logWb As WorkBook, fontName As String, fontSize As Long)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "SetupDAWResultsSpreadsheet"
- Dim bSetupRun As Boolean
- bSetupRun = CBool(GetWorkbookNameValueAsLong(logWb, COV_DAW_SETUP_SHEETS_RUN_LBL))
-
- If bSetupRun Then Exit Sub
-
- 'Setup Text Boxes
- SetupSheetTextBox logWb, RID_STR_COMMON_RESULTS_SHEET_NAME_OVERVIEW, COV_DOC_MOD_DATES_COMMENT_TXB, _
- RID_STR_COMMON_OV_DOC_MOD_DATES_COMMENT_TITLE, RID_STR_COMMON_OV_DOC_MOD_DATES_COMMENT_BODY, _
- CCOMMENTS_FONT_SIZE, fontName
- SetupSheetTextBox logWb, RID_STR_COMMON_RESULTS_SHEET_NAME_OVERVIEW, COV_DOC_MOD_DATES_LEGEND_TXB, _
- RID_STR_COMMON_OV_LEGEND_TITLE, RID_STR_COMMON_OV_DOC_MOD_DATES_LEGEND_BODY, fontSize, fontName
- SetupSheetTextBox logWb, RID_STR_COMMON_RESULTS_SHEET_NAME_OVERVIEW, COV_DOC_MACRO_COMMENT_TXB, _
- RID_STR_COMMON_OV_DOC_MACRO_COMMENT_TITLE, RID_STR_COMMON_OV_DOC_MACRO_COMMENT_BODY, _
- CCOMMENTS_FONT_SIZE, fontName
- SetupSheetTextBox logWb, RID_STR_COMMON_RESULTS_SHEET_NAME_OVERVIEW, COV_DOC_MACRO_LEGEND_TXB, _
- RID_STR_COMMON_OV_LEGEND_TITLE, RID_STR_COMMON_OV_DOC_MACRO_LEGEND_BODY, fontSize, fontName
- Dim monthLimit As Long
- monthLimit = GetIssuesLimitInDays / CNUMDAYS_IN_MONTH
- SetWorkbookNameValueToString logWb, COV_HIGH_LEVEL_ANALYSIS_LBL, _
- IIf(monthLimit <> CMAX_LIMIT, _
- ReplaceTopicTokens(RID_STR_COMMON_OV_HIGH_LEVEL_ANALYSIS_DAW, CR_TOPIC, CStr(monthLimit)), _
- RID_STR_COMMON_OV_HIGH_LEVEL_ANALYSIS_PAW_NO_LIMIT)
-
- SetupSheetTextBox logWb, RID_STR_COMMON_RESULTS_SHEET_NAME_OVERVIEW, COV_DOC_ANALYSIS_COMMENT_TXB, _
- RID_STR_COMMON_OV_DOC_ANALYSIS_COMMENT_TITLE, RID_STR_COMMON_OV_DOC_ANALYSIS_COMMENT_BODY, _
- CCOMMENTS_FONT_SIZE, fontName
- SetupSheetTextBox logWb, RID_STR_COMMON_RESULTS_SHEET_NAME_OVERVIEW, COV_DOC_ANALYSIS_LEGEND_DAW_TXB, _
- RID_STR_COMMON_OV_LEGEND_TITLE, RID_STR_COMMON_OV_DOC_ANALYSIS_DAW_LEGEND_BODY, fontSize, fontName
-
- 'Setup Chart Titles
- SetupSheetChartTitles logWb, RID_STR_COMMON_RESULTS_SHEET_NAME_OVERVIEW, COV_DOC_MOD_DATES_CHART, _
- RID_STR_COMMON_OV_DOC_MOD_DATES_CHART_TITLE
- SetupSheetChartTitles logWb, RID_STR_COMMON_RESULTS_SHEET_NAME_OVERVIEW, COV_DOC_MACRO_CHART, _
- RID_STR_COMMON_OV_DOC_MACRO_CHART_TITLE
- SetupSheetChartTitles logWb, RID_STR_COMMON_RESULTS_SHEET_NAME_OVERVIEW, COV_DOC_ANALYSIS_CHART, _
- RID_STR_COMMON_OV_DOC_ANALYSIS_CHART_TITLE
-
- 'Set selection to top cell of Overview
- logWb.Sheets(RID_STR_COMMON_RESULTS_SHEET_NAME_OVERVIEW).Range("A1").Select
-
- bSetupRun = True
- SetWorkbookNameValueToBoolean logWb, COV_DAW_SETUP_SHEETS_RUN_LBL, bSetupRun
-FinalExit:
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & " : Problem setting up spreadsheet for DAW: " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-Sub SetupPAWResultsSpreadsheet(logWb As WorkBook, fontName As String, fontSize As Long)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "SetupPAWResultsSpreadsheet"
- Dim bSetupRun As Boolean
- bSetupRun = CBool(GetWorkbookNameValueAsLong(logWb, COV_PAW_SETUP_SHEETS_RUN_LBL))
-
- If bSetupRun Then Exit Sub
-
- 'Costs
- logWb.Names(COV_COSTS_PREPISSUE_COUNT_COL_LBL).RefersToRange.EntireColumn.Hidden = False
-
- 'Setup Text Boxes
- SetupSheetTextBox logWb, RID_STR_COMMON_RESULTS_SHEET_NAME_OVERVIEW, COV_DOC_MOD_DATES_LEGEND_TXB, _
- RID_STR_COMMON_OV_LEGEND_TITLE, RID_STR_COMMON_OV_DOC_MOD_DATES_LEGEND_BODY, fontSize, fontName
- SetupSheetTextBox logWb, RID_STR_COMMON_RESULTS_SHEET_NAME_OVERVIEW, COV_DOC_MACRO_LEGEND_TXB, _
- RID_STR_COMMON_OV_LEGEND_TITLE, RID_STR_COMMON_OV_DOC_MACRO_LEGEND_BODY, fontSize, fontName
- SetWorkbookNameValueToString logWb, COV_HIGH_LEVEL_ANALYSIS_LBL, _
- RID_STR_COMMON_OV_HIGH_LEVEL_ANALYSIS_PAW_NO_LIMIT
- SetupSheetTextBox logWb, RID_STR_COMMON_RESULTS_SHEET_NAME_OVERVIEW, COV_DOC_ANALYSIS_LEGEND_PAW_TXB, _
- RID_STR_COMMON_OV_LEGEND_TITLE, RID_STR_COMMON_OV_DOC_ANALYSIS_PAW_LEGEND_BODY, fontSize, fontName
-
- 'Setup Chart Titles
- SetupSheetChartTitles logWb, RID_STR_COMMON_RESULTS_SHEET_NAME_OVERVIEW, COV_DOC_MOD_DATES_CHART, _
- RID_STR_COMMON_OV_DOC_MOD_DATES_CHART_TITLE
- SetupSheetChartTitles logWb, RID_STR_COMMON_RESULTS_SHEET_NAME_OVERVIEW, COV_DOC_MACRO_CHART, _
- RID_STR_COMMON_OV_DOC_MACRO_CHART_TITLE
- SetupSheetChartTitles logWb, RID_STR_COMMON_RESULTS_SHEET_NAME_OVERVIEW, COV_DOC_ANALYSIS_CHART, _
- RID_STR_COMMON_OV_DOC_ANALYSIS_CHART_TITLE
-
- 'Set selection to top cell of Overview
- logWb.Sheets(RID_STR_COMMON_RESULTS_SHEET_NAME_OVERVIEW).Range("A1").Select
-
- bSetupRun = True
- SetWorkbookNameValueToBoolean logWb, COV_PAW_SETUP_SHEETS_RUN_LBL, bSetupRun
-
-FinalExit:
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & " : Problem setting up spreadsheet for PAW: " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-Sub SetupPrintRanges(logWb As WorkBook, docPropRow As Long, appIssuesRow As Long, issueDetailsRow As Long, _
- refDetailsRow As Long)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "SetupPrintRanges"
-
- 'Set Print Ranges
- If InDocPreparation Then
-
- logWb.Worksheets(RID_STR_COMMON_RESULTS_SHEET_NAME_DOCPROP).PageSetup.PrintArea = "$A1:$U" & (docPropRow + mDocPropRowOffset)
- logWb.Worksheets(RID_STR_COMMON_RESULTS_SHEET_NAME_DOCISSUE_DETAILS).PageSetup.PrintArea = "$A1:$J" & issueDetailsRow
- logWb.Worksheets(RID_STR_COMMON_RESULTS_SHEET_NAME_DOCREF_DETAILS).PageSetup.PrintArea = "$A1:$G" & refDetailsRow
- If getAppSpecificApplicationName = CAPPNAME_WORD Then
- logWb.Worksheets(RID_STR_COMMON_RESULTS_SHEET_NAME_DOCISSUES_WORD).PageSetup.PrintArea = _
- "$A1:$N" & appIssuesRow
- ElseIf getAppSpecificApplicationName = CAPPNAME_EXCEL Then
- logWb.Worksheets(RID_STR_COMMON_RESULTS_SHEET_NAME_DOCISSUES_EXCEL).PageSetup.PrintArea = _
- "$A1:$M" & appIssuesRow
- Else
- logWb.Worksheets(RID_STR_COMMON_RESULTS_SHEET_NAME_DOCISSUES_POWERPOINT).PageSetup.PrintArea = _
- "$A1:$K" & appIssuesRow
- End If
- Else
- logWb.Worksheets(RID_STR_COMMON_RESULTS_SHEET_NAME_DOCPROP).PageSetup.PrintArea = "$A1:$U" & (docPropRow + mDocPropRowOffset)
- End If
-
-FinalExit:
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & " : Problem setting print ranges: " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-Sub SetupSheetChartTitles(logWb As WorkBook, namedWorksheet As String, namedChart As String, _
- chartTitle As String)
- Const CCHART_TITLE_FONT_SIZE = 11
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "SetupSheetChartTitles"
-
- With logWb.Sheets(namedWorksheet).ChartObjects(namedChart).Chart
- .HasTitle = True
- .chartTitle.Characters.Text = chartTitle
- .chartTitle.Font.Size = CCHART_TITLE_FONT_SIZE
- End With
-
-FinalExit:
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & _
- " namedWorkSheet: " & namedWorksheet & _
- " namedChart: " & namedChart & _
- " chartTitle: " & chartTitle & _
- Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-Sub SetupSheetTextBox(logWb As WorkBook, namedWorksheet As String, _
- textBoxName As String, textBoxTitle As String, textBoxBody As String, _
- textSize As Long, fontName As String)
-
- Const CMAX_INSERTABLE_STRING_LEN = 255
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "SetupSheetTextBox"
-
- Dim strTextBody As String
- Dim allText As String
- strTextBody = ReplaceTopic2Tokens(textBoxBody, CR_STR, Chr(10), CR_PRODUCT, RID_STR_COMMON_OV_PRODUCT_STR)
-
- 'Setup Text Boxes
- logWb.Sheets(namedWorksheet).Activate
- logWb.Sheets(namedWorksheet).Shapes(textBoxName).Select
-
- '*** Workaround Excel bug: 213841 XL: Passed Strings Longer Than 255 Characters Are Truncated
- Dim I As Long
- logWb.Application.Selection.Text = ""
-
- logWb.Application.Selection.Characters.Text = textBoxTitle & Chr(10)
-
- With logWb.Application.Selection
- For I = 0 To Int(Len(strTextBody) / CMAX_INSERTABLE_STRING_LEN)
- .Characters(.Characters.count + 1).Text = Mid(strTextBody, _
- (I * CMAX_INSERTABLE_STRING_LEN) + 1, CMAX_INSERTABLE_STRING_LEN)
- Next
- End With
-
- 'Highlight title only
- With logWb.Application.Selection.Characters(start:=1, Length:=Len(textBoxTitle)).Font
- .name = fontName
- .FontStyle = "Bold"
- .Size = textSize
- End With
- With logWb.Application.Selection.Characters(start:=Len(textBoxTitle) + 1, _
- Length:=Len(strTextBody) + 1).Font
- .name = fontName
- .FontStyle = "Regular"
- .Size = textSize
- End With
-
-FinalExit:
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & _
- " namedWorkSheet: " & namedWorksheet & _
- " textBoxName: " & textBoxName & _
- " textBoxTitle: " & textBoxTitle & _
- " textBoxBody: " & textBoxBody & _
- " textSize: " & textSize & _
- Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-Function GetWorkbookNameValueAsLong(logWb As WorkBook, name As String) As Long
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "GetWorkbookNameValueAsLong"
-
- GetWorkbookNameValueAsLong = logWb.Names(name).RefersToRange.Cells(1, 1).value
-
-FinalExit:
- Exit Function
-
-HandleErrors:
- GetWorkbookNameValueAsLong = 0
- WriteDebug currentFunctionName & " : name " & name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Function
-
-Function GetWorksheetCellValueAsLong(logWs As Worksheet, row As Long, col As Long) As Long
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "GetWorksheetCellValueAsLong"
-
- GetWorksheetCellValueAsLong = logWs.Cells(row, col).value
-
-FinalExit:
- Exit Function
-
-HandleErrors:
- WriteDebug currentFunctionName & _
- " : row " & row & _
- " : col " & col & _
- Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Function
-
-Function GetWorksheetCellValueAsString(logWs As Worksheet, row As Long, col As Long) As String
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "GetWorksheetCellValueToString"
-
- GetWorksheetCellValueAsString = logWs.Cells(row, col).value
-
-FinalExit:
- Exit Function
-
-HandleErrors:
- GetWorksheetCellValueAsString = ""
-
- WriteDebug currentFunctionName & _
- " : row " & row & _
- " : col " & col & _
- Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Function
-
-Sub SetWorksheetCellValueToLong(logWs As Worksheet, row As Long, col As Long, val As Long)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "SetWorksheetCellValueToLong"
-
- logWs.Cells(row, col) = val
-
-FinalExit:
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & _
- " : row " & row & _
- " : col " & col & _
- " : val " & val & ": " & _
- Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-Sub SetWorksheetCellValueToInteger(logWs As Worksheet, row As Long, col As Long, intVal As Integer)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "SetWorksheetCellValueToInteger"
-
- logWs.Cells(row, col) = intVal
-
-FinalExit:
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & _
- " : row " & row & _
- " : col " & col & _
- " : intVal " & intVal & ": " & _
- Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-Sub SetWorksheetCellValueToVariant(logWs As Worksheet, row As Long, col As Long, varVal As Variant)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "SetWorksheetCellValueToInteger"
-
- logWs.Cells(row, col) = varVal
-
-FinalExit:
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & _
- " : row " & row & _
- " : col " & col & _
- " : varVal " & varVal & ": " & _
- Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-Sub SetWorksheetCellValueToString(logWs As Worksheet, row As Long, col As Long, strVal As String)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "SetWorksheetCellValueToString"
-
- logWs.Cells(row, col) = strVal
-
-FinalExit:
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & _
- " : row " & row & _
- " : col " & col & _
- " : strVal " & strVal & ": " & _
- Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-Sub SetWorkbookNameValueToBoolean(logWb As WorkBook, name As String, bVal As Boolean)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "SetWorkbookNameValueToBoolean"
-
- logWb.Names(name).RefersToRange.Cells(1, 1) = bVal
-
-FinalExit:
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & " : name " & name & " : boolean value " & bVal & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-Sub SetWorkbookNameValueToString(logWb As WorkBook, name As String, val As String)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "SetWorkbookNameValueToString"
-
- logWb.Names(name).RefersToRange.Cells(1, 1) = val
-
-FinalExit:
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & " : name " & name & " : value " & val & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-Sub SetWorkbookNameValueToLong(logWb As WorkBook, name As String, val As Long)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "SetWorkbookNameValueToLong"
-
- logWb.Names(name).RefersToRange.Cells(1, 1) = val
-
-FinalExit:
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & " : name " & name & " : value " & val & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-Sub SetWorkbookNameValueToVariant(logWb As WorkBook, name As String, val As Variant)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "SetWorkbookNameValueToVariant"
-
- logWb.Names(name).RefersToRange.Cells(1, 1) = val
-
-FinalExit:
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & " : name " & name & " : value " & val & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-Sub AddLongToWorkbookNameValue(logWb As WorkBook, name As String, val As Long)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "AddLongToWorkbookNameValue"
-
- logWb.Names(name).RefersToRange.Cells(1, 1) = logWb.Names(name).RefersToRange.Cells(1, 1).value + val
-
-FinalExit:
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & " : name " & name & " : value " & val & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-Sub AddVariantToWorkbookNameValue(logWb As WorkBook, name As String, varVal As Variant)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "AddVariantToWorkbookNameValue"
-
- logWb.Names(name).RefersToRange.Cells(1, 1) = logWb.Names(name).RefersToRange.Cells(1, 1).value + varVal
-
-FinalExit:
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & " : name " & name & " : value " & varVal & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-Sub SaveAnalysisResultsVariables(logWb As WorkBook, offsetDocIssueDetailsRow As Long, _
- offsetDocRefDetailsRow As Long)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "SaveAnalysisResultsVariables"
-
- 'OV - Internal Attributes
- SetWorkbookNameValueToLong logWb, "TotalIssuesAnalysed", offsetDocIssueDetailsRow
- SetWorkbookNameValueToLong logWb, "TotalRefsAnalysed", offsetDocRefDetailsRow
-FinalExit:
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & " : offsetDocIssueDetailsRow " & offsetDocIssueDetailsRow & _
- " : offsetDocRefDetailsRow " & offsetDocRefDetailsRow & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-Sub SetupAnalysisResultsVariables(logWb As WorkBook, _
- offsetDocPropRow As Long, offsetDocIssuesRow As Long, _
- offsetDocIssueDetailsRow As Long, offsetDocRefDetailsRow As Long)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "SetupAnalysisResultsVariables"
-
- offsetDocPropRow = GetWorkbookNameValueAsLong(logWb, CTOTAL_DOCS_ANALYZED)
- offsetDocIssueDetailsRow = GetWorkbookNameValueAsLong(logWb, "TotalIssuesAnalysed")
- offsetDocRefDetailsRow = GetWorkbookNameValueAsLong(logWb, "TotalRefsAnalysed")
- offsetDocIssuesRow = GetWorkbookNameValueAsLong(logWb, getAppSpecificApplicationName & "_" & "TotalDocsAnalysedWithIssues")
-FinalExit:
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & _
- " : offsetDocPropRow " & offsetDocPropRow & _
- " : offsetDocIssueDetailsRow " & offsetDocIssueDetailsRow & _
- " : offsetDocRefDetailsRow " & offsetDocRefDetailsRow & _
- " : offsetDocIssuesRow " & offsetDocIssuesRow & _
- Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-Sub WriteToIni(key As String, value As String)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "WriteToIni"
-
- If mIniFilePath = "" Then Exit Sub
-
- Call WritePrivateProfileString("Analysis", key, value, mIniFilePath)
-FinalExit:
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & " : key " & key & " : value " & value & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-Sub WriteToLog(key As String, value As String)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "WriteToLog"
-
- If mLogFilePath = "" Then Exit Sub
-
- Dim sSection As String
- sSection = getAppSpecificApplicationName
-
- Call WritePrivateProfileString(sSection, key, value, mLogFilePath)
-FinalExit:
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & " : key " & key & " : value " & value & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-Sub WriteDebug(value As String)
- On Error Resume Next 'Ignore errors in our error writing routines - could get circular dependency otherwise
- Static ErrCount As Long
-
- If mLogFilePath = "" Then Exit Sub
-
- Dim sSection As String
- sSection = getAppSpecificApplicationName & "Debug"
-
- If mDebugLevel > 0 Then
- Call WritePrivateProfileString(sSection, "Doc" & mDocIndex & "_debug" & ErrCount, value, mLogFilePath)
- ErrCount = ErrCount + 1
- Else
- Debug.Print
- End If
-End Sub
-Sub WriteDebugLevelTwo(value As String)
- On Error Resume Next 'Ignore errors in our error writing routines - could get circular dependency otherwise
- Static ErrCountTwo As Long
-
- If mLogFilePath = "" Then Exit Sub
-
- Dim sSection As String
- sSection = getAppSpecificApplicationName & "Debug"
-
- If mDebugLevel > 1 Then
- Call WritePrivateProfileString(sSection, "Doc" & mDocIndex & "_debug" & ErrCountTwo, "Level2: " & value, mLogFilePath)
- ErrCountTwo = ErrCountTwo + 1
- Else
- Debug.Print
- End If
-End Sub
-
-Public Function ProfileLoadDict(dict As Scripting.Dictionary, _
- lpSectionName As String, _
- inifile As String) As Long
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "ProfileLoadDict"
- Dim success As Long
- Dim c As Long
- Dim nSize As Long
- Dim KeyData As String
- Dim lpKeyName As String
- Dim ret As String
-
- ret = Space$(2048)
- nSize = Len(ret)
- success = GetPrivateProfileString( _
- lpSectionName, vbNullString, "", ret, nSize, inifile)
-
- If success Then
- ret = Left$(ret, success)
-
- Do Until ret = ""
- lpKeyName = StripNulls(ret)
- KeyData = ProfileGetItem( _
- lpSectionName, lpKeyName, "", inifile)
- dict.Add lpKeyName, KeyData
- Loop
- End If
- ProfileLoadDict = dict.count
-FinalExit:
- Exit Function
-
-HandleErrors:
- WriteDebug currentFunctionName & _
- " : dict.Count " & dict.count & _
- " : lpSectionName " & lpSectionName & _
- " : inifile " & inifile & _
- Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Function
-Private Function StripNulls(startStrg As String) As String
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "StripNulls"
- Dim pos As Long
- Dim item As String
-
- pos = InStr(1, startStrg, Chr$(0))
-
- If pos Then
-
- item = Mid$(startStrg, 1, pos - 1)
- startStrg = Mid$(startStrg, pos + 1, Len(startStrg))
- StripNulls = item
-
- End If
-
-FinalExit:
- Exit Function
-
-HandleErrors:
- WriteDebug currentFunctionName & " : startStrg " & startStrg & " : " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Function
-
-Public Function ProfileGetItem(lpSectionName As String, _
- lpKeyName As String, _
- defaultValue As String, _
- inifile As String) As String
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "ProfileGetItem"
-
- Dim success As Long
- Dim nSize As Long
- Dim ret As String
- ret = Space$(2048)
- nSize = Len(ret)
- success = GetPrivateProfileString(lpSectionName, _
- lpKeyName, _
- defaultValue, _
- ret, _
- nSize, _
- inifile)
- If success Then
- ProfileGetItem = Left$(ret, success)
- Else
- ProfileGetItem = defaultValue
- End If
-
-FinalExit:
- Exit Function
-
-HandleErrors:
- WriteDebug currentFunctionName & _
- " : lpSectionName " & lpSectionName & _
- " : lpKeyName " & lpKeyName & _
- " : defaultValue " & defaultValue & _
- " : inifile " & inifile & _
- Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Function
-
-Public Function GetDefaultPassword() As String
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "GetDefaultPassword"
-
- Static myPassword As String
-
- If myPassword = "" Then
- myPassword = ProfileGetItem("Analysis", CDEFAULT_PASSWORD, "", mIniFilePath)
- End If
-
- GetDefaultPassword = myPassword
-FinalExit:
- Exit Function
-
-HandleErrors:
- WriteDebug currentFunctionName & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Function
-
-Public Function GetVersion() As String
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "GetVersion"
-
- Static myVersion As String
-
- If myVersion = "" Then
- myVersion = ProfileGetItem("Analysis", CVERSION, "", mIniFilePath)
- End If
-
- GetVersion = myVersion
-FinalExit:
- Exit Function
-
-HandleErrors:
- WriteDebug currentFunctionName & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Function
-Public Function GetTitle() As String
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "GetTitle"
-
- Static myTitle As String
-
- If myTitle = "" Then
- myTitle = ProfileGetItem("Analysis", CTITLE, RID_STR_COMMON_ANALYSIS_STR, mIniFilePath)
- End If
-
- GetTitle = myTitle
-FinalExit:
- Exit Function
-
-HandleErrors:
- WriteDebug currentFunctionName & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Function
-
-Sub SetPrepareToNone()
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "SetPrepareToNone"
-
- Call WritePrivateProfileString("Analysis", CDOPREPARE, CStr(0), mIniFilePath)
-
-FinalExit:
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-Function CheckForAbort() As Boolean
- Dim currentFunctionName As String
- Dim bAbort As Boolean
-
- currentFunctionName = "CheckForAbort"
- bAbort = False
-
- On Error GoTo HandleErrors
-
- bAbort = CBool(ProfileGetItem("Analysis", C_ABORT_ANALYSIS, "false", mIniFilePath))
-
- 'reset the flag
- If (bAbort) Then Call WriteToIni(C_ABORT_ANALYSIS, "false")
-
-FinalExit:
- CheckForAbort = bAbort
- Exit Function
-
-HandleErrors:
- WriteDebug currentFunctionName & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Function
-
-Function CheckDoPrepare() As Boolean
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "CheckDoPrepare"
-
- Static bDoPrepare As Boolean
- Static myDoPrepare As String
-
- If myDoPrepare = "" Then
- bDoPrepare = CBool(ProfileGetItem("Analysis", _
- CDOPREPARE, "False", mIniFilePath))
- myDoPrepare = "OK"
- End If
-
- CheckDoPrepare = bDoPrepare
-FinalExit:
- Exit Function
-
-HandleErrors:
- WriteDebug currentFunctionName & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Function
-
-Function GetIssuesLimitInDays() As Long
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
-
- currentFunctionName = "GetIssuesLimitInDays"
-
- Static issuesLimit As Long
- Static myDoPrepare As String
-
- If issuesLimit = 0 Then
- issuesLimit = CLng(ProfileGetItem("Analysis", _
- CISSUES_LIMIT, CMAX_LIMIT, mIniFilePath)) * CNUMDAYS_IN_MONTH
- End If
-
- GetIssuesLimitInDays = issuesLimit
-FinalExit:
- Exit Function
-
-HandleErrors:
- WriteDebug currentFunctionName & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Function
-
-Public Sub AddIssueDetailsNote(myIssue As IssueInfo, noteNum As Long, noteStr As String, _
- Optional preStr As String)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "AddIssueDetailsNote"
-
- If IsMissing(preStr) Then
- preStr = RID_STR_COMMON_NOTE_PRE
- End If
- myIssue.Attributes.Add preStr & "[" & noteNum & "]"
- myIssue.Values.Add noteStr
-
-FinalExit:
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & " : noteNum " & noteNum & " : noteStr " & noteStr & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-Public Sub SetupWizardVariables( _
- fileList As String, storeToDir As String, resultsFile As String, _
- logFile As String, resultsTemplate As String, bOverwriteFile As Boolean, _
- bNewResultsFile As Boolean, statFileName As String, debugLevel As Long, _
- outputType As String, singleFile As String)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "SetupWizardVariables"
-
- If mIniFilePath = "" Then
- mIniFilePath = GetAppDataFolder & "\Sun\AnalysisWizard\" & CWIZARD & ".ini"
- End If
-
- statFileName = ProfileGetItem("Analysis", CSTAT_FILE, "", mIniFilePath)
- fileList = ProfileGetItem("Analysis", CFILE_LIST, "", mIniFilePath)
- storeToDir = ProfileGetItem("Analysis", COUTPUT_DIR, "", mIniFilePath)
- resultsFile = ProfileGetItem("Analysis", CRESULTS_FILE, "", mIniFilePath)
- logFile = ProfileGetItem("Analysis", CLOG_FILE, "", mIniFilePath)
- resultsTemplate = ProfileGetItem("Analysis", CRESULTS_TEMPLATE, "", mIniFilePath)
- bOverwriteFile = IIf(ProfileGetItem("Analysis", CRESULTS_EXIST, COVERWRITE_FILE, mIniFilePath) = COVERWRITE_FILE, _
- True, False)
- bNewResultsFile = CBool(ProfileGetItem("Analysis", CNEW_RESULTS_FILE, "True", mIniFilePath))
- debugLevel = CLng(ProfileGetItem("Analysis", CDEBUG_LEVEL, "1", mIniFilePath))
- outputType = ProfileGetItem("Analysis", COUTPUT_TYPE, COUTPUT_TYPE_XLS, mIniFilePath)
- singleFile = ProfileGetItem("Analysis", CSINGLE_FILE, "", mIniFilePath)
-FinalExit:
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & _
- ": mIniFilePath " & mIniFilePath & ": " & _
- Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-Public Sub SetupSearchTypes(searchTypes As Collection)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "SetupSearchTypes"
-
- Dim bDocument As Boolean
- Dim bTemplate As Boolean
-
- bDocument = CBool(ProfileGetItem("Analysis", LCase("type" & getAppSpecificApplicationName & "doc"), "False", mIniFilePath))
- bTemplate = CBool(ProfileGetItem("Analysis", LCase("type" & getAppSpecificApplicationName & "dot"), "False", mIniFilePath))
- If bDocument = True Then searchTypes.Add "*" & getAppSpecificDocExt
- If bTemplate = True Then searchTypes.Add "*" & getAppSpecificTemplateExt
-FinalExit:
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & ": searchTypes.Count " & searchTypes.count & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-Sub WriteXMLHeader(out As TextStream)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "WriteXMLHeader"
-
- out.WriteLine "<?xml version=""1.0"" encoding=""ISO-8859-1""?>"
- out.WriteLine "<!DOCTYPE results SYSTEM 'analysis.dtd'>"
-
-FinalExit:
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-Sub WriteXMLResultsStartTag(out As TextStream)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "WriteXMLResultsStartTag"
-
- out.WriteLine "<results generated-by=""" & IIf(InDocPreparation, "documentanalysis_preparation", "documentanalysis") & """"
- out.WriteLine " version=""" & GetVersion & """ timestamp=""" & Now & """"
- out.WriteLine " type=""" & getAppSpecificApplicationName & """ >"
-
-FinalExit:
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-Sub WriteXMLResultsEndTag(out As TextStream)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "WriteXMLResultsEndTag"
-
- out.WriteLine "</results>"
-
-FinalExit:
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-Sub WriteXMLDocProperties(out As TextStream, aAnalysis As DocumentAnalysis)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "WriteXMLDocProperties"
-
- out.WriteLine "<document location=""" & EncodeXML(aAnalysis.name) & """"
- out.WriteLine " application=""" & aAnalysis.Application & """"
- out.WriteLine " issues-count=""" & (aAnalysis.IssuesCount) & """"
- out.WriteLine " pages=""" & aAnalysis.PageCount & """"
- out.WriteLine " created=""" & CheckDate(aAnalysis.Created) & """"
- out.WriteLine " modified=""" & CheckDate(aAnalysis.Modified) & """"
- out.WriteLine " accessed=""" & CheckDate(aAnalysis.Accessed) & """"
- out.WriteLine " printed=""" & CheckDate(aAnalysis.Printed) & """"
- out.WriteLine " last-save-by=""" & aAnalysis.SavedBy & """"
- out.WriteLine " revision=""" & aAnalysis.Revision & """"
- out.WriteLine " based-on-template=""" & EncodeXML(aAnalysis.Template) & """"
- out.WriteLine ">"
-
-FinalExit:
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & " : path " & aAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-Sub WriteXMLDocPropertiesEndTag(out As TextStream)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "WriteXMLDocPropertiesEndTag"
-
- out.WriteLine "</document>"
-
-FinalExit:
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-Sub WriteXMLDocRefDetails(out As TextStream, aAnalysis As DocumentAnalysis)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "WriteXMLDocRefDetails"
- Dim myIssue As IssueInfo
-
- 'Output References for Docs with Macros
- If aAnalysis.HasMacros And (aAnalysis.References.count > 0) Then
- out.WriteLine "<references>"
- For Each myIssue In aAnalysis.References
- OutputXMLReferenceAttributes out, aAnalysis, myIssue
- Next myIssue
- out.WriteLine "</references>"
- End If
-
-FinalExit:
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & " : path " & aAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-Sub OutputXMLReferenceAttributes(out As TextStream, aAnalysis As DocumentAnalysis, myIssue As IssueInfo)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "OutputXMLReferenceAttributes"
- Dim strAttributes As String
-
- With myIssue
- out.WriteLine "<reference"
-
- strAttributes = .Values("Major") & "." & .Values("Minor")
- strAttributes = IIf(strAttributes = "0.0" Or strAttributes = ".", .Values("Name"), _
- .Values("Name") & " " & .Values("Major") & "." & .Values("Minor"))
- out.WriteLine " name=""" & EncodeXML(strAttributes) & """"
-
- If .Values("Type") = "Project" Then
- strAttributes = "Project reference"
- Else
- strAttributes = IIf(.Values("Description") <> "", .Values("Description"), RID_STR_COMMON_NA)
- End If
- out.WriteLine " description=""" & EncodeXML(strAttributes) & """"
- If .Values("IsBroken") <> RID_STR_COMMON_ATTRIBUTE_BROKEN Then
- out.WriteLine " location=""" & .Values("File") & """"
- End If
- out.WriteLine " type=""" & .Values("Type") & """"
- strAttributes = IIf(.Values("GUID") <> "", .Values("GUID"), RID_STR_COMMON_NA)
- out.WriteLine " GUID=""" & strAttributes & """"
- out.WriteLine " is-broken=""" & .Values("IsBroken") & """"
- out.WriteLine " builtin=""" & .Values("BuiltIn") & """"
-
- out.WriteLine " />"
- End With
-
-FinalExit:
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & " : path " & aAnalysis.name & " : myIssue " & myIssue.IssueTypeXML & "_" & myIssue.SubTypeXML & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-Sub WriteXMLDocIssueDetails(out As TextStream, aAnalysis As DocumentAnalysis)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "WriteXMLDocIssueDetails"
-
- Dim myIssue As IssueInfo
-
- If aAnalysis.Issues.count = 0 Then Exit Sub
-
- out.WriteLine "<issues>"
- For Each myIssue In aAnalysis.Issues
- OutputXMLCommonIssueDetails out, aAnalysis, myIssue
- OutputXMLCommonIssueAttributes out, myIssue
- out.WriteLine "</issue>"
- Next myIssue
- out.WriteLine "</issues>"
-
-FinalExit:
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & " : path " & aAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-Sub OutputXMLCommonIssueDetails(out As TextStream, aAnalysis As DocumentAnalysis, myIssue As IssueInfo)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "OutputXMLCommonIssueDetails"
-
- out.WriteLine "<issue category=""" & myIssue.IssueTypeXML & """"
- out.WriteLine " type=""" & myIssue.SubTypeXML & """"
-
- 'NOTE: Dropping severity - now stored in results.xlt, do not want to open it to fetch this data
- 'out.WriteLine " severity=""" & IIf(CheckForMinorIssue(aAnalysis, myIssue), "Minor", "Major") & """"
- out.WriteLine " prepared=""" & IIf((myIssue.Preparable), "True", "False") & """ >"
-
- out.WriteLine "<location type=""" & myIssue.locationXML & """ >"
-
- If myIssue.SubLocation <> "" Then
- out.WriteLine "<property name=""sublocation"" value=""" & myIssue.SubLocation & """ />"
- End If
- If myIssue.Line <> -1 Then
- out.WriteLine "<property name=""line"" value=""" & myIssue.Line & """ />"
- End If
- If myIssue.column <> "" Then
- out.WriteLine "<property name=""column"" value=""" & myIssue.column & """ />"
- End If
- out.WriteLine "</location>"
-
-FinalExit:
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & " : path " & aAnalysis.name & " : myIssue " & myIssue.IssueTypeXML & "_" & myIssue.SubTypeXML & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-Sub OutputXMLCommonIssueAttributes(out As TextStream, myIssue As IssueInfo)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "OutputXMLCommonIssueAttributes"
-
- Dim index As Integer
- Dim valStr As String
- Dim attStr As String
-
- If myIssue.Attributes.count = 0 Then Exit Sub
-
- out.WriteLine "<details>"
- For index = 1 To myIssue.Attributes.count
- attStr = myIssue.Attributes(index)
- If InStr(attStr, RID_STR_COMMON_NOTE_PRE & "[") = 1 Then
- attStr = Right$(attStr, Len(attStr) - Len(RID_STR_COMMON_NOTE_PRE & "["))
- attStr = Left$(attStr, Len(attStr) - 1)
- out.WriteLine "<note index=""" & attStr & """ value=""" & EncodeXML(myIssue.Values(index)) & """ />"
- Else
- out.WriteLine "<property name=""" & EncodeXML(myIssue.Attributes(index)) & """ value=""" & EncodeXML(myIssue.Values(index)) & """ />"
- End If
- Next index
-
- out.WriteLine "</details>"
-
-FinalExit:
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & " : myIssue " & myIssue.IssueTypeXML & "_" & myIssue.SubTypeXML & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-
-Sub WriteXMLOutput(storeToDir As String, resultsFile As String, _
- bOverwriteResultsFile As Boolean, bNewResultsFile As Boolean, AnalysedDocs As Collection, _
- fso As Scripting.FileSystemObject)
-
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "WriteXMLOutput"
-
- Dim xmlOutput As TextStream
- Dim xmlOrigOutput As TextStream
- Dim origOutput As String
- Dim analysis As DocumentAnalysis
- Dim outFilePath As String
-
- outFilePath = storeToDir & "\" & fso.GetBaseName(resultsFile) & "_" & _
- getAppSpecificApplicationName & ".xml"
-
- Set xmlOutput = fso.CreateTextFile(outFilePath, True)
- WriteXMLHeader xmlOutput
-
- 'Set xmlOrigOutput = fso.OpenTextFile(outFilePath, ForReading)
- 'Set xmlOutput = fso.OpenTextFile(outFilePath, ForWriting)
-
- WriteXMLResultsStartTag xmlOutput
- For Each analysis In AnalysedDocs
- WriteXMLDocProperties xmlOutput, analysis
- WriteXMLDocRefDetails xmlOutput, analysis
- WriteXMLDocIssueDetails xmlOutput, analysis
- WriteXMLDocPropertiesEndTag xmlOutput
- Next analysis
- WriteXMLResultsEndTag xmlOutput
-
-FinalExit:
- xmlOutput.Close
- Set xmlOutput = Nothing
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & " : path " & outFilePath & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-Private Function EncodeUrl(ByVal sUrl As String) As String
- Const MAX_PATH As Long = 260
- Const ERROR_SUCCESS As Long = 0
- Const URL_DONT_SIMPLIFY As Long = &H8000000
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "EncodeUrl"
-
- Dim sUrlEsc As String
- Dim dwSize As Long
- Dim dwFlags As Long
-
- If Len(sUrl) > 0 Then
-
- sUrlEsc = Space$(MAX_PATH)
- dwSize = Len(sUrlEsc)
- dwFlags = URL_DONT_SIMPLIFY
-
- If UrlEscape(sUrl, _
- sUrlEsc, _
- dwSize, _
- dwFlags) = ERROR_SUCCESS Then
-
- EncodeUrl = Left$(sUrlEsc, dwSize)
-
- End If 'If UrlEscape
- End If 'If Len(sUrl) > 0
-
-FinalExit:
- Exit Function
-
-HandleErrors:
- WriteDebug currentFunctionName & " : sUrl " & sUrl & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Function
-
-Private Function EncodeXML(Str As String) As String
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "EncodeXML"
-
- Str = Replace(Str, "^", "&#x5E;")
- Str = Replace(Str, "&", "&amp;")
- Str = Replace(Str, "`", "&apos;")
- Str = Replace(Str, "{", "&#x7B;")
- Str = Replace(Str, "}", "&#x7D;")
- Str = Replace(Str, "|", "&#x7C;")
- Str = Replace(Str, "]", "&#x5D;")
- Str = Replace(Str, "[", "&#x5B;")
- Str = Replace(Str, """", "&quot;")
- Str = Replace(Str, "<", "&lt;")
- Str = Replace(Str, ">", "&gt;")
-
- 'str = Replace(str, "\", "&#x5C;")
- 'str = Replace(str, "#", "&#x23;")
- 'str = Replace(str, "?", "&#x3F;")
- 'str = Replace(str, "/", "&#x2F;")
-
- EncodeXML = Str
-
-FinalExit:
- Exit Function
-
-HandleErrors:
- WriteDebug currentFunctionName & " : string " & Str & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Function
-
-
-Function ReplaceTopicTokens(sString As String, _
- sToken As String, _
- sReplacement As String) As String
- On Error Resume Next
-
- Dim p As Integer
- Dim sTmp As String
-
- sTmp = sString
- Do
- p = InStr(sTmp, sToken)
- If p Then
- sTmp = Left(sTmp, p - 1) + sReplacement + Mid(sTmp, p + Len(sToken))
- End If
- Loop While p > 0
-
-
- ReplaceTopicTokens = sTmp
-
-End Function
-
-Function ReplaceTopic2Tokens(sString As String, _
- sToken1 As String, _
- sReplacement1 As String, _
- sToken2 As String, _
- sReplacement2 As String) As String
- On Error Resume Next
-
- ReplaceTopic2Tokens = _
- ReplaceTopicTokens(ReplaceTopicTokens(sString, sToken1, sReplacement1), _
- sToken2, sReplacement2)
-End Function
-
-'Language setting functions
-Function GetResourceDataFileName(thisDir As String) As String
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "GetResourceDataFileName"
-
- Dim fso As FileSystemObject
- Set fso = New FileSystemObject
-
- 'A debug method - if a file called debug.dat exists load it.
- If fso.FileExists(fso.GetAbsolutePathName(thisDir & "\debug.dat")) Then
- GetResourceDataFileName = fso.GetAbsolutePathName(thisDir & "\debug.dat")
- GoTo FinalExit
- End If
-
- Dim isoLangStr As String
- Dim isoCountryStr As String
- Dim langDir As String
-
- langDir = thisDir & "\" & "lang"
-
- Dim userLCID As Long
- userLCID = GetUserDefaultLangID()
- Dim sysLCID As Long
- sysLCID = GetSystemDefaultLangID()
-
- isoLangStr = GetUserLocaleInfo(userLCID, LOCALE_SISO639LANGNAME)
- isoCountryStr = GetUserLocaleInfo(userLCID, LOCALE_SISO3166CTRYNAME)
-
- 'check for locale data in following order:
- ' user language
- ' isoLangStr & "_" & isoCountryStr & ".dat"
- ' isoLangStr & ".dat"
- ' system language
- ' isoLangStr & "_" & isoCountryStr & ".dat"
- ' isoLangStr & ".dat"
- ' "en_US" & ".dat"
-
- If fso.FileExists(fso.GetAbsolutePathName(langDir & "\" & isoLangStr & "-" & isoCountryStr & ".dat")) Then
- GetResourceDataFileName = fso.GetAbsolutePathName(langDir & "\" & isoLangStr & "-" & isoCountryStr & ".dat")
- ElseIf fso.FileExists(fso.GetAbsolutePathName(langDir & "\" & isoLangStr & ".dat")) Then
- GetResourceDataFileName = fso.GetAbsolutePathName(langDir & "\" & isoLangStr & ".dat")
- Else
- isoLangStr = GetUserLocaleInfo(sysLCID, LOCALE_SISO639LANGNAME)
- isoCountryStr = GetUserLocaleInfo(sysLCID, LOCALE_SISO3166CTRYNAME)
-
- If fso.FileExists(fso.GetAbsolutePathName(langDir & "\" & isoLangStr & "-" & isoCountryStr & ".dat")) Then
- GetResourceDataFileName = fso.GetAbsolutePathName(langDir & "\" & isoLangStr & "-" & isoCountryStr & ".dat")
- ElseIf fso.FileExists(fso.GetAbsolutePathName(langDir & "\" & isoLangStr & ".dat")) Then
- GetResourceDataFileName = fso.GetAbsolutePathName(langDir & "\" & isoLangStr & ".dat")
- Else
- GetResourceDataFileName = fso.GetAbsolutePathName(langDir & "\" & "en-US.dat")
- End If
- End If
-FinalExit:
- Set fso = Nothing
- Exit Function
-
-HandleErrors:
- WriteDebug currentFunctionName & " : " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Function
-
-Public Function GetUserLocaleInfo(ByVal dwLocaleID As Long, ByVal dwLCType As Long) As String
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "GetUserLocaleInfo"
- Dim sReturn As String
- Dim r As Long
-
- 'call the function passing the Locale type
- 'variable to retrieve the required size of
- 'the string buffer needed
- r = GetLocaleInfo(dwLocaleID, dwLCType, sReturn, Len(sReturn))
-
- 'if successful..
- If r Then
- 'pad the buffer with spaces
- sReturn = Space$(r)
-
- 'and call again passing the buffer
- r = GetLocaleInfo(dwLocaleID, dwLCType, sReturn, Len(sReturn))
-
- 'if successful (r > 0)
- If r Then
- 'r holds the size of the string
- 'including the terminating null
- GetUserLocaleInfo = Left$(sReturn, r - 1)
- End If
- End If
-
-FinalExit:
- Exit Function
-
-HandleErrors:
- WriteDebug currentFunctionName & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Function
-
-' This function returns the Application Data Folder Path
-Function GetAppDataFolder() As String
- Dim idlstr As Long
- Dim sPath As String
- Dim IDL As ITEMIDLIST
- Const NOERROR = 0
- Const MAX_LENGTH = 260
- Const CSIDL_APPDATA = &H1A
-
- On Error GoTo Err_GetFolder
-
- ' Fill the idl structure with the specified folder item.
- idlstr = SHGetSpecialFolderLocation(0, CSIDL_APPDATA, IDL)
-
- If idlstr = NOERROR Then
- ' Get the path from the idl list, and return
- ' the folder with a slash at the end.
- sPath = Space$(MAX_LENGTH)
- idlstr = SHGetPathFromIDList(ByVal IDL.mkid.cb, ByVal sPath)
- If idlstr Then
- GetAppDataFolder = Left$(sPath, InStr(sPath, Chr$(0)) - 1)
- End If
- End If
-
-Exit_GetFolder:
- Exit Function
-
-Err_GetFolder:
- MsgBox "An Error was Encountered" & Chr(13) & Err.Description, _
- vbCritical Or vbOKOnly
- Resume Exit_GetFolder
-
-End Function
-
-Sub WriteToStatFile(statFileName As String, statValue As Integer, _
- currDocument As String, fso As Scripting.FileSystemObject)
-
- On Error Resume Next
-
- Dim fileCont As TextStream
-
- Set fileCont = fso.OpenTextFile(statFileName, ForWriting, True, TristateTrue)
- If (statValue = C_STAT_STARTING) Then
- fileCont.WriteLine ("analysing=" & currDocument)
- ElseIf (statValue = C_STAT_DONE) Then
- fileCont.WriteLine ("analysed=" & currDocument)
- ElseIf (statValue = C_STAT_FINISHED) Then
- fileCont.WriteLine ("finished")
- End If
-
- fileCont.Close
-End Sub
-
-' The function FindIndex looks for a document in the given document list
-' starting at the position lastIndex in that list. If the document could
-' not be found, the function starts searching from the beginning
-
-Function FindIndex(myDocument As String, _
- myDocList As Collection, _
- lastIndex As Long) As Long
-
- Dim lastEntry As Long
- Dim curIndex As Long
- Dim curEntry As String
- Dim entryFound As Boolean
-
- entryFound = False
- lastEntry = myDocList.count
-
- If (lastIndex > lastEntry) Then lastIndex = lastEntry
-
- If (lastIndex > 1) Then
- curIndex = lastIndex
- Else
- curIndex = 1
- End If
-
- While Not entryFound And curIndex <= lastEntry
- curEntry = myDocList.item(curIndex)
- If (curEntry = myDocument) Then
- entryFound = True
- Else
- curIndex = curIndex + 1
- End If
- Wend
-
- If (Not entryFound) Then
- curIndex = 1
- While Not entryFound And curIndex < lastIndex
- curEntry = myDocList.item(curIndex)
- If (curEntry = myDocument) Then
- entryFound = True
- Else
- curIndex = curIndex + 1
- End If
- Wend
- End If
-
- If entryFound Then
- FindIndex = curIndex
- Else
- FindIndex = 0
- End If
-
-End Function
-
-' The sub GetIndexValues calulates the start index of the analysis and the index
-' of the file after which the next intermediate reult will be written
-Function GetIndexValues(startIndex As Long, nextCheck As Long, _
- myFiles As Collection) As Boolean
-
- Dim lastCheckpoint As String
- Dim nextFile As String
- Dim newResultsFile As Boolean
-
- lastCheckpoint = ProfileGetItem(C_ANALYSIS, C_LAST_CHECKPOINT, "", mIniFilePath)
- nextFile = ProfileGetItem(C_ANALYSIS, C_NEXT_FILE, "", mIniFilePath)
- newResultsFile = True
-
- If (nextFile = "") Then
- ' No Analysis done yet
- startIndex = 1
- nextCheck = C_MAX_CHECK
- Else
- If (lastCheckpoint = "") Then
- startIndex = 1
- Else
- startIndex = FindIndex(lastCheckpoint, myFiles, 1) + 1
- If (startIndex > 0) Then newResultsFile = False
- End If
-
- nextCheck = FindIndex(nextFile, myFiles, startIndex - 1)
-
- If (nextCheck = 0) Then ' Next file not in file list, restarting
- startIndex = 1
- nextCheck = C_MAX_CHECK
- newResultsFile = True
- ElseIf (nextCheck < startIndex) Then 'we are done?
- nextCheck = startIndex + C_MAX_CHECK
- ElseIf (nextCheck = startIndex) Then 'skip this one
- WriteToLog C_ERROR_HANDLING_DOC & nextCheck, nextFile
- startIndex = startIndex + 1
- nextCheck = startIndex + C_MAX_CHECK
- Else 'last time an error occured with that file, write before analysing
- nextCheck = nextCheck - 1
- End If
- End If
- GetIndexValues = newResultsFile
-End Function
-
-Private Sub GetDocModificationDates(docCounts As DocModificationDates)
-
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "GetDocModificationDates"
-
- docCounts.lessThanThreemonths = CLng(ProfileGetItem("Analysis", C_DOCS_LESS_3_MONTH, "0", mIniFilePath))
- docCounts.threeToSixmonths = CLng(ProfileGetItem("Analysis", C_DOCS_LESS_6_MONTH, "0", mIniFilePath))
- docCounts.sixToTwelvemonths = CLng(ProfileGetItem("Analysis", C_DOCS_LESS_12_MONTH, "0", mIniFilePath))
- docCounts.greaterThanOneYear = CLng(ProfileGetItem("Analysis", C_DOCS_MORE_12_MONTH, "0", mIniFilePath))
-
-FinalExit:
- Exit Sub
-HandleErrors:
- WriteDebug currentFunctionName & " : " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
+Attribute VB_Name = "AnalysisDriver"
+'*************************************************************************
+'
+' Licensed to the Apache Software Foundation (ASF) under one
+' or more contributor license agreements. See the NOTICE file
+' distributed with this work for additional information
+' regarding copyright ownership. The ASF licenses this file
+' to you under the Apache License, Version 2.0 (the
+' "License"); you may not use this file except in compliance
+' with the License. You may obtain a copy of the License at
+'
+' http://www.apache.org/licenses/LICENSE-2.0
+'
+' Unless required by applicable law or agreed to in writing,
+' software distributed under the License is distributed on an
+' "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+' KIND, either express or implied. See the License for the
+' specific language governing permissions and limitations
+' under the License.
+'
+'*************************************************************************
+Option Explicit
+
+' Declare Public variables.
+Public Type ShortItemId
+ cb As Long
+ abID As Byte
+End Type
+
+Public Type ITEMIDLIST
+ mkid As ShortItemId
+End Type
+
+Public Declare Function FindWindow Lib "user32" Alias _
+ "FindWindowA" (ByVal lpClassName As String, _
+ ByVal lpWindowName As Long) As Long
+
+Private Declare Function GetTickCount Lib "kernel32" () As Long
+
+'This function saves the passed value to the file,
+'under the section and key names specified.
+'If the ini file, lpFileName, does not exist, it is created.
+'If the section, lpSectionName, does not exist, it is created.
+'If the key name, lpKeyName, does not exist, it is created.
+'If the key name exists, it's value, lpString, is replaced.
+Private Declare Function WritePrivateProfileString Lib "kernel32" _
+ Alias "WritePrivateProfileStringA" _
+ (ByVal lpSectionName As String, _
+ ByVal lpKeyName As Any, _
+ ByVal lpString As Any, _
+ ByVal lpFileName As String) As Long
+
+Private Declare Function GetPrivateProfileString Lib "kernel32" _
+ Alias "GetPrivateProfileStringA" _
+ (ByVal lpSectionName As String, _
+ ByVal lpKeyName As Any, _
+ ByVal lpDefault As String, _
+ ByVal lpReturnedString As String, _
+ ByVal nSize As Long, _
+ ByVal lpFileName As String) As Long
+
+Private Declare Function UrlEscape Lib "shlwapi" _
+ Alias "UrlEscapeA" _
+ (ByVal pszURL As String, _
+ ByVal pszEscaped As String, _
+ pcchEscaped As Long, _
+ ByVal dwFlags As Long) As Long
+
+Public Declare Function SHGetPathFromIDList Lib "shell32.dll" _
+ (ByVal pidl As Long, ByVal pszPath As String) As Long
+
+Public Declare Function SHGetSpecialFolderLocation Lib _
+ "shell32.dll" (ByVal hwndOwner As Long, ByVal nFolder _
+ As Long, pidl As ITEMIDLIST) As Long
+
+Public Const LOCALE_ILANGUAGE As Long = &H1 'language id
+Public Const LOCALE_SLANGUAGE As Long = &H2 'localized name of lang
+Public Const LOCALE_SENGLANGUAGE As Long = &H1001 'English name of lang
+Public Const LOCALE_SABBREVLANGNAME As Long = &H3 'abbreviated lang name
+Public Const LOCALE_SNATIVELANGNAME As Long = &H4 'native name of lang
+Public Const LOCALE_ICOUNTRY As Long = &H5 'country code
+Public Const LOCALE_SCOUNTRY As Long = &H6 'localized name of country
+Public Const LOCALE_SENGCOUNTRY As Long = &H1002 'English name of country
+Public Const LOCALE_SABBREVCTRYNAME As Long = &H7 'abbreviated country name
+Public Const LOCALE_SNATIVECTRYNAME As Long = &H8 'native name of country
+Public Const LOCALE_SINTLSYMBOL As Long = &H15 'intl monetary symbol
+Public Const LOCALE_IDEFAULTLANGUAGE As Long = &H9 'def language id
+Public Const LOCALE_IDEFAULTCOUNTRY As Long = &HA 'def country code
+Public Const LOCALE_IDEFAULTCODEPAGE As Long = &HB 'def oem code page
+Public Const LOCALE_IDEFAULTANSICODEPAGE As Long = &H1004 'def ansi code page
+Public Const LOCALE_IDEFAULTMACCODEPAGE As Long = &H1011 'def mac code page
+
+Public Const LOCALE_IMEASURE As Long = &HD '0 = metric, 1 = US
+Public Const LOCALE_SSHORTDATE As Long = &H1F 'short date format string
+
+'#if(WINVER >= &H0400)
+Public Const LOCALE_SISO639LANGNAME As Long = &H59 'ISO abbreviated language name
+Public Const LOCALE_SISO3166CTRYNAME As Long = &H5A 'ISO abbreviated country name
+'#endif /* WINVER >= as long = &H0400 */
+
+'#if(WINVER >= &H0500)
+Public Const LOCALE_SNATIVECURRNAME As Long = &H1008 'native name of currency
+Public Const LOCALE_IDEFAULTEBCDICCODEPAGE As Long = &H1012 'default ebcdic code page
+Public Const LOCALE_SSORTNAME As Long = &H1013 'sort name
+'#endif /* WINVER >= &H0500 */
+
+Public Declare Function GetSystemDefaultLangID Lib "kernel32" () As Long
+Public Declare Function GetUserDefaultLangID Lib "kernel32" () As Long
+
+Public Declare Function GetLocaleInfo Lib "kernel32" _
+ Alias "GetLocaleInfoA" _
+ (ByVal Locale As Long, _
+ ByVal LCType As Long, _
+ ByVal lpLCData As String, _
+ ByVal cchData As Long) As Long
+
+
+Public Const CWIZARD = "analysis"
+
+Const CROWOFFSET = 2
+Const CDOCPROP_PAW_ROWOFFSET = 3
+Private mDocPropRowOffset As Long
+
+Const CNUMBERDOC_ALL = "All"
+Const CTOTAL_DOCS_ANALYZED = "TotalDocsAnalysed"
+Const CNUMDAYS_IN_MONTH = 30
+Const CMAX_LIMIT = 10000
+
+Const CISSUE_DETDOCNAME = 1
+Const CISSUE_DETDOCAPPLICATION = CISSUE_DETDOCNAME + 1
+Const CISSUE_DETTYPE = CISSUE_DETDOCAPPLICATION + 1
+Const CISSUE_DETSUBTYPE = CISSUE_DETTYPE + 1
+Const CISSUE_DETLOCATION = CISSUE_DETSUBTYPE + 1
+Const CISSUE_DETSUBLOCATION = CISSUE_DETLOCATION + 1
+Const CISSUE_DETLINE = CISSUE_DETSUBLOCATION + 1
+Const CISSUE_DETCOLUMN = CISSUE_DETLINE + 1
+Const CISSUE_DETATTRIBUTES = CISSUE_DETCOLUMN + 1
+Const CISSUE_DETNAMEANDPATH = CISSUE_DETATTRIBUTES + 1
+
+Const CREF_DETDOCNAME = 1
+Const CREF_DETDOCAPPLICATION = CREF_DETDOCNAME + 1
+Const CREF_DETREFERENCE = CREF_DETDOCAPPLICATION + 1
+Const CREF_DETDESCRIPTION = CREF_DETREFERENCE + 1
+Const CREF_DETLOCATION = CREF_DETDESCRIPTION + 1
+Const CREF_DETATTRIBUTES = CREF_DETLOCATION + 1
+Const CREF_DETNAMEANDPATH = CREF_DETATTRIBUTES + 1
+
+Const CINPUT_DIR = "indir"
+Const COUTPUT_DIR = "outdir"
+Const CRESULTS_FILE = "resultsfile"
+Const CLOG_FILE = "logfile"
+Const CRESULTS_TEMPLATE = "resultstemplate"
+Const CRESULTS_EXIST = "resultsexist"
+Const COVERWRITE_FILE = "overwritefile"
+Const CNEW_RESULTS_FILE = "newresultsfile"
+Const CINCLUDE_SUBDIRS = "includesubdirs"
+Const CDEBUG_LEVEL = "debuglevel"
+Const COUTPUT_TYPE = "outputtype"
+Const COUTPUT_TYPE_XLS = "xls"
+Const COUTPUT_TYPE_XML = "xml"
+Const COUTPUT_TYPE_BOTH = "both"
+Const COVERVIEW_TITLE_LABEL = "OV_Document_Analysis_Overview_lbl"
+Const CDEFAULT_PASSWORD = "defaultpassword"
+Const CVERSION = "version"
+Const CTITLE = "title"
+Const CDOPREPARE = "prepare"
+Const CISSUES_LIMIT = "issuesmonthlimit"
+Const CSINGLE_FILE = "singlefile"
+Const CFILE_LIST = "filelist"
+Const CSTAT_FILE = "statfilename"
+Const C_ABORT_ANALYSIS = "abortanalysis"
+Const C_DOCS_LESS_3_MONTH = "DocumentsYoungerThan3Month"
+Const C_DOCS_LESS_6_MONTH = "DocumentsYoungerThan6Month"
+Const C_DOCS_LESS_12_MONTH = "DocumentsYoungerThan12Month"
+Const C_DOCS_MORE_12_MONTH = "DocumentsOlderThan12Month"
+
+Private Const C_ANALYSIS As String = "Analysis"
+Private Const C_LAST_CHECKPOINT As String = "LastCheckpoint"
+Private Const C_NEXT_FILE As String = "NextFile"
+Private Const C_MAX_CHECK_INI As String = "FilesBeforeSave"
+Private Const C_MAX_WAIT_BEFORE_WRITE_INI As String = "SecondsBeforeSave"
+Private Const C_MAX_RANGE_PROCESS_TIME_INI As String = "ExcelMaxRangeProcessTime"
+Private Const C_ERROR_HANDLING_DOC As String = "_ERROR_HANDLING_DOC_"
+Private Const C_MAX_CHECK As Long = 100
+Private Const C_MAX_WAIT_BEFORE_WRITE As Long = 300 ' sec
+Private Const C_MAX_RANGE_PROCESS_TIME As Integer = 30 'sec
+
+Private Const C_STAT_STARTING As Integer = 1
+Private Const C_STAT_DONE As Integer = 2
+Private Const C_STAT_FINISHED As Integer = 3
+
+Private Type DocumentCount
+ numDocsAnalyzed As Long
+ numDocsAnalyzedWithIssues As Long
+ numMinorIssues As Long
+ numComplexIssues As Long
+ numMacroIssues As Long
+ numPreparableIssues As Long
+ totalMacroCosts As Long
+ totalDocIssuesCosts As Long
+ totalPreparableIssuesCosts As Long
+End Type
+
+Private Type DocModificationDates
+ lessThanThreemonths As Long
+ threeToSixmonths As Long
+ sixToTwelvemonths As Long
+ greaterThanOneYear As Long
+End Type
+
+Private Type DocMacroClassifications
+ None As Long
+ Simple As Long
+ Medium As Long
+ complex As Long
+End Type
+
+Private Type DocIssueClassifications
+ None As Long
+ Minor As Long
+ complex As Long
+End Type
+
+Const CCOST_COL_OFFSET = -1
+
+Private mLogFilePath As String
+Private mDocIndex As String
+Private mDebugLevel As Long
+Private mIniFilePath As String
+Private mUserFormTypesDict As Scripting.Dictionary
+Private mIssuesDict As Scripting.Dictionary
+Private mMacroDict As Scripting.Dictionary
+Private mPreparedIssuesDict As Scripting.Dictionary
+Private mIssuesClassificationDict As Scripting.Dictionary
+Private mIssuesCostDict As Scripting.Dictionary
+Private mIssuesLimit As Date
+
+Public Const CWORD_DRIVER_FILE = "_OOoDocAnalysisWordDriver.doc"
+Public Const CEXCEL_DRIVER_FILE = "_OOoDocAnalysisExcelDriver.xls"
+Public Const CPP_DRIVER_FILE = "_OOoDocAnalysisPPTDriver.ppt"
+Public Const CWORD_DRIVER_FILE_TEMP = "~$OoDocAnalysisWordDriver.doc"
+Public Const CEXCEL_DRIVER_FILE_TEMP = "~$OoDocAnalysisExcelDriver.xls"
+Public Const CPP_DRIVER_FILE_TEMP = "~$OoDocAnalysisPPTDriver.ppt"
+
+'Doc Properties Offsets - used in WriteDocProperties and GetPreparableFilesFromDocProps
+Const CDOCINFONAME = 1
+Const CDOCINFOAPPLICATION = CDOCINFONAME + 1
+
+Const CDOCINFOISSUE_CLASS = CDOCINFOAPPLICATION + 1
+Const CDOCINFOCOMPLEXISSUES = CDOCINFOISSUE_CLASS + 1
+Const CDOCINFOMINORISSUES = CDOCINFOCOMPLEXISSUES + 1
+Const CDOCINFOPREPAREDISSUES = CDOCINFOMINORISSUES + 1
+
+Const CDOCINFOMACRO_CLASS = CDOCINFOPREPAREDISSUES + 1
+Const CDOCINFOMACRO_USERFORMS = CDOCINFOMACRO_CLASS + 1
+Const CDOCINFOMACRO_LINESOFCODE = CDOCINFOMACRO_USERFORMS + 1
+
+Const CDOCINFODOCISSUECOSTS = CDOCINFOMACRO_LINESOFCODE + 1
+Const CDOCINFOPREPARABLEISSUECOSTS = CDOCINFODOCISSUECOSTS + 1
+Const CDOCINFOMACROISSUECOSTS = CDOCINFOPREPARABLEISSUECOSTS + 1
+
+Const CDOCINFONUMBERPAGES = CDOCINFOMACROISSUECOSTS + 1
+Const CDOCINFOCREATED = CDOCINFONUMBERPAGES + 1
+Const CDOCINFOLASTMODIFIED = CDOCINFOCREATED + 1
+Const CDOCINFOLASTACCESSED = CDOCINFOLASTMODIFIED + 1
+Const CDOCINFOLASTPRINTED = CDOCINFOLASTACCESSED + 1
+Const CDOCINFOLASTSAVEDBY = CDOCINFOLASTPRINTED + 1
+Const CDOCINFOREVISION = CDOCINFOLASTSAVEDBY + 1
+Const CDOCINFOTEMPLATE = CDOCINFOREVISION + 1
+Const CDOCINFONAMEANDPATH = CDOCINFOTEMPLATE + 1
+
+'Overview shapes
+Const COV_DOC_MOD_DATES_CHART = "Chart 21"
+Const COV_DOC_MACRO_CHART = "Chart 22"
+Const COV_DOC_ANALYSIS_CHART = "Chart 23"
+
+Const COV_DOC_MOD_DATES_COMMENT_TXB = "Text Box 25"
+Const COV_DOC_MOD_DATES_LEGEND_TXB = "Text Box 12"
+
+Const COV_DOC_MACRO_COMMENT_TXB = "Text Box 26"
+Const COV_DOC_MACRO_LEGEND_TXB = "Text Box 16"
+
+Const COV_DOC_ANALYSIS_COMMENT_TXB = "Text Box 27"
+Const COV_DOC_ANALYSIS_LEGEND_DAW_TXB = "Text Box 28"
+Const COV_DOC_ANALYSIS_LEGEND_PAW_TXB = "Text Box 18"
+
+Const COV_HIGH_LEVEL_ANALYSIS_RANGE = "OV_High_Level_Analysis_Range"
+Const COV_COST_RANGE = "OV_Cost_Range"
+
+'Sheet labels
+Const COV_HIGH_LEVEL_ANALYSIS_LBL = "OV_High_level_analysis_lbl"
+Const COV_DP_PREPISSUES_COL_LBL = "DocProperties_PreparedIssues_Column"
+Const COV_COSTS_PREPISSUE_COUNT_COL_LBL = "Costs_PreparedIssueCount_Column"
+Const CDP_DAW_HIDDEN_COLS_LBL = "DP_DAW_HIDDEN_COLS_RANGE"
+Const CDP_DAW_HIDDEN_COLS2_LBL = "DP_DAW_HIDDEN_COLS_RANGE2"
+Const CDP_DAW_HIDDEN_ROW_LBL = "DP_DAW_HIDDEN_ROW_RANGE"
+
+Const COV_DAW_SETUP_SHEETS_RUN_LBL = "OV_DAW_SETUP_SHEETS_RUN"
+Const COV_PAW_SETUP_SHEETS_RUN_LBL = "OV_PAW_SETUP_SHEETS_RUN"
+Const COV_Internal_Attributes_Cols_LBL = "OV_Internal_Attributes_Cols"
+
+Const CR_STR = "<CR>"
+Const CR_TOPIC = "<TOPIC>"
+Const CR_PRODUCT = "<PRODUCT>"
+
+Const CLEGEND_FONT_SIZE = 8
+Const CCOMMENTS_FONT_SIZE = 10
+
+Dim mTstart As Single
+Dim mTend As Single
+Public gExcelMaxRangeProcessTime As Integer
+
+Sub AnalyseDirectory()
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "AnalyseDirectory"
+
+ Dim iniFilePath As String
+ Dim startDir As String
+ Dim fileList As String
+ Dim storeToDir As String
+ Dim resultsFile As String
+ Dim resultsTemplate As String
+ Dim statFileName As String
+ Dim bOverwriteResultsFile As Boolean
+ Dim bNewResultsFile As Boolean
+ Dim outputType As String
+ Dim singleFile As String
+ Dim nTimeNeeded As Long
+ Dim nIncrementFileCounter As Long
+ Dim nMaxWaitBeforeWrite As Long
+ Dim fso As Scripting.FileSystemObject
+ Set fso = New Scripting.FileSystemObject
+
+ SetAppToMinimized
+
+ If InDocPreparation Then
+ mDocPropRowOffset = CDOCPROP_PAW_ROWOFFSET
+ Else
+ mDocPropRowOffset = CROWOFFSET
+ End If
+
+ 'Get Wizard input variables
+ SetupWizardVariables fileList, storeToDir, resultsFile, _
+ mLogFilePath, resultsTemplate, bOverwriteResultsFile, bNewResultsFile, _
+ statFileName, mDebugLevel, outputType, singleFile
+
+ startDir = ProfileGetItem("Analysis", CINPUT_DIR, "", mIniFilePath)
+
+ nIncrementFileCounter = CLng(ProfileGetItem("Analysis", _
+ C_MAX_CHECK_INI, C_MAX_CHECK, mIniFilePath))
+ nMaxWaitBeforeWrite = CLng(ProfileGetItem("Analysis", _
+ C_MAX_WAIT_BEFORE_WRITE_INI, C_MAX_WAIT_BEFORE_WRITE, mIniFilePath))
+ gExcelMaxRangeProcessTime = CInt(ProfileGetItem("Analysis", _
+ C_MAX_RANGE_PROCESS_TIME_INI, C_MAX_RANGE_PROCESS_TIME, mIniFilePath))
+ LocalizeResources
+
+ 'Setup File List
+ 'For Prepare - get list from results spreadsheet with docs analysis found as preparable
+ 'If no results spreadsheet then just try to prepare all the docs - run over full analysis list
+ Dim myFiles As Collection
+ Set myFiles = New Collection
+ Dim sAnalysisOrPrep As String
+ If InDocPreparation And CheckDoPrepare Then
+ sAnalysisOrPrep = "Prepared"
+ If fso.FileExists(storeToDir & "\" & resultsFile) Then
+ If Not GetPrepareFilesToAnalyze(storeToDir & "\" & resultsFile, myFiles, fso) Then
+ SetPrepareToNone
+ WriteDebug currentFunctionName & ": No files to analyse!"
+ GoTo FinalExit 'No files to prepare - exit
+ End If
+ Else
+ If Not GetFilesToAnalyze(fileList, singleFile, myFiles) Then
+ SetPrepareToNone
+ WriteDebug currentFunctionName & ": No files to analyse! Filelist (" & fileList & ") empty?"
+ GoTo FinalExit 'No files to prepare - exit
+ End If
+ End If
+ Else
+ sAnalysisOrPrep = "Analyzed"
+ If Not GetFilesToAnalyze(fileList, singleFile, myFiles) Then
+ WriteDebug currentFunctionName & ": No files to analyse! Filelist (" & fileList & ") empty?"
+ GoTo FinalExit
+ End If
+ End If
+
+ Dim index As Long
+ Dim numFiles As Long
+ Dim nextSave As Long
+ Dim startIndex As Long
+ Dim bResultsWaiting As Boolean
+ Dim AnalysedDocs As Collection
+ Dim startDate As Date
+ Dim currentDate As Date
+
+ Set AnalysedDocs = New Collection
+ numFiles = myFiles.count
+ bResultsWaiting = False
+
+ If (singleFile <> "") Then
+ ' No recovery handling for single file analysis and the value in the
+ ' ini file should be used for bNewResultsFile
+ startIndex = 1
+ Else
+ bNewResultsFile = bNewResultsFile And GetIndexValues(startIndex, nextSave, myFiles)
+ End If
+
+ startDate = Now()
+
+ ' Analyse all files
+ For index = startIndex To numFiles
+ Set mIssuesClassificationDict = New Scripting.Dictionary
+ mIssuesClassificationDict.CompareMode = TextCompare
+ Set mIssuesCostDict = New Scripting.Dictionary
+ 'mIssuesCostDict.CompareMode = TextCompare
+
+ Set mUserFormTypesDict = New Scripting.Dictionary
+ Set mIssuesDict = New Scripting.Dictionary
+ Set mMacroDict = New Scripting.Dictionary
+ Set mPreparedIssuesDict = New Scripting.Dictionary
+
+ 'Write to Application log
+ Dim myAnalyser As MigrationAnalyser
+ Set myAnalyser = New MigrationAnalyser
+
+ If (CheckForAbort) Then GoTo FinalExit
+
+ 'Log Analysis
+ WriteToStatFile statFileName, C_STAT_STARTING, myFiles.item(index), fso
+ WriteToLog "Analyzing", myFiles.item(index)
+ WriteToIni C_NEXT_FILE, myFiles.item(index)
+ mDocIndex = index
+
+ 'Do Analysis
+ myAnalyser.DoAnalyse myFiles.item(index), mUserFormTypesDict, startDir, storeToDir, fso
+
+ AnalysedDocs.Add myAnalyser.Results
+ bResultsWaiting = True
+
+ WriteToLog sAnalysisOrPrep, index & "of" & numFiles & _
+ " " & getAppSpecificApplicationName & " Documents"
+ WriteToLog "Analyzing", "Done"
+ WriteToLog sAnalysisOrPrep & "Doc" & index, myFiles.item(index)
+ Set myAnalyser = Nothing
+
+ If (CheckForAbort) Then GoTo FinalExit
+
+ 'No need to output results spreadsheet, just doing prepare
+ If CheckDoPrepare Then GoTo CONTINUE_FOR
+
+ nTimeNeeded = val(DateDiff("s", startDate, Now()))
+ If ((nTimeNeeded > nMaxWaitBeforeWrite) Or _
+ (index >= nextSave)) Then
+ If WriteResults(storeToDir, resultsFile, resultsTemplate, _
+ bOverwriteResultsFile, bNewResultsFile, _
+ outputType, AnalysedDocs, fso) Then
+ nextSave = index + C_MAX_CHECK
+ bResultsWaiting = False
+ Set AnalysedDocs = New Collection
+ WriteToIni C_LAST_CHECKPOINT, myFiles.item(index)
+ startDate = Now()
+ Else
+ 'write error
+ End If
+ End If
+ WriteToStatFile statFileName, C_STAT_DONE, myFiles.item(index), fso
+CONTINUE_FOR:
+ Next index
+
+ If (bResultsWaiting) Then
+ If WriteResults(storeToDir, resultsFile, resultsTemplate, _
+ bOverwriteResultsFile, bNewResultsFile, _
+ outputType, AnalysedDocs, fso) Then
+ WriteToIni C_LAST_CHECKPOINT, myFiles.item(index - 1)
+ Else
+ 'write error
+ End If
+ End If
+ WriteToStatFile statFileName, C_STAT_FINISHED, "", fso
+
+FinalExit:
+
+ Set fso = Nothing
+ Set myFiles = Nothing
+ Set mIssuesClassificationDict = Nothing
+ Set mIssuesCostDict = Nothing
+ Set mUserFormTypesDict = Nothing
+ Set mIssuesDict = Nothing
+ Set mMacroDict = Nothing
+ Set mPreparedIssuesDict = Nothing
+
+ Set AnalysedDocs = Nothing
+
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+Function WriteResults(storeToDir As String, resultsFile As String, resultsTemplate As String, _
+ bOverwriteResultsFile As Boolean, bNewResultsFile As Boolean, _
+ outputType As String, AnalysedDocs As Collection, _
+ fso As FileSystemObject) As Boolean
+
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "WriteResults"
+
+ If InDocPreparation Then
+ If outputType = COUTPUT_TYPE_XML Or outputType = COUTPUT_TYPE_BOTH Then
+ WriteXMLOutput storeToDir, resultsFile, _
+ bOverwriteResultsFile, bNewResultsFile, AnalysedDocs, fso
+ End If
+ End If
+
+ If outputType = COUTPUT_TYPE_XLS Or outputType = COUTPUT_TYPE_BOTH Then
+ WriteXLSOutput storeToDir, resultsFile, fso.GetAbsolutePathName(resultsTemplate), _
+ bOverwriteResultsFile, bNewResultsFile, AnalysedDocs, fso
+ End If
+
+ WriteResults = True
+ bNewResultsFile = False
+
+FinalExit:
+ Exit Function
+
+HandleErrors:
+ WriteResults = False
+ WriteDebug currentFunctionName & " : " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Function
+
+Function GetFilesToAnalyze_old(startDir As String, bIncludeSubdirs As Boolean, _
+ myFiles As Collection) As Boolean
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "GetFilesToAnalyze"
+ Dim fso As New FileSystemObject
+ Dim theResultsFile As String
+ theResultsFile = ProfileGetItem("Analysis", CINPUT_DIR, "c:\", mIniFilePath) & "\" & ProfileGetItem("Analysis", CRESULTS_FILE, "", mIniFilePath)
+
+ GetFilesToAnalyze = False
+
+ Dim searchTypes As Collection
+ Set searchTypes = New Collection
+ SetupSearchTypes searchTypes
+ If searchTypes.count = 0 Then
+ GoTo FinalExit
+ End If
+
+ Dim myDocFiles As CollectedFiles
+ Set myDocFiles = New CollectedFiles
+ With myDocFiles
+ .BannedList.Add fso.GetAbsolutePathName(getAppSpecificPath & "\" & CWORD_DRIVER_FILE)
+ .BannedList.Add fso.GetAbsolutePathName(getAppSpecificPath & "\" & CEXCEL_DRIVER_FILE)
+ .BannedList.Add fso.GetAbsolutePathName(getAppSpecificPath & "\" & CPP_DRIVER_FILE)
+ .BannedList.Add fso.GetAbsolutePathName(getAppSpecificPath & "\" & CWORD_DRIVER_FILE_TEMP)
+ .BannedList.Add fso.GetAbsolutePathName(getAppSpecificPath & "\" & CEXCEL_DRIVER_FILE_TEMP)
+ .BannedList.Add fso.GetAbsolutePathName(getAppSpecificPath & "\" & CPP_DRIVER_FILE_TEMP)
+ .BannedList.Add theResultsFile
+ End With
+ myDocFiles.Search rootDir:=startDir, FileSpecs:=searchTypes, _
+ IncludeSubdirs:=bIncludeSubdirs
+
+ If getAppSpecificApplicationName = CAPPNAME_WORD Then
+ Set myFiles = myDocFiles.WordFiles
+ ElseIf getAppSpecificApplicationName = CAPPNAME_EXCEL Then
+ Set myFiles = myDocFiles.ExcelFiles
+ ElseIf getAppSpecificApplicationName = CAPPNAME_POWERPOINT Then
+ Set myFiles = myDocFiles.PowerPointFiles
+ Else
+ WriteDebug currentFunctionName & " : invalid application " & getAppSpecificApplicationName
+ GoTo FinalExit
+ End If
+
+ GetFilesToAnalyze = True
+
+FinalExit:
+ Set searchTypes = Nothing
+ Set myDocFiles = Nothing
+
+ Exit Function
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Function
+
+Function GetFilesToAnalyze(fileList As String, startFile As String, _
+ myFiles As Collection) As Boolean
+
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "GetFilesToAnalyze"
+
+ Dim fso As New FileSystemObject
+ Dim fileContent As TextStream
+ Dim fileName As String
+
+ GetFilesToAnalyze = False
+
+ If (startFile = "") Then
+ If (fso.FileExists(fileList)) Then
+ Set fileContent = fso.OpenTextFile(fileList, ForReading, False, TristateTrue)
+ While (Not fileContent.AtEndOfStream)
+ fileName = fileContent.ReadLine
+ fileName = Trim(fileName)
+ If (fileName <> "") Then
+ myFiles.Add (fileName)
+ End If
+ Wend
+ fileContent.Close
+ End If
+ Else
+ myFiles.Add (startFile)
+ End If
+
+ If (myFiles.count <> 0) Then GetFilesToAnalyze = True
+
+FinalExit:
+ Set fileContent = Nothing
+ Set fso = Nothing
+ Exit Function
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Function
+
+Function GetPrepareFilesToAnalyze(resultsFilePath As String, myFiles As Collection, _
+ fso As FileSystemObject) As Boolean
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "GetPrepareFilesToAnalyze"
+
+ GetPrepareFilesToAnalyze = False
+
+ If Not fso.FileExists(resultsFilePath) Then
+ WriteDebug currentFunctionName & ": results file does not exist : " & resultsFilePath
+ GoTo FinalExit
+ End If
+
+ 'Open results spreadsheet
+ Dim xl As Excel.Application
+ If getAppSpecificApplicationName = CAPPNAME_EXCEL Then
+ Set xl = Application
+ xl.Visible = True
+ Else
+ Set xl = GetExcelInstance
+ xl.Visible = False
+ End If
+ Dim logWb As WorkBook
+ Set logWb = xl.Workbooks.Open(resultsFilePath)
+
+ Dim wsDocProp As Worksheet
+ Set wsDocProp = logWb.Sheets(RID_STR_COMMON_RESULTS_SHEET_NAME_DOCPROP)
+
+ Dim startRow As Long
+ Dim endRow As Long
+ startRow = mDocPropRowOffset + 1
+ endRow = GetWorkbookNameValueAsLong(logWb, CTOTAL_DOCS_ANALYZED) + mDocPropRowOffset
+
+ GetPreparableFilesFromDocProps wsDocProp, startRow, endRow, fso, myFiles
+
+ GetPrepareFilesToAnalyze = (myFiles.count > 0)
+
+FinalExit:
+ Set wsDocProp = Nothing
+ If Not logWb Is Nothing Then logWb.Close
+ Set logWb = Nothing
+
+ If getAppSpecificApplicationName <> CAPPNAME_EXCEL Then
+ If Not xl Is Nothing Then
+ If xl.Workbooks.count = 0 Then
+ xl.Quit
+ End If
+ End If
+ End If
+ Set xl = Nothing
+
+ Exit Function
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Function
+
+Function GetPreparableFilesFromDocProps(wsDocProp As Worksheet, startRow As Long, _
+ endRow As Long, fso As FileSystemObject, myFiles As Collection) As Boolean
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "GetPreparableFilesFromDocProps"
+ GetPreparableFilesFromDocProps = False
+
+ Dim index As Long
+ Dim fileName As String
+ Dim fileExt As String
+ Dim docExt As String
+ Dim templateExt As String
+
+ docExt = getAppSpecificDocExt
+ templateExt = getAppSpecificTemplateExt
+
+ For index = startRow To endRow
+ If GetWorksheetCellValueAsLong(wsDocProp, index, CDOCINFOPREPAREDISSUES) > 0 Then
+ fileName = GetWorksheetCellValueAsString(wsDocProp, index, CDOCINFONAME)
+ fileExt = "." & fso.GetExtensionName(fileName)
+ 'Don't have to worry about search types - just looking at existing results
+ 'so just check both legal extensions for this application
+ If fileExt = docExt Or fileExt = templateExt Then
+ myFiles.Add GetWorksheetCellValueAsString(wsDocProp, index, CDOCINFONAMEANDPATH)
+ End If
+ End If
+ Next index
+
+ GetPreparableFilesFromDocProps = myFiles.count > 0
+FinalExit:
+ Exit Function
+
+HandleErrors:
+ GetPreparableFilesFromDocProps = False
+ WriteDebug currentFunctionName & " : " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Function
+
+Sub OpenXLSResultFile(resultsFile As String, _
+ resultsTemplate As String, _
+ bNewResultsFile As Boolean, _
+ excelApp As Excel.Application, _
+ resultSheet As Excel.WorkBook)
+
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "OpenXLSResultFile"
+
+ If getAppSpecificApplicationName = CAPPNAME_EXCEL Then
+ Set excelApp = Application
+ excelApp.Visible = True
+ Else
+ Set excelApp = GetExcelInstance
+ excelApp.Visible = False
+ End If
+
+ If bNewResultsFile Then
+ Set resultSheet = excelApp.Workbooks.Add(Template:=resultsTemplate)
+ Localize_WorkBook resultSheet
+ Else
+ Set resultSheet = excelApp.Workbooks.Open(resultsFile)
+ End If
+
+FinalExit:
+ Exit Sub
+
+HandleErrors:
+ excelApp.DisplayAlerts = False
+ WriteDebug currentFunctionName & " : " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+Sub CloseXLSResultFile(excelApp As Excel.Application, _
+ resultSheet As Excel.WorkBook)
+
+ On Error Resume Next
+
+ If Not resultSheet Is Nothing Then resultSheet.Close
+ Set resultSheet = Nothing
+
+ If getAppSpecificApplicationName <> CAPPNAME_EXCEL Then
+ If Not excelApp Is Nothing Then
+ excelApp.Visible = True
+ If excelApp.Workbooks.count = 0 Then
+ excelApp.Quit
+ End If
+ End If
+ End If
+ Set excelApp = Nothing
+
+ Exit Sub
+End Sub
+
+Sub WriteXLSOutput(storeToDir As String, resultsFile As String, resultsTemplate As String, _
+ bOverwriteResultsFile As Boolean, bNewResultsFile As Boolean, AnalysedDocs As Collection, _
+ fso As Scripting.FileSystemObject)
+
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "WriteXLSOutput"
+
+ Dim offsetDocPropRow As Long
+ Dim offsetDocIssuesRow As Long
+ Dim offsetDocIssueDetailsRow As Long
+ Dim offsetDocRefDetailsRow As Long
+
+ Const COVERVIEW_SHEET_IDX = 1
+ Const CDOCLIST_SHEET_IDX = 2
+ Const CISSUES_ANALYSED_SHEET = 3
+ Const CISSUE_DETAILS_SHEET = 4
+ Const CWORD_ISSUES_SHEET = 5
+ Const CEXCEL_ISSUES_SHEET = 6
+ Const CPOWERPOINT_ISSUES_SHEET = 7
+ Const CREFERENCE_ISSUES_SHEET = 8
+
+ 'Begin writing stats to excel
+ Dim xl As Excel.Application
+ If getAppSpecificApplicationName = CAPPNAME_EXCEL Then
+ Set xl = Application
+ xl.Visible = True
+ Else
+ Set xl = GetExcelInstance
+ xl.Visible = False
+ End If
+
+ Dim logWb As WorkBook
+
+ If bNewResultsFile Then
+ Set logWb = xl.Workbooks.Add(Template:=resultsTemplate)
+ Localize_WorkBook logWb
+ Else
+ Set logWb = xl.Workbooks.Open(storeToDir & "\" & resultsFile)
+ End If
+
+ SetupAnalysisResultsVariables logWb, offsetDocPropRow, _
+ offsetDocIssuesRow, offsetDocIssueDetailsRow, offsetDocRefDetailsRow
+
+ ' Iterate through results and write info
+ Dim aAnalysis As DocumentAnalysis
+ Dim row As Long
+ Dim docCounts As DocumentCount
+ Dim templateCounts As DocumentCount
+
+ Dim issuesRow As Long
+ Dim issueDetailsRow As Long
+ Dim refDetailsRow As Long
+
+ Dim wsOverview As Worksheet
+ Dim wsCosts As Worksheet
+ Dim wsPgStats As Worksheet
+ Dim wsIssues As Worksheet
+ Dim wsIssueDetails As Worksheet
+ Dim wsRefDetails As Worksheet
+
+ Set wsOverview = logWb.Sheets(COVERVIEW_SHEET_IDX)
+ Set wsPgStats = logWb.Sheets(CDOCLIST_SHEET_IDX)
+
+ 'Some localized names might be longer than 31 chars, excel doesn't
+ 'allow such names!
+ On Error Resume Next
+ wsOverview.name = RID_STR_COMMON_RESULTS_SHEET_NAME_OVERVIEW
+ wsPgStats.name = RID_STR_COMMON_RESULTS_SHEET_NAME_DOCPROP
+ On Error GoTo HandleErrors
+
+ If InDocPreparation Then
+ Set wsCosts = logWb.Sheets(CISSUES_ANALYSED_SHEET)
+ Dim appName As String
+ appName = getAppSpecificApplicationName
+ Select Case appName
+ Case "Word"
+ Set wsIssues = logWb.Worksheets(CWORD_ISSUES_SHEET)
+ Case "Excel"
+ Set wsIssues = logWb.Worksheets(CEXCEL_ISSUES_SHEET)
+ Case "PowerPoint"
+ Set wsIssues = logWb.Worksheets(CPOWERPOINT_ISSUES_SHEET)
+ Case Default
+ Err.Raise Number:=-1, Description:="BadAppName"
+ End Select
+ Set wsIssueDetails = logWb.Sheets(CISSUE_DETAILS_SHEET)
+ Set wsRefDetails = logWb.Sheets(CREFERENCE_ISSUES_SHEET)
+ issuesRow = 1 + CROWOFFSET + offsetDocIssuesRow
+ issueDetailsRow = 1 + CROWOFFSET + offsetDocIssueDetailsRow
+ refDetailsRow = 1 + CROWOFFSET + offsetDocRefDetailsRow
+ ' localize PAW worksheets
+ Dim wsWordIssues As Worksheet
+ Dim wsExcelIssues As Worksheet
+ Dim wsPowerPointIssues As Worksheet
+ Set wsWordIssues = logWb.Worksheets(CWORD_ISSUES_SHEET)
+ Set wsExcelIssues = logWb.Worksheets(CEXCEL_ISSUES_SHEET)
+ Set wsPowerPointIssues = logWb.Worksheets(CPOWERPOINT_ISSUES_SHEET)
+
+ On Error Resume Next
+ wsCosts.name = RID_STR_COMMON_RESULTS_SHEET_NAME_COSTS
+ wsIssueDetails.name = RID_STR_COMMON_RESULTS_SHEET_NAME_DOCISSUE_DETAILS
+ wsRefDetails.name = RID_STR_COMMON_RESULTS_SHEET_NAME_DOCREF_DETAILS
+ wsWordIssues.name = RID_STR_COMMON_RESULTS_SHEET_NAME_DOCISSUES_WORD
+ wsExcelIssues.name = RID_STR_COMMON_RESULTS_SHEET_NAME_DOCISSUES_EXCEL
+ wsPowerPointIssues.name = RID_STR_COMMON_RESULTS_SHEET_NAME_DOCISSUES_POWERPOINT
+ On Error GoTo HandleErrors
+ End If
+
+ Dim fileName As String
+ Dim macroClasses As DocMacroClassifications
+ Dim issueClasses As DocIssueClassifications
+
+ For row = 1 To AnalysedDocs.count 'Need Row count - so not using Eor Each
+ Set aAnalysis = AnalysedDocs.item(row)
+ fileName = fso.GetFileName(aAnalysis.name)
+
+ If InDocPreparation Then
+ issuesRow = WriteDocIssues(wsIssues, issuesRow, aAnalysis, fileName)
+ issueDetailsRow = _
+ ProcessIssuesAndWriteDocIssueDetails(logWb, wsIssueDetails, issueDetailsRow, aAnalysis, fileName)
+ refDetailsRow = _
+ WriteDocRefDetails(wsRefDetails, refDetailsRow, aAnalysis, fileName)
+ aAnalysis.MacroCosts = getMacroIssueCosts(logWb, aAnalysis)
+ WriteDocProperties wsPgStats, row + offsetDocPropRow, aAnalysis, fileName
+ Else
+ ProcessIssuesForDAW logWb, aAnalysis, fileName
+ WriteDocProperties wsPgStats, row + offsetDocPropRow, aAnalysis, fileName
+ End If
+
+ UpdateAllCounts aAnalysis, docCounts, templateCounts, macroClasses, issueClasses, fso
+
+ Set aAnalysis = Nothing
+ Next row
+
+ ' We change the font used for text box shapes here for the japanese
+ ' version, because office 2000 sometimes displays squares instead of
+ ' chars
+ Dim langStr As String
+ Dim userLCID As Long
+ Dim textSize As Long
+ Dim fontName As String
+
+ userLCID = GetUserDefaultLangID()
+ langStr = GetUserLocaleInfo(userLCID, LOCALE_SISO639LANGNAME)
+
+ If (langStr = "ja") Then
+ WriteDebug currentFunctionName & " : Setting font to MS PGothic for 'ja' locale"
+ fontName = "MS PGothic"
+ textSize = 10
+ Else
+ fontName = "Arial"
+ textSize = CLEGEND_FONT_SIZE
+ End If
+
+ 'DAW - PAW switches
+ If InDocPreparation Then
+ SaveAnalysisResultsVariables logWb, issueDetailsRow - (1 + CROWOFFSET), _
+ refDetailsRow - (1 + CROWOFFSET)
+
+ WriteOverview logWb, docCounts, templateCounts, macroClasses, issueClasses
+
+ SetupPAWResultsSpreadsheet logWb, fontName, textSize
+ WriteIssueCounts logWb
+ Else
+ WriteOverview logWb, docCounts, templateCounts, macroClasses, issueClasses
+
+ 'StartTiming
+ SetupDAWResultsSpreadsheet logWb, fontName, textSize
+ 'EndTiming "SetupDAWResultsSpreadsheet"
+ End If
+
+ SetupPrintRanges logWb, row, issuesRow, issueDetailsRow, refDetailsRow
+
+ If resultsFile <> "" Then
+ 'Overwrite existing results file without prompting
+ If bOverwriteResultsFile Or (Not bNewResultsFile) Then
+ xl.DisplayAlerts = False
+ End If
+
+ logWb.SaveAs fileName:=storeToDir & "\" & resultsFile
+ xl.DisplayAlerts = True
+ End If
+
+FinalExit:
+ If Not xl Is Nothing Then
+ xl.Visible = True
+ End If
+
+ Set wsOverview = Nothing
+ Set wsPgStats = Nothing
+
+ If InDocPreparation Then
+ Set wsCosts = Nothing
+ Set wsIssues = Nothing
+ Set wsIssueDetails = Nothing
+ Set wsRefDetails = Nothing
+ End If
+
+ If Not logWb Is Nothing Then logWb.Close
+ Set logWb = Nothing
+
+ If getAppSpecificApplicationName <> CAPPNAME_EXCEL Then
+ If Not xl Is Nothing Then
+ If xl.Workbooks.count = 0 Then
+ xl.Quit
+ End If
+ End If
+ End If
+ Set xl = Nothing
+
+ Exit Sub
+
+HandleErrors:
+ xl.DisplayAlerts = False
+
+ WriteDebug currentFunctionName & " : " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+Public Sub StartTiming()
+ mTstart = 0
+ mTend = 0
+ mTstart = GetTickCount()
+End Sub
+Public Sub EndTiming(what As String)
+ mTend = GetTickCount()
+ WriteDebug "Timing: " & what & ": " & (FormatNumber((mTend - mTstart) / 1000, 0) & " seconds")
+ mTstart = 0
+ mTend = 0
+End Sub
+Sub WriteIssueCounts(logWb As WorkBook)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "WriteIssueCounts"
+
+ Dim Str As String
+ Dim str1 As String
+ Dim val1 As Long
+ Dim count As Long
+ Dim vKeyArray As Variant
+ Dim vItemArray As Variant
+ Dim vPrepKeyArray As Variant
+ Dim vPrepItemArray As Variant
+
+ vKeyArray = mIssuesDict.Keys
+ vItemArray = mIssuesDict.Items
+
+ vPrepKeyArray = mPreparedIssuesDict.Keys
+ vPrepItemArray = mPreparedIssuesDict.Items
+
+ 'Write Issue Counts across all Documents
+ For count = 0 To mIssuesDict.count - 1
+ str1 = vKeyArray(count)
+ val1 = CInt(vItemArray(count))
+ logWb.Names(str1).RefersToRange.Cells(1, 1) = _
+ logWb.Names(str1).RefersToRange.Cells(1, 1).value + vItemArray(count)
+ 'DEBUG: str = str & "Key: " & str1 & " Value: " & val1 & vbLf
+ Next count
+
+ 'Write Prepared Issues Counts across all Documents
+ For count = 0 To mPreparedIssuesDict.count - 1
+ str1 = vPrepKeyArray(count)
+ val1 = CInt(vPrepItemArray(count))
+ AddVariantToWorkbookNameValue logWb, str1, vPrepItemArray(count)
+ 'DEBUG: str = str & "Key: " & str1 & " Value: " & val1 & vbLf
+ Next count
+
+ 'User Form control type count across all analyzed documents of this type
+ str1 = getAppSpecificApplicationName & "_" & _
+ CSTR_ISSUE_VBA_MACROS & "_" & _
+ CSTR_SUBISSUE_PROPERTIES & "_" & _
+ CSTR_SUBISSUE_VBA_MACROS_USERFORMS_CONTROLTYPE_COUNT
+ SetWorkbookNameValueToLong logWb, str1, mUserFormTypesDict.count
+
+ 'Add list of User Form controls and counts to ...USERFORMS_CONTROLTYPE_COUNT field
+ If mUserFormTypesDict.count > 0 Then
+ vKeyArray = mUserFormTypesDict.Keys
+ vItemArray = mUserFormTypesDict.Items
+
+ Str = RID_STR_COMMON_ATTRIBUTE_CONTROLS & ": "
+ For count = 0 To mUserFormTypesDict.count - 1
+ Str = Str & vbLf & vKeyArray(count) & " " & vItemArray(count)
+ Next count
+ WriteUserFromControlTypesComment logWb, str1, Str
+ End If
+ 'DEBUG: MsgBox str & vbLf & mIssuesDict.count
+
+ WriteUniqueModuleCount logWb
+
+FinalExit:
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & _
+ " : logging costs : " & _
+ Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+Sub WriteUniqueModuleCount(logWb As WorkBook)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "WriteUniqueModuleCount"
+
+ Dim strLabel As String
+ Dim uniqueLineCount As Long
+ Dim uniqueModuleCount As Long
+ Dim count As Long
+ Dim vItemArray As Variant
+
+ vItemArray = mMacroDict.Items
+
+ 'Write Issues Costs
+ uniqueLineCount = 0
+ For count = 0 To mMacroDict.count - 1
+ uniqueLineCount = uniqueLineCount + CInt(vItemArray(count))
+ Next count
+ uniqueModuleCount = mMacroDict.count
+
+
+ strLabel = getAppSpecificApplicationName & "_" & _
+ CSTR_ISSUE_VBA_MACROS & "_" & _
+ CSTR_SUBISSUE_PROPERTIES & "_" & _
+ CSTR_SUBISSUE_VBA_MACROS_UNIQUE_MODULE_COUNT
+ SetWorkbookNameValueToLong logWb, strLabel, uniqueModuleCount
+
+ strLabel = getAppSpecificApplicationName & "_" & _
+ CSTR_ISSUE_VBA_MACROS & "_" & _
+ CSTR_SUBISSUE_PROPERTIES & "_" & _
+ CSTR_SUBISSUE_VBA_MACROS_UNIQUE_LINE_COUNT
+ SetWorkbookNameValueToLong logWb, strLabel, uniqueLineCount
+
+FinalExit:
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & _
+ " : logging Unique Module/ Line Counts : " & _
+ Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+Sub WriteUserFromControlTypesComment(logWb As WorkBook, name As String, comment As String)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "WriteUserFromControlTypesComment"
+
+ On Error Resume Next 'Ignore error if trying to add comment again - would happen on append to results
+ logWb.Names(name).RefersToRange.Cells(1, 1).AddComment
+
+ On Error GoTo HandleErrors
+ logWb.Names(name).RefersToRange.Cells(1, 1).comment.Text Text:=comment
+ 'Autosize not supported - Office 2000
+ 'logWb.Names(name).RefersToRange.Cells(1, 1).comment.AutoSize = True
+ logWb.Names(name).RefersToRange.Cells(1, 1).comment.Visible = False
+
+FinalExit:
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & _
+ " : name : " & name & _
+ " : comment : " & comment & _
+ Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+Sub UpdateAllCounts(aAnalysis As DocumentAnalysis, counts As DocumentCount, templateCounts As DocumentCount, _
+ macroClasses As DocMacroClassifications, issueClasses As DocIssueClassifications, _
+ fso As FileSystemObject)
+ Const CMODDATE_LESS3MONTHS = 91
+ Const CMODDATE_LESS6MONTHS = 182
+ Const CMODDATE_LESS12MONTHS = 365
+
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "UpdateAllCounts"
+ 'DocIssue Classification occurs in setDocOverallIssueClassification under
+ ' ProcessIssuesAndWriteDocIssueDetails when all DocIssues are being traversed.
+ 'MacroClass for the Doc is setup at the end of the Analyze_Macros in DoAnalysis
+ 'Mod Dates are determined in SetDocProperties in DoAnalysis
+
+ 'DocMacroClassifications
+ Select Case aAnalysis.MacroOverallClass
+ Case enMacroComplex
+ macroClasses.complex = macroClasses.complex + 1
+ Case enMacroMedium
+ macroClasses.Medium = macroClasses.Medium + 1
+ Case enMacroSimple
+ macroClasses.Simple = macroClasses.Simple + 1
+ Case Else
+ macroClasses.None = macroClasses.None + 1
+ End Select
+
+ 'DocIssueClassifications
+ aAnalysis.BelowIssuesLimit = True
+ Select Case aAnalysis.DocOverallIssueClass
+ Case enComplex
+ issueClasses.complex = issueClasses.complex + 1
+ Case enMinor
+ issueClasses.Minor = issueClasses.Minor + 1
+ Case Else
+ issueClasses.None = issueClasses.None + 1
+ End Select
+
+ 'DocumentCounts
+ Dim extStr As String
+ extStr = "." & LCase(fso.GetExtensionName(aAnalysis.name))
+ If extStr = getAppSpecificDocExt Then
+ UpdateDocCounts counts, aAnalysis
+ ElseIf extStr = getAppSpecificTemplateExt Then
+ UpdateDocCounts templateCounts, aAnalysis
+ Else
+ WriteDebug currentFunctionName & " : path " & aAnalysis.name & _
+ ": unhandled file extesnion " & extStr & " : " & Err.Number & " " & Err.Description & " " & Err.Source
+ End If
+
+FinalExit:
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : path " & aAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+Sub UpdateDocCounts(counts As DocumentCount, aAnalysis As DocumentAnalysis)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "UpdateDocCounts"
+
+ counts.numDocsAnalyzed = counts.numDocsAnalyzed + 1
+ If aAnalysis.IssuesCount > 0 Then 'During Analysis incremented
+ counts.numDocsAnalyzedWithIssues = counts.numDocsAnalyzedWithIssues + 1
+
+ If aAnalysis.BelowIssuesLimit Then
+ counts.numMinorIssues = _
+ counts.numMinorIssues + aAnalysis.MinorIssuesCount
+ 'MinorIssuesCount incemented as all DocIssues are being traversed are being written out - ProcessIssuesAndWriteDocIssueDetails
+ counts.numComplexIssues = counts.numComplexIssues + aAnalysis.ComplexIssuesCount 'Calculated
+ counts.totalDocIssuesCosts = counts.totalDocIssuesCosts + _
+ aAnalysis.DocIssuesCosts
+ counts.totalPreparableIssuesCosts = counts.totalPreparableIssuesCosts + _
+ aAnalysis.PreparableIssuesCosts
+ End If
+
+ counts.numMacroIssues = counts.numMacroIssues + aAnalysis.MacroIssuesCount 'During Analysis incremented
+ counts.totalMacroCosts = counts.totalMacroCosts + aAnalysis.MacroCosts
+ End If
+
+FinalExit:
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : path " & aAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+
+Sub WriteDocProperties(wsPgStats As Worksheet, row As Long, aAnalysis As DocumentAnalysis, _
+ fileName As String)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "WriteDocProperties"
+
+ Dim rowIndex As Long
+ rowIndex = row + mDocPropRowOffset
+
+ If aAnalysis.Application = RID_STR_COMMON_CANNOT_OPEN Then
+ SetWorksheetCellValueToString wsPgStats, rowIndex, CDOCINFONAME, fileName
+ SetWorksheetCellValueToString wsPgStats, rowIndex, CDOCINFOAPPLICATION, aAnalysis.Application
+ SetWorksheetCellValueToString wsPgStats, rowIndex, CDOCINFONAMEANDPATH, aAnalysis.name
+
+ GoTo FinalExit
+ End If
+
+ If InDocPreparation Then
+ SetWorksheetCellValueToString wsPgStats, rowIndex, CDOCINFONAME, fileName
+ SetWorksheetCellValueToString wsPgStats, rowIndex, CDOCINFOAPPLICATION, aAnalysis.Application
+
+ SetWorksheetCellValueToLong wsPgStats, rowIndex, CDOCINFODOCISSUECOSTS, aAnalysis.DocIssuesCosts
+ SetWorksheetCellValueToLong wsPgStats, rowIndex, CDOCINFOPREPARABLEISSUECOSTS, aAnalysis.PreparableIssuesCosts
+ SetWorksheetCellValueToLong wsPgStats, rowIndex, CDOCINFOMACROISSUECOSTS, aAnalysis.MacroCosts
+
+ SetWorksheetCellValueToString wsPgStats, rowIndex, CDOCINFOISSUE_CLASS, _
+ getDocOverallIssueClassificationAsString(aAnalysis.DocOverallIssueClass)
+ SetWorksheetCellValueToLong wsPgStats, rowIndex, CDOCINFOCOMPLEXISSUES, aAnalysis.ComplexIssuesCount
+ SetWorksheetCellValueToLong wsPgStats, rowIndex, CDOCINFOMINORISSUES, aAnalysis.MinorIssuesCount
+ SetWorksheetCellValueToLong wsPgStats, rowIndex, CDOCINFOPREPAREDISSUES, aAnalysis.PreparableIssuesCount
+
+ SetWorksheetCellValueToString wsPgStats, rowIndex, CDOCINFOMACRO_CLASS, _
+ getDocOverallMacroClassAsString(aAnalysis.MacroOverallClass)
+ SetWorksheetCellValueToLong wsPgStats, rowIndex, CDOCINFOMACRO_USERFORMS, aAnalysis.MacroNumUserForms
+ SetWorksheetCellValueToLong wsPgStats, rowIndex, CDOCINFOMACRO_LINESOFCODE, aAnalysis.MacroTotalNumLines
+
+ SetWorksheetCellValueToLong wsPgStats, rowIndex, CDOCINFONUMBERPAGES, aAnalysis.PageCount
+ SetWorksheetCellValueToVariant wsPgStats, rowIndex, CDOCINFOCREATED, CheckDate(aAnalysis.Created)
+ SetWorksheetCellValueToVariant wsPgStats, rowIndex, CDOCINFOLASTMODIFIED, CheckDate(aAnalysis.Modified)
+ SetWorksheetCellValueToVariant wsPgStats, rowIndex, CDOCINFOLASTACCESSED, CheckDate(aAnalysis.Accessed)
+ SetWorksheetCellValueToVariant wsPgStats, rowIndex, CDOCINFOLASTPRINTED, CheckDate(aAnalysis.Printed)
+
+ SetWorksheetCellValueToString wsPgStats, rowIndex, CDOCINFOLASTSAVEDBY, aAnalysis.SavedBy
+ SetWorksheetCellValueToString wsPgStats, rowIndex, CDOCINFOREVISION, aAnalysis.Revision
+ SetWorksheetCellValueToString wsPgStats, rowIndex, CDOCINFOTEMPLATE, aAnalysis.Template
+ SetWorksheetCellValueToString wsPgStats, rowIndex, CDOCINFONAMEANDPATH, aAnalysis.name
+ Else
+ SetWorksheetCellValueToString wsPgStats, rowIndex, CDOCINFONAME, fileName
+ SetWorksheetCellValueToString wsPgStats, rowIndex, CDOCINFOAPPLICATION, aAnalysis.Application
+ SetWorksheetCellValueToString wsPgStats, rowIndex, CDOCINFOISSUE_CLASS, _
+ getDocOverallIssueClassificationAsString(aAnalysis.DocOverallIssueClass)
+ SetWorksheetCellValueToString wsPgStats, rowIndex, CDOCINFOMACRO_CLASS, _
+ getDocOverallMacroClassAsString(aAnalysis.MacroOverallClass)
+ SetWorksheetCellValueToVariant wsPgStats, rowIndex, CDOCINFOLASTMODIFIED, CheckDate(aAnalysis.Modified)
+ SetWorksheetCellValueToString wsPgStats, rowIndex, CDOCINFONAMEANDPATH, aAnalysis.name
+ End If
+
+FinalExit:
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : path " & aAnalysis.name & " : " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+Function CheckDate(myDate As Date) As Variant
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "CheckDate"
+
+ Dim lowerNTDateLimit As Date
+ If Not IsDate(myDate) Then
+ CheckDate = RID_STR_COMMON_NA
+ Exit Function
+ End If
+
+ lowerNTDateLimit = DateSerial(1980, 1, 1)
+ CheckDate = IIf(myDate < lowerNTDateLimit, RID_STR_COMMON_NA, myDate)
+FinalExit:
+ Exit Function
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : date " & myDate & " : " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Function
+
+Function WriteDocIssues(wsIssues As Worksheet, row As Long, _
+ aAnalysis As DocumentAnalysis, fileName As String) As Long
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "WriteDocIssues"
+
+ Const CNAME = 1
+ Const CAPPLICATION = CNAME + 1
+ Const CISSUE_COLUMNOFFSET = CAPPLICATION
+
+ If aAnalysis.IssuesCount = 0 Then
+ WriteDocIssues = row
+ Exit Function
+ End If
+ SetWorksheetCellValueToString wsIssues, row, CNAME, fileName
+ SetWorksheetCellValueToString wsIssues, row, CAPPLICATION, aAnalysis.Application
+
+ Dim index As Integer
+ For index = 1 To aAnalysis.TotalIssueTypes
+ If aAnalysis.IssuesCountArray(index) > 0 Then
+ SetWorksheetCellValueToString wsIssues, row, CISSUE_COLUMNOFFSET + index, aAnalysis.IssuesCountArray(index)
+ End If
+ Next index
+ SetWorksheetCellValueToString wsIssues, row, CISSUE_COLUMNOFFSET + aAnalysis.TotalIssueTypes + 1, aAnalysis.name
+
+ WriteDocIssues = row + 1
+FinalExit:
+ Exit Function
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : path " & aAnalysis.name & " : " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Function
+Sub ProcessIssuesForDAW(logWb As WorkBook, aAnalysis As DocumentAnalysis, fileName As String)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "ProcessIssuesForDAW"
+
+ Dim myIssue As IssueInfo
+ Dim issueClass As EnumDocOverallIssueClass
+
+ Dim index As Integer
+ For index = 1 To aAnalysis.Issues.count
+ Set myIssue = aAnalysis.Issues(index)
+
+ If Not isMacroIssue(myIssue) Then
+ issueClass = getDocIssueClassification(logWb, myIssue)
+ CountDocIssuesForDoc issueClass, aAnalysis
+ SetOverallDocIssueClassification issueClass, aAnalysis
+ End If
+
+ Set myIssue = Nothing
+ Next index
+
+FinalExit:
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : path " & aAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+Function ProcessIssuesAndWriteDocIssueDetails(logWb As WorkBook, wsIssueDetails As Worksheet, DetailsRow As Long, _
+ aAnalysis As DocumentAnalysis, fileName As String) As Long
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "ProcessIssueAndWriteDocIssueDetails"
+
+ Dim myIssue As IssueInfo
+ Dim rowIndex As Long
+ Dim issueClass As EnumDocOverallIssueClass
+ Dim issueCost As Long
+
+ rowIndex = DetailsRow
+
+ Dim index As Integer
+ For index = 1 To aAnalysis.Issues.count
+ Set myIssue = aAnalysis.Issues(index)
+
+ ' Process Document Issues and Costs for the Document
+ ' Will be output to List of Documents sheet by WriteDocProperties( )
+ If Not isMacroIssue(myIssue) Then
+ issueClass = getDocIssueClassification(logWb, myIssue)
+ CountDocIssuesForDoc issueClass, aAnalysis
+ SetOverallDocIssueClassification issueClass, aAnalysis
+ issueCost = getDocIssueCost(logWb, aAnalysis, myIssue)
+ aAnalysis.DocIssuesCosts = aAnalysis.DocIssuesCosts + issueCost
+ If myIssue.Preparable Then
+ aAnalysis.PreparableIssuesCosts = aAnalysis.PreparableIssuesCosts + issueCost
+ End If
+ End If
+
+ 'Collate Issue and Factor counts across all Documents
+ 'Will be output to the Issues Analyzed sheet by WriteIssueCounts( )
+ CollateIssueAndFactorCountsAcrossAllDocs aAnalysis, myIssue, fileName
+
+ OutputCommonIssueDetails wsIssueDetails, rowIndex, aAnalysis, myIssue, fileName
+ OutputCommonIssueAttributes wsIssueDetails, rowIndex, myIssue
+ rowIndex = rowIndex + 1
+ Set myIssue = Nothing
+ Next index
+
+ ProcessIssuesAndWriteDocIssueDetails = rowIndex
+
+FinalExit:
+ Exit Function
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : path " & aAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Function
+
+Function getDocIssueCost(logWb As WorkBook, aAnalysis As DocumentAnalysis, myIssue As IssueInfo) As Long
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "getDocIssueCost"
+
+ Dim issueKey As String
+ Dim ret As Long
+ ret = 0
+
+ issueKey = getAppSpecificApplicationName & "_" & myIssue.IssueTypeXML & "_" & myIssue.SubTypeXML
+
+ ret = getIssueValueFromXLSorDict(logWb, aAnalysis, mIssuesCostDict, issueKey, 1, CCOST_COL_OFFSET)
+
+FinalExit:
+ getDocIssueCost = ret
+ Exit Function
+
+HandleErrors:
+ ret = 0
+ WriteDebug currentFunctionName & " : path " & aAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Function
+Function getMacroIssueCosts(logWb As WorkBook, aAnalysis As DocumentAnalysis) As Long
+ 'Error handling not required
+ getMacroIssueCosts = getVBAMacroIssueCost(logWb, aAnalysis) '+ getMacroExtRefIssueCost(logWb, aAnalysis)
+ 'NOTE: Currently not counting External Refs as Macro Cost
+ 'could be added if porting off Windows
+
+End Function
+
+Function getVBAMacroIssueCost(logWb As WorkBook, aAnalysis As DocumentAnalysis) As Long
+ Const CMACRO_ROW_OFFSET_UNIQUE_LINES_COST = 4
+ Const CMACRO_ROW_OFFSET_USER_FORMS_COUNT_COST = 5
+ Const CMACRO_ROW_OFFSET_USER_FORMS_CONTROL_COUNT_COST = 6
+ Const CMACRO_ROW_OFFSET_USER_FORMS_CONTROL_TYPE_COUNT_COST = 7
+
+ Const CMACRO_NUM_OF_LINES_FACTOR_KEY = "_UniqueLineCount"
+ Const CMACRO_USER_FORMS_COUNT_FACTOR_KEY = "_UserFormsCount"
+ Const CMACRO_USER_FORMS_CONTROL_COUNT_FACTOR_KEY = "_UserFormsControlCount"
+ Const CMACRO_USER_FORMS_CONTROL_TYPE_COUNT_FACTOR_KEY = "_UserFormsControlTypeCount"
+
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "getVBAMacroIssueCost"
+
+ Dim baseIssueKey As String
+ Dim ret As Long
+ ret = 0
+
+ If Not aAnalysis.HasMacros Then GoTo FinalExit
+
+ 'Fetch VBA Macro Cost Factors - if required
+ baseIssueKey = getAppSpecificApplicationName & "_" & CSTR_ISSUE_VBA_MACROS & "_" & CSTR_SUBISSUE_PROPERTIES
+
+ 'Num Lines - Costing taken from "Lines in Unique Modules"
+ If aAnalysis.MacroTotalNumLines > 0 Then
+ ret = ret + aAnalysis.MacroTotalNumLines * _
+ getValueFromXLSorDict(logWb, aAnalysis, mIssuesCostDict, _
+ baseIssueKey & CMACRO_NUM_OF_LINES_FACTOR_KEY, baseIssueKey, _
+ CMACRO_ROW_OFFSET_UNIQUE_LINES_COST, CCOST_COL_OFFSET)
+ End If
+ 'User Forms Count
+ If aAnalysis.MacroNumUserForms > 0 Then
+ ret = ret + aAnalysis.MacroNumUserForms * _
+ getValueFromXLSorDict(logWb, aAnalysis, mIssuesCostDict, _
+ baseIssueKey & CMACRO_USER_FORMS_COUNT_FACTOR_KEY, baseIssueKey, _
+ CMACRO_ROW_OFFSET_USER_FORMS_COUNT_COST, CCOST_COL_OFFSET)
+ End If
+ 'User Forms Control Count
+ If aAnalysis.MacroNumUserFormControls > 0 Then
+ ret = ret + aAnalysis.MacroNumUserFormControls * _
+ getValueFromXLSorDict(logWb, aAnalysis, mIssuesCostDict, _
+ baseIssueKey & CMACRO_USER_FORMS_CONTROL_COUNT_FACTOR_KEY, baseIssueKey, _
+ CMACRO_ROW_OFFSET_USER_FORMS_CONTROL_COUNT_COST, CCOST_COL_OFFSET)
+ End If
+ 'User Forms Control Type Count
+ If aAnalysis.MacroNumUserFormControlTypes > 0 Then
+ ret = ret + aAnalysis.MacroNumUserFormControlTypes * getValueFromXLSorDict(logWb, aAnalysis, mIssuesCostDict, _
+ baseIssueKey & CMACRO_USER_FORMS_CONTROL_TYPE_COUNT_FACTOR_KEY, baseIssueKey, CMACRO_ROW_OFFSET_USER_FORMS_CONTROL_TYPE_COUNT_COST, CCOST_COL_OFFSET)
+ End If
+
+
+FinalExit:
+ getVBAMacroIssueCost = ret
+ Exit Function
+
+HandleErrors:
+ ret = 0
+ WriteDebug currentFunctionName & " : path " & aAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Function
+Function getMacroExtRefIssueCost(logWb As WorkBook, aAnalysis As DocumentAnalysis) As Long
+ Const CMACRO_ROW_OFFSET_NUM_EXTERNAL_REFS_COST = 2
+ Const CMACRO_NUM_EXTERNAL_REFS_FACTOR_KEY = "_ExternalRefs"
+
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "getMacroExtRefIssueCost"
+ Dim baseIssueKey As String
+ Dim ret As Long
+ ret = 0
+
+ If aAnalysis.MacroNumExternalRefs <= 0 Then GoTo FinalExit
+
+ 'Fetch External Ref Cost Factors
+ baseIssueKey = getAppSpecificApplicationName & "_" & CSTR_ISSUE_PORTABILITY & "_" & _
+ CSTR_SUBISSUE_EXTERNAL_REFERENCES_IN_MACRO
+ ret = ret + aAnalysis.MacroNumExternalRefs * _
+ getValueFromXLSorDict(logWb, aAnalysis, mIssuesCostDict, _
+ baseIssueKey & CMACRO_NUM_EXTERNAL_REFS_FACTOR_KEY, baseIssueKey, _
+ CMACRO_ROW_OFFSET_NUM_EXTERNAL_REFS_COST, CCOST_COL_OFFSET)
+
+FinalExit:
+ getMacroExtRefIssueCost = ret
+ Exit Function
+
+HandleErrors:
+ ret = 0
+ WriteDebug currentFunctionName & " : path " & aAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Function
+Function getIssueValueFromXLSorDict(logWb As WorkBook, aAnalysis As DocumentAnalysis, dict As Scripting.Dictionary, _
+ key As String, row As Long, column As Long) As Long
+ 'Error handling not required
+ getIssueValueFromXLSorDict = getValueFromXLSorDict(logWb, aAnalysis, dict, key, key, row, column)
+End Function
+
+Function getValueFromXLSorDict(logWb As WorkBook, aAnalysis As DocumentAnalysis, dict As Scripting.Dictionary, _
+ dictKey As String, xlsKey As String, row As Long, column As Long) As Long
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "getValueFromXLSorDict"
+
+ Dim ret As Long
+ ret = 0
+
+ If dict.Exists(dictKey) Then
+ ret = dict.item(dictKey)
+ Else
+ On Error Resume Next
+ ret = logWb.Names(xlsKey).RefersToRange.Cells(row, column).value
+ 'Log as error missing key
+ If Err.Number <> 0 Then
+ WriteDebug currentFunctionName & _
+ " : Issue Cost Key - " & xlsKey & ": label missing from results.xlt Costs sheet, check sheet and add/ check spelling label" & Err.Number & " " & Err.Description & " " & Err.Source
+ WriteDebug currentFunctionName & " : dictKey " & dictKey & " : xlsKey " & xlsKey & " : " & Err.Number & " " & Err.Description & " " & Err.Source
+ ret = 0
+ End If
+ On Error GoTo HandleErrors
+ dict.Add dictKey, ret
+ End If
+
+FinalExit:
+ getValueFromXLSorDict = ret
+ Exit Function
+
+HandleErrors:
+ ret = 0
+ WriteDebug currentFunctionName & " : path " & aAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Function
+Function isMacroIssue(myIssue As IssueInfo)
+ 'Error handling not required
+ isMacroIssue = False
+
+ If myIssue.IssueTypeXML = CSTR_ISSUE_VBA_MACROS Or _
+ (myIssue.IssueTypeXML = CSTR_ISSUE_PORTABILITY And _
+ myIssue.SubTypeXML = CSTR_SUBISSUE_EXTERNAL_REFERENCES_IN_MACRO) Then
+ isMacroIssue = True
+ End If
+End Function
+Sub CountDocIssuesForDoc(issueClass As EnumDocOverallIssueClass, aAnalysis As DocumentAnalysis)
+ 'Error handling not required
+
+ If issueClass = enMinor Then
+ aAnalysis.MinorIssuesCount = aAnalysis.MinorIssuesCount + 1
+ End If
+ ' Macro issues are counted during analysis
+ ' Complex issues is calculated from: mIssues.count - mMinorIssuesCount - mMacroIssuesCount
+End Sub
+Sub SetOverallDocIssueClassification(issueClass As EnumDocOverallIssueClass, aAnalysis As DocumentAnalysis)
+ 'Error handling not required
+
+ If aAnalysis.DocOverallIssueClass = enComplex Then Exit Sub
+
+ If issueClass = enComplex Then
+ aAnalysis.DocOverallIssueClass = enComplex
+ Else
+ aAnalysis.DocOverallIssueClass = enMinor
+ End If
+End Sub
+Function getDocIssueClassification(logWb As WorkBook, myIssue As IssueInfo) As EnumDocOverallIssueClass
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "getDocIssueClassification"
+ Dim issueKey As String
+ Dim bRet As Boolean
+ bRet = False
+ getDocIssueClassification = enMinor
+
+ issueKey = getAppSpecificApplicationName & "_" & myIssue.IssueTypeXML & "_" & myIssue.SubTypeXML
+ If mIssuesClassificationDict.Exists(issueKey) Then
+ bRet = mIssuesClassificationDict.item(issueKey)
+ Else
+ On Error Resume Next
+ bRet = logWb.Names(issueKey).RefersToRange.Cells(1, 0).value
+ 'Log as error missing key
+ If Err.Number <> 0 Then
+ WriteDebug currentFunctionName & _
+ " : Issue Cost Key - " & issueKey & ": label missing from results.xlt Costs sheet, check sheet and add/ check spelling label" & Err.Number & " " & Err.Description & " " & Err.Source
+ bRet = False
+ End If
+ On Error GoTo HandleErrors
+ mIssuesClassificationDict.Add issueKey, bRet
+ End If
+
+
+FinalExit:
+ If bRet Then
+ getDocIssueClassification = enComplex
+ End If
+ Exit Function
+
+HandleErrors:
+ bRet = False
+ WriteDebug currentFunctionName & " : issueKey " & issueKey & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Function
+
+Function getDocOverallIssueClassificationAsString(docIssueClass As EnumDocOverallIssueClass) As String
+ Dim Str As String
+ 'Error handling not required
+
+ Select Case docIssueClass
+ Case enComplex
+ Str = RID_STR_COMMON_ISSUE_CLASS_COMPLEX
+ Case enMinor
+ Str = RID_STR_COMMON_ISSUE_CLASS_MINOR
+ Case Else
+ Str = RID_STR_COMMON_ISSUE_CLASS_NONE
+ End Select
+
+ getDocOverallIssueClassificationAsString = Str
+End Function
+
+Public Function getDocOverallMacroClassAsString(docMacroClass As EnumDocOverallMacroClass) As String
+ Dim Str As String
+ 'Error handling not required
+
+ Select Case docMacroClass
+ Case enMacroComplex
+ Str = RID_STR_COMMON_MACRO_CLASS_COMPLEX
+ Case enMacroMedium
+ Str = RID_STR_COMMON_MACRO_CLASS_MEDIUM
+ Case enMacroSimple
+ Str = RID_STR_COMMON_MACRO_CLASS_SIMPLE
+ Case Else
+ Str = RID_STR_COMMON_MACRO_CLASS_NONE
+ End Select
+
+ getDocOverallMacroClassAsString = Str
+End Function
+
+Function WriteDocRefDetails(wsRefDetails As Worksheet, DetailsRow As Long, _
+ aAnalysis As DocumentAnalysis, fileName As String) As Long
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "WriteDocRefDetails"
+
+ Dim myIssue As IssueInfo
+ Dim rowIndex As Long
+ rowIndex = DetailsRow
+
+ Dim index As Integer
+
+ 'Output References for Docs with Macros
+ If aAnalysis.HasMacros And (aAnalysis.References.count > 0) Then
+ For index = 1 To aAnalysis.References.count
+ Set myIssue = aAnalysis.References(index)
+ OutputReferenceAttributes wsRefDetails, rowIndex, aAnalysis, myIssue, fileName
+ rowIndex = rowIndex + 1
+ Set myIssue = Nothing
+ Next index
+ End If
+
+ WriteDocRefDetails = rowIndex
+
+FinalExit:
+ Exit Function
+
+HandleErrors:
+ WriteDebug currentFunctionName & _
+ " : path " & aAnalysis.name & ": " & _
+ " : row " & DetailsRow & ": " & _
+ Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Function
+Sub OutputReferenceAttributes(wsIssueDetails As Worksheet, rowIndex As Long, _
+ aAnalysis As DocumentAnalysis, myIssue As IssueInfo, fileName As String)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "OutputReferenceAttributes"
+
+ Dim strAttributes As String
+
+ With myIssue
+ SetWorksheetCellValueToString wsIssueDetails, rowIndex, CREF_DETDOCNAME, fileName
+ SetWorksheetCellValueToString wsIssueDetails, rowIndex, CREF_DETDOCAPPLICATION, aAnalysis.Application
+
+ strAttributes = .Values(RID_STR_COMMON_ATTRIBUTE_MAJOR) & "." & .Values(RID_STR_COMMON_ATTRIBUTE_MINOR)
+ strAttributes = IIf(strAttributes = "0.0" Or strAttributes = ".", .Values(RID_STR_COMMON_ATTRIBUTE_NAME), _
+ .Values(RID_STR_COMMON_ATTRIBUTE_NAME) & " " & .Values(RID_STR_COMMON_ATTRIBUTE_MAJOR) & _
+ "." & .Values(RID_STR_COMMON_ATTRIBUTE_MINOR))
+ SetWorksheetCellValueToString wsIssueDetails, rowIndex, CREF_DETREFERENCE, strAttributes
+
+ If .Values(RID_STR_COMMON_ATTRIBUTE_TYPE) = RID_STR_COMMON_ATTRIBUTE_PROJECT Then
+ SetWorksheetCellValueToString wsIssueDetails, rowIndex, CREF_DETDESCRIPTION, RID_STR_COMMON_ATTRIBUTE_PROJECT
+ Else
+ SetWorksheetCellValueToString wsIssueDetails, rowIndex, CREF_DETDESCRIPTION, _
+ IIf(.Values(RID_STR_COMMON_ATTRIBUTE_DESCRIPTION) <> "", .Values(RID_STR_COMMON_ATTRIBUTE_DESCRIPTION), RID_STR_COMMON_NA)
+ End If
+
+
+ If .Values(RID_STR_COMMON_ATTRIBUTE_ISBROKEN) <> RID_STR_COMMON_ATTRIBUTE_BROKEN Then
+ SetWorksheetCellValueToString wsIssueDetails, rowIndex, CREF_DETLOCATION, _
+ .Values(RID_STR_COMMON_ATTRIBUTE_FILE)
+ Else
+ SetWorksheetCellValueToString wsIssueDetails, rowIndex, CREF_DETLOCATION, _
+ RID_STR_COMMON_NA
+ End If
+
+ 'Reference Details
+ strAttributes = RID_STR_COMMON_ATTRIBUTE_TYPE & ": " & .Values(RID_STR_COMMON_ATTRIBUTE_TYPE) & vbLf
+ strAttributes = strAttributes & RID_STR_COMMON_ATTRIBUTE_PROPERTIES & ": " & _
+ .Values(RID_STR_COMMON_ATTRIBUTE_BUILTIN) & " " & .Values(RID_STR_COMMON_ATTRIBUTE_ISBROKEN)
+ strAttributes = IIf(.Values(RID_STR_COMMON_ATTRIBUTE_GUID) <> "", _
+ strAttributes & vbLf & RID_STR_COMMON_ATTRIBUTE_GUID & ": " & .Values(RID_STR_COMMON_ATTRIBUTE_GUID), _
+ strAttributes)
+ SetWorksheetCellValueToString wsIssueDetails, rowIndex, CREF_DETATTRIBUTES, strAttributes
+
+ SetWorksheetCellValueToString wsIssueDetails, rowIndex, CREF_DETNAMEANDPATH, aAnalysis.name
+ End With
+FinalExit:
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & _
+ " : path " & aAnalysis.name & ": " & _
+ " : rowIndex " & rowIndex & ": " & _
+ " : myIssue " & myIssue.IssueTypeXML & "_" & myIssue.SubTypeXML & ": " & _
+ Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+Sub OutputCommonIssueAttributes(wsIssueDetails As Worksheet, rowIndex As Long, _
+ myIssue As IssueInfo)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "OutputCommonIssueAttributes"
+
+ Dim index As Integer
+ Dim strAttributes As String
+
+ strAttributes = ""
+ For index = 1 To myIssue.Attributes.count
+ strAttributes = strAttributes & myIssue.Attributes(index) & " - " & _
+ myIssue.Values(index)
+ strAttributes = strAttributes & IIf(index <> myIssue.Attributes.count, vbLf, "")
+
+ Next index
+ SetWorksheetCellValueToString wsIssueDetails, rowIndex, CISSUE_DETATTRIBUTES, strAttributes
+
+FinalExit:
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & _
+ " : rowIndex " & rowIndex & ": " & _
+ " : myIssue " & myIssue.IssueTypeXML & "_" & myIssue.SubTypeXML & ": " & _
+ Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+'Store issue cost and factor costs across all documents
+Sub CollateIssueAndFactorCountsAcrossAllDocs(aAnalysis As DocumentAnalysis, myIssue As IssueInfo, fileName As String)
+ Const CSTR_USER_FORM = "User Form"
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "CollateIssueAndFactorCountsAcrossAllDocs"
+
+ 'Don't want to cost ISSUE_INFORMATION issues
+ If myIssue.IssueTypeXML = CSTR_ISSUE_INFORMATION Then Exit Sub
+
+ Dim issueKey As String
+ issueKey = getAppSpecificApplicationName & "_" & myIssue.IssueTypeXML & "_" & myIssue.SubTypeXML
+
+ 'Store costing metrics for Issue
+ AddIssueAndOneToDict issueKey
+
+ 'Store prepeared issue for costing metrics
+ If myIssue.Preparable Then
+ AddPreparedIssueAndOneToDict issueKey & "_Prepared"
+ End If
+
+ 'Additional costing Factors output for VB macros
+ If (myIssue.IssueTypeXML = CSTR_ISSUE_VBA_MACROS) And _
+ (myIssue.SubTypeXML <> CSTR_SUBISSUE_MACRO_PASSWORD_PROTECTION) Then
+
+ 'Unique Macro Module and Line count
+ AddMacroModuleHashToMacroDict myIssue
+
+ 'Line count
+ AddIssueAndValToDict issueKey & "_" & CSTR_SUBISSUE_VBA_MACROS_NUMLINES, myIssue, _
+ RID_STR_COMMON_ATTRIBUTE_NUMBER_OF_LINES
+
+ 'User From info
+ If myIssue.SubLocation = CSTR_USER_FORM Then
+ AddIssueAndOneToDict issueKey & "_" & CSTR_SUBISSUE_VBA_MACROS_USERFORMS_COUNT
+
+ AddIssueAndValToDict issueKey & "_" & CSTR_SUBISSUE_VBA_MACROS_USERFORMS_CONTROL_COUNT, myIssue, _
+ RID_STR_COMMON_ATTRIBUTE_CONTROLS
+ End If
+ 'Additional costing Factors output for External References
+ ElseIf (myIssue.IssueTypeXML = CSTR_ISSUE_PORTABILITY And _
+ myIssue.SubTypeXML = CSTR_SUBISSUE_EXTERNAL_REFERENCES_IN_MACRO) Then
+
+ AddIssueAndValToDict issueKey & "_" & CSTR_SUBISSUE_EXTERNAL_REFERENCES_IN_MACRO_COUNT, myIssue, _
+ RID_STR_COMMON_ATTRIBUTE_NON_PORTABLE_EXTERNAL_REFERENCES_COUNT
+ End If
+
+FinalExit:
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & _
+ " : path " & aAnalysis.name & ": " & _
+ " : myIssue " & myIssue.IssueTypeXML & "_" & myIssue.SubTypeXML & ": " & _
+ Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+Sub OutputCommonIssueDetails(wsIssueDetails As Worksheet, rowIndex As Long, _
+ aAnalysis As DocumentAnalysis, myIssue As IssueInfo, fileName As String)
+ Const CSTR_USER_FORM = "User Form"
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "OutputCommonIssueDetails"
+
+ SetWorksheetCellValueToString wsIssueDetails, rowIndex, CISSUE_DETDOCNAME, fileName
+ SetWorksheetCellValueToString wsIssueDetails, rowIndex, CISSUE_DETDOCAPPLICATION, aAnalysis.Application
+ SetWorksheetCellValueToString wsIssueDetails, rowIndex, CISSUE_DETTYPE, myIssue.IssueType
+ SetWorksheetCellValueToString wsIssueDetails, rowIndex, CISSUE_DETSUBTYPE, myIssue.SubType
+ SetWorksheetCellValueToString wsIssueDetails, rowIndex, CISSUE_DETLOCATION, myIssue.Location
+ SetWorksheetCellValueToString wsIssueDetails, rowIndex, CISSUE_DETSUBLOCATION, _
+ IIf(myIssue.SubLocation = "", RID_STR_COMMON_NA, myIssue.SubLocation)
+ SetWorksheetCellValueToVariant wsIssueDetails, rowIndex, CISSUE_DETLINE, _
+ IIf(myIssue.Line = -1, RID_STR_COMMON_NA, myIssue.Line)
+ SetWorksheetCellValueToString wsIssueDetails, rowIndex, CISSUE_DETCOLUMN, _
+ IIf(myIssue.column = "", RID_STR_COMMON_NA, myIssue.column)
+ SetWorksheetCellValueToString wsIssueDetails, rowIndex, CISSUE_DETNAMEANDPATH, aAnalysis.name
+
+
+FinalExit:
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & _
+ " : path " & aAnalysis.name & ": " & _
+ " : rowIndex " & rowIndex & ": " & _
+ " : myIssue " & myIssue.IssueTypeXML & "_" & myIssue.SubTypeXML & ": " & _
+ Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+Sub AddIssueAndBoolValToDict(issueKey As String, issue As IssueInfo, valKey As String)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "AddIssueAndBoolValToDict"
+
+ If mIssuesDict.Exists(issueKey) Then
+ mIssuesDict.item(issueKey) = mIssuesDict.item(issueKey) + _
+ IIf(issue.Values(valKey) > 0, 1, 0)
+ Else
+ mIssuesDict.Add issueKey, IIf(issue.Values(valKey) > 0, 1, 0)
+ End If
+FinalExit:
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & _
+ " : issueKey " & issueKey & ": " & _
+ " : valKey " & valKey & ": " & _
+ Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+Sub AddIssueAndValToDict(issueKey As String, issue As IssueInfo, valKey As String)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "AddIssueAndValToDict"
+
+ If mIssuesDict.Exists(issueKey) Then
+ mIssuesDict.item(issueKey) = mIssuesDict.item(issueKey) + issue.Values(valKey)
+ Else
+ mIssuesDict.Add issueKey, issue.Values(valKey)
+ End If
+FinalExit:
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & _
+ " : issueKey " & issueKey & ": " & _
+ " : valKey " & valKey & ": " & _
+ Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+Sub AddMacroModuleHashToMacroDict(issue As IssueInfo)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ Dim issueKey As String
+ Dim issueVal As String
+ currentFunctionName = "AddMacroModuleHashToMacroDict"
+
+ issueKey = issue.Values(RID_STR_COMMON_ATTRIBUTE_SIGNATURE)
+ If issueKey = RID_STR_COMMON_NA Then Exit Sub
+
+ If Not mMacroDict.Exists(issueKey) Then
+ mMacroDict.Add issueKey, issue.Values(RID_STR_COMMON_ATTRIBUTE_NUMBER_OF_LINES)
+ End If
+FinalExit:
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & _
+ " : issueKey " & issueKey & ": " & _
+ Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+Sub AddIssueAndOneToDict(key As String)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "AddIssueAndOneToDict"
+
+ If mIssuesDict.Exists(key) Then
+ mIssuesDict.item(key) = mIssuesDict.item(key) + 1
+ Else
+ mIssuesDict.Add key, 1
+ End If
+FinalExit:
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : key " & key & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+Sub AddPreparedIssueAndOneToDict(key As String)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "AddPreparedIssueAndOneToDict"
+
+ If mPreparedIssuesDict.Exists(key) Then
+ mPreparedIssuesDict.item(key) = mPreparedIssuesDict.item(key) + 1
+ Else
+ mPreparedIssuesDict.Add key, 1
+ End If
+FinalExit:
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : key " & key & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+Function GetExcelInstance() As Excel.Application
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "GetExcelInstance"
+
+ Dim xl As Excel.Application
+ On Error Resume Next
+ 'Try and get an existing instance
+ Set xl = GetObject(, "Excel.Application")
+ If Err.Number = 429 Then
+ Set xl = CreateObject("Excel.Application")
+ ElseIf Err.Number <> 0 Then
+ Set xl = Nothing
+ MsgBox "Error: " & Err.Description
+ Exit Function
+ End If
+ Set GetExcelInstance = xl
+ Set xl = Nothing
+FinalExit:
+ Exit Function
+
+HandleErrors:
+ WriteDebug currentFunctionName & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Function
+
+Sub WriteOverview(logWb As WorkBook, DocCount As DocumentCount, templateCount As DocumentCount, _
+ macroClasses As DocMacroClassifications, issueClasses As DocIssueClassifications)
+ Const COV_ISSUECLASS_COMPLEX = "MAW_ISSUECLASS_COMPLEX"
+ Const COV_ISSUECLASS_MINOR = "MAW_ISSUECLASS_MINOR"
+ Const COV_ISSUECLASS_NONE = "MAW_ISSUECLASS_NONE"
+
+ Const COV_MACROCLASS_COMPLEX = "MAW_MACROCLASS_COMPLEX"
+ Const COV_MACROCLASS_MEDIUM = "MAW_MACROCLASS_MEDIUM"
+ Const COV_MACROCLASS_SIMPLE = "MAW_MACROCLASS_SIMPLE"
+ Const COV_MACROCLASS_NONE = "MAW_MACROCLASS_NONE"
+
+ Const COV_ISSUECOUNT_COMPLEX = "MAW_ISSUECOUNT_COMPLEX"
+ Const COV_ISSUECOUNT_MINOR = "MAW_ISSUECOUNT_MINOR"
+
+ Const COV_MODDATES_LESS3MONTHS = "MAW_MODDATES_LESS3MONTHS"
+ Const COV_MODDATES_3TO6MONTHS = "MAW_MODDATES_3TO6MONTHS"
+ Const COV_MODDATES_6TO12MONTHS = "MAW_MODDATES_6TO12MONTHS"
+ Const COV_MODDATES_MORE12MONTHS = "MAW_MODDATES_MORE12MONTHS"
+
+ Const COV_DOC_MIGRATION_COSTS = "Document_Migration_Costs"
+ Const COV_DOC_PREPARABLE_COSTS = "Document_Migration_Preparable_Costs"
+ Const COV_MACRO_MIGRATION_COSTS = "Macro_Migration_Costs"
+
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "WriteOverview"
+
+ Dim appName As String
+ appName = getAppSpecificApplicationName
+
+ 'OV - Title
+ SetWorkbookNameValueToString logWb, COVERVIEW_TITLE_LABEL, GetTitle
+ SetWorkbookNameValueToVariant logWb, "AnalysisDate", Now
+ SetWorkbookNameValueToString logWb, "AnalysisVersion", _
+ RID_STR_COMMON_OV_VERSION_STR & ": " & GetTitle & " " & GetVersion
+
+ 'OV - Number of Documents Analyzed
+ AddLongToWorkbookNameValue logWb, CNUMBERDOC_ALL & getAppSpecificDocExt, DocCount.numDocsAnalyzed
+ AddLongToWorkbookNameValue logWb, CNUMBERDOC_ALL & getAppSpecificTemplateExt, templateCount.numDocsAnalyzed
+
+ 'OV - Documents with Document Migration Issues (excludes macro issues)
+ AddLongToWorkbookNameValue logWb, appName & "_" & COV_ISSUECLASS_COMPLEX, issueClasses.complex
+ AddLongToWorkbookNameValue logWb, appName & "_" & COV_ISSUECLASS_MINOR, issueClasses.Minor
+ AddLongToWorkbookNameValue logWb, appName & "_" & COV_ISSUECLASS_NONE, issueClasses.None
+
+ 'OV - Documents with Macro Migration Issues
+ AddLongToWorkbookNameValue logWb, appName & "_" & COV_MACROCLASS_COMPLEX, macroClasses.complex
+ AddLongToWorkbookNameValue logWb, appName & "_" & COV_MACROCLASS_MEDIUM, macroClasses.Medium
+ AddLongToWorkbookNameValue logWb, appName & "_" & COV_MACROCLASS_SIMPLE, macroClasses.Simple
+ AddLongToWorkbookNameValue logWb, appName & "_" & COV_MACROCLASS_NONE, macroClasses.None
+
+ 'OV - Document Modification Dates
+ Dim modDates As DocModificationDates
+ Call GetDocModificationDates(modDates)
+
+ SetWorkbookNameValueToLong logWb, COV_MODDATES_LESS3MONTHS, modDates.lessThanThreemonths
+ SetWorkbookNameValueToLong logWb, COV_MODDATES_3TO6MONTHS, modDates.threeToSixmonths
+ SetWorkbookNameValueToLong logWb, COV_MODDATES_6TO12MONTHS, modDates.sixToTwelvemonths
+ SetWorkbookNameValueToLong logWb, COV_MODDATES_MORE12MONTHS, modDates.greaterThanOneYear
+
+
+ If InDocPreparation Then
+ 'OV - Document Migration Issues(excludes macro issues)
+ AddLongToWorkbookNameValue logWb, appName & "_" & COV_ISSUECOUNT_COMPLEX, _
+ DocCount.numComplexIssues + templateCount.numComplexIssues
+ AddLongToWorkbookNameValue logWb, appName & "_" & COV_ISSUECOUNT_MINOR, _
+ DocCount.numMinorIssues + templateCount.numMinorIssues
+
+ 'OV - Document Migration Costs
+ AddLongToWorkbookNameValue logWb, appName & "_" & COV_DOC_MIGRATION_COSTS, _
+ DocCount.totalDocIssuesCosts + templateCount.totalDocIssuesCosts
+
+ 'OV - Document Migration Preparable Costs
+ AddLongToWorkbookNameValue logWb, COV_DOC_PREPARABLE_COSTS, _
+ DocCount.totalPreparableIssuesCosts + templateCount.totalPreparableIssuesCosts
+
+ 'OV - Macro Migration Costs
+ AddLongToWorkbookNameValue logWb, appName & "_" & COV_MACRO_MIGRATION_COSTS, _
+ DocCount.totalMacroCosts + templateCount.totalMacroCosts
+ End If
+
+ 'OV - Internal Attributes
+ AddLongToWorkbookNameValue logWb, appName & "_" & "TotalDocsAnalysedWithIssues", _
+ DocCount.numDocsAnalyzedWithIssues + templateCount.numDocsAnalyzedWithIssues
+
+FinalExit:
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : Problem writing overview: " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+Sub SetupDAWResultsSpreadsheet(logWb As WorkBook, fontName As String, fontSize As Long)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "SetupDAWResultsSpreadsheet"
+ Dim bSetupRun As Boolean
+ bSetupRun = CBool(GetWorkbookNameValueAsLong(logWb, COV_DAW_SETUP_SHEETS_RUN_LBL))
+
+ If bSetupRun Then Exit Sub
+
+ 'Setup Text Boxes
+ SetupSheetTextBox logWb, RID_STR_COMMON_RESULTS_SHEET_NAME_OVERVIEW, COV_DOC_MOD_DATES_COMMENT_TXB, _
+ RID_STR_COMMON_OV_DOC_MOD_DATES_COMMENT_TITLE, RID_STR_COMMON_OV_DOC_MOD_DATES_COMMENT_BODY, _
+ CCOMMENTS_FONT_SIZE, fontName
+ SetupSheetTextBox logWb, RID_STR_COMMON_RESULTS_SHEET_NAME_OVERVIEW, COV_DOC_MOD_DATES_LEGEND_TXB, _
+ RID_STR_COMMON_OV_LEGEND_TITLE, RID_STR_COMMON_OV_DOC_MOD_DATES_LEGEND_BODY, fontSize, fontName
+ SetupSheetTextBox logWb, RID_STR_COMMON_RESULTS_SHEET_NAME_OVERVIEW, COV_DOC_MACRO_COMMENT_TXB, _
+ RID_STR_COMMON_OV_DOC_MACRO_COMMENT_TITLE, RID_STR_COMMON_OV_DOC_MACRO_COMMENT_BODY, _
+ CCOMMENTS_FONT_SIZE, fontName
+ SetupSheetTextBox logWb, RID_STR_COMMON_RESULTS_SHEET_NAME_OVERVIEW, COV_DOC_MACRO_LEGEND_TXB, _
+ RID_STR_COMMON_OV_LEGEND_TITLE, RID_STR_COMMON_OV_DOC_MACRO_LEGEND_BODY, fontSize, fontName
+ Dim monthLimit As Long
+ monthLimit = GetIssuesLimitInDays / CNUMDAYS_IN_MONTH
+ SetWorkbookNameValueToString logWb, COV_HIGH_LEVEL_ANALYSIS_LBL, _
+ IIf(monthLimit <> CMAX_LIMIT, _
+ ReplaceTopicTokens(RID_STR_COMMON_OV_HIGH_LEVEL_ANALYSIS_DAW, CR_TOPIC, CStr(monthLimit)), _
+ RID_STR_COMMON_OV_HIGH_LEVEL_ANALYSIS_PAW_NO_LIMIT)
+
+ SetupSheetTextBox logWb, RID_STR_COMMON_RESULTS_SHEET_NAME_OVERVIEW, COV_DOC_ANALYSIS_COMMENT_TXB, _
+ RID_STR_COMMON_OV_DOC_ANALYSIS_COMMENT_TITLE, RID_STR_COMMON_OV_DOC_ANALYSIS_COMMENT_BODY, _
+ CCOMMENTS_FONT_SIZE, fontName
+ SetupSheetTextBox logWb, RID_STR_COMMON_RESULTS_SHEET_NAME_OVERVIEW, COV_DOC_ANALYSIS_LEGEND_DAW_TXB, _
+ RID_STR_COMMON_OV_LEGEND_TITLE, RID_STR_COMMON_OV_DOC_ANALYSIS_DAW_LEGEND_BODY, fontSize, fontName
+
+ 'Setup Chart Titles
+ SetupSheetChartTitles logWb, RID_STR_COMMON_RESULTS_SHEET_NAME_OVERVIEW, COV_DOC_MOD_DATES_CHART, _
+ RID_STR_COMMON_OV_DOC_MOD_DATES_CHART_TITLE
+ SetupSheetChartTitles logWb, RID_STR_COMMON_RESULTS_SHEET_NAME_OVERVIEW, COV_DOC_MACRO_CHART, _
+ RID_STR_COMMON_OV_DOC_MACRO_CHART_TITLE
+ SetupSheetChartTitles logWb, RID_STR_COMMON_RESULTS_SHEET_NAME_OVERVIEW, COV_DOC_ANALYSIS_CHART, _
+ RID_STR_COMMON_OV_DOC_ANALYSIS_CHART_TITLE
+
+ 'Set selection to top cell of Overview
+ logWb.Sheets(RID_STR_COMMON_RESULTS_SHEET_NAME_OVERVIEW).Range("A1").Select
+
+ bSetupRun = True
+ SetWorkbookNameValueToBoolean logWb, COV_DAW_SETUP_SHEETS_RUN_LBL, bSetupRun
+FinalExit:
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : Problem setting up spreadsheet for DAW: " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+Sub SetupPAWResultsSpreadsheet(logWb As WorkBook, fontName As String, fontSize As Long)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "SetupPAWResultsSpreadsheet"
+ Dim bSetupRun As Boolean
+ bSetupRun = CBool(GetWorkbookNameValueAsLong(logWb, COV_PAW_SETUP_SHEETS_RUN_LBL))
+
+ If bSetupRun Then Exit Sub
+
+ 'Costs
+ logWb.Names(COV_COSTS_PREPISSUE_COUNT_COL_LBL).RefersToRange.EntireColumn.Hidden = False
+
+ 'Setup Text Boxes
+ SetupSheetTextBox logWb, RID_STR_COMMON_RESULTS_SHEET_NAME_OVERVIEW, COV_DOC_MOD_DATES_LEGEND_TXB, _
+ RID_STR_COMMON_OV_LEGEND_TITLE, RID_STR_COMMON_OV_DOC_MOD_DATES_LEGEND_BODY, fontSize, fontName
+ SetupSheetTextBox logWb, RID_STR_COMMON_RESULTS_SHEET_NAME_OVERVIEW, COV_DOC_MACRO_LEGEND_TXB, _
+ RID_STR_COMMON_OV_LEGEND_TITLE, RID_STR_COMMON_OV_DOC_MACRO_LEGEND_BODY, fontSize, fontName
+ SetWorkbookNameValueToString logWb, COV_HIGH_LEVEL_ANALYSIS_LBL, _
+ RID_STR_COMMON_OV_HIGH_LEVEL_ANALYSIS_PAW_NO_LIMIT
+ SetupSheetTextBox logWb, RID_STR_COMMON_RESULTS_SHEET_NAME_OVERVIEW, COV_DOC_ANALYSIS_LEGEND_PAW_TXB, _
+ RID_STR_COMMON_OV_LEGEND_TITLE, RID_STR_COMMON_OV_DOC_ANALYSIS_PAW_LEGEND_BODY, fontSize, fontName
+
+ 'Setup Chart Titles
+ SetupSheetChartTitles logWb, RID_STR_COMMON_RESULTS_SHEET_NAME_OVERVIEW, COV_DOC_MOD_DATES_CHART, _
+ RID_STR_COMMON_OV_DOC_MOD_DATES_CHART_TITLE
+ SetupSheetChartTitles logWb, RID_STR_COMMON_RESULTS_SHEET_NAME_OVERVIEW, COV_DOC_MACRO_CHART, _
+ RID_STR_COMMON_OV_DOC_MACRO_CHART_TITLE
+ SetupSheetChartTitles logWb, RID_STR_COMMON_RESULTS_SHEET_NAME_OVERVIEW, COV_DOC_ANALYSIS_CHART, _
+ RID_STR_COMMON_OV_DOC_ANALYSIS_CHART_TITLE
+
+ 'Set selection to top cell of Overview
+ logWb.Sheets(RID_STR_COMMON_RESULTS_SHEET_NAME_OVERVIEW).Range("A1").Select
+
+ bSetupRun = True
+ SetWorkbookNameValueToBoolean logWb, COV_PAW_SETUP_SHEETS_RUN_LBL, bSetupRun
+
+FinalExit:
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : Problem setting up spreadsheet for PAW: " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+Sub SetupPrintRanges(logWb As WorkBook, docPropRow As Long, appIssuesRow As Long, issueDetailsRow As Long, _
+ refDetailsRow As Long)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "SetupPrintRanges"
+
+ 'Set Print Ranges
+ If InDocPreparation Then
+
+ logWb.Worksheets(RID_STR_COMMON_RESULTS_SHEET_NAME_DOCPROP).PageSetup.PrintArea = "$A1:$U" & (docPropRow + mDocPropRowOffset)
+ logWb.Worksheets(RID_STR_COMMON_RESULTS_SHEET_NAME_DOCISSUE_DETAILS).PageSetup.PrintArea = "$A1:$J" & issueDetailsRow
+ logWb.Worksheets(RID_STR_COMMON_RESULTS_SHEET_NAME_DOCREF_DETAILS).PageSetup.PrintArea = "$A1:$G" & refDetailsRow
+ If getAppSpecificApplicationName = CAPPNAME_WORD Then
+ logWb.Worksheets(RID_STR_COMMON_RESULTS_SHEET_NAME_DOCISSUES_WORD).PageSetup.PrintArea = _
+ "$A1:$N" & appIssuesRow
+ ElseIf getAppSpecificApplicationName = CAPPNAME_EXCEL Then
+ logWb.Worksheets(RID_STR_COMMON_RESULTS_SHEET_NAME_DOCISSUES_EXCEL).PageSetup.PrintArea = _
+ "$A1:$M" & appIssuesRow
+ Else
+ logWb.Worksheets(RID_STR_COMMON_RESULTS_SHEET_NAME_DOCISSUES_POWERPOINT).PageSetup.PrintArea = _
+ "$A1:$K" & appIssuesRow
+ End If
+ Else
+ logWb.Worksheets(RID_STR_COMMON_RESULTS_SHEET_NAME_DOCPROP).PageSetup.PrintArea = "$A1:$U" & (docPropRow + mDocPropRowOffset)
+ End If
+
+FinalExit:
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : Problem setting print ranges: " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+Sub SetupSheetChartTitles(logWb As WorkBook, namedWorksheet As String, namedChart As String, _
+ chartTitle As String)
+ Const CCHART_TITLE_FONT_SIZE = 11
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "SetupSheetChartTitles"
+
+ With logWb.Sheets(namedWorksheet).ChartObjects(namedChart).Chart
+ .HasTitle = True
+ .chartTitle.Characters.Text = chartTitle
+ .chartTitle.Font.Size = CCHART_TITLE_FONT_SIZE
+ End With
+
+FinalExit:
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & _
+ " namedWorkSheet: " & namedWorksheet & _
+ " namedChart: " & namedChart & _
+ " chartTitle: " & chartTitle & _
+ Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+Sub SetupSheetTextBox(logWb As WorkBook, namedWorksheet As String, _
+ textBoxName As String, textBoxTitle As String, textBoxBody As String, _
+ textSize As Long, fontName As String)
+
+ Const CMAX_INSERTABLE_STRING_LEN = 255
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "SetupSheetTextBox"
+
+ Dim strTextBody As String
+ Dim allText As String
+ strTextBody = ReplaceTopic2Tokens(textBoxBody, CR_STR, Chr(10), CR_PRODUCT, RID_STR_COMMON_OV_PRODUCT_STR)
+
+ 'Setup Text Boxes
+ logWb.Sheets(namedWorksheet).Activate
+ logWb.Sheets(namedWorksheet).Shapes(textBoxName).Select
+
+ '*** Workaround Excel bug: 213841 XL: Passed Strings Longer Than 255 Characters Are Truncated
+ Dim I As Long
+ logWb.Application.Selection.Text = ""
+
+ logWb.Application.Selection.Characters.Text = textBoxTitle & Chr(10)
+
+ With logWb.Application.Selection
+ For I = 0 To Int(Len(strTextBody) / CMAX_INSERTABLE_STRING_LEN)
+ .Characters(.Characters.count + 1).Text = Mid(strTextBody, _
+ (I * CMAX_INSERTABLE_STRING_LEN) + 1, CMAX_INSERTABLE_STRING_LEN)
+ Next
+ End With
+
+ 'Highlight title only
+ With logWb.Application.Selection.Characters(start:=1, Length:=Len(textBoxTitle)).Font
+ .name = fontName
+ .FontStyle = "Bold"
+ .Size = textSize
+ End With
+ With logWb.Application.Selection.Characters(start:=Len(textBoxTitle) + 1, _
+ Length:=Len(strTextBody) + 1).Font
+ .name = fontName
+ .FontStyle = "Regular"
+ .Size = textSize
+ End With
+
+FinalExit:
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & _
+ " namedWorkSheet: " & namedWorksheet & _
+ " textBoxName: " & textBoxName & _
+ " textBoxTitle: " & textBoxTitle & _
+ " textBoxBody: " & textBoxBody & _
+ " textSize: " & textSize & _
+ Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+Function GetWorkbookNameValueAsLong(logWb As WorkBook, name As String) As Long
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "GetWorkbookNameValueAsLong"
+
+ GetWorkbookNameValueAsLong = logWb.Names(name).RefersToRange.Cells(1, 1).value
+
+FinalExit:
+ Exit Function
+
+HandleErrors:
+ GetWorkbookNameValueAsLong = 0
+ WriteDebug currentFunctionName & " : name " & name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Function
+
+Function GetWorksheetCellValueAsLong(logWs As Worksheet, row As Long, col As Long) As Long
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "GetWorksheetCellValueAsLong"
+
+ GetWorksheetCellValueAsLong = logWs.Cells(row, col).value
+
+FinalExit:
+ Exit Function
+
+HandleErrors:
+ WriteDebug currentFunctionName & _
+ " : row " & row & _
+ " : col " & col & _
+ Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Function
+
+Function GetWorksheetCellValueAsString(logWs As Worksheet, row As Long, col As Long) As String
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "GetWorksheetCellValueToString"
+
+ GetWorksheetCellValueAsString = logWs.Cells(row, col).value
+
+FinalExit:
+ Exit Function
+
+HandleErrors:
+ GetWorksheetCellValueAsString = ""
+
+ WriteDebug currentFunctionName & _
+ " : row " & row & _
+ " : col " & col & _
+ Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Function
+
+Sub SetWorksheetCellValueToLong(logWs As Worksheet, row As Long, col As Long, val As Long)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "SetWorksheetCellValueToLong"
+
+ logWs.Cells(row, col) = val
+
+FinalExit:
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & _
+ " : row " & row & _
+ " : col " & col & _
+ " : val " & val & ": " & _
+ Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+Sub SetWorksheetCellValueToInteger(logWs As Worksheet, row As Long, col As Long, intVal As Integer)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "SetWorksheetCellValueToInteger"
+
+ logWs.Cells(row, col) = intVal
+
+FinalExit:
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & _
+ " : row " & row & _
+ " : col " & col & _
+ " : intVal " & intVal & ": " & _
+ Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+Sub SetWorksheetCellValueToVariant(logWs As Worksheet, row As Long, col As Long, varVal As Variant)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "SetWorksheetCellValueToInteger"
+
+ logWs.Cells(row, col) = varVal
+
+FinalExit:
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & _
+ " : row " & row & _
+ " : col " & col & _
+ " : varVal " & varVal & ": " & _
+ Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+Sub SetWorksheetCellValueToString(logWs As Worksheet, row As Long, col As Long, strVal As String)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "SetWorksheetCellValueToString"
+
+ logWs.Cells(row, col) = strVal
+
+FinalExit:
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & _
+ " : row " & row & _
+ " : col " & col & _
+ " : strVal " & strVal & ": " & _
+ Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+Sub SetWorkbookNameValueToBoolean(logWb As WorkBook, name As String, bVal As Boolean)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "SetWorkbookNameValueToBoolean"
+
+ logWb.Names(name).RefersToRange.Cells(1, 1) = bVal
+
+FinalExit:
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : name " & name & " : boolean value " & bVal & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+Sub SetWorkbookNameValueToString(logWb As WorkBook, name As String, val As String)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "SetWorkbookNameValueToString"
+
+ logWb.Names(name).RefersToRange.Cells(1, 1) = val
+
+FinalExit:
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : name " & name & " : value " & val & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+Sub SetWorkbookNameValueToLong(logWb As WorkBook, name As String, val As Long)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "SetWorkbookNameValueToLong"
+
+ logWb.Names(name).RefersToRange.Cells(1, 1) = val
+
+FinalExit:
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : name " & name & " : value " & val & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+Sub SetWorkbookNameValueToVariant(logWb As WorkBook, name As String, val As Variant)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "SetWorkbookNameValueToVariant"
+
+ logWb.Names(name).RefersToRange.Cells(1, 1) = val
+
+FinalExit:
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : name " & name & " : value " & val & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+Sub AddLongToWorkbookNameValue(logWb As WorkBook, name As String, val As Long)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "AddLongToWorkbookNameValue"
+
+ logWb.Names(name).RefersToRange.Cells(1, 1) = logWb.Names(name).RefersToRange.Cells(1, 1).value + val
+
+FinalExit:
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : name " & name & " : value " & val & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+Sub AddVariantToWorkbookNameValue(logWb As WorkBook, name As String, varVal As Variant)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "AddVariantToWorkbookNameValue"
+
+ logWb.Names(name).RefersToRange.Cells(1, 1) = logWb.Names(name).RefersToRange.Cells(1, 1).value + varVal
+
+FinalExit:
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : name " & name & " : value " & varVal & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+Sub SaveAnalysisResultsVariables(logWb As WorkBook, offsetDocIssueDetailsRow As Long, _
+ offsetDocRefDetailsRow As Long)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "SaveAnalysisResultsVariables"
+
+ 'OV - Internal Attributes
+ SetWorkbookNameValueToLong logWb, "TotalIssuesAnalysed", offsetDocIssueDetailsRow
+ SetWorkbookNameValueToLong logWb, "TotalRefsAnalysed", offsetDocRefDetailsRow
+FinalExit:
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : offsetDocIssueDetailsRow " & offsetDocIssueDetailsRow & _
+ " : offsetDocRefDetailsRow " & offsetDocRefDetailsRow & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+Sub SetupAnalysisResultsVariables(logWb As WorkBook, _
+ offsetDocPropRow As Long, offsetDocIssuesRow As Long, _
+ offsetDocIssueDetailsRow As Long, offsetDocRefDetailsRow As Long)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "SetupAnalysisResultsVariables"
+
+ offsetDocPropRow = GetWorkbookNameValueAsLong(logWb, CTOTAL_DOCS_ANALYZED)
+ offsetDocIssueDetailsRow = GetWorkbookNameValueAsLong(logWb, "TotalIssuesAnalysed")
+ offsetDocRefDetailsRow = GetWorkbookNameValueAsLong(logWb, "TotalRefsAnalysed")
+ offsetDocIssuesRow = GetWorkbookNameValueAsLong(logWb, getAppSpecificApplicationName & "_" & "TotalDocsAnalysedWithIssues")
+FinalExit:
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & _
+ " : offsetDocPropRow " & offsetDocPropRow & _
+ " : offsetDocIssueDetailsRow " & offsetDocIssueDetailsRow & _
+ " : offsetDocRefDetailsRow " & offsetDocRefDetailsRow & _
+ " : offsetDocIssuesRow " & offsetDocIssuesRow & _
+ Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+Sub WriteToIni(key As String, value As String)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "WriteToIni"
+
+ If mIniFilePath = "" Then Exit Sub
+
+ Call WritePrivateProfileString("Analysis", key, value, mIniFilePath)
+FinalExit:
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : key " & key & " : value " & value & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+Sub WriteToLog(key As String, value As String)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "WriteToLog"
+
+ If mLogFilePath = "" Then Exit Sub
+
+ Dim sSection As String
+ sSection = getAppSpecificApplicationName
+
+ Call WritePrivateProfileString(sSection, key, value, mLogFilePath)
+FinalExit:
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : key " & key & " : value " & value & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+Sub WriteDebug(value As String)
+ On Error Resume Next 'Ignore errors in our error writing routines - could get circular dependency otherwise
+ Static ErrCount As Long
+
+ If mLogFilePath = "" Then Exit Sub
+
+ Dim sSection As String
+ sSection = getAppSpecificApplicationName & "Debug"
+
+ If mDebugLevel > 0 Then
+ Call WritePrivateProfileString(sSection, "Doc" & mDocIndex & "_debug" & ErrCount, value, mLogFilePath)
+ ErrCount = ErrCount + 1
+ Else
+ Debug.Print
+ End If
+End Sub
+Sub WriteDebugLevelTwo(value As String)
+ On Error Resume Next 'Ignore errors in our error writing routines - could get circular dependency otherwise
+ Static ErrCountTwo As Long
+
+ If mLogFilePath = "" Then Exit Sub
+
+ Dim sSection As String
+ sSection = getAppSpecificApplicationName & "Debug"
+
+ If mDebugLevel > 1 Then
+ Call WritePrivateProfileString(sSection, "Doc" & mDocIndex & "_debug" & ErrCountTwo, "Level2: " & value, mLogFilePath)
+ ErrCountTwo = ErrCountTwo + 1
+ Else
+ Debug.Print
+ End If
+End Sub
+
+Public Function ProfileLoadDict(dict As Scripting.Dictionary, _
+ lpSectionName As String, _
+ inifile As String) As Long
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "ProfileLoadDict"
+ Dim success As Long
+ Dim c As Long
+ Dim nSize As Long
+ Dim KeyData As String
+ Dim lpKeyName As String
+ Dim ret As String
+
+ ret = Space$(2048)
+ nSize = Len(ret)
+ success = GetPrivateProfileString( _
+ lpSectionName, vbNullString, "", ret, nSize, inifile)
+
+ If success Then
+ ret = Left$(ret, success)
+
+ Do Until ret = ""
+ lpKeyName = StripNulls(ret)
+ KeyData = ProfileGetItem( _
+ lpSectionName, lpKeyName, "", inifile)
+ dict.Add lpKeyName, KeyData
+ Loop
+ End If
+ ProfileLoadDict = dict.count
+FinalExit:
+ Exit Function
+
+HandleErrors:
+ WriteDebug currentFunctionName & _
+ " : dict.Count " & dict.count & _
+ " : lpSectionName " & lpSectionName & _
+ " : inifile " & inifile & _
+ Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Function
+Private Function StripNulls(startStrg As String) As String
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "StripNulls"
+ Dim pos As Long
+ Dim item As String
+
+ pos = InStr(1, startStrg, Chr$(0))
+
+ If pos Then
+
+ item = Mid$(startStrg, 1, pos - 1)
+ startStrg = Mid$(startStrg, pos + 1, Len(startStrg))
+ StripNulls = item
+
+ End If
+
+FinalExit:
+ Exit Function
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : startStrg " & startStrg & " : " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Function
+
+Public Function ProfileGetItem(lpSectionName As String, _
+ lpKeyName As String, _
+ defaultValue As String, _
+ inifile As String) As String
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "ProfileGetItem"
+
+ Dim success As Long
+ Dim nSize As Long
+ Dim ret As String
+ ret = Space$(2048)
+ nSize = Len(ret)
+ success = GetPrivateProfileString(lpSectionName, _
+ lpKeyName, _
+ defaultValue, _
+ ret, _
+ nSize, _
+ inifile)
+ If success Then
+ ProfileGetItem = Left$(ret, success)
+ Else
+ ProfileGetItem = defaultValue
+ End If
+
+FinalExit:
+ Exit Function
+
+HandleErrors:
+ WriteDebug currentFunctionName & _
+ " : lpSectionName " & lpSectionName & _
+ " : lpKeyName " & lpKeyName & _
+ " : defaultValue " & defaultValue & _
+ " : inifile " & inifile & _
+ Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Function
+
+Public Function GetDefaultPassword() As String
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "GetDefaultPassword"
+
+ Static myPassword As String
+
+ If myPassword = "" Then
+ myPassword = ProfileGetItem("Analysis", CDEFAULT_PASSWORD, "", mIniFilePath)
+ End If
+
+ GetDefaultPassword = myPassword
+FinalExit:
+ Exit Function
+
+HandleErrors:
+ WriteDebug currentFunctionName & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Function
+
+Public Function GetVersion() As String
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "GetVersion"
+
+ Static myVersion As String
+
+ If myVersion = "" Then
+ myVersion = ProfileGetItem("Analysis", CVERSION, "", mIniFilePath)
+ End If
+
+ GetVersion = myVersion
+FinalExit:
+ Exit Function
+
+HandleErrors:
+ WriteDebug currentFunctionName & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Function
+Public Function GetTitle() As String
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "GetTitle"
+
+ Static myTitle As String
+
+ If myTitle = "" Then
+ myTitle = ProfileGetItem("Analysis", CTITLE, RID_STR_COMMON_ANALYSIS_STR, mIniFilePath)
+ End If
+
+ GetTitle = myTitle
+FinalExit:
+ Exit Function
+
+HandleErrors:
+ WriteDebug currentFunctionName & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Function
+
+Sub SetPrepareToNone()
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "SetPrepareToNone"
+
+ Call WritePrivateProfileString("Analysis", CDOPREPARE, CStr(0), mIniFilePath)
+
+FinalExit:
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+Function CheckForAbort() As Boolean
+ Dim currentFunctionName As String
+ Dim bAbort As Boolean
+
+ currentFunctionName = "CheckForAbort"
+ bAbort = False
+
+ On Error GoTo HandleErrors
+
+ bAbort = CBool(ProfileGetItem("Analysis", C_ABORT_ANALYSIS, "false", mIniFilePath))
+
+ 'reset the flag
+ If (bAbort) Then Call WriteToIni(C_ABORT_ANALYSIS, "false")
+
+FinalExit:
+ CheckForAbort = bAbort
+ Exit Function
+
+HandleErrors:
+ WriteDebug currentFunctionName & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Function
+
+Function CheckDoPrepare() As Boolean
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "CheckDoPrepare"
+
+ Static bDoPrepare As Boolean
+ Static myDoPrepare As String
+
+ If myDoPrepare = "" Then
+ bDoPrepare = CBool(ProfileGetItem("Analysis", _
+ CDOPREPARE, "False", mIniFilePath))
+ myDoPrepare = "OK"
+ End If
+
+ CheckDoPrepare = bDoPrepare
+FinalExit:
+ Exit Function
+
+HandleErrors:
+ WriteDebug currentFunctionName & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Function
+
+Function GetIssuesLimitInDays() As Long
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+
+ currentFunctionName = "GetIssuesLimitInDays"
+
+ Static issuesLimit As Long
+ Static myDoPrepare As String
+
+ If issuesLimit = 0 Then
+ issuesLimit = CLng(ProfileGetItem("Analysis", _
+ CISSUES_LIMIT, CMAX_LIMIT, mIniFilePath)) * CNUMDAYS_IN_MONTH
+ End If
+
+ GetIssuesLimitInDays = issuesLimit
+FinalExit:
+ Exit Function
+
+HandleErrors:
+ WriteDebug currentFunctionName & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Function
+
+Public Sub AddIssueDetailsNote(myIssue As IssueInfo, noteNum As Long, noteStr As String, _
+ Optional preStr As String)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "AddIssueDetailsNote"
+
+ If IsMissing(preStr) Then
+ preStr = RID_STR_COMMON_NOTE_PRE
+ End If
+ myIssue.Attributes.Add preStr & "[" & noteNum & "]"
+ myIssue.Values.Add noteStr
+
+FinalExit:
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : noteNum " & noteNum & " : noteStr " & noteStr & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+Public Sub SetupWizardVariables( _
+ fileList As String, storeToDir As String, resultsFile As String, _
+ logFile As String, resultsTemplate As String, bOverwriteFile As Boolean, _
+ bNewResultsFile As Boolean, statFileName As String, debugLevel As Long, _
+ outputType As String, singleFile As String)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "SetupWizardVariables"
+
+ If mIniFilePath = "" Then
+ mIniFilePath = GetAppDataFolder & "\Sun\AnalysisWizard\" & CWIZARD & ".ini"
+ End If
+
+ statFileName = ProfileGetItem("Analysis", CSTAT_FILE, "", mIniFilePath)
+ fileList = ProfileGetItem("Analysis", CFILE_LIST, "", mIniFilePath)
+ storeToDir = ProfileGetItem("Analysis", COUTPUT_DIR, "", mIniFilePath)
+ resultsFile = ProfileGetItem("Analysis", CRESULTS_FILE, "", mIniFilePath)
+ logFile = ProfileGetItem("Analysis", CLOG_FILE, "", mIniFilePath)
+ resultsTemplate = ProfileGetItem("Analysis", CRESULTS_TEMPLATE, "", mIniFilePath)
+ bOverwriteFile = IIf(ProfileGetItem("Analysis", CRESULTS_EXIST, COVERWRITE_FILE, mIniFilePath) = COVERWRITE_FILE, _
+ True, False)
+ bNewResultsFile = CBool(ProfileGetItem("Analysis", CNEW_RESULTS_FILE, "True", mIniFilePath))
+ debugLevel = CLng(ProfileGetItem("Analysis", CDEBUG_LEVEL, "1", mIniFilePath))
+ outputType = ProfileGetItem("Analysis", COUTPUT_TYPE, COUTPUT_TYPE_XLS, mIniFilePath)
+ singleFile = ProfileGetItem("Analysis", CSINGLE_FILE, "", mIniFilePath)
+FinalExit:
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & _
+ ": mIniFilePath " & mIniFilePath & ": " & _
+ Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+Public Sub SetupSearchTypes(searchTypes As Collection)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "SetupSearchTypes"
+
+ Dim bDocument As Boolean
+ Dim bTemplate As Boolean
+
+ bDocument = CBool(ProfileGetItem("Analysis", LCase("type" & getAppSpecificApplicationName & "doc"), "False", mIniFilePath))
+ bTemplate = CBool(ProfileGetItem("Analysis", LCase("type" & getAppSpecificApplicationName & "dot"), "False", mIniFilePath))
+ If bDocument = True Then searchTypes.Add "*" & getAppSpecificDocExt
+ If bTemplate = True Then searchTypes.Add "*" & getAppSpecificTemplateExt
+FinalExit:
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & ": searchTypes.Count " & searchTypes.count & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+Sub WriteXMLHeader(out As TextStream)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "WriteXMLHeader"
+
+ out.WriteLine "<?xml version=""1.0"" encoding=""ISO-8859-1""?>"
+ out.WriteLine "<!DOCTYPE results SYSTEM 'analysis.dtd'>"
+
+FinalExit:
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+Sub WriteXMLResultsStartTag(out As TextStream)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "WriteXMLResultsStartTag"
+
+ out.WriteLine "<results generated-by=""" & IIf(InDocPreparation, "documentanalysis_preparation", "documentanalysis") & """"
+ out.WriteLine " version=""" & GetVersion & """ timestamp=""" & Now & """"
+ out.WriteLine " type=""" & getAppSpecificApplicationName & """ >"
+
+FinalExit:
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+Sub WriteXMLResultsEndTag(out As TextStream)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "WriteXMLResultsEndTag"
+
+ out.WriteLine "</results>"
+
+FinalExit:
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+Sub WriteXMLDocProperties(out As TextStream, aAnalysis As DocumentAnalysis)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "WriteXMLDocProperties"
+
+ out.WriteLine "<document location=""" & EncodeXML(aAnalysis.name) & """"
+ out.WriteLine " application=""" & aAnalysis.Application & """"
+ out.WriteLine " issues-count=""" & (aAnalysis.IssuesCount) & """"
+ out.WriteLine " pages=""" & aAnalysis.PageCount & """"
+ out.WriteLine " created=""" & CheckDate(aAnalysis.Created) & """"
+ out.WriteLine " modified=""" & CheckDate(aAnalysis.Modified) & """"
+ out.WriteLine " accessed=""" & CheckDate(aAnalysis.Accessed) & """"
+ out.WriteLine " printed=""" & CheckDate(aAnalysis.Printed) & """"
+ out.WriteLine " last-save-by=""" & aAnalysis.SavedBy & """"
+ out.WriteLine " revision=""" & aAnalysis.Revision & """"
+ out.WriteLine " based-on-template=""" & EncodeXML(aAnalysis.Template) & """"
+ out.WriteLine ">"
+
+FinalExit:
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : path " & aAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+Sub WriteXMLDocPropertiesEndTag(out As TextStream)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "WriteXMLDocPropertiesEndTag"
+
+ out.WriteLine "</document>"
+
+FinalExit:
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+Sub WriteXMLDocRefDetails(out As TextStream, aAnalysis As DocumentAnalysis)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "WriteXMLDocRefDetails"
+ Dim myIssue As IssueInfo
+
+ 'Output References for Docs with Macros
+ If aAnalysis.HasMacros And (aAnalysis.References.count > 0) Then
+ out.WriteLine "<references>"
+ For Each myIssue In aAnalysis.References
+ OutputXMLReferenceAttributes out, aAnalysis, myIssue
+ Next myIssue
+ out.WriteLine "</references>"
+ End If
+
+FinalExit:
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : path " & aAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+Sub OutputXMLReferenceAttributes(out As TextStream, aAnalysis As DocumentAnalysis, myIssue As IssueInfo)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "OutputXMLReferenceAttributes"
+ Dim strAttributes As String
+
+ With myIssue
+ out.WriteLine "<reference"
+
+ strAttributes = .Values("Major") & "." & .Values("Minor")
+ strAttributes = IIf(strAttributes = "0.0" Or strAttributes = ".", .Values("Name"), _
+ .Values("Name") & " " & .Values("Major") & "." & .Values("Minor"))
+ out.WriteLine " name=""" & EncodeXML(strAttributes) & """"
+
+ If .Values("Type") = "Project" Then
+ strAttributes = "Project reference"
+ Else
+ strAttributes = IIf(.Values("Description") <> "", .Values("Description"), RID_STR_COMMON_NA)
+ End If
+ out.WriteLine " description=""" & EncodeXML(strAttributes) & """"
+ If .Values("IsBroken") <> RID_STR_COMMON_ATTRIBUTE_BROKEN Then
+ out.WriteLine " location=""" & .Values("File") & """"
+ End If
+ out.WriteLine " type=""" & .Values("Type") & """"
+ strAttributes = IIf(.Values("GUID") <> "", .Values("GUID"), RID_STR_COMMON_NA)
+ out.WriteLine " GUID=""" & strAttributes & """"
+ out.WriteLine " is-broken=""" & .Values("IsBroken") & """"
+ out.WriteLine " builtin=""" & .Values("BuiltIn") & """"
+
+ out.WriteLine " />"
+ End With
+
+FinalExit:
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : path " & aAnalysis.name & " : myIssue " & myIssue.IssueTypeXML & "_" & myIssue.SubTypeXML & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+Sub WriteXMLDocIssueDetails(out As TextStream, aAnalysis As DocumentAnalysis)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "WriteXMLDocIssueDetails"
+
+ Dim myIssue As IssueInfo
+
+ If aAnalysis.Issues.count = 0 Then Exit Sub
+
+ out.WriteLine "<issues>"
+ For Each myIssue In aAnalysis.Issues
+ OutputXMLCommonIssueDetails out, aAnalysis, myIssue
+ OutputXMLCommonIssueAttributes out, myIssue
+ out.WriteLine "</issue>"
+ Next myIssue
+ out.WriteLine "</issues>"
+
+FinalExit:
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : path " & aAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+Sub OutputXMLCommonIssueDetails(out As TextStream, aAnalysis As DocumentAnalysis, myIssue As IssueInfo)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "OutputXMLCommonIssueDetails"
+
+ out.WriteLine "<issue category=""" & myIssue.IssueTypeXML & """"
+ out.WriteLine " type=""" & myIssue.SubTypeXML & """"
+
+ 'NOTE: Dropping severity - now stored in results.xlt, do not want to open it to fetch this data
+ 'out.WriteLine " severity=""" & IIf(CheckForMinorIssue(aAnalysis, myIssue), "Minor", "Major") & """"
+ out.WriteLine " prepared=""" & IIf((myIssue.Preparable), "True", "False") & """ >"
+
+ out.WriteLine "<location type=""" & myIssue.locationXML & """ >"
+
+ If myIssue.SubLocation <> "" Then
+ out.WriteLine "<property name=""sublocation"" value=""" & myIssue.SubLocation & """ />"
+ End If
+ If myIssue.Line <> -1 Then
+ out.WriteLine "<property name=""line"" value=""" & myIssue.Line & """ />"
+ End If
+ If myIssue.column <> "" Then
+ out.WriteLine "<property name=""column"" value=""" & myIssue.column & """ />"
+ End If
+ out.WriteLine "</location>"
+
+FinalExit:
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : path " & aAnalysis.name & " : myIssue " & myIssue.IssueTypeXML & "_" & myIssue.SubTypeXML & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+Sub OutputXMLCommonIssueAttributes(out As TextStream, myIssue As IssueInfo)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "OutputXMLCommonIssueAttributes"
+
+ Dim index As Integer
+ Dim valStr As String
+ Dim attStr As String
+
+ If myIssue.Attributes.count = 0 Then Exit Sub
+
+ out.WriteLine "<details>"
+ For index = 1 To myIssue.Attributes.count
+ attStr = myIssue.Attributes(index)
+ If InStr(attStr, RID_STR_COMMON_NOTE_PRE & "[") = 1 Then
+ attStr = Right$(attStr, Len(attStr) - Len(RID_STR_COMMON_NOTE_PRE & "["))
+ attStr = Left$(attStr, Len(attStr) - 1)
+ out.WriteLine "<note index=""" & attStr & """ value=""" & EncodeXML(myIssue.Values(index)) & """ />"
+ Else
+ out.WriteLine "<property name=""" & EncodeXML(myIssue.Attributes(index)) & """ value=""" & EncodeXML(myIssue.Values(index)) & """ />"
+ End If
+ Next index
+
+ out.WriteLine "</details>"
+
+FinalExit:
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : myIssue " & myIssue.IssueTypeXML & "_" & myIssue.SubTypeXML & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+
+Sub WriteXMLOutput(storeToDir As String, resultsFile As String, _
+ bOverwriteResultsFile As Boolean, bNewResultsFile As Boolean, AnalysedDocs As Collection, _
+ fso As Scripting.FileSystemObject)
+
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "WriteXMLOutput"
+
+ Dim xmlOutput As TextStream
+ Dim xmlOrigOutput As TextStream
+ Dim origOutput As String
+ Dim analysis As DocumentAnalysis
+ Dim outFilePath As String
+
+ outFilePath = storeToDir & "\" & fso.GetBaseName(resultsFile) & "_" & _
+ getAppSpecificApplicationName & ".xml"
+
+ Set xmlOutput = fso.CreateTextFile(outFilePath, True)
+ WriteXMLHeader xmlOutput
+
+ 'Set xmlOrigOutput = fso.OpenTextFile(outFilePath, ForReading)
+ 'Set xmlOutput = fso.OpenTextFile(outFilePath, ForWriting)
+
+ WriteXMLResultsStartTag xmlOutput
+ For Each analysis In AnalysedDocs
+ WriteXMLDocProperties xmlOutput, analysis
+ WriteXMLDocRefDetails xmlOutput, analysis
+ WriteXMLDocIssueDetails xmlOutput, analysis
+ WriteXMLDocPropertiesEndTag xmlOutput
+ Next analysis
+ WriteXMLResultsEndTag xmlOutput
+
+FinalExit:
+ xmlOutput.Close
+ Set xmlOutput = Nothing
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : path " & outFilePath & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+Private Function EncodeUrl(ByVal sUrl As String) As String
+ Const MAX_PATH As Long = 260
+ Const ERROR_SUCCESS As Long = 0
+ Const URL_DONT_SIMPLIFY As Long = &H8000000
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "EncodeUrl"
+
+ Dim sUrlEsc As String
+ Dim dwSize As Long
+ Dim dwFlags As Long
+
+ If Len(sUrl) > 0 Then
+
+ sUrlEsc = Space$(MAX_PATH)
+ dwSize = Len(sUrlEsc)
+ dwFlags = URL_DONT_SIMPLIFY
+
+ If UrlEscape(sUrl, _
+ sUrlEsc, _
+ dwSize, _
+ dwFlags) = ERROR_SUCCESS Then
+
+ EncodeUrl = Left$(sUrlEsc, dwSize)
+
+ End If 'If UrlEscape
+ End If 'If Len(sUrl) > 0
+
+FinalExit:
+ Exit Function
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : sUrl " & sUrl & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Function
+
+Private Function EncodeXML(Str As String) As String
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "EncodeXML"
+
+ Str = Replace(Str, "^", "&#x5E;")
+ Str = Replace(Str, "&", "&amp;")
+ Str = Replace(Str, "`", "&apos;")
+ Str = Replace(Str, "{", "&#x7B;")
+ Str = Replace(Str, "}", "&#x7D;")
+ Str = Replace(Str, "|", "&#x7C;")
+ Str = Replace(Str, "]", "&#x5D;")
+ Str = Replace(Str, "[", "&#x5B;")
+ Str = Replace(Str, """", "&quot;")
+ Str = Replace(Str, "<", "&lt;")
+ Str = Replace(Str, ">", "&gt;")
+
+ 'str = Replace(str, "\", "&#x5C;")
+ 'str = Replace(str, "#", "&#x23;")
+ 'str = Replace(str, "?", "&#x3F;")
+ 'str = Replace(str, "/", "&#x2F;")
+
+ EncodeXML = Str
+
+FinalExit:
+ Exit Function
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : string " & Str & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Function
+
+
+Function ReplaceTopicTokens(sString As String, _
+ sToken As String, _
+ sReplacement As String) As String
+ On Error Resume Next
+
+ Dim p As Integer
+ Dim sTmp As String
+
+ sTmp = sString
+ Do
+ p = InStr(sTmp, sToken)
+ If p Then
+ sTmp = Left(sTmp, p - 1) + sReplacement + Mid(sTmp, p + Len(sToken))
+ End If
+ Loop While p > 0
+
+
+ ReplaceTopicTokens = sTmp
+
+End Function
+
+Function ReplaceTopic2Tokens(sString As String, _
+ sToken1 As String, _
+ sReplacement1 As String, _
+ sToken2 As String, _
+ sReplacement2 As String) As String
+ On Error Resume Next
+
+ ReplaceTopic2Tokens = _
+ ReplaceTopicTokens(ReplaceTopicTokens(sString, sToken1, sReplacement1), _
+ sToken2, sReplacement2)
+End Function
+
+'Language setting functions
+Function GetResourceDataFileName(thisDir As String) As String
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "GetResourceDataFileName"
+
+ Dim fso As FileSystemObject
+ Set fso = New FileSystemObject
+
+ 'A debug method - if a file called debug.dat exists load it.
+ If fso.FileExists(fso.GetAbsolutePathName(thisDir & "\debug.dat")) Then
+ GetResourceDataFileName = fso.GetAbsolutePathName(thisDir & "\debug.dat")
+ GoTo FinalExit
+ End If
+
+ Dim isoLangStr As String
+ Dim isoCountryStr As String
+ Dim langDir As String
+
+ langDir = thisDir & "\" & "lang"
+
+ Dim userLCID As Long
+ userLCID = GetUserDefaultLangID()
+ Dim sysLCID As Long
+ sysLCID = GetSystemDefaultLangID()
+
+ isoLangStr = GetUserLocaleInfo(userLCID, LOCALE_SISO639LANGNAME)
+ isoCountryStr = GetUserLocaleInfo(userLCID, LOCALE_SISO3166CTRYNAME)
+
+ 'check for locale data in following order:
+ ' user language
+ ' isoLangStr & "_" & isoCountryStr & ".dat"
+ ' isoLangStr & ".dat"
+ ' system language
+ ' isoLangStr & "_" & isoCountryStr & ".dat"
+ ' isoLangStr & ".dat"
+ ' "en_US" & ".dat"
+
+ If fso.FileExists(fso.GetAbsolutePathName(langDir & "\" & isoLangStr & "-" & isoCountryStr & ".dat")) Then
+ GetResourceDataFileName = fso.GetAbsolutePathName(langDir & "\" & isoLangStr & "-" & isoCountryStr & ".dat")
+ ElseIf fso.FileExists(fso.GetAbsolutePathName(langDir & "\" & isoLangStr & ".dat")) Then
+ GetResourceDataFileName = fso.GetAbsolutePathName(langDir & "\" & isoLangStr & ".dat")
+ Else
+ isoLangStr = GetUserLocaleInfo(sysLCID, LOCALE_SISO639LANGNAME)
+ isoCountryStr = GetUserLocaleInfo(sysLCID, LOCALE_SISO3166CTRYNAME)
+
+ If fso.FileExists(fso.GetAbsolutePathName(langDir & "\" & isoLangStr & "-" & isoCountryStr & ".dat")) Then
+ GetResourceDataFileName = fso.GetAbsolutePathName(langDir & "\" & isoLangStr & "-" & isoCountryStr & ".dat")
+ ElseIf fso.FileExists(fso.GetAbsolutePathName(langDir & "\" & isoLangStr & ".dat")) Then
+ GetResourceDataFileName = fso.GetAbsolutePathName(langDir & "\" & isoLangStr & ".dat")
+ Else
+ GetResourceDataFileName = fso.GetAbsolutePathName(langDir & "\" & "en-US.dat")
+ End If
+ End If
+FinalExit:
+ Set fso = Nothing
+ Exit Function
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Function
+
+Public Function GetUserLocaleInfo(ByVal dwLocaleID As Long, ByVal dwLCType As Long) As String
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "GetUserLocaleInfo"
+ Dim sReturn As String
+ Dim r As Long
+
+ 'call the function passing the Locale type
+ 'variable to retrieve the required size of
+ 'the string buffer needed
+ r = GetLocaleInfo(dwLocaleID, dwLCType, sReturn, Len(sReturn))
+
+ 'if successful..
+ If r Then
+ 'pad the buffer with spaces
+ sReturn = Space$(r)
+
+ 'and call again passing the buffer
+ r = GetLocaleInfo(dwLocaleID, dwLCType, sReturn, Len(sReturn))
+
+ 'if successful (r > 0)
+ If r Then
+ 'r holds the size of the string
+ 'including the terminating null
+ GetUserLocaleInfo = Left$(sReturn, r - 1)
+ End If
+ End If
+
+FinalExit:
+ Exit Function
+
+HandleErrors:
+ WriteDebug currentFunctionName & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Function
+
+' This function returns the Application Data Folder Path
+Function GetAppDataFolder() As String
+ Dim idlstr As Long
+ Dim sPath As String
+ Dim IDL As ITEMIDLIST
+ Const NOERROR = 0
+ Const MAX_LENGTH = 260
+ Const CSIDL_APPDATA = &H1A
+
+ On Error GoTo Err_GetFolder
+
+ ' Fill the idl structure with the specified folder item.
+ idlstr = SHGetSpecialFolderLocation(0, CSIDL_APPDATA, IDL)
+
+ If idlstr = NOERROR Then
+ ' Get the path from the idl list, and return
+ ' the folder with a slash at the end.
+ sPath = Space$(MAX_LENGTH)
+ idlstr = SHGetPathFromIDList(ByVal IDL.mkid.cb, ByVal sPath)
+ If idlstr Then
+ GetAppDataFolder = Left$(sPath, InStr(sPath, Chr$(0)) - 1)
+ End If
+ End If
+
+Exit_GetFolder:
+ Exit Function
+
+Err_GetFolder:
+ MsgBox "An Error was Encountered" & Chr(13) & Err.Description, _
+ vbCritical Or vbOKOnly
+ Resume Exit_GetFolder
+
+End Function
+
+Sub WriteToStatFile(statFileName As String, statValue As Integer, _
+ currDocument As String, fso As Scripting.FileSystemObject)
+
+ On Error Resume Next
+
+ Dim fileCont As TextStream
+
+ Set fileCont = fso.OpenTextFile(statFileName, ForWriting, True, TristateTrue)
+ If (statValue = C_STAT_STARTING) Then
+ fileCont.WriteLine ("analysing=" & currDocument)
+ ElseIf (statValue = C_STAT_DONE) Then
+ fileCont.WriteLine ("analysed=" & currDocument)
+ ElseIf (statValue = C_STAT_FINISHED) Then
+ fileCont.WriteLine ("finished")
+ End If
+
+ fileCont.Close
+End Sub
+
+' The function FindIndex looks for a document in the given document list
+' starting at the position lastIndex in that list. If the document could
+' not be found, the function starts searching from the beginning
+
+Function FindIndex(myDocument As String, _
+ myDocList As Collection, _
+ lastIndex As Long) As Long
+
+ Dim lastEntry As Long
+ Dim curIndex As Long
+ Dim curEntry As String
+ Dim entryFound As Boolean
+
+ entryFound = False
+ lastEntry = myDocList.count
+
+ If (lastIndex > lastEntry) Then lastIndex = lastEntry
+
+ If (lastIndex > 1) Then
+ curIndex = lastIndex
+ Else
+ curIndex = 1
+ End If
+
+ While Not entryFound And curIndex <= lastEntry
+ curEntry = myDocList.item(curIndex)
+ If (curEntry = myDocument) Then
+ entryFound = True
+ Else
+ curIndex = curIndex + 1
+ End If
+ Wend
+
+ If (Not entryFound) Then
+ curIndex = 1
+ While Not entryFound And curIndex < lastIndex
+ curEntry = myDocList.item(curIndex)
+ If (curEntry = myDocument) Then
+ entryFound = True
+ Else
+ curIndex = curIndex + 1
+ End If
+ Wend
+ End If
+
+ If entryFound Then
+ FindIndex = curIndex
+ Else
+ FindIndex = 0
+ End If
+
+End Function
+
+' The sub GetIndexValues calulates the start index of the analysis and the index
+' of the file after which the next intermediate reult will be written
+Function GetIndexValues(startIndex As Long, nextCheck As Long, _
+ myFiles As Collection) As Boolean
+
+ Dim lastCheckpoint As String
+ Dim nextFile As String
+ Dim newResultsFile As Boolean
+
+ lastCheckpoint = ProfileGetItem(C_ANALYSIS, C_LAST_CHECKPOINT, "", mIniFilePath)
+ nextFile = ProfileGetItem(C_ANALYSIS, C_NEXT_FILE, "", mIniFilePath)
+ newResultsFile = True
+
+ If (nextFile = "") Then
+ ' No Analysis done yet
+ startIndex = 1
+ nextCheck = C_MAX_CHECK
+ Else
+ If (lastCheckpoint = "") Then
+ startIndex = 1
+ Else
+ startIndex = FindIndex(lastCheckpoint, myFiles, 1) + 1
+ If (startIndex > 0) Then newResultsFile = False
+ End If
+
+ nextCheck = FindIndex(nextFile, myFiles, startIndex - 1)
+
+ If (nextCheck = 0) Then ' Next file not in file list, restarting
+ startIndex = 1
+ nextCheck = C_MAX_CHECK
+ newResultsFile = True
+ ElseIf (nextCheck < startIndex) Then 'we are done?
+ nextCheck = startIndex + C_MAX_CHECK
+ ElseIf (nextCheck = startIndex) Then 'skip this one
+ WriteToLog C_ERROR_HANDLING_DOC & nextCheck, nextFile
+ startIndex = startIndex + 1
+ nextCheck = startIndex + C_MAX_CHECK
+ Else 'last time an error occurred with that file, write before analysing
+ nextCheck = nextCheck - 1
+ End If
+ End If
+ GetIndexValues = newResultsFile
+End Function
+
+Private Sub GetDocModificationDates(docCounts As DocModificationDates)
+
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "GetDocModificationDates"
+
+ docCounts.lessThanThreemonths = CLng(ProfileGetItem("Analysis", C_DOCS_LESS_3_MONTH, "0", mIniFilePath))
+ docCounts.threeToSixmonths = CLng(ProfileGetItem("Analysis", C_DOCS_LESS_6_MONTH, "0", mIniFilePath))
+ docCounts.sixToTwelvemonths = CLng(ProfileGetItem("Analysis", C_DOCS_LESS_12_MONTH, "0", mIniFilePath))
+ docCounts.greaterThanOneYear = CLng(ProfileGetItem("Analysis", C_DOCS_MORE_12_MONTH, "0", mIniFilePath))
+
+FinalExit:
+ Exit Sub
+HandleErrors:
+ WriteDebug currentFunctionName & " : " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
diff --git a/migrationanalysis/src/driver_docs/sources/CommonMigrationAnalyser.bas b/migrationanalysis/src/driver_docs/sources/CommonMigrationAnalyser.bas
index cad3894a9b63..280f7beed8c0 100644
--- a/migrationanalysis/src/driver_docs/sources/CommonMigrationAnalyser.bas
+++ b/migrationanalysis/src/driver_docs/sources/CommonMigrationAnalyser.bas
@@ -1,1112 +1,1112 @@
-Attribute VB_Name = "CommonMigrationAnalyser"
-'*************************************************************************
-'
-' Licensed to the Apache Software Foundation (ASF) under one
-' or more contributor license agreements. See the NOTICE file
-' distributed with this work for additional information
-' regarding copyright ownership. The ASF licenses this file
-' to you under the Apache License, Version 2.0 (the
-' "License"); you may not use this file except in compliance
-' with the License. You may obtain a copy of the License at
-'
-' http://www.apache.org/licenses/LICENSE-2.0
-'
-' Unless required by applicable law or agreed to in writing,
-' software distributed under the License is distributed on an
-' "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-' KIND, either express or implied. See the License for the
-' specific language governing permissions and limitations
-' under the License.
-'
-'*************************************************************************
-Option Explicit
-
-
-'***********************************************
-'**** APPLICATION COMMON ANALYSIS FUNCTIONS ****
-'***********************************************
-
-'** Common - XML Issue and SubIssue strings
-'For preparation - need access to some Word/ Excel or PP consts
-Public Const CSTR_ISSUE_OBJECTS_GRAPHICS_AND_FRAMES = "ObjectsGraphicsAndFrames"
-Public Const CSTR_SUBISSUE_OBJECT_IN_HEADER_FOOTER = "ObjectInHeaderFooter"
-
-Public Const CSTR_ISSUE_INFORMATION = "Information"
-Public Const CSTR_ISSUE_CONTENT_DOCUMENT_PROPERTIES = "ContentAndDocumentProperties"
-Public Const CSTR_ISSUE_FORMAT = "Format"
-Public Const CSTR_ISSUE_PORTABILITY = "Portability"
-Public Const CSTR_ISSUE_VBA_MACROS = "VBAMacros"
-
-Public Const CSTR_SUBISSUE_DOCUMENT_PARTS_PROTECTION = "DocumentPartsProtection"
-Public Const CSTR_SUBISSUE_EXTERNAL_REFERENCES_IN_MACRO = "ExternalReferencesInMacro"
-Public Const CSTR_SUBISSUE_EXTERNAL_REFERENCES_IN_MACRO_COUNT = "ExternalReferencesInMacroCount"
-Public Const CSTR_SUBISSUE_GRADIENT = "Gradient"
-Public Const CSTR_SUBISSUE_INVALID_PASSWORD_ENTERED = "InvalidPasswordEntered"
-Public Const CSTR_SUBISSUE_LINE = "Line"
-Public Const CSTR_SUBISSUE_MACRO_PASSWORD_PROTECTION = "PasswordProtected"
-Public Const CSTR_SUBISSUE_OLD_WORKBOOK_VERSION = "OldWorkbookVersion"
-Public Const CSTR_SUBISSUE_OLE_EMBEDDED = "EmbeddedOLEObject"
-Public Const CSTR_SUBISSUE_OLE_LINKED = "LinkedOLEObject"
-Public Const CSTR_SUBISSUE_OLE_CONTROL = "OLEControl"
-Public Const CSTR_SUBISSUE_OLE_FIELD_LINK = "OLEFieldLink"
-Public Const CSTR_SUBISSUE_OLE_UNKNOWN = "UnknownType"
-Public Const CSTR_SUBISSUE_PASSWORDS_PROTECTION = "PasswordProtection"
-Public Const CSTR_SUBISSUE_PROPERTIES = "Properties"
-Public Const CSTR_SUBISSUE_REFERENCES = "References"
-Public Const CSTR_SUBISSUE_TRANSPARENCY = "Transparency"
-Public Const CSTR_SUBISSUE_VBA_MACROS_NUMLINES = "NumberOfLines"
-Public Const CSTR_SUBISSUE_VBA_MACROS_USERFORMS_COUNT = "UserFormsCount"
-Public Const CSTR_SUBISSUE_VBA_MACROS_USERFORMS_CONTROL_COUNT = "UserFormsControlCount"
-Public Const CSTR_SUBISSUE_VBA_MACROS_USERFORMS_CONTROLTYPE_COUNT = "UserFormsControlTypeCount"
-Public Const CSTR_SUBISSUE_VBA_MACROS_UNIQUE_MODULE_COUNT = "UniqueModuleCount"
-Public Const CSTR_SUBISSUE_VBA_MACROS_UNIQUE_LINE_COUNT = "UniqueLineCount"
-'** END Common - XML Issue and SubIssue strings
-
-'Macro classification bounds
-Public Const CMACRO_LINECOUNT_MEDIUM_LBOUND = 50
-
-'Don't localize folder name
-Public Const CSTR_COMMON_PREPARATION_FOLDER = "prepared"
-
-
-Public Enum EnumDocOverallMacroClass
- enMacroNone = 0
- enMacroSimple = 1
- enMacroMedium = 2
- enMacroComplex = 3
-End Enum
-Public Enum EnumDocOverallIssueClass
- enNone = 0
- enMinor = 1
- enComplex = 2
-End Enum
-
-Sub EmptyCollection(docAnalysis As DocumentAnalysis, coll As Collection)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "EmptyCollection"
- Dim Num As Long
- For Num = 1 To coll.count ' Remove name from the collection.
- coll.Remove 1 ' Default collection numeric indexes
- Next ' begin at 1.
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & " : " & docAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
-End Sub
-
-Public Function Analyze_Macros(docAnalysis As DocumentAnalysis, _
- userFormTypesDict As Scripting.Dictionary, _
- currDoc As Object)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "Analyze_Macros"
- Dim macroDetails As String
- Dim cmpDetails As String
- Dim myProject As VBProject
- Dim myComponent As VBComponent
- Dim numLines As Long
- Dim myIssue As IssueInfo
- Dim wrd As Object
- Dim bUserFormWithEmptyCodeModule As Boolean
-
- On Error Resume Next
- Set myProject = getAppSpecificVBProject(currDoc)
- If Err.Number <> 0 Then
- ' Failed to get access to VBProject
- WriteDebug currentFunctionName & " : " & docAnalysis.name & ": " & _
- RID_STR_COMMON_ATTRIBUTE_UNABLE_TO_ACCESS_VBPROJECT & ":" & _
- RID_STR_COMMON_ATTRIBUTE_FURTHER_MACRO_ANALYSIS_NOT_POSSIBLE
-
- GoTo FinalExit
- End If
-
- On Error GoTo HandleErrors
- If myProject.Protection = vbext_pp_locked Then
- Set myIssue = New IssueInfo
- With myIssue
- .IssueID = CID_VBA_MACROS
- .IssueType = RID_STR_COMMON_ISSUE_VBA_MACROS
- .SubType = RID_STR_COMMON_SUBISSUE_MACRO_PASSWORD_PROTECTION
- .Location = .CLocationDocument
-
- .IssueTypeXML = CSTR_ISSUE_VBA_MACROS
- .SubTypeXML = CSTR_SUBISSUE_MACRO_PASSWORD_PROTECTION
- .locationXML = .CXMLLocationDocument
-
- .Attributes.Add RID_STR_COMMON_ATTRIBUTE_VBPROJECT_PASSWORD
- .Values.Add RID_STR_COMMON_ATTRIBUTE_FURTHER_MACRO_ANALYSIS_NOT_POSSIBLE
- End With
- docAnalysis.IssuesCountArray(CID_VBA_MACROS) = _
- docAnalysis.IssuesCountArray(CID_VBA_MACROS) + 1
- docAnalysis.Issues.Add myIssue
- docAnalysis.MacroIssuesCount = docAnalysis.MacroIssuesCount + 1
-
- docAnalysis.HasMacros = True
- GoTo FinalExit
- End If
-
- Dim myContolDict As Scripting.Dictionary
- For Each myComponent In myProject.VBComponents
-
- bUserFormWithEmptyCodeModule = False
- If CheckEmptyProject(docAnalysis, myProject, myComponent) Then
- If myComponent.Type <> vbext_ct_MSForm Then
- GoTo FOREACH_CONTINUE
- Else
- bUserFormWithEmptyCodeModule = True
- End If
- End If
-
- Analyze_MacrosForPortabilityIssues docAnalysis, myProject, myComponent
-
- Set myIssue = New IssueInfo
- With myIssue
- .IssueID = CID_VBA_MACROS
- .IssueType = RID_STR_COMMON_ISSUE_VBA_MACROS
- .SubType = RID_STR_COMMON_SUBISSUE_PROPERTIES
- .Location = .CLocationDocument
-
- .IssueTypeXML = CSTR_ISSUE_VBA_MACROS
- .SubTypeXML = CSTR_SUBISSUE_PROPERTIES
- .locationXML = .CXMLLocationDocument
-
- .SubLocation = VBComponentType(myComponent)
- .Attributes.Add RID_STR_COMMON_ATTRIBUTE_PROJECT
- .Values.Add myProject.name
- .Attributes.Add RID_STR_COMMON_ATTRIBUTE_COMPONENT
- .Values.Add myComponent.name
- .Attributes.Add RID_STR_COMMON_ATTRIBUTE_PROCEDURES
- .Values.Add VBNumFuncs(docAnalysis, myComponent.CodeModule), RID_STR_COMMON_ATTRIBUTE_PROCEDURES
- .Attributes.Add RID_STR_COMMON_ATTRIBUTE_NUMBER_OF_LINES
- numLines = VBNumLines(docAnalysis, myComponent.CodeModule)
- .Values.Add numLines, RID_STR_COMMON_ATTRIBUTE_NUMBER_OF_LINES
-
- If bUserFormWithEmptyCodeModule Then
- .Attributes.Add RID_STR_COMMON_ATTRIBUTE_SIGNATURE
- .Values.Add RID_STR_COMMON_NA, RID_STR_COMMON_ATTRIBUTE_SIGNATURE
- Else
- .Attributes.Add RID_STR_COMMON_ATTRIBUTE_SIGNATURE
- .Values.Add MD5HashString( _
- myComponent.CodeModule.Lines(1, myComponent.CodeModule.CountOfLines)), _
- RID_STR_COMMON_ATTRIBUTE_SIGNATURE
- End If
-
- docAnalysis.MacroTotalNumLines = numLines + docAnalysis.MacroTotalNumLines
- End With
-
- ' User Forms - control details
- If (myComponent.Type = vbext_ct_MSForm) And Not bUserFormWithEmptyCodeModule Then
- myIssue.Attributes.Add RID_STR_COMMON_ATTRIBUTE_CONTROLS
- myIssue.Values.Add myComponent.Designer.Controls.count, RID_STR_COMMON_ATTRIBUTE_CONTROLS
- docAnalysis.MacroNumUserForms = 1 + docAnalysis.MacroNumUserForms
- docAnalysis.MacroNumUserFormControls = myComponent.Designer.Controls.count + docAnalysis.MacroNumUserFormControls
-
- Dim myControl As Control
- Dim controlTypes As String
- Dim myType As String
-
- Set myContolDict = New Scripting.Dictionary
-
- For Each myControl In myComponent.Designer.Controls
- myType = TypeName(myControl)
- If myContolDict.Exists(myType) Then
- myContolDict.item(myType) = myContolDict.item(myType) + 1
- Else
- myContolDict.Add myType, 1
- End If
- If userFormTypesDict.Exists(myType) Then
- userFormTypesDict.item(myType) = userFormTypesDict.item(myType) + 1
- Else
- userFormTypesDict.Add myType, 1
- End If
- Next
-
- If myComponent.Designer.Controls.count > 0 Then
- Dim count As Long
- Dim vKeyArray As Variant
- Dim vItemArray As Variant
-
- vKeyArray = myContolDict.Keys
- vItemArray = myContolDict.Items
-
- controlTypes = ""
- For count = 0 To myContolDict.count - 1
- controlTypes = controlTypes & vKeyArray(count) & " " & CInt(vItemArray(count)) & " "
- Next count
- myIssue.Attributes.Add RID_STR_COMMON_ATTRIBUTE_USERFORM_TYPE
- myIssue.Values.Add controlTypes, RID_STR_COMMON_ATTRIBUTE_USERFORM_TYPE
-
- myIssue.Attributes.Add RID_STR_COMMON_ATTRIBUTE_USERFORM_TYPES_COUNT
- myIssue.Values.Add myContolDict.count, RID_STR_COMMON_ATTRIBUTE_USERFORM_TYPES_COUNT
-
- docAnalysis.MacroNumUserFormControlTypes = myContolDict.count + docAnalysis.MacroNumUserFormControlTypes
- End If
- Set myContolDict = Nothing
- End If
-
- 'Check for occurence of " Me " in Form and Class Modules
- If myComponent.Type = vbext_ct_MSForm Or _
- myComponent.Type = vbext_ct_ClassModule Then
-
- Dim strFind As String
- strFind = ""
- count = 0
- strFind = VBFindLines(docAnalysis, myComponent.CodeModule, "Me", count, bWholeWord:=True)
-' If (strFind <> "") Then MsgBox strFind
-
- If count > 0 Then
- myIssue.Attributes.Add RID_STR_COMMON_ATTRIBUTE_CLASS_ME_COUNT
- myIssue.Values.Add count, RID_STR_COMMON_ATTRIBUTE_CLASS_ME_COUNT
- End If
- End If
-
- docAnalysis.IssuesCountArray(CID_VBA_MACROS) = _
- docAnalysis.IssuesCountArray(CID_VBA_MACROS) + 1
- docAnalysis.Issues.Add myIssue
- docAnalysis.MacroIssuesCount = docAnalysis.MacroIssuesCount + 1
-
- Set myIssue = Nothing
-
-FOREACH_CONTINUE:
- 'No equiv to C continue in VB
- Next myComponent 'End - For Each myComponent
-
- If docAnalysis.IssuesCountArray(CID_VBA_MACROS) > 0 Then
- Analyze_VBEReferences docAnalysis, currDoc
- docAnalysis.HasMacros = True
- End If
-
-FinalExit:
- docAnalysis.MacroOverallClass = ClassifyDocOverallMacroClass(docAnalysis)
-
- Set myProject = Nothing
- Set myIssue = Nothing
- Set myContolDict = Nothing
- Exit Function
-
-HandleErrors:
- WriteDebug currentFunctionName & " : " & docAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Function
-
-Function CheckOnlyEmptyProject(docAnalysis As DocumentAnalysis, currDoc As Object) As Boolean
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "CheckOnlyEmptyProject"
- Dim myProject As VBProject
- Set myProject = getAppSpecificVBProject(currDoc)
- Dim myVBComponent As VBComponent
-
- For Each myVBComponent In myProject.VBComponents
- If Not CheckEmptyProject(docAnalysis, myProject, myVBComponent) Then
- CheckOnlyEmptyProject = False
- GoTo FinalExit
- End If
- Next myVBComponent
-
- CheckOnlyEmptyProject = True
-
-FinalExit:
- Set myProject = Nothing
- Exit Function
-
-HandleErrors:
- WriteDebug currentFunctionName & " : " & docAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Function
-
-Sub Analyze_VBEReferences(docAnalysis As DocumentAnalysis, currDoc As Object)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "Analyze_VBEReferences"
- 'References
- Dim Ref As Reference
- Dim fso As Scripting.FileSystemObject
- Dim myVBProject As VBProject
- Dim myVBComponent As VBComponent
-
- Set fso = New Scripting.FileSystemObject
-
- If CheckOnlyEmptyProject(docAnalysis, currDoc) Then
- Exit Sub
- End If
- Set myVBProject = getAppSpecificVBProject(currDoc)
-
- For Each Ref In myVBProject.References
- Analyze_VBEReferenceSingle docAnalysis, Ref, fso
- Next Ref
-
-FinalExit:
- Set myVBProject = Nothing
- Set fso = Nothing
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & " : " & docAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-Sub Analyze_VBEReferenceSingle(docAnalysis As DocumentAnalysis, Ref As Reference, fso As Scripting.FileSystemObject)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "Analyze_VBEReferenceSingle"
- 'References
- Dim myIssue As IssueInfo
- Dim bBadRef As Boolean
-
- Set myIssue = New IssueInfo
- With myIssue
- .IssueID = CID_INFORMATION_REFS
- .IssueType = RID_STR_COMMON_ISSUE_INFORMATION
- .SubType = RID_STR_COMMON_SUBISSUE_REFERENCES
- .Location = .CLocationDocument
-
- .IssueTypeXML = CSTR_ISSUE_INFORMATION
- .SubTypeXML = CSTR_SUBISSUE_REFERENCES
- .locationXML = .CXMLLocationDocument
-
- If Ref.GUID = "" Then
- bBadRef = True
- Else
- bBadRef = False
- End If
- If Not bBadRef Then
- .SubLocation = LCase(fso.GetFileName(Ref.FullPath))
- .Attributes.Add RID_STR_COMMON_ATTRIBUTE_NAME
- .Values.Add Ref.name, RID_STR_COMMON_ATTRIBUTE_NAME
- .Attributes.Add RID_STR_COMMON_ATTRIBUTE_DESCRIPTION
- .Values.Add Ref.Description, RID_STR_COMMON_ATTRIBUTE_DESCRIPTION
- .Attributes.Add RID_STR_COMMON_ATTRIBUTE_FILE
- .Values.Add LCase(fso.GetFileName(Ref.FullPath)), RID_STR_COMMON_ATTRIBUTE_FILE
- .Attributes.Add RID_STR_COMMON_ATTRIBUTE_PATH
- .Values.Add LCase(Ref.FullPath), RID_STR_COMMON_ATTRIBUTE_PATH
- Else
- .SubLocation = RID_STR_COMMON_NA
- .Attributes.Add RID_STR_COMMON_ATTRIBUTE_NAME
- .Values.Add RID_STR_COMMON_ATTRIBUTE_MISSING, RID_STR_COMMON_ATTRIBUTE_NAME
- .Attributes.Add RID_STR_COMMON_ATTRIBUTE_DESCRIPTION
- .Values.Add RID_STR_COMMON_ATTRIBUTE_CHECK_DOCUMENT_REFERENCES, RID_STR_COMMON_ATTRIBUTE_DESCRIPTION
- End If
-
- .Attributes.Add RID_STR_COMMON_ATTRIBUTE_MAJOR
- .Values.Add IIf(Not bBadRef, Ref.Major, ""), RID_STR_COMMON_ATTRIBUTE_MAJOR
- .Attributes.Add RID_STR_COMMON_ATTRIBUTE_MINOR
- .Values.Add IIf(Not bBadRef, Ref.Minor, ""), RID_STR_COMMON_ATTRIBUTE_MINOR
-
- .Attributes.Add RID_STR_COMMON_ATTRIBUTE_TYPE
- .Values.Add IIf(Ref.Type = vbext_rk_Project, RID_STR_COMMON_ATTRIBUTE_PROJECT, RID_STR_COMMON_ATTRIBUTE_TYPELIB), RID_STR_COMMON_ATTRIBUTE_TYPE
-
- .Attributes.Add RID_STR_COMMON_ATTRIBUTE_BUILTIN
- .Values.Add IIf(Ref.BuiltIn, RID_STR_COMMON_ATTRIBUTE_BUILTIN, RID_STR_COMMON_ATTRIBUTE_CUSTOM), RID_STR_COMMON_ATTRIBUTE_BUILTIN
- .Attributes.Add RID_STR_COMMON_ATTRIBUTE_ISBROKEN
- .Values.Add IIf(bBadRef, RID_STR_COMMON_ATTRIBUTE_BROKEN, RID_STR_COMMON_ATTRIBUTE_INTACT), RID_STR_COMMON_ATTRIBUTE_ISBROKEN
- .Attributes.Add RID_STR_COMMON_ATTRIBUTE_GUID
- .Values.Add IIf(Ref.Type = vbext_rk_TypeLib, Ref.GUID, ""), RID_STR_COMMON_ATTRIBUTE_GUID
- End With
-
- docAnalysis.References.Add myIssue
-
-FinalExit:
- Set myIssue = Nothing
- Exit Sub
-
-HandleErrors:
- WriteDebugLevelTwo currentFunctionName & " : " & docAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-Sub Analyze_MacrosForPortabilityIssues(docAnalysis As DocumentAnalysis, myProject As VBProject, myComponent As VBComponent)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "Analyze_MacrosForPortabilityIssues"
- Dim myIssue As IssueInfo
- Dim count As Long
-
- ' Code Modules
- Dim strFind As String
- strFind = VBFindLines(docAnalysis, myComponent.CodeModule, "CreateObject", count, bWholeWord:=True) & _
- VBFindLines(docAnalysis, myComponent.CodeModule, "GetObject", count, bWholeWord:=True) & _
- VBFindLines(docAnalysis, myComponent.CodeModule, "ADODB.", count, True, True) & _
- VBFindLines(docAnalysis, myComponent.CodeModule, "Word.", count, True, True) & _
- VBFindLines(docAnalysis, myComponent.CodeModule, "Excel.", count, True, True) & _
- VBFindLines(docAnalysis, myComponent.CodeModule, "PowerPoint.", count, True, True) & _
- VBFindLines(docAnalysis, myComponent.CodeModule, "Access.", count, True, True) & _
- VBFindLines(docAnalysis, myComponent.CodeModule, "Declare Function ", count, False) & _
- VBFindLines(docAnalysis, myComponent.CodeModule, "Declare Sub ", count, False)
-
-
- If (strFind <> "") And (myComponent.Type <> vbext_ct_Document) Then
- Set myIssue = New IssueInfo
- With myIssue
- .IssueID = CID_PORTABILITY
- .IssueType = RID_STR_COMMON_ISSUE_PORTABILITY
- .SubType = RID_STR_COMMON_SUBISSUE_EXTERNAL_REFERENCES_IN_MACROS
- .Location = .CLocationDocument
-
- .IssueTypeXML = CSTR_ISSUE_PORTABILITY
- .SubTypeXML = CSTR_SUBISSUE_EXTERNAL_REFERENCES_IN_MACRO
- .locationXML = .CXMLLocationDocument
-
- .SubLocation = VBComponentType(myComponent)
-
- .Attributes.Add RID_STR_COMMON_ATTRIBUTE_PROJECT
- .Values.Add myProject.name
- .Attributes.Add RID_STR_COMMON_ATTRIBUTE_COMPONENT
- .Values.Add myComponent.name
- .Attributes.Add RID_STR_COMMON_ATTRIBUTE_NON_PORTABLE_EXTERNAL_REFERENCES
- .Values.Add RID_STR_COMMON_ATTRIBUTE_INCLUDING & vbLf & Left(strFind, Len(strFind) - 1)
- .Attributes.Add RID_STR_COMMON_ATTRIBUTE_NON_PORTABLE_EXTERNAL_REFERENCES_COUNT
- .Values.Add count, RID_STR_COMMON_ATTRIBUTE_NON_PORTABLE_EXTERNAL_REFERENCES_COUNT
- End With
- docAnalysis.IssuesCountArray(CID_PORTABILITY) = _
- docAnalysis.IssuesCountArray(CID_PORTABILITY) + 1
- docAnalysis.Issues.Add myIssue
- docAnalysis.MacroNumExternalRefs = count + docAnalysis.MacroNumExternalRefs
- docAnalysis.MacroIssuesCount = docAnalysis.MacroIssuesCount + 1
- End If
-
-FinalExit:
- Set myIssue = Nothing
- Exit Sub
-
-
-HandleErrors:
- WriteDebug currentFunctionName & " : " & docAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
-Resume FinalExit
-End Sub
-
-'Find Lines in code module containing strFind and return list of them
-Function VBFindLines(docAnalysis As DocumentAnalysis, vbcm As CodeModule, strFind As String, _
- count As Long, _
- Optional bInProcedure As Boolean = True, _
- Optional bUsingNew As Boolean = False, _
- Optional bWholeWord As Boolean = False, _
- Optional bMatchCase As Boolean = False) As String
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "VBFindLines"
- Dim lngStartLine As Long
- Dim lngStartCol As Long
- Dim lngEndLine As Long
- Dim lngEndCol As Long
- Dim strLine As String
- lngStartLine = 1
- lngStartCol = 1
- lngEndLine = vbcm.CountOfLines
- Dim tmpString As String
- If (vbcm.CountOfLines = 0) Then
- Exit Function
- End If
- tmpString = vbcm.Lines(vbcm.CountOfLines, 1)
- lngEndCol = Len(vbcm.Lines(vbcm.CountOfLines, 1))
- Dim lngType As Long
- Dim strProc As String
- Dim retStr As String
-
- ' Search
- Do While vbcm.Find(strFind, lngStartLine, _
- lngStartCol, lngEndLine, lngEndCol, bWholeWord, bMatchCase)
-
- 'Ignore any lines using this func
- If InStr(1, vbcm.Lines(lngStartLine, 1), "VBFindLines") <> 0 Then
- GoTo CONTINUE_LOOP
- End If
-
- If bInProcedure Then
- If bUsingNew Then
- If InStr(1, vbcm.Lines(lngStartLine, 1), "New") <> 0 Then
- strProc = vbcm.ProcOfLine(lngStartLine, lngType)
- Else
- strProc = ""
- End If
- Else
- strProc = vbcm.ProcOfLine(lngStartLine, lngType)
- End If
- If strProc = "" Then GoTo CONTINUE_LOOP
-
- VBFindLines = VBFindLines & "[" & strProc & " ( ) - " & lngStartLine & " ]" & _
- vbLf & vbcm.Lines(lngStartLine, 1) & vbLf
- Else
- strProc = vbcm.Lines(lngStartLine, 1)
- If strProc = "" Then GoTo CONTINUE_LOOP
-
- 'Can be External refs, Const, Type or variable declarations
- If InStr(1, vbcm.Lines(lngStartLine, 1), "Declare Function") <> 0 Then
- VBFindLines = VBFindLines & "[" & RID_STR_COMMON_DEC_TO_EXTERNAL_LIBRARY & " - " & lngStartLine & " ]" & _
- vbLf & strProc & vbLf
- Else
- VBFindLines = VBFindLines & "[" & RID_STR_COMMON_VB_COMPONENT_MODULE & " " & strFind & _
- " - " & lngStartLine & " ]" & vbLf
- End If
- End If
- count = count + 1
-
-CONTINUE_LOOP:
- 'Reset Params to search for next hit
- lngStartLine = lngEndLine + 1
- lngStartCol = 1
- lngEndLine = vbcm.CountOfLines
- lngEndCol = Len(vbcm.Lines(vbcm.CountOfLines, 1))
-
- If lngStartLine >= lngEndLine Then Exit Function
-
- Loop 'End - Do While vbcm.Find
- VBFindLines = VBFindLines
- Exit Function
-
-HandleErrors:
- WriteDebug currentFunctionName & " : " & docAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
-End Function
-Function VBNumLines(docAnalysis As DocumentAnalysis, vbcm As CodeModule) As Long
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "VBNumLines"
- Dim cLines As Long
- Dim lngType As Long
- Dim strProc As String
-
- 'Issue: Just give line count in module to be in sync with Macro Analysis and Migration Wizard
- VBNumLines = vbcm.CountOfLines
-
- 'For cLines = 1 To vbcm.CountOfLines
- ' strProc = vbcm.ProcOfLine(cLines, lngType)
- ' If strProc <> "" Then
- ' VBNumLines = VBNumLines - _
- ' (vbcm.ProcBodyLine(strProc, lngType) - vbcm.ProcStartLine(strProc, lngType))
- ' cLines = cLines + vbcm.ProcCountLines(strProc, lngType) - 1
- ' End If
- 'Next
- Exit Function
-
-HandleErrors:
- WriteDebug currentFunctionName & " : " & docAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
-End Function
-Function VBNumFuncs(docAnalysis As DocumentAnalysis, vbcm As CodeModule) As Long
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "VBNumFuncs"
- Dim cLines As Long
- Dim lngType As Long
- Dim strProc As String
-
- For cLines = 1 To vbcm.CountOfLines
- strProc = vbcm.ProcOfLine(cLines, lngType)
- If strProc <> "" Then
- VBNumFuncs = VBNumFuncs + 1
- cLines = cLines + vbcm.ProcCountLines(strProc, lngType) - 1
- End If
- Next
- Exit Function
-HandleErrors:
- WriteDebug currentFunctionName & " : " & docAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
-End Function
-
-Function VBComponentType(vbc As VBComponent) As String
- Select Case vbc.Type
- Case vbext_ct_StdModule
- VBComponentType = RID_STR_COMMON_VB_COMPONENT_STANDARD
- Case vbext_ct_ClassModule
- VBComponentType = RID_STR_COMMON_VB_COMPONENT_CLASS
- Case vbext_ct_MSForm
- VBComponentType = RID_STR_COMMON_VB_COMPONENT_USER_FORM
- Case vbext_ct_Document
- VBComponentType = RID_STR_COMMON_VB_COMPONENT_DOCUMENT
- Case 11 'vbext_ct_ActiveX Designer
- VBComponentType = RID_STR_COMMON_VB_COMPONENT_ACTIVEX_DESIGNER
- Case Else
- VBComponentType = RID_STR_COMMON_UNKNOWN
- End Select
-End Function
-
-Function CheckEmptyProject(docAnalysis As DocumentAnalysis, myProject As VBProject, myComponent As VBComponent) As Boolean
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "CheckEmptyProject"
- Dim bEmptyProject As Boolean
-
- 'Bug: Can have empty project with different name from default, would be picked up
- ' as not empty.
- 'bEmptyProject = _
- ' (StrComp(myProject.name, CTOPLEVEL_PROJECT) = 0) And _
- ' (VBNumFuncs(docAnalysis, myComponent.CodeModule) = 0) And _
- ' (VBNumLines(docAnalysis, myComponent.CodeModule) < 3)
-
- ' Code Modules
- Dim strFind As String
- Dim count As Long
- 'Check for:
- 'Public Const myFoo ....
- 'Public Declare Function ....
- 'Public myVar As ...
- strFind = VBFindLines(docAnalysis, myComponent.CodeModule, "Public", _
- count, bInProcedure:=False, bWholeWord:=True, bMatchCase:=True)
-
- bEmptyProject = _
- (VBNumFuncs(docAnalysis, myComponent.CodeModule) = 0) And _
- (VBNumLines(docAnalysis, myComponent.CodeModule) < 3) And _
- (strFind = "")
-
- CheckEmptyProject = IIf(bEmptyProject, True, False)
- Exit Function
-
-
-HandleErrors:
- WriteDebug currentFunctionName & " : " & docAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
-End Function
-
-Function getCustomDocPropTypeAsString(propType As MsoDocProperties)
- Dim Str As String
-
- Select Case propType
- Case msoPropertyTypeBoolean
- Str = RID_STR_COMMON_YES_OR_NO
- Case msoPropertyTypeDate
- Str = RID_STR_COMMON_DATE
- Case msoPropertyTypeFloat
- Str = RID_STR_COMMON_NUMBER
- Case msoPropertyTypeNumber
- Str = RID_STR_COMMON_NUMBER
- Case msoPropertyTypeString
- Str = RID_STR_COMMON_TEXT
- Case Else
- Str = "Unknown"
- End Select
-
- getCustomDocPropTypeAsString = Str
-End Function
-
-Sub HandleProtectedDocInvalidPassword(docAnalysis As DocumentAnalysis, strError As String, fso As FileSystemObject)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "HandleProtectedDocInvalidPassword"
- Dim f As File
- Set f = fso.GetFile(docAnalysis.name)
-
- docAnalysis.Application = RID_STR_COMMON_PASSWORD_SKIPDOC
-
- On Error Resume Next
- docAnalysis.PageCount = 0
- docAnalysis.Created = f.DateCreated
- docAnalysis.Modified = f.DateLastModified
- docAnalysis.Accessed = f.DateLastAccessed
- docAnalysis.Printed = DateValue("01/01/1900")
- docAnalysis.SavedBy = RID_STR_COMMON_NA
- docAnalysis.Revision = 0
- docAnalysis.Template = RID_STR_COMMON_NA
- On Error GoTo HandleErrors
-
- Dim myIssue As IssueInfo
- Set myIssue = New IssueInfo
-
- With myIssue
- .IssueID = CID_CONTENT_AND_DOCUMENT_PROPERTIES
- .IssueType = RID_STR_COMMON_ISSUE_CONTENT_AND_DOCUMENT_PROPERTIES
- .SubType = RID_STR_COMMON_SUBISSUE_INVALID_PASSWORD_ENTERED
- .Location = .CLocationDocument
-
- .IssueTypeXML = CSTR_ISSUE_CONTENT_DOCUMENT_PROPERTIES
- .SubTypeXML = CSTR_SUBISSUE_INVALID_PASSWORD_ENTERED
- .locationXML = .CXMLLocationDocument
-
- .Attributes.Add RID_STR_COMMON_ATTRIBUTE_PASSWORD
- .Values.Add strError
-
- docAnalysis.IssuesCountArray(CID_CONTENT_AND_DOCUMENT_PROPERTIES) = _
- docAnalysis.IssuesCountArray(CID_CONTENT_AND_DOCUMENT_PROPERTIES) + 1
- End With
-
- docAnalysis.Issues.Add myIssue
-
-FinalExit:
- Set myIssue = Nothing
- Set f = Nothing
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & " : " & docAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-Sub Analyze_OLEEmbeddedSingleShape(docAnalysis As DocumentAnalysis, aShape As Shape, mySubLocation As Variant)
-
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "Analyze_OLEEmbeddedSingleShape"
- Dim myIssue As IssueInfo
- Dim bOleObject As Boolean
- Dim TypeAsString As String
- Dim XMLTypeAsString As String
- Dim objName As String
-
- bOleObject = (aShape.Type = msoEmbeddedOLEObject) Or _
- (aShape.Type = msoLinkedOLEObject) Or _
- (aShape.Type = msoOLEControlObject)
-
- If Not bOleObject Then Exit Sub
-
- aShape.Select
- Select Case aShape.Type
- Case msoEmbeddedOLEObject
- TypeAsString = RID_STR_COMMON_OLE_EMBEDDED
- XMLTypeAsString = CSTR_SUBISSUE_OLE_EMBEDDED
- Case msoLinkedOLEObject
- TypeAsString = RID_STR_COMMON_OLE_LINKED
- XMLTypeAsString = CSTR_SUBISSUE_OLE_LINKED
- Case msoOLEControlObject
- TypeAsString = RID_STR_COMMON_OLE_CONTROL
- XMLTypeAsString = CSTR_SUBISSUE_OLE_CONTROL
- Case Else
- TypeAsString = RID_STR_COMMON_OLE_UNKNOWN
- XMLTypeAsString = CSTR_SUBISSUE_OLE_UNKNOWN
- End Select
-
- Dim appStr As String
- appStr = getAppSpecificApplicationName
-
- Set myIssue = New IssueInfo
- With myIssue
- .IssueID = CID_PORTABILITY
- .IssueType = RID_STR_COMMON_ISSUE_PORTABILITY
- .SubType = TypeAsString
- .Location = .CLocationPage
- .SubLocation = mySubLocation
-
- .IssueTypeXML = CSTR_ISSUE_PORTABILITY
- .SubTypeXML = XMLTypeAsString
- .locationXML = .CXMLLocationPage
-
- .Line = aShape.top
- .column = aShape.Left
-
- If aShape.name <> "" Then
- .Attributes.Add RID_STR_COMMON_ATTRIBUTE_NAME
- .Values.Add aShape.name
- End If
-
- If aShape.Type = msoEmbeddedOLEObject Or _
- aShape.Type = msoOLEControlObject Then
- Dim objType As String
- On Error Resume Next
-
- objType = getAppSpecificOLEClassType(aShape)
-
- If objType = "" Then GoTo FinalExit
- .Attributes.Add RID_STR_COMMON_ATTRIBUTE_OBJECT_TYPE
- .Values.Add objType
-
- If aShape.Type = msoOLEControlObject Then
- docAnalysis.MacroNumOLEControls = 1 + docAnalysis.MacroNumOLEControls
- End If
-
- If appStr = CAPPNAME_POWERPOINT Then
- '#114127: Too many open windows
- 'Checking for OLEFormat.Object is Nothing or IsEmpty still causes problem
- If objType <> "Equation.3" Then
- objName = aShape.OLEFormat.Object.name
- If Err.Number = 0 Then
- If aShape.name <> objName Then
- .Attributes.Add RID_STR_COMMON_ATTRIBUTE_OBJECT_NAME
- .Values.Add objName
- End If
- End If
- End If
- Else
- If Not (aShape.OLEFormat.Object) Is Nothing Then
- objName = aShape.OLEFormat.Object.name
- If Err.Number = 0 Then
- If aShape.name <> objName Then
- .Attributes.Add RID_STR_COMMON_ATTRIBUTE_OBJECT_NAME
- .Values.Add objName
- End If
- End If
- End If
- End If
-
- On Error GoTo HandleErrors
- End If
-
- If aShape.Type = msoLinkedOLEObject Then
- If appStr <> CAPPNAME_WORD Then
- On Error Resume Next
- Dim path As String
- path = aShape.OLEFormat.Object.SourceFullName
- If Err.Number = 0 Then
- .Attributes.Add RID_STR_COMMON_ATTRIBUTE_SOURCE
- .Values.Add path
- End If
- On Error GoTo HandleErrors
- Else
- .Attributes.Add RID_STR_COMMON_ATTRIBUTE_SOURCE
- .Values.Add aShape.LinkFormat.SourceFullName
- End If
- End If
-
- docAnalysis.IssuesCountArray(CID_PORTABILITY) = _
- docAnalysis.IssuesCountArray(CID_PORTABILITY) + 1
- End With
- docAnalysis.Issues.Add myIssue
-
-FinalExit:
- Set myIssue = Nothing
- Exit Sub
-
-HandleErrors:
- WriteDebugLevelTwo currentFunctionName & " : " & docAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-Sub Analyze_Lines(docAnalysis As DocumentAnalysis, myShape As Shape, mySubLocation As Variant)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "Analyze_Lines"
-
- If myShape.Line.Style = msoLineSingle Or _
- myShape.Line.Style = msoLineStyleMixed Then Exit Sub
-
- Dim myIssue As IssueInfo
- Set myIssue = New IssueInfo
-
- With myIssue
- .IssueID = CID_CONTENT_AND_DOCUMENT_PROPERTIES
- .IssueType = RID_STR_COMMON_ISSUE_CONTENT_AND_DOCUMENT_PROPERTIES
- .SubType = RID_RESXLS_COST_LineStyle
- .Location = .CLocationPage
- .SubLocation = mySubLocation
-
- .IssueTypeXML = CSTR_ISSUE_CONTENT_DOCUMENT_PROPERTIES
- .SubTypeXML = CSTR_SUBISSUE_LINE
- .locationXML = .CXMLLocationPage
-
- .Line = myShape.top
- .column = myShape.Left
-
- If myShape.name <> "" Then
- .Attributes.Add RID_STR_COMMON_ATTRIBUTE_NAME
- .Values.Add myShape.name
- End If
-
- AddIssueDetailsNote myIssue, 0, RID_STR_COMMON_SUBISSUE_LINE_NOTE
-
- docAnalysis.IssuesCountArray(CID_CONTENT_AND_DOCUMENT_PROPERTIES) = _
- docAnalysis.IssuesCountArray(CID_CONTENT_AND_DOCUMENT_PROPERTIES) + 1
- End With
-
- docAnalysis.Issues.Add myIssue
-
-FinalExit:
- Set myIssue = Nothing
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & " : " & docAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-Sub Analyze_Transparency(docAnalysis As DocumentAnalysis, myShape As Shape, mySubLocation As Variant)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "Analyze_Transparency"
-
- If Not myShape.Type = msoPicture Then Exit Sub
-
- Dim bHasTransparentBkg
- bHasTransparentBkg = False
-
- On Error Resume Next
- If myShape.PictureFormat.TransparentBackground = msoTrue Then
- If Error.Number = 0 Then
- bHasTransparentBkg = True
- End If
- End If
-
- On Error GoTo HandleErrors
- If Not bHasTransparentBkg Then Exit Sub
-
- Dim myIssue As IssueInfo
- Set myIssue = New IssueInfo
-
- With myIssue
- .IssueID = CID_CONTENT_AND_DOCUMENT_PROPERTIES
- .IssueType = RID_STR_COMMON_ISSUE_CONTENT_AND_DOCUMENT_PROPERTIES
- .SubType = RID_RESXLS_COST_Transparent
- .Location = .CLocationSlide
- .SubLocation = mySubLocation
-
- .IssueTypeXML = CSTR_ISSUE_CONTENT_DOCUMENT_PROPERTIES
- .SubTypeXML = CSTR_SUBISSUE_TRANSPARENCY
- .locationXML = .CXMLLocationPage
-
- .Line = myShape.top
- .column = myShape.Left
-
- If myShape.name <> "" Then
- .Attributes.Add RID_STR_COMMON_ATTRIBUTE_NAME
- .Values.Add myShape.name
- End If
-
- AddIssueDetailsNote myIssue, 0, RID_STR_COMMON_SUBISSUE_TRANSPARENCY_NOTE
-
- docAnalysis.IssuesCountArray(CID_CONTENT_AND_DOCUMENT_PROPERTIES) = _
- docAnalysis.IssuesCountArray(CID_CONTENT_AND_DOCUMENT_PROPERTIES) + 1
- End With
-
- docAnalysis.Issues.Add myIssue
-
-FinalExit:
- Set myIssue = Nothing
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & " : " & docAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-Sub Analyze_Gradients(docAnalysis As DocumentAnalysis, myShape As Shape, mySubLocation As Variant)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "Analyze_Gradients"
-
- If myShape.Fill.Type <> msoFillGradient Then Exit Sub
-
- Dim bUsesPresetGradient, bUsesFromCorner, bUsesFromCenter
- bUsesPresetGradient = False
- bUsesFromCorner = False
- bUsesFromCenter = False
-
- On Error Resume Next
- If myShape.Fill.PresetGradientType <> msoPresetGradientMixed Then
- If Error.Number = 0 Then
- bUsesPresetGradient = True
- End If
- End If
- If myShape.Fill.GradientStyle <> msoGradientFromCorner Then
- If Error.Number = 0 Then
- bUsesFromCorner = True
- End If
- End If
- If myShape.Fill.GradientStyle <> msoGradientFromCenter Then
- If Error.Number = 0 Then
- bUsesFromCenter = True
- End If
- End If
-
- On Error GoTo HandleErrors
- If Not bUsesPresetGradient And Not bUsesFromCorner _
- And Not bUsesFromCenter Then Exit Sub
-
- Dim myIssue As IssueInfo
- Set myIssue = New IssueInfo
-
- With myIssue
- .IssueID = CID_CONTENT_AND_DOCUMENT_PROPERTIES
- .IssueType = RID_STR_COMMON_ISSUE_CONTENT_AND_DOCUMENT_PROPERTIES
- .SubType = RID_RESXLS_COST_GradientStyle
- .Location = .CLocationSlide
- .SubLocation = mySubLocation
-
- .IssueTypeXML = CSTR_ISSUE_CONTENT_DOCUMENT_PROPERTIES
- .SubTypeXML = CSTR_SUBISSUE_GRADIENT
- .locationXML = .CXMLLocationSlide
-
- .Line = myShape.top
- .column = myShape.Left
-
- If myShape.name <> "" Then
- .Attributes.Add RID_STR_COMMON_ATTRIBUTE_NAME
- .Values.Add myShape.name
- End If
-
- If bUsesPresetGradient Then
- AddIssueDetailsNote myIssue, 0, RID_STR_COMMON_SUBISSUE_GRADIENT_PRESET_NOTE
- ElseIf bUsesFromCorner Then
- AddIssueDetailsNote myIssue, 0, RID_STR_COMMON_SUBISSUE_GRADIENT_CORNER_NOTE
- Else
- AddIssueDetailsNote myIssue, 0, RID_STR_COMMON_SUBISSUE_GRADIENT_CENTER_NOTE
- End If
-
- docAnalysis.IssuesCountArray(CID_CONTENT_AND_DOCUMENT_PROPERTIES) = _
- docAnalysis.IssuesCountArray(CID_CONTENT_AND_DOCUMENT_PROPERTIES) + 1
- End With
-
- docAnalysis.Issues.Add myIssue
-
-FinalExit:
- Set myIssue = Nothing
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & " : " & docAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-Private Function CreateFullPath(newPath As String, fso As FileSystemObject)
- 'We don't want to create 'c:\'
- If (Len(newPath) < 4) Then
- Exit Function
- End If
-
- 'Create parent folder first
- If (Not fso.FolderExists(fso.GetParentFolderName(newPath))) Then
- CreateFullPath fso.GetParentFolderName(newPath), fso
- End If
-
- If (Not fso.FolderExists(newPath)) Then
- fso.CreateFolder (newPath)
- End If
-End Function
-
-Function GetPreparedFullPath(sourceDocPath As String, startDir As String, storeToDir As String, _
- fso As FileSystemObject) As String
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "GetPreparedFullPath"
- GetPreparedFullPath = ""
-
- Dim preparedPath As String
-
- preparedPath = Right(sourceDocPath, Len(sourceDocPath) - Len(startDir))
- If Left(preparedPath, 1) = "\" Then
- preparedPath = Right(preparedPath, Len(preparedPath) - 1)
- End If
-
- 'Allow for root folder C:\
- If Right(storeToDir, 1) <> "\" Then
- preparedPath = storeToDir & "\" & CSTR_COMMON_PREPARATION_FOLDER & "\" & preparedPath
- Else
- preparedPath = storeToDir & CSTR_COMMON_PREPARATION_FOLDER & "\" & preparedPath
- End If
-
- 'Debug: MsgBox "Preppath: " & preparedPath
- CreateFullPath fso.GetParentFolderName(preparedPath), fso
-
- 'Only set if folder to save to exists or has been created, otherwise return ""
- GetPreparedFullPath = preparedPath
-
-FinalExit:
- Exit Function
-
-HandleErrors:
- WriteDebugLevelTwo currentFunctionName & " : " & sourceDocPath & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Function
-
-Function ClassifyDocOverallMacroClass(docAnalysis As DocumentAnalysis) As EnumDocOverallMacroClass
- ClassifyDocOverallMacroClass = enMacroNone
-
- If Not docAnalysis.HasMacros Then Exit Function
-
- If (docAnalysis.MacroTotalNumLines >= CMACRO_LINECOUNT_MEDIUM_LBOUND) Then
- If (docAnalysis.MacroNumExternalRefs > 0) Or _
- (docAnalysis.MacroNumOLEControls > 0 Or docAnalysis.MacroNumFieldsUsingMacros > 0) Or _
- docAnalysis.MacroNumUserForms > 0 Then
- ClassifyDocOverallMacroClass = enMacroComplex
- Else
- ClassifyDocOverallMacroClass = enMacroMedium
- End If
- Else
- ClassifyDocOverallMacroClass = enMacroSimple
- End If
-
-End Function
-
+Attribute VB_Name = "CommonMigrationAnalyser"
+'*************************************************************************
+'
+' Licensed to the Apache Software Foundation (ASF) under one
+' or more contributor license agreements. See the NOTICE file
+' distributed with this work for additional information
+' regarding copyright ownership. The ASF licenses this file
+' to you under the Apache License, Version 2.0 (the
+' "License"); you may not use this file except in compliance
+' with the License. You may obtain a copy of the License at
+'
+' http://www.apache.org/licenses/LICENSE-2.0
+'
+' Unless required by applicable law or agreed to in writing,
+' software distributed under the License is distributed on an
+' "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+' KIND, either express or implied. See the License for the
+' specific language governing permissions and limitations
+' under the License.
+'
+'*************************************************************************
+Option Explicit
+
+
+'***********************************************
+'**** APPLICATION COMMON ANALYSIS FUNCTIONS ****
+'***********************************************
+
+'** Common - XML Issue and SubIssue strings
+'For preparation - need access to some Word/ Excel or PP consts
+Public Const CSTR_ISSUE_OBJECTS_GRAPHICS_AND_FRAMES = "ObjectsGraphicsAndFrames"
+Public Const CSTR_SUBISSUE_OBJECT_IN_HEADER_FOOTER = "ObjectInHeaderFooter"
+
+Public Const CSTR_ISSUE_INFORMATION = "Information"
+Public Const CSTR_ISSUE_CONTENT_DOCUMENT_PROPERTIES = "ContentAndDocumentProperties"
+Public Const CSTR_ISSUE_FORMAT = "Format"
+Public Const CSTR_ISSUE_PORTABILITY = "Portability"
+Public Const CSTR_ISSUE_VBA_MACROS = "VBAMacros"
+
+Public Const CSTR_SUBISSUE_DOCUMENT_PARTS_PROTECTION = "DocumentPartsProtection"
+Public Const CSTR_SUBISSUE_EXTERNAL_REFERENCES_IN_MACRO = "ExternalReferencesInMacro"
+Public Const CSTR_SUBISSUE_EXTERNAL_REFERENCES_IN_MACRO_COUNT = "ExternalReferencesInMacroCount"
+Public Const CSTR_SUBISSUE_GRADIENT = "Gradient"
+Public Const CSTR_SUBISSUE_INVALID_PASSWORD_ENTERED = "InvalidPasswordEntered"
+Public Const CSTR_SUBISSUE_LINE = "Line"
+Public Const CSTR_SUBISSUE_MACRO_PASSWORD_PROTECTION = "PasswordProtected"
+Public Const CSTR_SUBISSUE_OLD_WORKBOOK_VERSION = "OldWorkbookVersion"
+Public Const CSTR_SUBISSUE_OLE_EMBEDDED = "EmbeddedOLEObject"
+Public Const CSTR_SUBISSUE_OLE_LINKED = "LinkedOLEObject"
+Public Const CSTR_SUBISSUE_OLE_CONTROL = "OLEControl"
+Public Const CSTR_SUBISSUE_OLE_FIELD_LINK = "OLEFieldLink"
+Public Const CSTR_SUBISSUE_OLE_UNKNOWN = "UnknownType"
+Public Const CSTR_SUBISSUE_PASSWORDS_PROTECTION = "PasswordProtection"
+Public Const CSTR_SUBISSUE_PROPERTIES = "Properties"
+Public Const CSTR_SUBISSUE_REFERENCES = "References"
+Public Const CSTR_SUBISSUE_TRANSPARENCY = "Transparency"
+Public Const CSTR_SUBISSUE_VBA_MACROS_NUMLINES = "NumberOfLines"
+Public Const CSTR_SUBISSUE_VBA_MACROS_USERFORMS_COUNT = "UserFormsCount"
+Public Const CSTR_SUBISSUE_VBA_MACROS_USERFORMS_CONTROL_COUNT = "UserFormsControlCount"
+Public Const CSTR_SUBISSUE_VBA_MACROS_USERFORMS_CONTROLTYPE_COUNT = "UserFormsControlTypeCount"
+Public Const CSTR_SUBISSUE_VBA_MACROS_UNIQUE_MODULE_COUNT = "UniqueModuleCount"
+Public Const CSTR_SUBISSUE_VBA_MACROS_UNIQUE_LINE_COUNT = "UniqueLineCount"
+'** END Common - XML Issue and SubIssue strings
+
+'Macro classification bounds
+Public Const CMACRO_LINECOUNT_MEDIUM_LBOUND = 50
+
+'Don't localize folder name
+Public Const CSTR_COMMON_PREPARATION_FOLDER = "prepared"
+
+
+Public Enum EnumDocOverallMacroClass
+ enMacroNone = 0
+ enMacroSimple = 1
+ enMacroMedium = 2
+ enMacroComplex = 3
+End Enum
+Public Enum EnumDocOverallIssueClass
+ enNone = 0
+ enMinor = 1
+ enComplex = 2
+End Enum
+
+Sub EmptyCollection(docAnalysis As DocumentAnalysis, coll As Collection)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "EmptyCollection"
+ Dim Num As Long
+ For Num = 1 To coll.count ' Remove name from the collection.
+ coll.Remove 1 ' Default collection numeric indexes
+ Next ' begin at 1.
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : " & docAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+End Sub
+
+Public Function Analyze_Macros(docAnalysis As DocumentAnalysis, _
+ userFormTypesDict As Scripting.Dictionary, _
+ currDoc As Object)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "Analyze_Macros"
+ Dim macroDetails As String
+ Dim cmpDetails As String
+ Dim myProject As VBProject
+ Dim myComponent As VBComponent
+ Dim numLines As Long
+ Dim myIssue As IssueInfo
+ Dim wrd As Object
+ Dim bUserFormWithEmptyCodeModule As Boolean
+
+ On Error Resume Next
+ Set myProject = getAppSpecificVBProject(currDoc)
+ If Err.Number <> 0 Then
+ ' Failed to get access to VBProject
+ WriteDebug currentFunctionName & " : " & docAnalysis.name & ": " & _
+ RID_STR_COMMON_ATTRIBUTE_UNABLE_TO_ACCESS_VBPROJECT & ":" & _
+ RID_STR_COMMON_ATTRIBUTE_FURTHER_MACRO_ANALYSIS_NOT_POSSIBLE
+
+ GoTo FinalExit
+ End If
+
+ On Error GoTo HandleErrors
+ If myProject.Protection = vbext_pp_locked Then
+ Set myIssue = New IssueInfo
+ With myIssue
+ .IssueID = CID_VBA_MACROS
+ .IssueType = RID_STR_COMMON_ISSUE_VBA_MACROS
+ .SubType = RID_STR_COMMON_SUBISSUE_MACRO_PASSWORD_PROTECTION
+ .Location = .CLocationDocument
+
+ .IssueTypeXML = CSTR_ISSUE_VBA_MACROS
+ .SubTypeXML = CSTR_SUBISSUE_MACRO_PASSWORD_PROTECTION
+ .locationXML = .CXMLLocationDocument
+
+ .Attributes.Add RID_STR_COMMON_ATTRIBUTE_VBPROJECT_PASSWORD
+ .Values.Add RID_STR_COMMON_ATTRIBUTE_FURTHER_MACRO_ANALYSIS_NOT_POSSIBLE
+ End With
+ docAnalysis.IssuesCountArray(CID_VBA_MACROS) = _
+ docAnalysis.IssuesCountArray(CID_VBA_MACROS) + 1
+ docAnalysis.Issues.Add myIssue
+ docAnalysis.MacroIssuesCount = docAnalysis.MacroIssuesCount + 1
+
+ docAnalysis.HasMacros = True
+ GoTo FinalExit
+ End If
+
+ Dim myContolDict As Scripting.Dictionary
+ For Each myComponent In myProject.VBComponents
+
+ bUserFormWithEmptyCodeModule = False
+ If CheckEmptyProject(docAnalysis, myProject, myComponent) Then
+ If myComponent.Type <> vbext_ct_MSForm Then
+ GoTo FOREACH_CONTINUE
+ Else
+ bUserFormWithEmptyCodeModule = True
+ End If
+ End If
+
+ Analyze_MacrosForPortabilityIssues docAnalysis, myProject, myComponent
+
+ Set myIssue = New IssueInfo
+ With myIssue
+ .IssueID = CID_VBA_MACROS
+ .IssueType = RID_STR_COMMON_ISSUE_VBA_MACROS
+ .SubType = RID_STR_COMMON_SUBISSUE_PROPERTIES
+ .Location = .CLocationDocument
+
+ .IssueTypeXML = CSTR_ISSUE_VBA_MACROS
+ .SubTypeXML = CSTR_SUBISSUE_PROPERTIES
+ .locationXML = .CXMLLocationDocument
+
+ .SubLocation = VBComponentType(myComponent)
+ .Attributes.Add RID_STR_COMMON_ATTRIBUTE_PROJECT
+ .Values.Add myProject.name
+ .Attributes.Add RID_STR_COMMON_ATTRIBUTE_COMPONENT
+ .Values.Add myComponent.name
+ .Attributes.Add RID_STR_COMMON_ATTRIBUTE_PROCEDURES
+ .Values.Add VBNumFuncs(docAnalysis, myComponent.CodeModule), RID_STR_COMMON_ATTRIBUTE_PROCEDURES
+ .Attributes.Add RID_STR_COMMON_ATTRIBUTE_NUMBER_OF_LINES
+ numLines = VBNumLines(docAnalysis, myComponent.CodeModule)
+ .Values.Add numLines, RID_STR_COMMON_ATTRIBUTE_NUMBER_OF_LINES
+
+ If bUserFormWithEmptyCodeModule Then
+ .Attributes.Add RID_STR_COMMON_ATTRIBUTE_SIGNATURE
+ .Values.Add RID_STR_COMMON_NA, RID_STR_COMMON_ATTRIBUTE_SIGNATURE
+ Else
+ .Attributes.Add RID_STR_COMMON_ATTRIBUTE_SIGNATURE
+ .Values.Add MD5HashString( _
+ myComponent.CodeModule.Lines(1, myComponent.CodeModule.CountOfLines)), _
+ RID_STR_COMMON_ATTRIBUTE_SIGNATURE
+ End If
+
+ docAnalysis.MacroTotalNumLines = numLines + docAnalysis.MacroTotalNumLines
+ End With
+
+ ' User Forms - control details
+ If (myComponent.Type = vbext_ct_MSForm) And Not bUserFormWithEmptyCodeModule Then
+ myIssue.Attributes.Add RID_STR_COMMON_ATTRIBUTE_CONTROLS
+ myIssue.Values.Add myComponent.Designer.Controls.count, RID_STR_COMMON_ATTRIBUTE_CONTROLS
+ docAnalysis.MacroNumUserForms = 1 + docAnalysis.MacroNumUserForms
+ docAnalysis.MacroNumUserFormControls = myComponent.Designer.Controls.count + docAnalysis.MacroNumUserFormControls
+
+ Dim myControl As Control
+ Dim controlTypes As String
+ Dim myType As String
+
+ Set myContolDict = New Scripting.Dictionary
+
+ For Each myControl In myComponent.Designer.Controls
+ myType = TypeName(myControl)
+ If myContolDict.Exists(myType) Then
+ myContolDict.item(myType) = myContolDict.item(myType) + 1
+ Else
+ myContolDict.Add myType, 1
+ End If
+ If userFormTypesDict.Exists(myType) Then
+ userFormTypesDict.item(myType) = userFormTypesDict.item(myType) + 1
+ Else
+ userFormTypesDict.Add myType, 1
+ End If
+ Next
+
+ If myComponent.Designer.Controls.count > 0 Then
+ Dim count As Long
+ Dim vKeyArray As Variant
+ Dim vItemArray As Variant
+
+ vKeyArray = myContolDict.Keys
+ vItemArray = myContolDict.Items
+
+ controlTypes = ""
+ For count = 0 To myContolDict.count - 1
+ controlTypes = controlTypes & vKeyArray(count) & " " & CInt(vItemArray(count)) & " "
+ Next count
+ myIssue.Attributes.Add RID_STR_COMMON_ATTRIBUTE_USERFORM_TYPE
+ myIssue.Values.Add controlTypes, RID_STR_COMMON_ATTRIBUTE_USERFORM_TYPE
+
+ myIssue.Attributes.Add RID_STR_COMMON_ATTRIBUTE_USERFORM_TYPES_COUNT
+ myIssue.Values.Add myContolDict.count, RID_STR_COMMON_ATTRIBUTE_USERFORM_TYPES_COUNT
+
+ docAnalysis.MacroNumUserFormControlTypes = myContolDict.count + docAnalysis.MacroNumUserFormControlTypes
+ End If
+ Set myContolDict = Nothing
+ End If
+
+ 'Check for occurrence of " Me " in Form and Class Modules
+ If myComponent.Type = vbext_ct_MSForm Or _
+ myComponent.Type = vbext_ct_ClassModule Then
+
+ Dim strFind As String
+ strFind = ""
+ count = 0
+ strFind = VBFindLines(docAnalysis, myComponent.CodeModule, "Me", count, bWholeWord:=True)
+' If (strFind <> "") Then MsgBox strFind
+
+ If count > 0 Then
+ myIssue.Attributes.Add RID_STR_COMMON_ATTRIBUTE_CLASS_ME_COUNT
+ myIssue.Values.Add count, RID_STR_COMMON_ATTRIBUTE_CLASS_ME_COUNT
+ End If
+ End If
+
+ docAnalysis.IssuesCountArray(CID_VBA_MACROS) = _
+ docAnalysis.IssuesCountArray(CID_VBA_MACROS) + 1
+ docAnalysis.Issues.Add myIssue
+ docAnalysis.MacroIssuesCount = docAnalysis.MacroIssuesCount + 1
+
+ Set myIssue = Nothing
+
+FOREACH_CONTINUE:
+ 'No equiv to C continue in VB
+ Next myComponent 'End - For Each myComponent
+
+ If docAnalysis.IssuesCountArray(CID_VBA_MACROS) > 0 Then
+ Analyze_VBEReferences docAnalysis, currDoc
+ docAnalysis.HasMacros = True
+ End If
+
+FinalExit:
+ docAnalysis.MacroOverallClass = ClassifyDocOverallMacroClass(docAnalysis)
+
+ Set myProject = Nothing
+ Set myIssue = Nothing
+ Set myContolDict = Nothing
+ Exit Function
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : " & docAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Function
+
+Function CheckOnlyEmptyProject(docAnalysis As DocumentAnalysis, currDoc As Object) As Boolean
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "CheckOnlyEmptyProject"
+ Dim myProject As VBProject
+ Set myProject = getAppSpecificVBProject(currDoc)
+ Dim myVBComponent As VBComponent
+
+ For Each myVBComponent In myProject.VBComponents
+ If Not CheckEmptyProject(docAnalysis, myProject, myVBComponent) Then
+ CheckOnlyEmptyProject = False
+ GoTo FinalExit
+ End If
+ Next myVBComponent
+
+ CheckOnlyEmptyProject = True
+
+FinalExit:
+ Set myProject = Nothing
+ Exit Function
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : " & docAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Function
+
+Sub Analyze_VBEReferences(docAnalysis As DocumentAnalysis, currDoc As Object)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "Analyze_VBEReferences"
+ 'References
+ Dim Ref As Reference
+ Dim fso As Scripting.FileSystemObject
+ Dim myVBProject As VBProject
+ Dim myVBComponent As VBComponent
+
+ Set fso = New Scripting.FileSystemObject
+
+ If CheckOnlyEmptyProject(docAnalysis, currDoc) Then
+ Exit Sub
+ End If
+ Set myVBProject = getAppSpecificVBProject(currDoc)
+
+ For Each Ref In myVBProject.References
+ Analyze_VBEReferenceSingle docAnalysis, Ref, fso
+ Next Ref
+
+FinalExit:
+ Set myVBProject = Nothing
+ Set fso = Nothing
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : " & docAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+Sub Analyze_VBEReferenceSingle(docAnalysis As DocumentAnalysis, Ref As Reference, fso As Scripting.FileSystemObject)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "Analyze_VBEReferenceSingle"
+ 'References
+ Dim myIssue As IssueInfo
+ Dim bBadRef As Boolean
+
+ Set myIssue = New IssueInfo
+ With myIssue
+ .IssueID = CID_INFORMATION_REFS
+ .IssueType = RID_STR_COMMON_ISSUE_INFORMATION
+ .SubType = RID_STR_COMMON_SUBISSUE_REFERENCES
+ .Location = .CLocationDocument
+
+ .IssueTypeXML = CSTR_ISSUE_INFORMATION
+ .SubTypeXML = CSTR_SUBISSUE_REFERENCES
+ .locationXML = .CXMLLocationDocument
+
+ If Ref.GUID = "" Then
+ bBadRef = True
+ Else
+ bBadRef = False
+ End If
+ If Not bBadRef Then
+ .SubLocation = LCase(fso.GetFileName(Ref.FullPath))
+ .Attributes.Add RID_STR_COMMON_ATTRIBUTE_NAME
+ .Values.Add Ref.name, RID_STR_COMMON_ATTRIBUTE_NAME
+ .Attributes.Add RID_STR_COMMON_ATTRIBUTE_DESCRIPTION
+ .Values.Add Ref.Description, RID_STR_COMMON_ATTRIBUTE_DESCRIPTION
+ .Attributes.Add RID_STR_COMMON_ATTRIBUTE_FILE
+ .Values.Add LCase(fso.GetFileName(Ref.FullPath)), RID_STR_COMMON_ATTRIBUTE_FILE
+ .Attributes.Add RID_STR_COMMON_ATTRIBUTE_PATH
+ .Values.Add LCase(Ref.FullPath), RID_STR_COMMON_ATTRIBUTE_PATH
+ Else
+ .SubLocation = RID_STR_COMMON_NA
+ .Attributes.Add RID_STR_COMMON_ATTRIBUTE_NAME
+ .Values.Add RID_STR_COMMON_ATTRIBUTE_MISSING, RID_STR_COMMON_ATTRIBUTE_NAME
+ .Attributes.Add RID_STR_COMMON_ATTRIBUTE_DESCRIPTION
+ .Values.Add RID_STR_COMMON_ATTRIBUTE_CHECK_DOCUMENT_REFERENCES, RID_STR_COMMON_ATTRIBUTE_DESCRIPTION
+ End If
+
+ .Attributes.Add RID_STR_COMMON_ATTRIBUTE_MAJOR
+ .Values.Add IIf(Not bBadRef, Ref.Major, ""), RID_STR_COMMON_ATTRIBUTE_MAJOR
+ .Attributes.Add RID_STR_COMMON_ATTRIBUTE_MINOR
+ .Values.Add IIf(Not bBadRef, Ref.Minor, ""), RID_STR_COMMON_ATTRIBUTE_MINOR
+
+ .Attributes.Add RID_STR_COMMON_ATTRIBUTE_TYPE
+ .Values.Add IIf(Ref.Type = vbext_rk_Project, RID_STR_COMMON_ATTRIBUTE_PROJECT, RID_STR_COMMON_ATTRIBUTE_TYPELIB), RID_STR_COMMON_ATTRIBUTE_TYPE
+
+ .Attributes.Add RID_STR_COMMON_ATTRIBUTE_BUILTIN
+ .Values.Add IIf(Ref.BuiltIn, RID_STR_COMMON_ATTRIBUTE_BUILTIN, RID_STR_COMMON_ATTRIBUTE_CUSTOM), RID_STR_COMMON_ATTRIBUTE_BUILTIN
+ .Attributes.Add RID_STR_COMMON_ATTRIBUTE_ISBROKEN
+ .Values.Add IIf(bBadRef, RID_STR_COMMON_ATTRIBUTE_BROKEN, RID_STR_COMMON_ATTRIBUTE_INTACT), RID_STR_COMMON_ATTRIBUTE_ISBROKEN
+ .Attributes.Add RID_STR_COMMON_ATTRIBUTE_GUID
+ .Values.Add IIf(Ref.Type = vbext_rk_TypeLib, Ref.GUID, ""), RID_STR_COMMON_ATTRIBUTE_GUID
+ End With
+
+ docAnalysis.References.Add myIssue
+
+FinalExit:
+ Set myIssue = Nothing
+ Exit Sub
+
+HandleErrors:
+ WriteDebugLevelTwo currentFunctionName & " : " & docAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+Sub Analyze_MacrosForPortabilityIssues(docAnalysis As DocumentAnalysis, myProject As VBProject, myComponent As VBComponent)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "Analyze_MacrosForPortabilityIssues"
+ Dim myIssue As IssueInfo
+ Dim count As Long
+
+ ' Code Modules
+ Dim strFind As String
+ strFind = VBFindLines(docAnalysis, myComponent.CodeModule, "CreateObject", count, bWholeWord:=True) & _
+ VBFindLines(docAnalysis, myComponent.CodeModule, "GetObject", count, bWholeWord:=True) & _
+ VBFindLines(docAnalysis, myComponent.CodeModule, "ADODB.", count, True, True) & _
+ VBFindLines(docAnalysis, myComponent.CodeModule, "Word.", count, True, True) & _
+ VBFindLines(docAnalysis, myComponent.CodeModule, "Excel.", count, True, True) & _
+ VBFindLines(docAnalysis, myComponent.CodeModule, "PowerPoint.", count, True, True) & _
+ VBFindLines(docAnalysis, myComponent.CodeModule, "Access.", count, True, True) & _
+ VBFindLines(docAnalysis, myComponent.CodeModule, "Declare Function ", count, False) & _
+ VBFindLines(docAnalysis, myComponent.CodeModule, "Declare Sub ", count, False)
+
+
+ If (strFind <> "") And (myComponent.Type <> vbext_ct_Document) Then
+ Set myIssue = New IssueInfo
+ With myIssue
+ .IssueID = CID_PORTABILITY
+ .IssueType = RID_STR_COMMON_ISSUE_PORTABILITY
+ .SubType = RID_STR_COMMON_SUBISSUE_EXTERNAL_REFERENCES_IN_MACROS
+ .Location = .CLocationDocument
+
+ .IssueTypeXML = CSTR_ISSUE_PORTABILITY
+ .SubTypeXML = CSTR_SUBISSUE_EXTERNAL_REFERENCES_IN_MACRO
+ .locationXML = .CXMLLocationDocument
+
+ .SubLocation = VBComponentType(myComponent)
+
+ .Attributes.Add RID_STR_COMMON_ATTRIBUTE_PROJECT
+ .Values.Add myProject.name
+ .Attributes.Add RID_STR_COMMON_ATTRIBUTE_COMPONENT
+ .Values.Add myComponent.name
+ .Attributes.Add RID_STR_COMMON_ATTRIBUTE_NON_PORTABLE_EXTERNAL_REFERENCES
+ .Values.Add RID_STR_COMMON_ATTRIBUTE_INCLUDING & vbLf & Left(strFind, Len(strFind) - 1)
+ .Attributes.Add RID_STR_COMMON_ATTRIBUTE_NON_PORTABLE_EXTERNAL_REFERENCES_COUNT
+ .Values.Add count, RID_STR_COMMON_ATTRIBUTE_NON_PORTABLE_EXTERNAL_REFERENCES_COUNT
+ End With
+ docAnalysis.IssuesCountArray(CID_PORTABILITY) = _
+ docAnalysis.IssuesCountArray(CID_PORTABILITY) + 1
+ docAnalysis.Issues.Add myIssue
+ docAnalysis.MacroNumExternalRefs = count + docAnalysis.MacroNumExternalRefs
+ docAnalysis.MacroIssuesCount = docAnalysis.MacroIssuesCount + 1
+ End If
+
+FinalExit:
+ Set myIssue = Nothing
+ Exit Sub
+
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : " & docAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+Resume FinalExit
+End Sub
+
+'Find Lines in code module containing strFind and return list of them
+Function VBFindLines(docAnalysis As DocumentAnalysis, vbcm As CodeModule, strFind As String, _
+ count As Long, _
+ Optional bInProcedure As Boolean = True, _
+ Optional bUsingNew As Boolean = False, _
+ Optional bWholeWord As Boolean = False, _
+ Optional bMatchCase As Boolean = False) As String
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "VBFindLines"
+ Dim lngStartLine As Long
+ Dim lngStartCol As Long
+ Dim lngEndLine As Long
+ Dim lngEndCol As Long
+ Dim strLine As String
+ lngStartLine = 1
+ lngStartCol = 1
+ lngEndLine = vbcm.CountOfLines
+ Dim tmpString As String
+ If (vbcm.CountOfLines = 0) Then
+ Exit Function
+ End If
+ tmpString = vbcm.Lines(vbcm.CountOfLines, 1)
+ lngEndCol = Len(vbcm.Lines(vbcm.CountOfLines, 1))
+ Dim lngType As Long
+ Dim strProc As String
+ Dim retStr As String
+
+ ' Search
+ Do While vbcm.Find(strFind, lngStartLine, _
+ lngStartCol, lngEndLine, lngEndCol, bWholeWord, bMatchCase)
+
+ 'Ignore any lines using this func
+ If InStr(1, vbcm.Lines(lngStartLine, 1), "VBFindLines") <> 0 Then
+ GoTo CONTINUE_LOOP
+ End If
+
+ If bInProcedure Then
+ If bUsingNew Then
+ If InStr(1, vbcm.Lines(lngStartLine, 1), "New") <> 0 Then
+ strProc = vbcm.ProcOfLine(lngStartLine, lngType)
+ Else
+ strProc = ""
+ End If
+ Else
+ strProc = vbcm.ProcOfLine(lngStartLine, lngType)
+ End If
+ If strProc = "" Then GoTo CONTINUE_LOOP
+
+ VBFindLines = VBFindLines & "[" & strProc & " ( ) - " & lngStartLine & " ]" & _
+ vbLf & vbcm.Lines(lngStartLine, 1) & vbLf
+ Else
+ strProc = vbcm.Lines(lngStartLine, 1)
+ If strProc = "" Then GoTo CONTINUE_LOOP
+
+ 'Can be External refs, Const, Type or variable declarations
+ If InStr(1, vbcm.Lines(lngStartLine, 1), "Declare Function") <> 0 Then
+ VBFindLines = VBFindLines & "[" & RID_STR_COMMON_DEC_TO_EXTERNAL_LIBRARY & " - " & lngStartLine & " ]" & _
+ vbLf & strProc & vbLf
+ Else
+ VBFindLines = VBFindLines & "[" & RID_STR_COMMON_VB_COMPONENT_MODULE & " " & strFind & _
+ " - " & lngStartLine & " ]" & vbLf
+ End If
+ End If
+ count = count + 1
+
+CONTINUE_LOOP:
+ 'Reset Params to search for next hit
+ lngStartLine = lngEndLine + 1
+ lngStartCol = 1
+ lngEndLine = vbcm.CountOfLines
+ lngEndCol = Len(vbcm.Lines(vbcm.CountOfLines, 1))
+
+ If lngStartLine >= lngEndLine Then Exit Function
+
+ Loop 'End - Do While vbcm.Find
+ VBFindLines = VBFindLines
+ Exit Function
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : " & docAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+End Function
+Function VBNumLines(docAnalysis As DocumentAnalysis, vbcm As CodeModule) As Long
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "VBNumLines"
+ Dim cLines As Long
+ Dim lngType As Long
+ Dim strProc As String
+
+ 'Issue: Just give line count in module to be in sync with Macro Analysis and Migration Wizard
+ VBNumLines = vbcm.CountOfLines
+
+ 'For cLines = 1 To vbcm.CountOfLines
+ ' strProc = vbcm.ProcOfLine(cLines, lngType)
+ ' If strProc <> "" Then
+ ' VBNumLines = VBNumLines - _
+ ' (vbcm.ProcBodyLine(strProc, lngType) - vbcm.ProcStartLine(strProc, lngType))
+ ' cLines = cLines + vbcm.ProcCountLines(strProc, lngType) - 1
+ ' End If
+ 'Next
+ Exit Function
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : " & docAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+End Function
+Function VBNumFuncs(docAnalysis As DocumentAnalysis, vbcm As CodeModule) As Long
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "VBNumFuncs"
+ Dim cLines As Long
+ Dim lngType As Long
+ Dim strProc As String
+
+ For cLines = 1 To vbcm.CountOfLines
+ strProc = vbcm.ProcOfLine(cLines, lngType)
+ If strProc <> "" Then
+ VBNumFuncs = VBNumFuncs + 1
+ cLines = cLines + vbcm.ProcCountLines(strProc, lngType) - 1
+ End If
+ Next
+ Exit Function
+HandleErrors:
+ WriteDebug currentFunctionName & " : " & docAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+End Function
+
+Function VBComponentType(vbc As VBComponent) As String
+ Select Case vbc.Type
+ Case vbext_ct_StdModule
+ VBComponentType = RID_STR_COMMON_VB_COMPONENT_STANDARD
+ Case vbext_ct_ClassModule
+ VBComponentType = RID_STR_COMMON_VB_COMPONENT_CLASS
+ Case vbext_ct_MSForm
+ VBComponentType = RID_STR_COMMON_VB_COMPONENT_USER_FORM
+ Case vbext_ct_Document
+ VBComponentType = RID_STR_COMMON_VB_COMPONENT_DOCUMENT
+ Case 11 'vbext_ct_ActiveX Designer
+ VBComponentType = RID_STR_COMMON_VB_COMPONENT_ACTIVEX_DESIGNER
+ Case Else
+ VBComponentType = RID_STR_COMMON_UNKNOWN
+ End Select
+End Function
+
+Function CheckEmptyProject(docAnalysis As DocumentAnalysis, myProject As VBProject, myComponent As VBComponent) As Boolean
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "CheckEmptyProject"
+ Dim bEmptyProject As Boolean
+
+ 'Bug: Can have empty project with different name from default, would be picked up
+ ' as not empty.
+ 'bEmptyProject = _
+ ' (StrComp(myProject.name, CTOPLEVEL_PROJECT) = 0) And _
+ ' (VBNumFuncs(docAnalysis, myComponent.CodeModule) = 0) And _
+ ' (VBNumLines(docAnalysis, myComponent.CodeModule) < 3)
+
+ ' Code Modules
+ Dim strFind As String
+ Dim count As Long
+ 'Check for:
+ 'Public Const myFoo ....
+ 'Public Declare Function ....
+ 'Public myVar As ...
+ strFind = VBFindLines(docAnalysis, myComponent.CodeModule, "Public", _
+ count, bInProcedure:=False, bWholeWord:=True, bMatchCase:=True)
+
+ bEmptyProject = _
+ (VBNumFuncs(docAnalysis, myComponent.CodeModule) = 0) And _
+ (VBNumLines(docAnalysis, myComponent.CodeModule) < 3) And _
+ (strFind = "")
+
+ CheckEmptyProject = IIf(bEmptyProject, True, False)
+ Exit Function
+
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : " & docAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+End Function
+
+Function getCustomDocPropTypeAsString(propType As MsoDocProperties)
+ Dim Str As String
+
+ Select Case propType
+ Case msoPropertyTypeBoolean
+ Str = RID_STR_COMMON_YES_OR_NO
+ Case msoPropertyTypeDate
+ Str = RID_STR_COMMON_DATE
+ Case msoPropertyTypeFloat
+ Str = RID_STR_COMMON_NUMBER
+ Case msoPropertyTypeNumber
+ Str = RID_STR_COMMON_NUMBER
+ Case msoPropertyTypeString
+ Str = RID_STR_COMMON_TEXT
+ Case Else
+ Str = "Unknown"
+ End Select
+
+ getCustomDocPropTypeAsString = Str
+End Function
+
+Sub HandleProtectedDocInvalidPassword(docAnalysis As DocumentAnalysis, strError As String, fso As FileSystemObject)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "HandleProtectedDocInvalidPassword"
+ Dim f As File
+ Set f = fso.GetFile(docAnalysis.name)
+
+ docAnalysis.Application = RID_STR_COMMON_PASSWORD_SKIPDOC
+
+ On Error Resume Next
+ docAnalysis.PageCount = 0
+ docAnalysis.Created = f.DateCreated
+ docAnalysis.Modified = f.DateLastModified
+ docAnalysis.Accessed = f.DateLastAccessed
+ docAnalysis.Printed = DateValue("01/01/1900")
+ docAnalysis.SavedBy = RID_STR_COMMON_NA
+ docAnalysis.Revision = 0
+ docAnalysis.Template = RID_STR_COMMON_NA
+ On Error GoTo HandleErrors
+
+ Dim myIssue As IssueInfo
+ Set myIssue = New IssueInfo
+
+ With myIssue
+ .IssueID = CID_CONTENT_AND_DOCUMENT_PROPERTIES
+ .IssueType = RID_STR_COMMON_ISSUE_CONTENT_AND_DOCUMENT_PROPERTIES
+ .SubType = RID_STR_COMMON_SUBISSUE_INVALID_PASSWORD_ENTERED
+ .Location = .CLocationDocument
+
+ .IssueTypeXML = CSTR_ISSUE_CONTENT_DOCUMENT_PROPERTIES
+ .SubTypeXML = CSTR_SUBISSUE_INVALID_PASSWORD_ENTERED
+ .locationXML = .CXMLLocationDocument
+
+ .Attributes.Add RID_STR_COMMON_ATTRIBUTE_PASSWORD
+ .Values.Add strError
+
+ docAnalysis.IssuesCountArray(CID_CONTENT_AND_DOCUMENT_PROPERTIES) = _
+ docAnalysis.IssuesCountArray(CID_CONTENT_AND_DOCUMENT_PROPERTIES) + 1
+ End With
+
+ docAnalysis.Issues.Add myIssue
+
+FinalExit:
+ Set myIssue = Nothing
+ Set f = Nothing
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : " & docAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+Sub Analyze_OLEEmbeddedSingleShape(docAnalysis As DocumentAnalysis, aShape As Shape, mySubLocation As Variant)
+
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "Analyze_OLEEmbeddedSingleShape"
+ Dim myIssue As IssueInfo
+ Dim bOleObject As Boolean
+ Dim TypeAsString As String
+ Dim XMLTypeAsString As String
+ Dim objName As String
+
+ bOleObject = (aShape.Type = msoEmbeddedOLEObject) Or _
+ (aShape.Type = msoLinkedOLEObject) Or _
+ (aShape.Type = msoOLEControlObject)
+
+ If Not bOleObject Then Exit Sub
+
+ aShape.Select
+ Select Case aShape.Type
+ Case msoEmbeddedOLEObject
+ TypeAsString = RID_STR_COMMON_OLE_EMBEDDED
+ XMLTypeAsString = CSTR_SUBISSUE_OLE_EMBEDDED
+ Case msoLinkedOLEObject
+ TypeAsString = RID_STR_COMMON_OLE_LINKED
+ XMLTypeAsString = CSTR_SUBISSUE_OLE_LINKED
+ Case msoOLEControlObject
+ TypeAsString = RID_STR_COMMON_OLE_CONTROL
+ XMLTypeAsString = CSTR_SUBISSUE_OLE_CONTROL
+ Case Else
+ TypeAsString = RID_STR_COMMON_OLE_UNKNOWN
+ XMLTypeAsString = CSTR_SUBISSUE_OLE_UNKNOWN
+ End Select
+
+ Dim appStr As String
+ appStr = getAppSpecificApplicationName
+
+ Set myIssue = New IssueInfo
+ With myIssue
+ .IssueID = CID_PORTABILITY
+ .IssueType = RID_STR_COMMON_ISSUE_PORTABILITY
+ .SubType = TypeAsString
+ .Location = .CLocationPage
+ .SubLocation = mySubLocation
+
+ .IssueTypeXML = CSTR_ISSUE_PORTABILITY
+ .SubTypeXML = XMLTypeAsString
+ .locationXML = .CXMLLocationPage
+
+ .Line = aShape.top
+ .column = aShape.Left
+
+ If aShape.name <> "" Then
+ .Attributes.Add RID_STR_COMMON_ATTRIBUTE_NAME
+ .Values.Add aShape.name
+ End If
+
+ If aShape.Type = msoEmbeddedOLEObject Or _
+ aShape.Type = msoOLEControlObject Then
+ Dim objType As String
+ On Error Resume Next
+
+ objType = getAppSpecificOLEClassType(aShape)
+
+ If objType = "" Then GoTo FinalExit
+ .Attributes.Add RID_STR_COMMON_ATTRIBUTE_OBJECT_TYPE
+ .Values.Add objType
+
+ If aShape.Type = msoOLEControlObject Then
+ docAnalysis.MacroNumOLEControls = 1 + docAnalysis.MacroNumOLEControls
+ End If
+
+ If appStr = CAPPNAME_POWERPOINT Then
+ '#114127: Too many open windows
+ 'Checking for OLEFormat.Object is Nothing or IsEmpty still causes problem
+ If objType <> "Equation.3" Then
+ objName = aShape.OLEFormat.Object.name
+ If Err.Number = 0 Then
+ If aShape.name <> objName Then
+ .Attributes.Add RID_STR_COMMON_ATTRIBUTE_OBJECT_NAME
+ .Values.Add objName
+ End If
+ End If
+ End If
+ Else
+ If Not (aShape.OLEFormat.Object) Is Nothing Then
+ objName = aShape.OLEFormat.Object.name
+ If Err.Number = 0 Then
+ If aShape.name <> objName Then
+ .Attributes.Add RID_STR_COMMON_ATTRIBUTE_OBJECT_NAME
+ .Values.Add objName
+ End If
+ End If
+ End If
+ End If
+
+ On Error GoTo HandleErrors
+ End If
+
+ If aShape.Type = msoLinkedOLEObject Then
+ If appStr <> CAPPNAME_WORD Then
+ On Error Resume Next
+ Dim path As String
+ path = aShape.OLEFormat.Object.SourceFullName
+ If Err.Number = 0 Then
+ .Attributes.Add RID_STR_COMMON_ATTRIBUTE_SOURCE
+ .Values.Add path
+ End If
+ On Error GoTo HandleErrors
+ Else
+ .Attributes.Add RID_STR_COMMON_ATTRIBUTE_SOURCE
+ .Values.Add aShape.LinkFormat.SourceFullName
+ End If
+ End If
+
+ docAnalysis.IssuesCountArray(CID_PORTABILITY) = _
+ docAnalysis.IssuesCountArray(CID_PORTABILITY) + 1
+ End With
+ docAnalysis.Issues.Add myIssue
+
+FinalExit:
+ Set myIssue = Nothing
+ Exit Sub
+
+HandleErrors:
+ WriteDebugLevelTwo currentFunctionName & " : " & docAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+Sub Analyze_Lines(docAnalysis As DocumentAnalysis, myShape As Shape, mySubLocation As Variant)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "Analyze_Lines"
+
+ If myShape.Line.Style = msoLineSingle Or _
+ myShape.Line.Style = msoLineStyleMixed Then Exit Sub
+
+ Dim myIssue As IssueInfo
+ Set myIssue = New IssueInfo
+
+ With myIssue
+ .IssueID = CID_CONTENT_AND_DOCUMENT_PROPERTIES
+ .IssueType = RID_STR_COMMON_ISSUE_CONTENT_AND_DOCUMENT_PROPERTIES
+ .SubType = RID_RESXLS_COST_LineStyle
+ .Location = .CLocationPage
+ .SubLocation = mySubLocation
+
+ .IssueTypeXML = CSTR_ISSUE_CONTENT_DOCUMENT_PROPERTIES
+ .SubTypeXML = CSTR_SUBISSUE_LINE
+ .locationXML = .CXMLLocationPage
+
+ .Line = myShape.top
+ .column = myShape.Left
+
+ If myShape.name <> "" Then
+ .Attributes.Add RID_STR_COMMON_ATTRIBUTE_NAME
+ .Values.Add myShape.name
+ End If
+
+ AddIssueDetailsNote myIssue, 0, RID_STR_COMMON_SUBISSUE_LINE_NOTE
+
+ docAnalysis.IssuesCountArray(CID_CONTENT_AND_DOCUMENT_PROPERTIES) = _
+ docAnalysis.IssuesCountArray(CID_CONTENT_AND_DOCUMENT_PROPERTIES) + 1
+ End With
+
+ docAnalysis.Issues.Add myIssue
+
+FinalExit:
+ Set myIssue = Nothing
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : " & docAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+Sub Analyze_Transparency(docAnalysis As DocumentAnalysis, myShape As Shape, mySubLocation As Variant)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "Analyze_Transparency"
+
+ If Not myShape.Type = msoPicture Then Exit Sub
+
+ Dim bHasTransparentBkg
+ bHasTransparentBkg = False
+
+ On Error Resume Next
+ If myShape.PictureFormat.TransparentBackground = msoTrue Then
+ If Error.Number = 0 Then
+ bHasTransparentBkg = True
+ End If
+ End If
+
+ On Error GoTo HandleErrors
+ If Not bHasTransparentBkg Then Exit Sub
+
+ Dim myIssue As IssueInfo
+ Set myIssue = New IssueInfo
+
+ With myIssue
+ .IssueID = CID_CONTENT_AND_DOCUMENT_PROPERTIES
+ .IssueType = RID_STR_COMMON_ISSUE_CONTENT_AND_DOCUMENT_PROPERTIES
+ .SubType = RID_RESXLS_COST_Transparent
+ .Location = .CLocationSlide
+ .SubLocation = mySubLocation
+
+ .IssueTypeXML = CSTR_ISSUE_CONTENT_DOCUMENT_PROPERTIES
+ .SubTypeXML = CSTR_SUBISSUE_TRANSPARENCY
+ .locationXML = .CXMLLocationPage
+
+ .Line = myShape.top
+ .column = myShape.Left
+
+ If myShape.name <> "" Then
+ .Attributes.Add RID_STR_COMMON_ATTRIBUTE_NAME
+ .Values.Add myShape.name
+ End If
+
+ AddIssueDetailsNote myIssue, 0, RID_STR_COMMON_SUBISSUE_TRANSPARENCY_NOTE
+
+ docAnalysis.IssuesCountArray(CID_CONTENT_AND_DOCUMENT_PROPERTIES) = _
+ docAnalysis.IssuesCountArray(CID_CONTENT_AND_DOCUMENT_PROPERTIES) + 1
+ End With
+
+ docAnalysis.Issues.Add myIssue
+
+FinalExit:
+ Set myIssue = Nothing
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : " & docAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+Sub Analyze_Gradients(docAnalysis As DocumentAnalysis, myShape As Shape, mySubLocation As Variant)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "Analyze_Gradients"
+
+ If myShape.Fill.Type <> msoFillGradient Then Exit Sub
+
+ Dim bUsesPresetGradient, bUsesFromCorner, bUsesFromCenter
+ bUsesPresetGradient = False
+ bUsesFromCorner = False
+ bUsesFromCenter = False
+
+ On Error Resume Next
+ If myShape.Fill.PresetGradientType <> msoPresetGradientMixed Then
+ If Error.Number = 0 Then
+ bUsesPresetGradient = True
+ End If
+ End If
+ If myShape.Fill.GradientStyle <> msoGradientFromCorner Then
+ If Error.Number = 0 Then
+ bUsesFromCorner = True
+ End If
+ End If
+ If myShape.Fill.GradientStyle <> msoGradientFromCenter Then
+ If Error.Number = 0 Then
+ bUsesFromCenter = True
+ End If
+ End If
+
+ On Error GoTo HandleErrors
+ If Not bUsesPresetGradient And Not bUsesFromCorner _
+ And Not bUsesFromCenter Then Exit Sub
+
+ Dim myIssue As IssueInfo
+ Set myIssue = New IssueInfo
+
+ With myIssue
+ .IssueID = CID_CONTENT_AND_DOCUMENT_PROPERTIES
+ .IssueType = RID_STR_COMMON_ISSUE_CONTENT_AND_DOCUMENT_PROPERTIES
+ .SubType = RID_RESXLS_COST_GradientStyle
+ .Location = .CLocationSlide
+ .SubLocation = mySubLocation
+
+ .IssueTypeXML = CSTR_ISSUE_CONTENT_DOCUMENT_PROPERTIES
+ .SubTypeXML = CSTR_SUBISSUE_GRADIENT
+ .locationXML = .CXMLLocationSlide
+
+ .Line = myShape.top
+ .column = myShape.Left
+
+ If myShape.name <> "" Then
+ .Attributes.Add RID_STR_COMMON_ATTRIBUTE_NAME
+ .Values.Add myShape.name
+ End If
+
+ If bUsesPresetGradient Then
+ AddIssueDetailsNote myIssue, 0, RID_STR_COMMON_SUBISSUE_GRADIENT_PRESET_NOTE
+ ElseIf bUsesFromCorner Then
+ AddIssueDetailsNote myIssue, 0, RID_STR_COMMON_SUBISSUE_GRADIENT_CORNER_NOTE
+ Else
+ AddIssueDetailsNote myIssue, 0, RID_STR_COMMON_SUBISSUE_GRADIENT_CENTER_NOTE
+ End If
+
+ docAnalysis.IssuesCountArray(CID_CONTENT_AND_DOCUMENT_PROPERTIES) = _
+ docAnalysis.IssuesCountArray(CID_CONTENT_AND_DOCUMENT_PROPERTIES) + 1
+ End With
+
+ docAnalysis.Issues.Add myIssue
+
+FinalExit:
+ Set myIssue = Nothing
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : " & docAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+Private Function CreateFullPath(newPath As String, fso As FileSystemObject)
+ 'We don't want to create 'c:\'
+ If (Len(newPath) < 4) Then
+ Exit Function
+ End If
+
+ 'Create parent folder first
+ If (Not fso.FolderExists(fso.GetParentFolderName(newPath))) Then
+ CreateFullPath fso.GetParentFolderName(newPath), fso
+ End If
+
+ If (Not fso.FolderExists(newPath)) Then
+ fso.CreateFolder (newPath)
+ End If
+End Function
+
+Function GetPreparedFullPath(sourceDocPath As String, startDir As String, storeToDir As String, _
+ fso As FileSystemObject) As String
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "GetPreparedFullPath"
+ GetPreparedFullPath = ""
+
+ Dim preparedPath As String
+
+ preparedPath = Right(sourceDocPath, Len(sourceDocPath) - Len(startDir))
+ If Left(preparedPath, 1) = "\" Then
+ preparedPath = Right(preparedPath, Len(preparedPath) - 1)
+ End If
+
+ 'Allow for root folder C:\
+ If Right(storeToDir, 1) <> "\" Then
+ preparedPath = storeToDir & "\" & CSTR_COMMON_PREPARATION_FOLDER & "\" & preparedPath
+ Else
+ preparedPath = storeToDir & CSTR_COMMON_PREPARATION_FOLDER & "\" & preparedPath
+ End If
+
+ 'Debug: MsgBox "Preppath: " & preparedPath
+ CreateFullPath fso.GetParentFolderName(preparedPath), fso
+
+ 'Only set if folder to save to exists or has been created, otherwise return ""
+ GetPreparedFullPath = preparedPath
+
+FinalExit:
+ Exit Function
+
+HandleErrors:
+ WriteDebugLevelTwo currentFunctionName & " : " & sourceDocPath & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Function
+
+Function ClassifyDocOverallMacroClass(docAnalysis As DocumentAnalysis) As EnumDocOverallMacroClass
+ ClassifyDocOverallMacroClass = enMacroNone
+
+ If Not docAnalysis.HasMacros Then Exit Function
+
+ If (docAnalysis.MacroTotalNumLines >= CMACRO_LINECOUNT_MEDIUM_LBOUND) Then
+ If (docAnalysis.MacroNumExternalRefs > 0) Or _
+ (docAnalysis.MacroNumOLEControls > 0 Or docAnalysis.MacroNumFieldsUsingMacros > 0) Or _
+ docAnalysis.MacroNumUserForms > 0 Then
+ ClassifyDocOverallMacroClass = enMacroComplex
+ Else
+ ClassifyDocOverallMacroClass = enMacroMedium
+ End If
+ Else
+ ClassifyDocOverallMacroClass = enMacroSimple
+ End If
+
+End Function
+
diff --git a/migrationanalysis/src/driver_docs/sources/word/MigrationAnalyser.cls b/migrationanalysis/src/driver_docs/sources/word/MigrationAnalyser.cls
index 5fdd2c80d837..44e1dd1212d7 100644
--- a/migrationanalysis/src/driver_docs/sources/word/MigrationAnalyser.cls
+++ b/migrationanalysis/src/driver_docs/sources/word/MigrationAnalyser.cls
@@ -1,1518 +1,1518 @@
-VERSION 1.0 CLASS
-BEGIN
- MultiUse = -1 'True
-END
-Attribute VB_Name = "MigrationAnalyser"
-Attribute VB_GlobalNameSpace = False
-Attribute VB_Creatable = False
-Attribute VB_PredeclaredId = False
-Attribute VB_Exposed = False
-'*************************************************************************
-'
-' Licensed to the Apache Software Foundation (ASF) under one
-' or more contributor license agreements. See the NOTICE file
-' distributed with this work for additional information
-' regarding copyright ownership. The ASF licenses this file
-' to you under the Apache License, Version 2.0 (the
-' "License"); you may not use this file except in compliance
-' with the License. You may obtain a copy of the License at
-'
-' http://www.apache.org/licenses/LICENSE-2.0
-'
-' Unless required by applicable law or agreed to in writing,
-' software distributed under the License is distributed on an
-' "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-' KIND, either express or implied. See the License for the
-' specific language governing permissions and limitations
-' under the License.
-'
-'*************************************************************************
-
-Option Explicit
-
-'Class variables
-Private Enum HFIssueType
- hfInline
- hfShape
- hfFrame
-End Enum
-
-Private Enum HFIssueLocation
- hfHeader
- hffooter
-End Enum
-
-
-Private Type ShapeInfo
- top As Single
- Height As Single
-End Type
-
-Private Type FrameInfo
- Height As Single
- VerticalPosition As Single
-End Type
-
-Private mAnalysis As DocumentAnalysis
-Private mOdd As Boolean
-Private mbFormFieldErrorLogged As Boolean
-Private mbRefFormFieldErrorLogged As Boolean
-
-'***ADDING-ISSUE: Use Following Skeleton as Guideline for Adding Issue
-' For complete list of all RID_STR_... for Issues (IssueType), SubIssues (SubType) and Attributes refer to:
-' word_res.bas and common_res.bas
-'
-' For complete list of all CID_... for Issue Categories(IssueID) and
-' CSTR_... for XML Issues (IssueTypeXML) and XML SubIssues (SubTypeXML) refer to:
-' ApplicationSpecific.bas and CommonMigrationAnalyser.bas
-'
-' You should not have to add any new Issue Categories or matching IssueTypes, only new SubIssues
-Sub Analyze_SKELETON()
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "Analyze_SKELETON"
- Dim myIssue As IssueInfo
- Set myIssue = New IssueInfo
-
- With myIssue
- .IssueID = CID_VBA_MACROS 'Issue Category
- .IssueType = RID_STR_COMMON_ISSUE_VBA_MACROS 'Issue String
- .SubType = RID_STR_COMMON_SUBISSUE_PROPERTIES 'SubIssue String
- .Location = .CLocationDocument 'Location string
-
- .IssueTypeXML = CSTR_ISSUE_VBA_MACROS 'Non localised XML Issue String
- .SubTypeXML = CSTR_SUBISSUE_PROPERTIES 'Non localised XML SubIssue String
- .locationXML = .CXMLLocationDocument 'Non localised XML location
-
- .SubLocation = 0 'if not set will default to RID_STR_NOT_AVAILABLE_SHORTHAND
- .Line = 0 'if not set will default to RID_STR_NOT_AVAILABLE_SHORTHAND
- .column = 0 'if not set will default to RID_STR_NOT_AVAILABLE_SHORTHAND
-
- ' Add as many Attribute Value pairs as needed
- ' Note: following must always be true - Attributes.Count = Values.Count
- .Attributes.Add "AAA"
- .Values.Add "foobar"
-
- ' Use AddIssueDetailsNote to add notes to the Issue Details if required
- ' Public Sub AddIssueDetailsNote(myIssue As IssueInfo, noteNum As Long, noteStr As String, _
- ' Optional preStr As String = RID_STR_COMMON_NOTE_PRE)
- ' Where preStr is prepended to the output, with "Note" as the default
- AddIssueDetailsNote myIssue, 0, RID_STR_COMMON_NOTE_DOCUMENT_PROPERTIES_LOST
-
- 'Only put this in if you have a preparation function added for this issue in CommonPreparation
- 'or Preparation - NUll can be replaced with any variant if you want to pass info to the Prepare fnc
- Call DoPreparation(mAnalysis, myIssue, "", Null, Null)
-
- mAnalysis.IssuesCountArray(CID_VBA_MACROS) = _
- mAnalysis.IssuesCountArray(CID_VBA_MACROS) + 1
- End With
-
- mAnalysis.Issues.Add myIssue
-
-FinalExit:
- Set myIssue = Nothing
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & " : " & mAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-Sub DoAnalyse(fileName As String, userFormTypesDict As Scripting.Dictionary, _
- startDir As String, storeToDir As String, fso As FileSystemObject)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "DoAnalyse"
- mAnalysis.name = fileName
- Dim aDoc As Document
- Dim bUnprotectError As Boolean
- mAnalysis.TotalIssueTypes = CTOTAL_CATEGORIES
- mbFormFieldErrorLogged = False
- mbRefFormFieldErrorLogged = False
-
- 'Turn off any AutoExce macros before loading the Word doc
- On Error Resume Next ' Ignore errors on setting
- WordBasic.DisableAutoMacros 1
- On Error GoTo HandleErrors
-
- Dim myPassword As String
- myPassword = GetDefaultPassword
-
- 'Always skip password protected documents
- 'If IsSkipPasswordDocs() Then
- Dim aPass As String
- If myPassword <> "" Then
- aPass = myPassword
- Else
- aPass = "xoxoxoxoxo"
- End If
-
- On Error Resume Next
- Set aDoc = Documents.Open(fileName, False, False, False, _
- aPass, aPass, False, aPass, aPass, wdOpenFormatAuto, _
- msoEncodingAutoDetect, False)
- If Err.Number = 5408 Then
- ' if password protected, try open readonly next
- Set aDoc = Documents.Open(fileName, False, True, False, _
- aPass, aPass, False, aPass, aPass, wdOpenFormatAuto, _
- msoEncodingAutoDetect, False)
- End If
- If Err.Number = 5408 Then
- HandleProtectedDocInvalidPassword mAnalysis, _
- "User entered Invalid Document Password, further analysis not possible", fso
- Analyze_Password_Protection True, False
- GoTo FinalExit
- ElseIf (Err.Number <> 0) Then
- GoTo HandleErrors
- End If
-
- On Error GoTo HandleErrors
-
- If aDoc Is Nothing Then GoTo FinalExit
-
- 'Do Analysis
- Analyze_Password_Protection aDoc.HasPassword, aDoc.WriteReserved
- Analyze_Document_Protection aDoc
-
- If aDoc.ProtectionType <> wdNoProtection Then
- If myPassword <> "" Then
- aDoc.Unprotect (myPassword)
- Else
- aDoc.Unprotect
- End If
- End If
-
- 'Set Doc Properties
- SetDocProperties mAnalysis, aDoc, fso
-
-ContinueFromUnprotectError:
-
- Analyze_Tables_TablesInTables aDoc
- Analyze_Tables_Borders aDoc
- Analyze_TOA aDoc
- If Not bUnprotectError Then
- Analyze_FieldAndFormFieldIssues aDoc
- End If
- Analyze_OLEEmbedded aDoc
- Analyze_MailMerge_DataSource aDoc
- Analyze_Macros mAnalysis, userFormTypesDict, aDoc
- 'Analyze_Numbering aDoc, mAnalysis
- 'Analyze_NumberingTabs aDoc, mAnalysis
-
- ' Doc Preparation only
- ' Save document with any prepared issues under <storeToDir>\prepared\<source doc name>
- If mAnalysis.PreparableIssuesCount > 0 And CheckDoPrepare Then
- Dim preparedFullPath As String
- preparedFullPath = GetPreparedFullPath(mAnalysis.name, startDir, storeToDir, fso)
- If preparedFullPath <> "" Then
- If fso.FileExists(preparedFullPath) Then
- fso.DeleteFile preparedFullPath, True
- End If
- If fso.FolderExists(fso.GetParentFolderName(preparedFullPath)) Then
- aDoc.SaveAs preparedFullPath
- End If
- End If
- End If
-
- 'DebugMacroInfo
-
-FinalExit:
-
-
- If Not aDoc Is Nothing Then 'If Not IsEmpty(aDoc) Then
- aDoc.Close (False)
- End If
- Set aDoc = Nothing
-
- Exit Sub
-
-HandleErrors:
- ' MsgBox currentFunctionName & " : " & fileName & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- ' Handle Password error on Doc Open, Modify and Cancel
- If Err.Number = 5408 Or Err.Number = 4198 Then
- WriteDebug currentFunctionName & " : " & fileName & ": " & _
- "User entered Invalid Document Password - " & Err.Number & " " & Err.Description & " " & Err.Source
- HandleProtectedDocInvalidPassword mAnalysis, _
- "User entered Invalid Document Password, further analysis not possible", fso
- Resume FinalExit
- ElseIf Err.Number = 5485 Then
- ' Handle Password error on Unprotect Doc
- WriteDebug currentFunctionName & " : " & fileName & ": " & _
- "User entered Invalid Document Part Password, Analysis of doc will continue but will skip analysis of:" & _
- "Forms, Comments, Headers & Footers and Table cell spanning issues - " & Err.Number & " " & Err.Description & " " & Err.Source
- HandleProtectedDocInvalidPassword mAnalysis, _
- "User entered Invalid Document Part Password, Analysis of doc will continue but will skip analysis of:" & vbLf & _
- "Forms, Comments, Headers & Footers and Table cell spanning issues", fso
- bUnprotectError = True
- 'wdAllowOnlyComments, wdAllowOnlyFormFields, wdAllowOnlyRevisions
- Resume ContinueFromUnprotectError
- End If
- mAnalysis.Application = RID_STR_COMMON_CANNOT_OPEN
- WriteDebug currentFunctionName & " : " & fileName & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-Sub DebugMacroInfo()
- MsgBox "TotalNumLines: " & mAnalysis.MacroTotalNumLines & vbLf & _
- "NumUserForms: " & mAnalysis.MacroNumUserForms & vbLf & _
- "NumUserFormControls: " & mAnalysis.MacroNumUserFormControls & vbLf & _
- "NumUserFormControlTypes: " & mAnalysis.MacroNumUserFormControlTypes & vbLf & _
- "NumExternalRefs: " & mAnalysis.MacroNumExternalRefs & vbLf & _
- "MacroNumFieldsUsingMacros: " & mAnalysis.MacroNumFieldsUsingMacros & vbLf & _
- "NumOLEControls: " & mAnalysis.MacroNumOLEControls & vbLf & _
- "MacroOverallClass: " & getDocOverallMacroClassAsString(mAnalysis.MacroOverallClass)
-End Sub
-
-Sub SetDocProperties(docAnalysis As DocumentAnalysis, doc As Document, fso As FileSystemObject)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "SetProperties"
- Dim f As File
- Set f = fso.GetFile(docAnalysis.name)
-
- docAnalysis.PageCount = doc.ComputeStatistics(wdStatisticPages)
- docAnalysis.Accessed = f.DateLastAccessed
-
- On Error Resume Next 'Some apps may not support all props
- docAnalysis.Application = getAppSpecificApplicationName & " " & Application.Version
- 'docAnalysis.Application = doc.BuiltinDocumentProperties(wdPropertyAppName)
- 'If InStr(docAnalysis.Application, "Microsoft") = 1 Then
- ' docAnalysis.Application = Mid(docAnalysis.Application, Len("Microsoft") + 2)
- 'End If
- 'If InStr(Len(docAnalysis.Application) - 2, docAnalysis.Application, ".") = 0 Then
- ' docAnalysis.Application = docAnalysis.Application & " " & Application.Version
- 'End If
-
- docAnalysis.Created = _
- doc.BuiltInDocumentProperties(wdPropertyTimeCreated)
- docAnalysis.Modified = _
- doc.BuiltInDocumentProperties(wdPropertyTimeLastSaved)
- docAnalysis.Printed = _
- doc.BuiltInDocumentProperties(wdPropertyTimeLastPrinted)
- docAnalysis.SavedBy = _
- doc.BuiltInDocumentProperties(wdPropertyLastAuthor)
- docAnalysis.Revision = _
- val(doc.BuiltInDocumentProperties(wdPropertyRevision))
- docAnalysis.Template = _
- fso.GetFileName(doc.BuiltInDocumentProperties(wdPropertyTemplate))
-
-FinalExit:
- Set f = Nothing
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & " : " & mAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-'Limitation: Detect first level table in tables, does not detect further nesting
-'Can do so if required
-Sub Analyze_Tables_TablesInTables(currDoc As Document)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "Analyze_Tables_TablesInTables"
- Dim myTopTable As Table
- Dim myInnerTable As Table
- Dim myIssue As IssueInfo
-
- For Each myTopTable In currDoc.Tables
- For Each myInnerTable In myTopTable.Tables
- Dim logString As String
- Dim myRng As Range
- Dim startpage As Long
- Dim startRow As Long
- Dim StartColumn As Long
- Dim details As String
-
- Set myIssue = New IssueInfo
- Set myRng = myInnerTable.Range
- myRng.start = myRng.End
- startpage = myRng.Information(wdActiveEndPageNumber)
- startRow = myRng.Information(wdStartOfRangeRowNumber)
- StartColumn = myRng.Information(wdStartOfRangeColumnNumber)
-
- With myIssue
- .IssueID = CID_TABLES
- .IssueType = RID_STR_WORD_ISSUE_TABLES
- .SubType = RID_STR_WORD_SUBISSUE_NESTED_TABLES
- .Location = .CLocationPage
- .SubLocation = startpage
-
- .IssueTypeXML = CSTR_ISSUE_TABLES
- .SubTypeXML = CSTR_SUBISSUE_NESTED_TABLES
- .locationXML = .CXMLLocationPage
-
- .Attributes.Add RID_STR_WORD_ATTRIBUTE_OUTER_TABLE
- .Values.Add myTopTable.Rows.count & "x" & myTopTable.Columns.count
- .Attributes.Add RID_STR_WORD_ATTRIBUTE_INNER_TABLE
- .Values.Add myInnerTable.Rows.count & "x" & myInnerTable.Columns.count
- .Attributes.Add RID_STR_WORD_ATTRIBUTE_START_ROW
- .Values.Add startRow
- .Attributes.Add RID_STR_WORD_ATTRIBUTE_START_COL
- .Values.Add StartColumn
- AddIssueDetailsNote myIssue, 0, RID_STR_WORD_NOTE_NESTED_TABLE_WILL_BE_LOST
-
- mAnalysis.IssuesCountArray(CID_TABLES) = _
- mAnalysis.IssuesCountArray(CID_TABLES) + 1
- End With
-
- mAnalysis.Issues.Add myIssue
- Set myIssue = Nothing
- Set myRng = Nothing
- Next
- Next
- Exit Sub
-HandleErrors:
- WriteDebug currentFunctionName & " : " & mAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
-End Sub
-
-Sub Analyze_Document_Protection(currDoc As Document)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "Analyze_Document_Protection"
- If currDoc.ProtectionType = wdNoProtection Then
- Exit Sub
- End If
-
- Dim myIssue As IssueInfo
- Set myIssue = New IssueInfo
-
- With myIssue
- .IssueID = CID_CONTENT_AND_DOCUMENT_PROPERTIES
- .IssueType = RID_STR_COMMON_ISSUE_CONTENT_AND_DOCUMENT_PROPERTIES
- .SubType = RID_STR_COMMON_SUBISSUE_DOCUMENT_PARTS_PROTECTION
- .Location = .CLocationDocument
-
- .IssueTypeXML = CSTR_ISSUE_CONTENT_DOCUMENT_PROPERTIES
- .SubTypeXML = CSTR_SUBISSUE_DOCUMENT_PARTS_PROTECTION
- .locationXML = .CXMLLocationDocument
-
- .Attributes.Add RID_STR_WORD_ATTRIBUTE_PROTECTION
- Select Case currDoc.ProtectionType
- Case wdAllowOnlyComments
- .Values.Add RID_STR_WORD_ATTRIBUTE_ALLOW_ONLY_COMMENTS
- Case wdAllowOnlyFormFields
- .Values.Add RID_STR_WORD_ATTRIBUTE_ALLOW_ONLY_FORM_FIELDS
- Case wdAllowOnlyRevisions
- .Values.Add RID_STR_WORD_ATTRIBUTE_ALLOW_ONLY_REVISIONS
- Case Else
- .Values.Add RID_STR_COMMON_ATTRIBUTE_UNKNOWN
- End Select
-
- mAnalysis.IssuesCountArray(CID_CONTENT_AND_DOCUMENT_PROPERTIES) = _
- mAnalysis.IssuesCountArray(CID_CONTENT_AND_DOCUMENT_PROPERTIES) + 1
- End With
-
- mAnalysis.Issues.Add myIssue
-FinalExit:
- Set myIssue = Nothing
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & " : " & mAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-Sub Analyze_Password_Protection(bHasPassword As Boolean, bWriteReserved As Boolean)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "Analyze_Password_Protection"
- Dim myIssue As IssueInfo
-
- If bHasPassword Or bWriteReserved Then
- Set myIssue = New IssueInfo
-
- With myIssue
- .IssueID = CID_CONTENT_AND_DOCUMENT_PROPERTIES
- .IssueType = RID_STR_COMMON_ISSUE_CONTENT_AND_DOCUMENT_PROPERTIES
- .SubType = RID_STR_COMMON_SUBISSUE_PASSWORDS_PROTECTION
- .Location = .CLocationDocument
-
- .IssueTypeXML = CSTR_ISSUE_CONTENT_DOCUMENT_PROPERTIES
- .SubTypeXML = CSTR_SUBISSUE_PASSWORDS_PROTECTION
- .locationXML = .CXMLLocationDocument
-
- If bHasPassword Then
- .Attributes.Add RID_STR_WORD_ATTRIBUTE_PASSWORD_TO_OPEN
- .Values.Add RID_STR_WORD_ATTRIBUTE_SET
- End If
- If bWriteReserved Then
- .Attributes.Add RID_STR_WORD_ATTRIBUTE_PASSWORD_TO_MODIFY
- .Values.Add RID_STR_WORD_ATTRIBUTE_SET
- End If
-
- mAnalysis.IssuesCountArray(CID_CONTENT_AND_DOCUMENT_PROPERTIES) = _
- mAnalysis.IssuesCountArray(CID_CONTENT_AND_DOCUMENT_PROPERTIES) + 1
- End With
-
- mAnalysis.Issues.Add myIssue
- End If
-FinalExit:
- Set myIssue = Nothing
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & " : " & mAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-Sub Analyze_OLEEmbedded(currDoc As Document)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "Analyze_OLEEmbedded"
-
- ' Handle Inline Shapes
- Dim aILShape As InlineShape
- For Each aILShape In currDoc.InlineShapes
- Analyze_OLEEmbeddedSingleInlineShape aILShape
- Next aILShape
-
- ' Handle Shapes
- Dim aShape As Shape
- For Each aShape In currDoc.Shapes
- Analyze_OLEEmbeddedSingleShape mAnalysis, aShape, _
- Selection.Information(wdActiveEndPageNumber)
- Analyze_Lines mAnalysis, aShape, _
- Selection.Information(wdActiveEndPageNumber)
- Analyze_Transparency mAnalysis, aShape, _
- Selection.Information(wdActiveEndPageNumber)
- Analyze_Gradients mAnalysis, aShape, _
- Selection.Information(wdActiveEndPageNumber)
- Next aShape
-
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & " : " & mAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
-End Sub
-
-
-'WdInlineShapeType constants:
-'wdInlineShapeEmbeddedOLEObject, wdInlineShapeHorizontalLine, wdInlineShapeLinkedOLEObject,
-'wdInlineShapeLinkedPicture, wdInlineShapeLinkedPictureHorizontalLine, wdInlineShapeOLEControlObject,
-'wdInlineShapeOWSAnchor, wdInlineShapePicture, wdInlineShapePictureBullet,
-'wdInlineShapePictureHorizontalLine, wdInlineShapeScriptAnchor
-
-Sub Analyze_OLEEmbeddedSingleInlineShape(aILShape As InlineShape)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "Analyze_OLEEmbeddedSingleInlineShape"
- Dim myIssue As IssueInfo
- Dim bOleObject As Boolean
- Dim TypeAsString As String
- Dim XMLTypeAsString As String
- Dim objName As String
-
- bOleObject = (aILShape.Type = wdInlineShapeEmbeddedOLEObject) Or _
- (aILShape.Type = wdInlineShapeLinkedOLEObject) Or _
- (aILShape.Type = wdInlineShapeOLEControlObject)
-
- If Not bOleObject Then Exit Sub
-
- aILShape.Select
- Select Case aILShape.Type
- Case wdInlineShapeOLEControlObject
- TypeAsString = RID_STR_COMMON_OLE_CONTROL
- XMLTypeAsString = CSTR_SUBISSUE_OLE_CONTROL
- Case wdInlineShapeEmbeddedOLEObject
- TypeAsString = RID_STR_COMMON_OLE_EMBEDDED
- XMLTypeAsString = CSTR_SUBISSUE_OLE_EMBEDDED
- Case wdInlineShapeLinkedOLEObject
- TypeAsString = RID_STR_COMMON_OLE_LINKED
- XMLTypeAsString = CSTR_SUBISSUE_OLE_LINKED
- Case Else
- TypeAsString = RID_STR_COMMON_OLE_UNKNOWN
- XMLTypeAsString = CSTR_SUBISSUE_OLE_UNKNOWN
- End Select
-
- Set myIssue = New IssueInfo
- With myIssue
- .IssueID = CID_PORTABILITY
- .IssueType = RID_STR_COMMON_ISSUE_PORTABILITY
- .SubType = TypeAsString
- .Location = .CLocationPage
- .SubLocation = Selection.Information(wdActiveEndPageNumber)
-
- .IssueTypeXML = CSTR_ISSUE_PORTABILITY
- .SubTypeXML = XMLTypeAsString
- .locationXML = .CXMLLocationPage
-
- .Line = Selection.Information(wdFirstCharacterLineNumber)
- .column = Selection.Information(wdFirstCharacterColumnNumber)
-
- DoEvents
- If aILShape.Type = wdInlineShapeEmbeddedOLEObject Or _
- aILShape.Type = wdInlineShapeOLEControlObject Then
-
- 'If Object is invalid can get automation server hanging
- Dim tmpStr As String
- On Error Resume Next
- tmpStr = aILShape.OLEFormat.Object
- If Err.Number = 0 Then
- .Attributes.Add RID_STR_COMMON_ATTRIBUTE_OBJECT_TYPE
- .Values.Add aILShape.OLEFormat.ProgID
- Else
- Err.Clear
- tmpStr = aILShape.OLEFormat.ClassType
- If Err.Number = 0 Then
- .Attributes.Add RID_STR_COMMON_ATTRIBUTE_OBJECT_TYPE
- .Values.Add aILShape.OLEFormat.ClassType
- Else
- .Attributes.Add RID_STR_COMMON_ATTRIBUTE_OBJECT_TYPE
- .Values.Add RID_STR_COMMON_NA
- End If
- End If
-
- If aILShape.Type = wdInlineShapeOLEControlObject Then
- mAnalysis.MacroNumOLEControls = 1 + mAnalysis.MacroNumOLEControls
- End If
-
- objName = aILShape.OLEFormat.Object.name
- If Err.Number = 0 Then
- .Attributes.Add RID_STR_COMMON_ATTRIBUTE_OBJECT_NAME
- .Values.Add objName
- End If
- On Error GoTo HandleErrors
- End If
- If aILShape.Type = wdInlineShapeLinkedOLEObject Then
- .Attributes.Add RID_STR_COMMON_ATTRIBUTE_SOURCE
- .Values.Add aILShape.LinkFormat.SourceFullName
- End If
-
- mAnalysis.IssuesCountArray(CID_PORTABILITY) = _
- mAnalysis.IssuesCountArray(CID_PORTABILITY) + 1
- End With
-
- mAnalysis.Issues.Add myIssue
-
-FinalExit:
- Set myIssue = Nothing
- Exit Sub
-
-HandleErrors:
- WriteDebugLevelTwo currentFunctionName & " : " & mAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-'Appears to be picked up by other OLE analysis code - the Shapes are actually field codes
-'So I get double reporting if I use this as well.
-Sub Analyze_OLEFields(myField As Field)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "Analyze_OLEFields"
- Dim myIssue As IssueInfo
- Dim bOleObject As Boolean
- Dim TypeAsString As String
- Dim XMLTypeAsString As String
-
- bOleObject = (myField.Type = wdFieldOCX)
-
- If Not bOleObject Then Exit Sub
-
- myField.Select
- Select Case myField.Type
- Case wdFieldLink
- TypeAsString = RID_STR_COMMON_OLE_FIELD_LINK
- XMLTypeAsString = CSTR_SUBISSUE_OLE_FIELD_LINK
- Case Else
- TypeAsString = RID_STR_COMMON_OLE_UNKNOWN
- XMLTypeAsString = CSTR_SUBISSUE_OLE_UNKNOWN
- End Select
- Set myIssue = New IssueInfo
- With myIssue
- .IssueID = CID_PORTABILITY
- .IssueType = RID_STR_COMMON_ISSUE_PORTABILITY
- .SubType = TypeAsString
- .Location = .CLocationPage
- .SubLocation = Selection.Information(wdActiveEndPageNumber)
-
- .IssueTypeXML = CSTR_ISSUE_PORTABILITY
- .SubTypeXML = XMLTypeAsString
- .locationXML = .CXMLLocationPage
-
- .Line = Selection.Information(wdFirstCharacterLineNumber)
- .column = Selection.Information(wdFirstCharacterColumnNumber)
- .Attributes.Add RID_STR_COMMON_ATTRIBUTE_OBJECT_TYPE
- .Values.Add myField.OLEFormat.ClassType
-
- If myField.Type = wdFieldLink Then
- .Attributes.Add RID_STR_WORD_ATTRIBUTE_LINK
- .Values.Add myField.LinkFormat.SourceFullName
- End If
- mAnalysis.IssuesCountArray(CID_PORTABILITY) = _
- mAnalysis.IssuesCountArray(CID_PORTABILITY) + 1
- End With
- mAnalysis.Issues.Add myIssue
-
- Set myIssue = Nothing
-
- Exit Sub
-
-HandleErrors:
- Set myIssue = Nothing
- WriteDebug currentFunctionName & " : " & mAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
-End Sub
-
-Sub Analyze_MailMergeField(myField As Field)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "Analyze_MailMergeField"
- Dim myIssue As IssueInfo
- Dim TypeAsString As String
- Dim bProblemMailMergeField As Boolean
-
- bProblemMailMergeField = _
- (myField.Type = wdFieldFillIn) Or _
- (myField.Type = wdFieldAsk) Or _
- (myField.Type = wdFieldMergeRec) Or _
- (myField.Type = wdFieldMergeField) Or _
- (myField.Type = wdFieldNext) Or _
- (myField.Type = wdFieldRevisionNum) Or _
- (myField.Type = wdFieldSequence) Or _
- (myField.Type = wdFieldAutoNum) Or _
- (myField.Type = wdFieldAutoNumOutline) Or _
- (myField.Type = wdFieldAutoNumLegal)
-
- If bProblemMailMergeField Then
- 'Some of the following are numbering fields and need to be broken out into a seperate function. See migration guide.
-
- Select Case myField.Type
- Case wdFieldFillIn
- TypeAsString = RID_STR_WORD_ENUMERATION_MAILMERGE_FILL_IN
- Case wdFieldAsk
- TypeAsString = RID_STR_WORD_ENUMERATION_MAILMERGE_ASK
- Case wdFieldMergeRec
- TypeAsString = RID_STR_WORD_ENUMERATION_MAILMERGE_MERGE_RECORDS
- Case wdFieldMergeField
- TypeAsString = RID_STR_WORD_ENUMERATION_MAILMERGE_MERGE_FIELDS
- Case wdFieldNext
- TypeAsString = RID_STR_WORD_ENUMERATION_MAILMERGE_NEXT
- Case wdFieldRevisionNum
- TypeAsString = RID_STR_WORD_ENUMERATION_MAILMERGE_REVISION_NUMBER
- Case wdFieldSequence
- TypeAsString = RID_STR_WORD_ENUMERATION_MAILMERGE_SEQUENCE
- Case wdFieldAutoNum
- TypeAsString = RID_STR_WORD_ENUMERATION_MAILMERGE_AUTO_NUMBER
- Case wdFieldAutoNumOutline
- TypeAsString = RID_STR_WORD_ENUMERATION_MAILMERGE_AUTO_NUMBER_OUTLINE
- Case wdFieldAutoNumLegal
- TypeAsString = RID_STR_WORD_ENUMERATION_MAILMERGE_AUTO_NUMBER_LEGAL
- Case Else
- TypeAsString = RID_STR_WORD_ENUMERATION_MAILMERGE_FIELD_NAME_NOT_KNOWN
- End Select
-
- Set myIssue = New IssueInfo
- myField.Select
- With myIssue
- .IssueID = CID_FIELDS
- .IssueType = RID_STR_WORD_ISSUE_FIELDS
- .SubType = RID_STR_WORD_SUBISSUE_MAILMERGE_FIELD
- .Location = .CLocationPage
-
- .IssueTypeXML = CSTR_ISSUE_FIELDS
- .SubTypeXML = CSTR_SUBISSUE_MAILMERGE_FIELD
- .locationXML = .CXMLLocationPage
-
- .SubLocation = Selection.Information(wdActiveEndPageNumber)
- .Line = Selection.Information(wdFirstCharacterLineNumber)
- .column = Selection.Information(wdFirstCharacterColumnNumber)
-
- .Attributes.Add RID_STR_COMMON_ATTRIBUTE_NAME
- .Values.Add TypeAsString
- If myField.Code.Text <> "" Then
- .Attributes.Add RID_STR_WORD_ATTRIBUTE_TEXT
- .Values.Add myField.Code.Text
- End If
-
- mAnalysis.IssuesCountArray(CID_FIELDS) = _
- mAnalysis.IssuesCountArray(CID_FIELDS) + 1
- End With
- mAnalysis.Issues.Add myIssue
- Set myIssue = Nothing
- End If
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & " : " & mAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
-End Sub
-
-'Get field DS Info
-Sub Analyze_MailMerge_DataSource(currDoc As Document)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "Analyze_MailMerge_DataSource"
- ' There may be no mail merge in the document
- If (currDoc.MailMerge.DataSource.Type = wdNoMergeInfo) Then
- Exit Sub
- End If
-
- 'Dim issue As SimpleAnalysisInfo
- If (currDoc.MailMerge.DataSource.Type <> wdNoMergeInfo) Then
- Dim myIssue As IssueInfo
- Set myIssue = New IssueInfo
- With myIssue
- .IssueID = CID_CONTENT_AND_DOCUMENT_PROPERTIES
- .IssueType = RID_STR_COMMON_ISSUE_CONTENT_AND_DOCUMENT_PROPERTIES
- .SubType = RID_STR_WORD_SUBISSUE_MAILMERGE_DATASOURCE
- .Location = .CLocationDocument
-
- .IssueTypeXML = CSTR_ISSUE_CONTENT_DOCUMENT_PROPERTIES
- .SubTypeXML = CSTR_SUBISSUE_MAILMERGE_DATASOURCE
- .locationXML = .CXMLLocationDocument
-
- .Attributes.Add RID_STR_COMMON_ATTRIBUTE_NAME
- .Values.Add currDoc.MailMerge.DataSource.name
- .Attributes.Add RID_STR_WORD_ATTRIBUTE_DATASOURCE
- .Values.Add currDoc.MailMerge.DataSource.Type
-
- mAnalysis.IssuesCountArray(CID_CONTENT_AND_DOCUMENT_PROPERTIES) = _
- mAnalysis.IssuesCountArray(CID_CONTENT_AND_DOCUMENT_PROPERTIES) + 1
- End With
-
- mAnalysis.Issues.Add myIssue
- Set myIssue = Nothing
- End If
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & " : " & mAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
-End Sub
-
-Function getFormFieldTypeAsString(fieldType As WdFieldType)
- Dim Str As String
-
- Select Case fieldType
- Case wdFieldFormCheckBox
- Str = RID_STR_WORD_ENUMERATION_FORM_FIELD_CHECK_BOX
- Case wdFieldFormDropDown
- Str = RID_STR_WORD_ENUMERATION_FORM_FIELD_DROP_DOWN
- Case wdFieldFormTextInput
- Str = RID_STR_WORD_ENUMERATION_FORM_FIELD_TEXT
- Case Else
- Str = RID_STR_WORD_ENUMERATION_UNKNOWN
- End Select
-
- getFormFieldTypeAsString = Str
-End Function
-Function getTextFormFieldTypeAsString(fieldType As WdTextFormFieldType)
- Dim Str As String
-
- Select Case fieldType
- Case wdCalculationText
- Str = RID_STR_WORD_ENUMERATION_FORM_FIELD_CALCULATION
- Case wdCurrentDateText
- Str = RID_STR_WORD_ENUMERATION_FORM_FIELD_CURRENT_DATE
- Case wdCurrentTimeText
- Str = RID_STR_WORD_ENUMERATION_FORM_FIELD_CURRENT_TIME
- Case wdDateText
- Str = RID_STR_WORD_ENUMERATION_FORM_FIELD_DATE
- Case wdNumberText
- Str = RID_STR_WORD_ENUMERATION_FORM_FIELD_NUMBER
- Case wdRegularText
- Str = RID_STR_WORD_ENUMERATION_FORM_FIELD_REGULAR
- Case Else
- Str = RID_STR_WORD_ENUMERATION_UNKNOWN
- End Select
-
- getTextFormFieldTypeAsString = Str
-End Function
-Function getTextFormFieldDefaultAsString(fieldType As WdTextFormFieldType)
- Dim Str As String
-
- Select Case fieldType
- Case wdCalculationText
- Str = RID_STR_WORD_ENUMERATION_FORM_FIELD_DEFAULT_EXPRESSION
- Case wdCurrentDateText
- Str = RID_STR_WORD_ENUMERATION_FORM_FIELD_DEFAULT_DATE
- Case wdCurrentTimeText
- Str = RID_STR_WORD_ENUMERATION_FORM_FIELD_DEFAULT_TIME
- Case wdDateText
- Str = RID_STR_WORD_ENUMERATION_FORM_FIELD_DEFAULT_DATE
- Case wdNumberText
- Str = RID_STR_WORD_ENUMERATION_FORM_FIELD_DEFAULT_NUMBER
- Case wdRegularText
- Str = RID_STR_WORD_ENUMERATION_FORM_FIELD_DEFAULT_TEXT
- Case Else
- Str = RID_STR_WORD_ENUMERATION_UNKNOWN
- End Select
-
- getTextFormFieldDefaultAsString = Str
-End Function
-Function getTextFormFieldFormatAsString(fieldType As WdTextFormFieldType)
- Dim Str As String
-
- Select Case fieldType
- Case wdCalculationText
- Str = RID_STR_WORD_ENUMERATION_FORM_FIELD_FORMAT_NUMBER
- Case wdCurrentDateText
- Str = RID_STR_WORD_ENUMERATION_FORM_FIELD_FORMAT_DATE
- Case wdCurrentTimeText
- Str = RID_STR_WORD_ENUMERATION_FORM_FIELD_FORMAT_TIME
- Case wdDateText
- Str = RID_STR_WORD_ENUMERATION_FORM_FIELD_FORMAT_DATE
- Case wdNumberText
- Str = RID_STR_WORD_ENUMERATION_FORM_FIELD_FORMAT_NUMBER
- Case wdRegularText
- Str = RID_STR_WORD_ENUMERATION_FORM_FIELD_FORMAT_TEXT
- Case Else
- Str = RID_STR_WORD_ENUMERATION_UNKNOWN
- End Select
-
- getTextFormFieldFormatAsString = Str
-End Function
-
-Sub Analyze_FieldAndFormFieldIssues(currDoc As Document)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "Analyze_FormFields"
- Dim myIssue As IssueInfo
-
- 'Analysze all Fields in doc
- Dim myField As Field
-
- For Each myField In currDoc.Fields
- 'Analyze Mail Merge Fields
- Analyze_MailMergeField myField
-
- 'Analyze TOA Fields
- Analyze_TOAField myField
- Next myField
-
- 'Analyze FormField doc issues
- If currDoc.FormFields.count = 0 Then GoTo FinalExit
-
- If (currDoc.FormFields.Shaded) Then
- Set myIssue = New IssueInfo
- With myIssue
- .IssueID = CID_FIELDS
- .IssueType = RID_STR_WORD_ISSUE_FIELDS
- .SubType = RID_STR_WORD_SUBISSUE_APPEARANCE
- .Location = .CLocationDocument
-
- .IssueTypeXML = CSTR_ISSUE_FIELDS
- .SubTypeXML = CSTR_SUBISSUE_APPEARANCE
- .locationXML = .CXMLLocationDocument
-
- .Attributes.Add RID_STR_WORD_ATTRIBUTE_FORM_FIELD_GREYED
- .Values.Add RID_STR_WORD_TRUE
- mAnalysis.IssuesCountArray(CID_FIELDS) = _
- mAnalysis.IssuesCountArray(CID_FIELDS) + 1
- End With
- mAnalysis.Issues.Add myIssue
- Set myIssue = Nothing
- End If
-
- 'Analyse all FormFields in doc
- Dim myFormField As FormField
-
- For Each myFormField In currDoc.FormFields
- Analyze_FormFieldIssue myFormField
- Next myFormField
-
-FinalExit:
- Set myIssue = Nothing
- Set myFormField = Nothing
- Exit Sub
-
-HandleErrors:
-
- WriteDebug currentFunctionName & " : " & mAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-Sub Analyze_FormFieldIssue(myFormField As FormField)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "Analyze_FormFieldIssue"
- Dim myIssue As IssueInfo
- Dim bCheckBoxIssues As Boolean
- Dim bFormFieldIssues As Boolean
-
- bCheckBoxIssues = False
- If (myFormField.Type = wdFieldFormCheckBox) Then
- If myFormField.CheckBox.AutoSize Then
- bCheckBoxIssues = True
- End If
- End If
-
- bFormFieldIssues = bCheckBoxIssues
-
- If Not bFormFieldIssues Then GoTo FinalExit
-
- myFormField.Select
- Set myIssue = New IssueInfo
- With myIssue
- .IssueID = CID_FIELDS
- .IssueType = RID_STR_WORD_ISSUE_FIELDS
- .SubType = RID_STR_WORD_SUBISSUE_FORM_FIELD
- .Location = .CLocationPage
-
- .IssueTypeXML = CSTR_ISSUE_FIELDS
- .SubTypeXML = CSTR_SUBISSUE_FORM_FIELD
- .locationXML = .CXMLLocationPage
-
- .SubLocation = Selection.Information(wdActiveEndPageNumber)
- .Line = Selection.Information(wdFirstCharacterLineNumber)
- .column = Selection.Information(wdFirstCharacterColumnNumber)
- myIssue.Attributes.Add RID_STR_COMMON_ATTRIBUTE_TYPE
- myIssue.Values.Add getFormFieldTypeAsString(myFormField.Type)
- End With
-
- 'Checkbox Issues
- If (myFormField.Type = wdFieldFormCheckBox) Then
- 'AutoSize CheckBoxes
- If myFormField.CheckBox.AutoSize Then
- myIssue.Attributes.Add RID_STR_WORD_ATTRIBUTE_FORM_FIELD_AUTOSIZE
- myIssue.Values.Add RID_STR_WORD_TRUE
- End If
- End If
-
- 'TextInput Issues
- If myFormField.Type = wdFieldFormTextInput Then
- myIssue.Attributes.Add RID_STR_WORD_ATTRIBUTE_FORM_FIELD_TEXT_FORM_FIELD_TYPE
- myIssue.Values.Add getTextFormFieldTypeAsString(myFormField.TextInput.Type)
- Dim bLostType As Boolean
- bLostType = False
- If (myFormField.TextInput.Type = wdCalculationText) Or _
- (myFormField.TextInput.Type = wdCurrentDateText) Or _
- (myFormField.TextInput.Type = wdCurrentTimeText) Then
- AddIssueDetailsNote myIssue, 0, getTextFormFieldTypeAsString(myFormField.TextInput.Type) & _
- " " & RID_STR_WORD_NOTE_FORM_FIELD_TYPE_LOST
- bLostType = True
- End If
-
- If (myFormField.TextInput.Format <> "") Then
- myIssue.Attributes.Add getTextFormFieldFormatAsString(myFormField.TextInput.Type)
- myIssue.Values.Add myFormField.TextInput.Format
- End If
-
- 'Default text
- If (myFormField.TextInput.Default <> "") Then
- myIssue.Attributes.Add getTextFormFieldDefaultAsString(myFormField.TextInput.Type)
- myIssue.Values.Add myFormField.TextInput.Default
- End If
-
- 'Maximum text
- If (myFormField.TextInput.Width <> 0) Then
- myIssue.Attributes.Add RID_STR_WORD_ATTRIBUTE_FORM_FIELD_MAX_LENGTH
- myIssue.Values.Add myFormField.TextInput.Width
- End If
-
- 'Fill-in disabled
- If (myFormField.Enabled = False) And (Not bLostType) Then
- myIssue.Attributes.Add RID_STR_WORD_ATTRIBUTE_FORM_FIELD_FILLIN_ENABLED
- myIssue.Values.Add RID_STR_WORD_FALSE
- End If
- End If
-
- 'Help Key(F1)
- If (myFormField.OwnHelp And myFormField.HelpText <> "") Then
- myIssue.Attributes.Add RID_STR_WORD_ATTRIBUTE_FORM_FIELD_HELP_KEY_F1_OWN_TEXT
- myIssue.Values.Add myFormField.HelpText
- ElseIf ((Not myFormField.OwnHelp) And myFormField.HelpText <> "") Then
- myIssue.Attributes.Add RID_STR_WORD_ATTRIBUTE_FORM_FIELD_HELP_KEY_F1_AUTO_TEXT
- myIssue.Values.Add myFormField.HelpText
- End If
-
- 'StatusHelp
- If (myFormField.OwnStatus And myFormField.StatusText <> "") Then
- myIssue.Attributes.Add RID_STR_WORD_ATTRIBUTE_FORM_FIELD_STATUS_BAR_HELP_OWN_TEXT
- myIssue.Values.Add myFormField.StatusText
- ElseIf ((Not myFormField.OwnStatus) And myFormField.StatusText <> "") Then
- myIssue.Attributes.Add RID_STR_WORD_ATTRIBUTE_FORM_FIELD_STATUS_BAR_HELP_AUTO_TEXT
- myIssue.Values.Add myFormField.StatusText
- End If
-
- 'Macros
- If (myFormField.EntryMacro <> "") Then
- myIssue.Attributes.Add RID_STR_WORD_ATTRIBUTE_FORM_FIELD_ENTRY_MACRO
- myIssue.Values.Add myFormField.EntryMacro
- End If
- If (myFormField.ExitMacro <> "") Then
- myIssue.Attributes.Add RID_STR_WORD_ATTRIBUTE_FORM_FIELD_EXIT_MACRO
- myIssue.Values.Add myFormField.ExitMacro
- End If
- If (myFormField.EntryMacro <> "") Or (myFormField.ExitMacro <> "") Then
- mAnalysis.MacroNumFieldsUsingMacros = 1 + mAnalysis.MacroNumFieldsUsingMacros
- End If
-
- 'LockedField
- If (myFormField.Enabled = False) And (myFormField.Type <> wdFieldFormTextInput) Then
- myIssue.Attributes.Add RID_STR_WORD_ATTRIBUTE_FORM_FIELD_LOCKED
- myIssue.Values.Add RID_STR_WORD_TRUE
- End If
-
- mAnalysis.IssuesCountArray(CID_FIELDS) = _
- mAnalysis.IssuesCountArray(CID_FIELDS) + 1
-
- mAnalysis.Issues.Add myIssue
-
-FinalExit:
- Set myIssue = Nothing
- Exit Sub
-
-HandleErrors:
- 'Log first occurence for this doc
- If Not mbFormFieldErrorLogged Then
- WriteDebug currentFunctionName & " : " & mAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- mbFormFieldErrorLogged = True
- End If
- Resume FinalExit
-End Sub
-
-
-Sub Analyze_TOA(currDoc As Document)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "Analyze_TOA"
-
- Dim toa As TableOfAuthorities
- Dim myIssue As IssueInfo
- Dim myRng As Range
-
- For Each toa In currDoc.TablesOfAuthorities
- Set myRng = toa.Range
- myRng.start = myRng.End
- Set myIssue = New IssueInfo
- myRng.Select
-
- Dim TabLeaderAsString As String
- Select Case toa.TabLeader
- Case wdTabLeaderDashes
- TabLeaderAsString = RID_STR_WORD_ENUMERATION_INDEX_LEADER_DASHES
- Case wdTabLeaderDots
- TabLeaderAsString = RID_STR_WORD_ENUMERATION_INDEX_LEADER_DOTS
- Case wdTabLeaderHeavy
- TabLeaderAsString = RID_STR_WORD_ENUMERATION_INDEX_LEADER_HEAVY
- Case wdTabLeaderLines
- TabLeaderAsString = RID_STR_WORD_ENUMERATION_INDEX_LEADER_LINES
- Case wdTabLeaderMiddleDot
- TabLeaderAsString = RID_STR_WORD_ENUMERATION_INDEX_LEADER_MIDDLEDOT
- Case wdTabLeaderSpaces
- TabLeaderAsString = RID_STR_WORD_ENUMERATION_INDEX_LEADER_SPACES
- Case Else
- TabLeaderAsString = RID_STR_WORD_ENUMERATION_UNKNOWN
- End Select
-
- Dim FormatAsString As String
- Select Case currDoc.TablesOfAuthorities.Format
- Case wdTOAClassic
- FormatAsString = RID_STR_WORD_ENUMERATION_INDEX_TABLES_CLASSIC
- Case wdTOADistinctive
- FormatAsString = RID_STR_WORD_ENUMERATION_INDEX_TABLES_DISTINCTIVE
- Case wdTOAFormal
- FormatAsString = RID_STR_WORD_ENUMERATION_INDEX_TABLES_FORMAL
- Case wdTOASimple
- FormatAsString = RID_STR_WORD_ENUMERATION_INDEX_TABLES_SIMPLE
- Case wdTOATemplate
- FormatAsString = RID_STR_WORD_ENUMERATION_INDEX_TABLES_FROM_TEMPLATE
- Case Else
- FormatAsString = RID_STR_WORD_ENUMERATION_UNKNOWN
- End Select
-
- With myIssue
- .IssueID = CID_INDEX_AND_REFERENCES
- .IssueType = RID_STR_WORD_ISSUE_INDEX_AND_REFERENCES
- .SubType = RID_STR_WORD_SUBISSUE_TABLE_OF_AUTHORITIES
- .Location = .CLocationPage
-
- .IssueTypeXML = CSTR_ISSUE_INDEX_AND_REFERENCES
- .SubTypeXML = CSTR_SUBISSUE_TABLE_OF_AUTHORITIES
- .locationXML = .CXMLLocationPage
-
- .SubLocation = myRng.Information(wdActiveEndPageNumber)
- .Attributes.Add RID_STR_WORD_ATTRIBUTE_LEADER
- .Values.Add TabLeaderAsString
-
- AddIssueDetailsNote myIssue, 0, RID_STR_WORD_NOTE_TOA_MIGRATE_AS_PLAIN_TEXT
-
- mAnalysis.IssuesCountArray(CID_INDEX_AND_REFERENCES) = _
- mAnalysis.IssuesCountArray(CID_INDEX_AND_REFERENCES) + 1
- End With
-
- mAnalysis.Issues.Add myIssue
- Set myIssue = Nothing
- Set myRng = Nothing
- Next
-FinalExit:
- Set myIssue = Nothing
- Set myRng = Nothing
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & " : " & mAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-Sub Analyze_TOAField(myField As Field)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "Analyze_TOAField"
-
- Dim toa As TableOfAuthorities
- Dim myIssue As IssueInfo
-
- If myField.Type = wdFieldTOAEntry Then
- Set myIssue = New IssueInfo
- myField.Select
-
- With myIssue
- .IssueID = CID_FIELDS
- .IssueType = RID_STR_WORD_ISSUE_FIELDS
- .SubType = RID_STR_WORD_SUBISSUE_TABLE_OF_AUTHORITIES_FIELD
- .Location = .CLocationPage
-
- .IssueTypeXML = CSTR_ISSUE_FIELDS
- .SubTypeXML = CSTR_SUBISSUE_TABLE_OF_AUTHORITIES_FIELD
- .locationXML = .CXMLLocationPage
-
- .SubLocation = Selection.Information(wdActiveEndPageNumber)
- .Line = Selection.Information(wdFirstCharacterLineNumber)
- .column = Selection.Information(wdFirstCharacterColumnNumber)
-
- .Attributes.Add RID_STR_WORD_ATTRIBUTE_FIELD_TEXT
- .Values.Add myField.Code.Text
-
- AddIssueDetailsNote myIssue, 0, RID_STR_WORD_NOTE_TOA_FIELD_LOST_ON_ROUNDTRIP
-
- mAnalysis.IssuesCountArray(CID_FIELDS) = _
- mAnalysis.IssuesCountArray(CID_FIELDS) + 1
- End With
-
- mAnalysis.Issues.Add myIssue
- Set myIssue = Nothing
- End If
-
-FinalExit:
- Set myIssue = Nothing
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & " : " & mAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-Sub Analyze_Tables_Borders(currDoc As Document)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "Analyze_Tables_Borders"
- Dim myIssue As IssueInfo
- Set myIssue = New IssueInfo
- Dim aTable As Table
- Dim invalidBorders As String
-
- For Each aTable In currDoc.Tables
- invalidBorders = GetInvalidBorder(aTable)
- If invalidBorders <> "" Then
- aTable.Range.Select
- Set myIssue = New IssueInfo
- With myIssue
- .IssueID = CID_TABLES
- .IssueType = RID_STR_WORD_ISSUE_TABLES
- .SubType = RID_STR_WORD_SUBISSUE_BORDER_STYLES
- .Location = .CLocationPage
-
- .IssueTypeXML = CSTR_ISSUE_TABLES
- .SubTypeXML = CSTR_SUBISSUE_BORDER_STYLES
- .locationXML = .CXMLLocationPage
-
- .SubLocation = Selection.Information(wdActiveEndPageNumber)
- .Line = Selection.Information(wdFirstCharacterLineNumber)
- .column = Selection.Information(wdFirstCharacterColumnNumber)
-
- .Attributes.Add RID_STR_WORD_ATTRIBUTE_BORDERS_NOT_DISPLAYING
- .Values.Add invalidBorders
-
- AddIssueDetailsNote myIssue, 0, RID_STR_WORD_NOTE_TABLE_BORDER
-
- mAnalysis.IssuesCountArray(CID_TABLES) = mAnalysis.IssuesCountArray(CID_TABLES) + 1
- End With
-
- mAnalysis.Issues.Add myIssue
- Set myIssue = Nothing
- End If
- Next aTable
-FinalExit:
- Set myIssue = Nothing
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & " : " & mAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-Function GetInvalidBorder(aTable As Table) As String
-
- Dim theResult As String
- theResult = ""
-
- If IsInvalidBorderStyle(aTable.Borders(wdBorderTop).LineStyle) Then
- theResult = theResult + "Top, "
- End If
- If IsInvalidBorderStyle(aTable.Borders(wdBorderBottom).LineStyle) Then
- theResult = theResult + "Bottom, "
- End If
- If IsInvalidBorderStyle(aTable.Borders(wdBorderDiagonalDown).LineStyle) Then
- theResult = theResult + "Down Diagonal, "
- End If
- If IsInvalidBorderStyle(aTable.Borders(wdBorderDiagonalUp).LineStyle) Then
- theResult = theResult + "Up Diagonal, "
-
- End If
- If IsInvalidBorderStyle(aTable.Borders(wdBorderHorizontal).LineStyle) Then
- theResult = theResult + "Horizontal, "
- End If
- If IsInvalidBorderStyle(aTable.Borders(wdBorderLeft).LineStyle) Then
- theResult = theResult + "Left, "
- End If
- If IsInvalidBorderStyle(aTable.Borders(wdBorderRight).LineStyle) Then
- theResult = theResult + "Right, "
- End If
- If IsInvalidBorderStyle(aTable.Borders(wdBorderVertical).LineStyle) Then
- theResult = theResult + "Vertical, "
- End If
-
- If theResult <> "" Then
- theResult = Left(theResult, (Len(theResult) - 2)) + "."
- End If
-
- GetInvalidBorder = theResult
-End Function
-
-Function IsInvalidBorderStyle(aStyle As WdLineStyle) As Boolean
-
- Dim IsInvalid As Boolean
-
- Select Case aStyle
- Case wdLineStyleDot, wdLineStyleDashSmallGap, wdLineStyleDashLargeGap, wdLineStyleDashDot, _
- wdLineStyleDashDotDot, wdLineStyleTriple, wdLineStyleThinThickThinSmallGap, wdLineStyleThinThickMedGap, _
- wdLineStyleThickThinMedGap, wdLineStyleThinThickThinMedGap, wdLineStyleThinThickLargeGap, _
- wdLineStyleThickThinLargeGap, wdLineStyleThinThickThinLargeGap, wdLineStyleSingleWavy, _
- wdLineStyleDoubleWavy, wdLineStyleDashDotStroked, wdLineStyleEmboss3D, wdLineStyleEngrave3D
- IsInvalid = True
- Case Else
- IsInvalid = False
- End Select
-
- IsInvalidBorderStyle = IsInvalid
-
-End Function
-
-Private Sub Class_Initialize()
- Set mAnalysis = New DocumentAnalysis
-End Sub
-Private Sub Class_Terminate()
- Set mAnalysis = Nothing
-End Sub
-
-Public Property Get Results() As DocumentAnalysis
- Set Results = mAnalysis
-End Property
-
-Sub Analyze_NumberingTabs(currDoc As Document, docAnalysis As DocumentAnalysis)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "Analyze_NumberingTabs"
-
- Dim tb As TabStop
- Dim customTabPos As Single
- Dim tabs As Integer
- Dim listLvl As Long
- Dim tp As Single
- Dim bHasAlignmentProblem As Boolean
- Dim bHasTooManyTabs As Boolean
- Dim myIssue As IssueInfo
- Dim p As Object
-
- bHasAlignmentProblem = False
- bHasTooManyTabs = False
-
- For Each p In currDoc.ListParagraphs
- tabs = 0
- For Each tb In p.TabStops
- If tb.customTab Then
- tabs = tabs + 1
- customTabPos = tb.Position
- End If
- Next
-
- If tabs = 1 Then
- listLvl = p.Range.ListFormat.ListLevelNumber
- tp = p.Range.ListFormat.ListTemplate.ListLevels.item(listLvl).TabPosition
- If (p.Range.ListFormat.ListTemplate.ListLevels.item(listLvl).Alignment <> _
- wdListLevelAlignLeft) Then
- ' ERROR: alignment problem
- bHasAlignmentProblem = True
- End If
-
- If tp <> customTabPos Then
- p.Range.InsertBefore ("XXXXX")
- End If
- 'OK - at least heuristically
- Else
- 'ERROR: too many tabs
- bHasTooManyTabs = True
- End If
- Next
-
- If (bHasAlignmentProblem) Then
- Set myIssue = New IssueInfo
-
- With myIssue
- .IssueID = CID_INDEX_AND_REFERENCES
- .IssueType = RID_STR_WORD_ISSUE_INDEX_AND_REFERENCES
- .SubType = RID_STR_WORD_SUBISSUE_NUMBERING_TAB_ALIGNMENT
- .Location = .CLocationDocument 'Location string
-
- .IssueTypeXML = CSTR_ISSUE_INDEX_AND_REFERENCES
- .SubTypeXML = CSTR_SUBISSUE_NUMBERING_TAB_ALIGNMENT
- .locationXML = .CXMLLocationDocument
-
- AddIssueDetailsNote myIssue, 0, RID_STR_WORD_NOTE_NUMBERING_TAB_ALIGNMENT
-
- docAnalysis.IssuesCountArray(CID_INDEX_AND_REFERENCES) = _
- docAnalysis.IssuesCountArray(CID_INDEX_AND_REFERENCES) + 1
- End With
- docAnalysis.Issues.Add myIssue
- Set myIssue = Nothing
- End If
-
- If (bHasTooManyTabs) Then
- Set myIssue = New IssueInfo
-
- With myIssue
- .IssueID = CID_INDEX_AND_REFERENCES
- .IssueType = RID_STR_WORD_ISSUE_INDEX_AND_REFERENCES
- .SubType = RID_STR_WORD_SUBISSUE_NUMBERING_TAB_OVERFLOW
- .Location = .CLocationDocument 'Location string
-
- .IssueTypeXML = CSTR_ISSUE_INDEX_AND_REFERENCES
- .SubTypeXML = CSTR_SUBISSUE_NUMBERING_TAB_OVERFLOW
- .locationXML = .CXMLLocationDocument
-
- AddIssueDetailsNote myIssue, 0, RID_STR_WORD_NOTE_NUMBERING_TAB_OVERFLOW
-
- docAnalysis.IssuesCountArray(CID_INDEX_AND_REFERENCES) = _
- docAnalysis.IssuesCountArray(CID_INDEX_AND_REFERENCES) + 1
- End With
- docAnalysis.Issues.Add myIssue
- Set myIssue = Nothing
- End If
-
-FinalExit:
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & " : " & mAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- Set myIssue = Nothing
- Resume FinalExit
-End Sub
-
-Sub Analyze_Numbering(currDoc As Document, docAnalysis As DocumentAnalysis)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "Analyze_Numbering"
-
- Dim myIssue As IssueInfo
- Dim nFormatProblems As Integer
- Dim nAlignmentProblems As Integer
- nFormatProblems = 0
- nAlignmentProblems = 0
-
- Dim lt As ListTemplate
- Dim lvl As ListLevel
- Dim I, l_, p1, p2, v1, v2 As Integer
- Dim display_levels As Integer
- Dim fmt, prefix, postfix, res As String
-
- For Each lt In currDoc.ListTemplates
- l_ = 0
- For Each lvl In lt.ListLevels
- l_ = l_ + 1
- 'Selection.TypeText Text:="List Number Format " + lvl.NumberFormat
- 'Apply Heuristic
- fmt = lvl.NumberFormat
- p1 = InStr(fmt, "%")
- p2 = InStrRev(fmt, "%")
- v1 = val(Mid(fmt, p1 + 1, 1))
- v2 = val(Mid(fmt, p2 + 1, 1))
- display_levels = v2 - v1 + 1
- prefix = Mid(fmt, 1, p1 - 1)
- postfix = Mid(fmt, p2 + 2)
- 'Check Heuristic
- res = prefix
- For I = 2 To display_levels
- res = "%" + Trim(Str(l_ - I + 1)) + "." + res
- Next
- res = res + "%" + Trim(Str(l_)) + postfix
- If (StrComp(res, fmt) <> 0) Then
- nFormatProblems = nFormatProblems + 1
- 'Selection.TypeText Text:="Label Problem: NumberFormat=" + fmt + " Heuristic=" + res
- End If
-
- 'check alignment
- If (lvl.NumberPosition <> wdListLevelAlignLeft) Then
- nAlignmentProblems = nAlignmentProblems + 1
- 'Selection.TypeText Text:="Number alignment problem"
- End If
- Next
- Next
-
- If (nFormatProblems > 0) Then
- Set myIssue = New IssueInfo
-
- With myIssue
- .IssueID = CID_INDEX_AND_REFERENCES
- .IssueType = RID_STR_WORD_ISSUE_INDEX_AND_REFERENCES
- .SubType = RID_STR_WORD_SUBISSUE_NUMBERING_FORMAT
- .Location = .CLocationDocument 'Location string
-
- .IssueTypeXML = CSTR_ISSUE_INDEX_AND_REFERENCES
- .SubTypeXML = CSTR_SUBISSUE_NUMBERING_FORMAT
- .locationXML = .CXMLLocationDocument
-
- .Attributes.Add RID_STR_WORD_ATTRIBUTE_COUNT
- .Values.Add nFormatProblems
-
- AddIssueDetailsNote myIssue, 0, RID_STR_WORD_NOTE_NUMBERING_FORMAT
-
- docAnalysis.IssuesCountArray(CID_INDEX_AND_REFERENCES) = _
- docAnalysis.IssuesCountArray(CID_INDEX_AND_REFERENCES) + 1
- End With
- docAnalysis.Issues.Add myIssue
- Set myIssue = Nothing
- End If
-
- If (nAlignmentProblems > 0) Then
- Set myIssue = New IssueInfo
-
- With myIssue
- .IssueID = CID_INDEX_AND_REFERENCES
- .IssueType = RID_STR_WORD_ISSUE_INDEX_AND_REFERENCES
- .SubType = RID_STR_WORD_SUBISSUE_NUMBERING_ALIGNMENT
- .Location = .CLocationDocument 'Location string
-
- .IssueTypeXML = CSTR_ISSUE_INDEX_AND_REFERENCES
- .SubTypeXML = CSTR_SUBISSUE_NUMBERING_ALIGNMENT
- .locationXML = .CXMLLocationDocument
-
- .Attributes.Add RID_STR_WORD_ATTRIBUTE_COUNT
- .Values.Add nAlignmentProblems
-
- AddIssueDetailsNote myIssue, 0, RID_STR_WORD_NOTE_NUMBERING_ALIGNMENT
-
- docAnalysis.IssuesCountArray(CID_INDEX_AND_REFERENCES) = _
- docAnalysis.IssuesCountArray(CID_INDEX_AND_REFERENCES) + 1
- End With
- docAnalysis.Issues.Add myIssue
- Set myIssue = Nothing
- End If
-
-FinalExit:
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & " : " & mAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
- Set myIssue = Nothing
- Resume FinalExit
-End Sub
-
+VERSION 1.0 CLASS
+BEGIN
+ MultiUse = -1 'True
+END
+Attribute VB_Name = "MigrationAnalyser"
+Attribute VB_GlobalNameSpace = False
+Attribute VB_Creatable = False
+Attribute VB_PredeclaredId = False
+Attribute VB_Exposed = False
+'*************************************************************************
+'
+' Licensed to the Apache Software Foundation (ASF) under one
+' or more contributor license agreements. See the NOTICE file
+' distributed with this work for additional information
+' regarding copyright ownership. The ASF licenses this file
+' to you under the Apache License, Version 2.0 (the
+' "License"); you may not use this file except in compliance
+' with the License. You may obtain a copy of the License at
+'
+' http://www.apache.org/licenses/LICENSE-2.0
+'
+' Unless required by applicable law or agreed to in writing,
+' software distributed under the License is distributed on an
+' "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+' KIND, either express or implied. See the License for the
+' specific language governing permissions and limitations
+' under the License.
+'
+'*************************************************************************
+
+Option Explicit
+
+'Class variables
+Private Enum HFIssueType
+ hfInline
+ hfShape
+ hfFrame
+End Enum
+
+Private Enum HFIssueLocation
+ hfHeader
+ hffooter
+End Enum
+
+
+Private Type ShapeInfo
+ top As Single
+ Height As Single
+End Type
+
+Private Type FrameInfo
+ Height As Single
+ VerticalPosition As Single
+End Type
+
+Private mAnalysis As DocumentAnalysis
+Private mOdd As Boolean
+Private mbFormFieldErrorLogged As Boolean
+Private mbRefFormFieldErrorLogged As Boolean
+
+'***ADDING-ISSUE: Use Following Skeleton as Guideline for Adding Issue
+' For complete list of all RID_STR_... for Issues (IssueType), SubIssues (SubType) and Attributes refer to:
+' word_res.bas and common_res.bas
+'
+' For complete list of all CID_... for Issue Categories(IssueID) and
+' CSTR_... for XML Issues (IssueTypeXML) and XML SubIssues (SubTypeXML) refer to:
+' ApplicationSpecific.bas and CommonMigrationAnalyser.bas
+'
+' You should not have to add any new Issue Categories or matching IssueTypes, only new SubIssues
+Sub Analyze_SKELETON()
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "Analyze_SKELETON"
+ Dim myIssue As IssueInfo
+ Set myIssue = New IssueInfo
+
+ With myIssue
+ .IssueID = CID_VBA_MACROS 'Issue Category
+ .IssueType = RID_STR_COMMON_ISSUE_VBA_MACROS 'Issue String
+ .SubType = RID_STR_COMMON_SUBISSUE_PROPERTIES 'SubIssue String
+ .Location = .CLocationDocument 'Location string
+
+ .IssueTypeXML = CSTR_ISSUE_VBA_MACROS 'Non localised XML Issue String
+ .SubTypeXML = CSTR_SUBISSUE_PROPERTIES 'Non localised XML SubIssue String
+ .locationXML = .CXMLLocationDocument 'Non localised XML location
+
+ .SubLocation = 0 'if not set will default to RID_STR_NOT_AVAILABLE_SHORTHAND
+ .Line = 0 'if not set will default to RID_STR_NOT_AVAILABLE_SHORTHAND
+ .column = 0 'if not set will default to RID_STR_NOT_AVAILABLE_SHORTHAND
+
+ ' Add as many Attribute Value pairs as needed
+ ' Note: following must always be true - Attributes.Count = Values.Count
+ .Attributes.Add "AAA"
+ .Values.Add "foobar"
+
+ ' Use AddIssueDetailsNote to add notes to the Issue Details if required
+ ' Public Sub AddIssueDetailsNote(myIssue As IssueInfo, noteNum As Long, noteStr As String, _
+ ' Optional preStr As String = RID_STR_COMMON_NOTE_PRE)
+ ' Where preStr is prepended to the output, with "Note" as the default
+ AddIssueDetailsNote myIssue, 0, RID_STR_COMMON_NOTE_DOCUMENT_PROPERTIES_LOST
+
+ 'Only put this in if you have a preparation function added for this issue in CommonPreparation
+ 'or Preparation - NUll can be replaced with any variant if you want to pass info to the Prepare fnc
+ Call DoPreparation(mAnalysis, myIssue, "", Null, Null)
+
+ mAnalysis.IssuesCountArray(CID_VBA_MACROS) = _
+ mAnalysis.IssuesCountArray(CID_VBA_MACROS) + 1
+ End With
+
+ mAnalysis.Issues.Add myIssue
+
+FinalExit:
+ Set myIssue = Nothing
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : " & mAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+Sub DoAnalyse(fileName As String, userFormTypesDict As Scripting.Dictionary, _
+ startDir As String, storeToDir As String, fso As FileSystemObject)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "DoAnalyse"
+ mAnalysis.name = fileName
+ Dim aDoc As Document
+ Dim bUnprotectError As Boolean
+ mAnalysis.TotalIssueTypes = CTOTAL_CATEGORIES
+ mbFormFieldErrorLogged = False
+ mbRefFormFieldErrorLogged = False
+
+ 'Turn off any AutoExce macros before loading the Word doc
+ On Error Resume Next ' Ignore errors on setting
+ WordBasic.DisableAutoMacros 1
+ On Error GoTo HandleErrors
+
+ Dim myPassword As String
+ myPassword = GetDefaultPassword
+
+ 'Always skip password protected documents
+ 'If IsSkipPasswordDocs() Then
+ Dim aPass As String
+ If myPassword <> "" Then
+ aPass = myPassword
+ Else
+ aPass = "xoxoxoxoxo"
+ End If
+
+ On Error Resume Next
+ Set aDoc = Documents.Open(fileName, False, False, False, _
+ aPass, aPass, False, aPass, aPass, wdOpenFormatAuto, _
+ msoEncodingAutoDetect, False)
+ If Err.Number = 5408 Then
+ ' if password protected, try open readonly next
+ Set aDoc = Documents.Open(fileName, False, True, False, _
+ aPass, aPass, False, aPass, aPass, wdOpenFormatAuto, _
+ msoEncodingAutoDetect, False)
+ End If
+ If Err.Number = 5408 Then
+ HandleProtectedDocInvalidPassword mAnalysis, _
+ "User entered Invalid Document Password, further analysis not possible", fso
+ Analyze_Password_Protection True, False
+ GoTo FinalExit
+ ElseIf (Err.Number <> 0) Then
+ GoTo HandleErrors
+ End If
+
+ On Error GoTo HandleErrors
+
+ If aDoc Is Nothing Then GoTo FinalExit
+
+ 'Do Analysis
+ Analyze_Password_Protection aDoc.HasPassword, aDoc.WriteReserved
+ Analyze_Document_Protection aDoc
+
+ If aDoc.ProtectionType <> wdNoProtection Then
+ If myPassword <> "" Then
+ aDoc.Unprotect (myPassword)
+ Else
+ aDoc.Unprotect
+ End If
+ End If
+
+ 'Set Doc Properties
+ SetDocProperties mAnalysis, aDoc, fso
+
+ContinueFromUnprotectError:
+
+ Analyze_Tables_TablesInTables aDoc
+ Analyze_Tables_Borders aDoc
+ Analyze_TOA aDoc
+ If Not bUnprotectError Then
+ Analyze_FieldAndFormFieldIssues aDoc
+ End If
+ Analyze_OLEEmbedded aDoc
+ Analyze_MailMerge_DataSource aDoc
+ Analyze_Macros mAnalysis, userFormTypesDict, aDoc
+ 'Analyze_Numbering aDoc, mAnalysis
+ 'Analyze_NumberingTabs aDoc, mAnalysis
+
+ ' Doc Preparation only
+ ' Save document with any prepared issues under <storeToDir>\prepared\<source doc name>
+ If mAnalysis.PreparableIssuesCount > 0 And CheckDoPrepare Then
+ Dim preparedFullPath As String
+ preparedFullPath = GetPreparedFullPath(mAnalysis.name, startDir, storeToDir, fso)
+ If preparedFullPath <> "" Then
+ If fso.FileExists(preparedFullPath) Then
+ fso.DeleteFile preparedFullPath, True
+ End If
+ If fso.FolderExists(fso.GetParentFolderName(preparedFullPath)) Then
+ aDoc.SaveAs preparedFullPath
+ End If
+ End If
+ End If
+
+ 'DebugMacroInfo
+
+FinalExit:
+
+
+ If Not aDoc Is Nothing Then 'If Not IsEmpty(aDoc) Then
+ aDoc.Close (False)
+ End If
+ Set aDoc = Nothing
+
+ Exit Sub
+
+HandleErrors:
+ ' MsgBox currentFunctionName & " : " & fileName & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ ' Handle Password error on Doc Open, Modify and Cancel
+ If Err.Number = 5408 Or Err.Number = 4198 Then
+ WriteDebug currentFunctionName & " : " & fileName & ": " & _
+ "User entered Invalid Document Password - " & Err.Number & " " & Err.Description & " " & Err.Source
+ HandleProtectedDocInvalidPassword mAnalysis, _
+ "User entered Invalid Document Password, further analysis not possible", fso
+ Resume FinalExit
+ ElseIf Err.Number = 5485 Then
+ ' Handle Password error on Unprotect Doc
+ WriteDebug currentFunctionName & " : " & fileName & ": " & _
+ "User entered Invalid Document Part Password, Analysis of doc will continue but will skip analysis of:" & _
+ "Forms, Comments, Headers & Footers and Table cell spanning issues - " & Err.Number & " " & Err.Description & " " & Err.Source
+ HandleProtectedDocInvalidPassword mAnalysis, _
+ "User entered Invalid Document Part Password, Analysis of doc will continue but will skip analysis of:" & vbLf & _
+ "Forms, Comments, Headers & Footers and Table cell spanning issues", fso
+ bUnprotectError = True
+ 'wdAllowOnlyComments, wdAllowOnlyFormFields, wdAllowOnlyRevisions
+ Resume ContinueFromUnprotectError
+ End If
+ mAnalysis.Application = RID_STR_COMMON_CANNOT_OPEN
+ WriteDebug currentFunctionName & " : " & fileName & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+Sub DebugMacroInfo()
+ MsgBox "TotalNumLines: " & mAnalysis.MacroTotalNumLines & vbLf & _
+ "NumUserForms: " & mAnalysis.MacroNumUserForms & vbLf & _
+ "NumUserFormControls: " & mAnalysis.MacroNumUserFormControls & vbLf & _
+ "NumUserFormControlTypes: " & mAnalysis.MacroNumUserFormControlTypes & vbLf & _
+ "NumExternalRefs: " & mAnalysis.MacroNumExternalRefs & vbLf & _
+ "MacroNumFieldsUsingMacros: " & mAnalysis.MacroNumFieldsUsingMacros & vbLf & _
+ "NumOLEControls: " & mAnalysis.MacroNumOLEControls & vbLf & _
+ "MacroOverallClass: " & getDocOverallMacroClassAsString(mAnalysis.MacroOverallClass)
+End Sub
+
+Sub SetDocProperties(docAnalysis As DocumentAnalysis, doc As Document, fso As FileSystemObject)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "SetProperties"
+ Dim f As File
+ Set f = fso.GetFile(docAnalysis.name)
+
+ docAnalysis.PageCount = doc.ComputeStatistics(wdStatisticPages)
+ docAnalysis.Accessed = f.DateLastAccessed
+
+ On Error Resume Next 'Some apps may not support all props
+ docAnalysis.Application = getAppSpecificApplicationName & " " & Application.Version
+ 'docAnalysis.Application = doc.BuiltinDocumentProperties(wdPropertyAppName)
+ 'If InStr(docAnalysis.Application, "Microsoft") = 1 Then
+ ' docAnalysis.Application = Mid(docAnalysis.Application, Len("Microsoft") + 2)
+ 'End If
+ 'If InStr(Len(docAnalysis.Application) - 2, docAnalysis.Application, ".") = 0 Then
+ ' docAnalysis.Application = docAnalysis.Application & " " & Application.Version
+ 'End If
+
+ docAnalysis.Created = _
+ doc.BuiltInDocumentProperties(wdPropertyTimeCreated)
+ docAnalysis.Modified = _
+ doc.BuiltInDocumentProperties(wdPropertyTimeLastSaved)
+ docAnalysis.Printed = _
+ doc.BuiltInDocumentProperties(wdPropertyTimeLastPrinted)
+ docAnalysis.SavedBy = _
+ doc.BuiltInDocumentProperties(wdPropertyLastAuthor)
+ docAnalysis.Revision = _
+ val(doc.BuiltInDocumentProperties(wdPropertyRevision))
+ docAnalysis.Template = _
+ fso.GetFileName(doc.BuiltInDocumentProperties(wdPropertyTemplate))
+
+FinalExit:
+ Set f = Nothing
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : " & mAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+'Limitation: Detect first level table in tables, does not detect further nesting
+'Can do so if required
+Sub Analyze_Tables_TablesInTables(currDoc As Document)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "Analyze_Tables_TablesInTables"
+ Dim myTopTable As Table
+ Dim myInnerTable As Table
+ Dim myIssue As IssueInfo
+
+ For Each myTopTable In currDoc.Tables
+ For Each myInnerTable In myTopTable.Tables
+ Dim logString As String
+ Dim myRng As Range
+ Dim startpage As Long
+ Dim startRow As Long
+ Dim StartColumn As Long
+ Dim details As String
+
+ Set myIssue = New IssueInfo
+ Set myRng = myInnerTable.Range
+ myRng.start = myRng.End
+ startpage = myRng.Information(wdActiveEndPageNumber)
+ startRow = myRng.Information(wdStartOfRangeRowNumber)
+ StartColumn = myRng.Information(wdStartOfRangeColumnNumber)
+
+ With myIssue
+ .IssueID = CID_TABLES
+ .IssueType = RID_STR_WORD_ISSUE_TABLES
+ .SubType = RID_STR_WORD_SUBISSUE_NESTED_TABLES
+ .Location = .CLocationPage
+ .SubLocation = startpage
+
+ .IssueTypeXML = CSTR_ISSUE_TABLES
+ .SubTypeXML = CSTR_SUBISSUE_NESTED_TABLES
+ .locationXML = .CXMLLocationPage
+
+ .Attributes.Add RID_STR_WORD_ATTRIBUTE_OUTER_TABLE
+ .Values.Add myTopTable.Rows.count & "x" & myTopTable.Columns.count
+ .Attributes.Add RID_STR_WORD_ATTRIBUTE_INNER_TABLE
+ .Values.Add myInnerTable.Rows.count & "x" & myInnerTable.Columns.count
+ .Attributes.Add RID_STR_WORD_ATTRIBUTE_START_ROW
+ .Values.Add startRow
+ .Attributes.Add RID_STR_WORD_ATTRIBUTE_START_COL
+ .Values.Add StartColumn
+ AddIssueDetailsNote myIssue, 0, RID_STR_WORD_NOTE_NESTED_TABLE_WILL_BE_LOST
+
+ mAnalysis.IssuesCountArray(CID_TABLES) = _
+ mAnalysis.IssuesCountArray(CID_TABLES) + 1
+ End With
+
+ mAnalysis.Issues.Add myIssue
+ Set myIssue = Nothing
+ Set myRng = Nothing
+ Next
+ Next
+ Exit Sub
+HandleErrors:
+ WriteDebug currentFunctionName & " : " & mAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+End Sub
+
+Sub Analyze_Document_Protection(currDoc As Document)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "Analyze_Document_Protection"
+ If currDoc.ProtectionType = wdNoProtection Then
+ Exit Sub
+ End If
+
+ Dim myIssue As IssueInfo
+ Set myIssue = New IssueInfo
+
+ With myIssue
+ .IssueID = CID_CONTENT_AND_DOCUMENT_PROPERTIES
+ .IssueType = RID_STR_COMMON_ISSUE_CONTENT_AND_DOCUMENT_PROPERTIES
+ .SubType = RID_STR_COMMON_SUBISSUE_DOCUMENT_PARTS_PROTECTION
+ .Location = .CLocationDocument
+
+ .IssueTypeXML = CSTR_ISSUE_CONTENT_DOCUMENT_PROPERTIES
+ .SubTypeXML = CSTR_SUBISSUE_DOCUMENT_PARTS_PROTECTION
+ .locationXML = .CXMLLocationDocument
+
+ .Attributes.Add RID_STR_WORD_ATTRIBUTE_PROTECTION
+ Select Case currDoc.ProtectionType
+ Case wdAllowOnlyComments
+ .Values.Add RID_STR_WORD_ATTRIBUTE_ALLOW_ONLY_COMMENTS
+ Case wdAllowOnlyFormFields
+ .Values.Add RID_STR_WORD_ATTRIBUTE_ALLOW_ONLY_FORM_FIELDS
+ Case wdAllowOnlyRevisions
+ .Values.Add RID_STR_WORD_ATTRIBUTE_ALLOW_ONLY_REVISIONS
+ Case Else
+ .Values.Add RID_STR_COMMON_ATTRIBUTE_UNKNOWN
+ End Select
+
+ mAnalysis.IssuesCountArray(CID_CONTENT_AND_DOCUMENT_PROPERTIES) = _
+ mAnalysis.IssuesCountArray(CID_CONTENT_AND_DOCUMENT_PROPERTIES) + 1
+ End With
+
+ mAnalysis.Issues.Add myIssue
+FinalExit:
+ Set myIssue = Nothing
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : " & mAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+Sub Analyze_Password_Protection(bHasPassword As Boolean, bWriteReserved As Boolean)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "Analyze_Password_Protection"
+ Dim myIssue As IssueInfo
+
+ If bHasPassword Or bWriteReserved Then
+ Set myIssue = New IssueInfo
+
+ With myIssue
+ .IssueID = CID_CONTENT_AND_DOCUMENT_PROPERTIES
+ .IssueType = RID_STR_COMMON_ISSUE_CONTENT_AND_DOCUMENT_PROPERTIES
+ .SubType = RID_STR_COMMON_SUBISSUE_PASSWORDS_PROTECTION
+ .Location = .CLocationDocument
+
+ .IssueTypeXML = CSTR_ISSUE_CONTENT_DOCUMENT_PROPERTIES
+ .SubTypeXML = CSTR_SUBISSUE_PASSWORDS_PROTECTION
+ .locationXML = .CXMLLocationDocument
+
+ If bHasPassword Then
+ .Attributes.Add RID_STR_WORD_ATTRIBUTE_PASSWORD_TO_OPEN
+ .Values.Add RID_STR_WORD_ATTRIBUTE_SET
+ End If
+ If bWriteReserved Then
+ .Attributes.Add RID_STR_WORD_ATTRIBUTE_PASSWORD_TO_MODIFY
+ .Values.Add RID_STR_WORD_ATTRIBUTE_SET
+ End If
+
+ mAnalysis.IssuesCountArray(CID_CONTENT_AND_DOCUMENT_PROPERTIES) = _
+ mAnalysis.IssuesCountArray(CID_CONTENT_AND_DOCUMENT_PROPERTIES) + 1
+ End With
+
+ mAnalysis.Issues.Add myIssue
+ End If
+FinalExit:
+ Set myIssue = Nothing
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : " & mAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+Sub Analyze_OLEEmbedded(currDoc As Document)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "Analyze_OLEEmbedded"
+
+ ' Handle Inline Shapes
+ Dim aILShape As InlineShape
+ For Each aILShape In currDoc.InlineShapes
+ Analyze_OLEEmbeddedSingleInlineShape aILShape
+ Next aILShape
+
+ ' Handle Shapes
+ Dim aShape As Shape
+ For Each aShape In currDoc.Shapes
+ Analyze_OLEEmbeddedSingleShape mAnalysis, aShape, _
+ Selection.Information(wdActiveEndPageNumber)
+ Analyze_Lines mAnalysis, aShape, _
+ Selection.Information(wdActiveEndPageNumber)
+ Analyze_Transparency mAnalysis, aShape, _
+ Selection.Information(wdActiveEndPageNumber)
+ Analyze_Gradients mAnalysis, aShape, _
+ Selection.Information(wdActiveEndPageNumber)
+ Next aShape
+
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : " & mAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+End Sub
+
+
+'WdInlineShapeType constants:
+'wdInlineShapeEmbeddedOLEObject, wdInlineShapeHorizontalLine, wdInlineShapeLinkedOLEObject,
+'wdInlineShapeLinkedPicture, wdInlineShapeLinkedPictureHorizontalLine, wdInlineShapeOLEControlObject,
+'wdInlineShapeOWSAnchor, wdInlineShapePicture, wdInlineShapePictureBullet,
+'wdInlineShapePictureHorizontalLine, wdInlineShapeScriptAnchor
+
+Sub Analyze_OLEEmbeddedSingleInlineShape(aILShape As InlineShape)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "Analyze_OLEEmbeddedSingleInlineShape"
+ Dim myIssue As IssueInfo
+ Dim bOleObject As Boolean
+ Dim TypeAsString As String
+ Dim XMLTypeAsString As String
+ Dim objName As String
+
+ bOleObject = (aILShape.Type = wdInlineShapeEmbeddedOLEObject) Or _
+ (aILShape.Type = wdInlineShapeLinkedOLEObject) Or _
+ (aILShape.Type = wdInlineShapeOLEControlObject)
+
+ If Not bOleObject Then Exit Sub
+
+ aILShape.Select
+ Select Case aILShape.Type
+ Case wdInlineShapeOLEControlObject
+ TypeAsString = RID_STR_COMMON_OLE_CONTROL
+ XMLTypeAsString = CSTR_SUBISSUE_OLE_CONTROL
+ Case wdInlineShapeEmbeddedOLEObject
+ TypeAsString = RID_STR_COMMON_OLE_EMBEDDED
+ XMLTypeAsString = CSTR_SUBISSUE_OLE_EMBEDDED
+ Case wdInlineShapeLinkedOLEObject
+ TypeAsString = RID_STR_COMMON_OLE_LINKED
+ XMLTypeAsString = CSTR_SUBISSUE_OLE_LINKED
+ Case Else
+ TypeAsString = RID_STR_COMMON_OLE_UNKNOWN
+ XMLTypeAsString = CSTR_SUBISSUE_OLE_UNKNOWN
+ End Select
+
+ Set myIssue = New IssueInfo
+ With myIssue
+ .IssueID = CID_PORTABILITY
+ .IssueType = RID_STR_COMMON_ISSUE_PORTABILITY
+ .SubType = TypeAsString
+ .Location = .CLocationPage
+ .SubLocation = Selection.Information(wdActiveEndPageNumber)
+
+ .IssueTypeXML = CSTR_ISSUE_PORTABILITY
+ .SubTypeXML = XMLTypeAsString
+ .locationXML = .CXMLLocationPage
+
+ .Line = Selection.Information(wdFirstCharacterLineNumber)
+ .column = Selection.Information(wdFirstCharacterColumnNumber)
+
+ DoEvents
+ If aILShape.Type = wdInlineShapeEmbeddedOLEObject Or _
+ aILShape.Type = wdInlineShapeOLEControlObject Then
+
+ 'If Object is invalid can get automation server hanging
+ Dim tmpStr As String
+ On Error Resume Next
+ tmpStr = aILShape.OLEFormat.Object
+ If Err.Number = 0 Then
+ .Attributes.Add RID_STR_COMMON_ATTRIBUTE_OBJECT_TYPE
+ .Values.Add aILShape.OLEFormat.ProgID
+ Else
+ Err.Clear
+ tmpStr = aILShape.OLEFormat.ClassType
+ If Err.Number = 0 Then
+ .Attributes.Add RID_STR_COMMON_ATTRIBUTE_OBJECT_TYPE
+ .Values.Add aILShape.OLEFormat.ClassType
+ Else
+ .Attributes.Add RID_STR_COMMON_ATTRIBUTE_OBJECT_TYPE
+ .Values.Add RID_STR_COMMON_NA
+ End If
+ End If
+
+ If aILShape.Type = wdInlineShapeOLEControlObject Then
+ mAnalysis.MacroNumOLEControls = 1 + mAnalysis.MacroNumOLEControls
+ End If
+
+ objName = aILShape.OLEFormat.Object.name
+ If Err.Number = 0 Then
+ .Attributes.Add RID_STR_COMMON_ATTRIBUTE_OBJECT_NAME
+ .Values.Add objName
+ End If
+ On Error GoTo HandleErrors
+ End If
+ If aILShape.Type = wdInlineShapeLinkedOLEObject Then
+ .Attributes.Add RID_STR_COMMON_ATTRIBUTE_SOURCE
+ .Values.Add aILShape.LinkFormat.SourceFullName
+ End If
+
+ mAnalysis.IssuesCountArray(CID_PORTABILITY) = _
+ mAnalysis.IssuesCountArray(CID_PORTABILITY) + 1
+ End With
+
+ mAnalysis.Issues.Add myIssue
+
+FinalExit:
+ Set myIssue = Nothing
+ Exit Sub
+
+HandleErrors:
+ WriteDebugLevelTwo currentFunctionName & " : " & mAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+'Appears to be picked up by other OLE analysis code - the Shapes are actually field codes
+'So I get double reporting if I use this as well.
+Sub Analyze_OLEFields(myField As Field)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "Analyze_OLEFields"
+ Dim myIssue As IssueInfo
+ Dim bOleObject As Boolean
+ Dim TypeAsString As String
+ Dim XMLTypeAsString As String
+
+ bOleObject = (myField.Type = wdFieldOCX)
+
+ If Not bOleObject Then Exit Sub
+
+ myField.Select
+ Select Case myField.Type
+ Case wdFieldLink
+ TypeAsString = RID_STR_COMMON_OLE_FIELD_LINK
+ XMLTypeAsString = CSTR_SUBISSUE_OLE_FIELD_LINK
+ Case Else
+ TypeAsString = RID_STR_COMMON_OLE_UNKNOWN
+ XMLTypeAsString = CSTR_SUBISSUE_OLE_UNKNOWN
+ End Select
+ Set myIssue = New IssueInfo
+ With myIssue
+ .IssueID = CID_PORTABILITY
+ .IssueType = RID_STR_COMMON_ISSUE_PORTABILITY
+ .SubType = TypeAsString
+ .Location = .CLocationPage
+ .SubLocation = Selection.Information(wdActiveEndPageNumber)
+
+ .IssueTypeXML = CSTR_ISSUE_PORTABILITY
+ .SubTypeXML = XMLTypeAsString
+ .locationXML = .CXMLLocationPage
+
+ .Line = Selection.Information(wdFirstCharacterLineNumber)
+ .column = Selection.Information(wdFirstCharacterColumnNumber)
+ .Attributes.Add RID_STR_COMMON_ATTRIBUTE_OBJECT_TYPE
+ .Values.Add myField.OLEFormat.ClassType
+
+ If myField.Type = wdFieldLink Then
+ .Attributes.Add RID_STR_WORD_ATTRIBUTE_LINK
+ .Values.Add myField.LinkFormat.SourceFullName
+ End If
+ mAnalysis.IssuesCountArray(CID_PORTABILITY) = _
+ mAnalysis.IssuesCountArray(CID_PORTABILITY) + 1
+ End With
+ mAnalysis.Issues.Add myIssue
+
+ Set myIssue = Nothing
+
+ Exit Sub
+
+HandleErrors:
+ Set myIssue = Nothing
+ WriteDebug currentFunctionName & " : " & mAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+End Sub
+
+Sub Analyze_MailMergeField(myField As Field)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "Analyze_MailMergeField"
+ Dim myIssue As IssueInfo
+ Dim TypeAsString As String
+ Dim bProblemMailMergeField As Boolean
+
+ bProblemMailMergeField = _
+ (myField.Type = wdFieldFillIn) Or _
+ (myField.Type = wdFieldAsk) Or _
+ (myField.Type = wdFieldMergeRec) Or _
+ (myField.Type = wdFieldMergeField) Or _
+ (myField.Type = wdFieldNext) Or _
+ (myField.Type = wdFieldRevisionNum) Or _
+ (myField.Type = wdFieldSequence) Or _
+ (myField.Type = wdFieldAutoNum) Or _
+ (myField.Type = wdFieldAutoNumOutline) Or _
+ (myField.Type = wdFieldAutoNumLegal)
+
+ If bProblemMailMergeField Then
+ 'Some of the following are numbering fields and need to be broken out into a separate function. See migration guide.
+
+ Select Case myField.Type
+ Case wdFieldFillIn
+ TypeAsString = RID_STR_WORD_ENUMERATION_MAILMERGE_FILL_IN
+ Case wdFieldAsk
+ TypeAsString = RID_STR_WORD_ENUMERATION_MAILMERGE_ASK
+ Case wdFieldMergeRec
+ TypeAsString = RID_STR_WORD_ENUMERATION_MAILMERGE_MERGE_RECORDS
+ Case wdFieldMergeField
+ TypeAsString = RID_STR_WORD_ENUMERATION_MAILMERGE_MERGE_FIELDS
+ Case wdFieldNext
+ TypeAsString = RID_STR_WORD_ENUMERATION_MAILMERGE_NEXT
+ Case wdFieldRevisionNum
+ TypeAsString = RID_STR_WORD_ENUMERATION_MAILMERGE_REVISION_NUMBER
+ Case wdFieldSequence
+ TypeAsString = RID_STR_WORD_ENUMERATION_MAILMERGE_SEQUENCE
+ Case wdFieldAutoNum
+ TypeAsString = RID_STR_WORD_ENUMERATION_MAILMERGE_AUTO_NUMBER
+ Case wdFieldAutoNumOutline
+ TypeAsString = RID_STR_WORD_ENUMERATION_MAILMERGE_AUTO_NUMBER_OUTLINE
+ Case wdFieldAutoNumLegal
+ TypeAsString = RID_STR_WORD_ENUMERATION_MAILMERGE_AUTO_NUMBER_LEGAL
+ Case Else
+ TypeAsString = RID_STR_WORD_ENUMERATION_MAILMERGE_FIELD_NAME_NOT_KNOWN
+ End Select
+
+ Set myIssue = New IssueInfo
+ myField.Select
+ With myIssue
+ .IssueID = CID_FIELDS
+ .IssueType = RID_STR_WORD_ISSUE_FIELDS
+ .SubType = RID_STR_WORD_SUBISSUE_MAILMERGE_FIELD
+ .Location = .CLocationPage
+
+ .IssueTypeXML = CSTR_ISSUE_FIELDS
+ .SubTypeXML = CSTR_SUBISSUE_MAILMERGE_FIELD
+ .locationXML = .CXMLLocationPage
+
+ .SubLocation = Selection.Information(wdActiveEndPageNumber)
+ .Line = Selection.Information(wdFirstCharacterLineNumber)
+ .column = Selection.Information(wdFirstCharacterColumnNumber)
+
+ .Attributes.Add RID_STR_COMMON_ATTRIBUTE_NAME
+ .Values.Add TypeAsString
+ If myField.Code.Text <> "" Then
+ .Attributes.Add RID_STR_WORD_ATTRIBUTE_TEXT
+ .Values.Add myField.Code.Text
+ End If
+
+ mAnalysis.IssuesCountArray(CID_FIELDS) = _
+ mAnalysis.IssuesCountArray(CID_FIELDS) + 1
+ End With
+ mAnalysis.Issues.Add myIssue
+ Set myIssue = Nothing
+ End If
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : " & mAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+End Sub
+
+'Get field DS Info
+Sub Analyze_MailMerge_DataSource(currDoc As Document)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "Analyze_MailMerge_DataSource"
+ ' There may be no mail merge in the document
+ If (currDoc.MailMerge.DataSource.Type = wdNoMergeInfo) Then
+ Exit Sub
+ End If
+
+ 'Dim issue As SimpleAnalysisInfo
+ If (currDoc.MailMerge.DataSource.Type <> wdNoMergeInfo) Then
+ Dim myIssue As IssueInfo
+ Set myIssue = New IssueInfo
+ With myIssue
+ .IssueID = CID_CONTENT_AND_DOCUMENT_PROPERTIES
+ .IssueType = RID_STR_COMMON_ISSUE_CONTENT_AND_DOCUMENT_PROPERTIES
+ .SubType = RID_STR_WORD_SUBISSUE_MAILMERGE_DATASOURCE
+ .Location = .CLocationDocument
+
+ .IssueTypeXML = CSTR_ISSUE_CONTENT_DOCUMENT_PROPERTIES
+ .SubTypeXML = CSTR_SUBISSUE_MAILMERGE_DATASOURCE
+ .locationXML = .CXMLLocationDocument
+
+ .Attributes.Add RID_STR_COMMON_ATTRIBUTE_NAME
+ .Values.Add currDoc.MailMerge.DataSource.name
+ .Attributes.Add RID_STR_WORD_ATTRIBUTE_DATASOURCE
+ .Values.Add currDoc.MailMerge.DataSource.Type
+
+ mAnalysis.IssuesCountArray(CID_CONTENT_AND_DOCUMENT_PROPERTIES) = _
+ mAnalysis.IssuesCountArray(CID_CONTENT_AND_DOCUMENT_PROPERTIES) + 1
+ End With
+
+ mAnalysis.Issues.Add myIssue
+ Set myIssue = Nothing
+ End If
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : " & mAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+End Sub
+
+Function getFormFieldTypeAsString(fieldType As WdFieldType)
+ Dim Str As String
+
+ Select Case fieldType
+ Case wdFieldFormCheckBox
+ Str = RID_STR_WORD_ENUMERATION_FORM_FIELD_CHECK_BOX
+ Case wdFieldFormDropDown
+ Str = RID_STR_WORD_ENUMERATION_FORM_FIELD_DROP_DOWN
+ Case wdFieldFormTextInput
+ Str = RID_STR_WORD_ENUMERATION_FORM_FIELD_TEXT
+ Case Else
+ Str = RID_STR_WORD_ENUMERATION_UNKNOWN
+ End Select
+
+ getFormFieldTypeAsString = Str
+End Function
+Function getTextFormFieldTypeAsString(fieldType As WdTextFormFieldType)
+ Dim Str As String
+
+ Select Case fieldType
+ Case wdCalculationText
+ Str = RID_STR_WORD_ENUMERATION_FORM_FIELD_CALCULATION
+ Case wdCurrentDateText
+ Str = RID_STR_WORD_ENUMERATION_FORM_FIELD_CURRENT_DATE
+ Case wdCurrentTimeText
+ Str = RID_STR_WORD_ENUMERATION_FORM_FIELD_CURRENT_TIME
+ Case wdDateText
+ Str = RID_STR_WORD_ENUMERATION_FORM_FIELD_DATE
+ Case wdNumberText
+ Str = RID_STR_WORD_ENUMERATION_FORM_FIELD_NUMBER
+ Case wdRegularText
+ Str = RID_STR_WORD_ENUMERATION_FORM_FIELD_REGULAR
+ Case Else
+ Str = RID_STR_WORD_ENUMERATION_UNKNOWN
+ End Select
+
+ getTextFormFieldTypeAsString = Str
+End Function
+Function getTextFormFieldDefaultAsString(fieldType As WdTextFormFieldType)
+ Dim Str As String
+
+ Select Case fieldType
+ Case wdCalculationText
+ Str = RID_STR_WORD_ENUMERATION_FORM_FIELD_DEFAULT_EXPRESSION
+ Case wdCurrentDateText
+ Str = RID_STR_WORD_ENUMERATION_FORM_FIELD_DEFAULT_DATE
+ Case wdCurrentTimeText
+ Str = RID_STR_WORD_ENUMERATION_FORM_FIELD_DEFAULT_TIME
+ Case wdDateText
+ Str = RID_STR_WORD_ENUMERATION_FORM_FIELD_DEFAULT_DATE
+ Case wdNumberText
+ Str = RID_STR_WORD_ENUMERATION_FORM_FIELD_DEFAULT_NUMBER
+ Case wdRegularText
+ Str = RID_STR_WORD_ENUMERATION_FORM_FIELD_DEFAULT_TEXT
+ Case Else
+ Str = RID_STR_WORD_ENUMERATION_UNKNOWN
+ End Select
+
+ getTextFormFieldDefaultAsString = Str
+End Function
+Function getTextFormFieldFormatAsString(fieldType As WdTextFormFieldType)
+ Dim Str As String
+
+ Select Case fieldType
+ Case wdCalculationText
+ Str = RID_STR_WORD_ENUMERATION_FORM_FIELD_FORMAT_NUMBER
+ Case wdCurrentDateText
+ Str = RID_STR_WORD_ENUMERATION_FORM_FIELD_FORMAT_DATE
+ Case wdCurrentTimeText
+ Str = RID_STR_WORD_ENUMERATION_FORM_FIELD_FORMAT_TIME
+ Case wdDateText
+ Str = RID_STR_WORD_ENUMERATION_FORM_FIELD_FORMAT_DATE
+ Case wdNumberText
+ Str = RID_STR_WORD_ENUMERATION_FORM_FIELD_FORMAT_NUMBER
+ Case wdRegularText
+ Str = RID_STR_WORD_ENUMERATION_FORM_FIELD_FORMAT_TEXT
+ Case Else
+ Str = RID_STR_WORD_ENUMERATION_UNKNOWN
+ End Select
+
+ getTextFormFieldFormatAsString = Str
+End Function
+
+Sub Analyze_FieldAndFormFieldIssues(currDoc As Document)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "Analyze_FormFields"
+ Dim myIssue As IssueInfo
+
+ 'Analysze all Fields in doc
+ Dim myField As Field
+
+ For Each myField In currDoc.Fields
+ 'Analyze Mail Merge Fields
+ Analyze_MailMergeField myField
+
+ 'Analyze TOA Fields
+ Analyze_TOAField myField
+ Next myField
+
+ 'Analyze FormField doc issues
+ If currDoc.FormFields.count = 0 Then GoTo FinalExit
+
+ If (currDoc.FormFields.Shaded) Then
+ Set myIssue = New IssueInfo
+ With myIssue
+ .IssueID = CID_FIELDS
+ .IssueType = RID_STR_WORD_ISSUE_FIELDS
+ .SubType = RID_STR_WORD_SUBISSUE_APPEARANCE
+ .Location = .CLocationDocument
+
+ .IssueTypeXML = CSTR_ISSUE_FIELDS
+ .SubTypeXML = CSTR_SUBISSUE_APPEARANCE
+ .locationXML = .CXMLLocationDocument
+
+ .Attributes.Add RID_STR_WORD_ATTRIBUTE_FORM_FIELD_GREYED
+ .Values.Add RID_STR_WORD_TRUE
+ mAnalysis.IssuesCountArray(CID_FIELDS) = _
+ mAnalysis.IssuesCountArray(CID_FIELDS) + 1
+ End With
+ mAnalysis.Issues.Add myIssue
+ Set myIssue = Nothing
+ End If
+
+ 'Analyse all FormFields in doc
+ Dim myFormField As FormField
+
+ For Each myFormField In currDoc.FormFields
+ Analyze_FormFieldIssue myFormField
+ Next myFormField
+
+FinalExit:
+ Set myIssue = Nothing
+ Set myFormField = Nothing
+ Exit Sub
+
+HandleErrors:
+
+ WriteDebug currentFunctionName & " : " & mAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+Sub Analyze_FormFieldIssue(myFormField As FormField)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "Analyze_FormFieldIssue"
+ Dim myIssue As IssueInfo
+ Dim bCheckBoxIssues As Boolean
+ Dim bFormFieldIssues As Boolean
+
+ bCheckBoxIssues = False
+ If (myFormField.Type = wdFieldFormCheckBox) Then
+ If myFormField.CheckBox.AutoSize Then
+ bCheckBoxIssues = True
+ End If
+ End If
+
+ bFormFieldIssues = bCheckBoxIssues
+
+ If Not bFormFieldIssues Then GoTo FinalExit
+
+ myFormField.Select
+ Set myIssue = New IssueInfo
+ With myIssue
+ .IssueID = CID_FIELDS
+ .IssueType = RID_STR_WORD_ISSUE_FIELDS
+ .SubType = RID_STR_WORD_SUBISSUE_FORM_FIELD
+ .Location = .CLocationPage
+
+ .IssueTypeXML = CSTR_ISSUE_FIELDS
+ .SubTypeXML = CSTR_SUBISSUE_FORM_FIELD
+ .locationXML = .CXMLLocationPage
+
+ .SubLocation = Selection.Information(wdActiveEndPageNumber)
+ .Line = Selection.Information(wdFirstCharacterLineNumber)
+ .column = Selection.Information(wdFirstCharacterColumnNumber)
+ myIssue.Attributes.Add RID_STR_COMMON_ATTRIBUTE_TYPE
+ myIssue.Values.Add getFormFieldTypeAsString(myFormField.Type)
+ End With
+
+ 'Checkbox Issues
+ If (myFormField.Type = wdFieldFormCheckBox) Then
+ 'AutoSize CheckBoxes
+ If myFormField.CheckBox.AutoSize Then
+ myIssue.Attributes.Add RID_STR_WORD_ATTRIBUTE_FORM_FIELD_AUTOSIZE
+ myIssue.Values.Add RID_STR_WORD_TRUE
+ End If
+ End If
+
+ 'TextInput Issues
+ If myFormField.Type = wdFieldFormTextInput Then
+ myIssue.Attributes.Add RID_STR_WORD_ATTRIBUTE_FORM_FIELD_TEXT_FORM_FIELD_TYPE
+ myIssue.Values.Add getTextFormFieldTypeAsString(myFormField.TextInput.Type)
+ Dim bLostType As Boolean
+ bLostType = False
+ If (myFormField.TextInput.Type = wdCalculationText) Or _
+ (myFormField.TextInput.Type = wdCurrentDateText) Or _
+ (myFormField.TextInput.Type = wdCurrentTimeText) Then
+ AddIssueDetailsNote myIssue, 0, getTextFormFieldTypeAsString(myFormField.TextInput.Type) & _
+ " " & RID_STR_WORD_NOTE_FORM_FIELD_TYPE_LOST
+ bLostType = True
+ End If
+
+ If (myFormField.TextInput.Format <> "") Then
+ myIssue.Attributes.Add getTextFormFieldFormatAsString(myFormField.TextInput.Type)
+ myIssue.Values.Add myFormField.TextInput.Format
+ End If
+
+ 'Default text
+ If (myFormField.TextInput.Default <> "") Then
+ myIssue.Attributes.Add getTextFormFieldDefaultAsString(myFormField.TextInput.Type)
+ myIssue.Values.Add myFormField.TextInput.Default
+ End If
+
+ 'Maximum text
+ If (myFormField.TextInput.Width <> 0) Then
+ myIssue.Attributes.Add RID_STR_WORD_ATTRIBUTE_FORM_FIELD_MAX_LENGTH
+ myIssue.Values.Add myFormField.TextInput.Width
+ End If
+
+ 'Fill-in disabled
+ If (myFormField.Enabled = False) And (Not bLostType) Then
+ myIssue.Attributes.Add RID_STR_WORD_ATTRIBUTE_FORM_FIELD_FILLIN_ENABLED
+ myIssue.Values.Add RID_STR_WORD_FALSE
+ End If
+ End If
+
+ 'Help Key(F1)
+ If (myFormField.OwnHelp And myFormField.HelpText <> "") Then
+ myIssue.Attributes.Add RID_STR_WORD_ATTRIBUTE_FORM_FIELD_HELP_KEY_F1_OWN_TEXT
+ myIssue.Values.Add myFormField.HelpText
+ ElseIf ((Not myFormField.OwnHelp) And myFormField.HelpText <> "") Then
+ myIssue.Attributes.Add RID_STR_WORD_ATTRIBUTE_FORM_FIELD_HELP_KEY_F1_AUTO_TEXT
+ myIssue.Values.Add myFormField.HelpText
+ End If
+
+ 'StatusHelp
+ If (myFormField.OwnStatus And myFormField.StatusText <> "") Then
+ myIssue.Attributes.Add RID_STR_WORD_ATTRIBUTE_FORM_FIELD_STATUS_BAR_HELP_OWN_TEXT
+ myIssue.Values.Add myFormField.StatusText
+ ElseIf ((Not myFormField.OwnStatus) And myFormField.StatusText <> "") Then
+ myIssue.Attributes.Add RID_STR_WORD_ATTRIBUTE_FORM_FIELD_STATUS_BAR_HELP_AUTO_TEXT
+ myIssue.Values.Add myFormField.StatusText
+ End If
+
+ 'Macros
+ If (myFormField.EntryMacro <> "") Then
+ myIssue.Attributes.Add RID_STR_WORD_ATTRIBUTE_FORM_FIELD_ENTRY_MACRO
+ myIssue.Values.Add myFormField.EntryMacro
+ End If
+ If (myFormField.ExitMacro <> "") Then
+ myIssue.Attributes.Add RID_STR_WORD_ATTRIBUTE_FORM_FIELD_EXIT_MACRO
+ myIssue.Values.Add myFormField.ExitMacro
+ End If
+ If (myFormField.EntryMacro <> "") Or (myFormField.ExitMacro <> "") Then
+ mAnalysis.MacroNumFieldsUsingMacros = 1 + mAnalysis.MacroNumFieldsUsingMacros
+ End If
+
+ 'LockedField
+ If (myFormField.Enabled = False) And (myFormField.Type <> wdFieldFormTextInput) Then
+ myIssue.Attributes.Add RID_STR_WORD_ATTRIBUTE_FORM_FIELD_LOCKED
+ myIssue.Values.Add RID_STR_WORD_TRUE
+ End If
+
+ mAnalysis.IssuesCountArray(CID_FIELDS) = _
+ mAnalysis.IssuesCountArray(CID_FIELDS) + 1
+
+ mAnalysis.Issues.Add myIssue
+
+FinalExit:
+ Set myIssue = Nothing
+ Exit Sub
+
+HandleErrors:
+ 'Log first occurrence for this doc
+ If Not mbFormFieldErrorLogged Then
+ WriteDebug currentFunctionName & " : " & mAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ mbFormFieldErrorLogged = True
+ End If
+ Resume FinalExit
+End Sub
+
+
+Sub Analyze_TOA(currDoc As Document)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "Analyze_TOA"
+
+ Dim toa As TableOfAuthorities
+ Dim myIssue As IssueInfo
+ Dim myRng As Range
+
+ For Each toa In currDoc.TablesOfAuthorities
+ Set myRng = toa.Range
+ myRng.start = myRng.End
+ Set myIssue = New IssueInfo
+ myRng.Select
+
+ Dim TabLeaderAsString As String
+ Select Case toa.TabLeader
+ Case wdTabLeaderDashes
+ TabLeaderAsString = RID_STR_WORD_ENUMERATION_INDEX_LEADER_DASHES
+ Case wdTabLeaderDots
+ TabLeaderAsString = RID_STR_WORD_ENUMERATION_INDEX_LEADER_DOTS
+ Case wdTabLeaderHeavy
+ TabLeaderAsString = RID_STR_WORD_ENUMERATION_INDEX_LEADER_HEAVY
+ Case wdTabLeaderLines
+ TabLeaderAsString = RID_STR_WORD_ENUMERATION_INDEX_LEADER_LINES
+ Case wdTabLeaderMiddleDot
+ TabLeaderAsString = RID_STR_WORD_ENUMERATION_INDEX_LEADER_MIDDLEDOT
+ Case wdTabLeaderSpaces
+ TabLeaderAsString = RID_STR_WORD_ENUMERATION_INDEX_LEADER_SPACES
+ Case Else
+ TabLeaderAsString = RID_STR_WORD_ENUMERATION_UNKNOWN
+ End Select
+
+ Dim FormatAsString As String
+ Select Case currDoc.TablesOfAuthorities.Format
+ Case wdTOAClassic
+ FormatAsString = RID_STR_WORD_ENUMERATION_INDEX_TABLES_CLASSIC
+ Case wdTOADistinctive
+ FormatAsString = RID_STR_WORD_ENUMERATION_INDEX_TABLES_DISTINCTIVE
+ Case wdTOAFormal
+ FormatAsString = RID_STR_WORD_ENUMERATION_INDEX_TABLES_FORMAL
+ Case wdTOASimple
+ FormatAsString = RID_STR_WORD_ENUMERATION_INDEX_TABLES_SIMPLE
+ Case wdTOATemplate
+ FormatAsString = RID_STR_WORD_ENUMERATION_INDEX_TABLES_FROM_TEMPLATE
+ Case Else
+ FormatAsString = RID_STR_WORD_ENUMERATION_UNKNOWN
+ End Select
+
+ With myIssue
+ .IssueID = CID_INDEX_AND_REFERENCES
+ .IssueType = RID_STR_WORD_ISSUE_INDEX_AND_REFERENCES
+ .SubType = RID_STR_WORD_SUBISSUE_TABLE_OF_AUTHORITIES
+ .Location = .CLocationPage
+
+ .IssueTypeXML = CSTR_ISSUE_INDEX_AND_REFERENCES
+ .SubTypeXML = CSTR_SUBISSUE_TABLE_OF_AUTHORITIES
+ .locationXML = .CXMLLocationPage
+
+ .SubLocation = myRng.Information(wdActiveEndPageNumber)
+ .Attributes.Add RID_STR_WORD_ATTRIBUTE_LEADER
+ .Values.Add TabLeaderAsString
+
+ AddIssueDetailsNote myIssue, 0, RID_STR_WORD_NOTE_TOA_MIGRATE_AS_PLAIN_TEXT
+
+ mAnalysis.IssuesCountArray(CID_INDEX_AND_REFERENCES) = _
+ mAnalysis.IssuesCountArray(CID_INDEX_AND_REFERENCES) + 1
+ End With
+
+ mAnalysis.Issues.Add myIssue
+ Set myIssue = Nothing
+ Set myRng = Nothing
+ Next
+FinalExit:
+ Set myIssue = Nothing
+ Set myRng = Nothing
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : " & mAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+Sub Analyze_TOAField(myField As Field)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "Analyze_TOAField"
+
+ Dim toa As TableOfAuthorities
+ Dim myIssue As IssueInfo
+
+ If myField.Type = wdFieldTOAEntry Then
+ Set myIssue = New IssueInfo
+ myField.Select
+
+ With myIssue
+ .IssueID = CID_FIELDS
+ .IssueType = RID_STR_WORD_ISSUE_FIELDS
+ .SubType = RID_STR_WORD_SUBISSUE_TABLE_OF_AUTHORITIES_FIELD
+ .Location = .CLocationPage
+
+ .IssueTypeXML = CSTR_ISSUE_FIELDS
+ .SubTypeXML = CSTR_SUBISSUE_TABLE_OF_AUTHORITIES_FIELD
+ .locationXML = .CXMLLocationPage
+
+ .SubLocation = Selection.Information(wdActiveEndPageNumber)
+ .Line = Selection.Information(wdFirstCharacterLineNumber)
+ .column = Selection.Information(wdFirstCharacterColumnNumber)
+
+ .Attributes.Add RID_STR_WORD_ATTRIBUTE_FIELD_TEXT
+ .Values.Add myField.Code.Text
+
+ AddIssueDetailsNote myIssue, 0, RID_STR_WORD_NOTE_TOA_FIELD_LOST_ON_ROUNDTRIP
+
+ mAnalysis.IssuesCountArray(CID_FIELDS) = _
+ mAnalysis.IssuesCountArray(CID_FIELDS) + 1
+ End With
+
+ mAnalysis.Issues.Add myIssue
+ Set myIssue = Nothing
+ End If
+
+FinalExit:
+ Set myIssue = Nothing
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : " & mAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+Sub Analyze_Tables_Borders(currDoc As Document)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "Analyze_Tables_Borders"
+ Dim myIssue As IssueInfo
+ Set myIssue = New IssueInfo
+ Dim aTable As Table
+ Dim invalidBorders As String
+
+ For Each aTable In currDoc.Tables
+ invalidBorders = GetInvalidBorder(aTable)
+ If invalidBorders <> "" Then
+ aTable.Range.Select
+ Set myIssue = New IssueInfo
+ With myIssue
+ .IssueID = CID_TABLES
+ .IssueType = RID_STR_WORD_ISSUE_TABLES
+ .SubType = RID_STR_WORD_SUBISSUE_BORDER_STYLES
+ .Location = .CLocationPage
+
+ .IssueTypeXML = CSTR_ISSUE_TABLES
+ .SubTypeXML = CSTR_SUBISSUE_BORDER_STYLES
+ .locationXML = .CXMLLocationPage
+
+ .SubLocation = Selection.Information(wdActiveEndPageNumber)
+ .Line = Selection.Information(wdFirstCharacterLineNumber)
+ .column = Selection.Information(wdFirstCharacterColumnNumber)
+
+ .Attributes.Add RID_STR_WORD_ATTRIBUTE_BORDERS_NOT_DISPLAYING
+ .Values.Add invalidBorders
+
+ AddIssueDetailsNote myIssue, 0, RID_STR_WORD_NOTE_TABLE_BORDER
+
+ mAnalysis.IssuesCountArray(CID_TABLES) = mAnalysis.IssuesCountArray(CID_TABLES) + 1
+ End With
+
+ mAnalysis.Issues.Add myIssue
+ Set myIssue = Nothing
+ End If
+ Next aTable
+FinalExit:
+ Set myIssue = Nothing
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : " & mAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+Function GetInvalidBorder(aTable As Table) As String
+
+ Dim theResult As String
+ theResult = ""
+
+ If IsInvalidBorderStyle(aTable.Borders(wdBorderTop).LineStyle) Then
+ theResult = theResult + "Top, "
+ End If
+ If IsInvalidBorderStyle(aTable.Borders(wdBorderBottom).LineStyle) Then
+ theResult = theResult + "Bottom, "
+ End If
+ If IsInvalidBorderStyle(aTable.Borders(wdBorderDiagonalDown).LineStyle) Then
+ theResult = theResult + "Down Diagonal, "
+ End If
+ If IsInvalidBorderStyle(aTable.Borders(wdBorderDiagonalUp).LineStyle) Then
+ theResult = theResult + "Up Diagonal, "
+
+ End If
+ If IsInvalidBorderStyle(aTable.Borders(wdBorderHorizontal).LineStyle) Then
+ theResult = theResult + "Horizontal, "
+ End If
+ If IsInvalidBorderStyle(aTable.Borders(wdBorderLeft).LineStyle) Then
+ theResult = theResult + "Left, "
+ End If
+ If IsInvalidBorderStyle(aTable.Borders(wdBorderRight).LineStyle) Then
+ theResult = theResult + "Right, "
+ End If
+ If IsInvalidBorderStyle(aTable.Borders(wdBorderVertical).LineStyle) Then
+ theResult = theResult + "Vertical, "
+ End If
+
+ If theResult <> "" Then
+ theResult = Left(theResult, (Len(theResult) - 2)) + "."
+ End If
+
+ GetInvalidBorder = theResult
+End Function
+
+Function IsInvalidBorderStyle(aStyle As WdLineStyle) As Boolean
+
+ Dim IsInvalid As Boolean
+
+ Select Case aStyle
+ Case wdLineStyleDot, wdLineStyleDashSmallGap, wdLineStyleDashLargeGap, wdLineStyleDashDot, _
+ wdLineStyleDashDotDot, wdLineStyleTriple, wdLineStyleThinThickThinSmallGap, wdLineStyleThinThickMedGap, _
+ wdLineStyleThickThinMedGap, wdLineStyleThinThickThinMedGap, wdLineStyleThinThickLargeGap, _
+ wdLineStyleThickThinLargeGap, wdLineStyleThinThickThinLargeGap, wdLineStyleSingleWavy, _
+ wdLineStyleDoubleWavy, wdLineStyleDashDotStroked, wdLineStyleEmboss3D, wdLineStyleEngrave3D
+ IsInvalid = True
+ Case Else
+ IsInvalid = False
+ End Select
+
+ IsInvalidBorderStyle = IsInvalid
+
+End Function
+
+Private Sub Class_Initialize()
+ Set mAnalysis = New DocumentAnalysis
+End Sub
+Private Sub Class_Terminate()
+ Set mAnalysis = Nothing
+End Sub
+
+Public Property Get Results() As DocumentAnalysis
+ Set Results = mAnalysis
+End Property
+
+Sub Analyze_NumberingTabs(currDoc As Document, docAnalysis As DocumentAnalysis)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "Analyze_NumberingTabs"
+
+ Dim tb As TabStop
+ Dim customTabPos As Single
+ Dim tabs As Integer
+ Dim listLvl As Long
+ Dim tp As Single
+ Dim bHasAlignmentProblem As Boolean
+ Dim bHasTooManyTabs As Boolean
+ Dim myIssue As IssueInfo
+ Dim p As Object
+
+ bHasAlignmentProblem = False
+ bHasTooManyTabs = False
+
+ For Each p In currDoc.ListParagraphs
+ tabs = 0
+ For Each tb In p.TabStops
+ If tb.customTab Then
+ tabs = tabs + 1
+ customTabPos = tb.Position
+ End If
+ Next
+
+ If tabs = 1 Then
+ listLvl = p.Range.ListFormat.ListLevelNumber
+ tp = p.Range.ListFormat.ListTemplate.ListLevels.item(listLvl).TabPosition
+ If (p.Range.ListFormat.ListTemplate.ListLevels.item(listLvl).Alignment <> _
+ wdListLevelAlignLeft) Then
+ ' ERROR: alignment problem
+ bHasAlignmentProblem = True
+ End If
+
+ If tp <> customTabPos Then
+ p.Range.InsertBefore ("XXXXX")
+ End If
+ 'OK - at least heuristically
+ Else
+ 'ERROR: too many tabs
+ bHasTooManyTabs = True
+ End If
+ Next
+
+ If (bHasAlignmentProblem) Then
+ Set myIssue = New IssueInfo
+
+ With myIssue
+ .IssueID = CID_INDEX_AND_REFERENCES
+ .IssueType = RID_STR_WORD_ISSUE_INDEX_AND_REFERENCES
+ .SubType = RID_STR_WORD_SUBISSUE_NUMBERING_TAB_ALIGNMENT
+ .Location = .CLocationDocument 'Location string
+
+ .IssueTypeXML = CSTR_ISSUE_INDEX_AND_REFERENCES
+ .SubTypeXML = CSTR_SUBISSUE_NUMBERING_TAB_ALIGNMENT
+ .locationXML = .CXMLLocationDocument
+
+ AddIssueDetailsNote myIssue, 0, RID_STR_WORD_NOTE_NUMBERING_TAB_ALIGNMENT
+
+ docAnalysis.IssuesCountArray(CID_INDEX_AND_REFERENCES) = _
+ docAnalysis.IssuesCountArray(CID_INDEX_AND_REFERENCES) + 1
+ End With
+ docAnalysis.Issues.Add myIssue
+ Set myIssue = Nothing
+ End If
+
+ If (bHasTooManyTabs) Then
+ Set myIssue = New IssueInfo
+
+ With myIssue
+ .IssueID = CID_INDEX_AND_REFERENCES
+ .IssueType = RID_STR_WORD_ISSUE_INDEX_AND_REFERENCES
+ .SubType = RID_STR_WORD_SUBISSUE_NUMBERING_TAB_OVERFLOW
+ .Location = .CLocationDocument 'Location string
+
+ .IssueTypeXML = CSTR_ISSUE_INDEX_AND_REFERENCES
+ .SubTypeXML = CSTR_SUBISSUE_NUMBERING_TAB_OVERFLOW
+ .locationXML = .CXMLLocationDocument
+
+ AddIssueDetailsNote myIssue, 0, RID_STR_WORD_NOTE_NUMBERING_TAB_OVERFLOW
+
+ docAnalysis.IssuesCountArray(CID_INDEX_AND_REFERENCES) = _
+ docAnalysis.IssuesCountArray(CID_INDEX_AND_REFERENCES) + 1
+ End With
+ docAnalysis.Issues.Add myIssue
+ Set myIssue = Nothing
+ End If
+
+FinalExit:
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : " & mAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ Set myIssue = Nothing
+ Resume FinalExit
+End Sub
+
+Sub Analyze_Numbering(currDoc As Document, docAnalysis As DocumentAnalysis)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "Analyze_Numbering"
+
+ Dim myIssue As IssueInfo
+ Dim nFormatProblems As Integer
+ Dim nAlignmentProblems As Integer
+ nFormatProblems = 0
+ nAlignmentProblems = 0
+
+ Dim lt As ListTemplate
+ Dim lvl As ListLevel
+ Dim I, l_, p1, p2, v1, v2 As Integer
+ Dim display_levels As Integer
+ Dim fmt, prefix, postfix, res As String
+
+ For Each lt In currDoc.ListTemplates
+ l_ = 0
+ For Each lvl In lt.ListLevels
+ l_ = l_ + 1
+ 'Selection.TypeText Text:="List Number Format " + lvl.NumberFormat
+ 'Apply Heuristic
+ fmt = lvl.NumberFormat
+ p1 = InStr(fmt, "%")
+ p2 = InStrRev(fmt, "%")
+ v1 = val(Mid(fmt, p1 + 1, 1))
+ v2 = val(Mid(fmt, p2 + 1, 1))
+ display_levels = v2 - v1 + 1
+ prefix = Mid(fmt, 1, p1 - 1)
+ postfix = Mid(fmt, p2 + 2)
+ 'Check Heuristic
+ res = prefix
+ For I = 2 To display_levels
+ res = "%" + Trim(Str(l_ - I + 1)) + "." + res
+ Next
+ res = res + "%" + Trim(Str(l_)) + postfix
+ If (StrComp(res, fmt) <> 0) Then
+ nFormatProblems = nFormatProblems + 1
+ 'Selection.TypeText Text:="Label Problem: NumberFormat=" + fmt + " Heuristic=" + res
+ End If
+
+ 'check alignment
+ If (lvl.NumberPosition <> wdListLevelAlignLeft) Then
+ nAlignmentProblems = nAlignmentProblems + 1
+ 'Selection.TypeText Text:="Number alignment problem"
+ End If
+ Next
+ Next
+
+ If (nFormatProblems > 0) Then
+ Set myIssue = New IssueInfo
+
+ With myIssue
+ .IssueID = CID_INDEX_AND_REFERENCES
+ .IssueType = RID_STR_WORD_ISSUE_INDEX_AND_REFERENCES
+ .SubType = RID_STR_WORD_SUBISSUE_NUMBERING_FORMAT
+ .Location = .CLocationDocument 'Location string
+
+ .IssueTypeXML = CSTR_ISSUE_INDEX_AND_REFERENCES
+ .SubTypeXML = CSTR_SUBISSUE_NUMBERING_FORMAT
+ .locationXML = .CXMLLocationDocument
+
+ .Attributes.Add RID_STR_WORD_ATTRIBUTE_COUNT
+ .Values.Add nFormatProblems
+
+ AddIssueDetailsNote myIssue, 0, RID_STR_WORD_NOTE_NUMBERING_FORMAT
+
+ docAnalysis.IssuesCountArray(CID_INDEX_AND_REFERENCES) = _
+ docAnalysis.IssuesCountArray(CID_INDEX_AND_REFERENCES) + 1
+ End With
+ docAnalysis.Issues.Add myIssue
+ Set myIssue = Nothing
+ End If
+
+ If (nAlignmentProblems > 0) Then
+ Set myIssue = New IssueInfo
+
+ With myIssue
+ .IssueID = CID_INDEX_AND_REFERENCES
+ .IssueType = RID_STR_WORD_ISSUE_INDEX_AND_REFERENCES
+ .SubType = RID_STR_WORD_SUBISSUE_NUMBERING_ALIGNMENT
+ .Location = .CLocationDocument 'Location string
+
+ .IssueTypeXML = CSTR_ISSUE_INDEX_AND_REFERENCES
+ .SubTypeXML = CSTR_SUBISSUE_NUMBERING_ALIGNMENT
+ .locationXML = .CXMLLocationDocument
+
+ .Attributes.Add RID_STR_WORD_ATTRIBUTE_COUNT
+ .Values.Add nAlignmentProblems
+
+ AddIssueDetailsNote myIssue, 0, RID_STR_WORD_NOTE_NUMBERING_ALIGNMENT
+
+ docAnalysis.IssuesCountArray(CID_INDEX_AND_REFERENCES) = _
+ docAnalysis.IssuesCountArray(CID_INDEX_AND_REFERENCES) + 1
+ End With
+ docAnalysis.Issues.Add myIssue
+ Set myIssue = Nothing
+ End If
+
+FinalExit:
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : " & mAnalysis.name & ": " & Err.Number & " " & Err.Description & " " & Err.Source
+ Set myIssue = Nothing
+ Resume FinalExit
+End Sub
+
diff --git a/migrationanalysis/src/msokill/msokill.cpp b/migrationanalysis/src/msokill/msokill.cpp
index 9940aa47903a..9f6df41783a8 100644
--- a/migrationanalysis/src/msokill/msokill.cpp
+++ b/migrationanalysis/src/msokill/msokill.cpp
@@ -91,7 +91,7 @@ int main(int argc, char* argv[])
}
/*--------------------------------------------------------------
- Find the MSO window if it is available and explictly kill it
+ Find the MSO window if it is available and explicitly kill it
MSO apps in this case are Excel, Word and PP
Use FindWindow Win32 API to detect if they are available
diff --git a/migrationanalysis/src/wizard/Wizard.frm b/migrationanalysis/src/wizard/Wizard.frm
index ebb955386c68..e64c5ab7ea8c 100644
--- a/migrationanalysis/src/wizard/Wizard.frm
+++ b/migrationanalysis/src/wizard/Wizard.frm
@@ -1,3453 +1,3453 @@
-VERSION 5.00
-Begin VB.Form frmWizard
- Appearance = 0 'Flat
- BackColor = &H80000005&
- BorderStyle = 1 'Fixed Single
- Caption = "OpenOffice.org Document Analysis Wizard"
- ClientHeight = 5520
- ClientLeft = 1965
- ClientTop = 1815
- ClientWidth = 8175
- BeginProperty Font
- Name = "Arial"
- Size = 8.25
- Charset = 0
- Weight = 400
- Underline = 0 'False
- Italic = 0 'False
- Strikethrough = 0 'False
- EndProperty
- Icon = "Wizard.frx":0000
- KeyPreview = -1 'True
- LinkTopic = "Form1"
- LockControls = -1 'True
- MaxButton = 0 'False
- MinButton = 0 'False
- ScaleHeight = 5520
- ScaleWidth = 8175
- Tag = "1000"
- Begin VB.Frame fraStep
- BorderStyle = 0 'None
- Caption = "Introduction"
- ClipControls = 0 'False
- Enabled = 0 'False
- BeginProperty Font
- Name = "MS Sans Serif"
- Size = 8.25
- Charset = 0
- Weight = 400
- Underline = 0 'False
- Italic = 0 'False
- Strikethrough = 0 'False
- EndProperty
- Height = 4905
- Index = 0
- Left = -10000
- TabIndex = 25
- Tag = "1000"
- Top = 0
- Width = 8235
- Begin VB.PictureBox Picture4
- Appearance = 0 'Flat
- BackColor = &H80000005&
- BorderStyle = 0 'None
- ForeColor = &H80000008&
- Height = 4935
- Index = 0
- Left = 0
- ScaleHeight = 4935
- ScaleWidth = 2565
- TabIndex = 2
- TabStop = 0 'False
- Top = 0
- Width = 2565
- Begin VB.PictureBox Picture10
- Height = 735
- Left = 2580
- ScaleHeight = 735
- ScaleWidth = 30
- TabIndex = 68
- TabStop = 0 'False
- Top = 2610
- Width = 30
- End
- Begin VB.PictureBox Picture6
- Appearance = 0 'Flat
- BackColor = &H80000005&
- BorderStyle = 0 'None
- ForeColor = &H80000008&
- Height = 1485
- Left = 150
- ScaleHeight = 1485
- ScaleWidth = 2355
- TabIndex = 67
- TabStop = 0 'False
- Top = 3390
- Width = 2355
- Begin VB.PictureBox Picture1
- Appearance = 0 'Flat
- BackColor = &H80000005&
- BorderStyle = 0 'None
- ForeColor = &H80000008&
- Height = 1200
- Index = 0
- Left = 200
- Picture = "Wizard.frx":482C2
- ScaleHeight = 1200
- ScaleWidth = 1980
- TabIndex = 7
- TabStop = 0 'False
- Tag = "1060"
- Top = 300
- Width = 1980
- End
- End
- Begin VB.Label lblStep1_4
- BackColor = &H00EED3C2&
- BackStyle = 0 'Transparent
- Caption = "4. Analyze"
- ForeColor = &H00BF4F59&
- Height = 195
- Left = 120
- TabIndex = 89
- Tag = "1044"
- Top = 1800
- Width = 2140
- End
- Begin VB.Line Line2
- BorderColor = &H00808080&
- Index = 2
- X1 = 2550
- X2 = 2550
- Y1 = 0
- Y2 = 4920
- End
- Begin VB.Line Line3
- Index = 1
- X1 = 120
- X2 = 2280
- Y1 = 480
- Y2 = 480
- End
- Begin VB.Label Label7
- BackColor = &H00EED3C2&
- Caption = "1. Introduction"
- ForeColor = &H00BF4F59&
- Height = 255
- Index = 1
- Left = 120
- TabIndex = 11
- Tag = "1041"
- Top = 720
- Width = 2140
- End
- Begin VB.Label Label8
- BackColor = &H00EED3C2&
- BackStyle = 0 'Transparent
- Caption = "3. Results"
- ForeColor = &H00BF4F59&
- Height = 255
- Index = 1
- Left = 120
- TabIndex = 9
- Tag = "1043"
- Top = 1440
- Width = 2140
- End
- Begin VB.Label Label9
- BackColor = &H00EED3C2&
- BackStyle = 0 'Transparent
- Caption = "2. Documents"
- ForeColor = &H00BF4F59&
- Height = 255
- Index = 1
- Left = 120
- TabIndex = 10
- Tag = "1042"
- Top = 1080
- Width = 2140
- End
- Begin VB.Label Label12
- BackStyle = 0 'Transparent
- Caption = "Steps"
- BeginProperty Font
- Name = "Arial"
- Size = 8.25
- Charset = 0
- Weight = 700
- Underline = 0 'False
- Italic = 0 'False
- Strikethrough = 0 'False
- EndProperty
- Height = 255
- Index = 1
- Left = 120
- TabIndex = 8
- Tag = "1040"
- Top = 240
- Width = 2115
- End
- End
- Begin VB.PictureBox Picture8
- Appearance = 0 'Flat
- BorderStyle = 0 'None
- ForeColor = &H80000008&
- Height = 4935
- Left = 2400
- ScaleHeight = 4935
- ScaleWidth = 5925
- TabIndex = 3
- TabStop = 0 'False
- Top = -30
- Width = 5925
- Begin VB.CheckBox chkShowIntro
- Caption = "Do not show this introduction again"
- Enabled = 0 'False
- Height = 315
- Left = 690
- MaskColor = &H00000000&
- TabIndex = 6
- Tag = "1103"
- Top = 4890
- Visible = 0 'False
- Width = 3810
- End
- Begin VB.Label lblIntroduction1
- AutoSize = -1 'True
- Caption = $"Wizard.frx":4F8B8
- Height = 585
- Left = 690
- TabIndex = 93
- Tag = "1101"
- Top = 750
- Width = 4890
- WordWrap = -1 'True
- End
- Begin VB.Label lblIntroduction3
- AutoSize = -1 'True
- Caption = "The wizard will remain on screen while the analysis is carried out."
- Height = 195
- Left = 690
- TabIndex = 0
- Tag = "1104"
- Top = 2670
- Width = 4845
- WordWrap = -1 'True
- End
- Begin VB.Label lblIntroduction2
- AutoSize = -1 'True
- Caption = "You will be able to select which documents you want to analyze as well as where you want the results to the analysis to be saved. "
- Height = 390
- Left = 690
- TabIndex = 1
- Tag = "1102"
- Top = 1800
- Width = 4875
- WordWrap = -1 'True
- End
- Begin VB.Label Label12
- BackStyle = 0 'Transparent
- Caption = "Introduction"
- BeginProperty Font
- Name = "Arial"
- Size = 8.25
- Charset = 0
- Weight = 700
- Underline = 0 'False
- Italic = 0 'False
- Strikethrough = 0 'False
- EndProperty
- Height = 255
- Index = 2
- Left = 450
- TabIndex = 5
- Tag = "1100"
- Top = 270
- Width = 4000
- End
- End
- End
- Begin VB.Frame fraStep
- BorderStyle = 0 'None
- Caption = "Setup"
- Enabled = 0 'False
- BeginProperty Font
- Name = "MS Sans Serif"
- Size = 8.25
- Charset = 0
- Weight = 400
- Underline = 0 'False
- Italic = 0 'False
- Strikethrough = 0 'False
- EndProperty
- Height = 4905
- Index = 1
- Left = -10000
- TabIndex = 32
- Tag = "2000"
- Top = 0
- Width = 8235
- Begin VB.PictureBox Picture4
- Appearance = 0 'Flat
- BackColor = &H80000005&
- BorderStyle = 0 'None
- ForeColor = &H80000008&
- Height = 4905
- Index = 1
- Left = 0
- ScaleHeight = 4905
- ScaleWidth = 2565
- TabIndex = 61
- TabStop = 0 'False
- Top = 0
- Width = 2565
- Begin VB.PictureBox Picture1
- Appearance = 0 'Flat
- BackColor = &H80000005&
- BorderStyle = 0 'None
- ForeColor = &H80000008&
- Height = 1200
- Index = 1
- Left = 350
- Picture = "Wizard.frx":4F971
- ScaleHeight = 1200
- ScaleWidth = 1980
- TabIndex = 62
- TabStop = 0 'False
- Tag = "1060"
- Top = 3690
- Width = 1980
- End
- Begin VB.Label lblStep2_4
- BackColor = &H00EED3C2&
- BackStyle = 0 'Transparent
- Caption = "4. Analyze"
- ForeColor = &H00BF4F59&
- Height = 195
- Left = 120
- TabIndex = 90
- Tag = "1044"
- Top = 1800
- Width = 2140
- End
- Begin VB.Line Line2
- BorderColor = &H00808080&
- Index = 1
- X1 = 2550
- X2 = 2550
- Y1 = 0
- Y2 = 4920
- End
- Begin VB.Label Label12
- BackStyle = 0 'Transparent
- Caption = "Steps"
- BeginProperty Font
- Name = "Arial"
- Size = 8.25
- Charset = 0
- Weight = 700
- Underline = 0 'False
- Italic = 0 'False
- Strikethrough = 0 'False
- EndProperty
- Height = 255
- Index = 3
- Left = 120
- TabIndex = 66
- Tag = "1040"
- Top = 240
- Width = 1335
- End
- Begin VB.Label Label9
- BackColor = &H00EED3C2&
- Caption = "2. Documents"
- ForeColor = &H00BF4F59&
- Height = 255
- Index = 2
- Left = 120
- TabIndex = 65
- Tag = "1042"
- Top = 1080
- Width = 2140
- End
- Begin VB.Label Label8
- BackColor = &H00EED3C2&
- BackStyle = 0 'Transparent
- Caption = "3. Results"
- ForeColor = &H00BF4F59&
- Height = 255
- Index = 2
- Left = 120
- TabIndex = 64
- Tag = "1043"
- Top = 1440
- Width = 2140
- End
- Begin VB.Label Label7
- BackColor = &H00EED3C2&
- BackStyle = 0 'Transparent
- Caption = "1. Introduction"
- ForeColor = &H00BF4F59&
- Height = 255
- Index = 2
- Left = 120
- TabIndex = 63
- Tag = "1041"
- Top = 720
- Width = 2140
- End
- Begin VB.Line Line3
- Index = 2
- X1 = 120
- X2 = 2280
- Y1 = 480
- Y2 = 480
- End
- End
- Begin VB.PictureBox Picture7
- Appearance = 0 'Flat
- BorderStyle = 0 'None
- ForeColor = &H80000008&
- Height = 4725
- Left = 2580
- ScaleHeight = 4725
- ScaleWidth = 5535
- TabIndex = 58
- TabStop = 0 'False
- Top = 0
- Width = 5535
- Begin VB.ComboBox cbIgnoreOld
- Height = 330
- ItemData = "Wizard.frx":56F67
- Left = 3950
- List = "Wizard.frx":56F74
- Style = 2 'Dropdown List
- TabIndex = 99
- Top = 1570
- Width = 1215
- End
- Begin VB.CheckBox chkIgnoreOld
- Caption = "Ignore documents older than"
- Height = 225
- Left = 450
- TabIndex = 98
- Top = 1600
- Width = 3400
- End
- Begin VB.CheckBox chkWordDoc
- Caption = "Documents (*.doc)"
- Height = 225
- Left = 2160
- TabIndex = 19
- Tag = "1208"
- Top = 2600
- Value = 1 'Checked
- Width = 3200
- End
- Begin VB.CheckBox chkWordTemplate
- Caption = "Templates (*.dot)"
- Height = 225
- Left = 2160
- TabIndex = 20
- Tag = "1209"
- Top = 2900
- Width = 3200
- End
- Begin VB.CheckBox chkPPTemplate
- Caption = "Templates (*.pot)"
- Height = 225
- Left = 2160
- TabIndex = 24
- Tag = "1215"
- Top = 4400
- Width = 3200
- End
- Begin VB.CheckBox chkPPDoc
- Caption = "Presentations (*.ppt)"
- Height = 225
- Left = 2160
- TabIndex = 23
- Tag = "1214"
- Top = 4100
- Width = 3200
- End
- Begin VB.CheckBox chkExcelDoc
- Caption = "Spreadsheets (*.xls)"
- Height = 225
- Left = 2160
- TabIndex = 21
- Tag = "1211"
- Top = 3350
- Width = 3200
- End
- Begin VB.CheckBox chkExcelTemplate
- Caption = "Templates (*.xlt)"
- Height = 225
- Left = 2160
- TabIndex = 22
- Tag = "1212"
- Top = 3650
- Width = 3200
- End
- Begin VB.CommandButton btnBrowseDirInput
- Caption = "..."
- Height = 315
- Left = 4740
- TabIndex = 17
- Top = 900
- Width = 400
- End
- Begin VB.TextBox txtInputDir
- Height = 315
- Left = 450
- TabIndex = 16
- Tag = "1205"
- Text = "C:\"
- Top = 900
- Width = 4155
- End
- Begin VB.CheckBox chkIncludeSubdirs
- Caption = "Include subdirectories in the analysis"
- Height = 225
- Left = 450
- TabIndex = 18
- Tag = "1202"
- Top = 1300
- Width = 4965
- End
- Begin VB.Label lblDocTypes
- Caption = "Document types to analyze"
- Height = 225
- Left = 450
- TabIndex = 95
- Tag = "1206"
- Top = 2250
- Width = 4905
- End
- Begin VB.Label lblChooseDocs
- AutoSize = -1 'True
- Caption = "Choose the documents you want to analyze"
- BeginProperty Font
- Name = "Arial"
- Size = 8.25
- Charset = 0
- Weight = 700
- Underline = 0 'False
- Italic = 0 'False
- Strikethrough = 0 'False
- EndProperty
- Height = 195
- Left = 300
- TabIndex = 94
- Tag = "1200"
- Top = 240
- Width = 5115
- WordWrap = -1 'True
- End
- Begin VB.Label Label13
- AutoSize = -1 'True
- Caption = "PowerPoint"
- Height = 225
- Index = 2
- Left = 690
- TabIndex = 74
- Tag = "1213"
- Top = 4100
- Width = 1245
- WordWrap = -1 'True
- End
- Begin VB.Label Label13
- AutoSize = -1 'True
- Caption = "Excel"
- Height = 225
- Index = 1
- Left = 690
- TabIndex = 73
- Tag = "1210"
- Top = 3350
- Width = 1245
- WordWrap = -1 'True
- End
- Begin VB.Label Label13
- AutoSize = -1 'True
- Caption = "Word"
- Height = 225
- Index = 0
- Left = 690
- TabIndex = 72
- Tag = "1207"
- Top = 2600
- Width = 1245
- WordWrap = -1 'True
- End
- Begin VB.Label Label1
- Caption = "Location of Microsoft Office documents"
- Height = 200
- Left = 450
- TabIndex = 59
- Tag = "1201"
- Top = 600
- Width = 4935
- End
- End
- End
- Begin VB.Frame fraStep
- BorderStyle = 0 'None
- Caption = "Options"
- Enabled = 0 'False
- BeginProperty Font
- Name = "MS Sans Serif"
- Size = 8.25
- Charset = 0
- Weight = 400
- Underline = 0 'False
- Italic = 0 'False
- Strikethrough = 0 'False
- EndProperty
- Height = 4905
- Index = 2
- Left = -10000
- TabIndex = 33
- Tag = "2002"
- Top = 0
- Width = 8235
- Begin VB.PictureBox Picture11
- BorderStyle = 0 'None
- Height = 555
- Left = 7260
- ScaleHeight = 555
- ScaleWidth = 705
- TabIndex = 75
- Top = 1890
- Width = 705
- Begin VB.CommandButton btnBrowseDirOut
- Caption = "..."
- Height = 375
- Left = 90
- TabIndex = 28
- Top = 90
- Width = 495
- End
- End
- Begin VB.TextBox txtResultsName
- Height = 375
- Left = 3030
- TabIndex = 26
- Tag = "1302"
- Text = "Analysis Results.xls"
- Top = 1140
- Width = 3045
- End
- Begin VB.TextBox txtOutputDir
- Height = 375
- Left = 3030
- TabIndex = 27
- Top = 1980
- Width = 4185
- End
- Begin VB.PictureBox Picture5
- Appearance = 0 'Flat
- BorderStyle = 0 'None
- ForeColor = &H80000008&
- Height = 1365
- Left = 3300
- ScaleHeight = 1365
- ScaleWidth = 4635
- TabIndex = 57
- TabStop = 0 'False
- Top = 3210
- Width = 4635
- Begin VB.OptionButton rdbResultsPrompt
- Caption = "Ask me before overwriting"
- Height = 435
- Left = 0
- TabIndex = 29
- Tag = "1312"
- Top = 0
- Value = -1 'True
- Width = 4485
- End
- Begin VB.OptionButton rdbResultsOverwrite
- Caption = "Overwrite without asking me"
- Height = 435
- Left = 0
- TabIndex = 30
- Tag = "1313"
- Top = 450
- Width = 4455
- End
- Begin VB.OptionButton rdbResultsAppend
- Caption = "Append the new results to the existing results"
- Height = 675
- Left = 0
- TabIndex = 31
- Tag = "1314"
- Top = 780
- Visible = 0 'False
- Width = 4515
- End
- End
- Begin VB.Frame Frame3
- Appearance = 0 'Flat
- BackColor = &H80000005&
- BorderStyle = 0 'None
- Enabled = 0 'False
- ForeColor = &H0099A8AC&
- Height = 5175
- Index = 0
- Left = 0
- TabIndex = 39
- Top = 0
- Width = 2535
- Begin VB.PictureBox Picture1
- Appearance = 0 'Flat
- BackColor = &H80000005&
- BorderStyle = 0 'None
- ForeColor = &H80000008&
- Height = 1200
- Index = 3
- Left = 350
- Picture = "Wizard.frx":56F97
- ScaleHeight = 1200
- ScaleWidth = 1980
- TabIndex = 40
- TabStop = 0 'False
- Top = 3690
- Width = 1980
- End
- Begin VB.Label lblStep3_4
- BackColor = &H00EED3C2&
- BackStyle = 0 'Transparent
- Caption = "4. Analyze"
- ForeColor = &H00BF4F59&
- Height = 195
- Left = 120
- TabIndex = 91
- Tag = "1044"
- Top = 1800
- Width = 2140
- End
- Begin VB.Label Label12
- BackStyle = 0 'Transparent
- Caption = "Steps"
- BeginProperty Font
- Name = "Arial"
- Size = 8.25
- Charset = 0
- Weight = 700
- Underline = 0 'False
- Italic = 0 'False
- Strikethrough = 0 'False
- EndProperty
- Height = 255
- Index = 0
- Left = 120
- TabIndex = 53
- Tag = "1040"
- Top = 240
- Width = 1335
- End
- Begin VB.Label Label9
- BackColor = &H00EED3C2&
- BackStyle = 0 'Transparent
- Caption = "2. Documents"
- ForeColor = &H00BF4F59&
- Height = 255
- Index = 0
- Left = 120
- TabIndex = 43
- Tag = "1042"
- Top = 1080
- Width = 2140
- End
- Begin VB.Label Label8
- BackColor = &H00EED3C2&
- Caption = "3. Results"
- ForeColor = &H00BF4F59&
- Height = 255
- Index = 0
- Left = 120
- TabIndex = 42
- Tag = "1043"
- Top = 1440
- Width = 2140
- End
- Begin VB.Label Label7
- BackColor = &H00EED3C2&
- BackStyle = 0 'Transparent
- Caption = "1. Introduction"
- ForeColor = &H00BF4F59&
- Height = 255
- Index = 0
- Left = 120
- TabIndex = 41
- Tag = "1041"
- Top = 720
- Width = 2140
- End
- Begin VB.Line Line3
- Index = 0
- X1 = 120
- X2 = 2280
- Y1 = 480
- Y2 = 480
- End
- End
- Begin VB.Label Label3
- Caption = "File name for the results spreadsheet"
- Height = 195
- Left = 3030
- TabIndex = 71
- Tag = "1301"
- Top = 840
- Width = 4785
- End
- Begin VB.Label lblResultsLocation
- Caption = "Location"
- Height = 195
- Left = 3030
- TabIndex = 70
- Tag = "1304"
- Top = 1710
- Width = 4755
- End
- Begin VB.Label Label13
- AutoSize = -1 'True
- Caption = "If results already exisit under the same name and location:"
- Height = 195
- Index = 5
- Left = 3030
- TabIndex = 38
- Tag = "1311"
- Top = 2730
- Width = 4230
- WordWrap = -1 'True
- End
- Begin VB.Line Line2
- BorderColor = &H00808080&
- Index = 0
- X1 = 2550
- X2 = 2550
- Y1 = 0
- Y2 = 4920
- End
- Begin VB.Label lblChooseResults
- AutoSize = -1 'True
- Caption = "Choose where and how to save the analysis results"
- BeginProperty Font
- Name = "Arial"
- Size = 8.25
- Charset = 0
- Weight = 700
- Underline = 0 'False
- Italic = 0 'False
- Strikethrough = 0 'False
- EndProperty
- Height = 195
- Left = 2880
- TabIndex = 37
- Tag = "1300"
- Top = 240
- Width = 5055
- WordWrap = -1 'True
- End
- End
- Begin VB.Frame fraStep
- BorderStyle = 0 'None
- Caption = "Analyze"
- Enabled = 0 'False
- BeginProperty Font
- Name = "MS Sans Serif"
- Size = 8.25
- Charset = 0
- Weight = 400
- Underline = 0 'False
- Italic = 0 'False
- Strikethrough = 0 'False
- EndProperty
- Height = 4905
- Index = 3
- Left = 0
- TabIndex = 34
- Tag = "3000"
- Top = 0
- Width = 2.45745e5
- Begin VB.PictureBox Picture12
- Appearance = 0 'Flat
- BorderStyle = 0 'None
- ForeColor = &H80000008&
- Height = 4905
- Left = 10020
- ScaleHeight = 4905
- ScaleWidth = 8175
- TabIndex = 69
- TabStop = 0 'False
- Top = 0
- Width = 8175
- End
- Begin VB.CommandButton btnPrepare
- Caption = "Prepare"
- Enabled = 0 'False
- Height = 375
- Left = 3340
- TabIndex = 97
- Tag = "1411"
- Top = 4410
- Visible = 0 'False
- Width = 4000
- End
- Begin VB.CommandButton btnRunAnalysis
- Caption = "Run"
- Height = 375
- Left = 3340
- TabIndex = 35
- Tag = "1404"
- Top = 3410
- Width = 4000
- End
- Begin VB.CommandButton btnViewResults
- Caption = "View"
- Enabled = 0 'False
- Height = 375
- Left = 3340
- TabIndex = 36
- Tag = "1406"
- Top = 3910
- Width = 4000
- End
- Begin VB.Frame Frame3
- Appearance = 0 'Flat
- BackColor = &H80000005&
- BorderStyle = 0 'None
- Enabled = 0 'False
- ForeColor = &H0099A8AC&
- Height = 5175
- Index = 3
- Left = 0
- TabIndex = 44
- Top = 0
- Width = 2535
- Begin VB.PictureBox Picture4
- Appearance = 0 'Flat
- BackColor = &H80000005&
- BorderStyle = 0 'None
- ForeColor = &H80000008&
- Height = 1575
- Index = 2
- Left = 150
- ScaleHeight = 1575
- ScaleWidth = 2385
- TabIndex = 55
- TabStop = 0 'False
- Top = 3390
- Width = 2385
- Begin VB.PictureBox Picture1
- Appearance = 0 'Flat
- BackColor = &H80000005&
- BorderStyle = 0 'None
- ForeColor = &H80000008&
- Height = 1200
- Index = 2
- Left = 200
- Picture = "Wizard.frx":5E58D
- ScaleHeight = 1200
- ScaleWidth = 2475
- TabIndex = 56
- TabStop = 0 'False
- Tag = "1060"
- Top = 300
- Width = 2480
- End
- End
- Begin VB.Label lblStep4_4
- BackColor = &H00EED3C2&
- Caption = "4. Analyze"
- ForeColor = &H00BF4F59&
- Height = 255
- Left = 120
- TabIndex = 92
- Tag = "1044"
- Top = 1800
- Width = 2140
- End
- Begin VB.Label Label12
- BackStyle = 0 'Transparent
- Caption = "Steps"
- BeginProperty Font
- Name = "Arial"
- Size = 8.25
- Charset = 0
- Weight = 700
- Underline = 0 'False
- Italic = 0 'False
- Strikethrough = 0 'False
- EndProperty
- Height = 255
- Index = 5
- Left = 120
- TabIndex = 54
- Tag = "1040"
- Top = 240
- Width = 1335
- End
- Begin VB.Label Label9
- BackColor = &H00EED3C2&
- BackStyle = 0 'Transparent
- Caption = "2. Documents"
- ForeColor = &H00BF4F59&
- Height = 255
- Index = 3
- Left = 120
- TabIndex = 47
- Tag = "1042"
- Top = 1080
- Width = 2140
- End
- Begin VB.Label Label8
- BackColor = &H00EED3C2&
- BackStyle = 0 'Transparent
- Caption = "3. Results"
- ForeColor = &H00BF4F59&
- Height = 255
- Index = 3
- Left = 120
- TabIndex = 46
- Tag = "1043"
- Top = 1440
- Width = 2140
- End
- Begin VB.Label Label7
- BackColor = &H00EED3C2&
- BackStyle = 0 'Transparent
- Caption = "1. Introduction"
- ForeColor = &H00BF4F59&
- Height = 255
- Index = 3
- Left = 120
- TabIndex = 45
- Tag = "1041"
- Top = 720
- Width = 2140
- End
- Begin VB.Line Line3
- Index = 3
- X1 = 120
- X2 = 2280
- Y1 = 480
- Y2 = 480
- End
- End
- Begin VB.Label lblSkippedOld
- Caption = "Skipped <TOPIC> documets, because they were too old"
- Height = 195
- Left = 3180
- TabIndex = 60
- Top = 2880
- Width = 4935
- End
- Begin VB.Label lblSetupDone
- AutoSize = -1 'True
- Caption = "Run the analysis and view the results"
- BeginProperty Font
- Name = "Arial"
- Size = 8.25
- Charset = 0
- Weight = 700
- Underline = 0 'False
- Italic = 0 'False
- Strikethrough = 0 'False
- EndProperty
- Height = 195
- Left = 2880
- TabIndex = 96
- Tag = "1400"
- Top = 240
- Width = 4905
- WordWrap = -1 'True
- End
- Begin VB.Label lblNumPPT
- Caption = "<TOPIC> Presentations"
- Height = 255
- Left = 4620
- TabIndex = 88
- Tag = "1409"
- Top = 2280
- Width = 3375
- End
- Begin VB.Label lblNumPOT
- Caption = "<TOPIC> Templates"
- Height = 255
- Left = 4620
- TabIndex = 87
- Tag = "1403"
- Top = 2550
- Width = 3375
- End
- Begin VB.Label lblNumXLS
- Caption = "<TOPIC> Spreadsheets"
- Height = 255
- Left = 4620
- TabIndex = 86
- Tag = "1408"
- Top = 1680
- Width = 3375
- End
- Begin VB.Label lblNumXLT
- Caption = "<TOPIC> Templates"
- Height = 255
- Left = 4620
- TabIndex = 85
- Tag = "1403"
- Top = 1950
- Width = 3375
- End
- Begin VB.Label Label16
- AutoSize = -1 'True
- Caption = "PowerPoint"
- Height = 195
- Left = 3360
- TabIndex = 82
- Tag = "1213"
- Top = 2280
- Width = 1095
- WordWrap = -1 'True
- End
- Begin VB.Label Label13
- Caption = "Word"
- Height = 705
- Index = 10
- Left = 0
- TabIndex = 81
- Tag = "1207"
- Top = 0
- Width = 1245
- End
- Begin VB.Label Label13
- Caption = "Excel"
- Height = 705
- Index = 9
- Left = 0
- TabIndex = 80
- Tag = "1210"
- Top = 810
- Width = 1245
- End
- Begin VB.Label Label13
- Caption = "PowerPoint"
- Height = 585
- Index = 8
- Left = 0
- TabIndex = 79
- Tag = "1213"
- Top = 1620
- Width = 1245
- End
- Begin VB.Label Label13
- Caption = "Word"
- Height = 585
- Index = 7
- Left = 0
- TabIndex = 78
- Tag = "1207"
- Top = 0
- Width = 1245
- End
- Begin VB.Label Label13
- Caption = "Excel"
- Height = 585
- Index = 6
- Left = 0
- TabIndex = 77
- Tag = "1210"
- Top = 810
- Width = 1245
- End
- Begin VB.Label Label13
- Caption = "PowerPoint"
- Height = 465
- Index = 4
- Left = 0
- TabIndex = 76
- Tag = "1213"
- Top = 1620
- Width = 1245
- End
- Begin VB.Label lblNumTemplates
- Caption = "<TOPIC> Templates"
- Height = 255
- Left = 4620
- TabIndex = 52
- Tag = "1403"
- Top = 1350
- Width = 3375
- End
- Begin VB.Label lblNumDocs
- Caption = "<TOPIC> Documents"
- Height = 255
- Left = 4620
- TabIndex = 51
- Tag = "1402"
- Top = 1080
- Width = 3375
- End
- Begin VB.Line Line6
- BorderColor = &H00808080&
- X1 = 2640
- X2 = 8040
- Y1 = 3270
- Y2 = 3270
- End
- Begin VB.Label Label15
- AutoSize = -1 'True
- Caption = "Excel"
- Height = 195
- Left = 3360
- TabIndex = 50
- Tag = "1210"
- Top = 1680
- Width = 1095
- WordWrap = -1 'True
- End
- Begin VB.Label Label14
- AutoSize = -1 'True
- Caption = "Word"
- Height = 195
- Left = 3360
- TabIndex = 49
- Tag = "1207"
- Top = 1080
- Width = 1110
- WordWrap = -1 'True
- End
- Begin VB.Label lblTotalNumDocs
- AutoSize = -1 'True
- Caption = "A total of <TOPIC> documents will be analyzed:"
- Height = 195
- Left = 3180
- TabIndex = 48
- Tag = "1401"
- Top = 660
- Width = 4800
- WordWrap = -1 'True
- End
- Begin VB.Line Line2
- BorderColor = &H00808080&
- Index = 3
- X1 = 2550
- X2 = 2550
- Y1 = 0
- Y2 = 4920
- End
- End
- Begin VB.PictureBox picNav
- Align = 2 'Align Bottom
- Appearance = 0 'Flat
- BorderStyle = 0 'None
- BeginProperty Font
- Name = "MS Sans Serif"
- Size = 8.25
- Charset = 0
- Weight = 400
- Underline = 0 'False
- Italic = 0 'False
- Strikethrough = 0 'False
- EndProperty
- ForeColor = &H80000008&
- Height = 570
- Left = 0
- ScaleHeight = 570
- ScaleWidth = 8175
- TabIndex = 4
- TabStop = 0 'False
- Top = 4950
- Width = 8175
- Begin VB.CommandButton cmdNav
- Caption = "Finish"
- Height = 312
- Index = 4
- Left = 5325
- MaskColor = &H00000000&
- TabIndex = 14
- Tag = "1023"
- Top = 120
- Width = 1320
- End
- Begin VB.CommandButton cmdNav
- Caption = "Next >>"
- Height = 312
- Index = 3
- Left = 3870
- MaskColor = &H00000000&
- TabIndex = 13
- Tag = "1022"
- Top = 120
- Width = 1320
- End
- Begin VB.CommandButton cmdNav
- Caption = "<< Back"
- Height = 312
- Index = 2
- Left = 2535
- MaskColor = &H00000000&
- TabIndex = 12
- Tag = "1021"
- Top = 120
- Width = 1320
- End
- Begin VB.CommandButton cmdNav
- Cancel = -1 'True
- Caption = "Cancel"
- Height = 312
- Index = 1
- Left = 6750
- MaskColor = &H00000000&
- TabIndex = 15
- Tag = "1024"
- Top = 120
- Width = 1320
- End
- End
- Begin VB.Label Label18
- Caption = "<TOPIC> Documents"
- Height = 255
- Left = 0
- TabIndex = 84
- Top = 0
- Width = 2085
- WordWrap = -1 'True
- End
- Begin VB.Label Label17
- Caption = "<TOPIC> Templates"
- Height = 255
- Left = 0
- TabIndex = 83
- Top = 390
- Width = 3615
- WordWrap = -1 'True
- End
- Begin VB.Line Line4
- BorderColor = &H00808080&
- X1 = 0
- X2 = 8160
- Y1 = 4920
- Y2 = 4920
- End
-End
-Attribute VB_Name = "frmWizard"
-Attribute VB_GlobalNameSpace = False
-Attribute VB_Creatable = False
-Attribute VB_PredeclaredId = True
-Attribute VB_Exposed = False
-' *******************************************************************************
-' *
-' * Copyright 2000, 2010 Oracle and/or its affiliates. All rights reserved. Use of this
-' * product is subject to license terms.
-' *
-' *******************************************************************************
-
-Option Explicit
-
-Const TOPIC_STR = "<TOPIC>"
-Const TOPIC2_STR = "<TOPIC2>"
-Const CR_STR = "<CR>"
-Const CDEBUG_LEVEL_DEFAULT = 1 'Will output all Debug output to analysis.log file
-Const CSUPPORTED_VERSION = 9#
-
-Const NUM_STEPS = 4
-
-Const CAPPNAME_WORD = "Word"
-Const CAPPNAME_EXCEL = "Excel"
-Const CAPPNAME_POWERPOINT = "PowerPoint"
-Const CANALYZING = "Analyzing"
-
-Const BTN_CANCEL = 1
-Const BTN_BACK = 2
-Const BTN_NEXT = 3
-Const BTN_FINISH = 4
-
-Const STEP_INTRO = 0
-Const STEP_1 = 1
-Const STEP_2 = 2
-Const STEP_FINISH = 3
-
-Const DIR_NONE = 0
-Const DIR_BACK = 1
-Const DIR_NEXT = 2
-
-Const CPRODUCTNAME_STR = "<PRODUCTNAME>"
-
-Const CSTR_ANALYSIS_LOG_DONE = "Done"
-
-Const CINPUT_DIR = "indir"
-Const COUTPUT_DIR = "outdir"
-Const CRESULTS_FILE = "resultsfile"
-Const CLOG_FILE = "logfile"
-Const CRESULTS_TEMPLATE = "resultstemplate"
-Const CRESULTS_EXIST = "resultsexist"
-Const CPROMPT_FILE = "promptfile"
-Const COVERWRITE_FILE = "overwritefile"
-Const CAPPEND_FILE = "appendfile"
-Const CNEW_RESULTS_FILE = "newresultsfile"
-Const CINCLUDE_SUBDIRS = "includesubdirs"
-Const CDEBUG_LEVEL = "debuglevel"
-Const CTYPE_WORDDOC = "typeworddoc"
-Const CTYPE_WORDDOT = "typeworddot"
-Const CTYPE_EXCELDOC = "typeexceldoc"
-Const CTYPE_EXCELDOT = "typeexceldot"
-Const CTYPE_PPDOC = "typepowerpointdoc"
-Const CTYPE_PPDOT = "typepowerpointdot"
-Const COUTPUT_TYPE = "outputtype"
-Const COUTPUT_TYPE_XLS = "xls"
-Const COUTPUT_TYPE_XML = "xml"
-Const COUTPUT_TYPE_BOTH = "both"
-Const CVERSION = "version"
-Const CDOPREPARE = "prepare"
-Const CTITLE = "title"
-Const CIGNORE_OLD_DOCS = "ignoreolddocuments"
-Const CISSUE_LIMIT = "issuesmonthlimit"
-Const CISSUE_LIMIT_DAW = 6
-Private mIssueLimit As Integer
-Const CDEFAULT_PASSWORD = "defaultpassword"
-Const CSTR_TEST_PASSWORD = "test"
-Private mDefaultPassword As String
-
-Const CLAST_CHECKPOINT As String = "LastCheckpoint"
-Const CNEXT_FILE As String = "NextFile"
-Const C_ABORT_ANALYSIS As String = "AbortAnalysis"
-
-Const CNUMBER_TOTAL_DOCS = "total_numberdocs"
-Const CNUMBER_DOCS_DOC = "numberdocs_doc"
-Const CNUMBER_TEMPLATES_DOT = "numbertemplates_dot"
-Const CNUMBER_DOCS_XLS = "numberdocs_xls"
-Const CNUMBER_TEMPLATES_XLT = "numbertemplates_xlt"
-Const CNUMBER_DOCS_PPT = "numberdocs_ppt"
-Const CNUMBER_TEMPLATES_POT = "numbertemplates_pot"
-Const CSTART_TIME = "start"
-Const CEND_TIME = "end"
-Const CELAPSED_TIME = "time_for_analysis"
-Const CWINVERSION = "win_version"
-Const CUSER_LOCALE_INFO = "user_locale"
-Const CSYS_LOCALE_INFO = "system_locale"
-Const CWORD_VERSION = "word_ver"
-Const CEXCEL_VERSION = "excel_ver"
-Const CPOWERPOINT_VERSION = "powerpoint_ver"
-Const CNOT_INSTALLED = "not installed"
-
-Const CRESULTS_FILE_EXTENSION = ".xls"
-Const CCONFIG_BACKUP_EXT = "_bak"
-Const CDEFAULT_README_NAME = "UserGuide"
-
-Const C_DOCS_LESS_3_MONTH = "DocumentsYoungerThan3Month"
-Const C_DOCS_LESS_6_MONTH = "DocumentsYoungerThan6Month"
-Const C_DOCS_LESS_12_MONTH = "DocumentsYoungerThan12Month"
-Const C_DOCS_MORE_12_MONTH = "DocumentsOlderThan12Month"
-
-'module level vars
-Dim mnCurStep As Integer
-Dim mbTrue As Boolean
-Dim mbFalse As Boolean
-Dim mLblSteps As String
-Dim mChbSubdirs As String
-
-Dim mWordDocCount As Long
-Dim mExcelDocCount As Long
-Dim mPPDocCount As Long
-
-Dim mWordTemplateCount As Long
-Dim mExcelTemplateCount As Long
-Dim mPPTemplateCount As Long
-Dim mTotalDocCount As Long
-Dim mIgnoredDocCount As Long
-
-Public VBInst As VBIDE.VBE
-Dim mbFinishOK As Boolean
-Dim mbAllowExit As Boolean
-Private mStrTrue As String
-Private mLogFilePath As String
-Private mDebugLevel As String
-Private mIniFilePath As String
-Private mbDocCountCurrent As Boolean
-Private mbDoPrepare As Boolean
-
-Dim mDocFiles As CollectedFiles
-
-Private Declare Sub InitCommonControls Lib "comctl32" ()
-Private Declare Function GetTickCount Lib "kernel32" () As Long
-Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
-
-Const FORMAT_MESSAGE_FROM_SYSTEM = &H1000
-
-Private Declare Function FormatMessage Lib "kernel32" Alias _
- "FormatMessageA" (ByVal dwFlags As Long, lpSource As Long, _
- ByVal dwMessageId As Long, ByVal dwLanguageId As Long, _
- ByVal lpBuffer As String, ByVal nSize As Long, Arguments As Any) As Long
-
-
-Private Const HKEY_CURRENT_USER As Long = &H80000001
-Private Const HKEY_LOCAL_MACHINE As Long = &H80000002
-
-Const WORD_APP = "word"
-Const EXCEL_APP = "excel"
-Const PP_APP = "pp"
-Const REG_KEY_APP_PATH = "Software\Microsoft\Windows\CurrentVersion\App Paths\"
-
-
-Function GetAppPath(myApp As String) As String
- Dim myPath As String
-
- If (myApp = WORD_APP) Then
- myPath = GetRegistryInfo(HKEY_LOCAL_MACHINE, REG_KEY_APP_PATH & "winword.exe", "")
- ElseIf (myApp = EXCEL_APP) Then
- myPath = GetRegistryInfo(HKEY_LOCAL_MACHINE, REG_KEY_APP_PATH & "excel.exe", "")
- ElseIf (myApp = PP_APP) Then
- myPath = GetRegistryInfo(HKEY_LOCAL_MACHINE, REG_KEY_APP_PATH & "powerpnt.exe", "")
- Else
- MsgBox "Unknown application: " & myApp, vbCritical
- Exit Function
- End If
-
- If (myPath = "") Then
- If (myApp = WORD_APP) Then
- myPath = GetRegistryInfo(HKEY_CURRENT_USER, REG_KEY_APP_PATH & "winword.exe", "")
- ElseIf (myApp = EXCEL_APP) Then
- myPath = GetRegistryInfo(HKEY_CURRENT_USER, REG_KEY_APP_PATH & "excel.exe", "")
- ElseIf (myApp = PP_APP) Then
- myPath = GetRegistryInfo(HKEY_CURRENT_USER, REG_KEY_APP_PATH & "powerpnt.exe", "")
- End If
- End If
-
- GetAppPath = myPath
-End Function
-
-Function GetDriverDoc(myApp As String) As String
- Dim myPath As String
- Dim errStr As String
- Dim fso As New FileSystemObject
-
- If (myApp = WORD_APP) Then
- myPath = fso.GetAbsolutePathName(CBASE_RESOURCE_DIR & "\" & CWORD_DRIVER_FILE)
- ElseIf (myApp = EXCEL_APP) Then
- myPath = fso.GetAbsolutePathName(CBASE_RESOURCE_DIR & "\" & CEXCEL_DRIVER_FILE)
- ElseIf (myApp = PP_APP) Then
- myPath = fso.GetAbsolutePathName(CBASE_RESOURCE_DIR & "\" & CPP_DRIVER_FILE)
- Else
- MsgBox "Unknown application: " & myApp, vbCritical
- GoTo FinalExit
- End If
-
- If Not fso.FileExists(myPath) Then
- errStr = ReplaceTopic2Tokens(GetResString(ERR_MISSING_WORD_DRIVER), _
- TOPIC_STR, myPath, CR_STR, Chr(13))
- WriteDebug errStr
- MsgBox errStr, vbCritical
- GoTo FinalExit
- End If
-
- GetDriverDoc = myPath
-
-FinalExit:
- Set fso = Nothing
-End Function
-
-
-
-
-Private Function AutomationMessageText(lCode As Long) As String
- Dim sRtrnCode As String
- Dim lRet As Long
-
- sRtrnCode = Space$(256)
- lRet = FormatMessage(FORMAT_MESSAGE_FROM_SYSTEM, 0&, lCode, 0&, _
- sRtrnCode, 256&, 0&)
- If lRet > 0 Then
- AutomationMessageText = Left(sRtrnCode, lRet)
- Else
- AutomationMessageText = "Error not found."
- End If
-
-End Function
-
-Private Sub btnBrowseDirInput_Click()
- Dim folder As String
- Dim StartDir As String
-
- If Len(txtInputDir.Text) > 0 Then
- StartDir = txtInputDir.Text
- End If
-
- folder = BrowseForFolder(Me, GetResString(BROWSE_FOR_DOC_DIR_ID), StartDir)
- If Len(folder) = 0 Then
- Exit Sub 'User Selected Cancel
- End If
- txtInputDir.Text = folder
- txtInputDir.ToolTipText = folder
-
- If Len(txtOutputDir.Text) = 0 Then
- txtOutputDir.Text = folder
- txtOutputDir.ToolTipText = folder
- End If
-End Sub
-
-Private Sub btnBrowseDirOut_Click()
- Dim folder As String
- Dim StartDir As String
-
- If Len(txtOutputDir.Text) > 0 Then
- StartDir = txtOutputDir.Text
- End If
-
- folder = BrowseForFolder(Me, GetResString(BROWSE_FOR_RES_DIR_ID), StartDir)
- If Len(folder) = 0 Then
- Exit Sub 'User Selected Cancel
- End If
- txtOutputDir.Text = folder
- txtOutputDir.ToolTipText = folder
-End Sub
-
-Private Sub btnPrepare_Click()
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "btnPrepare_Click"
-
- mbDoPrepare = True
- mbAllowExit = True
-
- btnViewResults.Enabled = False
- btnRunAnalysis.Enabled = False
- btnPrepare.Enabled = False
-
- cmdNav(BTN_CANCEL).Enabled = False
- cmdNav(BTN_BACK).Enabled = False
- cmdNav(BTN_NEXT).Enabled = False
- cmdNav(BTN_FINISH).Enabled = False
- btnPrepare.Caption = GetResString(RUNBTN_RUNNING_ID)
-
- Dim str As String
-
- If RunAnalysis(True) Then
- cmdNav(BTN_FINISH).Enabled = True
- btnRunAnalysis.Enabled = True
- btnViewResults.Enabled = True
- btnPrepare.Enabled = True
- btnViewResults.SetFocus
- str = ReplaceTopic2Tokens(GetResString(RID_STR_ENG_OTHER_PREPARE_COMPLETED_PREP_ID), _
- TOPIC_STR, getOutputDir, CR_STR, Chr(13))
- MsgBox str, vbInformation
- Else
- cmdNav(BTN_FINISH).Enabled = False
- btnRunAnalysis.Enabled = True
- btnViewResults.Enabled = False
- btnPrepare.Enabled = False
- End If
-
-FinalExit:
- mbDoPrepare = False
- cmdNav(BTN_CANCEL).Enabled = True
- cmdNav(BTN_BACK).Enabled = True
- cmdNav(BTN_NEXT).Enabled = False
- btnPrepare.Caption = GetResString(PREPAREBTN_START_ID)
- Exit Sub
-
-HandleErrors:
- cmdNav(BTN_FINISH).Enabled = False
- btnRunAnalysis.Enabled = True
- btnViewResults.Enabled = False
- btnPrepare.Enabled = False
-
- WriteDebug currentFunctionName & " : " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-
-Private Sub cmdNav_Click(Index As Integer)
- On Error GoTo HandleError
- Dim currentFunctionName As String
- currentFunctionName = "cmdNav_Click"
- Dim nAltStep As Integer
- Dim rc As Long
- Dim fso As Scripting.FileSystemObject
-
- Select Case Index
- Case BTN_CANCEL
- 'Copy backup configuration file over existing
- If fso Is Nothing Then
- Set fso = New Scripting.FileSystemObject
- End If
- If fso.FileExists(mIniFilePath & CCONFIG_BACKUP_EXT) Then
- DeleteFile mIniFilePath
- AttemptToCopyFile mIniFilePath & CCONFIG_BACKUP_EXT, mIniFilePath
- End If
- Set mDocFiles = Nothing
-
- Unload Me
-
- Case BTN_BACK
- nAltStep = mnCurStep - 1
- SetStep nAltStep, DIR_BACK
-
- Case BTN_NEXT
- nAltStep = mnCurStep + 1
- SetStep nAltStep, DIR_NEXT
-
- Case BTN_FINISH
- If (Not mbAllowExit) Then
- Dim str As String
- Dim response As Integer
-
- str = ReplaceTopicTokens(GetResString(RID_STR_ENG_ANALYSE_NOT_RUN), CR_STR, Chr(13))
- response = MsgBox(str, vbOKCancel + vbInformation)
- If response = vbOK Then ' User chose Ok.
- mbAllowExit = True
- End If
- End If
-
- If (mbAllowExit) Then
- DeleteFile mIniFilePath & CCONFIG_BACKUP_EXT
- Set mDocFiles = Nothing
- Unload Me
- End If
- End Select
-
-FinalExit:
- Set fso = Nothing
- Exit Sub
-
-HandleError:
- WriteDebug currentFunctionName & " : " & Err.Number & " " & Err.Description & " " & Err.Source
-
- Resume FinalExit
-End Sub
-
-Private Sub btnRunAnalysis_Click()
- On Error GoTo HandleErrors
- Dim bViewResults As Boolean
- Dim str As String
- Dim response As Integer
-
- btnViewResults.Enabled = False
- btnRunAnalysis.Enabled = False
- btnPrepare.Enabled = False
- bViewResults = False
- mbAllowExit = True
-
- cmdNav(BTN_CANCEL).Enabled = False
- cmdNav(BTN_BACK).Enabled = False
- cmdNav(BTN_NEXT).Enabled = False
- cmdNav(BTN_FINISH).Enabled = False
- btnRunAnalysis.Caption = GetResString(RUNBTN_RUNNING_ID)
-
- If RunAnalysis(False) Then
- cmdNav(BTN_FINISH).Enabled = True
- btnRunAnalysis.Enabled = True
- btnViewResults.Enabled = True
- btnPrepare.Enabled = True
- btnViewResults.SetFocus
- btnRunAnalysis.Caption = GetResString(RUNBTN_START_ID)
-
- str = ReplaceTopicTokens(GetResString(RID_STR_ENG_ANALYZE_COMPLETED_ID), CR_STR, Chr(13))
- response = MsgBox(str, vbOKCancel + vbInformation)
- If response = vbOK Then ' User chose Ok.
- bViewResults = True
- End If
- Else
- btnRunAnalysis.Enabled = True
- btnViewResults.Enabled = False
- btnPrepare.Enabled = False
- End If
-
-FinalExit:
- cmdNav(BTN_CANCEL).Enabled = True
- cmdNav(BTN_BACK).Enabled = True
- cmdNav(BTN_NEXT).Enabled = False
- btnRunAnalysis.Caption = GetResString(RUNBTN_START_ID)
-
- If bViewResults Then
- btnViewResults_Click
- End If
-
- Exit Sub
-
-HandleErrors:
- cmdNav(BTN_FINISH).Enabled = False
- btnRunAnalysis.Enabled = True
- btnViewResults.Enabled = False
- btnPrepare.Enabled = False
- WriteDebug "Document Analysis: View Analysis Results" & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-Private Sub btnViewResults_Click()
- On Error GoTo HandleErrors
- Dim resultsFile As String
- Dim fso As New FileSystemObject
- Dim str As String
-
- mbAllowExit = True
-
- resultsFile = getOutputDir & "\" & txtResultsName.Text
-
- If GetIniSetting(COUTPUT_TYPE) = COUTPUT_TYPE_XML Or _
- GetIniSetting(COUTPUT_TYPE) = COUTPUT_TYPE_BOTH Then
-
- Dim base As String
- Dim path As String
- base = fso.GetParentFolderName(resultsFile) & "\" & fso.GetBaseName(txtResultsName.Text)
- If CheckWordDocsToAnalyze Then
- path = base & "_" & CAPPNAME_WORD & "." & COUTPUT_TYPE_XML
- End If
- If CheckExcelDocsToAnalyze Then
- If path <> "" Then path = path & vbLf
- path = path & base & "_" & CAPPNAME_EXCEL & "." & COUTPUT_TYPE_XML
- End If
- If CheckPPDocsToAnalyze Then
- If path <> "" Then path = path & vbLf
- path = path & base & "_" & CAPPNAME_POWERPOINT & "." & COUTPUT_TYPE_XML
- End If
-
- str = ReplaceTopic2Tokens(GetResString(XML_RESULTS_ID), _
- TOPIC_STR, path, CR_STR, Chr(13))
- WriteDebug str
- MsgBox str, vbInformation
- If GetIniSetting(COUTPUT_TYPE) = COUTPUT_TYPE_XML Then
- Resume FinalExit
- End If
- End If
-
- If Not fso.FileExists(resultsFile) Then
- str = ReplaceTopic2Tokens(GetResString(ERR_MISSING_RESULTS_DOC), _
- TOPIC_STR, resultsFile, CR_STR, Chr(13))
- WriteDebug str
- MsgBox str, vbCritical
- Resume FinalExit
- End If
-
- Dim xl As Excel.application
- Set xl = New Excel.application
- xl.Visible = True
- xl.Workbooks.Open resultsFile
-
-FinalExit:
- Set xl = Nothing
- Set fso = Nothing
-
- Exit Sub
-HandleErrors:
- WriteDebug "Document Analysis: View Analysis Results" & Err.Number & " " & Err.Description & " " & Err.Source
-End Sub
-
-Private Sub Form_Activate()
- Dim currentFunctionName As String
- Dim missingFile As String
- currentFunctionName = "Form_Activate"
- On Error GoTo HandleErrors
-
- If Not CheckNeededFiles(missingFile) Then
- Dim str As String
- str = ReplaceTopic2Tokens(GetResString(ERR_MISSING_WORD_DRIVER), _
- TOPIC_STR, missingFile, CR_STR, Chr(13))
- WriteDebug str
- MsgBox str, vbCritical
-
- End 'Exit application - some needed files are missing
- End If
-
-FinalExit:
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & " : " & Err.Number & " " & Err.Description & " " & Err.Source
- GoTo FinalExit
-End Sub
-
-Private Sub Form_Initialize()
- Dim currentFunctionName As String
- currentFunctionName = "Form_Initialize"
- On Error GoTo ErrorHandler
- Call InitCommonControls 'Use Windows XP Visual Style
-
-FinalExit:
- Exit Sub
-
-ErrorHandler:
- WriteDebug currentFunctionName & " : " & Err.Number & " " & Err.Description & " " & Err.Source
- GoTo FinalExit
-End Sub
-
-Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
- If KeyCode = vbKeyF1 Then
- 'cmdNav_Click BTN_HELP
- End If
-End Sub
-
-Private Sub Form_Load()
- Const COS_CHECK = "oscheck"
-
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "Form_Load"
-
- Dim fso As New FileSystemObject
- Dim i As Integer
- 'init all vars
- mbFinishOK = False
- mbTrue = True
- mbFalse = False
-
- mLogFilePath = GetLogFilePath
- mIniFilePath = GetIniFilePath
- mbDocCountCurrent = False
- mbDoPrepare = False
- mbAllowExit = False
-
- 'Check OS before running
- Dim bOSCheck As Boolean
- bOSCheck = IIf(GetIniSetting(COS_CHECK) = "False", False, True)
-
- If bOSCheck Then
- If Not IsWin98Plus Then
- Dim str As String
- Dim winVer As RGB_WINVER
- str = ReplaceTopic2Tokens(GetResString(ERR_SUPPORTED_OSVERSION), _
- TOPIC_STR, GetWinVersion(winVer), CR_STR, Chr(13))
- WriteDebug str
- MsgBox str, vbCritical
-
- End 'Exit application - unsupported OS
- End If
- Else
- Err.Clear
- WriteDebug "IsWin2000Plus OS Check bypassed by analysis.ini oscheck=False setting"
- End If
-
-
- For i = 0 To NUM_STEPS - 1
- fraStep(i).Left = -10000
- Next
-
- 'Load All string info for Form
- LoadResStrings Me
-
- frmWizard.Caption = ReplaceTopicTokens(GetResString(TITLE_ID), CPRODUCTNAME_STR, _
- GetResString(PRODUCTNAME_ID))
- lblIntroduction1.Caption = ReplaceTopicTokens(GetResString(INTRO1_ID), CPRODUCTNAME_STR, _
- GetResString(PRODUCTNAME_ID))
- mLblSteps = GetResString(LBL_STEPS_ID)
- mChbSubdirs = GetResString(CHK_SUBDIRS_ID)
-
- ' Setup Doc Preparation specific strings
- If gBoolPreparation Then
- ' Steps
- lblStep1_4.Caption = GetResString(RID_STR_ENG_SIDEBAR_ANALYZE_PREP_ID)
- lblStep2_4.Caption = GetResString(RID_STR_ENG_SIDEBAR_ANALYZE_PREP_ID)
- lblStep3_4.Caption = GetResString(RID_STR_ENG_SIDEBAR_ANALYZE_PREP_ID)
- lblStep4_4.Caption = GetResString(RID_STR_ENG_SIDEBAR_ANALYZE_PREP_ID)
-
- ' Preparation - Step 1. Introduction
- lblIntroduction1.Caption = ReplaceTopicTokens(GetResString(RID_STR_ENG_INTRODUCTION_INTRO1_PREP_ID), CPRODUCTNAME_STR, _
- GetResString(PRODUCTNAME_ID))
- lblIntroduction2.Caption = GetResString(RID_STR_ENG_INTRODUCTION_INTRO2_PREP_ID)
- lblIntroduction3.Caption = GetResString(RID_STR_ENG_INTRODUCTION_INTRO3_PREP_ID)
-
- ' Preparation - Step 2. Documents
- lblChooseDocs.Caption = GetResString(RID_STR_ENG_DOCUMENTS_CHOOSE_DOCUMENTS_PREP_ID)
- lblDocTypes.Caption = GetResString(RID_STR_ENG_DOCUMENTS_CHOOSE_DOC_TYPES_PREP_ID)
- 'mChbSubdirs = GetResString(RID_STR_ENG_DOCUMENTS_INCLUDE_SUBDIRECTORIES_PREP_ID)
- chkIgnoreOld.Caption = GetResString(RID_STR_IGNORE_OLDER_CB_ID)
-
- cbIgnoreOld.Clear
- cbIgnoreOld.AddItem (GetResString(RID_STR_IGNORE_OLDER_3_MONTHS_ID))
- cbIgnoreOld.AddItem (GetResString(RID_STR_IGNORE_OLDER_6_MONTHS_ID))
- cbIgnoreOld.AddItem (GetResString(RID_STR_IGNORE_OLDER_12_MONTHS_ID))
- cbIgnoreOld.ListIndex = 0
-
- ' Preparation - Step 3. Results
- lblChooseResults.Caption = GetResString(RID_STR_ENG_RESULTS_CHOOSE_OPTIONS_PREP_ID)
- txtResultsName.Text = GetResString(RID_STR_ENG_RESULTS_ANALYSIS_XLS_PREP_ID)
-
- 'Show Append option
- rdbResultsAppend.Visible = True
-
- ' Preparation - Step 4. Analysis
- lblSetupDone.Caption = GetResString(RID_STR_ENG_ANALYZE_SETUP_COMPLETE_PREP_ID)
- btnPrepare.Visible = True
- Else
- ' The next line is a work around for a wrong translated string and should be removed
- ' when RID_STR_ENG_RESULTS_CHOOSE_OPTIONS has been corrected
- lblChooseResults.Caption = GetResString(RID_STR_ENG_RESULTS_CHOOSE_OPTIONS_PREP_ID)
- mDefaultPassword = IIf(GetIniSetting(CDEFAULT_PASSWORD) = "", _
- CSTR_TEST_PASSWORD, GetIniSetting(CDEFAULT_PASSWORD))
- End If
-
- SetStep 0, DIR_NEXT
- Dim tmpStr As String
-
- 'Setup Params
- tmpStr = GetIniSetting(CINPUT_DIR)
- If tmpStr <> "" Then
- txtInputDir.Text = tmpStr
- txtInputDir.ToolTipText = tmpStr
- End If
- tmpStr = GetIniSetting(COUTPUT_DIR)
- If tmpStr <> "" Then
- If Right(tmpStr, 1) = ":" And Len(tmpStr) = 2 Then
- tmpStr = tmpStr & "\"
- End If
- txtOutputDir.Text = tmpStr
- txtOutputDir.ToolTipText = tmpStr
- End If
- tmpStr = GetIniSetting(CRESULTS_FILE)
- If tmpStr <> "" Then txtResultsName.Text = tmpStr
-
- rdbResultsPrompt.value = False
- rdbResultsOverwrite.value = False
- rdbResultsAppend.value = False
- Dim resultsSetting As String
- resultsSetting = GetIniSetting(CRESULTS_EXIST)
- If resultsSetting = CPROMPT_FILE Then
- rdbResultsPrompt.value = True
- ElseIf resultsSetting = CAPPEND_FILE Then
- rdbResultsAppend.value = True
- Else
- rdbResultsOverwrite.value = True
- End If
-
- chkWordDoc.value = IIf(GetIniSetting(CTYPE_WORDDOC) = CStr(True), vbChecked, 0)
- chkWordTemplate.value = IIf(GetIniSetting(CTYPE_WORDDOT) = CStr(True), vbChecked, 0)
- chkExcelDoc.value = IIf(GetIniSetting(CTYPE_EXCELDOC) = CStr(True), vbChecked, 0)
- chkExcelTemplate.value = IIf(GetIniSetting(CTYPE_EXCELDOT) = CStr(True), vbChecked, 0)
- chkPPDoc.value = IIf(GetIniSetting(CTYPE_PPDOC) = CStr(True), vbChecked, 0)
- chkPPTemplate.value = IIf(GetIniSetting(CTYPE_PPDOT) = CStr(True), vbChecked, 0)
- chkIncludeSubdirs.value = IIf(GetIniSetting(CINCLUDE_SUBDIRS) = CStr(True), vbChecked, 0)
- mDebugLevel = IIf(GetIniSetting(CDEBUG_LEVEL) = "", CDEBUG_LEVEL_DEFAULT, GetIniSetting(CDEBUG_LEVEL))
- chkIgnoreOld.value = IIf(GetIniSetting(CIGNORE_OLD_DOCS) = CStr(True), vbChecked, 0)
-
- mIssueLimit = IIf(GetIniSetting(CISSUE_LIMIT) = "", CISSUE_LIMIT_DAW, GetIniSetting(CISSUE_LIMIT))
- If (mIssueLimit <= 3) Then
- cbIgnoreOld.ListIndex = 0
- ElseIf (mIssueLimit <= 6) Then
- cbIgnoreOld.ListIndex = 1
- Else
- cbIgnoreOld.ListIndex = 2
- End If
-
- 'Always ensure at least one doc type is selected on startup
- If (chkWordDoc.value <> vbChecked) And _
- (chkWordTemplate.value <> vbChecked) And _
- (chkExcelDoc.value <> vbChecked) And _
- (chkExcelTemplate.value <> vbChecked) And _
- (chkPPDoc.value <> vbChecked) And _
- (chkPPTemplate.value <> vbChecked) Then
-
- chkWordDoc.value = vbChecked
- End If
-
-FinalExit:
- Set fso = Nothing
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & " : " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-Private Sub SetStep(nStep As Integer, nDirection As Integer)
- On Error GoTo HandleError
- Const driveTypeIsCDROM = 4
- Dim val As String
- Dim fso As Scripting.FileSystemObject
- Set fso = New Scripting.FileSystemObject
- Dim drive
-
-
- mbDocCountCurrent = False
-
- Select Case nStep
- Case STEP_INTRO
- 'MsgBox "Enter Intro"
- Case STEP_1
- 'Leave Introduction
- 'Workaround - resource bug for SubDir checkbox, have to set it explicitly
- chkIncludeSubdirs.Caption = mChbSubdirs
- Case STEP_2
- 'Leave Documents
-
- Set drive = fso.GetDrive(fso.GetDriveName(txtInputDir.Text))
- If drive.DriveType = driveTypeIsCDROM Then
- If Not drive.IsReady Then
- MsgBox GetResString(ERR_CDROM_NOT_READY), vbCritical
- Exit Sub
- End If
- End If
-
- If txtInputDir.Text = "" Or Not fso.FolderExists(txtInputDir.Text) Then ' fso.FolderExists() has replaced dir()
- MsgBox ReplaceTopicTokens(GetResString(ERR_NO_DOC_DIR), _
- CR_STR, Chr(13)), vbCritical
- Exit Sub
- End If
-
- If Not CheckUserChosenDocsToAnalyze Then
- MsgBox GetResString(ERR_NO_DOC_TYPES), vbCritical
- Exit Sub
- End If
- 'Expand directory name only without path to full path
- txtInputDir.Text = fso.GetAbsolutePathName(txtInputDir.Text)
-
- If txtOutputDir.Text = "" Then
- txtOutputDir.Text = txtInputDir.Text
- End If
-
- mbFinishOK = False
-
- 'Workaround - label resource bug for Steps, have to set it explicitly
- Label12(0).Caption = mLblSteps
- Label12(5).Caption = mLblSteps
- Case STEP_FINISH
- 'Leave Results
- If Not CheckResultsDir(getOutputDir) Then
- Exit Sub
- End If
-
- 'Expand directory name only without path to full path
- txtOutputDir.Text = fso.GetAbsolutePathName(txtOutputDir)
-
- 'Check Results file is there and has a valid extension
- If fso.GetBaseName(txtResultsName.Text) = "" Then
- txtResultsName.Text = GetResString(SETUP_ANALYSIS_XLS_ID)
- End If
- txtResultsName.Text = fso.GetBaseName(txtResultsName.Text) & CRESULTS_FILE_EXTENSION
-
- Screen.MousePointer = vbHourglass
- DeleteFile mLogFilePath
- Set mDocFiles = Nothing
- If Not CheckNumberDocsToAnalyze Then
- Screen.MousePointer = vbDefault
- Exit Sub
- End If
-
- Screen.MousePointer = vbDefault
-
- btnRunAnalysis.Enabled = True
-
- If GetNumberOfDocsToAnalyze = 0 Then
- btnRunAnalysis.Enabled = False
- End If
-
- 'Backup configuration
- If Not AttemptToCopyFile(mIniFilePath, mIniFilePath & CCONFIG_BACKUP_EXT) Then
- Exit Sub
- End If
-
- 'Save current Wizard Settings
- WriteWizardSettingsToLog mIniFilePath
-
- 'If results file already exists, enable View and Prepare
- If fso.FileExists(getOutputDir & "\" & txtResultsName.Text) Then
- btnViewResults.Enabled = True
- btnPrepare.Enabled = True
- End If
-
- mbFinishOK = True
- End Select
-
- 'move to new step
- fraStep(mnCurStep).Enabled = False
- fraStep(nStep).Left = 0
- If nStep <> mnCurStep Then
- fraStep(mnCurStep).Left = -10000
- fraStep(mnCurStep).Enabled = False
- End If
- fraStep(nStep).Enabled = True
-
- SetNavBtns nStep
- Exit Sub
-
-FinalExit:
- Set fso = Nothing
- Set drive = Nothing
- Exit Sub
-
-HandleError:
- Screen.MousePointer = vbDefault
- WriteDebug "Document Analysis: SetStep() " & Err.Number & " " & Err.Description & " " & Err.Source
-
- Resume FinalExit
-End Sub
-
-Function CheckResultsDir(resultsDir As String) As Boolean
- On Error GoTo HandleError
- Dim fso As Scripting.FileSystemObject
- Set fso = New Scripting.FileSystemObject
- Const driveTypeIsCDROM = 4
- Const readOnlyFolderRemainder = 1
- Dim drive
- CheckResultsDir = False
-
- If resultsDir = "" Then
- MsgBox ReplaceTopicTokens(GetResString(ERR_NO_RESULTS_DIRECTORY), _
- CR_STR, Chr(13)), vbCritical
- CheckResultsDir = False
- Exit Function
- End If
-
- Set drive = fso.GetDrive(fso.GetDriveName(resultsDir))
- If drive.DriveType = driveTypeIsCDROM Then 'If CD-ROM Drive Then
- Dim Msg1 As String
- Msg1 = ReplaceTopic2Tokens(GetResString(ERR_CREATE_FILE), _
- TOPIC_STR, txtResultsName.Text, CR_STR, Chr(13))
- MsgBox Msg1, vbCritical
- CheckResultsDir = False
- Exit Function
- End If
-
-
- If Not fso.FolderExists(resultsDir) Then
- Dim Msg, Style, response
-
- Msg = ReplaceTopicTokens(GetResString(ERR_NO_RES_DIR), CR_STR, Chr(13))
- Style = vbYesNo + vbQuestion + vbDefaultButton1 ' Define buttons.
-
- response = MsgBox(Msg, Style)
- If response = vbYes Then ' User chose Yes.
- If Not CreateDir(getOutputDir) Then
- CheckResultsDir = False
- Exit Function
- End If
- Else ' User chose No.
- CheckResultsDir = False
- Exit Function
- End If
- End If
-
- Dim testFile As String
- testFile = resultsDir & "\" & fso.GetTempName
- Do While fso.FileExists(testFile)
- testFile = resultsDir & "\" & fso.GetTempName
- Loop
-
- On Error GoTo HandleReadOnly
- Dim aText As TextStream
- Set aText = fso.CreateTextFile(testFile, False, False)
- aText.WriteLine ("Dies ist ein Test.")
- aText.Close
- fso.DeleteFile (testFile)
-
-' GetAttr doesn't work reliable ( returns read only for 'my Documents' and rw for read only network folder
-' If ((GetAttr(resultsDir) Mod 2) = readOnlyFolderRemainder) Then 'If the attribute is odd then the folder is read-only
-' MsgBox GetResString(ERR_NO_WRITE_TO_READ_ONLY_FOLDER), vbCritical
-' CheckResultsDir = False
-' Exit Function
-' End If
-
- CheckResultsDir = True
-
- Exit Function
-HandleError:
- WriteDebug "Document Analysis: CheckResultsDir() " & Err.Number & " " & Err.Description & " " & Err.Source
- CheckResultsDir = False
- Exit Function
-HandleReadOnly:
- Dim str As String
- str = ReplaceTopic2Tokens(GetResString(ERR_CREATE_FILE), _
- TOPIC_STR, txtResultsName.Text, CR_STR, Chr(13))
- MsgBox str, vbCritical
- CheckResultsDir = False
- Exit Function
-End Function
-
-Function CheckUserChosenDocsToAnalyze() As Boolean
- CheckUserChosenDocsToAnalyze = Not ((chkWordDoc.value <> vbChecked) And (chkWordTemplate.value <> vbChecked) And _
- (chkExcelDoc.value <> vbChecked) And (chkExcelTemplate.value <> vbChecked) And _
- (chkPPDoc.value <> vbChecked) And (chkPPTemplate.value <> vbChecked))
-End Function
-
-Function AttemptToCopyFile(Source As String, dest As String) As Boolean
- On Error GoTo HandleErrors
- Dim fso As Scripting.FileSystemObject
- Set fso = New Scripting.FileSystemObject
-
- If fso.FileExists(Source) Then
- fso.CopyFile Source, dest
- End If
-
- 'True if no source or copy succeded
- AttemptToCopyFile = True
-
-FinalExit:
- Set fso = Nothing
- Exit Function
-
-HandleErrors:
- AttemptToCopyFile = False
- Dim str As String
- str = ReplaceTopic2Tokens(GetResString(ERR_CREATE_FILE), _
- TOPIC_STR, mIniFilePath & CCONFIG_BACKUP_EXT, CR_STR, Chr(13))
- Resume FinalExit
-
-End Function
-
-Function CreateDir(dir As String) As Boolean
- On Error GoTo HandleErrors
- Dim fso As Scripting.FileSystemObject
- Set fso = New Scripting.FileSystemObject
-
- fso.CreateFolder (dir)
-
- CreateDir = True
-
-FinalExit:
- Set fso = Nothing
- Exit Function
-
-HandleErrors:
- Dim str As String
- str = ReplaceTopic2Tokens(GetResString(ERR_CREATE_DIR), _
- TOPIC_STR, dir, CR_STR, Chr(13))
- Select Case Err.Number
- Case 76
- WriteDebug str
- MsgBox str, vbCritical
- CreateDir = False
- Case 58
- 'Don't care if it exists already
- CreateDir = True
- Case Else
- WriteDebug str
- MsgBox str, vbCritical
- CreateDir = False
- End Select
- Resume FinalExit
-
-End Function
-Private Sub SetNavBtns(nStep As Integer)
- mnCurStep = nStep
-
- If mnCurStep = 0 Then
- cmdNav(BTN_BACK).Enabled = False
- cmdNav(BTN_NEXT).Enabled = True
- ElseIf mnCurStep = NUM_STEPS - 1 Then
- cmdNav(BTN_NEXT).Enabled = False
- cmdNav(BTN_BACK).Enabled = True
- Else
- cmdNav(BTN_BACK).Enabled = True
- cmdNav(BTN_NEXT).Enabled = True
- End If
-
- If mbFinishOK Then
- cmdNav(BTN_FINISH).Enabled = True
- Else
- cmdNav(BTN_FINISH).Enabled = False
- End If
-End Sub
-Function CheckForSupportedApp(app As String, lowerVerLimit As Long) As Boolean
- Dim appRegStr As String
- Dim appVer As Long
- appRegStr = GetRegistryInfo(HKEY_CLASSES_ROOT, app & ".Application\CurVer", "")
- appVer = val(Right(appRegStr, Len(appRegStr) - Len(app & ".Application.")))
- If appVer >= lowerVerLimit Then
- CheckForSupportedApp = True
- Else
- CheckForSupportedApp = False
- End If
-End Function
-Function GetAppVersion(app As String) As Long
- Dim appRegStr As String
- Dim appVer As Long
- appRegStr = GetRegistryInfo(HKEY_CLASSES_ROOT, app & ".Application\CurVer", "")
- GetAppVersion = val(Right(appRegStr, Len(appRegStr) - Len(app & ".Application.")))
-End Function
-Function GetInstalledApp(app As String) As String
- GetInstalledApp = GetRegistryInfo(HKEY_CLASSES_ROOT, app & ".Application\CurVer", "")
-End Function
-
-Sub WriteInfoToApplicationLog(wordAppStr As String, excelAppStr As String, ppAppStr As String)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "WriteInfoToApplicationLog"
-
- Dim userLCID As Long
- userLCID = GetUserDefaultLCID()
- Dim sysLCID As Long
- sysLCID = GetSystemDefaultLCID()
-
- WriteToLog CWORD_VERSION, IIf(wordAppStr <> "", wordAppStr, CNOT_INSTALLED)
- WriteToLog CEXCEL_VERSION, IIf(excelAppStr <> "", excelAppStr, CNOT_INSTALLED)
- WriteToLog CPOWERPOINT_VERSION, IIf(ppAppStr <> "", ppAppStr, CNOT_INSTALLED)
-
- WriteToLog CUSER_LOCALE_INFO, _
- "langid: " & GetUserLocaleInfo(userLCID, LOCALE_ILANGUAGE) & ": " & _
- GetUserLocaleInfo(userLCID, LOCALE_SENGLANGUAGE) & _
- "-" & GetUserLocaleInfo(userLCID, LOCALE_SENGCOUNTRY) & _
- " abrv: " & GetUserLocaleInfo(userLCID, LOCALE_SISO639LANGNAME) & _
- "-" & GetUserLocaleInfo(userLCID, LOCALE_SISO3166CTRYNAME) & _
- " sdate: " & GetUserLocaleInfo(userLCID, LOCALE_SSHORTDATE)
-
- WriteToLog CSYS_LOCALE_INFO, _
- "langid: " & GetUserLocaleInfo(sysLCID, LOCALE_ILANGUAGE) & ": " & _
- GetUserLocaleInfo(sysLCID, LOCALE_SENGLANGUAGE) & _
- "-" & GetUserLocaleInfo(sysLCID, LOCALE_SENGCOUNTRY) & _
- " abrv: " & GetUserLocaleInfo(sysLCID, LOCALE_SISO639LANGNAME) & _
- "-" & GetUserLocaleInfo(sysLCID, LOCALE_SISO3166CTRYNAME) & _
- " sdate: " & GetUserLocaleInfo(userLCID, LOCALE_SSHORTDATE)
-
- Dim myWinVer As RGB_WINVER
- GetWinVersion myWinVer
- WriteToLog CWINVERSION, myWinVer.VersionName & " " & myWinVer.VersionNo & _
- " " & myWinVer.ServicePack & _
- " build " & myWinVer.BuildNo
- WriteToLog CNUMBER_TOTAL_DOCS, CStr(mTotalDocCount)
- WriteToLog CNUMBER_DOCS_DOC, CStr(mWordDocCount)
- WriteToLog CNUMBER_TEMPLATES_DOT, CStr(mWordTemplateCount)
- WriteToLog CNUMBER_DOCS_XLS, CStr(mExcelDocCount)
- WriteToLog CNUMBER_TEMPLATES_XLT, CStr(mExcelTemplateCount)
- WriteToLog CNUMBER_DOCS_PPT, CStr(mPPDocCount)
- WriteToLog CNUMBER_TEMPLATES_POT, CStr(mPPTemplateCount)
-FinalExit:
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & " : " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-Function CheckTemplatePath(sMigrationResultsTemplatePath As String, fso As FileSystemObject) As Boolean
- If Not fso.FileExists(sMigrationResultsTemplatePath) Then
- Dim str As String
- str = ReplaceTopic2Tokens(GetResString(ERR_MISSING_RESULTS_TEMPLATE), _
- TOPIC_STR, sMigrationResultsTemplatePath, CR_STR, Chr(13))
- WriteDebug str
- MsgBox str, vbCritical
- CheckTemplatePath = False
- Else
- CheckTemplatePath = True
- End If
-End Function
-
-Function RunAnalysis(bDoPrepare) As Boolean
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "RunAnalysis"
- Dim tstart As Single 'timer var for this routine only
- Dim tend As Single 'timer var for this routine only
- Dim fso As New FileSystemObject
- Dim wordAppStr As String
- Dim excelAppStr As String
- Dim ppAppStr As String
- Dim sMigrationResultsTemplatePath As String
- Dim startDate As Variant
- Dim bSuccess
-
- bSuccess = True
- startDate = Now
- tstart = GetTickCount()
-
- app.OleRequestPendingMsgText = GetResString(RUNBTN_RUNNING_ID)
- app.OleRequestPendingMsgTitle = frmWizard.Caption
-
- wordAppStr = GetInstalledApp(CAPPNAME_WORD)
- excelAppStr = GetInstalledApp(CAPPNAME_EXCEL)
- ppAppStr = GetInstalledApp(CAPPNAME_POWERPOINT)
- 'Write locale, version info and settings to the Application log
- WriteInfoToApplicationLog wordAppStr, excelAppStr, ppAppStr
-
- 'Check for template
- sMigrationResultsTemplatePath = fso.GetAbsolutePathName(CBASE_RESOURCE_DIR & "\" & CRESULTS_TEMPLATE_FILE)
- If Not CheckTemplatePath(sMigrationResultsTemplatePath, fso) Then
- bSuccess = False
- GoTo FinalExit
- End If
-
- 'Check for installed Apps
- If Not CheckInstalledApps(wordAppStr, excelAppStr, ppAppStr) Then
- bSuccess = False
- GoTo FinalExit
- End If
-
- If bDoPrepare Then
- 'Show MsgBox ( to give apps some time to quit )
- Dim strMsgBox As String
- Dim response As Integer
-
- strMsgBox = ReplaceTopic2Tokens(GetResString(RID_STR_ENG_OTHER_PREPARE_PROMPT_PREP_ID), _
- TOPIC_STR, getOutputDir & "\" & txtResultsName.Text, TOPIC2_STR, getOutputDir)
- strMsgBox = ReplaceTopicTokens(strMsgBox, CR_STR, Chr(13))
- response = MsgBox(strMsgBox, Buttons:=vbOKCancel + vbInformation)
-
- If response <> vbOK Then
- bSuccess = False
- GoTo FinalExit
- End If
- End If
-
- 'Write Wizard Setting to Application log
- WriteWizardSettingsToLog mLogFilePath
-
- 'Write to Analysis ini file - used by driver docs
- WriteCommonParamsToLog sMigrationResultsTemplatePath, mLogFilePath, mIniFilePath, fso
-
- Screen.MousePointer = vbHourglass
- ' Doc Counts are setup by CheckNumberDocsToAnalyze() when user moves to Analysis Panel
- ' Takes account of user Options selected and inspects source directory
- Dim analysisAborted As Boolean
- analysisAborted = False
-
- SetupInputVariables mLogFilePath, fso
-
- Load ShowProgress
- Call ShowProgress.SP_Init(mDocFiles.WordFiles.count + _
- mDocFiles.ExcelFiles.count + _
- mDocFiles.PowerPointFiles.count)
-
- Dim myOffset As Long
- myOffset = 0
- If (mDocFiles.WordFiles.count > 0) Then
- bSuccess = AnalyseList(mDocFiles.WordFiles, "word", mIniFilePath, myOffset, analysisAborted)
- 'bSuccess = RunWordAnalysis(sMigrationResultsTemplatePath, mLogFilePath, fso)
- End If
-
- myOffset = mDocFiles.WordFiles.count
- If ((mDocFiles.ExcelFiles.count > 0) And (Not analysisAborted)) Then
- bSuccess = bSuccess And _
- AnalyseList(mDocFiles.ExcelFiles, "excel", mIniFilePath, myOffset, analysisAborted)
- 'bSuccess = RunExcelAnalysis(sMigrationResultsTemplatePath, mLogFilePath, fso)
- End If
-
- myOffset = myOffset + mDocFiles.ExcelFiles.count
- If ((mDocFiles.PowerPointFiles.count > 0) And (Not analysisAborted)) Then
- bSuccess = bSuccess And _
- AnalyseList(mDocFiles.PowerPointFiles, "pp", mIniFilePath, myOffset, analysisAborted)
- 'bSuccess = RunPPAnalysis(sMigrationResultsTemplatePath, mLogFilePath, fso)
- End If
-
- SetupInputVariables mLogFilePath, fso
-
- tend = GetTickCount()
- WriteToLog CELAPSED_TIME, (FormatNumber((tend - tstart) / 1000, 0) & " seconds: ") & _
- (FormatNumber((tend - tstart), 0) & " miliseconds")
-
-FinalExit:
- Unload ShowProgress
- Screen.MousePointer = vbDefault
- WriteToLog CSTART_TIME, CDate(startDate)
- WriteToLog CEND_TIME, Now
- Set fso = Nothing
-
- RunAnalysis = bSuccess
- Exit Function
-
-HandleErrors:
- bSuccess = False
- WriteDebug currentFunctionName & " : " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Function
-
-Function CheckInstalledApps(wordAppStr As String, excelAppStr As String, ppAppStr As String) As Boolean
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- Dim str As String
- currentFunctionName = "CheckInstalledApps"
-
- Dim missingInstalledApps As String
- Dim unsupportedApps As String
- Dim runningApps As String
- Dim bSuccess As Boolean
-
- bSuccess = False
-
- If mWordDocCount > 0 Or mWordTemplateCount > 0 Then
- If wordAppStr = "" Then 'Word not installed
- missingInstalledApps = CAPPNAME_WORD
- ElseIf Not CheckForSupportedApp(CAPPNAME_WORD, CSUPPORTED_VERSION) Then
- unsupportedApps = CAPPNAME_WORD
- ElseIf IsOfficeAppRunning(CAPPNAME_WORD) Then
- runningApps = CAPPNAME_WORD
- End If
- End If
-
- If excelAppStr = "" Then
- If missingInstalledApps <> "" Then missingInstalledApps = missingInstalledApps & ", "
- missingInstalledApps = missingInstalledApps & CAPPNAME_EXCEL
- ElseIf Not CheckForSupportedApp(CAPPNAME_EXCEL, CSUPPORTED_VERSION) Then
- If unsupportedApps <> "" Then unsupportedApps = unsupportedApps & ", "
- unsupportedApps = unsupportedApps & CAPPNAME_EXCEL
- ElseIf IsOfficeAppRunning(CAPPNAME_EXCEL) Then
- If runningApps <> "" Then runningApps = runningApps & ", "
- runningApps = runningApps & CAPPNAME_EXCEL
- End If
-
- If mPPDocCount > 0 Or mPPTemplateCount > 0 Then
- If ppAppStr = "" Then 'PP not installed
- If missingInstalledApps <> "" Then missingInstalledApps = missingInstalledApps & ", "
- missingInstalledApps = missingInstalledApps & CAPPNAME_POWERPOINT
- ElseIf Not CheckForSupportedApp(CAPPNAME_POWERPOINT, CSUPPORTED_VERSION) Then
- If unsupportedApps <> "" Then unsupportedApps = unsupportedApps & ", "
- unsupportedApps = unsupportedApps & CAPPNAME_POWERPOINT
- ElseIf IsOfficeAppRunning(CAPPNAME_POWERPOINT) Then
- If runningApps <> "" Then runningApps = runningApps & ", "
- runningApps = runningApps & CAPPNAME_POWERPOINT
- End If
- End If
-
- If missingInstalledApps <> "" Then
- str = ReplaceTopic2Tokens(GetResString(ERR_NOT_INSTALLED), _
- TOPIC_STR, missingInstalledApps, CR_STR, Chr(13))
- WriteDebug str
- MsgBox str, vbCritical
- GoTo FinalExit
- End If
-
- If unsupportedApps <> "" Then
- str = ReplaceTopic2Tokens(GetResString(ERR_SUPPORTED_VERSION), _
- TOPIC_STR, unsupportedApps, CR_STR, Chr(13))
- WriteDebug str
- MsgBox str, vbCritical
- GoTo FinalExit
- End If
-
- If runningApps <> "" Then
- str = ReplaceTopic2Tokens(GetResString(ERR_APPLICATION_IN_USE), _
- TOPIC_STR, runningApps, CR_STR, Chr(13))
- WriteDebug str
- MsgBox str, vbCritical
- GoTo FinalExit
- End If
-
- 'Check for Excel automation server
- If CheckForExcel Then
- str = ReplaceTopicTokens(GetResString(ERR_EXCEL_OPEN), _
- CR_STR, Chr(13))
- WriteDebug str
- MsgBox str, vbCritical
- bSuccess = False
- GoTo FinalExit
- End If
-
- bSuccess = True
-
-FinalExit:
- CheckInstalledApps = bSuccess
- Exit Function
-
-HandleErrors:
- bSuccess = False
- WriteDebug currentFunctionName & " : " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Function
-
-Function RunPPAnalysis(resultsTemplate As String, logFile As String, fsObject As FileSystemObject) As Boolean
-'DV: do we need this? get some error handling ideas here
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "RunPPAnalysis"
- Const APP_PP = "PowerPoint"
- Dim str As String
- Dim bSuccess
- bSuccess = False
-
- If (chkPPDoc.value <> vbChecked) And (chkPPTemplate.value <> vbChecked) Then
- RunPPAnalysis = True
- Exit Function
- End If
-
- Dim sPPDriverDocPath As String
-
- sPPDriverDocPath = fsObject.GetAbsolutePathName(CBASE_RESOURCE_DIR & "\" & CPP_DRIVER_FILE)
- If Not fsObject.FileExists(sPPDriverDocPath) Then
- str = ReplaceTopic2Tokens(GetResString(ERR_MISSING_PP_DRIVER), _
- TOPIC_STR, sPPDriverDocPath, CR_STR, Chr(13))
- WriteDebug str
- MsgBox str, vbCritical
- bSuccess = False
- GoTo FinalExit
- End If
-
- Dim pp As PowerPoint.application
- Dim po As Object
- Dim aPres As PowerPoint.Presentation
- Dim RegValue As Long
- Set po = GetObject(sPPDriverDocPath)
- Set pp = po.application
-
- If val(pp.Version) < CSUPPORTED_VERSION Then
- str = ReplaceTopic2Tokens(GetResString(ERR_SUPPORTED_VERSION), _
- TOPIC_STR, pp.Version, CR_STR, Chr(13))
- WriteDebug str
- MsgBox str, vbCritical
- bSuccess = False
- GoTo FinalExit
- End If
-
- If Not CheckForAccesToPPVBProject(pp, aPres) Then
- RegValue = -1
- If Not GiveAccessToMacroProject(APP_PP, pp.Version, RegValue) Then
- Dim Style, response
- str = ReplaceTopic2Tokens(GetResString(ERR_NO_ACCESS_TO_VBPROJECT), _
- TOPIC_STR, CAPPNAME_POWERPOINT, CR_STR, Chr(13))
- WriteDebug str
- Style = vbYesNo + vbQuestion + vbDefaultButton1
-
- response = MsgBox(str, Style)
- If response <> vbYes Then
- bSuccess = False
- GoTo FinalExit
- End If
- End If
- End If
-
- Set aPres = pp.Presentations(1)
- Dim ppSlideHidden As PowerPoint.Slide
- Set ppSlideHidden = aPres.Slides(2)
-
- 'Setup Input Variables
- 'SetupInputVariables resultsTemplate, logFile, fsObject, CAPPNAME_POWERPOINT
-
- 'Run PowerPoint Analysis
- pp.Run (fsObject.GetFileName(CBASE_RESOURCE_DIR & "\" & CPP_DRIVER_FILE) & "!AnalysisDriver.AnalyseDirectory")
-
- bSuccess = True
-
-FinalExit:
- 'Cannot seem to close it down from VB
- 'Workaround is to close it in macro
- '
- 'If Not aPres Is Nothing Then
- ' aPres.Saved = msoTrue
- 'End If
- 'If Not pp Is Nothing Then pp.Quit
-
- 'Swallow error as we are closing down PP from macro
- 'Does not seem to be possible to close it down from VB
- On Error Resume Next
- If RegValue <> -1 Then
- SetDefaultRegValue APP_PP, pp.Version, RegValue
- End If
- If RegValue = 0 Then
- DeleteRegValue APP_PP, pp.Version
- End If
-
- If Not pp Is Nothing Then
- pp.Run (fsObject.GetFileName(CBASE_RESOURCE_DIR & "\" & CPP_DRIVER_FILE) & "!ApplicationSpecific.QuitPowerPoint")
- End If
-
-
- Set aPres = Nothing
- Set pp = Nothing
- Set po = Nothing
-
- RunPPAnalysis = bSuccess
- Exit Function
-
-HandleErrors:
- bSuccess = False
- Set pp = Nothing
- Dim failedDoc As String
-
- WriteDebug currentFunctionName & " : " & Err.Number & " " & Err.Description & " " & Err.Source
-
- failedDoc = GetDebug(CAPPNAME_POWERPOINT, CANALYZING)
- If failedDoc = "" Or failedDoc = CSTR_ANALYSIS_LOG_DONE Then
- str = ReplaceTopic2Tokens(GetResString(ERR_AUTOMATION_FAILURE), _
- TOPIC_STR, CAPPNAME_POWERPOINT, CR_STR, Chr(13))
- Else
- str = ReplaceTopic2Tokens(GetResString(ERR_PP_DRIVER_CRASH), _
- TOPIC_STR, failedDoc, CR_STR, Chr(13))
- End If
-
- WriteDebug str
- MsgBox str, vbCritical
-
- Resume FinalExit
-End Function
-
-Sub SetupInputVariables(logFile As String, fso As FileSystemObject)
- Dim bNewResultsFile As Boolean
-
- bNewResultsFile = CheckCreateNewResultsFile(fso)
-
- WriteToLog CNEW_RESULTS_FILE, IIf(bNewResultsFile, "True", "False"), mIniFilePath
- WriteToLog CNEW_RESULTS_FILE, IIf(bNewResultsFile, "True", "False"), logFile
-End Sub
-
-
-
-Function RunExcelAnalysis(resultsTemplate As String, logFile As String, fsObject As FileSystemObject) As Boolean
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "RunExcelAnalysis"
- Const APP_EXCEL = "Excel"
- Dim str As String
- Dim bSuccess
- bSuccess = False
-
- If (chkExcelDoc.value <> vbChecked) And (chkExcelTemplate.value <> vbChecked) Then
- RunExcelAnalysis = True
- Exit Function
- End If
-
- Dim xl As Excel.application
- Dim aWb As Excel.Workbook
- Dim sExcelDriverDocPath As String
- Dim RegValue As Long
-
- sExcelDriverDocPath = fsObject.GetAbsolutePathName(CBASE_RESOURCE_DIR & "\" & CEXCEL_DRIVER_FILE)
- If Not fsObject.FileExists(sExcelDriverDocPath) Then
- str = ReplaceTopic2Tokens(GetResString(ERR_MISSING_EXCEL_DRIVER), _
- TOPIC_STR, sExcelDriverDocPath, CR_STR, Chr(13))
- WriteDebug str
- MsgBox str, vbCritical
- bSuccess = False
- GoTo FinalExit
- End If
-
- Set xl = GetExcelInstance
- If val(xl.Version) < CSUPPORTED_VERSION Then
- str = ReplaceTopic2Tokens(GetResString(ERR_SUPPORTED_VERSION), _
- TOPIC_STR, xl.Version, CR_STR, Chr(13))
- WriteDebug str
- MsgBox str, vbCritical
- bSuccess = False
- GoTo FinalExit
- End If
-
- If Not CheckForAccesToExcelVBProject(xl) Then
- RegValue = -1
- If Not GiveAccessToMacroProject(APP_EXCEL, xl.Version, RegValue) Then
- Dim Style, response
- str = ReplaceTopic2Tokens(GetResString(ERR_NO_ACCESS_TO_VBPROJECT), _
- TOPIC_STR, CAPPNAME_EXCEL, CR_STR, Chr(13))
- WriteDebug str
- Style = vbYesNo + vbQuestion + vbDefaultButton1
-
- response = MsgBox(str, Style)
- If response <> vbYes Then
- bSuccess = False
- GoTo FinalExit
- End If
- End If
- End If
-
- Set aWb = xl.Workbooks.Open(fileName:=sExcelDriverDocPath)
- 'Setup Input Variables
- 'SetupInputVariables resultsTemplate, logFile, fsObject, CAPPNAME_EXCEL
-
- 'Run Excel Analysis
- xl.Run ("AnalysisTool.AnalysisDriver.AnalyseDirectory")
-
- bSuccess = True
-FinalExit:
- If RegValue <> -1 Then
- SetDefaultRegValue APP_EXCEL, xl.Version, RegValue
- End If
- If RegValue = 0 Then
- DeleteRegValue APP_EXCEL, xl.Version
- End If
-
- If Not aWb Is Nothing Then
- If xl.Workbooks.count = 1 Then
- xl.Visible = False
- End If
- aWb.Close (False)
- End If
- Set aWb = Nothing
-
- If Not xl Is Nothing Then
- If xl.Workbooks.count = 0 Then
- xl.Quit
- End If
- End If
-
- Set xl = Nothing
-
- RunExcelAnalysis = bSuccess
- Exit Function
-
-HandleErrors:
- bSuccess = False
- Set aWb = Nothing
- Set xl = Nothing
- Dim failedDoc As String
-
- WriteDebug currentFunctionName & " : " & Err.Number & " " & Err.Description & " " & Err.Source
-
- failedDoc = GetDebug(CAPPNAME_EXCEL, CANALYZING)
- If failedDoc = "" Or failedDoc = CSTR_ANALYSIS_LOG_DONE Then
- str = ReplaceTopic2Tokens(GetResString(ERR_AUTOMATION_FAILURE), _
- TOPIC_STR, CAPPNAME_EXCEL, CR_STR, Chr(13))
- Else
- str = ReplaceTopic2Tokens(GetResString(ERR_EXCEL_DRIVER_CRASH), _
- TOPIC_STR, failedDoc, CR_STR, Chr(13))
- End If
-
- WriteDebug str
- MsgBox str, vbCritical
-
- On Error Resume Next
- Resume FinalExit
-End Function
-
-Sub WriteWizardSettingsToLog(path As String)
- '### DO NOT USE Boolean True/ False it is loaclised by the OS - use "True"/ "False"
- WriteToLog CINPUT_DIR, getInputDir, path
- WriteToLog CINCLUDE_SUBDIRS, IIf(chkIncludeSubdirs.value, "True", "False"), path
- WriteToLog COUTPUT_DIR, getOutputDir, path
- WriteToLog CRESULTS_FILE, txtResultsName.Text, path
-
- WriteToLog CTYPE_WORDDOC, IIf(chkWordDoc.value, "True", "False"), path
- WriteToLog CTYPE_WORDDOT, IIf(chkWordTemplate.value, "True", "False"), path
- WriteToLog CTYPE_EXCELDOC, IIf(chkExcelDoc.value, "True", "False"), path
- WriteToLog CTYPE_EXCELDOT, IIf(chkExcelTemplate.value, "True", "False"), path
- WriteToLog CTYPE_PPDOC, IIf(chkPPDoc.value, "True", "False"), path
- WriteToLog CTYPE_PPDOT, IIf(chkPPTemplate.value, "True", "False"), path
-
- Dim resultsSetting As String
- If rdbResultsPrompt.value Then
- resultsSetting = CPROMPT_FILE
- ElseIf rdbResultsAppend.value Then
- resultsSetting = CAPPEND_FILE
- Else
- resultsSetting = COVERWRITE_FILE
- End If
- WriteToLog CRESULTS_EXIST, resultsSetting, path
-
- WriteToLog CIGNORE_OLD_DOCS, IIf(chkIgnoreOld.value, "True", "False"), path
- WriteToLog CISSUE_LIMIT, CStr(mIssueLimit), path
-
- 'WriteToLog CVERSION, Version, path
-End Sub
-
-Sub WriteCommonParamsToLog(resultsTemplate As String, logFile As String, path As String, fso As Scripting.FileSystemObject)
- WriteToLog CLOG_FILE, logFile, path
- WriteToLog CRESULTS_TEMPLATE, resultsTemplate, path
- WriteToLog CDEBUG_LEVEL, CLng(mDebugLevel), path
- WriteToLog CDOPREPARE, IIf(mbDoPrepare, "True", "False"), path
- WriteToLog CTITLE, frmWizard.Caption, path
- WriteToLog CLAST_CHECKPOINT, ""
- WriteToLog CNEXT_FILE, ""
- WriteToLog C_ABORT_ANALYSIS, ""
-End Sub
-
-Function GetNumberOfDocsToAnalyze() As Long
- Dim count As Long
-
- count = 0
-
- If CheckWordDocsToAnalyze Then
- count = mWordDocCount + mWordTemplateCount
- End If
- If CheckExcelDocsToAnalyze Then
- count = count + mExcelDocCount + mExcelTemplateCount
- End If
- If CheckPPDocsToAnalyze Then
- count = count + mPPDocCount + mPPTemplateCount
- End If
-
- GetNumberOfDocsToAnalyze = count
-End Function
-
-Function CheckWordDocsToAnalyze() As Boolean
-
- CheckWordDocsToAnalyze = mbDocCountCurrent And (chkWordDoc.value = vbChecked And mWordDocCount > 0) Or _
- (chkWordTemplate.value = vbChecked And mWordTemplateCount > 0)
-End Function
-
-Function CheckExcelDocsToAnalyze() As Boolean
- CheckExcelDocsToAnalyze = mbDocCountCurrent And (chkExcelDoc.value = vbChecked And mExcelDocCount > 0) Or _
- (chkExcelTemplate.value = vbChecked And mExcelTemplateCount > 0)
-End Function
-
-Function CheckPPDocsToAnalyze() As Boolean
- CheckPPDocsToAnalyze = mbDocCountCurrent And (chkPPDoc.value = vbChecked And mPPDocCount > 0) Or _
- (chkPPTemplate.value = vbChecked And mPPTemplateCount > 0)
-End Function
-
-Function CheckNumberDocsToAnalyze() As Boolean
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "CheckNumberDocsToAnalyze"
-
- Set mDocFiles = New CollectedFiles
-
- Dim docSearchTypes As Collection
- Set docSearchTypes = New Collection
-
- mbDocCountCurrent = False
-
- SetupDocSearchTypes docSearchTypes
-
- If (cbIgnoreOld.ListIndex = 0) Then
- mIssueLimit = 3
- ElseIf (cbIgnoreOld.ListIndex = 1) Then
- mIssueLimit = 6
- Else
- mIssueLimit = 12
- End If
-
- If Not mDocFiles.Search(rootDir:=getInputDir, FileSpecs:=docSearchTypes, _
- IncludeSubdirs:=IIf(chkIncludeSubdirs.value, mbTrue, mbFalse), _
- ignoreOld:=IIf(chkIgnoreOld.value, mbTrue, mbFalse), Months:=mIssueLimit) Then
- CheckNumberDocsToAnalyze = False
- GoTo FinalExit
- End If
-
- SetDocCountsFromFileSearch mDocFiles
- WriteFileDateCountsToLog mDocFiles
-
- 'WriteDocsToAnalyzeToLog mDocFiles 'UNCOMMENT Recovery - want to list out files to analyze
-
- mbDocCountCurrent = True
-
- lblNumDocs.Caption = ReplaceTopicTokens(GetResString(ANALYZE_DOCUMENTS_ID), TOPIC_STR, _
- CStr(mWordDocCount))
- lblNumTemplates.Caption = ReplaceTopicTokens(GetResString(ANALYZE_TEMPLATES_ID), TOPIC_STR, _
- CStr(mWordTemplateCount))
-
- lblNumXLS.Caption = ReplaceTopicTokens(GetResString(ANALYZE_DOCUMENTS_XLS_ID), TOPIC_STR, _
- CStr(mExcelDocCount))
- lblNumXLT.Caption = ReplaceTopicTokens(GetResString(ANALYZE_TEMPLATES_ID), TOPIC_STR, _
- CStr(mExcelTemplateCount))
-
- lblNumPPT.Caption = ReplaceTopicTokens(GetResString(ANALYZE_DOCUMENTS_PPT_ID), TOPIC_STR, _
- CStr(mPPDocCount))
- lblNumPOT.Caption = ReplaceTopicTokens(GetResString(ANALYZE_TEMPLATES_ID), TOPIC_STR, _
- CStr(mPPTemplateCount))
-
- lblTotalNumDocs.Caption = ReplaceTopicTokens(GetResString(ANALYZE_TOTAL_NUM_DOCS_ID), TOPIC_STR, _
- CStr(mTotalDocCount))
-
- If (mIgnoredDocCount > 0) Then
- lblSkippedOld.Caption = ReplaceTopicTokens(GetResString(RID_STR_ENG_ANALYZE_IGNORED_DOCS_ID), _
- TOPIC_STR, CStr(mIgnoredDocCount))
- lblSkippedOld.Visible = True
- Else
- lblSkippedOld.Visible = False
- End If
-
- CheckNumberDocsToAnalyze = True
-
-FinalExit:
- Set docSearchTypes = Nothing
- Exit Function
-
-HandleErrors:
- WriteDebug currentFunctionName & " : " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Function
-
-Sub SetDocCountsFromFileSearch(myDocFiles As CollectedFiles)
- 'No Error handling required
- mWordDocCount = myDocFiles.DocCount
- mWordTemplateCount = myDocFiles.DotCount
- mExcelDocCount = myDocFiles.XlsCount
- mExcelTemplateCount = myDocFiles.XltCount
- mPPDocCount = myDocFiles.PptCount
- mPPTemplateCount = myDocFiles.PotCount
- mTotalDocCount = mWordDocCount + mWordTemplateCount + mExcelDocCount + mExcelTemplateCount + _
- mPPDocCount + mPPTemplateCount
- mIgnoredDocCount = myDocFiles.IgnoredDocCount
-End Sub
-
-Sub SetupDocSearchTypes(docSearchTypes As Collection)
- 'No Error handling required
- If chkWordDoc.value Then docSearchTypes.add ("*.doc")
- If chkWordTemplate.value Then docSearchTypes.add ("*.dot")
- If chkExcelDoc.value Then docSearchTypes.add ("*.xls")
- If chkExcelTemplate.value Then docSearchTypes.add ("*.xlt")
- If chkPPDoc.value Then docSearchTypes.add ("*.ppt")
- If chkPPTemplate.value Then docSearchTypes.add ("*.pot")
-End Sub
-
-Sub WriteDocsToAnalyzeToLog(myDocFiles As CollectedFiles)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "WriteDocsToAnalyzeToLog"
-
- Dim vFileName As Variant
- Dim Index As Long
- Dim limit As Long
- limit = myDocFiles.WordFiles.count
- For Index = 1 To limit
- vFileName = myDocFiles.WordFiles(Index)
- WriteToLog "Doc" & Index, CStr(vFileName), section:=(WIZARD_NAME & "ListFor" & CAPPNAME_WORD)
- Next
- limit = myDocFiles.ExcelFiles.count
- For Index = 1 To limit
- vFileName = myDocFiles.ExcelFiles(Index)
- WriteToLog "Doc" & Index, CStr(vFileName), section:=(WIZARD_NAME & "ListFor" & CAPPNAME_EXCEL)
- Next
- limit = myDocFiles.PowerPointFiles.count
- For Index = 1 To limit
- vFileName = myDocFiles.PowerPointFiles(Index)
- WriteToLog "Doc" & Index, CStr(vFileName), section:=(WIZARD_NAME & "ListFor" & CAPPNAME_POWERPOINT)
- Next
-
-FinalExit:
- Exit Sub
-HandleErrors:
- WriteDebug currentFunctionName & " : " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-Sub WriteFileDateCountsToLog(myDocFiles As CollectedFiles)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "WriteFileDateCountsToLog"
-
- WriteToLog C_DOCS_LESS_3_MONTH, CStr(myDocFiles.DocsLessThan3Months), mIniFilePath
- WriteToLog C_DOCS_LESS_6_MONTH, CStr(myDocFiles.DocsLessThan6Months), mIniFilePath
- WriteToLog C_DOCS_LESS_12_MONTH, CStr(myDocFiles.DocsLessThan12Months), mIniFilePath
- WriteToLog C_DOCS_MORE_12_MONTH, CStr(myDocFiles.DocsMoreThan12Months), mIniFilePath
-
-FinalExit:
- Exit Sub
-HandleErrors:
- WriteDebug currentFunctionName & " : " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-
-Function RunWordAnalysis(resultsTemplate As String, logFile As String, fsObject As FileSystemObject) As Boolean
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "RunWordAnalysis"
- Const APP_WORD = "Word"
- Dim str As String
- Dim bSuccess
- bSuccess = False
-
- Dim wrd As Word.application
- Dim aDoc As Word.Document
- Dim sWordDriverDocPath As String
- Dim RegValue As Long
-
- If (chkWordDoc.value <> vbChecked) And (chkWordTemplate.value <> vbChecked) Then
- 'No Word doc filters selected
- RunWordAnalysis = True
- Exit Function
- End If
-
- sWordDriverDocPath = fsObject.GetAbsolutePathName(CBASE_RESOURCE_DIR & "\" & CWORD_DRIVER_FILE)
- If Not fsObject.FileExists(sWordDriverDocPath) Then
- str = ReplaceTopic2Tokens(GetResString(ERR_MISSING_WORD_DRIVER), _
- TOPIC_STR, sWordDriverDocPath, CR_STR, Chr(13))
- WriteDebug str
- MsgBox str, vbCritical
- bSuccess = False
- GoTo FinalExit
- End If
-
- Set wrd = New Word.application
- If val(wrd.Version) < CSUPPORTED_VERSION Then
- str = ReplaceTopic2Tokens(GetResString(ERR_SUPPORTED_VERSION), _
- TOPIC_STR, wrd.Version, CR_STR, Chr(13))
- WriteDebug str
- MsgBox str, vbCritical
- bSuccess = False
- GoTo FinalExit
- End If
-
- If Not CheckForAccesToWordVBProject(wrd) Then
- RegValue = -1
- If Not GiveAccessToMacroProject(APP_WORD, wrd.Version, RegValue) Then
- Dim Style, response
- str = ReplaceTopic2Tokens(GetResString(ERR_NO_ACCESS_TO_VBPROJECT), _
- TOPIC_STR, CAPPNAME_WORD, CR_STR, Chr(13))
- WriteDebug str
- Style = vbYesNo + vbQuestion + vbDefaultButton1
-
- response = MsgBox(str, Style)
- If response <> vbYes Then
- bSuccess = False
- GoTo FinalExit
- End If
- End If
- End If
-
- Set aDoc = wrd.Documents.Open(fileName:=sWordDriverDocPath)
- 'Clear out any doc vars
- Dim MyObj As Variable
- For Each MyObj In aDoc.Variables
- MyObj.Delete
- Next
-
- 'Setup Input Variables
- 'SetupInputVariables resultsTemplate, logFile, fsObject, CAPPNAME_WORD
-
- wrd.Run ("AnalysisTool.AnalysisDriver.AnalyseDirectory")
-
- wrd.Visible = False
- bSuccess = True
-
-FinalExit:
- If RegValue <> -1 Then
- SetDefaultRegValue APP_WORD, wrd.Version, RegValue
- End If
- If RegValue = 0 Then
- DeleteRegValue APP_WORD, wrd.Version
- End If
- If Not aDoc Is Nothing Then aDoc.Close (False)
- Set aDoc = Nothing
-
- If Not wrd Is Nothing Then wrd.Quit (False)
- Set wrd = Nothing
-
- RunWordAnalysis = bSuccess
- Exit Function
-
-HandleErrors:
- On Error Resume Next
-
- bSuccess = False
- Set aDoc = Nothing
- Set wrd = Nothing
-
- Dim failedDoc As String
-
- WriteDebug currentFunctionName & " : " & Err.Number & " " & Err.Description & " " & Err.Source
-
- failedDoc = GetDebug(CAPPNAME_WORD, CANALYZING)
- If failedDoc = "" Or failedDoc = CSTR_ANALYSIS_LOG_DONE Then
- str = ReplaceTopic2Tokens(GetResString(ERR_AUTOMATION_FAILURE), _
- TOPIC_STR, CAPPNAME_WORD, CR_STR, Chr(13))
- Else
- str = ReplaceTopic2Tokens(GetResString(ERR_WORD_DRIVER_CRASH), _
- TOPIC_STR, failedDoc, CR_STR, Chr(13))
- End If
-
- WriteDebug str
- MsgBox str, vbCritical
-
- Resume FinalExit
-End Function
-
-Function stripLastBackslash(inputStr As String) As String
- Const MIN_DIR_SIZE = 3
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "stripLastBackslash"
-
- If Len(inputStr) > MIN_DIR_SIZE Then
- Dim lastStrChar As String
- lastStrChar = Right(inputStr, 1)
- If lastStrChar = "\" Then
- inputStr = Left(inputStr, Len(inputStr) - 1)
- End If
- End If
- stripLastBackslash = inputStr
-
- Exit Function
-
-HandleErrors:
- WriteDebug currentFunctionName & " : " & Err.Number & " " & Err.Description & " " & Err.Source
- stripLastBackslash = inputStr
-End Function
-
-Function getInputDir() As String
- getInputDir = stripLastBackslash(txtInputDir.Text)
-End Function
-
-Function getOutputDir() As String
- Dim tmpStr As String
-
- tmpStr = stripLastBackslash(txtOutputDir.Text)
-
- 'Bug when specifying C:\
- If tmpStr <> "" Then
- If Right(tmpStr, 1) = "\" Then
- tmpStr = Left(tmpStr, Len(tmpStr) - 1)
- End If
- End If
- getOutputDir = tmpStr
-End Function
-
-Function CheckCreateNewResultsFile(fsObject As FileSystemObject) As Boolean
- If Not fsObject.FileExists(getOutputDir & "\" & txtResultsName.Text) Then
- 'No Results File - Create it
- CheckCreateNewResultsFile = True
- ElseIf rdbResultsAppend.value Then
- 'Results File exists and user wants to append to it
- CheckCreateNewResultsFile = False
- Else
- 'Results File exists and user has elected not to append
- CheckCreateNewResultsFile = True
- End If
-End Function
-
-Sub DeleteFile(file As String)
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "DeleteFile"
- Dim fso As Scripting.FileSystemObject
- Set fso = New Scripting.FileSystemObject
- Dim filePath As String
-
- filePath = fso.GetAbsolutePathName(file)
- If fso.FileExists(filePath) Then
- fso.DeleteFile filePath, True
- End If
-
-FinalExit:
- Set fso = Nothing
- Exit Sub
-
-HandleErrors:
- WriteDebug currentFunctionName & " : " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Sub
-
-Public Property Get Version() As String
- Version = app.Major & "." & app.Minor & "." & app.Revision
-End Property
-
-Function GetExcelInstance() As Excel.application
- Dim xl As Excel.application
- On Error Resume Next
- 'Try and get an existing instance
- Set xl = GetObject(, "Excel.Application")
- If Err.Number = 429 Then
- Set xl = CreateObject("Excel.Application")
- ElseIf Err.Number <> 0 Then
- Set xl = Nothing
- MsgBox "Error: " & Err.Description
- Exit Function
- End If
- Set GetExcelInstance = xl
- Set xl = Nothing
-End Function
-
-Function CheckForAnalysisResultsWorkbook(analysisResultsName As String) As Boolean
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "CheckForAnalysisResultsWorkbook"
-
- CheckForAnalysisResultsWorkbook = False
-
- Dim xl As Excel.application
- Set xl = GetExcelInstance
-
- Dim aWb As Excel.Workbook
- For Each aWb In xl.Workbooks
-
- If aWb.Name = analysisResultsName Then
- CheckForAnalysisResultsWorkbook = True
- Exit For
- End If
- Next aWb
-
-FinalExit:
- If Not xl Is Nothing Then
- If xl.Workbooks.count = 0 Then
- xl.Quit
- End If
- End If
-
- Set xl = Nothing
-
- Exit Function
-
-HandleErrors:
- Set xl = Nothing
-
- WriteDebug currentFunctionName & " : " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Function
-
-Function CheckForExcel() As Boolean
- On Error GoTo HandleErrors
- Dim currentFunctionName As String
- currentFunctionName = "CheckForExcel"
-
- CheckForExcel = False
-
- Dim xl As Excel.application
- Set xl = GetExcelInstance
-
-
- If xl.Workbooks.count > 0 Then
- CheckForExcel = True
- End If
-
-FinalExit:
- If Not xl Is Nothing Then
- If xl.Workbooks.count = 0 Then
- xl.Quit
- End If
- End If
-
- Set xl = Nothing
-
- Exit Function
-
-HandleErrors:
- Set xl = Nothing
-
- WriteDebug currentFunctionName & " : " & Err.Number & " " & Err.Description & " " & Err.Source
- Resume FinalExit
-End Function
-
-Public Function GetIniSetting(key As String) As String
-
- If mIniFilePath = "" Or key = "" Then Exit Function
-
- GetIniSetting = ProfileGetItem(WIZARD_NAME, key, "", mIniFilePath)
-End Function
-
-Sub WriteIniSetting(key As String, value As String)
-
- If mIniFilePath = "" Or key = "" Then Exit Sub
-
- Call WritePrivateProfileString(WIZARD_NAME, key, value, mIniFilePath)
-End Sub
-
-Private Sub lblSetupComplete_Click(Index As Integer)
-
-End Sub
-
-Private Function CheckNeededFiles(missingFile As String) As Boolean
-
- Dim fso As New FileSystemObject
- Dim filePath As String
-
- CheckNeededFiles = False
- filePath = fso.GetAbsolutePathName(CBASE_RESOURCE_DIR & "\" & CWORD_DRIVER_FILE)
- If Not fso.FileExists(filePath) Then
- missingFile = filePath
- Exit Function
- End If
-
- filePath = fso.GetAbsolutePathName(CBASE_RESOURCE_DIR & "\" & CEXCEL_DRIVER_FILE)
- If Not fso.FileExists(filePath) Then
- missingFile = filePath
- Exit Function
- End If
-
- filePath = fso.GetAbsolutePathName(CBASE_RESOURCE_DIR & "\" & CPP_DRIVER_FILE)
- If Not fso.FileExists(filePath) Then
- missingFile = filePath
- Exit Function
- End If
-
- filePath = fso.GetAbsolutePathName(CBASE_RESOURCE_DIR & "\" & CLAUNCH_DRIVERS_EXE)
- If Not fso.FileExists(filePath) Then
- missingFile = filePath
- Exit Function
- End If
-
- filePath = fso.GetAbsolutePathName(CBASE_RESOURCE_DIR & "\" & CMSO_KILL_EXE)
- If Not fso.FileExists(filePath) Then
- missingFile = filePath
- Exit Function
- End If
-
- filePath = fso.GetAbsolutePathName(CBASE_RESOURCE_DIR & "\" & CRESULTS_TEMPLATE_FILE)
- If Not fso.FileExists(filePath) Then
- missingFile = filePath
- Exit Function
- End If
-
- filePath = fso.GetAbsolutePathName(CBASE_RESOURCE_DIR & "\" & CRESOURCE_DLL)
- If Not fso.FileExists(filePath) Then
- missingFile = filePath
- Exit Function
- End If
-
- CheckNeededFiles = True
-End Function
+VERSION 5.00
+Begin VB.Form frmWizard
+ Appearance = 0 'Flat
+ BackColor = &H80000005&
+ BorderStyle = 1 'Fixed Single
+ Caption = "OpenOffice.org Document Analysis Wizard"
+ ClientHeight = 5520
+ ClientLeft = 1965
+ ClientTop = 1815
+ ClientWidth = 8175
+ BeginProperty Font
+ Name = "Arial"
+ Size = 8.25
+ Charset = 0
+ Weight = 400
+ Underline = 0 'False
+ Italic = 0 'False
+ Strikethrough = 0 'False
+ EndProperty
+ Icon = "Wizard.frx":0000
+ KeyPreview = -1 'True
+ LinkTopic = "Form1"
+ LockControls = -1 'True
+ MaxButton = 0 'False
+ MinButton = 0 'False
+ ScaleHeight = 5520
+ ScaleWidth = 8175
+ Tag = "1000"
+ Begin VB.Frame fraStep
+ BorderStyle = 0 'None
+ Caption = "Introduction"
+ ClipControls = 0 'False
+ Enabled = 0 'False
+ BeginProperty Font
+ Name = "MS Sans Serif"
+ Size = 8.25
+ Charset = 0
+ Weight = 400
+ Underline = 0 'False
+ Italic = 0 'False
+ Strikethrough = 0 'False
+ EndProperty
+ Height = 4905
+ Index = 0
+ Left = -10000
+ TabIndex = 25
+ Tag = "1000"
+ Top = 0
+ Width = 8235
+ Begin VB.PictureBox Picture4
+ Appearance = 0 'Flat
+ BackColor = &H80000005&
+ BorderStyle = 0 'None
+ ForeColor = &H80000008&
+ Height = 4935
+ Index = 0
+ Left = 0
+ ScaleHeight = 4935
+ ScaleWidth = 2565
+ TabIndex = 2
+ TabStop = 0 'False
+ Top = 0
+ Width = 2565
+ Begin VB.PictureBox Picture10
+ Height = 735
+ Left = 2580
+ ScaleHeight = 735
+ ScaleWidth = 30
+ TabIndex = 68
+ TabStop = 0 'False
+ Top = 2610
+ Width = 30
+ End
+ Begin VB.PictureBox Picture6
+ Appearance = 0 'Flat
+ BackColor = &H80000005&
+ BorderStyle = 0 'None
+ ForeColor = &H80000008&
+ Height = 1485
+ Left = 150
+ ScaleHeight = 1485
+ ScaleWidth = 2355
+ TabIndex = 67
+ TabStop = 0 'False
+ Top = 3390
+ Width = 2355
+ Begin VB.PictureBox Picture1
+ Appearance = 0 'Flat
+ BackColor = &H80000005&
+ BorderStyle = 0 'None
+ ForeColor = &H80000008&
+ Height = 1200
+ Index = 0
+ Left = 200
+ Picture = "Wizard.frx":482C2
+ ScaleHeight = 1200
+ ScaleWidth = 1980
+ TabIndex = 7
+ TabStop = 0 'False
+ Tag = "1060"
+ Top = 300
+ Width = 1980
+ End
+ End
+ Begin VB.Label lblStep1_4
+ BackColor = &H00EED3C2&
+ BackStyle = 0 'Transparent
+ Caption = "4. Analyze"
+ ForeColor = &H00BF4F59&
+ Height = 195
+ Left = 120
+ TabIndex = 89
+ Tag = "1044"
+ Top = 1800
+ Width = 2140
+ End
+ Begin VB.Line Line2
+ BorderColor = &H00808080&
+ Index = 2
+ X1 = 2550
+ X2 = 2550
+ Y1 = 0
+ Y2 = 4920
+ End
+ Begin VB.Line Line3
+ Index = 1
+ X1 = 120
+ X2 = 2280
+ Y1 = 480
+ Y2 = 480
+ End
+ Begin VB.Label Label7
+ BackColor = &H00EED3C2&
+ Caption = "1. Introduction"
+ ForeColor = &H00BF4F59&
+ Height = 255
+ Index = 1
+ Left = 120
+ TabIndex = 11
+ Tag = "1041"
+ Top = 720
+ Width = 2140
+ End
+ Begin VB.Label Label8
+ BackColor = &H00EED3C2&
+ BackStyle = 0 'Transparent
+ Caption = "3. Results"
+ ForeColor = &H00BF4F59&
+ Height = 255
+ Index = 1
+ Left = 120
+ TabIndex = 9
+ Tag = "1043"
+ Top = 1440
+ Width = 2140
+ End
+ Begin VB.Label Label9
+ BackColor = &H00EED3C2&
+ BackStyle = 0 'Transparent
+ Caption = "2. Documents"
+ ForeColor = &H00BF4F59&
+ Height = 255
+ Index = 1
+ Left = 120
+ TabIndex = 10
+ Tag = "1042"
+ Top = 1080
+ Width = 2140
+ End
+ Begin VB.Label Label12
+ BackStyle = 0 'Transparent
+ Caption = "Steps"
+ BeginProperty Font
+ Name = "Arial"
+ Size = 8.25
+ Charset = 0
+ Weight = 700
+ Underline = 0 'False
+ Italic = 0 'False
+ Strikethrough = 0 'False
+ EndProperty
+ Height = 255
+ Index = 1
+ Left = 120
+ TabIndex = 8
+ Tag = "1040"
+ Top = 240
+ Width = 2115
+ End
+ End
+ Begin VB.PictureBox Picture8
+ Appearance = 0 'Flat
+ BorderStyle = 0 'None
+ ForeColor = &H80000008&
+ Height = 4935
+ Left = 2400
+ ScaleHeight = 4935
+ ScaleWidth = 5925
+ TabIndex = 3
+ TabStop = 0 'False
+ Top = -30
+ Width = 5925
+ Begin VB.CheckBox chkShowIntro
+ Caption = "Do not show this introduction again"
+ Enabled = 0 'False
+ Height = 315
+ Left = 690
+ MaskColor = &H00000000&
+ TabIndex = 6
+ Tag = "1103"
+ Top = 4890
+ Visible = 0 'False
+ Width = 3810
+ End
+ Begin VB.Label lblIntroduction1
+ AutoSize = -1 'True
+ Caption = $"Wizard.frx":4F8B8
+ Height = 585
+ Left = 690
+ TabIndex = 93
+ Tag = "1101"
+ Top = 750
+ Width = 4890
+ WordWrap = -1 'True
+ End
+ Begin VB.Label lblIntroduction3
+ AutoSize = -1 'True
+ Caption = "The wizard will remain on screen while the analysis is carried out."
+ Height = 195
+ Left = 690
+ TabIndex = 0
+ Tag = "1104"
+ Top = 2670
+ Width = 4845
+ WordWrap = -1 'True
+ End
+ Begin VB.Label lblIntroduction2
+ AutoSize = -1 'True
+ Caption = "You will be able to select which documents you want to analyze as well as where you want the results to the analysis to be saved. "
+ Height = 390
+ Left = 690
+ TabIndex = 1
+ Tag = "1102"
+ Top = 1800
+ Width = 4875
+ WordWrap = -1 'True
+ End
+ Begin VB.Label Label12
+ BackStyle = 0 'Transparent
+ Caption = "Introduction"
+ BeginProperty Font
+ Name = "Arial"
+ Size = 8.25
+ Charset = 0
+ Weight = 700
+ Underline = 0 'False
+ Italic = 0 'False
+ Strikethrough = 0 'False
+ EndProperty
+ Height = 255
+ Index = 2
+ Left = 450
+ TabIndex = 5
+ Tag = "1100"
+ Top = 270
+ Width = 4000
+ End
+ End
+ End
+ Begin VB.Frame fraStep
+ BorderStyle = 0 'None
+ Caption = "Setup"
+ Enabled = 0 'False
+ BeginProperty Font
+ Name = "MS Sans Serif"
+ Size = 8.25
+ Charset = 0
+ Weight = 400
+ Underline = 0 'False
+ Italic = 0 'False
+ Strikethrough = 0 'False
+ EndProperty
+ Height = 4905
+ Index = 1
+ Left = -10000
+ TabIndex = 32
+ Tag = "2000"
+ Top = 0
+ Width = 8235
+ Begin VB.PictureBox Picture4
+ Appearance = 0 'Flat
+ BackColor = &H80000005&
+ BorderStyle = 0 'None
+ ForeColor = &H80000008&
+ Height = 4905
+ Index = 1
+ Left = 0
+ ScaleHeight = 4905
+ ScaleWidth = 2565
+ TabIndex = 61
+ TabStop = 0 'False
+ Top = 0
+ Width = 2565
+ Begin VB.PictureBox Picture1
+ Appearance = 0 'Flat
+ BackColor = &H80000005&
+ BorderStyle = 0 'None
+ ForeColor = &H80000008&
+ Height = 1200
+ Index = 1
+ Left = 350
+ Picture = "Wizard.frx":4F971
+ ScaleHeight = 1200
+ ScaleWidth = 1980
+ TabIndex = 62
+ TabStop = 0 'False
+ Tag = "1060"
+ Top = 3690
+ Width = 1980
+ End
+ Begin VB.Label lblStep2_4
+ BackColor = &H00EED3C2&
+ BackStyle = 0 'Transparent
+ Caption = "4. Analyze"
+ ForeColor = &H00BF4F59&
+ Height = 195
+ Left = 120
+ TabIndex = 90
+ Tag = "1044"
+ Top = 1800
+ Width = 2140
+ End
+ Begin VB.Line Line2
+ BorderColor = &H00808080&
+ Index = 1
+ X1 = 2550
+ X2 = 2550
+ Y1 = 0
+ Y2 = 4920
+ End
+ Begin VB.Label Label12
+ BackStyle = 0 'Transparent
+ Caption = "Steps"
+ BeginProperty Font
+ Name = "Arial"
+ Size = 8.25
+ Charset = 0
+ Weight = 700
+ Underline = 0 'False
+ Italic = 0 'False
+ Strikethrough = 0 'False
+ EndProperty
+ Height = 255
+ Index = 3
+ Left = 120
+ TabIndex = 66
+ Tag = "1040"
+ Top = 240
+ Width = 1335
+ End
+ Begin VB.Label Label9
+ BackColor = &H00EED3C2&
+ Caption = "2. Documents"
+ ForeColor = &H00BF4F59&
+ Height = 255
+ Index = 2
+ Left = 120
+ TabIndex = 65
+ Tag = "1042"
+ Top = 1080
+ Width = 2140
+ End
+ Begin VB.Label Label8
+ BackColor = &H00EED3C2&
+ BackStyle = 0 'Transparent
+ Caption = "3. Results"
+ ForeColor = &H00BF4F59&
+ Height = 255
+ Index = 2
+ Left = 120
+ TabIndex = 64
+ Tag = "1043"
+ Top = 1440
+ Width = 2140
+ End
+ Begin VB.Label Label7
+ BackColor = &H00EED3C2&
+ BackStyle = 0 'Transparent
+ Caption = "1. Introduction"
+ ForeColor = &H00BF4F59&
+ Height = 255
+ Index = 2
+ Left = 120
+ TabIndex = 63
+ Tag = "1041"
+ Top = 720
+ Width = 2140
+ End
+ Begin VB.Line Line3
+ Index = 2
+ X1 = 120
+ X2 = 2280
+ Y1 = 480
+ Y2 = 480
+ End
+ End
+ Begin VB.PictureBox Picture7
+ Appearance = 0 'Flat
+ BorderStyle = 0 'None
+ ForeColor = &H80000008&
+ Height = 4725
+ Left = 2580
+ ScaleHeight = 4725
+ ScaleWidth = 5535
+ TabIndex = 58
+ TabStop = 0 'False
+ Top = 0
+ Width = 5535
+ Begin VB.ComboBox cbIgnoreOld
+ Height = 330
+ ItemData = "Wizard.frx":56F67
+ Left = 3950
+ List = "Wizard.frx":56F74
+ Style = 2 'Dropdown List
+ TabIndex = 99
+ Top = 1570
+ Width = 1215
+ End
+ Begin VB.CheckBox chkIgnoreOld
+ Caption = "Ignore documents older than"
+ Height = 225
+ Left = 450
+ TabIndex = 98
+ Top = 1600
+ Width = 3400
+ End
+ Begin VB.CheckBox chkWordDoc
+ Caption = "Documents (*.doc)"
+ Height = 225
+ Left = 2160
+ TabIndex = 19
+ Tag = "1208"
+ Top = 2600
+ Value = 1 'Checked
+ Width = 3200
+ End
+ Begin VB.CheckBox chkWordTemplate
+ Caption = "Templates (*.dot)"
+ Height = 225
+ Left = 2160
+ TabIndex = 20
+ Tag = "1209"
+ Top = 2900
+ Width = 3200
+ End
+ Begin VB.CheckBox chkPPTemplate
+ Caption = "Templates (*.pot)"
+ Height = 225
+ Left = 2160
+ TabIndex = 24
+ Tag = "1215"
+ Top = 4400
+ Width = 3200
+ End
+ Begin VB.CheckBox chkPPDoc
+ Caption = "Presentations (*.ppt)"
+ Height = 225
+ Left = 2160
+ TabIndex = 23
+ Tag = "1214"
+ Top = 4100
+ Width = 3200
+ End
+ Begin VB.CheckBox chkExcelDoc
+ Caption = "Spreadsheets (*.xls)"
+ Height = 225
+ Left = 2160
+ TabIndex = 21
+ Tag = "1211"
+ Top = 3350
+ Width = 3200
+ End
+ Begin VB.CheckBox chkExcelTemplate
+ Caption = "Templates (*.xlt)"
+ Height = 225
+ Left = 2160
+ TabIndex = 22
+ Tag = "1212"
+ Top = 3650
+ Width = 3200
+ End
+ Begin VB.CommandButton btnBrowseDirInput
+ Caption = "..."
+ Height = 315
+ Left = 4740
+ TabIndex = 17
+ Top = 900
+ Width = 400
+ End
+ Begin VB.TextBox txtInputDir
+ Height = 315
+ Left = 450
+ TabIndex = 16
+ Tag = "1205"
+ Text = "C:\"
+ Top = 900
+ Width = 4155
+ End
+ Begin VB.CheckBox chkIncludeSubdirs
+ Caption = "Include subdirectories in the analysis"
+ Height = 225
+ Left = 450
+ TabIndex = 18
+ Tag = "1202"
+ Top = 1300
+ Width = 4965
+ End
+ Begin VB.Label lblDocTypes
+ Caption = "Document types to analyze"
+ Height = 225
+ Left = 450
+ TabIndex = 95
+ Tag = "1206"
+ Top = 2250
+ Width = 4905
+ End
+ Begin VB.Label lblChooseDocs
+ AutoSize = -1 'True
+ Caption = "Choose the documents you want to analyze"
+ BeginProperty Font
+ Name = "Arial"
+ Size = 8.25
+ Charset = 0
+ Weight = 700
+ Underline = 0 'False
+ Italic = 0 'False
+ Strikethrough = 0 'False
+ EndProperty
+ Height = 195
+ Left = 300
+ TabIndex = 94
+ Tag = "1200"
+ Top = 240
+ Width = 5115
+ WordWrap = -1 'True
+ End
+ Begin VB.Label Label13
+ AutoSize = -1 'True
+ Caption = "PowerPoint"
+ Height = 225
+ Index = 2
+ Left = 690
+ TabIndex = 74
+ Tag = "1213"
+ Top = 4100
+ Width = 1245
+ WordWrap = -1 'True
+ End
+ Begin VB.Label Label13
+ AutoSize = -1 'True
+ Caption = "Excel"
+ Height = 225
+ Index = 1
+ Left = 690
+ TabIndex = 73
+ Tag = "1210"
+ Top = 3350
+ Width = 1245
+ WordWrap = -1 'True
+ End
+ Begin VB.Label Label13
+ AutoSize = -1 'True
+ Caption = "Word"
+ Height = 225
+ Index = 0
+ Left = 690
+ TabIndex = 72
+ Tag = "1207"
+ Top = 2600
+ Width = 1245
+ WordWrap = -1 'True
+ End
+ Begin VB.Label Label1
+ Caption = "Location of Microsoft Office documents"
+ Height = 200
+ Left = 450
+ TabIndex = 59
+ Tag = "1201"
+ Top = 600
+ Width = 4935
+ End
+ End
+ End
+ Begin VB.Frame fraStep
+ BorderStyle = 0 'None
+ Caption = "Options"
+ Enabled = 0 'False
+ BeginProperty Font
+ Name = "MS Sans Serif"
+ Size = 8.25
+ Charset = 0
+ Weight = 400
+ Underline = 0 'False
+ Italic = 0 'False
+ Strikethrough = 0 'False
+ EndProperty
+ Height = 4905
+ Index = 2
+ Left = -10000
+ TabIndex = 33
+ Tag = "2002"
+ Top = 0
+ Width = 8235
+ Begin VB.PictureBox Picture11
+ BorderStyle = 0 'None
+ Height = 555
+ Left = 7260
+ ScaleHeight = 555
+ ScaleWidth = 705
+ TabIndex = 75
+ Top = 1890
+ Width = 705
+ Begin VB.CommandButton btnBrowseDirOut
+ Caption = "..."
+ Height = 375
+ Left = 90
+ TabIndex = 28
+ Top = 90
+ Width = 495
+ End
+ End
+ Begin VB.TextBox txtResultsName
+ Height = 375
+ Left = 3030
+ TabIndex = 26
+ Tag = "1302"
+ Text = "Analysis Results.xls"
+ Top = 1140
+ Width = 3045
+ End
+ Begin VB.TextBox txtOutputDir
+ Height = 375
+ Left = 3030
+ TabIndex = 27
+ Top = 1980
+ Width = 4185
+ End
+ Begin VB.PictureBox Picture5
+ Appearance = 0 'Flat
+ BorderStyle = 0 'None
+ ForeColor = &H80000008&
+ Height = 1365
+ Left = 3300
+ ScaleHeight = 1365
+ ScaleWidth = 4635
+ TabIndex = 57
+ TabStop = 0 'False
+ Top = 3210
+ Width = 4635
+ Begin VB.OptionButton rdbResultsPrompt
+ Caption = "Ask me before overwriting"
+ Height = 435
+ Left = 0
+ TabIndex = 29
+ Tag = "1312"
+ Top = 0
+ Value = -1 'True
+ Width = 4485
+ End
+ Begin VB.OptionButton rdbResultsOverwrite
+ Caption = "Overwrite without asking me"
+ Height = 435
+ Left = 0
+ TabIndex = 30
+ Tag = "1313"
+ Top = 450
+ Width = 4455
+ End
+ Begin VB.OptionButton rdbResultsAppend
+ Caption = "Append the new results to the existing results"
+ Height = 675
+ Left = 0
+ TabIndex = 31
+ Tag = "1314"
+ Top = 780
+ Visible = 0 'False
+ Width = 4515
+ End
+ End
+ Begin VB.Frame Frame3
+ Appearance = 0 'Flat
+ BackColor = &H80000005&
+ BorderStyle = 0 'None
+ Enabled = 0 'False
+ ForeColor = &H0099A8AC&
+ Height = 5175
+ Index = 0
+ Left = 0
+ TabIndex = 39
+ Top = 0
+ Width = 2535
+ Begin VB.PictureBox Picture1
+ Appearance = 0 'Flat
+ BackColor = &H80000005&
+ BorderStyle = 0 'None
+ ForeColor = &H80000008&
+ Height = 1200
+ Index = 3
+ Left = 350
+ Picture = "Wizard.frx":56F97
+ ScaleHeight = 1200
+ ScaleWidth = 1980
+ TabIndex = 40
+ TabStop = 0 'False
+ Top = 3690
+ Width = 1980
+ End
+ Begin VB.Label lblStep3_4
+ BackColor = &H00EED3C2&
+ BackStyle = 0 'Transparent
+ Caption = "4. Analyze"
+ ForeColor = &H00BF4F59&
+ Height = 195
+ Left = 120
+ TabIndex = 91
+ Tag = "1044"
+ Top = 1800
+ Width = 2140
+ End
+ Begin VB.Label Label12
+ BackStyle = 0 'Transparent
+ Caption = "Steps"
+ BeginProperty Font
+ Name = "Arial"
+ Size = 8.25
+ Charset = 0
+ Weight = 700
+ Underline = 0 'False
+ Italic = 0 'False
+ Strikethrough = 0 'False
+ EndProperty
+ Height = 255
+ Index = 0
+ Left = 120
+ TabIndex = 53
+ Tag = "1040"
+ Top = 240
+ Width = 1335
+ End
+ Begin VB.Label Label9
+ BackColor = &H00EED3C2&
+ BackStyle = 0 'Transparent
+ Caption = "2. Documents"
+ ForeColor = &H00BF4F59&
+ Height = 255
+ Index = 0
+ Left = 120
+ TabIndex = 43
+ Tag = "1042"
+ Top = 1080
+ Width = 2140
+ End
+ Begin VB.Label Label8
+ BackColor = &H00EED3C2&
+ Caption = "3. Results"
+ ForeColor = &H00BF4F59&
+ Height = 255
+ Index = 0
+ Left = 120
+ TabIndex = 42
+ Tag = "1043"
+ Top = 1440
+ Width = 2140
+ End
+ Begin VB.Label Label7
+ BackColor = &H00EED3C2&
+ BackStyle = 0 'Transparent
+ Caption = "1. Introduction"
+ ForeColor = &H00BF4F59&
+ Height = 255
+ Index = 0
+ Left = 120
+ TabIndex = 41
+ Tag = "1041"
+ Top = 720
+ Width = 2140
+ End
+ Begin VB.Line Line3
+ Index = 0
+ X1 = 120
+ X2 = 2280
+ Y1 = 480
+ Y2 = 480
+ End
+ End
+ Begin VB.Label Label3
+ Caption = "File name for the results spreadsheet"
+ Height = 195
+ Left = 3030
+ TabIndex = 71
+ Tag = "1301"
+ Top = 840
+ Width = 4785
+ End
+ Begin VB.Label lblResultsLocation
+ Caption = "Location"
+ Height = 195
+ Left = 3030
+ TabIndex = 70
+ Tag = "1304"
+ Top = 1710
+ Width = 4755
+ End
+ Begin VB.Label Label13
+ AutoSize = -1 'True
+ Caption = "If results already exisit under the same name and location:"
+ Height = 195
+ Index = 5
+ Left = 3030
+ TabIndex = 38
+ Tag = "1311"
+ Top = 2730
+ Width = 4230
+ WordWrap = -1 'True
+ End
+ Begin VB.Line Line2
+ BorderColor = &H00808080&
+ Index = 0
+ X1 = 2550
+ X2 = 2550
+ Y1 = 0
+ Y2 = 4920
+ End
+ Begin VB.Label lblChooseResults
+ AutoSize = -1 'True
+ Caption = "Choose where and how to save the analysis results"
+ BeginProperty Font
+ Name = "Arial"
+ Size = 8.25
+ Charset = 0
+ Weight = 700
+ Underline = 0 'False
+ Italic = 0 'False
+ Strikethrough = 0 'False
+ EndProperty
+ Height = 195
+ Left = 2880
+ TabIndex = 37
+ Tag = "1300"
+ Top = 240
+ Width = 5055
+ WordWrap = -1 'True
+ End
+ End
+ Begin VB.Frame fraStep
+ BorderStyle = 0 'None
+ Caption = "Analyze"
+ Enabled = 0 'False
+ BeginProperty Font
+ Name = "MS Sans Serif"
+ Size = 8.25
+ Charset = 0
+ Weight = 400
+ Underline = 0 'False
+ Italic = 0 'False
+ Strikethrough = 0 'False
+ EndProperty
+ Height = 4905
+ Index = 3
+ Left = 0
+ TabIndex = 34
+ Tag = "3000"
+ Top = 0
+ Width = 2.45745e5
+ Begin VB.PictureBox Picture12
+ Appearance = 0 'Flat
+ BorderStyle = 0 'None
+ ForeColor = &H80000008&
+ Height = 4905
+ Left = 10020
+ ScaleHeight = 4905
+ ScaleWidth = 8175
+ TabIndex = 69
+ TabStop = 0 'False
+ Top = 0
+ Width = 8175
+ End
+ Begin VB.CommandButton btnPrepare
+ Caption = "Prepare"
+ Enabled = 0 'False
+ Height = 375
+ Left = 3340
+ TabIndex = 97
+ Tag = "1411"
+ Top = 4410
+ Visible = 0 'False
+ Width = 4000
+ End
+ Begin VB.CommandButton btnRunAnalysis
+ Caption = "Run"
+ Height = 375
+ Left = 3340
+ TabIndex = 35
+ Tag = "1404"
+ Top = 3410
+ Width = 4000
+ End
+ Begin VB.CommandButton btnViewResults
+ Caption = "View"
+ Enabled = 0 'False
+ Height = 375
+ Left = 3340
+ TabIndex = 36
+ Tag = "1406"
+ Top = 3910
+ Width = 4000
+ End
+ Begin VB.Frame Frame3
+ Appearance = 0 'Flat
+ BackColor = &H80000005&
+ BorderStyle = 0 'None
+ Enabled = 0 'False
+ ForeColor = &H0099A8AC&
+ Height = 5175
+ Index = 3
+ Left = 0
+ TabIndex = 44
+ Top = 0
+ Width = 2535
+ Begin VB.PictureBox Picture4
+ Appearance = 0 'Flat
+ BackColor = &H80000005&
+ BorderStyle = 0 'None
+ ForeColor = &H80000008&
+ Height = 1575
+ Index = 2
+ Left = 150
+ ScaleHeight = 1575
+ ScaleWidth = 2385
+ TabIndex = 55
+ TabStop = 0 'False
+ Top = 3390
+ Width = 2385
+ Begin VB.PictureBox Picture1
+ Appearance = 0 'Flat
+ BackColor = &H80000005&
+ BorderStyle = 0 'None
+ ForeColor = &H80000008&
+ Height = 1200
+ Index = 2
+ Left = 200
+ Picture = "Wizard.frx":5E58D
+ ScaleHeight = 1200
+ ScaleWidth = 2475
+ TabIndex = 56
+ TabStop = 0 'False
+ Tag = "1060"
+ Top = 300
+ Width = 2480
+ End
+ End
+ Begin VB.Label lblStep4_4
+ BackColor = &H00EED3C2&
+ Caption = "4. Analyze"
+ ForeColor = &H00BF4F59&
+ Height = 255
+ Left = 120
+ TabIndex = 92
+ Tag = "1044"
+ Top = 1800
+ Width = 2140
+ End
+ Begin VB.Label Label12
+ BackStyle = 0 'Transparent
+ Caption = "Steps"
+ BeginProperty Font
+ Name = "Arial"
+ Size = 8.25
+ Charset = 0
+ Weight = 700
+ Underline = 0 'False
+ Italic = 0 'False
+ Strikethrough = 0 'False
+ EndProperty
+ Height = 255
+ Index = 5
+ Left = 120
+ TabIndex = 54
+ Tag = "1040"
+ Top = 240
+ Width = 1335
+ End
+ Begin VB.Label Label9
+ BackColor = &H00EED3C2&
+ BackStyle = 0 'Transparent
+ Caption = "2. Documents"
+ ForeColor = &H00BF4F59&
+ Height = 255
+ Index = 3
+ Left = 120
+ TabIndex = 47
+ Tag = "1042"
+ Top = 1080
+ Width = 2140
+ End
+ Begin VB.Label Label8
+ BackColor = &H00EED3C2&
+ BackStyle = 0 'Transparent
+ Caption = "3. Results"
+ ForeColor = &H00BF4F59&
+ Height = 255
+ Index = 3
+ Left = 120
+ TabIndex = 46
+ Tag = "1043"
+ Top = 1440
+ Width = 2140
+ End
+ Begin VB.Label Label7
+ BackColor = &H00EED3C2&
+ BackStyle = 0 'Transparent
+ Caption = "1. Introduction"
+ ForeColor = &H00BF4F59&
+ Height = 255
+ Index = 3
+ Left = 120
+ TabIndex = 45
+ Tag = "1041"
+ Top = 720
+ Width = 2140
+ End
+ Begin VB.Line Line3
+ Index = 3
+ X1 = 120
+ X2 = 2280
+ Y1 = 480
+ Y2 = 480
+ End
+ End
+ Begin VB.Label lblSkippedOld
+ Caption = "Skipped <TOPIC> documets, because they were too old"
+ Height = 195
+ Left = 3180
+ TabIndex = 60
+ Top = 2880
+ Width = 4935
+ End
+ Begin VB.Label lblSetupDone
+ AutoSize = -1 'True
+ Caption = "Run the analysis and view the results"
+ BeginProperty Font
+ Name = "Arial"
+ Size = 8.25
+ Charset = 0
+ Weight = 700
+ Underline = 0 'False
+ Italic = 0 'False
+ Strikethrough = 0 'False
+ EndProperty
+ Height = 195
+ Left = 2880
+ TabIndex = 96
+ Tag = "1400"
+ Top = 240
+ Width = 4905
+ WordWrap = -1 'True
+ End
+ Begin VB.Label lblNumPPT
+ Caption = "<TOPIC> Presentations"
+ Height = 255
+ Left = 4620
+ TabIndex = 88
+ Tag = "1409"
+ Top = 2280
+ Width = 3375
+ End
+ Begin VB.Label lblNumPOT
+ Caption = "<TOPIC> Templates"
+ Height = 255
+ Left = 4620
+ TabIndex = 87
+ Tag = "1403"
+ Top = 2550
+ Width = 3375
+ End
+ Begin VB.Label lblNumXLS
+ Caption = "<TOPIC> Spreadsheets"
+ Height = 255
+ Left = 4620
+ TabIndex = 86
+ Tag = "1408"
+ Top = 1680
+ Width = 3375
+ End
+ Begin VB.Label lblNumXLT
+ Caption = "<TOPIC> Templates"
+ Height = 255
+ Left = 4620
+ TabIndex = 85
+ Tag = "1403"
+ Top = 1950
+ Width = 3375
+ End
+ Begin VB.Label Label16
+ AutoSize = -1 'True
+ Caption = "PowerPoint"
+ Height = 195
+ Left = 3360
+ TabIndex = 82
+ Tag = "1213"
+ Top = 2280
+ Width = 1095
+ WordWrap = -1 'True
+ End
+ Begin VB.Label Label13
+ Caption = "Word"
+ Height = 705
+ Index = 10
+ Left = 0
+ TabIndex = 81
+ Tag = "1207"
+ Top = 0
+ Width = 1245
+ End
+ Begin VB.Label Label13
+ Caption = "Excel"
+ Height = 705
+ Index = 9
+ Left = 0
+ TabIndex = 80
+ Tag = "1210"
+ Top = 810
+ Width = 1245
+ End
+ Begin VB.Label Label13
+ Caption = "PowerPoint"
+ Height = 585
+ Index = 8
+ Left = 0
+ TabIndex = 79
+ Tag = "1213"
+ Top = 1620
+ Width = 1245
+ End
+ Begin VB.Label Label13
+ Caption = "Word"
+ Height = 585
+ Index = 7
+ Left = 0
+ TabIndex = 78
+ Tag = "1207"
+ Top = 0
+ Width = 1245
+ End
+ Begin VB.Label Label13
+ Caption = "Excel"
+ Height = 585
+ Index = 6
+ Left = 0
+ TabIndex = 77
+ Tag = "1210"
+ Top = 810
+ Width = 1245
+ End
+ Begin VB.Label Label13
+ Caption = "PowerPoint"
+ Height = 465
+ Index = 4
+ Left = 0
+ TabIndex = 76
+ Tag = "1213"
+ Top = 1620
+ Width = 1245
+ End
+ Begin VB.Label lblNumTemplates
+ Caption = "<TOPIC> Templates"
+ Height = 255
+ Left = 4620
+ TabIndex = 52
+ Tag = "1403"
+ Top = 1350
+ Width = 3375
+ End
+ Begin VB.Label lblNumDocs
+ Caption = "<TOPIC> Documents"
+ Height = 255
+ Left = 4620
+ TabIndex = 51
+ Tag = "1402"
+ Top = 1080
+ Width = 3375
+ End
+ Begin VB.Line Line6
+ BorderColor = &H00808080&
+ X1 = 2640
+ X2 = 8040
+ Y1 = 3270
+ Y2 = 3270
+ End
+ Begin VB.Label Label15
+ AutoSize = -1 'True
+ Caption = "Excel"
+ Height = 195
+ Left = 3360
+ TabIndex = 50
+ Tag = "1210"
+ Top = 1680
+ Width = 1095
+ WordWrap = -1 'True
+ End
+ Begin VB.Label Label14
+ AutoSize = -1 'True
+ Caption = "Word"
+ Height = 195
+ Left = 3360
+ TabIndex = 49
+ Tag = "1207"
+ Top = 1080
+ Width = 1110
+ WordWrap = -1 'True
+ End
+ Begin VB.Label lblTotalNumDocs
+ AutoSize = -1 'True
+ Caption = "A total of <TOPIC> documents will be analyzed:"
+ Height = 195
+ Left = 3180
+ TabIndex = 48
+ Tag = "1401"
+ Top = 660
+ Width = 4800
+ WordWrap = -1 'True
+ End
+ Begin VB.Line Line2
+ BorderColor = &H00808080&
+ Index = 3
+ X1 = 2550
+ X2 = 2550
+ Y1 = 0
+ Y2 = 4920
+ End
+ End
+ Begin VB.PictureBox picNav
+ Align = 2 'Align Bottom
+ Appearance = 0 'Flat
+ BorderStyle = 0 'None
+ BeginProperty Font
+ Name = "MS Sans Serif"
+ Size = 8.25
+ Charset = 0
+ Weight = 400
+ Underline = 0 'False
+ Italic = 0 'False
+ Strikethrough = 0 'False
+ EndProperty
+ ForeColor = &H80000008&
+ Height = 570
+ Left = 0
+ ScaleHeight = 570
+ ScaleWidth = 8175
+ TabIndex = 4
+ TabStop = 0 'False
+ Top = 4950
+ Width = 8175
+ Begin VB.CommandButton cmdNav
+ Caption = "Finish"
+ Height = 312
+ Index = 4
+ Left = 5325
+ MaskColor = &H00000000&
+ TabIndex = 14
+ Tag = "1023"
+ Top = 120
+ Width = 1320
+ End
+ Begin VB.CommandButton cmdNav
+ Caption = "Next >>"
+ Height = 312
+ Index = 3
+ Left = 3870
+ MaskColor = &H00000000&
+ TabIndex = 13
+ Tag = "1022"
+ Top = 120
+ Width = 1320
+ End
+ Begin VB.CommandButton cmdNav
+ Caption = "<< Back"
+ Height = 312
+ Index = 2
+ Left = 2535
+ MaskColor = &H00000000&
+ TabIndex = 12
+ Tag = "1021"
+ Top = 120
+ Width = 1320
+ End
+ Begin VB.CommandButton cmdNav
+ Cancel = -1 'True
+ Caption = "Cancel"
+ Height = 312
+ Index = 1
+ Left = 6750
+ MaskColor = &H00000000&
+ TabIndex = 15
+ Tag = "1024"
+ Top = 120
+ Width = 1320
+ End
+ End
+ Begin VB.Label Label18
+ Caption = "<TOPIC> Documents"
+ Height = 255
+ Left = 0
+ TabIndex = 84
+ Top = 0
+ Width = 2085
+ WordWrap = -1 'True
+ End
+ Begin VB.Label Label17
+ Caption = "<TOPIC> Templates"
+ Height = 255
+ Left = 0
+ TabIndex = 83
+ Top = 390
+ Width = 3615
+ WordWrap = -1 'True
+ End
+ Begin VB.Line Line4
+ BorderColor = &H00808080&
+ X1 = 0
+ X2 = 8160
+ Y1 = 4920
+ Y2 = 4920
+ End
+End
+Attribute VB_Name = "frmWizard"
+Attribute VB_GlobalNameSpace = False
+Attribute VB_Creatable = False
+Attribute VB_PredeclaredId = True
+Attribute VB_Exposed = False
+' *******************************************************************************
+' *
+' * Copyright 2000, 2010 Oracle and/or its affiliates. All rights reserved. Use of this
+' * product is subject to license terms.
+' *
+' *******************************************************************************
+
+Option Explicit
+
+Const TOPIC_STR = "<TOPIC>"
+Const TOPIC2_STR = "<TOPIC2>"
+Const CR_STR = "<CR>"
+Const CDEBUG_LEVEL_DEFAULT = 1 'Will output all Debug output to analysis.log file
+Const CSUPPORTED_VERSION = 9#
+
+Const NUM_STEPS = 4
+
+Const CAPPNAME_WORD = "Word"
+Const CAPPNAME_EXCEL = "Excel"
+Const CAPPNAME_POWERPOINT = "PowerPoint"
+Const CANALYZING = "Analyzing"
+
+Const BTN_CANCEL = 1
+Const BTN_BACK = 2
+Const BTN_NEXT = 3
+Const BTN_FINISH = 4
+
+Const STEP_INTRO = 0
+Const STEP_1 = 1
+Const STEP_2 = 2
+Const STEP_FINISH = 3
+
+Const DIR_NONE = 0
+Const DIR_BACK = 1
+Const DIR_NEXT = 2
+
+Const CPRODUCTNAME_STR = "<PRODUCTNAME>"
+
+Const CSTR_ANALYSIS_LOG_DONE = "Done"
+
+Const CINPUT_DIR = "indir"
+Const COUTPUT_DIR = "outdir"
+Const CRESULTS_FILE = "resultsfile"
+Const CLOG_FILE = "logfile"
+Const CRESULTS_TEMPLATE = "resultstemplate"
+Const CRESULTS_EXIST = "resultsexist"
+Const CPROMPT_FILE = "promptfile"
+Const COVERWRITE_FILE = "overwritefile"
+Const CAPPEND_FILE = "appendfile"
+Const CNEW_RESULTS_FILE = "newresultsfile"
+Const CINCLUDE_SUBDIRS = "includesubdirs"
+Const CDEBUG_LEVEL = "debuglevel"
+Const CTYPE_WORDDOC = "typeworddoc"
+Const CTYPE_WORDDOT = "typeworddot"
+Const CTYPE_EXCELDOC = "typeexceldoc"
+Const CTYPE_EXCELDOT = "typeexceldot"
+Const CTYPE_PPDOC = "typepowerpointdoc"
+Const CTYPE_PPDOT = "typepowerpointdot"
+Const COUTPUT_TYPE = "outputtype"
+Const COUTPUT_TYPE_XLS = "xls"
+Const COUTPUT_TYPE_XML = "xml"
+Const COUTPUT_TYPE_BOTH = "both"
+Const CVERSION = "version"
+Const CDOPREPARE = "prepare"
+Const CTITLE = "title"
+Const CIGNORE_OLD_DOCS = "ignoreolddocuments"
+Const CISSUE_LIMIT = "issuesmonthlimit"
+Const CISSUE_LIMIT_DAW = 6
+Private mIssueLimit As Integer
+Const CDEFAULT_PASSWORD = "defaultpassword"
+Const CSTR_TEST_PASSWORD = "test"
+Private mDefaultPassword As String
+
+Const CLAST_CHECKPOINT As String = "LastCheckpoint"
+Const CNEXT_FILE As String = "NextFile"
+Const C_ABORT_ANALYSIS As String = "AbortAnalysis"
+
+Const CNUMBER_TOTAL_DOCS = "total_numberdocs"
+Const CNUMBER_DOCS_DOC = "numberdocs_doc"
+Const CNUMBER_TEMPLATES_DOT = "numbertemplates_dot"
+Const CNUMBER_DOCS_XLS = "numberdocs_xls"
+Const CNUMBER_TEMPLATES_XLT = "numbertemplates_xlt"
+Const CNUMBER_DOCS_PPT = "numberdocs_ppt"
+Const CNUMBER_TEMPLATES_POT = "numbertemplates_pot"
+Const CSTART_TIME = "start"
+Const CEND_TIME = "end"
+Const CELAPSED_TIME = "time_for_analysis"
+Const CWINVERSION = "win_version"
+Const CUSER_LOCALE_INFO = "user_locale"
+Const CSYS_LOCALE_INFO = "system_locale"
+Const CWORD_VERSION = "word_ver"
+Const CEXCEL_VERSION = "excel_ver"
+Const CPOWERPOINT_VERSION = "powerpoint_ver"
+Const CNOT_INSTALLED = "not installed"
+
+Const CRESULTS_FILE_EXTENSION = ".xls"
+Const CCONFIG_BACKUP_EXT = "_bak"
+Const CDEFAULT_README_NAME = "UserGuide"
+
+Const C_DOCS_LESS_3_MONTH = "DocumentsYoungerThan3Month"
+Const C_DOCS_LESS_6_MONTH = "DocumentsYoungerThan6Month"
+Const C_DOCS_LESS_12_MONTH = "DocumentsYoungerThan12Month"
+Const C_DOCS_MORE_12_MONTH = "DocumentsOlderThan12Month"
+
+'module level vars
+Dim mnCurStep As Integer
+Dim mbTrue As Boolean
+Dim mbFalse As Boolean
+Dim mLblSteps As String
+Dim mChbSubdirs As String
+
+Dim mWordDocCount As Long
+Dim mExcelDocCount As Long
+Dim mPPDocCount As Long
+
+Dim mWordTemplateCount As Long
+Dim mExcelTemplateCount As Long
+Dim mPPTemplateCount As Long
+Dim mTotalDocCount As Long
+Dim mIgnoredDocCount As Long
+
+Public VBInst As VBIDE.VBE
+Dim mbFinishOK As Boolean
+Dim mbAllowExit As Boolean
+Private mStrTrue As String
+Private mLogFilePath As String
+Private mDebugLevel As String
+Private mIniFilePath As String
+Private mbDocCountCurrent As Boolean
+Private mbDoPrepare As Boolean
+
+Dim mDocFiles As CollectedFiles
+
+Private Declare Sub InitCommonControls Lib "comctl32" ()
+Private Declare Function GetTickCount Lib "kernel32" () As Long
+Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
+
+Const FORMAT_MESSAGE_FROM_SYSTEM = &H1000
+
+Private Declare Function FormatMessage Lib "kernel32" Alias _
+ "FormatMessageA" (ByVal dwFlags As Long, lpSource As Long, _
+ ByVal dwMessageId As Long, ByVal dwLanguageId As Long, _
+ ByVal lpBuffer As String, ByVal nSize As Long, Arguments As Any) As Long
+
+
+Private Const HKEY_CURRENT_USER As Long = &H80000001
+Private Const HKEY_LOCAL_MACHINE As Long = &H80000002
+
+Const WORD_APP = "word"
+Const EXCEL_APP = "excel"
+Const PP_APP = "pp"
+Const REG_KEY_APP_PATH = "Software\Microsoft\Windows\CurrentVersion\App Paths\"
+
+
+Function GetAppPath(myApp As String) As String
+ Dim myPath As String
+
+ If (myApp = WORD_APP) Then
+ myPath = GetRegistryInfo(HKEY_LOCAL_MACHINE, REG_KEY_APP_PATH & "winword.exe", "")
+ ElseIf (myApp = EXCEL_APP) Then
+ myPath = GetRegistryInfo(HKEY_LOCAL_MACHINE, REG_KEY_APP_PATH & "excel.exe", "")
+ ElseIf (myApp = PP_APP) Then
+ myPath = GetRegistryInfo(HKEY_LOCAL_MACHINE, REG_KEY_APP_PATH & "powerpnt.exe", "")
+ Else
+ MsgBox "Unknown application: " & myApp, vbCritical
+ Exit Function
+ End If
+
+ If (myPath = "") Then
+ If (myApp = WORD_APP) Then
+ myPath = GetRegistryInfo(HKEY_CURRENT_USER, REG_KEY_APP_PATH & "winword.exe", "")
+ ElseIf (myApp = EXCEL_APP) Then
+ myPath = GetRegistryInfo(HKEY_CURRENT_USER, REG_KEY_APP_PATH & "excel.exe", "")
+ ElseIf (myApp = PP_APP) Then
+ myPath = GetRegistryInfo(HKEY_CURRENT_USER, REG_KEY_APP_PATH & "powerpnt.exe", "")
+ End If
+ End If
+
+ GetAppPath = myPath
+End Function
+
+Function GetDriverDoc(myApp As String) As String
+ Dim myPath As String
+ Dim errStr As String
+ Dim fso As New FileSystemObject
+
+ If (myApp = WORD_APP) Then
+ myPath = fso.GetAbsolutePathName(CBASE_RESOURCE_DIR & "\" & CWORD_DRIVER_FILE)
+ ElseIf (myApp = EXCEL_APP) Then
+ myPath = fso.GetAbsolutePathName(CBASE_RESOURCE_DIR & "\" & CEXCEL_DRIVER_FILE)
+ ElseIf (myApp = PP_APP) Then
+ myPath = fso.GetAbsolutePathName(CBASE_RESOURCE_DIR & "\" & CPP_DRIVER_FILE)
+ Else
+ MsgBox "Unknown application: " & myApp, vbCritical
+ GoTo FinalExit
+ End If
+
+ If Not fso.FileExists(myPath) Then
+ errStr = ReplaceTopic2Tokens(GetResString(ERR_MISSING_WORD_DRIVER), _
+ TOPIC_STR, myPath, CR_STR, Chr(13))
+ WriteDebug errStr
+ MsgBox errStr, vbCritical
+ GoTo FinalExit
+ End If
+
+ GetDriverDoc = myPath
+
+FinalExit:
+ Set fso = Nothing
+End Function
+
+
+
+
+Private Function AutomationMessageText(lCode As Long) As String
+ Dim sRtrnCode As String
+ Dim lRet As Long
+
+ sRtrnCode = Space$(256)
+ lRet = FormatMessage(FORMAT_MESSAGE_FROM_SYSTEM, 0&, lCode, 0&, _
+ sRtrnCode, 256&, 0&)
+ If lRet > 0 Then
+ AutomationMessageText = Left(sRtrnCode, lRet)
+ Else
+ AutomationMessageText = "Error not found."
+ End If
+
+End Function
+
+Private Sub btnBrowseDirInput_Click()
+ Dim folder As String
+ Dim StartDir As String
+
+ If Len(txtInputDir.Text) > 0 Then
+ StartDir = txtInputDir.Text
+ End If
+
+ folder = BrowseForFolder(Me, GetResString(BROWSE_FOR_DOC_DIR_ID), StartDir)
+ If Len(folder) = 0 Then
+ Exit Sub 'User Selected Cancel
+ End If
+ txtInputDir.Text = folder
+ txtInputDir.ToolTipText = folder
+
+ If Len(txtOutputDir.Text) = 0 Then
+ txtOutputDir.Text = folder
+ txtOutputDir.ToolTipText = folder
+ End If
+End Sub
+
+Private Sub btnBrowseDirOut_Click()
+ Dim folder As String
+ Dim StartDir As String
+
+ If Len(txtOutputDir.Text) > 0 Then
+ StartDir = txtOutputDir.Text
+ End If
+
+ folder = BrowseForFolder(Me, GetResString(BROWSE_FOR_RES_DIR_ID), StartDir)
+ If Len(folder) = 0 Then
+ Exit Sub 'User Selected Cancel
+ End If
+ txtOutputDir.Text = folder
+ txtOutputDir.ToolTipText = folder
+End Sub
+
+Private Sub btnPrepare_Click()
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "btnPrepare_Click"
+
+ mbDoPrepare = True
+ mbAllowExit = True
+
+ btnViewResults.Enabled = False
+ btnRunAnalysis.Enabled = False
+ btnPrepare.Enabled = False
+
+ cmdNav(BTN_CANCEL).Enabled = False
+ cmdNav(BTN_BACK).Enabled = False
+ cmdNav(BTN_NEXT).Enabled = False
+ cmdNav(BTN_FINISH).Enabled = False
+ btnPrepare.Caption = GetResString(RUNBTN_RUNNING_ID)
+
+ Dim str As String
+
+ If RunAnalysis(True) Then
+ cmdNav(BTN_FINISH).Enabled = True
+ btnRunAnalysis.Enabled = True
+ btnViewResults.Enabled = True
+ btnPrepare.Enabled = True
+ btnViewResults.SetFocus
+ str = ReplaceTopic2Tokens(GetResString(RID_STR_ENG_OTHER_PREPARE_COMPLETED_PREP_ID), _
+ TOPIC_STR, getOutputDir, CR_STR, Chr(13))
+ MsgBox str, vbInformation
+ Else
+ cmdNav(BTN_FINISH).Enabled = False
+ btnRunAnalysis.Enabled = True
+ btnViewResults.Enabled = False
+ btnPrepare.Enabled = False
+ End If
+
+FinalExit:
+ mbDoPrepare = False
+ cmdNav(BTN_CANCEL).Enabled = True
+ cmdNav(BTN_BACK).Enabled = True
+ cmdNav(BTN_NEXT).Enabled = False
+ btnPrepare.Caption = GetResString(PREPAREBTN_START_ID)
+ Exit Sub
+
+HandleErrors:
+ cmdNav(BTN_FINISH).Enabled = False
+ btnRunAnalysis.Enabled = True
+ btnViewResults.Enabled = False
+ btnPrepare.Enabled = False
+
+ WriteDebug currentFunctionName & " : " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+
+Private Sub cmdNav_Click(Index As Integer)
+ On Error GoTo HandleError
+ Dim currentFunctionName As String
+ currentFunctionName = "cmdNav_Click"
+ Dim nAltStep As Integer
+ Dim rc As Long
+ Dim fso As Scripting.FileSystemObject
+
+ Select Case Index
+ Case BTN_CANCEL
+ 'Copy backup configuration file over existing
+ If fso Is Nothing Then
+ Set fso = New Scripting.FileSystemObject
+ End If
+ If fso.FileExists(mIniFilePath & CCONFIG_BACKUP_EXT) Then
+ DeleteFile mIniFilePath
+ AttemptToCopyFile mIniFilePath & CCONFIG_BACKUP_EXT, mIniFilePath
+ End If
+ Set mDocFiles = Nothing
+
+ Unload Me
+
+ Case BTN_BACK
+ nAltStep = mnCurStep - 1
+ SetStep nAltStep, DIR_BACK
+
+ Case BTN_NEXT
+ nAltStep = mnCurStep + 1
+ SetStep nAltStep, DIR_NEXT
+
+ Case BTN_FINISH
+ If (Not mbAllowExit) Then
+ Dim str As String
+ Dim response As Integer
+
+ str = ReplaceTopicTokens(GetResString(RID_STR_ENG_ANALYSE_NOT_RUN), CR_STR, Chr(13))
+ response = MsgBox(str, vbOKCancel + vbInformation)
+ If response = vbOK Then ' User chose Ok.
+ mbAllowExit = True
+ End If
+ End If
+
+ If (mbAllowExit) Then
+ DeleteFile mIniFilePath & CCONFIG_BACKUP_EXT
+ Set mDocFiles = Nothing
+ Unload Me
+ End If
+ End Select
+
+FinalExit:
+ Set fso = Nothing
+ Exit Sub
+
+HandleError:
+ WriteDebug currentFunctionName & " : " & Err.Number & " " & Err.Description & " " & Err.Source
+
+ Resume FinalExit
+End Sub
+
+Private Sub btnRunAnalysis_Click()
+ On Error GoTo HandleErrors
+ Dim bViewResults As Boolean
+ Dim str As String
+ Dim response As Integer
+
+ btnViewResults.Enabled = False
+ btnRunAnalysis.Enabled = False
+ btnPrepare.Enabled = False
+ bViewResults = False
+ mbAllowExit = True
+
+ cmdNav(BTN_CANCEL).Enabled = False
+ cmdNav(BTN_BACK).Enabled = False
+ cmdNav(BTN_NEXT).Enabled = False
+ cmdNav(BTN_FINISH).Enabled = False
+ btnRunAnalysis.Caption = GetResString(RUNBTN_RUNNING_ID)
+
+ If RunAnalysis(False) Then
+ cmdNav(BTN_FINISH).Enabled = True
+ btnRunAnalysis.Enabled = True
+ btnViewResults.Enabled = True
+ btnPrepare.Enabled = True
+ btnViewResults.SetFocus
+ btnRunAnalysis.Caption = GetResString(RUNBTN_START_ID)
+
+ str = ReplaceTopicTokens(GetResString(RID_STR_ENG_ANALYZE_COMPLETED_ID), CR_STR, Chr(13))
+ response = MsgBox(str, vbOKCancel + vbInformation)
+ If response = vbOK Then ' User chose Ok.
+ bViewResults = True
+ End If
+ Else
+ btnRunAnalysis.Enabled = True
+ btnViewResults.Enabled = False
+ btnPrepare.Enabled = False
+ End If
+
+FinalExit:
+ cmdNav(BTN_CANCEL).Enabled = True
+ cmdNav(BTN_BACK).Enabled = True
+ cmdNav(BTN_NEXT).Enabled = False
+ btnRunAnalysis.Caption = GetResString(RUNBTN_START_ID)
+
+ If bViewResults Then
+ btnViewResults_Click
+ End If
+
+ Exit Sub
+
+HandleErrors:
+ cmdNav(BTN_FINISH).Enabled = False
+ btnRunAnalysis.Enabled = True
+ btnViewResults.Enabled = False
+ btnPrepare.Enabled = False
+ WriteDebug "Document Analysis: View Analysis Results" & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+Private Sub btnViewResults_Click()
+ On Error GoTo HandleErrors
+ Dim resultsFile As String
+ Dim fso As New FileSystemObject
+ Dim str As String
+
+ mbAllowExit = True
+
+ resultsFile = getOutputDir & "\" & txtResultsName.Text
+
+ If GetIniSetting(COUTPUT_TYPE) = COUTPUT_TYPE_XML Or _
+ GetIniSetting(COUTPUT_TYPE) = COUTPUT_TYPE_BOTH Then
+
+ Dim base As String
+ Dim path As String
+ base = fso.GetParentFolderName(resultsFile) & "\" & fso.GetBaseName(txtResultsName.Text)
+ If CheckWordDocsToAnalyze Then
+ path = base & "_" & CAPPNAME_WORD & "." & COUTPUT_TYPE_XML
+ End If
+ If CheckExcelDocsToAnalyze Then
+ If path <> "" Then path = path & vbLf
+ path = path & base & "_" & CAPPNAME_EXCEL & "." & COUTPUT_TYPE_XML
+ End If
+ If CheckPPDocsToAnalyze Then
+ If path <> "" Then path = path & vbLf
+ path = path & base & "_" & CAPPNAME_POWERPOINT & "." & COUTPUT_TYPE_XML
+ End If
+
+ str = ReplaceTopic2Tokens(GetResString(XML_RESULTS_ID), _
+ TOPIC_STR, path, CR_STR, Chr(13))
+ WriteDebug str
+ MsgBox str, vbInformation
+ If GetIniSetting(COUTPUT_TYPE) = COUTPUT_TYPE_XML Then
+ Resume FinalExit
+ End If
+ End If
+
+ If Not fso.FileExists(resultsFile) Then
+ str = ReplaceTopic2Tokens(GetResString(ERR_MISSING_RESULTS_DOC), _
+ TOPIC_STR, resultsFile, CR_STR, Chr(13))
+ WriteDebug str
+ MsgBox str, vbCritical
+ Resume FinalExit
+ End If
+
+ Dim xl As Excel.application
+ Set xl = New Excel.application
+ xl.Visible = True
+ xl.Workbooks.Open resultsFile
+
+FinalExit:
+ Set xl = Nothing
+ Set fso = Nothing
+
+ Exit Sub
+HandleErrors:
+ WriteDebug "Document Analysis: View Analysis Results" & Err.Number & " " & Err.Description & " " & Err.Source
+End Sub
+
+Private Sub Form_Activate()
+ Dim currentFunctionName As String
+ Dim missingFile As String
+ currentFunctionName = "Form_Activate"
+ On Error GoTo HandleErrors
+
+ If Not CheckNeededFiles(missingFile) Then
+ Dim str As String
+ str = ReplaceTopic2Tokens(GetResString(ERR_MISSING_WORD_DRIVER), _
+ TOPIC_STR, missingFile, CR_STR, Chr(13))
+ WriteDebug str
+ MsgBox str, vbCritical
+
+ End 'Exit application - some needed files are missing
+ End If
+
+FinalExit:
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : " & Err.Number & " " & Err.Description & " " & Err.Source
+ GoTo FinalExit
+End Sub
+
+Private Sub Form_Initialize()
+ Dim currentFunctionName As String
+ currentFunctionName = "Form_Initialize"
+ On Error GoTo ErrorHandler
+ Call InitCommonControls 'Use Windows XP Visual Style
+
+FinalExit:
+ Exit Sub
+
+ErrorHandler:
+ WriteDebug currentFunctionName & " : " & Err.Number & " " & Err.Description & " " & Err.Source
+ GoTo FinalExit
+End Sub
+
+Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
+ If KeyCode = vbKeyF1 Then
+ 'cmdNav_Click BTN_HELP
+ End If
+End Sub
+
+Private Sub Form_Load()
+ Const COS_CHECK = "oscheck"
+
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "Form_Load"
+
+ Dim fso As New FileSystemObject
+ Dim i As Integer
+ 'init all vars
+ mbFinishOK = False
+ mbTrue = True
+ mbFalse = False
+
+ mLogFilePath = GetLogFilePath
+ mIniFilePath = GetIniFilePath
+ mbDocCountCurrent = False
+ mbDoPrepare = False
+ mbAllowExit = False
+
+ 'Check OS before running
+ Dim bOSCheck As Boolean
+ bOSCheck = IIf(GetIniSetting(COS_CHECK) = "False", False, True)
+
+ If bOSCheck Then
+ If Not IsWin98Plus Then
+ Dim str As String
+ Dim winVer As RGB_WINVER
+ str = ReplaceTopic2Tokens(GetResString(ERR_SUPPORTED_OSVERSION), _
+ TOPIC_STR, GetWinVersion(winVer), CR_STR, Chr(13))
+ WriteDebug str
+ MsgBox str, vbCritical
+
+ End 'Exit application - unsupported OS
+ End If
+ Else
+ Err.Clear
+ WriteDebug "IsWin2000Plus OS Check bypassed by analysis.ini oscheck=False setting"
+ End If
+
+
+ For i = 0 To NUM_STEPS - 1
+ fraStep(i).Left = -10000
+ Next
+
+ 'Load All string info for Form
+ LoadResStrings Me
+
+ frmWizard.Caption = ReplaceTopicTokens(GetResString(TITLE_ID), CPRODUCTNAME_STR, _
+ GetResString(PRODUCTNAME_ID))
+ lblIntroduction1.Caption = ReplaceTopicTokens(GetResString(INTRO1_ID), CPRODUCTNAME_STR, _
+ GetResString(PRODUCTNAME_ID))
+ mLblSteps = GetResString(LBL_STEPS_ID)
+ mChbSubdirs = GetResString(CHK_SUBDIRS_ID)
+
+ ' Setup Doc Preparation specific strings
+ If gBoolPreparation Then
+ ' Steps
+ lblStep1_4.Caption = GetResString(RID_STR_ENG_SIDEBAR_ANALYZE_PREP_ID)
+ lblStep2_4.Caption = GetResString(RID_STR_ENG_SIDEBAR_ANALYZE_PREP_ID)
+ lblStep3_4.Caption = GetResString(RID_STR_ENG_SIDEBAR_ANALYZE_PREP_ID)
+ lblStep4_4.Caption = GetResString(RID_STR_ENG_SIDEBAR_ANALYZE_PREP_ID)
+
+ ' Preparation - Step 1. Introduction
+ lblIntroduction1.Caption = ReplaceTopicTokens(GetResString(RID_STR_ENG_INTRODUCTION_INTRO1_PREP_ID), CPRODUCTNAME_STR, _
+ GetResString(PRODUCTNAME_ID))
+ lblIntroduction2.Caption = GetResString(RID_STR_ENG_INTRODUCTION_INTRO2_PREP_ID)
+ lblIntroduction3.Caption = GetResString(RID_STR_ENG_INTRODUCTION_INTRO3_PREP_ID)
+
+ ' Preparation - Step 2. Documents
+ lblChooseDocs.Caption = GetResString(RID_STR_ENG_DOCUMENTS_CHOOSE_DOCUMENTS_PREP_ID)
+ lblDocTypes.Caption = GetResString(RID_STR_ENG_DOCUMENTS_CHOOSE_DOC_TYPES_PREP_ID)
+ 'mChbSubdirs = GetResString(RID_STR_ENG_DOCUMENTS_INCLUDE_SUBDIRECTORIES_PREP_ID)
+ chkIgnoreOld.Caption = GetResString(RID_STR_IGNORE_OLDER_CB_ID)
+
+ cbIgnoreOld.Clear
+ cbIgnoreOld.AddItem (GetResString(RID_STR_IGNORE_OLDER_3_MONTHS_ID))
+ cbIgnoreOld.AddItem (GetResString(RID_STR_IGNORE_OLDER_6_MONTHS_ID))
+ cbIgnoreOld.AddItem (GetResString(RID_STR_IGNORE_OLDER_12_MONTHS_ID))
+ cbIgnoreOld.ListIndex = 0
+
+ ' Preparation - Step 3. Results
+ lblChooseResults.Caption = GetResString(RID_STR_ENG_RESULTS_CHOOSE_OPTIONS_PREP_ID)
+ txtResultsName.Text = GetResString(RID_STR_ENG_RESULTS_ANALYSIS_XLS_PREP_ID)
+
+ 'Show Append option
+ rdbResultsAppend.Visible = True
+
+ ' Preparation - Step 4. Analysis
+ lblSetupDone.Caption = GetResString(RID_STR_ENG_ANALYZE_SETUP_COMPLETE_PREP_ID)
+ btnPrepare.Visible = True
+ Else
+ ' The next line is a work around for a wrong translated string and should be removed
+ ' when RID_STR_ENG_RESULTS_CHOOSE_OPTIONS has been corrected
+ lblChooseResults.Caption = GetResString(RID_STR_ENG_RESULTS_CHOOSE_OPTIONS_PREP_ID)
+ mDefaultPassword = IIf(GetIniSetting(CDEFAULT_PASSWORD) = "", _
+ CSTR_TEST_PASSWORD, GetIniSetting(CDEFAULT_PASSWORD))
+ End If
+
+ SetStep 0, DIR_NEXT
+ Dim tmpStr As String
+
+ 'Setup Params
+ tmpStr = GetIniSetting(CINPUT_DIR)
+ If tmpStr <> "" Then
+ txtInputDir.Text = tmpStr
+ txtInputDir.ToolTipText = tmpStr
+ End If
+ tmpStr = GetIniSetting(COUTPUT_DIR)
+ If tmpStr <> "" Then
+ If Right(tmpStr, 1) = ":" And Len(tmpStr) = 2 Then
+ tmpStr = tmpStr & "\"
+ End If
+ txtOutputDir.Text = tmpStr
+ txtOutputDir.ToolTipText = tmpStr
+ End If
+ tmpStr = GetIniSetting(CRESULTS_FILE)
+ If tmpStr <> "" Then txtResultsName.Text = tmpStr
+
+ rdbResultsPrompt.value = False
+ rdbResultsOverwrite.value = False
+ rdbResultsAppend.value = False
+ Dim resultsSetting As String
+ resultsSetting = GetIniSetting(CRESULTS_EXIST)
+ If resultsSetting = CPROMPT_FILE Then
+ rdbResultsPrompt.value = True
+ ElseIf resultsSetting = CAPPEND_FILE Then
+ rdbResultsAppend.value = True
+ Else
+ rdbResultsOverwrite.value = True
+ End If
+
+ chkWordDoc.value = IIf(GetIniSetting(CTYPE_WORDDOC) = CStr(True), vbChecked, 0)
+ chkWordTemplate.value = IIf(GetIniSetting(CTYPE_WORDDOT) = CStr(True), vbChecked, 0)
+ chkExcelDoc.value = IIf(GetIniSetting(CTYPE_EXCELDOC) = CStr(True), vbChecked, 0)
+ chkExcelTemplate.value = IIf(GetIniSetting(CTYPE_EXCELDOT) = CStr(True), vbChecked, 0)
+ chkPPDoc.value = IIf(GetIniSetting(CTYPE_PPDOC) = CStr(True), vbChecked, 0)
+ chkPPTemplate.value = IIf(GetIniSetting(CTYPE_PPDOT) = CStr(True), vbChecked, 0)
+ chkIncludeSubdirs.value = IIf(GetIniSetting(CINCLUDE_SUBDIRS) = CStr(True), vbChecked, 0)
+ mDebugLevel = IIf(GetIniSetting(CDEBUG_LEVEL) = "", CDEBUG_LEVEL_DEFAULT, GetIniSetting(CDEBUG_LEVEL))
+ chkIgnoreOld.value = IIf(GetIniSetting(CIGNORE_OLD_DOCS) = CStr(True), vbChecked, 0)
+
+ mIssueLimit = IIf(GetIniSetting(CISSUE_LIMIT) = "", CISSUE_LIMIT_DAW, GetIniSetting(CISSUE_LIMIT))
+ If (mIssueLimit <= 3) Then
+ cbIgnoreOld.ListIndex = 0
+ ElseIf (mIssueLimit <= 6) Then
+ cbIgnoreOld.ListIndex = 1
+ Else
+ cbIgnoreOld.ListIndex = 2
+ End If
+
+ 'Always ensure at least one doc type is selected on startup
+ If (chkWordDoc.value <> vbChecked) And _
+ (chkWordTemplate.value <> vbChecked) And _
+ (chkExcelDoc.value <> vbChecked) And _
+ (chkExcelTemplate.value <> vbChecked) And _
+ (chkPPDoc.value <> vbChecked) And _
+ (chkPPTemplate.value <> vbChecked) Then
+
+ chkWordDoc.value = vbChecked
+ End If
+
+FinalExit:
+ Set fso = Nothing
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+Private Sub SetStep(nStep As Integer, nDirection As Integer)
+ On Error GoTo HandleError
+ Const driveTypeIsCDROM = 4
+ Dim val As String
+ Dim fso As Scripting.FileSystemObject
+ Set fso = New Scripting.FileSystemObject
+ Dim drive
+
+
+ mbDocCountCurrent = False
+
+ Select Case nStep
+ Case STEP_INTRO
+ 'MsgBox "Enter Intro"
+ Case STEP_1
+ 'Leave Introduction
+ 'Workaround - resource bug for SubDir checkbox, have to set it explicitly
+ chkIncludeSubdirs.Caption = mChbSubdirs
+ Case STEP_2
+ 'Leave Documents
+
+ Set drive = fso.GetDrive(fso.GetDriveName(txtInputDir.Text))
+ If drive.DriveType = driveTypeIsCDROM Then
+ If Not drive.IsReady Then
+ MsgBox GetResString(ERR_CDROM_NOT_READY), vbCritical
+ Exit Sub
+ End If
+ End If
+
+ If txtInputDir.Text = "" Or Not fso.FolderExists(txtInputDir.Text) Then ' fso.FolderExists() has replaced dir()
+ MsgBox ReplaceTopicTokens(GetResString(ERR_NO_DOC_DIR), _
+ CR_STR, Chr(13)), vbCritical
+ Exit Sub
+ End If
+
+ If Not CheckUserChosenDocsToAnalyze Then
+ MsgBox GetResString(ERR_NO_DOC_TYPES), vbCritical
+ Exit Sub
+ End If
+ 'Expand directory name only without path to full path
+ txtInputDir.Text = fso.GetAbsolutePathName(txtInputDir.Text)
+
+ If txtOutputDir.Text = "" Then
+ txtOutputDir.Text = txtInputDir.Text
+ End If
+
+ mbFinishOK = False
+
+ 'Workaround - label resource bug for Steps, have to set it explicitly
+ Label12(0).Caption = mLblSteps
+ Label12(5).Caption = mLblSteps
+ Case STEP_FINISH
+ 'Leave Results
+ If Not CheckResultsDir(getOutputDir) Then
+ Exit Sub
+ End If
+
+ 'Expand directory name only without path to full path
+ txtOutputDir.Text = fso.GetAbsolutePathName(txtOutputDir)
+
+ 'Check Results file is there and has a valid extension
+ If fso.GetBaseName(txtResultsName.Text) = "" Then
+ txtResultsName.Text = GetResString(SETUP_ANALYSIS_XLS_ID)
+ End If
+ txtResultsName.Text = fso.GetBaseName(txtResultsName.Text) & CRESULTS_FILE_EXTENSION
+
+ Screen.MousePointer = vbHourglass
+ DeleteFile mLogFilePath
+ Set mDocFiles = Nothing
+ If Not CheckNumberDocsToAnalyze Then
+ Screen.MousePointer = vbDefault
+ Exit Sub
+ End If
+
+ Screen.MousePointer = vbDefault
+
+ btnRunAnalysis.Enabled = True
+
+ If GetNumberOfDocsToAnalyze = 0 Then
+ btnRunAnalysis.Enabled = False
+ End If
+
+ 'Backup configuration
+ If Not AttemptToCopyFile(mIniFilePath, mIniFilePath & CCONFIG_BACKUP_EXT) Then
+ Exit Sub
+ End If
+
+ 'Save current Wizard Settings
+ WriteWizardSettingsToLog mIniFilePath
+
+ 'If results file already exists, enable View and Prepare
+ If fso.FileExists(getOutputDir & "\" & txtResultsName.Text) Then
+ btnViewResults.Enabled = True
+ btnPrepare.Enabled = True
+ End If
+
+ mbFinishOK = True
+ End Select
+
+ 'move to new step
+ fraStep(mnCurStep).Enabled = False
+ fraStep(nStep).Left = 0
+ If nStep <> mnCurStep Then
+ fraStep(mnCurStep).Left = -10000
+ fraStep(mnCurStep).Enabled = False
+ End If
+ fraStep(nStep).Enabled = True
+
+ SetNavBtns nStep
+ Exit Sub
+
+FinalExit:
+ Set fso = Nothing
+ Set drive = Nothing
+ Exit Sub
+
+HandleError:
+ Screen.MousePointer = vbDefault
+ WriteDebug "Document Analysis: SetStep() " & Err.Number & " " & Err.Description & " " & Err.Source
+
+ Resume FinalExit
+End Sub
+
+Function CheckResultsDir(resultsDir As String) As Boolean
+ On Error GoTo HandleError
+ Dim fso As Scripting.FileSystemObject
+ Set fso = New Scripting.FileSystemObject
+ Const driveTypeIsCDROM = 4
+ Const readOnlyFolderRemainder = 1
+ Dim drive
+ CheckResultsDir = False
+
+ If resultsDir = "" Then
+ MsgBox ReplaceTopicTokens(GetResString(ERR_NO_RESULTS_DIRECTORY), _
+ CR_STR, Chr(13)), vbCritical
+ CheckResultsDir = False
+ Exit Function
+ End If
+
+ Set drive = fso.GetDrive(fso.GetDriveName(resultsDir))
+ If drive.DriveType = driveTypeIsCDROM Then 'If CD-ROM Drive Then
+ Dim Msg1 As String
+ Msg1 = ReplaceTopic2Tokens(GetResString(ERR_CREATE_FILE), _
+ TOPIC_STR, txtResultsName.Text, CR_STR, Chr(13))
+ MsgBox Msg1, vbCritical
+ CheckResultsDir = False
+ Exit Function
+ End If
+
+
+ If Not fso.FolderExists(resultsDir) Then
+ Dim Msg, Style, response
+
+ Msg = ReplaceTopicTokens(GetResString(ERR_NO_RES_DIR), CR_STR, Chr(13))
+ Style = vbYesNo + vbQuestion + vbDefaultButton1 ' Define buttons.
+
+ response = MsgBox(Msg, Style)
+ If response = vbYes Then ' User chose Yes.
+ If Not CreateDir(getOutputDir) Then
+ CheckResultsDir = False
+ Exit Function
+ End If
+ Else ' User chose No.
+ CheckResultsDir = False
+ Exit Function
+ End If
+ End If
+
+ Dim testFile As String
+ testFile = resultsDir & "\" & fso.GetTempName
+ Do While fso.FileExists(testFile)
+ testFile = resultsDir & "\" & fso.GetTempName
+ Loop
+
+ On Error GoTo HandleReadOnly
+ Dim aText As TextStream
+ Set aText = fso.CreateTextFile(testFile, False, False)
+ aText.WriteLine ("Dies ist ein Test.")
+ aText.Close
+ fso.DeleteFile (testFile)
+
+' GetAttr doesn't work reliable ( returns read only for 'my Documents' and rw for read only network folder
+' If ((GetAttr(resultsDir) Mod 2) = readOnlyFolderRemainder) Then 'If the attribute is odd then the folder is read-only
+' MsgBox GetResString(ERR_NO_WRITE_TO_READ_ONLY_FOLDER), vbCritical
+' CheckResultsDir = False
+' Exit Function
+' End If
+
+ CheckResultsDir = True
+
+ Exit Function
+HandleError:
+ WriteDebug "Document Analysis: CheckResultsDir() " & Err.Number & " " & Err.Description & " " & Err.Source
+ CheckResultsDir = False
+ Exit Function
+HandleReadOnly:
+ Dim str As String
+ str = ReplaceTopic2Tokens(GetResString(ERR_CREATE_FILE), _
+ TOPIC_STR, txtResultsName.Text, CR_STR, Chr(13))
+ MsgBox str, vbCritical
+ CheckResultsDir = False
+ Exit Function
+End Function
+
+Function CheckUserChosenDocsToAnalyze() As Boolean
+ CheckUserChosenDocsToAnalyze = Not ((chkWordDoc.value <> vbChecked) And (chkWordTemplate.value <> vbChecked) And _
+ (chkExcelDoc.value <> vbChecked) And (chkExcelTemplate.value <> vbChecked) And _
+ (chkPPDoc.value <> vbChecked) And (chkPPTemplate.value <> vbChecked))
+End Function
+
+Function AttemptToCopyFile(Source As String, dest As String) As Boolean
+ On Error GoTo HandleErrors
+ Dim fso As Scripting.FileSystemObject
+ Set fso = New Scripting.FileSystemObject
+
+ If fso.FileExists(Source) Then
+ fso.CopyFile Source, dest
+ End If
+
+ 'True if no source or copy succeeded
+ AttemptToCopyFile = True
+
+FinalExit:
+ Set fso = Nothing
+ Exit Function
+
+HandleErrors:
+ AttemptToCopyFile = False
+ Dim str As String
+ str = ReplaceTopic2Tokens(GetResString(ERR_CREATE_FILE), _
+ TOPIC_STR, mIniFilePath & CCONFIG_BACKUP_EXT, CR_STR, Chr(13))
+ Resume FinalExit
+
+End Function
+
+Function CreateDir(dir As String) As Boolean
+ On Error GoTo HandleErrors
+ Dim fso As Scripting.FileSystemObject
+ Set fso = New Scripting.FileSystemObject
+
+ fso.CreateFolder (dir)
+
+ CreateDir = True
+
+FinalExit:
+ Set fso = Nothing
+ Exit Function
+
+HandleErrors:
+ Dim str As String
+ str = ReplaceTopic2Tokens(GetResString(ERR_CREATE_DIR), _
+ TOPIC_STR, dir, CR_STR, Chr(13))
+ Select Case Err.Number
+ Case 76
+ WriteDebug str
+ MsgBox str, vbCritical
+ CreateDir = False
+ Case 58
+ 'Don't care if it exists already
+ CreateDir = True
+ Case Else
+ WriteDebug str
+ MsgBox str, vbCritical
+ CreateDir = False
+ End Select
+ Resume FinalExit
+
+End Function
+Private Sub SetNavBtns(nStep As Integer)
+ mnCurStep = nStep
+
+ If mnCurStep = 0 Then
+ cmdNav(BTN_BACK).Enabled = False
+ cmdNav(BTN_NEXT).Enabled = True
+ ElseIf mnCurStep = NUM_STEPS - 1 Then
+ cmdNav(BTN_NEXT).Enabled = False
+ cmdNav(BTN_BACK).Enabled = True
+ Else
+ cmdNav(BTN_BACK).Enabled = True
+ cmdNav(BTN_NEXT).Enabled = True
+ End If
+
+ If mbFinishOK Then
+ cmdNav(BTN_FINISH).Enabled = True
+ Else
+ cmdNav(BTN_FINISH).Enabled = False
+ End If
+End Sub
+Function CheckForSupportedApp(app As String, lowerVerLimit As Long) As Boolean
+ Dim appRegStr As String
+ Dim appVer As Long
+ appRegStr = GetRegistryInfo(HKEY_CLASSES_ROOT, app & ".Application\CurVer", "")
+ appVer = val(Right(appRegStr, Len(appRegStr) - Len(app & ".Application.")))
+ If appVer >= lowerVerLimit Then
+ CheckForSupportedApp = True
+ Else
+ CheckForSupportedApp = False
+ End If
+End Function
+Function GetAppVersion(app As String) As Long
+ Dim appRegStr As String
+ Dim appVer As Long
+ appRegStr = GetRegistryInfo(HKEY_CLASSES_ROOT, app & ".Application\CurVer", "")
+ GetAppVersion = val(Right(appRegStr, Len(appRegStr) - Len(app & ".Application.")))
+End Function
+Function GetInstalledApp(app As String) As String
+ GetInstalledApp = GetRegistryInfo(HKEY_CLASSES_ROOT, app & ".Application\CurVer", "")
+End Function
+
+Sub WriteInfoToApplicationLog(wordAppStr As String, excelAppStr As String, ppAppStr As String)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "WriteInfoToApplicationLog"
+
+ Dim userLCID As Long
+ userLCID = GetUserDefaultLCID()
+ Dim sysLCID As Long
+ sysLCID = GetSystemDefaultLCID()
+
+ WriteToLog CWORD_VERSION, IIf(wordAppStr <> "", wordAppStr, CNOT_INSTALLED)
+ WriteToLog CEXCEL_VERSION, IIf(excelAppStr <> "", excelAppStr, CNOT_INSTALLED)
+ WriteToLog CPOWERPOINT_VERSION, IIf(ppAppStr <> "", ppAppStr, CNOT_INSTALLED)
+
+ WriteToLog CUSER_LOCALE_INFO, _
+ "langid: " & GetUserLocaleInfo(userLCID, LOCALE_ILANGUAGE) & ": " & _
+ GetUserLocaleInfo(userLCID, LOCALE_SENGLANGUAGE) & _
+ "-" & GetUserLocaleInfo(userLCID, LOCALE_SENGCOUNTRY) & _
+ " abrv: " & GetUserLocaleInfo(userLCID, LOCALE_SISO639LANGNAME) & _
+ "-" & GetUserLocaleInfo(userLCID, LOCALE_SISO3166CTRYNAME) & _
+ " sdate: " & GetUserLocaleInfo(userLCID, LOCALE_SSHORTDATE)
+
+ WriteToLog CSYS_LOCALE_INFO, _
+ "langid: " & GetUserLocaleInfo(sysLCID, LOCALE_ILANGUAGE) & ": " & _
+ GetUserLocaleInfo(sysLCID, LOCALE_SENGLANGUAGE) & _
+ "-" & GetUserLocaleInfo(sysLCID, LOCALE_SENGCOUNTRY) & _
+ " abrv: " & GetUserLocaleInfo(sysLCID, LOCALE_SISO639LANGNAME) & _
+ "-" & GetUserLocaleInfo(sysLCID, LOCALE_SISO3166CTRYNAME) & _
+ " sdate: " & GetUserLocaleInfo(userLCID, LOCALE_SSHORTDATE)
+
+ Dim myWinVer As RGB_WINVER
+ GetWinVersion myWinVer
+ WriteToLog CWINVERSION, myWinVer.VersionName & " " & myWinVer.VersionNo & _
+ " " & myWinVer.ServicePack & _
+ " build " & myWinVer.BuildNo
+ WriteToLog CNUMBER_TOTAL_DOCS, CStr(mTotalDocCount)
+ WriteToLog CNUMBER_DOCS_DOC, CStr(mWordDocCount)
+ WriteToLog CNUMBER_TEMPLATES_DOT, CStr(mWordTemplateCount)
+ WriteToLog CNUMBER_DOCS_XLS, CStr(mExcelDocCount)
+ WriteToLog CNUMBER_TEMPLATES_XLT, CStr(mExcelTemplateCount)
+ WriteToLog CNUMBER_DOCS_PPT, CStr(mPPDocCount)
+ WriteToLog CNUMBER_TEMPLATES_POT, CStr(mPPTemplateCount)
+FinalExit:
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+Function CheckTemplatePath(sMigrationResultsTemplatePath As String, fso As FileSystemObject) As Boolean
+ If Not fso.FileExists(sMigrationResultsTemplatePath) Then
+ Dim str As String
+ str = ReplaceTopic2Tokens(GetResString(ERR_MISSING_RESULTS_TEMPLATE), _
+ TOPIC_STR, sMigrationResultsTemplatePath, CR_STR, Chr(13))
+ WriteDebug str
+ MsgBox str, vbCritical
+ CheckTemplatePath = False
+ Else
+ CheckTemplatePath = True
+ End If
+End Function
+
+Function RunAnalysis(bDoPrepare) As Boolean
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "RunAnalysis"
+ Dim tstart As Single 'timer var for this routine only
+ Dim tend As Single 'timer var for this routine only
+ Dim fso As New FileSystemObject
+ Dim wordAppStr As String
+ Dim excelAppStr As String
+ Dim ppAppStr As String
+ Dim sMigrationResultsTemplatePath As String
+ Dim startDate As Variant
+ Dim bSuccess
+
+ bSuccess = True
+ startDate = Now
+ tstart = GetTickCount()
+
+ app.OleRequestPendingMsgText = GetResString(RUNBTN_RUNNING_ID)
+ app.OleRequestPendingMsgTitle = frmWizard.Caption
+
+ wordAppStr = GetInstalledApp(CAPPNAME_WORD)
+ excelAppStr = GetInstalledApp(CAPPNAME_EXCEL)
+ ppAppStr = GetInstalledApp(CAPPNAME_POWERPOINT)
+ 'Write locale, version info and settings to the Application log
+ WriteInfoToApplicationLog wordAppStr, excelAppStr, ppAppStr
+
+ 'Check for template
+ sMigrationResultsTemplatePath = fso.GetAbsolutePathName(CBASE_RESOURCE_DIR & "\" & CRESULTS_TEMPLATE_FILE)
+ If Not CheckTemplatePath(sMigrationResultsTemplatePath, fso) Then
+ bSuccess = False
+ GoTo FinalExit
+ End If
+
+ 'Check for installed Apps
+ If Not CheckInstalledApps(wordAppStr, excelAppStr, ppAppStr) Then
+ bSuccess = False
+ GoTo FinalExit
+ End If
+
+ If bDoPrepare Then
+ 'Show MsgBox ( to give apps some time to quit )
+ Dim strMsgBox As String
+ Dim response As Integer
+
+ strMsgBox = ReplaceTopic2Tokens(GetResString(RID_STR_ENG_OTHER_PREPARE_PROMPT_PREP_ID), _
+ TOPIC_STR, getOutputDir & "\" & txtResultsName.Text, TOPIC2_STR, getOutputDir)
+ strMsgBox = ReplaceTopicTokens(strMsgBox, CR_STR, Chr(13))
+ response = MsgBox(strMsgBox, Buttons:=vbOKCancel + vbInformation)
+
+ If response <> vbOK Then
+ bSuccess = False
+ GoTo FinalExit
+ End If
+ End If
+
+ 'Write Wizard Setting to Application log
+ WriteWizardSettingsToLog mLogFilePath
+
+ 'Write to Analysis ini file - used by driver docs
+ WriteCommonParamsToLog sMigrationResultsTemplatePath, mLogFilePath, mIniFilePath, fso
+
+ Screen.MousePointer = vbHourglass
+ ' Doc Counts are setup by CheckNumberDocsToAnalyze() when user moves to Analysis Panel
+ ' Takes account of user Options selected and inspects source directory
+ Dim analysisAborted As Boolean
+ analysisAborted = False
+
+ SetupInputVariables mLogFilePath, fso
+
+ Load ShowProgress
+ Call ShowProgress.SP_Init(mDocFiles.WordFiles.count + _
+ mDocFiles.ExcelFiles.count + _
+ mDocFiles.PowerPointFiles.count)
+
+ Dim myOffset As Long
+ myOffset = 0
+ If (mDocFiles.WordFiles.count > 0) Then
+ bSuccess = AnalyseList(mDocFiles.WordFiles, "word", mIniFilePath, myOffset, analysisAborted)
+ 'bSuccess = RunWordAnalysis(sMigrationResultsTemplatePath, mLogFilePath, fso)
+ End If
+
+ myOffset = mDocFiles.WordFiles.count
+ If ((mDocFiles.ExcelFiles.count > 0) And (Not analysisAborted)) Then
+ bSuccess = bSuccess And _
+ AnalyseList(mDocFiles.ExcelFiles, "excel", mIniFilePath, myOffset, analysisAborted)
+ 'bSuccess = RunExcelAnalysis(sMigrationResultsTemplatePath, mLogFilePath, fso)
+ End If
+
+ myOffset = myOffset + mDocFiles.ExcelFiles.count
+ If ((mDocFiles.PowerPointFiles.count > 0) And (Not analysisAborted)) Then
+ bSuccess = bSuccess And _
+ AnalyseList(mDocFiles.PowerPointFiles, "pp", mIniFilePath, myOffset, analysisAborted)
+ 'bSuccess = RunPPAnalysis(sMigrationResultsTemplatePath, mLogFilePath, fso)
+ End If
+
+ SetupInputVariables mLogFilePath, fso
+
+ tend = GetTickCount()
+ WriteToLog CELAPSED_TIME, (FormatNumber((tend - tstart) / 1000, 0) & " seconds: ") & _
+ (FormatNumber((tend - tstart), 0) & " miliseconds")
+
+FinalExit:
+ Unload ShowProgress
+ Screen.MousePointer = vbDefault
+ WriteToLog CSTART_TIME, CDate(startDate)
+ WriteToLog CEND_TIME, Now
+ Set fso = Nothing
+
+ RunAnalysis = bSuccess
+ Exit Function
+
+HandleErrors:
+ bSuccess = False
+ WriteDebug currentFunctionName & " : " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Function
+
+Function CheckInstalledApps(wordAppStr As String, excelAppStr As String, ppAppStr As String) As Boolean
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ Dim str As String
+ currentFunctionName = "CheckInstalledApps"
+
+ Dim missingInstalledApps As String
+ Dim unsupportedApps As String
+ Dim runningApps As String
+ Dim bSuccess As Boolean
+
+ bSuccess = False
+
+ If mWordDocCount > 0 Or mWordTemplateCount > 0 Then
+ If wordAppStr = "" Then 'Word not installed
+ missingInstalledApps = CAPPNAME_WORD
+ ElseIf Not CheckForSupportedApp(CAPPNAME_WORD, CSUPPORTED_VERSION) Then
+ unsupportedApps = CAPPNAME_WORD
+ ElseIf IsOfficeAppRunning(CAPPNAME_WORD) Then
+ runningApps = CAPPNAME_WORD
+ End If
+ End If
+
+ If excelAppStr = "" Then
+ If missingInstalledApps <> "" Then missingInstalledApps = missingInstalledApps & ", "
+ missingInstalledApps = missingInstalledApps & CAPPNAME_EXCEL
+ ElseIf Not CheckForSupportedApp(CAPPNAME_EXCEL, CSUPPORTED_VERSION) Then
+ If unsupportedApps <> "" Then unsupportedApps = unsupportedApps & ", "
+ unsupportedApps = unsupportedApps & CAPPNAME_EXCEL
+ ElseIf IsOfficeAppRunning(CAPPNAME_EXCEL) Then
+ If runningApps <> "" Then runningApps = runningApps & ", "
+ runningApps = runningApps & CAPPNAME_EXCEL
+ End If
+
+ If mPPDocCount > 0 Or mPPTemplateCount > 0 Then
+ If ppAppStr = "" Then 'PP not installed
+ If missingInstalledApps <> "" Then missingInstalledApps = missingInstalledApps & ", "
+ missingInstalledApps = missingInstalledApps & CAPPNAME_POWERPOINT
+ ElseIf Not CheckForSupportedApp(CAPPNAME_POWERPOINT, CSUPPORTED_VERSION) Then
+ If unsupportedApps <> "" Then unsupportedApps = unsupportedApps & ", "
+ unsupportedApps = unsupportedApps & CAPPNAME_POWERPOINT
+ ElseIf IsOfficeAppRunning(CAPPNAME_POWERPOINT) Then
+ If runningApps <> "" Then runningApps = runningApps & ", "
+ runningApps = runningApps & CAPPNAME_POWERPOINT
+ End If
+ End If
+
+ If missingInstalledApps <> "" Then
+ str = ReplaceTopic2Tokens(GetResString(ERR_NOT_INSTALLED), _
+ TOPIC_STR, missingInstalledApps, CR_STR, Chr(13))
+ WriteDebug str
+ MsgBox str, vbCritical
+ GoTo FinalExit
+ End If
+
+ If unsupportedApps <> "" Then
+ str = ReplaceTopic2Tokens(GetResString(ERR_SUPPORTED_VERSION), _
+ TOPIC_STR, unsupportedApps, CR_STR, Chr(13))
+ WriteDebug str
+ MsgBox str, vbCritical
+ GoTo FinalExit
+ End If
+
+ If runningApps <> "" Then
+ str = ReplaceTopic2Tokens(GetResString(ERR_APPLICATION_IN_USE), _
+ TOPIC_STR, runningApps, CR_STR, Chr(13))
+ WriteDebug str
+ MsgBox str, vbCritical
+ GoTo FinalExit
+ End If
+
+ 'Check for Excel automation server
+ If CheckForExcel Then
+ str = ReplaceTopicTokens(GetResString(ERR_EXCEL_OPEN), _
+ CR_STR, Chr(13))
+ WriteDebug str
+ MsgBox str, vbCritical
+ bSuccess = False
+ GoTo FinalExit
+ End If
+
+ bSuccess = True
+
+FinalExit:
+ CheckInstalledApps = bSuccess
+ Exit Function
+
+HandleErrors:
+ bSuccess = False
+ WriteDebug currentFunctionName & " : " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Function
+
+Function RunPPAnalysis(resultsTemplate As String, logFile As String, fsObject As FileSystemObject) As Boolean
+'DV: do we need this? get some error handling ideas here
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "RunPPAnalysis"
+ Const APP_PP = "PowerPoint"
+ Dim str As String
+ Dim bSuccess
+ bSuccess = False
+
+ If (chkPPDoc.value <> vbChecked) And (chkPPTemplate.value <> vbChecked) Then
+ RunPPAnalysis = True
+ Exit Function
+ End If
+
+ Dim sPPDriverDocPath As String
+
+ sPPDriverDocPath = fsObject.GetAbsolutePathName(CBASE_RESOURCE_DIR & "\" & CPP_DRIVER_FILE)
+ If Not fsObject.FileExists(sPPDriverDocPath) Then
+ str = ReplaceTopic2Tokens(GetResString(ERR_MISSING_PP_DRIVER), _
+ TOPIC_STR, sPPDriverDocPath, CR_STR, Chr(13))
+ WriteDebug str
+ MsgBox str, vbCritical
+ bSuccess = False
+ GoTo FinalExit
+ End If
+
+ Dim pp As PowerPoint.application
+ Dim po As Object
+ Dim aPres As PowerPoint.Presentation
+ Dim RegValue As Long
+ Set po = GetObject(sPPDriverDocPath)
+ Set pp = po.application
+
+ If val(pp.Version) < CSUPPORTED_VERSION Then
+ str = ReplaceTopic2Tokens(GetResString(ERR_SUPPORTED_VERSION), _
+ TOPIC_STR, pp.Version, CR_STR, Chr(13))
+ WriteDebug str
+ MsgBox str, vbCritical
+ bSuccess = False
+ GoTo FinalExit
+ End If
+
+ If Not CheckForAccesToPPVBProject(pp, aPres) Then
+ RegValue = -1
+ If Not GiveAccessToMacroProject(APP_PP, pp.Version, RegValue) Then
+ Dim Style, response
+ str = ReplaceTopic2Tokens(GetResString(ERR_NO_ACCESS_TO_VBPROJECT), _
+ TOPIC_STR, CAPPNAME_POWERPOINT, CR_STR, Chr(13))
+ WriteDebug str
+ Style = vbYesNo + vbQuestion + vbDefaultButton1
+
+ response = MsgBox(str, Style)
+ If response <> vbYes Then
+ bSuccess = False
+ GoTo FinalExit
+ End If
+ End If
+ End If
+
+ Set aPres = pp.Presentations(1)
+ Dim ppSlideHidden As PowerPoint.Slide
+ Set ppSlideHidden = aPres.Slides(2)
+
+ 'Setup Input Variables
+ 'SetupInputVariables resultsTemplate, logFile, fsObject, CAPPNAME_POWERPOINT
+
+ 'Run PowerPoint Analysis
+ pp.Run (fsObject.GetFileName(CBASE_RESOURCE_DIR & "\" & CPP_DRIVER_FILE) & "!AnalysisDriver.AnalyseDirectory")
+
+ bSuccess = True
+
+FinalExit:
+ 'Cannot seem to close it down from VB
+ 'Workaround is to close it in macro
+ '
+ 'If Not aPres Is Nothing Then
+ ' aPres.Saved = msoTrue
+ 'End If
+ 'If Not pp Is Nothing Then pp.Quit
+
+ 'Swallow error as we are closing down PP from macro
+ 'Does not seem to be possible to close it down from VB
+ On Error Resume Next
+ If RegValue <> -1 Then
+ SetDefaultRegValue APP_PP, pp.Version, RegValue
+ End If
+ If RegValue = 0 Then
+ DeleteRegValue APP_PP, pp.Version
+ End If
+
+ If Not pp Is Nothing Then
+ pp.Run (fsObject.GetFileName(CBASE_RESOURCE_DIR & "\" & CPP_DRIVER_FILE) & "!ApplicationSpecific.QuitPowerPoint")
+ End If
+
+
+ Set aPres = Nothing
+ Set pp = Nothing
+ Set po = Nothing
+
+ RunPPAnalysis = bSuccess
+ Exit Function
+
+HandleErrors:
+ bSuccess = False
+ Set pp = Nothing
+ Dim failedDoc As String
+
+ WriteDebug currentFunctionName & " : " & Err.Number & " " & Err.Description & " " & Err.Source
+
+ failedDoc = GetDebug(CAPPNAME_POWERPOINT, CANALYZING)
+ If failedDoc = "" Or failedDoc = CSTR_ANALYSIS_LOG_DONE Then
+ str = ReplaceTopic2Tokens(GetResString(ERR_AUTOMATION_FAILURE), _
+ TOPIC_STR, CAPPNAME_POWERPOINT, CR_STR, Chr(13))
+ Else
+ str = ReplaceTopic2Tokens(GetResString(ERR_PP_DRIVER_CRASH), _
+ TOPIC_STR, failedDoc, CR_STR, Chr(13))
+ End If
+
+ WriteDebug str
+ MsgBox str, vbCritical
+
+ Resume FinalExit
+End Function
+
+Sub SetupInputVariables(logFile As String, fso As FileSystemObject)
+ Dim bNewResultsFile As Boolean
+
+ bNewResultsFile = CheckCreateNewResultsFile(fso)
+
+ WriteToLog CNEW_RESULTS_FILE, IIf(bNewResultsFile, "True", "False"), mIniFilePath
+ WriteToLog CNEW_RESULTS_FILE, IIf(bNewResultsFile, "True", "False"), logFile
+End Sub
+
+
+
+Function RunExcelAnalysis(resultsTemplate As String, logFile As String, fsObject As FileSystemObject) As Boolean
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "RunExcelAnalysis"
+ Const APP_EXCEL = "Excel"
+ Dim str As String
+ Dim bSuccess
+ bSuccess = False
+
+ If (chkExcelDoc.value <> vbChecked) And (chkExcelTemplate.value <> vbChecked) Then
+ RunExcelAnalysis = True
+ Exit Function
+ End If
+
+ Dim xl As Excel.application
+ Dim aWb As Excel.Workbook
+ Dim sExcelDriverDocPath As String
+ Dim RegValue As Long
+
+ sExcelDriverDocPath = fsObject.GetAbsolutePathName(CBASE_RESOURCE_DIR & "\" & CEXCEL_DRIVER_FILE)
+ If Not fsObject.FileExists(sExcelDriverDocPath) Then
+ str = ReplaceTopic2Tokens(GetResString(ERR_MISSING_EXCEL_DRIVER), _
+ TOPIC_STR, sExcelDriverDocPath, CR_STR, Chr(13))
+ WriteDebug str
+ MsgBox str, vbCritical
+ bSuccess = False
+ GoTo FinalExit
+ End If
+
+ Set xl = GetExcelInstance
+ If val(xl.Version) < CSUPPORTED_VERSION Then
+ str = ReplaceTopic2Tokens(GetResString(ERR_SUPPORTED_VERSION), _
+ TOPIC_STR, xl.Version, CR_STR, Chr(13))
+ WriteDebug str
+ MsgBox str, vbCritical
+ bSuccess = False
+ GoTo FinalExit
+ End If
+
+ If Not CheckForAccesToExcelVBProject(xl) Then
+ RegValue = -1
+ If Not GiveAccessToMacroProject(APP_EXCEL, xl.Version, RegValue) Then
+ Dim Style, response
+ str = ReplaceTopic2Tokens(GetResString(ERR_NO_ACCESS_TO_VBPROJECT), _
+ TOPIC_STR, CAPPNAME_EXCEL, CR_STR, Chr(13))
+ WriteDebug str
+ Style = vbYesNo + vbQuestion + vbDefaultButton1
+
+ response = MsgBox(str, Style)
+ If response <> vbYes Then
+ bSuccess = False
+ GoTo FinalExit
+ End If
+ End If
+ End If
+
+ Set aWb = xl.Workbooks.Open(fileName:=sExcelDriverDocPath)
+ 'Setup Input Variables
+ 'SetupInputVariables resultsTemplate, logFile, fsObject, CAPPNAME_EXCEL
+
+ 'Run Excel Analysis
+ xl.Run ("AnalysisTool.AnalysisDriver.AnalyseDirectory")
+
+ bSuccess = True
+FinalExit:
+ If RegValue <> -1 Then
+ SetDefaultRegValue APP_EXCEL, xl.Version, RegValue
+ End If
+ If RegValue = 0 Then
+ DeleteRegValue APP_EXCEL, xl.Version
+ End If
+
+ If Not aWb Is Nothing Then
+ If xl.Workbooks.count = 1 Then
+ xl.Visible = False
+ End If
+ aWb.Close (False)
+ End If
+ Set aWb = Nothing
+
+ If Not xl Is Nothing Then
+ If xl.Workbooks.count = 0 Then
+ xl.Quit
+ End If
+ End If
+
+ Set xl = Nothing
+
+ RunExcelAnalysis = bSuccess
+ Exit Function
+
+HandleErrors:
+ bSuccess = False
+ Set aWb = Nothing
+ Set xl = Nothing
+ Dim failedDoc As String
+
+ WriteDebug currentFunctionName & " : " & Err.Number & " " & Err.Description & " " & Err.Source
+
+ failedDoc = GetDebug(CAPPNAME_EXCEL, CANALYZING)
+ If failedDoc = "" Or failedDoc = CSTR_ANALYSIS_LOG_DONE Then
+ str = ReplaceTopic2Tokens(GetResString(ERR_AUTOMATION_FAILURE), _
+ TOPIC_STR, CAPPNAME_EXCEL, CR_STR, Chr(13))
+ Else
+ str = ReplaceTopic2Tokens(GetResString(ERR_EXCEL_DRIVER_CRASH), _
+ TOPIC_STR, failedDoc, CR_STR, Chr(13))
+ End If
+
+ WriteDebug str
+ MsgBox str, vbCritical
+
+ On Error Resume Next
+ Resume FinalExit
+End Function
+
+Sub WriteWizardSettingsToLog(path As String)
+ '### DO NOT USE Boolean True/ False it is loaclised by the OS - use "True"/ "False"
+ WriteToLog CINPUT_DIR, getInputDir, path
+ WriteToLog CINCLUDE_SUBDIRS, IIf(chkIncludeSubdirs.value, "True", "False"), path
+ WriteToLog COUTPUT_DIR, getOutputDir, path
+ WriteToLog CRESULTS_FILE, txtResultsName.Text, path
+
+ WriteToLog CTYPE_WORDDOC, IIf(chkWordDoc.value, "True", "False"), path
+ WriteToLog CTYPE_WORDDOT, IIf(chkWordTemplate.value, "True", "False"), path
+ WriteToLog CTYPE_EXCELDOC, IIf(chkExcelDoc.value, "True", "False"), path
+ WriteToLog CTYPE_EXCELDOT, IIf(chkExcelTemplate.value, "True", "False"), path
+ WriteToLog CTYPE_PPDOC, IIf(chkPPDoc.value, "True", "False"), path
+ WriteToLog CTYPE_PPDOT, IIf(chkPPTemplate.value, "True", "False"), path
+
+ Dim resultsSetting As String
+ If rdbResultsPrompt.value Then
+ resultsSetting = CPROMPT_FILE
+ ElseIf rdbResultsAppend.value Then
+ resultsSetting = CAPPEND_FILE
+ Else
+ resultsSetting = COVERWRITE_FILE
+ End If
+ WriteToLog CRESULTS_EXIST, resultsSetting, path
+
+ WriteToLog CIGNORE_OLD_DOCS, IIf(chkIgnoreOld.value, "True", "False"), path
+ WriteToLog CISSUE_LIMIT, CStr(mIssueLimit), path
+
+ 'WriteToLog CVERSION, Version, path
+End Sub
+
+Sub WriteCommonParamsToLog(resultsTemplate As String, logFile As String, path As String, fso As Scripting.FileSystemObject)
+ WriteToLog CLOG_FILE, logFile, path
+ WriteToLog CRESULTS_TEMPLATE, resultsTemplate, path
+ WriteToLog CDEBUG_LEVEL, CLng(mDebugLevel), path
+ WriteToLog CDOPREPARE, IIf(mbDoPrepare, "True", "False"), path
+ WriteToLog CTITLE, frmWizard.Caption, path
+ WriteToLog CLAST_CHECKPOINT, ""
+ WriteToLog CNEXT_FILE, ""
+ WriteToLog C_ABORT_ANALYSIS, ""
+End Sub
+
+Function GetNumberOfDocsToAnalyze() As Long
+ Dim count As Long
+
+ count = 0
+
+ If CheckWordDocsToAnalyze Then
+ count = mWordDocCount + mWordTemplateCount
+ End If
+ If CheckExcelDocsToAnalyze Then
+ count = count + mExcelDocCount + mExcelTemplateCount
+ End If
+ If CheckPPDocsToAnalyze Then
+ count = count + mPPDocCount + mPPTemplateCount
+ End If
+
+ GetNumberOfDocsToAnalyze = count
+End Function
+
+Function CheckWordDocsToAnalyze() As Boolean
+
+ CheckWordDocsToAnalyze = mbDocCountCurrent And (chkWordDoc.value = vbChecked And mWordDocCount > 0) Or _
+ (chkWordTemplate.value = vbChecked And mWordTemplateCount > 0)
+End Function
+
+Function CheckExcelDocsToAnalyze() As Boolean
+ CheckExcelDocsToAnalyze = mbDocCountCurrent And (chkExcelDoc.value = vbChecked And mExcelDocCount > 0) Or _
+ (chkExcelTemplate.value = vbChecked And mExcelTemplateCount > 0)
+End Function
+
+Function CheckPPDocsToAnalyze() As Boolean
+ CheckPPDocsToAnalyze = mbDocCountCurrent And (chkPPDoc.value = vbChecked And mPPDocCount > 0) Or _
+ (chkPPTemplate.value = vbChecked And mPPTemplateCount > 0)
+End Function
+
+Function CheckNumberDocsToAnalyze() As Boolean
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "CheckNumberDocsToAnalyze"
+
+ Set mDocFiles = New CollectedFiles
+
+ Dim docSearchTypes As Collection
+ Set docSearchTypes = New Collection
+
+ mbDocCountCurrent = False
+
+ SetupDocSearchTypes docSearchTypes
+
+ If (cbIgnoreOld.ListIndex = 0) Then
+ mIssueLimit = 3
+ ElseIf (cbIgnoreOld.ListIndex = 1) Then
+ mIssueLimit = 6
+ Else
+ mIssueLimit = 12
+ End If
+
+ If Not mDocFiles.Search(rootDir:=getInputDir, FileSpecs:=docSearchTypes, _
+ IncludeSubdirs:=IIf(chkIncludeSubdirs.value, mbTrue, mbFalse), _
+ ignoreOld:=IIf(chkIgnoreOld.value, mbTrue, mbFalse), Months:=mIssueLimit) Then
+ CheckNumberDocsToAnalyze = False
+ GoTo FinalExit
+ End If
+
+ SetDocCountsFromFileSearch mDocFiles
+ WriteFileDateCountsToLog mDocFiles
+
+ 'WriteDocsToAnalyzeToLog mDocFiles 'UNCOMMENT Recovery - want to list out files to analyze
+
+ mbDocCountCurrent = True
+
+ lblNumDocs.Caption = ReplaceTopicTokens(GetResString(ANALYZE_DOCUMENTS_ID), TOPIC_STR, _
+ CStr(mWordDocCount))
+ lblNumTemplates.Caption = ReplaceTopicTokens(GetResString(ANALYZE_TEMPLATES_ID), TOPIC_STR, _
+ CStr(mWordTemplateCount))
+
+ lblNumXLS.Caption = ReplaceTopicTokens(GetResString(ANALYZE_DOCUMENTS_XLS_ID), TOPIC_STR, _
+ CStr(mExcelDocCount))
+ lblNumXLT.Caption = ReplaceTopicTokens(GetResString(ANALYZE_TEMPLATES_ID), TOPIC_STR, _
+ CStr(mExcelTemplateCount))
+
+ lblNumPPT.Caption = ReplaceTopicTokens(GetResString(ANALYZE_DOCUMENTS_PPT_ID), TOPIC_STR, _
+ CStr(mPPDocCount))
+ lblNumPOT.Caption = ReplaceTopicTokens(GetResString(ANALYZE_TEMPLATES_ID), TOPIC_STR, _
+ CStr(mPPTemplateCount))
+
+ lblTotalNumDocs.Caption = ReplaceTopicTokens(GetResString(ANALYZE_TOTAL_NUM_DOCS_ID), TOPIC_STR, _
+ CStr(mTotalDocCount))
+
+ If (mIgnoredDocCount > 0) Then
+ lblSkippedOld.Caption = ReplaceTopicTokens(GetResString(RID_STR_ENG_ANALYZE_IGNORED_DOCS_ID), _
+ TOPIC_STR, CStr(mIgnoredDocCount))
+ lblSkippedOld.Visible = True
+ Else
+ lblSkippedOld.Visible = False
+ End If
+
+ CheckNumberDocsToAnalyze = True
+
+FinalExit:
+ Set docSearchTypes = Nothing
+ Exit Function
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Function
+
+Sub SetDocCountsFromFileSearch(myDocFiles As CollectedFiles)
+ 'No Error handling required
+ mWordDocCount = myDocFiles.DocCount
+ mWordTemplateCount = myDocFiles.DotCount
+ mExcelDocCount = myDocFiles.XlsCount
+ mExcelTemplateCount = myDocFiles.XltCount
+ mPPDocCount = myDocFiles.PptCount
+ mPPTemplateCount = myDocFiles.PotCount
+ mTotalDocCount = mWordDocCount + mWordTemplateCount + mExcelDocCount + mExcelTemplateCount + _
+ mPPDocCount + mPPTemplateCount
+ mIgnoredDocCount = myDocFiles.IgnoredDocCount
+End Sub
+
+Sub SetupDocSearchTypes(docSearchTypes As Collection)
+ 'No Error handling required
+ If chkWordDoc.value Then docSearchTypes.add ("*.doc")
+ If chkWordTemplate.value Then docSearchTypes.add ("*.dot")
+ If chkExcelDoc.value Then docSearchTypes.add ("*.xls")
+ If chkExcelTemplate.value Then docSearchTypes.add ("*.xlt")
+ If chkPPDoc.value Then docSearchTypes.add ("*.ppt")
+ If chkPPTemplate.value Then docSearchTypes.add ("*.pot")
+End Sub
+
+Sub WriteDocsToAnalyzeToLog(myDocFiles As CollectedFiles)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "WriteDocsToAnalyzeToLog"
+
+ Dim vFileName As Variant
+ Dim Index As Long
+ Dim limit As Long
+ limit = myDocFiles.WordFiles.count
+ For Index = 1 To limit
+ vFileName = myDocFiles.WordFiles(Index)
+ WriteToLog "Doc" & Index, CStr(vFileName), section:=(WIZARD_NAME & "ListFor" & CAPPNAME_WORD)
+ Next
+ limit = myDocFiles.ExcelFiles.count
+ For Index = 1 To limit
+ vFileName = myDocFiles.ExcelFiles(Index)
+ WriteToLog "Doc" & Index, CStr(vFileName), section:=(WIZARD_NAME & "ListFor" & CAPPNAME_EXCEL)
+ Next
+ limit = myDocFiles.PowerPointFiles.count
+ For Index = 1 To limit
+ vFileName = myDocFiles.PowerPointFiles(Index)
+ WriteToLog "Doc" & Index, CStr(vFileName), section:=(WIZARD_NAME & "ListFor" & CAPPNAME_POWERPOINT)
+ Next
+
+FinalExit:
+ Exit Sub
+HandleErrors:
+ WriteDebug currentFunctionName & " : " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+Sub WriteFileDateCountsToLog(myDocFiles As CollectedFiles)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "WriteFileDateCountsToLog"
+
+ WriteToLog C_DOCS_LESS_3_MONTH, CStr(myDocFiles.DocsLessThan3Months), mIniFilePath
+ WriteToLog C_DOCS_LESS_6_MONTH, CStr(myDocFiles.DocsLessThan6Months), mIniFilePath
+ WriteToLog C_DOCS_LESS_12_MONTH, CStr(myDocFiles.DocsLessThan12Months), mIniFilePath
+ WriteToLog C_DOCS_MORE_12_MONTH, CStr(myDocFiles.DocsMoreThan12Months), mIniFilePath
+
+FinalExit:
+ Exit Sub
+HandleErrors:
+ WriteDebug currentFunctionName & " : " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+
+Function RunWordAnalysis(resultsTemplate As String, logFile As String, fsObject As FileSystemObject) As Boolean
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "RunWordAnalysis"
+ Const APP_WORD = "Word"
+ Dim str As String
+ Dim bSuccess
+ bSuccess = False
+
+ Dim wrd As Word.application
+ Dim aDoc As Word.Document
+ Dim sWordDriverDocPath As String
+ Dim RegValue As Long
+
+ If (chkWordDoc.value <> vbChecked) And (chkWordTemplate.value <> vbChecked) Then
+ 'No Word doc filters selected
+ RunWordAnalysis = True
+ Exit Function
+ End If
+
+ sWordDriverDocPath = fsObject.GetAbsolutePathName(CBASE_RESOURCE_DIR & "\" & CWORD_DRIVER_FILE)
+ If Not fsObject.FileExists(sWordDriverDocPath) Then
+ str = ReplaceTopic2Tokens(GetResString(ERR_MISSING_WORD_DRIVER), _
+ TOPIC_STR, sWordDriverDocPath, CR_STR, Chr(13))
+ WriteDebug str
+ MsgBox str, vbCritical
+ bSuccess = False
+ GoTo FinalExit
+ End If
+
+ Set wrd = New Word.application
+ If val(wrd.Version) < CSUPPORTED_VERSION Then
+ str = ReplaceTopic2Tokens(GetResString(ERR_SUPPORTED_VERSION), _
+ TOPIC_STR, wrd.Version, CR_STR, Chr(13))
+ WriteDebug str
+ MsgBox str, vbCritical
+ bSuccess = False
+ GoTo FinalExit
+ End If
+
+ If Not CheckForAccesToWordVBProject(wrd) Then
+ RegValue = -1
+ If Not GiveAccessToMacroProject(APP_WORD, wrd.Version, RegValue) Then
+ Dim Style, response
+ str = ReplaceTopic2Tokens(GetResString(ERR_NO_ACCESS_TO_VBPROJECT), _
+ TOPIC_STR, CAPPNAME_WORD, CR_STR, Chr(13))
+ WriteDebug str
+ Style = vbYesNo + vbQuestion + vbDefaultButton1
+
+ response = MsgBox(str, Style)
+ If response <> vbYes Then
+ bSuccess = False
+ GoTo FinalExit
+ End If
+ End If
+ End If
+
+ Set aDoc = wrd.Documents.Open(fileName:=sWordDriverDocPath)
+ 'Clear out any doc vars
+ Dim MyObj As Variable
+ For Each MyObj In aDoc.Variables
+ MyObj.Delete
+ Next
+
+ 'Setup Input Variables
+ 'SetupInputVariables resultsTemplate, logFile, fsObject, CAPPNAME_WORD
+
+ wrd.Run ("AnalysisTool.AnalysisDriver.AnalyseDirectory")
+
+ wrd.Visible = False
+ bSuccess = True
+
+FinalExit:
+ If RegValue <> -1 Then
+ SetDefaultRegValue APP_WORD, wrd.Version, RegValue
+ End If
+ If RegValue = 0 Then
+ DeleteRegValue APP_WORD, wrd.Version
+ End If
+ If Not aDoc Is Nothing Then aDoc.Close (False)
+ Set aDoc = Nothing
+
+ If Not wrd Is Nothing Then wrd.Quit (False)
+ Set wrd = Nothing
+
+ RunWordAnalysis = bSuccess
+ Exit Function
+
+HandleErrors:
+ On Error Resume Next
+
+ bSuccess = False
+ Set aDoc = Nothing
+ Set wrd = Nothing
+
+ Dim failedDoc As String
+
+ WriteDebug currentFunctionName & " : " & Err.Number & " " & Err.Description & " " & Err.Source
+
+ failedDoc = GetDebug(CAPPNAME_WORD, CANALYZING)
+ If failedDoc = "" Or failedDoc = CSTR_ANALYSIS_LOG_DONE Then
+ str = ReplaceTopic2Tokens(GetResString(ERR_AUTOMATION_FAILURE), _
+ TOPIC_STR, CAPPNAME_WORD, CR_STR, Chr(13))
+ Else
+ str = ReplaceTopic2Tokens(GetResString(ERR_WORD_DRIVER_CRASH), _
+ TOPIC_STR, failedDoc, CR_STR, Chr(13))
+ End If
+
+ WriteDebug str
+ MsgBox str, vbCritical
+
+ Resume FinalExit
+End Function
+
+Function stripLastBackslash(inputStr As String) As String
+ Const MIN_DIR_SIZE = 3
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "stripLastBackslash"
+
+ If Len(inputStr) > MIN_DIR_SIZE Then
+ Dim lastStrChar As String
+ lastStrChar = Right(inputStr, 1)
+ If lastStrChar = "\" Then
+ inputStr = Left(inputStr, Len(inputStr) - 1)
+ End If
+ End If
+ stripLastBackslash = inputStr
+
+ Exit Function
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : " & Err.Number & " " & Err.Description & " " & Err.Source
+ stripLastBackslash = inputStr
+End Function
+
+Function getInputDir() As String
+ getInputDir = stripLastBackslash(txtInputDir.Text)
+End Function
+
+Function getOutputDir() As String
+ Dim tmpStr As String
+
+ tmpStr = stripLastBackslash(txtOutputDir.Text)
+
+ 'Bug when specifying C:\
+ If tmpStr <> "" Then
+ If Right(tmpStr, 1) = "\" Then
+ tmpStr = Left(tmpStr, Len(tmpStr) - 1)
+ End If
+ End If
+ getOutputDir = tmpStr
+End Function
+
+Function CheckCreateNewResultsFile(fsObject As FileSystemObject) As Boolean
+ If Not fsObject.FileExists(getOutputDir & "\" & txtResultsName.Text) Then
+ 'No Results File - Create it
+ CheckCreateNewResultsFile = True
+ ElseIf rdbResultsAppend.value Then
+ 'Results File exists and user wants to append to it
+ CheckCreateNewResultsFile = False
+ Else
+ 'Results File exists and user has elected not to append
+ CheckCreateNewResultsFile = True
+ End If
+End Function
+
+Sub DeleteFile(file As String)
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "DeleteFile"
+ Dim fso As Scripting.FileSystemObject
+ Set fso = New Scripting.FileSystemObject
+ Dim filePath As String
+
+ filePath = fso.GetAbsolutePathName(file)
+ If fso.FileExists(filePath) Then
+ fso.DeleteFile filePath, True
+ End If
+
+FinalExit:
+ Set fso = Nothing
+ Exit Sub
+
+HandleErrors:
+ WriteDebug currentFunctionName & " : " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Sub
+
+Public Property Get Version() As String
+ Version = app.Major & "." & app.Minor & "." & app.Revision
+End Property
+
+Function GetExcelInstance() As Excel.application
+ Dim xl As Excel.application
+ On Error Resume Next
+ 'Try and get an existing instance
+ Set xl = GetObject(, "Excel.Application")
+ If Err.Number = 429 Then
+ Set xl = CreateObject("Excel.Application")
+ ElseIf Err.Number <> 0 Then
+ Set xl = Nothing
+ MsgBox "Error: " & Err.Description
+ Exit Function
+ End If
+ Set GetExcelInstance = xl
+ Set xl = Nothing
+End Function
+
+Function CheckForAnalysisResultsWorkbook(analysisResultsName As String) As Boolean
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "CheckForAnalysisResultsWorkbook"
+
+ CheckForAnalysisResultsWorkbook = False
+
+ Dim xl As Excel.application
+ Set xl = GetExcelInstance
+
+ Dim aWb As Excel.Workbook
+ For Each aWb In xl.Workbooks
+
+ If aWb.Name = analysisResultsName Then
+ CheckForAnalysisResultsWorkbook = True
+ Exit For
+ End If
+ Next aWb
+
+FinalExit:
+ If Not xl Is Nothing Then
+ If xl.Workbooks.count = 0 Then
+ xl.Quit
+ End If
+ End If
+
+ Set xl = Nothing
+
+ Exit Function
+
+HandleErrors:
+ Set xl = Nothing
+
+ WriteDebug currentFunctionName & " : " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Function
+
+Function CheckForExcel() As Boolean
+ On Error GoTo HandleErrors
+ Dim currentFunctionName As String
+ currentFunctionName = "CheckForExcel"
+
+ CheckForExcel = False
+
+ Dim xl As Excel.application
+ Set xl = GetExcelInstance
+
+
+ If xl.Workbooks.count > 0 Then
+ CheckForExcel = True
+ End If
+
+FinalExit:
+ If Not xl Is Nothing Then
+ If xl.Workbooks.count = 0 Then
+ xl.Quit
+ End If
+ End If
+
+ Set xl = Nothing
+
+ Exit Function
+
+HandleErrors:
+ Set xl = Nothing
+
+ WriteDebug currentFunctionName & " : " & Err.Number & " " & Err.Description & " " & Err.Source
+ Resume FinalExit
+End Function
+
+Public Function GetIniSetting(key As String) As String
+
+ If mIniFilePath = "" Or key = "" Then Exit Function
+
+ GetIniSetting = ProfileGetItem(WIZARD_NAME, key, "", mIniFilePath)
+End Function
+
+Sub WriteIniSetting(key As String, value As String)
+
+ If mIniFilePath = "" Or key = "" Then Exit Sub
+
+ Call WritePrivateProfileString(WIZARD_NAME, key, value, mIniFilePath)
+End Sub
+
+Private Sub lblSetupComplete_Click(Index As Integer)
+
+End Sub
+
+Private Function CheckNeededFiles(missingFile As String) As Boolean
+
+ Dim fso As New FileSystemObject
+ Dim filePath As String
+
+ CheckNeededFiles = False
+ filePath = fso.GetAbsolutePathName(CBASE_RESOURCE_DIR & "\" & CWORD_DRIVER_FILE)
+ If Not fso.FileExists(filePath) Then
+ missingFile = filePath
+ Exit Function
+ End If
+
+ filePath = fso.GetAbsolutePathName(CBASE_RESOURCE_DIR & "\" & CEXCEL_DRIVER_FILE)
+ If Not fso.FileExists(filePath) Then
+ missingFile = filePath
+ Exit Function
+ End If
+
+ filePath = fso.GetAbsolutePathName(CBASE_RESOURCE_DIR & "\" & CPP_DRIVER_FILE)
+ If Not fso.FileExists(filePath) Then
+ missingFile = filePath
+ Exit Function
+ End If
+
+ filePath = fso.GetAbsolutePathName(CBASE_RESOURCE_DIR & "\" & CLAUNCH_DRIVERS_EXE)
+ If Not fso.FileExists(filePath) Then
+ missingFile = filePath
+ Exit Function
+ End If
+
+ filePath = fso.GetAbsolutePathName(CBASE_RESOURCE_DIR & "\" & CMSO_KILL_EXE)
+ If Not fso.FileExists(filePath) Then
+ missingFile = filePath
+ Exit Function
+ End If
+
+ filePath = fso.GetAbsolutePathName(CBASE_RESOURCE_DIR & "\" & CRESULTS_TEMPLATE_FILE)
+ If Not fso.FileExists(filePath) Then
+ missingFile = filePath
+ Exit Function
+ End If
+
+ filePath = fso.GetAbsolutePathName(CBASE_RESOURCE_DIR & "\" & CRESOURCE_DLL)
+ If Not fso.FileExists(filePath) Then
+ missingFile = filePath
+ Exit Function
+ End If
+
+ CheckNeededFiles = True
+End Function
diff --git a/mysqlc/source/mysqlc_connection.cxx b/mysqlc/source/mysqlc_connection.cxx
index 1d375d36ca94..782e99249e5b 100644
--- a/mysqlc/source/mysqlc_connection.cxx
+++ b/mysqlc/source/mysqlc_connection.cxx
@@ -422,7 +422,7 @@ sal_Bool SAL_CALL OConnection::isClosed()
OSL_TRACE("OConnection::isClosed");
MutexGuard aGuard(m_aMutex);
- // just simple -> we are close when we are disposed taht means someone called dispose(); (XComponent)
+ // just simple -> we are close when we are disposed that means someone called dispose(); (XComponent)
return (OConnection_BASE::rBHelper.bDisposed);
}
/* }}} */
diff --git a/mysqlc/source/mysqlc_statement.cxx b/mysqlc/source/mysqlc_statement.cxx
index a7e87212f58a..78f2a11c48ca 100644
--- a/mysqlc/source/mysqlc_statement.cxx
+++ b/mysqlc/source/mysqlc_statement.cxx
@@ -419,7 +419,7 @@ void OCommonStatement::setFastPropertyValue_NoBroadcast(sal_Int32 nHandle, const
throw (Exception)
{
OSL_TRACE("OCommonStatement::setFastPropertyValue_NoBroadcast");
- // set the value to what ever is nescessary
+ // set the value to what ever is necessary
switch (nHandle) {
case PROPERTY_ID_QUERYTIMEOUT:
case PROPERTY_ID_MAXFIELDSIZE:
diff --git a/mysqlc/source/mysqlc_subcomponent.hxx b/mysqlc/source/mysqlc_subcomponent.hxx
index 349d36152d9c..2bd19c4bd350 100644
--- a/mysqlc/source/mysqlc_subcomponent.hxx
+++ b/mysqlc/source/mysqlc_subcomponent.hxx
@@ -129,7 +129,7 @@ namespace connectivity
}
/** call this in the getInfoHelper method of your derived class. The method returns the array helper of the
- class, which is created if neccessary.
+ class, which is created if necessary.
*/
::cppu::IPropertyArrayHelper* getArrayHelper();
diff --git a/o3tl/inc/o3tl/heap_ptr.hxx b/o3tl/inc/o3tl/heap_ptr.hxx
index 5f0c73faa74c..f8a7b262550c 100644
--- a/o3tl/inc/o3tl/heap_ptr.hxx
+++ b/o3tl/inc/o3tl/heap_ptr.hxx
@@ -38,7 +38,7 @@ namespace o3tl
-------------
heap_ptr<> can be used for class members on the heap.
- One cannot forget to delete them in the destructor.
- - Constness will be transfered from the owning instance.
+ - Constness will be transferred from the owning instance.
heap_ptr<> can also be used as smart pointer in function bodies to
ensure exception safety.
diff --git a/odk/cfgWin.js b/odk/cfgWin.js
index dd36d8f99f72..894284f7d38d 100644
--- a/odk/cfgWin.js
+++ b/odk/cfgWin.js
@@ -918,7 +918,7 @@ function writeBatFile(fdir, file)
newFile.Write(
"@echo off\n" +
- "REM This script sets all enviroment variables, which\n" +
+ "REM This script sets all environment variables, which\n" +
"REM are necessary for building the examples of the Office Development Kit.\n" +
"REM The Script was developed for the operating systems Windows.\n" +
"REM The SDK name\n" +
diff --git a/odk/examples/DevelopersGuide/Accessibility/EventHandler.java b/odk/examples/DevelopersGuide/Accessibility/EventHandler.java
index a0d768507acf..f5a259900f8f 100644
--- a/odk/examples/DevelopersGuide/Accessibility/EventHandler.java
+++ b/odk/examples/DevelopersGuide/Accessibility/EventHandler.java
@@ -408,7 +408,7 @@ public class EventHandler
- /** The proxy that runs in a seperate thread and allows to call back to
+ /** The proxy that runs in a separate thread and allows to call back to
the Office without running into dead-locks.
*/
private EventListenerProxy maListenerProxy;
diff --git a/odk/examples/DevelopersGuide/Accessibility/EventListenerProxy.java b/odk/examples/DevelopersGuide/Accessibility/EventListenerProxy.java
index 899b5b097f79..b6d2ff692247 100644
--- a/odk/examples/DevelopersGuide/Accessibility/EventListenerProxy.java
+++ b/odk/examples/DevelopersGuide/Accessibility/EventListenerProxy.java
@@ -36,7 +36,7 @@ import java.util.LinkedList;
objects.
2. Top window events inform the listener about new or removed windows.
- This class exists because events had to be handled in a seperate thread
+ This class exists because events had to be handled in a separate thread
to avoid dead locks: The thread that receives an event must no call back
to the Office directly.
@@ -206,7 +206,7 @@ class EventListenerProxy
/** The queue of event objects, LinkedList<Runnable>.
The queue object will also serve as lock for the consumer/producer type
- syncronization.
+ synchronization.
*/
private LinkedList maEventQueue;
diff --git a/odk/examples/DevelopersGuide/Accessibility/GraphicalDisplay.java b/odk/examples/DevelopersGuide/Accessibility/GraphicalDisplay.java
index 0ea1e5dc3095..a1cf6ac85153 100644
--- a/odk/examples/DevelopersGuide/Accessibility/GraphicalDisplay.java
+++ b/odk/examples/DevelopersGuide/Accessibility/GraphicalDisplay.java
@@ -69,7 +69,7 @@ public class GraphicalDisplay
(int)(mnVOffset+0.5),
(int)(mnScale*aScreenSize.getWidth()),
(int)(mnScale*aScreenSize.getHeight()));
- // Draw a frame arround the screen rectangle to increase its visibility.
+ // Draw a frame around the screen rectangle to increase its visibility.
g.setColor (Color.BLACK);
g.drawRect (
(int)(mnHOffset+0.5),
diff --git a/odk/examples/DevelopersGuide/Components/Addons/JobsAddon/AsyncJob.java b/odk/examples/DevelopersGuide/Components/Addons/JobsAddon/AsyncJob.java
index e6098fd5da4d..814d908dd9f3 100644
--- a/odk/examples/DevelopersGuide/Components/Addons/JobsAddon/AsyncJob.java
+++ b/odk/examples/DevelopersGuide/Components/Addons/JobsAddon/AsyncJob.java
@@ -92,7 +92,7 @@ public class AsyncJob extends WeakBase implements XServiceInfo, XAsyncJob
com.sun.star.task.XJobListener xListener)
throws com.sun.star.lang.IllegalArgumentException
{
- // For asynchronous jobs a valid listener reference is guranteed normaly ...
+ // For asynchronous jobs a valid listener reference is guaranteed normaly ...
if (xListener == null)
throw new com.sun.star.lang.IllegalArgumentException("invalid listener");
@@ -118,7 +118,7 @@ public class AsyncJob extends WeakBase implements XServiceInfo, XAsyncJob
lDynamicData = (com.sun.star.beans.NamedValue[])com.sun.star.uno.AnyConverter.toArray(lArgs[i].Value);
}
- // Analyze the environment info. This sub list is the only guarenteed one!
+ // Analyze the environment info. This sub list is the only guaranteed one!
if (lEnvironment == null)
throw new com.sun.star.lang.IllegalArgumentException("no environment");
@@ -192,7 +192,7 @@ public class AsyncJob extends WeakBase implements XServiceInfo, XAsyncJob
aSaveRequest.Name = "SaveArguments";
aSaveRequest.Value = lJobConfig;
- // Deactivation is usefull inside EXECUTOR environment only
+ // Deactivation is useful inside EXECUTOR environment only
if (sEnvType.equals("EXECUTOR"))
{
++c;
@@ -201,7 +201,7 @@ public class AsyncJob extends WeakBase implements XServiceInfo, XAsyncJob
aDeactivation.Value = java.lang.Boolean.TRUE;
}
- // Sending of result events is usefull inside DISPATCH environment only
+ // Sending of result events is useful inside DISPATCH environment only
if (sEnvType.equals("DISPATCH"))
{
++c;
@@ -286,8 +286,8 @@ public class AsyncJob extends WeakBase implements XServiceInfo, XAsyncJob
}
catch(java.lang.Throwable exIgnore)
{
- // ignore any problem, which can occure here.
- // It's not realy a bug for this example job, if
+ // ignore any problem, which can occur here.
+ // It's not really a bug for this example job, if
// it's message could not be printed out!
}
}
@@ -297,7 +297,7 @@ public class AsyncJob extends WeakBase implements XServiceInfo, XAsyncJob
private void showInfoNonModal( java.lang.String sTitle ,
java.lang.String sMessage )
{
- // Couldnt be implemented realy using the toolkit ...
+ // Couldnt be implemented really using the toolkit ...
// Because we need a parent anytime.
// And showing e.g. a java dialog can make some trouble
// inside office ... but we have no chance here.
diff --git a/odk/examples/DevelopersGuide/Components/Thumbs/org/openoffice/comp/test/Thumbs.java b/odk/examples/DevelopersGuide/Components/Thumbs/org/openoffice/comp/test/Thumbs.java
index d6d2442d9c6c..a8fd43e6121c 100644
--- a/odk/examples/DevelopersGuide/Components/Thumbs/org/openoffice/comp/test/Thumbs.java
+++ b/odk/examples/DevelopersGuide/Components/Thumbs/org/openoffice/comp/test/Thumbs.java
@@ -47,7 +47,7 @@ public class Thumbs {
org.openoffice.test.XImageShrinkFilter xImageShrinkFilter =
org.openoffice.test.ImageShrink.create(xRemoteContext);
- System.out.println("ImageShrink component succesfully instantiated");
+ System.out.println("ImageShrink component successfully instantiated");
java.io.File f = new java.io.File(".");
System.out.println("set SourceDrectory ...");
diff --git a/odk/examples/DevelopersGuide/Database/DriverSkeleton/How_to_write_my_own_driver.txt b/odk/examples/DevelopersGuide/Database/DriverSkeleton/How_to_write_my_own_driver.txt
index 0f7782ee99d9..7424c4bc6e86 100644
--- a/odk/examples/DevelopersGuide/Database/DriverSkeleton/How_to_write_my_own_driver.txt
+++ b/odk/examples/DevelopersGuide/Database/DriverSkeleton/How_to_write_my_own_driver.txt
@@ -22,7 +22,7 @@
How to write my own sdbc driver
Pre implementation steps
-- search all occurances of skeleton and replace them to a name which you prefer
+- search all occurrences of skeleton and replace them to a name which you prefer
1. Implement a class called driver or modify the existing skeleton -> have a look at SDriver.?xx
2. Implement a class called connection -> have a look at SConnection.?xx
diff --git a/odk/examples/DevelopersGuide/Database/DriverSkeleton/OSubComponent.hxx b/odk/examples/DevelopersGuide/Database/DriverSkeleton/OSubComponent.hxx
index 109201f2fe09..7725a96ab6c5 100644
--- a/odk/examples/DevelopersGuide/Database/DriverSkeleton/OSubComponent.hxx
+++ b/odk/examples/DevelopersGuide/Database/DriverSkeleton/OSubComponent.hxx
@@ -119,7 +119,7 @@ namespace connectivity
}
/** call this in the getInfoHelper method of your derived class. The method returns the array helper of the
- class, which is created if neccessary.
+ class, which is created if necessary.
*/
::cppu::IPropertyArrayHelper* getArrayHelper();
diff --git a/odk/examples/DevelopersGuide/Database/DriverSkeleton/SConnection.cxx b/odk/examples/DevelopersGuide/Database/DriverSkeleton/SConnection.cxx
index 9ff0c5dfe7be..72d8b7fbe5a4 100644
--- a/odk/examples/DevelopersGuide/Database/DriverSkeleton/SConnection.cxx
+++ b/odk/examples/DevelopersGuide/Database/DriverSkeleton/SConnection.cxx
@@ -207,7 +207,7 @@ sal_Bool SAL_CALL OConnection::isClosed( ) throw(SQLException, RuntimeException
{
::osl::MutexGuard aGuard( m_aMutex );
- // just simple -> we are close when we are disposed taht means someone called dispose(); (XComponent)
+ // just simple -> we are close when we are disposed that means someone called dispose(); (XComponent)
return OConnection_BASE::rBHelper.bDisposed;
}
// --------------------------------------------------------------------------------
diff --git a/odk/examples/DevelopersGuide/Database/DriverSkeleton/SResultSet.cxx b/odk/examples/DevelopersGuide/Database/DriverSkeleton/SResultSet.cxx
index a8594f010a01..f030eb3facc2 100644
--- a/odk/examples/DevelopersGuide/Database/DriverSkeleton/SResultSet.cxx
+++ b/odk/examples/DevelopersGuide/Database/DriverSkeleton/SResultSet.cxx
@@ -388,7 +388,7 @@ void SAL_CALL OResultSet::beforeFirst( ) throw(SQLException, RuntimeException)
checkDisposed(OResultSet_BASE::rBHelper.bDisposed);
// move before the first row so that isBeforeFirst returns false
- // the smae for other movement methods
+ // the same for other movement methods
}
// -------------------------------------------------------------------------
void SAL_CALL OResultSet::afterLast( ) throw(SQLException, RuntimeException)
diff --git a/odk/examples/DevelopersGuide/Database/DriverSkeleton/SStatement.cxx b/odk/examples/DevelopersGuide/Database/DriverSkeleton/SStatement.cxx
index 86e76640d7a4..47516e9eef8e 100644
--- a/odk/examples/DevelopersGuide/Database/DriverSkeleton/SStatement.cxx
+++ b/odk/examples/DevelopersGuide/Database/DriverSkeleton/SStatement.cxx
@@ -290,7 +290,7 @@ sal_Bool OStatement_Base::convertFastPropertyValue(
// -------------------------------------------------------------------------
void OStatement_Base::setFastPropertyValue_NoBroadcast(sal_Int32 nHandle,const Any& rValue) throw (Exception)
{
- // set the value to what ever is nescessary
+ // set the value to what ever is necessary
switch(nHandle)
{
case PROPERTY_ID_QUERYTIMEOUT:
diff --git a/odk/examples/DevelopersGuide/Forms/DataAwareness.java b/odk/examples/DevelopersGuide/Forms/DataAwareness.java
index 6bda081246e4..cf3d526e02b1 100644
--- a/odk/examples/DevelopersGuide/Forms/DataAwareness.java
+++ b/odk/examples/DevelopersGuide/Forms/DataAwareness.java
@@ -208,7 +208,7 @@ public class DataAwareness extends DocumentBasedExample implements XPropertyChan
/* ------------------------------------------------------------------ */
public void resetted( EventObject aEvent ) throws com.sun.star.uno.RuntimeException
{
- // check if this reset occured becase we're on a new record
+ // check if this reset occurred becase we're on a new record
XPropertySet xFormProps = UNO.queryPropertySet( aEvent.Source );
try
{
@@ -445,7 +445,7 @@ public class DataAwareness extends DocumentBasedExample implements XPropertyChan
}
/* ------------------------------------------------------------------ */
- /** creates the table witht the given name, using the given statement
+ /** creates the table with the given name, using the given statement
*/
protected boolean implCreateTable( XConnection xConn, String sCreateStatement, String sTableName ) throws java.lang.Exception
{
@@ -844,7 +844,7 @@ public class DataAwareness extends DocumentBasedExample implements XPropertyChan
m_aSalesLocker = new ControlLock( xSalesFormProps, "SALENR" );
m_aSalesLocker.enableLock( m_bProtectKeyFields );
- // initally, we want to generate keys when moving to a new record
+ // initially, we want to generate keys when moving to a new record
xKeyGen.setPropertyValue( "DefaultState", new Short( (short)1 ) );
// --------------------------------------------------------------
diff --git a/odk/examples/DevelopersGuide/Forms/DocumentBasedExample.java b/odk/examples/DevelopersGuide/Forms/DocumentBasedExample.java
index 8f8243d49134..8254d64a1eb0 100644
--- a/odk/examples/DevelopersGuide/Forms/DocumentBasedExample.java
+++ b/odk/examples/DevelopersGuide/Forms/DocumentBasedExample.java
@@ -28,7 +28,7 @@ import com.sun.star.util.XCloseable;
public abstract class DocumentBasedExample implements com.sun.star.lang.XEventListener
{
- /// the intial remote context from the office
+ /// the initial remote context from the office
protected XComponentContext m_xCtx;
/// our current test document
protected DocumentHelper m_document;
diff --git a/odk/examples/DevelopersGuide/Forms/KeyGenerator.java b/odk/examples/DevelopersGuide/Forms/KeyGenerator.java
index 8c81d1f17678..7a995a78c4bd 100644
--- a/odk/examples/DevelopersGuide/Forms/KeyGenerator.java
+++ b/odk/examples/DevelopersGuide/Forms/KeyGenerator.java
@@ -238,7 +238,7 @@ class KeyGeneratorForReset extends UniqueColumnValue implements XResetListener
/* ------------------------------------------------------------------ */
public void resetted( com.sun.star.lang.EventObject aEvent ) throws com.sun.star.uno.RuntimeException
{
- // check if this reset occured becase we're on a new record
+ // check if this reset occurred becase we're on a new record
XPropertySet xFormProps = UNO.queryPropertySet( aEvent.Source );
try
{
diff --git a/odk/examples/DevelopersGuide/Forms/Makefile b/odk/examples/DevelopersGuide/Forms/Makefile
index 1110cb2126a3..22cef50d7868 100644
--- a/odk/examples/DevelopersGuide/Forms/Makefile
+++ b/odk/examples/DevelopersGuide/Forms/Makefile
@@ -162,7 +162,7 @@ FormsExample : $(APP1_JAR) $(APP2_JAR) $(APP3_JAR) $(APP4_JAR)
@echo $(MAKE) $(APP3_NAME).run
@echo $(MAKE) $(APP4_NAME).run
@echo -
- @echo Note: The data awareness example needs a running data source whith name
+ @echo Note: The data awareness example needs a running data source with name
@echo $(SQM) $(SQM)"$(QM)OO_SDK_Demo_DB$(QM)". Make sure that you have created such a data source,
@echo -
@echo The document "$(QM)ProgrammaticScriptAssignment.odt$(QM)" demonstrates
diff --git a/odk/examples/DevelopersGuide/Forms/URLHelper.java b/odk/examples/DevelopersGuide/Forms/URLHelper.java
index c0ab94d33243..a391f949e15a 100644
--- a/odk/examples/DevelopersGuide/Forms/URLHelper.java
+++ b/odk/examples/DevelopersGuide/Forms/URLHelper.java
@@ -28,7 +28,7 @@ public class URLHelper
{
/**
* Because the office need URLs for loading/saving documents
- * we must convert used system pathes.
+ * we must convert used system paths.
* And java use another notation for file URLs ... correct it.
*
* @param aSystemPath
diff --git a/odk/examples/DevelopersGuide/OfficeBean/OOoBeanViewer.java b/odk/examples/DevelopersGuide/OfficeBean/OOoBeanViewer.java
index 217d3c66b3c7..6412f21996e8 100644
--- a/odk/examples/DevelopersGuide/OfficeBean/OOoBeanViewer.java
+++ b/odk/examples/DevelopersGuide/OfficeBean/OOoBeanViewer.java
@@ -31,8 +31,8 @@ import java.io.*;
*
* This applet is a sample implementation of the
* OpenOffice.org bean.
- * When initally loaded the applet has two buttons
- * one for opening an existant file and one to open
+ * When initially loaded the applet has two buttons
+ * one for opening an existent file and one to open
* a blank document of a given type supported by
* OpenOffice.org eg. Writer, Calc, Impress, .....
*
@@ -84,7 +84,7 @@ public class OOoBeanViewer extends java.applet.Applet
documentTypePopUp = new javax.swing.JPopupMenu();
storeDocumentButton = new javax.swing.JButton("store to buffer");
loadDocumentButton = new javax.swing.JButton("load from buffer");
- syswinButton = new javax.swing.JButton("release/aquire");
+ syswinButton = new javax.swing.JButton("release/acquire");
menuBarButton = new javax.swing.JCheckBox("MenuBar");
menuBarButton.setSelected( aBean.isMenuBarVisible() );
diff --git a/odk/examples/DevelopersGuide/OfficeDev/ContextMenuInterceptor.java b/odk/examples/DevelopersGuide/OfficeDev/ContextMenuInterceptor.java
index 26e15bdbbc39..b3c0170b7cf4 100644
--- a/odk/examples/DevelopersGuide/OfficeDev/ContextMenuInterceptor.java
+++ b/odk/examples/DevelopersGuide/OfficeDev/ContextMenuInterceptor.java
@@ -116,7 +116,7 @@ public class ContextMenuInterceptor implements XContextMenuInterceptor {
}
}
catch ( com.sun.star.uno.RuntimeException ex ) {
- // something strange has happend!
+ // something strange has happened!
System.out.println( " Sample caught exception! " + ex );
System.exit(1);
}
@@ -234,7 +234,7 @@ public class ContextMenuInterceptor implements XContextMenuInterceptor {
// we used an invalid index for accessing a container
}
catch ( com.sun.star.uno.Exception ex ) {
- // something strange has happend!
+ // something strange has happened!
}
catch ( java.lang.Exception ex ) {
// catch java exceptions and something useful
diff --git a/odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/CustomizeView.java b/odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/CustomizeView.java
index 8d3491e1af98..76bf2f363461 100644
--- a/odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/CustomizeView.java
+++ b/odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/CustomizeView.java
@@ -150,7 +150,7 @@ public class CustomizeView extends JPanel
// be frame action listener
// The callback will update listener connections
- // for status updates automaticly!
+ // for status updates automatically!
m_aMenuBarListener = new StatusListener(m_cbMenuBar ,MENUBAR_ON ,MENUBAR_OFF ,xFrame, FEATUREURL_MENUBAR );
m_aToolBarListener = new StatusListener(m_cbToolBar ,TOOLBAR_ON ,TOOLBAR_OFF ,xFrame, FEATUREURL_TOOLBAR );
m_aObjectBarListener = new StatusListener(m_cbObjectBar,OBJECTBAR_ON,OBJECTBAR_OFF,xFrame, FEATUREURL_OBJECTBAR);
diff --git a/odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/Desk.java b/odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/Desk.java
index 590114a395db..e3b5e8731b7a 100644
--- a/odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/Desk.java
+++ b/odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/Desk.java
@@ -42,7 +42,7 @@ public class Desk
/**
* main
* Establish connection to a remote office and starts the demo application.
- * User can overwrite some of neccessary start options by using command line parameters.
+ * User can overwrite some of necessary start options by using command line parameters.
*
* syntax: Desk [mode={inplace|outplace}] [file=<filename>]
*
@@ -76,7 +76,7 @@ public class Desk
// Create first document view.
// This one will register himself at the global
// ViewContainer. Further views will be open
- // automaticly started from this first one.
+ // automatically started from this first one.
DocumentView aView = new DocumentView();
aView.setVisible(true);
aView.createFrame();
diff --git a/odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/DocumentView.java b/odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/DocumentView.java
index bfbed842c1b1..d2a7cefc45ba 100644
--- a/odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/DocumentView.java
+++ b/odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/DocumentView.java
@@ -37,7 +37,7 @@ import java.awt.event.WindowEvent;
// __________ Implementation __________
/**
- * This implement a java frame wich contains
+ * This implement a java frame which contains
* an office document, shows some status informations
* about that, provides simple functionality on it
* (e.g. toggle menubar, save document) and
@@ -71,7 +71,7 @@ public class DocumentView extends JFrame
/**
* @member mxFrame office frame which contains the document of this view
*
- * @member maStatusView special panel wich show available status informations of currently loaded document
+ * @member maStatusView special panel which show available status informations of currently loaded document
* @member maDocumentView use JNI mechanism to plug an office window into our own java UI container (used for inplace mode only!)
* @member maCustomizeView special panel makes it possible to toggle menubar/toolbar or objectbar of loaded document
* @member maInterceptor interceptor thread which intercept "new" menu of office frame to open new frames inside this java application
@@ -163,7 +163,7 @@ public class DocumentView extends JFrame
if(ViewContainer.mbInplace==true)
{
// create view to show opened documents
- // This special view is neccessary for inplace mode only!
+ // This special view is necessary for inplace mode only!
maDocumentView = new NativeView();
JSplitPane paSplit = new JSplitPane();
@@ -321,7 +321,7 @@ public class DocumentView extends JFrame
mbDead=true;
// force these sub view to release her remote
- // refrences too!
+ // references too!
maStatusView.shutdown();
maCustomizeView.shutdown();
@@ -334,7 +334,7 @@ public class DocumentView extends JFrame
// close the frame and his document
// Relaesing of our listener connections for disposing()
- // will be forced automaticly then. Because the frame
+ // will be forced automatically then. Because the frame
// will call us back ...
if (mxFrame!=null)
FunctionHelper.closeFrame(mxFrame);
@@ -352,8 +352,8 @@ public class DocumentView extends JFrame
/**
* callback from our internal saved frame
- * which wish to die. Its not neccessary to remove listener connections
- * here. Because the broadcaster do it automaticly.
+ * which wish to die. Its not necessary to remove listener connections
+ * here. Because the broadcaster do it automatically.
* We have to release all references to him only.
*
* @param aSource
@@ -411,7 +411,7 @@ public class DocumentView extends JFrame
if( sCommand.compareTo(COMMAND_EXIT) == 0 )
{
// This will force deleting of this and
- // all other currently opened views automaticly!
+ // all other currently opened views automatically!
System.exit(0);
}
}
diff --git a/odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/FunctionHelper.java b/odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/FunctionHelper.java
index 0c1341d34afe..f090987267cc 100644
--- a/odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/FunctionHelper.java
+++ b/odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/FunctionHelper.java
@@ -110,7 +110,7 @@ public class FunctionHelper
{
// "createInstance()" method of used service manager can throw it.
// Then it wasn't possible to get the URL transformer.
- // Return default instead of realy parsed URL.
+ // Return default instead of really parsed URL.
aURL = null;
}
@@ -246,7 +246,7 @@ public class FunctionHelper
// is returned. But normaly nobody outside the office knows this id.
// New version of this method ignore the id parameter and creation will
// work.
- // Note: You must be shure if your window handle can be realy used by
+ // Note: You must be shure if your window handle can be really used by
// the remote office. Means if this java client and the remote office
// use the same display!
com.sun.star.awt.XSystemChildFactory xChildFactory =
@@ -300,8 +300,8 @@ public class FunctionHelper
// the systemw window handle. A possible reason can be an invisible
// java window. In this case it should be enough to set return
// values to null. All other ressources (which was created before)
- // will be freed automaticly if scope wil be leaved.
- System.out.println("May be the NativeView object wasn't realy visible at calling time of getNativeWindow()?");
+ // will be freed automatically if scope wil be leaved.
+ System.out.println("May be the NativeView object wasn't really visible at calling time of getNativeWindow()?");
xPeer = null;
xWindow = null;
}
@@ -357,7 +357,7 @@ public class FunctionHelper
com.sun.star.awt.XWindow xWindow = impl_createWindow(xCtx, aParentView);
// pass the window the frame as his new container window.
- // It's neccessary to do it first - before you call anything else there.
+ // It's necessary to do it first - before you call anything else there.
// Otherwhise the frame throws some exceptions for "uninitialized state".
xFrame.initialize( xWindow );
@@ -382,11 +382,11 @@ public class FunctionHelper
if(xFrame!=null)
{
// Try to dispose the frame. He should deregister himself at the desktop object
- // and free all internal used ressources (e.g. the container window) automaticly.
+ // and free all internal used ressources (e.g. the container window) automatically.
// It's possible to do that here - because frame has no component inside yet.
// So nobody can disagree with that.
// After the dispose() call forget all references to this frame and let him die.
- // If a new exception will occure ... no generell solution exist then.
+ // If a new exception will occur ... no generell solution exist then.
// Nobody can guarantee if next call will work or not.
com.sun.star.lang.XComponent xComponent = (com.sun.star.lang.XComponent)UnoRuntime.queryInterface(
com.sun.star.lang.XComponent.class,
@@ -399,7 +399,7 @@ public class FunctionHelper
catch(com.sun.star.uno.Exception exUno)
{
// "createInstance()" method of used service manager can throw it.
- // If it occured during creation of desktop service the frame already was created.
+ // If it occurred during creation of desktop service the frame already was created.
// Free it by decresing his refcount. Changes on the desktop tree couldn't exist.
// Without the desktop service that wasn't possible. So no further rollbacks must follow.
if(xFrame!=null)
@@ -421,16 +421,16 @@ public class FunctionHelper
/**
* Dispatch an URL to given frame.
* Caller can register himself for following status events for dispatched
- * URL too. But nobody guarantee that such notifications will occure.
+ * URL too. But nobody guarantee that such notifications will occur.
* (see dispatchWithNotification() if you interest on that)
* The returned dispatch object should be hold alive by caller
* till he deosn't need it any longer. Otherwise the dispatcher can(!)
* die by decreasing his refcount.
*
- * @param xFrame frame wich should be the target of this dispatch
+ * @param xFrame frame which should be the target of this dispatch
* @param aURL full parsed and converted office URL for dispatch
* @param lProperties optional arguments for dispatch
- * @param xListener optional listener which is registered automaticly for status events
+ * @param xListener optional listener which is registered automatically for status events
* (Note: Deregistration is part of this listener himself!)
*
* @return [XDispatch] It's the used dispatch object and can be used for deregistration of an optional listener.
@@ -487,14 +487,14 @@ public class FunctionHelper
* Dispatch an URL to given frame.
* Caller can register himself for following result events for dispatched
* URL too. Notifications are guaranteed (instead of dispatch())
- * Returning of the dispatch object isn't neccessary.
+ * Returning of the dispatch object isn't necessary.
* Nobody must hold it alive longer the dispatch needs.
*
- * @param xFrame frame wich should be the target of this dispatch
+ * @param xFrame frame which should be the target of this dispatch
* @param aURL full parsed and converted office URL for dispatch
* @param lProperties optional arguments for dispatch
- * @param xListener optional listener which is registered automaticly for status events
- * (Note: Deregistration is not supported. Dispatcher does it automaticly.)
+ * @param xListener optional listener which is registered automatically for status events
+ * (Note: Deregistration is not supported. Dispatcher does it automatically.)
*/
public static void executeWithNotification(com.sun.star.frame.XFrame xFrame ,
com.sun.star.util.URL aURL ,
@@ -535,7 +535,7 @@ public class FunctionHelper
* The result of this operation will be the loaded document for success
* or null if loading failed.
*
- * @param xFrame frame wich should be the target of this load call
+ * @param xFrame frame which should be the target of this load call
* @param sURL unparsed URL for loading
* @param lProperties optional arguments
*
@@ -554,7 +554,7 @@ public class FunctionHelper
OfficeConnect.getOfficeContext();
// First prepare frame for loading
- // We must adress it inside the frame tree without any complications.
+ // We must address it inside the frame tree without any complications.
// So we set an unambigous (we hope it) name and use it later.
// Don't forget to reset original name after that.
sOldName = xFrame.getName();
@@ -674,7 +674,7 @@ public class FunctionHelper
* It try to export given document in HTML format.
* Current document will be converted to HTML and moved to new place on disk.
* A "new" file will be created by given URL (may be overwritten
- * if it already exist). Right filter will be used automaticly if factory of
+ * if it already exist). Right filter will be used automatically if factory of
* this document support it. If no valid filter can be found for export,
* nothing will be done here.
*
@@ -688,7 +688,7 @@ public class FunctionHelper
{
// First detect factory of this document.
// Ask for the supported service name of this document.
- // If information is available it can be used to find out wich
+ // If information is available it can be used to find out which
// filter exist for HTML export. Normaly this filter should be searched
// inside the filter configuration but this little demo doesn't do so.
// (see service com.sun.star.document.FilterFactory for further
@@ -735,7 +735,7 @@ public class FunctionHelper
{
// Export can be forced by saving the document and using a
// special filter name which can write needed format. Build
- // neccessary argument list now.
+ // necessary argument list now.
// Use special flag "Overwrite" too, to prevent operation
// against possible exceptions, if file already exist.
com.sun.star.beans.PropertyValue[] lProperties =
@@ -980,7 +980,7 @@ public class FunctionHelper
/**
* helper to get a file URL selected by user
* This method doesn't show any API concepts ...
- * but is neccessary rof this demo application.
+ * but is necessary rof this demo application.
*
* @param aParent parent window of this dialog
* @param bOpen If it is set to true =>
diff --git a/odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/IOnewayLink.java b/odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/IOnewayLink.java
index ba1fa34a9df8..1f1430750fea 100644
--- a/odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/IOnewayLink.java
+++ b/odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/IOnewayLink.java
@@ -45,7 +45,7 @@ public interface IOnewayLink
* @param nRequest
* The two user of this callback can define an unique number,
* which identify the type of original interface method. So the called
- * interface object can decide, which action will be neccessary.
+ * interface object can decide, which action will be necessary.
*
* @param lParams
* If the original method used parameters, they will be coded here in
diff --git a/odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/Interceptor.java b/odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/Interceptor.java
index 06f70eb5ef38..5183546cb74d 100644
--- a/odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/Interceptor.java
+++ b/odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/Interceptor.java
@@ -34,9 +34,9 @@ import java.util.Vector;
/**
* This class can be used to intercept dispatched URL's
* on any frame used in this demo application.
- * It intercept all URL's wich try to create a new empty frame.
+ * It intercept all URL's which try to create a new empty frame.
* (e.g. "private:factory/swriter")
- * Nobody can guarantee that this interception will be realy used -
+ * Nobody can guarantee that this interception will be really used -
* because another interceptor (registered at a later time then this one!)
* will be called before this one.
* Implementation is executed inside a new thread to prevent application
@@ -87,7 +87,7 @@ public class Interceptor implements com.sun.star.frame.XFrameActionListener,
/**
* ctor
* Initialize the new interceptor. Given frame reference can be used to
- * register this interceptor on it automaticly later.
+ * register this interceptor on it automatically later.
*
* @seealso startListening()
*
@@ -107,7 +107,7 @@ public class Interceptor implements com.sun.star.frame.XFrameActionListener,
//_____________________
/**
- * start working as frame action listener realy.
+ * start working as frame action listener really.
* We will be frame action listener here. In case
* we get a frame action which indicates, that we should
* update our interception. Because such using of an interecptor
@@ -308,12 +308,12 @@ public class Interceptor implements com.sun.star.frame.XFrameActionListener,
return;
}
- // deregistration will be done everytime ...
- // But may it's not neccessary to establish a new registration!
+ // deregistration will be done every time ...
+ // But may it's not necessary to establish a new registration!
// Don't look for ignoring actions - it was done already inside original frameAction() call!
boolean bRegister = false;
- // analyze the event and decide which reaction is usefull
+ // analyze the event and decide which reaction is useful
switch(aEvent.Action.getValue())
{
case com.sun.star.frame.FrameAction.COMPONENT_ATTACHED_value : bRegister = true ; break;
@@ -519,7 +519,7 @@ public class Interceptor implements com.sun.star.frame.XFrameActionListener,
if (aURL.Complete.startsWith("private:factory") == true)
{
// Create view frame for showing loaded documents on demand.
- // The visible state is neccessary for JNI functionality to get the HWND and plug office
+ // The visible state is necessary for JNI functionality to get the HWND and plug office
// inside a java window hierarchy!
DocumentView aNewView = new DocumentView();
aNewView.setVisible(true);
@@ -532,7 +532,7 @@ public class Interceptor implements com.sun.star.frame.XFrameActionListener,
/**
* Notification of status listener isn't guaranteed (instead of listener on XNotifyingDispatch interface).
- * So this interceptor doesn't support that realy ...
+ * So this interceptor doesn't support that really ...
*/
public /*ONEWAY*/ void addStatusListener(/*IN*/ com.sun.star.frame.XStatusListener xListener,/*IN*/ com.sun.star.util.URL aURL)
{
@@ -563,7 +563,7 @@ public class Interceptor implements com.sun.star.frame.XFrameActionListener,
/**
* Implements (optional!) optimization for interceptor mechanism.
- * Any interceptor which provides this special interface is called automaticly
+ * Any interceptor which provides this special interface is called automatically
* at registration time on this method. Returned URL's will be used to
* call this interceptor directly without calling his masters before, IF(!)
* following rules will be true:
@@ -581,7 +581,7 @@ public class Interceptor implements com.sun.star.frame.XFrameActionListener,
/**
* This class listen on the intercepted frame to free all used ressources on closing.
* We forget the reference to the frame only here. Deregistration
- * isn't neccessary here - because this frame dies and wish to forgoten.
+ * isn't necessary here - because this frame dies and wish to forgoten.
*
* @param aSource
* must be our internal saved frame, on which we listen for frame action events
diff --git a/odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/NativeView.java b/odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/NativeView.java
index 92c48bad23ae..f0dc3653db38 100644
--- a/odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/NativeView.java
+++ b/odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/NativeView.java
@@ -47,7 +47,7 @@ public class NativeView extends java.awt.Canvas
/**
* ctor
- * Does nothing realy.
+ * Does nothing really.
* We can use our JNI mechanism for an already visible
* canvas only. So we overload the method for showing ("setVisible()")
* and make our intialization there. BUt we try to show an empty clean
@@ -63,8 +63,8 @@ public class NativeView extends java.awt.Canvas
// ____________________
/**
- * Overload this method to make neccessary initializations here.
- * (e.g. get the window handle and neccessary system informations)
+ * Overload this method to make necessary initializations here.
+ * (e.g. get the window handle and necessary system informations)
*
* Why here?
* Because the handle seams to be available for already visible windows
@@ -82,7 +82,7 @@ public class NativeView extends java.awt.Canvas
/**
* to guarantee right resize handling inside a swing container
* (e.g. JSplitPane) we must provide some informations about our
- * prefered/minimum and maximum size.
+ * preferred/minimum and maximum size.
*/
public Dimension getPreferredSize()
{
@@ -103,7 +103,7 @@ public class NativeView extends java.awt.Canvas
/**
* overload paint routine to show provide against
- * repaint errors if no office view is realy plugged
+ * repaint errors if no office view is really plugged
* into this canvas.
* If handle is present - we shouldn't paint anything further.
* May the remote window is already plugged. In such case we
@@ -152,7 +152,7 @@ public class NativeView extends java.awt.Canvas
// ____________________
/**
- * for using of the JNI methods it's neccessary to load
+ * for using of the JNI methods it's necessary to load
* system library which exports it.
*/
static
diff --git a/odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/OfficeConnect.java b/odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/OfficeConnect.java
index ba9c07f3c993..1423b171db7f 100644
--- a/odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/OfficeConnect.java
+++ b/odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/OfficeConnect.java
@@ -78,7 +78,7 @@ public class OfficeConnect
* ctor
* We try to open the connection in our ctor ... transparently for user.
* After it was successfully you will find an internal set member
- * m_xRemoteContext wich means remote component context of the connected office.
+ * m_xRemoteContext which means remote component context of the connected office.
* The context can be used to get the remote service manager from the office.
* We made it private to support singleton pattern of these implementation.
* see getConnection() for further informations
@@ -106,7 +106,7 @@ public class OfficeConnect
/**
* create uno components inside remote office process
- * After connection of these proccess to a running office we have access to
+ * After connection of these process to a running office we have access to
* remote service manager of it.
* So we can use it to create all existing services. Use this method to create
* components by name and get her interface. Casting of it to right target
@@ -114,7 +114,7 @@ public class OfficeConnect
*
* @param aType describe class type of created service
* Returned object can be casted directly to this one.
- * Uno query was done by this method automaticly.
+ * Uno query was done by this method automatically.
* @param sServiceSpecifier name of service which should be created
* @return the new created service object
*/
diff --git a/odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/OnewayExecutor.java b/odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/OnewayExecutor.java
index 309267cbed62..1210f9bc2e37 100644
--- a/odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/OnewayExecutor.java
+++ b/odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/OnewayExecutor.java
@@ -28,7 +28,7 @@ import java.util.Vector;
/**
* It's not allowed to call synchronoues back inside an oneway interface call.
* (see IOnewayLink too). So we start a thread (implemented by this class), which
- * gets all neccessary parameters from the original called object and
+ * gets all necessary parameters from the original called object and
* call it back later inside his run() method. So the execution of such oneway call
* will be asynchronous. It works in a generic way and can be used or any type
* of oneway request. Because the source and the target of this call-link knows,
@@ -73,7 +73,7 @@ class OnewayExecutor extends Thread
/**
* ctor
- * It's initialize this thread with all neccessary parameters.
+ * It's initialize this thread with all necessary parameters.
* It gets the object, which wish to be called back and the type
* and parameters of the original request.
*
@@ -81,7 +81,7 @@ class OnewayExecutor extends Thread
* The two user of this callback can define an unique number,
* which identify the type of original interface method.
* So the called interface object can decide, which action will be
- * neccessary.
+ * necessary.
*
* @param lParams
* If the original method used parameters, they will be coded here in
@@ -110,7 +110,7 @@ class OnewayExecutor extends Thread
/**
* implements the thread function
* Here we call the internal set link object back and
- * give him all neccessary parameters.
+ * give it all necessary parameters.
* After that we die by ouerself ...
*/
public void run()
@@ -128,7 +128,7 @@ class OnewayExecutor extends Thread
/**
* static helper!
- * To make convertion of the generic parameter list to the original
+ * To make conversion of the generic parameter list to the original
* one easier - you can use this helper methods. They know how suchlist
* must be coded. It's not a must to use it - but you can ...
*/
diff --git a/odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/StatusListener.java b/odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/StatusListener.java
index b03b7bfda04d..aba2e4c33873 100644
--- a/odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/StatusListener.java
+++ b/odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/StatusListener.java
@@ -42,7 +42,7 @@ import java.util.Vector;
*
* Further we are frame action listener too.
* So we can update our status listener connections and
- * internal holded dispatch object automaticly.
+ * internal holded dispatch object automatically.
*
* Another reason for such extra class for listening:
* Most listener callbacks are asynchronoues [oneay] requests.
@@ -64,7 +64,7 @@ class StatusListener implements com.sun.star.frame.XStatusListener,
* @member m_sTrueText this text will be shown at the used UI control as description for an enabled status
* @member m_sFalseText this text will be shown at the used UI control as description for an disabled status
* @member m_xDispatch if we listen for status events, we must hold the dispatch object alive!
- * @member m_xFrame reference to the frame, which can provide new dispatch objects if it's neccessary to update it
+ * @member m_xFrame reference to the frame, which can provide new dispatch objects if it's necessary to update it
* @member m_aURL and of course we must be registered for a special URL
* @member m_bIsActionListener indicates if we are currently registered as a listener for frame action events or not
* @member m_bIsStatusListener indicates if we are currently registered as a listener for status events or not
@@ -85,7 +85,7 @@ class StatusListener implements com.sun.star.frame.XStatusListener,
/**
* ctor
* It initialize an instance of this class only.
- * We sett all neccessary informations on our internal member - that's it
+ * We sett all necessary informations on our internal member - that's it
*/
StatusListener( /*IN*/ Component rControl ,
/*IN*/ String sTrueText ,
@@ -108,13 +108,13 @@ class StatusListener implements com.sun.star.frame.XStatusListener,
//_____________________
/**
- * start working as frame action listener realy.
+ * start working as frame action listener really.
* In case we get such frame action, it indicates that we should
* update our internal saved dispatch object on which we listen
- * for status events. So we can do it automaticly. The outside code
+ * for status events. So we can do it automatically. The outside code
* mustn't check such things. We can work with one frame,
* till it die. It doesn't matter if he will be used for different
- * load/save or any other requests. We will be up to date everytime.
+ * load/save or any other requests. We will be up to date every time.
*/
public void startListening()
{
@@ -182,9 +182,9 @@ class StatusListener implements com.sun.star.frame.XStatusListener,
/**
* This is the callback method for such frame action events, we listen for.
* Because it's a oneway method we start a thread as reaction. This thread call
- * us back and we can do neccessary things there.
- * But we shouldn't start such action - if it's not realy neccessary.
- * So we check before, if we are intereested on this event realy.
+ * us back and we can do necessary things there.
+ * But we shouldn't start such action - if it's not really necessary.
+ * So we check before, if we are intereested on this event really.
*
* @see impl_frameAction()
*
@@ -229,7 +229,7 @@ class StatusListener implements com.sun.star.frame.XStatusListener,
* This is the callback method for the status we listen for an wish to show it
* on our UI control. Of yourse it's a oneway method ... but we doesn't call back
* to the office synchronously here. We update our UI only. So we don't leave this
- * java process. In such case it's not neccessary to use threads to decouple it.
+ * java process. In such case it's not necessary to use threads to decouple it.
* Do it here and now ...
*
* @param aEvent
@@ -243,7 +243,7 @@ class StatusListener implements com.sun.star.frame.XStatusListener,
return;
// enable/dsiable th control.
- // Means: If the feature isn't available currently - we can't show an status realy here.
+ // Means: If the feature isn't available currently - we can't show an status really here.
// Then we should colorize it gray ...
m_rControl.setEnabled(aEvent.IsEnabled);
@@ -280,7 +280,7 @@ class StatusListener implements com.sun.star.frame.XStatusListener,
// Detect type of state value
// and set it on internal well known UI control
- // But do it only, if value realy change.
+ // But do it only, if value really change.
if(aEvent.State instanceof String)
{
String sState = (String)aEvent.State;
@@ -325,7 +325,7 @@ class StatusListener implements com.sun.star.frame.XStatusListener,
return;
}
// Don't look for ignoring actions - it was done already inside original frameAction() call!
- // deregistration as status listener will be done here everytime - but registration only, if neccessary!
+ // deregistration as status listener will be done here every time - but registration only, if necessary!
boolean bRegister = false;
switch(aEvent.Action.getValue())
{
@@ -383,9 +383,9 @@ class StatusListener implements com.sun.star.frame.XStatusListener,
/**
* callback for disposing events
* Our dispatch or frame object inform us about his following dead ...
- * So we must forget his reference. But it's not neccessary to
+ * So we must forget his reference. But it's not necessary to
* remove listener connections here. Because the broadcaster
- * forget us automaticly. The only thing we have to do: release
+ * forget us automatically. The only thing we have to do: release
* his reference and let him die!
*
* @param aEvent
diff --git a/odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/StatusView.java b/odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/StatusView.java
index b3d8173a1604..652588fb2086 100644
--- a/odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/StatusView.java
+++ b/odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/StatusView.java
@@ -34,10 +34,10 @@ import java.lang.String;
/**
* Implement a view to show status informations
* of currently loaded document of a document view.
- * It use seperate listener threads to get this informations
- * and actualize it automaticly if frame broadcast changes of
+ * It use separate listener threads to get this informations
+ * and actualize it automatically if frame broadcast changes of
* his contained document.
- * Threads are neccessary to prevent this view against deadlocks.
+ * Threads are necessary to prevent this view against deadlocks.
* These deadlocks can occure if a listener will be notified
* by the office in an "oneway" method and try to call back
* to the office by using a synchronous method.
@@ -202,7 +202,7 @@ public class StatusView extends JPanel
* And because the environment of the frame can be changed - these
* listener refresh himself internaly for frame action events too.
* So we register it as such frame action listener only here.
- * Rest is done automaticly ...
+ * Rest is done automatically ...
*
* @param xFrame
* will be used as source of possible status events
@@ -214,7 +214,7 @@ public class StatusView extends JPanel
// create some listener on given frame for available status events
// Created listener instances will register herself on this frame and
- // show her received informations automaticly on setted UI controls.
+ // show her received informations automatically on setted UI controls.
m_aFontListener = new StatusListener(m_laFontValue ,FONT_ON ,FONT_OFF ,xFrame, FEATUREURL_FONT );
m_aSizeListener = new StatusListener(m_laSizeValue ,SIZE_ON ,SIZE_OFF ,xFrame, FEATUREURL_SIZE );
m_aBoldListener = new StatusListener(m_laBoldValue ,BOLD_ON ,BOLD_OFF ,xFrame, FEATUREURL_BOLD );
diff --git a/odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/ViewContainer.java b/odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/ViewContainer.java
index 3517f3cdbe24..afe9665ab521 100644
--- a/odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/ViewContainer.java
+++ b/odk/examples/DevelopersGuide/OfficeDev/DesktopEnvironment/ViewContainer.java
@@ -47,7 +47,7 @@ public class ViewContainer extends Thread
/**
* provides a singleton view container
- * Neccessary for terminate(9 functionality to be able
+ * Necessary for terminate(9 functionality to be able
* to call Runtime.runFinilization().
*
* @return a reference to the singleton ViewContainer instance
@@ -78,7 +78,7 @@ public class ViewContainer extends Thread
/**
* This register a new view inside this global container
- * (if it doesnt already exist).
+ * (if it doesn't already exist).
*
* @param aView view which whish to be registered inside this container
*/
@@ -119,7 +119,7 @@ public class ViewContainer extends Thread
}
// If this view is a registered shutdown listener on this view container
// too, we must call his interface and forget him as possible listener.
- // It's neccessary to guarantee his dead ...
+ // It's necessary to guarantee his dead ...
boolean bShutdownView = false;
synchronized(mlListener)
{
@@ -135,7 +135,7 @@ public class ViewContainer extends Thread
// hook at the runtime class. So our run() method will be called.
// Teh our view container should be empty - but
// our listener container can include some references.
- // These objects wich to be informed then and release e.g. some
+ // These objects which to be informed then and release e.g. some
// remote references.
if (nViewCount<1)
{
@@ -248,7 +248,7 @@ public class ViewContainer extends Thread
* @member mlListener list of all currently registered shutdown listener
* @member mbShutdownActive if this shutdown hook already was started it's not a good idea to
* call System.exit() again for other conditions.
- * We supress it by using this variable!
+ * We suppress it by using this variable!
*/
public static boolean mbInplace = false ;
private static ViewContainer maSingleton = null ;
diff --git a/odk/examples/DevelopersGuide/OfficeDev/FilterDevelopment/AsciiFilter/AsciiReplaceFilter.java b/odk/examples/DevelopersGuide/OfficeDev/FilterDevelopment/AsciiFilter/AsciiReplaceFilter.java
index 622f3276de12..3e3f72a5a790 100644
--- a/odk/examples/DevelopersGuide/OfficeDev/FilterDevelopment/AsciiFilter/AsciiReplaceFilter.java
+++ b/odk/examples/DevelopersGuide/OfficeDev/FilterDevelopment/AsciiFilter/AsciiReplaceFilter.java
@@ -54,7 +54,7 @@ import com.sun.star.lang.IllegalArgumentException;
During import/export special functionality can be used to
e.g. to change some characters inside the file content
or replace some strings (no using of regular expressions!).
- User can decide at runtime which functionality realy should
+ User can decide at runtime which functionality really should
be used by selecting it in an extra filter property dialog.
So we show how a filter works fro iport/export, use or create
@@ -107,7 +107,7 @@ public class AsciiReplaceFilter
// native interface
/**
* special debug helper to get an idea how expensive
- * the implemented filter operations are realy.
+ * the implemented filter operations are really.
* May be usefully for own purposes.
*
* To see the output inside an office environment
@@ -160,7 +160,7 @@ public class AsciiReplaceFilter
/**
* used for initializing after creation
* If an instance of this service is created by UNO we will be called
- * automaticly after that to get optional parameters of this creation call.
+ * automatically after that to get optional parameters of this creation call.
* E.g.: The service com.sun.star.document.FilterFactory use such mechanism
* to pass our own configuration data to this instance.
*
@@ -363,7 +363,7 @@ public class AsciiReplaceFilter
/**
* Makes the filter process breakable. To do so the outside code may use threads.
- * We use a internal "condition" variable wich is queried by the real filter method on
+ * We use a internal "condition" variable which is queried by the real filter method on
* every loop they do. So it's more a polling mechanism.
*/
public void cancel()
@@ -404,7 +404,7 @@ public class AsciiReplaceFilter
* the target text model to put the data in
*
* @param aOptions
- * capsulate all other neccessary informations for this filter request
+ * capsulate all other necessary informations for this filter request
* (streams, replace values ...)
*
* @return a bool value which describes if method was successfully or not.
@@ -536,7 +536,7 @@ public class AsciiReplaceFilter
* the source text model to get the data from
*
* @param aOptions
- * capsulate all other neccessary informations for this filter request
+ * capsulate all other necessary informations for this filter request
* (streams, replace values ...)
*
* @return a bool value which describes if method was successfully or not.
@@ -561,7 +561,7 @@ public class AsciiReplaceFilter
measure("get text from model");
- // Normaly this function isn't realy cancelable
+ // Normaly this function isn't really cancelable
// But we following operation can be very expensive. So
// this place is the last one to stop it.
synchronized(this)
diff --git a/odk/examples/DevelopersGuide/OfficeDev/FilterDevelopment/AsciiFilter/FilterOptions.java b/odk/examples/DevelopersGuide/OfficeDev/FilterDevelopment/AsciiFilter/FilterOptions.java
index beca3543d4bd..4d413b328c2d 100644
--- a/odk/examples/DevelopersGuide/OfficeDev/FilterDevelopment/AsciiFilter/FilterOptions.java
+++ b/odk/examples/DevelopersGuide/OfficeDev/FilterDevelopment/AsciiFilter/FilterOptions.java
@@ -37,8 +37,8 @@ import com.sun.star.ucb.CommandAbortedException;
import com.sun.star.lang.IllegalArgumentException;
/*-************************************************************************
- @title helper to analyze neccessary option properties of our filter
- @description Our filter needs some neccessary properties for working:
+ @title helper to analyze necessary option properties of our filter
+ @description Our filter needs some necessary properties for working:
- a stream for input or output
- or an URL for creating such streams
- informations about required action on filtering
@@ -160,15 +160,15 @@ public class FilterOptions
{
// ONE argument has the wrong type
// But I think we mustn't react here - because we setted
- // default values for every neccessary item we need.
+ // default values for every necessary item we need.
// In case this exception occures - this default exist
// and we can live with it.
}
}
- // Decide if it's neccessary AND possible to open streams.
+ // Decide if it's necessary AND possible to open streams.
// Outside user can check for valid FilterOptions by using
- // corresponding method isValid(). So it's not neccessary to
+ // corresponding method isValid(). So it's not necessary to
// handle this error here in any case.
if (m_xInput==null && m_xOutput==null && m_sURL!=null)
impl_openStreams(bImport);
@@ -176,8 +176,8 @@ public class FilterOptions
/**
* with this method it's possible for the outside filter to decide
- * if he can use this FilterOptions realy or not.
- * That means especialy if neccessary streams are available or not.
+ * if he can use this FilterOptions really or not.
+ * That means especially if necessary streams are available or not.
*/
public boolean isValid()
{
diff --git a/odk/examples/DevelopersGuide/OfficeDev/FilterDevelopment/FlatXmlFilter_cpp/FlatXml.cxx b/odk/examples/DevelopersGuide/OfficeDev/FilterDevelopment/FlatXmlFilter_cpp/FlatXml.cxx
index d55d38734e1d..32c20a173dcc 100644
--- a/odk/examples/DevelopersGuide/OfficeDev/FilterDevelopment/FlatXmlFilter_cpp/FlatXml.cxx
+++ b/odk/examples/DevelopersGuide/OfficeDev/FilterDevelopment/FlatXmlFilter_cpp/FlatXml.cxx
@@ -182,7 +182,7 @@ sal_Bool XFlatXml::exporter(
{
// read source data
- // we are especialy interested in the output stream
+ // we are especially interested in the output stream
// since that is where our xml-writer will push the data
// from it's data-source interface
OUString aName, sURL;
diff --git a/odk/examples/DevelopersGuide/OfficeDev/Linguistic/LinguisticExamples.java b/odk/examples/DevelopersGuide/OfficeDev/Linguistic/LinguisticExamples.java
index 8f4fa9eecfd1..c01db7188d68 100644
--- a/odk/examples/DevelopersGuide/OfficeDev/Linguistic/LinguisticExamples.java
+++ b/odk/examples/DevelopersGuide/OfficeDev/Linguistic/LinguisticExamples.java
@@ -346,7 +346,7 @@ public class LinguisticExamples
public void processLinguServiceEvent( LinguServiceEvent aServiceEvent )
{
//! do here whatever you think needs to be done depending
- //! on the event recieved (e.g. trigger background spellchecking
+ //! on the event received (e.g. trigger background spellchecking
//! or hyphenation again.)
System.out.println("Listener called");
diff --git a/odk/examples/DevelopersGuide/OfficeDev/OfficeConnect.java b/odk/examples/DevelopersGuide/OfficeDev/OfficeConnect.java
index 3f55c3a47002..89eb5e483083 100644
--- a/odk/examples/DevelopersGuide/OfficeDev/OfficeConnect.java
+++ b/odk/examples/DevelopersGuide/OfficeDev/OfficeConnect.java
@@ -100,13 +100,13 @@ public class OfficeConnect
/**
* create uno components inside remote office process
- * After connection of these proccess to a running office we have access to remote service manager of it.
+ * After connection of these process to a running office we have access to remote service manager of it.
* So we can use it to create all existing services. Use this method to create components by name and
* get her interface. Casting of it to right target interface is part of your implementation.
*
* @param aType describe class type of created service
* Returned object can be casted directly to this one.
- * Uno query was done by this method automaticly.
+ * Uno query was done by this method automatically.
* @param sServiceSpecifier name of service which should be created
* @return Description of the Returned Value
*/
diff --git a/odk/examples/DevelopersGuide/ProfUNO/CppBinding/office_connect.cxx b/odk/examples/DevelopersGuide/ProfUNO/CppBinding/office_connect.cxx
index 1aec7046d016..f15568bb5b17 100644
--- a/odk/examples/DevelopersGuide/ProfUNO/CppBinding/office_connect.cxx
+++ b/odk/examples/DevelopersGuide/ProfUNO/CppBinding/office_connect.cxx
@@ -81,7 +81,7 @@ SAL_IMPLEMENT_MAIN()
return 1;
}
- printf( "Connected sucessfully to the office\n" );
+ printf( "Connected successfully to the office\n" );
}
catch( Exception &e )
{
diff --git a/odk/examples/DevelopersGuide/Text/TextDocuments.java b/odk/examples/DevelopersGuide/Text/TextDocuments.java
index 405818e4a1eb..dad4e5c497b2 100644
--- a/odk/examples/DevelopersGuide/Text/TextDocuments.java
+++ b/odk/examples/DevelopersGuide/Text/TextDocuments.java
@@ -340,7 +340,7 @@ public class TextDocuments {
mxDocFactory = (XMultiServiceFactory) UnoRuntime.queryInterface(
XMultiServiceFactory.class, mxDoc );
- // Examples of text fields, dependant text fields and field masters
+ // Examples of text fields, dependent text fields and field masters
TextFieldExample ();
// Example of using an XEnumerationAccess to iterate over paragraphs and
@@ -530,11 +530,11 @@ public class TextDocuments {
{
try
{
- // Get a text range refering to the beginning of the text document
+ // Get a text range referring to the beginning of the text document
XTextRange xStart = mxDocText.getStart();
// use setString to insert text at the beginning
xStart.setString ( "This is text inserted at the beginning.\n\n" );
- // Get a text range refering to the end of the text document
+ // Get a text range referring to the end of the text document
XTextRange xEnd = mxDocText.getEnd();
// use setString to insert text at the end
xEnd.setString ( "This is text inserted at the end.\n\n" );
@@ -694,7 +694,7 @@ public class TextDocuments {
return ( ( maRandom.nextInt() % 1000 ) * maRandom.nextDouble () );
}
- /** This method sets the text colour of the cell refered to by sCellName to
+ /** This method sets the text colour of the cell referred to by sCellName to
white and inserts the string sText in it
*/
protected static void insertIntoCell(String sCellName, String sText,
@@ -948,14 +948,14 @@ public class TextDocuments {
// Make sure that the autotext group contains at least one block
if ( aBlockNames.length > 0 )
{
- // Split the current cell vertically into two seperate cells
+ // Split the current cell vertically into two separate cells
xTableCursor.splitRange ( (short) 1, false );
// Put the cursor in the newly created right hand cell
// and select it
xTableCursor.goRight ( (short) 1, false );
- // Split this cell horizontally to make a seperate cell
+ // Split this cell horizontally to make a separate cell
// for each Autotext block
if ( ( aBlockNames.length -1 ) > 0 )
xTableCursor.splitRange (
@@ -1726,7 +1726,7 @@ public class TextDocuments {
XNamed xSectionNamed = (XNamed) UnoRuntime.queryInterface(XNamed.class,
mxDocFactory.createInstance("com.sun.star.text.TextSection"));
- // Set the name of our new section (appropiately) to 'Fish'
+ // Set the name of our new section (appropriately) to 'Fish'
xSectionNamed.setName ( "Fish" );
// Create the TextColumns service and get it's XTextColumns interface
diff --git a/odk/examples/DevelopersGuide/UCB/ResourceManager.java b/odk/examples/DevelopersGuide/UCB/ResourceManager.java
index 738a2562aaf5..facdfa5d61e2 100644
--- a/odk/examples/DevelopersGuide/UCB/ResourceManager.java
+++ b/odk/examples/DevelopersGuide/UCB/ResourceManager.java
@@ -74,7 +74,7 @@ public class ResourceManager {
* This method requires the main and the optional arguments to be set in order to work.
* See Constructor.
*
- *@return boolean Returns true if resource successfully transfered, false otherwise
+ *@return boolean Returns true if resource successfully transferred, false otherwise
*@exception com.sun.star.ucb.CommandAbortedException
*@exception com.sun.star.uno.Exception
*/
@@ -92,8 +92,8 @@ public class ResourceManager {
*
*@param String Source URL
*@param String Target folder URL
- *@param String Transfering operation (copy, move, link)
- *@return boolean Returns true if resource successfully transfered, false otherwise
+ *@param String Transferring operation (copy, move, link)
+ *@return boolean Returns true if resource successfully transferred, false otherwise
*@exception com.sun.star.ucb.CommandAbortedException
*@exception com.sun.star.uno.Exception
*/
@@ -164,9 +164,9 @@ public class ResourceManager {
}
/**
- * Get new title for the resource to be transfered.
+ * Get new title for the resource to be transferred.
*
- *@return String That contains a new title for the transfered
+ *@return String That contains a new title for the transferred
* resource. Can be empty. In this case resource
* will keep the title it has in the source folder.
*/
@@ -258,7 +258,7 @@ public class ResourceManager {
if ( result )
System.out.println( "\nTransfering resource succeeded." );
else
- System.out.println( "Transfering resource failed." );
+ System.out.println( "Transferring resource failed." );
System.out.println( " Source URL : " + sourceURL );
System.out.println( " Target Folder URL : " + targetFolderURL );
diff --git a/odk/examples/DevelopersGuide/examples.html b/odk/examples/DevelopersGuide/examples.html
index 5decee1a6ad3..e4af7c6e372c 100644
--- a/odk/examples/DevelopersGuide/examples.html
+++ b/odk/examples/DevelopersGuide/examples.html
@@ -2306,7 +2306,7 @@ form controls.</a></td>
title="link to Forms/DataAwareness.java">DataAwareness</a></td>
<td class="cell80">This class implements the basic
example for a form working on a database. Two tables will be created
-and a form (writer document) with a bussiness example will fill its
+and a form (writer document) with a business example will fill its
fields from these tables.</td>
</tr>
<tr>
diff --git a/odk/examples/cpp/complextoolbarcontrols/Makefile b/odk/examples/cpp/complextoolbarcontrols/Makefile
index cddaf234817d..14cf999a5274 100644
--- a/odk/examples/cpp/complextoolbarcontrols/Makefile
+++ b/odk/examples/cpp/complextoolbarcontrols/Makefile
@@ -27,6 +27,7 @@ SETTINGS=$(PRJ)/settings
include $(SETTINGS)/settings.mk
include $(SETTINGS)/std.mk
include $(SETTINGS)/dk.mk
+include $(SETTINGS)/platform.mk
# Define non-platform/compiler specific settings
COMP_NAME=complextoolbarcontrols
@@ -37,6 +38,7 @@ OUT_COMP_SLO=$(OUT_SLO)/$(COMP_NAME)
COMP_PACKAGE = $(OUT_BIN)/$(COMP_NAME).$(UNOOXT_EXT)
COMP_PACKAGE_URL = $(subst \\,\,"$(COMP_PACKAGE_DIR)$(PS)$(COMP_NAME).$(UNOOXT_EXT)")
COMP_UNOPKG_MANIFEST = $(OUT_COMP_GEN)/$(COMP_NAME)/META-INF/manifest.xml
+COMP_UNOPKG_DESCRIPTION = $(OUT_COMP_GEN)/$(COMPONENT_NAME)/description.xml
COMP_MAPFILE = $(OUT_COMP_GEN)/$(COMP_NAME).uno.map
COMP_COMPONENTS = $(OUT_COMP_GEN)/$(COMP_NAME).components
COMP_REGISTERFLAG = $(OUT_MISC)/cpp_$(COMP_NAME)_register_component.flag
@@ -49,11 +51,6 @@ CXXFILES = \
SLOFILES = $(patsubst %.cxx,$(OUT_COMP_SLO)/%.$(OBJ_EXT),$(CXXFILES))
-# Add OSL_DEBUG_LEVEL to compiler the flags (for OSL_TRACE et. al.)
-ifeq "$(DEBUG)" "yes"
-CC_FLAGS += -DOSL_DEBUG_LEVEL=2
-endif
-
# Targets
.PHONY: ALL
ALL : \
@@ -92,6 +89,11 @@ ifeq "$(OS)" "MACOSX"
endif
endif
+# rule for extension description.xml
+$(COMP_UNOPKG_DESCRIPTION) : description.xml
+ -$(MKDIR) $(subst /,$(PS),$(@D))
+ $(SDK_CAT) $< | $(SDK_SED) -e "s/#EXTENSION_PLATFORM#/$(EXTENSION_PLATFORM)/" > $@
+
# rule for component package manifest
$(OUT_COMP_GEN)/%/manifest.xml :
-$(MKDIR) $(subst /,$(PS),$(@D))
@@ -121,11 +123,11 @@ $(COMP_COMPONENTS) :
@echo $(OSEP)/components$(CSEP) >> $@
# rule for component package file
-$(COMP_PACKAGE) : $(SHAREDLIB_OUT)/$(COMP_IMPL_NAME) Addons.xcu ProtocolHandler.xcu $(COMP_UNOPKG_MANIFEST) $(COMP_COMPONENTS)
+$(COMP_PACKAGE) : $(SHAREDLIB_OUT)/$(COMP_IMPL_NAME) Addons.xcu ProtocolHandler.xcu $(COMP_UNOPKG_MANIFEST) $(COMP_COMPONENTS) $(COMP_UNOPKG_DESCRIPTION)
-$(MKDIR) $(subst /,$(PS),$(@D)) && $(DEL) $(subst \\,\,$(subst /,$(PS),$@))
-$(MKDIR) $(subst /,$(PS),$(OUT_COMP_GEN)/$(UNOPKG_PLATFORM))
$(COPY) $(subst /,$(PS),$<) $(subst /,$(PS),$(OUT_COMP_GEN)/$(UNOPKG_PLATFORM))
- cd $(subst /,$(PS),$(OUT_COMP_GEN)) && $(SDK_ZIP) -u ../../bin/$(@F) $(COMP_NAME).components
+ cd $(subst /,$(PS),$(OUT_COMP_GEN)) && $(SDK_ZIP) -u ../../bin/$(@F) $(COMP_NAME).components description.xml
cd $(subst /,$(PS),$(OUT_COMP_GEN)) && $(SDK_ZIP) -u ../../bin/$(@F) $(UNOPKG_PLATFORM)/$(<F)
$(SDK_ZIP) -u $@ Addons.xcu ProtocolHandler.xcu logo_small.png logo_big.png
cd $(subst /,$(PS),$(OUT_COMP_GEN)/$(subst .$(UNOOXT_EXT),,$(@F))) && $(SDK_ZIP) -u ../../../bin/$(@F) META-INF/manifest.xml
@@ -145,7 +147,7 @@ endif
Example : $(COMP_REGISTERFLAG)
@echo --------------------------------------------------------------------------------
- @echo The "$(QM)Complext Toolbar Controlls$(QM)" component was installed if SDK_AUTO_DEPLOYMENT = YES.
+ @echo The "$(QM)Complext Toolbar Controls$(QM)" component was installed if SDK_AUTO_DEPLOYMENT = YES.
@echo You can use this component inside your office installation, see the example
@echo description.
@echo --------------------------------------------------------------------------------
diff --git a/odk/examples/cpp/complextoolbarcontrols/MyProtocolHandler.cxx b/odk/examples/cpp/complextoolbarcontrols/MyProtocolHandler.cxx
index 36f309950a27..99230409c04c 100644
--- a/odk/examples/cpp/complextoolbarcontrols/MyProtocolHandler.cxx
+++ b/odk/examples/cpp/complextoolbarcontrols/MyProtocolHandler.cxx
@@ -220,7 +220,7 @@ Sequence< ::rtl::OUString > SAL_CALL MyProtocolHandler::getSupportedServiceNames
void SAL_CALL BaseDispatch::dispatch( const URL& aURL, const Sequence < PropertyValue >& lArgs ) throw (RuntimeException)
{
- /* Its neccessary to hold this object alive, till this method finish.
+ /* Its necessary to hold this object alive, till this method finish.
May the outside dispatch cache (implemented by the menu/toolbar!)
forget this instance during de-/activation of frames (focus!).
diff --git a/odk/examples/cpp/complextoolbarcontrols/description.xml b/odk/examples/cpp/complextoolbarcontrols/description.xml
new file mode 100644
index 000000000000..d5fb3292c2a7
--- /dev/null
+++ b/odk/examples/cpp/complextoolbarcontrols/description.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--***********************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ ***********************************************************-->
+<description xmlns="http://openoffice.org/extensions/description/2006" xmlns:d="http://openoffice.org/extensions/description/2006" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <version value="0.0.1"/>
+ <identifier value="org.apache.openoffice.framework.complextoolbarcontrols"/>
+ <platform value="#EXTENSION_PLATFORM#"/>
+ <publisher>
+ <name xlink:href="https://api.openoffice.org" lang="en">Apache OpenOffice</name>
+ </publisher>
+ <display-name>
+ <name lang="en-US">Complex Toolbar Controls Demo for Apache OpenOffice</name>
+ </display-name>
+</description>
diff --git a/odk/examples/java/DocumentHandling/DocumentLoader.java b/odk/examples/java/DocumentHandling/DocumentLoader.java
index e83b8f569dac..79305da747e4 100644
--- a/odk/examples/java/DocumentHandling/DocumentLoader.java
+++ b/odk/examples/java/DocumentHandling/DocumentLoader.java
@@ -64,7 +64,7 @@ public class DocumentLoader {
sUrl = sbTmp.toString();
}
- // Load a Writer document, which will be automaticly displayed
+ // Load a Writer document, which will be automatically displayed
com.sun.star.lang.XComponent xComp = xCompLoader.loadComponentFromURL(
sUrl, "_blank", 0, new com.sun.star.beans.PropertyValue[0]);
diff --git a/odk/examples/java/DocumentHandling/DocumentPrinter.java b/odk/examples/java/DocumentHandling/DocumentPrinter.java
index 7d126ce088dd..90a360fb934d 100644
--- a/odk/examples/java/DocumentHandling/DocumentPrinter.java
+++ b/odk/examples/java/DocumentHandling/DocumentPrinter.java
@@ -58,7 +58,7 @@ public class DocumentPrinter {
StringBuffer sUrl = new StringBuffer("file:///");
sUrl.append(sourceFile.getCanonicalPath().replace('\\', '/'));
- // Load a Writer document, which will be automaticly displayed
+ // Load a Writer document, which will be automatically displayed
com.sun.star.lang.XComponent xComp = xCompLoader.loadComponentFromURL(
sUrl.toString(), "_blank", 0,
new com.sun.star.beans.PropertyValue[0] );
diff --git a/odk/examples/java/EmbedDocument/Container1/EmbedContApp.java b/odk/examples/java/EmbedDocument/Container1/EmbedContApp.java
index e2ab9b7e90a2..3bb4b2e3a79f 100644
--- a/odk/examples/java/EmbedDocument/Container1/EmbedContApp.java
+++ b/odk/examples/java/EmbedDocument/Container1/EmbedContApp.java
@@ -381,7 +381,7 @@ public class EmbedContApp extends Applet implements MouseListener, XEmbeddedClie
public void actionPerformed( ActionEvent e )
{
- // if has persistance store there
+ // if has persistence store there
// if not open SaveAs dialog and store
if ( m_xStorage != null && m_xEmbedObj != null )
{
diff --git a/odk/examples/java/EmbedDocument/EmbeddedObject/OwnEmbeddedObject.java b/odk/examples/java/EmbedDocument/EmbeddedObject/OwnEmbeddedObject.java
index db29eed00258..5ab82211121a 100644
--- a/odk/examples/java/EmbedDocument/EmbeddedObject/OwnEmbeddedObject.java
+++ b/odk/examples/java/EmbedDocument/EmbeddedObject/OwnEmbeddedObject.java
@@ -392,10 +392,10 @@ public final class OwnEmbeddedObject extends WeakBase
&& ( m_nObjectState == -1 || nEntryConnectionMode != com.sun.star.embed.EntryInitModes.NO_INIT ) )
{
// if the object is not loaded
- // it can not get persistant representation without initialization
+ // it can not get persistent representation without initialization
// if the object is loaded
- // it can switch persistant representation only without initialization
+ // it can switch persistent representation only without initialization
throw new com.sun.star.embed.WrongStateException();
}
diff --git a/odk/examples/java/Inspector/TestInspector.java b/odk/examples/java/Inspector/TestInspector.java
index b3bf11d0aaf5..6eb511069799 100644
--- a/odk/examples/java/Inspector/TestInspector.java
+++ b/odk/examples/java/Inspector/TestInspector.java
@@ -62,7 +62,7 @@ public class TestInspector {
com.sun.star.frame.XComponentLoader xCmpLoader = (com.sun.star.frame.XComponentLoader)UnoRuntime.queryInterface( com.sun.star.frame.XComponentLoader.class,
xMCF.createInstanceWithContext("com.sun.star.frame.Desktop", xContext));
- // Load a new spreadsheet document, which will be automaticly
+ // Load a new spreadsheet document, which will be automatically
// displayed and is used for inspection
com.sun.star.lang.XComponent xComp = xCmpLoader.loadComponentFromURL("private:factory/scalc", "_blank", 0, new com.sun.star.beans.PropertyValue[0] );
xInstInspector.inspect(xCmpLoader, "");
diff --git a/odk/examples/java/NotesAccess/NotesAccess.java b/odk/examples/java/NotesAccess/NotesAccess.java
index e2fb30bf5b18..5e4a6ab01465 100644
--- a/odk/examples/java/NotesAccess/NotesAccess.java
+++ b/odk/examples/java/NotesAccess/NotesAccess.java
@@ -144,7 +144,7 @@ public class NotesAccess implements Runnable {
xMCF.createInstanceWithContext(
"com.sun.star.frame.Desktop", xContext));
- // Load a Writer document, which will be automaticly displayed
+ // Load a Writer document, which will be automatically displayed
XComponent xComponent = xLoader.loadComponentFromURL(
"private:factory/scalc", "_blank", 0,
new PropertyValue[0] );
diff --git a/odk/examples/java/Spreadsheet/ChartTypeChange.java b/odk/examples/java/Spreadsheet/ChartTypeChange.java
index 415ce870a129..c426eb2b1124 100644
--- a/odk/examples/java/Spreadsheet/ChartTypeChange.java
+++ b/odk/examples/java/Spreadsheet/ChartTypeChange.java
@@ -176,7 +176,7 @@ public class ChartTypeChange {
xMCF.createInstanceWithContext("com.sun.star.frame.Desktop",
xCompContext ) );
- // Load a Writer document, which will be automaticly displayed
+ // Load a Writer document, which will be automatically displayed
XComponent xComponent = xComponentloader.loadComponentFromURL(
"file:///" + stringFileName, "_blank", 0,
new PropertyValue[0] );
@@ -223,7 +223,7 @@ public class ChartTypeChange {
"com.sun.star.frame.Desktop",
xCompContext ) );
- // Create an empty calc document, which will be automaticly displayed
+ // Create an empty calc document, which will be automatically displayed
XComponent xComponent = xcomponentloader.loadComponentFromURL(
"private:factory/scalc", "_blank", 0,
new PropertyValue[0] );
diff --git a/odk/examples/java/Storage/Test01.java b/odk/examples/java/Storage/Test01.java
index 9cf22f30ddac..fc669dfcd991 100644
--- a/odk/examples/java/Storage/Test01.java
+++ b/odk/examples/java/Storage/Test01.java
@@ -118,7 +118,7 @@ public class Test01 implements StorageTest {
}
// copy xTempStorage to xTempFileStorage
- // xTempFileStorage will be automatically commited
+ // xTempFileStorage will be automatically committed
if ( !m_aTestHelper.copyStorage( xTempStorage, xTempFileStorage ) )
return false;
diff --git a/odk/examples/java/Storage/Test04.java b/odk/examples/java/Storage/Test04.java
index ec123295b6e5..9d0f623542de 100644
--- a/odk/examples/java/Storage/Test04.java
+++ b/odk/examples/java/Storage/Test04.java
@@ -142,7 +142,7 @@ public class Test04 implements StorageTest {
if ( !m_aTestHelper.copyElementTo( xTempStorage, "SubStorage1", xTempFileStorage ) )
return false;
- // if storage is not commited before disposing all the changes will be lost
+ // if storage is not committed before disposing all the changes will be lost
if ( !m_aTestHelper.commitStorage( xTempSubStorage2 ) )
return false;
diff --git a/odk/examples/java/Storage/Test07.java b/odk/examples/java/Storage/Test07.java
index 753ad803856d..ad8b7559e697 100644
--- a/odk/examples/java/Storage/Test07.java
+++ b/odk/examples/java/Storage/Test07.java
@@ -96,7 +96,7 @@ public class Test07 implements StorageTest {
}
// copy xTempStorage to xTempFileStorage
- // xTempFileStorage will be automatically commited
+ // xTempFileStorage will be automatically committed
if ( !m_aTestHelper.copyStorage( xTempStorage, xTempFileStorage ) )
return false;
diff --git a/odk/examples/java/Storage/Test08.java b/odk/examples/java/Storage/Test08.java
index d8f0b52f9602..c8054fb24ed8 100644
--- a/odk/examples/java/Storage/Test08.java
+++ b/odk/examples/java/Storage/Test08.java
@@ -151,7 +151,7 @@ public class Test08 implements StorageTest {
}
// copy xTempStorage to xTempFileStorage
- // xTempFileStorage will be automatically commited
+ // xTempFileStorage will be automatically committed
if ( !m_aTestHelper.copyStorage( xTempStorage, xTempFileStorage ) )
return false;
diff --git a/odk/examples/java/Storage/Test09.java b/odk/examples/java/Storage/Test09.java
index e31b810ba083..0d93cdd4d142 100644
--- a/odk/examples/java/Storage/Test09.java
+++ b/odk/examples/java/Storage/Test09.java
@@ -93,7 +93,7 @@ public class Test09 implements StorageTest {
}
// copy xTempStorage to xTempFileStorage
- // xTempFileStorage will be automatically commited
+ // xTempFileStorage will be automatically committed
if ( !m_aTestHelper.copyStorage( xTempStorage, xTempFileStorage ) )
return false;
diff --git a/odk/examples/java/Text/GraphicsInserter.java b/odk/examples/java/Text/GraphicsInserter.java
index 7676cd16f938..3f8c5c734647 100644
--- a/odk/examples/java/Text/GraphicsInserter.java
+++ b/odk/examples/java/Text/GraphicsInserter.java
@@ -66,7 +66,7 @@ public class GraphicsInserter {
(com.sun.star.frame.XComponentLoader)UnoRuntime.queryInterface(
com.sun.star.frame.XComponentLoader.class, xDesktop);
- // Load a Writer document, which will be automaticly displayed
+ // Load a Writer document, which will be automatically displayed
com.sun.star.lang.XComponent xComp = xCompLoader.loadComponentFromURL(
"private:factory/swriter", "_blank", 0,
new com.sun.star.beans.PropertyValue[0]);
diff --git a/odk/examples/java/ToDo/ToDo.java b/odk/examples/java/ToDo/ToDo.java
index 9a50cc0627fd..789d129aadde 100644
--- a/odk/examples/java/ToDo/ToDo.java
+++ b/odk/examples/java/ToDo/ToDo.java
@@ -905,7 +905,7 @@ public class ToDo {
/** Writing the stack trace from an exception to a string and calling
* the method showMessage() with this string.
- * @param exception The occured exception.
+ * @param exception The occurred exception.
* @see showMessage
*/
public void showExceptionMessage( Exception exception ) {
diff --git a/odk/setsdkenv_unix.sh.in b/odk/setsdkenv_unix.sh.in
index 96ced44d6b9a..6c011700fedf 100644
--- a/odk/setsdkenv_unix.sh.in
+++ b/odk/setsdkenv_unix.sh.in
@@ -20,7 +20,7 @@
#
###############################################################
-# This script starts a new shell and sets all enviroment variables, which
+# This script starts a new shell and sets all environment variables, which
# are necessary for building the examples of the Office Development Kit.
# The Script was developed for the operating systems Solaris, Linux and MacOS.
diff --git a/odk/setsdkenv_windows.template b/odk/setsdkenv_windows.template
index ffbdf79b6e35..9a31341e8965 100644
--- a/odk/setsdkenv_windows.template
+++ b/odk/setsdkenv_windows.template
@@ -19,7 +19,7 @@ rem under the License.
rem
rem *************************************************************
@echo off
-REM This script sets all enviroment variables, which
+REM This script sets all environment variables, which
REM are necessary for building the examples of the Office Development Kit.
REM The Script was developed for the operating systems Windows.
REM The SDK name
diff --git a/odk/settings/platform.mk b/odk/settings/platform.mk
index d4ec86916c04..e026f15c5591 100644
--- a/odk/settings/platform.mk
+++ b/odk/settings/platform.mk
@@ -46,6 +46,9 @@ else
ifeq "$(UNOPKG_PLATFORM)" "MacOSX_x86"
EXTENSION_PLATFORM=macosx_x86
else
+ ifeq "$(UNOPKG_PLATFORM)" "MacOSX_x86_64"
+ EXTENSION_PLATFORM=macosx_x86_64
+ else
ifeq "$(UNOPKG_PLATFORM)" "Solaris_SPARC"
EXTENSION_PLATFORM=solaris_sparc
else
@@ -63,13 +66,5 @@ else
endif
endif
endif
+ endif
endif
-
-#ifeq "$(UNOPKG_PLATFORM)" "Linux_SPARC"
-# EXTENSION_PLATFORM=
-#ifeq "$(UNOPKG_PLATFORM)" "Solaris_SPARC64"
-# EXTENSION_PLATFORM=
-#ifeq "$(UNOPKG_PLATFORM)" "kFreeBSD_x86"
-# EXTENSION_PLATFORM=
-#ifeq "$(UNOPKG_PLATFORM)" "kFreeBSD_x86_64"
-# EXTENSION_PLATFORM=
diff --git a/odk/source/com/sun/star/lib/loader/InstallationFinder.java b/odk/source/com/sun/star/lib/loader/InstallationFinder.java
index 3ccc2f0aa7f8..120b54f8c32b 100644
--- a/odk/source/com/sun/star/lib/loader/InstallationFinder.java
+++ b/odk/source/com/sun/star/lib/loader/InstallationFinder.java
@@ -44,7 +44,7 @@ import java.util.Vector;
* installation.
* Note, that Java 1.3.1 and Java 1.4 don't support environment variables
* (System.getenv() throws java.lang.Error) and therefore setting the UNO_PATH
- * enviroment variable won't work with those Java versions.
+ * environment variable won't work with those Java versions.
* If no UNO installation is specified by the user, the default installation
* on the system will be returned.</p>
*
@@ -75,7 +75,7 @@ final class InstallationFinder {
* Gets the path of a UNO installation.
*
* @return the installation path or <code>null</code>, if no installation
- * was specified or found, or if an error occured
+ * was specified or found, or if an error occurred
*/
public static String getPath() {
@@ -136,7 +136,7 @@ final class InstallationFinder {
* java -D<property name>=<installation path> -jar application.jar.</p>
*
* @return the installation path or <code>null</code>, if no installation
- * was specified in the Java system property or if an error occured
+ * was specified in the Java system property or if an error occurred
*/
private static String getPathFromProperty( String prop ) {
@@ -160,7 +160,7 @@ final class InstallationFinder {
* Java versions.</p>
*
* @return the installation path or <code>null</code>, if no installation
- * was specified in the environment variable or if an error occured
+ * was specified in the environment variable or if an error occurred
*/
private static String getPathFromEnvVar( String var ) {
@@ -184,7 +184,7 @@ final class InstallationFinder {
* <p>This method is called on the Windows platform only.</p>
*
* @return the installation path or <code>null</code>, if no installation
- * was found or if an error occured
+ * was found or if an error occurred
*/
private static String getPathFromWindowsRegistry() {
@@ -238,7 +238,7 @@ final class InstallationFinder {
* Java versions.</p>
*
* @return the installation path or <code>null</code>, if no installation
- * was found or if an error occured
+ * was found or if an error occurred
*/
private static String getPathFromPathEnvVar() {
@@ -297,7 +297,7 @@ final class InstallationFinder {
* is in one of the directories listed in the PATH environment variable.</p>
*
* @return the installation path or <code>null</code>, if no installation
- * was found or if an error occured
+ * was found or if an error occurred
*/
private static String getPathFromWhich() {
@@ -323,7 +323,7 @@ final class InstallationFinder {
return null;
}
- // empty standard error stream in a seperate thread
+ // empty standard error stream in a separate thread
StreamGobbler gobbler = new StreamGobbler( proc.getErrorStream() );
gobbler.start();
@@ -393,7 +393,7 @@ final class InstallationFinder {
* OOo 2.0.</p>
*
* @return the installation path or <code>null</code>, if no installation
- * was found or if an error occured
+ * was found or if an error occurred
*/
private static String getPathFromSVersionFile() {
diff --git a/odk/source/unoapploader/unx/unoapploader.c b/odk/source/unoapploader/unx/unoapploader.c
index 44b7970fa392..552c8784a2d7 100644
--- a/odk/source/unoapploader/unx/unoapploader.c
+++ b/odk/source/unoapploader/unx/unoapploader.c
@@ -232,7 +232,7 @@ int main( int argc, char *argv[] )
* Gets the path of a UNO installation.
*
* @return the installation path or NULL, if no installation was specified or
- * found, or if an error occured
+ * found, or if an error occurred
*/
char const* getPath()
{
@@ -255,7 +255,7 @@ char const* getPath()
*
* @param argv0 specifies the argv[0] parameter of the main function
*
- * @return the application's executable file name or NULL, if an error occured
+ * @return the application's executable file name or NULL, if an error occurred
*/
char* createCommandName( char* argv0 )
{
diff --git a/odk/source/unoapploader/win/unoapploader.c b/odk/source/unoapploader/win/unoapploader.c
index abcd0e7e3136..0fcfb742f6e3 100644
--- a/odk/source/unoapploader/win/unoapploader.c
+++ b/odk/source/unoapploader/win/unoapploader.c
@@ -155,7 +155,7 @@ int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,
* Gets the path of a UNO installation.
*
* @return the installation path or NULL, if no installation was specified or
- * found, or if an error occured
+ * found, or if an error occurred
*/
char const* getPath()
{
@@ -178,7 +178,7 @@ char const* getPath()
* the executable name
*
* @return the command line for the application process or NULL, if an error
- * occured
+ * occurred
*/
char* createCommandLine( char* appendix )
{
diff --git a/offapi/com/sun/star/accessibility/AccessibleEventId.idl b/offapi/com/sun/star/accessibility/AccessibleEventId.idl
index 3caf103af92f..39584ead97ec 100644
--- a/offapi/com/sun/star/accessibility/AccessibleEventId.idl
+++ b/offapi/com/sun/star/accessibility/AccessibleEventId.idl
@@ -164,7 +164,7 @@ published constants AccessibleEventId
<member>AccessibleEventObject::OldValue</member> and
<member>AccessibleEventObject::NewValue</member> field contain the
old and new value as a number. Its exact type is implementation
- dependant but has to be the same as is returned by the
+ dependent but has to be the same as is returned by the
<member>XAccessibleValue::getCurrentValue</member> function.
*/
@@ -175,7 +175,7 @@ published constants AccessibleEventId
<p>Not used: The <member>AccessibleEventObject::OldValue</member> and
<member>AccessibleEventObject::NewValue</member> fields contain
- refrences to the old and new predecessor. Note that both references
+ references to the old and new predecessor. Note that both references
my be <NULL/> to indicate that a flow to the sending object has not
existed or does not exist anymore.</p>
*/
@@ -186,7 +186,7 @@ published constants AccessibleEventId
<p>Not used: The <member>AccessibleEventObject::OldValue</member> and
<member>AccessibleEventObject::NewValue</member> fields contain
- refrences to the old and new successor. Note that both references
+ references to the old and new successor. Note that both references
my be <NULL/> to indicate that a flow from the sending object has not
existed or does not exist anymore.</p>
*/
diff --git a/offapi/com/sun/star/accessibility/AccessibleEventObject.idl b/offapi/com/sun/star/accessibility/AccessibleEventObject.idl
index 37d357067f98..eb4c252eda73 100644
--- a/offapi/com/sun/star/accessibility/AccessibleEventObject.idl
+++ b/offapi/com/sun/star/accessibility/AccessibleEventObject.idl
@@ -33,7 +33,7 @@ module com { module sun { module star { module accessibility {
the <type>XAccessibleEventBroadcaster</type> and notified to
<type>XAccessibleEventListener</type>.
- <p>It is usualy implemented by <type>AccessibleContext</type>.
+ <p>It is usually implemented by <type>AccessibleContext</type>.
@since OpenOffice 1.1.2
*/
diff --git a/offapi/com/sun/star/accessibility/AccessibleRelationType.idl b/offapi/com/sun/star/accessibility/AccessibleRelationType.idl
index a23601c75e88..2b824f397e66 100644
--- a/offapi/com/sun/star/accessibility/AccessibleRelationType.idl
+++ b/offapi/com/sun/star/accessibility/AccessibleRelationType.idl
@@ -27,7 +27,7 @@ module com { module sun { module star { module accessibility {
/** Collection of relation types.
- <p>This list of constants defines the availabe types of relations that
+ <p>This list of constants defines the available types of relations that
are usable by <type>AccessibleRelation</type>.</p>
<p>We are using constants instead of a more typesafe enum. The reason
diff --git a/offapi/com/sun/star/accessibility/AccessibleRole.idl b/offapi/com/sun/star/accessibility/AccessibleRole.idl
index 13ea173d6927..86f220301b1d 100644
--- a/offapi/com/sun/star/accessibility/AccessibleRole.idl
+++ b/offapi/com/sun/star/accessibility/AccessibleRole.idl
@@ -148,7 +148,7 @@ published constants AccessibleRole
*/
const short DOCUMENT = 13;
- /** Embeded (OLE) object.
+ /** Embedded (OLE) object.
*/
const short EMBEDDED_OBJECT = 14;
diff --git a/offapi/com/sun/star/accessibility/XAccessible.idl b/offapi/com/sun/star/accessibility/XAccessible.idl
index 889edeccc9b7..edfce5e85dcb 100644
--- a/offapi/com/sun/star/accessibility/XAccessible.idl
+++ b/offapi/com/sun/star/accessibility/XAccessible.idl
@@ -43,7 +43,7 @@ module com { module sun { module star { module accessibility {
<type>XAccessibleContext</type> makes it possible to split up the
implementation of the
class that is made accessible and the actual accessibility code into two
- (mostly) independant parts. The only necessary dependance is the
+ (mostly) independent parts. The only necessary dependence is the
<member scope="XAccessible">getAccessibleContext()</member> function
that returns the accessible context. This one-way link has to be
persistant in some sense: As long as there is at least one reference to
@@ -63,7 +63,7 @@ published interface XAccessible : ::com::sun::star::uno::XInterface
<p>The idea to let this interface only return an
<type>XAccessibleContext</type> instead of directly supporting its
- functions is to allow the seperation of the implementation of the
+ functions is to allow the separation of the implementation of the
functions that make a class accessible from the implementation of
that class. You may, of course, implement <type>XAccessible</type>
and <type>XAccessibleContext</type> in one class.</p>
diff --git a/offapi/com/sun/star/accessibility/XAccessibleContext.idl b/offapi/com/sun/star/accessibility/XAccessibleContext.idl
index cfc9b5b3106c..6f233f9b8926 100644
--- a/offapi/com/sun/star/accessibility/XAccessibleContext.idl
+++ b/offapi/com/sun/star/accessibility/XAccessibleContext.idl
@@ -167,7 +167,7 @@ published interface XAccessibleContext : ::com::sun::star::uno::XInterface
empty list.
@return
- The returned value is either an empty referece or a reference to
+ The returned value is either an empty reference or a reference to
a valid object that represents a copy of the objects list of
relations.
*/
diff --git a/offapi/com/sun/star/accessibility/XAccessibleRelationSet.idl b/offapi/com/sun/star/accessibility/XAccessibleRelationSet.idl
index cd69161504f5..bd5f4d5b3b62 100644
--- a/offapi/com/sun/star/accessibility/XAccessibleRelationSet.idl
+++ b/offapi/com/sun/star/accessibility/XAccessibleRelationSet.idl
@@ -39,7 +39,7 @@ module com { module sun { module star { module accessibility {
/** Implement this interface to give access to an object's set of relations.
- <p>Such relation are modeled with the <type>AccessibleRelation</type>
+ <p>Such relations are modelled with the <type>AccessibleRelation</type>
structure. This interface is used for representing sets of relations
between <type>Accessible</type> objects. Most of the convenience
methods of the corresponding AccessibleRelationSet interface of the Java
diff --git a/offapi/com/sun/star/accessibility/XAccessibleStateSet.idl b/offapi/com/sun/star/accessibility/XAccessibleStateSet.idl
index 2a179d7d2240..6272ebe506de 100644
--- a/offapi/com/sun/star/accessibility/XAccessibleStateSet.idl
+++ b/offapi/com/sun/star/accessibility/XAccessibleStateSet.idl
@@ -63,7 +63,7 @@ published interface XAccessibleStateSet : ::com::sun::star::uno::XInterface
the constants of <type>AccessibleStateType</type>.
@return
- Returns <TRUE/> if the given state is a memeber of this object's
+ Returns <TRUE/> if the given state is a member of this object's
state set and <FALSE/> otherwise.
*/
boolean contains ([in] short aState);
diff --git a/offapi/com/sun/star/accessibility/XAccessibleText.idl b/offapi/com/sun/star/accessibility/XAccessibleText.idl
index d0d2ba379b1f..29c9b97b8a25 100644
--- a/offapi/com/sun/star/accessibility/XAccessibleText.idl
+++ b/offapi/com/sun/star/accessibility/XAccessibleText.idl
@@ -165,7 +165,7 @@ published interface XAccessibleText : ::com::sun::star::uno::XInterface
character then they are ignored, too.
<p>An empty sequence signals the callers interest in all the
- attributes. This is usefull in two cases: a) Simply as a way to
+ attributes. This is useful in two cases: a) Simply as a way to
avoid passing a potentially large array to the called object or
b) when the caller does not know what attributes the called
objects supports but is interested in all of them
@@ -200,7 +200,7 @@ published interface XAccessibleText : ::com::sun::star::uno::XInterface
represents the current input position and will therefore typically
be queried by AT more often than other positions. Because it does
not represent an existing character its bounding box is defined in
- relation to preceding characters. It should be rougly equivalent to
+ relation to preceding characters. It should be roughly equivalent to
the bounding box of some character when inserted at the end of the
text. Its height typically being the maximal height of all the
characters in the text or the height of the preceding character, its
diff --git a/offapi/com/sun/star/animations/AnimationNodeType.idl b/offapi/com/sun/star/animations/AnimationNodeType.idl
index 8356d6488d60..8a309dd36fbc 100644
--- a/offapi/com/sun/star/animations/AnimationNodeType.idl
+++ b/offapi/com/sun/star/animations/AnimationNodeType.idl
@@ -31,7 +31,7 @@
/** This constants defines a type for an animation node.
<br>
- It can be used to quickly identify semantic blocks inside an animation hierachy.
+ It can be used to quickly identify semantic blocks inside an animation hierarchy.
@see AnimationNode
*/
diff --git a/offapi/com/sun/star/animations/Event.idl b/offapi/com/sun/star/animations/Event.idl
index 9c6dd36fd5d1..5ffd82411495 100644
--- a/offapi/com/sun/star/animations/Event.idl
+++ b/offapi/com/sun/star/animations/Event.idl
@@ -53,7 +53,7 @@ struct Event
/** an option repeat value. If the <member>Trigger</member> is
<const>EventTrigger</const>, this is the number of repeats
- after wich the event is initially raised.
+ after which the event is initially raised.
*/
unsigned short Repeat;
};
diff --git a/offapi/com/sun/star/animations/XAnimationNode.idl b/offapi/com/sun/star/animations/XAnimationNode.idl
index 3ec875465821..99d8267cf4e4 100644
--- a/offapi/com/sun/star/animations/XAnimationNode.idl
+++ b/offapi/com/sun/star/animations/XAnimationNode.idl
@@ -47,7 +47,7 @@ published interface XAnimationNode : ::com::sun::star::container::XChild
*/
[readonly, attribute] short Type;
- /** a sequnece of values that define the begining of this element
+ /** a sequence of values that define the beginning of this element
<br>
<member>Begin</member> is
<ul>
@@ -111,7 +111,7 @@ published interface XAnimationNode : ::com::sun::star::container::XChild
children (e.g. animate or area elements).
<member>EndSync</member> is
- eiter a <atom>short</atom> constant from <const>EndSync</const>,
+ either a <atom>short</atom> constant from <const>EndSync</const>,
an interface reference to a child <type>XTimeContainer</type>
or <void/>.
diff --git a/offapi/com/sun/star/awt/AccessibleListBoxList.idl b/offapi/com/sun/star/awt/AccessibleListBoxList.idl
index 89902d0672ac..2bdc974bff8e 100644
--- a/offapi/com/sun/star/awt/AccessibleListBoxList.idl
+++ b/offapi/com/sun/star/awt/AccessibleListBoxList.idl
@@ -32,7 +32,7 @@
module com { module sun { module star { module awt {
/** Accessible list box lists are used by list boxes as container for
- the list items. In addtion of the simple container functionality of the
+ the list items. In addition of the simple container functionality of the
<type>AccessibleList</type> service the
<type scope="com::sun::star::accessibility">XAccessibleSelection</type> interface is supported.
diff --git a/offapi/com/sun/star/awt/Command.idl b/offapi/com/sun/star/awt/Command.idl
index 0c61a958fae0..129d616b7a53 100644
--- a/offapi/com/sun/star/awt/Command.idl
+++ b/offapi/com/sun/star/awt/Command.idl
@@ -54,7 +54,7 @@ published constants Command
//-------------------------------------------------------------------------
- /** specifies the begining of an auto scroll operation.
+ /** specifies the beginning of an auto scroll operation.
*/
const short STARTAUTOSCROLL = 4;
diff --git a/offapi/com/sun/star/awt/MenuItemType.idl b/offapi/com/sun/star/awt/MenuItemType.idl
index d667b891e1d7..390c4d5f132b 100644
--- a/offapi/com/sun/star/awt/MenuItemType.idl
+++ b/offapi/com/sun/star/awt/MenuItemType.idl
@@ -29,7 +29,7 @@ module com { module sun { module star { module awt {
*/
published enum MenuItemType
{
- /** specifies that the menu item type is unkown.
+ /** specifies that the menu item type is unknown.
*/
DONTKNOW,
diff --git a/offapi/com/sun/star/awt/UnoControlEditModel.idl b/offapi/com/sun/star/awt/UnoControlEditModel.idl
index cc63d5c590c6..fed04e3db75e 100644
--- a/offapi/com/sun/star/awt/UnoControlEditModel.idl
+++ b/offapi/com/sun/star/awt/UnoControlEditModel.idl
@@ -65,7 +65,7 @@ published service UnoControlEditModel
//-------------------------------------------------------------------------
- /** If set to true an horizontal scrollbar will be added automaticly
+ /** If set to true an horizontal scrollbar will be added automatically
when needed.
@since OpenOffice 2.3
@@ -74,7 +74,7 @@ published service UnoControlEditModel
//-------------------------------------------------------------------------
- /** If set to true an vertical scrollbar will be added automaticly
+ /** If set to true an vertical scrollbar will be added automatically
when needed.
@since OpenOffice 2.3
diff --git a/offapi/com/sun/star/awt/XExtendedToolkit.idl b/offapi/com/sun/star/awt/XExtendedToolkit.idl
index 99faa44ab9e8..e141ac2c5d23 100644
--- a/offapi/com/sun/star/awt/XExtendedToolkit.idl
+++ b/offapi/com/sun/star/awt/XExtendedToolkit.idl
@@ -141,7 +141,7 @@ published interface XExtendedToolkit : ::com::sun::star::uno::XInterface
/** Remove the specified listener from the list of listeners.
@param xListener
If the reference is empty then nothing will be changed. If the
- listener has been registered twice (or more) then all refrences
+ listener has been registered twice (or more) then all references
will be removed.
*/
[oneway] void removeTopWindowListener (
@@ -167,7 +167,7 @@ published interface XExtendedToolkit : ::com::sun::star::uno::XInterface
/** Remove the specified listener from the list of listeners.
@param xHandler
If the reference is empty then nothing will be changed. If the
- handler has been registered twice (or more) then all refrences
+ handler has been registered twice (or more) then all references
will be removed.
*/
[oneway] void removeKeyHandler (
@@ -193,7 +193,7 @@ published interface XExtendedToolkit : ::com::sun::star::uno::XInterface
/** Remove the specified listener from the list of listeners.
@param xListener
If the reference is empty then nothing will be changed. If the
- listener has been registered twice (or more) then all refrences
+ listener has been registered twice (or more) then all references
will be removed.
*/
[oneway] void removeFocusListener (
diff --git a/offapi/com/sun/star/awt/XFont.idl b/offapi/com/sun/star/awt/XFont.idl
index 6afb98e913a0..203ec31467e1 100644
--- a/offapi/com/sun/star/awt/XFont.idl
+++ b/offapi/com/sun/star/awt/XFont.idl
@@ -42,7 +42,7 @@
//=============================================================================
-/** decribes a font on a specific device.
+/** describes a font on a specific device.
<p>All values are in pixels within this device.</p>
*/
diff --git a/offapi/com/sun/star/awt/XItemListListener.idl b/offapi/com/sun/star/awt/XItemListListener.idl
index 24b3090b73de..27e03284e716 100644
--- a/offapi/com/sun/star/awt/XItemListListener.idl
+++ b/offapi/com/sun/star/awt/XItemListListener.idl
@@ -62,7 +62,7 @@ published interface XItemListListener : ::com::sun::star::lang::XEventListener
[in] ::com::sun::star::lang::EventObject Event
);
- /** is called when the changes to the item list which occured are too complex to be notified
+ /** is called when the changes to the item list which occurred are too complex to be notified
in single events.
<p>Consumers of this event should discard their cached information about the current item list,
diff --git a/offapi/com/sun/star/awt/XLayoutFlow.idl b/offapi/com/sun/star/awt/XLayoutFlow.idl
index 18c7ca20d78e..63b5a4f0373b 100644
--- a/offapi/com/sun/star/awt/XLayoutFlow.idl
+++ b/offapi/com/sun/star/awt/XLayoutFlow.idl
@@ -30,7 +30,7 @@ module com { module sun { module star { module awt {
//=============================================================================
-/** Enables height-for-width layout negociations, which allows for label wrapping
+/** Enables height-for-width layout negotiations, which allows for label wrapping
and flow containers. Can be implemented by either a container or an ordinary widget;
whether its parent will honor it is another story, so keep implementing
getMinimumSize().
@@ -39,7 +39,7 @@ module com { module sun { module star { module awt {
*/
interface XLayoutFlow
{
- /** returns the prefered high this layout element would need for the given width. */
+ /** returns the preferred high this layout element would need for the given width. */
long getHeightForWidth( [in] long Width );
/** Allow the container/widget to toggle the functionality. */
diff --git a/offapi/com/sun/star/awt/XMessageBoxFactory.idl b/offapi/com/sun/star/awt/XMessageBoxFactory.idl
index bf1b8b752a8d..1c77d623cf85 100644
--- a/offapi/com/sun/star/awt/XMessageBoxFactory.idl
+++ b/offapi/com/sun/star/awt/XMessageBoxFactory.idl
@@ -52,7 +52,7 @@ published interface XMessageBoxFactory : com::sun::star::uno::XInterface
<p>A combination of <type>MessageBoxButtons</type>.</p>
<p>A <member scope="com::sun::star::awt">MessageBoxType::INFOBOX</member>
- ignores this paramter, instead it uses a
+ ignores this parameter, instead it uses a
<member scope="com::sun::star::awt">MessageBoxButtons::BUTTONS_OK</member>.</p>
@param aTitle
diff --git a/offapi/com/sun/star/awt/XPopupMenu.idl b/offapi/com/sun/star/awt/XPopupMenu.idl
index ad2998ec0db5..e7f1b6278ee8 100644
--- a/offapi/com/sun/star/awt/XPopupMenu.idl
+++ b/offapi/com/sun/star/awt/XPopupMenu.idl
@@ -126,7 +126,7 @@ published interface XPopupMenu: XMenu
<p>The <type>KeyEvent</type> is <b>only</b> used as a container to transport
the shortcut information, this methods only draws the text corresponding to
this keyboard shortcut. The client code is responsible for listening to
- keyboard events (typicaly done via <type>XUserInputInterception</type>),
+ keyboard events (typically done via <type>XUserInputInterception</type>),
and dispatch the respective command.</p>
@param nItemId
diff --git a/offapi/com/sun/star/awt/XScrollBar.idl b/offapi/com/sun/star/awt/XScrollBar.idl
index 61d2c138aad8..a344edc52d95 100644
--- a/offapi/com/sun/star/awt/XScrollBar.idl
+++ b/offapi/com/sun/star/awt/XScrollBar.idl
@@ -64,7 +64,7 @@ published interface XScrollBar: com::sun::star::uno::XInterface
//-------------------------------------------------------------------------
/** sets the scroll value, visible area and maximum scroll value
- of the scoll bar.
+ of the scroll bar.
*/
[oneway] void setValues( [in] long nValue,
[in] long nVisible,
diff --git a/offapi/com/sun/star/awt/XSimpleTabController.idl b/offapi/com/sun/star/awt/XSimpleTabController.idl
index 9c520a17e579..5f30aa023a44 100644
--- a/offapi/com/sun/star/awt/XSimpleTabController.idl
+++ b/offapi/com/sun/star/awt/XSimpleTabController.idl
@@ -52,7 +52,7 @@ published interface XSimpleTabController : com::sun::star::uno::XInterface
{
//-------------------------------------------------------------------------
/** create a new tab and return an unique ID,
- which can be used further to adress this tab by using other methods
+ which can be used further to address this tab by using other methods
of this interface.
@return [long
@@ -67,7 +67,7 @@ published interface XSimpleTabController : com::sun::star::uno::XInterface
the ID of the tab, which should be removed.
@throws ::com::sun::star::lang::IndexOutOfBoundsException
- if the specified ID isnt used inside this tab controller.
+ if the specified ID isn't used inside this tab controller.
*/
void removeTab( [in] long ID )
raises( com::sun::star::lang::IndexOutOfBoundsException );
@@ -102,7 +102,7 @@ published interface XSimpleTabController : com::sun::star::uno::XInterface
the ID of the tab, which should be changed.
@throws ::com::sun::star::lang::IndexOutOfBoundsException
- if the specified ID isnt used inside this tab controller.
+ if the specified ID isn't used inside this tab controller.
*/
void setTabProps( [in] long ID ,
[in] sequence< com::sun::star::beans::NamedValue > Properties )
@@ -115,7 +115,7 @@ published interface XSimpleTabController : com::sun::star::uno::XInterface
the ID of the tab.
@throws ::com::sun::star::lang::IndexOutOfBoundsException
- if the specified ID isnt used inside this tab controller.
+ if the specified ID isn't used inside this tab controller.
*/
sequence< com::sun::star::beans::NamedValue > getTabProps( [in] long ID )
raises( com::sun::star::lang::IndexOutOfBoundsException );
@@ -131,7 +131,7 @@ published interface XSimpleTabController : com::sun::star::uno::XInterface
the ID of the new active tab.
@throws ::com::sun::star::lang::IndexOutOfBoundsException
- if the specified ID isnt used inside this tab controller.
+ if the specified ID isn't used inside this tab controller.
*/
void activateTab( [in] long ID )
raises( com::sun::star::lang::IndexOutOfBoundsException );
diff --git a/offapi/com/sun/star/awt/XUserInputInterception.idl b/offapi/com/sun/star/awt/XUserInputInterception.idl
index 3017598b2b04..da13c44e2e68 100644
--- a/offapi/com/sun/star/awt/XUserInputInterception.idl
+++ b/offapi/com/sun/star/awt/XUserInputInterception.idl
@@ -62,7 +62,7 @@ published interface XUserInputInterception : ::com::sun::star::uno::XInterface
/** Remove the specified listener from the list of listeners.
@param xHandler
If the reference is empty then nothing will be changed. If the
- handler has been registered twice (or more) then all refrences
+ handler has been registered twice (or more) then all references
will be removed.
*/
[oneway] void removeKeyHandler (
@@ -84,7 +84,7 @@ published interface XUserInputInterception : ::com::sun::star::uno::XInterface
/** Remove the specified listener from the list of listeners.
@param xHandler
If the reference is empty then nothing will be changed. If the
- handler has been registered twice (or more) then all refrences
+ handler has been registered twice (or more) then all references
will be removed.
*/
[oneway] void removeMouseClickHandler (
diff --git a/offapi/com/sun/star/awt/grid/SortableGridDataModel.idl b/offapi/com/sun/star/awt/grid/SortableGridDataModel.idl
index de067372113a..31086e2a96d8 100755
--- a/offapi/com/sun/star/awt/grid/SortableGridDataModel.idl
+++ b/offapi/com/sun/star/awt/grid/SortableGridDataModel.idl
@@ -48,7 +48,7 @@ interface XMutableGridDataModel;
in this column is taken into account. Further read requests to this column will assume that all non-<VOID/> data is of
the same type.</p>
- <p>Consequently, you cannot use this service with data sets containing heterogenous data in a given column.</p>
+ <p>Consequently, you cannot use this service with data sets containing heterogeneous data in a given column.</p>
<p>All requests made via the <type>XMutableGridDataModel</type> are delegated to the <code>XMutableGridDataModel</code>
instance passed in the service constructor.</p>
diff --git a/offapi/com/sun/star/awt/grid/XGridColumn.idl b/offapi/com/sun/star/awt/grid/XGridColumn.idl
index 32fa84983a00..730f4a9492bd 100644
--- a/offapi/com/sun/star/awt/grid/XGridColumn.idl
+++ b/offapi/com/sun/star/awt/grid/XGridColumn.idl
@@ -96,7 +96,7 @@ published interface XGridColumn
*/
[attribute] ::com::sun::star::style::HorizontalAlignment HorizontalAlign;
- /** A title is displayed in the colum header row if <method>UnoControlGridModel::ShowColumnHeader</method> is set to <true/>**/
+ /** A title is displayed in the column header row if <method>UnoControlGridModel::ShowColumnHeader</method> is set to <true/>**/
[attribute] string Title;
/** is the help text associated with the column.
diff --git a/offapi/com/sun/star/awt/grid/XGridRowSelection.idl b/offapi/com/sun/star/awt/grid/XGridRowSelection.idl
index f508c2e4d312..15350deb1be7 100644
--- a/offapi/com/sun/star/awt/grid/XGridRowSelection.idl
+++ b/offapi/com/sun/star/awt/grid/XGridRowSelection.idl
@@ -65,9 +65,9 @@ published interface XGridRowSelection
void deselectRow( [in] long RowIndex )
raises ( ::com::sun::star::lang::IndexOutOfBoundsException );
- /** Returns the indicies of all selected rows.
+ /** Returns the indices of all selected rows.
@returns
- a sequence of indicies.
+ a sequence of indices.
*/
sequence< long > getSelectedRows();
diff --git a/offapi/com/sun/star/awt/tree/XTreeExpansionListener.idl b/offapi/com/sun/star/awt/tree/XTreeExpansionListener.idl
index 9d7fd61a16bc..6cf24243d8b5 100644
--- a/offapi/com/sun/star/awt/tree/XTreeExpansionListener.idl
+++ b/offapi/com/sun/star/awt/tree/XTreeExpansionListener.idl
@@ -74,10 +74,10 @@ published interface XTreeExpansionListener: com::sun::star::lang::XEventListener
void treeCollapsing( [in] TreeExpansionEvent Event )
raises ( ExpandVetoException );
- /** Called whenever a node in the tree has been succesfully expanded. */
+ /** Called whenever a node in the tree has been successfully expanded. */
void treeExpanded( [in] TreeExpansionEvent Event );
- /** Called whenever a node in the tree has been succesfully collapsed. */
+ /** Called whenever a node in the tree has been successfully collapsed. */
void treeCollapsed( [in] TreeExpansionEvent Event );
};
diff --git a/offapi/com/sun/star/chart/ChartAxis.idl b/offapi/com/sun/star/chart/ChartAxis.idl
index ee73b5f8c804..07a80be5e106 100644
--- a/offapi/com/sun/star/chart/ChartAxis.idl
+++ b/offapi/com/sun/star/chart/ChartAxis.idl
@@ -187,7 +187,7 @@ published service ChartAxis
//-------------------------------------------------------------------------
- /** if the current axis is a date-axis the intervals are choosen as given with TimeIncrement
+ /** if the current axis is a date-axis the intervals are chosen as given with TimeIncrement
@since OpenOffice 3.4
*/
[optional, maybevoid, property] TimeIncrement TimeIncrement;
diff --git a/offapi/com/sun/star/chart/ChartAxisType.idl b/offapi/com/sun/star/chart/ChartAxisType.idl
index c5d3878fe061..2f1e56ed5d04 100644
--- a/offapi/com/sun/star/chart/ChartAxisType.idl
+++ b/offapi/com/sun/star/chart/ChartAxisType.idl
@@ -35,7 +35,7 @@ module chart
*/
published constants ChartAxisType
{
- /** the type of the axis is choosen automatically dependent on the chart type, the dimension and the underlying data
+ /** the type of the axis is chosen automatically dependent on the chart type, the dimension and the underlying data
*/
const long AUTOMATIC = 0;
diff --git a/offapi/com/sun/star/chart/TimeIncrement.idl b/offapi/com/sun/star/chart/TimeIncrement.idl
index e1e1fff0a2d5..c66be676d7ef 100644
--- a/offapi/com/sun/star/chart/TimeIncrement.idl
+++ b/offapi/com/sun/star/chart/TimeIncrement.idl
@@ -51,7 +51,7 @@ published struct TimeIncrement
/** if the any contains a constant of type <type>::com::sun::star::chart::TimeUnit</type>
this is the smallest time unit that is displayed on the date-time axis.
Otherwise, if the any is empty or contains an incompatible type,
- the resolution is choosen automatically by the application.
+ the resolution is chosen automatically by the application.
*/
any TimeResolution;
};
diff --git a/offapi/com/sun/star/chart2/data/DataSequenceRole.idl b/offapi/com/sun/star/chart2/data/DataSequenceRole.idl
index d68659f661e4..9caae2d1d068 100644
--- a/offapi/com/sun/star/chart2/data/DataSequenceRole.idl
+++ b/offapi/com/sun/star/chart2/data/DataSequenceRole.idl
@@ -84,11 +84,11 @@ module data
would be the closing course.</dd>
<dt>values-min</dt>
<dd>the minimum value of a series of values. In a stock-chart
- this would be the lowest course that occured during
+ this would be the lowest course that occurred during
trading.</dd>
<dt>values-max</dt>
<dd>the maximum value of a series of values. In a stock-chart
- this would be the highest course that occured during
+ this would be the highest course that occurred during
trading.</dd>
</dl>
*/
diff --git a/offapi/com/sun/star/chart2/data/TabularDataProviderArguments.idl b/offapi/com/sun/star/chart2/data/TabularDataProviderArguments.idl
index d714c1312b0d..627ca95164c5 100644
--- a/offapi/com/sun/star/chart2/data/TabularDataProviderArguments.idl
+++ b/offapi/com/sun/star/chart2/data/TabularDataProviderArguments.idl
@@ -42,7 +42,7 @@ service TabularDataProviderArguments
{
/** the range address string spanning all data.
- <p>The range adress string must be interpretable by the
+ <p>The range address string must be interpretable by the
component that implements <type>XDataProvider</type> and gets
this property as argument to
<member>XDataProvider::detectArguments</member>.</p>
diff --git a/offapi/com/sun/star/chart2/data/XDatabaseDataProvider.idl b/offapi/com/sun/star/chart2/data/XDatabaseDataProvider.idl
index 8a08ac48d029..f6b4ef93d4ce 100644
--- a/offapi/com/sun/star/chart2/data/XDatabaseDataProvider.idl
+++ b/offapi/com/sun/star/chart2/data/XDatabaseDataProvider.idl
@@ -100,7 +100,7 @@ interface XDatabaseDataProvider
master field.<br/>
If a string in this property denotes both a column name and a parameter name, it
is undefined which way it is interpreted, but implementations of the service are required
- to either decide for the paramter or the column, and proceed as usual.
+ to either decide for the parameter or the column, and proceed as usual.
</p>
<p>The columns specified herein typically represent a part of the primary key
fields or their aliases of the detail report.</p>
@@ -138,7 +138,7 @@ interface XDatabaseDataProvider
*/
[attribute,bound] long CommandType;
- /** specifies an addtional filter to optinally use.
+ /** specifies an additional filter to optinally use.
<p>The Filter string has to form a SQL WHERE-clause, <em>without</em> the WHERE-string itself.</p>
diff --git a/offapi/com/sun/star/configuration/AdministrationProvider.idl b/offapi/com/sun/star/configuration/AdministrationProvider.idl
index a823d0a9fa89..f2983b2961c0 100644
--- a/offapi/com/sun/star/configuration/AdministrationProvider.idl
+++ b/offapi/com/sun/star/configuration/AdministrationProvider.idl
@@ -123,7 +123,7 @@ published service AdministrationProvider
accept a single argument named <code>nodepath</code> of type <atom>string</atom>.
This argument must contain the absolute path to an element of the
configuration. The view that is selected consists of the named element and
- all its decendants. The administrative entity is the default for the
+ all its descendants. The administrative entity is the default for the
<type>AdministrationProvider</type>. Usually this is the largest entity
encompassing all entities accessible from this instance. In other words this
can be used to influence as global a scope as possible.
@@ -145,7 +145,7 @@ published service AdministrationProvider
the locale set up for the user. But this service by default gets data for all
locales for which data is present. Locale-dependent values in this case are
replaced by a <type>SetAccess</type> using the language names as accessors.
- This also allows targetted setting of values for selected locales.
+ This also allows targeted setting of values for selected locales.
This behavior can be requested explicitly by specifing a special argument
value <code>locale = "*"</code>.
</p>
diff --git a/offapi/com/sun/star/configuration/ConfigurationProvider.idl b/offapi/com/sun/star/configuration/ConfigurationProvider.idl
index 42066114edc8..042b849c6272 100644
--- a/offapi/com/sun/star/configuration/ConfigurationProvider.idl
+++ b/offapi/com/sun/star/configuration/ConfigurationProvider.idl
@@ -105,7 +105,7 @@ published service ConfigurationProvider
accept a single argument named <code>nodepath</code> of type <atom>string</atom>.
This argument must contain the absolute path to an element of the
configuration. The view that is selected consists of the named element and
- all its decendants.
+ all its descendants.
</p>
<p>Other arguments can be used to control the behavior of the view. These
diff --git a/offapi/com/sun/star/configuration/ConfigurationRegistry.idl b/offapi/com/sun/star/configuration/ConfigurationRegistry.idl
index 1a2ac1b19ae9..e9a16d84f87c 100644
--- a/offapi/com/sun/star/configuration/ConfigurationRegistry.idl
+++ b/offapi/com/sun/star/configuration/ConfigurationRegistry.idl
@@ -82,7 +82,7 @@ published service ConfigurationRegistry
/** is used to commit changes to the configuration.
<p>As specified for the
<type scope="com::sun::star::configuration">ConfigurationUpdateAccess</type>
- service, all changes made to an configuration subtree have to be commited
+ service, all changes made to an configuration subtree have to be committed
before they become persistent.
To do this for a configuration accessed as a registry, call
<method scope="com::sun::star::util">XFlushable::flush</method>.
diff --git a/offapi/com/sun/star/configuration/HierarchyAccess.idl b/offapi/com/sun/star/configuration/HierarchyAccess.idl
index 91fe8e7fedd0..7c2de3ad36eb 100644
--- a/offapi/com/sun/star/configuration/HierarchyAccess.idl
+++ b/offapi/com/sun/star/configuration/HierarchyAccess.idl
@@ -107,7 +107,7 @@ published service HierarchyAccess
any other interfaces that allow access to or manipulation of subnodes
selected by name or hierarchical name.
</p>
- <p>If an inexact name could be matched to either a simple or a hierachical
+ <p>If an inexact name could be matched to either a simple or a hierarchical
name, the simple (immediate child) name is preferred.
</p>
*/
diff --git a/offapi/com/sun/star/configuration/backend/XBackendChangesNotifier.idl b/offapi/com/sun/star/configuration/backend/XBackendChangesNotifier.idl
index 4fc6154650fd..8e5ebea2ae49 100644
--- a/offapi/com/sun/star/configuration/backend/XBackendChangesNotifier.idl
+++ b/offapi/com/sun/star/configuration/backend/XBackendChangesNotifier.idl
@@ -44,7 +44,7 @@ module com { module sun { module star { module configuration { module backen
interface XBackendChangesNotifier: com::sun::star::uno::XInterface
{
//-------------------------------------------------------------------------
- /** adds the specified listener to receive events when changes occured.
+ /** adds the specified listener to receive events when changes occurred.
@param aListener
specifies the listener object.
diff --git a/offapi/com/sun/star/configuration/bootstrap/BootstrapContext.idl b/offapi/com/sun/star/configuration/bootstrap/BootstrapContext.idl
index 4b6930d7e11c..1e631ec7bc3a 100644
--- a/offapi/com/sun/star/configuration/bootstrap/BootstrapContext.idl
+++ b/offapi/com/sun/star/configuration/bootstrap/BootstrapContext.idl
@@ -43,7 +43,7 @@ module com { module sun { module star { module configuration { module bootstrap
<type scope="com::sun::star::configuration::backend">DefaultBackend</type> of the
component context.
</p>
- <p> The implementation is usally available as singleton in the context
+ <p> The implementation is usually available as a singleton in the context
that it wraps..
</p>
diff --git a/offapi/com/sun/star/datatransfer/XDataFormatTranslator.idl b/offapi/com/sun/star/datatransfer/XDataFormatTranslator.idl
index 62f7a49c9ce7..cb295af84ec4 100644
--- a/offapi/com/sun/star/datatransfer/XDataFormatTranslator.idl
+++ b/offapi/com/sun/star/datatransfer/XDataFormatTranslator.idl
@@ -69,7 +69,7 @@ published interface XDataFormatTranslator : com::sun::star::uno::XInterface
@returns
A <type>DataFlavor</type> for the given system dependent data transfer type.
- <p>If there is no appropriate mapping for a sytem dependent data type, the returned <type>DataFlavor</type> will be empty.</p>
+ <p>If there is no appropriate mapping for a system dependent data type, the returned <type>DataFlavor</type> will be empty.</p>
*/
DataFlavor getDataFlavorFromSystemDataType( [in] any aSysDataType );
};
diff --git a/offapi/com/sun/star/datatransfer/clipboard/RenderingCapabilities.idl b/offapi/com/sun/star/datatransfer/clipboard/RenderingCapabilities.idl
index ca9b36e2e1d3..d567db289686 100644
--- a/offapi/com/sun/star/datatransfer/clipboard/RenderingCapabilities.idl
+++ b/offapi/com/sun/star/datatransfer/clipboard/RenderingCapabilities.idl
@@ -42,7 +42,7 @@ published constants RenderingCapabilities
const byte Delayed = 1;
//-------------------------------------------------------------------------
- /** The implementation is able to store the data persistant in the system
+ /** The implementation is able to store the data persistent in the system
so that it does not get lost when the source application no longer exist.
*/
const byte Persistant = 2;
diff --git a/offapi/com/sun/star/deployment/InvalidRemovedParameterException.idl b/offapi/com/sun/star/deployment/InvalidRemovedParameterException.idl
index dd3ff28226d7..fa509c73664c 100644
--- a/offapi/com/sun/star/deployment/InvalidRemovedParameterException.idl
+++ b/offapi/com/sun/star/deployment/InvalidRemovedParameterException.idl
@@ -45,7 +45,7 @@ exception InvalidRemovedParameterException: com::sun::star::uno::Exception {
boolean PreviousValue;
/**
the <type>XPackage</type> that was already bound to the provided
- <code>url</code> paramter during
+ <code>url</code> parameter during
<member>XPackageRegistry::bindPackage</member>.
<p>Must not be <NULL/>.</p>
diff --git a/offapi/com/sun/star/deployment/XPackageInformationProvider.idl b/offapi/com/sun/star/deployment/XPackageInformationProvider.idl
index 37bd8f8d1b44..2ef9b08b2668 100644
--- a/offapi/com/sun/star/deployment/XPackageInformationProvider.idl
+++ b/offapi/com/sun/star/deployment/XPackageInformationProvider.idl
@@ -44,7 +44,7 @@ published interface XPackageInformationProvider
*/
string getPackageLocation( [in] string extensionId );
- /** check if there are updates available for an extention.
+ /** check if there are updates available for an extension.
@param extensionId
the unique identifier of an extension. When the extensionId is empty,
@@ -57,7 +57,7 @@ published interface XPackageInformationProvider
*/
sequence< sequence< string > > isUpdateAvailable( [in] string extensionId );
- /** returns a list of all installed extention with their version.
+ /** returns a list of all installed extension with their version.
*/
sequence< sequence< string > > getExtensionList();
};
diff --git a/offapi/com/sun/star/deployment/XUpdateInformationProvider.idl b/offapi/com/sun/star/deployment/XUpdateInformationProvider.idl
index 5ff80203846b..ed866f0dd67e 100644
--- a/offapi/com/sun/star/deployment/XUpdateInformationProvider.idl
+++ b/offapi/com/sun/star/deployment/XUpdateInformationProvider.idl
@@ -62,7 +62,7 @@ interface XUpdateInformationProvider
[in] string extensionId
) raises ( com::sun::star::uno::Exception );
- /** interrupts a getUpdateInformation call and let's it return immediatly.
+ /** interrupts a getUpdateInformation call and let's it return immediately.
*/
void cancel();
diff --git a/offapi/com/sun/star/document/DocumentInfo.idl b/offapi/com/sun/star/document/DocumentInfo.idl
index 96f6d9b2a03e..e5a6e8a3d2ec 100644
--- a/offapi/com/sun/star/document/DocumentInfo.idl
+++ b/offapi/com/sun/star/document/DocumentInfo.idl
@@ -88,7 +88,7 @@ published service DocumentInfo
interface XDocumentInfo;
//-------------------------------------------------------------------------
- /** neccessary to support normal properties
+ /** necessary to support normal properties
*/
interface com::sun::star::beans::XPropertySet;
@@ -109,7 +109,7 @@ published service DocumentInfo
[optional] interface com::sun::star::beans::XPropertyContainer;
//-------------------------------------------------------------------------
- /** contains the intial author of the document
+ /** contains the initial author of the document
*/
[property] string Author;
diff --git a/offapi/com/sun/star/document/EmptyUndoStackException.idl b/offapi/com/sun/star/document/EmptyUndoStackException.idl
index aa0e639b1916..fe14bcdabf7e 100644
--- a/offapi/com/sun/star/document/EmptyUndoStackException.idl
+++ b/offapi/com/sun/star/document/EmptyUndoStackException.idl
@@ -27,7 +27,7 @@
module com { module sun { module star { module document {
/** is raised when an operation is attemption at an XUndoManager which requires a non-empty stack
- of undo actions, and this requirement is not fullfilled.
+ of undo actions, and this requirement is not fulfilled.
@since OpenOffice 3.4
*/
exception EmptyUndoStackException : ::com::sun::star::util::InvalidStateException
diff --git a/offapi/com/sun/star/document/EventObject.idl b/offapi/com/sun/star/document/EventObject.idl
index 7c7172872032..bacd9cedfbd9 100644
--- a/offapi/com/sun/star/document/EventObject.idl
+++ b/offapi/com/sun/star/document/EventObject.idl
@@ -43,7 +43,7 @@ module com { module sun { module star { module document {
published struct EventObject: com::sun::star::lang::EventObject
{
//-------------------------------------------------------------------------
- /** specifies the name of the occured event
+ /** specifies the name of the occurred event
<p>
For a list of possible event names see <type>Events</type>.
diff --git a/offapi/com/sun/star/document/ExtendedTypeDetection.idl b/offapi/com/sun/star/document/ExtendedTypeDetection.idl
index 88964f8bb565..abf66a0ec789 100644
--- a/offapi/com/sun/star/document/ExtendedTypeDetection.idl
+++ b/offapi/com/sun/star/document/ExtendedTypeDetection.idl
@@ -55,7 +55,7 @@ module com { module sun { module star { module document {
<br>
Example: "com.company.devision.DetectService"
<br>
- Note that this realy means the implementation name of the service.
+ Note that this really means the implementation name of the service.
Because it's not possible otherwise to distinguish between more then one
registered detect services in same office installation! But it's possible for
the generic type detection to create an uno service by his implementation name too.
@@ -85,7 +85,7 @@ published service ExtendedTypeDetection
<li>or <NULL/> if format is unknown nor supported.</li>
</ul>
May be that given descriptor already includes the opened document stream as parameter
- <member>MediaDescriptor::InputStream</member>. Then this one should be used everytime.
+ <member>MediaDescriptor::InputStream</member>. Then this one should be used every time.
If it's not included in descriptor the value of <member>MediaDescriptor::URL</member>
must be used to open requested ressource by this service.
<br>
diff --git a/offapi/com/sun/star/document/ExtendedTypeDetectionFactory.idl b/offapi/com/sun/star/document/ExtendedTypeDetectionFactory.idl
index 26d2b401b08d..c6a3e4152579 100644
--- a/offapi/com/sun/star/document/ExtendedTypeDetectionFactory.idl
+++ b/offapi/com/sun/star/document/ExtendedTypeDetectionFactory.idl
@@ -96,7 +96,7 @@ published service ExtendedTypeDetectionFactory
<td><em>Name</em></td>
<td>[string]</td>
<td>It means the uno implementation name of the detector component.
- Note: It means the realy the implementation instead of the uno service name.
+ Note: It means the really the implementation instead of the uno service name.
Because it's not possible to distinguish between more then one components; if all of them
uses a generic service identifier!</td>
</tr>
@@ -131,8 +131,8 @@ published service ExtendedTypeDetectionFactory
<p>
Because the complexness of such configuration set can be very high,
- it seams not very usefull to update the undelying configuration layer
- on every container change request immediatly. Another strategy can be to
+ it does not seem very useful to update the undelying configuration layer
+ on every container change request immediately. Another strategy can be to
make all changes (adding/changing/removing of items) and call flush at the end.
That will validate the whole container and reject inconsistent data sets.
Only in case all made changes was correct, they will be written back to the
diff --git a/offapi/com/sun/star/document/FilterFactory.idl b/offapi/com/sun/star/document/FilterFactory.idl
index d1422cf82392..05b461963360 100644
--- a/offapi/com/sun/star/document/FilterFactory.idl
+++ b/offapi/com/sun/star/document/FilterFactory.idl
@@ -172,7 +172,7 @@ published service FilterFactory
<td><em>FilterService</em></td>
<td>[string]</td>
<td>It means the uno implementation name of the filter component.
- Note: It means the realy the implementation instead of the uno service name.
+ Note: It really means the implementation instead of the uno service name.
Because it's not possible to distinguish between more then one filters; if all of them
uses a generic identifier!</td>
</tr>
@@ -202,7 +202,7 @@ published service FilterFactory
<p>
Note:<br>
- All elements of this container will be adressed by his internal name,
+ All elements of this container will be addressed by its internal name,
and it must be an unambigous value.
</p>
*/
@@ -228,8 +228,8 @@ published service FilterFactory
<p>
Because the complexness of such configuration set can be very high,
- it seams not very usefull to update the undelying configuration layer
- on every container change request immediatly. Another strategy can be to
+ it does not seem very useful to update the underlying configuration layer
+ on every container change request immediately. Another strategy can be to
make all changes (adding/changing/removing of items) and call flush at the end.
That will validate the whole container and reject inconsistent data sets.
Only in case all made changes was correct, they will be written back to the
diff --git a/offapi/com/sun/star/document/MediaDescriptor.idl b/offapi/com/sun/star/document/MediaDescriptor.idl
index 25d2520fbc7f..7f43d0587f25 100644
--- a/offapi/com/sun/star/document/MediaDescriptor.idl
+++ b/offapi/com/sun/star/document/MediaDescriptor.idl
@@ -76,7 +76,7 @@ module com { module sun { module star { module document {
<p>
Note:<br>
It's not allowed to hold member of this descriptor by references longer the they
- will be used (especialy a possible stream). It's allowed to use it directly
+ will be used (especially a possible stream). It's allowed to use it directly
or by copying it only.
</p>
@@ -85,7 +85,7 @@ module com { module sun { module star { module document {
published service MediaDescriptor
{
//-------------------------------------------------------------------------
- /** May be set by filters or detection services if user has choosen to
+ /** May be set by filters or detection services if user has chosen to
abort loading/saving, e.g. while entering a password.
*/
[optional,property] boolean Aborted;
@@ -139,7 +139,7 @@ published service MediaDescriptor
<p>
This is a parameter that can be used for any properties specific
for a special component type. Format of that depends from real
- type of adressed component.
+ type of addressed component.
</p>
<p>
diff --git a/offapi/com/sun/star/document/NoSuchFilterRequest.idl b/offapi/com/sun/star/document/NoSuchFilterRequest.idl
index 375bad9fe313..aa9427bd4c67 100644
--- a/offapi/com/sun/star/document/NoSuchFilterRequest.idl
+++ b/offapi/com/sun/star/document/NoSuchFilterRequest.idl
@@ -39,7 +39,7 @@ module com { module sun { module star { module document {
a possible <type scope="com::sun::star::task">InteractionHandler</type> will be used.
(it's a a part of used <type>MediaDescriptor</type>)
Such "NoSuchFilterRequest" will be used then to start right interaction on that to
- get a decision wich filter should be used for given URL. A possible continiuation
+ get a decision which filter should be used for given URL. A possible continuation
of type <type>XInteractionFilterSelect</type> will transport this decision back to
generic filter detection and force using of it. Of course it's possible to abort
the loading process by use another continuation <type scope="com::sun::star::task">XInteractionAbort</type>.
diff --git a/offapi/com/sun/star/document/OfficeDocument.idl b/offapi/com/sun/star/document/OfficeDocument.idl
index 33c5b8ac934f..300afb010d84 100644
--- a/offapi/com/sun/star/document/OfficeDocument.idl
+++ b/offapi/com/sun/star/document/OfficeDocument.idl
@@ -70,7 +70,7 @@ published service OfficeDocument
<p>
With this interface it's possible too, to reset the modify state.
- That can be neccessary to prevent code against problem during closing
+ That can be necessary to prevent code against problems during closing
of the document without saving any changes.
</p>
*/
@@ -94,7 +94,7 @@ published service OfficeDocument
/** offers a way to print a component
<p>
- It's possible to specify wich printer should be used and of course
+ It's possible to specify which printer should be used and of course
print the document on it.
</p>
*/
diff --git a/offapi/com/sun/star/document/TypeDetection.idl b/offapi/com/sun/star/document/TypeDetection.idl
index c1c45c3f8f04..812932995301 100644
--- a/offapi/com/sun/star/document/TypeDetection.idl
+++ b/offapi/com/sun/star/document/TypeDetection.idl
@@ -47,9 +47,9 @@ module com { module sun { module star { module document {
/** capsulate a type detection service and provide read/write access on it's configuration data.
<p>
- It's possible to make a "flat" detection wich may use internal configuration
+ It's possible to make a "flat" detection which may use internal configuration
data only - or a "deep" detection which use special <type>ExtendedTypeDetection</type>
- services to look into the document stream. Last mode can be supressed to perform the operation.
+ services to look into the document stream. Last mode can be suppressed to perform the operation.
Of course the results can't be guaranteed then. (e.g. in case the extension was changed)
</p>
*/
@@ -136,7 +136,7 @@ published service TypeDetection
<td>It contains a list of file extensions, which match this type.
They must be specified as pure extension, without any special signs.
E.g.: "doc", "html" ... but not ".doc".
- Using of wildcards is allowed but not very usefull. The may resulting
+ Using of wildcards is allowed but not very useful. The may resulting
ambigities with other type registrations can't be resolved anytimes.</td>
</tr>
<tr>
@@ -149,7 +149,7 @@ published service TypeDetection
<p>
Note:<br>
- All elements of this container will be adressed by his internal name,
+ All elements of this container will be addressed by his internal name,
and it must be an unambigous value.
</p>
*/
@@ -175,8 +175,8 @@ published service TypeDetection
<p>
Because the complexness of such configuration set can be very high,
- it seams not very usefull to update the undelying configuration layer
- on every container change request immediatly. Another strategy can be to
+ it does not seem very useful to update the underlying configuration layer
+ on every container change request immediately. Another strategy can be to
make all changes (adding/changing/removing of items) and call flush at the end.
That will validate the whole container and reject inconsistent data sets.
Only in case all made changes was correct, they will be written back to the
diff --git a/offapi/com/sun/star/document/UndoContextNotClosedException.idl b/offapi/com/sun/star/document/UndoContextNotClosedException.idl
index 4e22b21c3285..3921f1e4bf5f 100644
--- a/offapi/com/sun/star/document/UndoContextNotClosedException.idl
+++ b/offapi/com/sun/star/document/UndoContextNotClosedException.idl
@@ -27,7 +27,7 @@
module com { module sun { module star { module document {
/** is thrown when an operation is attempted at an <type>XUndoManager</type> which requires all undo
- contexts to be closed, but this requirement is not fullfilled.
+ contexts to be closed, but this requirement is not fulfilled.
@since OpenOffice 3.4
*/
exception UndoContextNotClosedException : ::com::sun::star::util::InvalidStateException
diff --git a/offapi/com/sun/star/document/XDocumentEventListener.idl b/offapi/com/sun/star/document/XDocumentEventListener.idl
index 27bd0b0e4e55..4144e611f4f4 100644
--- a/offapi/com/sun/star/document/XDocumentEventListener.idl
+++ b/offapi/com/sun/star/document/XDocumentEventListener.idl
@@ -48,7 +48,7 @@ module com { module sun { module star { module document {
*/
published interface XDocumentEventListener : ::com::sun::star::lang::XEventListener
{
- /** is called whenever a document event occured
+ /** is called whenever a document event occurred
*/
void documentEventOccured( [in] DocumentEvent Event );
};
diff --git a/offapi/com/sun/star/document/XExtendedFilterDetection.idl b/offapi/com/sun/star/document/XExtendedFilterDetection.idl
index 07110eece8ed..d0b505e6122e 100644
--- a/offapi/com/sun/star/document/XExtendedFilterDetection.idl
+++ b/offapi/com/sun/star/document/XExtendedFilterDetection.idl
@@ -56,7 +56,7 @@ published interface XExtendedFilterDetection: com::sun::star::uno::XInterface
<p>
Registerd services in configuration, which support this interface for different mime types,
- will be called automaticly to look into the document stream and cdecide wich format it represent.
+ will be called automatically to look into the document stream and decide which format it represents.
Add the collected information about detected documents in given <type>MediaDescriptor</type>
<var>Descriptor</var>. The decision must be returned as any valid type name (which specifies
the detected format) or an empty value for unknown formats.
diff --git a/offapi/com/sun/star/document/XFilter.idl b/offapi/com/sun/star/document/XFilter.idl
index c03e3f2bda23..75883506e222 100644
--- a/offapi/com/sun/star/document/XFilter.idl
+++ b/offapi/com/sun/star/document/XFilter.idl
@@ -58,7 +58,7 @@ published interface XFilter: com::sun::star::uno::XInterface
/** filter the document.
<p>
- The given <type>MediaDescriptor</type> holds all neccessary information
+ The given <type>MediaDescriptor</type> holds all necessary information
about the document.
Don't hold hard references to the descriptor items. You must copy needed information!
diff --git a/offapi/com/sun/star/document/XInteractionFilterSelect.idl b/offapi/com/sun/star/document/XInteractionFilterSelect.idl
index a25e4fff72fd..25ff752c7cd9 100644
--- a/offapi/com/sun/star/document/XInteractionFilterSelect.idl
+++ b/offapi/com/sun/star/document/XInteractionFilterSelect.idl
@@ -40,7 +40,7 @@ module com { module sun { module star { module document {
a possible <type scope="com::sun::star::task">InteractionHandler</type> will be used.
(it's a a part of used <type>MediaDescriptor</type>)
A <type>NoSuchFilterRequest</type> will be used then to start right interaction on that to
- get a decision wich filter should be used for given URL. A possible continiuation
+ get a decision which filter should be used for given URL. A possible continiuation
of that can be this XInteractionFilterSelect. It will transport the decision back to
generic filter detection and force using of it. Of course it's possible to abort
the loading process by use another continuation <type scope="com::sun::star::task">XInteractionAbort</type>.
diff --git a/offapi/com/sun/star/document/XTypeDetection.idl b/offapi/com/sun/star/document/XTypeDetection.idl
index de915272bd13..da056967f3ac 100644
--- a/offapi/com/sun/star/document/XTypeDetection.idl
+++ b/offapi/com/sun/star/document/XTypeDetection.idl
@@ -44,7 +44,7 @@ module com { module sun { module star { module document {
may invalid results if e.g., the extension of the document is wrong.
A "deep" detection means looking into the document stream to be right
which format it supports. Of course that includes a "flat" detection before.
- The combination of both ones should produce stable results everytime.
+ The combination of both should produce stable results every time.
</p>
@see TypeDetection
@@ -82,11 +82,11 @@ published interface XTypeDetection: com::sun::star::uno::XInterface
The property <member>MediaDescriptor::URL</member> should be set on
this descriptor as minimum. It specifies the location of the document.
If this parameter is missing another one is required: <member>MediaDescriptor::InputStream</member>.
- This can be usefull to prevent operaton against multiple opening of the stream
+ This can be useful to prevent operaton against multiple opening of the stream
and perform the operation. If this stream isn't already included the detection
will open it (if allowed!) and add it to the descriptor so it will be available for
all following parts.
- A combination of both parameters can be usefull to perform the operation
+ A combination of both parameters can be useful to perform the operation
and make results more stable; but only one of them is required.
Of course its possible to specify more document properties (e.g.
<member>MediaDescriptor::ReadOnly</member>).
diff --git a/offapi/com/sun/star/drawing/AccessibleShape.idl b/offapi/com/sun/star/drawing/AccessibleShape.idl
index 2d0b709b5957..8addb51901dd 100644
--- a/offapi/com/sun/star/drawing/AccessibleShape.idl
+++ b/offapi/com/sun/star/drawing/AccessibleShape.idl
@@ -41,7 +41,7 @@ module com { module sun { module star { module drawing {
A UNO shape is any object that implements the <type
scope="::com::sun::star::drawing">XShape</type> interface.
- <p>The content of a draw page is modeled as tree of accessible shapes
+ <p>The content of a draw page is modelled as tree of accessible shapes
and accessible text paragraphs. The root of this (sub-)tree is the
accessible draw document view. An accessible shape implements either
this service or one of the 'derived' services
diff --git a/offapi/com/sun/star/drawing/DocumentSettings.idl b/offapi/com/sun/star/drawing/DocumentSettings.idl
index 8a3e0aa4b145..c73611f4f30e 100644
--- a/offapi/com/sun/star/drawing/DocumentSettings.idl
+++ b/offapi/com/sun/star/drawing/DocumentSettings.idl
@@ -92,7 +92,7 @@ published service DocumentSettings
/** If this is true, the distance between two paragraphs is
the sum of ParaTopMargin of the previous and ParaBottomMargin of
the next paragraph. If false, only the greater of the two is
- choosen.
+ chosen.
*/
[optional, property] boolean ParagraphSummation;
diff --git a/offapi/com/sun/star/drawing/GraphicFilterRequest.idl b/offapi/com/sun/star/drawing/GraphicFilterRequest.idl
index ab1e391a38d7..6814e6696b47 100644
--- a/offapi/com/sun/star/drawing/GraphicFilterRequest.idl
+++ b/offapi/com/sun/star/drawing/GraphicFilterRequest.idl
@@ -35,7 +35,7 @@
/** represents a general error graphic filter exception.
It can be used to transport the error code information.
- E.g. that can be usefull for interactions.
+ E.g. that can be useful for interactions.
@since OpenOffice 3.0
*/
diff --git a/offapi/com/sun/star/drawing/Hatch.idl b/offapi/com/sun/star/drawing/Hatch.idl
index 71e3b7045058..bf94e19bc830 100644
--- a/offapi/com/sun/star/drawing/Hatch.idl
+++ b/offapi/com/sun/star/drawing/Hatch.idl
@@ -39,7 +39,7 @@
//=============================================================================
// DocMerge from xml: struct com::sun::star::drawing::Hatch
-/** This struct defines the appearence of a hatch.
+/** This struct defines the appearance of a hatch.
<p>A hatch is a texture made of straight lines.</p>
*/
diff --git a/offapi/com/sun/star/drawing/TextProperties.idl b/offapi/com/sun/star/drawing/TextProperties.idl
index a0bf27f7e756..1d32e9adb9b2 100644
--- a/offapi/com/sun/star/drawing/TextProperties.idl
+++ b/offapi/com/sun/star/drawing/TextProperties.idl
@@ -240,7 +240,7 @@ published service TextProperties
//-------------------------------------------------------------------------
/** with this property you can set the maximum height for a shape with text.
- On edit, the auto grow feature will not grow the object heigher than
+ On edit, the auto grow feature will not grow the object higher than
the value of this property.
*/
[property] long TextMaximumFrameHeight;
diff --git a/offapi/com/sun/star/drawing/XCustomShapeHandle.idl b/offapi/com/sun/star/drawing/XCustomShapeHandle.idl
index 976bf5f2000d..2236515a31c8 100644
--- a/offapi/com/sun/star/drawing/XCustomShapeHandle.idl
+++ b/offapi/com/sun/star/drawing/XCustomShapeHandle.idl
@@ -50,7 +50,7 @@ interface XCustomShapeHandle: com::sun::star::uno::XInterface
*/
com::sun::star::awt::Point getPosition();
- /** is setting a new positon for the handle
+ /** is setting a new position for the handle
*/
void setControllerPosition( [in] com::sun::star::awt::Point aPoint );
diff --git a/offapi/com/sun/star/drawing/XDrawPages.idl b/offapi/com/sun/star/drawing/XDrawPages.idl
index 8827bf5f95dc..da1a4957c3f8 100644
--- a/offapi/com/sun/star/drawing/XDrawPages.idl
+++ b/offapi/com/sun/star/drawing/XDrawPages.idl
@@ -43,7 +43,7 @@
<p>The pages are stored in an index container. The order is determined by
the index.
- You usualy get this interface if you use the
+ You usually get this interface if you use the
<type>XDrawPagesSupplier</type> or the <type>XMasterPagesSupplier</type>
at a model that contains <type>DrawPage</type>s or <type>MasterPage</type>s
*/
diff --git a/offapi/com/sun/star/drawing/XShapeBinder.idl b/offapi/com/sun/star/drawing/XShapeBinder.idl
index 53931ba91408..0239f0a9f4cb 100644
--- a/offapi/com/sun/star/drawing/XShapeBinder.idl
+++ b/offapi/com/sun/star/drawing/XShapeBinder.idl
@@ -51,7 +51,7 @@ published interface XShapeBinder: com::sun::star::uno::XInterface
/** binds <type>Shape</type>s together.
@param xShapes
- a container with <type>Shape</type>s that will be bind toghether.
+ a container with <type>Shape</type>s that will be bind together.
All <type>Shapes</type> will be converted to a <type>PolyPolygonBezierShape</type>
and the lines will be connected. The <type>Shape</types>s in xShape will be
removed from the <type>GenericDrawPage</type> and disposed.
diff --git a/offapi/com/sun/star/drawing/framework/ConfigurationController.idl b/offapi/com/sun/star/drawing/framework/ConfigurationController.idl
index 809919280b82..8ada7c83c763 100644
--- a/offapi/com/sun/star/drawing/framework/ConfigurationController.idl
+++ b/offapi/com/sun/star/drawing/framework/ConfigurationController.idl
@@ -42,7 +42,7 @@ module com { module sun { module star { module drawing { module framework {
<p>This service is used at the moment by the
<type>XControllerManager</type> to create a configuration controller.
This allows developers to replace the default implementation of the
- configuration controller with their own. This may not be a usefull
+ configuration controller with their own. This may not be a useful
feature. Furthermore the sub controllers may need a tighter coupling
than the interfaces allow. These are reasons for removing this service
in the future and let the controller manager create the sub controllers
diff --git a/offapi/com/sun/star/drawing/framework/XConfigurationController.idl b/offapi/com/sun/star/drawing/framework/XConfigurationController.idl
index 04f0668b15d1..e96657086822 100644
--- a/offapi/com/sun/star/drawing/framework/XConfigurationController.idl
+++ b/offapi/com/sun/star/drawing/framework/XConfigurationController.idl
@@ -61,7 +61,7 @@ published interface XResource;
<p>When the two configurations differ then the current configuration is
updated eventually to reflect the requested configuration. An update
- takes place when the following three conditions are fullfilled.
+ takes place when the following three conditions are fulfilled.
<ol>
<li>when the last pending request for configuration changes has been
processed,</li>
diff --git a/offapi/com/sun/star/drawing/framework/XConfigurationControllerRequestQueue.idl b/offapi/com/sun/star/drawing/framework/XConfigurationControllerRequestQueue.idl
index 1fcd9d3f1ba8..47cbb7e17944 100644
--- a/offapi/com/sun/star/drawing/framework/XConfigurationControllerRequestQueue.idl
+++ b/offapi/com/sun/star/drawing/framework/XConfigurationControllerRequestQueue.idl
@@ -58,7 +58,7 @@ published interface XConfigurationControllerRequestQueue
<member>requestResourceDeactivation()</member> methods.</p>
@param xRequest
The configuration change represented by this request object must only
- be commited to the configuration when the
+ be committed to the configuration when the
<member
scope="com::sun::star::drawing::framework::XConfigurationChangeRequest"
>execute()</member>
diff --git a/offapi/com/sun/star/drawing/framework/XRelocatableResource.idl b/offapi/com/sun/star/drawing/framework/XRelocatableResource.idl
index 29aeb9d25686..cfd8c04aff0b 100644
--- a/offapi/com/sun/star/drawing/framework/XRelocatableResource.idl
+++ b/offapi/com/sun/star/drawing/framework/XRelocatableResource.idl
@@ -42,7 +42,7 @@ interface XRelocatableResource
@param xNewAnchor
The new anchor.
@return
- Returns <TRUE/> when the relocation was successfull.
+ Returns <TRUE/> when the relocation was successful.
*/
boolean relocateToAnchor ([in] XResource xNewAnchor);
};
diff --git a/offapi/com/sun/star/drawing/framework/XResourceFactory.idl b/offapi/com/sun/star/drawing/framework/XResourceFactory.idl
index e822e2e8d024..060addcbf5db 100644
--- a/offapi/com/sun/star/drawing/framework/XResourceFactory.idl
+++ b/offapi/com/sun/star/drawing/framework/XResourceFactory.idl
@@ -60,7 +60,7 @@ published interface XResourceFactory
Returns a resource object that has been just created or was
taken from a cache. When the requested resource can not be
created then an empty reference is returned. A later call may
- be successfull. This, for example, can be the case with SFX
+ be successful. This, for example, can be the case with SFX
based side panes. They are not available right after the
creation of a new application frame.
@throws InvalidArgumentException
diff --git a/offapi/com/sun/star/embed/ElementModes.idl b/offapi/com/sun/star/embed/ElementModes.idl
index 62d64e21dbbd..2d3b45dbe535 100644
--- a/offapi/com/sun/star/embed/ElementModes.idl
+++ b/offapi/com/sun/star/embed/ElementModes.idl
@@ -83,7 +83,7 @@ published constants ElementModes
const long READWRITE = 7;
//------------------------------------------------------------------------
- /** lets the document be truncated immediatelly after opening.
+ /** lets the document be truncated immediately after opening.
<p>
This flag makes sence only in combination with
diff --git a/offapi/com/sun/star/embed/EmbeddedObjectDescriptor.idl b/offapi/com/sun/star/embed/EmbeddedObjectDescriptor.idl
index c2f8486f84f3..752af3707507 100644
--- a/offapi/com/sun/star/embed/EmbeddedObjectDescriptor.idl
+++ b/offapi/com/sun/star/embed/EmbeddedObjectDescriptor.idl
@@ -74,7 +74,7 @@ published service EmbeddedObjectDescriptor
<p>
Setting of this property to true tells the embedded object that
- controlls the document to store or not to store the graphical
+ controls the document to store or not to store the graphical
representation of the document in to the object persistence.
If this property is not set the object makes the decision itself.
</p>
diff --git a/offapi/com/sun/star/embed/EntryInitModes.idl b/offapi/com/sun/star/embed/EntryInitModes.idl
index 3939ac0c021e..7c05aa94e7dc 100644
--- a/offapi/com/sun/star/embed/EntryInitModes.idl
+++ b/offapi/com/sun/star/embed/EntryInitModes.idl
@@ -30,14 +30,14 @@ module com { module sun { module star { module embed {
//============================================================================
/** This constant set contains possible modes to initialize object
- persistance.
+ persistence.
@see XEmbedPersist
*/
published constants EntryInitModes
{
// -----------------------------------------------------------------------
- /** In case object persistance is created based on existing entry,
+ /** In case object persistence is created based on existing entry,
the object should be initialized from this entry. Otherwise
the object should be initialized as a new one.
*/
diff --git a/offapi/com/sun/star/embed/ObjectSaveVetoException.idl b/offapi/com/sun/star/embed/ObjectSaveVetoException.idl
index 11699db07a2f..ae9ce36ab163 100644
--- a/offapi/com/sun/star/embed/ObjectSaveVetoException.idl
+++ b/offapi/com/sun/star/embed/ObjectSaveVetoException.idl
@@ -34,7 +34,7 @@
//============================================================================
-/** This exception can be thrown in case container whants to avoid objects
+/** This exception can be thrown in case container wants to avoid objects
saving.
@see XEmbeddedClient
diff --git a/offapi/com/sun/star/embed/Storage.idl b/offapi/com/sun/star/embed/Storage.idl
index b3f45d2c18e5..1d1ab9a9bd0c 100644
--- a/offapi/com/sun/star/embed/Storage.idl
+++ b/offapi/com/sun/star/embed/Storage.idl
@@ -169,7 +169,7 @@ published service Storage
<p>
A storage flashes on commit all the child streams it
owns. So in case after the stream is changed neither
- the storage was commited nor the stream was flushed
+ the storage was committed nor the stream was flushed
explicitly, the changes will not appear in the new
created stream. This method allows to retrieve copy of
a child stream even in case it is already opened for
@@ -203,7 +203,7 @@ published service Storage
<p>
A storage flashes on commit all the child streams it
owns. So in case after the stream is changed neither
- the storage was commited nor the stream was flushed
+ the storage was committed nor the stream was flushed
explicitly, the changes will not appear in the new
created stream. This method allows to retrieve copy of
a child stream even in case it is already opened for
@@ -215,8 +215,8 @@ published service Storage
<dd>
This method gets <type>Storage</type> service
implementation and fills it in with the latest
- commited version of this storage. So in case the
- storage was not commited after it was changed, the
+ committed version of this storage. So in case the
+ storage was not committed after it was changed, the
changes will not appear in the new created storage.
</dd>
@@ -225,9 +225,9 @@ published service Storage
<p>
This method gets <type>Storage</type> service
implementation and fills it in with the contents of
- the requested substorage. The latest commited version
+ the requested substorage. The latest committed version
of child storage will be used. So in case the child
- storage was not commited after it was changed, the
+ storage was not committed after it was changed, the
changes will not appear in the new created storage.
</p>
@@ -257,11 +257,11 @@ published service Storage
/** allows to commit or revert changes that were done for the storage.
<p>
- If a storage is commited all changes made to it will be integrated to
- it's parent storage. This is recursive process, so the last commited
+ If a storage is committed all changes made to it will be integrated to
+ it's parent storage. This is recursive process, so the last committed
storage should be the root one. For the package based storages commit
of a root storage also means flashing to the related medium. If
- a storage is not commited, no changes for it or it's child elements
+ a storage is not committed, no changes for it or it's child elements
will be stored.
</p>
*/
@@ -312,7 +312,7 @@ published service Storage
Usually means that the document validity is questionable, although
the package itself is not corrupted. The decision about document
validity in this case is in application hands. It is up to user of
- the storage to deside whether he accepts the fallback approach for
+ the storage to decide whether he accepts the fallback approach for
an implementation of this service, outputs a warning or an error.
</p>
*/
diff --git a/offapi/com/sun/star/embed/StorageFactory.idl b/offapi/com/sun/star/embed/StorageFactory.idl
index 922acd45c2fe..eba32188a327 100644
--- a/offapi/com/sun/star/embed/StorageFactory.idl
+++ b/offapi/com/sun/star/embed/StorageFactory.idl
@@ -89,7 +89,7 @@ published service StorageFactory
<type scope="com::sun::star::task">XInteractionHandler</type>
implementation, password for the storage and repair
package flag.<br>
- Additionaly the parameter might contain property with the name
+ Additionally the parameter may contain property with the name
"StorageFormat" that can take values from
<type scope="com::sun::star::embed">StorageFormats</type>.
If the property is not provided a storage of package format
diff --git a/offapi/com/sun/star/embed/StorageStream.idl b/offapi/com/sun/star/embed/StorageStream.idl
index dd6e5b5044a4..9db1107f2853 100644
--- a/offapi/com/sun/star/embed/StorageStream.idl
+++ b/offapi/com/sun/star/embed/StorageStream.idl
@@ -186,19 +186,19 @@ published service StorageStream
// -----------------------------------------------------------------------
/** specifies whether the stream will become encrypted next time the
- common storage password holder is commited.
+ common storage password holder is committed.
<p>
The property value <TRUE/> means that the stream will become encrypted
after the closest storage in the parent hierarchy, that has common
- storage password, is commited.
+ storage password, is committed.
<FALSE/> - the stream will not react to commit of such a storage.
</p>
<p>
In case stream is not encrypted and the property is set to <TRUE/>,
the stream will stay nonencrypted until the closest storage
- in the parent hierarchy, that has common storage password, is commited.
+ in the parent hierarchy, that has common storage password, is committed.
On the commit the stream will be encrypted with the common storage
password. If there is no such storage in the hierarchy the stream
will not be encrypted at all.
@@ -209,13 +209,13 @@ published service StorageStream
If somebody sets a password explicitly by using
<type>XEncryptionProtectedSource</type> interface the value is
automatically set to <FALSE/> and the stream becomes encrypted
- with specified password immediatelly.
+ with specified password immediately.
</p>
<p>
In case stream is encrypted one and the value is set to <TRUE/>
the stream becomes nonencrypted until the common storage password
- holder is commited. The data about previously set password ( if any )
+ holder is committed. The data about previously set password ( if any )
will be removed and the stream can be accessed as nonencrypted stream.
</p>
*/
diff --git a/offapi/com/sun/star/embed/XCommonEmbedPersist.idl b/offapi/com/sun/star/embed/XCommonEmbedPersist.idl
index 41cde50b9722..a6a8aa30fb5b 100644
--- a/offapi/com/sun/star/embed/XCommonEmbedPersist.idl
+++ b/offapi/com/sun/star/embed/XCommonEmbedPersist.idl
@@ -91,7 +91,7 @@ published interface XCommonEmbedPersist: com::sun::star::uno::XInterface
/** lets the object or the link reload itself.
<p>
- If the object has persistance it will be reloaded from it's persistant
+ If the object has persistence it will be reloaded from it's persistant
entry.
</p>
diff --git a/offapi/com/sun/star/embed/XEmbedObjectClipboardCreator.idl b/offapi/com/sun/star/embed/XEmbedObjectClipboardCreator.idl
index 9e4e36afe960..c07ec790f298 100644
--- a/offapi/com/sun/star/embed/XEmbedObjectClipboardCreator.idl
+++ b/offapi/com/sun/star/embed/XEmbedObjectClipboardCreator.idl
@@ -74,7 +74,7 @@ published interface XEmbedObjectClipboardCreator: com::sun::star::uno::XInterfac
<p>
The clipboard can provide a number of choices that are container
- related. This infomation will be returned in the
+ related. This information will be returned in the
<type>InsertedObjectInfo</type> object.
<p>
diff --git a/offapi/com/sun/star/embed/XEmbeddedClient.idl b/offapi/com/sun/star/embed/XEmbeddedClient.idl
index 9b24f4083df3..0c7ad30a4ab7 100644
--- a/offapi/com/sun/star/embed/XEmbeddedClient.idl
+++ b/offapi/com/sun/star/embed/XEmbeddedClient.idl
@@ -54,7 +54,7 @@ published interface XEmbeddedClient: XComponentSupplier
/** asks client to let the object store itself.
@throws com::sun::star::uno::ObjectSaveVetoException
- in case container whants to avoid saving of object
+ in case container wants to avoid saving of object
@throws com::sun::star::uno::Exception
in case of problems during saving
diff --git a/offapi/com/sun/star/embed/XInplaceClient.idl b/offapi/com/sun/star/embed/XInplaceClient.idl
index 0b4c9d2c6fa2..b0cd48997bf2 100644
--- a/offapi/com/sun/star/embed/XInplaceClient.idl
+++ b/offapi/com/sun/star/embed/XInplaceClient.idl
@@ -189,7 +189,7 @@ interface XInplaceClient: com::sun::star::uno::XInterface
raises( ::com::sun::star::embed::WrongStateException );
//------------------------------------------------------------------------
- /** provides accelerator table the object whants to use while it is
+ /** provides accelerator table the object wants to use while it is
inplace active.
@param aKeys
diff --git a/offapi/com/sun/star/embed/XInplaceObject.idl b/offapi/com/sun/star/embed/XInplaceObject.idl
index 50b1ddeeb145..f06a5c2e53d4 100644
--- a/offapi/com/sun/star/embed/XInplaceObject.idl
+++ b/offapi/com/sun/star/embed/XInplaceObject.idl
@@ -86,7 +86,7 @@ published interface XInplaceObject: com::sun::star::uno::XInterface
/** enables or disables modeless dialogs of the object.
<p>
- In case contaner whants to show a modal dialog it should disable
+ In case contaner wants to show a modal dialog it should disable
modeless of embedded object dialogs with this call. Later the same
call can be used to enable it.
</p>
@@ -106,7 +106,7 @@ published interface XInplaceObject: com::sun::star::uno::XInterface
::com::sun::star::uno::Exception );
//------------------------------------------------------------------------
- /** provides accelerator table the container whants to use during inplace
+ /** provides accelerator table the container wants to use during inplace
editing.
@return
diff --git a/offapi/com/sun/star/embed/XInsertObjectDialog.idl b/offapi/com/sun/star/embed/XInsertObjectDialog.idl
index ff69bb4afc20..d21779bb8537 100644
--- a/offapi/com/sun/star/embed/XInsertObjectDialog.idl
+++ b/offapi/com/sun/star/embed/XInsertObjectDialog.idl
@@ -65,7 +65,7 @@ published interface XInsertObjectDialog: com::sun::star::uno::XInterface
<p>
The dialog allows for user to do a number of choices that are container
- related. This infomation will be returned in the
+ related. This information will be returned in the
<type>InsertedObjectInfo</type> object.
<p>
diff --git a/offapi/com/sun/star/embed/XOptimizedStorage.idl b/offapi/com/sun/star/embed/XOptimizedStorage.idl
index 521912620f0f..b7cd8ea3ca2c 100644
--- a/offapi/com/sun/star/embed/XOptimizedStorage.idl
+++ b/offapi/com/sun/star/embed/XOptimizedStorage.idl
@@ -111,7 +111,7 @@ published interface XOptimizedStorage
// -----------------------------------------------------------------------
/** allows to insert a stream to the storage directly. The stream must
- stay alive till the storage is commited.
+ stay alive till the storage is committed.
*/
void insertStreamElementDirect(
[in] string sStreamName,
diff --git a/offapi/com/sun/star/embed/XPersistanceHolder.idl b/offapi/com/sun/star/embed/XPersistanceHolder.idl
index f41723c301ad..b0c19be86142 100644
--- a/offapi/com/sun/star/embed/XPersistanceHolder.idl
+++ b/offapi/com/sun/star/embed/XPersistanceHolder.idl
@@ -45,7 +45,7 @@
published interface XPersistanceHolder: com::sun::star::uno::XInterface
{
//-------------------------------------------------------------------------
- /** disconnects the object from the persistance.
+ /** disconnects the object from the persistence.
@throws com::sun::star::io::IOException
in case of io problems
@@ -58,10 +58,10 @@ published interface XPersistanceHolder: com::sun::star::uno::XInterface
::com::sun::star::uno::Exception );
//-------------------------------------------------------------------------
- /** connects the object to a persistance.
+ /** connects the object to a persistence.
@param xStream
- a stream that specify the persistance
+ a stream that specify the persistence
@throws com::sun::star::io::IOException
in case of io problems
diff --git a/offapi/com/sun/star/embed/XStorage.idl b/offapi/com/sun/star/embed/XStorage.idl
index 07f6de79718a..d387be591923 100644
--- a/offapi/com/sun/star/embed/XStorage.idl
+++ b/offapi/com/sun/star/embed/XStorage.idl
@@ -106,7 +106,7 @@ published interface XStorage
interface ::com::sun::star::container::XNameAccess;
// -----------------------------------------------------------------------
- /** allows to controll and track lifetime of the storage.
+ /** allows to control and track lifetime of the storage.
<p>
In case a storage is disposed any call to it's methods should result
@@ -124,7 +124,7 @@ published interface XStorage
<p>
The destination storage contents are overwritten.
After the successful copying the target storage is automatically
- commited if it implements transacted access.
+ committed if it implements transacted access.
</p>
@param xDest
@@ -563,7 +563,7 @@ published interface XStorage
/** allows to copy an entry from one storage to another.
<p>
- If target element supports transacted mode it must be commited by this
+ If target element supports transacted mode it must be committed by this
method after successful copying.
</p>
@@ -607,7 +607,7 @@ published interface XStorage
/** allows to move an entry from one storage to another.
<p>
- If target element supports transacted mode it must be commited by this
+ If target element supports transacted mode it must be committed by this
method after successful moving.
</p>
diff --git a/offapi/com/sun/star/embed/XStorageRawAccess.idl b/offapi/com/sun/star/embed/XStorageRawAccess.idl
index d73050ddc008..17d4fdef29b6 100644
--- a/offapi/com/sun/star/embed/XStorageRawAccess.idl
+++ b/offapi/com/sun/star/embed/XStorageRawAccess.idl
@@ -122,7 +122,7 @@ published interface XStorageRawAccess
<p>
This method allows to transport encrypted streams without decryption.
Mainly this method is introduced to allow to copy one encrypted
- storage stream to another without decryption. It is not reccomended to
+ storage stream to another without decryption. It is not recommended to
use this method outside of storage implementation since different
storages implementation could have different encryption format. If the
method is used outside of storage implementation the user code is
@@ -183,7 +183,7 @@ published interface XStorageRawAccess
<p>
This method allows to transport encrypted streams without decryption.
Mainly this method is introduced to allow to copy one encrypted
- storage stream to another without decryption. It is not reccomended to
+ storage stream to another without decryption. It is not recommended to
use this method outside of storage implementation since different
storages implementation could have different encryption format.
</p>
diff --git a/offapi/com/sun/star/embed/XTransactionBroadcaster.idl b/offapi/com/sun/star/embed/XTransactionBroadcaster.idl
index 4f83a1ab27d5..9951fa315c71 100644
--- a/offapi/com/sun/star/embed/XTransactionBroadcaster.idl
+++ b/offapi/com/sun/star/embed/XTransactionBroadcaster.idl
@@ -38,7 +38,7 @@ module com { module sun { module star { module embed {
//============================================================================
-/** broadcasts messege in case transacted object is commited or reverted.
+/** broadcasts messege in case transacted object is committed or reverted.
*/
published interface XTransactionBroadcaster: com::sun::star::uno::XInterface
{
diff --git a/offapi/com/sun/star/embed/XTransactionListener.idl b/offapi/com/sun/star/embed/XTransactionListener.idl
index 65dad92540f6..4133e5977a24 100644
--- a/offapi/com/sun/star/embed/XTransactionListener.idl
+++ b/offapi/com/sun/star/embed/XTransactionListener.idl
@@ -41,19 +41,19 @@ module com { module sun { module star { module embed {
//============================================================================
-/** makes it possible to receive events when a transacted object is commited
+/** makes it possible to receive events when a transacted object is committed
or reverted.
*/
published interface XTransactionListener: com::sun::star::lang::XEventListener
{
//------------------------------------------------------------------------
- /** is called just before the object is commited.
+ /** is called just before the object is committed.
*/
void preCommit( [in] com::sun::star::lang::EventObject aEvent )
raises( ::com::sun::star::uno::Exception );
//------------------------------------------------------------------------
- /** is called after the object is commited.
+ /** is called after the object is committed.
*/
void commited( [in] com::sun::star::lang::EventObject aEvent );
diff --git a/offapi/com/sun/star/embed/XVisualObject.idl b/offapi/com/sun/star/embed/XVisualObject.idl
index 526d578fdcc9..9ae73e884243 100644
--- a/offapi/com/sun/star/embed/XVisualObject.idl
+++ b/offapi/com/sun/star/embed/XVisualObject.idl
@@ -118,7 +118,7 @@ published interface XVisualObject: ::com::sun::star::uno::XInterface
/** retrieves visual representation of the object in preferable format.
<p>
- If the object persistance entry contains cached visual representation
+ If the object persistence entry contains cached visual representation
then it can be retrieved by using this method even in loaded state.
</p>
diff --git a/offapi/com/sun/star/form/FormComponents.idl b/offapi/com/sun/star/form/FormComponents.idl
index d61959b5934a..525a3fb9b0a9 100644
--- a/offapi/com/sun/star/form/FormComponents.idl
+++ b/offapi/com/sun/star/form/FormComponents.idl
@@ -87,7 +87,7 @@ published service FormComponents
<p>For instance, at any time you can obtain the events associated with the <code>n</code><super>th</super>
element in the form components by calling
<member scope="com::sun::star::script">XEventAttacherManager::getScriptEvents</member>
- with paramter <code>n</code>. In particular, this invariant is always met, even after you
+ with parameter <code>n</code>. In particular, this invariant is always met, even after you
inserted/removed elements into/from the container.</p>
*/
interface com::sun::star::script::XEventAttacherManager;
diff --git a/offapi/com/sun/star/form/PropertyBrowserController.idl b/offapi/com/sun/star/form/PropertyBrowserController.idl
index 2c137b35ae00..345c900e3a41 100644
--- a/offapi/com/sun/star/form/PropertyBrowserController.idl
+++ b/offapi/com/sun/star/form/PropertyBrowserController.idl
@@ -127,7 +127,7 @@ published service PropertyBrowserController
*/
interface com::sun::star::beans::XPropertySet;
- /** allows to access the properties via indicies
+ /** allows to access the properties via indices
*/
interface com::sun::star::beans::XFastPropertySet;
diff --git a/offapi/com/sun/star/form/XFormControllerListener.idl b/offapi/com/sun/star/form/XFormControllerListener.idl
index 5313431a15e4..2a9ff1dee6e3 100644
--- a/offapi/com/sun/star/form/XFormControllerListener.idl
+++ b/offapi/com/sun/star/form/XFormControllerListener.idl
@@ -53,7 +53,7 @@ published interface XFormControllerListener: com::sun::star::lang::XEventListene
the controller was not previously activated.
@param rEvent
- the event happend.
+ the event happened.
*/
[oneway] void formActivated( [in] com::sun::star::lang::EventObject rEvent );
@@ -64,7 +64,7 @@ published interface XFormControllerListener: com::sun::star::lang::XEventListene
words, no control of the controller owns the focus.
@param rEvent
- the event happend.
+ the event happened.
*/
[oneway] void formDeactivated( [in] com::sun::star::lang::EventObject rEvent );
diff --git a/offapi/com/sun/star/form/XGridFieldDataSupplier.idl b/offapi/com/sun/star/form/XGridFieldDataSupplier.idl
index 92ef67a2129c..03cdd5ea6cef 100644
--- a/offapi/com/sun/star/form/XGridFieldDataSupplier.idl
+++ b/offapi/com/sun/star/form/XGridFieldDataSupplier.idl
@@ -42,7 +42,7 @@
<p>You can retrieve the data type information and the data in a row.</p>
- <p>This interface allows to retrieve data even for rows which are not current, which is quite usefull,
+ <p>This interface allows to retrieve data even for rows which are not current, which is quite useful,
as normally, you can't affect the current row in a grid control without moving the cursor of the underlying
<type scope="com::sun::star::form::component">DataForm</type>.</p>
diff --git a/offapi/com/sun/star/form/XLoadListener.idl b/offapi/com/sun/star/form/XLoadListener.idl
index a57378e7dc97..bd327234c037 100644
--- a/offapi/com/sun/star/form/XLoadListener.idl
+++ b/offapi/com/sun/star/form/XLoadListener.idl
@@ -54,7 +54,7 @@ published interface XLoadListener: com::sun::star::lang::XEventListener
/** is invoked when the object has successfully connected to a datasource.
@param aEvent
- the event happend.
+ the event happened.
*/
[oneway] void loaded( [in] com::sun::star::lang::EventObject aEvent );
@@ -65,7 +65,7 @@ published interface XLoadListener: com::sun::star::lang::XEventListener
the event source before the object is unloaded.</p>
@param aEvent
- the event happend.
+ the event happened.
*/
[oneway] void unloading( [in] com::sun::star::lang::EventObject aEvent );
@@ -74,7 +74,7 @@ published interface XLoadListener: com::sun::star::lang::XEventListener
/** is invoked after the object has disconnected from a datasource.
@param aEvent
- the event happend.
+ the event happened.
*/
[oneway] void unloaded( [in] com::sun::star::lang::EventObject aEvent );
@@ -86,7 +86,7 @@ published interface XLoadListener: com::sun::star::lang::XEventListener
to the event source until they get the reloaded event.</p>
@param aEvent
- the event happend.
+ the event happened.
*/
[oneway] void reloading( [in] com::sun::star::lang::EventObject aEvent );
@@ -95,7 +95,7 @@ published interface XLoadListener: com::sun::star::lang::XEventListener
/** is invoked when the object has been reloaded.
@param aEvent
- the event happend.
+ the event happened.
*/
[oneway] void reloaded( [in] com::sun::star::lang::EventObject aEvent );
};
diff --git a/offapi/com/sun/star/form/XResetListener.idl b/offapi/com/sun/star/form/XResetListener.idl
index 6387cd55254f..2f7cfbba79a5 100644
--- a/offapi/com/sun/star/form/XResetListener.idl
+++ b/offapi/com/sun/star/form/XResetListener.idl
@@ -59,7 +59,7 @@ published interface XResetListener: com::sun::star::lang::XEventListener
/** is invoked before a component is reset.
@param rEvent
- the event happend.
+ the event happened.
@returns
<TRUE/> when reset was approved, <FALSE/> when the reset operation should be cancelled.
@@ -71,7 +71,7 @@ published interface XResetListener: com::sun::star::lang::XEventListener
/** is invoked when a component has been reset.
@param rEvent
- the event happend.
+ the event happened.
*/
[oneway] void resetted( [in] com::sun::star::lang::EventObject rEvent );
diff --git a/offapi/com/sun/star/form/XSubmitListener.idl b/offapi/com/sun/star/form/XSubmitListener.idl
index a0fd53bea00e..2de0e4d28b6e 100644
--- a/offapi/com/sun/star/form/XSubmitListener.idl
+++ b/offapi/com/sun/star/form/XSubmitListener.idl
@@ -56,7 +56,7 @@ published interface XSubmitListener: com::sun::star::lang::XEventListener
/** is invoked when a component is about to submit it's data.
@param aEvent
- the event happend
+ the event happened
@returns
<TRUE/> when submitting was approved, otherwise <FALSE/>.
diff --git a/offapi/com/sun/star/form/binding/BindableDataAwareControlModel.idl b/offapi/com/sun/star/form/binding/BindableDataAwareControlModel.idl
index 39841df4c231..80bed7b3a473 100644
--- a/offapi/com/sun/star/form/binding/BindableDataAwareControlModel.idl
+++ b/offapi/com/sun/star/form/binding/BindableDataAwareControlModel.idl
@@ -45,7 +45,7 @@ module com { module sun { module star { module form { module binding {
content of the controls associated with this model. For instance, for an
<type scope="com::sun::star::form::component">TextField</type>, this would be the
<member scope="com::sun::star::awt">UnoControlEditModel::Text</member> property of the base
- service. Similarily, a <type scope="com::sun::star::form::component">CheckBox</type> has
+ service. Similarly, a <type scope="com::sun::star::form::component">CheckBox</type> has
a property <member scope="com::sun::star::awt">UnoControlCheckBoxModel::State</member>, which
reflects the current check state.</p>
diff --git a/offapi/com/sun/star/form/binding/BindableDatabaseListBox.idl b/offapi/com/sun/star/form/binding/BindableDatabaseListBox.idl
index d691900967a5..823a67c21b18 100644
--- a/offapi/com/sun/star/form/binding/BindableDatabaseListBox.idl
+++ b/offapi/com/sun/star/form/binding/BindableDatabaseListBox.idl
@@ -48,13 +48,13 @@ module com { module sun { module star { module form { module binding {
<ol><li><em>sequences of integers</em>: When used, the integers in the sequence will represent
the indexes of the selected entries of the list box.</li>
<li><em>integer values</em>: When used, the value will represent the index of the selected entry.
- If no entry is selected, -1 will be transfered. If more than one entry is selected, <NULL/>
- will be transfered.</li>
+ If no entry is selected, -1 will be transferred. If more than one entry is selected, <NULL/>
+ will be transferred.</li>
<li><em>sequences of strings</em>: When used, the strings in the sequence present the texts
of the selected entries of the list box.</li>
<li><em>string values</em>: When used. the value will represent the text of the selected entry.
- If no entry is selected, an empty string will be transfered. If more than one entry is selected,
- <NULL/> will be transfered.</li>
+ If no entry is selected, an empty string will be transferred. If more than one entry is selected,
+ <NULL/> will be transferred.</li>
</ol></p>
@see com::sun::star::form::binding::XValueBinding::supportsType
diff --git a/offapi/com/sun/star/form/binding/ListEntryEvent.idl b/offapi/com/sun/star/form/binding/ListEntryEvent.idl
index 42f82316045c..8be311164e8c 100644
--- a/offapi/com/sun/star/form/binding/ListEntryEvent.idl
+++ b/offapi/com/sun/star/form/binding/ListEntryEvent.idl
@@ -35,14 +35,14 @@ module com { module sun { module star { module form { module binding {
//=============================================================================
/** specifies the event which is notified when a change in a string entry
- list occured
+ list occurred
@see XListEntrySource
@see XListEntryListener
*/
struct ListEntryEvent : com::sun::star::lang::EventObject
{
- /** denotes the position where a change occured.
+ /** denotes the position where a change occurred.
<p>The concrete semantics of the value depends on the concrete
event being notified.</p>
diff --git a/offapi/com/sun/star/form/component/DataForm.idl b/offapi/com/sun/star/form/component/DataForm.idl
index 718c3f8446b0..bf590923c572 100644
--- a/offapi/com/sun/star/form/component/DataForm.idl
+++ b/offapi/com/sun/star/form/component/DataForm.idl
@@ -61,7 +61,7 @@ module com { module sun { module star { module form {
module component {
//=============================================================================
/** This service specifies a form which is connected to a database and
- displays the results of SQL queries. It provides the possiblity of
+ displays the results of SQL queries. It provides the possibility of
adding new data records, modifying existing ones, or deleting them.
<p>A database form is a special kind of enhanced database row set
@@ -169,7 +169,7 @@ published service DataForm
master field.<br/>
If a string in this property denotes both a column name and a parameter name, it
is undefined which way it is interpreted, but implementations of the service are required
- to either decide for the paramter or the column, and proceed as usual.
+ to either decide for the parameter or the column, and proceed as usual.
</p>
<p>The columns specified herein typically represent a part of the primary key
diff --git a/offapi/com/sun/star/form/component/DatabaseComboBox.idl b/offapi/com/sun/star/form/component/DatabaseComboBox.idl
index e6226ac18206..c85dc6e27440 100644
--- a/offapi/com/sun/star/form/component/DatabaseComboBox.idl
+++ b/offapi/com/sun/star/form/component/DatabaseComboBox.idl
@@ -64,7 +64,7 @@ published service DatabaseComboBox
a decision must be made how to deal with empty strings.<br/>
This is controlled by <member>ConvertEmptyToNull</member>.</p>
- <p>If the property is set to <TRUE/>, and an empty text is to be commited, this is
+ <p>If the property is set to <TRUE/>, and an empty text is to be committed, this is
converted into <NULL/>, else it is written as empty string.</p>
*/
[property] boolean ConvertEmptyToNull;
diff --git a/offapi/com/sun/star/form/component/DatabaseFormattedField.idl b/offapi/com/sun/star/form/component/DatabaseFormattedField.idl
index 2e0a0c78e93b..65479f0ea00f 100644
--- a/offapi/com/sun/star/form/component/DatabaseFormattedField.idl
+++ b/offapi/com/sun/star/form/component/DatabaseFormattedField.idl
@@ -55,7 +55,7 @@ published service DatabaseFormattedField
a decision must be made how to deal with empty strings.<br/>
This is controlled by <member>ConvertEmptyToNull</member>.</p>
- <p>If the property is set to <TRUE/>, and an empty text is to be commited, this is
+ <p>If the property is set to <TRUE/>, and an empty text is to be committed, this is
converted into <NULL/>, else it is written as empty string.</p>
*/
[property] boolean ConvertEmptyToNull;
diff --git a/offapi/com/sun/star/form/component/DatabasePatternField.idl b/offapi/com/sun/star/form/component/DatabasePatternField.idl
index f529b18a6f3b..b26532cf86f3 100644
--- a/offapi/com/sun/star/form/component/DatabasePatternField.idl
+++ b/offapi/com/sun/star/form/component/DatabasePatternField.idl
@@ -56,7 +56,7 @@ published service DatabasePatternField
a decision must be made how to deal with empty strings.<br/>
This is controlled by this property.</p>
- <p>If the property is set to <TRUE/>, and an empty text is to be commited, this is
+ <p>If the property is set to <TRUE/>, and an empty text is to be committed, this is
converted into <NULL/>, else it is written as empty string.</p>
*/
[property] boolean ConvertEmptyToNull;
diff --git a/offapi/com/sun/star/form/component/DatabaseTextField.idl b/offapi/com/sun/star/form/component/DatabaseTextField.idl
index 647267985fee..95745d38c750 100644
--- a/offapi/com/sun/star/form/component/DatabaseTextField.idl
+++ b/offapi/com/sun/star/form/component/DatabaseTextField.idl
@@ -55,7 +55,7 @@ published service DatabaseTextField
a decision must be made how to deal with empty strings.<br/>
This is controlled by this property.</p>
- <p>If the property is set to <TRUE/>, and an empty text is to be commited, this is
+ <p>If the property is set to <TRUE/>, and an empty text is to be committed, this is
converted into <NULL/>, else it is written as empty string.</p>
*/
[property] boolean ConvertEmptyToNull;
diff --git a/offapi/com/sun/star/form/component/GridControl.idl b/offapi/com/sun/star/form/component/GridControl.idl
index 6322191f1dd5..560b2b170d3e 100644
--- a/offapi/com/sun/star/form/component/GridControl.idl
+++ b/offapi/com/sun/star/form/component/GridControl.idl
@@ -88,7 +88,7 @@
<p>The table rows in a grid control correspond to the rows in the <type>DataForm</type>
the control belongs to, and the columns correspond to single columns of the form's row set.</p>
- <p>Columns of a grid control are modeled by own objects, too. They are very similar to usual
+ <p>Columns of a grid control are modelled by own objects, too. They are very similar to usual
<type scope="com::sun::star::form">DataAwareControlModel</type>s modeling other "single-value" controls, but they are not described
as own services. Instead, they need to be created using the <type scope="com::sun::star::form">XGridColumnFactory</type> interface.</p>
*/
diff --git a/offapi/com/sun/star/form/submission/XSubmission.idl b/offapi/com/sun/star/form/submission/XSubmission.idl
index 3f029ce89334..810f8cc61a80 100644
--- a/offapi/com/sun/star/form/submission/XSubmission.idl
+++ b/offapi/com/sun/star/form/submission/XSubmission.idl
@@ -59,7 +59,7 @@ interface XSubmission : com::sun::star::uno::XInterface
requirements for the submission, e.g. data consistency, are fulfilled.
@throws com::sun::star::lang::WrappedTargetException
- if an error occured during invoking the submission target
+ if an error occurred during invoking the submission target
*/
void submit( )
raises ( com::sun::star::util::VetoException, com::sun::star::lang::WrappedTargetException );
@@ -75,7 +75,7 @@ interface XSubmission : com::sun::star::uno::XInterface
requirements for the submission, e.g. data consistency, are fulfilled.
@throws com::sun::star::lang::WrappedTargetException
- if an error occured during invoking the submission target
+ if an error occurred during invoking the submission target
*/
void submitWithInteraction( [in] com::sun::star::task::XInteractionHandler aHandler )
raises ( com::sun::star::util::VetoException, com::sun::star::lang::WrappedTargetException );
diff --git a/offapi/com/sun/star/frame/Components.idl b/offapi/com/sun/star/frame/Components.idl
index a19076ef020e..e11243d3bc57 100644
--- a/offapi/com/sun/star/frame/Components.idl
+++ b/offapi/com/sun/star/frame/Components.idl
@@ -45,7 +45,7 @@ module com { module sun { module star { module frame {
published service Components
{
//-------------------------------------------------------------------------
- /** use it to get snapshot of current avaliable components as an enumeration
+ /** use it to get snapshot of current available components as an enumeration
*/
interface com::sun::star::container::XEnumerationAccess;
};
diff --git a/offapi/com/sun/star/frame/ContentHandler.idl b/offapi/com/sun/star/frame/ContentHandler.idl
index c13c1920f2bc..949e29cb90d1 100644
--- a/offapi/com/sun/star/frame/ContentHandler.idl
+++ b/offapi/com/sun/star/frame/ContentHandler.idl
@@ -51,7 +51,7 @@ published service ContentHandler
<p>
Base interface of <type>XNotifyingDispatch</type> is <type>XDispatch</type>
- and can be called for requests if result isn't neccessary for dispatch operation.
+ and can be called for requests if result isn't necessary for dispatch operation.
</p>
@see XDispatch
diff --git a/offapi/com/sun/star/frame/ContentHandlerFactory.idl b/offapi/com/sun/star/frame/ContentHandlerFactory.idl
index aa64e61b211a..1150868932b8 100644
--- a/offapi/com/sun/star/frame/ContentHandlerFactory.idl
+++ b/offapi/com/sun/star/frame/ContentHandlerFactory.idl
@@ -58,7 +58,7 @@ published service ContentHandlerFactory
<p>
Returned objects must support the service specification of a <type>ContentHandler</type>.
- They can be created by using of his internal name, which must be unambigous everytime, only.
+ They can be created by using of his internal name, which must be unambigous every time, only.
To get this name use further specified interfaces of this factory for access on
the flat configuration.
</p>
diff --git a/offapi/com/sun/star/frame/ControlEvent.idl b/offapi/com/sun/star/frame/ControlEvent.idl
index 791ea357758b..f96fbacaefb0 100644
--- a/offapi/com/sun/star/frame/ControlEvent.idl
+++ b/offapi/com/sun/star/frame/ControlEvent.idl
@@ -50,7 +50,7 @@ struct ControlEvent
*/
::com::sun::star::util::URL aURL;
- /** specifies the event which has occured.
+ /** specifies the event which has occurred.
*/
string Event;
diff --git a/offapi/com/sun/star/frame/Desktop.idl b/offapi/com/sun/star/frame/Desktop.idl
index 2372c1778967..208c6abbd928 100644
--- a/offapi/com/sun/star/frame/Desktop.idl
+++ b/offapi/com/sun/star/frame/Desktop.idl
@@ -60,7 +60,7 @@
published service Desktop
{
//-------------------------------------------------------------------------
- /** make it possible to be the global root of different seperated frame trees
+ /** make it possible to be the global root of different separated frame trees
<p>
It's not a must for a frame (neither a frame tree) to be a part of this
diff --git a/offapi/com/sun/star/frame/DispatchDescriptor.idl b/offapi/com/sun/star/frame/DispatchDescriptor.idl
index 723d2a116026..8212a7c118c9 100644
--- a/offapi/com/sun/star/frame/DispatchDescriptor.idl
+++ b/offapi/com/sun/star/frame/DispatchDescriptor.idl
@@ -37,9 +37,9 @@
has to be loaded into a specified frame
<p>
- For a normal dispatch calls all needed parameters are seperated.
+ For a normal dispatch calls all needed parameters are separated.
For optimized remote functionality <member>XDispatch::queryDispatches()</member>
- it's neccessary to pack these parameters in a flat structure wich can be used
+ it's necessary to pack these parameters in a flat structure which can be used
in a simple manner.
</p>
@@ -63,7 +63,7 @@ published struct DispatchDescriptor
/** name of the target frame
<p>
- Special targets (e.g. "_blank", "_self") or realy existing target names can be used.
+ Special targets (e.g. "_blank", "_self") or really existing target names can be used.
</p>
@see XDispatchProvider::queryDispatch()
diff --git a/offapi/com/sun/star/frame/DispatchProvider.idl b/offapi/com/sun/star/frame/DispatchProvider.idl
index bcebe2c7fc73..c137f34cdf4a 100644
--- a/offapi/com/sun/star/frame/DispatchProvider.idl
+++ b/offapi/com/sun/star/frame/DispatchProvider.idl
@@ -57,7 +57,7 @@ published service DispatchProvider
<p>
Base interface of <type>XNotifyingDispatch</type> is <type>XDispatch</type>
- and can be called for requests if result isn't neccessary for dispatch operation.
+ and can be called for requests if result isn't necessary for dispatch operation.
</p>
@see XDispatch
diff --git a/offapi/com/sun/star/frame/DispatchRecorder.idl b/offapi/com/sun/star/frame/DispatchRecorder.idl
index 5aef7adb36f1..bb612bd319b5 100644
--- a/offapi/com/sun/star/frame/DispatchRecorder.idl
+++ b/offapi/com/sun/star/frame/DispatchRecorder.idl
@@ -39,7 +39,7 @@
/** provides functionality to record <member>XDispatch::dispatch()</member> requests
<p>
- It records all neccessary parameters of a call <member>XDispatch::dispatch()</member>
+ It records all necessary parameters of a call <member>XDispatch::dispatch()</member>
and generate code which can be executed at later time to run same operations
again. Which code will be generated depends from real implementation. So it's
possible to generate e.g. Java/Basic or may Perl code.
diff --git a/offapi/com/sun/star/frame/Frame.idl b/offapi/com/sun/star/frame/Frame.idl
index 64306ad5fcc0..0544f921b8ec 100644
--- a/offapi/com/sun/star/frame/Frame.idl
+++ b/offapi/com/sun/star/frame/Frame.idl
@@ -131,7 +131,7 @@ published service Frame
/** supports interception mechanism for dispatched URLs
<p>
- Registered objects can intercept, supress or deroute dispatched URLs.
+ Registered objects can intercept, suppress or deroute dispatched URLs.
If they support another interface too (<type>XInterceptorInfo</type>)
it's possible to perform it by directly calling of right interceptor without
using list of all registered ones.
diff --git a/offapi/com/sun/star/frame/FrameActionEvent.idl b/offapi/com/sun/star/frame/FrameActionEvent.idl
index 9102d8e8abd0..1eb5f35e2480 100644
--- a/offapi/com/sun/star/frame/FrameActionEvent.idl
+++ b/offapi/com/sun/star/frame/FrameActionEvent.idl
@@ -48,7 +48,7 @@
published struct FrameActionEvent: com::sun::star::lang::EventObject
{
//-------------------------------------------------------------------------
- /** contains the frame in which the event occured
+ /** contains the frame in which the event occurred
*/
XFrame Frame;
diff --git a/offapi/com/sun/star/frame/FrameLoaderFactory.idl b/offapi/com/sun/star/frame/FrameLoaderFactory.idl
index 55b13a168b6d..cabda6d460f1 100644
--- a/offapi/com/sun/star/frame/FrameLoaderFactory.idl
+++ b/offapi/com/sun/star/frame/FrameLoaderFactory.idl
@@ -58,9 +58,9 @@ published service FrameLoaderFactory
<p>
Returned objects must support the service specification of a <type>FrameLoader</type>
- or <type>SynchronousFrameLoader</type>. (Note: last one will be prefered if both ones
+ or <type>SynchronousFrameLoader</type>. (Note: last one will be preferred if both ones
are available)
- They can be created by using of his internal name, which must be unambigous everytime, only.
+ They can be created by using of his internal name, which must be unambigous every time, only.
To get this name use further specified interfaces of this factory for access on
the flat configuration.
</p>
diff --git a/offapi/com/sun/star/frame/FrameSearchFlag.idl b/offapi/com/sun/star/frame/FrameSearchFlag.idl
index 3765d6a6318e..4a908f94073b 100644
--- a/offapi/com/sun/star/frame/FrameSearchFlag.idl
+++ b/offapi/com/sun/star/frame/FrameSearchFlag.idl
@@ -100,7 +100,7 @@ published constants FrameSearchFlag
will be reached. It doesn't influence a search from top to bottom.
But it can be used at the root of the frame tree to search on direct childrens of it only.
Because the direct children of the root node are the root's of the task sub trees, which
- are top frames too. Instead of using the CHILDREN flag there, it's possible so to supress
+ are top frames too. Instead of using the CHILDREN flag there, it's possible so to suppress
a deeper search so.
</p>
*/
diff --git a/offapi/com/sun/star/frame/ProtocolHandler.idl b/offapi/com/sun/star/frame/ProtocolHandler.idl
index 3b4fd6dba640..d3ff55f328bc 100644
--- a/offapi/com/sun/star/frame/ProtocolHandler.idl
+++ b/offapi/com/sun/star/frame/ProtocolHandler.idl
@@ -47,7 +47,7 @@
<p>
Supported URLs must match follow format: <protocol scheme>:<protocol specific part>
If a handler provides optional arguments ("?") or jump marks ("#") depends from his
- defintion and implementation. The generic dispatch provider will use registered
+ definition and implementation. The generic dispatch provider will use registered
URL pattern to detect right handler.
</p>
*/
@@ -68,7 +68,7 @@ published service ProtocolHandler
/** initialize the new handler instance with some context informations
<p>
- Sometimes it can be usefull for a handler object, to know something about the
+ Sometimes it can be useful for a handler object, to know something about the
environment, in which it runs - especily the frame. For this case the generic
code (which uses the handler) will ask for this optional interface and use it, if it exist.
Following parameters are passed to the service:
@@ -78,7 +78,7 @@ published service ProtocolHandler
</p>
<p>
- Please note: if this mechanism is used it seams not usefull (nor possible) to implement a ProtocolHandler
+ Please note: if this mechanism is used it does not seem useful (nor possible) to implement a ProtocolHandler
as a singleton. Otherwhise the implementation can't distinguish between different environments
and her corresponding dispatch requests.
</p>
diff --git a/offapi/com/sun/star/frame/TerminationVetoException.idl b/offapi/com/sun/star/frame/TerminationVetoException.idl
index c67961a8d105..cb9483b656d4 100644
--- a/offapi/com/sun/star/frame/TerminationVetoException.idl
+++ b/offapi/com/sun/star/frame/TerminationVetoException.idl
@@ -40,7 +40,7 @@
the termination of the office, he will be the new "owner" of it.
After his own operation will be finished, he MUST try to terminate the
office again. Any other veto listener can intercept that again or office
- will die realy.
+ will die really.
</p>
@see XDesktop::terminate()
diff --git a/offapi/com/sun/star/frame/ToolbarController.idl b/offapi/com/sun/star/frame/ToolbarController.idl
index fc45325b99e3..b9da81164608 100644
--- a/offapi/com/sun/star/frame/ToolbarController.idl
+++ b/offapi/com/sun/star/frame/ToolbarController.idl
@@ -101,7 +101,7 @@ service ToolbarController
<p>
A toolbar controller instance is ready for use after this call has been made
- the first time. The toolbar implementation guarentees that the controller's
+ the first time. The toolbar implementation guarantees that the controller's
item window has been added to the toolbar and its reference is held by it.
</p>
*/
diff --git a/offapi/com/sun/star/frame/XControlNotificationListener.idl b/offapi/com/sun/star/frame/XControlNotificationListener.idl
index 5370d75aaf82..ae63a95928ab 100644
--- a/offapi/com/sun/star/frame/XControlNotificationListener.idl
+++ b/offapi/com/sun/star/frame/XControlNotificationListener.idl
@@ -45,7 +45,7 @@ module com { module sun { module star { module frame {
interface XControlNotificationListener : com::sun::star::uno::XInterface
{
//-------------------------------------------------------------------------
- /** notifies that a control event has happend
+ /** notifies that a control event has happened
@param Event
contains the event informantion
diff --git a/offapi/com/sun/star/frame/XDesktop.idl b/offapi/com/sun/star/frame/XDesktop.idl
index 5e6e0c6e46a9..62dca0aa7b56 100644
--- a/offapi/com/sun/star/frame/XDesktop.idl
+++ b/offapi/com/sun/star/frame/XDesktop.idl
@@ -143,11 +143,11 @@ published interface XDesktop: com::sun::star::uno::XInterface
com::sun::star::lang::XComponent getCurrentComponent();
//-------------------------------------------------------------------------
- /** provides read access to the frame wich contains the current component
+ /** provides read access to the frame which contains the current component
@returns
the frame of the component which has the
- UI focus within this desktop enviroment
+ UI focus within this desktop environment
@see XDesktop::getCurrentComponent()
*/
diff --git a/offapi/com/sun/star/frame/XDispatchRecorderSupplier.idl b/offapi/com/sun/star/frame/XDispatchRecorderSupplier.idl
index 1b5ed8008181..74776c376a93 100644
--- a/offapi/com/sun/star/frame/XDispatchRecorderSupplier.idl
+++ b/offapi/com/sun/star/frame/XDispatchRecorderSupplier.idl
@@ -105,7 +105,7 @@ published interface XDispatchRecorderSupplier: com::sun::star::uno::XInterface
</li>
<li>If <var>Dispatcher</var> support the interface
<type>XRecordableDispatch</type> it will be used
- to dispatch and record all neccessary parameters of
+ to dispatch and record all necessary parameters of
the whole process.
</li>
</ul>
diff --git a/offapi/com/sun/star/frame/XDocumentTemplates.idl b/offapi/com/sun/star/frame/XDocumentTemplates.idl
index 73350d0cba76..89d6b434124d 100644
--- a/offapi/com/sun/star/frame/XDocumentTemplates.idl
+++ b/offapi/com/sun/star/frame/XDocumentTemplates.idl
@@ -75,7 +75,7 @@ published interface XDocumentTemplates: com::sun::star::uno::XInterface
specifies the target
@return
- <TRUE/> if operation was sucessfully
+ <TRUE/> if operation was successfully
<br>
<FALSE/> otherwise
@@ -100,7 +100,7 @@ published interface XDocumentTemplates: com::sun::star::uno::XInterface
specifies the position of template
@return
- <TRUE/> if operation was sucessfully
+ <TRUE/> if operation was successfully
<br>
<FALSE/> otherwise
@@ -121,7 +121,7 @@ published interface XDocumentTemplates: com::sun::star::uno::XInterface
specifies the template for delete
@return
- <TRUE/> if operation was sucessfully
+ <TRUE/> if operation was successfully
<br>
<FALSE/> otherwise
*/
@@ -139,7 +139,7 @@ published interface XDocumentTemplates: com::sun::star::uno::XInterface
specifies the template for renaming
@return
- <TRUE/> if operation was sucessfully
+ <TRUE/> if operation was successfully
<br>
<FALSE/> otherwise
*/
@@ -155,7 +155,7 @@ published interface XDocumentTemplates: com::sun::star::uno::XInterface
the name of the group to be created
@return
- <TRUE/> if operation was sucessfully
+ <TRUE/> if operation was successfully
<br>
<FALSE/> otherwise
*/
@@ -168,7 +168,7 @@ published interface XDocumentTemplates: com::sun::star::uno::XInterface
the name of the group to be removed
@return
- <TRUE/> if operation was sucessfully
+ <TRUE/> if operation was successfully
<br>
<FALSE/> otherwise
*/
@@ -184,7 +184,7 @@ published interface XDocumentTemplates: com::sun::star::uno::XInterface
the new name of the group
@return
- <TRUE/> if operation was sucessfully
+ <TRUE/> if operation was successfully
<br>
<FALSE/> otherwise
*/
diff --git a/offapi/com/sun/star/frame/XFrame.idl b/offapi/com/sun/star/frame/XFrame.idl
index aeb704231591..744cc9dfc669 100644
--- a/offapi/com/sun/star/frame/XFrame.idl
+++ b/offapi/com/sun/star/frame/XFrame.idl
@@ -63,7 +63,7 @@ published interface XFrame: com::sun::star::lang::XComponent
It's designed for initializing - not for setting.
</p>
- <p>This frame will take over ownership of the window refered from
+ <p>This frame will take over ownership of the window referred from
<var>xWindow</var>. Thus, the previous owner is not allowed to
dispose this window anymore. </p>
@@ -97,7 +97,7 @@ published interface XFrame: com::sun::star::lang::XComponent
But creator doesn't mean the implementation which creates this instance ...
it means the parent frame of the frame hierarchy.
Because; normaly a frame should be created by using the api
- and is neccessary for searches inside the tree (e.g. <member>XFrame::findFrame()</member>)
+ and is necessary for searches inside the tree (e.g. <member>XFrame::findFrame()</member>)
</p>
@param Creator
@@ -287,7 +287,7 @@ published interface XFrame: com::sun::star::lang::XComponent
@return
<TRUE/>if setting of new component or release of an existing one was successfully
<br>
- <FALSE/> otherwise (especialy, if an existing controller disagree within his
+ <FALSE/> otherwise (especially, if an existing controller disagree within his
<member>XController::suspend()</member> call)
@see XFrame::getComponentWindow()
diff --git a/offapi/com/sun/star/frame/XFrameLoader.idl b/offapi/com/sun/star/frame/XFrameLoader.idl
index 4e4a0fdc35fa..4ce19281ebc8 100644
--- a/offapi/com/sun/star/frame/XFrameLoader.idl
+++ b/offapi/com/sun/star/frame/XFrameLoader.idl
@@ -49,7 +49,7 @@
<p>
It's an asynchronous loading. For synchronous processes use <type>XSynchronousFrameLoader</type>
- instead of this one. The generic load algorithm of the office supports both ones - but prefered
+ instead of this one. The generic load algorithm of the office supports both - but preferes
the synchronous interface.
</p>
diff --git a/offapi/com/sun/star/frame/XInterceptorInfo.idl b/offapi/com/sun/star/frame/XInterceptorInfo.idl
index 8e1f94a07a19..ff943bfd5a12 100644
--- a/offapi/com/sun/star/frame/XInterceptorInfo.idl
+++ b/offapi/com/sun/star/frame/XInterceptorInfo.idl
@@ -57,7 +57,7 @@ published interface XInterceptorInfo: com::sun::star::uno::XInterface
</p>
@return
- a list of URL's wich are handled by this interceptor
+ a list of URL's which are handled by this interceptor
*/
sequence< string > getInterceptedURLs();
};
diff --git a/offapi/com/sun/star/frame/XLayoutManagerListener.idl b/offapi/com/sun/star/frame/XLayoutManagerListener.idl
index cebe0821a779..e2bec9eb1ae7 100644
--- a/offapi/com/sun/star/frame/XLayoutManagerListener.idl
+++ b/offapi/com/sun/star/frame/XLayoutManagerListener.idl
@@ -54,7 +54,7 @@ published interface XLayoutManagerListener : com::sun::star::lang::XEventListene
reference to the layout manager which invoked the event.
@param eLayoutEvent
- identifies the layout event that has occured.
+ identifies the layout event that has occurred.
@param aInfo
provides additional information about the event. The type
diff --git a/offapi/com/sun/star/frame/XRecordableDispatch.idl b/offapi/com/sun/star/frame/XRecordableDispatch.idl
index 2267f56bc31a..f6b1526cad72 100644
--- a/offapi/com/sun/star/frame/XRecordableDispatch.idl
+++ b/offapi/com/sun/star/frame/XRecordableDispatch.idl
@@ -55,7 +55,7 @@
If a dispatch object is well known and recording was enabled
on a <type>XDispatchRecorderSupplier</type> it's possible to use method
<member>XDispatchRecorderSupplier::dispatchAndRecord()</member> of it
- to make dispatch and recording automaticly. The interface XRecordableDispatch
+ to make dispatch and recording automatically. The interface XRecordableDispatch
is used transparently there.
</p>
@@ -87,7 +87,7 @@ published interface XRecordableDispatch: com::sun::star::uno::XInterface
/** dispatch and record it
@param URL
- full parsed URL wich describe the feature which should be dispatched (executed)
+ full parsed URL which describe the feature which should be dispatched (executed)
@param Arguments
optional arguments for this request
diff --git a/offapi/com/sun/star/frame/XStatusbarController.idl b/offapi/com/sun/star/frame/XStatusbarController.idl
index 46dad7d56c4c..80beba9454ab 100644
--- a/offapi/com/sun/star/frame/XStatusbarController.idl
+++ b/offapi/com/sun/star/frame/XStatusbarController.idl
@@ -75,7 +75,7 @@ interface XStatusbarController
implementation.
</li>
<li><b>StatusbarItem</b><br/>a <type scope="com::sun::star::ui">XStatusbarItem</type>
- instance which represents the status bar item asociated with
+ instance which represents the status bar item associated with
this controller.
</li>
<li><b>ParentWindow</b><br/>a <type scope="com::sun::star::awt">Window</type>
@@ -104,7 +104,7 @@ interface XStatusbarController
<p>
A status bar controller instance is ready for use after this call has
- been made the first time. The status bar implementation guarentees that
+ been made the first time. The status bar implementation guarantees that
the controller's item window has been added to the status bar and its
reference is held by it.
</p>
diff --git a/offapi/com/sun/star/frame/XStorable.idl b/offapi/com/sun/star/frame/XStorable.idl
index 585a4728b4c9..f486ebd3bdd3 100644
--- a/offapi/com/sun/star/frame/XStorable.idl
+++ b/offapi/com/sun/star/frame/XStorable.idl
@@ -95,7 +95,7 @@ published interface XStorable: com::sun::star::uno::XInterface
<p>Only objects which know their locations can be stored.</p>
@throws com::sun::star::io::IOException
- if an IO error occured during save operation
+ if an IO error occurred during save operation
(may the location is unknown)
@see XStorable::storeAsURL
@@ -125,7 +125,7 @@ published interface XStorable: com::sun::star::uno::XInterface
(see <type scope="com::sun::star::document">MediaDescriptor</type> for further details)
@throws com::sun::star::io::IOException
- if an IO error occured during save operation
+ if an IO error occurred during save operation
(may the location is unknown)
@see XStorable::store
@@ -148,7 +148,7 @@ published interface XStorable: com::sun::star::uno::XInterface
persistence capability.</p>
@throws com::sun::star::io::IOException
- if an IO error occured during save operation
+ if an IO error occurred during save operation
(may the location is unknown)
@param lArguments
diff --git a/offapi/com/sun/star/frame/XStorable2.idl b/offapi/com/sun/star/frame/XStorable2.idl
index 1324da70bc7d..55029cfcbe9f 100644
--- a/offapi/com/sun/star/frame/XStorable2.idl
+++ b/offapi/com/sun/star/frame/XStorable2.idl
@@ -56,7 +56,7 @@ published interface XStorable2: XStorable
</p>
<p>
- This is an extention of the <method>XStorable::store()</method>.
+ This is an extension of the <method>XStorable::store()</method>.
This method allows to specify some additional parametes for
storing process.
</p>
@@ -69,7 +69,7 @@ published interface XStorable2: XStorable
the optional parameters contain unacceptable for save entry
@throws com::sun::star::io::IOException
- if an IO error occured during save operation
+ if an IO error occurred during save operation
@see XStorable::store
*/
diff --git a/offapi/com/sun/star/frame/XSynchronousDispatch.idl b/offapi/com/sun/star/frame/XSynchronousDispatch.idl
index 6e8724412334..81ca3302e6a8 100644
--- a/offapi/com/sun/star/frame/XSynchronousDispatch.idl
+++ b/offapi/com/sun/star/frame/XSynchronousDispatch.idl
@@ -55,7 +55,7 @@ published interface XSynchronousDispatch: com::sun::star::uno::XInterface
</p>
@param URL
- full parsed URL wich describe the feature which should be dispatched (executed)
+ full parsed URL that describes the feature which should be dispatched (executed)
@param Arguments
optional arguments for this request
diff --git a/offapi/com/sun/star/frame/XTerminateListener2.idl b/offapi/com/sun/star/frame/XTerminateListener2.idl
index e07582757bc0..4c6b42200c6c 100644
--- a/offapi/com/sun/star/frame/XTerminateListener2.idl
+++ b/offapi/com/sun/star/frame/XTerminateListener2.idl
@@ -43,11 +43,11 @@ interface XTerminateListener2 : ::com::sun::star::frame::XTerminateListener
<p>
Termination can be intercepted by throwing <type>TerminationVetoException</type>.
- But if a listener was queried for termination .. doesnt throwed a veto exception ...
- it doesnt know if termination will be real next time.
+ But if a listener was queried for termination .. and doesn't throw a veto exception ...
+ it doesn't know if termination will be real next time.
Because any other listener can throw those exception too ... and so it can happen
- that after queryTermination() no notifyTermination() will occure. But these listener
- doesnt know if its allowed to start new processes then.
+ that after queryTermination() no notifyTermination() will occur. But these listener
+ doesn't know if its allowed to start new processes then.
Using this optional(!) interface will make it possible to be informed about
cancelled termination requests also.
</p>
diff --git a/offapi/com/sun/star/frame/XToolbarController.idl b/offapi/com/sun/star/frame/XToolbarController.idl
index 8aa090f8d5ff..a97880a24d7c 100644
--- a/offapi/com/sun/star/frame/XToolbarController.idl
+++ b/offapi/com/sun/star/frame/XToolbarController.idl
@@ -61,7 +61,7 @@ interface XToolbarController : com::sun::star::uno::XInterface
the current state of the modifier keys.
<p>
- This function is usally called by a toolbar implementation when a user clicked on a toolbar button
+ This function is usually called by a toolbar implementation when a user clicked on a toolbar button
or pressed enter on the keyboard when the item has the input focus.
</p>
*/
diff --git a/offapi/com/sun/star/frame/XUIControllerRegistration.idl b/offapi/com/sun/star/frame/XUIControllerRegistration.idl
index 19def98bf3e9..6928d06502eb 100644
--- a/offapi/com/sun/star/frame/XUIControllerRegistration.idl
+++ b/offapi/com/sun/star/frame/XUIControllerRegistration.idl
@@ -69,7 +69,7 @@ published interface XUIControllerRegistration : com::sun::star::uno::XInterface
and a command URL and optional module.
@param aCommandURL
- a command URL which specifies an action which shoudl be associated with a user
+ a command URL which specifies an action which should be associated with a user
interface controller.
@param aModelName
@@ -86,7 +86,7 @@ published interface XUIControllerRegistration : com::sun::star::uno::XInterface
implementation and a command URL and optional module.
@param aCommandURL
- a command URL which specifies an action which shoudl be associated with a user
+ a command URL which specifies an action which should be associated with a user
interface controller.
@param aModelName
diff --git a/offapi/com/sun/star/graphic/GraphicObject.idl b/offapi/com/sun/star/graphic/GraphicObject.idl
index 883f2db6f42b..e090362fbea7 100644
--- a/offapi/com/sun/star/graphic/GraphicObject.idl
+++ b/offapi/com/sun/star/graphic/GraphicObject.idl
@@ -30,7 +30,7 @@ module com { module sun { module star { module graphic
{
/** The <code>GraphicObject</code> service can be used to create <type>XGraphicObject</type> instances.
- <p><type>XGraphicObject</type> objects are accessable using GraphicObject scheme urls like
+ <p><type>XGraphicObject</type> objects are accessible using GraphicObject scheme urls like
<code>vnd.sun.star.GraphicObject:10000000000001940000012FB99807BD</code>.
As long as at least one instance of <type>XGraphicObject</type> with a particular UniqueID exists,
the associated image/graphic is available.</p>
diff --git a/offapi/com/sun/star/graphic/XGraphicObject.idl b/offapi/com/sun/star/graphic/XGraphicObject.idl
index 1ebd9e404d59..b42f33419b89 100644
--- a/offapi/com/sun/star/graphic/XGraphicObject.idl
+++ b/offapi/com/sun/star/graphic/XGraphicObject.idl
@@ -32,7 +32,7 @@ interface XGraphic;
/** <code>XGraphicObject</code> objects represent in-memory image and graphic
objects.
- <p>Such objects are accessable using GraphicObject scheme urls like
+ <p>Such objects are accessible using GraphicObject scheme urls like
<ul>
<li>vnd.sun.star.GraphicObject:10000000000001940000012FB99807BD</li>
</ul>
diff --git a/offapi/com/sun/star/i18n/NumberFormatIndex.idl b/offapi/com/sun/star/i18n/NumberFormatIndex.idl
index ee8af2a39904..00e830e87bbe 100644
--- a/offapi/com/sun/star/i18n/NumberFormatIndex.idl
+++ b/offapi/com/sun/star/i18n/NumberFormatIndex.idl
@@ -41,7 +41,7 @@ module com { module sun { module star { module i18n {
<member scope="::com::sun::star::util">XNumberFormatTypes::getFormatIndex()</member>.
<p> Each locale can support up to about 5000 arbitrary format
- codes. But for backward compatiblity reasons, each locale
+ codes. But for backward compatibility reasons, each locale
<b>MUST</b> support some predefined format codes. These predefined
format codes are accessed through indices as the following, and
the locale data format code definitions in
diff --git a/offapi/com/sun/star/inspection/XNumericControl.idl b/offapi/com/sun/star/inspection/XNumericControl.idl
index 3ed7c722de88..8cb877177258 100644
--- a/offapi/com/sun/star/inspection/XNumericControl.idl
+++ b/offapi/com/sun/star/inspection/XNumericControl.idl
@@ -73,7 +73,7 @@ published interface XNumericControl : XPropertyControl
};
/** describes a <type scope="com::sun::star::util">MeasureUnit</type> to be
- applied for transfering values.
+ applied for transferring values.
<p>The core measurement unit for a property value might differ from the unit which
is used by the control to display it. For instance, your property value might require
diff --git a/offapi/com/sun/star/inspection/XObjectInspectorModel.idl b/offapi/com/sun/star/inspection/XObjectInspectorModel.idl
index 9a933e2db493..ecfea5d6d3ab 100644
--- a/offapi/com/sun/star/inspection/XObjectInspectorModel.idl
+++ b/offapi/com/sun/star/inspection/XObjectInspectorModel.idl
@@ -50,7 +50,7 @@ published interface XObjectInspectorModel
<p>Every element of the sequence must contain information to create a
<type>XPropertyHandler</type> instance. Two ways are currently supported:
<ul>
- <li>A sevice name:</br>
+ <li>A service name:</br>
If a sequence element contains a string, this string is interpreted
as service name, and an <type scope="com::sun::star::lang">XMultiComponentFactory</type>
is asked to create an instance of this service.</li>
diff --git a/offapi/com/sun/star/inspection/XPropertyHandler.idl b/offapi/com/sun/star/inspection/XPropertyHandler.idl
index 26e7c90470e9..b8a82dd2e41e 100644
--- a/offapi/com/sun/star/inspection/XPropertyHandler.idl
+++ b/offapi/com/sun/star/inspection/XPropertyHandler.idl
@@ -416,7 +416,7 @@ published interface XPropertyHandler
<br/>
In some cases it may be necessary to differentiate between both situations. For instance,
if you want to set the value of another property when an actuating property's value changed,
- you should definately not do this when <arg>FirstTimeInit</arg> is <TRUE/>.
+ you should definitely not do this when <arg>FirstTimeInit</arg> is <TRUE/>.
@throws com::sun::star::lang::NullPointerException
if <arg>InspectorUI</arg> is <NULL/>
*/
diff --git a/offapi/com/sun/star/installation/XProtocolHandlerCheck.idl b/offapi/com/sun/star/installation/XProtocolHandlerCheck.idl
index 7867159ae896..07ea3f1cd18f 100644
--- a/offapi/com/sun/star/installation/XProtocolHandlerCheck.idl
+++ b/offapi/com/sun/star/installation/XProtocolHandlerCheck.idl
@@ -72,7 +72,7 @@ published interface XProtocolHandlerCheck: com::sun::star::uno::XInterface
The dialog has "Yes" and "No" buttons, and a checkbox
with "Always display this message". The checkbox
is initially checked. If the "Yes" button was pressed,
- it performs all neccessary action to make StarOffice the
+ it performs all necessary action to make StarOffice the
protocol-handler. If the "No" button was pressed,
don't perform any action. Both buttons closes the dialog.@see isProtocolHandler
*/
diff --git a/offapi/com/sun/star/installation/protocols.idl b/offapi/com/sun/star/installation/protocols.idl
index ede8336a0c98..b9087d2141f6 100644
--- a/offapi/com/sun/star/installation/protocols.idl
+++ b/offapi/com/sun/star/installation/protocols.idl
@@ -31,7 +31,7 @@
//=============================================================================
/** A protocol-handler is a part of StarOffice which performs
- the comunication on a paticular protocol. This can be HTTP, FTP, HTTPS,
+ the comunication on a particular protocol. This can be HTTP, FTP, HTTPS,
MAILTO, or NEWS. An implementation of this interface should be able
to check/set all of these protocols.
diff --git a/offapi/com/sun/star/linguistic2/SpellFailure.idl b/offapi/com/sun/star/linguistic2/SpellFailure.idl
index 87aaa7e87371..d17a70bdf698 100644
--- a/offapi/com/sun/star/linguistic2/SpellFailure.idl
+++ b/offapi/com/sun/star/linguistic2/SpellFailure.idl
@@ -33,7 +33,7 @@ module com { module sun { module star { module linguistic2 {
<P>A value of this type is part of the
<type scope="com::sun::star::linguistic2">XSpellAlternatives</type>
- interface which is the return type for an unsuccessfull
+ interface which is the return type for an unsuccessful
spelling attempt.</P>
@see <type scope="com::sun::star::linguistic2">XSpellChecker</type>
diff --git a/offapi/com/sun/star/linguistic2/XConversionDictionaryList.idl b/offapi/com/sun/star/linguistic2/XConversionDictionaryList.idl
index 66d9c129e2f4..1d4eb34c6ef4 100644
--- a/offapi/com/sun/star/linguistic2/XConversionDictionaryList.idl
+++ b/offapi/com/sun/star/linguistic2/XConversionDictionaryList.idl
@@ -143,7 +143,7 @@ published interface XConversionDictionaryList : com::sun::star::uno::XInterface
@param aLocale
- Locale the conversion is refered to.
+ Locale the conversion is referred to.
@param nConversionDictionaryType
specifies the type of conversion the dictionary
@@ -189,7 +189,7 @@ published interface XConversionDictionaryList : com::sun::star::uno::XInterface
right text from entries should be considered.</p>
@param aLocale
- Locale the conversion is refered to.
+ Locale the conversion is referred to.
@param nConversionDictionaryType
specifies the type of conversion dictionaries to be looked up.
It is one of
diff --git a/offapi/com/sun/star/linguistic2/XDictionary.idl b/offapi/com/sun/star/linguistic2/XDictionary.idl
index 0825060554c2..f15f0671f64f 100644
--- a/offapi/com/sun/star/linguistic2/XDictionary.idl
+++ b/offapi/com/sun/star/linguistic2/XDictionary.idl
@@ -140,7 +140,7 @@ published interface XDictionary : com::sun::star::container::XNamed
<P>If an entry already exists, the dictionary remains unchanged
and <FALSE/> will be returned.</P>
- <P>In positive dictionaries only postive entries
+ <P>In positive dictionaries only positive entries
can be made, and in negative ones only negative entries.</P>
@param xDicEntry
@@ -161,7 +161,7 @@ published interface XDictionary : com::sun::star::container::XNamed
<P>If an entry already exists, the dictionary remains unchanged
and <FALSE/> will be returned.</P>
- <P>In positive dictionaries only postive entries
+ <P>In positive dictionaries only positive entries
can be made, and in negative ones only negative entries.</P>
@param aWord
diff --git a/offapi/com/sun/star/linguistic2/XLinguServiceManager.idl b/offapi/com/sun/star/linguistic2/XLinguServiceManager.idl
index bde9704ade29..55b5170d6d1f 100644
--- a/offapi/com/sun/star/linguistic2/XLinguServiceManager.idl
+++ b/offapi/com/sun/star/linguistic2/XLinguServiceManager.idl
@@ -109,7 +109,7 @@ published interface XLinguServiceManager : com::sun::star::uno::XInterface
</P>
@returns
- <TRUE/> if the listener was succesfully added, <FALSE/> otherwise.
+ <TRUE/> if the listener was successfully added, <FALSE/> otherwise.
@param xListener
the listener to be added.
@@ -121,7 +121,7 @@ published interface XLinguServiceManager : com::sun::star::uno::XInterface
/** removes a listener from the list of event listeners.
@returns
- <TRUE/> if the listener was succesfully removed, <FALSE/> otherwise.
+ <TRUE/> if the listener was successfully removed, <FALSE/> otherwise.
@param xListener
the listener to be removed.
diff --git a/offapi/com/sun/star/logging/XCsvLogFormatter.idl b/offapi/com/sun/star/logging/XCsvLogFormatter.idl
index 845c1dd50aca..87ee1cdfc061 100644
--- a/offapi/com/sun/star/logging/XCsvLogFormatter.idl
+++ b/offapi/com/sun/star/logging/XCsvLogFormatter.idl
@@ -63,7 +63,7 @@ interface XCsvLogFormatter : XLogFormatter
<code>formatMultiColumn</code>*/
[attribute] sequence< string > Columnnames;
/** if the CsvLogFormatter is set to have more than one
- column, any logged infomation has to be send through this
+ column, any logged information has to be send through this
method before calling log(). E.g.:
<code>XLoggerInstance.log(1000, XCsvLogFormatterInstance.formatMultiColumn(column_data))</code>
diff --git a/offapi/com/sun/star/logging/XLogger.idl b/offapi/com/sun/star/logging/XLogger.idl
index b7d945a11dd5..09fe9dc0eced 100644
--- a/offapi/com/sun/star/logging/XLogger.idl
+++ b/offapi/com/sun/star/logging/XLogger.idl
@@ -117,17 +117,17 @@ published interface XLogger
void log( [in] long Level, [in] string Message );
/** logs a given message, detailing the source class and method at which the logged
- event occured.
+ event occurred.
@param Level
the log level of this message. If this level is smaller than the logger's <member>Level</member>
attribute, then the call will be ignored.
@param SourceClass
- the source class at which the logged event occured.
+ the source class at which the logged event occurred.
@param SourceMethod
- the source class at which the logged event occured.
+ the source class at which the logged event occurred.
@param Message
the message to log
diff --git a/offapi/com/sun/star/mail/XMailServer.idl b/offapi/com/sun/star/mail/XMailServer.idl
index 56cf9fdcc725..01e8276f40e2 100644
--- a/offapi/com/sun/star/mail/XMailServer.idl
+++ b/offapi/com/sun/star/mail/XMailServer.idl
@@ -187,13 +187,13 @@ interface XMailServer: ::com::sun::star::uno::XInterface {
a wrong server name, an unreachable DNS server, etc.
@throws com::sun::star::io::NoRouteToHostException
- if an error occured to connect to the remote mail server.
+ if an error occurred to connect to the remote mail server.
Typically the remote mail server cannot be reach because of an
intervening firewall, or if an intermediate router is down,
the network connection is broken, etc.
@throws com::sun::star::io::ConnectException
- if an error occured while attempting to connect to the remote
+ if an error occurred while attempting to connect to the remote
mail server. Typically the connection was refused remotely,
because the mail server is not listening on the remote address/port.
diff --git a/offapi/com/sun/star/mail/XMailService.idl b/offapi/com/sun/star/mail/XMailService.idl
index 05c7c48056d3..f866c29b5f68 100644
--- a/offapi/com/sun/star/mail/XMailService.idl
+++ b/offapi/com/sun/star/mail/XMailService.idl
@@ -180,13 +180,13 @@ interface XMailService: ::com::sun::star::uno::XInterface {
a wrong server name, an unreachable DNS server, etc.
@throws com::sun::star::io::NoRouteToHostException
- if an error occured to connect to the remote mail server.
+ if an error occurred to connect to the remote mail server.
Typically the remote mail server cannot be reach because of an
intervening firewall, or if an intermediate router is down,
the network connection is broken, etc.
@throws com::sun::star::io::ConnectException
- if an error occured while attempting to connect to the remote
+ if an error occurred while attempting to connect to the remote
mail server. Typically the connection was refused remotely,
because the mail server is not listening on the remote address/port.
diff --git a/offapi/com/sun/star/modules.idl b/offapi/com/sun/star/modules.idl
index a4c04e87a147..b9137590fe61 100644
--- a/offapi/com/sun/star/modules.idl
+++ b/offapi/com/sun/star/modules.idl
@@ -158,7 +158,7 @@ module sheet {};
/// Formatting and layout style and stylesheet interfaces.
module style {};
-/// Interfaces for import/export of Scaleable Vector Format.
+/// Interfaces for import/export of Scalable Vector Format.
module svg {};
/// Data synchronization interfaces (deprecated).
@@ -188,7 +188,7 @@ module ui {};
/// Miscellaneous interfaces for sorting, connecting objects etc.
module util {};
-/// Document view specfic interfaces (e.g. selection access and printing).
+/// Document view specific interfaces (e.g. selection access and printing).
module view {};
/// XML related interfaces.
diff --git a/offapi/com/sun/star/mozilla/XPluginInstance.idl b/offapi/com/sun/star/mozilla/XPluginInstance.idl
index dd215519496f..422a06f8fead 100644
--- a/offapi/com/sun/star/mozilla/XPluginInstance.idl
+++ b/offapi/com/sun/star/mozilla/XPluginInstance.idl
@@ -39,7 +39,7 @@
// DocMerge from xml: method com::sun::star::mozilla::XPluginInstance::start
-/** Allows to controll an office side plugin instance and to communicate with it.
+/** Allows to control an office side plugin instance and to communicate with it.
This interface is oriented for communication with browsers plugins.
*/
published interface XPluginInstance: com::sun::star::uno::XInterface
diff --git a/offapi/com/sun/star/mozilla/XPluginInstanceSyncPeer.idl b/offapi/com/sun/star/mozilla/XPluginInstanceSyncPeer.idl
index d198f7eb074c..1a9e35906843 100644
--- a/offapi/com/sun/star/mozilla/XPluginInstanceSyncPeer.idl
+++ b/offapi/com/sun/star/mozilla/XPluginInstanceSyncPeer.idl
@@ -38,7 +38,7 @@
//=============================================================================
// DocMerge from xml: interface com::sun::star::mozilla::XPluginInstanceSyncPeer
-/** This interface is an extention for <type>XPluginInstancePeer</type> interface.
+/** This interface is an extension for <type>XPluginInstancePeer</type> interface.
An object can support this interface in addition to <type>XPluginInstancePeer</type> interface.
*/
published interface XPluginInstanceSyncPeer : com::sun::star::uno::XInterface
diff --git a/offapi/com/sun/star/mozilla/XProfileManager.idl b/offapi/com/sun/star/mozilla/XProfileManager.idl
index 9548588e1559..87c84558b1a1 100644
--- a/offapi/com/sun/star/mozilla/XProfileManager.idl
+++ b/offapi/com/sun/star/mozilla/XProfileManager.idl
@@ -53,7 +53,7 @@ published interface XProfileManager: com::sun::star::uno::XInterface
@param profileName
the profile name to be used.
@returns
- the current refrence count for the given profile.
+ the current reference count for the given profile.
*/
long bootupProfile( [in]MozillaProductType product,[in]string profileName);
@@ -61,7 +61,7 @@ published interface XProfileManager: com::sun::star::uno::XInterface
/** attempts to shutdown the current profile.
@returns
- the current refrence count for the current profile.
+ the current reference count for the current profile.
*/
long shutdownProfile();
diff --git a/offapi/com/sun/star/packages/manifest/XManifestReader.idl b/offapi/com/sun/star/packages/manifest/XManifestReader.idl
index b246383cec8c..158e45a78452 100644
--- a/offapi/com/sun/star/packages/manifest/XManifestReader.idl
+++ b/offapi/com/sun/star/packages/manifest/XManifestReader.idl
@@ -37,7 +37,7 @@ module com { module sun { module star { module packages { module manifest {
//=============================================================================
/** This interface reads the manifest data from a file. The user
- must supply an XInputStream when calling readManifestSequence() to recieve
+ must supply an XInputStream when calling readManifestSequence() to receive
a sequence of manifest entries. Each manifest entry is represented by
a sequence of PropertyValues. */
//=============================================================================
diff --git a/offapi/com/sun/star/packages/zip/ZipIOException.idl b/offapi/com/sun/star/packages/zip/ZipIOException.idl
index ef01b4601fb5..d86e1677a765 100644
--- a/offapi/com/sun/star/packages/zip/ZipIOException.idl
+++ b/offapi/com/sun/star/packages/zip/ZipIOException.idl
@@ -34,7 +34,7 @@ module com { module sun { module star { module packages { module zip {
//=============================================================================
/** used to indicate that a ZIP exception has occurred.
- usualy can be thrown from XInputStream interface implementations.
+ usually can be thrown from XInputStream interface implementations.
<p>This interface is an IDL version of the Java interface
<em>java.util.zip.ZipException</em> with some minor adaptations.</p>
diff --git a/offapi/com/sun/star/plugin/PluginException.idl b/offapi/com/sun/star/plugin/PluginException.idl
index 3d08c46c4d54..eb6f20dd40e5 100644
--- a/offapi/com/sun/star/plugin/PluginException.idl
+++ b/offapi/com/sun/star/plugin/PluginException.idl
@@ -34,7 +34,7 @@
//=============================================================================
-/** Indicates that an error occured in an NPN or NPP function call.
+/** Indicates that an error occurred in an NPN or NPP function call.
@see XPlugin
@see XPluginContext
diff --git a/offapi/com/sun/star/presentation/DocumentSettings.idl b/offapi/com/sun/star/presentation/DocumentSettings.idl
index b40635badccc..52c6fd5ec815 100644
--- a/offapi/com/sun/star/presentation/DocumentSettings.idl
+++ b/offapi/com/sun/star/presentation/DocumentSettings.idl
@@ -103,7 +103,7 @@ published service DocumentSettings
/** If this is true, the distance between two paragraphs is
the sum of ParaTopMargin of the previous and ParaBottomMargin of
the next paragraph. If false, only the greater of the two is
- choosen.
+ chosen.
*/
[optional, property] boolean ParagraphSummation;
diff --git a/offapi/com/sun/star/presentation/EffectNodeType.idl b/offapi/com/sun/star/presentation/EffectNodeType.idl
index 0411f7fe9333..3c4831db3177 100644
--- a/offapi/com/sun/star/presentation/EffectNodeType.idl
+++ b/offapi/com/sun/star/presentation/EffectNodeType.idl
@@ -34,8 +34,8 @@
This is stored with the name <i>node-type</i> inside the
<member>::com::sun::star::animations::XAnimationNode::UserData</member> sequence.
<br>
- This does not manipulate the timing or syncronization.
- It can be used to quickly identify semantic blocks inside an animation hierachy.
+ This does not manipulate the timing or synchronization.
+ It can be used to quickly identify semantic blocks inside an animation hierarchy.
@see ::com::sun::star::animations::AnimationNode
*/
diff --git a/offapi/com/sun/star/presentation/EffectPresetClass.idl b/offapi/com/sun/star/presentation/EffectPresetClass.idl
index 6a054afa7278..bcc436f0ef4c 100644
--- a/offapi/com/sun/star/presentation/EffectPresetClass.idl
+++ b/offapi/com/sun/star/presentation/EffectPresetClass.idl
@@ -34,8 +34,8 @@
This is stored with the name <i>preset-class</i> inside the
<member>::com::sun::star::animations::XAnimationNode::UserData</member> sequence.
<br>
- This does not manipulate the timing or syncronization.
- It can be used to quickly identify preset animations inside an animation hierachy.
+ This does not manipulate the timing or synchronization.
+ It can be used to quickly identify preset animations inside an animation hierarchy.
@see ::com::sun::star::animations::AnimationNode
*/
diff --git a/offapi/com/sun/star/presentation/OutlineView.idl b/offapi/com/sun/star/presentation/OutlineView.idl
index ba2974365925..91d4aaf42cfa 100644
--- a/offapi/com/sun/star/presentation/OutlineView.idl
+++ b/offapi/com/sun/star/presentation/OutlineView.idl
@@ -57,7 +57,7 @@
document into the desktop.
In an outline view, the textual contents of presentation text objects
- from all presentation pages are presentet as a continous outline text.
+ from all presentation pages are presentet as a continuous outline text.
@since OpenOffice 1.1.2
*/
diff --git a/offapi/com/sun/star/presentation/XPresentation2.idl b/offapi/com/sun/star/presentation/XPresentation2.idl
index e5cd1900ac6a..dc3bc40dcadf 100644
--- a/offapi/com/sun/star/presentation/XPresentation2.idl
+++ b/offapi/com/sun/star/presentation/XPresentation2.idl
@@ -83,7 +83,7 @@ interface XPresentation2
//-------------------------------------------------------------------------
- /** if the slideshow is running, this returns a controler object to
+ /** if the slideshow is running, this returns a controller object to
control the running slideshow. */
XSlideShowController getController();
};
diff --git a/offapi/com/sun/star/presentation/XSlideShow.idl b/offapi/com/sun/star/presentation/XSlideShow.idl
index 8753cb05f3df..40fda413f719 100644
--- a/offapi/com/sun/star/presentation/XSlideShow.idl
+++ b/offapi/com/sun/star/presentation/XSlideShow.idl
@@ -68,7 +68,7 @@ module com { module sun { module star { module presentation {
slideshow from a given set of XDrawPage slides. The slideshow can
be displayed simultaneously on multiple targets.<p>
- Note: To controll a running slideshow inside a presentation, please
+ Note: To control a running slideshow inside a presentation, please
use <type>XPresentation2</type> and <type>XSlideShowController</type>.
@since OpenOffice 3.0
diff --git a/offapi/com/sun/star/presentation/XSlideShowController.idl b/offapi/com/sun/star/presentation/XSlideShowController.idl
index 21addd0b662e..65d83fe36007 100644
--- a/offapi/com/sun/star/presentation/XSlideShowController.idl
+++ b/offapi/com/sun/star/presentation/XSlideShowController.idl
@@ -95,7 +95,7 @@ interface XSlideShowController
//-------------------------------------------------------------------------
- /** addes a listener that recieves events while the slideshow is running. */
+ /** addes a listener that receives events while the slideshow is running. */
void addSlideShowListener( [in] XSlideShowListener Listener );
//-------------------------------------------------------------------------
diff --git a/offapi/com/sun/star/presentation/XSlideShowView.idl b/offapi/com/sun/star/presentation/XSlideShowView.idl
index 7b5764cfd22a..4fee37c5bdc8 100644
--- a/offapi/com/sun/star/presentation/XSlideShowView.idl
+++ b/offapi/com/sun/star/presentation/XSlideShowView.idl
@@ -94,7 +94,7 @@ published interface XSlideShowView : ::com::sun::star::uno::XInterface
/** Add a listener to get notified when the transformation matrix changes.<p>
This method registers a listener with the view, which will get
- called everytime the transformation matrix changes.<p>
+ called every time the transformation matrix changes.<p>
@param xListener
Listener interface to call when the transformation matrix changes.
@@ -111,7 +111,7 @@ published interface XSlideShowView : ::com::sun::star::uno::XInterface
/** Add a listener to get notified when this view needs a repaint.<p>
This method registers a listener with the view, which will get
- called everytime the view needs an update of their screen
+ called every time the view needs an update of their screen
representation.<p>
@param xListener
@@ -129,7 +129,7 @@ published interface XSlideShowView : ::com::sun::star::uno::XInterface
/** Add a mouse listener to the view.<p>
This method registers a listener with the view, which will get
- called everytime the mouse is clicked on the view.<p>
+ called every time the mouse is clicked on the view.<p>
@param xListener
Listener interface to call when the mouse is clicked on the view.
@@ -146,7 +146,7 @@ published interface XSlideShowView : ::com::sun::star::uno::XInterface
/** Add a mouse motion listener to the view.<p>
This method registers a listener with the view, which will get
- called everytime the mouse is moved on the view.<p>
+ called every time the mouse is moved on the view.<p>
@param xListener
Listener interface to call when the mouse is moved on the view.
diff --git a/offapi/com/sun/star/rendering/XAnimation.idl b/offapi/com/sun/star/rendering/XAnimation.idl
index acb5ee7125a8..1dcebe395ec3 100644
--- a/offapi/com/sun/star/rendering/XAnimation.idl
+++ b/offapi/com/sun/star/rendering/XAnimation.idl
@@ -68,7 +68,7 @@ published interface XAnimation : ::com::sun::star::uno::XInterface
same parameter set, identical output must be generated. This
is because e.g. a Sprite might decide arbitrarily to render an
animation once and cache the result, or repaint it via
- XAnimation::render everytime.<p>
+ XAnimation::render every time.<p>
The rendered content, although, must be exactly the same for
identical viewState, canvas and t values. Or, for that
diff --git a/offapi/com/sun/star/report/XFunction.idl b/offapi/com/sun/star/report/XFunction.idl
index b75ded1bc72f..d95faaef9065 100644
--- a/offapi/com/sun/star/report/XFunction.idl
+++ b/offapi/com/sun/star/report/XFunction.idl
@@ -71,7 +71,7 @@ published interface XFunction
*/
[attribute,bound] string Formula;
- /** defines the formular for the intial value
+ /** defines the formular for the initial value
*/
[attribute,bound] com::sun::star::beans::Optional<string> InitialFormula;
};
diff --git a/offapi/com/sun/star/report/XFunctionsSupplier.idl b/offapi/com/sun/star/report/XFunctionsSupplier.idl
index 756bfaea6a02..db0a21bc33e1 100644
--- a/offapi/com/sun/star/report/XFunctionsSupplier.idl
+++ b/offapi/com/sun/star/report/XFunctionsSupplier.idl
@@ -33,7 +33,7 @@
module com { module sun { module star { module report {
//=============================================================================
published interface XFunctions;
-/** specifies the functions supplier which are located in a report defintion or a group.
+/** specifies the functions supplier which are located in a report definition or a group.
*/
published interface XFunctionsSupplier
{
diff --git a/offapi/com/sun/star/report/XReportComponent.idl b/offapi/com/sun/star/report/XReportComponent.idl
index 2e2809eaeef3..fbe54ed42550 100644
--- a/offapi/com/sun/star/report/XReportComponent.idl
+++ b/offapi/com/sun/star/report/XReportComponent.idl
@@ -166,7 +166,7 @@ published interface XReportComponent
master field.<br/>
If a string in this property denotes both a column name and a parameter name, it
is undefined which way it is interpreted, but implementations of the service are required
- to either decide for the paramter or the column, and proceed as usual.
+ to either decide for the parameter or the column, and proceed as usual.
</p>
<p>The columns specified herein typically represent a part of the primary key
fields or their aliases of the detail report.</p>
@@ -182,7 +182,7 @@ published interface XReportComponent
/** Specifies the section where the control belongs to.
- This is a shortcut to get control hierachy up.
+ This is a shortcut to get control hierarchy up.
This value is <NULL/> when the control was not inserted in any section.
*/
[attribute,readonly] com::sun::star::report::XSection Section;
diff --git a/offapi/com/sun/star/report/XReportDefinition.idl b/offapi/com/sun/star/report/XReportDefinition.idl
index 5e6684159d92..5451943377e5 100644
--- a/offapi/com/sun/star/report/XReportDefinition.idl
+++ b/offapi/com/sun/star/report/XReportDefinition.idl
@@ -147,7 +147,7 @@ published interface XReportDefinition
<p>
With this interface it's possible too, to reset the modify state.
- That can be neccessary to prevent code against problem during closing
+ That can be necessary to prevent code against problem during closing
of the document without saving any changes.
</p>
*/
@@ -237,7 +237,7 @@ published interface XReportDefinition
*/
[attribute,bound] long CommandType;
- /** specifies an addtional filter to optinally use.
+ /** specifies an additional filter to optinally use.
<p>The Filter string has to form a SQL WHERE-clause, <em>without</em> the WHERE-string itself.</p>
diff --git a/offapi/com/sun/star/report/XReportEngine.idl b/offapi/com/sun/star/report/XReportEngine.idl
index 5e23e13cebbd..3ac0db34f9ce 100644
--- a/offapi/com/sun/star/report/XReportEngine.idl
+++ b/offapi/com/sun/star/report/XReportEngine.idl
@@ -101,7 +101,7 @@ published interface XReportEngine
@throws <type scope="com::sun::star::lang">IllegalArgumentException</type>
If the report definition was not set or is <NULL/>.
- OJ: Has to be discussed if this method is usefull.
+ OJ: Has to be discussed if this method is useful.
*/
com::sun::star::frame::XModel createDocumentAlive([in] com::sun::star::frame::XFrame frame)
raises( ::com::sun::star::lang::DisposedException,
diff --git a/offapi/com/sun/star/report/meta/XFunctionManager.idl b/offapi/com/sun/star/report/meta/XFunctionManager.idl
index d55cbcf38008..cc2437a2f820 100644
--- a/offapi/com/sun/star/report/meta/XFunctionManager.idl
+++ b/offapi/com/sun/star/report/meta/XFunctionManager.idl
@@ -45,7 +45,7 @@ published interface XFunctionManager
interface com::sun::star::container::XIndexAccess;
/** same as getByIndex.
- @param position The postion.
+ @param position The position.
@see com.ssun.star.container.XIndexAccess
*/
XFunctionCategory getCategory([in] long position)
diff --git a/offapi/com/sun/star/resource/XStringResourcePersistence.idl b/offapi/com/sun/star/resource/XStringResourcePersistence.idl
index 865bf1157083..5ec4154c64e4 100644
--- a/offapi/com/sun/star/resource/XStringResourcePersistence.idl
+++ b/offapi/com/sun/star/resource/XStringResourcePersistence.idl
@@ -124,7 +124,7 @@ published interface XStringResourcePersistence: com::sun::star::resource::XStrin
Calling this method does not affect the association with a location
(in case of a <type>StringResourceWithLocation</type> instance)
- repectively with a storage (in case of a
+ respectively with a storage (in case of a
<type>StringResourceWithStorage</type> instance).
The modified state isn't affected either.
@@ -162,7 +162,7 @@ published interface XStringResourcePersistence: com::sun::star::resource::XStrin
Calling this method does not affect the association with a location
(in case of a <type>StringResourceWithLocation</type> instance)
- repectively with a storage (in case of a
+ respectively with a storage (in case of a
<type>StringResourceWithStorage</type> instance).
The modified state isn't affected either.
diff --git a/offapi/com/sun/star/resource/XStringResourceWithLocation.idl b/offapi/com/sun/star/resource/XStringResourceWithLocation.idl
index 2fe841f672a6..57ab6d97c4b7 100644
--- a/offapi/com/sun/star/resource/XStringResourceWithLocation.idl
+++ b/offapi/com/sun/star/resource/XStringResourceWithLocation.idl
@@ -67,7 +67,7 @@ published interface XStringResourceWithLocation: com::sun::star::resource::XStri
location before releasing it. The StringResourceManager will
be modified after calling this method as the data isn't stored
to the new location yet. <member>storeAsURL</member> should
- be prefered as it directly stores the data to the new location
+ be preferred as it directly stores the data to the new location
and afterwards this location is in sync with the resource data.
</p>
diff --git a/offapi/com/sun/star/resource/XStringResourceWithStorage.idl b/offapi/com/sun/star/resource/XStringResourceWithStorage.idl
index 10a36054fc4f..a261dfbf3fb2 100644
--- a/offapi/com/sun/star/resource/XStringResourceWithStorage.idl
+++ b/offapi/com/sun/star/resource/XStringResourceWithStorage.idl
@@ -66,7 +66,7 @@ interface XStringResourceWithStorage: com::sun::star::resource::XStringResourceP
force the implementation to reload data from the previous storage
before releasing it. The StringResourceManager will be modified
after calling this method as the data isn't stored to the new
- storage yet. <member>storeAsStorage</member> should be prefered
+ storage yet. <member>storeAsStorage</member> should be preferred
as it directly stores the data to the new storage and afterwards
this storage is in sync with the resource data.
</p>
diff --git a/offapi/com/sun/star/scanner/ScanError.idl b/offapi/com/sun/star/scanner/ScanError.idl
index 77e210e87eab..0762767d80dc 100644
--- a/offapi/com/sun/star/scanner/ScanError.idl
+++ b/offapi/com/sun/star/scanner/ScanError.idl
@@ -35,7 +35,7 @@ published enum ScanError
{
//-------------------------------------------------------------------------
// DOCUMENTATION CHANGED FOR ScanError:: ScanErrorNone,
- /** ScanErrorNone: no error occured
+ /** ScanErrorNone: no error occurred
*/
ScanErrorNone,
@@ -47,7 +47,7 @@ published enum ScanError
//-------------------------------------------------------------------------
// DOCUMENTATION CHANGED FOR ScanError:: ScanFailed,
- /** ScanFailed: an error occured during scanning
+ /** ScanFailed: an error occurred during scanning
*/
ScanFailed,
diff --git a/offapi/com/sun/star/scanner/XScannerManager.idl b/offapi/com/sun/star/scanner/XScannerManager.idl
index b12ccf74276e..fa3d4bf74e49 100644
--- a/offapi/com/sun/star/scanner/XScannerManager.idl
+++ b/offapi/com/sun/star/scanner/XScannerManager.idl
@@ -59,7 +59,7 @@ published interface XScannerManager: com::sun::star::uno::XInterface
{
//-------------------------------------------------------------------------
// DOCUMENTATION CHANGED FOR XScannerManager::getAvailableScanners
- /** returns all avilable scanner devices
+ /** returns all available scanner devices
*/
sequence<com::sun::star::scanner::ScannerContext> getAvailableScanners();
@@ -75,7 +75,7 @@ published interface XScannerManager: com::sun::star::uno::XInterface
/**start the scanning process
listener will be called when scan is complete
the EventObject of the disposing call will contain
- the ScannerManager if the scan was successfull,
+ the ScannerManager if the scan was successful,
an empty interface otherwise
*/
void startScan( [in] com::sun::star::scanner::ScannerContext scanner_context,
diff --git a/offapi/com/sun/star/script/provider/ScriptErrorRaisedException.idl b/offapi/com/sun/star/script/provider/ScriptErrorRaisedException.idl
index f6bc23b1babe..eb7a143562c6 100644
--- a/offapi/com/sun/star/script/provider/ScriptErrorRaisedException.idl
+++ b/offapi/com/sun/star/script/provider/ScriptErrorRaisedException.idl
@@ -38,13 +38,13 @@ module com { module sun { module star { module script { module provider {
by a LanguageScriptProvider whilst executing a script
*/
exception ScriptErrorRaisedException : com::sun::star::uno::Exception {
- /** Name of script where error occured
+ /** Name of script where error occurred
*/
string scriptName;
/** Scripting language of script that generated exception
*/
string language;
- /** line number where error occured.
+ /** line number where error occurred.
*/
long lineNum;
};
diff --git a/offapi/com/sun/star/script/provider/ScriptExceptionRaisedException.idl b/offapi/com/sun/star/script/provider/ScriptExceptionRaisedException.idl
index 8e8714d164a3..18b8ad3283eb 100644
--- a/offapi/com/sun/star/script/provider/ScriptExceptionRaisedException.idl
+++ b/offapi/com/sun/star/script/provider/ScriptExceptionRaisedException.idl
@@ -38,7 +38,7 @@ module com { module sun { module star { module script { module provider {
thrown by a LanguageScriptProvider whilst executing a script
*/
exception ScriptExceptionRaisedException : ::com::sun::star::script::provider::ScriptErrorRaisedException {
- /** Name of script where error occured
+ /** Name of script where error occurred
*/
string exceptionType;
};
diff --git a/offapi/com/sun/star/script/provider/ScriptFrameworkErrorException.idl b/offapi/com/sun/star/script/provider/ScriptFrameworkErrorException.idl
index f17b9a15d881..9e8324e78244 100644
--- a/offapi/com/sun/star/script/provider/ScriptFrameworkErrorException.idl
+++ b/offapi/com/sun/star/script/provider/ScriptFrameworkErrorException.idl
@@ -38,7 +38,7 @@ module com { module sun { module star { module script { module provider {
by the Scripting Framework whilst executing a script
*/
exception ScriptFrameworkErrorException : com::sun::star::uno::Exception {
- /** Name of script where error occured
+ /** Name of script where error occurred
*/
string scriptName;
/** Scripting language of script that generated exception
diff --git a/offapi/com/sun/star/sdb/DataAccessDescriptor.idl b/offapi/com/sun/star/sdb/DataAccessDescriptor.idl
index f8a55e1b0f53..ccdb2482d6ce 100644
--- a/offapi/com/sun/star/sdb/DataAccessDescriptor.idl
+++ b/offapi/com/sun/star/sdb/DataAccessDescriptor.idl
@@ -137,7 +137,7 @@ published service DataAccessDescriptor
*/
[optional, property] long CommandType;
- /** specifies an addtional filter to optionally use.
+ /** specifies an additional filter to optionally use.
<p>The Filter string has to form a <code>WHERE</code>-clause, <em>without</em> the
<code>WHERE</code>-string itself.</p>
diff --git a/offapi/com/sun/star/sdb/DataSettings.idl b/offapi/com/sun/star/sdb/DataSettings.idl
index 20eae9ac365c..34559a23c0e7 100644
--- a/offapi/com/sun/star/sdb/DataSettings.idl
+++ b/offapi/com/sun/star/sdb/DataSettings.idl
@@ -40,7 +40,7 @@
/** extends the
<type scope="com::sun::star::sdbcx">Table</type>
- with additional display information, sorting and filtering criterias.
+ with additional display information, sorting and filtering criteria.
*/
published service DataSettings
diff --git a/offapi/com/sun/star/sdb/DatabaseAccessDataSource.idl b/offapi/com/sun/star/sdb/DatabaseAccessDataSource.idl
index 4731eb2c552b..142015aab17e 100644
--- a/offapi/com/sun/star/sdb/DatabaseAccessDataSource.idl
+++ b/offapi/com/sun/star/sdb/DatabaseAccessDataSource.idl
@@ -43,7 +43,7 @@ module com { module sun { module star { module sdb {
published interface XCompletedConnection;
-/** is a factory to create data access beans. Data access beans are shared amoung
+/** is a factory to create data access beans. Data access beans are shared among
components, so if an already existing bean is requested, the existing one is returned.
@deprecated
diff --git a/offapi/com/sun/star/sdb/ErrorCondition.idl b/offapi/com/sun/star/sdb/ErrorCondition.idl
index be484c956720..cfe7b7d79ee3 100644
--- a/offapi/com/sun/star/sdb/ErrorCondition.idl
+++ b/offapi/com/sun/star/sdb/ErrorCondition.idl
@@ -34,7 +34,7 @@ module com { module sun { module star { module sdb {
<p>Core components of OpenOffice.org will use those error conditions
as error codes (<member scope="com::sun::star::sdbc">SQLException::ErrorCode</member>)
- whereever possible.<br/>
+ wherever possible.<br/>
That is, if an <code>SQLException</code> is raised by
such a component, caused by an error condition which is included in the
<type>ErrorCondition</type> group, then the respective <em>negative</em> value
diff --git a/offapi/com/sun/star/sdb/QueryDesign.idl b/offapi/com/sun/star/sdb/QueryDesign.idl
index ec2440f6dc90..be217bcd5a9a 100644
--- a/offapi/com/sun/star/sdb/QueryDesign.idl
+++ b/offapi/com/sun/star/sdb/QueryDesign.idl
@@ -46,7 +46,7 @@ module com { module sun { module star { module sdb {
<p>The design view of the QueryDesign is divided into two parts. The first part contains the table windows
where columns can be selected for the SQL statement. The second part contains the columns which should appear
- in the selection of the SQL statement or criterias which narrow the query.</p>
+ in the selection of the SQL statement or criteria which narrow the query.</p>
<h3>Operation Modes</h3>
@@ -93,7 +93,7 @@ module com { module sun { module star { module sdb {
<li><a name="active_connection"></a><b>ActiveConnection</b><br/>
specifies the connection to work with.<br/>
- May be ommitted if and only if a valid <a href="#data_source">DataSourceName</a> parameter is supplied.
+ May be omitted if and only if a valid <a href="#data_source">DataSourceName</a> parameter is supplied.
</li>
<li><a name="command"></a><b>Command</b><br/>
diff --git a/offapi/com/sun/star/sdb/SQLContext.idl b/offapi/com/sun/star/sdb/SQLContext.idl
index 5a04c99d5471..7a51910fa68f 100644
--- a/offapi/com/sun/star/sdb/SQLContext.idl
+++ b/offapi/com/sun/star/sdb/SQLContext.idl
@@ -44,7 +44,7 @@ published exception SQLContext: com::sun::star::sdbc::SQLWarning
{
/** provides special info about the details where a
<type scope="com::sun::star::sdbc">SQLException</type>
- occured.
+ occurred.
As usual for SQLExceptions, several SQLContext-objects may be chained, then the
most recent context is appended to the list's tail
*/
diff --git a/offapi/com/sun/star/sdb/Table.idl b/offapi/com/sun/star/sdb/Table.idl
index f3743ca86081..ccc4270ac10d 100644
--- a/offapi/com/sun/star/sdb/Table.idl
+++ b/offapi/com/sun/star/sdb/Table.idl
@@ -36,7 +36,7 @@
/** extends the service
<type scope="com::sun::star::sdbcx">Table</type>
- with additional display information, sorting, and filtering criterias.
+ with additional display information, sorting, and filtering criteria.
*/
published service Table
{
diff --git a/offapi/com/sun/star/sdb/XRowSetApproveListener.idl b/offapi/com/sun/star/sdb/XRowSetApproveListener.idl
index 7bdc2c69b3c7..1e8fde894afc 100644
--- a/offapi/com/sun/star/sdb/XRowSetApproveListener.idl
+++ b/offapi/com/sun/star/sdb/XRowSetApproveListener.idl
@@ -41,7 +41,7 @@ published interface XRowSetApproveListener: com::sun::star::lang::XEventListener
/** is called before a rowset's cursor is moved.
@param event
- the event which happend
+ the event which happened
@returns <TRUE/> when moving is allowed, otherwise <FALSE/>
*/
boolean approveCursorMove([in]com::sun::star::lang::EventObject event);
@@ -49,7 +49,7 @@ published interface XRowSetApproveListener: com::sun::star::lang::XEventListener
/** is called before a row is inserted, updated, or deleted.
@param event
- the event which happend
+ the event which happened
@returns <TRUE/> when changing is allowed, otherwise <FALSE/>
*/
boolean approveRowChange([in]RowChangeEvent event);
@@ -58,7 +58,7 @@ published interface XRowSetApproveListener: com::sun::star::lang::XEventListener
/** is called before a rowset is changed, or in other words
before a rowset is reexecuted.
@param event
- the event which happend
+ the event which happened
@returns <TRUE/> when changing is allowed, otherwise <FALSE/>
*/
boolean approveRowSetChange([in]com::sun::star::lang::EventObject event);
diff --git a/offapi/com/sun/star/sdb/XSQLErrorListener.idl b/offapi/com/sun/star/sdb/XSQLErrorListener.idl
index 406d81f5515f..fa565e0a6646 100644
--- a/offapi/com/sun/star/sdb/XSQLErrorListener.idl
+++ b/offapi/com/sun/star/sdb/XSQLErrorListener.idl
@@ -44,7 +44,7 @@ published interface XSQLErrorListener: com::sun::star::lang::XEventListener
<type scope="com::sun::star::sdbc">SQLException</type>
is thrown to the application.
@param aEvent
- the event which occured
+ the event which occurred
*/
void errorOccured([in]com::sun::star::sdb::SQLErrorEvent aEvent);
};
diff --git a/offapi/com/sun/star/sdb/XSQLQueryComposer.idl b/offapi/com/sun/star/sdb/XSQLQueryComposer.idl
index 3afb4785bc8b..0b4349c2d340 100644
--- a/offapi/com/sun/star/sdb/XSQLQueryComposer.idl
+++ b/offapi/com/sun/star/sdb/XSQLQueryComposer.idl
@@ -69,7 +69,7 @@ published interface XSQLQueryComposer: com::sun::star::uno::XInterface
raises (com::sun::star::sdbc::SQLException);
//-------------------------------------------------------------------------
- /** returns the query composed with filters and sort criterias.
+ /** returns the query composed with filters and sort criteria.
@returns
the composed query
*/
@@ -91,7 +91,7 @@ published interface XSQLQueryComposer: com::sun::star::uno::XInterface
/** returns the currently used filter.
<p>
The filter criteria is split into levels. Each level represents the
- OR criterias. Within each level, the filters are provided as an AND criteria
+ OR criteria. Within each level, the filters are provided as an AND criteria
with the name of the column and the filter condition. The filter condition
is of type string.
</p>
@@ -151,7 +151,7 @@ published interface XSQLQueryComposer: com::sun::star::uno::XInterface
raises (com::sun::star::sdbc::SQLException);
//-------------------------------------------------------------------------
- /** makes it possibile to set a sort condition for the query.
+ /** makes it possible to set a sort condition for the query.
@param order
the order part to set
@throws com::sun::star::sdbc::SQLException
diff --git a/offapi/com/sun/star/sdb/XSingleSelectQueryAnalyzer.idl b/offapi/com/sun/star/sdb/XSingleSelectQueryAnalyzer.idl
index 74be15ae9b9a..bb71db8bb1d8 100644
--- a/offapi/com/sun/star/sdb/XSingleSelectQueryAnalyzer.idl
+++ b/offapi/com/sun/star/sdb/XSingleSelectQueryAnalyzer.idl
@@ -91,7 +91,7 @@ published interface XSingleSelectQueryAnalyzer : com::sun::star::uno::XInterface
/** returns the currently used filter.
<p>
The filter criteria is split into levels. Each level represents the
- OR criterias. Within each level, the filters are provided as an AND criteria
+ OR criteria. Within each level, the filters are provided as an AND criteria
with the name of the column and the filter condition. The filter condition
is of type string. The operator used, is defined by <type scope="com::sun::star::sdb">SQLFilterOperator</type>.
</p>
@@ -143,7 +143,7 @@ published interface XSingleSelectQueryAnalyzer : com::sun::star::uno::XInterface
/** returns the currently used HAVING filter.
<p>
The HAVING filter criteria is split into levels. Each level represents the
- OR criterias. Within each level, the filters are provided as an AND criteria
+ OR criteria. Within each level, the filters are provided as an AND criteria
with the name of the column and the filter condition. The filter condition
is of type string. The operator used, is defined by <type scope="com::sun::star::sdb">SQLFilterOperator</type>.
</p>
diff --git a/offapi/com/sun/star/sdb/XSingleSelectQueryComposer.idl b/offapi/com/sun/star/sdb/XSingleSelectQueryComposer.idl
index fa6ecd5b72f1..bb630f17b072 100644
--- a/offapi/com/sun/star/sdb/XSingleSelectQueryComposer.idl
+++ b/offapi/com/sun/star/sdb/XSingleSelectQueryComposer.idl
@@ -75,7 +75,7 @@ published interface XSingleSelectQueryComposer: XSingleSelectQueryAnalyzer
/** appends a new set of filter criteria which is split into levels.
@param filter
The filter criteria is split into levels. Each level represents the
- OR criterias. Within each level, the filters are provided as an AND criteria
+ OR criteria. Within each level, the filters are provided as an AND criteria
with the name of the column and the filter condition. The filter condition
is of type string. The operator used, is defined by <type scope="com::sun::star::sdb">SQLFilterOperator</type>.
@@ -109,7 +109,7 @@ published interface XSingleSelectQueryComposer: XSingleSelectQueryAnalyzer
//-------------------------------------------------------------------------
- /** makes it possibile to set a group for the query.
+ /** makes it possible to set a group for the query.
@param group
the group part to set
@throws com::sun::star::sdbc::SQLException
@@ -152,7 +152,7 @@ published interface XSingleSelectQueryComposer: XSingleSelectQueryAnalyzer
/** appends a new set of HAVING filter criteria which is split into levels.
@param filter
The HAVING filter criteria is split into levels. Each level represents the
- OR criterias. Within each level, the filters are provided as an AND criteria
+ OR criteria. Within each level, the filters are provided as an AND criteria
with the name of the column and the filter condition. The filter condition
is of type string. The operator used, is defined by <type scope="com::sun::star::sdb">SQLFilterOperator</type>.
@@ -184,7 +184,7 @@ published interface XSingleSelectQueryComposer: XSingleSelectQueryAnalyzer
// ORDER BY
//-------------------------------------------------------------------------
- /** makes it possibile to set a sort condition for the query.
+ /** makes it possible to set a sort condition for the query.
@param order
the order part to set
@throws com::sun::star::sdbc::SQLException
diff --git a/offapi/com/sun/star/sdb/application/XDatabaseDocumentUI.idl b/offapi/com/sun/star/sdb/application/XDatabaseDocumentUI.idl
index fb8d633f3b9f..2d4ab9c1b6ae 100644
--- a/offapi/com/sun/star/sdb/application/XDatabaseDocumentUI.idl
+++ b/offapi/com/sun/star/sdb/application/XDatabaseDocumentUI.idl
@@ -72,7 +72,7 @@ published interface XDatabaseDocumentUI
<p>Note that the connection returned here is really the working connection
of the application. Clients should not misuse it, in particular, closing
- the connection can yield unexpected results and should definately be
+ the connection can yield unexpected results and should definitely be
avoided. If you need a separate connection to the data source, use
<member scope="com::sun::star::sdbc">XDataSource::getConnection</member>.</p>
*/
@@ -123,7 +123,7 @@ published interface XDatabaseDocumentUI
a record describing the sub component. The first element of the returned pair is the type
of the component, denoted by one of the <type>DatabaseObject</type> constants. The second
element is the name of the component. For object types which support nested structures (forms
- and reports, actually), this might be a hierachical name. If the sub component has been newly created,
+ and reports, actually), this might be a hierarchical name. If the subcomponent has been newly created,
and not yet saved, this name is empty.
@throws ::com::sun::star::lang::IllegalArgumentException
@@ -183,7 +183,7 @@ published interface XDatabaseDocumentUI
constants.
@param ObjectName
- specifies the name of the object. In case hierachical objects are supported
+ specifies the name of the object. In case hierarchical objects are supported
(as is the case form forms and reports), hierarchical names are supported here, too.
@param ForEditing
diff --git a/offapi/com/sun/star/sdb/application/XTableUIProvider.idl b/offapi/com/sun/star/sdb/application/XTableUIProvider.idl
index 76e2138bdb4c..e20378a2be10 100644
--- a/offapi/com/sun/star/sdb/application/XTableUIProvider.idl
+++ b/offapi/com/sun/star/sdb/application/XTableUIProvider.idl
@@ -72,7 +72,7 @@ interface XTableUIProvider
@param DocumentUI
provides access to the UI in which the database document is
currently displayed.<br/>
- In particular, this paramter provides access to the application's main
+ In particular, this parameter provides access to the application's main
window, which is needed in case the table editor should be a dialog.
@param TableName
diff --git a/offapi/com/sun/star/sdb/tools/XConnectionTools.idl b/offapi/com/sun/star/sdb/tools/XConnectionTools.idl
index 8ac9124505b6..a23fd2c431ff 100644
--- a/offapi/com/sun/star/sdb/tools/XConnectionTools.idl
+++ b/offapi/com/sun/star/sdb/tools/XConnectionTools.idl
@@ -106,7 +106,7 @@ published interface XConnectionTools
If (and only if) <arg>CommandType</arg> is CommandType.COMMAND, the fields collection which is returned
by this function here is a temporary object. It is kept alive by another object, which is to be
created temporarily, too. To ensure that the fields you get are valid as long as you need them,
- the owner which controls their life time is transfered to this parameter upon return.<br/>
+ the owner which controls their life time is transferred to this parameter upon return.<br/>
Your fields live as long as this component lives.<br/>
diff --git a/offapi/com/sun/star/sdbc/ConnectionProperties.idl b/offapi/com/sun/star/sdbc/ConnectionProperties.idl
index 5c40a6eb820b..293bd0ac3282 100644
--- a/offapi/com/sun/star/sdbc/ConnectionProperties.idl
+++ b/offapi/com/sun/star/sdbc/ConnectionProperties.idl
@@ -33,7 +33,7 @@
<member scope="com::sun::star::sdbc">XDriverManager::getConnectionWithInfo()</member>.
<p>
- The properties for a connection contain additonal information about how to connect to a database and
+ The properties for a connection contain additional information about how to connect to a database and
how to control the behavior of the resulting connection should be.
</p>
diff --git a/offapi/com/sun/star/sdbc/DBASEConnectionProperties.idl b/offapi/com/sun/star/sdbc/DBASEConnectionProperties.idl
index 03c215bfa5d9..49145d9deb40 100644
--- a/offapi/com/sun/star/sdbc/DBASEConnectionProperties.idl
+++ b/offapi/com/sun/star/sdbc/DBASEConnectionProperties.idl
@@ -35,7 +35,7 @@ module com { module sun { module star { module sdbc {
<member scope="com::sun::star::sdbc">XDriverManager::getConnectionWithInfo()</member>.
<p>
- The properties for a connection contain additonal information about how to connect to a database and
+ The properties for a connection contain additional information about how to connect to a database and
how to control the behavior of the resulting connection should be.
</p>
diff --git a/offapi/com/sun/star/sdbc/DataType.idl b/offapi/com/sun/star/sdbc/DataType.idl
index b3d1833e8f6e..c1d6aa7624f8 100644
--- a/offapi/com/sun/star/sdbc/DataType.idl
+++ b/offapi/com/sun/star/sdbc/DataType.idl
@@ -33,7 +33,7 @@
The actual type constant values are equivalent to those in the X/Open CLI.
</p>
<p>
- Precise information about the specfic types can be got from
+ Precise information about the specific types can be got from
<member>XDatabaseMetaData::getTypeInfo()</member>
.</p>
*/
diff --git a/offapi/com/sun/star/sdbc/FILEConnectionProperties.idl b/offapi/com/sun/star/sdbc/FILEConnectionProperties.idl
index 6e13bd0d0b71..f8694192b76a 100644
--- a/offapi/com/sun/star/sdbc/FILEConnectionProperties.idl
+++ b/offapi/com/sun/star/sdbc/FILEConnectionProperties.idl
@@ -35,7 +35,7 @@ module com { module sun { module star { module sdbc {
<member scope="com::sun::star::sdbc">XDriverManager::getConnectionWithInfo()</member>.
<p>
- The properties for a connection contain additonal information about how to connect to a database and
+ The properties for a connection contain additional information about how to connect to a database and
how to control the behavior of the resulting connection should be.
</p>
diff --git a/offapi/com/sun/star/sdbc/FLATConnectionProperties.idl b/offapi/com/sun/star/sdbc/FLATConnectionProperties.idl
index dd1a063e11bd..4b55c84e6e34 100644
--- a/offapi/com/sun/star/sdbc/FLATConnectionProperties.idl
+++ b/offapi/com/sun/star/sdbc/FLATConnectionProperties.idl
@@ -35,7 +35,7 @@ module com { module sun { module star { module sdbc {
<member scope="com::sun::star::sdbc">XDriverManager::getConnectionWithInfo()</member>.
<p>
- The properties for a connection contain additonal information about how to connect to a database and
+ The properties for a connection contain additional information about how to connect to a database and
how to control the behavior of the resulting connection should be.
</p>
@@ -51,19 +51,19 @@ service FLATConnectionProperties
*/
[optional, property] boolean HeaderLine;
- /** A one character delimiter to seperate the fields.
+ /** A one character delimiter to separate the fields.
*/
[optional, property] string FieldDelimiter;
- /** A one character delimiter to seperate the strings.
+ /** A one character delimiter to separate the strings.
*/
[optional, property] string StringDelimiter;
- /** A one character delimiter to seperate the decimal.
+ /** A one character delimiter to separate the decimal.
*/
[optional, property] string DecimalDelimiter;
- /** A one character delimiter to seperate the thousands.
+ /** A one character delimiter to separate the thousands.
*/
[optional, property] string ThousandDelimiter;
diff --git a/offapi/com/sun/star/sdbc/JDBCConnectionProperties.idl b/offapi/com/sun/star/sdbc/JDBCConnectionProperties.idl
index a99441da0855..b082a3cde3c1 100644
--- a/offapi/com/sun/star/sdbc/JDBCConnectionProperties.idl
+++ b/offapi/com/sun/star/sdbc/JDBCConnectionProperties.idl
@@ -38,7 +38,7 @@ module com { module sun { module star { module sdbc {
<member scope="com::sun::star::sdbc">XDriverManager::getConnectionWithInfo()</member>.
<p>
- The properties for a connection contain additonal information about how to connect to a database and
+ The properties for a connection contain additional information about how to connect to a database and
how to control the behavior of the resulting connection should be.
</p>
diff --git a/offapi/com/sun/star/sdbc/ODBCConnectionProperties.idl b/offapi/com/sun/star/sdbc/ODBCConnectionProperties.idl
index ab89924e7795..e019f253d148 100644
--- a/offapi/com/sun/star/sdbc/ODBCConnectionProperties.idl
+++ b/offapi/com/sun/star/sdbc/ODBCConnectionProperties.idl
@@ -35,7 +35,7 @@ module com { module sun { module star { module sdbc {
<member scope="com::sun::star::sdbc">XDriverManager::getConnectionWithInfo()</member>.
<p>
- The properties for a connection contain additonal information about how to connect to a database and
+ The properties for a connection contain additional information about how to connect to a database and
how to control the behavior of the resulting connection should be.
</p>
diff --git a/offapi/com/sun/star/sdbc/XDatabaseMetaData.idl b/offapi/com/sun/star/sdbc/XDatabaseMetaData.idl
index d07ab69b6d0c..001009984eec 100644
--- a/offapi/com/sun/star/sdbc/XDatabaseMetaData.idl
+++ b/offapi/com/sun/star/sdbc/XDatabaseMetaData.idl
@@ -1617,7 +1617,7 @@ published interface XDatabaseMetaData: com::sun::star::uno::XInterface
/** gets a description of the access rights for each table available
in a catalog. Note that a table privilege applies to one or
more columns in the table. It would be wrong to assume that
- this priviledge applies to all columns (this may be <TRUE/> for
+ this privilege applies to all columns (this may be <TRUE/> for
some systems but is not <TRUE/> for all.)
@@ -2319,7 +2319,7 @@ published interface XDatabaseMetaData: com::sun::star::uno::XInterface
<b>TYPE</b> short => index type:
<ul>
<li> 0 - this identifies table statistics that are
- returned in conjuction with a table's index descriptions
+ returned in conjunction with a table's index descriptions
</li>
<li> CLUSTERED - this is a clustered index
</li>
diff --git a/offapi/com/sun/star/sdbc/XPreparedStatement.idl b/offapi/com/sun/star/sdbc/XPreparedStatement.idl
index 52a736ef8dfc..f4759b095793 100644
--- a/offapi/com/sun/star/sdbc/XPreparedStatement.idl
+++ b/offapi/com/sun/star/sdbc/XPreparedStatement.idl
@@ -37,7 +37,7 @@
published interface XResultSet;
-/** provides the possibilty of executing a precompiled SQL statement.
+/** provides the possibility of executing a precompiled SQL statement.
<p>
diff --git a/offapi/com/sun/star/sdbc/XResultSetUpdate.idl b/offapi/com/sun/star/sdbc/XResultSetUpdate.idl
index 318391a93d60..b129d4e10b2b 100644
--- a/offapi/com/sun/star/sdbc/XResultSetUpdate.idl
+++ b/offapi/com/sun/star/sdbc/XResultSetUpdate.idl
@@ -34,7 +34,7 @@
module com { module sun { module star { module sdbc {
-/** provides the possiblity to write changes made on a result set back to
+/** provides the possibility to write changes made on a result set back to
database.
*/
published interface XResultSetUpdate: com::sun::star::uno::XInterface
diff --git a/offapi/com/sun/star/sdbcx/CompareBookmark.idl b/offapi/com/sun/star/sdbcx/CompareBookmark.idl
index ee6aed41e023..69b29831bb20 100644
--- a/offapi/com/sun/star/sdbcx/CompareBookmark.idl
+++ b/offapi/com/sun/star/sdbcx/CompareBookmark.idl
@@ -26,7 +26,7 @@
module com { module sun { module star { module sdbcx {
-/** describes the result of a comparision of two bookmarks.
+/** describes the result of a comparison of two bookmarks.
*/
published constants CompareBookmark
{
diff --git a/offapi/com/sun/star/sdbcx/Descriptor.idl b/offapi/com/sun/star/sdbcx/Descriptor.idl
index 82b187e070c1..f8e271d29974 100644
--- a/offapi/com/sun/star/sdbcx/Descriptor.idl
+++ b/offapi/com/sun/star/sdbcx/Descriptor.idl
@@ -39,7 +39,7 @@
on the informations of the descriptor. The descriptor can be used to create serveral objects.
</p>
<p>
- A descriptor containes at least the informations of the name of an object.
+ A descriptor contains at least the informations of the name of an object.
</p>
@see com::sun::star::sdbcx::XAppend
*/
diff --git a/offapi/com/sun/star/security/CertificateCharacters.idl b/offapi/com/sun/star/security/CertificateCharacters.idl
index e2a22ff93c35..204aa9b71c92 100644
--- a/offapi/com/sun/star/security/CertificateCharacters.idl
+++ b/offapi/com/sun/star/security/CertificateCharacters.idl
@@ -34,7 +34,7 @@
module com { module sun { module star { module security {
/**
- * Constant definiton of a certificate characters.
+ * Constant definition of a certificate characters.
*
* The certificate characters will be defined as bit-wise constants.
*/
diff --git a/offapi/com/sun/star/security/CertificateContainerStatus.idl b/offapi/com/sun/star/security/CertificateContainerStatus.idl
index 5509d0d11349..35af37db7526 100644
--- a/offapi/com/sun/star/security/CertificateContainerStatus.idl
+++ b/offapi/com/sun/star/security/CertificateContainerStatus.idl
@@ -30,7 +30,7 @@
module com { module sun { module star { module security {
/**
- * Constant definiton of a certificate container status.
+ * Constant definition of a certificate container status.
*
*/
published enum CertificateContainerStatus
diff --git a/offapi/com/sun/star/security/CertificateValidity.idl b/offapi/com/sun/star/security/CertificateValidity.idl
index 95fe648a9b3d..f1bfe5ddef91 100644
--- a/offapi/com/sun/star/security/CertificateValidity.idl
+++ b/offapi/com/sun/star/security/CertificateValidity.idl
@@ -34,7 +34,7 @@
module com { module sun { module star { module security {
/**
- * Constant definiton of a certificate characters.
+ * Constant definition of a certificate characters.
*
* The certificate characters will be defined as bit-wise constants.
*/
diff --git a/offapi/com/sun/star/security/DocumentSignatureInformation.idl b/offapi/com/sun/star/security/DocumentSignatureInformation.idl
index 7f126d64e6b7..9ca8053d82f5 100644
--- a/offapi/com/sun/star/security/DocumentSignatureInformation.idl
+++ b/offapi/com/sun/star/security/DocumentSignatureInformation.idl
@@ -62,7 +62,7 @@ struct DocumentSignatureInformation
applied to the files in the root of the document, except mimetype, the
Pictures and ObjectReplacements/Objects folder. That is, macros
were not part of the document signature.
- OpenOffice 3.0 signed everthing, execept mimetype and the META-INF folder.
+ OpenOffice 3.0 signed everything, execept mimetype and the META-INF folder.
<p>
If PartialDocumentSignature is true, then the signature was created by OOo
with a version less then 3.2. In this case, not all files are signed. The
diff --git a/offapi/com/sun/star/security/ExtAltNameType.idl b/offapi/com/sun/star/security/ExtAltNameType.idl
index 7037dc45dcf7..583203b78566 100644
--- a/offapi/com/sun/star/security/ExtAltNameType.idl
+++ b/offapi/com/sun/star/security/ExtAltNameType.idl
@@ -31,7 +31,7 @@
module com { module sun { module star { module security {
/**
- * Constant definiton of a certificate container status.
+ * Constant definition of a certificate container status.
*/
enum ExtAltNameType
{
diff --git a/offapi/com/sun/star/security/XDocumentDigitalSignatures.idl b/offapi/com/sun/star/security/XDocumentDigitalSignatures.idl
index d6ace3898175..c4f9e32378a0 100644
--- a/offapi/com/sun/star/security/XDocumentDigitalSignatures.idl
+++ b/offapi/com/sun/star/security/XDocumentDigitalSignatures.idl
@@ -127,7 +127,7 @@ interface XDocumentDigitalSignatures : com::sun::star::uno::XInterface
void showCertificate( [in] com::sun::star::security::XCertificate Certificate );
- /** manages trusted sources (Authors and pathes )
+ /** manages trusted sources (Authors and paths )
*/
void manageTrustedSources();
diff --git a/offapi/com/sun/star/sheet/AccessibleSpreadsheetDocumentView.idl b/offapi/com/sun/star/sheet/AccessibleSpreadsheetDocumentView.idl
index 0803a9db8f6f..2861fcb6f074 100644
--- a/offapi/com/sun/star/sheet/AccessibleSpreadsheetDocumentView.idl
+++ b/offapi/com/sun/star/sheet/AccessibleSpreadsheetDocumentView.idl
@@ -57,7 +57,7 @@ published service AccessibleSpreadsheetDocumentView
<ul>
<li>The parent returned by <method>getAccessibleParent</method>
- is the window wich contains the view of these document.</li>
+ is the window which contains the view of these document.</li>
<li>The children returned by <method>getAccessibleChild</method> all
support the interface XAccessible. Calling
<method>getAccessibleContext</method> for these children returns
@@ -67,7 +67,7 @@ published service AccessibleSpreadsheetDocumentView
A child where calling <method>getAccessibleChild</method>
an object that supports this service is returned for
the current spreadsheet which is showing in this document
- window. There is everytime one child which supports this
+ window. There is every time one child which supports this
service, because it is only possible to have one spreadsheet
in the current document window.</li>
<li><type scope="::com::sun::star::drawing">AccessibleShape</type>:
diff --git a/offapi/com/sun/star/sheet/AccessibleSpreadsheetPageView.idl b/offapi/com/sun/star/sheet/AccessibleSpreadsheetPageView.idl
index 010a6841e44d..02160a831dc8 100644
--- a/offapi/com/sun/star/sheet/AccessibleSpreadsheetPageView.idl
+++ b/offapi/com/sun/star/sheet/AccessibleSpreadsheetPageView.idl
@@ -55,7 +55,7 @@ published service AccessibleSpreadsheetPageView
<li>The parent returned by
<method scope="::com::sun::star::accessibility"
>XAccessibleContext::getAccessibleParent</method>
- is the window wich contains the view of these page preview.</li>
+ is the window which contains the view of these page preview.</li>
<li>The children returned by
<method scope="::com::sun::star::accessibility"
>XAccessibleContext::getAccessibleChild</method> all
diff --git a/offapi/com/sun/star/sheet/DatabaseRange.idl b/offapi/com/sun/star/sheet/DatabaseRange.idl
index 3b783f5d73eb..5e4ed16025db 100644
--- a/offapi/com/sun/star/sheet/DatabaseRange.idl
+++ b/offapi/com/sun/star/sheet/DatabaseRange.idl
@@ -119,7 +119,7 @@ published service DatabaseRange
//-------------------------------------------------------------------------
- /** specifies the range where the filter can find the filter criterias.
+ /** specifies the range where the filter can find the filter criteria.
<p>This is only used if <member>SheetFilterDescriptor::UseFilterCriteriaSource</member> is <TRUE/>.</p>
@since OpenOffice 1.1.2
diff --git a/offapi/com/sun/star/sheet/SheetCell.idl b/offapi/com/sun/star/sheet/SheetCell.idl
index 5e08412932e8..b1097efb19a3 100644
--- a/offapi/com/sun/star/sheet/SheetCell.idl
+++ b/offapi/com/sun/star/sheet/SheetCell.idl
@@ -323,7 +323,7 @@ published service SheetCell
//-------------------------------------------------------------------------
- /** Returns the absolute adress of the range as string, e.g. "$Sheet1.$B$2".
+ /** Returns the absolute address of the range as string, e.g. "$Sheet1.$B$2".
*/
[optional, readonly, property] string AbsoluteName;
};
diff --git a/offapi/com/sun/star/sheet/SheetCellRange.idl b/offapi/com/sun/star/sheet/SheetCellRange.idl
index 2c70eca72606..85b923627d5b 100644
--- a/offapi/com/sun/star/sheet/SheetCellRange.idl
+++ b/offapi/com/sun/star/sheet/SheetCellRange.idl
@@ -417,7 +417,7 @@ published service SheetCellRange
//-------------------------------------------------------------------------
- /** Returns the absolute adress of the range as string, e.g. "$Sheet1.$B$2:$D$5".
+ /** Returns the absolute address of the range as string, e.g. "$Sheet1.$B$2:$D$5".
*/
[optional, readonly, property] string AbsoluteName;
};
diff --git a/offapi/com/sun/star/sheet/SheetCellRanges.idl b/offapi/com/sun/star/sheet/SheetCellRanges.idl
index 064961000041..435ddba0e80f 100644
--- a/offapi/com/sun/star/sheet/SheetCellRanges.idl
+++ b/offapi/com/sun/star/sheet/SheetCellRanges.idl
@@ -240,7 +240,7 @@ published service SheetCellRanges
//-------------------------------------------------------------------------
- /** Returns the absolute adress of the ranges as string, e.g. "$Sheet1.$B$2:$D$5".
+ /** Returns the absolute address of the ranges as string, e.g. "$Sheet1.$B$2:$D$5".
*/
[optional, readonly, property] string AbsoluteName;
};
diff --git a/offapi/com/sun/star/sheet/XSheetAnnotations.idl b/offapi/com/sun/star/sheet/XSheetAnnotations.idl
index acce51d0327e..649f226a0102 100644
--- a/offapi/com/sun/star/sheet/XSheetAnnotations.idl
+++ b/offapi/com/sun/star/sheet/XSheetAnnotations.idl
@@ -54,7 +54,7 @@ published interface XSheetAnnotations: com::sun::star::container::XIndexAccess
specified cell and inserts it into the collection.</p>
@param aPosition
- contains the address of the cell thta will contain the
+ contains the address of the cell that will contain the
annotation.
@param aText
diff --git a/offapi/com/sun/star/smarttags/XSmartTagAction.idl b/offapi/com/sun/star/smarttags/XSmartTagAction.idl
index 682ba5865307..74c32ca7c0b4 100644
--- a/offapi/com/sun/star/smarttags/XSmartTagAction.idl
+++ b/offapi/com/sun/star/smarttags/XSmartTagAction.idl
@@ -231,7 +231,7 @@ interface XSmartTagAction: com::sun::star::lang::XInitialization
//-------------------------------------------------------------------------
- /** obtains a language independant name of an action.
+ /** obtains a language independent name of an action.
@param nActionID
The identifier of the requested action.
@@ -240,7 +240,7 @@ interface XSmartTagAction: com::sun::star::lang::XInitialization
The current controller of the document.
@return
- the language independant name of the specified action.
+ the language independent name of the specified action.
@throws com::sun::star::lang::IllegalArgumentException
if the ActionID is not recognized.
diff --git a/offapi/com/sun/star/style/Style.idl b/offapi/com/sun/star/style/Style.idl
index c53834bd6a08..61a6de9a2cfb 100644
--- a/offapi/com/sun/star/style/Style.idl
+++ b/offapi/com/sun/star/style/Style.idl
@@ -123,7 +123,7 @@ published service Style
<p>Assigning an empty string to the style name will disable
the conditional style for that context.</p>
- <p>The alowed strings (contexts) for the name part of an entry
+ <p>The allowed strings (contexts) for the name part of an entry
of the sequence are:</p>
<ul>
diff --git a/offapi/com/sun/star/table/AccessibleTableView.idl b/offapi/com/sun/star/table/AccessibleTableView.idl
index 93163daf50e0..1f6a25b1d986 100644
--- a/offapi/com/sun/star/table/AccessibleTableView.idl
+++ b/offapi/com/sun/star/table/AccessibleTableView.idl
@@ -103,7 +103,7 @@ published service AccessibleTableView
>AccessibleStateType::DEFUNC</const> is always false if the
table is not deleted, the document is open. Also it is
false if the table was showed in a page preview and the
- page preview is allready opend, otherwise it is true.</li>
+ page preview is already opend, otherwise it is true.</li>
<li><const scope="::com::sun::star::accessibility"
>AccessibleStateType::EDITABLE</const> is false if the
table is showed in a page preview or the table is
diff --git a/offapi/com/sun/star/table/CellProperties.idl b/offapi/com/sun/star/table/CellProperties.idl
index 3a5b8e12face..863fba8ab38b 100644
--- a/offapi/com/sun/star/table/CellProperties.idl
+++ b/offapi/com/sun/star/table/CellProperties.idl
@@ -246,7 +246,7 @@ published service CellProperties
//-------------------------------------------------------------------------
- /** is <TRUE/>, if the cell content will be shrinked to fit in the cell.
+ /** is <TRUE/>, if the cell content will be shrunk to fit in the cell.
*/
[optional, property] boolean ShrinkToFit;
diff --git a/offapi/com/sun/star/table/CellRangeListSource.idl b/offapi/com/sun/star/table/CellRangeListSource.idl
index 5fd0edf1ca52..c779abc6a1e1 100644
--- a/offapi/com/sun/star/table/CellRangeListSource.idl
+++ b/offapi/com/sun/star/table/CellRangeListSource.idl
@@ -70,7 +70,7 @@ service CellRangeListSource
method must be instances of <type scope="com::sun::star::beans">NamedValue</type>, where
the <member scope"com::sun::star::beans">NamedValue::Name</member> denotes the type of information
to initialize, and the <member scope"com::sun::star::beans">NamedValue::Value</member>
- the inital value.</p>
+ the initial value.</p>
<p>The following aspects of the components can be initialized:<br/>
<ul><li><b>CellRange</b><br/>
diff --git a/offapi/com/sun/star/table/CellValueBinding.idl b/offapi/com/sun/star/table/CellValueBinding.idl
index 84c9cf65c63a..bec4b3b8ec48 100644
--- a/offapi/com/sun/star/table/CellValueBinding.idl
+++ b/offapi/com/sun/star/table/CellValueBinding.idl
@@ -83,7 +83,7 @@ service CellValueBinding
method must be instances of <type scope="com::sun::star::beans">NamedValue</type>, where
the <member scope"com::sun::star::beans">NamedValue::Name</member> denotes the type of information
to initialize, and the <member scope"com::sun::star::beans">NamedValue::Value</member>
- the inital value.</p>
+ the initial value.</p>
<p>The following aspects of the components can be initialized:<br/>
<ul><li><b>BoundCell</b><br/>
diff --git a/offapi/com/sun/star/table/XCell.idl b/offapi/com/sun/star/table/XCell.idl
index fb95e36823ac..89a2fb1554fd 100644
--- a/offapi/com/sun/star/table/XCell.idl
+++ b/offapi/com/sun/star/table/XCell.idl
@@ -72,7 +72,7 @@ published interface XCell: com::sun::star::uno::XInterface
/** returns the floating point value of the cell.
- <p>For a <em>value cell</em> the value is returnd, for a
+ <p>For a <em>value cell</em> the value is returned, for a
<em>string cell</em> zero is returned and for a <em>formula cell</em>
the result value of a formula is returned.</p>
*/
diff --git a/offapi/com/sun/star/table/XMergeableCellRange.idl b/offapi/com/sun/star/table/XMergeableCellRange.idl
index 484055525f2f..3ff2b9eedad5 100644
--- a/offapi/com/sun/star/table/XMergeableCellRange.idl
+++ b/offapi/com/sun/star/table/XMergeableCellRange.idl
@@ -57,7 +57,7 @@ interface XMergeableCellRange : com::sun::star::uno::XInterface
/** splits the cells in this range.
This will be done by inserting rows and columns if needed or unmerging
- cells taht are already splitted.
+ cells that are already splitted.
@param Columns
this is the number of columns that will be added to each cell. Zero
diff --git a/offapi/com/sun/star/task/DocumentMacroConfirmationRequest.idl b/offapi/com/sun/star/task/DocumentMacroConfirmationRequest.idl
index f6fed14e4956..df7cd7a994c4 100644
--- a/offapi/com/sun/star/task/DocumentMacroConfirmationRequest.idl
+++ b/offapi/com/sun/star/task/DocumentMacroConfirmationRequest.idl
@@ -44,7 +44,7 @@ exception DocumentMacroConfirmationRequest : ClassifiedInteractionRequest
*/
string DocumentURL;
- /** refers to the storage related to the last commited version of the
+ /** refers to the storage related to the last committed version of the
document.
This storage is necessary e.g. for displaying the existing signatures to
diff --git a/offapi/com/sun/star/task/DocumentPasswordRequest.idl b/offapi/com/sun/star/task/DocumentPasswordRequest.idl
index 3fe4a628edb8..dd92dae283ce 100644
--- a/offapi/com/sun/star/task/DocumentPasswordRequest.idl
+++ b/offapi/com/sun/star/task/DocumentPasswordRequest.idl
@@ -33,7 +33,7 @@
module com { module sun { module star { module task {
//=============================================================================
-/** this request specifies the mode in wich the password should be asked
+/** this request specifies the mode in which the password should be asked
<P>
It is supported by <type>InteractionHandler</type> service, and can
diff --git a/offapi/com/sun/star/task/ErrorCodeRequest.idl b/offapi/com/sun/star/task/ErrorCodeRequest.idl
index 13b0ddce4c35..392ccbf78dbe 100644
--- a/offapi/com/sun/star/task/ErrorCodeRequest.idl
+++ b/offapi/com/sun/star/task/ErrorCodeRequest.idl
@@ -35,7 +35,7 @@
/** represents a general error exception.
It can be used to transport the error code information.
- E.g. that can be usefull for interactions.
+ E.g. that can be useful for interactions.
@since OpenOffice 1.1.2
*/
diff --git a/offapi/com/sun/star/task/JobExecutor.idl b/offapi/com/sun/star/task/JobExecutor.idl
index 178b1fc6ca99..d6349a01ae93 100644
--- a/offapi/com/sun/star/task/JobExecutor.idl
+++ b/offapi/com/sun/star/task/JobExecutor.idl
@@ -38,7 +38,7 @@ module com { module sun { module star { module task {
<p>
Can start registered uno services on triggered events and handle there
own configuration and there lifetime. Such events are simple strings
- wich meaning doesn't matter for any real service implementation of this
+ which meaning doesn't matter for any real service implementation of this
specification. But triggered events must be available inside the
configuration and some <type>Job</type>s or <type>AsyncJob</type>s must be registered for that.
</p>
diff --git a/offapi/com/sun/star/task/MasterPasswordRequest.idl b/offapi/com/sun/star/task/MasterPasswordRequest.idl
index 4af4a14b6e6d..0291c2b8e777 100644
--- a/offapi/com/sun/star/task/MasterPasswordRequest.idl
+++ b/offapi/com/sun/star/task/MasterPasswordRequest.idl
@@ -33,7 +33,7 @@
module com { module sun { module star { module task {
//=============================================================================
-/** this request specifies the mode in wich the password should be asked
+/** this request specifies the mode in which the password should be asked
<P>
It is supported by <type>InteractionHandler</type> service, and can
diff --git a/offapi/com/sun/star/task/PDFExportException.idl b/offapi/com/sun/star/task/PDFExportException.idl
index 6fd326db7609..959e114f2156 100644
--- a/offapi/com/sun/star/task/PDFExportException.idl
+++ b/offapi/com/sun/star/task/PDFExportException.idl
@@ -34,7 +34,7 @@
*/
published exception PDFExportException: com::sun::star::uno::Exception
{
- /** contains a number of errors that occured during PDFExport
+ /** contains a number of errors that occurred during PDFExport
*/
sequence< long > ErrorCodes;
};
diff --git a/offapi/com/sun/star/task/PasswordRequest.idl b/offapi/com/sun/star/task/PasswordRequest.idl
index a4cb4752a916..8f8379f61b24 100644
--- a/offapi/com/sun/star/task/PasswordRequest.idl
+++ b/offapi/com/sun/star/task/PasswordRequest.idl
@@ -37,7 +37,7 @@
module com { module sun { module star { module task {
//=============================================================================
-/** this request specifies the mode in wich the password should be asked
+/** this request specifies the mode in which the password should be asked
<P>
It is supported by <type>InteractionHandler</type> service, and can
diff --git a/offapi/com/sun/star/task/XJob.idl b/offapi/com/sun/star/task/XJob.idl
index 5fe3a1d9b7be..91fe9abe4cb6 100644
--- a/offapi/com/sun/star/task/XJob.idl
+++ b/offapi/com/sun/star/task/XJob.idl
@@ -79,7 +79,7 @@ published interface XJob : com::sun::star::uno::XInterface
@throws com::sun::star::uno::Exception
to notify the excutor about faild operation; otherwise the return value
- indicates a successfull finishing.
+ indicates a successful finishing.
*/
any execute(
[in] sequence< com::sun::star::beans::NamedValue > Arguments )
diff --git a/offapi/com/sun/star/task/XJobExecutor.idl b/offapi/com/sun/star/task/XJobExecutor.idl
index 3e0161d71674..585923e8fec9 100644
--- a/offapi/com/sun/star/task/XJobExecutor.idl
+++ b/offapi/com/sun/star/task/XJobExecutor.idl
@@ -53,7 +53,7 @@ published interface XJobExecutor : com::sun::star::uno::XInterface
<p>
Jobs are registered in configuration and will be started by executor
- automaticly, if they are registered for triggered event.
+ automatically, if they are registered for triggered event.
The meaning of given string <var>Event</var> mustn't be known. Because
for the executor it's enough to use it for searching a registered job
inside his own configuration. So no special events will be defined here.
diff --git a/offapi/com/sun/star/task/XStatusIndicator.idl b/offapi/com/sun/star/task/XStatusIndicator.idl
index 6c4928815e33..89b67e1418d2 100644
--- a/offapi/com/sun/star/task/XStatusIndicator.idl
+++ b/offapi/com/sun/star/task/XStatusIndicator.idl
@@ -100,7 +100,7 @@ published interface XStatusIndicator: com::sun::star::uno::XInterface
<p>
Wrong values must be ignored and stopped indicators must ignore this
- call generaly.
+ call generally.
</p>
@param Value
diff --git a/offapi/com/sun/star/task/XUrlContainer.idl b/offapi/com/sun/star/task/XUrlContainer.idl
index dc8f2835a6d8..8ab37edc7807 100644
--- a/offapi/com/sun/star/task/XUrlContainer.idl
+++ b/offapi/com/sun/star/task/XUrlContainer.idl
@@ -72,7 +72,7 @@ published interface XUrlContainer : com::sun::star::uno::XInterface
//-------------------------------------------------------------------------
/** Get all URLs.
- @param OnlyPersistent Only URLs taht are stored persistently shall
+ @param OnlyPersistent Only URLs that are stored persistently shall
be returned.
@returns List of URLs.
*/
diff --git a/offapi/com/sun/star/text/AccessiblePageView.idl b/offapi/com/sun/star/text/AccessiblePageView.idl
index 114c7d3bbc83..a37643ae99d6 100644
--- a/offapi/com/sun/star/text/AccessiblePageView.idl
+++ b/offapi/com/sun/star/text/AccessiblePageView.idl
@@ -103,7 +103,7 @@ published service AccessiblePageView
regardless whether they are bound to the page, a
paragarph, a frame, or a character. The only
exception are text frames that are bound as
- character. They are childen of the paragraph they
+ character. They are children of the paragraph they
are contained in.
<li><type scope="::com::sun::star::text"
>AccessibleTextGraphicObject</type>:
@@ -113,7 +113,7 @@ published service AccessiblePageView
regardless whether they are bound to a page, paragraph,
a frame or a character. The only exception
are text frames that are bound as character. They are
- childen of the paragraph they are contained in.
+ children of the paragraph they are contained in.
<li><type scope="::com::sun::star::text"
>AccessibleTextEmbeddedObject</type>:
A child of this kind is returned for every embedded
@@ -121,7 +121,7 @@ published service AccessiblePageView
These objects are children of the
<type>AccessibleTextDocumentView</type> regardless
whether they are bound to a page, a paragarph, a frame,
- or a character. They are childen of the paragraph they
+ or a character. They are children of the paragraph they
are contained in.
<li><type scope="::com::sun::star::drawing"
>AccessibleShape</type>:
diff --git a/offapi/com/sun/star/text/AccessibleTextDocumentView.idl b/offapi/com/sun/star/text/AccessibleTextDocumentView.idl
index a1ff960a5794..ab864e9fb4de 100644
--- a/offapi/com/sun/star/text/AccessibleTextDocumentView.idl
+++ b/offapi/com/sun/star/text/AccessibleTextDocumentView.idl
@@ -100,7 +100,7 @@ published service AccessibleTextDocumentView
<type>AccessibleTextDocumentView</type> regardless
whether they are bound to a page, a paragarph, a
frame, or a character. The only exception are text
- frames that are bound as character. They are childen
+ frames that are bound as character. They are children
of the paragraph they are contained in.
<li><type scope="::com::sun::star::text"
>AccessibleTextGraphicObject</type>:
@@ -110,7 +110,7 @@ published service AccessibleTextDocumentView
regardless whether they are bound to a page, paragraph,
a frame or a character. The only exception
are text frames that are bound as character. They are
- childen of the paragraph they are contained in.
+ children of the paragraph they are contained in.
<li><type scope="::com::sun::star::text"
>AccessibleTextEmbeddedObject</type>:
A child of this kind is returned for every embedded
@@ -118,7 +118,7 @@ published service AccessibleTextDocumentView
These objects are children of the
<type>AccessibleTextDocumentView</type> regardless
whether they are bound to a page, a paragarph, a frame,
- or a character. They are childen of the paragraph they
+ or a character. They are children of the paragraph they
are contained in.
<li><type scope="::com::sun::star::drawing"
>AccessibleShape</type>: A child of this kind (or a
diff --git a/offapi/com/sun/star/text/LineNumberingProperties.idl b/offapi/com/sun/star/text/LineNumberingProperties.idl
index 1e5da2c60d70..cf24328a9db5 100644
--- a/offapi/com/sun/star/text/LineNumberingProperties.idl
+++ b/offapi/com/sun/star/text/LineNumberingProperties.idl
@@ -97,7 +97,7 @@ published service LineNumberingProperties
/** specifies if the line numbering should start from the
beginning at each page.
- <p>If set to <FALSE/> the line numbering will be continous.</p>
+ <p>If set to <FALSE/> the line numbering will be continuous.</p>
@since OpenOffice 2.0
*/
diff --git a/offapi/com/sun/star/text/NumberingRules.idl b/offapi/com/sun/star/text/NumberingRules.idl
index d02c0578b9e6..854e1c510742 100644
--- a/offapi/com/sun/star/text/NumberingRules.idl
+++ b/offapi/com/sun/star/text/NumberingRules.idl
@@ -57,7 +57,7 @@ published service NumberingRules
//-------------------------------------------------------------------------
/** determins if the margins are absolute or relative
- to the preceeding numbering level.
+ to the preceding numbering level.
*/
[optional, property] boolean IsAbsoluteMargins;
//-------------------------------------------------------------------------
diff --git a/offapi/com/sun/star/text/TextSortDescriptor2.idl b/offapi/com/sun/star/text/TextSortDescriptor2.idl
index a0edfc372c70..6e5780b1c003 100644
--- a/offapi/com/sun/star/text/TextSortDescriptor2.idl
+++ b/offapi/com/sun/star/text/TextSortDescriptor2.idl
@@ -40,7 +40,7 @@
//=============================================================================
-/** describes sort criterias for sorting paragraphs or table contents in
+/** describes sort criteria for sorting paragraphs or table contents in
a text document.
@since OpenOffice 1.1.2
diff --git a/offapi/com/sun/star/text/XRelativeTextContentRemove.idl b/offapi/com/sun/star/text/XRelativeTextContentRemove.idl
index a42caca2dda0..a5d462ef31b4 100644
--- a/offapi/com/sun/star/text/XRelativeTextContentRemove.idl
+++ b/offapi/com/sun/star/text/XRelativeTextContentRemove.idl
@@ -53,7 +53,7 @@ published interface XRelativeTextContentRemove: com::sun::star::uno::XInterface
//-------------------------------------------------------------------------
// DocMerge from xml: method com::sun::star::text::XRelativeTextContentRemove::removeTextContentBefore
- /** removes the text content that preceeds the argument.
+ /** removes the text content that precedes the argument.
<p> This is helpful to remove empty paragraphs before text tables. </p>
*/
diff --git a/offapi/com/sun/star/text/textfield/Author.idl b/offapi/com/sun/star/text/textfield/Author.idl
index 99164c83780e..1885c733c7fe 100644
--- a/offapi/com/sun/star/text/textfield/Author.idl
+++ b/offapi/com/sun/star/text/textfield/Author.idl
@@ -53,7 +53,7 @@ published service Author
*/
[optional, property] short AuthorFormat;
/** contains the current content of the text field.
- <p> This property is escpecially usefull for import/export purposes. </p>
+ <p> This property is especially useful for import/export purposes. </p>
*/
[optional, property]string CurrentPresentation;
/** determines whether the full name of the author is displayed rather than
diff --git a/offapi/com/sun/star/text/textfield/ConditionalText.idl b/offapi/com/sun/star/text/textfield/ConditionalText.idl
index 1653427cdbf8..40ea54d54401 100644
--- a/offapi/com/sun/star/text/textfield/ConditionalText.idl
+++ b/offapi/com/sun/star/text/textfield/ConditionalText.idl
@@ -53,7 +53,7 @@ published service ConditionalText
*/
[property] boolean IsConditionTrue;
/** contains the current content of the text field.
- <p> This property is escpecially usefull for import/export purposes. </p>
+ <p> This property is especially useful for import/export purposes. </p>
*/
[optional, property]string CurrentPresentation;
};
diff --git a/offapi/com/sun/star/text/textfield/Database.idl b/offapi/com/sun/star/text/textfield/Database.idl
index c50e64c486d3..d7f8f7671760 100644
--- a/offapi/com/sun/star/text/textfield/Database.idl
+++ b/offapi/com/sun/star/text/textfield/Database.idl
@@ -40,11 +40,11 @@ published service Database
service com::sun::star::text::DependentTextField;
/** contains the database content that was merged in the last database merge action.
- Initially it contains the colum name in parenthesis (<>).
+ Initially it contains the column name in parenthesis (<>).
*/
[property]string Content;
/** contains the current content of the text field.
- <p> This property is escpecially usefull for import/export purposes. </p>
+ <p> This property is escpecially useful for import/export purposes. </p>
*/
[property]string CurrentPresentation;
/** determins whether the number format is number display format is read
diff --git a/offapi/com/sun/star/text/textfield/ExtendedUser.idl b/offapi/com/sun/star/text/textfield/ExtendedUser.idl
index df84e987b4da..487ea0e1ff3d 100644
--- a/offapi/com/sun/star/text/textfield/ExtendedUser.idl
+++ b/offapi/com/sun/star/text/textfield/ExtendedUser.idl
@@ -42,7 +42,7 @@ published service ExtendedUser
*/
[property]string Content;
/** contains the current content of the text field.
- <p> This property is escpecially usefull for import/export purposes. </p>
+ <p> This property is especially useful for import/export purposes. </p>
*/
[property]string CurrentPresentation;
/** If this flag is set to <FALSE/> the content is regularly updated.
diff --git a/offapi/com/sun/star/text/textfield/FileName.idl b/offapi/com/sun/star/text/textfield/FileName.idl
index e0be9f6d6665..37e02eafc3d7 100644
--- a/offapi/com/sun/star/text/textfield/FileName.idl
+++ b/offapi/com/sun/star/text/textfield/FileName.idl
@@ -39,7 +39,7 @@ published service FileName
{
service com::sun::star::text::TextField;
/** contains the current content of the text field.
- <p> This property is escpecially usefull for import/export purposes. </p>
+ <p> This property is especially useful for import/export purposes. </p>
*/
[property]string CurrentPresentation;
/** determins the format the file name is displayed as specified in
diff --git a/offapi/com/sun/star/text/textfield/GetExpression.idl b/offapi/com/sun/star/text/textfield/GetExpression.idl
index 3a66edf4f545..63f2556af868 100644
--- a/offapi/com/sun/star/text/textfield/GetExpression.idl
+++ b/offapi/com/sun/star/text/textfield/GetExpression.idl
@@ -41,7 +41,7 @@ published service GetExpression
*/
[property]string Content;
/** contains the current content of the text field.
- <p> This property is escpecially usefull for import/export purposes. </p>
+ <p> This property is especially useful for import/export purposes. </p>
*/
[property]string CurrentPresentation;
/** this is the number format for this field.
diff --git a/offapi/com/sun/star/text/textfield/GetReference.idl b/offapi/com/sun/star/text/textfield/GetReference.idl
index c807de9632b2..007f5107febe 100644
--- a/offapi/com/sun/star/text/textfield/GetReference.idl
+++ b/offapi/com/sun/star/text/textfield/GetReference.idl
@@ -39,7 +39,7 @@ published service GetReference
service com::sun::star::text::TextField;
/** contains the current content of the text field.
- <p> This property is escpecially usefull for import/export purposes. </p>
+ <p> This property is especially useful for import/export purposes. </p>
*/
[property] string CurrentPresentation;
/** contains the source of the reference.
diff --git a/offapi/com/sun/star/text/textfield/SetExpression.idl b/offapi/com/sun/star/text/textfield/SetExpression.idl
index 42013c0ff438..1402dfe1b9e0 100644
--- a/offapi/com/sun/star/text/textfield/SetExpression.idl
+++ b/offapi/com/sun/star/text/textfield/SetExpression.idl
@@ -43,7 +43,7 @@ published service SetExpression
*/
[property]string Content;
/** contains the current content of the text field.
- <p> This property is escpecially usefull for import/export purposes. </p>
+ <p> This property is especially useful for import/export purposes. </p>
*/
[property]string CurrentPresentation;
diff --git a/offapi/com/sun/star/text/textfield/TableFormula.idl b/offapi/com/sun/star/text/textfield/TableFormula.idl
index 0f96da7fdc65..41346d2f9163 100644
--- a/offapi/com/sun/star/text/textfield/TableFormula.idl
+++ b/offapi/com/sun/star/text/textfield/TableFormula.idl
@@ -43,7 +43,7 @@ published service TableFormula
[property] string Formula;
/** contains the current content of the text field.
- <p> This property is escpecially usefull for import/export purposes. </p>
+ <p> This property is especially useful for import/export purposes. </p>
*/
[property] string CurrentPresentation;
diff --git a/offapi/com/sun/star/text/textfield/docinfo/ChangeAuthor.idl b/offapi/com/sun/star/text/textfield/docinfo/ChangeAuthor.idl
index f380619485e6..ef4cf28800ef 100644
--- a/offapi/com/sun/star/text/textfield/docinfo/ChangeAuthor.idl
+++ b/offapi/com/sun/star/text/textfield/docinfo/ChangeAuthor.idl
@@ -44,7 +44,7 @@ published service ChangeAuthor
*/
[property]string Author;
/** contains the current content of the text field.
- <p> This property is escpecially usefull for import/export purposes. </p>
+ <p> This property is especially useful for import/export purposes. </p>
*/
[property]string CurrentPresentation;
/** If this flag is set to false the author
diff --git a/offapi/com/sun/star/text/textfield/docinfo/ChangeDateTime.idl b/offapi/com/sun/star/text/textfield/docinfo/ChangeDateTime.idl
index 5eabf334882a..40d7a76d97da 100644
--- a/offapi/com/sun/star/text/textfield/docinfo/ChangeDateTime.idl
+++ b/offapi/com/sun/star/text/textfield/docinfo/ChangeDateTime.idl
@@ -40,7 +40,7 @@ published service ChangeDateTime
{
service com::sun::star::text::TextField;
/** contains the current content of the text field.
- <p> This property is escpecially usefull for import/export purposes. </p>
+ <p> This property is especially useful for import/export purposes. </p>
*/
[property]string CurrentPresentation;
/** If this flag is set to false the author
diff --git a/offapi/com/sun/star/text/textfield/docinfo/CreateAuthor.idl b/offapi/com/sun/star/text/textfield/docinfo/CreateAuthor.idl
index b908ccfa2aee..43600b5472f0 100644
--- a/offapi/com/sun/star/text/textfield/docinfo/CreateAuthor.idl
+++ b/offapi/com/sun/star/text/textfield/docinfo/CreateAuthor.idl
@@ -44,7 +44,7 @@ published service CreateAuthor
*/
[property]string Author;
/** contains the current content of the text field.
- <p> This property is escpecially usefull for import/export purposes. </p>
+ <p> This property is especially useful for import/export purposes. </p>
*/
[property]string CurrentPresentation;
/** If this flag is set to false the author
diff --git a/offapi/com/sun/star/text/textfield/docinfo/CreateDateTime.idl b/offapi/com/sun/star/text/textfield/docinfo/CreateDateTime.idl
index 4ba5516f4cef..d8cc6f4add61 100644
--- a/offapi/com/sun/star/text/textfield/docinfo/CreateDateTime.idl
+++ b/offapi/com/sun/star/text/textfield/docinfo/CreateDateTime.idl
@@ -40,7 +40,7 @@ published service CreateDateTime
{
service com::sun::star::text::TextField;
/** contains the current content of the text field.
- <p> This property is escpecially usefull for import/export purposes. </p>
+ <p> This property is especially useful for import/export purposes. </p>
*/
[property]string CurrentPresentation;
/** If this flag is set to false the author
diff --git a/offapi/com/sun/star/text/textfield/docinfo/Description.idl b/offapi/com/sun/star/text/textfield/docinfo/Description.idl
index 575cf1532ed0..7d7c2a59eea9 100644
--- a/offapi/com/sun/star/text/textfield/docinfo/Description.idl
+++ b/offapi/com/sun/star/text/textfield/docinfo/Description.idl
@@ -47,7 +47,7 @@ published service Description
<p> This property is escpecially useful for import/export purposes. </p>
*/
[property]string CurrentPresentation;
- /** If this flag is set to <FALSE/> the content updated everytime the document
+ /** If this flag is set to <FALSE/> the content updated every time the document
information is changed.
*/
[property]boolean IsFixed;
diff --git a/offapi/com/sun/star/text/textfield/docinfo/EditTime.idl b/offapi/com/sun/star/text/textfield/docinfo/EditTime.idl
index 1fa5a0162fba..04dec30d46f9 100644
--- a/offapi/com/sun/star/text/textfield/docinfo/EditTime.idl
+++ b/offapi/com/sun/star/text/textfield/docinfo/EditTime.idl
@@ -40,7 +40,7 @@ published service EditTime
{
service com::sun::star::text::TextField;
/** contains the current content of the text field.
- <p> This property is escpecially usefull for import/export purposes. </p>
+ <p> This property is especially useful for import/export purposes. </p>
*/
[property]string CurrentPresentation;
/** If this flag is set to false the author
diff --git a/offapi/com/sun/star/text/textfield/docinfo/Info0.idl b/offapi/com/sun/star/text/textfield/docinfo/Info0.idl
index 02f98a3b2f1b..1afb1634d406 100644
--- a/offapi/com/sun/star/text/textfield/docinfo/Info0.idl
+++ b/offapi/com/sun/star/text/textfield/docinfo/Info0.idl
@@ -47,7 +47,7 @@ published service Info0
<p> This property is escpecially useful for import/export purposes. </p>
*/
[property]string CurrentPresentation;
- /** If this flag is set to <FALSE/> the content updated everytime the document
+ /** If this flag is set to <FALSE/> the content updated every time the document
information is changed.
*/
[property]boolean IsFixed;
diff --git a/offapi/com/sun/star/text/textfield/docinfo/Info1.idl b/offapi/com/sun/star/text/textfield/docinfo/Info1.idl
index 9516b93ebf55..5ce5e3a8e591 100644
--- a/offapi/com/sun/star/text/textfield/docinfo/Info1.idl
+++ b/offapi/com/sun/star/text/textfield/docinfo/Info1.idl
@@ -47,7 +47,7 @@ published service Info1
<p> This property is escpecially useful for import/export purposes. </p>
*/
[property]string CurrentPresentation;
- /** If this flag is set to <FALSE/> the content updated everytime the document
+ /** If this flag is set to <FALSE/> the content updated every time the document
information is changed.
*/
[property]boolean IsFixed;
diff --git a/offapi/com/sun/star/text/textfield/docinfo/Info2.idl b/offapi/com/sun/star/text/textfield/docinfo/Info2.idl
index e7056e0f7628..0b83fa65bde2 100644
--- a/offapi/com/sun/star/text/textfield/docinfo/Info2.idl
+++ b/offapi/com/sun/star/text/textfield/docinfo/Info2.idl
@@ -47,7 +47,7 @@ published service Info2
<p> This property is escpecially useful for import/export purposes. </p>
*/
[property]string CurrentPresentation;
- /** If this flag is set to <FALSE/> the content updated everytime the document
+ /** If this flag is set to <FALSE/> the content updated every time the document
information is changed.
*/
[property]boolean IsFixed;
diff --git a/offapi/com/sun/star/text/textfield/docinfo/Info3.idl b/offapi/com/sun/star/text/textfield/docinfo/Info3.idl
index 4d8164e3a78c..1c54d837e0de 100644
--- a/offapi/com/sun/star/text/textfield/docinfo/Info3.idl
+++ b/offapi/com/sun/star/text/textfield/docinfo/Info3.idl
@@ -47,7 +47,7 @@ published service Info3
<p> This property is escpecially useful for import/export purposes. </p>
*/
[property]string CurrentPresentation;
- /** If this flag is set to <FALSE/> the content updated everytime the document
+ /** If this flag is set to <FALSE/> the content updated every time the document
information is changed.
*/
[property]boolean IsFixed;
diff --git a/offapi/com/sun/star/text/textfield/docinfo/Keywords.idl b/offapi/com/sun/star/text/textfield/docinfo/Keywords.idl
index bb0cdcf78593..3ce7f6b343c8 100644
--- a/offapi/com/sun/star/text/textfield/docinfo/Keywords.idl
+++ b/offapi/com/sun/star/text/textfield/docinfo/Keywords.idl
@@ -47,7 +47,7 @@ published service Keywords
<p> This property is escpecially useful for import/export purposes. </p>
*/
[property]string CurrentPresentation;
- /** If this flag is set to <FALSE/> the content updated everytime the document
+ /** If this flag is set to <FALSE/> the content updated every time the document
information is changed.
*/
[property]boolean IsFixed;
diff --git a/offapi/com/sun/star/text/textfield/docinfo/PrintAuthor.idl b/offapi/com/sun/star/text/textfield/docinfo/PrintAuthor.idl
index 6ca519c5a06d..525debeae943 100644
--- a/offapi/com/sun/star/text/textfield/docinfo/PrintAuthor.idl
+++ b/offapi/com/sun/star/text/textfield/docinfo/PrintAuthor.idl
@@ -44,7 +44,7 @@ published service PrintAuthor
*/
[property]string Author;
/** contains the current content of the text field.
- <p> This property is escpecially usefull for import/export purposes. </p>
+ <p> This property is especially useful for import/export purposes. </p>
*/
[property]string CurrentPresentation;
/** If this flag is set to false the author
diff --git a/offapi/com/sun/star/text/textfield/docinfo/PrintDateTime.idl b/offapi/com/sun/star/text/textfield/docinfo/PrintDateTime.idl
index 6e7fb5eb91f1..8986affbce08 100644
--- a/offapi/com/sun/star/text/textfield/docinfo/PrintDateTime.idl
+++ b/offapi/com/sun/star/text/textfield/docinfo/PrintDateTime.idl
@@ -40,7 +40,7 @@ published service PrintDateTime
{
service com::sun::star::text::TextField;
/** contains the current content of the text field.
- <p> This property is escpecially usefull for import/export purposes. </p>
+ <p> This property is especially useful for import/export purposes. </p>
*/
[property]string CurrentPresentation;
/** If this flag is set to false the author
diff --git a/offapi/com/sun/star/text/textfield/docinfo/Revision.idl b/offapi/com/sun/star/text/textfield/docinfo/Revision.idl
index 805d8c70daa6..62b7d2cc55cb 100644
--- a/offapi/com/sun/star/text/textfield/docinfo/Revision.idl
+++ b/offapi/com/sun/star/text/textfield/docinfo/Revision.idl
@@ -47,7 +47,7 @@ published service Revision
<p> This property is escpecially useful for import/export purposes. </p>
*/
[property]string CurrentPresentation;
- /** If this flag is set to <FALSE/> the content updated everytime the document
+ /** If this flag is set to <FALSE/> the content updated every time the document
information is changed.
*/
[property]boolean IsFixed;
diff --git a/offapi/com/sun/star/text/textfield/docinfo/Subject.idl b/offapi/com/sun/star/text/textfield/docinfo/Subject.idl
index eab15856e1e1..4ab7dfb8f280 100644
--- a/offapi/com/sun/star/text/textfield/docinfo/Subject.idl
+++ b/offapi/com/sun/star/text/textfield/docinfo/Subject.idl
@@ -47,7 +47,7 @@ published service Subject
<p> This property is escpecially useful for import/export purposes. </p>
*/
[property]string CurrentPresentation;
- /** If this flag is set to <FALSE/> the content updated everytime the document
+ /** If this flag is set to <FALSE/> the content updated every time the document
information is changed.
*/
[property]boolean IsFixed;
diff --git a/offapi/com/sun/star/text/textfield/docinfo/Title.idl b/offapi/com/sun/star/text/textfield/docinfo/Title.idl
index e4dee7b47de8..8b046000c3eb 100644
--- a/offapi/com/sun/star/text/textfield/docinfo/Title.idl
+++ b/offapi/com/sun/star/text/textfield/docinfo/Title.idl
@@ -47,7 +47,7 @@ published service Title
<p> This property is escpecially useful for import/export purposes. </p>
*/
[property]string CurrentPresentation;
- /** If this flag is set to <FALSE/> the content updated everytime the document
+ /** If this flag is set to <FALSE/> the content updated every time the document
information is changed.
*/
[property]boolean IsFixed;
diff --git a/offapi/com/sun/star/ucb/CommandFailedException.idl b/offapi/com/sun/star/ucb/CommandFailedException.idl
index 3beed81c105b..848b3f172c02 100644
--- a/offapi/com/sun/star/ucb/CommandFailedException.idl
+++ b/offapi/com/sun/star/ucb/CommandFailedException.idl
@@ -34,7 +34,7 @@
module com { module sun { module star { module ucb {
//=============================================================================
-/** This exception is thrown if an exception situation occured during the
+/** This exception is thrown if an exception situation occurred during the
processing of a command and an
<type scope="com::sun::star::task">XInteractionHandler</type> was able
to handle the request for the error condition and the requesting code
diff --git a/offapi/com/sun/star/ucb/Content.idl b/offapi/com/sun/star/ucb/Content.idl
index 1e0171056fa3..2d422b184f3c 100644
--- a/offapi/com/sun/star/ucb/Content.idl
+++ b/offapi/com/sun/star/ucb/Content.idl
@@ -53,7 +53,7 @@ published service Content
/** must be implemented to make it possible to resolve cyclic object
references.
- <p>Those references i.e. may occure if there are listeners
+ <p>Those references i.e. may occur if there are listeners
registered at the content ( the content holds the listeners ) and
the implementation of the listener interface holds a reference on
the content. If the content shall be released,
@@ -703,7 +703,7 @@ published service Content
<td>UpdateOnOpen</td>
<td>boolean</td>
<td>indicates whether (sub)contents shall be automatically updated
- everytime a (folder) content is opened.</br>This property may be
+ every time a (folder) content is opened.</br>This property may be
used to control whether a folder content should read data only
from local cache when it is opened, or whether it should connect
to a server to obtain latest data.</td>
diff --git a/offapi/com/sun/star/ucb/ContentAction.idl b/offapi/com/sun/star/ucb/ContentAction.idl
index 0b21598e916b..efbd57138bea 100644
--- a/offapi/com/sun/star/ucb/ContentAction.idl
+++ b/offapi/com/sun/star/ucb/ContentAction.idl
@@ -48,7 +48,7 @@ module com { module sun { module star { module ucb {
</td></tr>
<tr><td>D3</td><td>A folder content F has a set of children H(F) that is a
set of content identifiers. For example, an "open"
- command will usualy return a subset of the contents
+ command will usually return a subset of the contents
denoted by H(F).</td></tr>
</table>
diff --git a/offapi/com/sun/star/ucb/FetchError.idl b/offapi/com/sun/star/ucb/FetchError.idl
index 92cc2fad12fc..b2143cafa3a6 100644
--- a/offapi/com/sun/star/ucb/FetchError.idl
+++ b/offapi/com/sun/star/ucb/FetchError.idl
@@ -28,7 +28,7 @@
module com { module sun { module star { module ucb {
//=============================================================================
-/** These values are used to specify whether and which error has occured
+/** These values are used to specify whether and which error has occurred
while fetching data of some <type>ContentResultSet</type> rows.
@see FetchResult
diff --git a/offapi/com/sun/star/ucb/FetchResult.idl b/offapi/com/sun/star/ucb/FetchResult.idl
index e78a205f0024..8b2f51491d8a 100644
--- a/offapi/com/sun/star/ucb/FetchResult.idl
+++ b/offapi/com/sun/star/ucb/FetchResult.idl
@@ -67,7 +67,7 @@ published struct FetchResult
boolean Orientation;
//-------------------------------------------------------------------------
- /** indicates whether and which error has occured, while fetching.
+ /** indicates whether and which error has occurred, while fetching.
<p>The value may contain zero or more constants of the
<type>FetchError</type> constants group.
diff --git a/offapi/com/sun/star/ucb/HierarchyDataSource.idl b/offapi/com/sun/star/ucb/HierarchyDataSource.idl
index 4e920f8113fa..8f7001710a28 100644
--- a/offapi/com/sun/star/ucb/HierarchyDataSource.idl
+++ b/offapi/com/sun/star/ucb/HierarchyDataSource.idl
@@ -78,11 +78,11 @@ published service HierarchyDataSource
must accept a property named <code>nodepath</code> of type
<atom>string</atom>. This property must contain the absolute path to an
element of the data. The view that is selected consists of the named
- element and all its decendants. A path consists of segments that are
+ element and all its descendants. A path consists of segments that are
separated by a single slash ('/'). There is neither a leading nor a
trailing slash allowed. The <b>root</b> of the hierarchy data always
has an empty path. Refer to <type>HierarchyDataReadAccess</type> for
- more informtion on hierarchical names.
+ more information on hierarchical names.
<p>Other arguments can be used to control the behavior of the view.
These are different for different implementations. Whether and how they
diff --git a/offapi/com/sun/star/ucb/InteractiveFileIOException.idl b/offapi/com/sun/star/ucb/InteractiveFileIOException.idl
index 74d73c267581..701509ba3c9e 100644
--- a/offapi/com/sun/star/ucb/InteractiveFileIOException.idl
+++ b/offapi/com/sun/star/ucb/InteractiveFileIOException.idl
@@ -47,7 +47,7 @@ module com { module sun { module star { module ucb {
published exception InteractiveFileIOException: com::sun::star::ucb::InteractiveIOException
{
//-------------------------------------------------------------------------
- /** The file url where the i/o error occured
+ /** The file url where the i/o error occurred
*/
string FileName;
};
diff --git a/offapi/com/sun/star/ucb/InteractiveLockingNotLockedException.idl b/offapi/com/sun/star/ucb/InteractiveLockingNotLockedException.idl
index 76b3f6f03eb9..ccc5bf47f3b2 100644
--- a/offapi/com/sun/star/ucb/InteractiveLockingNotLockedException.idl
+++ b/offapi/com/sun/star/ucb/InteractiveLockingNotLockedException.idl
@@ -35,7 +35,7 @@ module com { module sun { module star { module ucb {
//=============================================================================
/** An error indicating that the resource is not locked.
- <p>This error for instance can occure when trying to unlock a resource
+ <p>This error for instance can occur when trying to unlock a resource
that is not locked.
</p>
diff --git a/offapi/com/sun/star/ucb/Lock.idl b/offapi/com/sun/star/ucb/Lock.idl
index d9ada3d68357..10d1a65a88e3 100644
--- a/offapi/com/sun/star/ucb/Lock.idl
+++ b/offapi/com/sun/star/ucb/Lock.idl
@@ -60,7 +60,7 @@ published struct Lock : LockEntry
<p>This element specifies the number of seconds between granting
of the lock and the automatic removal of that lock. The value
must not be greater than <code>2^32-1</code>. A value of <code>-1</code>
- stands for an infinit lock, that will never be removed automatically.
+ stands for an infinite lock, that will never be removed automatically.
*/
hyper Timeout;
diff --git a/offapi/com/sun/star/ucb/Rule.idl b/offapi/com/sun/star/ucb/Rule.idl
index 03c46182d7eb..20588ea01213 100644
--- a/offapi/com/sun/star/ucb/Rule.idl
+++ b/offapi/com/sun/star/ucb/Rule.idl
@@ -61,7 +61,7 @@ published struct Rule
</tr>
<tr>
<td>FORWARD</td>
- <td>The email address of the recepient</td>
+ <td>The email address of the recipient</td>
</tr>
<tr>
<td>All other actions</td>
diff --git a/offapi/com/sun/star/ucb/SearchRecursion.idl b/offapi/com/sun/star/ucb/SearchRecursion.idl
index 5d8273cfc2c3..301a3e9e014e 100644
--- a/offapi/com/sun/star/ucb/SearchRecursion.idl
+++ b/offapi/com/sun/star/ucb/SearchRecursion.idl
@@ -29,7 +29,7 @@
module com { module sun { module star { module ucb {
//=============================================================================
-/** the various modes of recursion when searching through a hierachical
+/** the various modes of recursion when searching through a hierarchical
object.
@see SearchInfo
diff --git a/offapi/com/sun/star/ucb/TransientDocumentsContentProvider.idl b/offapi/com/sun/star/ucb/TransientDocumentsContentProvider.idl
index bffd3e28d136..6e535217a85d 100644
--- a/offapi/com/sun/star/ucb/TransientDocumentsContentProvider.idl
+++ b/offapi/com/sun/star/ucb/TransientDocumentsContentProvider.idl
@@ -36,7 +36,7 @@ module com { module sun { module star { module ucb {
<type>ContentProvider</type> for the <type>UniversalContentBroker</type>
(UCB).
- <p>It provides access to the hierachical structure of the documents that
+ <p>It provides access to the hierarchical structure of the documents that
are active in a running OpenOffice.org process. As long as a document was
not closed, the TDCP can access it. All documents that have been loaded -
regardless of their persistent document format (sxw, doc, sxc, xls, ...)
diff --git a/offapi/com/sun/star/ucb/UniversalContentBroker.idl b/offapi/com/sun/star/ucb/UniversalContentBroker.idl
index f66bd350c016..35cda1cf7d57 100644
--- a/offapi/com/sun/star/ucb/UniversalContentBroker.idl
+++ b/offapi/com/sun/star/ucb/UniversalContentBroker.idl
@@ -74,7 +74,7 @@ published service UniversalContentBroker
/** must be implemented to make it possible to resolve cyclic object
references.
- <p>Those references i.e. may occure if content provider implementations
+ <p>Those references i.e. may occur if content provider implementations
hold references to the Broker. The Broker itself always holds its
providers. If the Broker shall be released,
<member scope="com::sun::star::lang">XComponent::dispose</member>
diff --git a/offapi/com/sun/star/ucb/WebDAVContentProvider.idl b/offapi/com/sun/star/ucb/WebDAVContentProvider.idl
index 517acfb97ec6..20ab473763ca 100644
--- a/offapi/com/sun/star/ucb/WebDAVContentProvider.idl
+++ b/offapi/com/sun/star/ucb/WebDAVContentProvider.idl
@@ -37,7 +37,7 @@ module com { module sun { module star { module ucb {
<p>It provides access to WebDAV and standard HTTP servers. The DCP
communicates with the server using the WebDAV protocol which is an
- extention to the HTTP protocol or using the plain HTTP protocol in case
+ extension to the HTTP protocol or using the plain HTTP protocol in case
the server is not WebDAV enabled.
@see com::sun::star::ucb::Content
diff --git a/offapi/com/sun/star/ucb/WebDAVFolderContent.idl b/offapi/com/sun/star/ucb/WebDAVFolderContent.idl
index 1d5f232753dc..7ffb2718508d 100644
--- a/offapi/com/sun/star/ucb/WebDAVFolderContent.idl
+++ b/offapi/com/sun/star/ucb/WebDAVFolderContent.idl
@@ -118,7 +118,7 @@ published service WebDAVFolderContent
</li>
<li>
transfer ( only transfers from DCP Folders/DCP Documents to other
- DCP folders. Source and target must recide on the same server. )
+ DCP folders. Source and target must reside on the same server. )
</li>
</ul>
diff --git a/offapi/com/sun/star/ucb/XAnyCompare.idl b/offapi/com/sun/star/ucb/XAnyCompare.idl
index 5c8fd88eea7b..385f705c5ddd 100644
--- a/offapi/com/sun/star/ucb/XAnyCompare.idl
+++ b/offapi/com/sun/star/ucb/XAnyCompare.idl
@@ -38,7 +38,7 @@ module com { module sun { module star { module ucb {
published interface XAnyCompare: com::sun::star::uno::XInterface
{
//-------------------------------------------------------------------------
- /** allows comparision of two <atom>any</atom>s.
+ /** allows comparison of two <atom>any</atom>s.
@param Any1
is the first compare value
diff --git a/offapi/com/sun/star/ucb/XCachedContentResultSetFactory.idl b/offapi/com/sun/star/ucb/XCachedContentResultSetFactory.idl
index 015675a62efe..cb9a5ee55c59 100644
--- a/offapi/com/sun/star/ucb/XCachedContentResultSetFactory.idl
+++ b/offapi/com/sun/star/ucb/XCachedContentResultSetFactory.idl
@@ -55,7 +55,7 @@ published interface XCachedContentResultSetFactory: com::sun::star::uno::XInterf
@param xMapping
can be used for optimization of remote access via the interface
<type>XContentAccess</type> of the <type>CachedContentResultSet</type>.
- This paramter can be <NULL/>.
+ This parameter can be <NULL/>.
@returns
an instance of service <type>CachedContentResultSet</type>.
diff --git a/offapi/com/sun/star/ucb/XCachedDynamicResultSetFactory.idl b/offapi/com/sun/star/ucb/XCachedDynamicResultSetFactory.idl
index 8f5bf0921861..916b270d74bd 100644
--- a/offapi/com/sun/star/ucb/XCachedDynamicResultSetFactory.idl
+++ b/offapi/com/sun/star/ucb/XCachedDynamicResultSetFactory.idl
@@ -63,7 +63,7 @@ published interface XCachedDynamicResultSetFactory: com::sun::star::uno::XInterf
@param ContentIdentifierMapping
is not required, but can be set if it is necessary to change the
- identity of the contents accessable via the interface
+ identity of the contents accessible via the interface
<type>XContentAccess</type> of the <type>ContentResultSet</type>
(e.g., if merging two sources of the same type).
diff --git a/offapi/com/sun/star/ucb/XCommandProcessor.idl b/offapi/com/sun/star/ucb/XCommandProcessor.idl
index 7afe4171a4dc..13a192628552 100644
--- a/offapi/com/sun/star/ucb/XCommandProcessor.idl
+++ b/offapi/com/sun/star/ucb/XCommandProcessor.idl
@@ -120,7 +120,7 @@ published interface XCommandProcessor : com::sun::star::uno::XInterface
to indicate that two threads tried to use the same command identifier
@throws Exception
- if an error occured during the execution of the command.
+ if an error occurred during the execution of the command.
*/
any execute( [in] Command aCommand,
[in] long CommandId,
diff --git a/offapi/com/sun/star/ucb/XContentIdentifierMapping.idl b/offapi/com/sun/star/ucb/XContentIdentifierMapping.idl
index a2d2b730a436..22f406e8e3b5 100644
--- a/offapi/com/sun/star/ucb/XContentIdentifierMapping.idl
+++ b/offapi/com/sun/star/ucb/XContentIdentifierMapping.idl
@@ -107,7 +107,7 @@ published interface XContentIdentifierMapping: com::sun::star::uno::XInterface
be returned unmodified).
@returns <TRUE/> if any of the columns contain data that (potentially)
- needs mapping (though maybe no mapping occured for the concrete input
+ needs mapping (though maybe no mapping occurred for the concrete input
data of this call). This information can be useful to decide whether,
for another row, a call to this function is at all necessary.
*/
diff --git a/offapi/com/sun/star/ucb/XContentProviderManager.idl b/offapi/com/sun/star/ucb/XContentProviderManager.idl
index 4c9e4864d583..ef8b7f6c7d8e 100644
--- a/offapi/com/sun/star/ucb/XContentProviderManager.idl
+++ b/offapi/com/sun/star/ucb/XContentProviderManager.idl
@@ -108,7 +108,7 @@ published interface XContentProviderManager: com::sun::star::uno::XInterface
(<code>&lt;simple-authority&gt:</code>), or by arbitrary characters not
including any of '/', '?', or '#', followed by a given string literal,
followed by arbitrary characters that start with one of '/', '?', or
- '#', if any. The comparision of string literals is done ignoring the
+ '#', if any. The comparison of string literals is done ignoring the
case of ASCII letters. The <code>&lt;translation&gt:</code> regexps
match the same URLs as their <code>&lt;simple&gt:</code> counterparts,
but they also describe how a (local) URL is mapped to another (remote)
diff --git a/offapi/com/sun/star/ucb/XRemoteContentProviderChangeListener.idl b/offapi/com/sun/star/ucb/XRemoteContentProviderChangeListener.idl
index a98af7980f25..967115a3cc02 100644
--- a/offapi/com/sun/star/ucb/XRemoteContentProviderChangeListener.idl
+++ b/offapi/com/sun/star/ucb/XRemoteContentProviderChangeListener.idl
@@ -49,7 +49,7 @@ published interface XRemoteContentProviderChangeListener:
occur.
@param Event
- describes the change that has occured.
+ describes the change that has occurred.
*/
void
remoteContentProviderChange([in] RemoteContentProviderChangeEvent Event);
diff --git a/offapi/com/sun/star/ui/UIElementType.idl b/offapi/com/sun/star/ui/UIElementType.idl
index 9955b2f1f114..78a701a6021a 100644
--- a/offapi/com/sun/star/ui/UIElementType.idl
+++ b/offapi/com/sun/star/ui/UIElementType.idl
@@ -33,7 +33,7 @@ module com { module sun { module star { module ui {
constants UIElementType
{
//-------------------------------------------------------------------------
- /** unkown user interface element type, which can be used as a wildcard
+ /** unknown user interface element type, which can be used as a wildcard
to specify all types.
*/
const short UNKNOWN = 0;
diff --git a/offapi/com/sun/star/ui/XAcceleratorConfiguration.idl b/offapi/com/sun/star/ui/XAcceleratorConfiguration.idl
index 5278659b6824..ab88da219ef0 100644
--- a/offapi/com/sun/star/ui/XAcceleratorConfiguration.idl
+++ b/offapi/com/sun/star/ui/XAcceleratorConfiguration.idl
@@ -139,7 +139,7 @@ interface XAcceleratorConfiguration
</p>
<p>
- Note: This method cant be used to remove entities from the configuration set.
+ Note: This method can't be used to remove entities from the configuration set.
Empty parameters will result into an exception!
Use the method removeKeyEvent() instead.
</p>
@@ -153,7 +153,7 @@ interface XAcceleratorConfiguration
the new command for the specified key event.
@throws ::com::sun::star::lang::IllegalArgumentException
- if the key event isnt a valid one. Commands can be
+ if the key event isn't a valid one. Commands can be
checked only, if they are empty. Because every URL schema can be used
by commands in general, so its not possible to validate it.
*/
@@ -191,12 +191,12 @@ interface XAcceleratorConfiguration
where the pecified command is registered for.
@throws ::com::sun::star::lang::IllegalArgumentException
- if the specified command is empty. It cant be checked, if a command
+ if the specified command is empty. It can't be checked, if a command
is valid - because every URL schema can be used here.
@throws ::com::sun::star::container::NoSuchElementException
- if the specified command isnt empty but does not
- occure inside this configuration set.
+ if the specified command isn't empty but does not
+ occur inside this configuration set.
*/
sequence< com::sun::star::awt::KeyEvent > getKeyEventsByCommand( [in] string sCommand )
raises(com::sun::star::lang::IllegalArgumentException ,
@@ -217,12 +217,12 @@ interface XAcceleratorConfiguration
Instead to the method getKeyEventsForCommand() the returned list contains only
one(!) key event bound to one(!) requested command. If more then one key event
is bound to a command - a selection is done inside this method.
- This internal selection cant be influenced from outside.
+ This internal selection can't be influenced from outside.
</p>
@attention Because its not defined, that any command (e.g. configured inside a menu)
- must have an accelerator - we cant reject the call if at least one command
- does not occure inside this configuration set ...
+ must have an accelerator - we can't reject the call if at least one command
+ does not occur inside this configuration set ...
We handle it more gracefully - and return an empty item instead of throwing
and exception.
@@ -236,7 +236,7 @@ interface XAcceleratorConfiguration
@throws ::com::sun::star::lang::IllegalArgumentException
if at least one of the specified commands is empty.
- It cant be checked, if a command is valid -
+ It can't be checked, if a command is valid -
because every URL schema can be used here.
*/
sequence< any > getPreferredKeyEventsForCommandList( [in] sequence< string > lCommandList )
@@ -266,7 +266,7 @@ interface XAcceleratorConfiguration
if the specified command is empty.
@throws ::com::sun::star::container::NoSuchElementException
- if the specified command isnt used inside this configuration set.
+ if the specified command isn't used inside this configuration set.
*/
void removeCommandFromAllKeyEvents( [in] string sCommand )
raises(com::sun::star::lang::IllegalArgumentException ,
diff --git a/offapi/com/sun/star/ui/dialogs/FilePicker.idl b/offapi/com/sun/star/ui/dialogs/FilePicker.idl
index 77f0d76458d1..e999003a85eb 100644
--- a/offapi/com/sun/star/ui/dialogs/FilePicker.idl
+++ b/offapi/com/sun/star/ui/dialogs/FilePicker.idl
@@ -134,7 +134,7 @@ published service FilePicker
//-------------------------------------------------------------------------
/** For canceling a running dialog instance.
- <p>This may be usefull for automatic test tools for instance.</p>
+ <p>This may be useful for automatic test tools for instance.</p>
*/
[optional] interface com::sun::star::util::XCancellable;
diff --git a/offapi/com/sun/star/ui/dialogs/FolderPicker.idl b/offapi/com/sun/star/ui/dialogs/FolderPicker.idl
index b3d61e090680..926df4812317 100644
--- a/offapi/com/sun/star/ui/dialogs/FolderPicker.idl
+++ b/offapi/com/sun/star/ui/dialogs/FolderPicker.idl
@@ -72,7 +72,7 @@ published service FolderPicker
//-------------------------------------------------------------------------
/** For canceling a running dialog instance.
- <p>This may be usefull for automatic test tools for instance.</p>
+ <p>This may be useful for automatic test tools for instance.</p>
*/
[optional] interface com::sun::star::util::XCancellable;
};
diff --git a/offapi/com/sun/star/util/Endianness.idl b/offapi/com/sun/star/util/Endianness.idl
index e129ac964bc5..528f1fab979b 100644
--- a/offapi/com/sun/star/util/Endianness.idl
+++ b/offapi/com/sun/star/util/Endianness.idl
@@ -37,7 +37,7 @@ constants Endianness
/** Little endian.<p>
The values are stored in little endian format, i.e. the bytes
- of the long word 0xAABBCCDD are layed out like 0xDD, 0xCC,
+ of the long word 0xAABBCCDD are laid out like 0xDD, 0xCC,
0xBB, 0xAA in memory. That is, data of arbitrary machine word
lengths always starts with the least significant byte, and
ends with the most significant one.<p>
@@ -47,7 +47,7 @@ constants Endianness
/** Big endian.<p>
The values are stored in big endian format, i.e. the bytes of
- the long word 0xAABBCCDD are layed out like 0xAA, 0xBB, 0xCC,
+ the long word 0xAABBCCDD are laid out like 0xAA, 0xBB, 0xCC,
0xDD in memory. That is, data of arbitrary machine word
lengths always start with the most significant byte, and ends
with the least significant one.<p>
diff --git a/offapi/com/sun/star/util/PathSubstitution.idl b/offapi/com/sun/star/util/PathSubstitution.idl
index ec68212a86cc..852faae58f47 100644
--- a/offapi/com/sun/star/util/PathSubstitution.idl
+++ b/offapi/com/sun/star/util/PathSubstitution.idl
@@ -99,7 +99,7 @@ published service PathSubstitution
/** Interface to exchange path variables with defined paths and to resubstitute paths with path variables.
<p>
- To resubstitute path variables the caller must provide pathes as UCB-compliant URL's.
+ To resubstitute path variables the caller must provide paths as UCB-compliant URL's.
</p>
*/
interface com::sun::star::util::XStringSubstitution;
diff --git a/offapi/com/sun/star/util/XChangesNotifier.idl b/offapi/com/sun/star/util/XChangesNotifier.idl
index 357ef2535fe2..e6cc92e2eb35 100644
--- a/offapi/com/sun/star/util/XChangesNotifier.idl
+++ b/offapi/com/sun/star/util/XChangesNotifier.idl
@@ -42,7 +42,7 @@ module com { module sun { module star { module util {
published interface XChangesNotifier: com::sun::star::uno::XInterface
{
//-------------------------------------------------------------------------
- /** adds the specified listener to receive events when changes occured.
+ /** adds the specified listener to receive events when changes occurred.
*/
[oneway] void addChangesListener( [in] com::sun::star::util::XChangesListener aListener );
diff --git a/offapi/com/sun/star/util/XCloseBroadcaster.idl b/offapi/com/sun/star/util/XCloseBroadcaster.idl
index d8a9243f76a1..e5b6a543ef0b 100644
--- a/offapi/com/sun/star/util/XCloseBroadcaster.idl
+++ b/offapi/com/sun/star/util/XCloseBroadcaster.idl
@@ -56,7 +56,7 @@ published interface XCloseBroadcaster: com::sun::star::uno::XInterface
/** adds the specified listener to receive or have a veto for "close" events
@param Listener
- the listener wich is interest on closing events
+ the listener which is interested on closing events
*/
[oneway] void addCloseListener( [in] XCloseListener Listener );
@@ -64,7 +64,7 @@ published interface XCloseBroadcaster: com::sun::star::uno::XInterface
/** removes the specified listener
@param Listener
- the listener wich isn't interest on closing events anylonger
+ the listener which isn't interested on closing events anylonger
*/
[oneway] void removeCloseListener( [in] XCloseListener Listener );
};
diff --git a/offapi/com/sun/star/util/XCloseListener.idl b/offapi/com/sun/star/util/XCloseListener.idl
index 85f89f8eae43..5d14ab223536 100644
--- a/offapi/com/sun/star/util/XCloseListener.idl
+++ b/offapi/com/sun/star/util/XCloseListener.idl
@@ -55,7 +55,7 @@
<p>
If an event <method scope="com::sun::star::lang">XEventListener::disposing</method>
- occured, nobody called <method>XCloseable::close</method> on listened object before.
+ occurred, nobody called <method>XCloseable::close</method> on listened object before.
Then it's not allowed to break this request - it must be accepted!
</p>
@@ -109,16 +109,16 @@ published interface XCloseListener: com::sun::star::lang::XEventListener
raises( CloseVetoException );
//-------------------------------------------------------------------------
- /** is called when the listened object is closed realy
+ /** is called when the listened object is closed really
<p>
- Now the listened object is closed realy. Listener has to accept that;
+ Now the listened object is closed really. Listener has to accept that;
should deregister himself and relaese all references to it.
It's not allowed nor possible to disagree with that by throwing any exception.
</p>
<p>
- If the event <member scope="com::sun::star::lang">XEventListener::disposing()</member> occured before
+ If the event <member scope="com::sun::star::lang">XEventListener::disposing()</member> occurred before
it must be accepted too. There exist no chance for a disagreement any more.
</p>
diff --git a/offapi/com/sun/star/util/XCloseable.idl b/offapi/com/sun/star/util/XCloseable.idl
index e0337a421d5a..eb14672df69b 100644
--- a/offapi/com/sun/star/util/XCloseable.idl
+++ b/offapi/com/sun/star/util/XCloseable.idl
@@ -46,9 +46,9 @@ module com { module sun { module star { module util {
<li>closed (if it supports <member>XCloseable::close()</member>)</li>
</ul>
First version gives the object no chance to disagree with that (e.g. if a
- process is still running and can't be cancelled realy). Last version
+ process is still running and can't be really cancelled). Last version
provides this possibility, but can't guarantee real termination of called object.
- It depends from the environment of an object, if one or both mechanism are neccessary.
+ It depends from the environment of an object, if one or both mechanism are necessary.
</p>
<p>
@@ -70,8 +70,8 @@ published interface XCloseable: XCloseBroadcaster
/** try to close the object
<p>
- Must definitly be called before <member scope="com::sun::star::lang">XComponent::dispose()</member>.
- But nobody can guarentee real closing of called object - because it can disagree with that if any
+ Must definitely be called before <member scope="com::sun::star::lang">XComponent::dispose()</member>.
+ But nobody can guarantee real closing of called object - because it can disagree with that if any
still running processes can't be cancelled yet. It's not allowed to block this call till internal
operations will be finished here. They must be cancelled or call must return imediatly by throwing
the <type>CloseVetoException</type>. Otherwise (if nothing exist to disagree) it must return normaly.
@@ -106,11 +106,11 @@ published interface XCloseable: XCloseBroadcaster
</p>
@param DeliverOwnership
- <TRUE/> delegates the ownership of ths closing object to any one which throw the CloseVetoException.
+ <TRUE/> delegates the ownership of this closing object to any one which throw the CloseVetoException.
This new owner has to close the closing object again if his still running processes will be finished.
<br>
<FALSE/> let the ownership at the original one which called the close() method. He must react for possible
- CloseVetoExceptions and try it again at a later time. This can be usefull for a generic UI handling.
+ CloseVetoExceptions and try it again at a later time. This can be useful for a generic UI handling.
@throws CloseVetoException
indicates that the closing object himself or any of his currently registered listener disagree with this close() request.
diff --git a/offapi/com/sun/star/util/XSortable.idl b/offapi/com/sun/star/util/XSortable.idl
index 52953f7f12a6..d91d478e9b6e 100644
--- a/offapi/com/sun/star/util/XSortable.idl
+++ b/offapi/com/sun/star/util/XSortable.idl
@@ -40,7 +40,7 @@ module com { module sun { module star { module util {
/** makes it possible to sort the contents of this object.
- <p>The available properties describing the sort criterias are
+ <p>The available properties describing the sort criteria are
defined in the sort descriptor implemented by the object that
implements this interface.</p>
diff --git a/offapi/com/sun/star/util/XStringSubstitution.idl b/offapi/com/sun/star/util/XStringSubstitution.idl
index 6904de906c03..b14d504e01da 100644
--- a/offapi/com/sun/star/util/XStringSubstitution.idl
+++ b/offapi/com/sun/star/util/XStringSubstitution.idl
@@ -67,7 +67,7 @@ published interface XStringSubstitution : com::sun::star::uno::XInterface
A string containing variables that should be substituted.
@param bSubstRequired
- Specifies if a successfull substitution is required. The
+ Specifies if a successful substitution is required. The
function throws a <type scope="com::sun::star::container">NoSuchElementException</type>
if it finds a variable that is unknown. In this case it is possible
that the returned string would not be what the caller expected!
@@ -106,7 +106,7 @@ published interface XStringSubstitution : com::sun::star::uno::XInterface
<p>
The method iterates through it's internal variable list and tries to
- find the given variable. If the variable is unkown a
+ find the given variable. If the variable is unknown a
<type scope="com::sun::star::container">NoSuchElementException</type>
is thrown.
</p>
diff --git a/offapi/com/sun/star/util/XTextSearch.idl b/offapi/com/sun/star/util/XTextSearch.idl
index eb83944b8900..a4960e60f227 100644
--- a/offapi/com/sun/star/util/XTextSearch.idl
+++ b/offapi/com/sun/star/util/XTextSearch.idl
@@ -113,7 +113,7 @@ published constants SearchFlags
/** Flag for "Weighted Levenshtein Distance" search / Relaxed
checking of limit, split weigh pools.
- <p> If not specified (<b>strict</b>), the search is sucessful if
+ <p> If not specified (<b>strict</b>), the search is successful if
the WLD is within a calculated limit where each insertion,
deletion and replacement adds a weight to a common pool of
weights. This is the mathematically correct WLD. </p>
diff --git a/offapi/com/sun/star/util/XURLTransformer.idl b/offapi/com/sun/star/util/XURLTransformer.idl
index 29505e1b542f..8ec0698327a4 100644
--- a/offapi/com/sun/star/util/XURLTransformer.idl
+++ b/offapi/com/sun/star/util/XURLTransformer.idl
@@ -99,7 +99,7 @@ published interface XURLTransformer: com::sun::star::uno::XInterface
stores it into <member>URL::Complete</member>
@param aURL
- the URL which contains alls neccessary information in a structured form. The
+ the URL which contains alls necessary information in a structured form. The
member <member>URL::Complete</member> contains the URL in string notation after
the operation finished successfully. Otherwise the content of <member>URL::complete</member>
is not defined.
@@ -113,7 +113,7 @@ published interface XURLTransformer: com::sun::star::uno::XInterface
/** returns a representation of the URL for UI purposes only
<p>
- Sometimes it can be usefull to show an URL on an user interface
+ Sometimes it can be useful to show an URL on an user interface
in a more "human readable" form. Such URL can't be used on any API
call, but make it easier for the user to understand it.
</p>
diff --git a/offapi/com/sun/star/xforms/XModel.idl b/offapi/com/sun/star/xforms/XModel.idl
index 623d6b3ce09d..344a86a45b6e 100644
--- a/offapi/com/sun/star/xforms/XModel.idl
+++ b/offapi/com/sun/star/xforms/XModel.idl
@@ -103,7 +103,7 @@ interface XModel
consistency criteria for the model data is not fulfilled.
@throws com::sun::star::lang::WrappedTargetException
- when another error occured during the submission. The
+ when another error occurred during the submission. The
<member scope="com::sun::star::lang">WrappedTargetException::TargetException</member> describes
this error then.
*/
@@ -127,7 +127,7 @@ interface XModel
consistency criteria for the model data is not fulfilled.
@throws com::sun::star::lang::WrappedTargetException
- when another error occured during the submission. The
+ when another error occurred during the submission. The
<member scope="com::sun::star::lang">WrappedTargetException::TargetException</member> describes
this error then.
*/
diff --git a/offapi/com/sun/star/xml/crypto/sax/XMissionTaker.idl b/offapi/com/sun/star/xml/crypto/sax/XMissionTaker.idl
index a8ceca9185ff..0a13eae6387c 100644
--- a/offapi/com/sun/star/xml/crypto/sax/XMissionTaker.idl
+++ b/offapi/com/sun/star/xml/crypto/sax/XMissionTaker.idl
@@ -36,7 +36,7 @@ module com { module sun { module star { module xml { module crypto { module sax
/**
* Interface of Mission Taker.
* <p>
- * This interface is used to controll a mission.
+ * This interface is used to control a mission.
*/
interface XMissionTaker : com::sun::star::uno::XInterface
{
diff --git a/offapi/com/sun/star/xml/crypto/sax/XSAXEventKeeper.idl b/offapi/com/sun/star/xml/crypto/sax/XSAXEventKeeper.idl
index d9592e82dd81..a1108225da63 100644
--- a/offapi/com/sun/star/xml/crypto/sax/XSAXEventKeeper.idl
+++ b/offapi/com/sun/star/xml/crypto/sax/XSAXEventKeeper.idl
@@ -122,7 +122,7 @@ interface XSAXEventKeeper : com::sun::star::uno::XInterface
/**
* Prints information about all bufferred elements.
*
- * @return a tree-style string including all buffer informtion
+ * @return a tree-style string including all buffer information
*/
string printBufferNodeTree();
diff --git a/offapi/com/sun/star/xml/dom/events/EventType.idl b/offapi/com/sun/star/xml/dom/events/EventType.idl
index 3a4a16e21eaf..eb7f980177e9 100644
--- a/offapi/com/sun/star/xml/dom/events/EventType.idl
+++ b/offapi/com/sun/star/xml/dom/events/EventType.idl
@@ -111,7 +111,7 @@ enum EventType
DOMSubtreeModified,
/*
- This is a general event for notification of all changes to the document. It can be used instead of the more specific events listed below. It may be fired after a single modification to the document or, at the implementation's discretion, after multiple changes have occurred. The latter use should generally be used to accomodate multiple changes which occur either simultaneously or in rapid succession. The target of this event is the lowest common parent of the changes which have taken place. This event is dispatched after any other events caused by the mutation have fired.
+ This is a general event for notification of all changes to the document. It can be used instead of the more specific events listed below. It may be fired after a single modification to the document or, at the implementation's discretion, after multiple changes have occurred. The latter use should generally be used to accommodate multiple changes which occur either simultaneously or in rapid succession. The target of this event is the lowest common parent of the changes which have taken place. This event is dispatched after any other events caused by the mutation have fired.
* Bubbles: Yes
* Cancelable: No
* Context Info: None
diff --git a/offapi/com/sun/star/xml/input/XElement.idl b/offapi/com/sun/star/xml/input/XElement.idl
index dd9dcb5e8276..55fa3ffb2ed8 100644
--- a/offapi/com/sun/star/xml/input/XElement.idl
+++ b/offapi/com/sun/star/xml/input/XElement.idl
@@ -63,7 +63,7 @@ interface XElement : com::sun::star::uno::XInterface
*/
XAttributes getAttributes();
- /** Called upon each occuring child element.
+ /** Called upon each occurring child element.
@param uid
namespace uid of element
diff --git a/offapi/com/sun/star/xml/sax/XExtendedDocumentHandler.idl b/offapi/com/sun/star/xml/sax/XExtendedDocumentHandler.idl
index 2f65d73dd9e3..6413452efcb2 100644
--- a/offapi/com/sun/star/xml/sax/XExtendedDocumentHandler.idl
+++ b/offapi/com/sun/star/xml/sax/XExtendedDocumentHandler.idl
@@ -49,7 +49,7 @@ published interface XExtendedDocumentHandler: com::sun::star::xml::sax::XDocumen
/** receives notification about the start of a CDATA section in the
XML-source.
- <p>Any string comming in via character handler may include chars,
+ <p>Any string coming in via character handler may include chars,
that would otherwise be interpreted as markup. </p>
*/
void startCDATA()
diff --git a/offapi/com/sun/star/xml/sax/XFastAttributeList.idl b/offapi/com/sun/star/xml/sax/XFastAttributeList.idl
index 5ddccfbf52af..b456adc3e87d 100644
--- a/offapi/com/sun/star/xml/sax/XFastAttributeList.idl
+++ b/offapi/com/sun/star/xml/sax/XFastAttributeList.idl
@@ -47,7 +47,7 @@ module com { module sun { module star { module xml { module sax {
/** a container for the attributes of an xml element.
- <br>Attributes are seperated into known attributes and unknown attributes.
+ <br>Attributes are separated into known attributes and unknown attributes.
<p>Known attributes have a local name that is known to the <type>XFastTokenHandler</token>
registered at the <type>XFastParser</type> which created the sax event containing
this attributes. If an attribute also has a namespace, that must be registered
diff --git a/offapi/com/sun/star/xml/sax/XFastParser.idl b/offapi/com/sun/star/xml/sax/XFastParser.idl
index d379762b9fb5..569ae50426b0 100644
--- a/offapi/com/sun/star/xml/sax/XFastParser.idl
+++ b/offapi/com/sun/star/xml/sax/XFastParser.idl
@@ -98,7 +98,7 @@ module com { module sun { module star { module xml { module sax {
<p>Setting a <type>XFastTokenHandler</type> with <member>setTokenHandler</member>
is optional, but without a <type>XFastTokenHandler</type> you will only
- get unknown sax events. This can be usefull if you are only interested
+ get unknown sax events. This can be useful if you are only interested
in the namespace handling and/or the context feature.
<p>For each element the parser sends a create child element event to the
diff --git a/offapi/com/sun/star/xml/wrapper/XXMLDocumentWrapper.idl b/offapi/com/sun/star/xml/wrapper/XXMLDocumentWrapper.idl
index 6fee71e53e58..7f26ec1a89b9 100644
--- a/offapi/com/sun/star/xml/wrapper/XXMLDocumentWrapper.idl
+++ b/offapi/com/sun/star/xml/wrapper/XXMLDocumentWrapper.idl
@@ -46,7 +46,7 @@ interface XXMLElementWrapper;
* data structure, this interface provides a common method set which
* each lauguage have to implement.
* <p>
- * In another word, this interface wraps language dependant methods,
+ * In another word, this interface wraps language dependent methods,
* then other component can manipulate DOM data through UNO methods.
*/
interface XXMLDocumentWrapper : com::sun::star::uno::XInterface
diff --git a/offapi/com/sun/star/xml/wrapper/XXMLElementWrapper.idl b/offapi/com/sun/star/xml/wrapper/XXMLElementWrapper.idl
index 81f7d9cf4be5..58ee720d6649 100644
--- a/offapi/com/sun/star/xml/wrapper/XXMLElementWrapper.idl
+++ b/offapi/com/sun/star/xml/wrapper/XXMLElementWrapper.idl
@@ -37,7 +37,7 @@ module com { module sun { module star { module xml { module wrapper {
* Interface of XML Element Wrapper.
* <p>
* This interface is used to wrap a element information, which
- * make it enable to tranfer the element information between
+ * make it enable to transfer the element information between
* different languages, such as C++/Java.
*/
interface XXMLElementWrapper : com::sun::star::uno::XInterface
diff --git a/officecfg/registry/data/org/openoffice/Inet.xcu b/officecfg/registry/data/org/openoffice/Inet.xcu
index 14896978c4f5..f77904492908 100644
--- a/officecfg/registry/data/org/openoffice/Inet.xcu
+++ b/officecfg/registry/data/org/openoffice/Inet.xcu
@@ -91,50 +91,6 @@
</prop>
</node>
<node oor:name="SearchEngines">
- <node oor:name="Euroseek" oor:op="replace">
- <node oor:name="And">
- <prop oor:name="ooInetPrefix" oor:type="xs:string">
- <value>http://www.euroseek.com/system/search.cgi?mode=internet&amp;string=</value>
- </prop>
- <prop oor:name="ooInetSuffix" oor:type="xs:string">
- <value>&amp;language=en</value>
- </prop>
- <prop oor:name="ooInetCaseMatch" oor:type="xs:int">
- <value>0</value>
- </prop>
- <prop oor:name="ooInetSeparator" oor:type="xs:string">
- <value>+</value>
- </prop>
- </node>
- <node oor:name="Exact">
- <prop oor:name="ooInetPrefix" oor:type="xs:string">
- <value>http://www.euroseek.com/system/search.cgi?mode=internet&amp;string=</value>
- </prop>
- <prop oor:name="ooInetSuffix" oor:type="xs:string">
- <value>&amp;language=en</value>
- </prop>
- <prop oor:name="ooInetCaseMatch" oor:type="xs:int">
- <value>0</value>
- </prop>
- <prop oor:name="ooInetSeparator" oor:type="xs:string">
- <value>%20</value>
- </prop>
- </node>
- <node oor:name="Or">
- <prop oor:name="ooInetPrefix" oor:type="xs:string">
- <value>http://www.euroseek.com/system/search.cgi?mode=internet&amp;string=</value>
- </prop>
- <prop oor:name="ooInetSuffix" oor:type="xs:string">
- <value>&amp;language=en</value>
- </prop>
- <prop oor:name="ooInetCaseMatch" oor:type="xs:int">
- <value>0</value>
- </prop>
- <prop oor:name="ooInetSeparator" oor:type="xs:string">
- <value>+</value>
- </prop>
- </node>
- </node>
<node oor:name="Lycos" oor:op="replace">
<node oor:name="And">
<prop oor:name="ooInetPrefix" oor:type="xs:string">
diff --git a/officecfg/registry/data/org/openoffice/Office/Labels.xcu b/officecfg/registry/data/org/openoffice/Office/Labels.xcu
index 6e3b86bdbef4..343a8310b427 100644
--- a/officecfg/registry/data/org/openoffice/Office/Labels.xcu
+++ b/officecfg/registry/data/org/openoffice/Office/Labels.xcu
@@ -3908,7 +3908,7 @@
<prop oor:name="Name">
- <value>L7651 Mini Adress</value>
+ <value>L7651 Mini Address</value>
</prop>
<prop oor:name="Measure">
diff --git a/officecfg/registry/data/org/openoffice/Office/UI/GenericCommands.xcu b/officecfg/registry/data/org/openoffice/Office/UI/GenericCommands.xcu
index cb7c1ec92e53..75affea6cf66 100644
--- a/officecfg/registry/data/org/openoffice/Office/UI/GenericCommands.xcu
+++ b/officecfg/registry/data/org/openoffice/Office/UI/GenericCommands.xcu
@@ -5153,7 +5153,7 @@
<value>9</value>
</prop>
</node>
- <node oor:name=".uno:Substract" oor:op="replace">
+ <node oor:name=".uno:Subtract" oor:op="replace">
<prop oor:name="Label" oor:type="xs:string">
<value xml:lang="en-US">~Subtract</value>
</prop>
diff --git a/officecfg/registry/data/org/openoffice/Office/UI/Sidebar.xcu b/officecfg/registry/data/org/openoffice/Office/UI/Sidebar.xcu
index abb4f9c53859..25de5cf0ac4b 100644
--- a/officecfg/registry/data/org/openoffice/Office/UI/Sidebar.xcu
+++ b/officecfg/registry/data/org/openoffice/Office/UI/Sidebar.xcu
@@ -348,9 +348,12 @@
Calc, OLE, hidden ;
DrawImpress, 3DObject, visible ;
DrawImpress, Draw, visible ;
+ DrawImpress, Graphic, hidden ;
DrawImpress, TextObject, hidden ;
DrawImpress, OLE, hidden ;
WriterVariants, Draw, visible ;
+ Writer, Graphic, hidden ;
+ Writer, OLE, hidden ;
Writer, Frame, visible ;
</value>
</prop>
diff --git a/officecfg/registry/schema/org/openoffice/Office/Calc.xcs b/officecfg/registry/schema/org/openoffice/Office/Calc.xcs
index ba4129acb331..463db9ce3390 100644
--- a/officecfg/registry/schema/org/openoffice/Office/Calc.xcs
+++ b/officecfg/registry/schema/org/openoffice/Office/Calc.xcs
@@ -1043,7 +1043,7 @@
<desc>If true, Calc tries to detect special number format, such as date and scientific notation.</desc>
<label>DetectSpecialNumbers</label>
</info>
- <value>false</value>
+ <value>true</value>
</prop>
<prop oor:name="Language" oor:type="xs:int">
<info>
diff --git a/officecfg/registry/schema/org/openoffice/Office/Common.xcs b/officecfg/registry/schema/org/openoffice/Office/Common.xcs
index 8000a105dbd6..fb55dff7ef49 100644
--- a/officecfg/registry/schema/org/openoffice/Office/Common.xcs
+++ b/officecfg/registry/schema/org/openoffice/Office/Common.xcs
@@ -1023,7 +1023,7 @@
<prop oor:name="PaintBuffer" oor:type="xs:boolean">
<info>
<author>AW</author>
- <desc>Specifies if the Application Repaint shall use a buffer for Pre-Rendering. If on, screen flicker is greatly reduced and remote display is fast, but a buffer (graphics memory) is needed. If off, screen flicker will occurr and remote display is slow, but no buffer is needed. This is the global switch for the whole office.</desc>
+ <desc>Specifies if the Application Repaint shall use a buffer for Pre-Rendering. If on, screen flicker is greatly reduced and remote display is fast, but a buffer (graphics memory) is needed. If off, screen flicker will occur and remote display is slow, but no buffer is needed. This is the global switch for the whole office.</desc>
<label>Application Repaint is allowed to use Pre-Rendering Buffer.</label>
</info>
<value>true</value>
@@ -4829,7 +4829,7 @@
<desc>Contains settings for HTML import.</desc>
</info>
<prop oor:name="NumbersEnglishUS" oor:type="xs:boolean">
- <!-- UIHints: Tools Options Load/Save - HTML Compability [Section] Import -->
+ <!-- UIHints: Tools Options Load/Save - HTML Compatibility [Section] Import -->
<info>
<author>ER</author>
<desc>Specifies if numbers should be parsed according to the en-US locale instead of the user's locale.</desc>
@@ -6164,7 +6164,7 @@
previews, etc...). EdgeBlending will visualize a one pixel border on the preview object with interpolated
colors (default: TopLeft White, BottomRight Black) so that a nice 3D effect is shown. It is a percent
value describing how strong the effect shall be. The value 0% switches it off, while the value 100% will
- cover the preview object's border completely with one pixel. Values in-between vill be alpha-blended with
+ cover the preview object's border completely with one pixel. Values in-between will be alpha-blended with
the original preview image.
</desc>
<label>Defines the EdgeBlending for Previews in Percent.</label>
diff --git a/officecfg/registry/schema/org/openoffice/Office/Embedding.xcs b/officecfg/registry/schema/org/openoffice/Office/Embedding.xcs
index 90abd98ad211..12a96d7c1fc6 100644
--- a/officecfg/registry/schema/org/openoffice/Office/Embedding.xcs
+++ b/officecfg/registry/schema/org/openoffice/Office/Embedding.xcs
@@ -130,7 +130,7 @@
<group oor:name="MimeTypeClassIDRelations" oor:extensible="true">
<info>
<author>MAV</author>
- <desc>Contains convertion table from MimeType to ClassID. MimeType is used as a name for entry.</desc>
+ <desc>Contains conversion table from MimeType to ClassID. MimeType is used as a name for entry.</desc>
</info>
</group>
<group oor:name="UserFactories" oor:extensible="true">
diff --git a/officecfg/registry/schema/org/openoffice/Office/ExtensionDependencies.xcs b/officecfg/registry/schema/org/openoffice/Office/ExtensionDependencies.xcs
index d0539b4bf12e..db06317d73fb 100644
--- a/officecfg/registry/schema/org/openoffice/Office/ExtensionDependencies.xcs
+++ b/officecfg/registry/schema/org/openoffice/Office/ExtensionDependencies.xcs
@@ -22,12 +22,12 @@
<oor:component-schema oor:name="ExtensionDependencies" oor:package="org.openoffice.Office" xml:lang="en-US" xmlns:oor="http://openoffice.org/2001/registry" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<info>
<author>JSC</author>
- <desc>Contains a list of extensions with additonal dependencies to overrule missing dependencies in extensions
+ <desc>Contains a list of extensions with additional dependencies to overrule missing dependencies in extensions
or to control specific extensions in general.</desc>
</info>
<templates>
<group oor:name="Extension">
- <info><desc>Describes the additonal meta data for an extension whereas the node name have to be the extension identifier.</desc></info>
+ <info><desc>Describes the additional meta data for an extension whereas the node name have to be the extension identifier.</desc></info>
<prop oor:name="Versions" oor:type="oor:string-list" oor:localized="false">
<info><desc>Specifies a list of extension versions for which the extra dependecies should be active.</desc></info>
</prop>
@@ -35,7 +35,7 @@
<info><desc>Specifies a list of platforms for which the extra dependencies mechanism is active.</desc></info>
</prop>
<prop oor:name="Dependencies" oor:type="xs:string" oor:localized="false">
- <info><desc>Specifies a list of additonal dependencies.</desc></info>
+ <info><desc>Specifies a list of additional dependencies.</desc></info>
</prop>
</group>
</templates>
diff --git a/officecfg/registry/schema/org/openoffice/Office/ExtensionManager.xcs b/officecfg/registry/schema/org/openoffice/Office/ExtensionManager.xcs
index 5102f427c7ae..34e964c7062d 100755
--- a/officecfg/registry/schema/org/openoffice/Office/ExtensionManager.xcs
+++ b/officecfg/registry/schema/org/openoffice/Office/ExtensionManager.xcs
@@ -55,7 +55,7 @@
</group>
<group oor:name="ExtensionUpdateData">
<info>
- <desc>Contains inforamtion about availabe or ignored updates for extensions."</desc>
+ <desc>Contains information about available or ignored updates for extensions."</desc>
</info>
<set oor:name="AvailableUpdates" oor:node-type="UpdateInfo">
<info>
diff --git a/officecfg/registry/schema/org/openoffice/Office/Histories.xcs b/officecfg/registry/schema/org/openoffice/Office/Histories.xcs
index 86e18f44071d..517f13f68726 100644
--- a/officecfg/registry/schema/org/openoffice/Office/Histories.xcs
+++ b/officecfg/registry/schema/org/openoffice/Office/Histories.xcs
@@ -62,7 +62,7 @@
</info>
<prop oor:name="HistoryItemRef" oor:type="xs:string">
<info>
- <desc>Reference to an item of the orginal history list.</desc>
+ <desc>Reference to an item of the original history list.</desc>
</info>
</prop>
</group>
diff --git a/officecfg/registry/schema/org/openoffice/Office/OOoImprovement/Settings.xcs b/officecfg/registry/schema/org/openoffice/Office/OOoImprovement/Settings.xcs
index b9ed2e878e5a..f88340cedaa9 100644
--- a/officecfg/registry/schema/org/openoffice/Office/OOoImprovement/Settings.xcs
+++ b/officecfg/registry/schema/org/openoffice/Office/OOoImprovement/Settings.xcs
@@ -58,7 +58,7 @@
</prop>
<prop oor:name="HelpUrl" oor:type="xs:string">
<info>
- <desc>the url where additional infomation can be found.</desc>
+ <desc>the url where additional information can be found.</desc>
</info>
<value>http://wiki.services.openoffice.org/wiki/User_Experience/OpenOffice.org_User_Feedback_Program</value>
</prop>
diff --git a/officecfg/registry/schema/org/openoffice/Office/OptionsDialog.xcs b/officecfg/registry/schema/org/openoffice/Office/OptionsDialog.xcs
index a7bf6c4bffca..f8e3cff901ef 100644
--- a/officecfg/registry/schema/org/openoffice/Office/OptionsDialog.xcs
+++ b/officecfg/registry/schema/org/openoffice/Office/OptionsDialog.xcs
@@ -81,7 +81,7 @@
</info>
<set oor:name="Nodes" oor:node-type="OrderedNode">
<info>
- <desc>A set member countains a Node (see type Node) which has been
+ <desc>A set member contains a Node (see type Node) which has been
assigned to this Module. Also entities which do not own the Module
may add members to the set. Please look at the specification for
applying restrictions
@@ -275,7 +275,7 @@
<set oor:name="Modules" oor:node-type="Module">
<info>
- <desc>List of availabe application contexts</desc>
+ <desc>List of available application contexts</desc>
</info>
</set>
<set oor:name="Nodes" oor:node-type="Node">
diff --git a/officecfg/registry/schema/org/openoffice/Office/Paths.xcs b/officecfg/registry/schema/org/openoffice/Office/Paths.xcs
index 059949b6a28c..8a38a1aa90cf 100644
--- a/officecfg/registry/schema/org/openoffice/Office/Paths.xcs
+++ b/officecfg/registry/schema/org/openoffice/Office/Paths.xcs
@@ -26,7 +26,7 @@
<info>
<author>AS</author>
- <desc>Configuration of layered pathes replacing the old path configuration org.openoffice.Office.Common/Path.</desc>
+ <desc>Configuration of layered paths replacing the old path configuration org.openoffice.Office.Common/Path.</desc>
</info>
<templates>
@@ -48,7 +48,7 @@
</info>
<prop oor:name="IsSinglePath" oor:type="xs:boolean">
<info>
- <desc>Mark a NamedPath as SinglePath (false=MultiPath). Only the property WritePath is used for such single pathes then.</desc>
+ <desc>Mark a NamedPath as SinglePath (false=MultiPath). Only the property WritePath is used for such single paths then.</desc>
</info>
<value>false</value>
</prop>
diff --git a/officecfg/registry/schema/org/openoffice/Office/PresenterScreen.xcs b/officecfg/registry/schema/org/openoffice/Office/PresenterScreen.xcs
index 3450fa4f4e01..5edbe76f38f9 100644
--- a/officecfg/registry/schema/org/openoffice/Office/PresenterScreen.xcs
+++ b/officecfg/registry/schema/org/openoffice/Office/PresenterScreen.xcs
@@ -176,7 +176,7 @@
<group oor:name="ToolBarEntry">
<info><desc>Describes a ToolBar entry.</desc></info>
<prop oor:name="Name" oor:type="xs:string">
- <info><desc>Name of the entry. May be used to have mode dependant entries.</desc></info>
+ <info><desc>Name of the entry. May be used to have mode dependent entries.</desc></info>
</prop>
<prop oor:name="Type" oor:type="xs:string">
<info><desc>Type of the entry. Examples are "Label" and "Button".</desc></info>
diff --git a/officecfg/registry/schema/org/openoffice/Office/TabBrowse.xcs b/officecfg/registry/schema/org/openoffice/Office/TabBrowse.xcs
index 7ba357e7bbc3..90b3663c5a7a 100644
--- a/officecfg/registry/schema/org/openoffice/Office/TabBrowse.xcs
+++ b/officecfg/registry/schema/org/openoffice/Office/TabBrowse.xcs
@@ -47,7 +47,7 @@
<info>
<desc>Because there can exists more then one implementations of such TaskCreatorService,
the actual one must be specified with it's UNO implementation name.
- Otherwise it's not guaranteed, which implementation is realy used at runtime.</desc>
+ Otherwise it's not guaranteed, which implementation is really used at runtime.</desc>
</info>
</prop>
</group>
diff --git a/officecfg/registry/schema/org/openoffice/Office/UI.xcs b/officecfg/registry/schema/org/openoffice/Office/UI.xcs
index 4a7fe95dd757..8fa27ec733a6 100644
--- a/officecfg/registry/schema/org/openoffice/Office/UI.xcs
+++ b/officecfg/registry/schema/org/openoffice/Office/UI.xcs
@@ -655,7 +655,7 @@
</info>
<prop oor:name="FillAsynchronously" oor:type="xs:boolean">
<info>
- <desc>Specifies whether the dialog should fill its view asynchronously. Asnychronous filling allows the user to cancel blocking operations, which may be usefull for instance for mounted, but dead NFS devices.</desc>
+ <desc>Specifies whether the dialog should fill its view asynchronously. Asnychronous filling allows the user to cancel blocking operations, which may be useful for instance for mounted, but dead NFS devices.</desc>
</info>
<value>false</value>
</prop>
diff --git a/officecfg/registry/schema/org/openoffice/Office/UI/Sidebar.xcs b/officecfg/registry/schema/org/openoffice/Office/UI/Sidebar.xcs
index 4002980665fa..f249c58271b4 100644
--- a/officecfg/registry/schema/org/openoffice/Office/UI/Sidebar.xcs
+++ b/officecfg/registry/schema/org/openoffice/Office/UI/Sidebar.xcs
@@ -147,7 +147,7 @@
</prop>
<prop oor:name="TitleBarIsOptional" oor:type="xs:boolean">
<info>
- <desc>When true then the title bar can be ommitted when the panel is the only panel in a deck.</desc>
+ <desc>When true, the title bar can be omitted when the panel is the only panel in a deck.</desc>
</info>
<value>false</value>
</prop>
diff --git a/officecfg/registry/schema/org/openoffice/Office/UI/WindowState.xcs b/officecfg/registry/schema/org/openoffice/Office/UI/WindowState.xcs
index 60c59da3eba9..7e343a45413c 100644
--- a/officecfg/registry/schema/org/openoffice/Office/UI/WindowState.xcs
+++ b/officecfg/registry/schema/org/openoffice/Office/UI/WindowState.xcs
@@ -125,7 +125,7 @@
</prop>
<prop oor:name="SoftClose" oor:type="xs:boolean">
<info>
- <desc>Specifies that a user interface element shouldn't be closed forever. This is usefull for context sensitive ui elements which must be visible whenever their context is active. This property is only used by toolbars or floating window user interface elements.</desc>
+ <desc>Specifies that a user interface element shouldn't be closed forever. This is useful for context sensitive ui elements which must be visible whenever their context is active. This property is only used by toolbars or floating window user interface elements.</desc>
</info>
<value>false</value>
</prop>
diff --git a/officecfg/registry/schema/org/openoffice/Office/WebWizard.xcs b/officecfg/registry/schema/org/openoffice/Office/WebWizard.xcs
index f5834e8aaf3a..7961e8ed8e9c 100644
--- a/officecfg/registry/schema/org/openoffice/Office/WebWizard.xcs
+++ b/officecfg/registry/schema/org/openoffice/Office/WebWizard.xcs
@@ -478,7 +478,7 @@
</prop>
<prop oor:name="Filter" oor:type="xs:string">
<info>
- <desc>Semicolon seperated list of file types this filter will show</desc>
+ <desc>Semicolon separated list of file types this filter will show</desc>
</info>
</prop>
</group>
diff --git a/officecfg/registry/schema/org/openoffice/Office/Writer.xcs b/officecfg/registry/schema/org/openoffice/Office/Writer.xcs
index cffbe06ddbbc..1610f1898df8 100644
--- a/officecfg/registry/schema/org/openoffice/Office/Writer.xcs
+++ b/officecfg/registry/schema/org/openoffice/Office/Writer.xcs
@@ -4898,14 +4898,14 @@
<info>
<desc>Contains settings for the media type used for the label.</desc>
</info>
- <prop oor:name="Continous" oor:type="xs:boolean">
+ <prop oor:name="Continuous" oor:type="xs:boolean">
<!-- OldPath: Writer/Dialog/Labels/Labels -->
<!-- OldLocation: Soffice.cfg -->
<!-- UIHints: File New Labels Labels -->
<info>
<author>OS</author>
<desc>Specifies if continuous paper or individual sheets are used.</desc>
- <label>Continous / Sheet</label>
+ <label>Continuous / Sheet</label>
</info>
<value>false</value>
</prop>
@@ -5085,14 +5085,14 @@
<info>
<desc>Contains settings for the media type used.</desc>
</info>
- <prop oor:name="Continous" oor:type="xs:boolean">
+ <prop oor:name="Continuous" oor:type="xs:boolean">
<!-- OldPath: Writer/Dialog/BusinessCards/Medium -->
<!-- OldLocation: Soffice.cfg -->
<!-- UIHints: File New BusinessCards Medium -->
<info>
<author>OS</author>
<desc>Specifies if continuous paper or individual sheets are used.</desc>
- <label>Continous / Sheet</label>
+ <label>Continuous / Sheet</label>
</info>
<value>false</value>
</prop>
diff --git a/officecfg/registry/schema/org/openoffice/Setup.xcs b/officecfg/registry/schema/org/openoffice/Setup.xcs
index d99873a27891..d07451aae7d6 100644
--- a/officecfg/registry/schema/org/openoffice/Setup.xcs
+++ b/officecfg/registry/schema/org/openoffice/Setup.xcs
@@ -92,7 +92,7 @@
</prop>
<prop oor:name="Priority" oor:type="xs:int">
<info>
- <desc>Contains the priority value to specify which migration should be prefered. Higher values are prefered.</desc>
+ <desc>Contains the priority value to specify which migration should be preferred. Higher values are preferred.</desc>
</info>
<value/>
</prop>
diff --git a/officecfg/registry/schema/org/openoffice/TypeDetection/Types.xcs b/officecfg/registry/schema/org/openoffice/TypeDetection/Types.xcs
index 15f51460362f..c7c93b214871 100644
--- a/officecfg/registry/schema/org/openoffice/TypeDetection/Types.xcs
+++ b/officecfg/registry/schema/org/openoffice/TypeDetection/Types.xcs
@@ -55,7 +55,7 @@
<value>false</value>
</prop>
<prop oor:name="PreferredFilter" oor:type="xs:string">
- <info><desc>An optimization! Points directly to the preferred filter for this type. No search across all filters is neccessary ...</desc></info>
+ <info><desc>An optimization! Points directly to the preferred filter for this type. No search across all filters is necessary ...</desc></info>
<value/>
</prop>
<prop oor:name="UIName" oor:localized="true" oor:type="xs:string">
diff --git a/oovbaapi/ooo/vba/XCollectionBase.idl b/oovbaapi/ooo/vba/XCollectionBase.idl
index 7ca75bb70a8c..629cafa40ef8 100644
--- a/oovbaapi/ooo/vba/XCollectionBase.idl
+++ b/oovbaapi/ooo/vba/XCollectionBase.idl
@@ -39,7 +39,7 @@ module ooo { module vba {
The various VBA collection objects expect a specific number of arguments in
the "Item" method, therefore this method is not part of this base interface
- but has to be specified seperately in every derived interface.
+ but has to be specified separately in every derived interface.
*/
interface XCollectionBase
{
diff --git a/oovbaapi/ooo/vba/msforms/XControl.idl b/oovbaapi/ooo/vba/msforms/XControl.idl
index a0665b94512e..5fc0b77186cb 100644
--- a/oovbaapi/ooo/vba/msforms/XControl.idl
+++ b/oovbaapi/ooo/vba/msforms/XControl.idl
@@ -53,7 +53,7 @@ interface XControl
//in Dialogs Mso uses pixels
[attribute] double Height;
[attribute] double Width;
- //Postion
+ //Position
[attribute] double Left;
[attribute] double Top;
[attribute] string Name;
diff --git a/oox/inc/oox/core/binarycodec.hxx b/oox/inc/oox/core/binarycodec.hxx
index 25a1f22e6771..e8622ff53a90 100644
--- a/oox/inc/oox/core/binarycodec.hxx
+++ b/oox/inc/oox/core/binarycodec.hxx
@@ -141,7 +141,7 @@ public:
this size.
@return
- True = decoding was successful (no error occured).
+ True = decoding was successful (no error occurred).
*/
bool decode(
sal_uInt8* pnDestData,
@@ -161,7 +161,7 @@ public:
Number of bytes to be skipped (cipher "seeks" forward).
@return
- True = skip was successful (no error occured).
+ True = skip was successful (no error occurred).
*/
bool skip( sal_Int32 nBytes );
@@ -274,7 +274,7 @@ public:
this size.
@return
- True = decoding was successful (no error occured).
+ True = decoding was successful (no error occurred).
*/
bool decode(
sal_uInt8* pnDestData,
@@ -294,7 +294,7 @@ public:
Number of bytes to be skipped (cipher "seeks" forward).
@return
- True = skip was successful (no error occured).
+ True = skip was successful (no error occurred).
*/
bool skip( sal_Int32 nBytes );
diff --git a/oox/inc/oox/drawingml/drawingmltypes.hxx b/oox/inc/oox/drawingml/drawingmltypes.hxx
index 5be4f24ef1ae..48600fb3b899 100644
--- a/oox/inc/oox/drawingml/drawingmltypes.hxx
+++ b/oox/inc/oox/drawingml/drawingmltypes.hxx
@@ -163,7 +163,7 @@ inline sal_Int32 convertEmuToHmm( sal_Int64 nValue )
// ============================================================================
-/** A structure for a point with 64-bit interger components. */
+/** A structure for a point with 64-bit integer components. */
struct EmuPoint
{
sal_Int64 X;
@@ -175,7 +175,7 @@ struct EmuPoint
// ============================================================================
-/** A structure for a size with 64-bit interger components. */
+/** A structure for a size with 64-bit integer components. */
struct EmuSize
{
sal_Int64 Width;
@@ -187,7 +187,7 @@ struct EmuSize
// ============================================================================
-/** A structure for a rectangle with 64-bit interger components. */
+/** A structure for a rectangle with 64-bit integer components. */
struct EmuRectangle : public EmuPoint, public EmuSize
{
inline explicit EmuRectangle() {}
diff --git a/oox/inc/oox/helper/graphichelper.hxx b/oox/inc/oox/helper/graphichelper.hxx
index 0ab80b00545e..4f36fc916b4c 100644
--- a/oox/inc/oox/helper/graphichelper.hxx
+++ b/oox/inc/oox/helper/graphichelper.hxx
@@ -55,7 +55,7 @@ namespace oox {
persistent graphic objects internally and store them in an internal
container to prevent their early destruction. This makes it possible to use
the returned URL of the graphic object in any way (e.g. insert it into a
- property map) without needing to store it immediatly at an object that
+ property map) without needing to store it immediately at an object that
resolves the graphic object from the passed URL and thus prevents it from
being destroyed.
*/
diff --git a/oox/inc/oox/helper/propertyset.hxx b/oox/inc/oox/helper/propertyset.hxx
index d0b3ba3cf8c1..88d2b9ba0508 100644
--- a/oox/inc/oox/helper/propertyset.hxx
+++ b/oox/inc/oox/helper/propertyset.hxx
@@ -95,7 +95,7 @@ public:
{ return getAnyProperty( nPropId ) >>= orValue; }
/** Gets the specified boolean property from the property set.
- @return true = property contains true; false = property contains false or error occured. */
+ @return true = property contains true; false = property contains false or error occurred. */
inline bool getBoolProperty( sal_Int32 nPropId ) const
{ bool bValue = false; return getProperty( bValue, nPropId ) && bValue; }
diff --git a/oox/inc/oox/ole/axbinaryreader.hxx b/oox/inc/oox/ole/axbinaryreader.hxx
index 2b974b15a25d..8f27fb765218 100644
--- a/oox/inc/oox/ole/axbinaryreader.hxx
+++ b/oox/inc/oox/ole/axbinaryreader.hxx
@@ -39,7 +39,7 @@ namespace ole {
seeking operations (tell, seekTo, align) are performed relative to the
position of the wrapped stream at construction time of this wrapper. It is
possible to construct this wrapper with an unseekable input stream without
- loosing any functionality.
+ losing any functionality.
*/
class AxAlignedInputStream : public BinaryInputStream
{
diff --git a/oox/inc/oox/vml/vmlinputstream.hxx b/oox/inc/oox/vml/vmlinputstream.hxx
index 2b78af9aea57..0c9680dbcfe4 100644
--- a/oox/inc/oox/vml/vmlinputstream.hxx
+++ b/oox/inc/oox/vml/vmlinputstream.hxx
@@ -51,7 +51,7 @@ typedef ::cppu::WeakImplHelper1< ::com::sun::star::io::XInputStream > InputStrea
not containing the characters '<' and '>' are stripped from the input
stream.
- 2) Multiple occurences of the same attribute in an element but the last
+ 2) Multiple occurrences of the same attribute in an element but the last
are removed.
3) Line breaks represented by a single <br> element (without matching
diff --git a/oox/inc/oox/xls/biffinputstream.hxx b/oox/inc/oox/xls/biffinputstream.hxx
index 45d30d37b05a..97f389ce5434 100644
--- a/oox/inc/oox/xls/biffinputstream.hxx
+++ b/oox/inc/oox/xls/biffinputstream.hxx
@@ -152,7 +152,7 @@ public:
/** Constructs the BIFF record stream using the passed binary stream.
@param rInStream
- The base input stream. Must be seekable. Will be seeked to its
+ The base input stream. Must be seekable. Will be sought to its
start position.
@param bContLookup Automatic CONTINUE lookup on/off.
@@ -348,7 +348,7 @@ public:
// ------------------------------------------------------------------------
private:
- /** Initializes all members after base stream has been seeked to new record. */
+ /** Initializes all members after base stream has been sought to new record. */
void setupRecord();
/** Restarts the current record from the beginning. */
void restartRecord( bool bInvalidateRecSize );
diff --git a/oox/inc/oox/xls/defnamesbuffer.hxx b/oox/inc/oox/xls/defnamesbuffer.hxx
index 8fdea570498d..fba94cc51ccf 100644
--- a/oox/inc/oox/xls/defnamesbuffer.hxx
+++ b/oox/inc/oox/xls/defnamesbuffer.hxx
@@ -187,7 +187,7 @@ public:
/** Creates all defined names in the document. */
void finalizeImport();
- /** Returns a defined name by zero-based index (order of appearence). */
+ /** Returns a defined name by zero-based index (order of appearance). */
DefinedNameRef getByIndex( sal_Int32 nIndex ) const;
/** Returns a defined name by token index (index in XDefinedNames container). */
DefinedNameRef getByTokenIndex( sal_Int32 nIndex ) const;
diff --git a/oox/inc/oox/xls/richstring.hxx b/oox/inc/oox/xls/richstring.hxx
index 18f177b879a4..afd88f117bfd 100644
--- a/oox/inc/oox/xls/richstring.hxx
+++ b/oox/inc/oox/xls/richstring.hxx
@@ -78,6 +78,7 @@ private:
::rtl::OUString maText; /// Portion text.
FontRef mxFont; /// Embedded portion font, may be empty.
sal_Int32 mnFontId; /// Link to global font list.
+ bool mbConverted; /// Without repeatly convert
};
typedef ::boost::shared_ptr< RichStringPortion > RichStringPortionRef;
diff --git a/oox/source/core/filterdetect.cxx b/oox/source/core/filterdetect.cxx
index 0a2ce1d0283f..0e64d4751cd2 100644
--- a/oox/source/core/filterdetect.cxx
+++ b/oox/source/core/filterdetect.cxx
@@ -627,7 +627,7 @@ OUString SAL_CALL FilterDetect::detect( Sequence< PropertyValue >& rMediaDescSeq
OUString aFilterName;
MediaDescriptor aMediaDesc( rMediaDescSeq );
- /* Check that the user has not choosen to abort detection, e.g. by hitting
+ /* Check that the user has not chosen to abort detection, e.g. by hitting
'Cancel' in the password input dialog. This may happen because this
filter detection is used by different filters. */
bool bAborted = aMediaDesc.getUnpackedValueOrDefault( MediaDescriptor::PROP_ABORTED(), false );
diff --git a/oox/source/drawingml/customshapeproperties.cxx b/oox/source/drawingml/customshapeproperties.cxx
index f1c2d4ad13e0..ca5494b614a9 100644
--- a/oox/source/drawingml/customshapeproperties.cxx
+++ b/oox/source/drawingml/customshapeproperties.cxx
@@ -31,6 +31,7 @@
#include <com/sun/star/graphic/XGraphicTransformer.hpp>
#include <com/sun/star/drawing/XShape.hpp>
#include <com/sun/star/drawing/XEnhancedCustomShapeDefaulter.hpp>
+#include <basegfx/numeric/ftools.hxx>
using rtl::OUString;
using namespace ::oox::core;
@@ -197,7 +198,15 @@ void CustomShapeProperties::pushToPropSet( const ::oox::core::FilterBase& /* rFi
if ( ( nAdjustmentIndex >= 0 ) && ( nAdjustmentIndex < aAdjustmentSeq.getLength() ) )
{
EnhancedCustomShapeAdjustmentValue aAdjustmentVal;
- aAdjustmentVal.Value <<= (*aIter).maFormula.toInt32();
+
+ sal_Int32 nValue((*aIter).maFormula.toInt32());
+
+ // #124703# The ms control point coordinates are relative to the
+ // object center in the range [-50000 .. 50000] while our customshapes
+ // use a range from [0 .. 21600], so adapt the value as needed
+ nValue = basegfx::fround((double(nValue) + 50000.0) * (21600.0 / 100000.0));
+
+ aAdjustmentVal.Value <<= nValue;
aAdjustmentVal.State = PropertyState_DIRECT_VALUE;
aAdjustmentSeq[ nAdjustmentIndex ] = aAdjustmentVal;
}
diff --git a/oox/source/export/preset-definitions-to-shape-types.pl b/oox/source/export/preset-definitions-to-shape-types.pl
index becac00ab7e8..686606bdc578 100644
--- a/oox/source/export/preset-definitions-to-shape-types.pl
+++ b/oox/source/export/preset-definitions-to-shape-types.pl
@@ -284,7 +284,7 @@ $path_h = 1;
201 => 'hostControl', # should not be used
202 => 'textBox'
);
-# An error occured, we have to ignore this shape
+# An error occurred, we have to ignore this shape
sub error( $ )
{
my ( $msg ) = @_;
diff --git a/oox/source/ppt/slidefragmenthandler.cxx b/oox/source/ppt/slidefragmenthandler.cxx
index 0f2ab8d6cb2c..a00ab352aa22 100644
--- a/oox/source/ppt/slidefragmenthandler.cxx
+++ b/oox/source/ppt/slidefragmenthandler.cxx
@@ -77,19 +77,32 @@ Reference< XFastContextHandler > SlideFragmentHandler::createFastChildContext( s
switch( aElementToken )
{
+ case PPT_TOKEN( sld ): // CT_Slide
+ {
+ OptValue< bool > aShowMasterSp = aAttribs.getBool( XML_showMasterSp );
+ if( aShowMasterSp.has() && !aShowMasterSp.get() )
+ {
+ PropertyMap aPropMap;
+ aPropMap[ PROP_IsBackgroundObjectsVisible ] = Any( false );
+
+ Reference< XDrawPage > xSlide( mpSlidePersistPtr->getPage() );
+ PropertySet aSlideProp( xSlide );
+ aSlideProp.setProperties( aPropMap );
+ }
+ }
case PPT_TOKEN( sldMaster ): // CT_SlideMaster
case PPT_TOKEN( handoutMaster ): // CT_HandoutMaster
- case PPT_TOKEN( sld ): // CT_CommonSlideData
{
- AttributeList attribs( xAttribs );
-
- Reference< XDrawPage > xSlide( mpSlidePersistPtr->getPage() );
- PropertyMap aPropMap;
- PropertySet aSlideProp( xSlide );
-
- aPropMap[ PROP_Visible ] = Any( attribs.getBool( XML_show, sal_True ) );
- aSlideProp.setProperties( aPropMap );
+ OptValue< bool > aShow = aAttribs.getBool( XML_show );
+ if( aShow.has() && !aShow.get() )
+ {
+ PropertyMap aPropMap;
+ aPropMap[ PROP_Visible ] = Any( false );
+ Reference< XDrawPage > xSlide( mpSlidePersistPtr->getPage() );
+ PropertySet aSlideProp( xSlide );
+ aSlideProp.setProperties( aPropMap );
+ }
break;
}
case PPT_TOKEN( notes ): // CT_NotesSlide
diff --git a/oox/source/token/properties.txt b/oox/source/token/properties.txt
index 3844a1b387a8..c2b211619792 100644
--- a/oox/source/token/properties.txt
+++ b/oox/source/token/properties.txt
@@ -221,6 +221,7 @@ InputMessage
InputTitle
IsActive
IsAdjustHeightEnabled
+IsBackgroundObjectsVisible
IsCaseSensitive
IsCellBackgroundTransparent
IsChangeReadOnlyEnabled
diff --git a/oox/source/vml/vmlinputstream.cxx b/oox/source/vml/vmlinputstream.cxx
index 2749741579c9..9f5086c1dcb6 100644
--- a/oox/source/vml/vmlinputstream.cxx
+++ b/oox/source/vml/vmlinputstream.cxx
@@ -89,7 +89,7 @@ inline void lclAppendToBuffer( OStringBuffer& rBuffer, const sal_Char* pcBeg, co
void lclProcessAttribs( OStringBuffer& rBuffer, const sal_Char* pcBeg, const sal_Char* pcEnd )
{
/* Map attribute names to char-pointer of all attributes. This map is used
- to find multiple occurences of attributes with the same name. The
+ to find multiple occurrences of attributes with the same name. The
mapped pointers are used as map key in the next map below. */
typedef ::std::map< OString, const sal_Char* > AttributeNameMap;
AttributeNameMap aAttributeNames;
@@ -140,7 +140,7 @@ void lclProcessAttribs( OStringBuffer& rBuffer, const sal_Char* pcBeg, const sal
}
}
- // if no error has occured, build the resulting attribute list
+ // if no error has occurred, build the resulting attribute list
if( bOk )
for( AttributeDataMap::iterator aIt = aAttributes.begin(), aEnd = aAttributes.end(); aIt != aEnd; ++aIt )
rBuffer.append( ' ' ).append( aIt->second );
diff --git a/oox/source/xls/formulaparser.cxx b/oox/source/xls/formulaparser.cxx
index f38344e20069..d8a5ab7c59ae 100644
--- a/oox/source/xls/formulaparser.cxx
+++ b/oox/source/xls/formulaparser.cxx
@@ -367,7 +367,7 @@ const ApiToken* FormulaFinalizer::findParameters( ParameterPosVector& rParams,
void FormulaFinalizer::appendEmptyParameter( const FunctionInfo& rFuncInfo, size_t nParam )
{
- // remeber old size of the token array
+ // remember old size of the token array
size_t nTokenArraySize = maTokens.size();
switch( rFuncInfo.mnBiff12FuncId )
diff --git a/oox/source/xls/richstring.cxx b/oox/source/xls/richstring.cxx
index b2349ab6df72..1fb24f4c4c7b 100644
--- a/oox/source/xls/richstring.cxx
+++ b/oox/source/xls/richstring.cxx
@@ -19,8 +19,6 @@
*
*************************************************************/
-
-
#include "oox/xls/richstring.hxx"
#include <com/sun/star/text/XText.hpp>
@@ -59,7 +57,8 @@ inline bool lclNeedsRichTextFormat( const Font* pFont )
RichStringPortion::RichStringPortion( const WorkbookHelper& rHelper ) :
WorkbookHelper( rHelper ),
- mnFontId( -1 )
+ mnFontId( -1 ),
+ mbConverted( false )
{
}
@@ -89,6 +88,9 @@ void RichStringPortion::finalizeImport()
void RichStringPortion::convert( const Reference< XText >& rxText, const Font* pFont, bool bReplace )
{
+ if ( mbConverted )
+ return;
+
Reference< XTextRange > xRange;
if( bReplace )
xRange.set( rxText, UNO_QUERY );
@@ -113,6 +115,8 @@ void RichStringPortion::convert( const Reference< XText >& rxText, const Font* p
pFont->writeToPropertySet( aPropSet, FONT_PROPTYPE_TEXT );
}
}
+
+ mbConverted = true;
}
// ----------------------------------------------------------------------------
diff --git a/oox/source/xls/sheetdatabuffer.cxx b/oox/source/xls/sheetdatabuffer.cxx
index c15334a39506..1b697349c06b 100644
--- a/oox/source/xls/sheetdatabuffer.cxx
+++ b/oox/source/xls/sheetdatabuffer.cxx
@@ -257,7 +257,7 @@ CellBlock* CellBlockBuffer::getCellBlock( const CellAddress& rCellAddr )
{
/* The colspan vector aIt points to is sorted by columns, as well
as the cell block map. In the folloing, this vector and the
- list of cell blocks can be iterated simultanously. */
+ list of cell blocks can be iterated simultaneously. */
CellBlockMap::iterator aMIt = maCellBlocks.begin();
const ValueRangeVector& rColRanges = aIt->second;
for( ValueRangeVector::const_iterator aVIt = rColRanges.begin(), aVEnd = rColRanges.end(); aVIt != aVEnd; ++aVIt, ++aMIt )
diff --git a/ooxml/source/framework/JavaOOXMLParser/.classpath b/ooxml/source/framework/JavaOOXMLParser/.classpath
new file mode 100644
index 000000000000..fb565a588d8a
--- /dev/null
+++ b/ooxml/source/framework/JavaOOXMLParser/.classpath
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/ooxml/source/framework/JavaOOXMLParser/.project b/ooxml/source/framework/JavaOOXMLParser/.project
new file mode 100644
index 000000000000..409d549457ee
--- /dev/null
+++ b/ooxml/source/framework/JavaOOXMLParser/.project
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>JavaOOXMLParser</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ </natures>
+</projectDescription>
diff --git a/ooxml/source/framework/JavaOOXMLParser/.settings/org.eclipse.jdt.core.prefs b/ooxml/source/framework/JavaOOXMLParser/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 000000000000..7341ab1683c4
--- /dev/null
+++ b/ooxml/source/framework/JavaOOXMLParser/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,11 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7
+org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
+org.eclipse.jdt.core.compiler.compliance=1.7
+org.eclipse.jdt.core.compiler.debug.lineNumber=generate
+org.eclipse.jdt.core.compiler.debug.localVariable=generate
+org.eclipse.jdt.core.compiler.debug.sourceFile=generate
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.7
diff --git a/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/AcceptingStateTable.java b/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/AcceptingStateTable.java
new file mode 100644
index 000000000000..c11ea4405fe6
--- /dev/null
+++ b/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/AcceptingStateTable.java
@@ -0,0 +1,69 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.parser;
+
+import java.util.HashSet;
+import java.util.Set;
+
+/** List of all accepting states.
+ *
+ * The accepting status of states is important when a closing tag is seen.
+ * It denotes the end of the input stream for the state machine of the currently
+ * processed element. It is an error when the current state is not accepting
+ * when a closing tag is processed.
+ */
+public class AcceptingStateTable
+{
+ public AcceptingStateTable (final Iterable<String[]> aData)
+ {
+ maAcceptingStates = new HashSet<>();
+
+ for (final String[] aLine : aData)
+ {
+ // Create new transition.
+ final int nStateId = Integer.parseInt(aLine[1]);
+
+ maAcceptingStates.add(nStateId);
+ }
+ }
+
+
+
+
+ public boolean Contains (final int nStateId)
+ {
+ return maAcceptingStates.contains(nStateId);
+ }
+
+
+
+
+ public int GetAcceptingStateCount ()
+ {
+ return maAcceptingStates.size();
+ }
+
+
+
+
+ private final Set<Integer> maAcceptingStates;
+}
diff --git a/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/ElementContext.java b/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/ElementContext.java
new file mode 100644
index 000000000000..2114dd75af4e
--- /dev/null
+++ b/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/ElementContext.java
@@ -0,0 +1,88 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.parser;
+
+import org.apache.openoffice.ooxml.parser.attribute.AttributeValues;
+
+/** Context that has the same life time (by default) as the element it represents.
+ * Gives access to the attribute values and the parent context.
+ */
+public class ElementContext
+{
+ ElementContext (
+ final String sElementName,
+ final String sTypeName,
+ final boolean bIsSkipping,
+ final AttributeValues aValues,
+ final ElementContext aParentContext)
+ {
+ msElementName = sElementName;
+ msTypeName = sTypeName;
+ mbIsSkipping = bIsSkipping;
+ maAttributeValues = aValues;
+ maParentContext = aParentContext;
+ }
+
+
+
+
+ public String GetElementName ()
+ {
+ return msElementName;
+ }
+
+
+
+
+ public String GetTypeName ()
+ {
+ return msTypeName;
+ }
+
+
+
+
+ public AttributeValues GetAttributes ()
+ {
+ return maAttributeValues;
+ }
+
+
+
+
+ /** Return the context of the parent element.
+ * Can be null when there is no parent element.
+ */
+ public ElementContext GetParentContext ()
+ {
+ return maParentContext;
+ }
+
+
+
+
+ private final String msElementName;
+ private final String msTypeName;
+ private final boolean mbIsSkipping;
+ private final AttributeValues maAttributeValues;
+ private final ElementContext maParentContext;
+}
diff --git a/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/Log.java b/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/Log.java
new file mode 100644
index 000000000000..cefdd513f8b4
--- /dev/null
+++ b/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/Log.java
@@ -0,0 +1,130 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.parser;
+
+import java.io.File;
+import java.io.FileNotFoundException;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.io.OutputStream;
+
+public class Log
+{
+ public static Log Std = new Log(System.out);
+ public static Log Err = new Log(System.err);
+ public static Log Dbg = Std;
+
+
+ public Log (final OutputStream aOut)
+ {
+ maOut = aOut;
+ msIndentation = "";
+ }
+
+
+
+
+ public Log (final String sFilename)
+ {
+ this(CreateFileOutputStream(sFilename));
+ }
+
+
+
+
+ public Log (final File aFile)
+ {
+ this(CreateFileOutputStream(aFile));
+ }
+
+
+
+
+ private static OutputStream CreateFileOutputStream (final File aFile)
+ {
+ try
+ {
+ return new FileOutputStream(aFile);
+ }
+ catch (final Exception aException)
+ {
+ aException.printStackTrace();
+ return null;
+ }
+ }
+
+
+
+
+ public void printf (final String sFormat, final Object ... aArgumentList)
+ {
+ try
+ {
+ maOut.write(msIndentation.getBytes());
+ maOut.write(String.format(sFormat, aArgumentList).getBytes());
+ }
+ catch (IOException e)
+ {
+ e.printStackTrace();
+ }
+ }
+
+
+
+
+ public void IncreaseIndentation ()
+ {
+ msIndentation += " ";
+ }
+
+
+
+
+ public void DecreaseIndentation ()
+ {
+ msIndentation = msIndentation.substring(4);
+ }
+
+
+
+
+ private static OutputStream CreateFileOutputStream (final String sFilename)
+ {
+ OutputStream aOut;
+ try
+ {
+ aOut = new FileOutputStream(sFilename);
+ return aOut;
+ }
+ catch (FileNotFoundException e)
+ {
+ e.printStackTrace();
+ return null;
+ }
+ }
+
+
+
+
+ private final OutputStream maOut;
+ private String msIndentation;
+}
diff --git a/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/NameMap.java b/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/NameMap.java
new file mode 100644
index 000000000000..a8af8f93ce51
--- /dev/null
+++ b/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/NameMap.java
@@ -0,0 +1,113 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.parser;
+
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Map.Entry;
+import java.util.Vector;
+
+public class NameMap
+{
+ NameMap (final Vector<String[]> aData)
+ {
+ maNameToIdMap = new HashMap<>();
+ maIdToNameMap = new Vector<>();
+
+ for (final String[] aLine : aData)
+ {
+ final int nId = Integer.parseInt(aLine[1]);
+
+ maNameToIdMap.put(aLine[2], nId);
+
+ if (maIdToNameMap.size() <= nId)
+ maIdToNameMap.setSize(nId+1);
+ maIdToNameMap.set(nId, aLine[2]);
+ }
+ }
+
+
+
+
+ public int GetIdForName (
+ final String sName)
+ {
+ if ( ! maNameToIdMap.containsKey(sName))
+ throw new RuntimeException("token '"+sName+"' is not known");
+
+ return maNameToIdMap.get(sName);
+ }
+
+
+
+
+ public int GetIdForOptionalName (
+ final String sName)
+ {
+ final Integer aId = maNameToIdMap.get(sName);
+ if (aId == null)
+ return -1;
+ else
+ return aId;
+ }
+
+
+
+
+ public String GetNameForId (final int nId)
+ {
+ if (nId == -1)
+ return "<none>";
+ else
+ return maIdToNameMap.get(nId);
+ }
+
+
+
+
+ public int GetNameCount ()
+ {
+ return maIdToNameMap.size();
+ }
+
+
+
+
+ /** Return the ids of all states whose names match the given pattern.
+ */
+ public Vector<Integer> GetMatchingStateIds (final String sPattern)
+ {
+ final Vector<Integer> aStateIds = new Vector<>();
+ for (final Entry<String,Integer> aEntry : maNameToIdMap.entrySet())
+ {
+ if (aEntry.getKey().matches(sPattern))
+ aStateIds.add(aEntry.getValue());
+ }
+ return aStateIds;
+ }
+
+
+
+
+ private final Map<String,Integer> maNameToIdMap;
+ private final Vector<String> maIdToNameMap;
+}
diff --git a/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/NamespaceMap.java b/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/NamespaceMap.java
new file mode 100644
index 000000000000..d5a2af818c53
--- /dev/null
+++ b/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/NamespaceMap.java
@@ -0,0 +1,91 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.parser;
+
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Vector;
+
+public class NamespaceMap
+{
+ public class NamespaceDescriptor
+ {
+ NamespaceDescriptor (final String sPrefix, final int nId)
+ {
+ Prefix = sPrefix;
+ Id = nId;
+ }
+ public final String Prefix;
+ public final int Id;
+ }
+ NamespaceMap (final Vector<String[]> aData)
+ {
+ maUriToDescriptorMap = new HashMap<>();
+ maIdToDescriptorMap = new HashMap<>();
+
+ for (final String[] aLine : aData)
+ {
+ final int nId = Integer.parseInt(aLine[2]);
+ final NamespaceDescriptor aDescriptor = new NamespaceDescriptor(aLine[1], nId);
+ maUriToDescriptorMap.put(
+ aLine[3],
+ aDescriptor);
+ maIdToDescriptorMap.put(
+ nId,
+ aDescriptor);
+ }
+ }
+
+
+
+
+ public NamespaceDescriptor GetDescriptorForURI (final String sURI)
+ {
+ if (sURI == null)
+ throw new RuntimeException("namespace is null");
+ if ( ! maUriToDescriptorMap.containsKey(sURI))
+ throw new RuntimeException("namespace '"+sURI+"' is not known");
+ return maUriToDescriptorMap.get(sURI);
+ }
+
+
+
+
+ public NamespaceDescriptor GetDescriptorForId (final int nId)
+ {
+ return maIdToDescriptorMap.get(nId);
+ }
+
+
+
+
+ public int GetNamespaceCount ()
+ {
+ return maUriToDescriptorMap.size();
+ }
+
+
+
+
+ private final Map<String,NamespaceDescriptor> maUriToDescriptorMap;
+ private final Map<Integer,NamespaceDescriptor> maIdToDescriptorMap;
+}
diff --git a/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/OOXMLParser.java b/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/OOXMLParser.java
new file mode 100644
index 000000000000..369f5c3daf42
--- /dev/null
+++ b/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/OOXMLParser.java
@@ -0,0 +1,223 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.parser;
+
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.InputStream;
+import java.util.Map;
+import java.util.Map.Entry;
+import java.util.TreeMap;
+import java.util.zip.ZipEntry;
+import java.util.zip.ZipFile;
+
+import javax.xml.stream.Location;
+
+import org.apache.openoffice.ooxml.parser.action.ActionManager;
+import org.apache.openoffice.ooxml.parser.action.ActionTrigger;
+import org.apache.openoffice.ooxml.parser.action.IAction;
+
+/** This OOXML parser is based on the output of the schema parser.
+ * It exists to debug the schema parser and as illustration and preparation of
+ * the C++ parse (yet to come.)
+ * Because of this, the parser data (set of states and transitions) are
+ * read at runtime while a real parser would do that at compile time.
+ */
+public class OOXMLParser
+{
+ class ActionContext
+ {
+ public Map<String,Integer> TypeCounts = new TreeMap<>();
+ }
+ /** The parser is called with two arguments:
+ * - A path to where the parser tables with the states and transitions can
+ * be found.
+ * - The XML input file or Zip stream to parse.
+ * The syntax for a Zip stream contains a '#' that separates the filename
+ * to its left from the entry name to its right.
+ */
+ public static void main (final String ... aArgumentList)
+ {
+ if (aArgumentList.length<2 ||aArgumentList.length>3)
+ throw new RuntimeException("usage: OOXMLParser <parser-tables-path> <XML-input-file> <log-file>?");
+
+ if (aArgumentList.length == 3)
+ {
+ final File aLogFile = new File(aArgumentList[2]);
+ Log.Dbg = new Log(aLogFile);
+ System.out.printf("writing log data to %s\n", aLogFile.toString());
+ }
+ else
+ {
+ Log.Dbg = null;
+ System.out.printf("writing no log data\n");
+ }
+
+ new OOXMLParser(aArgumentList[0], aArgumentList[1]);
+ }
+
+
+
+ private OOXMLParser (
+ final String sParseTableFilename,
+ final String sInputFilename)
+ {
+ long nStartTime = System.currentTimeMillis();
+ final StateMachine aMachine = new StateMachine(new File(sParseTableFilename), null);
+ final InputStream aIn = GetInputStream(sInputFilename);
+ long nEndTime = System.currentTimeMillis();
+
+ final ActionContext aActionContext = new ActionContext();
+ AddSomeActions(aMachine.GetActionManager(), aActionContext);
+
+ System.out.printf("initialzed parser in %fs\n", (nEndTime-nStartTime)/1000.0);
+
+ try
+ {
+ nStartTime = System.currentTimeMillis();
+ final Parser aParser = new Parser(aMachine, aIn);
+ aParser.Parse();
+ final int nElementCount = aParser.GetElementCount();
+ nEndTime = System.currentTimeMillis();
+ System.out.printf("parsed %d elements in %fs\n",
+ nElementCount,
+ (nEndTime-nStartTime)/1000.0);
+
+ System.out.printf("%d different elements found:\n", aActionContext.TypeCounts.size());
+ for (final Entry<String, Integer> aEntry : aActionContext.TypeCounts.entrySet())
+ {
+ System.out.printf("%-32s : %6d\n", aEntry.getKey(), aEntry.getValue());
+ }
+ }
+ catch (final Exception aException)
+ {
+ aException.printStackTrace();
+ }
+ }
+
+
+
+
+ private static void AddSomeActions (
+ final ActionManager aActionManager,
+ final ActionContext aActionContext)
+ {
+ aActionManager.AddElementStartAction(
+ "*",
+ new IAction()
+ {
+ @Override public void Run(
+ final ActionTrigger eTrigger,
+ final ElementContext aContext,
+ final String sText,
+ final Location aStartLocation,
+ final Location aEndLocation)
+ {
+ Integer nValue = aActionContext.TypeCounts.get(aContext.GetTypeName());
+ if (nValue == null)
+ nValue = 1;
+ else
+ ++nValue;
+ aActionContext.TypeCounts.put(aContext.GetTypeName(), nValue);
+ }
+ }
+ );
+ aActionManager.AddElementStartAction(
+ ".*CT_Shd",
+ new IAction()
+ {
+ @Override public void Run(
+ final ActionTrigger eTrigger,
+ final ElementContext aContext,
+ final String sText,
+ final Location aStartLocation,
+ final Location aEndLocation)
+ {
+ System.out.printf("processing %s of element %s at position %d\n",
+ eTrigger,
+ aContext.GetElementName(),
+ aStartLocation.getCharacterOffset());
+
+ if (aContext.GetAttributes().GetAttributeCount() == 0)
+ System.out.printf(" no attributes\n");
+ else
+ for (final Entry<String,String> aAttribute : aContext.GetAttributes().GetAttributes())
+ System.out.printf(" %s -> %s\n", aAttribute.getKey(), aAttribute.getValue());
+ }
+ }
+ );
+ aActionManager.AddTextAction(
+ ".*CT_Text",
+ new IAction()
+ {
+ @Override public void Run(
+ final ActionTrigger eTrigger,
+ final ElementContext aContext,
+ final String sText,
+ final Location aStartLocation,
+ final Location aEndLocation)
+ {
+// System.out.printf("%s text \"%s\"\n", aContext.GetTypeName(), sText.replace("\n", "\\n"));
+ }
+ }
+ );
+ }
+
+
+
+
+ private static InputStream GetInputStream (final String sInputName)
+ {
+ final InputStream aIn;
+ try
+ {
+ final int nSeparator = sInputName.indexOf('#');
+ if (nSeparator >= 0)
+ {
+ // Split the input name into the file name of the archive and the
+ // name of a zip entry.
+ final String sArchiveName = sInputName.substring(0, nSeparator);
+ String sEntryName = sInputName.substring(nSeparator+1);
+
+ // Normalize and cleanup the entry name.
+ sEntryName = sEntryName.replace('\\', '/');
+ if (sEntryName.startsWith("/"))
+ sEntryName = sEntryName.substring(1);
+
+ final ZipFile aZipFile = new ZipFile(new File(sArchiveName));
+ final ZipEntry aZipEntry = aZipFile.getEntry(sEntryName);
+ aIn = aZipFile.getInputStream(aZipEntry);
+ }
+ else
+ {
+ // The input name points to a plain XML file.
+ aIn = new FileInputStream(sInputName);
+ }
+ }
+ catch (final Exception aException)
+ {
+ aException.printStackTrace();
+ return null;
+ }
+ return aIn;
+ }
+}
diff --git a/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/ParseException.java b/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/ParseException.java
new file mode 100644
index 000000000000..ae07f9ca1fec
--- /dev/null
+++ b/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/ParseException.java
@@ -0,0 +1,42 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.parser;
+
+import javax.xml.stream.Location;
+
+@SuppressWarnings("serial")
+public class ParseException
+ extends RuntimeException
+{
+ public ParseException (
+ final Exception aException,
+ final Location aLocation)
+ {
+ super(aException);
+ Location = aLocation;
+ }
+
+
+
+
+ public final Location Location;
+}
diff --git a/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/ParseTableReader.java b/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/ParseTableReader.java
new file mode 100644
index 000000000000..0288886c5342
--- /dev/null
+++ b/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/ParseTableReader.java
@@ -0,0 +1,100 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.parser;
+
+import java.io.BufferedReader;
+import java.io.File;
+import java.io.FileReader;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Vector;
+
+/** A simple reader for the parse table data that allows simple filtering on the
+ * first word in each line.
+ *
+ * Lines that only contain comments or whitespace are ignored.
+ *
+ */
+public class ParseTableReader
+{
+ public ParseTableReader (final File aFile)
+ {
+ maSections = new HashMap<>();
+
+ try
+ {
+ final BufferedReader aReader = new BufferedReader(new FileReader(aFile));
+
+ while (true)
+ {
+ final String sLine = aReader.readLine();
+ if (sLine == null)
+ break;
+ else if (sLine.startsWith("#"))
+ continue;
+ else if (sLine.isEmpty())
+ continue;
+
+ final String[] aLineParts = sLine.split("\\s+");
+ for (int nIndex=0; nIndex<aLineParts.length; ++nIndex)
+ {
+ final String sPart = aLineParts[nIndex];
+ if (sPart.isEmpty())
+ {
+ throw new RuntimeException();
+ }
+ else if (sPart.charAt(0) == '"')
+ {
+ // Remove leading and trailing quotes, unquote spaces.
+ aLineParts[nIndex] = sPart.substring(1, sPart.length()-1).replace("%20", " ").replace("&quot;", "\"");
+ }
+ }
+ GetSection(aLineParts[0]).add(aLineParts);
+ }
+
+ aReader.close();
+ }
+ catch (final Exception aException)
+ {
+ throw new RuntimeException(aException);
+ }
+ }
+
+
+
+
+ public Vector<String[]> GetSection (final String sSectionName)
+ {
+ Vector<String[]> aSection = maSections.get(sSectionName);
+ if (aSection == null)
+ {
+ aSection = new Vector<>();
+ maSections.put(sSectionName, aSection);
+ }
+ return aSection;
+ }
+
+
+
+
+ private final Map<String,Vector<String[]>> maSections;
+}
diff --git a/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/Parser.java b/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/Parser.java
new file mode 100644
index 000000000000..cd51087f3c3d
--- /dev/null
+++ b/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/Parser.java
@@ -0,0 +1,249 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.parser;
+
+import java.io.InputStream;
+import java.util.Vector;
+
+import javax.xml.stream.Location;
+import javax.xml.stream.XMLInputFactory;
+import javax.xml.stream.XMLStreamException;
+import javax.xml.stream.XMLStreamReader;
+
+import org.apache.openoffice.ooxml.parser.action.ActionManager;
+import org.apache.openoffice.ooxml.parser.attribute.AttributeProvider;
+
+/** This is the actual parser (where OOXMLParser is the front end that handles
+ * parameters given to the main method).
+ */
+public class Parser
+{
+ public Parser (
+ final StateMachine aMachine,
+ final InputStream aIn)
+ {
+ maMachine = aMachine;
+ maReader = GetStreamReader(aIn, "input");
+ mnElementCount = 0;
+ }
+
+
+
+
+ public void Parse ()
+ {
+ Location aLocation = null;
+ try
+ {
+ final AttributeProvider aAttributeProvider = new AttributeProvider(maReader);
+ while (maReader.hasNext())
+ {
+ aLocation = maReader.getLocation();
+ final int nCode = maReader.next();
+ switch(nCode)
+ {
+ case XMLStreamReader.START_ELEMENT:
+ ++mnElementCount;
+ if (maMachine.IsInSkipState())
+ {
+ if (Log.Dbg != null)
+ Log.Dbg.printf("is skip state -> starting to skip\n");
+ Skip();
+ }
+ else if ( ! maMachine.ProcessStartElement(
+ maReader.getNamespaceURI(),
+ maReader.getLocalName(),
+ aLocation,
+ maReader.getLocation(),
+ aAttributeProvider))
+ {
+ if (Log.Dbg != null)
+ Log.Dbg.printf("starting to skip to recover from error\n");
+ Skip();
+ }
+ break;
+
+ case XMLStreamReader.END_ELEMENT:
+ maMachine.ProcessEndElement(
+ maReader.getNamespaceURI(),
+ maReader.getLocalName(),
+ aLocation,
+ maReader.getLocation());
+ break;
+
+ case XMLStreamReader.CHARACTERS:
+ maMachine.ProcessCharacters(
+ maReader.getText(),
+ aLocation,
+ maReader.getLocation());
+ break;
+
+ case XMLStreamReader.END_DOCUMENT:
+ break;
+
+ default:
+ Log.Err.printf("can't handle XML event of type %d\n", nCode);
+ }
+ }
+
+ maReader.close();
+ }
+ catch (final XMLStreamException aException)
+ {
+ aException.printStackTrace();
+ }
+ catch (final Exception aException)
+ {
+ throw new ParseException(
+ aException,
+ aLocation);
+ }
+ }
+
+
+
+
+
+
+ public int GetElementCount ()
+ {
+ return mnElementCount;
+ }
+
+
+
+
+ private void Skip ()
+ {
+ if (Log.Dbg != null)
+ {
+ Log.Dbg.printf("starting to skip on %s at L%dC%d\n",
+ maReader.getLocalName(),
+ maReader.getLocation().getLineNumber(),
+ maReader.getLocation().getColumnNumber());
+ Log.Dbg.IncreaseIndentation();
+ }
+
+ // We are called when processing a start element. This means that we are
+ // already at relative depth 1.
+ int nRelativeDepth = 1;
+ try
+ {
+ while (maReader.hasNext())
+ {
+ final int nCode = maReader.next();
+ switch (nCode)
+ {
+ case XMLStreamReader.START_ELEMENT:
+ ++nRelativeDepth;
+ ++mnElementCount;
+ if (Log.Dbg != null)
+ {
+ Log.Dbg.printf("skipping start element %s\n", maReader.getLocalName());
+ Log.Dbg.IncreaseIndentation();
+ }
+ break;
+
+ case XMLStreamReader.END_ELEMENT:
+ --nRelativeDepth;
+ if (Log.Dbg != null)
+ Log.Dbg.DecreaseIndentation();
+ if (nRelativeDepth <= 0)
+ {
+ if (Log.Dbg != null)
+ Log.Dbg.printf("leaving skip mode on %s\n", maReader.getLocalName());
+ return;
+ }
+ break;
+
+ case XMLStreamReader.END_DOCUMENT:
+ throw new RuntimeException("saw end of document while skipping elements\n");
+
+ case XMLStreamReader.CHARACTERS:
+ SkipText(maReader.getText());
+ break;
+
+ default:
+ if (Log.Dbg != null)
+ Log.Dbg.printf("%s\n", nCode);
+ break;
+ }
+ }
+ }
+ catch (final XMLStreamException aException)
+ {
+ aException.printStackTrace();
+ }
+ }
+
+
+
+
+ private void SkipText (final String sText)
+ {
+ if (Log.Dbg != null)
+ Log.Dbg.printf("skipping text [%s]\n", sText.replace("\n", "\\n"));
+ }
+
+
+
+
+ private XMLStreamReader GetStreamReader (
+ final InputStream aIn,
+ final String sDescription)
+ {
+ if (aIn == null)
+ return null;
+
+ try
+ {
+ final XMLInputFactory aFactory = (XMLInputFactory)XMLInputFactory.newInstance();
+ aFactory.setProperty(XMLInputFactory.IS_REPLACING_ENTITY_REFERENCES, false);
+ aFactory.setProperty(XMLInputFactory.IS_SUPPORTING_EXTERNAL_ENTITIES, false);
+ aFactory.setProperty(XMLInputFactory.IS_COALESCING, false);
+
+ return (XMLStreamReader)aFactory.createXMLStreamReader(
+ sDescription,
+ aIn);
+ }
+ catch (final Exception aException)
+ {
+ aException.printStackTrace();
+ return null;
+ }
+ }
+
+
+
+
+ public ActionManager GetActionManager()
+ {
+ return maMachine.GetActionManager();
+ }
+
+
+
+
+ private final XMLStreamReader maReader;
+ private final StateMachine maMachine;
+ private int mnElementCount;
+}
diff --git a/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/SkipStateTable.java b/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/SkipStateTable.java
new file mode 100644
index 000000000000..0171b743a811
--- /dev/null
+++ b/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/SkipStateTable.java
@@ -0,0 +1,70 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.parser;
+
+import java.util.HashSet;
+import java.util.Set;
+
+/** Table of all skip states.
+ *
+ * A skip state corresponds to the 'any' element in the schemas.
+ * It means that the content of the element is specified by an extension of the
+ * schema which may or may not be known at parse time.
+ * At the moment the whole element is skipped, i.e. ignored.
+ *
+ */
+public class SkipStateTable
+{
+ public SkipStateTable (final Iterable<String[]> aData)
+ {
+ maSkipStates = new HashSet<>();
+
+ for (final String[] aLine : aData)
+ {
+ // Create new transition.
+ final int nStateId = Integer.parseInt(aLine[1]);
+
+ maSkipStates.add(nStateId);
+ }
+ }
+
+
+
+
+ public boolean Contains (final int nStateId)
+ {
+ return maSkipStates.contains(nStateId);
+ }
+
+
+
+
+ public int GetSkipStateCount ()
+ {
+ return maSkipStates.size();
+ }
+
+
+
+
+ private final Set<Integer> maSkipStates;
+}
diff --git a/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/StateMachine.java b/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/StateMachine.java
new file mode 100644
index 000000000000..39ff4dfd8137
--- /dev/null
+++ b/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/StateMachine.java
@@ -0,0 +1,330 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.parser;
+
+import java.io.File;
+import java.util.Stack;
+import java.util.Vector;
+
+import javax.xml.stream.Location;
+
+import org.apache.openoffice.ooxml.parser.action.ActionManager;
+import org.apache.openoffice.ooxml.parser.action.ActionTrigger;
+import org.apache.openoffice.ooxml.parser.action.IAction;
+import org.apache.openoffice.ooxml.parser.attribute.AttributeManager;
+import org.apache.openoffice.ooxml.parser.attribute.AttributeProvider;
+import org.apache.openoffice.ooxml.parser.attribute.AttributeValues;
+import org.apache.openoffice.ooxml.parser.type.SimpleTypeManager;
+
+/** The state machine is initialized at creation from the data tables
+ * created previously by a stack automaton.
+ */
+public class StateMachine
+{
+ public StateMachine (
+ final File aParseTableFile,
+ final Vector<String> aErrorsAndWarnings)
+ {
+ if (Log.Dbg != null)
+ Log.Dbg.printf("reading parse tables from %s\n", aParseTableFile.toString());
+
+ final ParseTableReader aReader = new ParseTableReader(aParseTableFile);
+ maNamespaceMap = new NamespaceMap(aReader.GetSection("namespace"));
+ maNameMap = new NameMap(aReader.GetSection("name"));
+ maStateNameMap = new NameMap(aReader.GetSection("state-name"));
+ maTransitions = new TransitionTable(aReader.GetSection("transition"));
+ maSkipStates = new SkipStateTable(aReader.GetSection("skip"));
+ maAttributeValueMap = new NameMap(aReader.GetSection("attribute-value"));
+ maAcceptingStates = new AcceptingStateTable(aReader.GetSection("accepting-state"));
+ maSimpleTypeManager = new SimpleTypeManager(
+ aReader.GetSection("simple-type"),
+ maAttributeValueMap);
+ maAttributeManager = new AttributeManager(
+ aReader.GetSection("attribute"),
+ maNamespaceMap,
+ maNameMap,
+ maStateNameMap,
+ maSimpleTypeManager,
+ aErrorsAndWarnings);
+ mnStartStateId = Integer.parseInt(aReader.GetSection("start-state").firstElement()[1]);
+ mnEndStateId = Integer.parseInt(aReader.GetSection("end-state").firstElement()[1]);
+
+ mnCurrentStateId = mnStartStateId;
+ maStateStack = new Stack<>();
+ maElementContextStack = new Stack<>();
+ maActionManager = new ActionManager(maStateNameMap);
+ maErrorsAndWarnings = aErrorsAndWarnings;
+
+ if (Log.Dbg != null)
+ {
+ Log.Dbg.printf("read %d namespace, %d names, %d states (%d skip, %d accept), %d transitions and %d attributes\n",
+ maNamespaceMap.GetNamespaceCount(),
+ maNameMap.GetNameCount(),
+ maStateNameMap.GetNameCount(),
+ maSkipStates.GetSkipStateCount(),
+ maAcceptingStates.GetAcceptingStateCount(),
+ maTransitions.GetTransitionCount(),
+ maAttributeManager.GetAttributeCount());
+ Log.Dbg.printf("starting in state _start_ (%d)\n", mnCurrentStateId);
+ }
+ }
+
+
+
+
+ public boolean ProcessStartElement (
+ final String sNamespaceURI,
+ final String sElementName,
+ final Location aStartLocation,
+ final Location aEndLocation,
+ final AttributeProvider aAttributes)
+ {
+ boolean bResult = false;
+
+ try
+ {
+ final NamespaceMap.NamespaceDescriptor aNamespaceDescriptor = maNamespaceMap.GetDescriptorForURI(sNamespaceURI);
+ final int nElementNameId = maNameMap.GetIdForName(sElementName);
+ if (Log.Dbg != null)
+ Log.Dbg.printf("%s:%s(%d:%d) L%dC%d\n",
+ aNamespaceDescriptor.Prefix,
+ sElementName,
+ aNamespaceDescriptor.Id,
+ nElementNameId,
+ aStartLocation.getLineNumber(),
+ aStartLocation.getColumnNumber());
+
+ final Transition aTransition = maTransitions.GetTransition(
+ mnCurrentStateId,
+ aNamespaceDescriptor.Id,
+ nElementNameId);
+ if (aTransition == null)
+ {
+ final String sText = String.format(
+ "can not find transition for state %s(%d) and element %s:%s(%d:%d) at L%dC%d\n",
+ maStateNameMap.GetNameForId(mnCurrentStateId),
+ mnCurrentStateId,
+ aNamespaceDescriptor.Prefix,
+ maNameMap.GetNameForId(nElementNameId),
+ aNamespaceDescriptor.Id,
+ nElementNameId,
+ aStartLocation.getLineNumber(),
+ aStartLocation.getColumnNumber());
+ Log.Err.printf(sText);
+ if (Log.Dbg != null)
+ Log.Dbg.printf(sText);
+ }
+ else
+ {
+ if (Log.Dbg != null)
+ {
+ Log.Dbg.printf(" %s(%d) -> %s(%d) via %s(%d)",
+ maStateNameMap.GetNameForId(mnCurrentStateId),
+ mnCurrentStateId,
+ maStateNameMap.GetNameForId(aTransition.GetEndStateId()),
+ aTransition.GetEndStateId(),
+ maStateNameMap.GetNameForId(aTransition.GetActionId()),
+ aTransition.GetActionId());
+ Log.Dbg.printf("\n");
+ }
+
+ // Follow the transition to its end state but first process its
+ // content. We do that by
+
+ if (Log.Dbg != null)
+ Log.Dbg.IncreaseIndentation();
+
+ // a) pushing the end state to the state stack so that on the
+ // end tag that corresponds to the current start tag it will become the current state.
+ maStateStack.push(aTransition.GetEndStateId());
+
+ // b) entering the state that corresponds to start tag that
+ // we are currently processing.
+ mnCurrentStateId = aTransition.GetActionId();
+
+ // c) Prepare the attributes and store them in the new element context.
+ final AttributeValues aAttributeValues = maAttributeManager.ParseAttributes(
+ mnCurrentStateId,
+ aAttributes);
+
+ // d) creating a new ElementContext for the element that just starts.
+ maElementContextStack.push(maCurrentElementContext);
+ final ElementContext aPreviousElementContext = maCurrentElementContext;
+ maCurrentElementContext = new ElementContext(
+ sElementName,
+ maStateNameMap.GetNameForId(aTransition.GetActionId()),
+ false,
+ aAttributeValues,
+ aPreviousElementContext);
+
+ // e) and run all actions that are bound to the the current start tag.
+ ExecuteActions(
+ mnCurrentStateId,
+ maCurrentElementContext,
+ ActionTrigger.ElementStart,
+ null,
+ aStartLocation,
+ aEndLocation);
+
+ bResult = true;
+ }
+ }
+ catch (RuntimeException aException)
+ {
+ Log.Err.printf("error at line %d and column %d\n",
+ aStartLocation.getLineNumber(),
+ aStartLocation.getColumnNumber());
+ throw aException;
+ }
+ return bResult;
+ }
+
+
+
+
+ public void ProcessEndElement (
+ final String sNamespaceURI,
+ final String sElementName,
+ final Location aStartLocation,
+ final Location aEndLocation)
+ {
+ if ( ! maAcceptingStates.Contains(mnCurrentStateId)
+ && mnCurrentStateId!=-1)
+ {
+ if (Log.Dbg != null)
+ Log.Dbg.printf("current state %s(%d) is not an accepting state\n",
+ maStateNameMap.GetNameForId(mnCurrentStateId),
+ mnCurrentStateId);
+ throw new RuntimeException("not expecting end element "+sElementName);
+ }
+
+ final NamespaceMap.NamespaceDescriptor aDescriptor = maNamespaceMap.GetDescriptorForURI(sNamespaceURI);
+
+ // Leave the current element.
+
+ final int nPreviousStateId = mnCurrentStateId;
+ mnCurrentStateId = maStateStack.pop();
+ if (mnCurrentStateId == mnEndStateId)
+ mnCurrentStateId = mnStartStateId;
+
+ final ElementContext aPreviousElementContext = maCurrentElementContext;
+ maCurrentElementContext = maElementContextStack.pop();
+
+ ExecuteActions(
+ nPreviousStateId,
+ aPreviousElementContext,
+ ActionTrigger.ElementEnd,
+ null,
+ aStartLocation,
+ aEndLocation);
+
+ if (Log.Dbg != null)
+ {
+ Log.Dbg.DecreaseIndentation();
+ Log.Dbg.printf("/%s:%s L%d%d\n",
+ aDescriptor.Prefix,
+ sElementName,
+ aStartLocation.getLineNumber(),
+ aStartLocation.getColumnNumber());
+ Log.Dbg.printf(" %s(%d) <- %s(%d)\n",
+ maStateNameMap.GetNameForId(nPreviousStateId),
+ nPreviousStateId,
+ maStateNameMap.GetNameForId(mnCurrentStateId),
+ mnCurrentStateId);
+ }
+ }
+
+
+
+
+ public void ProcessCharacters (
+ final String sText,
+ final Location aStartLocation,
+ final Location aEndLocation)
+ {
+ if (Log.Dbg != null)
+ Log.Dbg.printf("text [%s]\n", sText.replace("\n", "\\n"));
+
+ ExecuteActions(
+ mnCurrentStateId,
+ maCurrentElementContext,
+ ActionTrigger.Text,
+ sText,
+ aStartLocation,
+ aEndLocation);
+
+ }
+
+
+
+
+ public boolean IsInSkipState ()
+ {
+ return maSkipStates.Contains(mnCurrentStateId);
+ }
+
+
+
+
+ public ActionManager GetActionManager ()
+ {
+ return maActionManager;
+ }
+
+
+
+
+ private void ExecuteActions (
+ final int nStateId,
+ final ElementContext aElementContext,
+ final ActionTrigger eTrigger,
+ final String sText,
+ final Location aStartLocation,
+ final Location aEndLocation)
+ {
+ final Iterable<IAction> aActions = maActionManager.GetActions(nStateId, eTrigger);
+ if (aActions != null)
+ for (final IAction aAction : aActions)
+ aAction.Run(eTrigger, aElementContext, sText, aStartLocation, aEndLocation);
+ }
+
+
+
+
+ private final NamespaceMap maNamespaceMap;
+ private final NameMap maNameMap;
+ private final NameMap maStateNameMap;
+ private final TransitionTable maTransitions;
+ private final SimpleTypeManager maSimpleTypeManager;
+ private final AttributeManager maAttributeManager;
+ private final NameMap maAttributeValueMap;
+ private int mnCurrentStateId;
+ private Stack<Integer> maStateStack;
+ private ElementContext maCurrentElementContext;
+ private Stack<ElementContext> maElementContextStack;
+ private final int mnStartStateId;
+ private final int mnEndStateId;
+ private SkipStateTable maSkipStates;
+ private AcceptingStateTable maAcceptingStates;
+ private final ActionManager maActionManager;
+ private final Vector<String> maErrorsAndWarnings;
+}
diff --git a/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/Transition.java b/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/Transition.java
new file mode 100644
index 000000000000..c5c956116b28
--- /dev/null
+++ b/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/Transition.java
@@ -0,0 +1,77 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.parser;
+
+class Transition
+{
+ Transition (
+ final int nStartStateId,
+ final int nEndStateId,
+ final int nElementId,
+ final int nActionStateId)
+ {
+ mnStartStateId = nStartStateId;
+ mnEndStateId = nEndStateId;
+ mnElementId = nElementId;
+ mnActionStateId = nActionStateId;
+ }
+
+
+
+
+ public int GetStartStateId ()
+ {
+ return mnStartStateId;
+ }
+
+
+
+
+ public int GetEndStateId ()
+ {
+ return mnEndStateId;
+ }
+
+
+
+
+ public int GetElementId ()
+ {
+ return mnElementId;
+ }
+
+
+
+
+ public int GetActionId ()
+ {
+ return mnActionStateId;
+ }
+
+
+
+
+ private final int mnStartStateId;
+ private final int mnEndStateId;
+ private final int mnElementId;
+ private final int mnActionStateId;
+}
diff --git a/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/TransitionTable.java b/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/TransitionTable.java
new file mode 100644
index 000000000000..32326daa5a9f
--- /dev/null
+++ b/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/TransitionTable.java
@@ -0,0 +1,85 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.parser;
+
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Vector;
+
+public class TransitionTable
+{
+ public TransitionTable (final Vector<String[]> aData)
+ {
+ maTransitions = new HashMap<>();
+
+ for (final String[] aLine : aData)
+ {
+ // Create new transition.
+ final int nStartStateId = Integer.parseInt(aLine[1]);
+ final int nEndStateId = Integer.parseInt(aLine[2]);
+ final int nElementPrefixId = Integer.parseInt(aLine[3]);
+ final int nElementLocalId = Integer.parseInt(aLine[4]);
+ final int nElementStateId = Integer.parseInt(aLine[5]);
+ final Transition aTransition = new Transition(
+ nStartStateId,
+ nEndStateId,
+ (nElementPrefixId<<16) | nElementLocalId,
+ nElementStateId);
+
+ Map<Integer,Transition> aPerElementTransitions = maTransitions.get(aTransition.GetStartStateId());
+ if (aPerElementTransitions == null)
+ {
+ aPerElementTransitions = new HashMap<>();
+ maTransitions.put(aTransition.GetStartStateId(), aPerElementTransitions);
+ }
+ aPerElementTransitions.put(aTransition.GetElementId(), aTransition);
+ }
+ }
+
+
+
+
+ public Transition GetTransition (
+ final int nStateId,
+ final int nPrefixId,
+ final int nLocalId)
+ {
+ Map<Integer,Transition> aPerElementTransitions = maTransitions.get(nStateId);
+ if (aPerElementTransitions == null)
+ return null;
+ else
+ return aPerElementTransitions.get((nPrefixId<<16) | nLocalId);
+ }
+
+
+
+
+ public int GetTransitionCount ()
+ {
+ return maTransitions.size();
+ }
+
+
+
+
+ private final Map<Integer,Map<Integer,Transition>> maTransitions;
+}
diff --git a/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/action/ActionDescriptor.java b/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/action/ActionDescriptor.java
new file mode 100644
index 000000000000..27ce9d4b8f90
--- /dev/null
+++ b/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/action/ActionDescriptor.java
@@ -0,0 +1,114 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.parser.action;
+
+import java.util.Vector;
+
+/** Container of all actions that are associated with a single state.
+ */
+public class ActionDescriptor
+{
+ public ActionDescriptor (
+ final int nStateId,
+ final String sName)
+ {
+ msStateName = sName;
+
+ maElementStartActions = null;
+ maElementEndActions = null;
+ maTextActions = null;
+ }
+
+
+
+
+ public void AddAction (
+ final IAction aAction,
+ final ActionTrigger eTrigger)
+ {
+ GetActionsForTrigger(eTrigger, true).add(aAction);
+ }
+
+
+
+
+ public Iterable<IAction> GetActions (
+ final ActionTrigger eTrigger)
+ {
+ return GetActionsForTrigger(eTrigger, false);
+ }
+
+
+
+
+ @Override
+ public String toString ()
+ {
+ return "actions for state "+msStateName;
+ }
+
+
+
+
+ private Vector<IAction> GetActionsForTrigger (
+ final ActionTrigger eTrigger,
+ final boolean bCreateWhenMissing)
+ {
+ Vector<IAction> aActions = null;
+ switch(eTrigger)
+ {
+ case ElementStart:
+ aActions = maElementStartActions;
+ if (bCreateWhenMissing && aActions==null)
+ {
+ aActions = new Vector<>();
+ maElementStartActions = aActions;
+ }
+ break;
+ case ElementEnd:
+ aActions = maElementEndActions;
+ if (bCreateWhenMissing && aActions==null)
+ {
+ aActions = new Vector<>();
+ maElementEndActions = aActions;
+ }
+ break;
+ case Text:
+ aActions = maTextActions;
+ if (bCreateWhenMissing && aActions==null)
+ {
+ aActions = new Vector<>();
+ maTextActions = aActions;
+ }
+ break;
+ }
+ return aActions;
+ }
+
+
+
+
+ private final String msStateName;
+ private Vector<IAction> maElementStartActions;
+ private Vector<IAction> maElementEndActions;
+ private Vector<IAction> maTextActions;
+}
diff --git a/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/action/ActionIterator.java b/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/action/ActionIterator.java
new file mode 100644
index 000000000000..0ca176ad51bb
--- /dev/null
+++ b/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/action/ActionIterator.java
@@ -0,0 +1,118 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.parser.action;
+
+import java.util.Iterator;
+
+/** Iterate over two sources of actions, both given as an Iterable<IAction>
+ * object that can be null.
+*/
+public class ActionIterator implements Iterable<IAction>
+{
+ public ActionIterator (
+ final Iterable<IAction> aOneStateActions,
+ final Iterable<IAction> aAllStateActions)
+ {
+ maOneStateActions = aOneStateActions;
+ maAllStateActions = aAllStateActions;
+ }
+
+
+
+
+ @Override public Iterator<IAction> iterator()
+ {
+ return new Iterator<IAction>()
+ {
+ Iterator<IAction> maIterator = null;
+ int mnPhase = 0;
+
+ @Override
+ public boolean hasNext()
+ {
+ while(true)
+ {
+ if (mnPhase == 2)
+ return false;
+ else if (mnPhase == 0)
+ {
+ if (maIterator == null)
+ if (maOneStateActions == null)
+ {
+ mnPhase = 1;
+ continue;
+ }
+ else
+ maIterator = maOneStateActions.iterator();
+ if (maIterator.hasNext())
+ return true;
+ else
+ {
+ maIterator = null;
+ mnPhase = 1;
+ }
+ }
+ else if (mnPhase == 1)
+ {
+ if (maIterator == null)
+ if (maAllStateActions == null)
+ {
+ mnPhase = 2;
+ return false;
+ }
+ else
+ maIterator = maAllStateActions.iterator();
+ if (maIterator.hasNext())
+ return true;
+ else
+ {
+ mnPhase = 2;
+ }
+ }
+ }
+ }
+
+
+
+
+ @Override
+ public IAction next()
+ {
+ return maIterator.next();
+ }
+
+
+
+
+ @Override
+ public void remove()
+ {
+ }
+ };
+ }
+
+
+
+
+ private final Iterable<IAction> maOneStateActions;
+ private final Iterable<IAction> maAllStateActions;
+}
diff --git a/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/action/ActionManager.java b/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/action/ActionManager.java
new file mode 100644
index 000000000000..48d78a03977b
--- /dev/null
+++ b/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/action/ActionManager.java
@@ -0,0 +1,165 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.parser.action;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import org.apache.openoffice.ooxml.parser.NameMap;
+
+/** Manage actions that are bound to states and XML events.
+ */
+public class ActionManager
+{
+ public ActionManager (
+ final NameMap aStateNameToIdMap)
+ {
+ maStateNameToIdMap = aStateNameToIdMap;
+ maAllStatesActions = new ActionDescriptor(0,"*");
+ maStateToActionsMap = new HashMap<>();
+ }
+
+
+
+
+ /** Add an action for an element start.
+ * @param sStateSelector
+ * The element is specified via a state name. This allows one element
+ * that leads to different complex types to have different actions,
+ * depending on the complex type.
+ * The selector value can be a full state name (including the namespace
+ * prefix and CT prefix, e.g. w06_CT_Table) or a regular expression
+ * (e.g. .*_CT_Table to match w06_CT_Table and w12_CT_Table).
+ * The action is bound to all matching states.
+ * @param aAction
+ * The action to call on entering any of the states that match the
+ * selector.
+ */
+ public void AddElementStartAction (
+ final String sStateSelector,
+ final IAction aAction)
+ {
+ AddAction(sStateSelector, aAction, ActionTrigger.ElementStart);
+ }
+
+
+
+
+ /** Add an action for an element end.
+ * @see AddElementStartAction.
+ */
+ public void AddElementEndAction (
+ final String sStateSelector,
+ final IAction aAction)
+ {
+ AddAction(sStateSelector, aAction, ActionTrigger.ElementEnd);
+ }
+
+
+
+
+ /** Add an action for XML text events.
+ * @see AddElementStartAction.
+ */
+ public void AddTextAction (
+ final String sStateSelector,
+ final IAction aAction)
+ {
+ AddAction(sStateSelector, aAction, ActionTrigger.Text);
+ }
+
+
+
+
+ /** Return an iterable object that gives access to all actions
+ * bound to the given state and trigger.
+ * Return value can be null when there are no actions bound to the state
+ * and trigger.
+ */
+ public Iterable<IAction> GetActions (
+ final int nStateId,
+ final ActionTrigger eTrigger)
+ {
+ final ActionDescriptor aOneStateActionsDescriptor = maStateToActionsMap.get(nStateId);
+ final Iterable<IAction> aOneStateActions = aOneStateActionsDescriptor!=null
+ ? aOneStateActionsDescriptor.GetActions(eTrigger)
+ : null;
+ final Iterable<IAction> aAllStateActions = maAllStatesActions.GetActions(eTrigger);
+
+ if (aOneStateActions == null)
+ return aAllStateActions;
+ else if (aAllStateActions == null)
+ return aOneStateActions;
+ else
+ return new ActionIterator(aOneStateActions, aAllStateActions);
+ }
+
+
+
+
+ private void AddAction (
+ final String sStateSelector,
+ final IAction aAction,
+ final ActionTrigger eTrigger)
+ {
+ if (sStateSelector.equals("*"))
+ {
+ // Simple optimization when an action is defined for all states.
+ maAllStatesActions.AddAction(aAction, eTrigger);
+ }
+ else if (sStateSelector.contains("*") || sStateSelector.contains("?"))
+ {
+ // The state selector contains wildcards. We have to iterate over
+ // all state names to find the matching ones.
+ for (final int nStateId : maStateNameToIdMap.GetMatchingStateIds(sStateSelector))
+ {
+ GetActionDescriptor(nStateId).AddAction(aAction, eTrigger);
+ }
+ }
+ else
+ {
+ final int nStateId = maStateNameToIdMap.GetIdForName(sStateSelector);
+ GetActionDescriptor(nStateId).AddAction(aAction, eTrigger);
+ }
+ }
+
+
+
+
+ private ActionDescriptor GetActionDescriptor (final int nStateId)
+ {
+ ActionDescriptor aDescriptor = maStateToActionsMap.get(nStateId);
+ if (aDescriptor == null)
+ {
+ aDescriptor = new ActionDescriptor(nStateId, maStateNameToIdMap.GetNameForId(nStateId));
+ maStateToActionsMap.put(nStateId, aDescriptor);
+ }
+ return aDescriptor;
+ }
+
+
+
+
+ private final NameMap maStateNameToIdMap;
+ private final ActionDescriptor maAllStatesActions;
+ private final Map<Integer,ActionDescriptor> maStateToActionsMap;
+}
diff --git a/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/action/ActionTrigger.java b/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/action/ActionTrigger.java
new file mode 100644
index 000000000000..33b781a0b1a6
--- /dev/null
+++ b/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/action/ActionTrigger.java
@@ -0,0 +1,31 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.parser.action;
+
+/** An enumeration of all supported action triggers.
+ */
+public enum ActionTrigger
+{
+ ElementStart,
+ ElementEnd,
+ Text
+} \ No newline at end of file
diff --git a/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/action/IAction.java b/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/action/IAction.java
new file mode 100644
index 000000000000..e784ed7c5537
--- /dev/null
+++ b/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/action/IAction.java
@@ -0,0 +1,53 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.parser.action;
+
+import javax.xml.stream.Location;
+
+import org.apache.openoffice.ooxml.parser.ElementContext;
+
+/** Interface for actions that are bound to states and triggered by XML events.
+ */
+public interface IAction
+{
+ /** Callback for a single XML event.
+ * @param eTrigger
+ * Equivalent to the XML event type.
+ * @param aContext
+ * The context of the element that was just entered (element start),
+ * is about to be left (element end) or is currently active (all other
+ * events).
+ * @param sText
+ * Contains text for ActionTrigger.Text. Is null for all other
+ * triggers.
+ * @param aStartLocation
+ * The location in the source file where the triggering element starts.
+ * @param aEndLocation
+ * The location in the source file where the triggering element ends.
+ */
+ void Run (
+ final ActionTrigger eTrigger,
+ final ElementContext aContext,
+ final String sText,
+ final Location aStartLocation,
+ final Location aEndLocation);
+}
diff --git a/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/attribute/AttributeDescriptor.java b/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/attribute/AttributeDescriptor.java
new file mode 100644
index 000000000000..a51aa54f184f
--- /dev/null
+++ b/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/attribute/AttributeDescriptor.java
@@ -0,0 +1,130 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.parser.attribute;
+
+/** Store information about a single attribute (per state) that was read
+ * from the parse table.
+ *
+ * Note that an attribute that is defined for more than one state has one
+ * AttributeDescriptor object per state.
+ *
+ */
+public class AttributeDescriptor
+{
+ public AttributeDescriptor (
+ final int nPrefixId,
+ final int nAttributeId,
+ final boolean bCanBeUnqualified,
+ final boolean bIsOptional,
+ final String sDefaultValue,
+ final String sAttributeName,
+ final int nAttributeTypeId)
+ {
+ mnNamespaceId = nPrefixId;
+ mnAttributeId = nAttributeId;
+ mbCanBeUnqualified = bCanBeUnqualified;
+ mbIsOptional = bIsOptional;
+ msDefaultValue = sDefaultValue;
+ msAttributeName = sAttributeName;
+ mnAttributeTypeId = nAttributeTypeId;
+ }
+
+
+
+
+ public int GetTypeId()
+ {
+ return mnAttributeTypeId;
+ }
+
+
+
+
+ public int GetNamespaceId ()
+ {
+ return mnNamespaceId;
+ }
+
+
+
+
+ public int GetNameId ()
+ {
+ return mnAttributeId;
+ }
+
+
+
+
+ public boolean CanBeUnqualified ()
+ {
+ return mbCanBeUnqualified;
+ }
+
+
+
+
+ public boolean IsOptional ()
+ {
+ return mbIsOptional;
+ }
+
+
+
+
+ public String GetDefaultValue ()
+ {
+ return msDefaultValue;
+ }
+
+
+
+
+ public String GetName ()
+ {
+ return msAttributeName;
+ }
+
+
+
+
+ @Override
+ public String toString ()
+ {
+ return String.format(
+ "attribute %s(%d) of type %d",
+ msAttributeName,
+ mnAttributeId,
+ mnAttributeTypeId);
+ }
+
+
+
+
+ private final int mnNamespaceId;
+ private final int mnAttributeId;
+ private final boolean mbCanBeUnqualified;
+ private final boolean mbIsOptional;
+ private final String msDefaultValue;
+ private final String msAttributeName;
+ private final int mnAttributeTypeId;
+}
diff --git a/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/attribute/AttributeManager.java b/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/attribute/AttributeManager.java
new file mode 100644
index 000000000000..55b1df9f1f5e
--- /dev/null
+++ b/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/attribute/AttributeManager.java
@@ -0,0 +1,273 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.parser.attribute;
+
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Map;
+import java.util.Set;
+import java.util.Vector;
+
+import org.apache.openoffice.ooxml.parser.Log;
+import org.apache.openoffice.ooxml.parser.NameMap;
+import org.apache.openoffice.ooxml.parser.NamespaceMap;
+import org.apache.openoffice.ooxml.parser.type.SimpleTypeManager;
+
+
+/** Match a set of attributes from the document with the attribute
+ * specifications of a state.
+ *
+ */
+public class AttributeManager
+{
+ /** Create a new AttributeManager for the attribute specifications that
+ * are given in the parse table.
+ */
+ public AttributeManager (
+ final Vector<String[]> aData,
+ final NamespaceMap aNamespaceMap,
+ final NameMap aNameMap,
+ final NameMap aStateNameMap,
+ final SimpleTypeManager aSimpleTypeManager,
+ final Vector<String> aErrorsAndWarnings)
+ {
+ maStateIdToAttributesMap = new HashMap<>();
+ maNamespaceMap = aNamespaceMap;
+ maNameMap = aNameMap;
+ maStateNameMap = aStateNameMap;
+ maSimpleTypeManager = aSimpleTypeManager;
+ maErrorsAndWarnings = aErrorsAndWarnings;
+ ParseData(aData);
+ }
+
+
+
+
+ private void ParseData (final Vector<String[]> aData)
+ {
+ for (final String[] aLine : aData)
+ {
+ final int nStateId = Integer.parseInt(aLine[1]);
+ final int nPrefixId = Integer.parseInt(aLine[2]);
+ final boolean bCanBeUnqualified = aLine[3].startsWith("u");
+ final int nAttributeId = Integer.parseInt(aLine[4]);
+ final int nAttributeTypeId = aLine[5].equals("null") ? -1 : Integer.parseInt(aLine[5]);
+ final boolean bIsOptional = aLine[6].startsWith("o");
+ final String sDefault = aLine[7];
+ // State name.
+ final String sAttributeName = aLine[9];
+ // Attribute type name.
+
+ Map<Integer,AttributeDescriptor> aAttributesPerState = maStateIdToAttributesMap.get(nStateId);
+ if (aAttributesPerState == null)
+ {
+ aAttributesPerState = new HashMap<>();
+ maStateIdToAttributesMap.put(nStateId, aAttributesPerState);
+ }
+
+ final AttributeDescriptor aAttributeDescriptor = new AttributeDescriptor(
+ nPrefixId,
+ nAttributeId,
+ bCanBeUnqualified,
+ bIsOptional,
+ sDefault,
+ sAttributeName,
+ nAttributeTypeId);
+
+ aAttributesPerState.put(
+ (nPrefixId<<16)|nAttributeId,
+ aAttributeDescriptor);
+ if (bCanBeUnqualified)
+ aAttributesPerState.put(
+ nAttributeId,
+ aAttributeDescriptor);
+ }
+ }
+
+
+
+
+ /** For the state with id nStateId, match the attributes from the document
+ * with the attribute specifications of that state.
+ */
+ public AttributeValues ParseAttributes (
+ final int nStateId,
+ final AttributeProvider aDocumentAttributes)
+ {
+ final AttributeValues aValues = new AttributeValues();
+
+ final Map<Integer,AttributeDescriptor> aAttributesPerState = maStateIdToAttributesMap.get(nStateId);
+ if (aAttributesPerState == null)
+ {
+ if (aDocumentAttributes.HasAttributes())
+ {
+ Log.Std.printf("state has not attributes defined but document provides %d attributes\n",
+ aDocumentAttributes.GetAttributeCount());
+ for (final String[] aEntry : aDocumentAttributes)
+ {
+ Log.Dbg.printf(" %s -> %s\n", aEntry[0], aEntry[1]);
+ }
+ throw new RuntimeException();
+ }
+ }
+ else
+ {
+ final Set<AttributeDescriptor> aUsedAttributes = new HashSet<>();
+
+ // Process all attributes from the document.
+ for (final String[] aEntry : aDocumentAttributes)
+ {
+ final String sRawValue = aEntry[2];
+ final AttributeDescriptor aAttributeDescriptor = ProcessAttribute(
+ aEntry[0],
+ aEntry[1],
+ sRawValue,
+ aAttributesPerState);
+ aUsedAttributes.add(aAttributeDescriptor);
+ final Object aProcessedValue = maSimpleTypeManager.PreprocessValue(
+ sRawValue,
+ aAttributeDescriptor);
+ if (aProcessedValue == null)
+ {
+ maSimpleTypeManager.PreprocessValue(
+ sRawValue,
+ aAttributeDescriptor);
+ throw new RuntimeException(
+ String.format("value '%s' of attribute '%s' is not recognized",
+ sRawValue,
+ aAttributeDescriptor.GetName()));
+ }
+ aValues.AddAttribute(
+ aAttributeDescriptor,
+ sRawValue,
+ aProcessedValue);
+
+ if (Log.Dbg != null)
+ {
+ if (aAttributeDescriptor == null)
+ Log.Dbg.printf("attribute %s%s is not known\n",
+ aEntry[0]==null ? "" : ":"+aEntry[0],
+ aEntry[1]);
+ else
+ Log.Dbg.printf("attribute %s:%s(%d:%d) has type %s(%d) and value %s('%s')\n",
+ maNamespaceMap.GetDescriptorForId(aAttributeDescriptor.GetNamespaceId()).Prefix,
+ maNameMap.GetNameForId(aAttributeDescriptor.GetNameId()),
+ aAttributeDescriptor.GetNamespaceId(),
+ aAttributeDescriptor.GetNameId(),
+ maStateNameMap.GetNameForId(aAttributeDescriptor.GetTypeId()),
+ aAttributeDescriptor.GetTypeId(),
+ aProcessedValue,
+ sRawValue);
+ }
+ }
+
+ // Check if all required attributes where given.
+ for (final AttributeDescriptor aAttribute : aAttributesPerState.values())
+ {
+ if ( ! aUsedAttributes.contains(aAttribute))
+ {
+ if ( ! aAttribute.IsOptional())
+ {
+ final String sMessage = String.format("attribute '"+aAttribute.GetName()+"' is not present but also not optional");
+ if (maErrorsAndWarnings != null)
+ maErrorsAndWarnings.add(sMessage);
+ else
+ throw new RuntimeException(sMessage);
+ }
+ else
+ {
+ // Add an entry that gives access to the default value.
+ aValues.AddAttribute(aAttribute, null, null);
+ }
+ }
+ }
+ }
+
+ return aValues;
+ }
+
+
+
+
+ private AttributeDescriptor ProcessAttribute (
+ final String sNamespace,
+ final String sAttributeName,
+ final String sAttributeValue,
+ final Map<Integer,AttributeDescriptor> aAttributesPerState)
+ {
+ final AttributeDescriptor aAttributeDescriptor;
+ if (sNamespace == null)
+ {
+ // Attribute name has no namespace.
+ final int nAttributeNameId = maNameMap.GetIdForName(sAttributeName);
+ aAttributeDescriptor = aAttributesPerState.get(nAttributeNameId);
+ }
+ else
+ {
+ // Attribute name has explicit namespace.
+ final NamespaceMap.NamespaceDescriptor aDescriptor = maNamespaceMap.GetDescriptorForURI(sNamespace);
+ final int nAttributeNameId = maNameMap.GetIdForName(sAttributeName);
+ aAttributeDescriptor = aAttributesPerState.get((aDescriptor.Id<<16) | nAttributeNameId);
+ }
+ return aAttributeDescriptor;
+ }
+
+
+
+
+ /** Remove the quotes around the given string.
+ * If it has the special value null (without quotes) then the null reference
+ * is returned.
+ */
+ private String UnquoteString (final String sValue)
+ {
+ if (sValue.equals("null"))
+ return null;
+ else
+ {
+ assert(sValue.startsWith("\""));
+ assert(sValue.endsWith("\""));
+ return sValue.substring(1, sValue.length()-1);
+ }
+ }
+
+
+
+
+ public int GetAttributeCount ()
+ {
+ int nCount = 0;
+ for (final Map<Integer,AttributeDescriptor> aMap : maStateIdToAttributesMap.values())
+ nCount += aMap.size();
+ return nCount;
+ }
+
+
+
+
+ private final Map<Integer,Map<Integer,AttributeDescriptor>> maStateIdToAttributesMap;
+ private final NamespaceMap maNamespaceMap;
+ private final NameMap maNameMap;
+ private final NameMap maStateNameMap;
+ private final SimpleTypeManager maSimpleTypeManager;
+ private final Vector<String> maErrorsAndWarnings;
+}
diff --git a/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/attribute/AttributeProvider.java b/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/attribute/AttributeProvider.java
new file mode 100644
index 000000000000..ab9e28550bc2
--- /dev/null
+++ b/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/attribute/AttributeProvider.java
@@ -0,0 +1,99 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.parser.attribute;
+
+import java.util.Iterator;
+
+import javax.xml.stream.XMLStreamReader;
+
+/** Give access to the attributes that are read from an OOXML stream.
+ */
+public class AttributeProvider
+ implements Iterable<String[]>
+{
+ public AttributeProvider (final XMLStreamReader aReader)
+ {
+ maReader = aReader;
+ }
+
+
+
+ public boolean HasAttributes ()
+ {
+ return maReader.getAttributeCount() > 0;
+ }
+
+
+
+
+ public String GetValue (final String sKey)
+ {
+ return maReader.getAttributeValue(null, sKey);
+ }
+
+
+
+ @Override
+ public Iterator<String[]> iterator ()
+ {
+ return new Iterator<String[]> ()
+ {
+ int nIndex = 0;
+ final int nCount = maReader.getAttributeCount();
+
+ @Override public boolean hasNext()
+ {
+ return nIndex < nCount;
+ }
+
+ @Override public String[] next()
+ {
+ final String[] aResult = new String[]
+ {
+ maReader.getAttributeNamespace(nIndex),
+ maReader.getAttributeLocalName(nIndex),
+ maReader.getAttributeValue(nIndex)
+ };
+ ++nIndex;
+ return aResult;
+ }
+
+ @Override public void remove()
+ {
+ }
+
+ };
+ }
+
+
+
+
+ public Integer GetAttributeCount ()
+ {
+ return maReader.getAttributeCount();
+ }
+
+
+
+
+ private final XMLStreamReader maReader;
+}
diff --git a/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/attribute/AttributeValues.java b/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/attribute/AttributeValues.java
new file mode 100644
index 000000000000..a419abbec0ec
--- /dev/null
+++ b/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/attribute/AttributeValues.java
@@ -0,0 +1,91 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.parser.attribute;
+
+import java.util.Map;
+import java.util.Map.Entry;
+import java.util.TreeMap;
+
+/** Container of attribute values of an opening tag.
+ */
+public class AttributeValues
+{
+ AttributeValues ()
+ {
+ maRawAttributeValues = new TreeMap<>();
+ maProcessedAttributeValues = new TreeMap<>();
+ }
+
+
+
+
+ public void AddAttribute (
+ final AttributeDescriptor aAttributeDescriptor,
+ final String sRawValue,
+ final Object aProcessedValue)
+ {
+ maRawAttributeValues.put(
+ aAttributeDescriptor.GetName(),
+ sRawValue);
+ maProcessedAttributeValues.put(
+ aAttributeDescriptor.GetName(),
+ aProcessedValue);
+ }
+
+
+
+
+ public Iterable<Entry<String,String>> GetAttributes ()
+ {
+ return maRawAttributeValues.entrySet();
+ }
+
+
+
+
+ public String GetRawAttributeValue (final String sName)
+ {
+ return maRawAttributeValues.get(sName);
+ }
+
+
+
+
+ public Object GetProcessedAttributeValue (final String sName)
+ {
+ return maProcessedAttributeValues.get(sName);
+ }
+
+
+
+
+ public int GetAttributeCount ()
+ {
+ return maRawAttributeValues.size();
+ }
+
+
+
+
+ private Map<String,String> maRawAttributeValues;
+ private Map<String,Object> maProcessedAttributeValues;
+}
diff --git a/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/type/BlobParser.java b/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/type/BlobParser.java
new file mode 100644
index 000000000000..7edafaeb0b24
--- /dev/null
+++ b/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/type/BlobParser.java
@@ -0,0 +1,102 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.parser.type;
+
+import org.apache.openoffice.ooxml.parser.NameMap;
+
+public class BlobParser implements ISimpleTypeParser
+{
+ public BlobParser(final String[] aLine)
+ {
+ switch(aLine[5])
+ {
+ case "B":
+ meType = Type.Base64Binary;
+ break;
+ case "H":
+ meType = Type.HexBinary;
+ break;
+ default:
+ throw new RuntimeException();
+ }
+ switch(aLine[6])
+ {
+ case "L":
+ mnLengthRestriction = Integer.parseInt(aLine[7]);
+ break;
+ case "N":
+ mnLengthRestriction = null;
+ break;
+ default:
+ throw new RuntimeException();
+ }
+ }
+
+
+
+
+ @Override
+ public Object Parse (
+ final String sRawValue,
+ final NameMap aAttributeValueMap)
+ {
+ if (mnLengthRestriction != null)
+ if (sRawValue.length()/2 != mnLengthRestriction)
+ return null;
+ /*
+ throw new RuntimeException(
+ String.format(
+ "length restriction (=%d) is violated, actual length is %d",
+ mnLengthRestriction,
+ sRawValue.length()));
+ */
+ switch(meType)
+ {
+ case Base64Binary:
+ throw new RuntimeException("not yet implemented");
+
+ case HexBinary:
+ try
+ {
+ return Integer.parseInt(sRawValue, 16);
+ }
+ catch (NumberFormatException aException)
+ {
+ return null;
+ }
+
+ default:
+ throw new RuntimeException();
+ }
+ }
+
+
+
+
+ enum Type
+ {
+ Base64Binary,
+ HexBinary
+ };
+ private final Type meType;
+ private final Integer mnLengthRestriction;
+}
diff --git a/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/type/DateTimeParser.java b/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/type/DateTimeParser.java
new file mode 100644
index 000000000000..979d4051b6e5
--- /dev/null
+++ b/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/type/DateTimeParser.java
@@ -0,0 +1,42 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.parser.type;
+
+import org.apache.openoffice.ooxml.parser.NameMap;
+
+public class DateTimeParser implements ISimpleTypeParser
+{
+
+ public DateTimeParser(String[] aLine)
+ {
+ // TODO Auto-generated constructor stub
+ }
+
+ @Override
+ public Object Parse(
+ final String sRawValue,
+ final NameMap aAttributeValueMap)
+ {
+ throw new RuntimeException();
+ }
+
+}
diff --git a/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/type/ISimpleTypeParser.java b/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/type/ISimpleTypeParser.java
new file mode 100644
index 000000000000..aaa234009767
--- /dev/null
+++ b/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/type/ISimpleTypeParser.java
@@ -0,0 +1,31 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.parser.type;
+
+import org.apache.openoffice.ooxml.parser.NameMap;
+
+public interface ISimpleTypeParser
+{
+ Object Parse (
+ final String sRawValue,
+ final NameMap aAttributeValueMap);
+}
diff --git a/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/type/ListParser.java b/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/type/ListParser.java
new file mode 100644
index 000000000000..94feeb04e3b2
--- /dev/null
+++ b/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/type/ListParser.java
@@ -0,0 +1,53 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.parser.type;
+
+import org.apache.openoffice.ooxml.parser.NameMap;
+
+public class ListParser implements ISimpleTypeParser
+{
+
+ public ListParser (final ISimpleTypeParser aItemParser)
+ {
+ maItemParser = aItemParser;
+ }
+
+
+
+
+ @Override
+ public Object Parse(
+ final String sRawValue,
+ final NameMap aAttributeValueMap)
+ {
+ final String[] aParts = sRawValue.split("\\s+");
+ final Object[] aValues = new Object[aParts.length];
+ for (int nIndex=0; nIndex<aParts.length; ++nIndex)
+ aValues[nIndex] = maItemParser.Parse(aParts[nIndex], aAttributeValueMap);
+ return aValues;
+ }
+
+
+
+
+ private final ISimpleTypeParser maItemParser;
+}
diff --git a/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/type/NumberParser.java b/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/type/NumberParser.java
new file mode 100644
index 000000000000..19fc833867cf
--- /dev/null
+++ b/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/type/NumberParser.java
@@ -0,0 +1,270 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.parser.type;
+
+import java.util.HashSet;
+import java.util.Set;
+
+import org.apache.openoffice.ooxml.parser.NameMap;
+
+public class NumberParser implements ISimpleTypeParser
+{
+ public NumberParser (final String[] aLine)
+ {
+ switch(aLine[5])
+ {
+ case "u1":
+ meNumberType = NumberType.Boolean;
+ meJavaNumberType = JavaNumberType.Boolean;
+ break;
+ case "s8":
+ meNumberType = NumberType.Byte;
+ meJavaNumberType = JavaNumberType.Byte;
+ break;
+ case "u8":
+ meNumberType = NumberType.UnsignedByte;
+ meJavaNumberType = JavaNumberType.Short;
+ break;
+ case "s16":
+ meNumberType = NumberType.Short;
+ meJavaNumberType = JavaNumberType.Short;
+ break;
+ case "u16":
+ meNumberType = NumberType.UnsignedShort;
+ meJavaNumberType = JavaNumberType.Integer;
+ break;
+ case "s32":
+ meNumberType = NumberType.Int;
+ meJavaNumberType = JavaNumberType.Integer;
+ break;
+ case "u32":
+ meNumberType = NumberType.UnsignedInt;
+ meJavaNumberType = JavaNumberType.Long;
+ break;
+ case "s64":
+ meNumberType = NumberType.Long;
+ meJavaNumberType = JavaNumberType.Long;
+ break;
+ case "u64":
+ meNumberType = NumberType.UnsignedLong;
+ meJavaNumberType = JavaNumberType.Long;
+ break;
+ case "s*":
+ meNumberType = NumberType.Integer;
+ meJavaNumberType = JavaNumberType.Long;
+ break;
+ case "f":
+ meNumberType = NumberType.Float;
+ meJavaNumberType = JavaNumberType.Float;
+ break;
+ case "d":
+ meNumberType = NumberType.Double;
+ meJavaNumberType = JavaNumberType.Double;
+ break;
+ default:
+ throw new RuntimeException("unsupported numerical type "+aLine[5]);
+ }
+
+ switch(aLine[6])
+ {
+ case "E":
+ meRestrictionType = RestrictionType.Enumeration;
+ maEnumeration = new HashSet<>();
+ for (int nIndex=7; nIndex<aLine.length; ++nIndex)
+ maEnumeration.add(ParseNumber(aLine[nIndex]));
+ break;
+
+ case "S":
+ meRestrictionType = RestrictionType.Size;
+ for (int nIndex=7; nIndex<=9; nIndex+=2)
+ if (nIndex<aLine.length)
+ switch (aLine[nIndex])
+ {
+ case "<=":
+ maMaximumValue = ParseNumber(aLine[nIndex+1]);
+ mbIsMaximumInclusive = true;
+ break;
+ case "<":
+ maMaximumValue = ParseNumber(aLine[nIndex+1]);
+ mbIsMaximumInclusive = false;
+ break;
+ case ">=":
+ maMinimumValue = ParseNumber(aLine[nIndex+1]);
+ mbIsMinimumInclusive = true;
+ break;
+ case ">":
+ maMinimumValue = ParseNumber(aLine[nIndex+1]);
+ mbIsMinimumInclusive = false;
+ break;
+ }
+ break;
+
+ case "N":
+ meRestrictionType = RestrictionType.None;
+ break;
+
+ default:
+ throw new RuntimeException("unsupported numerical restriction "+aLine[6]);
+ }
+ }
+
+
+
+
+ @Override
+ public Object Parse(
+ final String sRawValue,
+ final NameMap aAttributeValueMap)
+ {
+ final Object aNumber = ParseNumber(sRawValue);
+ switch(meRestrictionType)
+ {
+ case Enumeration:
+ if (maEnumeration.contains(aNumber))
+ return aNumber;
+ else
+ return null;
+
+ case Size:
+ if (maMinimumValue != null)
+ if (mbIsMinimumInclusive)
+ {
+ if (CompareTo(aNumber, maMinimumValue, meJavaNumberType) < 0)
+ return null;
+ }
+ else
+ {
+ if (CompareTo(aNumber, maMinimumValue, meJavaNumberType) <= 0)
+ return null;
+ }
+ if (maMaximumValue != null)
+ if (mbIsMaximumInclusive)
+ {
+ if (CompareTo(aNumber, maMaximumValue, meJavaNumberType) > 0)
+ return null;
+ }
+ else
+ {
+ if (CompareTo(aNumber, maMaximumValue, meJavaNumberType) >= 0)
+ return null;
+ }
+ return aNumber;
+
+ case None:
+ return aNumber;
+
+ default:
+ throw new RuntimeException();
+ }
+ }
+
+
+
+
+ Object ParseNumber (final String sNumber)
+ {
+ switch(meJavaNumberType)
+ {
+ case Boolean: return Boolean.parseBoolean(sNumber);
+ case Byte: return Byte.parseByte(sNumber);
+ case Short: return Short.parseShort(sNumber);
+ case Integer: return Integer.parseInt(sNumber);
+ case Long: return Long.parseLong(sNumber);
+ case Float: return Float.parseFloat(sNumber);
+ case Double: return Double.parseDouble(sNumber);
+ default:
+ throw new RuntimeException();
+ }
+ }
+
+
+
+
+ private static int CompareTo (
+ final Object aLeft,
+ final Object aRight,
+ final JavaNumberType eType)
+ {
+ switch(eType)
+ {
+ case Boolean:
+ return ((Boolean)aLeft).compareTo((Boolean)aRight);
+ case Byte:
+ return ((Byte)aLeft).compareTo((Byte)aRight);
+ case Short:
+ return ((Short)aLeft).compareTo((Short)aRight);
+ case Integer:
+ return ((Integer)aLeft).compareTo((Integer)aRight);
+ case Long:
+ return ((Long)aLeft).compareTo((Long)aRight);
+ case Float:
+ return ((Float)aLeft).compareTo((Float)aRight);
+ case Double:
+ return ((Double)aLeft).compareTo((Double)aRight);
+ default:
+ throw new RuntimeException();
+ }
+ }
+
+
+
+
+ enum NumberType
+ {
+ Boolean,
+ Byte,
+ UnsignedByte,
+ Short,
+ UnsignedShort,
+ Int,
+ UnsignedInt,
+ Long,
+ UnsignedLong,
+ Integer,
+ Float,
+ Double
+ }
+ enum JavaNumberType
+ {
+ Boolean,
+ Byte,
+ Short,
+ Integer,
+ Long,
+ Float,
+ Double
+ }
+ enum RestrictionType
+ {
+ Enumeration,
+ Size,
+ None
+ }
+ private final NumberType meNumberType;
+ private final JavaNumberType meJavaNumberType;
+ private final RestrictionType meRestrictionType;
+ private Set<Object> maEnumeration;
+ private Object maMinimumValue;
+ private boolean mbIsMinimumInclusive;
+ private Object maMaximumValue;
+ private boolean mbIsMaximumInclusive;
+}
diff --git a/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/type/SimpleTypeManager.java b/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/type/SimpleTypeManager.java
new file mode 100644
index 000000000000..abeb529ddc52
--- /dev/null
+++ b/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/type/SimpleTypeManager.java
@@ -0,0 +1,118 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.parser.type;
+
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Vector;
+
+import org.apache.openoffice.ooxml.parser.NameMap;
+import org.apache.openoffice.ooxml.parser.attribute.AttributeDescriptor;
+
+public class SimpleTypeManager
+{
+ public SimpleTypeManager(
+ final Vector<String[]> aData,
+ final NameMap aAttributeValueMap)
+ {
+ maAttributeValueMap = aAttributeValueMap;
+ maSimpleTypeToParsersMap = new HashMap<>();
+ ParseData(aData);
+ }
+
+
+
+
+ private void ParseData (final Vector<String[]> aData)
+ {
+ for (final String[] aLine : aData)
+ {
+ final int nSimpleTypeId = Integer.parseInt(aLine[1]);
+// final int nVariant = Integer.parseInt(aLine[2]);
+ final boolean bIsList = aLine[3].equals("L");
+ final ISimpleTypeParser aVariantParser;
+ switch (aLine[4])
+ {
+ case "S":
+ aVariantParser = new StringParser(aLine);
+ break;
+ case "N":
+ aVariantParser = new NumberParser(aLine);
+ break;
+ case "D":
+ aVariantParser = new DateTimeParser(aLine);
+ break;
+ case "B":
+ aVariantParser = new BlobParser(aLine);
+ break;
+ default:
+ throw new RuntimeException("unexpected parser type: "+aLine[4]);
+ }
+
+ Vector<ISimpleTypeParser> aVariants = maSimpleTypeToParsersMap.get(nSimpleTypeId);
+ if (aVariants == null)
+ {
+ aVariants = new Vector<>();
+ maSimpleTypeToParsersMap.put(nSimpleTypeId, aVariants);
+ }
+ if (bIsList)
+ aVariants.add(new ListParser(aVariantParser));
+ else
+ aVariants.add(aVariantParser);
+ }
+ }
+
+
+
+
+ public Object PreprocessValue (
+ final String sRawValue,
+ final AttributeDescriptor aAttributeDescriptor)
+ {
+ final Vector<ISimpleTypeParser> aTypeParsers = maSimpleTypeToParsersMap.get(aAttributeDescriptor.GetTypeId());
+ if (aTypeParsers == null)
+ throw new RuntimeException("type "+aAttributeDescriptor.GetTypeId()+" is not supported");
+
+ for (final ISimpleTypeParser aParser : aTypeParsers)
+ {
+ try
+ {
+ final Object aProcessedValue = aParser.Parse(
+ sRawValue,
+ maAttributeValueMap);
+ if (aProcessedValue != null)
+ return aProcessedValue;
+ }
+ catch(final Exception aException)
+ {
+ return "error";
+ }
+ }
+ return null;
+ }
+
+
+
+
+ private final NameMap maAttributeValueMap;
+ private Map<Integer,Vector<ISimpleTypeParser>> maSimpleTypeToParsersMap;
+}
diff --git a/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/type/StringParser.java b/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/type/StringParser.java
new file mode 100644
index 000000000000..c3b22bf5fba0
--- /dev/null
+++ b/ooxml/source/framework/JavaOOXMLParser/src/org/apache/openoffice/ooxml/parser/type/StringParser.java
@@ -0,0 +1,122 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.parser.type;
+
+import java.util.HashSet;
+import java.util.Set;
+import java.util.regex.Pattern;
+
+import org.apache.openoffice.ooxml.parser.NameMap;
+
+public class StringParser
+ implements ISimpleTypeParser
+{
+
+ public StringParser (final String[] aLine)
+ {
+ switch(aLine[5])
+ {
+ case "E":
+ meRestrictionType = RestrictionType.Enumeration;
+ maEnumeration = new HashSet<>();
+ for (int nIndex=6; nIndex<aLine.length; ++nIndex)
+ maEnumeration.add(Integer.parseInt(aLine[nIndex]));
+ break;
+
+ case "P":
+ meRestrictionType = RestrictionType.Pattern;
+ maPattern = Pattern.compile(aLine[6].replace("\\p{Is", "\\p{In"));
+ break;
+
+ case "L":
+ meRestrictionType = RestrictionType.Length;
+ mnMinimumLength = Integer.parseInt(aLine[6]);
+ mnMaximumLength = Integer.parseInt(aLine[7]);
+ break;
+
+ case "N":
+ meRestrictionType = RestrictionType.None;
+ break;
+
+ default:
+ throw new RuntimeException();
+ }
+ }
+
+
+
+
+ @Override
+ public Object Parse (
+ final String sRawValue,
+ final NameMap aAttributeValueMap)
+ {
+ switch(meRestrictionType)
+ {
+ case Enumeration:
+ final int nId = aAttributeValueMap.GetIdForOptionalName(sRawValue);
+ if ( ! maEnumeration.contains(nId))
+ return null;//throw new RuntimeException("value is not part of enumeration");
+ else
+ return nId;
+
+ case Pattern:
+ if ( ! maPattern.matcher(sRawValue).matches())
+ return null;//throw new RuntimeException("value does not match pattern");
+ else
+ return sRawValue;
+
+ case Length:
+ if (sRawValue.length()<mnMinimumLength || sRawValue.length()>mnMaximumLength)
+ return null;/*throw new RuntimeException(
+ String.format("value violates string length restriction: %s is not inside [%d,%d]",
+ sRawValue.length(),
+ mnMinimumLength,
+ mnMaximumLength));
+ */
+ else
+ return sRawValue;
+
+ case None:
+ return sRawValue;
+
+ default:
+ throw new RuntimeException();
+ }
+ }
+
+
+
+
+ enum RestrictionType
+ {
+ Enumeration,
+ Pattern,
+ Length,
+ None
+ }
+ private final RestrictionType meRestrictionType;
+ private Set<Integer> maEnumeration;
+ private Pattern maPattern;
+ private int mnMinimumLength;
+ private int mnMaximumLength;
+}
diff --git a/ooxml/source/framework/JavaPartManager/.classpath b/ooxml/source/framework/JavaPartManager/.classpath
new file mode 100644
index 000000000000..5ec76483b264
--- /dev/null
+++ b/ooxml/source/framework/JavaPartManager/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
+ <classpathentry combineaccessrules="false" kind="src" path="/JavaOOXMLParser"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/ooxml/source/framework/JavaPartManager/.project b/ooxml/source/framework/JavaPartManager/.project
new file mode 100644
index 000000000000..08a7d0d1b383
--- /dev/null
+++ b/ooxml/source/framework/JavaPartManager/.project
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>JavaPartManager</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ </natures>
+</projectDescription>
diff --git a/ooxml/source/framework/JavaPartManager/.settings/org.eclipse.jdt.core.prefs b/ooxml/source/framework/JavaPartManager/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 000000000000..7341ab1683c4
--- /dev/null
+++ b/ooxml/source/framework/JavaPartManager/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,11 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7
+org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
+org.eclipse.jdt.core.compiler.compliance=1.7
+org.eclipse.jdt.core.compiler.debug.lineNumber=generate
+org.eclipse.jdt.core.compiler.debug.localVariable=generate
+org.eclipse.jdt.core.compiler.debug.sourceFile=generate
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.7
diff --git a/ooxml/source/framework/JavaPartManager/src/org/apache/openoffice/ooxml/framework/part/ContentType.java b/ooxml/source/framework/JavaPartManager/src/org/apache/openoffice/ooxml/framework/part/ContentType.java
new file mode 100644
index 000000000000..fc147cbd5cd4
--- /dev/null
+++ b/ooxml/source/framework/JavaPartManager/src/org/apache/openoffice/ooxml/framework/part/ContentType.java
@@ -0,0 +1,77 @@
+package org.apache.openoffice.ooxml.framework.part;
+
+public enum ContentType
+{
+ ApplicationDrawing ("application/vnd.openxmlformats-officedocument.vmlDrawing"),
+ ApplicationExcel ("application/vnd.ms-excel"),
+ ApplicationXML ("application/xml"),
+ Chart ("application/vnd.openxmlformats-officedocument.drawingml.chart+xml"),
+ ContentTypes (""),
+ CoreProperties ("application/vnd.openxmlformats-package.core-properties+xml"),
+ CustomXMLProperties ("application/vnd.openxmlformats-officedocument.customXmlProperties+xml"),
+ ExtendedProperties ("application/vnd.openxmlformats-officedocument.extended-properties+xml"),
+ ImageGIF ("image/gif"),
+ ImageJPG ("image/png"),
+ ImagePNG ("image/jpeg"),
+ OleObject ("application/vnd.openxmlformats-officedocument.oleObject"),
+ PmlDocument ("application/vnd.openxmlformats-officedocument.presentationml.presentation.main+xml"),
+ PmlHandoutMaster ("application/vnd.openxmlformats-officedocument.presentationml.handoutMaster+xml"),
+ PmlNotesMaster ("application/vnd.openxmlformats-officedocument.presentationml.notesMaster+xml"),
+ PmlNotesSlide ("application/vnd.openxmlformats-officedocument.presentationml.notesSlide+xml"),
+ PmlProperties ("application/vnd.openxmlformats-officedocument.presentationml.presProps+xml"),
+ PmlSlide ("application/vnd.openxmlformats-officedocument.presentationml.slide+xml"),
+ PmlSlideLayout ("application/vnd.openxmlformats-officedocument.presentationml.slideLayout+xml"),
+ PmlSlideMaster ("application/vnd.openxmlformats-officedocument.presentationml.slideMaster+xml"),
+ PmlTableStyles ("application/vnd.openxmlformats-officedocument.presentationml.tableStyles+xml"),
+ PmlViewProperties ("application/vnd.openxmlformats-officedocument.presentationml.viewProps+xml"),
+ Relationships ("application/vnd.openxmlformats-package.relationships+xml"),
+ SmlSheet ("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"),
+ Theme ("application/vnd.openxmlformats-officedocument.theme+xml"),
+ ThemeOverride ("application/vnd.openxmlformats-officedocument.themeOverride+xml"),
+ Thumbnail ("http://schemas.openxmlformats.org/package/2006/relationships/metadata/thumbnail"),
+ WmlDocument ("application/vnd.openxmlformats-officedocument.wordprocessingml.document.main+xml"),
+ WmlEndNotes ("application/vnd.openxmlformats-officedocument.wordprocessingml.endnotes+xml"),
+ WmlFontTable ("application/vnd.openxmlformats-officedocument.wordprocessingml.fontTable+xml"),
+ WmlFootNotes ("application/vnd.openxmlformats-officedocument.wordprocessingml.footnotes+xml"),
+ WmlFooter ("application/vnd.openxmlformats-officedocument.wordprocessingml.footer+xml"),
+ WmlHeader ("application/vnd.openxmlformats-officedocument.wordprocessingml.header+xml"),
+ WmlNumbering ("application/vnd.openxmlformats-officedocument.wordprocessingml.numbering+xml"),
+ WmlSettings ("application/vnd.openxmlformats-officedocument.wordprocessingml.settings+xml"),
+ WmlStyles ("application/vnd.openxmlformats-officedocument.wordprocessingml.styles+xml"),
+ WmlWebSettings ("application/vnd.openxmlformats-officedocument.wordprocessingml.webSettings+xml"),
+
+ Unknown("");
+
+
+
+
+ ContentType (final String sMimeType)
+ {
+ msMimeType = sMimeType;
+ }
+
+
+
+
+ public static ContentType CreateForString (final String sContentType)
+ {
+ for (final ContentType eType : values())
+ if (eType.msMimeType.equals(sContentType))
+ return eType;
+ System.err.printf("content type '%s' is not known\n", sContentType);
+ return Unknown;
+ }
+
+
+
+
+ public String GetLongName ()
+ {
+ return msMimeType;
+ }
+
+
+
+
+ private final String msMimeType;
+}
diff --git a/ooxml/source/framework/JavaPartManager/src/org/apache/openoffice/ooxml/framework/part/ContentTypes.java b/ooxml/source/framework/JavaPartManager/src/org/apache/openoffice/ooxml/framework/part/ContentTypes.java
new file mode 100644
index 000000000000..d17a082106a8
--- /dev/null
+++ b/ooxml/source/framework/JavaPartManager/src/org/apache/openoffice/ooxml/framework/part/ContentTypes.java
@@ -0,0 +1,150 @@
+package org.apache.openoffice.ooxml.framework.part;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import javax.xml.stream.Location;
+
+import org.apache.openoffice.ooxml.framework.part.parser.ParserFactory;
+import org.apache.openoffice.ooxml.parser.ElementContext;
+import org.apache.openoffice.ooxml.parser.Parser;
+import org.apache.openoffice.ooxml.parser.action.ActionTrigger;
+import org.apache.openoffice.ooxml.parser.action.IAction;
+
+public class ContentTypes
+{
+ ContentTypes (final PartManager aPartManager)
+ {
+ maExtensionToContentTypeMap = new HashMap<>();
+ maPartNameToContentTypeMap = new HashMap<>();
+
+ // Technically the [Content_Types].xml stream is not a part and
+ // "[Content_Types].xml" is not a part name. But handling it like one
+ // makes the implementation a little bit easier and more readable.
+ final Part aContentTypesPart = new Part(
+ ContentType.ContentTypes,
+ aPartManager,
+ new PartName("/[Content_Types].xml"));
+
+ final Parser aParser = ParserFactory.getParser(
+ aContentTypesPart.getContentType(),
+ aContentTypesPart.getStream(),
+ null);
+ /*
+ DefineContext(
+ CT_Something,
+ int nValue,
+ CallbackObject aObject);
+
+ class CT_Something_Context : public Context
+ {
+ Context parent
+
+ attribute 1
+ ...
+ attribute n
+ int nValue;
+ CallbackObject aObject;
+ }
+
+ DefineElementStartAction(
+ CT_Something_Context,
+ aObject,
+ DoSomething);
+
+
+ case ElementStart of CT_Something:
+ maCurrentContext.aObject.DoSomething(maCurrentContext); // CT_Something_Context
+
+ //
+ CallbackObject.cxx
+
+ class CallbackObject
+ {
+ public: DoSomething(CT_Something_Context aContext)
+ {
+ aContext.attribute1
+ }
+ }
+
+ */
+ aParser.GetActionManager().AddElementStartAction(
+ ".*_CT_Default",
+ new IAction(){
+
+ @Override
+ public void Run(
+ final ActionTrigger eTrigger,
+ final ElementContext aContext,
+ final String sText,
+ final Location aStartLocation,
+ final Location aEndLocation)
+ {
+ ProcessDefault(
+ aContext.GetAttributes().GetRawAttributeValue("A_Extension"),
+ aContext.GetAttributes().GetRawAttributeValue("A_ContentType"));
+
+ }});
+ aParser.GetActionManager().AddElementStartAction(
+ ".*_CT_Override",
+ new IAction(){
+
+ @Override
+ public void Run(
+ final ActionTrigger eTrigger,
+ final ElementContext aContext,
+ final String sText,
+ final Location aStartLocation,
+ final Location aEndLocation)
+ {
+ ProcessOverride(
+ aContext.GetAttributes().GetRawAttributeValue("A_PartName"),
+ aContext.GetAttributes().GetRawAttributeValue("A_ContentType"));
+
+ }});
+
+
+ aParser.Parse();
+ }
+
+
+
+
+ public ContentType getTypeForPartName (final PartName aName)
+ {
+ ContentType eType = maPartNameToContentTypeMap.get(aName.GetFullname());
+ if (eType == null)
+ eType = maExtensionToContentTypeMap.get(aName.GetExtension());
+ if (eType == null)
+ eType = ContentType.Unknown;
+ return eType;
+ }
+
+
+
+
+ private void ProcessDefault (
+ final String sExtension,
+ final String sContentTypeName)
+ {
+ final ContentType eType = ContentType.CreateForString(sContentTypeName);
+ maExtensionToContentTypeMap.put(sExtension, eType);
+ }
+
+
+
+
+ private void ProcessOverride (
+ final String sPartName,
+ final String sContentTypeName)
+ {
+ final ContentType eType = ContentType.CreateForString(sContentTypeName);
+ maPartNameToContentTypeMap.put(sPartName, eType);
+ }
+
+
+
+
+ private final Map<String,ContentType> maExtensionToContentTypeMap;
+ private final Map<String,ContentType> maPartNameToContentTypeMap;
+}
diff --git a/ooxml/source/framework/JavaPartManager/src/org/apache/openoffice/ooxml/framework/part/IReferenceProvider.java b/ooxml/source/framework/JavaPartManager/src/org/apache/openoffice/ooxml/framework/part/IReferenceProvider.java
new file mode 100644
index 000000000000..9d47eb6f54fe
--- /dev/null
+++ b/ooxml/source/framework/JavaPartManager/src/org/apache/openoffice/ooxml/framework/part/IReferenceProvider.java
@@ -0,0 +1,6 @@
+package org.apache.openoffice.ooxml.framework.part;
+
+public interface IReferenceProvider
+{
+ RelatedParts getRelatedParts ();
+}
diff --git a/ooxml/source/framework/JavaPartManager/src/org/apache/openoffice/ooxml/framework/part/OOXMLPackage.java b/ooxml/source/framework/JavaPartManager/src/org/apache/openoffice/ooxml/framework/part/OOXMLPackage.java
new file mode 100644
index 000000000000..3e5310ada923
--- /dev/null
+++ b/ooxml/source/framework/JavaPartManager/src/org/apache/openoffice/ooxml/framework/part/OOXMLPackage.java
@@ -0,0 +1,56 @@
+package org.apache.openoffice.ooxml.framework.part;
+
+import java.io.File;
+import java.io.InputStream;
+
+public class OOXMLPackage
+ extends Package
+{
+ public static OOXMLPackage Create (final File aOOXMLFile)
+ {
+ return new OOXMLPackage(
+ aOOXMLFile.getAbsolutePath(),
+ new PartManager(aOOXMLFile));
+ }
+
+
+
+
+ private OOXMLPackage (final String sPath, final PartManager aPartManager)
+ {
+ super(sPath, aPartManager);
+ }
+
+
+
+
+ /** Return a list of stream names.
+ * Note that that list is not necessarily identical to the list of part
+ * names. It can contain entries that are not parts.
+ */
+ public String[] listStreamNames ()
+ {
+ return maPartManager.listStreamNames();
+ }
+
+
+
+
+ /** Return an InputStream object for the specified stream.
+ */
+ public InputStream getStream (final String sStreamName)
+ {
+ return maPartManager.getStreamForStreamName(sStreamName);
+ }
+
+
+
+
+ public Part getPart (final PartName aPartName)
+ {
+ return new Part (
+ maPartManager.getContentTypes().getTypeForPartName(aPartName),
+ maPartManager,
+ aPartName);
+ }
+} \ No newline at end of file
diff --git a/ooxml/source/framework/JavaPartManager/src/org/apache/openoffice/ooxml/framework/part/Package.java b/ooxml/source/framework/JavaPartManager/src/org/apache/openoffice/ooxml/framework/part/Package.java
new file mode 100644
index 000000000000..dd31292cf135
--- /dev/null
+++ b/ooxml/source/framework/JavaPartManager/src/org/apache/openoffice/ooxml/framework/part/Package.java
@@ -0,0 +1,158 @@
+package org.apache.openoffice.ooxml.framework.part;
+
+import java.io.File;
+import java.io.InputStream;
+import java.lang.ref.SoftReference;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Map;
+import java.util.Set;
+import java.util.Vector;
+
+public class Package
+ implements IReferenceProvider
+{
+ public static Package Create (final File aOOXMLFile)
+ {
+ return new Package(
+ aOOXMLFile.getAbsolutePath(),
+ new PartManager(aOOXMLFile));
+ }
+
+
+
+
+ protected Package (
+ final String sFullFilename,
+ final PartManager aPartManager)
+ {
+ msFullFilename = sFullFilename;
+ maPartManager = aPartManager;
+ maRelatedParts = new RelatedParts(
+ new PartName(""),
+ aPartManager);
+
+ final PartName aDocumentPartName = maRelatedParts.GetSingleTargetForType(RelationshipType.OfficeDocument);
+ maOfficeDocumentPart = new Part(
+ maPartManager.getContentTypes().getTypeForPartName(aDocumentPartName),
+ maPartManager,
+ aDocumentPartName);
+ }
+
+
+
+
+ public Part getOfficeDocumentPart ()
+ {
+ return maOfficeDocumentPart;
+ }
+
+
+
+
+ public Iterable<Part> getDigitalSignaturesParts ()
+ {
+ // TODO
+ return new Vector<>();
+ }
+
+
+
+
+ public RelatedParts getRelatedParts ()
+ {
+ return maRelatedParts;
+ }
+
+
+
+
+ public boolean hasAppDefFilePropertiesPart ()
+ {
+ // TODO
+ return false;
+ }
+
+
+
+
+ public Part getAppDefFilePropertiesPart ()
+ {
+ // TODO
+ return null;
+ }
+
+
+
+
+ public boolean hasCoreFilePropertiesPart ()
+ {
+ // TODO
+ return false;
+ }
+
+
+
+
+ public Part getCoreFilePropertiesPart ()
+ {
+ // TODO
+ return null;
+ }
+
+
+
+
+ public boolean hasCustomFilePropertiesPart ()
+ {
+ // TODO
+ return false;
+ }
+
+
+
+
+ public Part getCustomFilePropertiesPart ()
+ {
+ // TODO
+ return null;
+ }
+
+
+
+
+ public String getFileName()
+ {
+ return msFullFilename;
+ }
+
+
+
+
+ /** Return a list of stream names.
+ * Note that that list is not necessarily identical to the list of part
+ * names. It can contain entries that are not parts.
+ */
+ public String[] listStreamNames ()
+ {
+ return maPartManager.listStreamNames();
+ }
+
+
+
+
+ /** Return an InputStream object for the specified stream.
+ */
+ public InputStream getStream (final String sStreamName)
+ {
+ return maPartManager.getStreamForStreamName(sStreamName);
+ }
+
+
+
+
+ private final String msFullFilename;
+ protected final PartManager maPartManager;
+ private final RelatedParts maRelatedParts;
+ private final Part maOfficeDocumentPart;
+} \ No newline at end of file
diff --git a/ooxml/source/framework/JavaPartManager/src/org/apache/openoffice/ooxml/framework/part/Part.java b/ooxml/source/framework/JavaPartManager/src/org/apache/openoffice/ooxml/framework/part/Part.java
new file mode 100644
index 000000000000..28b2617a1494
--- /dev/null
+++ b/ooxml/source/framework/JavaPartManager/src/org/apache/openoffice/ooxml/framework/part/Part.java
@@ -0,0 +1,89 @@
+package org.apache.openoffice.ooxml.framework.part;
+
+import java.io.InputStream;
+
+public class Part
+ implements IReferenceProvider
+{
+ public Part (
+ final ContentType eType,
+ final PartManager aPartManager,
+ final PartName aPartName)
+ {
+ meContentType = eType;
+ maPartManager = aPartManager;
+ maPartName = aPartName;
+ maRelatedParts = null;
+ }
+
+
+
+
+ public Part getPartById (final String sId)
+ {
+ final PartName aName = getRelatedParts().GetTargetForId(sId);
+ return new Part(
+ maPartManager.getContentTypes().getTypeForPartName(aName),
+ maPartManager,
+ aName);
+ }
+
+
+
+
+ public Part getPartByRelationshipType (final RelationshipType eType)
+ {
+ final PartName aName = getRelatedParts().GetSingleTargetForType(eType);
+ return new Part(
+ maPartManager.getContentTypes().getTypeForPartName(aName),
+ maPartManager,
+ aName);
+ }
+
+
+
+
+ public PartName getPartName ()
+ {
+ return maPartName;
+ }
+
+
+
+
+ public ContentType getContentType ()
+ {
+ return meContentType;
+ }
+
+
+
+
+ public InputStream getStream()
+ {
+ return maPartManager.getStreamForPartName(maPartName);
+ }
+
+
+
+
+ @Override
+ public RelatedParts getRelatedParts ()
+ {
+ if (maRelatedParts == null)
+ {
+ maRelatedParts = new RelatedParts(
+ maPartName,
+ maPartManager);
+ }
+ return maRelatedParts;
+ }
+
+
+
+
+ private final ContentType meContentType;
+ private final PartManager maPartManager;
+ private final PartName maPartName;
+ private RelatedParts maRelatedParts;
+}
diff --git a/ooxml/source/framework/JavaPartManager/src/org/apache/openoffice/ooxml/framework/part/PartManager.java b/ooxml/source/framework/JavaPartManager/src/org/apache/openoffice/ooxml/framework/part/PartManager.java
new file mode 100644
index 000000000000..c61f16572487
--- /dev/null
+++ b/ooxml/source/framework/JavaPartManager/src/org/apache/openoffice/ooxml/framework/part/PartManager.java
@@ -0,0 +1,145 @@
+package org.apache.openoffice.ooxml.framework.part;
+
+import java.io.File;
+import java.io.IOException;
+import java.io.InputStream;
+import java.lang.ref.SoftReference;
+import java.util.Enumeration;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Vector;
+import java.util.zip.ZipEntry;
+import java.util.zip.ZipFile;
+
+public class PartManager
+{
+ public PartManager (final File aFile)
+ {
+ ZipFile aZipFile = null;
+ try
+ {
+ aZipFile = new ZipFile(aFile);
+ }
+ catch (Exception e)
+ {
+ e.printStackTrace();
+ }
+ maZipFile = aZipFile;
+ maPartNameToPartMap = new HashMap<>();
+ }
+
+
+
+
+ public InputStream getStreamForPartName (final PartName aPartName)
+ {
+ final ZipEntry aEntry = maZipFile.getEntry(
+ ToZipEntryName(aPartName.GetFullname()));
+ if (aEntry == null)
+ return null;
+
+ try
+ {
+ return maZipFile.getInputStream(aEntry);
+ }
+ catch (IOException e)
+ {
+ e.printStackTrace();
+ return null;
+ }
+ }
+
+
+
+
+ /** This is the low-level variant of getStreamForPartName().
+ * It can return streams for entries in the OOXML zip package
+ * that are not, technically, parts.
+ * @return
+ * Returns null when the named stream does not exist or can not be
+ * opened.
+ */
+ public InputStream getStreamForStreamName (final String sStreamName)
+ {
+ final ZipEntry aEntry = maZipFile.getEntry(
+ ToZipEntryName(sStreamName));
+ try
+ {
+ return maZipFile.getInputStream(aEntry);
+ }
+ catch (IOException e)
+ {
+ e.printStackTrace();
+ return null;
+ }
+ }
+
+
+
+
+ public ContentTypes getContentTypes ()
+ {
+ if (maContentTypes == null)
+ {
+ maContentTypes = new ContentTypes(this);
+ }
+ return maContentTypes;
+ }
+
+
+
+
+ private final String ToZipEntryName (final String sPath)
+ {
+ return sPath.substring(1);
+ }
+
+
+
+
+ /** Return a list of the names of all streams.
+ * Note that that list is not necessarily identical to the list of part
+ * names. It can contain entries that are not parts.
+ */
+ public final String[] listStreamNames ()
+ {
+ final Vector<String> aStreamNames = new Vector<>();
+
+ final Enumeration<? extends ZipEntry> aEntries = maZipFile.entries();
+ while (aEntries.hasMoreElements())
+ {
+ final ZipEntry aEntry = aEntries.nextElement();
+ aStreamNames.add(aEntry.getName());
+ }
+
+ return aStreamNames.toArray(new String[0]);
+ }
+
+
+
+
+ public Part getPart (final PartName aName)
+ {
+ SoftReference<Part> aSoftPart = maPartNameToPartMap.get(aName);
+ Part aPart = null;
+ if (aSoftPart != null)
+ aPart = aSoftPart.get();
+ if (aPart == null)
+ {
+ aPart = new Part(
+ getContentTypes().getTypeForPartName(aName),
+ this,
+ aName);
+ maPartNameToPartMap.put(aName, new SoftReference<Part>(aPart));
+ }
+
+ return aPart;
+ }
+
+
+
+
+ private ZipFile maZipFile;
+ private ContentTypes maContentTypes;
+ private final Map<PartName, SoftReference<Part>> maPartNameToPartMap;
+}
diff --git a/ooxml/source/framework/JavaPartManager/src/org/apache/openoffice/ooxml/framework/part/PartManagerPrototype.java b/ooxml/source/framework/JavaPartManager/src/org/apache/openoffice/ooxml/framework/part/PartManagerPrototype.java
new file mode 100644
index 000000000000..8aa820714d67
--- /dev/null
+++ b/ooxml/source/framework/JavaPartManager/src/org/apache/openoffice/ooxml/framework/part/PartManagerPrototype.java
@@ -0,0 +1,33 @@
+package org.apache.openoffice.ooxml.framework.part;
+
+import java.io.File;
+
+import org.apache.openoffice.ooxml.framework.part.parser.ParserFactory;
+import org.apache.openoffice.ooxml.parser.Log;
+
+public class PartManagerPrototype
+{
+ public static void main (final String ... aArgumentList)
+ {
+ if (aArgumentList.length != 3)
+ {
+ System.err.printf("usage: PartManagerPrototype <ooxml-file-name> <parser-table-filename> <log-filename>");
+ System.exit(1);
+ }
+
+ final long nStartTime = System.currentTimeMillis();
+
+ Log.Dbg = new Log(aArgumentList[2]);
+ ParserFactory.SetParserTableFilename(aArgumentList[1]);
+
+ final File aOOXMLFile = new File(aArgumentList[0]);
+ final Part aPart = OOXMLPackage.Create(aOOXMLFile).getOfficeDocumentPart().getPartById("rId1");
+
+ final long nEndTime = System.currentTimeMillis();
+
+ System.out.printf("got content type %s for %s in %fs\n",
+ aPart.getContentType(),
+ aPart.getPartName(),
+ (nEndTime-nStartTime)/1000.0);
+ }
+}
diff --git a/ooxml/source/framework/JavaPartManager/src/org/apache/openoffice/ooxml/framework/part/PartName.java b/ooxml/source/framework/JavaPartManager/src/org/apache/openoffice/ooxml/framework/part/PartName.java
new file mode 100644
index 000000000000..e91aa37eac49
--- /dev/null
+++ b/ooxml/source/framework/JavaPartManager/src/org/apache/openoffice/ooxml/framework/part/PartName.java
@@ -0,0 +1,130 @@
+package org.apache.openoffice.ooxml.framework.part;
+
+/** Operations around part names.
+ */
+public class PartName
+ implements Comparable<PartName>
+{
+ public PartName (final String sPath)
+ {
+ if ( ! (sPath.isEmpty() || sPath.startsWith("/")))
+ {
+ assert(sPath.isEmpty() || sPath.startsWith("/"));
+ }
+ assert(sPath.indexOf('\\') == -1);
+
+ msPath = sPath;
+ }
+
+
+
+
+ public PartName (
+ final String sPath,
+ final PartName aParentName,
+ final String sMode)
+ {
+ switch(sMode)
+ {
+ case "External":
+ msPath = sPath;
+ break;
+
+ case "Internal":
+ msPath = Cleanup(aParentName.GetPathname() + "/" + sPath);
+ break;
+
+ default:
+ throw new RuntimeException();
+ }
+ }
+
+
+
+
+ public PartName getRelationshipsPartName ()
+ {
+ return new PartName(GetPathname() + "/_rels/" + GetBasename() + ".rels");
+ }
+
+
+
+
+ private String GetPathname ()
+ {
+ if (msPath.isEmpty())
+ return "";
+ else
+ {
+ final int nPathnameEnd = msPath.lastIndexOf('/');
+ assert(nPathnameEnd>=0);
+ return msPath.substring(0, nPathnameEnd);
+ }
+ }
+
+
+
+
+ public String GetBasename ()
+ {
+ if (msPath.isEmpty())
+ return "";
+ else
+ {
+ final int nBasenameStart = msPath.lastIndexOf('/');
+ assert(nBasenameStart>=0);
+ return msPath.substring(nBasenameStart+1);
+ }
+ }
+
+
+
+
+ public String GetExtension ()
+ {
+ final int nExtensionStart = msPath.lastIndexOf('.');
+ if (nExtensionStart < 0)
+ return null;
+ else
+ return msPath.substring(nExtensionStart+1);
+ }
+
+
+
+
+ public String GetFullname()
+ {
+ return msPath;
+ }
+
+
+
+
+ @Override
+ public int compareTo (final PartName aOther)
+ {
+ return msPath.compareTo(aOther.msPath);
+ }
+
+
+
+
+ private String Cleanup (final String sName)
+ {
+ return sName.replaceAll("/[^/]+/\\.\\./", "/");
+ }
+
+
+
+
+ @Override
+ public String toString ()
+ {
+ return msPath;
+ }
+
+
+
+
+ private final String msPath;
+}
diff --git a/ooxml/source/framework/JavaPartManager/src/org/apache/openoffice/ooxml/framework/part/RelatedParts.java b/ooxml/source/framework/JavaPartManager/src/org/apache/openoffice/ooxml/framework/part/RelatedParts.java
new file mode 100644
index 000000000000..22cd218c9ab8
--- /dev/null
+++ b/ooxml/source/framework/JavaPartManager/src/org/apache/openoffice/ooxml/framework/part/RelatedParts.java
@@ -0,0 +1,131 @@
+package org.apache.openoffice.ooxml.framework.part;
+
+import java.io.InputStream;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Set;
+import java.util.TreeSet;
+import java.util.Vector;
+
+import javax.xml.stream.Location;
+
+import org.apache.openoffice.ooxml.framework.part.parser.ParserFactory;
+import org.apache.openoffice.ooxml.parser.ElementContext;
+import org.apache.openoffice.ooxml.parser.Parser;
+import org.apache.openoffice.ooxml.parser.action.ActionTrigger;
+import org.apache.openoffice.ooxml.parser.action.IAction;
+
+public class RelatedParts
+{
+ RelatedParts (
+ final PartName aPartName,
+ final PartManager aPartManager)
+ {
+ maIdToTargetMap = new HashMap<>();
+ maTypeToTargetsMap = new HashMap<>();
+
+ final InputStream aStream = aPartManager.getStreamForPartName(aPartName.getRelationshipsPartName());
+ if (aStream != null)
+ {
+ final Parser aParser = ParserFactory.getParser(
+ ContentType.Relationships,
+ aStream,
+ null);
+ aParser.GetActionManager().AddElementStartAction(
+ "A_CT_Relationship",
+ new IAction()
+ {
+ @Override public void Run (
+ final ActionTrigger eTrigger,
+ final ElementContext aContext,
+ final String sText,
+ final Location aStartLocation,
+ final Location aEndLocation)
+ {
+ final String sId = aContext.GetAttributes().GetRawAttributeValue("A_Id");
+ final String sType = aContext.GetAttributes().GetRawAttributeValue("A_Type");
+ final String sTarget = aContext.GetAttributes().GetRawAttributeValue("A_Target");
+ String sTargetMode = aContext.GetAttributes().GetRawAttributeValue("A_TargetMode");
+ if (sTargetMode == null)
+ sTargetMode = "Internal";
+
+ AddRelationship(
+ sId,
+ RelationshipType.CreateFromString(sType),
+ new PartName(sTarget, aPartName, sTargetMode));
+ }
+ }
+ );
+ aParser.Parse();
+ }
+ }
+
+
+
+
+ private void AddRelationship (
+ final String sId,
+ final RelationshipType eType,
+ final PartName aTarget)
+ {
+ maIdToTargetMap.put(sId, aTarget);
+
+ Vector<PartName> aTargets = maTypeToTargetsMap.get(eType);
+ if (aTargets == null)
+ {
+ aTargets = new Vector<>();
+ maTypeToTargetsMap.put(eType, aTargets);
+ }
+ aTargets.add(aTarget);
+ }
+
+
+
+
+ public PartName GetTargetForId (final String sId)
+ {
+ return maIdToTargetMap.get(sId);
+ }
+
+
+
+
+ public Iterable<PartName> GetTargetsForType (final RelationshipType eType)
+ {
+ return maTypeToTargetsMap.get(eType);
+ }
+
+
+
+ public Iterable<PartName> getAllTargets ()
+ {
+ final Set<PartName> aAllNames = new TreeSet<>();
+ aAllNames.addAll(maIdToTargetMap.values());
+ return aAllNames;
+ }
+
+
+
+
+ public PartName GetSingleTargetForType (final RelationshipType eType)
+ {
+ if (maTypeToTargetsMap.get(eType).size() != 1)
+ {
+ System.out.printf("there are %d targets for relationship type %s\n",
+ maTypeToTargetsMap.get(eType).size(),
+ eType.toString());
+ for (final PartName aName : maTypeToTargetsMap.get(eType))
+ {
+ System.out.printf("%s\n", aName);
+ }
+ assert(false);
+ }
+ return maTypeToTargetsMap.get(eType).firstElement();
+ }
+
+
+
+
+ private final Map<String,PartName> maIdToTargetMap;
+ private final Map<RelationshipType, Vector<PartName>> maTypeToTargetsMap;
+}
diff --git a/ooxml/source/framework/JavaPartManager/src/org/apache/openoffice/ooxml/framework/part/RelationshipType.java b/ooxml/source/framework/JavaPartManager/src/org/apache/openoffice/ooxml/framework/part/RelationshipType.java
new file mode 100644
index 000000000000..3074d1b9b52a
--- /dev/null
+++ b/ooxml/source/framework/JavaPartManager/src/org/apache/openoffice/ooxml/framework/part/RelationshipType.java
@@ -0,0 +1,112 @@
+package org.apache.openoffice.ooxml.framework.part;
+
+public enum RelationshipType
+{
+ ExtendedProperties,
+ CoreProperties,
+ OfficeDocument,
+ Image,
+ Header,
+ Hyperlink,
+ Styles,
+ EndNotes,
+ Footer,
+ Numbering,
+ CustomXML,
+ FootNotes,
+ WebSettings,
+ Theme,
+ Settings,
+ FontTable,
+ Thumbnail,
+ Slide,
+ ViewProperties,
+ PresentationProperties,
+ HandoutMaster,
+ TableStyles,
+ SlideMaster,
+ NotesMaster,
+ SlideLayout,
+ NotesSlide,
+ VMLDrawing,
+ OLE,
+ Chart,
+ Package,
+ ThemeOverride,
+
+ Unknown
+ ;
+
+ public static RelationshipType CreateFromString (final String sType)
+ {
+ switch(sType)
+ {
+ case "http://schemas.openxmlformats.org/officeDocument/2006/relationships/extended-properties":
+ return ExtendedProperties;
+ case "http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties":
+ return CoreProperties;
+ case "http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument":
+ return OfficeDocument;
+ case "http://schemas.openxmlformats.org/officeDocument/2006/relationships/image":
+ return Image;
+ case "http://schemas.openxmlformats.org/officeDocument/2006/relationships/header":
+ return Header;
+ case "http://schemas.openxmlformats.org/officeDocument/2006/relationships/hyperlink":
+ return Hyperlink;
+ case "http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles":
+ return Styles;
+ case "http://schemas.openxmlformats.org/officeDocument/2006/relationships/endnotes":
+ return EndNotes;
+ case "http://schemas.openxmlformats.org/officeDocument/2006/relationships/footer":
+ return Footer;
+ case "http://schemas.openxmlformats.org/officeDocument/2006/relationships/numbering":
+ return Numbering;
+ case "http://schemas.openxmlformats.org/officeDocument/2006/relationships/customXml":
+ return CustomXML;
+ case "http://schemas.openxmlformats.org/officeDocument/2006/relationships/footnotes":
+ return FootNotes;
+ case "http://schemas.openxmlformats.org/officeDocument/2006/relationships/webSettings":
+ return WebSettings;
+ case "http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme":
+ return Theme;
+ case "http://schemas.openxmlformats.org/officeDocument/2006/relationships/settings":
+ return Settings;
+ case "http://schemas.openxmlformats.org/officeDocument/2006/relationships/fontTable":
+ return FontTable;
+ case "http://schemas.openxmlformats.org/package/2006/relationships/metadata/thumbnail":
+ return Thumbnail;
+ case "http://schemas.openxmlformats.org/officeDocument/2006/relationships/slide":
+ return Slide;
+ case "http://schemas.openxmlformats.org/officeDocument/2006/relationships/viewProps":
+ return ViewProperties;
+ case "http://schemas.openxmlformats.org/officeDocument/2006/relationships/presProps":
+ return PresentationProperties;
+ case "http://schemas.openxmlformats.org/officeDocument/2006/relationships/handoutMaster":
+ return HandoutMaster;
+ case "http://schemas.openxmlformats.org/officeDocument/2006/relationships/tableStyles":
+ return TableStyles;
+ case "http://schemas.openxmlformats.org/officeDocument/2006/relationships/slideMaster":
+ return SlideMaster;
+ case "http://schemas.openxmlformats.org/officeDocument/2006/relationships/notesMaster":
+ return NotesMaster;
+ case "http://schemas.openxmlformats.org/officeDocument/2006/relationships/slideLayout":
+ return SlideLayout;
+ case "http://schemas.openxmlformats.org/officeDocument/2006/relationships/notesSlide":
+ return NotesSlide;
+ case "http://schemas.openxmlformats.org/officeDocument/2006/relationships/vmlDrawing":
+ return VMLDrawing;
+ case "http://schemas.openxmlformats.org/officeDocument/2006/relationships/oleObject":
+ return OLE;
+ case "http://schemas.openxmlformats.org/officeDocument/2006/relationships/chart":
+ return Chart;
+ case "http://schemas.openxmlformats.org/officeDocument/2006/relationships/package":
+ return Package;
+ case "http://schemas.openxmlformats.org/officeDocument/2006/relationships/themeOverride":
+ return ThemeOverride;
+
+ default:
+ System.err.printf(sType +" is not yet supported\n");
+ return Unknown;
+ }
+ }
+}
diff --git a/ooxml/source/framework/JavaPartManager/src/org/apache/openoffice/ooxml/framework/part/parser/ContentTypesParser.java b/ooxml/source/framework/JavaPartManager/src/org/apache/openoffice/ooxml/framework/part/parser/ContentTypesParser.java
new file mode 100644
index 000000000000..0d64f10cb1c3
--- /dev/null
+++ b/ooxml/source/framework/JavaPartManager/src/org/apache/openoffice/ooxml/framework/part/parser/ContentTypesParser.java
@@ -0,0 +1,30 @@
+package org.apache.openoffice.ooxml.framework.part.parser;
+
+import java.io.File;
+import java.io.InputStream;
+import java.util.Vector;
+
+import org.apache.openoffice.ooxml.parser.Parser;
+import org.apache.openoffice.ooxml.parser.StateMachine;
+
+public class ContentTypesParser
+ extends Parser
+{
+ public ContentTypesParser (
+ final InputStream aIn,
+ final String sParserTableFilename,
+ final Vector<String> aErrorsAndWarnings)
+ {
+ super(CreateStateMachine(sParserTableFilename, aErrorsAndWarnings), aIn);
+ }
+
+
+
+
+ private static StateMachine CreateStateMachine (
+ final String sParserTableFilename,
+ final Vector<String> aErrorsAndWarnings)
+ {
+ return new StateMachine(new File(sParserTableFilename), aErrorsAndWarnings);
+ }
+}
diff --git a/ooxml/source/framework/JavaPartManager/src/org/apache/openoffice/ooxml/framework/part/parser/ParserFactory.java b/ooxml/source/framework/JavaPartManager/src/org/apache/openoffice/ooxml/framework/part/parser/ParserFactory.java
new file mode 100644
index 000000000000..83a635ca4077
--- /dev/null
+++ b/ooxml/source/framework/JavaPartManager/src/org/apache/openoffice/ooxml/framework/part/parser/ParserFactory.java
@@ -0,0 +1,46 @@
+package org.apache.openoffice.ooxml.framework.part.parser;
+
+import java.io.File;
+import java.io.InputStream;
+import java.util.Vector;
+
+import org.apache.openoffice.ooxml.framework.part.ContentType;
+import org.apache.openoffice.ooxml.parser.Parser;
+import org.apache.openoffice.ooxml.parser.StateMachine;
+
+public class ParserFactory
+{
+ public static Parser getParser (
+ final ContentType eType,
+ final InputStream aStream,
+ final Vector<String> aErrorsAndWarnings)
+ {
+ switch(eType)
+ {
+ case Relationships:
+ return new RelationshipParser(aStream, msParserTableFilename, aErrorsAndWarnings);
+
+ case ContentTypes:
+ return new ContentTypesParser(aStream, msParserTableFilename, aErrorsAndWarnings);
+
+ default:
+ return new Parser(
+ new StateMachine(new File(msParserTableFilename), aErrorsAndWarnings),
+ aStream);
+ }
+ }
+
+
+
+
+ public static void SetParserTableFilename (final String sFilename)
+ {
+ assert(new File(sFilename).exists());
+ msParserTableFilename = sFilename;
+ }
+
+
+
+
+ private static String msParserTableFilename = null;
+}
diff --git a/ooxml/source/framework/JavaPartManager/src/org/apache/openoffice/ooxml/framework/part/parser/RelationshipParser.java b/ooxml/source/framework/JavaPartManager/src/org/apache/openoffice/ooxml/framework/part/parser/RelationshipParser.java
new file mode 100644
index 000000000000..bcbfd3344908
--- /dev/null
+++ b/ooxml/source/framework/JavaPartManager/src/org/apache/openoffice/ooxml/framework/part/parser/RelationshipParser.java
@@ -0,0 +1,30 @@
+package org.apache.openoffice.ooxml.framework.part.parser;
+
+import java.io.File;
+import java.io.InputStream;
+import java.util.Vector;
+
+import org.apache.openoffice.ooxml.parser.Parser;
+import org.apache.openoffice.ooxml.parser.StateMachine;
+
+public class RelationshipParser
+ extends Parser
+{
+ public RelationshipParser (
+ final InputStream aIn,
+ final String sParserTableFilename,
+ final Vector<String> aErrorsAndWarnings)
+ {
+ super(CreateStateMachine(sParserTableFilename, aErrorsAndWarnings), aIn);
+ }
+
+
+
+
+ private static StateMachine CreateStateMachine (
+ final String sParserTableFilename,
+ final Vector<String> aErrorsAndWarnings)
+ {
+ return new StateMachine(new File(sParserTableFilename), aErrorsAndWarnings);
+ }
+}
diff --git a/ooxml/source/framework/OOXMLViewer/.classpath b/ooxml/source/framework/OOXMLViewer/.classpath
new file mode 100755
index 000000000000..ecd0bc81845d
--- /dev/null
+++ b/ooxml/source/framework/OOXMLViewer/.classpath
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
+ <classpathentry combineaccessrules="false" kind="src" path="/JavaPartManager"/>
+ <classpathentry combineaccessrules="false" kind="src" path="/JavaOOXMLParser"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/ooxml/source/framework/OOXMLViewer/.project b/ooxml/source/framework/OOXMLViewer/.project
new file mode 100755
index 000000000000..51a963140df1
--- /dev/null
+++ b/ooxml/source/framework/OOXMLViewer/.project
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>OOXMLViewer</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ </natures>
+</projectDescription>
diff --git a/ooxml/source/framework/OOXMLViewer/.settings/org.eclipse.jdt.core.prefs b/ooxml/source/framework/OOXMLViewer/.settings/org.eclipse.jdt.core.prefs
new file mode 100755
index 000000000000..838bd9d69424
--- /dev/null
+++ b/ooxml/source/framework/OOXMLViewer/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,11 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7
+org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
+org.eclipse.jdt.core.compiler.compliance=1.7
+org.eclipse.jdt.core.compiler.debug.lineNumber=generate
+org.eclipse.jdt.core.compiler.debug.localVariable=generate
+org.eclipse.jdt.core.compiler.debug.sourceFile=generate
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.7
diff --git a/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/DetailViewManager.java b/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/DetailViewManager.java
new file mode 100755
index 000000000000..5bf1e194cfbd
--- /dev/null
+++ b/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/DetailViewManager.java
@@ -0,0 +1,131 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.viewer;
+
+import java.util.Vector;
+
+import javax.swing.JScrollPane;
+
+import org.apache.openoffice.ooxml.framework.part.ContentType;
+import org.apache.openoffice.ooxml.framework.part.OOXMLPackage;
+import org.apache.openoffice.ooxml.framework.part.Part;
+import org.apache.openoffice.ooxml.framework.part.PartName;
+import org.apache.openoffice.ooxml.framework.part.parser.ParserFactory;
+import org.apache.openoffice.ooxml.viewer.tokenview.TokenView;
+import org.apache.openoffice.ooxml.viewer.xml.TokenType;
+import org.apache.openoffice.ooxml.viewer.xml.XMLTokenViewFactory;
+import org.apache.openoffice.ooxml.viewer.xmltokenview.XMLViewFactory;
+
+public class DetailViewManager
+{
+ public DetailViewManager (
+ final JScrollPane aDetailViewContainer,
+ final OOXMLPackage aPackage)
+ {
+ maDetailViewContainer = aDetailViewContainer;
+ maPackage = aPackage;
+ maViewFactory = new XMLTokenViewFactory();
+ }
+
+
+
+
+ public void ShowPart (
+ final PartName aName,
+ final ContentType eType)
+ {
+ ShowPart(maPackage.getPart(aName));
+ }
+
+
+
+
+ public void ShowPart (final Part aPart)
+ {
+ switch(aPart.getContentType())
+ {
+ case ImageGIF:
+ case ImageJPG:
+ case ImagePNG:
+ maDetailViewContainer.setViewportView(
+ new ImageView(aPart.getStream()).GetComponent());
+ break;
+
+ case ApplicationDrawing:
+ case ApplicationExcel:
+ case ApplicationXML:
+ case Chart:
+ case ContentTypes:
+ case CoreProperties:
+ case CustomXMLProperties:
+ case ExtendedProperties:
+ case PmlDocument:
+ case PmlHandoutMaster:
+ case PmlNotesMaster:
+ case PmlNotesSlide:
+ case PmlProperties:
+ case PmlSlide:
+ case PmlSlideLayout:
+ case PmlSlideMaster:
+ case PmlTableStyles:
+ case PmlViewProperties:
+ case Relationships:
+ case SmlSheet:
+ case Theme:
+ case ThemeOverride:
+ case WmlDocument:
+ case WmlEndNotes:
+ case WmlFontTable:
+ case WmlFootNotes:
+ case WmlFooter:
+ case WmlHeader:
+ case WmlNumbering:
+ case WmlSettings:
+ case WmlStyles:
+ case WmlWebSettings:
+ final TokenView<TokenType> aTokenView = maViewFactory.Create(aPart.getStream());
+ maDetailViewContainer.setViewportView(aTokenView);
+ final Vector<String> aErrorsAndWarnings = new Vector<>();
+ XMLViewFactory.AddSemanticInformation(
+ aTokenView,
+ ParserFactory.getParser(
+ aPart.getContentType(),
+ aPart.getStream(),
+ aErrorsAndWarnings),
+ aErrorsAndWarnings);
+ break;
+
+ case OleObject:
+ case Unknown:
+ default:
+ maDetailViewContainer.setViewportView(null);
+ break;
+ }
+ }
+
+
+
+
+ private final JScrollPane maDetailViewContainer;
+ private XMLTokenViewFactory maViewFactory;
+ private OOXMLPackage maPackage;
+}
diff --git a/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/ImageView.java b/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/ImageView.java
new file mode 100755
index 000000000000..b7ea3baf4c7c
--- /dev/null
+++ b/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/ImageView.java
@@ -0,0 +1,75 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.viewer;
+
+import java.awt.Graphics;
+import java.awt.image.BufferedImage;
+import java.io.IOException;
+import java.io.InputStream;
+
+import javax.imageio.ImageIO;
+import javax.swing.JComponent;
+import javax.swing.JPanel;
+
+@SuppressWarnings("serial")
+public class ImageView
+ extends JPanel
+{
+ public ImageView (final InputStream aInputStream)
+ {
+ BufferedImage aImage = null;
+ try
+ {
+ aImage = ImageIO.read(aInputStream);
+ }
+ catch (IOException e)
+ {
+ e.printStackTrace();
+ }
+ maImage = aImage;
+ }
+
+
+
+
+ public JComponent GetComponent()
+ {
+ return this;
+ }
+
+
+
+
+ @Override
+ public void paintComponent (final Graphics aGraphics)
+ {
+ super.paintComponent(aGraphics);
+ if (maImage != null)
+ {
+ aGraphics.drawImage(maImage, 10, 10, null);
+ }
+ }
+
+
+
+ private final BufferedImage maImage;
+}
diff --git a/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/KeyListener.java b/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/KeyListener.java
new file mode 100755
index 000000000000..ed752ef8e465
--- /dev/null
+++ b/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/KeyListener.java
@@ -0,0 +1,50 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.viewer;
+
+import java.awt.event.KeyEvent;
+
+public class KeyListener
+ implements java.awt.event.KeyListener
+{
+
+ @Override
+ public void keyTyped(KeyEvent e)
+ {
+ System.out.println(e);
+ }
+
+ @Override
+ public void keyPressed(KeyEvent e)
+ {
+ // TODO Auto-generated method stub
+
+ }
+
+ @Override
+ public void keyReleased(KeyEvent e)
+ {
+ // TODO Auto-generated method stub
+
+ }
+
+}
diff --git a/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/OOXMLViewer.java b/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/OOXMLViewer.java
new file mode 100755
index 000000000000..cc7f3636eb2f
--- /dev/null
+++ b/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/OOXMLViewer.java
@@ -0,0 +1,208 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.viewer;
+
+import java.awt.BorderLayout;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+import java.io.File;
+import java.util.Vector;
+
+import javax.swing.JComponent;
+import javax.swing.JFileChooser;
+import javax.swing.JFrame;
+import javax.swing.JMenu;
+import javax.swing.JMenuBar;
+import javax.swing.JMenuItem;
+import javax.swing.JOptionPane;
+import javax.swing.JPanel;
+import javax.swing.JScrollPane;
+import javax.swing.JSplitPane;
+import javax.swing.JTabbedPane;
+import javax.swing.UIManager;
+
+import org.apache.openoffice.ooxml.framework.part.OOXMLPackage;
+import org.apache.openoffice.ooxml.framework.part.parser.ParserFactory;
+import org.apache.openoffice.ooxml.parser.Log;
+import org.apache.openoffice.ooxml.viewer.content.ContentView;
+
+/** A simple viewer for the streams inside an OOXML file.
+ */
+public class OOXMLViewer
+{
+ public static void main (final String[] aArguments)
+ {
+ try
+ {
+ UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
+ }
+ catch (Exception e)
+ {
+ e.printStackTrace();
+ }
+
+ Log.Dbg = null;
+
+ // Process options.
+ final Vector<String> aFilenames = new Vector<>();
+ for (int nIndex=0; nIndex<aArguments.length; ++nIndex)
+ {
+ if (aArguments[nIndex].startsWith("-"))
+ {
+ switch (aArguments[nIndex])
+ {
+ case "-t":
+ ++nIndex;
+ if (nIndex >= aArguments.length)
+ {
+ System.err.printf("expecting argument after option '-t'");
+ System.exit(1);
+ }
+ ParserFactory.SetParserTableFilename(aArguments[nIndex]);
+ break;
+
+ default:
+ System.out.printf("unknown option '%s'\n", aArguments[nIndex]);
+ System.exit(1);;
+ break;
+
+ }
+ }
+ else
+ aFilenames.add(aArguments[nIndex]);
+ }
+
+ for (final String sFilename : aFilenames)
+ {
+ final OOXMLViewer aViewer = new OOXMLViewer();
+ aViewer.SetFile(new File(sFilename));
+ aViewer.maFrame.setVisible(true);
+ }
+ }
+
+
+
+
+ private OOXMLViewer ()
+ {
+ maFrame = new JFrame("OOXML Viewer");
+ maFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
+ maFrame.setSize(1024,768);
+ maContainer = new JPanel();
+ maFrame.add(maContainer, BorderLayout.CENTER);
+
+ maFrame.setJMenuBar(CreateMenuBar());
+ maFrame.addKeyListener(new KeyListener());
+ }
+
+
+
+
+ private void SetFile (final File aFile)
+ {
+ if ( ! aFile.exists())
+ {
+ JOptionPane.showMessageDialog(
+ maFrame,
+ "File '"+aFile.toString()+"' does not exist",
+ "File Error",
+ JOptionPane.ERROR_MESSAGE);
+ }
+ else if ( ! aFile.canRead())
+ {
+ JOptionPane.showMessageDialog(
+ maFrame,
+ "Can not open '"+aFile.toString()+"' for reading",
+ "File Error",
+ JOptionPane.ERROR_MESSAGE);
+ }
+ else
+ {
+ maContainer.removeAll();
+ maContainer.setLayout(new BorderLayout());
+
+ final OOXMLPackage aPackage = OOXMLPackage.Create(aFile);
+ final JScrollPane aDetailViewContainer = new JScrollPane(
+ JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,
+ JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);
+ aDetailViewContainer.getVerticalScrollBar().setUnitIncrement(10);
+ final DetailViewManager aDetailViewManager = new DetailViewManager(aDetailViewContainer, aPackage);
+
+ final JTabbedPane aLeftSidebar = new JTabbedPane();
+
+ final ContentView aContentView = new ContentView(aDetailViewManager, aPackage);
+ aLeftSidebar.addTab("Content", new JScrollPane(aContentView));
+
+ final StreamView aFragmentView = new StreamView(aDetailViewManager, aPackage);
+ aLeftSidebar.addTab("Streams", new JScrollPane(aFragmentView));
+
+ final PartsView aPartsView = new PartsView(aDetailViewManager, aPackage);
+ aLeftSidebar.addTab("Parts", new JScrollPane(aPartsView));
+
+ final JSplitPane aPane = new JSplitPane(
+ JSplitPane.HORIZONTAL_SPLIT,
+ aLeftSidebar,
+ aDetailViewContainer
+ );
+ aPane.setDividerLocation(200);
+
+ maContainer.add(aPane, BorderLayout.CENTER);
+
+ aFragmentView.ShowInitialPart();
+ }
+ }
+
+
+
+
+ private JMenuBar CreateMenuBar ()
+ {
+ final JMenuBar aMenuBar = new JMenuBar();
+
+ final JMenu aFileMenu = new JMenu("File");
+ aMenuBar.add(aFileMenu);
+
+ final JMenuItem aOpenItem = new JMenuItem("Open");
+ aOpenItem.addActionListener(new ActionListener()
+ {
+ @Override public void actionPerformed (final ActionEvent aEvent)
+ {
+ final JFileChooser aFileChooser = new JFileChooser();
+ final int nResult = aFileChooser.showOpenDialog(null);
+ if (nResult == JFileChooser.APPROVE_OPTION)
+ {
+ final OOXMLViewer aViewer = new OOXMLViewer();
+ aViewer.SetFile(aFileChooser.getSelectedFile());
+ }
+ }
+ });
+ aFileMenu.add(aOpenItem);
+
+ return aMenuBar;
+ }
+
+
+
+
+ private final JFrame maFrame;
+ private final JComponent maContainer;
+}
diff --git a/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/PartsView.java b/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/PartsView.java
new file mode 100755
index 000000000000..caa9b3a9e308
--- /dev/null
+++ b/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/PartsView.java
@@ -0,0 +1,137 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.viewer;
+
+import java.util.LinkedList;
+import java.util.Queue;
+import java.util.Set;
+import java.util.TreeSet;
+
+import javax.swing.JTree;
+import javax.swing.event.TreeSelectionEvent;
+import javax.swing.event.TreeSelectionListener;
+import javax.swing.tree.DefaultMutableTreeNode;
+import javax.swing.tree.DefaultTreeModel;
+import javax.swing.tree.TreeModel;
+import javax.swing.tree.TreePath;
+
+import org.apache.openoffice.ooxml.framework.part.ContentType;
+import org.apache.openoffice.ooxml.framework.part.IReferenceProvider;
+import org.apache.openoffice.ooxml.framework.part.OOXMLPackage;
+import org.apache.openoffice.ooxml.framework.part.Part;
+import org.apache.openoffice.ooxml.framework.part.PartName;
+
+@SuppressWarnings("serial")
+public class PartsView
+ extends JTree
+ implements TreeSelectionListener
+{
+ public PartsView (
+ final DetailViewManager aDetailViewManager,
+ final OOXMLPackage aPackage)
+ {
+ maPackage = aPackage;
+ maDetailViewManager = aDetailViewManager;
+
+ Initialize();
+
+ getSelectionModel().addTreeSelectionListener(this);
+ }
+
+
+
+ private final void Initialize ()
+ {
+ final DefaultMutableTreeNode aRootNode = new DefaultMutableTreeNode(
+ "top level relations");
+ final TreeModel aModel = new DefaultTreeModel(aRootNode);
+
+ final Queue<IReferenceProvider> aWorklist = new LinkedList<IReferenceProvider>();
+ aWorklist.add(maPackage);
+ final Set<PartName> aProcessedPartNames = new TreeSet<PartName>();
+ CreateChildren(aRootNode, aProcessedPartNames, maPackage);
+ setModel(aModel);
+ }
+
+
+
+
+ private void CreateChildren (
+ final DefaultMutableTreeNode aNode,
+ final Set<PartName> aProcessedPartNames,
+ final IReferenceProvider aReferences)
+ {
+ for (final PartName aTarget : aReferences.getRelatedParts().getAllTargets())
+ {
+ Part aPart = maPackage.getPart(aTarget);
+ final DefaultMutableTreeNode aRelationNode;
+ if ( ! aProcessedPartNames.contains(aPart.getPartName()))
+ {
+ aProcessedPartNames.add(aPart.getPartName());
+ aRelationNode = new DefaultMutableTreeNode(aPart.getPartName().GetFullname());
+ CreateChildren(aRelationNode, aProcessedPartNames, aPart);
+ }
+ else
+ {
+ aRelationNode = new DefaultMutableTreeNode(aPart.getPartName().GetFullname() + "...");
+ }
+ aNode.add(aRelationNode);
+ }
+ }
+
+
+
+
+ /** Callback for clicks on the part view.
+ */
+ @Override
+ public void valueChanged (final TreeSelectionEvent aEvent)
+ {
+ final TreePath aPath = aEvent.getNewLeadSelectionPath();
+ if (aPath != null)
+ {
+ final PartName aName= GetPackagePathForTreePath(aPath);
+ final ContentType eType = maPackage.getPart(
+ aName).getContentType();
+ maDetailViewManager.ShowPart(
+ aName,
+ eType);
+ }
+ }
+
+
+
+
+
+ private PartName GetPackagePathForTreePath (final TreePath aPath)
+ {
+ final PartName aName = new PartName(aPath.getLastPathComponent().toString());
+ return aName;
+ }
+
+
+
+
+
+ private final OOXMLPackage maPackage;
+ private final DetailViewManager maDetailViewManager;
+}
diff --git a/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/StreamView.java b/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/StreamView.java
new file mode 100755
index 000000000000..61d497d02a5f
--- /dev/null
+++ b/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/StreamView.java
@@ -0,0 +1,266 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.viewer;
+
+import java.awt.event.MouseEvent;
+import java.awt.event.MouseMotionListener;
+
+import javax.swing.JTree;
+import javax.swing.SwingUtilities;
+import javax.swing.event.TreeSelectionEvent;
+import javax.swing.event.TreeSelectionListener;
+import javax.swing.tree.DefaultMutableTreeNode;
+import javax.swing.tree.DefaultTreeModel;
+import javax.swing.tree.TreeModel;
+import javax.swing.tree.TreeNode;
+import javax.swing.tree.TreePath;
+
+import org.apache.openoffice.ooxml.framework.part.ContentType;
+import org.apache.openoffice.ooxml.framework.part.OOXMLPackage;
+import org.apache.openoffice.ooxml.framework.part.Part;
+import org.apache.openoffice.ooxml.framework.part.PartName;
+
+/** Overview of the individual parts/streams in an OOXML file.
+ */
+@SuppressWarnings("serial")
+public class StreamView
+ extends JTree
+ implements TreeSelectionListener, MouseMotionListener
+{
+ /** Create a new PartsView object for the given OOXML file.
+ * When the user clicks on one part entry then the DetailViewManager is
+ * called and asked to display the part.
+ */
+ StreamView (
+ final DetailViewManager aDetailViewManager,
+ final OOXMLPackage aPackage)
+ {
+ maDetailViewManager = aDetailViewManager;
+ maOOXMLPackage = aPackage;
+ getSelectionModel().addTreeSelectionListener(this);
+
+ // Listen for motion events so that the tooltip can be set according to
+ // the entry under the mouse pointer.
+ addMouseMotionListener(this);
+
+ // Create a tree model for the streams in the (zip) file, set the model
+ // asynchronously at the JTree and finally expand all nodes.
+ final TreeModel aModel = CreateTreeModel(aPackage);
+ SwingUtilities.invokeLater(new Runnable()
+ {
+ public void run()
+ {
+ setModel(aModel);
+ for (int nIndex=0; nIndex<getRowCount(); ++nIndex)
+ {
+ expandRow(nIndex);
+ }
+ }
+ });
+
+ setToolTipText("hallo");
+ }
+
+
+
+
+ private TreeModel CreateTreeModel (final OOXMLPackage aPackage)
+ {
+ final DefaultMutableTreeNode aRootNode = new DefaultMutableTreeNode(
+ aPackage.getFileName());
+ final DefaultTreeModel aModel = new DefaultTreeModel(aRootNode);
+ try
+ {
+ for (final String sStreamName : aPackage.listStreamNames())
+ {
+ DefaultMutableTreeNode aNode = aRootNode;
+ for (final String sPart : sStreamName.split("/"))
+ {
+ DefaultMutableTreeNode aChild = GetChildNodeForName(aNode, sPart);
+ if (aChild == null)
+ {
+ aChild = new DefaultMutableTreeNode(sPart);
+ aNode.add(aChild);
+ }
+
+ aNode = aChild;
+ }
+ }
+ }
+ catch (Exception e)
+ {
+ e.printStackTrace();
+ }
+ return aModel;
+ }
+
+
+
+
+ public void ShowInitialPart ()
+ {
+ final Part aPart = maOOXMLPackage.getOfficeDocumentPart();
+ MakePartVisible(aPart);
+ maDetailViewManager.ShowPart(aPart);
+ }
+
+
+
+
+ private DefaultMutableTreeNode GetChildNodeForName (final TreeNode aNode, final String sName)
+ {
+ for (int nIndex=0; nIndex<aNode.getChildCount(); ++nIndex)
+ {
+ final TreeNode aChild = aNode.getChildAt(nIndex);
+ if (aChild.toString().equals(sName))
+ {
+ return (DefaultMutableTreeNode)aChild;
+ }
+ }
+ return null;
+ }
+
+
+
+
+ /** Callback for clicks on the part view.
+ */
+ @Override
+ public void valueChanged (final TreeSelectionEvent aEvent)
+ {
+ final TreePath aPath = aEvent.getNewLeadSelectionPath();
+ if (aPath != null)
+ {
+ final String sPath = GetPackagePathForTreePath(aPath);
+ final PartName aName = new PartName(sPath);
+ final ContentType eType = maOOXMLPackage.getPart(
+ aName).getContentType();
+ maDetailViewManager.ShowPart(
+ aName,
+ eType);
+ }
+ }
+
+
+
+
+ @Override
+ public void mouseDragged (final MouseEvent aEvent)
+ {
+ }
+
+
+
+
+ @Override
+ public void mouseMoved (final MouseEvent aEvent)
+ {
+ final int nRow = getRowForLocation(aEvent.getX(), aEvent.getY());
+ if (nRow >= 0)
+ {
+ final String sPath = GetPackagePathForTreePath(getPathForRow(nRow));
+ SetPartUnderMouse(sPath);
+ }
+ }
+
+
+
+
+ private String GetPackagePathForTreePath (final TreePath aPath)
+ {
+ final StringBuffer sPath = new StringBuffer("");
+ final Object aNodes[] = aPath.getPath();
+ for (int nIndex=1; nIndex<aNodes.length; ++nIndex)
+ {
+ sPath.append("/");
+ sPath.append(aNodes[nIndex].toString());
+ }
+ return sPath.toString();
+ }
+
+
+
+
+ private void SetPartUnderMouse (final String sPartPath)
+ {
+ if (msPartPathUnderMouse==null
+ || ! msPartPathUnderMouse.equals(sPartPath))
+ {
+ msPartPathUnderMouse = sPartPath;
+
+ final ContentType eType = maOOXMLPackage.getPart(
+ new PartName(msPartPathUnderMouse)).getContentType();
+ String sToolTipText = eType.toString();
+ if ( ! eType.GetLongName().isEmpty())
+ sToolTipText += " (" + eType.GetLongName() + ")";
+ setToolTipText(sToolTipText);
+ }
+ }
+
+
+
+
+ private void MakePartVisible (final Part aPart)
+ {
+ final String[] aPathParts = aPart.getPartName().GetFullname().substring(1).split("/");
+ final TreeNode[] aTreeNodePath = new TreeNode[aPathParts.length+1];
+ TreeNode aNode = (TreeNode)getModel().getRoot();
+ int nDepth = 0;
+ aTreeNodePath[nDepth++] = aNode;
+ for (final String sPathPart : aPathParts)
+ {
+ boolean bFoundChild = false;
+ for (int nIndex=0; nIndex<aNode.getChildCount(); ++nIndex)
+ {
+ final TreeNode aChildNode = aNode.getChildAt(nIndex);
+ final String sChildName = aChildNode.toString();
+ if (sChildName.equals(sPathPart))
+ {
+ aNode = aChildNode;
+ aTreeNodePath[nDepth++] = aNode;
+ bFoundChild = true;
+ break;
+ }
+ }
+ if ( ! bFoundChild)
+ return;
+ }
+
+ SelectNode(new TreePath(aTreeNodePath));
+ }
+
+
+
+
+ private void SelectNode (final TreePath aTreePath)
+ {
+// getSelectionModel().setSelectionPath(aTreePath);
+// scrollPathToVisible(aTreePath);
+ }
+
+
+
+
+ private final DetailViewManager maDetailViewManager;
+ private final OOXMLPackage maOOXMLPackage;
+ private String msPartPathUnderMouse;
+}
diff --git a/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/content/ContentView.java b/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/content/ContentView.java
new file mode 100755
index 000000000000..a5049813ba5d
--- /dev/null
+++ b/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/content/ContentView.java
@@ -0,0 +1,77 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.viewer.content;
+
+import javax.swing.JTree;
+import javax.swing.tree.DefaultMutableTreeNode;
+import javax.swing.tree.DefaultTreeModel;
+import javax.swing.tree.TreeModel;
+
+import org.apache.openoffice.ooxml.framework.part.OOXMLPackage;
+import org.apache.openoffice.ooxml.viewer.DetailViewManager;
+
+/** Overview of the individual parts/streams in an OOXML file.
+ */
+@SuppressWarnings("serial")
+public class ContentView
+ extends JTree
+{
+ public ContentView (
+ final DetailViewManager aDetailViewManager,
+ final OOXMLPackage aPackage)
+ {
+ TreeModel aModel = null;
+ switch(aPackage.getOfficeDocumentPart().getContentType())
+ {
+ case PmlDocument:
+ aModel = CreateTreeForPresentationModel(new PresentationImporter().importModel(
+ aPackage.getOfficeDocumentPart()));
+ break;
+ //case SmlDocument:
+ //case WmlDocument:
+ default:
+ break;
+ }
+ if (aModel != null)
+ setModel(aModel);
+ }
+
+
+
+
+
+
+ private TreeModel CreateTreeForPresentationModel (final PresentationModel aModel)
+ {
+ final DefaultMutableTreeNode aRootNode = new DefaultMutableTreeNode(
+ "presentation");
+ final DefaultTreeModel aTreeModel = new DefaultTreeModel(aRootNode);
+
+ for (final Slide aSlide : aModel.GetSlideManager().GetSlides())
+ {
+ DefaultMutableTreeNode aNode = new DefaultMutableTreeNode(
+ aSlide.toString());
+ aRootNode.add(aNode);
+ }
+ return aTreeModel;
+ }
+}
diff --git a/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/content/PresentationImporter.java b/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/content/PresentationImporter.java
new file mode 100755
index 000000000000..5581ca41887a
--- /dev/null
+++ b/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/content/PresentationImporter.java
@@ -0,0 +1,81 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.viewer.content;
+
+import java.io.InputStream;
+import java.util.Vector;
+
+import javax.xml.stream.Location;
+
+import org.apache.openoffice.ooxml.framework.part.ContentType;
+import org.apache.openoffice.ooxml.framework.part.Part;
+import org.apache.openoffice.ooxml.framework.part.parser.ParserFactory;
+import org.apache.openoffice.ooxml.parser.ElementContext;
+import org.apache.openoffice.ooxml.parser.Parser;
+import org.apache.openoffice.ooxml.parser.action.ActionTrigger;
+import org.apache.openoffice.ooxml.parser.action.IAction;
+
+public class PresentationImporter
+{
+ public PresentationModel importModel (final Part aPart)
+ {
+ final PresentationModel aModel = new PresentationModel();
+ final Parser aParser = CreateParser(
+ aPart.getStream(),
+ aModel,
+ aPart);
+ aParser.Parse();
+ return aModel;
+ }
+
+
+
+ private Parser CreateParser (
+ final InputStream aStream,
+ final PresentationModel aModel,
+ final Part aPart)
+ {
+ final Parser aParser = ParserFactory.getParser(
+ ContentType.PmlDocument,
+ aStream,
+ new Vector<String>());
+
+ aParser.GetActionManager().AddElementStartAction(
+ "p06_CT_SlideIdListEntry",
+ new IAction()
+ {
+ @Override public void Run(ActionTrigger eTrigger,
+ ElementContext aContext, String sText,
+ Location aStartLocation, Location aEndLocation)
+ {
+ final String aReferenceId = aContext.GetAttributes().GetRawAttributeValue("r06_id");
+
+ aModel.GetSlideManager().GetSlideForPart(
+ aPart.getPartById(aReferenceId));
+
+ System.out.println(aReferenceId);
+ }
+ });
+
+ return aParser;
+ }
+}
diff --git a/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/content/PresentationModel.java b/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/content/PresentationModel.java
new file mode 100755
index 000000000000..b111ad58b382
--- /dev/null
+++ b/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/content/PresentationModel.java
@@ -0,0 +1,43 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.viewer.content;
+
+public class PresentationModel
+{
+ PresentationModel()
+ {
+ maSlideManager = new SlideManager();
+ }
+
+
+
+
+ public SlideManager GetSlideManager()
+ {
+ return maSlideManager;
+ }
+
+
+
+
+ private final SlideManager maSlideManager;
+}
diff --git a/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/content/Slide.java b/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/content/Slide.java
new file mode 100755
index 000000000000..3dc09db12cfd
--- /dev/null
+++ b/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/content/Slide.java
@@ -0,0 +1,56 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.viewer.content;
+
+public class Slide
+{
+ Slide (
+ final String sSlideName,
+ final int nShapeCount)
+ {
+ msSlideName = sSlideName;
+ mnShapeCount = nShapeCount;
+ }
+
+
+
+
+ public String getSlideName ()
+ {
+ return msSlideName;
+ }
+
+
+
+
+ @Override
+ public String toString ()
+ {
+ return msSlideName +" has "+mnShapeCount+" shapes";
+ }
+
+
+
+
+ private final String msSlideName;
+ private final int mnShapeCount;
+}
diff --git a/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/content/SlideManager.java b/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/content/SlideManager.java
new file mode 100755
index 000000000000..153ac3986ec6
--- /dev/null
+++ b/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/content/SlideManager.java
@@ -0,0 +1,77 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.viewer.content;
+
+import java.util.Map;
+import java.util.TreeMap;
+import java.util.Vector;
+
+import org.apache.openoffice.ooxml.framework.part.Part;
+import org.apache.openoffice.ooxml.framework.part.PartName;
+
+public class SlideManager
+{
+ SlideManager ()
+ {
+ maSlides = new Vector<>();
+ maPartNameToSlideMap = new TreeMap<>();
+ }
+
+
+
+ public void AddSlide (
+ final PartName aName,
+ final Slide aSlide)
+ {
+ maSlides.add(aSlide);
+ maPartNameToSlideMap.put(aName, aSlide);
+ }
+
+
+
+
+ public Iterable<Slide> GetSlides ()
+ {
+ return maSlides;
+ }
+
+
+
+
+ public Slide GetSlideForPart (final Part aPart)
+ {
+ Slide aSlide = maPartNameToSlideMap.get(aPart.getPartName());
+ if (aSlide == null)
+ {
+ aSlide = new SlideParser(aPart).ParseSlide(maSlides.size());
+
+ AddSlide(aPart.getPartName(), aSlide);
+ }
+ return aSlide;
+ }
+
+
+
+
+ private final Vector<Slide> maSlides;
+ private final Map<PartName,Slide> maPartNameToSlideMap;
+}
diff --git a/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/content/SlideParser.java b/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/content/SlideParser.java
new file mode 100755
index 000000000000..82dfedbdfcd2
--- /dev/null
+++ b/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/content/SlideParser.java
@@ -0,0 +1,80 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.viewer.content;
+
+import java.util.Vector;
+
+import javax.xml.stream.Location;
+
+import org.apache.openoffice.ooxml.framework.part.Part;
+import org.apache.openoffice.ooxml.framework.part.parser.ParserFactory;
+import org.apache.openoffice.ooxml.parser.ElementContext;
+import org.apache.openoffice.ooxml.parser.Parser;
+import org.apache.openoffice.ooxml.parser.action.ActionTrigger;
+import org.apache.openoffice.ooxml.parser.action.IAction;
+
+public class SlideParser
+{
+ SlideParser (final Part aPart)
+ {
+ maParser = ParserFactory.getParser(
+ aPart.getContentType(),
+ aPart.getStream(),
+ new Vector<String>());
+ mnShapeCount = 0;
+
+ maParser.GetActionManager().AddElementStartAction(
+ "p06_CT_Shape",
+ new IAction()
+ {
+ @Override public void Run(ActionTrigger eTrigger, ElementContext aContext,
+ String sText, Location aStartLocation, Location aEndLocation)
+ {
+ SlideParser.this.IncreaseShapeCount();
+ }
+ });
+ }
+
+
+
+
+ Slide ParseSlide (final int nSlideIndex)
+ {
+ maParser.Parse();
+ final Slide aSlide = new Slide("slide "+nSlideIndex, mnShapeCount);
+ return aSlide;
+ }
+
+
+
+
+ private void IncreaseShapeCount ()
+ {
+ ++mnShapeCount;
+ }
+
+
+
+
+ private final Parser maParser;
+ private int mnShapeCount;
+}
diff --git a/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/tokenview/DocumentFactory.java b/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/tokenview/DocumentFactory.java
new file mode 100755
index 000000000000..11f2ac566945
--- /dev/null
+++ b/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/tokenview/DocumentFactory.java
@@ -0,0 +1,127 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.viewer.tokenview;
+
+import java.util.Stack;
+
+
+public class DocumentFactory<TokenType>
+{
+ interface IRepaintTarget
+ {
+ void RequestRepaint();
+ }
+
+
+
+
+ DocumentFactory (
+ final LineContainer<TokenType> aLines,
+ final IRepaintTarget aRepaintTarget)
+ {
+ maLines = aLines;
+ maRepaintTarget = aRepaintTarget;
+ mbIsGroupBeginPending = false;
+ maGroupStartStack = new Stack<Run<TokenType>>();
+ maLastRun = null;
+ maCurrentGroup = null;
+ StartNewLine();
+ }
+
+
+
+
+ public void AddText (
+ final String sText,
+ final TokenType eTokenType,
+ final Style aStyle,
+ final int nOffset)
+ {
+ final Run<TokenType> aRun = new Run<TokenType>(sText, eTokenType, aStyle, nOffset);
+ synchronized(maLines)
+ {
+ maCurrentLine.AddRun(aRun);
+ if (sText.endsWith("\n"))
+ StartNewLine();
+ }
+
+ if (mbIsGroupBeginPending)
+ {
+ maGroupStartStack.push(maCurrentGroup);
+ aRun.SetGroupParent(maCurrentGroup);
+ maCurrentGroup = aRun;
+ mbIsGroupBeginPending = false;
+ }
+ else if (maCurrentGroup != null)
+ aRun.SetGroupParent(maCurrentGroup);
+ maLastRun = aRun;
+
+ maRepaintTarget.RequestRepaint();
+ }
+
+
+
+
+ public void FinishText ()
+ {
+ StartNewLine();
+ }
+
+
+
+
+ public void BeginGroup()
+ {
+ mbIsGroupBeginPending = true;
+ }
+
+
+
+
+ public void EndGroup ()
+ {
+ maCurrentGroup.SetGroupEnd(maLastRun);
+ maCurrentGroup = maGroupStartStack.pop();
+ }
+
+
+
+
+
+ private void StartNewLine ()
+ {
+ if (maCurrentLine != null)
+ maLines.AddLine(maCurrentLine);
+ maCurrentLine = new Line<TokenType>();
+ }
+
+
+
+
+ private final LineContainer<TokenType> maLines;
+ private final IRepaintTarget maRepaintTarget;
+ private Line<TokenType> maCurrentLine;
+ private boolean mbIsGroupBeginPending;
+ private Stack<Run<TokenType>> maGroupStartStack;
+ private Run<TokenType> maLastRun;
+ private Run<TokenType> maCurrentGroup;
+}
diff --git a/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/tokenview/FormatState.java b/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/tokenview/FormatState.java
new file mode 100755
index 000000000000..071ac1426472
--- /dev/null
+++ b/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/tokenview/FormatState.java
@@ -0,0 +1,61 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.viewer.tokenview;
+
+import java.awt.Dimension;
+import java.util.Iterator;
+import java.util.Vector;
+
+public class FormatState<TokenType>
+ implements Iterable<Line<TokenType>>
+{
+ FormatState (
+ final Dimension aBoundingSize,
+ final Vector<Line<TokenType>> aVisibleLines)
+ {
+ maBoundingSize = aBoundingSize;
+ maVisibleLines = aVisibleLines;
+ }
+
+
+
+
+ public Dimension GetTextBoundingSize()
+ {
+ return maBoundingSize;
+ }
+
+
+
+
+ @Override
+ public Iterator<Line<TokenType>> iterator ()
+ {
+ return maVisibleLines.iterator();
+ }
+
+
+
+
+ private final Dimension maBoundingSize;
+ private final Vector<Line<TokenType>> maVisibleLines;
+}
diff --git a/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/tokenview/Formatter.java b/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/tokenview/Formatter.java
new file mode 100755
index 000000000000..605aeab38950
--- /dev/null
+++ b/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/tokenview/Formatter.java
@@ -0,0 +1,93 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.viewer.tokenview;
+
+import java.awt.Dimension;
+import java.awt.Graphics2D;
+import java.util.Vector;
+
+public class Formatter<TokenType>
+{
+ public Formatter ()
+ {
+ mnLastFormattedLine = -1;
+ mnWidth = 0;
+ mnHeight = 0;
+ }
+
+
+
+
+ public FormatState<TokenType> FormatText (
+ final Graphics2D aG2,
+ final LineContainer<TokenType> aLines)
+ {
+ FormatLines(aG2, aLines);
+
+ final double nTop = aG2.getClipBounds().getMinY();
+ final double nBottom = aG2.getClipBounds().getMaxY();
+ final Vector<Line<TokenType>> aVisibleLines = new Vector<>();
+ for (final Line<TokenType> aLine : aLines.GetLines())
+ {
+ if (aLine.Overlaps(nTop, nBottom))
+ {
+ // Line is (partially) visible.
+ aVisibleLines.add(aLine);
+ }
+ }
+
+ return new FormatState<TokenType>(
+ new Dimension(mnWidth,mnHeight),
+ aVisibleLines);
+ }
+
+
+
+
+ private void FormatLines (
+ final Graphics2D aG2,
+ final LineContainer<TokenType> aLines)
+ {
+ for (int nIndex=mnLastFormattedLine+1,nCount=aLines.GetLineCount(); nIndex<nCount; ++nIndex)
+ {
+ final Line<TokenType> aLine = aLines.GetLine(nIndex);
+ final int nY;
+ if (nIndex > 0)
+ nY = aLines.GetLine(nIndex-1).GetBottom();
+ else
+ nY = 0;
+ aLine.Format(aG2, nY);
+ if (aLine.GetWidth() > mnWidth)
+ mnWidth = aLine.GetWidth();
+ if (aLine.GetBottom() > mnHeight)
+ mnHeight = aLine.GetBottom();
+ }
+ mnLastFormattedLine = aLines.GetLineCount()-1;
+ }
+
+
+
+
+ private int mnLastFormattedLine;
+ private int mnWidth;
+ private int mnHeight;
+}
diff --git a/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/tokenview/Line.java b/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/tokenview/Line.java
new file mode 100755
index 000000000000..c39e24bf6ed3
--- /dev/null
+++ b/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/tokenview/Line.java
@@ -0,0 +1,239 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.viewer.tokenview;
+
+import java.awt.Graphics2D;
+import java.util.Iterator;
+import java.util.Vector;
+
+public class Line<TokenType>
+
+ implements Iterable<Run<TokenType>>
+{
+ Line ()
+ {
+ maRuns = new Vector<Run<TokenType>>();
+ mnWidth = -1;
+ mnHeight = -1;
+ mnY = -1;
+ mnStartOffset = -1;
+ mnEndOffset = -1;
+ }
+
+
+
+
+ public void AddRun (final Run<TokenType> aRun)
+ {
+ maRuns.add(aRun);
+ mnWidth += aRun.GetWidth();
+ if (aRun.GetHeight() > mnHeight)
+ mnHeight = aRun.GetHeight();
+ aRun.SetLine(this);
+
+ if (aRun.GetStreamOffset() >= 0)
+ {
+ if (mnStartOffset < 0)
+ mnStartOffset = aRun.GetStreamOffset();
+
+ if (mnEndOffset < aRun.GetStreamEndOffset())
+ mnEndOffset = aRun.GetStreamEndOffset();
+ }
+ }
+
+
+
+
+ public void Format (
+ final Graphics2D aG2,
+ final int nY)
+ {
+ mnY = nY;
+
+ mnWidth = 0;
+ mnHeight = 0;
+ for (final Run<TokenType> aRun : maRuns)
+ {
+ aRun.Format(aG2);
+ mnWidth += aRun.GetWidth();
+ if (mnHeight < aRun.GetHeight())
+ mnHeight = aRun.GetHeight();
+ }
+ }
+
+
+
+
+ public int GetWidth ()
+ {
+ return mnWidth;
+ }
+
+
+
+
+ public int GetHeight ()
+ {
+ return mnHeight;
+ }
+
+
+
+
+ public int GetTop ()
+ {
+ return mnY;
+ }
+
+
+
+
+ public int GetBottom ()
+ {
+ return mnY + mnHeight;
+ }
+
+
+
+
+ public boolean Overlaps (
+ final double nTop,
+ final double nBottom)
+ {
+ return mnY<=nBottom && mnY+mnHeight>nTop;
+ }
+
+
+
+
+ public boolean Contains (final int nY)
+ {
+ return nY>=mnY && nY<mnY+mnHeight;
+ }
+
+
+
+
+ @Override
+ public Iterator<Run<TokenType>> iterator()
+ {
+ return maRuns.iterator();
+ }
+
+
+
+
+ public Run<TokenType> GetRunForX (final int nX)
+ {
+ int nRunX = 0;
+ for (final Run<TokenType> aRun : maRuns)
+ {
+ final int nRunWidth = aRun.GetWidth();
+ final int nRight = nRunX + nRunWidth;
+ if (nX>=nRunX && nX<nRight)
+ return aRun;
+ nRunX = nRight;
+ }
+ return null;
+ }
+
+
+
+
+ public Run<TokenType> GetRunForOffset (int nOffset)
+ {
+ for (int nIndex=0; nIndex<maRuns.size(); ++nIndex)
+ {
+ final Run<TokenType> aRun = maRuns.get(nIndex);
+ final int nRunOffset = aRun.GetStreamOffset();
+ if (nRunOffset >= 0)
+ if (nRunOffset<=nOffset && nOffset<=aRun.GetStreamEndOffset())
+ return aRun;
+ }
+ return null;
+ }
+
+
+
+
+ public Iterable<Run<TokenType>> GetRunsForOffsets (
+ final int nStartOffset,
+ final int nEndOffset)
+ {
+ final Vector<Run<TokenType>> aRuns = new Vector<>();
+
+ for (final Run<TokenType> aRun : maRuns)
+ {
+ if (aRun.GetStreamOffset() >= nEndOffset)
+ break;
+ else if (aRun.GetStreamEndOffset()<nStartOffset)
+ continue;
+ else
+ aRuns.add(aRun);
+ }
+
+ return aRuns;
+ }
+
+
+
+
+ public int GetStartOffset()
+ {
+ return mnStartOffset;
+ }
+
+
+
+
+ public int GetEndOffset ()
+ {
+ return mnEndOffset;
+ }
+
+
+
+
+ public boolean ContainsOffset (final int nOffset)
+ {
+ return mnStartOffset<=nOffset && nOffset<mnEndOffset;
+ }
+
+
+
+
+ @Override
+ public String toString ()
+ {
+ return String.format("line of %d runs: %s", maRuns.size(), maRuns.toString());
+ }
+
+
+
+
+ private final Vector<Run<TokenType>> maRuns;
+ private int mnY;
+ private int mnWidth;
+ private int mnHeight;
+ private int mnStartOffset;
+ private int mnEndOffset;
+}
diff --git a/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/tokenview/LineContainer.java b/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/tokenview/LineContainer.java
new file mode 100755
index 000000000000..c791fb201ec8
--- /dev/null
+++ b/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/tokenview/LineContainer.java
@@ -0,0 +1,194 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.viewer.tokenview;
+
+import java.util.Vector;
+
+public class LineContainer<TokenType>
+{
+ LineContainer ()
+ {
+ maLines = new Vector<>();
+ }
+
+
+
+
+ boolean IsLineInGroup (
+ final Line<TokenType> aLine,
+ final Run<TokenType> aGroup)
+ {
+ if (aGroup == null)
+ return false;
+
+ final Line<TokenType> aStartLine = aGroup.GetLine();
+ if (aLine.GetTop() < aStartLine.GetTop())
+ return false;
+ final Line<TokenType> aEndLine = aGroup.GetGroupEnd().GetLine();
+ if (aLine.GetTop() > aEndLine.GetTop())
+ return false;
+
+ return true;
+ }
+
+
+
+
+ Line<TokenType> GetLineForY (final int nY)
+ {
+ int nMin = 0;
+ int nMax = maLines.size()-1;
+ if (nMin <= nMax)
+ {
+ while (nMin < nMax-1)
+ {
+ final int nMed = (nMax+nMin)/2;
+ if (nY < maLines.get(nMed).GetTop())
+ nMax = nMed;
+ else
+ nMin = nMed;
+ }
+ for (int nIndex=nMin; nIndex<=nMax; ++nIndex)
+ if (maLines.get(nIndex).Contains(nY))
+ return maLines.get(nIndex);
+ }
+ return null;
+ }
+
+
+
+
+ public Line<TokenType> GetLineForOffset (final int nOffset)
+ {
+ final int nLineIndex = GetLineIndexForOffset(nOffset, 0);
+ if (nLineIndex < 0)
+ return null;
+ else
+ return maLines.get(nLineIndex);
+
+ }
+
+
+
+
+ public Iterable<Line<TokenType>> GetLinesForOffsets (
+ final int nStartOffset,
+ final int nEndOffset)
+ {
+ final Vector<Line<TokenType>> aLines = new Vector<>();
+
+ final int nStartLineIndex = GetLineIndexForOffset(nStartOffset, -1);
+ final int nEndLineIndex = GetLineIndexForOffset(nEndOffset, +1);
+ if (nStartLineIndex >= 0)
+ {
+ if (nEndLineIndex < 0)
+ aLines.add(maLines.get(nStartLineIndex));
+ else
+ for (int nIndex=nStartLineIndex; nIndex<=nEndLineIndex; ++nIndex)
+ aLines.add(maLines.get(nIndex));
+ }
+ return aLines;
+ }
+
+
+
+
+ public int GetLineCount()
+ {
+ return maLines.size();
+ }
+
+
+
+
+ public Line<TokenType> GetLine (final int nIndex)
+ {
+ return maLines.get(nIndex);
+ }
+
+
+
+
+ public Iterable<Line<TokenType>> GetLines ()
+ {
+ return maLines;
+ }
+
+
+
+
+ public void AddLine (final Line<TokenType> aLine)
+ {
+ maLines.add(aLine);
+ }
+
+
+
+
+ /** Return the index of the line that contains the given offset.
+ * When there is no line that contains the line that look at the bias
+ * to return the previous or next line.
+ */
+ private int GetLineIndexForOffset (
+ final int nOffset,
+ final int nBias)
+ {
+ int nMinIndex = 0;
+ int nMaxIndex = maLines.size()-1;
+ while (nMinIndex < nMaxIndex-1)
+ {
+ final int nMedIndex = (nMinIndex + nMaxIndex) / 2;
+ if (maLines.get(nMedIndex).GetEndOffset() <= nOffset)
+ nMinIndex = nMedIndex;
+ else
+ nMaxIndex = nMedIndex;
+ }
+ for (int nIndex=nMinIndex; nIndex<=nMaxIndex; ++nIndex)
+ {
+ if (maLines.get(nIndex).ContainsOffset(nOffset))
+ return nIndex;
+ }
+ if (nBias < 0)
+ {
+ for (int nIndex=nMinIndex; nIndex<=nMaxIndex; ++nIndex)
+ {
+ if (maLines.get(nIndex).GetStartOffset() > nOffset)
+ return nIndex;
+ }
+ }
+ else if (nBias > 0)
+ {
+ for (int nIndex=nMaxIndex; nIndex>=nMinIndex; ++nIndex)
+ {
+ if (maLines.get(nIndex).GetEndOffset() < nOffset)
+ return nIndex;
+ }
+ }
+
+ return -1;
+ }
+
+
+
+
+ private final Vector<Line<TokenType>> maLines;
+}
diff --git a/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/tokenview/Run.java b/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/tokenview/Run.java
new file mode 100755
index 000000000000..ad2677efcb77
--- /dev/null
+++ b/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/tokenview/Run.java
@@ -0,0 +1,249 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.viewer.tokenview;
+
+import java.awt.Color;
+import java.awt.FontMetrics;
+import java.awt.Graphics2D;
+
+public class Run<TokenType>
+{
+ Run (
+ final String sText,
+ final TokenType eTokenType,
+ final Style aStyle,
+ final int nOffset)
+ {
+ msText = sText;
+ meTokenType = eTokenType;
+ maStyle = aStyle!=null ? aStyle : Style.DefaultStyle;
+ mnStreamOffset = nOffset;
+
+ mnWidth = -1;
+ mnHeight = -1;
+ mnOffset = nOffset;
+ maParent = null;
+ maGroupEnd = null;
+ maLine = null;
+ }
+
+
+
+
+ public void Format (
+ final Graphics2D aG2)
+ {
+ final FontMetrics aMetrics = aG2.getFontMetrics(maStyle.GetFont());
+ mnWidth = aMetrics.stringWidth(msText);
+ mnHeight = aMetrics.getHeight();
+ mnOffset = -aMetrics.getDescent();
+ }
+
+
+
+
+ public void Paint (
+ final Graphics2D aG2,
+ final int nX,
+ final int nY,
+ final Color aBackgroundColor)
+ {
+ maStyle.Set(aG2);
+
+ if (mnWidth < 0)
+ {
+ mnWidth = aG2.getFontMetrics().stringWidth(msText);
+ mnHeight = aG2.getFontMetrics().getHeight();
+ }
+
+ if (aBackgroundColor != null)
+ {
+ final Color aSavedColor = aG2.getColor();
+ aG2.setColor(aBackgroundColor);
+ aG2.fillRect(nX,nY-mnHeight, mnWidth, mnHeight);
+ aG2.setColor(aSavedColor);
+ }
+ aG2.drawString(msText, nX, nY+mnOffset);
+
+ if (msToolTipText != null)
+ {
+ aG2.drawLine(nX, nY-1, nX+mnWidth, nY-1);
+ }
+ }
+
+
+
+
+ public String GetText()
+ {
+ return msText;
+ }
+
+
+
+
+ public Style GetStyle ()
+ {
+ return maStyle;
+ }
+
+
+
+
+ public int GetStreamOffset ()
+ {
+ return mnStreamOffset;
+ }
+
+
+
+
+ public int GetStreamEndOffset ()
+ {
+ return mnStreamOffset + msText.length();
+ }
+
+
+
+
+ public int GetWidth()
+ {
+ return mnWidth;
+ }
+
+
+
+
+ public int GetHeight ()
+ {
+ return mnHeight;
+ }
+
+
+
+
+ public void SetGroupParent (final Run<TokenType> aParent)
+ {
+ maParent = aParent;
+ }
+
+
+
+
+ public void SetGroupEnd (final Run<TokenType> aRun)
+ {
+ maGroupEnd = aRun;
+ }
+
+
+
+
+ public Run<TokenType> GetGroupEnd()
+ {
+ return maGroupEnd;
+ }
+
+
+
+
+ public boolean IsGroup ()
+ {
+ if (maGroupEnd == null)
+ return false;
+ else if (maLine == maGroupEnd.maLine)
+ return true;
+ else
+ return true;
+ }
+
+
+
+
+ public Run<TokenType> GetParent ()
+ {
+ return maParent;
+ }
+
+
+
+
+ public Line<TokenType> GetLine ()
+ {
+ return maLine;
+ }
+
+
+
+
+ public void SetLine (final Line<TokenType> aLine)
+ {
+ maLine = aLine;
+ }
+
+
+
+
+ public void SetToolTipText (final String sText)
+ {
+ msToolTipText = sText;
+ }
+
+
+
+
+ public String GetToolTipText ()
+ {
+ return msToolTipText;
+ }
+
+
+
+
+ public TokenType GetTokenType ()
+ {
+ return meTokenType;
+ }
+
+
+
+
+ @Override
+ public String toString ()
+ {
+ return "run '"+msText+"' @ "+mnOffset;
+ }
+
+
+
+
+ private final String msText;
+ private final TokenType meTokenType;
+ private final Style maStyle;
+ private final int mnStreamOffset;
+ private int mnWidth;
+ private int mnHeight;
+ private int mnOffset;
+ private Run<TokenType> maParent;
+ private Run<TokenType> maGroupEnd;
+ private Line<TokenType> maLine;
+ private String msToolTipText;
+}
diff --git a/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/tokenview/RunRange.java b/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/tokenview/RunRange.java
new file mode 100755
index 000000000000..2c980a92dd76
--- /dev/null
+++ b/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/tokenview/RunRange.java
@@ -0,0 +1,87 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.viewer.tokenview;
+
+import java.util.Vector;
+
+public class RunRange<TokenType>
+{
+ RunRange (final Vector<Run<TokenType>> aRuns)
+ {
+ maRuns = aRuns;
+ }
+
+
+
+
+ public int FindTokens (
+ @SuppressWarnings("unchecked")
+ final TokenType ... eTypeList)
+ {
+ return FindTokens(0, eTypeList);
+ }
+
+
+
+
+ public int FindTokens (
+ final int nFirstIndex,
+ @SuppressWarnings("unchecked")
+ final TokenType ... eTypeList)
+ {
+ for (int nIndex=nFirstIndex; nIndex<maRuns.size()-eTypeList.length; ++nIndex)
+ {
+ boolean bMatches = true;
+ for (int nInnerIndex=0; nInnerIndex<eTypeList.length && bMatches; ++nInnerIndex)
+ if (maRuns.get(nIndex+nInnerIndex).GetTokenType()
+ != eTypeList[nInnerIndex])
+ {
+ bMatches = false;
+ }
+ if (bMatches)
+ return nIndex;
+ }
+
+ return -1;
+ }
+
+
+
+
+ public boolean IsEmpty ()
+ {
+ return maRuns.isEmpty();
+ }
+
+
+
+
+ public Run<TokenType> Get (final int nIndex)
+ {
+ return maRuns.get(nIndex);
+ }
+
+
+
+
+ private final Vector<Run<TokenType>> maRuns;
+}
diff --git a/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/tokenview/Style.java b/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/tokenview/Style.java
new file mode 100755
index 000000000000..3f81cd8fb76b
--- /dev/null
+++ b/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/tokenview/Style.java
@@ -0,0 +1,109 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.viewer.tokenview;
+
+import java.awt.Color;
+import java.awt.Font;
+import java.awt.Graphics2D;
+
+import javax.swing.UIManager;
+
+public class Style
+{
+ public Style ()
+ {
+ maForegroundColor = Color.BLACK;
+ if (DefaultFont == null)
+ DefaultFont = UIManager.getDefaults().getFont("TextField.font");
+ maFont = DefaultFont;
+ }
+
+
+
+
+ public void Set(Graphics2D aG2)
+ {
+ aG2.setColor(maForegroundColor);
+ aG2.setFont(maFont);
+ }
+
+
+
+
+ public Style SetForegroundColor (final Color aColor)
+ {
+ maForegroundColor = aColor;
+ return this;
+ }
+
+
+
+
+ public Color GetForegroundColor()
+ {
+ return maForegroundColor;
+ }
+
+
+
+
+ public Style SetBackgroundColor (final Color aColor)
+ {
+ maBackgroundColor = aColor;
+ return this;
+ }
+
+
+
+
+ public Color GetBackgroundColor()
+ {
+ return maBackgroundColor;
+ }
+
+
+
+
+ public Style SetBold()
+ {
+ maFont = maFont.deriveFont(Font.BOLD);
+ return this;
+ }
+
+
+
+
+ public Font GetFont()
+ {
+ return maFont;
+ }
+
+
+
+
+ public static final Style DefaultStyle = new Style();
+ public static Font DefaultFont = null;
+
+ private Color maBackgroundColor;
+ private Color maForegroundColor;
+ private Font maFont;
+}
diff --git a/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/tokenview/TokenView.java b/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/tokenview/TokenView.java
new file mode 100755
index 000000000000..961524f382b0
--- /dev/null
+++ b/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/tokenview/TokenView.java
@@ -0,0 +1,406 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.viewer.tokenview;
+
+import java.awt.Color;
+import java.awt.Container;
+import java.awt.Font;
+import java.awt.FontMetrics;
+import java.awt.Graphics;
+import java.awt.Graphics2D;
+import java.awt.Point;
+import java.awt.RenderingHints;
+import java.awt.event.ComponentEvent;
+import java.awt.event.ComponentListener;
+import java.awt.event.MouseEvent;
+import java.awt.event.MouseMotionListener;
+import java.util.Iterator;
+import java.util.Vector;
+
+import javax.swing.JPanel;
+import javax.swing.JScrollPane;
+import javax.swing.UIManager;
+
+/** A simple view of tokenized content.
+ *
+ * Create the content by calling GetDocumentFactory() and using the returned
+ * factory to add tokenized text.
+ */
+@SuppressWarnings("serial")
+public class TokenView<TokenType>
+ extends JPanel
+ implements MouseMotionListener, DocumentFactory.IRepaintTarget, ComponentListener
+{
+ public TokenView ()
+ {
+ maLines = new LineContainer<TokenType>();
+ maFormatter = new Formatter<TokenType>();
+
+ addMouseMotionListener(this);
+ addComponentListener(this);
+ }
+
+
+
+
+ @Override
+ public void paintComponent (final Graphics aGraphics)
+ {
+ super.paintComponent(aGraphics);
+
+ final Graphics2D aG2 = (Graphics2D)aGraphics;
+ aG2.setRenderingHint(RenderingHints.KEY_TEXT_ANTIALIASING, RenderingHints.VALUE_TEXT_ANTIALIAS_DEFAULT);
+
+ final FormatState<TokenType> aState;
+ synchronized(maLines)
+ {
+ aState = maFormatter.FormatText(aG2, maLines);
+ }
+ setPreferredSize(aState.GetTextBoundingSize());
+
+ for (final Line<TokenType> aLine : aState)
+ {
+ PaintLineHighlight(aG2, aLine);
+ PaintLineNumber(aG2, aLine);
+
+ int nX = mnTextStart;
+ for (final Run<TokenType> aRun : aLine)
+ {
+ final Color aRunColor;
+ if (aRun == maRunUnderMouse)
+ aRunColor = maRunUnderMouseColor;
+ else if (aRun == maHighlightedErrorRun)
+ aRunColor = maErrorHighlightColor;
+ else
+ aRunColor = null;
+ aRun.Paint(
+ (Graphics2D)aGraphics,
+ nX,
+ aLine.GetBottom(),
+ aRunColor);
+
+ nX += aRun.GetWidth();
+ }
+ }
+
+ aGraphics.setColor(maSeparatorColor);
+
+ final int nTop = aGraphics.getClipBounds().y;
+ final int nBottom = aGraphics.getClipBounds().y+aGraphics.getClipBounds().height;
+ aGraphics.drawLine(
+ mnBarPosition0,
+ nTop,
+ mnBarPosition0,
+ nBottom);
+ aGraphics.drawLine(
+ mnBarPosition1,
+ nTop,
+ mnBarPosition1,
+ nBottom);
+ }
+
+
+
+
+ /** Paint a line with a highlight.
+ * There are different kinds of highlight:
+ * - the current line
+ * - one of three groups of enclosing parent elements
+ */
+ private void PaintLineHighlight (
+ final Graphics2D aG2,
+ final Line<TokenType> aLine)
+ {
+ final Color aBackgroundColor;
+ if (aLine == maHighlightedLine)
+ aBackgroundColor = maHighlightColor;
+ else
+ aBackgroundColor = maBackgroundColor;
+
+ final Color aBarColor;
+ if (maLines.IsLineInGroup(aLine, maHighlightedGroup0))
+ aBarColor = maGroupHighlightColor0;
+ else if (maLines.IsLineInGroup(aLine, maHighlightedGroup1))
+ aBarColor = maGroupHighlightColor1;
+ else if (maLines.IsLineInGroup(aLine, maHighlightedGroup2))
+ aBarColor = maGroupHighlightColor2;
+ else
+ aBarColor = maBackgroundColor;
+
+ aG2.setColor(aBarColor);
+ aG2.fillRect(
+ 0,
+ aLine.GetTop(),
+ mnLeftBarWidth,
+ aLine.GetHeight());
+
+ aG2.setColor(aBackgroundColor);
+ aG2.fillRect(
+ mnLeftBarWidth,
+ aLine.GetTop(),
+ getWidth() - mnLeftBarWidth,
+ aLine.GetHeight());
+ }
+
+
+
+
+ private void PaintLineNumber (
+ final Graphics2D aG2,
+ final Line<TokenType> aLine)
+ {
+ final String sNumber = Integer.toString(aLine.GetStartOffset());
+ final FontMetrics aMetrics = aG2.getFontMetrics();
+ final int nWidth = aMetrics.stringWidth(sNumber);
+ final int nHeight = aMetrics.getHeight();
+
+ aG2.setColor(maLineNumberColor);
+ aG2.setFont(maLineNumberFont);
+ aG2.drawString(
+ sNumber,
+ mnBarPosition0+1 + mnNumberBarWidth-nWidth,
+ aLine.GetBottom() - (aLine.GetHeight()-nHeight)/2 - aMetrics.getDescent());
+ }
+
+
+
+
+ @Override
+ public void mouseDragged (final MouseEvent aEvent)
+ {
+ }
+
+
+
+
+ @Override
+ public void mouseMoved (final MouseEvent aEvent)
+ {
+ final Line<TokenType> aLine = maLines.GetLineForY(aEvent.getY());
+ if (aLine != null)
+ {
+ UpdateHighlightedLine(aLine);
+ final Run<TokenType> aRun = aLine.GetRunForX(aEvent.getX() - mnTextStart);
+ SetRunUnderMouse(aRun);
+ }
+ }
+
+
+
+
+ private void UpdateHighlightedLine (final Line<TokenType> aLine)
+ {
+ HighlightLine(aLine);
+
+ final Iterator<Run<TokenType>> aRunIterator = aLine.iterator();
+ if (aRunIterator.hasNext())
+ {
+ final Run<TokenType> aRun = aRunIterator.next();
+ if (aRun.IsGroup())
+ HighlightGroup(aRun);
+ else
+ HighlightGroup(aRun.GetParent());
+ }
+ }
+
+
+
+
+ @Override
+ public void RequestRepaint()
+ {
+ repaint();
+ }
+
+
+
+
+ public DocumentFactory<TokenType> GetDocumentFactory()
+ {
+ return new DocumentFactory<TokenType>(maLines, this);
+ }
+
+
+
+
+ private void HighlightLine (final Line<TokenType> aLine)
+ {
+ if (aLine != maHighlightedLine)
+ {
+ maHighlightedLine = aLine;
+ repaint();
+ }
+ }
+
+
+
+
+ private void HighlightGroup (final Run<TokenType> aRun)
+ {
+ if (maHighlightedGroup0 != aRun)
+ {
+ maHighlightedGroup0 = aRun;
+
+ if (aRun != null)
+ {
+ final Run<TokenType> aGroup1 = aRun.GetParent();
+ maHighlightedGroup1 = aGroup1;
+
+ if (aGroup1 != null)
+ {
+ final Run<TokenType> aGroup2 = aGroup1.GetParent();
+ maHighlightedGroup2 = aGroup2;
+ }
+ }
+ repaint();
+ }
+ }
+
+
+
+
+ @Override
+ public void componentHidden(ComponentEvent e)
+ {
+ }
+
+
+
+
+ @Override
+ public void componentMoved (final ComponentEvent aEvent)
+ {
+ final Point aPoint = getMousePosition();
+ if (aPoint != null)
+ UpdateHighlightedLine(maLines.GetLineForY(aPoint.y));
+ }
+
+
+
+
+ @Override
+ public void componentResized(ComponentEvent e)
+ {
+ }
+
+
+
+
+ @Override
+ public void componentShown(ComponentEvent e)
+ {
+ }
+
+
+
+
+ public Run<TokenType> GetRun (final int nOffset)
+ {
+ final Line<TokenType> aLine = maLines.GetLineForOffset(nOffset);
+ if (aLine != null)
+ return aLine.GetRunForOffset(nOffset);
+ else
+ return null;
+ }
+
+
+
+
+ /** Return all runs that completely or partially lie in the range from
+ * start offset (including) and end offset (excluding).
+ */
+ public RunRange<TokenType> GetRuns (final int nStartOffset, final int nEndOffset)
+ {
+ final Vector<Run<TokenType>> aRuns = new Vector<>();
+
+ for (final Line<TokenType> aLine : maLines.GetLinesForOffsets(nStartOffset, nEndOffset))
+ for (final Run<TokenType> aRun : aLine.GetRunsForOffsets(nStartOffset, nEndOffset))
+ aRuns.add(aRun);
+
+ return new RunRange<TokenType>(aRuns);
+ }
+
+
+
+
+ public void MarkError (final Run<TokenType> aRun)
+ {
+ maHighlightedErrorRun = aRun;
+ repaint();
+ }
+
+
+
+
+ public void ShowRun (final Run<TokenType> aRun)
+ {
+ final Container aComponent = getParent().getParent();
+ if (aComponent instanceof JScrollPane)
+ ((JScrollPane)aComponent).getVerticalScrollBar().setValue(
+ aRun.GetLine().GetTop());
+ }
+
+
+
+
+ private void SetRunUnderMouse (final Run<TokenType> aRun)
+ {
+ if (maRunUnderMouse != aRun)
+ {
+ maRunUnderMouse = aRun;
+ if (maRunUnderMouse != null)
+ setToolTipText(maRunUnderMouse.GetToolTipText());
+ else
+ setToolTipText(null);
+ repaint();
+ }
+ }
+
+
+
+
+ private final LineContainer<TokenType> maLines;
+ private final Formatter<TokenType> maFormatter;
+ private Line<TokenType> maHighlightedLine;
+ private Run<TokenType> maHighlightedGroup0;
+ private Run<TokenType> maHighlightedGroup1;
+ private Run<TokenType> maHighlightedGroup2;
+ private Run<TokenType> maHighlightedErrorRun;
+ private Run<TokenType> maRunUnderMouse;
+
+ private final static int mnLeftBarWidth = 10;
+ private final static int mnNumberBarWidth = 30;
+ private final static int mnBarPosition0 = mnLeftBarWidth;
+ private final static int mnBarPosition1 = mnBarPosition0 + mnNumberBarWidth ;
+ private final static int mnTextStart = mnBarPosition1 + 2;
+ private final static Color maSeparatorColor = Color.GRAY;
+ private final static Color maBackgroundColor = Color.WHITE;
+ private final static Color maHighlightColor = new Color(0xB0E0E6); // Powder Blue
+ private final static Color maGroupHighlightColor0 = new Color(0x32CD32); // Lime Green
+ private final static Color maGroupHighlightColor1 = new Color(0x90EE90); // Light Green
+ private final static Color maGroupHighlightColor2 = new Color(0xbbFfbb);
+ private final static Color maErrorHighlightColor = new Color(0xff3020);
+ private final static Color maLineNumberColor = new Color(0x808080);
+ private final static Color maRunUnderMouseColor = maGroupHighlightColor2;
+ private final static Font maLineNumberFont = UIManager.getDefaults().getFont("TextField.font").deriveFont(9.0f);
+
+}
diff --git a/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/xml/DocumentTokenFormatter.java b/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/xml/DocumentTokenFormatter.java
new file mode 100755
index 000000000000..e01f78afcac0
--- /dev/null
+++ b/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/xml/DocumentTokenFormatter.java
@@ -0,0 +1,399 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.viewer.xml;
+
+import java.awt.Color;
+import java.util.HashMap;
+import java.util.Map;
+
+import org.apache.openoffice.ooxml.viewer.tokenview.DocumentFactory;
+import org.apache.openoffice.ooxml.viewer.tokenview.Style;
+import org.apache.openoffice.ooxml.viewer.tokenview.TokenView;
+
+public class DocumentTokenFormatter
+{
+ DocumentTokenFormatter (
+ final XMLScanner aScanner,
+ final TokenView<TokenType> aView)
+ {
+ maScanner = aScanner;
+ maView = aView.GetDocumentFactory();
+
+ maTagStartEndStyle = new Style().SetForegroundColor(new Color(0x87CEFA)); // Light Sky Blue
+ maNamespaceNameStyle = new Style().SetForegroundColor(new Color(0x7B68EE)); // Medium Slate Blue
+ maIdentifierStyle = new Style()
+ .SetForegroundColor(new Color(0x7B68EE)) // Medium Slate Blue
+ .SetBold();
+ maTextStyle = new Style().SetForegroundColor(new Color(0xF08080)); // Light Coral
+ maAttributeValueStyle = new Style().SetForegroundColor(new Color(0xFFA07A)); // Light Salmon
+
+ msIndentation = "";
+
+ maNamespaceMap = new HashMap<String,String>();
+ }
+
+
+
+
+ public void Parse ()
+ {
+ try
+ {
+ ParseIntro();
+ AppendText("\n", TokenType.WHITESPACE, null, -1);
+ while (true)
+ {
+ switch (maScanner.Peek().Type)
+ {
+ case EOF:
+ return;
+
+ case TAG_START:
+ case END_TAG_START:
+ ParseTag();
+ AppendText("\n", TokenType.WHITESPACE, null, -1);
+ break;
+
+ default:
+ ParseText();
+ }
+ }
+ }
+ catch(final Exception aException)
+ {
+ aException.printStackTrace();
+ }
+ maView.FinishText();
+ }
+
+
+
+
+ Map<String,String> GetNamespaceMap ()
+ {
+ return maNamespaceMap;
+ }
+
+
+
+
+ private void ParseIntro ()
+ {
+ final Token aStartToken = maScanner.Next();
+ ExpectToken(aStartToken, TokenType.INTRO_START);
+ ShowToken(aStartToken);
+
+ ParseTagContent();
+
+ final Token aEndToken = maScanner.Next();
+ ExpectToken(aEndToken, TokenType.INTRO_END);
+ ShowToken(aEndToken);
+ }
+
+
+
+
+ private void ParseTag ()
+ {
+ final Token aStartToken = maScanner.Next();
+ ExpectToken(aStartToken, TokenType.TAG_START, TokenType.END_TAG_START);
+ if (aStartToken.Type == TokenType.TAG_START)
+ maView.BeginGroup();
+ if (aStartToken.Type == TokenType.END_TAG_START)
+ DecreaseIndentation();
+ ShowToken(aStartToken);
+
+ ParseTagContent();
+
+ final Token aEndToken = maScanner.Next();
+ if (aStartToken.Type == TokenType.TAG_START)
+ ExpectToken(aEndToken, TokenType.TAG_END, TokenType.ELEMENT_END);
+ else
+ ExpectToken(aEndToken, TokenType.TAG_END);
+ ShowToken(aEndToken);
+
+ if (aStartToken.Type != TokenType.END_TAG_START
+ && aEndToken.Type != TokenType.ELEMENT_END)
+ {
+ IncreaseIndentation();
+ }
+ else
+ {
+ maView.EndGroup();
+ }
+ }
+
+
+
+
+ private void ParseTagContent ()
+ {
+ ParseQualifiedName();
+
+ if (maScanner.Peek().Type != TokenType.IDENTIFIER)
+ return;
+
+ IncreaseIndentation();
+ while (true)
+ {
+ final Token aToken = maScanner.Peek();
+ if (aToken.Type != TokenType.IDENTIFIER)
+ break;
+
+ if (mbStartNewLineBeforeEachAttribute
+ || mbStartNewLineBeforeNamespaceDefinition && aToken.Text.startsWith("xmlns"))
+ {
+ AppendText("\n", TokenType.WHITESPACE, null, -1);
+ AppendText(" ", TokenType.WHITESPACE, null, -1);
+ }
+ else
+ {
+ AppendText(" ", TokenType.WHITESPACE, null, -1);
+ }
+
+ ParseQualifiedName();
+ final Token aAssignToken = maScanner.Next();
+ ExpectToken(aAssignToken, TokenType.ATTRIBUTE_DEFINE);
+ ShowToken(aAssignToken);
+
+ final Token aValueToken = maScanner.Next();
+ ExpectToken(aValueToken, TokenType.ATTRIBUTE_VALUE);
+ ShowToken(aValueToken, maAttributeValueStyle);
+
+ if (msLastNamespaceName.equals("xmlns"))
+ SaveNamespaceDefinition(msLastName, StripValueQuotes(aValueToken.Text));
+ }
+ DecreaseIndentation();
+ }
+
+
+
+
+ private void ParseQualifiedName ()
+ {
+ final Token aNameToken = maScanner.Next();
+ ExpectToken(aNameToken, TokenType.IDENTIFIER);
+ if (maScanner.Peek().Type == TokenType.COLON)
+ {
+ final Token aSeparatorToken = maScanner.Next();
+ final Token aSecondNameToken = maScanner.Next();
+ ExpectToken(aSecondNameToken, TokenType.IDENTIFIER);
+ ShowToken(aNameToken, maNamespaceNameStyle);
+ ShowToken(aSeparatorToken);
+ ShowToken(aSecondNameToken, maIdentifierStyle);
+
+ msLastNamespaceName = aNameToken.Text;
+ msLastName = aSecondNameToken.Text;
+ }
+ else
+ {
+ ShowToken(aNameToken, maIdentifierStyle);
+
+ msLastNamespaceName = "";
+ msLastName = aNameToken.Text;
+ }
+ }
+
+
+
+
+ private void ParseText ()
+ {
+ final Token aTextToken = maScanner.Next();
+ ExpectToken(aTextToken, TokenType.TEXT);
+ ShowToken(aTextToken, maTextStyle);
+ AppendText("\n", TokenType.WHITESPACE, null, -1);
+ }
+
+
+
+
+ private TokenType ExpectToken (final Token aToken, final TokenType ... aExcpectedTypes)
+ {
+ for (final TokenType eType : aExcpectedTypes)
+ if (aToken.Type == eType)
+ return eType;
+
+ if (aExcpectedTypes.length == 1)
+ {
+ throw new RuntimeException(
+ String.format(
+ "expected '%s' but got %s",
+ aExcpectedTypes[0].toString(),
+ aToken.toString()));
+ }
+ else
+ {
+ String sList = null;
+ for (final TokenType eType : aExcpectedTypes)
+ {
+ if (sList != null)
+ sList += String.format(", '%s'", eType.toString());
+ else
+ sList = String.format("'%s'", eType.toString());
+ }
+ throw new RuntimeException(
+ String.format(
+ "expected one of %s but got %s",
+ sList,
+ aToken.toString()));
+ }
+ }
+
+
+
+
+ private void ShowToken (final Token aToken)
+ {
+ AppendText(aToken.Text, aToken.Type, GetStyle(aToken.Type), aToken.Offset);
+ }
+
+
+
+
+ private void ShowToken (
+ final Token aToken,
+ final Style aStyle)
+ {
+ AppendText(aToken.Text, aToken.Type, aStyle, aToken.Offset);
+ }
+
+
+
+
+ private void AppendText (
+ final String sText,
+ final TokenType eTokenType,
+ final Style aStyle,
+ final int nOffset)
+ {
+ try
+ {
+ if (mbIsAtBeginningOfLine)
+ {
+ AddText(msIndentation, TokenType.WHITESPACE, aStyle, -1);
+ mbIsAtBeginningOfLine = false;
+ }
+ AddText(sText, eTokenType, aStyle, nOffset);
+ mbIsAtBeginningOfLine = sText.endsWith("\n");
+ }
+ catch (RuntimeException e)
+ {
+ e.printStackTrace();
+ }
+ }
+
+
+
+
+ private void AddText (
+ final String sText,
+ final TokenType eTokenType,
+ final Style aStyle,
+ final int nOffset)
+ {
+ maView.AddText(sText, eTokenType, aStyle, nOffset);
+ }
+
+
+
+
+ private void IncreaseIndentation ()
+ {
+ msIndentation += " ";
+ }
+
+
+
+
+ private void DecreaseIndentation ()
+ {
+ if ( ! msIndentation.isEmpty())
+ msIndentation = msIndentation.substring(4);
+ }
+
+
+
+
+ private Style GetStyle (final TokenType eType)
+ {
+ switch(eType)
+ {
+ case TAG_START:
+ case TAG_END:
+ case END_TAG_START:
+ case INTRO_START:
+ case INTRO_END:
+ case ELEMENT_END:
+ return maTagStartEndStyle;
+
+ case IDENTIFIER:
+ return maIdentifierStyle;
+
+ case TEXT:
+ return maTextStyle;
+
+ case ATTRIBUTE_VALUE:
+ return maAttributeValueStyle;
+
+ default:
+ return null;
+ }
+ }
+
+
+
+
+ private String StripValueQuotes (final String sQuotedValue)
+ {
+ final String sValue = sQuotedValue.substring(1, sQuotedValue.length()-1);
+ return sValue;
+ }
+
+
+
+
+ private void SaveNamespaceDefinition (final String sShortName, final String sLongName)
+ {
+ maNamespaceMap.put(sShortName, sLongName);
+ }
+
+
+
+
+ private final XMLScanner maScanner;
+ private final DocumentFactory<TokenType> maView;
+ private final Style maTagStartEndStyle;
+ private final Style maNamespaceNameStyle;
+ private final Style maIdentifierStyle;
+ private final Style maTextStyle;
+ private final Style maAttributeValueStyle;
+ private String msIndentation;
+ private boolean mbIsAtBeginningOfLine;
+
+ private String msLastNamespaceName;
+ private String msLastName;
+ private Map<String,String> maNamespaceMap;
+
+ private final boolean mbStartNewLineBeforeEachAttribute = false;
+ private final boolean mbStartNewLineBeforeNamespaceDefinition = true;
+}
diff --git a/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/xml/Token.java b/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/xml/Token.java
new file mode 100755
index 000000000000..6919e8d0957b
--- /dev/null
+++ b/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/xml/Token.java
@@ -0,0 +1,51 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.viewer.xml;
+
+public class Token
+{
+ Token (
+ final TokenType eType,
+ final String sText,
+ final int nOffset)
+ {
+ Type = eType;
+ Text = sText;
+ Offset = nOffset;
+ }
+
+
+
+
+ @Override
+ public String toString ()
+ {
+ return String.format("%s(%s)", Type.toString(), Text);
+ }
+
+
+
+
+ public final TokenType Type;
+ public final String Text;
+ public final int Offset;
+}
diff --git a/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/xml/TokenType.java b/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/xml/TokenType.java
new file mode 100755
index 000000000000..ea2c82277dde
--- /dev/null
+++ b/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/xml/TokenType.java
@@ -0,0 +1,41 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.viewer.xml;
+
+public enum TokenType
+{
+ TAG_START,
+ TAG_END,
+ END_TAG_START,
+ INTRO_START,
+ INTRO_END,
+ IDENTIFIER,
+ ELEMENT_END,
+ ATTRIBUTE_DEFINE,
+ ATTRIBUTE_VALUE,
+ COLON,
+ COMMENT_START,
+ COMMENT_END,
+ TEXT,
+ WHITESPACE,
+ EOF
+}
diff --git a/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/xml/XMLScanner.java b/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/xml/XMLScanner.java
new file mode 100755
index 000000000000..7e83c2258492
--- /dev/null
+++ b/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/xml/XMLScanner.java
@@ -0,0 +1,438 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.viewer.xml;
+
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.InputStreamReader;
+import java.io.Reader;
+import java.io.UnsupportedEncodingException;
+import java.util.Arrays;
+import java.util.Vector;
+
+public class XMLScanner
+{
+ XMLScanner (final InputStream aIn)
+ {
+ Reader aReader = null;
+ try
+ {
+ aReader = new InputStreamReader(aIn, "UTF8");
+ }
+ catch (UnsupportedEncodingException e)
+ {
+ e.printStackTrace();
+ }
+ maIn = aReader;
+ mnNextCharacter = 0;
+ maTokens = new Vector<Token>();
+ mnTokensReadIndex = 0;
+ mbIsInsideTag = false;
+ maTextBuffer = new int[1024];
+ }
+
+
+
+
+ public Token Next ()
+ {
+ while (maTokens.isEmpty())
+ ProvideToken();
+
+ final Token aToken = maTokens.get(mnTokensReadIndex);
+ ++mnTokensReadIndex;
+ if (mnTokensReadIndex >= maTokens.size())
+ {
+ maTokens.clear();
+ mnTokensReadIndex = 0;
+ }
+ return aToken;
+ }
+
+
+
+
+ public Token Peek()
+ {
+ while (maTokens.isEmpty())
+ ProvideToken();
+
+ return maTokens.get(mnTokensReadIndex);
+ }
+
+
+
+
+ private void ProvideToken ()
+ {
+ final int nC = PeekCharacter();
+ if (nC == -1)
+ {
+ AddToken(TokenType.EOF, "", mnOffset);
+ }
+ else if (mbIsInsideTag)
+ {
+ switch (Character.getType(nC))
+ {
+ case Character.DIRECTIONALITY_WHITESPACE:
+ case Character.DIRECTIONALITY_LEFT_TO_RIGHT_OVERRIDE:
+ ScanWhitespace();
+ break;
+
+ default:
+ switch(nC)
+ {
+ case '?':
+ case '/':
+ case '>':
+ case '=':
+ case ':':
+ case '-':
+ switch(ScanSymbol())
+ {
+ case TAG_END:
+ case INTRO_END:
+ case ELEMENT_END:
+ mbIsInsideTag = false;
+ break;
+ default:
+ break;
+ }
+ break;
+
+ case '"':
+ ScanQuotedValue();
+ break;
+
+ default:
+ ScanIdentifier();
+ break;
+ }
+ }
+ }
+ else
+ {
+ switch (Character.getType(PeekCharacter()))
+ {
+ case Character.DIRECTIONALITY_WHITESPACE:
+ case Character.DIRECTIONALITY_LEFT_TO_RIGHT_OVERRIDE:
+ ScanWhitespace();
+ break;
+
+ default:
+ if (nC == '<')
+ {
+ mbIsInsideTag = true;
+ ScanSymbol();
+ }
+ else
+ {
+ ScanText();
+ }
+ break;
+ }
+ }
+ }
+
+
+
+
+ Token NextNonWhitespaceToken ()
+ {
+ while(true)
+ {
+ final Token aToken = Next();
+ if (aToken.Type != TokenType.WHITESPACE)
+ return aToken;
+ }
+ }
+
+
+
+
+ private TokenType ScanSymbol ()
+ {
+ final int nStartOffset = mnOffset;
+
+ switch (PeekCharacter())
+ {
+ case -1:
+ AddToken(TokenType.EOF, "", nStartOffset);
+ return TokenType.EOF;
+
+ case '<':
+ GetNextCharacter();
+ switch(PeekCharacter())
+ {
+ case '/':
+ GetNextCharacter();
+ AddToken(TokenType.END_TAG_START, "</", nStartOffset);
+ break;
+
+ case '?':
+ GetNextCharacter();
+ AddToken(TokenType.INTRO_START, "<?", nStartOffset);
+ break;
+
+ case '!':
+ GetNextCharacter();
+ if (GetNextCharacter() != '-')
+ throw new RuntimeException("expected '-' after '<!'");
+ if (GetNextCharacter() != '-')
+ throw new RuntimeException("expected '-' after '<!-'");
+ AddToken(TokenType.COMMENT_START, "<!--", nStartOffset);
+ break;
+
+ default:
+ AddToken(TokenType.TAG_START, "<", nStartOffset);
+ break;
+ }
+ return maTokens.lastElement().Type;
+
+ case '>':
+ GetNextCharacter();
+ AddToken(TokenType.TAG_END, ">", nStartOffset);
+ return TokenType.TAG_END;
+
+ case '/':
+ GetNextCharacter();
+ if (GetNextCharacter() != '>')
+ throw new RuntimeException("expected '>' after '/'");
+ AddToken(TokenType.ELEMENT_END, "/>", nStartOffset);
+ return TokenType.ELEMENT_END;
+
+ case '?':
+ GetNextCharacter();
+ if (GetNextCharacter() != '>')
+ throw new RuntimeException("expected '>' after '?'");
+ AddToken(TokenType.INTRO_END, "?>", nStartOffset);
+ return TokenType.INTRO_END;
+
+ case '-':
+ GetNextCharacter();
+ if (GetNextCharacter() != '-')
+ throw new RuntimeException("expected '-' after '-'");
+ if (GetNextCharacter() != '>')
+ throw new RuntimeException("expected '>' after '--'");
+ AddToken(TokenType.COMMENT_END, "-->", nStartOffset);
+ return TokenType.COMMENT_END;
+
+ case '=':
+ GetNextCharacter();
+ AddToken(TokenType.ATTRIBUTE_DEFINE, "=", nStartOffset);
+ return TokenType.ATTRIBUTE_DEFINE;
+
+ case ':':
+ GetNextCharacter();
+ AddToken(TokenType.COLON, ":", nStartOffset);
+ return TokenType.COLON;
+
+ default:
+ throw new RuntimeException(String.format(
+ "unexpected character '%c' of type %d",
+ PeekCharacter(),
+ Character.getType(PeekCharacter())));
+ }
+ }
+
+
+
+
+ private boolean ScanIdentifier ()
+ {
+ final int nStartOffset = mnOffset;
+ int nBufferWriteIndex = 0;
+
+ while (true)
+ {
+ switch(Character.getType(PeekCharacter()))
+ {
+ default:
+ case -1:
+ if (nBufferWriteIndex == 0)
+ throw new RuntimeException(
+ String.format(
+ "missing identifier, got '%c' of type %d",
+ PeekCharacter(),
+ Character.getType(PeekCharacter())));
+ AddToken(
+ TokenType.IDENTIFIER,
+ new String(maTextBuffer, 0, nBufferWriteIndex),
+ nStartOffset);
+ return true;
+
+ case Character.LOWERCASE_LETTER:
+ case Character.UPPERCASE_LETTER:
+ case Character.DECIMAL_DIGIT_NUMBER:
+ if (nBufferWriteIndex >= maTextBuffer.length)
+ maTextBuffer = Arrays.copyOf(maTextBuffer, maTextBuffer.length*2);
+ maTextBuffer[nBufferWriteIndex] = GetNextCharacter();
+ ++nBufferWriteIndex;
+ break;
+ }
+ }
+ }
+
+
+
+
+ private void ScanWhitespace ()
+ {
+ final StringBuffer aBuffer = new StringBuffer();
+ final int nStartOffset = mnOffset;
+
+ while (true)
+ {
+ switch(Character.getType(PeekCharacter()))
+ {
+ default:
+ if (aBuffer.length() > 0)
+ AddToken(TokenType.WHITESPACE, aBuffer.toString(), nStartOffset);
+ return;
+
+ case -1:
+ AddToken(TokenType.WHITESPACE, aBuffer.toString(), nStartOffset);
+ AddToken(TokenType.EOF, "", nStartOffset);
+ return;
+
+ case Character.DIRECTIONALITY_WHITESPACE:
+ case Character.DIRECTIONALITY_LEFT_TO_RIGHT_OVERRIDE:
+ aBuffer.append((char)GetNextCharacter());
+ break;
+ }
+ }
+ }
+
+
+
+
+ private void ScanQuotedValue ()
+ {
+ if (PeekCharacter() == '"')
+ {
+ final int nStartOffset = mnOffset;
+ int nBufferWriteIndex = 0;
+ maTextBuffer[nBufferWriteIndex++] = GetNextCharacter();
+
+ while (PeekCharacter() != '"')
+ {
+ // Make sure that there is enough space for this character and the end quote.
+ if (nBufferWriteIndex >= maTextBuffer.length-1)
+ maTextBuffer = Arrays.copyOf(maTextBuffer, maTextBuffer.length*2);
+ maTextBuffer[nBufferWriteIndex++] = GetNextCharacter();
+ }
+
+ maTextBuffer[nBufferWriteIndex++] = GetNextCharacter();
+
+ AddToken(TokenType.ATTRIBUTE_VALUE, new String(maTextBuffer, 0, nBufferWriteIndex), nStartOffset);
+ }
+ }
+
+
+
+
+ private void ScanText ()
+ {
+ final int nStartOffset = mnOffset;
+ int nBufferWriteIndex = 0;
+ maTextBuffer[nBufferWriteIndex++] = GetNextCharacter();
+
+ while (PeekCharacter() != '<')
+ {
+ if (nBufferWriteIndex >= maTextBuffer.length)
+ maTextBuffer = Arrays.copyOf(maTextBuffer, maTextBuffer.length*2);
+ maTextBuffer[nBufferWriteIndex++] = GetNextCharacter();
+ }
+
+ AddToken(TokenType.TEXT, new String(maTextBuffer, 0, nBufferWriteIndex), nStartOffset);
+ }
+
+
+
+
+ private int GetNextCharacter ()
+ {
+ final int nC;
+ if (mnNextCharacter != 0)
+ {
+ nC = mnNextCharacter;
+ mnNextCharacter = 0;
+ }
+ else
+ {
+ try
+ {
+ nC = maIn.read();
+ }
+ catch (Exception e)
+ {
+ e.printStackTrace();
+ return -1;
+ }
+ }
+ ++mnOffset;
+ return nC;
+ }
+
+
+
+
+ private int PeekCharacter ()
+ {
+ if (mnNextCharacter == 0)
+ {
+ try
+ {
+ mnNextCharacter = maIn.read();
+ }
+ catch (IOException e)
+ {
+ e.printStackTrace();
+ mnNextCharacter = -1;
+ }
+ }
+ return mnNextCharacter;
+ }
+
+
+
+
+ private void AddToken (
+ final TokenType eType,
+ final String sText,
+ final int nOffset)
+ {
+ if (eType != TokenType.WHITESPACE)
+ maTokens.add(new Token(eType, sText, nOffset));
+ }
+
+
+
+
+ private final Reader maIn;
+ private int mnNextCharacter;
+ private Vector<Token> maTokens;
+ private int mnTokensReadIndex;
+ private boolean mbIsInsideTag;
+ private int[] maTextBuffer;
+ private int mnOffset;
+}
diff --git a/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/xml/XMLTokenViewFactory.java b/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/xml/XMLTokenViewFactory.java
new file mode 100755
index 000000000000..cfa6d8478e58
--- /dev/null
+++ b/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/xml/XMLTokenViewFactory.java
@@ -0,0 +1,106 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.viewer.xml;
+
+import java.io.InputStream;
+
+import org.apache.openoffice.ooxml.viewer.KeyListener;
+import org.apache.openoffice.ooxml.viewer.tokenview.TokenView;
+
+public class XMLTokenViewFactory
+ extends Thread
+{
+ public XMLTokenViewFactory ()
+ {
+ maIn = null;
+ start();
+ }
+
+
+
+
+ public TokenView<TokenType> Create (final InputStream aIn)
+ {
+ TokenView<TokenType> aView = null;
+ synchronized(this)
+ {
+ maIn = aIn;
+ if (maIn != null)
+ {
+ aView = new TokenView<TokenType>();
+ aView.addKeyListener(new KeyListener());
+ maCurrentView = aView;
+
+ FillDocument();
+ //notify();
+ }
+ }
+
+ return aView;
+ }
+
+
+
+
+ @Override
+ public void run ()
+ {
+ while(true)
+ {
+ FillDocument();
+
+ synchronized(this)
+ {
+ if (maIn == null)
+ {
+ try
+ {
+ wait();
+ }
+ catch (InterruptedException e)
+ {
+ e.printStackTrace();
+ }
+ }
+ }
+ }
+ }
+
+
+
+
+ private void FillDocument ()
+ {
+ final InputStream aIn = maIn;
+ maIn = null;
+ if (aIn != null)
+ {
+ new DocumentTokenFormatter(new XMLScanner(aIn), maCurrentView).Parse();
+ }
+ }
+
+
+
+
+ private InputStream maIn;
+ private TokenView<TokenType> maCurrentView;
+}
diff --git a/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/xmltokenview/XMLViewFactory.java b/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/xmltokenview/XMLViewFactory.java
new file mode 100755
index 000000000000..3ca361b2ad0e
--- /dev/null
+++ b/ooxml/source/framework/OOXMLViewer/src/org/apache/openoffice/ooxml/viewer/xmltokenview/XMLViewFactory.java
@@ -0,0 +1,143 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.viewer.xmltokenview;
+
+import java.util.Vector;
+
+import javax.xml.stream.Location;
+
+import org.apache.openoffice.ooxml.parser.ElementContext;
+import org.apache.openoffice.ooxml.parser.ParseException;
+import org.apache.openoffice.ooxml.parser.Parser;
+import org.apache.openoffice.ooxml.parser.action.ActionTrigger;
+import org.apache.openoffice.ooxml.parser.action.IAction;
+import org.apache.openoffice.ooxml.viewer.tokenview.Run;
+import org.apache.openoffice.ooxml.viewer.tokenview.RunRange;
+import org.apache.openoffice.ooxml.viewer.tokenview.TokenView;
+import org.apache.openoffice.ooxml.viewer.xml.TokenType;
+
+public class XMLViewFactory
+{
+ public static void AddSemanticInformation(
+ final TokenView<TokenType> aView,
+ final Parser aParser,
+ final Vector<String> aErrorsAndWarnings)
+ {
+ aParser.GetActionManager().AddElementStartAction(
+ "*",
+ new IAction()
+ {
+ public void Run (
+ final ActionTrigger eTrigger,
+ final ElementContext aContext,
+ final String sText,
+ final Location aStartLocation,
+ final Location aEndLocation)
+ {
+ final RunRange<TokenType> aRuns = aView.GetRuns(
+ aStartLocation.getCharacterOffset(),
+ aEndLocation.getCharacterOffset());
+ if (aRuns.IsEmpty())
+ aView.GetRuns(
+ aStartLocation.getCharacterOffset(),
+ aEndLocation.getCharacterOffset());
+
+ // Search for the name (including namespace prefix) of the element.
+ int nIndex = aRuns.FindTokens(
+ TokenType.TAG_START,
+ TokenType.IDENTIFIER,
+ TokenType.COLON,
+ TokenType.IDENTIFIER);
+ if (nIndex < 0)
+ return;
+
+ aRuns.Get(nIndex+1).SetToolTipText(aContext.GetTypeName());
+ aRuns.Get(nIndex+2).SetToolTipText(aContext.GetTypeName());
+ aRuns.Get(nIndex+3).SetToolTipText(aContext.GetTypeName());
+ nIndex += 4;
+
+ // Process the attributes.
+ while (true)
+ {
+ final int nStartIndex = nIndex;
+ nIndex = aRuns.FindTokens(
+ nStartIndex,
+ TokenType.IDENTIFIER,
+ TokenType.COLON,
+ TokenType.IDENTIFIER,
+ TokenType.ATTRIBUTE_DEFINE);
+ if (nIndex >= 0)
+ {
+ final String sAttributeName = aRuns.Get(nIndex+2).GetText();
+ aRuns.Get(nIndex+0).SetToolTipText("attribute define of "+sAttributeName);
+ aRuns.Get(nIndex+1).SetToolTipText("attribute define of "+sAttributeName);
+ aRuns.Get(nIndex+2).SetToolTipText("attribute define of "+sAttributeName);
+ nIndex += 5;
+ }
+ else
+ {
+ // Try the variant without namespace.
+ nIndex = aRuns.FindTokens(
+ nStartIndex,
+ TokenType.IDENTIFIER,
+ TokenType.ATTRIBUTE_DEFINE);
+ if (nIndex >= 0)
+ {
+ final String sAttributeName = aRuns.Get(nIndex).GetText();
+ aRuns.Get(nIndex).SetToolTipText("attribute define of "+sAttributeName);
+ nIndex += 3;
+ }
+ else
+ {
+ // No more attributes.
+ break;
+ }
+ }
+ }
+ }
+ });
+ try
+ {
+ aParser.Parse();
+ }
+ catch (final ParseException aException)
+ {
+ System.err.printf("caught exception when parsing %d,%d/%d\n",
+ aException.Location.getLineNumber(),
+ aException.Location.getColumnNumber(),
+ aException.Location.getCharacterOffset());
+
+ final Run<TokenType> aRun = aView.GetRun(aException.Location.getCharacterOffset());
+ if (aRun != null)
+ {
+ aView.MarkError(aRun);
+ aRun.SetToolTipText(
+ String.format(
+ "parse error at %d,%d/%d\n",
+ aException.Location.getLineNumber(),
+ aException.Location.getColumnNumber(),
+ aException.Location.getCharacterOffset()));
+ aView.ShowRun(aRun);
+ }
+ }
+ }
+}
diff --git a/ooxml/source/framework/SchemaParser/.classpath b/ooxml/source/framework/SchemaParser/.classpath
new file mode 100644
index 000000000000..fb565a588d8a
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/.classpath
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/ooxml/source/framework/SchemaParser/.project b/ooxml/source/framework/SchemaParser/.project
new file mode 100644
index 000000000000..05958e177e81
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/.project
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>SchemaParser</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ </natures>
+</projectDescription>
diff --git a/ooxml/source/framework/SchemaParser/.settings/org.eclipse.jdt.core.prefs b/ooxml/source/framework/SchemaParser/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 000000000000..7341ab1683c4
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,11 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7
+org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
+org.eclipse.jdt.core.compiler.compliance=1.7
+org.eclipse.jdt.core.compiler.debug.lineNumber=generate
+org.eclipse.jdt.core.compiler.debug.localVariable=generate
+org.eclipse.jdt.core.compiler.debug.sourceFile=generate
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.7
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/SchemaReader.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/SchemaReader.java
new file mode 100644
index 000000000000..bf15b39d71e2
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/SchemaReader.java
@@ -0,0 +1,510 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema;
+
+import java.io.BufferedReader;
+import java.io.File;
+import java.io.FileReader;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.LinkedList;
+import java.util.Map;
+import java.util.Map.Entry;
+import java.util.Queue;
+import java.util.Set;
+import java.util.Vector;
+
+import javax.xml.stream.XMLStreamException;
+
+import org.apache.openoffice.ooxml.schema.automaton.FiniteAutomatonContainer;
+import org.apache.openoffice.ooxml.schema.automaton.NonValidatingCreator;
+import org.apache.openoffice.ooxml.schema.automaton.ValidatingCreator;
+import org.apache.openoffice.ooxml.schema.generator.LogGenerator;
+import org.apache.openoffice.ooxml.schema.generator.ParserTablesGenerator;
+import org.apache.openoffice.ooxml.schema.generator.html.HtmlGenerator;
+import org.apache.openoffice.ooxml.schema.model.schema.Schema;
+import org.apache.openoffice.ooxml.schema.model.schema.SchemaBase;
+import org.apache.openoffice.ooxml.schema.parser.SchemaParser;
+import org.apache.openoffice.ooxml.schema.simple.SimpleTypeContainer;
+
+public class SchemaReader
+{
+ public static void main (final String ... aArgumentList)
+ {
+ if (aArgumentList.length != 1)
+ {
+ System.err.printf("usage: SchemaParser <driver-file>\n");
+ System.err.printf(" driver file can contain these lines:\n");
+ System.err.printf("# Comments\n");
+ System.err.printf(" are ignored\n");
+ System.err.printf("schema <mark> <file-name>\n");
+ System.err.printf(" specifies a top-level schema file to read\n");
+ System.err.printf("output-schema <file-name>\n");
+ System.err.printf(" write schema information to file\n");
+ System.err.printf("output-optimized-schema <file-name>\n");
+ System.err.printf(" write information about optimized schema to file\n");
+ System.exit(1);
+ }
+
+ final SchemaReader aReader = new SchemaReader(new File(aArgumentList[0]));
+ aReader.Run();
+ }
+
+
+
+
+ private SchemaReader (final File aDriverFile)
+ {
+ maSchemaBase = new SchemaBase();
+ maTopLevelSchemas = new HashMap<>();
+ maMainSchemaFiles = new Vector<>();
+ maSchemaFiles = new HashSet<>();
+ maWorkList = new LinkedList<>();
+ maOutputOperations = new Vector<>();
+ mnTotalLineCount = 0;
+ mnTotalByteCount = 0;
+
+ ParseDriverFile(aDriverFile);
+ }
+
+
+
+
+ /** Read and parse the driver file that specifies which schema files to read
+ * and where the output should go.
+ */
+ private void ParseDriverFile (final File aDriverFile)
+ {
+ if (aDriverFile == null || ! aDriverFile.exists() || ! aDriverFile.canRead())
+ {
+ System.err.printf("can not read driver file\n");
+ System.exit(1);
+ }
+
+ try
+ {
+ final BufferedReader aIn = new BufferedReader(new FileReader(aDriverFile));
+ while(true)
+ {
+ String sLine = aIn.readLine();
+ if (sLine == null)
+ break;
+ // Lines starting with # are comment lines and are ignored.
+ if (sLine.matches("^\\s*#.*"))
+ continue;
+ // Lines containing only whitespace are also ignored.
+ else if (sLine.matches("^\\s*$"))
+ continue;
+
+ // Handle line continuation.
+ while (sLine.endsWith("\\"))
+ sLine = sLine.substring(0, sLine.length()-1) + aIn.readLine();
+
+ final Vector<String> aParts = SplitLine(sLine);
+ switch (aParts.get(0))
+ {
+ case "schema":
+ maMainSchemaFiles.add(new String[]{aParts.get(1), aParts.get(2)});
+ break;
+
+ case "output-schema":
+ maOutputOperations.add(new Runnable()
+ {
+ final File maFile = CreateCheckedOutputFile(aParts.get(1));
+ @Override public void run()
+ {
+ WriteSchema(maFile);
+ }
+ });
+ break;
+
+ case "output-optimized-schema":
+ maOutputOperations.add(new Runnable()
+ {
+ final File maFile = CreateCheckedOutputFile(aParts.get(1));
+ @Override public void run()
+ {
+ WriteOptimizedSchema(maFile);
+ }
+ });
+ break;
+
+ case "output-nonvalidating-parse-tables":
+ maOutputOperations.add(new Runnable()
+ {
+ final File aAutomatonLogFile = CreateCheckedOutputFile(aParts.get(1));
+ final File aSimpleTypeLogFile = CreateCheckedOutputFile(aParts.get(2));
+ final File aParseTableFile = CreateCheckedOutputFile(aParts.get(3));
+ @Override public void run()
+ {
+ WriteNonValidatingParseTables(
+ aAutomatonLogFile,
+ aSimpleTypeLogFile,
+ aParseTableFile);
+ }
+ });
+ break;
+
+ case "output-validating-parse-tables":
+ maOutputOperations.add(new Runnable()
+ {
+ final File aAutomatonLogFile = CreateCheckedOutputFile(aParts.get(1));
+ final File aSimpleTypeLogFile = CreateCheckedOutputFile(aParts.get(2));
+ final File aParseTableFile = CreateCheckedOutputFile(aParts.get(3));
+ @Override public void run()
+ {
+ WriteValidatingParseTables(
+ aAutomatonLogFile,
+ aSimpleTypeLogFile,
+ aParseTableFile);
+ }
+ });
+ break;
+
+ case "output-html-page":
+ maOutputOperations.add(new Runnable()
+ {
+ final File aHTMLPageFile = CreateCheckedOutputFile(aParts.get(1));
+ @Override public void run()
+ {
+ WriteHTMLPage(aHTMLPageFile);
+ }
+ });
+ break;
+
+ default:
+ System.err.printf("unknown command '%s' in driver file", aParts.get(0));
+ System.exit(1);
+ }
+ }
+ aIn.close();
+ }
+ catch (final Exception aException)
+ {
+ aException.printStackTrace();
+ }
+ }
+
+
+
+
+ private void Run ()
+ {
+ try
+ {
+ ParseSchemaFiles();
+ }
+ catch (final Exception aException)
+ {
+ aException.printStackTrace();
+ }
+
+ maOptimizedSchemaBase = maSchemaBase.GetOptimizedSchema(maTopLevelSchemas.values());
+ for (final Entry<String, Schema> aEntry : maTopLevelSchemas.entrySet())
+ aEntry.setValue(aEntry.getValue().GetOptimizedSchema(maOptimizedSchemaBase));
+
+ System.out.printf(" optimization left %d complex types and %d simple types\n",
+ maOptimizedSchemaBase.ComplexTypes.GetCount(),
+ maOptimizedSchemaBase.SimpleTypes.GetCount());
+
+ for (final Runnable aOperation : maOutputOperations)
+ {
+ aOperation.run();
+ }
+ }
+
+
+
+
+ private void ParseSchemaFiles ()
+ throws XMLStreamException
+ {
+ System.out.printf("parsing %d main schema files\n", maMainSchemaFiles.size());
+
+ for (final String[] aEntry : maMainSchemaFiles)
+ {
+ final String sMainSchemaShortname = aEntry[0];
+ final String sMainSchemaFile = aEntry[1];
+ final File aMainSchemaFile = new File(sMainSchemaFile);
+ if ( ! aMainSchemaFile.exists())
+ {
+ System.err.printf(" schema file does not exist\n");
+ System.exit(1);
+ }
+ if ( ! aMainSchemaFile.canRead())
+ {
+ System.err.printf("can not read schema file\n");
+ System.exit(1);
+ }
+
+ final Schema aSchema = new Schema(sMainSchemaShortname, maSchemaBase);
+ ParseSchemaFile(sMainSchemaFile, aSchema);
+ maTopLevelSchemas.put(sMainSchemaShortname, aSchema);
+ }
+
+ long nStartTime = System.currentTimeMillis();
+ while ( ! maWorkList.isEmpty())
+ {
+ ParseSchemaFile(maWorkList.poll(), null);
+ }
+ long nEndTime = System.currentTimeMillis();
+
+ System.out.printf("parsed %d schema files with a total of %d lines and %d bytes in %fs\n",
+ maSchemaFiles.size(),
+ mnTotalLineCount,
+ mnTotalByteCount,
+ (nEndTime-nStartTime)/1000.0);
+ System.out.printf(" found %d complex types and %d simple types\n",
+ maSchemaBase.ComplexTypes.GetCount(),
+ maSchemaBase.SimpleTypes.GetCount());
+
+ int nTopLevelElementCount = 0;
+ for (final Schema aSchema : maTopLevelSchemas.values())
+ nTopLevelElementCount += aSchema.TopLevelElements.GetCount();
+ System.out.printf(" the %d top level schemas have %d elements\n",
+ maTopLevelSchemas.size(),
+ nTopLevelElementCount);
+ }
+
+
+
+
+ private void ParseSchemaFile (
+ final String sSchemaFilename,
+ final Schema aSchema)
+ throws XMLStreamException
+ {
+ System.out.printf("parsing %s\n", sSchemaFilename);
+ maSchemaFiles.add(sSchemaFilename);
+
+ final SchemaParser aParser = new SchemaParser(new File(sSchemaFilename), aSchema, maSchemaBase);
+ aParser.Parse();
+
+ mnTotalLineCount += aParser.GetLineCount();
+ mnTotalByteCount += aParser.GetByteCount();
+ for (final File aFile : aParser.GetImportedSchemaFilenames())
+ AddSchemaReference(aFile.getAbsolutePath());
+ }
+
+
+
+
+ private void AddSchemaReference (final String sSchemaFilename)
+ {
+ if ( ! maSchemaFiles.contains(sSchemaFilename))
+ {
+ if (sSchemaFilename == null)
+ throw new RuntimeException();
+
+ // We don't know yet the file name of the schema, so just store null to mark the schema name as 'known'.
+ maSchemaFiles.add(sSchemaFilename);
+ maWorkList.add(sSchemaFilename);
+ }
+ }
+
+
+
+
+ /** Split the given string at whitespace but not at whitespace inside double quotes.
+ *
+ */
+ private Vector<String> SplitLine (final String sLine)
+ {
+ final Vector<String> aParts = new Vector<>();
+
+ boolean bIsInsideQuotes = false;
+ for (final String sPart : sLine.split("\""))
+ {
+ if (bIsInsideQuotes)
+ aParts.add(sPart);
+ else
+ for (final String sInnerPart : sPart.split("\\s+"))
+ {
+ if (sInnerPart == null)
+ throw new RuntimeException();
+ else if ( ! sInnerPart.isEmpty())
+ aParts.add(sInnerPart);
+ }
+
+ bIsInsideQuotes = ! bIsInsideQuotes;
+ }
+
+ return aParts;
+ }
+
+
+
+
+ /** Create a File object for a given file name.
+ * Check that the file is writable, i.e. its directory exists and that if
+ * the file already exists it can be replaced.
+ * Throws a RuntimeException when a check fails.
+ */
+ private File CreateCheckedOutputFile (final String sFilename)
+ {
+ final File aFile = new File(sFilename);
+ if ( ! aFile.getParentFile().exists())
+ throw new RuntimeException("directory of "+sFilename+" does not exist: can not create file");
+ if (aFile.exists() && ! aFile.canWrite())
+ throw new RuntimeException("file "+sFilename+" already exists and can not be replaced");
+ return aFile;
+ }
+
+
+
+
+ private void WriteSchema (final File aOutputFile)
+ {
+ LogGenerator.Write(aOutputFile, maSchemaBase, maTopLevelSchemas.values());
+ }
+
+
+
+
+ private void WriteOptimizedSchema (final File aOutputFile)
+ {
+ LogGenerator.Write(aOutputFile, maOptimizedSchemaBase, maTopLevelSchemas.values());
+ }
+
+
+
+
+ private void WriteNonValidatingParseTables (
+ final File aAutomatonLogFile,
+ final File aSimpleTypeLogFile,
+ final File aParseTableFile)
+ {
+ long nStartTime = System.currentTimeMillis();
+ final NonValidatingCreator aCreator = new NonValidatingCreator(maOptimizedSchemaBase, aAutomatonLogFile);
+ FiniteAutomatonContainer aAutomatons = aCreator.Create(maTopLevelSchemas.values());
+ long nEndTime = System.currentTimeMillis();
+ System.out.printf(
+ "created %d non-validating automatons with %d states and %d transitions in %fs\n",
+ aAutomatons.GetAutomatonCount(),
+ aAutomatons.GetStateCount(),
+ aAutomatons.GetTransitionCount(),
+ (nEndTime-nStartTime)/1000.0);
+
+ nStartTime = System.currentTimeMillis();
+ final SimpleTypeContainer aSimpleTypes = SimpleTypeContainer.Create(
+ maOptimizedSchemaBase,
+ aSimpleTypeLogFile);
+ nEndTime = System.currentTimeMillis();
+ System.out.printf(
+ "created %d simple type descriptions in %fs\n",
+ aSimpleTypes.GetSimpleTypeCount(),
+ (nEndTime-nStartTime)/1000.0);
+
+ new ParserTablesGenerator(
+ aAutomatons,
+ maOptimizedSchemaBase.Namespaces,
+ aSimpleTypes,
+ maOptimizedSchemaBase.AttributeValueToIdMap)
+ .Generate(aParseTableFile);
+ }
+
+
+
+
+ private void WriteValidatingParseTables (
+ final File aAutomatonLogFile,
+ final File aSimpleTypeLogFile,
+ final File aParseTableFile)
+ {
+ long nStartTime = System.currentTimeMillis();
+ final ValidatingCreator aCreator = new ValidatingCreator(maOptimizedSchemaBase, aAutomatonLogFile);
+ FiniteAutomatonContainer aAutomatons = aCreator.Create();
+ long nEndTime = System.currentTimeMillis();
+ System.out.printf(
+ "created %d validating stack automatons with %d states and %d transitions in %fs\n",
+ aAutomatons.GetAutomatonCount(),
+ aAutomatons.GetStateCount(),
+ aAutomatons.GetTransitionCount(),
+ (nEndTime-nStartTime)/1000.0);
+
+
+ nStartTime = System.currentTimeMillis();
+ aAutomatons = aAutomatons.CreateDFAs();
+ nEndTime = System.currentTimeMillis();
+ System.out.printf(
+ "created %d deterministic automatons with %d states and %d transitions in %fs\n",
+ aAutomatons.GetAutomatonCount(),
+ aAutomatons.GetStateCount(),
+ aAutomatons.GetTransitionCount(),
+ (nEndTime-nStartTime)/1000.0);
+
+ nStartTime = System.currentTimeMillis();
+ aAutomatons = aAutomatons.MinimizeDFAs();
+ nEndTime = System.currentTimeMillis();
+ System.out.printf(
+ "minimized automaton in %fs, there are now %d states and %d transitions\n",
+ (nEndTime-nStartTime)/1000.0,
+ aAutomatons.GetStateCount(),
+ aAutomatons.GetTransitionCount());
+
+ nStartTime = System.currentTimeMillis();
+ final SimpleTypeContainer aSimpleTypes = SimpleTypeContainer.Create(
+ maOptimizedSchemaBase,
+ aSimpleTypeLogFile);
+ nEndTime = System.currentTimeMillis();
+ System.out.printf(
+ "created %d simple type descriptions in %fs\n",
+ aSimpleTypes.GetSimpleTypeCount(),
+ (nEndTime-nStartTime)/1000.0);
+
+ new ParserTablesGenerator(
+ aAutomatons,
+ maOptimizedSchemaBase.Namespaces,
+ aSimpleTypes,
+ maOptimizedSchemaBase.AttributeValueToIdMap)
+ .Generate(aParseTableFile);
+ }
+
+
+
+
+ private void WriteHTMLPage (
+ final File aHTMLPageFile)
+ {
+ long nStartTime = System.currentTimeMillis();
+
+ new HtmlGenerator(maOptimizedSchemaBase, maTopLevelSchemas, aHTMLPageFile).Generate();
+
+ long nEndTime = System.currentTimeMillis();
+ System.out.printf(
+ "created HTML page in %fs\n",
+ (nEndTime-nStartTime)/1000.0);
+ }
+
+
+
+
+ private final SchemaBase maSchemaBase;
+ private SchemaBase maOptimizedSchemaBase;
+ private final Map<String,Schema> maTopLevelSchemas;
+ private final Vector<String[]> maMainSchemaFiles;
+ private final Queue<String> maWorkList;
+ private final Vector<Runnable> maOutputOperations;
+ private final Set<String> maSchemaFiles;
+ private int mnTotalLineCount;
+ private int mnTotalByteCount;
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/Test.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/Test.java
new file mode 100644
index 000000000000..5cfb3663aaca
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/Test.java
@@ -0,0 +1,81 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema;
+
+import org.apache.openoffice.ooxml.schema.automaton.HopcroftMinimizer;
+import org.apache.openoffice.ooxml.schema.automaton.State;
+import org.apache.openoffice.ooxml.schema.automaton.StateContainer;
+import org.apache.openoffice.ooxml.schema.automaton.StateContext;
+import org.apache.openoffice.ooxml.schema.automaton.Transition;
+import org.apache.openoffice.ooxml.schema.model.base.QualifiedName;
+
+/** A simple test of the minimization algorithm for DFAs.
+ *
+ * May lead to the use of a testing framework in the future.
+ */
+public class Test
+{
+ public static void main (final String ... aArgumentList)
+ {
+ new Test("S", new String[]{"E"}, new String[][]{
+ {"S", "A", "a"},
+ {"A", "B", "b"},
+ {"A", "C", "b"},
+ {"B", "E", "c"},
+ {"C", "E", "c"},
+ });
+ }
+ private Test (
+ final String sStartState,
+ final String[] aAcceptingStates,
+ final String[][] aTransitions)
+ {
+ final StateContainer aOriginalStateContainer = new StateContainer();
+ final StateContext aStates = new StateContext(
+ aOriginalStateContainer,
+ sStartState);
+ for (final String sAcceptingState : aAcceptingStates)
+ {
+ final State s = aStates.CreateState(sAcceptingState);
+ s.SetIsAccepting();
+ }
+ for (final String[] aTransition : aTransitions)
+ {
+ final State start = aStates.GetOrCreateState(
+ new QualifiedName(aTransition[0]),
+ null);
+ final State end = aStates.GetOrCreateState(
+ new QualifiedName(aTransition[1]),
+ null);
+ final QualifiedName element = new QualifiedName(aTransition[2]);
+ final String type = "T_"+aTransition[2];
+
+ start.AddTransition(new Transition(start, end, element, type));
+ }
+ HopcroftMinimizer.MinimizeDFA (
+ new StateContainer(),
+ aStates,
+ null,
+ null,
+ System.out);
+ }
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/automaton/CreatorBase.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/automaton/CreatorBase.java
new file mode 100644
index 000000000000..7f93ece2d00c
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/automaton/CreatorBase.java
@@ -0,0 +1,124 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.automaton;
+
+import java.io.File;
+import java.util.HashSet;
+import java.util.Set;
+import java.util.Vector;
+
+import org.apache.openoffice.ooxml.schema.iterator.AttributeIterator;
+import org.apache.openoffice.ooxml.schema.iterator.DereferencingNodeIterator;
+import org.apache.openoffice.ooxml.schema.misc.Log;
+import org.apache.openoffice.ooxml.schema.model.attribute.Attribute;
+import org.apache.openoffice.ooxml.schema.model.base.INode;
+import org.apache.openoffice.ooxml.schema.model.schema.SchemaBase;
+
+/** Base class of the creator classes for DFAs and NFAs.
+ */
+public class CreatorBase
+{
+ CreatorBase (
+ final SchemaBase aSchemaBase,
+ final File aLogFile)
+ {
+ maSchemaBase = aSchemaBase;
+ maStateContainer = new StateContainer();
+ maLog = new Log(aLogFile);
+ msLogIndentation = "";
+ maElementSimpleTypes = new HashSet<>();
+ }
+
+
+
+
+ /** Create a very simple automaton:
+ * a) Its start state is also the accepting state.
+ * b) It does not allow any transitions.
+ * c) Its text items have the given simple type.
+ */
+ protected FiniteAutomaton CreateForSimpleType (final INode aSimpleType)
+ {
+ final StateContext aStateContext = new StateContext(
+ maStateContainer,
+ aSimpleType.GetName().GetStateName());
+ aStateContext.GetStartState().SetIsAccepting();
+ aStateContext.GetStartState().SetTextType(aSimpleType);
+ return new FiniteAutomaton(
+ aStateContext,
+ new Vector<Attribute>(),
+ aSimpleType.GetLocation());
+ }
+
+
+
+
+ protected Vector<Attribute> CollectAttributes (final INode aRoot)
+ {
+ final Vector<Attribute> aAttributes = new Vector<>();
+ for (final INode aNode : new DereferencingNodeIterator(aRoot, maSchemaBase, true))
+ for (final Attribute aAttribute : new AttributeIterator(aNode, maSchemaBase))
+ aAttributes.add(aAttribute);
+ return aAttributes;
+ }
+
+
+
+
+ protected void AddSkipTransition (
+ final State aState,
+ final SkipData aSkipData)
+ {
+ aState.AddSkipData(aSkipData);
+
+ if (maLog != null)
+ {
+ maLog.printf("%sskip state %s\n",
+ msLogIndentation,
+ aState.GetFullname());
+ }
+ }
+
+
+
+
+ protected void ProcessAttributes (final INode aNode)
+ {
+ for (final Attribute aAttribute : new AttributeIterator(aNode, maSchemaBase))
+ {
+ maLog.printf("%sattribute %s\n",
+ msLogIndentation,
+ aAttribute.GetName().GetDisplayName());
+ maAttributes.add(aAttribute);
+ }
+ }
+
+
+
+
+ protected final SchemaBase maSchemaBase;
+ protected final StateContainer maStateContainer;
+ protected final Log maLog;
+ protected String msLogIndentation;
+ protected Vector<Attribute> maAttributes;
+ protected final Set<INode> maElementSimpleTypes;
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/automaton/DFACreator.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/automaton/DFACreator.java
new file mode 100644
index 000000000000..c6684acfbb53
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/automaton/DFACreator.java
@@ -0,0 +1,280 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.automaton;
+
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.LinkedList;
+import java.util.Map;
+import java.util.Map.Entry;
+import java.util.Queue;
+import java.util.Set;
+import java.util.TreeMap;
+import java.util.TreeSet;
+import java.util.Vector;
+
+import org.apache.openoffice.ooxml.schema.model.attribute.Attribute;
+import org.apache.openoffice.ooxml.schema.model.base.Location;
+import org.apache.openoffice.ooxml.schema.model.base.QualifiedName;
+
+/** Convert an NFA into a DFA via the powerset construction (also called subset
+ * construction).
+ */
+public class DFACreator
+{
+ /** For a given non-deterministic finite automaton create an equivalent
+ * deterministic finite automaton.
+ */
+ public static FiniteAutomaton CreateDFAforNFA (
+ final StateContainer aDFAStateContainer,
+ final StateContext aNFAStateContext,
+ final Vector<Attribute> aAttributes,
+ final QualifiedName aTypeName,
+ final Location aLocation)
+ {
+ final DFACreator aCreator = new DFACreator(aDFAStateContainer, aNFAStateContext, aTypeName);
+ aCreator.CreateDFAforNFA();
+ return new FiniteAutomaton(
+ aCreator.maDFAStateContext,
+ aAttributes,
+ aLocation);
+ }
+
+
+
+
+ private DFACreator (
+ final StateContainer aDFAStateContainer,
+ final StateContext aNFAStateContext,
+ final QualifiedName aTypeName)
+ {
+ maNFAStateContext = aNFAStateContext;
+
+ // Create the set of state sets where each element corresponds to a
+ // state in the DFA.
+ maNFASetToDFAStateMap = new TreeMap<>();
+ maDFAStateContext = new StateContext(
+ aDFAStateContainer,
+ aTypeName == null
+ ? "<TOP-LEVEL>"
+ : aTypeName.GetStateName());
+
+ maDFATransitions = new HashSet<>();
+ maAcceptingDFAStates = new Vector<>();
+ }
+
+
+
+
+ private void CreateDFAforNFA ()
+ {
+ final State aNFAStartState = maNFAStateContext.GetStartState();
+
+ // Initialize the creation process by adding the epsilon closure of the
+ // original start state to the work list.
+ final StateSet aStartSet = GetEpsilonClosure(new StateSet(aNFAStartState));
+ maNFASetToDFAStateMap.put(aStartSet, maDFAStateContext.GetStartState());
+
+ PropagateStateFlags(aStartSet, maDFAStateContext.GetStartState());
+
+ final Queue<StateSet> aWorklist = new LinkedList<>();
+ aWorklist.add(aStartSet);
+
+ while ( ! aWorklist.isEmpty())
+ {
+ final Collection<StateSet> aAdditionalWorkList = ProcessTransitionFront(
+ aWorklist.poll());
+
+ aWorklist.addAll(aAdditionalWorkList);
+ }
+ }
+
+
+
+
+ private Collection<StateSet> ProcessTransitionFront (
+ final StateSet aSet)
+ {
+ final Set<StateSet> aLocalWorklist = new TreeSet<>();
+
+ // Find all regular transitions that start from any state in the set.
+ final Map<String,Vector<Transition>> aTransitions = GetTransitionFront(aSet);
+
+ // Create new state sets for states that are reachable via the same element and
+ // the following epsilon transitions.
+ for (final Entry<String,Vector<Transition>> aEntry : aTransitions.entrySet())
+ {
+ // Create new state sets for both the end state of the transition.
+ final StateSet aEpsilonClosure = GetEpsilonClosure(GetEndStateSet(aEntry.getValue()));
+
+ // When these are new state sets then add them to the worklist
+ // and the set of sets.
+ State aDFAState = maNFASetToDFAStateMap.get(aEpsilonClosure);
+ if (aDFAState == null)
+ {
+ aLocalWorklist.add(aEpsilonClosure);
+ aDFAState = aEpsilonClosure.CreateStateForStateSet(maDFAStateContext);
+ PropagateStateFlags(aEpsilonClosure, aDFAState);
+ maNFASetToDFAStateMap.put(aEpsilonClosure, aDFAState);
+ if (aDFAState.IsAccepting())
+ maAcceptingDFAStates.add(aDFAState);
+ }
+
+ final State aStartState = maNFASetToDFAStateMap.get(aSet);
+ final QualifiedName aElementName = GetElementName(aEntry.getValue());
+ final String sElementTypeName = GetElementTypeName(aEntry.getValue());
+ assert(aElementName != null);
+ final Transition aTransition = new Transition(
+ aStartState,
+ aDFAState,
+ aElementName,
+ sElementTypeName);
+ aStartState.AddTransition(aTransition);
+ maDFATransitions.add(aTransition);
+ }
+
+ return aLocalWorklist;
+ }
+
+
+
+
+ private QualifiedName GetElementName (final Vector<Transition> aTransitions)
+ {
+ for (final Transition aTransition : aTransitions)
+ return aTransition.GetElementName();
+ return null;
+ }
+
+
+
+
+ private String GetElementTypeName (final Vector<Transition> aTransitions)
+ {
+ for (final Transition aTransition : aTransitions)
+ return aTransition.GetElementTypeName();
+ return null;
+ }
+
+
+
+
+ /** Return the epsilon closure of the given set of states.
+ * The result is the set of all states that are reachable via zero, one or
+ * more epsilon transitions from at least one state in the given set of
+ * states.
+ */
+ private StateSet GetEpsilonClosure ( final StateSet aSet)
+ {
+ final StateSet aClosure = new StateSet(aSet);
+
+ final Queue<State> aWorkList = new LinkedList<>();
+ for (final State aState : aSet.GetStates())
+ aWorkList.add(aState);
+
+ while( ! aWorkList.isEmpty())
+ {
+ final State aState = aWorkList.poll();
+ for (final EpsilonTransition aTransition : aState.GetEpsilonTransitions())
+ {
+ final State aEndState = aTransition.GetEndState();
+ if ( ! aClosure.ContainsState(aEndState))
+ {
+ aClosure.AddState(aEndState);
+ aWorkList.add(aEndState);
+ }
+ }
+ }
+
+ return aClosure;
+ }
+
+
+
+
+ /** Return the list of regular transitions (i.e. not epsilon transitions)
+ * that start from any of the states in the given set.
+ * The returned map is a partition of the transitions according to their
+ * triggering XML element.
+ */
+ private Map<String, Vector<Transition>> GetTransitionFront (final StateSet aSet)
+ {
+ final Map<String, Vector<Transition>> aTransitions = new HashMap<>();
+
+ for (final State aState : aSet.GetStates())
+ for (final Transition aTransition : aState.GetTransitions())
+ {
+ final String sElementName;
+ final QualifiedName aElementName = aTransition.GetElementName();
+ if (aElementName != null)
+ sElementName = aElementName.GetDisplayName();
+ else
+ sElementName = null; // For skip transitions.
+
+ Vector<Transition> aElementTransitions = aTransitions.get(sElementName);
+ if (aElementTransitions == null)
+ {
+ aElementTransitions = new Vector<>();
+ aTransitions.put(sElementName, aElementTransitions);
+ }
+ aElementTransitions.add(aTransition);
+ }
+ return aTransitions;
+ }
+
+
+
+
+ /** Return a state set that contains all end states of all the given transitions.
+ */
+ private StateSet GetEndStateSet (final Iterable<Transition> aTransitions)
+ {
+ final StateSet aStateSet = new StateSet();
+ for (final Transition aTransition : aTransitions)
+ aStateSet.AddState(aTransition.GetEndState());
+ return aStateSet;
+ }
+
+
+
+
+ /** Propagate accepting state flag and skip data.
+ */
+ private void PropagateStateFlags (
+ final StateSet aNFAStateSet,
+ final State aDFAState)
+ {
+ for (final State aNFAState : aNFAStateSet.GetStates())
+ aDFAState.CopyFrom(aNFAState);
+ }
+
+
+
+
+ private final StateContext maNFAStateContext;
+
+ private final Map<StateSet,State> maNFASetToDFAStateMap;
+ private final StateContext maDFAStateContext;
+ private final Set<Transition> maDFATransitions;
+ private final Vector<State> maAcceptingDFAStates;
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/automaton/EpsilonTransition.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/automaton/EpsilonTransition.java
new file mode 100644
index 000000000000..75dca97ed6eb
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/automaton/EpsilonTransition.java
@@ -0,0 +1,70 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.automaton;
+
+/** Transition from one state to another that does not consume an input token.
+ *
+ * Use in the process of creating a validating parser.
+ */
+public class EpsilonTransition
+{
+ EpsilonTransition (
+ final State aStartState,
+ final State aEndState)
+ {
+ maStartState = aStartState;
+ maEndState = aEndState;
+ }
+
+
+
+
+ public State GetStartState ()
+ {
+ return maStartState;
+ }
+
+
+
+
+ public State GetEndState ()
+ {
+ return maEndState;
+ }
+
+
+
+
+ @Override
+ public String toString ()
+ {
+ return String.format("%s -> %s",
+ maStartState.GetFullname(),
+ maEndState.GetFullname());
+ }
+
+
+
+
+ private final State maStartState;
+ private final State maEndState;
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/automaton/FiniteAutomaton.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/automaton/FiniteAutomaton.java
new file mode 100644
index 000000000000..16bf2f737c8d
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/automaton/FiniteAutomaton.java
@@ -0,0 +1,169 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.automaton;
+
+import java.util.Vector;
+
+import org.apache.openoffice.ooxml.schema.model.attribute.Attribute;
+import org.apache.openoffice.ooxml.schema.model.base.Location;
+import org.apache.openoffice.ooxml.schema.model.base.QualifiedName;
+
+
+/** Represents a DFA (deterministic FA) or a NFA (non-deterministic FA).
+ * There is one automaton for each complex type and one for the top level elements.
+ * Transitions correspond to 'element' elements in the schema or a start tag in
+ * the input file. During parsing the current automaton is pushed on a stack
+ * and the automaton that represents the complex type associated with the
+ * starting element is made the current automaton. An end tag pops an automaton
+ * from the stack and replaces the current automaton with it.
+ */
+public class FiniteAutomaton
+{
+ FiniteAutomaton (
+ final StateContext aContext,
+ final Vector<Attribute> aAttributes,
+ final Location aLocation)
+ {
+ maStateContext = aContext;
+ maAttributes = aAttributes!=null
+ ? aAttributes
+ : new Vector<Attribute>();
+ maLocation = aLocation;
+ }
+
+
+
+
+ public int GetStateCount ()
+ {
+ return maStateContext.GetStateCount();
+ }
+
+
+
+
+ public Iterable<State> GetStates()
+ {
+ return maStateContext.GetStates();
+ }
+
+
+
+
+ public Iterable<State> GetStatesSorted ()
+ {
+ return maStateContext.GetStatesSorted();
+ }
+
+
+
+
+ public State GetStartState ()
+ {
+ return maStateContext.GetStartState();
+ }
+
+
+
+
+ public Iterable<State> GetAcceptingStates ()
+ {
+ return maStateContext.GetAcceptingStates();
+ }
+
+
+
+
+ public FiniteAutomaton CreateDFA (
+ final StateContainer aDFAContainer,
+ final QualifiedName aTypeName)
+ {
+ return DFACreator.CreateDFAforNFA(
+ aDFAContainer,
+ maStateContext,
+ maAttributes,
+ aTypeName,
+ maLocation);
+ }
+
+
+
+
+ public StateContext GetStateContext()
+ {
+ return maStateContext;
+ }
+
+
+
+
+ public Iterable<Transition> GetTransitions ()
+ {
+ final Vector<Transition> aTransitions = new Vector<>();
+ for (final State aState : maStateContext.GetStates())
+ for (final Transition aTransition : aState.GetTransitions())
+ aTransitions.add(aTransition);
+ return aTransitions;
+ }
+
+
+
+
+ public int GetTransitionCount()
+ {
+ int nTransitionCount = 0;
+ for (final State aState : maStateContext.GetStates())
+ nTransitionCount += aState.GetTransitionCount();
+ return nTransitionCount;
+ }
+
+
+
+
+ public String GetTypeName ()
+ {
+ return maStateContext.GetStartState().GetFullname();
+ }
+
+
+
+
+ public Location GetLocation ()
+ {
+ return maLocation;
+ }
+
+
+
+
+ public Vector<Attribute> GetAttributes ()
+ {
+ return maAttributes;
+ }
+
+
+
+
+ private final StateContext maStateContext;
+ private final Vector<Attribute> maAttributes;
+ private final Location maLocation;
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/automaton/FiniteAutomatonContainer.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/automaton/FiniteAutomatonContainer.java
new file mode 100644
index 000000000000..e76b7e8614e7
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/automaton/FiniteAutomatonContainer.java
@@ -0,0 +1,166 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.automaton;
+
+import java.io.File;
+import java.io.FileOutputStream;
+import java.io.PrintStream;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Map.Entry;
+import java.util.Vector;
+
+import org.apache.openoffice.ooxml.schema.model.base.QualifiedName;
+
+/** As there is one FA for each complex type and one for the top level elements,
+ * this container represents the whole set of schemas.
+ */
+public class FiniteAutomatonContainer
+{
+ FiniteAutomatonContainer (final StateContainer aStateContainer)
+ {
+ maComplexTypeNameToAutomatonMap = new HashMap<>();
+ }
+
+
+
+
+ public void AddAutomaton (
+ final QualifiedName aElementName,
+ final FiniteAutomaton aAutomaton)
+ {
+ maComplexTypeNameToAutomatonMap.put(aElementName, aAutomaton);
+ }
+
+
+
+
+ public Iterable<FiniteAutomaton> GetAutomatons()
+ {
+ return maComplexTypeNameToAutomatonMap.values();
+ }
+
+
+
+
+ public int GetAutomatonCount ()
+ {
+ return maComplexTypeNameToAutomatonMap.size();
+ }
+
+
+
+
+ public Iterable<State> GetStates()
+ {
+ final Vector<State> aStates = new Vector<>();
+ for (final FiniteAutomaton aAutomaton : maComplexTypeNameToAutomatonMap.values())
+ for (final State aState : aAutomaton.GetStates())
+ aStates.add(aState);
+ return aStates;
+ }
+
+
+
+
+ public int GetStateCount()
+ {
+ int nStateCount = 0;
+ for (final FiniteAutomaton aAutomaton : maComplexTypeNameToAutomatonMap.values())
+ nStateCount += aAutomaton.GetStateCount();
+ return nStateCount;
+ }
+
+
+
+
+ public int GetTransitionCount ()
+ {
+ int nTransitionCount = 0;
+ for (final FiniteAutomaton aAutomaton : maComplexTypeNameToAutomatonMap.values())
+ nTransitionCount += aAutomaton.GetTransitionCount();
+ return nTransitionCount;
+ }
+
+
+
+
+ public FiniteAutomatonContainer CreateDFAs ()
+ {
+ final StateContainer aDFAStateContainer = new StateContainer();
+ final FiniteAutomatonContainer aDFAs = new FiniteAutomatonContainer(aDFAStateContainer);
+ for (final Entry<QualifiedName, FiniteAutomaton> aEntry : maComplexTypeNameToAutomatonMap.entrySet())
+ {
+ aDFAs.AddAutomaton(
+ aEntry.getKey(),
+ aEntry.getValue().CreateDFA(
+ aDFAStateContainer,
+ aEntry.getKey()));
+ }
+ return aDFAs;
+ }
+
+
+
+
+ public FiniteAutomatonContainer MinimizeDFAs ()
+ {
+ PrintStream aLog = null;
+ try
+ {
+ aLog = new PrintStream(new FileOutputStream(new File("/tmp/minimization.log")));
+ }
+ catch(Exception e)
+ {
+ e.printStackTrace();
+ return null;
+ }
+
+ final StateContainer aNewStateContainer = new StateContainer();
+ final FiniteAutomatonContainer aDFAs = new FiniteAutomatonContainer(aNewStateContainer);
+ for (final Entry<QualifiedName, FiniteAutomaton> aEntry : maComplexTypeNameToAutomatonMap.entrySet())
+ {
+ aDFAs.AddAutomaton(
+ aEntry.getKey(),
+ HopcroftMinimizer.MinimizeDFA(
+ aNewStateContainer,
+ aEntry.getValue().GetStateContext(),
+ aEntry.getValue().GetAttributes(),
+ aEntry.getValue().GetLocation(),
+ aLog));
+ }
+ return aDFAs;
+ }
+
+
+
+
+ public FiniteAutomaton GetTopLevelAutomaton ()
+ {
+ return maComplexTypeNameToAutomatonMap.get(null);
+ }
+
+
+
+
+ private final Map<QualifiedName, FiniteAutomaton> maComplexTypeNameToAutomatonMap;
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/automaton/HopcroftMinimizer.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/automaton/HopcroftMinimizer.java
new file mode 100644
index 000000000000..9177ccc707ae
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/automaton/HopcroftMinimizer.java
@@ -0,0 +1,380 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.automaton;
+
+import java.io.PrintStream;
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.Map;
+import java.util.Map.Entry;
+import java.util.Set;
+import java.util.TreeMap;
+import java.util.TreeSet;
+import java.util.Vector;
+
+import org.apache.openoffice.ooxml.schema.model.attribute.Attribute;
+import org.apache.openoffice.ooxml.schema.model.base.Location;
+import org.apache.openoffice.ooxml.schema.model.base.QualifiedName;
+
+/** Minimize an DFA with respect to its number of states.
+ * This is most important for the use of the 'all' element in the OOXML
+ * specification which leads to a lot of additional states and transitions.
+ */
+public class HopcroftMinimizer
+{
+ /** Create a DFA that is equivalent to a given DFA but has the minimal
+ * number of states.
+ */
+ public static FiniteAutomaton MinimizeDFA (
+ final StateContainer aNewStateContainer,
+ final StateContext aOriginalStates,
+ final Vector<Attribute> aAttributes,
+ final Location aLocation,
+ final PrintStream aLog)
+ {
+ if (aLog != null)
+ {
+ aLog.printf("minimizing %d states and %d transitions\n",
+ aOriginalStates.GetStateCount(),
+ aOriginalStates.GetTransitionCount());
+ DisplayStates(aOriginalStates, aLog);
+ }
+
+ TreeSet<StateSet> aT = new TreeSet<>();
+ TreeSet<StateSet> aP = new TreeSet<>();
+ Map<State,StateSet> aTMap = new HashMap<>();
+ Map<State,StateSet> aPMap = new HashMap<>();
+ InitializeMap(aT, aTMap, aOriginalStates.GetStates());
+
+ // Split partitions until there is nothing else to do.
+ while ( ! AreSetsOfStateSetsEqual(aP, aT))
+ {
+ if (aLog != null)
+ aLog.printf("T has %d members\n", aT.size());
+
+ aP = aT;
+ aPMap = aTMap;
+ aT = new TreeSet<>();
+ aTMap = new HashMap<>();
+
+ for (final StateSet aSet : aP)
+ {
+ final Iterable<StateSet> aParts = Split(aSet, aP, aPMap);
+ if (aParts == null)
+ {
+ // No split necessary.
+ assert( ! aSet.IsEmpty());
+ aT.add(aSet);
+ for (final State aState : aSet.GetStates())
+ aTMap.put(aState, aSet);
+ }
+ else
+ {
+ for (final StateSet aPart : aParts)
+ {
+ assert( ! aPart.IsEmpty());
+ aT.add(aPart);
+
+ for (final State aState : aPart.GetStates())
+ aTMap.put(aState, aPart);
+ }
+ }
+ }
+ }
+
+ // Create new states.
+ final StateContext aMinimizedStates = CreateNewStates(
+ aP,
+ aPMap,
+ aNewStateContainer,
+ aOriginalStates);
+
+ if (aLog != null)
+ {
+ aLog.printf("to %d states and %d transitions\n",
+ aMinimizedStates.GetStateCount(),
+ aMinimizedStates.GetTransitionCount());
+ DisplayStates(aMinimizedStates, aLog);
+ for (final StateSet aSet : aT)
+ aLog.printf(" %s\n", aSet.toString());
+ }
+
+ // Create and return the new minimized automaton.
+ return new FiniteAutomaton(
+ aMinimizedStates,
+ aAttributes,
+ aLocation);
+ }
+
+
+
+
+ /** We start with two sets. One contains all start states (in our case
+ * just one), the other contains all other states.
+ */
+ private static void InitializeMap (
+ final Set<StateSet> aSet,
+ final Map<State,StateSet> aMap,
+ final Iterable<State> aStates)
+ {
+ final StateSet aAcceptingStates = new StateSet();
+ final StateSet aNonAcceptingStates = new StateSet();
+ for (final State aState : aStates)
+ {
+ if (aState.IsAccepting())
+ {
+ aAcceptingStates.AddState(aState);
+ aMap.put(aState, aAcceptingStates);
+ }
+ else
+ {
+ aNonAcceptingStates.AddState(aState);
+ aMap.put(aState, aNonAcceptingStates);
+ }
+ }
+ if (aAcceptingStates.IsEmpty())
+ throw new RuntimeException("there should be at least one accepting state");
+ aSet.add(aAcceptingStates);
+ if ( ! aNonAcceptingStates.IsEmpty())
+ aSet.add(aNonAcceptingStates);
+ }
+
+
+
+
+ private static Iterable<StateSet> Split (
+ final StateSet aSet,
+ final Set<StateSet> aT,
+ final Map<State,StateSet> aTMap)
+ {
+ if (aSet.GetStateCount() == 1)
+ return null;
+
+ final Set<QualifiedName> aElements = CollectElementNames(aSet);
+ for (final QualifiedName aElementName : aElements)
+ {
+ final Collection<StateSet> aPartitions = Split(aSet, aT, aTMap, aElementName);
+ if (aPartitions == null)
+ continue;
+ if (aPartitions.size() > 1)
+ return aPartitions;
+ }
+ return null;
+ }
+
+
+
+
+ /** Create a partition of the given set of states according to their
+ * transitions.
+ * All states whose transitions point to the same state set go in the same
+ * partition.
+ */
+ private static Collection<StateSet> Split (
+ final StateSet aSet,
+ final Set<StateSet> aT,
+ final Map<State,StateSet> aTMap,
+ final QualifiedName aElementName)
+ {
+ // Set up a forward map that does two steps:
+ // from s via transition regarding aElementName to s'
+ // from s' to a state set under aTMap(s).
+ final Map<State,StateSet> aForwardMap = new HashMap<>();
+ for (final State aState : aSet.GetStates())
+ {
+ final Transition aTransition = GetTransition(aState, aElementName);
+ if (aTransition == null)
+ aForwardMap.put(aState, null);
+ else
+ aForwardMap.put(aState, aTMap.get(aTransition.GetEndState()));
+ }
+
+ // Create the partion of aSet according to aForwardMap. All states that map
+ // to the same element go into the same state set.
+ if (aForwardMap.size() == 1)
+ {
+ // No split necessary.
+ return null;
+ }
+ else
+ {
+ // Set up a reverse map that maps that maps the values in aForwardMap to
+ // new state sets whose contents are the keys in aForwardMap.
+ final Map<StateSet,StateSet> aReverseMap = new HashMap<>();
+ for (final Entry<State,StateSet> aEntry : aForwardMap.entrySet())
+ {
+ StateSet aPartitionSet = aReverseMap.get(aEntry.getValue());
+ if (aPartitionSet == null)
+ {
+ aPartitionSet = new StateSet();
+ aReverseMap.put(aEntry.getValue(), aPartitionSet);
+ }
+ aPartitionSet.AddState(aEntry.getKey());
+ }
+ return aReverseMap.values();
+ }
+ }
+
+
+
+
+ private static Transition GetTransition (
+ final State aState,
+ final QualifiedName aElementName)
+ {
+ Transition aTransition = null;
+ for (final Transition aCandidate : aState.GetTransitions())
+ if (aCandidate.GetElementName().compareTo(aElementName) == 0)
+ {
+ assert(aTransition==null);
+ aTransition = aCandidate;
+ // break;
+ }
+ return aTransition;
+ }
+
+
+
+
+ private static Set<QualifiedName> CollectElementNames (final StateSet aSet)
+ {
+ final Set<QualifiedName> aNames = new TreeSet<>();
+ for (final State aState : aSet.GetStates())
+ for (final Transition aTransition : aState.GetTransitions())
+ aNames.add(aTransition.GetElementName());
+
+ return aNames;
+ }
+
+
+
+
+ private static boolean AreSetsOfStateSetsEqual (
+ final TreeSet<StateSet> aSetOfSetsA,
+ final TreeSet<StateSet> aSetOfSetsB)
+ {
+ if (aSetOfSetsA.size() != aSetOfSetsB.size())
+ return false;
+ else
+ {
+ final Iterator<StateSet> aSetIteratorA = aSetOfSetsA.iterator();
+ final Iterator<StateSet> aSetIteratorB = aSetOfSetsB.iterator();
+ while (aSetIteratorA.hasNext() && aSetIteratorB.hasNext())
+ {
+ if (aSetIteratorA.next().compareTo(aSetIteratorB.next()) != 0)
+ return false;
+ }
+ return true;
+ }
+ }
+
+
+
+
+ private static StateContext CreateNewStates (
+ final TreeSet<StateSet> aP,
+ final Map<State,StateSet> aPMap,
+ final StateContainer aNewStateContainer,
+ final StateContext aOriginalStates)
+ {
+ final StateContext aMinimizedStates = new StateContext(
+ aNewStateContainer,
+ aOriginalStates.GetStartState().GetFullname());
+
+ // Create the new states.
+ final Map<State,State> aOldStateToNewStateMap = new TreeMap<>();
+ for (final StateSet aSet : aP)
+ {
+ State aNewState = null;
+ for (final State aOldState : aSet.GetStates())
+ {
+ if (aNewState == null)
+ aNewState = aOldState.Clone(aMinimizedStates);
+ aOldStateToNewStateMap.put(aOldState, aNewState);
+ }
+ }
+
+ // Create the new transitions.
+ for (final StateSet aSet : aP)
+ {
+ final State aOldStartState = aSet.GetStates().iterator().next();
+ final State aNewStartState = aOldStateToNewStateMap.get(aOldStartState);
+
+ for (final Transition aTransition : aOldStartState.GetTransitions())
+ {
+ final State aOldEndState = aTransition.GetEndState();
+ final State aNewEndState = aOldStateToNewStateMap.get(aOldEndState);
+
+ // Check if the transition already exists.
+ if (HasTransition(aNewStartState, aTransition.GetElementName()))
+ continue;
+
+ aNewStartState.AddTransition(
+ new Transition(
+ aNewStartState,
+ aNewEndState,
+ aTransition.GetElementName(),
+ aTransition.GetElementTypeName()));
+ }
+ }
+
+ // Transfer skip data and accepting flags.
+ for (final State aOldState : aOriginalStates.GetStates())
+ {
+ final State aNewState = aOldStateToNewStateMap.get(aOldState);
+ aNewState.CopyFrom(aOldState);
+ }
+ return aMinimizedStates;
+ }
+
+
+
+
+ private static boolean HasTransition (
+ final State aState,
+ final QualifiedName aElementName)
+ {
+ for (final Transition aTransition : aState.GetTransitions())
+ if (aTransition.GetElementName().compareTo(aElementName) == 0)
+ return true;
+ return false;
+ }
+
+
+
+
+ private static void DisplayStates (
+ final StateContext aStates,
+ final PrintStream aLog)
+ {
+ for (final State aState : aStates.GetStates())
+ {
+ aLog.printf(" %s %s\n", aState.GetFullname(),
+ aState.IsAccepting() ? "is accepting" : "");
+ for (final Transition aTransition : aState.GetTransitions())
+ aLog.printf(" -> %s via %s\n",
+ aTransition.GetEndState().GetFullname(),
+ aTransition.GetElementName().GetStateName());
+ }
+ }
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/automaton/NonValidatingCreator.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/automaton/NonValidatingCreator.java
new file mode 100644
index 000000000000..f96e3237a431
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/automaton/NonValidatingCreator.java
@@ -0,0 +1,212 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.automaton;
+
+import java.io.File;
+import java.util.Vector;
+
+import org.apache.openoffice.ooxml.schema.iterator.DereferencingNodeIterator;
+import org.apache.openoffice.ooxml.schema.model.base.INode;
+import org.apache.openoffice.ooxml.schema.model.base.NodeType;
+import org.apache.openoffice.ooxml.schema.model.complex.Any;
+import org.apache.openoffice.ooxml.schema.model.complex.ComplexType;
+import org.apache.openoffice.ooxml.schema.model.complex.Element;
+import org.apache.openoffice.ooxml.schema.model.schema.Schema;
+import org.apache.openoffice.ooxml.schema.model.schema.SchemaBase;
+
+/** Create a set of stack automatons for a given set of schemas.
+ * Creates one automaton for each complex type and one for the top level elements.
+ *
+ * Input files but are not validated to conform to the schemas.
+ */
+public class NonValidatingCreator
+ extends CreatorBase
+{
+ public NonValidatingCreator (
+ final SchemaBase aSchemaBase,
+ final File aLogFile)
+ {
+ super(aSchemaBase, aLogFile);
+ }
+
+
+
+
+ public FiniteAutomatonContainer Create (
+ final Iterable<Schema> aTopLevelSchemas)
+ {
+ final FiniteAutomatonContainer aAutomatons = new FiniteAutomatonContainer(maStateContainer);
+
+ // Create a single automaton for all top level elements.
+ aAutomatons.AddAutomaton(
+ null,
+ CreateForTopLevelElements(aTopLevelSchemas));
+
+ // Create one automaton for each complex type.
+ for (final ComplexType aComplexType : maSchemaBase.ComplexTypes.GetSorted())
+ aAutomatons.AddAutomaton(
+ aComplexType.GetName(),
+ CreateForComplexType(aComplexType));
+
+ // Create one automaton for each simple type that is referenced by an element.
+ for (final INode aSimpleType : maElementSimpleTypes)
+ aAutomatons.AddAutomaton(
+ aSimpleType.GetName(),
+ CreateForSimpleType(aSimpleType));
+
+ maLog.Close();
+
+ return aAutomatons;
+ }
+
+
+
+
+ private FiniteAutomaton CreateForTopLevelElements (
+ final Iterable<Schema> aTopLevelSchemas)
+ {
+ maLog.AddComment("top level elements");
+ maLog.StartBlock();
+ final String sTypeName = "<top-level>";
+ final StateContext aStateContext = new StateContext(
+ maStateContainer,
+ sTypeName);
+ final State aStartState = aStateContext.GetStartState();
+ final State aEndState = aStateContext.CreateEndState();
+
+ // top level elements
+ for (final Schema aSchema : aTopLevelSchemas)
+ {
+ maLog.AddComment("schema %s", aSchema.GetShortName());
+ maLog.StartBlock();
+ for (final Element aElement : aSchema.TopLevelElements.GetSorted())
+ {
+ maLog.AddComment("Element: on '%s' go from %s to %s via %s",
+ aElement.GetElementName().GetDisplayName(),
+ aStartState.GetFullname(),
+ aEndState.GetFullname(),
+ aElement.GetTypeName().GetStateName());
+
+ aStateContext.GetStartState().AddTransition(
+ new Transition(
+ aStartState,
+ aEndState,
+ aElement.GetElementName(),
+ aElement.GetTypeName().GetStateName()));
+ }
+ maLog.EndBlock();
+ }
+ maLog.EndBlock();
+
+ return new FiniteAutomaton(aStateContext, null, null);
+ }
+
+
+
+
+ private FiniteAutomaton CreateForComplexType (final ComplexType aComplexType)
+ {
+ maLog.printf("\n");
+ maLog.AddComment ("Complex Type %s defined in %s.",
+ aComplexType.GetName().GetDisplayName(),
+ aComplexType.GetLocation());
+ maLog.StartBlock();
+
+ final StateContext aStateContext = new StateContext(
+ maStateContainer,
+ aComplexType.GetName().GetStateName());
+
+ for (final Element aElement : CollectElements(aComplexType))
+ {
+ maLog.AddComment("Element: on '%s' go from %s to %s via %s",
+ aElement.GetElementName().GetDisplayName(),
+ aStateContext.GetStartState().GetFullname(),
+ aStateContext.GetStartState().GetFullname(),
+ aElement.GetTypeName().GetStateName());
+
+ aStateContext.GetStartState().AddTransition(
+ new Transition(
+ aStateContext.GetStartState(),
+ aStateContext.GetStartState(),
+ aElement.GetElementName(),
+ aElement.GetTypeName().GetStateName()));
+
+ // For elements whose type is a simple type we have to remember that
+ // simple type for later (and then create an NFA for it.)
+ final INode aSimpleType = maSchemaBase.GetSimpleTypeForName(
+ aElement.GetTypeName());
+ if (aSimpleType != null)
+ maElementSimpleTypes.add(aSimpleType);
+ }
+
+ for (final Any aAny : CollectAnys(aComplexType))
+ {
+ AddSkipTransition(
+ aStateContext.GetStartState(),
+ new SkipData(
+ aAny.GetProcessContentsFlag(),
+ aAny.GetNamespaces()));
+ }
+
+ // Collect all attributes.
+ maAttributes = new Vector<>();
+ for (final INode aNode : new DereferencingNodeIterator(aComplexType, maSchemaBase, true))
+ ProcessAttributes(aNode);
+
+ aStateContext.GetStartState().SetIsAccepting();
+
+ maLog.EndBlock();
+
+ return new FiniteAutomaton(aStateContext, maAttributes, aComplexType.GetLocation());
+ }
+
+
+
+
+ /** Collect all elements inside the type tree that is rooted in the given
+ * complex type.
+ */
+ private Vector<Element> CollectElements (final ComplexType aType)
+ {
+ final Vector<Element> aElements = new Vector<>();
+ for (final INode aNode : new DereferencingNodeIterator(aType, maSchemaBase, false))
+ {
+ if (aNode.GetNodeType() == NodeType.Element)
+ aElements.add((Element)aNode);
+ }
+ return aElements;
+ }
+
+
+
+
+ private Vector<Any> CollectAnys (final ComplexType aType)
+ {
+ final Vector<Any> aAnys = new Vector<>();
+ for (final INode aNode : new DereferencingNodeIterator(aType, maSchemaBase, false))
+ {
+ if (aNode.GetNodeType() == NodeType.Any)
+ aAnys.add((Any)aNode);
+ }
+ return aAnys;
+ }
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/automaton/SkipData.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/automaton/SkipData.java
new file mode 100644
index 000000000000..f5c051caad4d
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/automaton/SkipData.java
@@ -0,0 +1,54 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.automaton;
+
+import org.apache.openoffice.ooxml.schema.model.complex.Any;
+
+/** Description of optional content that can be skipped when not supported.
+ * Corresponds to the 'any' schema element.
+ */
+public class SkipData
+{
+ public SkipData (
+ final Any.ProcessContents aProcessContents,
+ final String[] aNamespaces)
+ {
+ maProcessContents = aProcessContents;
+ maNamespaces = aNamespaces;
+ }
+
+
+
+
+ public SkipData Clone (final State aState)
+ {
+ return new SkipData(
+ maProcessContents,
+ maNamespaces);
+ }
+
+
+
+
+ final Any.ProcessContents maProcessContents;
+ final String[] maNamespaces;
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/automaton/State.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/automaton/State.java
new file mode 100644
index 000000000000..7d9982c0e5c2
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/automaton/State.java
@@ -0,0 +1,263 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.automaton;
+
+import java.util.Vector;
+
+import org.apache.openoffice.ooxml.schema.model.base.INode;
+import org.apache.openoffice.ooxml.schema.model.base.QualifiedName;
+
+/** Each complex type is represented by a State object (primary state).
+ * For a validating parser additional states are created for sequences, choices, etc. (secondary states).
+ * Secondary states have the same basename as primary states and suffixes to make their names unique.
+ * Full names of states contain both the basename and the suffix.
+ */
+public class State
+ implements Comparable<State>
+{
+ /** Create a new state from a basename and an optional suffix.
+ *
+ * Don't call this constructor directly. Use methods in StateContext instead.
+ * They ensure that states are unique per context.
+ */
+ State (
+ final QualifiedName aBasename,
+ final String sSuffix)
+ {
+ maBasename = aBasename;
+ msSuffix = sSuffix;
+ msFullname = GetStateName(aBasename, msSuffix);
+ maTransitions = new Vector<>();
+ maEpsilonTransitions = new Vector<>();
+ maSkipData = new Vector<>();
+ mbIsAccepting = false;
+ maTextType = null;
+ }
+
+
+
+
+ State Clone (final StateContext aContext)
+ {
+ return aContext.GetOrCreateState(maBasename, msSuffix);
+ }
+
+
+
+
+ static String GetStateName (
+ final QualifiedName aBasename,
+ final String sSuffix)
+ {
+ if (sSuffix == null)
+ return aBasename.GetStateName();
+ else
+ return aBasename.GetStateName()+"_"+sSuffix;
+ }
+
+
+
+
+ public String GetFullname ()
+ {
+ return msFullname;
+ }
+
+
+
+
+ public QualifiedName GetBasename ()
+ {
+ return maBasename;
+ }
+
+
+
+
+ /** Return a qualified name that contains the suffix.
+ * This is typically only used for sorting type names.
+ */
+ public QualifiedName GetQualifiedName ()
+ {
+ return new QualifiedName(
+ maBasename.GetNamespacePrefix(),
+ maBasename.GetNamespaceURI(),
+ msSuffix != null
+ ? maBasename.GetLocalPart() + "_" + msSuffix
+ : maBasename.GetLocalPart());
+ }
+
+
+
+
+ public String GetSuffix ()
+ {
+ return msSuffix;
+ }
+
+
+
+
+ public void AddTransition (final Transition aTransition)
+ {
+ assert(this == aTransition.GetStartState());
+ maTransitions.add(aTransition);
+ }
+
+
+
+
+ public Iterable<Transition> GetTransitions()
+ {
+ return maTransitions;
+ }
+
+
+
+
+ public int GetTransitionCount ()
+ {
+ return maTransitions.size();
+ }
+
+
+
+
+ public void AddEpsilonTransition (final EpsilonTransition aTransition)
+ {
+ assert(this == aTransition.GetStartState());
+ maEpsilonTransitions.add(aTransition);
+ }
+
+
+
+
+ public Iterable<EpsilonTransition> GetEpsilonTransitions()
+ {
+ return maEpsilonTransitions;
+ }
+
+
+
+
+ public void AddSkipData (final SkipData aSkipData)
+ {
+ maSkipData.add(aSkipData);
+ }
+
+
+
+
+ public Iterable<SkipData> GetSkipData ()
+ {
+ return maSkipData;
+ }
+
+
+
+
+ public void SetIsAccepting ()
+ {
+ mbIsAccepting = true;
+ }
+
+
+
+
+ public boolean IsAccepting ()
+ {
+ return mbIsAccepting;
+ }
+
+
+
+
+ /** The basename is the primary sort key. The suffix is the secondary key.
+ */
+ @Override
+ public int compareTo (final State aOther)
+ {
+ int nResult = maBasename.compareTo(aOther.maBasename);
+ if (nResult == 0)
+ {
+ if (msSuffix==null && aOther.msSuffix==null)
+ nResult = 0;
+ else if (msSuffix!=null && aOther.msSuffix!=null)
+ nResult = msSuffix.compareTo(aOther.msSuffix);
+ else if (msSuffix==null)
+ nResult = -1;
+ else
+ nResult = +1;
+ }
+ return nResult;
+ }
+
+
+
+
+ public void SetTextType (final INode aTextType)
+ {
+ assert(maTextType==null);
+ maTextType = aTextType;
+ }
+
+
+
+
+ public INode GetTextType ()
+ {
+ return maTextType;
+ }
+
+
+
+
+ public void CopyFrom (final State aOther)
+ {
+ if (aOther.IsAccepting())
+ SetIsAccepting();
+ for (final SkipData aSkipData : aOther.GetSkipData())
+ AddSkipData(aSkipData.Clone(this));
+ SetTextType(aOther.GetTextType());
+ }
+
+
+
+
+ @Override
+ public String toString ()
+ {
+ return msFullname;
+ }
+
+
+
+
+ private final QualifiedName maBasename;
+ private final String msSuffix;
+ private final String msFullname;
+ private final Vector<Transition> maTransitions;
+ private final Vector<EpsilonTransition> maEpsilonTransitions;
+ private final Vector<SkipData> maSkipData;
+ private boolean mbIsAccepting;
+ private INode maTextType;
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/automaton/StateContainer.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/automaton/StateContainer.java
new file mode 100644
index 000000000000..2a8df93c96d5
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/automaton/StateContainer.java
@@ -0,0 +1,73 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.automaton;
+
+import java.util.HashMap;
+import java.util.Map;
+
+/** A container of states that spans all StateContext objects that represent each
+ * a single complex type.
+ */
+public class StateContainer
+{
+ public StateContainer ()
+ {
+ maNameToStateMap = new HashMap<>();
+ }
+
+
+
+
+ boolean HasState (final String sFullname)
+ {
+ return maNameToStateMap.containsKey(sFullname);
+ }
+
+
+
+
+ State GetStateForFullname (final String sFullname)
+ {
+ return maNameToStateMap.get(sFullname);
+ }
+
+
+
+
+ public void AddState (final State aState)
+ {
+ maNameToStateMap.put(aState.GetFullname(), aState);
+ }
+
+
+
+
+ public void RemoveState (final State aState)
+ {
+ maNameToStateMap.remove(aState);
+ }
+
+
+
+
+ private final Map<String,State> maNameToStateMap;
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/automaton/StateContext.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/automaton/StateContext.java
new file mode 100644
index 000000000000..f2d877f2bdc1
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/automaton/StateContext.java
@@ -0,0 +1,269 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.automaton;
+
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Map;
+import java.util.Set;
+import java.util.TreeSet;
+import java.util.Vector;
+
+import org.apache.openoffice.ooxml.schema.model.base.QualifiedName;
+
+/** Represents the set of states of a single complex type.
+ *
+ * Because states have to be unique, the state container is an object shared
+ * by all StateContext objects.
+ *
+ * There is a single start state but there can be more than one accepting state.
+ */
+public class StateContext
+{
+ public StateContext (
+ final StateContainer aStateContainer,
+ final String sBaseStateName)
+ {
+ maStateContainer = aStateContainer;
+ maStates = new HashSet<>();
+ maStartState = GetOrCreateState(new QualifiedName(null, null, sBaseStateName), null);
+ maDisambiguateCounters = new HashMap<>();
+ }
+
+
+
+
+ public State CreateState (
+ final QualifiedName aBasename,
+ final String sSuffix)
+ {
+ final String sFullname = State.GetStateName(aBasename, sSuffix);
+ if (HasState(sFullname))
+ throw new RuntimeException("state with name '"+sFullname+"' can not be created because it already exists");
+ final State aState = new State(aBasename, sSuffix);
+ AddState(aState);
+ return aState;
+ }
+
+
+
+ public State CreateState (final String sBasename)
+ {
+ return CreateState(new QualifiedName(sBasename), null);
+ }
+
+
+
+
+ public State CreateState (
+ final State aState,
+ final String sSuffix)
+ {
+ if (sSuffix==null && aState.GetSuffix()==null)
+ return CreateState(aState.GetBasename(), null);
+ else if (sSuffix!=null && aState.GetSuffix()!=null)
+ return CreateState(aState.GetBasename(), aState.GetSuffix()+"_"+sSuffix);
+ else if (sSuffix != null)
+ return CreateState(aState.GetBasename(), sSuffix);
+ else
+ return CreateState(aState.GetBasename(), aState.GetSuffix());
+ }
+
+
+
+
+ public State GetState (
+ final QualifiedName aBasename,
+ final String sSuffix)
+ {
+ return maStateContainer.GetStateForFullname(State.GetStateName(aBasename, sSuffix));
+ }
+
+
+
+
+ public State GetOrCreateState (
+ final QualifiedName aBasename,
+ final String sSuffix)
+ {
+ State aState = GetState(aBasename, sSuffix);
+ if (aState == null)
+ {
+ aState = CreateState(aBasename, sSuffix);
+ AddState(aState);
+ }
+ return aState;
+ }
+
+
+
+
+ public State GetStartStateForTypeName (final QualifiedName aName)
+ {
+ return GetOrCreateState(aName, null);
+ }
+
+
+
+
+ public State CreateEndState ()
+ {
+ final State aEndState = CreateState(
+ maStartState.GetBasename(),
+ "end");
+ aEndState.SetIsAccepting();
+ return aEndState;
+ }
+
+
+
+ /** Some algorithms can not easily produce unique suffixes.
+ * Append an integer to the given suffix so that it becomes unique.
+ */
+ public String GetUnambiguousSuffix (final QualifiedName aBasename, final String sSuffix)
+ {
+ String sStateName = State.GetStateName(aBasename, sSuffix);
+ if ( ! HasState(sStateName))
+ {
+ // The given suffix can be used without modification.
+ return sSuffix;
+ }
+ else
+ {
+ int nIndex = 2;
+ final Integer nDisambiguateCounter = maDisambiguateCounters.get(sStateName);
+ if (nDisambiguateCounter != null)
+ nIndex = nDisambiguateCounter+1;
+ maDisambiguateCounters.put(sStateName, nIndex);
+
+ return sSuffix + "_" + nIndex;
+ }
+ }
+
+
+
+
+ public boolean HasState (
+ final QualifiedName aBasename,
+ final String sSuffix)
+ {
+ return maStateContainer.HasState(State.GetStateName(aBasename, sSuffix));
+ }
+
+
+
+
+ /** Return whether a state with the given name already belongs to the state
+ * context.
+ */
+ public boolean HasState (final String sFullname)
+ {
+ return maStateContainer.HasState(sFullname);
+ }
+
+
+
+
+ /** The start state is the state a parser is in initially.
+ */
+ public State GetStartState ()
+ {
+ return maStartState;
+ }
+
+
+
+
+ public Iterable<State> GetAcceptingStates ()
+ {
+ final Vector<State> aAcceptingStates = new Vector<>();
+ for (final State aState : maStates)
+ if (aState.IsAccepting())
+ aAcceptingStates.add(aState);
+ return aAcceptingStates;
+ }
+
+
+
+
+ /** Add the given state to the state context.
+ */
+ public void AddState (final State aState)
+ {
+ maStateContainer.AddState(aState);
+ maStates.add(aState);
+ }
+
+
+
+
+ public void RemoveState (final State aState)
+ {
+ maStateContainer.RemoveState(aState);
+ maStates.remove(aState);
+ }
+
+
+
+
+ public int GetStateCount ()
+ {
+ return maStates.size();
+ }
+
+
+
+
+ public Iterable<State> GetStatesSorted()
+ {
+ final Set<State> aSortedStates = new TreeSet<>();
+ aSortedStates.addAll(maStates);
+ return aSortedStates;
+ }
+
+
+
+
+ public Iterable<State> GetStates()
+ {
+ return maStates;
+ }
+
+
+
+
+ public int GetTransitionCount ()
+ {
+ int nStateCount = 0;
+ for (final State aState : maStates)
+ nStateCount += aState.GetTransitionCount();
+ return nStateCount;
+ }
+
+
+
+
+ private final StateContainer maStateContainer;
+ private final Set<State> maStates;
+ private final State maStartState;
+ private final Map<String,Integer> maDisambiguateCounters;
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/automaton/StateSet.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/automaton/StateSet.java
new file mode 100644
index 000000000000..bac2092104fe
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/automaton/StateSet.java
@@ -0,0 +1,245 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.automaton;
+
+import java.util.Iterator;
+import java.util.Set;
+import java.util.TreeSet;
+
+import org.apache.openoffice.ooxml.schema.model.base.INode;
+import org.apache.openoffice.ooxml.schema.model.base.QualifiedName;
+
+/** Used in the transformation of NFA to DFA and in the minimization of DFAs.
+ * References a set of regular states.
+ */
+public class StateSet
+ implements Comparable<StateSet>
+{
+ public StateSet ()
+ {
+ maStates = new TreeSet<>();
+ }
+
+
+
+
+ public StateSet (final State aState)
+ {
+ this();
+ maStates.add(aState);
+ }
+
+
+
+
+ public StateSet (final StateSet aSet)
+ {
+ this();
+ maStates.addAll(aSet.maStates);
+ }
+
+
+
+
+ public StateSet (final Iterable<State> aStates)
+ {
+ this();
+ for (final State aState : aStates)
+ maStates.add(aState);
+ }
+
+
+
+
+ public void AddState (final State aState)
+ {
+ maStates.add(aState);
+ }
+
+
+
+
+ public void AddStates (final StateSet aStates)
+ {
+ maStates.addAll(aStates.maStates);
+ }
+
+
+
+
+ public boolean IsDisjoint (final StateSet aOther)
+ {
+ for (final State aState : aOther.maStates)
+ if (maStates.contains(aState))
+ return false;
+ for (final State aState : maStates)
+ if (aOther.maStates.contains(aState))
+ return false;
+ return true;
+ }
+
+
+
+
+ public void RemoveState (final State aState)
+ {
+ maStates.remove(aState);
+ }
+
+
+
+
+ public Iterable<State> GetStates ()
+ {
+ return maStates;
+ }
+
+
+
+
+ public boolean ContainsState (final State aState)
+ {
+ return maStates.contains(aState);
+ }
+
+
+
+
+ public int GetStateCount ()
+ {
+ return maStates.size();
+ }
+
+
+
+
+ public boolean HasStates ()
+ {
+ return ! maStates.isEmpty();
+ }
+
+
+
+
+ public State CreateStateForStateSet (final StateContext aContext)
+ {
+ // Find a name for the new state. If there is type state in the given
+ // set then use its name.
+ QualifiedName aBaseName = null;
+ String sShortestSuffix = null;
+ for (final State aState : maStates)
+ {
+ final QualifiedName aName = aState.GetBasename();
+ final String sSuffix = aState.GetSuffix();
+
+ if (aBaseName == null)
+ {
+ aBaseName = aName;
+ sShortestSuffix = sSuffix;
+ }
+ else if (aBaseName.compareTo(aName) != 0)
+ {
+ System.out.printf("%s != %s\n", aBaseName, aName);
+ throw new RuntimeException("state set contains states with different base names: "+toString());
+ }
+
+ if (sShortestSuffix == null)
+ sShortestSuffix = sSuffix;
+ else if (sSuffix.length() < sShortestSuffix.length())
+ sShortestSuffix = sSuffix;
+ }
+ if (aBaseName == null)
+ throw new RuntimeException("can not create state for "+toString());
+
+ // Disambiguate new state name.
+ State aNewState = aContext.CreateState(
+ aBaseName,
+ aContext.GetUnambiguousSuffix(aBaseName, sShortestSuffix));
+ assert(aNewState!=null);
+
+ // Mark the new state as accepting if at least one of its original states
+ // is accepting.
+ for (final State aState : maStates)
+ {
+ if (aState.IsAccepting())
+ {
+ aNewState.SetIsAccepting();
+ break;
+ }
+ for (final SkipData aData : aState.GetSkipData())
+ aNewState.AddSkipData(aData.Clone(aNewState));
+ final INode aTextType = aState.GetTextType();
+ if (aTextType != null)
+ aNewState.SetTextType(aTextType);
+ }
+
+ return aNewState;
+ }
+
+
+
+
+ @Override
+ public int compareTo (final StateSet aOther)
+ {
+ final int nStateCount = maStates.size();
+
+ if (nStateCount != aOther.maStates.size())
+ return nStateCount - aOther.maStates.size();
+ else
+ {
+ final Iterator<State> aIterator = maStates.iterator();
+ final Iterator<State> aOtherIterator = aOther.maStates.iterator();
+ while (aIterator.hasNext())
+ {
+ final State aState = aIterator.next();
+ final State aOtherState = aOtherIterator.next();
+ final int nResult = aState.compareTo(aOtherState);
+ if (nResult != 0)
+ return nResult;
+ }
+ return 0;
+ }
+ }
+
+
+
+
+ public boolean IsEmpty()
+ {
+ return maStates.isEmpty();
+ }
+
+
+
+
+ @Override
+ public String toString ()
+ {
+ return "set of "+maStates.size()+" states "+maStates.toString();
+ }
+
+
+
+
+ private final Set<State> maStates;
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/automaton/Transition.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/automaton/Transition.java
new file mode 100644
index 000000000000..ffacb1ad5ef9
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/automaton/Transition.java
@@ -0,0 +1,97 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.automaton;
+
+import org.apache.openoffice.ooxml.schema.model.base.QualifiedName;
+
+/** Each transition corresponds to an 'element' schema element.
+ * It moves from the start state to the end state when a certain start tag is
+ * processed. The element corresponds to another complex type which will be
+ * parsed during the transition.
+ */
+public class Transition
+{
+ public Transition (
+ final State aStartState,
+ final State aEndState,
+ final QualifiedName aElementName,
+ final String sElementTypeName)
+ {
+ maStartState = aStartState;
+ maEndState = aEndState;
+ maElementName = aElementName;
+ msElementTypeName = sElementTypeName;
+ }
+
+
+
+
+ public State GetStartState ()
+ {
+ return maStartState;
+ }
+
+
+
+
+ public State GetEndState ()
+ {
+ return maEndState;
+ }
+
+
+
+
+ public QualifiedName GetElementName()
+ {
+ return maElementName;
+ }
+
+
+
+
+ public String GetElementTypeName()
+ {
+ return msElementTypeName;
+ }
+
+
+
+
+ @Override
+ public String toString ()
+ {
+ return String.format("%s --'%s'-> %s (via %s)\n",
+ maStartState.GetFullname(),
+ maElementName.GetDisplayName(),
+ maEndState.GetFullname(),
+ msElementTypeName);
+ }
+
+
+
+
+ private final State maStartState;
+ private final State maEndState;
+ private final QualifiedName maElementName;
+ private final String msElementTypeName;
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/automaton/ValidatingCreator.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/automaton/ValidatingCreator.java
new file mode 100644
index 000000000000..c0dd5acf1781
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/automaton/ValidatingCreator.java
@@ -0,0 +1,793 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.automaton;
+
+import java.io.File;
+import java.util.Iterator;
+import java.util.Stack;
+import java.util.Vector;
+
+import org.apache.openoffice.ooxml.schema.iterator.DereferencingNodeIterator;
+import org.apache.openoffice.ooxml.schema.iterator.PermutationIterator;
+import org.apache.openoffice.ooxml.schema.model.attribute.Attribute;
+import org.apache.openoffice.ooxml.schema.model.attribute.AttributeGroup;
+import org.apache.openoffice.ooxml.schema.model.attribute.AttributeGroupReference;
+import org.apache.openoffice.ooxml.schema.model.attribute.AttributeReference;
+import org.apache.openoffice.ooxml.schema.model.base.INode;
+import org.apache.openoffice.ooxml.schema.model.base.INodeVisitor;
+import org.apache.openoffice.ooxml.schema.model.base.Location;
+import org.apache.openoffice.ooxml.schema.model.base.NodeVisitorAdapter;
+import org.apache.openoffice.ooxml.schema.model.complex.All;
+import org.apache.openoffice.ooxml.schema.model.complex.Any;
+import org.apache.openoffice.ooxml.schema.model.complex.Choice;
+import org.apache.openoffice.ooxml.schema.model.complex.ComplexContent;
+import org.apache.openoffice.ooxml.schema.model.complex.ComplexType;
+import org.apache.openoffice.ooxml.schema.model.complex.ComplexTypeReference;
+import org.apache.openoffice.ooxml.schema.model.complex.Element;
+import org.apache.openoffice.ooxml.schema.model.complex.ElementReference;
+import org.apache.openoffice.ooxml.schema.model.complex.Extension;
+import org.apache.openoffice.ooxml.schema.model.complex.Group;
+import org.apache.openoffice.ooxml.schema.model.complex.GroupReference;
+import org.apache.openoffice.ooxml.schema.model.complex.OccurrenceIndicator;
+import org.apache.openoffice.ooxml.schema.model.complex.Sequence;
+import org.apache.openoffice.ooxml.schema.model.schema.SchemaBase;
+import org.apache.openoffice.ooxml.schema.model.simple.BuiltIn;
+import org.apache.openoffice.ooxml.schema.model.simple.List;
+import org.apache.openoffice.ooxml.schema.model.simple.Restriction;
+import org.apache.openoffice.ooxml.schema.model.simple.SimpleContent;
+import org.apache.openoffice.ooxml.schema.model.simple.SimpleType;
+import org.apache.openoffice.ooxml.schema.model.simple.SimpleTypeReference;
+import org.apache.openoffice.ooxml.schema.model.simple.Union;
+
+/** Create a set of validating stack automatons for a set of schemas.
+ * There is one DFA (deterministic finite automaton) for each complex type and
+ * one for the top level elements.
+ */
+public class ValidatingCreator
+ extends CreatorBase
+ implements INodeVisitor
+{
+ public ValidatingCreator (
+ final SchemaBase aSchemaBase,
+ final File aLogFile)
+ {
+ super(aSchemaBase, aLogFile);
+ maContextStack = new Stack<>();
+ maCurrentContext = null;
+ }
+
+
+
+
+ /** Create one automaton for the top-level elements and one for each complex
+ * type.
+ */
+ public FiniteAutomatonContainer Create ()
+ {
+ final FiniteAutomatonContainer aAutomatons = new FiniteAutomatonContainer(maStateContainer);
+
+ // Create the automaton for the top-level elements.
+ aAutomatons.AddAutomaton(
+ null,
+ CreateForTopLevelElements());
+
+ // Create one automation for each complex type.
+ for (final ComplexType aComplexType : maSchemaBase.ComplexTypes.GetSorted())
+ aAutomatons.AddAutomaton(
+ aComplexType.GetName(),
+ CreateForComplexType(aComplexType));
+
+ // Create one automaton for each simple type that is referenced by an element.
+ for (final INode aSimpleType : maElementSimpleTypes)
+ aAutomatons.AddAutomaton(
+ aSimpleType.GetName(),
+ CreateForSimpleType(aSimpleType));
+
+ maLog.Close();
+
+ return aAutomatons;
+ }
+
+
+
+
+ private FiniteAutomaton CreateForTopLevelElements ()
+ {
+ maStateContext = new StateContext(
+ maStateContainer,
+ "<top-level>");
+ final State aEndState = maStateContext.CreateEndState();
+
+ assert(maContextStack.isEmpty());
+ msLogIndentation = "";
+
+ // top level elements
+ for (final Element aElement : maSchemaBase.TopLevelElements.GetSorted())
+ ProcessType(
+ aElement,
+ maStateContext.GetStartState(),
+ maStateContext.GetStartState(),
+ aEndState);
+
+ return new FiniteAutomaton(maStateContext, null, null);
+ }
+
+
+
+
+ private FiniteAutomaton CreateForComplexType (final ComplexType aComplexType)
+ {
+ maStateContext = new StateContext(
+ maStateContainer,
+ aComplexType.GetName().GetStateName());
+ maAttributes = new Vector<>();
+ final State aEndState = maStateContext.CreateEndState();
+ ProcessType(
+ aComplexType,
+ maStateContext.GetStartState(),
+ maStateContext.GetStartState(),
+ aEndState);
+ return new FiniteAutomaton(
+ maStateContext,
+ maAttributes,
+ aComplexType.GetLocation());
+ }
+
+
+
+
+ @Override
+ public void Visit (final All aAll)
+ {
+ maLog.AddComment("All");
+ ProcessAttributes(aAll);
+
+ // Make a transformation of the children into a choice of sequences that
+ // can then be processed by already existing Visit() methods.
+ // These sequences enumerate all permutations of the original children.
+ final INode aReplacement = GetAllReplacement(aAll);
+
+ final State aLocalStartState = maStateContext.CreateState(
+ maCurrentContext.BaseState,
+ "As");
+ final State aLocalEndState = maStateContext.CreateState(
+ maCurrentContext.BaseState,
+ "Ae");
+
+ maLog.StartBlock();
+ AddEpsilonTransition(maCurrentContext.StartState, aLocalStartState);
+ final long nStartTime = System.currentTimeMillis();
+ ProcessType(
+ aReplacement,
+ maStateContext.CreateState(maCurrentContext.BaseState, "A"),
+ aLocalStartState,
+ aLocalEndState);
+ final long nEndTime = System.currentTimeMillis();
+ System.out.printf("processed 'all' children in %fs\n", (nEndTime-nStartTime)/1000.0);
+ AddEpsilonTransition(aLocalEndState, maCurrentContext.EndState);
+ maLog.EndBlock();
+ }
+
+
+
+
+ @Override
+ public void Visit (final Any aAny)
+ {
+ assert(aAny.GetChildCount() == 0);
+
+ maLog.AddComment("Any");
+ ProcessAttributes(aAny);
+
+ AddSkipTransition(
+ maCurrentContext.StartState,
+ new SkipData(
+ aAny.GetProcessContentsFlag(),
+ aAny.GetNamespaces()));
+ AddEpsilonTransition(maCurrentContext.StartState, maCurrentContext.EndState);
+ }
+
+
+
+
+ @Override
+ public void Visit (final ComplexContent aComplexContent)
+ {
+ assert(aComplexContent.GetChildCount() == 1);
+
+ maLog.AddComment ("Complex Content.");
+ ProcessAttributes(aComplexContent);
+
+ maLog.StartBlock();
+ ProcessType(
+ aComplexContent.GetChildren().iterator().next(),
+ maCurrentContext.BaseState,
+ maCurrentContext.StartState,
+ maCurrentContext.EndState);
+ maLog.EndBlock();
+ }
+
+
+
+
+ @Override
+ public void Visit (final ComplexType aComplexType)
+ {
+ if (maLog != null)
+ {
+ maLog.printf("\n");
+ maLog.AddComment ("Complex Type %s defined in %s.",
+ aComplexType.GetName().GetDisplayName(),
+ aComplexType.GetLocation());
+ }
+ ProcessAttributes(aComplexType);
+
+ maLog.StartBlock();
+ maLog.printf("%sstarting at state %s\n", msLogIndentation, maCurrentContext.StartState.GetFullname());
+
+ if (GetElementCount(aComplexType) == 0)
+ {
+ // There are elements. Therefore there will be no transitions.
+ // The start state is accepting and the end state is not necessary.
+ maCurrentContext.StartState.SetIsAccepting();
+ maStateContext.RemoveState(maCurrentContext.EndState);
+ }
+
+ for (final INode aChild : aComplexType.GetChildren())
+ ProcessType(aChild, maCurrentContext.BaseState, maCurrentContext.StartState, maCurrentContext.EndState);
+
+ maLog.EndBlock();
+ }
+
+
+
+
+ @Override
+ public void Visit (final ComplexTypeReference aNode)
+ {
+ throw new RuntimeException("can not handle "+aNode.toString());
+ }
+
+
+
+
+ @Override
+ public void Visit (final Choice aChoice)
+ {
+ maLog.AddComment("Choice");
+ ProcessAttributes(aChoice);
+
+ final State aLocalStartState = maStateContext.CreateState(maCurrentContext.BaseState, "Cs");
+ final State aLocalEndState = maStateContext.CreateState(maCurrentContext.BaseState, "Ce");
+ maLog.StartBlock();
+ AddEpsilonTransition(maCurrentContext.StartState, aLocalStartState);
+
+ int nStateIndex = 0;
+ for (final INode aChild : aChoice.GetChildren())
+ {
+ ProcessType(
+ aChild,
+ maStateContext.CreateState(maCurrentContext.BaseState, "C"+nStateIndex++),
+ aLocalStartState,
+ aLocalEndState);
+ }
+ AddEpsilonTransition(aLocalEndState, maCurrentContext.EndState);
+ maLog.EndBlock();
+ }
+
+
+
+
+ @Override
+ public void Visit (final Element aElement)
+ {
+ assert(aElement.GetChildCount()==0);
+
+ maLog.AddComment("Element: on '%s' go from %s to %s via %s",
+ aElement.GetElementName().GetDisplayName(),
+ maCurrentContext.StartState.GetFullname(),
+ maCurrentContext.EndState.GetFullname(),
+ aElement.GetTypeName().GetStateName());
+ ProcessAttributes(aElement);
+
+ final Transition aTransition = new Transition(
+ maCurrentContext.StartState,
+ maCurrentContext.EndState,
+ aElement.GetElementName(),
+ aElement.GetTypeName().GetStateName());
+ maCurrentContext.StartState.AddTransition(aTransition);
+
+ // For elements whose type is a simple type we have to remember that
+ // simple type for later (and then create an NFA for it.)
+ final INode aSimpleType = maSchemaBase.GetSimpleTypeForName(
+ aElement.GetTypeName());
+ if (aSimpleType != null)
+ maElementSimpleTypes.add(aSimpleType);
+ }
+
+
+
+
+ @Override
+ public void Visit (final ElementReference aReference)
+ {
+ assert(aReference.GetChildCount() == 0);
+
+ maLog.AddComment("Element reference to %s", aReference.GetReferencedElementName());
+ ProcessAttributes(aReference);
+
+ final Element aElement = aReference.GetReferencedElement(maSchemaBase);
+ if (aElement == null)
+ throw new RuntimeException("can't find referenced element "+aReference.GetReferencedElementName());
+ maLog.StartBlock();
+ ProcessType(aElement, maCurrentContext.BaseState, maCurrentContext.StartState, maCurrentContext.EndState);
+ maLog.EndBlock();
+ }
+
+
+
+
+ /** Treat extension nodes like sequences (for now).
+ */
+ @Override
+ public void Visit (final Extension aExtension)
+ {
+ assert(aExtension.GetChildCount() <= 1);
+
+ maLog.AddComment("Extension of base type %s", aExtension.GetBaseTypeName());
+ ProcessAttributes(aExtension);
+
+ final Vector<INode> aNodes = aExtension.GetTypeNodes(maSchemaBase);
+
+ maLog.StartBlock();
+ int nStateIndex = 0;
+ State aCurrentState = maStateContext.CreateState(maCurrentContext.BaseState, "E"+nStateIndex++);
+ AddEpsilonTransition(maCurrentContext.StartState, aCurrentState);
+
+ State aNextState = maStateContext.CreateState(maCurrentContext.BaseState, "E"+nStateIndex++);
+ ProcessType(aExtension.GetReferencedNode(maSchemaBase), aCurrentState, aCurrentState, aNextState);
+ aCurrentState = aNextState;
+
+ for (final INode aChild : aNodes)
+ {
+ aNextState = maStateContext.CreateState(maCurrentContext.BaseState, "E"+nStateIndex++);
+ ProcessType(aChild, aCurrentState, aCurrentState, aNextState);
+ aCurrentState = aNextState;
+ }
+ AddEpsilonTransition(aCurrentState, maCurrentContext.EndState);
+ maLog.EndBlock();
+ }
+
+
+
+
+ @Override
+ public void Visit (final Group aGroup)
+ {
+ assert(aGroup.GetChildCount() == 1);
+
+ maLog.AddComment("Group %s", aGroup.GetName());
+ ProcessAttributes(aGroup);
+
+ maLog.StartBlock();
+ final State aGroupBaseState = maStateContext.CreateState(maCurrentContext.BaseState, "G");
+ ProcessType(
+ aGroup.GetOnlyChild(),
+ aGroupBaseState,
+ maCurrentContext.StartState,
+ maCurrentContext.EndState);
+ maLog.EndBlock();
+ }
+
+
+
+
+ @Override
+ public void Visit (final GroupReference aReference)
+ {
+ maLog.AddComment("Group reference to %s", aReference.GetReferencedGroupName());
+ ProcessAttributes(aReference);
+
+ final Group aGroup = aReference.GetReferencedGroup(maSchemaBase);
+ if (aGroup == null)
+ throw new RuntimeException("can't find referenced group "+aReference.GetReferencedGroupName());
+
+ maLog.StartBlock();
+ ProcessType(aGroup, maCurrentContext.BaseState, maCurrentContext.StartState, maCurrentContext.EndState);
+ maLog.EndBlock();
+ }
+
+
+
+
+ /** An occurrence indicator defines how many times the single child can occur.
+ * The minimum value defines the mandatory number of times. The maximum value
+ * defines the optional number.
+ */
+ @Override
+ public void Visit (final OccurrenceIndicator aOccurrence)
+ {
+ assert(aOccurrence.GetChildCount() == 1);
+
+ maLog.AddComment("OccurrenceIndicator %s->%s",
+ aOccurrence.GetDisplayMinimum(),
+ aOccurrence.GetDisplayMaximum());
+ ProcessAttributes(aOccurrence);
+
+ maLog.StartBlock();
+
+ final INode aChild = aOccurrence.GetChildren().iterator().next();
+
+ int nIndex = 0;
+ State aCurrentState = maStateContext.CreateState(maCurrentContext.BaseState, "O"+nIndex++);
+ AddEpsilonTransition(maCurrentContext.StartState, aCurrentState);
+
+ if (aOccurrence.GetMinimum() == 0)
+ {
+ // A zero minimum means that all occurrences are optional.
+ // Add a short circuit from start to end.
+ maLog.AddComment("Occurrence: make whole element optional (min==0)");
+ AddEpsilonTransition(maCurrentContext.StartState, maCurrentContext.EndState);
+ }
+ else
+ {
+ // Write a row of mandatory transitions for the minimum.
+ for (; nIndex<=aOccurrence.GetMinimum(); ++nIndex)
+ {
+ // Add transition i-1 -> i (i == nIndex).
+ final State aNextState = maStateContext.CreateState(maCurrentContext.BaseState, "O"+nIndex);
+ maLog.AddComment("Occurrence: move from %d -> %d (%s -> %s) (minimum)",
+ nIndex-1,
+ nIndex,
+ aCurrentState,
+ aNextState);
+ maLog.StartBlock();
+ ProcessType(aChild, aCurrentState, aCurrentState, aNextState);
+ maLog.EndBlock();
+ aCurrentState = aNextState;
+ }
+ }
+
+ if (aOccurrence.GetMaximum() == OccurrenceIndicator.unbounded)
+ {
+ // Write loop on last state when max is unbounded.
+
+ // last -> loop
+ final State aLoopState = maStateContext.CreateState(maCurrentContext.BaseState, "OL");
+ maLog.AddComment("Occurrence: forward to loop (maximum)");
+ AddEpsilonTransition(aCurrentState, aLoopState);
+
+ // loop -> loop
+ maLog.AddComment("Occurrence: loop");
+ maLog.StartBlock();
+ ProcessType(aChild, aLoopState, aLoopState, aLoopState);
+ maLog.EndBlock();
+
+ // -> end
+ maLog.AddComment("Occurrence: forward to local end");
+ AddEpsilonTransition(aLoopState, maCurrentContext.EndState);
+ }
+ else
+ {
+ // Write a row of optional transitions for the maximum.
+ for (; nIndex<=aOccurrence.GetMaximum(); ++nIndex)
+ {
+ if (nIndex > 0)
+ {
+ // i-1 -> end
+ maLog.AddComment("Occurrence: make %d optional (maximum)", nIndex-1);
+ AddEpsilonTransition(aCurrentState, maCurrentContext.EndState);
+ }
+
+ // i-1 -> i
+ final State aNextState = maStateContext.CreateState(maCurrentContext.BaseState, "O"+nIndex);
+ maLog.AddComment("Occurrence: %d -> %d (%s -> %s) (maximum)",
+ nIndex-1,
+ nIndex,
+ aCurrentState,
+ aNextState);
+ maLog.StartBlock();
+ ProcessType(aChild, aCurrentState, aCurrentState, aNextState);
+ maLog.EndBlock();
+
+ aCurrentState = aNextState;
+ }
+
+ // max -> end
+ maLog.AddComment("Occurrence: forward to local end");
+ AddEpsilonTransition(aCurrentState, maCurrentContext.EndState);
+ }
+ maLog.EndBlock();
+ }
+
+
+
+
+ /** Ordered sequence of nodes.
+ * For n nodes create states S0 to Sn where Si and Si+1 become start and
+ * end states for the i-th child.
+ */
+ @Override
+ public void Visit (final Sequence aSequence)
+ {
+ maLog.AddComment("Sequence.");
+ ProcessAttributes(aSequence);
+
+ maLog.StartBlock();
+ int nStateIndex = 0;
+ State aCurrentState = maStateContext.CreateState(maCurrentContext.BaseState, "S"+nStateIndex++);
+ AddEpsilonTransition(maCurrentContext.StartState, aCurrentState);
+ for (final INode aChild : aSequence.GetChildren())
+ {
+ final State aNextState = maStateContext.CreateState(maCurrentContext.BaseState, "S"+nStateIndex++);
+ ProcessType(aChild, aCurrentState, aCurrentState, aNextState);
+ aCurrentState = aNextState;
+ }
+ AddEpsilonTransition(aCurrentState, maCurrentContext.EndState);
+ maLog.EndBlock();
+ }
+
+
+
+
+ @Override
+ public void Visit (final BuiltIn aNode)
+ {
+ // Ignored.
+ //throw new RuntimeException("can not handle "+aNode.toString());
+ }
+
+
+
+
+ @Override
+ public void Visit (final List aNode)
+ {
+ throw new RuntimeException("can not handle "+aNode.toString());
+ }
+
+
+
+
+ @Override
+ public void Visit (final Restriction aNode)
+ {
+ throw new RuntimeException("can not handle "+aNode.toString());
+ }
+
+
+
+ @Override
+ public void Visit (final SimpleContent aNode)
+ {
+ maLog.AddComment("SimpleContent.");
+ ProcessAttributes(aNode);
+
+ for (final INode aChild : aNode.GetChildren())
+ ProcessType(aChild, maCurrentContext.BaseState, maCurrentContext.StartState, maCurrentContext.EndState);
+ }
+
+
+
+
+ @Override
+ public void Visit (final SimpleType aNode)
+ {
+ maLog.AddComment("SimpleType.");
+ //for (final INode aChild : aNode.GetChildren())
+ //ProcessType(aChild, maCurrentContext.BaseState, maCurrentContext.StartState, maCurrentContext.EndState);
+ }
+
+
+
+
+ @Override
+ public void Visit (final SimpleTypeReference aNode)
+ {
+ throw new RuntimeException("can not handle "+aNode.toString());
+ }
+
+
+
+
+ @Override
+ public void Visit (final Union aNode)
+ {
+ throw new RuntimeException("can not handle "+aNode.toString());
+ }
+
+
+
+
+ @Override
+ public void Visit (final AttributeGroup aNode)
+ {
+ throw new RuntimeException("can not handle "+aNode.toString());
+ }
+
+
+
+
+ @Override
+ public void Visit (final AttributeReference aNode)
+ {
+ throw new RuntimeException("can not handle "+aNode.toString());
+ }
+
+
+
+
+ @Override
+ public void Visit (final Attribute aNode)
+ {
+ throw new RuntimeException("can not handle "+aNode.toString());
+ }
+
+
+
+
+ @Override
+ public void Visit (final AttributeGroupReference aNode)
+ {
+ throw new RuntimeException("can not handle "+aNode.toString());
+ }
+
+
+
+
+ private void ProcessType (
+ final INode aNode,
+ final State aBaseState,
+ final State aStartState,
+ final State aEndState)
+ {
+ maContextStack.push(maCurrentContext);
+ maCurrentContext = new Context(aBaseState, aStartState, aEndState);
+ aNode.AcceptVisitor(this);
+ maCurrentContext = maContextStack.pop();
+ }
+
+
+
+
+ private void AddEpsilonTransition (
+ final State aStartState,
+ final State aEndState)
+ {
+ // Silently ignore epsilon transitions from a state to itself.
+ // They may indicate a problem but usually are just artifacts
+ // that can be safely ignored.
+ if (aStartState == aEndState)
+ return;
+ else
+ {
+ final EpsilonTransition aTransition = new EpsilonTransition(
+ aStartState,
+ aEndState);
+ aStartState.AddEpsilonTransition(aTransition);
+
+ if (maLog != null)
+ {
+ maLog.printf("%sepsilon transition from %s to %s\n",
+ msLogIndentation,
+ aStartState.GetFullname(),
+ aEndState.GetFullname());
+ }
+ }
+ }
+
+
+
+
+ private int GetElementCount (final INode aNode)
+ {
+
+ class Visitor extends NodeVisitorAdapter
+ {
+ int nElementCount = 0;
+ @Override public void Visit (final Element aElement)
+ {
+ ++nElementCount;
+ }
+ int GetElementCount ()
+ {
+ return nElementCount;
+ }
+ };
+ final Visitor aVisitor = new Visitor();
+ for (final INode aChildNode : new DereferencingNodeIterator(aNode, maSchemaBase, false))
+ {
+ aChildNode.AcceptVisitor(aVisitor);
+ }
+ return aVisitor.GetElementCount();
+ }
+
+
+
+
+ private INode GetAllReplacement (final All aAll)
+ {
+ final long nStartTime = System.currentTimeMillis();
+
+ // By default each child of this node can appear exactly once, however
+ // the order is undefined. This corresponds to an enumeration of all
+ // permutations of the children.
+
+ // Set up an array of all children. This array will be modified to contain
+ // all permutations.
+ final INode[] aNodes = new INode[aAll.GetChildCount()];
+ final Iterator<INode> aChildren = aAll.GetChildren().iterator();
+ for (int nIndex=0; aChildren.hasNext(); ++nIndex)
+ aNodes[nIndex] = aChildren.next();
+
+ final Location aLocation = aAll.GetLocation();
+ final Choice aChoice = new Choice(aAll, aLocation);
+
+ // Treat every permutation as sequence so that the whole set of permutations
+ // is equivalent to a choice of sequences.
+ int nCount = 0;
+ for (final PermutationIterator<INode> aIterator = new PermutationIterator<>(aNodes); aIterator.HasMore(); aIterator.Next())
+ {
+ // Create a Sequence node for the current permutation and add it as
+ // choice to the Choice node.
+ final Sequence aSequence = new Sequence(aChoice, null, aLocation);
+ aChoice.AddChild(aSequence);
+
+ for (final INode aNode : aNodes)
+ aSequence.AddChild(aNode);
+
+ ++nCount;
+ }
+ final long nEndTime = System.currentTimeMillis();
+ System.out.printf("created %d permutations in %fs\n",
+ nCount,
+ (nEndTime-nStartTime)/1000.0);
+
+ return aChoice;
+ }
+
+
+
+
+ class Context
+ {
+ Context (
+ final State aBaseState,
+ final State aStartState,
+ final State aEndState)
+ {
+ BaseState = aBaseState;
+ StartState = aStartState;
+ EndState = aEndState;
+ }
+ final State BaseState;
+ final State StartState;
+ final State EndState;
+ }
+
+
+
+
+ private StateContext maStateContext;
+ private final Stack<Context> maContextStack;
+ private Context maCurrentContext;
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/generator/LogGenerator.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/generator/LogGenerator.java
new file mode 100644
index 000000000000..36deab269b96
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/generator/LogGenerator.java
@@ -0,0 +1,313 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.generator;
+
+import java.io.File;
+import java.io.FileNotFoundException;
+import java.io.PrintStream;
+import java.util.Map.Entry;
+
+import org.apache.openoffice.ooxml.schema.model.attribute.Attribute;
+import org.apache.openoffice.ooxml.schema.model.attribute.AttributeGroup;
+import org.apache.openoffice.ooxml.schema.model.attribute.AttributeGroupReference;
+import org.apache.openoffice.ooxml.schema.model.attribute.AttributeReference;
+import org.apache.openoffice.ooxml.schema.model.base.INode;
+import org.apache.openoffice.ooxml.schema.model.base.Node;
+import org.apache.openoffice.ooxml.schema.model.complex.ComplexType;
+import org.apache.openoffice.ooxml.schema.model.complex.Element;
+import org.apache.openoffice.ooxml.schema.model.schema.Schema;
+import org.apache.openoffice.ooxml.schema.model.schema.SchemaBase;
+import org.apache.openoffice.ooxml.schema.model.simple.Restriction;
+import org.apache.openoffice.ooxml.schema.model.simple.SimpleType;
+import org.apache.openoffice.ooxml.schema.model.simple.SimpleTypeReference;
+
+public class LogGenerator
+{
+ public static void Write (
+ final File aOutputFile,
+ final SchemaBase aSchemaBase,
+ final Iterable<Schema> aTopLevelSchemas)
+ {
+ final long nStartTime = System.currentTimeMillis();
+
+ try
+ {
+ final LogGenerator aGenerator = new LogGenerator(
+ new PrintStream(aOutputFile),
+ aSchemaBase);
+
+ aGenerator.WriteNamespaces(aSchemaBase);
+ aGenerator.WriteTopLevelElements(aTopLevelSchemas);
+ aGenerator.WriteComplexTypes(aSchemaBase);
+ aGenerator.WriteGroups(aSchemaBase);
+ aGenerator.WriteSimpleTypes(aSchemaBase);
+ aGenerator.WriteAttributeGroups(aSchemaBase);
+ aGenerator.WriteAttributes(aSchemaBase);
+ }
+ catch (final FileNotFoundException aException)
+ {
+ aException.printStackTrace();
+ }
+
+ final long nEndTime = System.currentTimeMillis();
+ System.out.printf("wrote log output to '%s' in %fs\n",
+ aOutputFile.toString(),
+ (nEndTime-nStartTime)/1000.0f);
+ }
+
+
+
+
+ private LogGenerator (
+ final PrintStream aOut,
+ final SchemaBase aSchemaBase)
+ {
+ maSchemaBase = aSchemaBase;
+ maOut = aOut;
+ }
+
+
+
+
+ private void WriteComment (final String sFormat, final Object ... aArgumentList)
+ {
+ maOut.printf("// "+sFormat+"\n", aArgumentList);
+ }
+
+
+
+
+ private void WriteNamespaces (final SchemaBase aSchema)
+ {
+ // Write namespace definitions.
+ WriteComment("%d Namespaces.", aSchema.Namespaces.GetCount());
+ for (final Entry<String,String> aEntry : aSchema.Namespaces.GetSorted())
+ {
+ maOut.printf(" %s -> %s\n",
+ aEntry.getValue()==null ? "<no-prefix>" : aEntry.getValue(),
+ aEntry.getKey());
+ }
+ }
+
+
+
+ private void WriteTopLevelElements (final Iterable<Schema> aTopLevelSchemas)
+ {
+ // Write top level elements.
+ WriteComment("Top-level elements.");
+ for (final Schema aSchema : aTopLevelSchemas)
+ {
+ WriteComment(" Schema %s.", aSchema.GetShortName());
+ for (final Element aElement : aSchema.TopLevelElements.GetSorted())
+ maOut.printf(" \"%s\" -> %s\n",
+ aElement.GetElementName().GetDisplayName(),
+ aElement.GetTypeName().GetDisplayName());
+ }
+ }
+
+
+
+
+ private void WriteComplexTypes (final SchemaBase aSchema)
+ {
+ WriteComment(" %d Complex Types.", aSchema.ComplexTypes.GetCount());
+ for (final ComplexType aType : aSchema.ComplexTypes.GetSorted())
+ {
+ WriteType(" ", aType, true);
+ }
+ }
+
+
+
+
+ private void WriteSimpleTypes (final SchemaBase aSchema)
+ {
+ WriteComment(" %d Simple Types.", aSchema.SimpleTypes.GetCount());
+ for (final SimpleType aType : aSchema.SimpleTypes.GetSorted())
+ {
+ WriteType(" ", aType, true);
+ }
+ }
+
+
+
+
+ private void WriteGroups (final SchemaBase aSchema)
+ {
+ WriteComment(" %d Groups.", aSchema.Groups.GetCount());
+ for (final Node aType : aSchema.Groups.GetSorted())
+ {
+ WriteType(" ", aType, true);
+ }
+ }
+
+
+
+
+ private void WriteAttributeGroups (final SchemaBase aSchema)
+ {
+ WriteComment(" %d Attribute Groups.", aSchema.AttributeGroups.GetCount());
+ for (final Node aType : aSchema.AttributeGroups.GetSorted())
+ {
+ WriteType(" ", aType, true);
+ }
+ }
+
+
+
+
+ private void WriteAttributes (final SchemaBase aSchema)
+ {
+ WriteComment(" %d Attributes.", aSchema.Attributes.GetCount());
+ for (final Node aType : aSchema.Attributes.GetSorted())
+ {
+ WriteType(" ", aType, true);
+ }
+ }
+
+
+
+
+ private void WriteType (
+ final String sIndentation,
+ final INode aType,
+ final boolean bIsTopLevel)
+ {
+ maOut.printf("%s%s", sIndentation, aType.toString());
+
+ if (bIsTopLevel)
+ {
+ final Node aNode = (Node)aType;
+ maOut.printf(" defined at %s",
+ aNode.GetLocation());
+ }
+ if ( ! HasChild(aType))
+ {
+ maOut.printf(" {}\n");
+ }
+ else
+ {
+ maOut.printf(" {\n");
+
+ // Write attributes.
+ switch(aType.GetNodeType())
+ {
+ case ComplexType:
+ for (final INode aAttribute : ((ComplexType)aType).GetAttributes())
+ WriteAttribute(sIndentation+" ", aAttribute);
+ break;
+
+ case SimpleTypeReference:
+ WriteType(
+ sIndentation+" ",
+ ((SimpleTypeReference)aType).GetReferencedSimpleType(maSchemaBase),
+ false);
+ break;
+
+ default:
+ break;
+ }
+
+
+ // Write child types.
+ for (final INode aChild : aType.GetChildren())
+ WriteType(sIndentation+" ", aChild, false);
+
+ maOut.printf("%s}\n", sIndentation);
+ }
+ }
+
+
+
+
+ private void WriteAttribute (
+ final String sIndentation,
+ final INode aAttribute)
+ {
+ switch(aAttribute.GetNodeType())
+ {
+ case Attribute:
+ maOut.printf(
+ "%sattribute %s of type %s\n",
+ sIndentation,
+ ((Attribute)aAttribute).GetName().GetDisplayName(),
+ ((Attribute)aAttribute).GetTypeName().GetDisplayName());
+ break;
+
+ case AttributeGroup:
+ maOut.printf(
+ "%sattribute group %s {\n",
+ sIndentation,
+ ((AttributeGroup)aAttribute).GetName().GetDisplayName());
+ for (final INode aChildAttribute : ((AttributeGroup)aAttribute).GetChildren())
+ WriteAttribute(sIndentation+" ", aChildAttribute);
+ maOut.printf("%s}\n", sIndentation);
+ break;
+ case AttributeGroupReference:
+ maOut.printf(
+ "%sreference to attribute group %s {\n",
+ sIndentation,
+ ((AttributeGroupReference)aAttribute).GetReferencedName().GetDisplayName());
+ WriteAttribute(sIndentation+" ", ((AttributeGroupReference)aAttribute).GetReferencedAttributeGroup(maSchemaBase));
+ maOut.printf("%s}\n", sIndentation);
+ break;
+
+ case AttributeReference:
+ maOut.printf(
+ "%sreference to attribute %s {\n",
+ sIndentation,
+ ((AttributeReference)aAttribute).GetReferencedName().GetDisplayName());
+ WriteAttribute(sIndentation+" ", ((AttributeReference)aAttribute).GetReferencedAttribute(maSchemaBase));
+ maOut.printf("%s}\n", sIndentation);
+ break;
+ default:
+ throw new RuntimeException();
+ }
+ }
+
+
+
+
+ private boolean HasChild (final INode aType)
+ {
+ if (aType.GetChildren().iterator().hasNext())
+ return true;
+
+ switch (aType.GetNodeType())
+ {
+ case ComplexType:
+ return ((ComplexType)aType).GetAttributes().iterator().hasNext();
+
+ case SimpleTypeReference:
+ return true;
+
+ default:
+ return false;
+ }
+ }
+
+
+
+
+ private final SchemaBase maSchemaBase;
+ private final PrintStream maOut;
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/generator/ParserTablesGenerator.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/generator/ParserTablesGenerator.java
new file mode 100644
index 000000000000..99cfbe1161bb
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/generator/ParserTablesGenerator.java
@@ -0,0 +1,555 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.generator;
+
+import java.io.File;
+import java.io.FileNotFoundException;
+import java.io.FileOutputStream;
+import java.io.PrintStream;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Map.Entry;
+import java.util.Set;
+import java.util.TreeMap;
+import java.util.TreeSet;
+
+import org.apache.openoffice.ooxml.schema.automaton.FiniteAutomaton;
+import org.apache.openoffice.ooxml.schema.automaton.FiniteAutomatonContainer;
+import org.apache.openoffice.ooxml.schema.automaton.SkipData;
+import org.apache.openoffice.ooxml.schema.automaton.State;
+import org.apache.openoffice.ooxml.schema.automaton.Transition;
+import org.apache.openoffice.ooxml.schema.model.attribute.Attribute;
+import org.apache.openoffice.ooxml.schema.model.attribute.AttributeBase.Use;
+import org.apache.openoffice.ooxml.schema.model.base.INode;
+import org.apache.openoffice.ooxml.schema.model.base.QualifiedName;
+import org.apache.openoffice.ooxml.schema.model.schema.NamespaceMap;
+import org.apache.openoffice.ooxml.schema.parser.FormDefault;
+import org.apache.openoffice.ooxml.schema.simple.BlobNode;
+import org.apache.openoffice.ooxml.schema.simple.DateTimeNode;
+import org.apache.openoffice.ooxml.schema.simple.ISimpleTypeNode;
+import org.apache.openoffice.ooxml.schema.simple.ISimpleTypeNodeVisitor;
+import org.apache.openoffice.ooxml.schema.simple.NumberNode;
+import org.apache.openoffice.ooxml.schema.simple.SimpleTypeContainer;
+import org.apache.openoffice.ooxml.schema.simple.SimpleTypeDescriptor;
+import org.apache.openoffice.ooxml.schema.simple.StringNode;
+import org.apache.openoffice.ooxml.schema.simple.UnionNode;
+
+public class ParserTablesGenerator
+{
+ public ParserTablesGenerator (
+ final FiniteAutomatonContainer aAutomatons,
+ final NamespaceMap aNamespaces,
+ final SimpleTypeContainer aSimpleTypes,
+ final Map<String,Integer> aAttributeValueToIdMap)
+ {
+ maAutomatons = aAutomatons;
+ maSimpleTypes = aSimpleTypes;
+ maNamespaces = aNamespaces;
+ maNameToIdMap = new TreeMap<>();
+ maPrefixToIdMap = new HashMap<>();
+ maTypeNameToIdMap = new TreeMap<>();
+ maAttributeValueToIdMap = aAttributeValueToIdMap;
+ }
+
+
+
+
+ public void Generate (
+ final File aParseTableFile)
+ {
+ final long nStartTime = System.currentTimeMillis();
+
+ SetupNameList();
+ AssignNameIds();
+
+ try
+ {
+ final PrintStream aOut = new PrintStream(new FileOutputStream(aParseTableFile));
+
+ WriteNamespaceList(aOut);
+ WriteNameList(aOut);
+ WriteGlobalStartEndStates(aOut);
+ WriteAutomatonList(aOut);
+ WriteSimpleTypes(aOut);
+ WriteAttributeValues(aOut);
+ aOut.close();
+ }
+ catch (final FileNotFoundException aException)
+ {
+ aException.printStackTrace();
+ }
+
+ final long nEndTime = System.currentTimeMillis();
+ System.out.printf("wrote parse tables to %s in %fs\n",
+ aParseTableFile.toString(),
+ (nEndTime-nStartTime)/1000.0);
+ }
+
+
+
+
+ private void SetupNameList ()
+ {
+ final Set<String> aNames = new TreeSet<>();
+
+ // Add the element names.
+ for (final FiniteAutomaton aAutomaton : maAutomatons.GetAutomatons())
+ for (final Transition aTransition : aAutomaton.GetTransitions())
+ {
+ if (aTransition.GetElementName() == null)
+ throw new RuntimeException();
+ aNames.add(aTransition.GetElementName().GetLocalPart());
+ }
+
+ // Add the attribute names.
+ for (final FiniteAutomaton aAutomaton : maAutomatons.GetAutomatons())
+ for (final Attribute aAttribute : aAutomaton.GetAttributes())
+ aNames.add(aAttribute.GetName().GetLocalPart());
+
+ // Create unique ids for the names.
+ int nIndex = 1;
+ maNameToIdMap.clear();
+ for (final String sName : aNames)
+ maNameToIdMap.put(sName, nIndex++);
+
+ // Create unique ids for namespace prefixes.
+ nIndex = 1;
+ maPrefixToIdMap.clear();
+ for (final Entry<String, String> aEntry : maNamespaces)
+ {
+ maPrefixToIdMap.put(aEntry.getValue(), nIndex++);
+ }
+ }
+
+
+
+
+ /** During the largest part of the parsing process, states and elements are
+ * identified not via their name but via a unique id.
+ * That allows a fast lookup.
+ */
+ private void AssignNameIds ()
+ {
+ maTypeNameToIdMap.clear();
+ int nIndex = 0;
+
+ // Process state names.
+ final Set<QualifiedName> aSortedTypeNames = new TreeSet<>();
+ for (final State aState : maAutomatons.GetStates())
+ aSortedTypeNames.add(aState.GetQualifiedName());
+ for (final Entry<String, SimpleTypeDescriptor> aSimpleType : maSimpleTypes.GetSimpleTypes())
+ aSortedTypeNames.add(aSimpleType.getValue().GetName());
+
+ for (final QualifiedName aName : aSortedTypeNames)
+ maTypeNameToIdMap.put(aName.GetStateName(), nIndex++);
+ }
+
+
+
+
+ private void WriteNamespaceList (final PrintStream aOut)
+ {
+ aOut.printf("# namespaces\n");
+ for (final Entry<String, String> aEntry : maNamespaces)
+ {
+ aOut.printf("namespace %-8s %2d %s\n",
+ aEntry.getValue(),
+ maPrefixToIdMap.get(aEntry.getValue()),
+ aEntry.getKey());
+ }
+ }
+
+
+
+
+ private void WriteGlobalStartEndStates (final PrintStream aOut)
+ {
+ aOut.printf("\n# start and end states\n");
+
+ final FiniteAutomaton aAutomaton = maAutomatons.GetTopLevelAutomaton();
+ final State aStartState = aAutomaton.GetStartState();
+ aOut.printf("start-state %4d %s\n",
+ maTypeNameToIdMap.get(aStartState.GetFullname()),
+ aStartState.GetFullname());
+ for (final State aAcceptingState : aAutomaton.GetAcceptingStates())
+ aOut.printf("end-state %4d %s\n",
+ maTypeNameToIdMap.get(aAcceptingState.GetFullname()),
+ aAcceptingState.GetFullname());
+ }
+
+
+
+
+ private void WriteNameList (final PrintStream aOut)
+ {
+ aOut.printf("\n# %d names\n", maNameToIdMap.size());
+ for (final Entry<String, Integer> aEntry : maNameToIdMap.entrySet())
+ {
+ aOut.printf("name %4d %s\n",
+ aEntry.getValue(),
+ aEntry.getKey());
+ }
+
+ aOut.printf("\n# %s states\n", maTypeNameToIdMap.size());
+ for (final Entry<String, Integer> aEntry : maTypeNameToIdMap.entrySet())
+ {
+ aOut.printf("state-name %4d %s\n",
+ aEntry.getValue(),
+ aEntry.getKey());
+ }
+ }
+
+
+
+
+ private void WriteAutomatonList (final PrintStream aOut)
+ {
+ for (final FiniteAutomaton aAutomaton : maAutomatons.GetAutomatons())
+ {
+ aOut.printf("# %s at %s\n", aAutomaton.GetTypeName(), aAutomaton.GetLocation());
+
+ final State aStartState = aAutomaton.GetStartState();
+ final int nStartStateId = maTypeNameToIdMap.get(aStartState.GetFullname());
+
+ // Write start state.
+ aOut.printf("start-state %d %s\n",
+ nStartStateId,
+ aStartState);
+
+ // Write accepting states.
+ for (final State aState : aAutomaton.GetAcceptingStates())
+ {
+ aOut.printf("accepting-state %d %s\n",
+ maTypeNameToIdMap.get(aState.GetFullname()),
+ aState.GetFullname());
+ }
+
+ // Write text type.
+ final INode aTextType = aStartState.GetTextType();
+ if (aTextType != null)
+ {
+ switch(aTextType.GetNodeType())
+ {
+ case BuiltIn:
+ aOut.printf("text-type %d %d %s\n",
+ nStartStateId,
+ maTypeNameToIdMap.get(aTextType.GetName().GetStateName()),
+ aTextType.GetName().GetStateName());
+ break;
+ case SimpleType:
+ aOut.printf("text-type %d %d %s\n",
+ nStartStateId,
+ maTypeNameToIdMap.get(aTextType.GetName().GetStateName()),
+ aTextType.GetName().GetStateName());
+ break;
+ default:
+ throw new RuntimeException();
+ }
+ }
+
+ WriteAttributes(
+ aOut,
+ aStartState,
+ aAutomaton.GetAttributes());
+
+ // Write transitions.
+ for (final Transition aTransition : aAutomaton.GetTransitions())
+ {
+ final Integer nId = maTypeNameToIdMap.get(aTransition.GetElementTypeName());
+ aOut.printf("transition %4d %4d %2d %4d %4d %s %s %s %s\n",
+ maTypeNameToIdMap.get(aTransition.GetStartState().GetFullname()),
+ maTypeNameToIdMap.get(aTransition.GetEndState().GetFullname()),
+ maPrefixToIdMap.get(aTransition.GetElementName().GetNamespacePrefix()),
+ maNameToIdMap.get(aTransition.GetElementName().GetLocalPart()),
+ nId!=null ? nId : -1,
+ aTransition.GetStartState().GetFullname(),
+ aTransition.GetEndState().GetFullname(),
+ aTransition.GetElementName().GetStateName(),
+ aTransition.GetElementTypeName());
+ }
+ // Write skip data.
+ for (final State aState : aAutomaton.GetStates())
+ {
+ for (@SuppressWarnings("unused") final SkipData aSkipData : aState.GetSkipData())
+ aOut.printf("skip %4d %s\n",
+ maTypeNameToIdMap.get(aState.GetFullname()),
+ aState.GetFullname());
+ }
+ }
+ }
+
+
+
+
+ private void WriteAttributes (
+ final PrintStream aOut,
+ final State aState,
+ final Iterable<Attribute> aAttributes)
+ {
+ // Write attributes.
+ for (final Attribute aAttribute : aAttributes)
+ {
+ aOut.printf("attribute %4d %2d %c %4d %4d %s %s %s %s %s\n",
+ maTypeNameToIdMap.get(aState.GetFullname()),
+ maPrefixToIdMap.get(aAttribute.GetName().GetNamespacePrefix()),
+ aAttribute.GetFormDefault()==FormDefault.qualified ? 'q' : 'u',
+ maNameToIdMap.get(aAttribute.GetName().GetLocalPart()),
+ maTypeNameToIdMap.get(aAttribute.GetTypeName().GetStateName()),
+ aAttribute.GetUse()==Use.Optional ? 'o' : 'u',
+ aAttribute.GetDefault()==null ? "null" : '"'+aAttribute.GetDefault()+'"',
+ aState.GetFullname(),
+ aAttribute.GetName().GetStateName(),
+ aAttribute.GetTypeName().GetStateName());
+ }
+ }
+
+
+
+
+ private void WriteSimpleTypes (
+ final PrintStream aOut)
+ {
+ if (maSimpleTypes == null)
+ {
+ aOut.printf("\n// There is no simple type information.\n");
+ }
+ else
+ {
+ aOut.printf("\n// %d simple types.\n", maSimpleTypes.GetSimpleTypeCount());
+ for (final Entry<String,SimpleTypeDescriptor> aEntry : maSimpleTypes.GetSimpleTypesSorted())
+ {
+ int nIndex = 0;
+ for (final ISimpleTypeNode aSubType : aEntry.getValue().GetSubType())
+ {
+ final int nCurrentIndex = nIndex++;
+
+ final StringBuffer aLine = new StringBuffer();
+ aLine.append(String.format(
+ "simple-type %5d %1d %c ",
+ maTypeNameToIdMap.get(aEntry.getKey()),
+ nCurrentIndex,
+ aSubType.IsList() ? 'L' : 'T'));
+
+ aSubType.AcceptVisitor(new ISimpleTypeNodeVisitor()
+ {
+ @Override public void Visit(UnionNode aType)
+ {
+ throw new RuntimeException("unexpected");
+ }
+ @Override public void Visit(StringNode aType)
+ {
+ AppendStringDescription(aLine, aType);
+ }
+ @Override public void Visit(NumberNode<?> aType)
+ {
+ AppendNumberDescription(aLine, aType);
+ }
+ @Override public void Visit(DateTimeNode aType)
+ {
+ AppendDateTimeDescription(aLine, aType);
+ }
+ @Override public void Visit(BlobNode aType)
+ {
+ AppendBlobDescription(aLine, aType);
+ }
+ });
+ aOut.printf("%s\n", aLine.toString());
+ }
+ }
+ }
+ }
+
+
+
+
+ private void WriteAttributeValues (
+ final PrintStream aOut)
+ {
+ final Map<String,Integer> aSortedMap = new TreeMap<>();
+ aSortedMap.putAll(maAttributeValueToIdMap);
+ aOut.printf("// %d attribute values from enumerations.\n", maAttributeValueToIdMap.size());
+ for (final Entry<String,Integer> aEntry : aSortedMap.entrySet())
+ aOut.printf("attribute-value %5d %s\n", aEntry.getValue(), QuoteString(aEntry.getKey()));
+ }
+
+
+
+
+ private static void AppendStringDescription (
+ final StringBuffer aLine,
+ final StringNode aType)
+ {
+ aLine.append("S ");
+ switch(aType.GetRestrictionType())
+ {
+ case Enumeration:
+ aLine.append('E');
+ for (final int nValueId : aType.GetEnumerationRestriction())
+ {
+ aLine.append(' ');
+ aLine.append(nValueId);
+ }
+ break;
+ case Pattern:
+ aLine.append("P ");
+ aLine.append(QuoteString(aType.GetPatternRestriction()));
+ break;
+ case Length:
+ aLine.append("L ");
+ final int[] aLengthRestriction = aType.GetLengthRestriction();
+ aLine.append(aLengthRestriction[0]);
+ aLine.append(' ');
+ aLine.append(aLengthRestriction[1]);
+ break;
+ case None:
+ aLine.append('N');
+ break;
+ default:
+ throw new RuntimeException();
+ }
+ }
+
+
+
+
+ private static void AppendNumberDescription (
+ final StringBuffer aLine,
+ final NumberNode<?> aType)
+ {
+ aLine.append("N ");
+ switch(aType.GetNumberType())
+ {
+ case Boolean: aLine.append("u1"); break;
+ case Byte: aLine.append("s8"); break;
+ case UnsignedByte: aLine.append("u8"); break;
+ case Short: aLine.append("s16"); break;
+ case UnsignedShort: aLine.append("u16"); break;
+ case Int: aLine.append("s32"); break;
+ case UnsignedInt: aLine.append("u32"); break;
+ case Long: aLine.append("s64"); break;
+ case UnsignedLong: aLine.append("u64"); break;
+ case Integer: aLine.append("s*"); break;
+ case Float: aLine.append("f"); break;
+ case Double: aLine.append("d"); break;
+ default:
+ throw new RuntimeException("unsupported numerical type "+aType.GetNumberType());
+ }
+ aLine.append(' ');
+ switch(aType.GetRestrictionType())
+ {
+ case Enumeration:
+ aLine.append("E ");
+ for (final Object nValue : aType.GetEnumerationRestriction())
+ {
+ aLine.append(" ");
+ aLine.append(nValue);
+ }
+ break;
+ case Size:
+ aLine.append("S");
+ if (aType.GetMinimum() != null)
+ {
+ if (aType.IsMinimumInclusive())
+ aLine.append(" >= ");
+ else
+ aLine.append(" > ");
+ aLine.append(aType.GetMinimum());
+ }
+ if (aType.GetMaximum() != null)
+ {
+ if (aType.IsMaximumInclusive())
+ aLine.append(" <= ");
+ else
+ aLine.append(" < ");
+ aLine.append(aType.GetMaximum());
+ }
+ break;
+ case None:
+ aLine.append("N");
+ break;
+ default:
+ throw new RuntimeException("unsupported numerical restriction "+aType.GetRestrictionType());
+ }
+ }
+
+
+
+
+ private static void AppendDateTimeDescription (
+ final StringBuffer aLine,
+ final DateTimeNode aType)
+ {
+ aLine.append("D");
+ }
+
+
+
+
+ private static void AppendBlobDescription (
+ final StringBuffer aLine,
+ final BlobNode aType)
+ {
+ aLine.append("B ");
+ switch(aType.GetBlobType())
+ {
+ case Base64Binary:
+ aLine.append("B ");
+ break;
+ case HexBinary:
+ aLine.append ("H ");
+ break;
+ default:
+ throw new RuntimeException("unsupported blob type");
+ }
+ switch(aType.GetRestrictionType())
+ {
+ case Length:
+ aLine.append("L ");
+ aLine.append(aType.GetLengthRestriction());
+ break;
+ case None:
+ aLine.append("N");
+ break;
+ default:
+ throw new RuntimeException();
+ }
+ }
+
+
+
+
+ private static String QuoteString(final String sText)
+ {
+ return "\"" + sText.replace("\"", "&quot;").replace(" ", "%20") + "\"";
+ }
+
+
+
+
+ private final FiniteAutomatonContainer maAutomatons;
+ private final SimpleTypeContainer maSimpleTypes;
+ private final NamespaceMap maNamespaces;
+ private final Map<String,Integer> maNameToIdMap;
+ private final Map<String,Integer> maPrefixToIdMap;
+ private final Map<String,Integer> maTypeNameToIdMap;
+ private final Map<String,Integer> maAttributeValueToIdMap;
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/generator/html/HtmlGenerator.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/generator/html/HtmlGenerator.java
new file mode 100644
index 000000000000..189554766ada
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/generator/html/HtmlGenerator.java
@@ -0,0 +1,623 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.generator.html;
+
+import java.io.BufferedReader;
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileNotFoundException;
+import java.io.FileOutputStream;
+import java.io.InputStreamReader;
+import java.io.PrintStream;
+import java.util.Collection;
+import java.util.Iterator;
+import java.util.Map;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+
+import org.apache.openoffice.ooxml.schema.model.attribute.Attribute;
+import org.apache.openoffice.ooxml.schema.model.attribute.AttributeGroup;
+import org.apache.openoffice.ooxml.schema.model.attribute.AttributeGroupReference;
+import org.apache.openoffice.ooxml.schema.model.attribute.AttributeReference;
+import org.apache.openoffice.ooxml.schema.model.base.INode;
+import org.apache.openoffice.ooxml.schema.model.base.INodeVisitor;
+import org.apache.openoffice.ooxml.schema.model.complex.All;
+import org.apache.openoffice.ooxml.schema.model.complex.Any;
+import org.apache.openoffice.ooxml.schema.model.complex.Choice;
+import org.apache.openoffice.ooxml.schema.model.complex.ComplexContent;
+import org.apache.openoffice.ooxml.schema.model.complex.ComplexType;
+import org.apache.openoffice.ooxml.schema.model.complex.ComplexTypeReference;
+import org.apache.openoffice.ooxml.schema.model.complex.Element;
+import org.apache.openoffice.ooxml.schema.model.complex.ElementReference;
+import org.apache.openoffice.ooxml.schema.model.complex.Extension;
+import org.apache.openoffice.ooxml.schema.model.complex.Group;
+import org.apache.openoffice.ooxml.schema.model.complex.GroupReference;
+import org.apache.openoffice.ooxml.schema.model.complex.OccurrenceIndicator;
+import org.apache.openoffice.ooxml.schema.model.complex.Sequence;
+import org.apache.openoffice.ooxml.schema.model.schema.Schema;
+import org.apache.openoffice.ooxml.schema.model.schema.SchemaBase;
+import org.apache.openoffice.ooxml.schema.model.simple.BuiltIn;
+import org.apache.openoffice.ooxml.schema.model.simple.List;
+import org.apache.openoffice.ooxml.schema.model.simple.Restriction;
+import org.apache.openoffice.ooxml.schema.model.simple.SimpleContent;
+import org.apache.openoffice.ooxml.schema.model.simple.SimpleType;
+import org.apache.openoffice.ooxml.schema.model.simple.SimpleTypeReference;
+import org.apache.openoffice.ooxml.schema.model.simple.Union;
+
+/** Create a single HTML page that shows information about all
+ * complex and simple types.
+ */
+public class HtmlGenerator
+ implements INodeVisitor
+{
+ public HtmlGenerator(
+ final SchemaBase aSchemaBase,
+ final Map<String, Schema> aTopLevelSchemas,
+ final File aOutputFile)
+ {
+ maSchemaBase = aSchemaBase;
+ maTopLevelSchemas = aTopLevelSchemas;
+ msIndentation = "";
+ msSingleIndentation = " ";
+ msSpace = " ";
+ try
+ {
+ maOut = new PrintStream(new FileOutputStream(aOutputFile));
+ } catch (FileNotFoundException aException)
+ {
+ aException.printStackTrace();
+ throw new RuntimeException(aException);
+ }
+ }
+
+
+
+
+ /** Read a template HTML file, expand its $... references and write the resulting content.
+ */
+ public void Generate ()
+ {
+ CopyFile("linking-template.html", true);
+ maOut.close();
+ }
+
+
+
+
+ private void CopyFile (
+ final String sBasename,
+ final boolean bIsTemplate)
+ {
+ try
+ {
+ final BufferedReader aIn = new BufferedReader(
+ new InputStreamReader(
+ new FileInputStream(
+ new File(
+ new File("bin/org/apache/openoffice/ooxml/schema/generator/html"),
+ sBasename))));
+
+ final Pattern aReferencePattern = Pattern.compile("^(.*?)\\$([^\\$]+)\\$(.*)$");
+ while (true)
+ {
+ final String sLine = aIn.readLine();
+ if (sLine == null)
+ break;
+
+ if (bIsTemplate)
+ {
+ final Matcher aMatcher = aReferencePattern.matcher(sLine);
+ if (aMatcher.matches())
+ {
+ maOut.println(aMatcher.group(1));
+ switch(aMatcher.group(2))
+ {
+ case "CSS":
+ CopyFile("display.css", false);
+ break;
+ case "CODE":
+ CopyFile("code.js", false);
+ break;
+ case "DATA":
+ WriteJsonData();
+ break;
+ }
+ maOut.printf("%s\n", aMatcher.group(3));
+ }
+ else
+ maOut.printf("%s\n", sLine);
+ }
+ else
+ maOut.printf("%s\n", sLine);
+ }
+ aIn.close();
+ }
+ catch (final Exception e)
+ {
+ e.printStackTrace();
+ }
+ }
+
+
+
+
+ private void WriteJsonData ()
+ {
+ maOut.printf("Data={\n");
+
+ WriteTopLevelNodes(maSchemaBase.ComplexTypes.GetSorted());
+ WriteTopLevelNodes(maSchemaBase.SimpleTypes.GetSorted());
+ WriteTopLevelNodes(maSchemaBase.Groups.GetSorted());
+ WriteTopLevelNodes(maSchemaBase.AttributeGroups.GetSorted());
+
+ maOut.printf("}\n");
+ }
+
+
+
+
+ private void WriteTopLevelNodes (final Iterable<? extends INode> aNodes)
+ {
+ for (final INode aNode : aNodes)
+ {
+ maOut.printf(" \"%s\" : {\n", aNode.GetName().GetDisplayName());
+
+ final String sSavedIndentation = msIndentation;
+ msIndentation += msSingleIndentation + msSingleIndentation;
+ aNode.AcceptVisitor(this);
+ msIndentation = sSavedIndentation;
+
+ maOut.printf(" }, \n");
+ }
+ }
+
+
+
+
+ @Override
+ public void Visit (final All aNode)
+ {
+ WritePair("type", "all");
+ WriteLocation(aNode);
+ WriteAttributes(aNode);
+ WriteChildren(aNode);
+ }
+
+
+
+
+ @Override
+ public void Visit (final Any aNode)
+ {
+ WritePair("type", "any");
+ WriteLocation(aNode);
+ WriteAttributes(aNode);
+ WriteChildren(aNode);
+ }
+
+
+
+
+ @Override
+ public void Visit (final ComplexContent aNode)
+ {
+ WritePair("type", "complex-content");
+ WriteLocation(aNode);
+ WriteAttributes(aNode);
+ WriteChildren(aNode);
+ }
+
+
+
+
+ @Override
+ public void Visit (final ComplexType aNode)
+ {
+ WritePair("type", "complex-type");
+ WritePair("name", aNode.GetName().GetDisplayName());
+ WriteLocation(aNode);
+ WriteAttributes(aNode);
+ WriteChildren(aNode);
+ }
+
+
+
+
+ @Override
+ public void Visit (final ComplexTypeReference aReference)
+ {
+ WritePair("type", "complex-type-reference");
+ WriteLocation(aReference);
+ WritePair("referenced-complex-type", aReference.GetReferencedTypeName().GetDisplayName());
+ WriteAttributes(aReference);
+ }
+
+
+
+
+ @Override
+ public void Visit (final Choice aNode)
+ {
+ WritePair("type", "choice");
+ WriteLocation(aNode);
+ WriteChildren(aNode);
+ WriteAttributes(aNode);
+ }
+
+
+
+
+ @Override
+ public void Visit (final Element aNode)
+ {
+ WritePair("type", "element");
+ WriteLocation(aNode);
+ WritePair("tag", aNode.GetElementName().GetDisplayName());
+ WritePair("result-type", aNode.GetTypeName().GetDisplayName());
+ WriteAttributes(aNode);
+ }
+
+
+
+
+ @Override
+ public void Visit (final ElementReference aReference)
+ {
+ WritePair("type", "element-type-reference");
+ WriteLocation(aReference);
+ WritePair("referenced-element", aReference.GetReferencedElementName().GetDisplayName());
+ WriteAttributes(aReference);
+ }
+
+
+
+
+ @Override
+ public void Visit (final Extension aNode)
+ {
+ WritePair("type", "extension");
+ WriteLocation(aNode);
+ WritePair("base-type", aNode.GetBaseTypeName().GetDisplayName());
+ WriteAttributes(aNode);
+ WriteChildren(aNode);
+ }
+
+
+
+
+ @Override
+ public void Visit (final Group aNode)
+ {
+ WritePair("type", "group");
+ WriteLocation(aNode);
+ WritePair("name", aNode.GetName().GetDisplayName());
+ WriteAttributes(aNode);
+ WriteChildren(aNode);
+ }
+
+
+
+
+ @Override
+ public void Visit (final GroupReference aReference)
+ {
+ WritePair("type", "group-reference");
+ WriteLocation(aReference);
+ WritePair("referenced-group", aReference.GetReferencedGroupName().GetDisplayName());
+ WriteAttributes(aReference);
+ }
+
+
+
+
+ @Override
+ public void Visit (final OccurrenceIndicator aNode)
+ {
+ WritePair("type", "occurrence");
+ WriteLocation(aNode);
+ WritePair("minimum", aNode.GetDisplayMinimum());
+ WritePair("maximum", aNode.GetDisplayMaximum());
+ WriteAttributes(aNode);
+ WriteChildren(aNode);
+ }
+
+
+
+
+ @Override
+ public void Visit (final Sequence aNode)
+ {
+ WritePair("type", "sequence");
+ WriteLocation(aNode);
+ WriteAttributes(aNode);
+ WriteChildren(aNode);
+ }
+
+
+
+
+ @Override
+ public void Visit (final BuiltIn aNode)
+ {
+ WritePair("type", "builtin");
+ WriteLocation(aNode);
+ WritePair("builtin-type", aNode.GetBuiltInType().GetQualifiedName().GetDisplayName());
+ WriteAttributes(aNode);
+ }
+
+
+
+
+ @Override
+ public void Visit (final List aNode)
+ {
+ WritePair("type", "list");
+ WriteLocation(aNode);
+ WriteAttributes(aNode);
+ WriteChildren(aNode);
+ }
+
+
+
+
+ @Override
+ public void Visit (final Restriction aNode)
+ {
+ WritePair("type", "restriction");
+ WriteLocation(aNode);
+ WritePair("base-type", aNode.GetBaseType().GetDisplayName());
+ WriteAttributes(aNode);
+
+ if (aNode.HasFeature(Restriction.EnumerationBit))
+ WritePair("enumeration", Join(aNode.GetEnumeration(), ";"));
+ if (aNode.HasFeature(Restriction.PatternBit))
+ WritePair("pattern", QuoteString(aNode.GetPattern()));
+ if (aNode.HasFeature(Restriction.MinExclusiveBit))
+ WritePair("exclusive-minimum", aNode.GetMinExclusive());
+ if (aNode.HasFeature(Restriction.MinInclusiveBit))
+ WritePair("inclusive-minimum", aNode.GetMinInclusive());
+ if (aNode.HasFeature(Restriction.MaxInclusiveBit))
+ WritePair("inclusive-maximum", aNode.GetMaxInclusive());
+ if (aNode.HasFeature(Restriction.MaxInclusiveBit))
+ WritePair("inclusive-maximum", aNode.GetMaxInclusive());
+ if (aNode.HasFeature(Restriction.LengthBit))
+ WritePair("length", Integer.toString(aNode.GetLength()));
+ if (aNode.HasFeature(Restriction.MinLengthBit))
+ WritePair("minimum-length", Integer.toString(aNode.GetMinimumLength()));
+ if (aNode.HasFeature(Restriction.MaxLengthBit))
+ WritePair("maximum-length", Integer.toString(aNode.GetMaximumLength()));
+ assert(aNode.GetChildCount() == 0);
+ }
+
+
+
+
+ @Override
+ public void Visit (final SimpleContent aNode)
+ {
+ WritePair("type", "simple-content");
+ WriteLocation(aNode);
+ WriteAttributes(aNode);
+ WriteChildren(aNode);
+ }
+
+
+
+
+ @Override
+ public void Visit (final SimpleType aNode)
+ {
+ WritePair("type", "simple-type");
+ WriteLocation(aNode);
+ WritePair("name", aNode.GetName().GetDisplayName());
+ WriteAttributes(aNode);
+ WriteChildren(aNode);
+ }
+
+
+
+
+ @Override
+ public void Visit (final SimpleTypeReference aReference)
+ {
+ WritePair("type", "simple-type-reference");
+ WriteLocation(aReference);
+ WritePair("referenced-simple-type", aReference.GetReferencedTypeName().GetDisplayName());
+ WriteAttributes(aReference);
+ }
+
+
+
+
+ @Override
+ public void Visit (final Union aNode)
+ {
+ WritePair("type", "union");
+ WriteLocation(aNode);
+ WriteAttributes(aNode);
+ WriteChildren(aNode);
+ }
+
+
+
+
+ @Override
+ public void Visit (final AttributeGroup aNode)
+ {
+ WritePair("type", "attribute-group");
+ WriteLocation(aNode);
+ WritePair("name", aNode.GetName().GetDisplayName());
+ WriteAttributes(aNode);
+ WriteChildren(aNode);
+ }
+
+
+
+
+ @Override
+ public void Visit (final AttributeReference aReference)
+ {
+ WritePair("type", "attribute-reference");
+ WriteLocation(aReference);
+ WritePair("referenced-attribute", aReference.GetReferencedName().GetDisplayName());
+ WriteAttributes(aReference);
+ }
+
+
+
+
+ @Override
+ public void Visit (final Attribute aNode)
+ {
+ WritePair("type", "attribute");
+ WriteLocation(aNode);
+ WritePair("name", aNode.GetName().GetDisplayName());
+ WritePair("default-value", aNode.GetDefault());
+ WritePair("value-type", aNode.GetTypeName().GetDisplayName());
+ WritePair("use", aNode.GetUse().toString());
+ WriteAttributes(aNode);
+ WriteChildren(aNode);
+ }
+
+
+
+
+ @Override
+ public void Visit (final AttributeGroupReference aReference)
+ {
+ WritePair("type", "attribute-group-reference");
+ WriteLocation(aReference);
+ WritePair("referenced-attribute-group", aReference.GetReferencedName().GetDisplayName());
+ WriteAttributes(aReference);
+ }
+
+
+
+
+ private void WriteChildren (
+ final INode aParent)
+ {
+ if (aParent.GetChildCount() > 0)
+ {
+ maOut.printf("%s\"children\" : [\n", msIndentation);
+ int nIndex = 0;
+ for (final INode aChild : aParent.GetChildren())
+ {
+ maOut.printf("%s%s{\n", msIndentation, msSingleIndentation, nIndex++);
+
+ final String sSavedIndentation = msIndentation;
+ msIndentation += msSingleIndentation + msSingleIndentation;
+ aChild.AcceptVisitor(this);
+ msIndentation = sSavedIndentation;
+
+ maOut.printf("%s%s},\n", msIndentation, msSingleIndentation);
+ }
+
+ maOut.printf("%s]\n", msIndentation);
+ }
+ }
+
+
+
+
+ private void WriteAttributes (
+ final INode aParent)
+ {
+ if (aParent.GetAttributeCount() > 0)
+ {
+ maOut.printf("%s\"attributes\" : [\n", msIndentation);
+ int nIndex = 0;
+ for (final INode aAttribute: aParent.GetAttributes())
+ {
+
+ maOut.printf("%s%s{\n", msIndentation, msSingleIndentation, nIndex++);
+
+ final String sSavedIndentation = msIndentation;
+ msIndentation += msSingleIndentation + msSingleIndentation;
+ aAttribute.AcceptVisitor(this);
+ msIndentation = sSavedIndentation;
+
+ maOut.printf("%s%s},\n", msIndentation, msSingleIndentation);
+ }
+
+ maOut.printf("%s],\n", msIndentation);
+ }
+ }
+
+
+
+
+ private void WriteLocation (
+ final INode aNode)
+ {
+ if (aNode.GetLocation() == null)
+ return;
+
+ WritePair("location", aNode.GetLocation().toString());
+ }
+
+
+
+
+ private void WritePair (
+ final String sKey,
+ final String sValue)
+ {
+ maOut.printf("%s\"%s\"%s:%s\"%s\"%s\n", msIndentation, sKey, msSpace, msSpace, sValue, ",");
+ }
+
+
+
+
+ private String Join (final Collection<String> aValues, final String sSeparator)
+ {
+ final Iterator<String> aIterator = aValues.iterator();
+ if ( ! aIterator.hasNext())
+ return "";
+
+ final StringBuffer aBuffer = new StringBuffer(aIterator.next());
+ while (aIterator.hasNext())
+ {
+ aBuffer.append(sSeparator);
+ aBuffer.append(aIterator.next());
+ }
+ return aBuffer.toString();
+ }
+
+
+
+
+ private String QuoteString (final String sValue)
+ {
+ return sValue.replace("<", "&lt;").replace(">", "&gt;").replace("\"", "&quot;");
+ }
+
+
+
+
+ private final SchemaBase maSchemaBase;
+ private final Map<String, Schema> maTopLevelSchemas;
+ private final PrintStream maOut;
+ private String msIndentation;
+ private final String msSingleIndentation;
+ private final String msSpace;
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/generator/html/code.js b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/generator/html/code.js
new file mode 100644
index 000000000000..64be9682e913
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/generator/html/code.js
@@ -0,0 +1,442 @@
+function LoadData ()
+{
+ gTypeNames = [];
+ ComplexTypeNames = [];
+ SimpleTypeNames = [];
+ for (var sName in Data)
+ {
+ gTypeNames.push(sName);
+ switch(Data[sName].type)
+ {
+ case "complex-type":
+ ComplexTypeNames.push(sName);
+ break;
+
+ case "simple-type":
+ SimpleTypeNames.push(sName);
+ break;
+ }
+ }
+ document.getElementById("message").innerHTML = "there are " + ComplexTypeNames.length + " complex types and "
+ + SimpleTypeNames.length +" simple types";
+}
+
+
+
+
+function InitializeSearch ()
+{
+ CurrentTypeName = "";
+ TypeHistory = Array();
+ LoadData();
+ ShowType("A:ST_Overlap");
+}
+
+
+
+
+function CheckInput (aField, aEvent)
+{
+ switch(aEvent.keyCode)
+ {
+ case 38:
+ --selection_index;
+ if (selection_index < 0)
+ selection_index = matches.length-1;
+ break;
+ case 40:
+ ++selection_index;
+ if (selection_index >= matches.length)
+ selection_index = 0;
+ break;
+ default:
+ matches = GetMatches(aField.value);
+ selection_index = 0;
+ }
+
+ ShowMatches(matches, selection_index);
+}
+
+
+
+
+function GetMatches (sPattern)
+{
+ var aLcPatterns = sPattern.toLowerCase().split(/\s+/);
+
+ var nTypeCount = gTypeNames.length;
+
+ var aMatches = [];
+ for (index=0; index<nTypeCount; ++index)
+ {
+ var sTypeName = gTypeNames[index];
+ var aParts = new Array(sTypeName);
+ var sLcTypeName = sTypeName.toLowerCase();
+ var bIsMatch = true;
+ var nSearchStart = 0;
+ for (nPatternIndex=0; nPatternIndex<aLcPatterns.length && bIsMatch; ++nPatternIndex)
+ {
+ var sPattern = aLcPatterns[nPatternIndex];
+ var nMatchStart = sLcTypeName.indexOf(sPattern, nSearchStart);
+ if (nMatchStart >= 0)
+ {
+ var nMatchEnd = nMatchStart + sPattern.length;
+ aParts.push(sTypeName.substring(nSearchStart, nMatchStart));
+ aParts.push(sTypeName.substring(nMatchStart, nMatchEnd));
+ nSearchStart = nMatchEnd;
+ }
+ else
+ {
+ // Only some patterns are matched.
+ bIsMatch = false;
+ }
+ }
+ if (bIsMatch)
+ {
+ if (nMatchEnd < sTypeName.length-1)
+ aParts.push(sTypeName.substring(nMatchEnd));
+ aMatches.push(aParts);
+ }
+ }
+ return aMatches;
+}
+
+
+
+
+/** Show the matching types.
+ * As there can be a great many matching types, some sort of abbreviation is necessary.
+ * Format all matches into lines of n entries.
+ * Show the line containing the selected match and the ones before and after.
+ * Show also the number of ommited matches.
+ */
+function ShowMatches (aMatches, nSelectionIndex)
+{
+ var sText = "";
+
+ var nHalfRange = 10;
+ var nMatchesPerLine = 5;
+ var nLineCount = Math.floor((aMatches.length+nMatchesPerLine-1) / nMatchesPerLine);
+ var nLineOfSelection = Math.floor(nSelectionIndex / nMatchesPerLine);
+ var nFirstDisplayedLine = nLineOfSelection>0 ? nLineOfSelection-1 : 0;
+ var nLastDisplayedLine = nLineOfSelection<nLineCount-1 ? nLineOfSelection+1 : nLineCount-1;
+
+ for (nLineIndex=nFirstDisplayedLine; nLineIndex<=nLastDisplayedLine; ++nLineIndex)
+ {
+ var nLineStartIndex = nLineIndex * nMatchesPerLine;
+ var nLineEndIndex = nLineStartIndex + nMatchesPerLine - 1;
+ if (nLineEndIndex >= aMatches.length)
+ nLineEndIndex = aMatches.length-1;
+
+ sText += "<tr>"
+ for (nIndex=nLineStartIndex; nIndex<=nLineEndIndex; ++nIndex)
+ {
+ var aMatch = aMatches[nIndex];
+ var sTypeName = aMatch[0];
+ var sMatch = "";
+ for (nPartIndex=1; nPartIndex<aMatch.length; ++nPartIndex)
+ {
+ if ((nPartIndex%2)==0)
+ sMatch += "<span class=\"match-highlight\">"+aMatch[nPartIndex]+"</span>";
+ else
+ sMatch += aMatch[nPartIndex];
+ }
+ sText += "<td>"
+ if (nIndex == nSelectionIndex)
+ {
+ sText += " <span class=\"typelink current-match\">" + sMatch + "</span>";
+ }
+ else
+ {
+ sText += " " + GetTypeLink(sMatch, sTypeName, -1);
+ }
+ sText += "</td>"
+ }
+
+ sText += "</tr>";
+ }
+ if (nFirstDisplayedLine > 0)
+ sText = "<tr><td>["+(nFirstDisplayedLine*nMatchesPerLine)+" matches] ...</td><tr>" + sText;
+ if (nLastDisplayedLine+1 < nLineCount)
+ sText += "<tr><td>... ["+((nLineCount-nLastDisplayedLine-1)*nMatchesPerLine)+" matches]</td></tr>";
+
+ document.getElementById('matches').innerHTML = "<table>"+sText+"</table>";
+ if (aMatches.length == 0)
+ {
+ document.getElementById('match-count').innerHTML = "no match:";
+ }
+ else
+ {
+ if (aMatches.length == 1)
+ document.getElementById('match-count').innerHTML = "single match:";
+ else
+ document.getElementById('match-count').innerHTML = aMatches.length+" matches:";
+
+ ShowType(aMatches[nSelectionIndex][0]);
+ }
+}
+
+
+
+
+function GetTopLevelNodeForTypeName(sTypeName)
+{
+ if (sTypeName in Data)
+ return Data[sTypeName];
+ else
+ alert(sTypeName +" is not a known complex type, simple type, or group");
+}
+
+
+
+
+/** Show the specified type.
+ * When nHistoryIndex is not -1 then the history is shortened to that (before that) index.
+ */
+function ShowType (sTypeName, nHistoryIndex)
+{
+ if (nHistoryIndex == -1)
+ {
+ if (CurrentTypeName != "")
+ {
+ TypeHistory.push(CurrentTypeName);
+ ShowHistory();
+ }
+ }
+ else
+ {
+ TypeHistory = TypeHistory.slice(0,nHistoryIndex);
+ ShowHistory();
+ }
+ CurrentTypeName = sTypeName;
+
+ var aElement = document.getElementById('result');
+
+ // Remove the old content.
+ while(aElement.childNodes.length > 0)
+ aElement.removeChild(aElement.firstChild);
+
+ // Create the new content.
+ var list = CreateDomTreeForType(GetTopLevelNodeForTypeName(sTypeName), "ul");
+
+ // Show the new content.
+ aElement.appendChild(list);
+}
+
+
+
+
+/** Create a dom sub tree for the given OOXML type that is ready for insertion into the global DOM tree.
+ */
+function CreateDomTreeForType (aNode, sType)
+{
+ var aEntry = document.createElement(sType);
+
+ if (typeof aNode==='undefined')
+ {
+ aEntry.innerHTML = "undefined node";
+ }
+ else if (typeof aNode.type==='undefined')
+ {
+ aEntry.innerHTML = "unknown type";
+ }
+ else
+ {
+ switch(aNode.type)
+ {
+ case "attribute":
+ aEntry.innerHTML = CreateValueTable([
+ "attribute",
+ "type:", GetTypeLink(aNode["value-type"], aNode["value-type"], -1),
+ "use:", aNode.use]);
+ break;
+
+ case "attribute-reference":
+ aEntry.innerHTML = CreateReference(aNode["referenced-attribute"]);
+ break;
+
+ case "builtin":
+ aEntry.innerHTML = CreateValueTable(
+ ["builtin",
+ "name:", aNode['builtin-type']
+ ]);
+ break;
+
+ case "complex-type":
+ aEntry.innerHTML = aNode.type + " " + aNode.name;
+ break;
+
+ case "complex-type-reference":
+ aEntry.innerHTML = CreateReference(aNode["referenced-complex-type"]);
+ break;
+
+ case "group":
+ aEntry.innerHTML = aNode.type + " " + aNode.name;
+ break;
+
+ case "group-reference":
+ aEntry.innerHTML = CreateReference("group", aNode["referenced-group"]);
+ break;
+
+ case "element":
+ aEntry.innerHTML = "element <b>" + aNode["tag"] + "</b> -> " + GetTypeLink(aNode["result-type"], aNode["result-type"], -1);
+ break;
+
+ case "occurrence":
+ aEntry.innerHTML = aNode.minimum +" -> " + aNode.maximum;
+ break;
+
+ case "restriction":
+ aEntry.innerHTML = CreateRestrictionRepresentation(aNode);
+ break;
+
+ case "sequence":
+ aEntry.innerHTML = "sequence";
+ break;
+
+ case "simple-type":
+ aEntry.innerHTML = aNode.type + " " + aNode.name;
+ break;
+
+ case "simple-type-reference":
+ aEntry.innerHTML = CreateReference("simple-type", aNode["referenced-simple-type"]);
+ break;
+
+ default:
+ aEntry.innerHTML = aNode.type;
+ break;
+ }
+
+ // Add nodes for attributes.
+ var aAttributes= aNode["attributes"];
+ if ( ! (typeof aAttributes==='undefined' || aAttributes.length == 0))
+ {
+ var aAttributeList = document.createElement("ul");
+ aEntry.appendChild(aAttributeList);
+
+ for (var nIndex=0; nIndex<aAttributes.length; ++nIndex)
+ {
+ var aAttributeEntry = CreateDomTreeForType(aAttributes[nIndex], "li");
+ aAttributeList.appendChild(aAttributeEntry);
+ }
+ }
+
+ // Add nodes for children.
+ var aChildren = aNode["children"];
+ if ( ! (typeof aChildren==='undefined' || aChildren.length == 0))
+ {
+ var aChildrenList = document.createElement("ul");
+ aEntry.appendChild(aChildrenList);
+
+ for (var nIndex=0; nIndex<aChildren.length; ++nIndex)
+ {
+ var aChildrenEntry = CreateDomTreeForType(aChildren[nIndex], "li");
+ aChildrenList.appendChild(aChildrenEntry);
+ }
+ }
+ }
+ return aEntry;
+}
+
+
+
+
+function GetTypeLink (sText, sTarget, nIndex)
+{
+ return "<span class=\"typelink\" id=\""+sTarget+"\" onclick=\"ShowType('"+sTarget+"',"+nIndex+")\">"+sText+"</span>";
+}
+
+
+
+
+function CreateValueTable (aValues)
+{
+ var sResult = "<table class=\"value-table\"><tr><td>"+aValues[0]+"</td><td>"+aValues[1]+"</td><td>"+aValues[2]+"</td></tr>";
+ for (nIndex=3; nIndex<aValues.length; nIndex+=2)
+ {
+ sResult += "<tr><td></td><td>"+aValues[nIndex]+"</td><td>"+aValues[nIndex+1]+"</td></tr>";
+ }
+ sResult += "</table>";
+ return sResult;
+}
+
+
+
+
+function CreateReference (sWhat, sTypeName)
+{
+ return "reference to "+sWhat+" "+GetTypeLink(sTypeName, sTypeName, -1) + " "
+ +CreateButton(
+ sTypeName,
+ "show",
+ "ToggleTypeReferenceExpansion('"+sTypeName+"')")
+ +"<br><span id=\"expansion-"+sTypeName+"\"></span>";
+}
+
+
+
+
+function CreateButton (sId, sText, sExpandAction)
+{
+ return "<span class=\"button\" id=\"button-"+sId+"\" onClick=\""+sExpandAction+"\">"+sText+"</span>";
+}
+
+
+
+
+function ToggleTypeReferenceExpansion(sTypeName)
+{
+ var aButton = document.getElementById("button-"+sTypeName);
+ var aExpansion = document.getElementById("expansion-"+sTypeName);
+ if (aButton.innerHTML == "show")
+ {
+ aExpansion.appendChild(CreateDomTreeForType(Data[sTypeName], "span"));
+ aButton.innerHTML = "hide";
+ }
+ else
+ {
+ aExpansion.innerHTML = "";
+ aButton.innerHTML = "show";
+ }
+}
+
+
+
+
+function ShowHistory ()
+{
+ var aElement = document.getElementById('history');
+ var sContent = "History:";
+ for (nIndex=0; nIndex<TypeHistory.length; ++nIndex)
+ {
+ if (nIndex == 0)
+ sContent += " ";
+ else
+ sContent += ", ";
+ sContent += GetTypeLink(TypeHistory[nIndex], TypeHistory[nIndex], nIndex);
+ }
+ aElement.innerHTML = sContent;
+}
+
+
+
+
+function CreateRestrictionRepresentation (aNode)
+{
+ var aTableData = ["restriction", "based on:", GetTypeLink(aNode['base-type'], aNode['base-type'], -1)];
+ AddValue(aNode, "enumeration", aTableData);
+ AddValue(aNode, "pattern", aTableData);
+ AddValue(aNode, "length", aTableData);
+ return CreateValueTable(aTableData);
+}
+
+
+
+function AddValue (aMap, sKey, aTableData)
+{
+ if (sKey in aMap)
+ {
+ aTableData.push(sKey+":");
+ aTableData.push(aMap[sKey]);
+ }
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/generator/html/display.css b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/generator/html/display.css
new file mode 100644
index 000000000000..d7d267e9ed9d
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/generator/html/display.css
@@ -0,0 +1,57 @@
+* {
+ font-family: Arial;
+ font-style:normal;
+ }
+.typelink {
+ cursor: pointer; cursor: hand;
+ color: #688;
+ }
+.typelink:link { color:#003; background-color:transparent; }
+.typelink:visited { color:#003; background-color:transparent; }
+.typelink:hover {
+ text-decoration: underline;
+ }
+.typelink:active { color:#003; background-color:#acc; }
+
+.value-table { display: inline-table; }
+
+
+.button {
+ box-shadow:inset 0px 1px 0px 0px #ffffff;
+ background-color:#ededed;
+ border-top-left-radius:4px;
+ border-top-right-radius:4px;
+ border-bottom-right-radius:4px;
+ border-bottom-left-radius:4px;
+ border:1px solid #dcdcdc;
+ display: inline-block;
+ color: #777777;
+ font-size: 15px;
+ font-weight: bold;
+ height: 20px;
+ line-height: 20px;
+ width: 80px;
+ text-align:center;
+ vertical-align: middle;
+ text-shadow:1px 1px 0px #ffffff;
+ cursor: pointer; cursor: hand;
+ }
+
+.button:hover {
+ background-color:#dfdfdf;
+ }
+
+.button:active {
+ position: relative;
+ top: 1px;
+ background-color:#c0c0c0;
+ }
+
+.current-match {
+ font-weight: bold;
+ background-color:#c0c0c0;
+ }
+
+.match-highlight {
+ color: #ff0000;
+ }
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/generator/html/linking-template.html b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/generator/html/linking-template.html
new file mode 100644
index 000000000000..c20c67c57165
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/generator/html/linking-template.html
@@ -0,0 +1,22 @@
+<!DOCTYPE html>
+<html>
+ <head>
+ <meta charset="UTF-8" />
+ <link rel="stylesheet" type="text/css" href="C:\source\ooxml\git\main\ooxml\source\framework\SchemaParser\src\org\apache\openoffice\ooxml\schema\generator\html\display.css">
+ </link>
+ <script type="text/javascript">
+ $DATA$
+ </script>
+ <script type="text/javascript" src="C:\source\ooxml\git\main\ooxml\source\framework\SchemaParser\src\org\apache\openoffice\ooxml\schema\generator\html\code.js">
+ </script>
+ </head>
+ <body onLoad="InitializeSearch()">
+ <div id="message"></div>
+ <input onKeyUp="CheckInput(this,event)"></input>
+ <div id="history"></div>
+ <br><br><div id="match-count">Matches:</div><br>
+ <div id="matches" cols="100" rows="20" defaultValue="type text to see matching types"></div>
+ <br>
+ <div id="result">no result yet</div>
+ </body>
+</html>
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/generator/html/template.html b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/generator/html/template.html
new file mode 100644
index 000000000000..2c174c137717
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/generator/html/template.html
@@ -0,0 +1,24 @@
+<!DOCTYPE html>
+<html>
+ <head>
+ <meta charset="UTF-8" />
+ <style type="text/css">
+ $CSS$
+ </style>
+ <script type="text/javascript">
+ $DATA$
+ </script>
+ <script type="text/javascript">
+ $CODE$
+ </script>
+ </head>
+ <body onLoad="InitializeSearch()">
+ <div id="message"></div>
+ <input onKeyUp="CheckInput(this,event)"></input>
+ <br><br><div id="match-count">Matches:</div><br>
+ <div id="history"></div>
+ <div id="matches" cols="100" rows="20" defaultValue="type text to see matching types"></div>
+ <br>
+ <div id="result">no result yet</div>
+ </body>
+</html>
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/iterator/AttributeIterator.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/iterator/AttributeIterator.java
new file mode 100644
index 000000000000..2160b8b26623
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/iterator/AttributeIterator.java
@@ -0,0 +1,109 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.iterator;
+
+import java.util.Iterator;
+import java.util.LinkedList;
+import java.util.Queue;
+import java.util.Set;
+import java.util.TreeSet;
+
+import org.apache.openoffice.ooxml.schema.model.attribute.Attribute;
+import org.apache.openoffice.ooxml.schema.model.attribute.AttributeGroup;
+import org.apache.openoffice.ooxml.schema.model.attribute.AttributeGroupReference;
+import org.apache.openoffice.ooxml.schema.model.attribute.AttributeReference;
+import org.apache.openoffice.ooxml.schema.model.base.INode;
+import org.apache.openoffice.ooxml.schema.model.base.INodeVisitor;
+import org.apache.openoffice.ooxml.schema.model.base.NodeVisitorAdapter;
+import org.apache.openoffice.ooxml.schema.model.schema.SchemaBase;
+
+/** Iterate over all attributes of a given node.
+ * References to attributes and attribute groups and their references are resolved.
+ *
+ * If you want to iterate over all attributes in a node tree then add an outer NodeIterator.
+ */
+public class AttributeIterator
+ implements Iterable<Attribute>
+{
+ public AttributeIterator (
+ final INode aNode,
+ final SchemaBase aSchemaBase)
+ {
+ maAttributes = new TreeSet<Attribute>();
+ CollectAttributes(aNode, aSchemaBase);
+ }
+
+
+
+
+ public Iterator<Attribute> iterator ()
+ {
+ return maAttributes.iterator();
+ }
+
+
+
+
+ private void CollectAttributes (
+ final INode aType,
+ final SchemaBase aSchemaBase)
+ {
+ final Queue<INode> aTodo = new LinkedList<>();
+ for (final INode aAttribute : aType.GetAttributes())
+ aTodo.add(aAttribute);
+ final INodeVisitor aVisitor = new NodeVisitorAdapter()
+ {
+ @Override public void Visit (final Attribute aAttribute)
+ {
+ maAttributes.add(aAttribute);
+ }
+ @Override public void Visit (final AttributeReference aAttributeReference)
+ {
+ aTodo.add(aAttributeReference.GetReferencedAttribute(aSchemaBase));
+ }
+ @Override public void Visit (final AttributeGroup aAttributeGroup)
+ {
+ for (final INode aGroupAttribute : aAttributeGroup.GetAttributes())
+ aTodo.add(aGroupAttribute);
+ }
+ @Override public void Visit (final AttributeGroupReference aAttributeGroupReference)
+ {
+ aTodo.add(aAttributeGroupReference.GetReferencedAttributeGroup(aSchemaBase));
+ }
+ @Override public void Default (final INode aNode)
+ {
+ throw new RuntimeException("can not handle attribute of type "+aNode.GetNodeType());
+ }
+ };
+ while ( ! aTodo.isEmpty())
+ {
+ final INode aAttribute = aTodo.poll();
+ if (aAttribute != null)
+ aAttribute.AcceptVisitor(aVisitor);
+ }
+ }
+
+
+
+
+ private final Set<Attribute> maAttributes;
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/iterator/AttributeNodeIterator.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/iterator/AttributeNodeIterator.java
new file mode 100644
index 000000000000..0a5bc410f073
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/iterator/AttributeNodeIterator.java
@@ -0,0 +1,112 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.iterator;
+
+import java.util.Iterator;
+import java.util.LinkedList;
+import java.util.Queue;
+import java.util.Vector;
+
+import org.apache.openoffice.ooxml.schema.model.attribute.Attribute;
+import org.apache.openoffice.ooxml.schema.model.attribute.AttributeGroup;
+import org.apache.openoffice.ooxml.schema.model.attribute.AttributeGroupReference;
+import org.apache.openoffice.ooxml.schema.model.attribute.AttributeReference;
+import org.apache.openoffice.ooxml.schema.model.base.INode;
+import org.apache.openoffice.ooxml.schema.model.base.INodeVisitor;
+import org.apache.openoffice.ooxml.schema.model.base.NodeVisitorAdapter;
+import org.apache.openoffice.ooxml.schema.model.schema.SchemaBase;
+
+/** This iterator is very similar to the AttributeIterator but it
+ * a) returns the attributes as INode objects and
+ * b) includes referencing nodes and group nodes in the iteration and
+ * c) if there are multiple references to the same attribute then each
+ * of them is visited.
+ */
+public class AttributeNodeIterator
+ implements Iterable<INode>
+{
+ public AttributeNodeIterator (
+ final INode aNode,
+ final SchemaBase aSchemaBase)
+ {
+ maAttributes = new Vector<INode>();
+ CollectAttributes(aNode, aSchemaBase);
+ }
+
+
+
+
+ public Iterator<INode> iterator ()
+ {
+ return maAttributes.iterator();
+ }
+
+
+
+
+ private void CollectAttributes (
+ final INode aType,
+ final SchemaBase aSchemaBase)
+ {
+ final Queue<INode> aTodo = new LinkedList<>();
+ for (final INode aAttribute : aType.GetAttributes())
+ aTodo.add(aAttribute);
+ final INodeVisitor aVisitor = new NodeVisitorAdapter()
+ {
+ @Override public void Visit (final Attribute aAttribute)
+ {
+ maAttributes.add(aAttribute);
+ }
+ @Override public void Visit (final AttributeReference aAttributeReference)
+ {
+ maAttributes.add(aAttributeReference);
+ aTodo.add(aAttributeReference.GetReferencedAttribute(aSchemaBase));
+ }
+ @Override public void Visit (final AttributeGroup aAttributeGroup)
+ {
+ maAttributes.add(aAttributeGroup);
+ for (final INode aGroupAttribute : aAttributeGroup.GetAttributes())
+ aTodo.add(aGroupAttribute);
+ }
+ @Override public void Visit (final AttributeGroupReference aAttributeGroupReference)
+ {
+ maAttributes.add(aAttributeGroupReference);
+ aTodo.add(aAttributeGroupReference.GetReferencedAttributeGroup(aSchemaBase));
+ }
+ @Override public void Default (final INode aNode)
+ {
+ throw new RuntimeException("can not handle attribute of type "+aNode.GetNodeType());
+ }
+ };
+ while ( ! aTodo.isEmpty())
+ {
+ final INode aAttribute = aTodo.poll();
+ if (aAttribute != null)
+ aAttribute.AcceptVisitor(aVisitor);
+ }
+ }
+
+
+
+
+ private final Vector<INode> maAttributes;
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/iterator/DereferencingNodeIterator.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/iterator/DereferencingNodeIterator.java
new file mode 100644
index 000000000000..77c8f9837c55
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/iterator/DereferencingNodeIterator.java
@@ -0,0 +1,111 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.iterator;
+
+import java.util.Iterator;
+import java.util.Vector;
+
+import org.apache.openoffice.ooxml.schema.model.base.INode;
+import org.apache.openoffice.ooxml.schema.model.base.INodeReference;
+import org.apache.openoffice.ooxml.schema.model.schema.SchemaBase;
+
+/** Iterate over all nodes in a node tree. References to groups and elements
+ * are resolved and the referenced nodes are included in the iteration.
+ */
+public class DereferencingNodeIterator
+ implements Iterable<INode>
+
+{
+ public DereferencingNodeIterator (
+ final INode aRoot,
+ final SchemaBase aSchemaBase,
+ final boolean bIncludeReferencingNodes)
+ {
+ maRoot = aRoot;
+ maSchemaBase = aSchemaBase;
+ mbIncludeReferencingNodes = bIncludeReferencingNodes;
+ }
+
+
+
+
+ @Override
+ public Iterator<INode> iterator()
+ {
+ return CollectNodes(maRoot, mbIncludeReferencingNodes).iterator();
+ }
+
+
+
+
+ private Vector<INode> CollectNodes (
+ final INode aRoot,
+ final boolean bIncludeReferencingNodes)
+ {
+ final Vector<INode> aNodes = new Vector<>();
+ AddNodes(aNodes, aRoot, bIncludeReferencingNodes);
+ return aNodes;
+ }
+
+
+
+
+ private void AddNodes (
+ final Vector<INode> aNodes,
+ final INode aRoot,
+ final boolean bIncludeReferencingNodes)
+ {
+ for (final INode aNode : new NodeIterator(aRoot))
+ {
+ switch(aNode.GetNodeType())
+ {
+ case AttributeGroupReference:
+ case AttributeReference:
+ case ComplexTypeReference:
+ case ElementReference:
+ case GroupReference:
+ case SimpleTypeReference:
+ case Extension:
+ if (mbIncludeReferencingNodes)
+ aNodes.add(aNode);
+ for (final INode aChild : new DereferencingNodeIterator(
+ ((INodeReference)aNode).GetReferencedNode(maSchemaBase),
+ maSchemaBase,
+ bIncludeReferencingNodes))
+ {
+ aNodes.add(aChild);
+ }
+ break;
+
+ default:
+ aNodes.add(aNode);
+ }
+ }
+ }
+
+
+
+
+ private final INode maRoot;
+ private final SchemaBase maSchemaBase;
+ private final boolean mbIncludeReferencingNodes;
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/iterator/NodeIterator.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/iterator/NodeIterator.java
new file mode 100644
index 000000000000..8ecb2abe068c
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/iterator/NodeIterator.java
@@ -0,0 +1,68 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.iterator;
+
+import java.util.Iterator;
+import java.util.Vector;
+
+import org.apache.openoffice.ooxml.schema.model.base.INode;
+
+/** Iterate over all nodes in a node tree.
+ * The root node is typically a simple or complex type.
+ * References to elements or groups etc. are not followed. Use the
+ * DereferencingNodeIterator for that.
+ */
+public class NodeIterator
+ implements Iterable<INode>
+{
+ public NodeIterator (final INode aRoot)
+ {
+ maNodes = new Vector<>();
+ AddNodes(aRoot);
+ }
+
+
+
+
+ @Override
+ public Iterator<INode> iterator ()
+ {
+ return maNodes.iterator();
+ }
+
+
+
+
+ /** Recursively add child nodes depth first.
+ */
+ private void AddNodes (final INode aNode)
+ {
+ maNodes.add(aNode);
+ for (final INode aChild : aNode.GetChildren())
+ AddNodes(aChild);
+ }
+
+
+
+
+ private Vector<INode> maNodes;
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/iterator/PermutationIterator.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/iterator/PermutationIterator.java
new file mode 100644
index 000000000000..e71a6d4deac2
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/iterator/PermutationIterator.java
@@ -0,0 +1,137 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.iterator;
+
+
+/** Enumerate all permutations of a given array with elements of type T.
+ * The permutations are created in place, i.e. the array given to the constructor
+ * is modified as side effect of calling HasMore().
+ *
+ * The algorithm is taken from "The Art of Computer Programming, Volume 4,
+ * Fasicle 2, by Donald E. Knuth" from section 7.2.1.2, Algorithm P.
+ */
+public class PermutationIterator<T>
+{
+ public PermutationIterator (
+ final T[] aItems)
+ {
+ // Count the nodes.
+ mnItemCount = aItems.length;
+
+ // Set up three arrays, one with the actual nodes, one for the inversions
+ // and one for directions.
+ maItems = aItems;
+ maInversions = new int[mnItemCount];
+ maDirections = new int[mnItemCount];
+ for (int nIndex=0; nIndex<mnItemCount; ++nIndex)
+ {
+ maInversions[nIndex] = 0;
+ maDirections[nIndex] = 1;
+ }
+
+ mbHasMorePermutations = mnItemCount>0;
+ mbIsNextPermutationReady = true;
+ }
+
+
+
+
+ public boolean HasMore ()
+ {
+ if ( ! mbIsNextPermutationReady)
+ ProvideNextPermutation();
+ return mbHasMorePermutations;
+ }
+
+
+
+
+ public T[] Next()
+ {
+ assert(mbHasMorePermutations && mbIsNextPermutationReady);
+ mbIsNextPermutationReady = false;
+ return maItems;
+ }
+
+
+
+
+ private void ProvideNextPermutation ()
+ {
+ mbIsNextPermutationReady = true;
+
+ // Create the next permutation.
+ int nJ = mnItemCount;
+ int nS = 0;
+
+ while (true)
+ {
+ final int nQ = maInversions[nJ-1] + maDirections[nJ-1];
+ if (nQ>=0 && nQ<nJ)
+ {
+ // Exchange j-cj+s and j-q+s
+ final int nIndexA = nJ-maInversions[nJ - 1]+nS - 1;
+ final int nIndexB = nJ-nQ+nS - 1;
+ final T aItem = maItems[nIndexA];
+ maItems[nIndexA] = maItems[nIndexB];
+ maItems[nIndexB] = aItem;
+
+ // cj=q
+ maInversions[nJ - 1] = nQ;
+
+ // Next permutation is ready.
+ break;
+ }
+ else
+ {
+ if (nQ==nJ)
+ {
+ // Increase s.
+ if (nJ == 1)
+ {
+ // All permutations generated.
+ mbHasMorePermutations = false;
+ break;
+ }
+ else
+ {
+ ++nS;
+ }
+ }
+
+ // Switch direction.
+ maDirections[nJ - 1] = -maDirections[nJ - 1];
+ --nJ;
+ }
+ }
+ }
+
+
+
+
+ private final int mnItemCount;
+ private final T[] maItems;
+ private final int[] maInversions;
+ private final int[] maDirections;
+ private boolean mbIsNextPermutationReady;
+ private boolean mbHasMorePermutations;
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/misc/Log.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/misc/Log.java
new file mode 100644
index 000000000000..8ac464743dae
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/misc/Log.java
@@ -0,0 +1,126 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.misc;
+
+import java.io.File;
+import java.io.FileNotFoundException;
+import java.io.FileOutputStream;
+import java.io.PrintStream;
+
+/** Make output with indentation easier.
+ */
+public class Log
+{
+ public Log (final File aFile)
+ {
+ PrintStream aOut = null;
+ try
+ {
+ aOut = new PrintStream(new FileOutputStream(aFile));
+ }
+ catch (FileNotFoundException e)
+ {
+ e.printStackTrace();
+ }
+ maOut = aOut;
+ mbIsActive = maOut!=null;
+ msIndentation = "";
+ }
+
+
+
+
+ public void AddComment (
+ final String sFormat,
+ final Object ... aArgumentList)
+ {
+ if (mbIsActive)
+ {
+ maOut.print(msIndentation);
+ maOut.print("// ");
+ maOut.printf(sFormat, aArgumentList);
+ maOut.print("\n");
+ }
+ }
+
+
+
+
+ public void StartBlock ()
+ {
+ if (mbIsActive)
+ msIndentation += " ";
+ }
+
+
+
+
+ public void EndBlock ()
+ {
+ if (mbIsActive)
+ msIndentation = msIndentation.substring(4);
+ }
+
+
+
+
+ public void printf (
+ final String sFormat, final Object ... aArgumentList)
+ {
+ if (mbIsActive)
+ {
+ final String sMessage = String.format(sFormat, aArgumentList);
+ maOut.print(msIndentation);
+ maOut.print(sMessage);
+ }
+ }
+
+
+
+
+ public void println (
+ final String sMessage)
+ {
+ if (mbIsActive)
+ {
+ maOut.print(msIndentation);
+ maOut.print(sMessage);
+ maOut.print("\n");
+ }
+ }
+
+
+
+
+ public void Close()
+ {
+ if (mbIsActive)
+ maOut.close();
+ }
+
+
+
+
+ private final PrintStream maOut;
+ private final boolean mbIsActive;
+ private String msIndentation;
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/attribute/Attribute.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/attribute/Attribute.java
new file mode 100644
index 000000000000..84f68cb77354
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/attribute/Attribute.java
@@ -0,0 +1,91 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.model.attribute;
+
+import org.apache.openoffice.ooxml.schema.model.base.INodeVisitor;
+import org.apache.openoffice.ooxml.schema.model.base.Location;
+import org.apache.openoffice.ooxml.schema.model.base.NodeType;
+import org.apache.openoffice.ooxml.schema.model.base.QualifiedName;
+import org.apache.openoffice.ooxml.schema.parser.FormDefault;
+
+/* Representation of a single attribute.
+ */
+public class Attribute
+ extends AttributeBase
+{
+ public Attribute (
+ final QualifiedName aName,
+ final QualifiedName aTypeName,
+ final String sUse,
+ final String sDefault,
+ final String sFixed,
+ final FormDefault eFormDefault,
+ final Location aLocation)
+ {
+ super(aName, sUse, sDefault, sFixed, eFormDefault, aLocation);
+ maTypeName = aTypeName;
+ }
+
+
+
+
+ public QualifiedName GetTypeName ()
+ {
+ return maTypeName;
+ }
+
+
+
+
+ @Override
+ public NodeType GetNodeType ()
+ {
+ return NodeType.Attribute;
+ }
+
+
+
+
+ @Override
+ public void AcceptVisitor (final INodeVisitor aVisitor)
+ {
+ aVisitor.Visit(this);
+ }
+
+
+
+
+ @Override
+ public String toString ()
+ {
+ return String.format(
+ "attribute %s of type %s, %s",
+ GetName().GetDisplayName(),
+ maTypeName.GetDisplayName(),
+ super.toString());
+ }
+
+
+
+
+ private final QualifiedName maTypeName;
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/attribute/AttributeBase.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/attribute/AttributeBase.java
new file mode 100644
index 000000000000..4fbf987a5be7
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/attribute/AttributeBase.java
@@ -0,0 +1,117 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.model.attribute;
+
+import org.apache.openoffice.ooxml.schema.model.base.Location;
+import org.apache.openoffice.ooxml.schema.model.base.Node;
+import org.apache.openoffice.ooxml.schema.model.base.QualifiedName;
+import org.apache.openoffice.ooxml.schema.parser.FormDefault;
+
+/** Base class for both Attribute and AttributeReference classes.
+ */
+public abstract class AttributeBase
+ extends Node
+{
+ public enum Use
+ {
+ Optional,
+ Required
+ }
+
+
+
+ public AttributeBase (
+ final QualifiedName aName,
+ final String sUse,
+ final String sDefault,
+ final String sFixed,
+ final FormDefault eFormDefault,
+ final Location aLocation)
+ {
+ super(null, aName, aLocation);
+
+ switch(sUse)
+ {
+ case "optional":
+ meUse = Use.Optional;
+ break;
+ case "required":
+ meUse = Use.Required;
+ break;
+ default:
+ throw new RuntimeException("value of 'use' attribute is neither 'optional' nor 'required' but "+sUse);
+ }
+ msDefault = sDefault;
+ msFixed = sFixed;
+ meFormDefault = eFormDefault;
+ }
+
+
+
+
+ public FormDefault GetFormDefault()
+ {
+ return meFormDefault;
+ }
+
+
+
+
+ public Use GetUse ()
+ {
+ return meUse;
+ }
+
+
+
+
+ public String GetDefault()
+ {
+ return msDefault;
+ }
+
+
+
+
+ @Override
+ public String toString ()
+ {
+ String sText = "use "+meUse.toString();
+ if (msDefault != null)
+ sText += ", default "+msDefault;
+ else
+ sText += ", no default";
+ if (msFixed != null)
+ sText += ", fixed to "+msFixed;
+ else
+ sText += ", not fixed";
+ return sText;
+ }
+
+
+
+
+ private final Use meUse;
+ private final String msDefault;
+ private final String msFixed;
+ private final FormDefault meFormDefault;
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/attribute/AttributeGroup.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/attribute/AttributeGroup.java
new file mode 100644
index 000000000000..92b7151678d4
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/attribute/AttributeGroup.java
@@ -0,0 +1,65 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.model.attribute;
+
+import org.apache.openoffice.ooxml.schema.model.base.INodeVisitor;
+import org.apache.openoffice.ooxml.schema.model.base.Location;
+import org.apache.openoffice.ooxml.schema.model.base.Node;
+import org.apache.openoffice.ooxml.schema.model.base.NodeType;
+import org.apache.openoffice.ooxml.schema.model.base.QualifiedName;
+
+public class AttributeGroup
+ extends Node
+{
+ public AttributeGroup (
+ final QualifiedName aName,
+ final Location aLocation)
+ {
+ super(null, aName, aLocation);
+ }
+
+
+
+
+ @Override
+ public NodeType GetNodeType ()
+ {
+ return NodeType.AttributeGroup;
+ }
+
+
+
+
+ @Override
+ public void AcceptVisitor (final INodeVisitor aVisitor)
+ {
+ aVisitor.Visit(this);
+ }
+
+
+
+
+ public String toString ()
+ {
+ return "attribute group "+GetName().GetDisplayName();
+ }
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/attribute/AttributeGroupReference.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/attribute/AttributeGroupReference.java
new file mode 100644
index 000000000000..aa1e7470fe0e
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/attribute/AttributeGroupReference.java
@@ -0,0 +1,110 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.model.attribute;
+
+import org.apache.openoffice.ooxml.schema.model.base.INode;
+import org.apache.openoffice.ooxml.schema.model.base.INodeReference;
+import org.apache.openoffice.ooxml.schema.model.base.INodeVisitor;
+import org.apache.openoffice.ooxml.schema.model.base.Location;
+import org.apache.openoffice.ooxml.schema.model.base.Node;
+import org.apache.openoffice.ooxml.schema.model.base.NodeType;
+import org.apache.openoffice.ooxml.schema.model.base.QualifiedName;
+import org.apache.openoffice.ooxml.schema.model.schema.SchemaBase;
+
+public class AttributeGroupReference
+ extends Node
+ implements INodeReference
+{
+ public AttributeGroupReference (
+ final QualifiedName aReferencedElementName,
+ final Location aLocation)
+ {
+ super(null, null, aLocation);
+ maReferencedElement = aReferencedElementName;
+ }
+
+
+
+
+ @Override
+ public INode GetOnlyChild ()
+ {
+ throw new RuntimeException("AttributeGroupReference has no children");
+ }
+
+
+
+
+ @Override
+ public void AcceptVisitor (final INodeVisitor aVisitor)
+ {
+ aVisitor.Visit(this);
+ }
+
+
+
+
+ public QualifiedName GetReferencedName ()
+ {
+ return maReferencedElement;
+ }
+
+
+
+
+ public AttributeGroup GetReferencedAttributeGroup (final SchemaBase aSchemaBase)
+ {
+ return aSchemaBase.AttributeGroups.Get(maReferencedElement);
+ }
+
+
+
+
+ @Override
+ public INode GetReferencedNode (final SchemaBase aSchemaBase)
+ {
+ return GetReferencedAttributeGroup(aSchemaBase);
+ }
+
+
+
+
+ @Override
+ public NodeType GetNodeType ()
+ {
+ return NodeType.AttributeGroupReference;
+ }
+
+
+
+
+ @Override
+ public String toString ()
+ {
+ return "reference to attribute group "+maReferencedElement.GetDisplayName();
+ }
+
+
+
+
+ private final QualifiedName maReferencedElement;
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/attribute/AttributeReference.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/attribute/AttributeReference.java
new file mode 100644
index 000000000000..a1c97d6c2c4e
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/attribute/AttributeReference.java
@@ -0,0 +1,115 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.model.attribute;
+
+import org.apache.openoffice.ooxml.schema.model.base.INode;
+import org.apache.openoffice.ooxml.schema.model.base.INodeReference;
+import org.apache.openoffice.ooxml.schema.model.base.INodeVisitor;
+import org.apache.openoffice.ooxml.schema.model.base.Location;
+import org.apache.openoffice.ooxml.schema.model.base.NodeType;
+import org.apache.openoffice.ooxml.schema.model.base.QualifiedName;
+import org.apache.openoffice.ooxml.schema.model.schema.SchemaBase;
+import org.apache.openoffice.ooxml.schema.parser.FormDefault;
+
+public class AttributeReference
+ extends AttributeBase
+ implements INodeReference
+{
+ public AttributeReference (
+ final QualifiedName aReferencedName,
+ final String sUse,
+ final String sDefault,
+ final String sFixed,
+ final FormDefault eFormDefault,
+ final Location aLocation)
+ {
+ super(aReferencedName, sUse, sDefault, sFixed, eFormDefault, aLocation);
+
+ maReferencedName = aReferencedName;
+ }
+
+
+
+
+ public Attribute GetReferencedAttribute (final SchemaBase aSchemaBase)
+ {
+ final Attribute aAttribute = aSchemaBase.Attributes.Get(maReferencedName);
+ if (aAttribute == null)
+ {
+ throw new RuntimeException(
+ String.format(
+ "can not find attribute %s, referenced at %s",
+ maReferencedName.GetDisplayName(),
+ GetLocation()));
+ }
+ return aAttribute;
+ }
+
+
+
+
+ @Override
+ public INode GetReferencedNode (final SchemaBase aSchemaBase)
+ {
+ return GetReferencedAttribute(aSchemaBase);
+ }
+
+
+
+
+ public QualifiedName GetReferencedName ()
+ {
+ return maReferencedName;
+ }
+
+
+
+
+ @Override
+ public NodeType GetNodeType ()
+ {
+ return NodeType.AttributeReference;
+ }
+
+
+
+
+ @Override
+ public void AcceptVisitor(INodeVisitor aVisitor)
+ {
+ aVisitor.Visit(this);
+ }
+
+
+
+
+ @Override
+ public String toString ()
+ {
+ return "attribute reference to "+maReferencedName;
+ }
+
+
+
+
+ private final QualifiedName maReferencedName;
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/base/INode.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/base/INode.java
new file mode 100644
index 000000000000..df8208b9adeb
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/base/INode.java
@@ -0,0 +1,39 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.model.base;
+
+
+/** Interface of all nodes in a tree of XML schema nodes.
+ * It is implemented by complex types, simple types, and attributes.
+ */
+public interface INode
+{
+ NodeType GetNodeType ();
+ QualifiedName GetName ();
+ int GetChildCount();
+ Iterable<INode> GetChildren();
+ INode GetOnlyChild();
+ int GetAttributeCount();
+ Iterable<INode> GetAttributes ();
+ void AcceptVisitor (final INodeVisitor aVisitor);
+ Location GetLocation ();
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/base/INodeReference.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/base/INodeReference.java
new file mode 100644
index 000000000000..e4644563be14
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/base/INodeReference.java
@@ -0,0 +1,32 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.model.base;
+
+import org.apache.openoffice.ooxml.schema.model.schema.SchemaBase;
+
+/** Interface implemented by all references to INodes.
+ */
+public interface INodeReference
+ extends INode
+{
+ INode GetReferencedNode (final SchemaBase aSchema);
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/base/INodeVisitor.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/base/INodeVisitor.java
new file mode 100644
index 000000000000..664384dced5a
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/base/INodeVisitor.java
@@ -0,0 +1,85 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.model.base;
+
+import org.apache.openoffice.ooxml.schema.model.attribute.Attribute;
+import org.apache.openoffice.ooxml.schema.model.attribute.AttributeGroup;
+import org.apache.openoffice.ooxml.schema.model.attribute.AttributeGroupReference;
+import org.apache.openoffice.ooxml.schema.model.attribute.AttributeReference;
+import org.apache.openoffice.ooxml.schema.model.complex.All;
+import org.apache.openoffice.ooxml.schema.model.complex.Any;
+import org.apache.openoffice.ooxml.schema.model.complex.Choice;
+import org.apache.openoffice.ooxml.schema.model.complex.ComplexContent;
+import org.apache.openoffice.ooxml.schema.model.complex.ComplexType;
+import org.apache.openoffice.ooxml.schema.model.complex.ComplexTypeReference;
+import org.apache.openoffice.ooxml.schema.model.complex.Element;
+import org.apache.openoffice.ooxml.schema.model.complex.ElementReference;
+import org.apache.openoffice.ooxml.schema.model.complex.Extension;
+import org.apache.openoffice.ooxml.schema.model.complex.Group;
+import org.apache.openoffice.ooxml.schema.model.complex.GroupReference;
+import org.apache.openoffice.ooxml.schema.model.complex.OccurrenceIndicator;
+import org.apache.openoffice.ooxml.schema.model.complex.Sequence;
+import org.apache.openoffice.ooxml.schema.model.simple.BuiltIn;
+import org.apache.openoffice.ooxml.schema.model.simple.List;
+import org.apache.openoffice.ooxml.schema.model.simple.Restriction;
+import org.apache.openoffice.ooxml.schema.model.simple.SimpleContent;
+import org.apache.openoffice.ooxml.schema.model.simple.SimpleType;
+import org.apache.openoffice.ooxml.schema.model.simple.SimpleTypeReference;
+import org.apache.openoffice.ooxml.schema.model.simple.Union;
+
+/** Interface for the visitor pattern.
+ * Use a node visitor instead of INode/NodeType and casting INode to a derived
+ * class.
+ * See also the default implementation NodeVisitorAdapter.
+ */
+public interface INodeVisitor
+{
+ // Complex nodes.
+ void Visit (final All aAll);
+ void Visit (final Any aAny);
+ void Visit (final ComplexContent aComplexContent);
+ void Visit (final ComplexType aNode);
+ void Visit (final ComplexTypeReference aTypeReference);
+ void Visit (final Choice aChoice);
+ void Visit (final Element aElement);
+ void Visit (final ElementReference aElementReference);
+ void Visit (final Extension aNode);
+ void Visit (final Group aGroup);
+ void Visit (final GroupReference aGroupReference);
+ void Visit (final OccurrenceIndicator aOccurrenceIndicator);
+ void Visit (final Sequence aNode);
+
+ // Simple nodes.
+ void Visit (final BuiltIn aType);
+ void Visit (final List aList);
+ void Visit (final Restriction aRestriction);
+ void Visit (final SimpleContent aSimpleContent);
+ void Visit (final SimpleType aSimpleType);
+ void Visit (final SimpleTypeReference aSimpleTypeReference);
+ void Visit (final Union aUnion);
+
+ // Attributes.
+ void Visit (final AttributeGroup attributeGroup);
+ void Visit (final AttributeReference attributeReference);
+ void Visit (final Attribute attribute);
+ void Visit (final AttributeGroupReference attributeGroupReference);
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/base/Location.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/base/Location.java
new file mode 100644
index 000000000000..8ebd8093b014
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/base/Location.java
@@ -0,0 +1,69 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.model.base;
+
+/** The location in a file consisting of file name, line number, column number
+ * and byte index in the file.
+ */
+public class Location
+{
+ public Location (
+ final String sFilename,
+ final int nLineNumber,
+ final int nColumnNumber,
+ final int nOffset)
+ {
+ msFilename = sFilename;
+ mnLineNumber = nLineNumber;
+ mnColumnNumber = nColumnNumber;
+ mnOffset = nOffset;
+ }
+
+
+
+
+ public Location ()
+ {
+ this("<predefined>", 0,0,0);
+ }
+
+
+
+
+ @Override
+ public String toString ()
+ {
+ return String.format("%s:%d,%d/%d",
+ msFilename,
+ mnLineNumber,
+ mnColumnNumber,
+ mnOffset);
+ }
+
+
+
+
+ private final String msFilename;
+ private final int mnLineNumber;
+ private final int mnColumnNumber;
+ private final int mnOffset;
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/base/Node.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/base/Node.java
new file mode 100644
index 000000000000..b965b0dba1cc
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/base/Node.java
@@ -0,0 +1,172 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.model.base;
+
+import java.util.Vector;
+
+/** Base class for the nodes in the type hierarchies that represent complex
+ * types, simple types, and attributes.
+ */
+public abstract class Node
+ implements INode, Comparable<Node>
+{
+ abstract public NodeType GetNodeType ();
+
+
+
+ protected Node (
+ final Node aParent,
+ final QualifiedName aName,
+ final Location aLocation)
+ {
+ maParent = aParent;
+ maName = aName;
+
+ maLocation = aLocation;
+ maAttributes = new Vector<>();
+ maChildren = new Vector<>();
+ }
+
+
+
+
+ @Override
+ public QualifiedName GetName ()
+ {
+ return maName;
+ }
+
+
+
+
+ public Node GetParent ()
+ {
+ return maParent;
+ }
+
+
+
+
+ /** Store the location in the schema files. This is used for debugging or the creation of documentation.
+ */
+ public void SetLocation (
+ final Location aLocation)
+ {
+ maLocation = aLocation;
+ }
+
+
+
+
+ public Location GetLocation ()
+ {
+ return maLocation;
+ }
+
+
+
+
+ public void AddAttribute (final INode aAttribute)
+ {
+ maAttributes.add(aAttribute);
+ }
+
+
+
+
+ @Override
+ public int GetAttributeCount ()
+ {
+ return maAttributes.size();
+ }
+
+
+
+
+ @Override
+ public Iterable<INode> GetAttributes ()
+ {
+ return maAttributes;
+ }
+
+
+
+ public void ClearChildren ()
+ {
+ maChildren.clear();
+ }
+
+
+
+ public void AddChild (final INode aChild)
+ {
+ maChildren.add(aChild);
+ }
+
+
+
+
+ public Iterable<INode> GetChildren ()
+ {
+ return maChildren;
+ }
+
+
+
+
+ public INode GetOnlyChild ()
+ {
+ assert(maChildren.size() == 1);
+ return maChildren.get(0);
+ }
+
+
+
+
+ public int GetChildCount ()
+ {
+ return maChildren.size();
+ }
+
+
+
+
+ @Override
+ public int compareTo (final Node aOther)
+ {
+ if (maName==null || aOther.maName==null)
+ {
+ throw new RuntimeException("can not compare nodes that don't have a name");
+ }
+ else
+ return maName.compareTo(aOther.maName);
+ }
+
+
+
+
+ private final Node maParent;
+ private final QualifiedName maName;
+ private Location maLocation;
+ private final Vector<INode> maAttributes;
+ private final Vector<INode> maChildren;
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/base/NodeType.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/base/NodeType.java
new file mode 100644
index 000000000000..98649af621f2
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/base/NodeType.java
@@ -0,0 +1,53 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.model.base;
+
+/** Type of a node in the XML schema tree.
+ * It basically corresponds to the class of a node.
+ */
+public enum NodeType
+{
+ All,
+ Any,
+ Attribute,
+ AttributeReference,
+ AttributeGroup,
+ AttributeGroupReference,
+ BuiltIn,
+ Choice,
+ ComplexContent,
+ ComplexType,
+ ComplexTypeReference,
+ Element,
+ ElementReference,
+ Extension,
+ Group,
+ GroupReference,
+ List,
+ OccurrenceIndicator,
+ Restriction,
+ Sequence,
+ SimpleContent,
+ SimpleType,
+ SimpleTypeReference,
+ Union
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/base/NodeVisitorAdapter.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/base/NodeVisitorAdapter.java
new file mode 100644
index 000000000000..2096d8df95ee
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/base/NodeVisitorAdapter.java
@@ -0,0 +1,203 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.model.base;
+
+import org.apache.openoffice.ooxml.schema.model.attribute.Attribute;
+import org.apache.openoffice.ooxml.schema.model.attribute.AttributeGroup;
+import org.apache.openoffice.ooxml.schema.model.attribute.AttributeGroupReference;
+import org.apache.openoffice.ooxml.schema.model.attribute.AttributeReference;
+import org.apache.openoffice.ooxml.schema.model.complex.All;
+import org.apache.openoffice.ooxml.schema.model.complex.Any;
+import org.apache.openoffice.ooxml.schema.model.complex.Choice;
+import org.apache.openoffice.ooxml.schema.model.complex.ComplexContent;
+import org.apache.openoffice.ooxml.schema.model.complex.ComplexType;
+import org.apache.openoffice.ooxml.schema.model.complex.ComplexTypeReference;
+import org.apache.openoffice.ooxml.schema.model.complex.Element;
+import org.apache.openoffice.ooxml.schema.model.complex.ElementReference;
+import org.apache.openoffice.ooxml.schema.model.complex.Extension;
+import org.apache.openoffice.ooxml.schema.model.complex.Group;
+import org.apache.openoffice.ooxml.schema.model.complex.GroupReference;
+import org.apache.openoffice.ooxml.schema.model.complex.OccurrenceIndicator;
+import org.apache.openoffice.ooxml.schema.model.complex.Sequence;
+import org.apache.openoffice.ooxml.schema.model.simple.BuiltIn;
+import org.apache.openoffice.ooxml.schema.model.simple.List;
+import org.apache.openoffice.ooxml.schema.model.simple.Restriction;
+import org.apache.openoffice.ooxml.schema.model.simple.SimpleContent;
+import org.apache.openoffice.ooxml.schema.model.simple.SimpleType;
+import org.apache.openoffice.ooxml.schema.model.simple.SimpleTypeReference;
+import org.apache.openoffice.ooxml.schema.model.simple.Union;
+
+/** Implementation of the INodeVisitor interface.
+ * All methods that are not overridden are redirected to the Default(INode)
+ * method.
+ */
+public class NodeVisitorAdapter
+ implements INodeVisitor
+{
+ @Override
+ public void Visit (final All aNode)
+ {
+ Default(aNode);
+ }
+
+ @Override
+ public void Visit (final Any aNode)
+ {
+ Default(aNode);
+ }
+
+ @Override
+ public void Visit (final Choice aNode)
+ {
+ Default(aNode);
+ }
+
+ @Override
+ public void Visit (final ComplexContent aNode)
+ {
+ Default(aNode);
+ }
+
+ @Override
+ public void Visit (final ComplexType aNode)
+ {
+ Default(aNode);
+ }
+
+ @Override
+ public void Visit (final ComplexTypeReference aTypeReference)
+ {
+ Default(aTypeReference);
+ }
+
+ @Override
+ public void Visit (final Element aNode)
+ {
+ Default(aNode);
+ }
+
+ @Override
+ public void Visit (final ElementReference aNode)
+ {
+ Default(aNode);
+ }
+
+ @Override
+ public void Visit (final Extension aNode)
+ {
+ Default(aNode);
+ }
+
+ @Override
+ public void Visit (final Group aNode)
+ {
+ Default(aNode);
+ }
+
+ @Override
+ public void Visit (final GroupReference aNode)
+ {
+ Default(aNode);
+ }
+
+ @Override
+ public void Visit (final OccurrenceIndicator aIndicator)
+ {
+ Default(aIndicator);
+ }
+
+ @Override
+ public void Visit(Sequence aNode)
+ {
+ Default(aNode);
+ }
+
+ @Override
+ public void Visit (final BuiltIn aType)
+ {
+ Default(aType);
+ }
+
+ @Override
+ public void Visit (final List aList)
+ {
+ Default(aList);
+ }
+
+ @Override
+ public void Visit (final SimpleContent aSimpleContent)
+ {
+ Default(aSimpleContent);
+ }
+
+ @Override
+ public void Visit (final SimpleType aSimpleType)
+ {
+ Default(aSimpleType);
+ }
+
+ @Override
+ public void Visit (final SimpleTypeReference aSimpleTypeReference)
+ {
+ Default(aSimpleTypeReference);
+ }
+
+ @Override
+ public void Visit (final Union aUnion)
+ {
+ Default(aUnion);
+ }
+
+ @Override
+ public void Visit (final Restriction aRestriction)
+ {
+ Default(aRestriction);
+ }
+
+ @Override
+ public void Visit (final AttributeGroup aAttributeGroup)
+ {
+ Default(aAttributeGroup);
+ }
+
+ @Override
+ public void Visit (final AttributeGroupReference aAttributeGroupReference)
+ {
+ Default(aAttributeGroupReference);
+ }
+
+ @Override
+ public void Visit (final AttributeReference aAttributeReference)
+ {
+ Default(aAttributeReference);
+ }
+
+ @Override
+ public void Visit (final Attribute aAttribute)
+ {
+ Default(aAttribute);
+ }
+
+ public void Default (final INode aNode)
+ {
+ }
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/base/QualifiedName.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/base/QualifiedName.java
new file mode 100644
index 000000000000..d56df52cb8cf
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/base/QualifiedName.java
@@ -0,0 +1,149 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.model.base;
+
+import javax.xml.namespace.QName;
+
+/** Similar to the QName class. A qualified name that consists of the local
+ * part and a namespace.
+ * The namespace is stored both as URI and short form (prefix).
+ */
+public class QualifiedName
+ implements Comparable<QualifiedName>
+{
+ public QualifiedName (final QName aName)
+ {
+ msLocalPart = aName.getLocalPart();
+ msNamespacePrefix = aName.getPrefix();
+ msNamespaceURI = aName.getNamespaceURI();
+ }
+
+
+
+
+ public QualifiedName (
+ final String sNamespaceURI,
+ final String sNamespacePrefix,
+ final String sLocalPart)
+ {
+ msLocalPart = sLocalPart;
+ msNamespacePrefix = sNamespacePrefix;
+ msNamespaceURI = sNamespaceURI;
+ }
+
+
+
+
+ public QualifiedName (final String sLocalPart)
+ {
+ this(null, null, sLocalPart);
+ }
+
+
+
+
+ /** Return a textual representation for informal (and informative) display.
+ */
+ public String GetDisplayName ()
+ {
+ if (msNamespacePrefix == null)
+ return msLocalPart;
+ else
+ return msNamespacePrefix + ":" + msLocalPart;
+ }
+
+
+
+
+ public String GetStateName()
+ {
+ if (msNamespacePrefix == null)
+ return msLocalPart;
+ else
+ return msNamespacePrefix + "_" + msLocalPart;
+ }
+
+
+
+
+ public String GetNamespaceURI ()
+ {
+ return msNamespaceURI;
+ }
+
+
+
+
+ public String GetNamespacePrefix ()
+ {
+ return msNamespacePrefix;
+ }
+
+
+
+
+ public String GetLocalPart ()
+ {
+ return msLocalPart;
+ }
+
+
+
+
+ /** Compare QualifiedName objects (e.g. for sorting them).
+ * Primary sort key is the local part.
+ * Secondary key is the namespace prefix.
+ * Missing prefixes come before existing prefixes.
+ */
+ @Override
+ public int compareTo (final QualifiedName aOther)
+ {
+ final int nComparisonResult = msLocalPart.compareTo(aOther.msLocalPart);
+ if (nComparisonResult != 0)
+ return nComparisonResult;
+ else
+ if (msNamespacePrefix==null && aOther.msNamespacePrefix==null)
+ return 0;
+ else if (msNamespacePrefix!=null && aOther.msNamespacePrefix!=null)
+ return msNamespacePrefix.compareTo(aOther.msNamespacePrefix);
+ else if (msNamespacePrefix==null)
+ return -1;
+ else
+ return +1;
+ }
+
+
+
+
+ @Override
+ public String toString ()
+ {
+ return GetDisplayName();
+ }
+
+
+
+
+ private final String msLocalPart;
+ private final String msNamespacePrefix;
+ private final String msNamespaceURI;
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/complex/All.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/complex/All.java
new file mode 100644
index 000000000000..cb1de8adf2b9
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/complex/All.java
@@ -0,0 +1,96 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.model.complex;
+
+import org.apache.openoffice.ooxml.schema.model.base.INodeVisitor;
+import org.apache.openoffice.ooxml.schema.model.base.Location;
+import org.apache.openoffice.ooxml.schema.model.base.Node;
+import org.apache.openoffice.ooxml.schema.model.base.NodeType;
+
+/** Representation of the 'all' XML schema element. All its children are
+ * expected to occur in any order. By default each child is optional but with
+ * a min=1 attribute the children can be made mandatory.
+ */
+public class All
+ extends Node
+{
+ public All (
+ final Node aParent,
+ final Location aLocation)
+ {
+ super(aParent, null, aLocation);
+
+ assert(CheckParent(aParent));
+ }
+
+
+
+
+ /** Occurrence values of an 'all' node must be
+ * min=(0,1)
+ * max=1.
+ */
+ private static boolean CheckParent (final Node aParent)
+ {
+ if (aParent == null)
+ return false;
+ if (aParent.GetNodeType() != NodeType.OccurrenceIndicator)
+ // Missing occurrence parent means that min and max have the default
+ // values of 0 and 1, which is valid.
+ return true;
+
+ final OccurrenceIndicator aIndicator = (OccurrenceIndicator)aParent;
+ if (aIndicator.GetMinimum() > 1)
+ return false;
+ else if (aIndicator.GetMaximum() != 1)
+ return false;
+ else
+ return true;
+ }
+
+
+
+
+ @Override
+ public void AcceptVisitor (final INodeVisitor aVisitor)
+ {
+ aVisitor.Visit(this);
+ }
+
+
+
+
+ @Override
+ public NodeType GetNodeType()
+ {
+ return NodeType.All;
+ }
+
+
+
+
+ @Override
+ public String toString ()
+ {
+ return "all";
+ }
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/complex/Any.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/complex/Any.java
new file mode 100644
index 000000000000..cc2573b86d46
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/complex/Any.java
@@ -0,0 +1,112 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.model.complex;
+
+import org.apache.openoffice.ooxml.schema.model.base.INodeVisitor;
+import org.apache.openoffice.ooxml.schema.model.base.Location;
+import org.apache.openoffice.ooxml.schema.model.base.Node;
+import org.apache.openoffice.ooxml.schema.model.base.NodeType;
+
+/** Representation of the 'any' XML schema element. It specifies that its
+ * children conform to a non-standard schema. If it is unknown than the
+ * children are to be ignored.
+ */
+public class Any
+ extends Node
+{
+ public enum ProcessContents
+ {
+ lax,
+ skip,
+ strict
+ }
+
+ public Any (
+ final Node aParent,
+ final Location aLocation,
+ final String sProcessContents,
+ final String sNamespace)
+ {
+ super(aParent, null, aLocation);
+ meProcessContents = ProcessContents.valueOf(sProcessContents);
+ maNamespaces = sNamespace.split("\\s+");
+ }
+
+
+
+ @Override
+ public NodeType GetNodeType ()
+ {
+ return NodeType.Any;
+ }
+
+
+
+
+ @Override
+ public void AcceptVisitor (final INodeVisitor aVisitor)
+ {
+ aVisitor.Visit(this);
+ }
+
+
+ public ProcessContents GetProcessContentsFlag ()
+ {
+ return meProcessContents;
+ }
+
+
+
+
+ public String[] GetNamespaces ()
+ {
+ return maNamespaces;
+ }
+
+
+
+
+ @Override
+ public String toString ()
+ {
+ final StringBuffer aBuffer = new StringBuffer();
+ aBuffer.append("any processContents=");
+ aBuffer.append(meProcessContents.toString());
+ aBuffer.append(", namespaces=");
+ boolean bFirst = true;
+ for (final String sNamespace : maNamespaces)
+ {
+ if (bFirst)
+ bFirst = false;
+ else
+ aBuffer.append('|');
+ aBuffer.append(sNamespace);
+ }
+ return aBuffer.toString();
+ }
+
+
+
+
+ private final ProcessContents meProcessContents;
+ private final String[] maNamespaces;
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/complex/Choice.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/complex/Choice.java
new file mode 100644
index 000000000000..ab00f1237e3e
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/complex/Choice.java
@@ -0,0 +1,68 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.model.complex;
+
+import org.apache.openoffice.ooxml.schema.model.base.INodeVisitor;
+import org.apache.openoffice.ooxml.schema.model.base.Location;
+import org.apache.openoffice.ooxml.schema.model.base.Node;
+import org.apache.openoffice.ooxml.schema.model.base.NodeType;
+
+/** Representation of the 'choice' XML schema element.
+ * With the default max value (1) only one of its children may occur.
+ */
+public class Choice
+ extends Node
+{
+ public Choice (
+ final Node aParent,
+ final Location aLocation)
+ {
+ super(aParent, null, aLocation);
+ }
+
+
+
+
+ @Override
+ public NodeType GetNodeType ()
+ {
+ return NodeType.Choice;
+ }
+
+
+
+
+ @Override
+ public void AcceptVisitor (final INodeVisitor aVisitor)
+ {
+ aVisitor.Visit(this);
+ }
+
+
+
+
+ @Override
+ public String toString ()
+ {
+ return "choice";
+ }
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/complex/ComplexContent.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/complex/ComplexContent.java
new file mode 100644
index 000000000000..0ca462ffc56d
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/complex/ComplexContent.java
@@ -0,0 +1,65 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.model.complex;
+
+import org.apache.openoffice.ooxml.schema.model.base.INodeVisitor;
+import org.apache.openoffice.ooxml.schema.model.base.Location;
+import org.apache.openoffice.ooxml.schema.model.base.Node;
+import org.apache.openoffice.ooxml.schema.model.base.NodeType;
+
+public class ComplexContent
+ extends Node
+{
+ public ComplexContent (
+ final Node aParent,
+ final Location aLocation)
+ {
+ super(aParent, null, aLocation);
+ }
+
+
+
+
+ @Override
+ public void AcceptVisitor (final INodeVisitor aVisitor)
+ {
+ aVisitor.Visit(this);
+ }
+
+
+
+
+ @Override
+ public NodeType GetNodeType()
+ {
+ return NodeType.ComplexContent;
+ }
+
+
+
+
+ @Override
+ public String toString ()
+ {
+ return "complex content";
+ }
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/complex/ComplexType.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/complex/ComplexType.java
new file mode 100644
index 000000000000..7ea0de9404d1
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/complex/ComplexType.java
@@ -0,0 +1,72 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.model.complex;
+
+import org.apache.openoffice.ooxml.schema.model.base.INodeVisitor;
+import org.apache.openoffice.ooxml.schema.model.base.Location;
+import org.apache.openoffice.ooxml.schema.model.base.Node;
+import org.apache.openoffice.ooxml.schema.model.base.NodeType;
+import org.apache.openoffice.ooxml.schema.model.base.QualifiedName;
+
+/** Representation of the 'complexType' XML schema element. It specifies the
+ * structure of its children.
+ */
+public class ComplexType
+ extends Node
+{
+ public ComplexType (
+ final Node aParent,
+ final QualifiedName aName,
+ final Location aLocation)
+ {
+ super(aParent, aName, aLocation);
+
+ assert(aName!=null);
+ }
+
+
+
+
+ @Override
+ public NodeType GetNodeType ()
+ {
+ return NodeType.ComplexType;
+ }
+
+
+
+
+ @Override
+ public void AcceptVisitor (final INodeVisitor aVisitor)
+ {
+ aVisitor.Visit(this);
+ }
+
+
+
+
+ @Override
+ public String toString ()
+ {
+ return "complex type "+GetName().GetDisplayName();
+ }
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/complex/ComplexTypeReference.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/complex/ComplexTypeReference.java
new file mode 100644
index 000000000000..28266a4a5219
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/complex/ComplexTypeReference.java
@@ -0,0 +1,100 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.model.complex;
+
+import org.apache.openoffice.ooxml.schema.model.base.INode;
+import org.apache.openoffice.ooxml.schema.model.base.INodeReference;
+import org.apache.openoffice.ooxml.schema.model.base.INodeVisitor;
+import org.apache.openoffice.ooxml.schema.model.base.Location;
+import org.apache.openoffice.ooxml.schema.model.base.Node;
+import org.apache.openoffice.ooxml.schema.model.base.NodeType;
+import org.apache.openoffice.ooxml.schema.model.base.QualifiedName;
+import org.apache.openoffice.ooxml.schema.model.schema.SchemaBase;
+
+public class ComplexTypeReference
+ extends Node
+ implements INodeReference
+{
+ ComplexTypeReference (
+ final Node aParent,
+ final QualifiedName aReferencedTypeName,
+ final Location aLocation)
+ {
+ super(aParent, null, aLocation);
+ maReferencedTypeName = aReferencedTypeName;
+ }
+
+
+
+
+ public ComplexType GetReferencedComplexType (final SchemaBase aSchema)
+ {
+ final Node aType = aSchema.GetTypeForName(maReferencedTypeName);
+ if (aType == null)
+ throw new RuntimeException();
+ else if (aType.GetNodeType() != NodeType.ComplexType)
+ throw new RuntimeException();
+ else
+ return (ComplexType)aType;
+ }
+
+
+
+
+
+ public QualifiedName GetReferencedTypeName ()
+ {
+ return maReferencedTypeName;
+ }
+
+
+
+
+ @Override
+ public INode GetReferencedNode (final SchemaBase aSchema)
+ {
+ return GetReferencedComplexType(aSchema);
+ }
+
+
+
+
+ @Override
+ public void AcceptVisitor (final INodeVisitor aVisitor)
+ {
+ aVisitor.Visit(this);
+ }
+
+
+
+
+ @Override
+ public NodeType GetNodeType ()
+ {
+ return NodeType.SimpleTypeReference;
+ }
+
+
+
+
+ private final QualifiedName maReferencedTypeName;
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/complex/Element.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/complex/Element.java
new file mode 100644
index 000000000000..27c00fe6cf8b
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/complex/Element.java
@@ -0,0 +1,109 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.model.complex;
+
+import org.apache.openoffice.ooxml.schema.model.base.INodeVisitor;
+import org.apache.openoffice.ooxml.schema.model.base.Location;
+import org.apache.openoffice.ooxml.schema.model.base.Node;
+import org.apache.openoffice.ooxml.schema.model.base.NodeType;
+import org.apache.openoffice.ooxml.schema.model.base.QualifiedName;
+
+/** Representation of the 'element' XML schema element.
+ */
+public class Element
+ extends Node
+{
+ /** Create a new element that represents a transition to aTypeName when a
+ * start tag of aElementName is processed.
+ */
+ public Element (
+ final Node aParent,
+ final QualifiedName aElementName,
+ final QualifiedName aTypeName,
+ final Location aLocation)
+ {
+ super(aParent, aElementName, aLocation);
+ maElementName = aElementName;
+ maTypeName = aTypeName;
+ }
+
+
+
+
+ public QualifiedName GetElementName ()
+ {
+ return maElementName;
+ }
+
+
+
+
+ public QualifiedName GetTypeName ()
+ {
+ return maTypeName;
+ }
+
+
+
+
+ @Override
+ public int compareTo (final Node aOther)
+ {
+ if (aOther.GetNodeType() != NodeType.Element)
+ throw new RuntimeException("can not compare Element object to non-Element object");
+ else
+ return maElementName.compareTo(((Element)aOther).maElementName);
+ }
+
+
+
+
+ @Override
+ public NodeType GetNodeType ()
+ {
+ return NodeType.Element;
+ }
+
+
+
+
+ @Override
+ public void AcceptVisitor (final INodeVisitor aVisitor)
+ {
+ aVisitor.Visit(this);
+ }
+
+
+
+
+ @Override
+ public String toString ()
+ {
+ return "element " + maElementName.GetDisplayName() +" -> " + maTypeName.GetDisplayName();
+ }
+
+
+
+
+ private final QualifiedName maElementName;
+ private final QualifiedName maTypeName;
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/complex/ElementReference.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/complex/ElementReference.java
new file mode 100644
index 000000000000..48b2e7fa356f
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/complex/ElementReference.java
@@ -0,0 +1,106 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.model.complex;
+
+import org.apache.openoffice.ooxml.schema.model.base.INode;
+import org.apache.openoffice.ooxml.schema.model.base.INodeReference;
+import org.apache.openoffice.ooxml.schema.model.base.INodeVisitor;
+import org.apache.openoffice.ooxml.schema.model.base.Location;
+import org.apache.openoffice.ooxml.schema.model.base.Node;
+import org.apache.openoffice.ooxml.schema.model.base.NodeType;
+import org.apache.openoffice.ooxml.schema.model.base.QualifiedName;
+import org.apache.openoffice.ooxml.schema.model.schema.SchemaBase;
+
+public class ElementReference
+ extends Element
+ implements INodeReference
+{
+ public ElementReference (
+ final Node aParent,
+ final QualifiedName aReferencedElementName,
+ final Location aLocation)
+ {
+ super(aParent, null, null, aLocation);
+
+ maReferencedElementName = aReferencedElementName;
+ }
+
+
+
+
+ public QualifiedName GetReferencedElementName ()
+ {
+ return maReferencedElementName;
+ }
+
+
+
+
+ public Element GetReferencedElement (final SchemaBase aSchema)
+ {
+ final Element aElement = aSchema.TopLevelElements.Get(maReferencedElementName);
+ if (aElement == null)
+ throw new RuntimeException("can not find element "+maReferencedElementName.GetDisplayName());
+ return aElement;
+ }
+
+
+
+
+ @Override
+ public INode GetReferencedNode (final SchemaBase aSchema)
+ {
+ return GetReferencedElement(aSchema);
+ }
+
+
+
+
+ @Override
+ public NodeType GetNodeType ()
+ {
+ return NodeType.ElementReference;
+ }
+
+
+
+
+ @Override
+ public void AcceptVisitor (final INodeVisitor aVisitor)
+ {
+ aVisitor.Visit(this);
+ }
+
+
+
+
+ @Override
+ public String toString ()
+ {
+ return "element reference to "+maReferencedElementName.GetDisplayName();
+ }
+
+
+
+
+ private final QualifiedName maReferencedElementName;
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/complex/Extension.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/complex/Extension.java
new file mode 100644
index 000000000000..749c608f6c27
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/complex/Extension.java
@@ -0,0 +1,160 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.model.complex;
+
+import java.util.Vector;
+
+import org.apache.openoffice.ooxml.schema.model.base.INode;
+import org.apache.openoffice.ooxml.schema.model.base.INodeReference;
+import org.apache.openoffice.ooxml.schema.model.base.INodeVisitor;
+import org.apache.openoffice.ooxml.schema.model.base.Location;
+import org.apache.openoffice.ooxml.schema.model.base.Node;
+import org.apache.openoffice.ooxml.schema.model.base.NodeType;
+import org.apache.openoffice.ooxml.schema.model.base.QualifiedName;
+import org.apache.openoffice.ooxml.schema.model.schema.SchemaBase;
+
+/** Representation of the 'extension' XML schema element.
+ * It extends a complex base type.
+ */
+public class Extension
+ extends Node
+ implements INodeReference
+{
+ public Extension (
+ final Node aParent,
+ final QualifiedName aBaseTypeName,
+ final Location aLocation)
+ {
+ super(aParent, null, aLocation);
+ maBaseTypeName = aBaseTypeName;
+ }
+
+
+
+
+ @Override
+ public void AcceptVisitor (final INodeVisitor aVisitor)
+ {
+ aVisitor.Visit(this);
+ }
+
+
+
+
+ @Override
+ public NodeType GetNodeType()
+ {
+ return NodeType.Extension;
+ }
+
+
+
+
+ public QualifiedName GetBaseTypeName()
+ {
+ return maBaseTypeName;
+ }
+
+
+
+
+ public INode GetBaseType (final SchemaBase aSchema)
+ {
+ return aSchema.GetTypeForName(maBaseTypeName);
+ }
+
+
+
+
+ @Override
+ public INode GetReferencedNode (final SchemaBase aSchema)
+ {
+ return GetBaseType(aSchema);
+ }
+
+
+
+
+ public Vector<INode> GetTypeNodes (final SchemaBase aSchemaBase)
+ {
+ final Vector<INode> aNodes = new Vector<>();
+
+ AddNodes(aSchemaBase.GetTypeForName(maBaseTypeName), aNodes, aSchemaBase);
+ for (final INode aChild : GetChildren())
+ AddNodes(aChild, aNodes, aSchemaBase);
+
+ return aNodes;
+ }
+
+
+
+
+ @Override
+ public String toString ()
+ {
+ return "extension of base type "+maBaseTypeName.GetDisplayName();
+ }
+
+
+
+
+ private void AddNodes (
+ final INode aParent,
+ final Vector<INode> aNodes,
+ final SchemaBase aSchemaBase)
+ {
+ INode aNode = aParent;
+ while (true)
+ {
+ switch (aNode.GetNodeType())
+ {
+ case Extension:
+ aNode = ((Extension)aNode).GetBaseType(aSchemaBase);
+ break;
+
+ case ComplexContent:
+ case SimpleContent:
+ case ComplexType:
+ switch(aNode.GetChildCount())
+ {
+ case 0:
+ return;
+ case 1:
+ aNode = aNode.GetOnlyChild();
+ break;
+ default:
+ throw new RuntimeException();
+ }
+ break;
+
+ default:
+ aNodes.add(aNode);
+ return;
+ }
+ }
+ }
+
+
+
+
+ public QualifiedName maBaseTypeName;
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/complex/Group.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/complex/Group.java
new file mode 100644
index 000000000000..4358c20849a5
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/complex/Group.java
@@ -0,0 +1,70 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.model.complex;
+
+import org.apache.openoffice.ooxml.schema.model.base.INodeVisitor;
+import org.apache.openoffice.ooxml.schema.model.base.Location;
+import org.apache.openoffice.ooxml.schema.model.base.Node;
+import org.apache.openoffice.ooxml.schema.model.base.NodeType;
+import org.apache.openoffice.ooxml.schema.model.base.QualifiedName;
+
+/** Represents the 'group' XML schema element.
+ * The concepts of groups are similar to macros.
+ */
+public class Group
+ extends Node
+{
+ public Group (
+ final Node aParent,
+ final QualifiedName aName,
+ final Location aLocation)
+ {
+ super(aParent, aName, aLocation);
+ }
+
+
+
+
+ @Override
+ public NodeType GetNodeType ()
+ {
+ return NodeType.Group;
+ }
+
+
+
+
+ @Override
+ public void AcceptVisitor (final INodeVisitor aVisitor)
+ {
+ aVisitor.Visit(this);
+ }
+
+
+
+
+ @Override
+ public String toString ()
+ {
+ return "group "+GetName().GetDisplayName();
+ }
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/complex/GroupReference.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/complex/GroupReference.java
new file mode 100644
index 000000000000..048308ca9940
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/complex/GroupReference.java
@@ -0,0 +1,109 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.model.complex;
+
+import org.apache.openoffice.ooxml.schema.model.base.INode;
+import org.apache.openoffice.ooxml.schema.model.base.INodeReference;
+import org.apache.openoffice.ooxml.schema.model.base.INodeVisitor;
+import org.apache.openoffice.ooxml.schema.model.base.Location;
+import org.apache.openoffice.ooxml.schema.model.base.Node;
+import org.apache.openoffice.ooxml.schema.model.base.NodeType;
+import org.apache.openoffice.ooxml.schema.model.base.QualifiedName;
+import org.apache.openoffice.ooxml.schema.model.schema.SchemaBase;
+
+public class GroupReference
+ extends Node
+ implements INodeReference
+{
+ public GroupReference (
+ final Node aParent,
+ final QualifiedName aReferencedGroupName,
+ final Location aLocation)
+ {
+ super(aParent, null, aLocation);
+
+ maReferencedGroupName = aReferencedGroupName;
+ }
+
+
+
+
+ public QualifiedName GetReferencedGroupName ()
+ {
+ return maReferencedGroupName;
+ }
+
+
+
+
+ public Group GetReferencedGroup (final SchemaBase aSchemaBase)
+ {
+ final Node aType = aSchemaBase.GetTypeForName(maReferencedGroupName);
+ if (aType == null)
+ throw new RuntimeException("there is no type named '"+maReferencedGroupName+"' in the schema");
+ else if (aType.GetNodeType()!=NodeType.Group)
+ throw new RuntimeException("name '"+maReferencedGroupName+"' references a "+aType.GetNodeType()+" not a group");
+ else
+ return (Group)aType;
+ }
+
+
+
+
+ @Override
+ public INode GetReferencedNode (final SchemaBase aSchemaBase)
+ {
+ return GetReferencedGroup(aSchemaBase);
+ }
+
+
+
+
+ @Override
+ public NodeType GetNodeType ()
+ {
+ return NodeType.GroupReference;
+ }
+
+
+
+
+ @Override
+ public void AcceptVisitor (final INodeVisitor aVisitor)
+ {
+ aVisitor.Visit(this);
+ }
+
+
+
+
+ @Override
+ public String toString ()
+ {
+ return "group reference to "+maReferencedGroupName.GetDisplayName();
+ }
+
+
+
+
+ private final QualifiedName maReferencedGroupName;
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/complex/OccurrenceIndicator.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/complex/OccurrenceIndicator.java
new file mode 100644
index 000000000000..dcc41bfbb7ce
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/complex/OccurrenceIndicator.java
@@ -0,0 +1,152 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.model.complex;
+
+import org.apache.openoffice.ooxml.schema.model.base.INodeVisitor;
+import org.apache.openoffice.ooxml.schema.model.base.Location;
+import org.apache.openoffice.ooxml.schema.model.base.Node;
+import org.apache.openoffice.ooxml.schema.model.base.NodeType;
+
+/** An occurrence indicator is based on a minimum and a maximum value.
+ * The minimum value is 0 or larger. If it is 0 then the child node is optional.
+ * The maximum value is at least as large as the minimum value.
+ * It can be 'unbounded' in which case the child node can appear any number of times.
+ * 'Unbounded' is internally stored as -1.
+ *
+ * An OccurrenceIndicator represents the minOccur and maxOccur attributes of
+ * XML schema elements.
+ *
+ * There is usually exactly one child.
+ */
+public class OccurrenceIndicator
+ extends Node
+{
+ public static int unbounded = -1;
+
+ public OccurrenceIndicator (
+ final Node aParent,
+ final String sMinimum,
+ final String sMaximum,
+ final Location aLocation)
+ {
+ super(aParent, null, aLocation);
+
+ mnMinimum = ParseValue(sMinimum);
+ mnMaximum = ParseValue(sMaximum);
+
+ assert(mnMinimum>=0);
+ assert(mnMaximum==unbounded || mnMaximum>=mnMinimum);
+ }
+
+
+
+
+ @Override
+ public NodeType GetNodeType ()
+ {
+ return NodeType.OccurrenceIndicator;
+ }
+
+
+
+
+ /** Return a string version of the minimum value for textual display.
+ */
+ public String GetDisplayMinimum ()
+ {
+ return Integer.toString(mnMinimum);
+ }
+
+
+
+
+ /** Return a string version of the maximum value for textual display.
+ */
+ public String GetDisplayMaximum ()
+ {
+ if (mnMaximum == unbounded)
+ return "unbounded";
+ else
+ return Integer.toString(mnMaximum);
+ }
+
+
+
+
+ public int GetMinimum ()
+ {
+ return mnMinimum;
+ }
+
+
+
+
+ public int GetMaximum ()
+ {
+ return mnMaximum;
+ }
+
+
+
+
+ @Override
+ public void AcceptVisitor (final INodeVisitor aVisitor)
+ {
+ aVisitor.Visit(this);
+ }
+
+
+
+
+ @Override
+ public String toString ()
+ {
+ return String.format("occurrence %s to %s",
+ GetDisplayMinimum(),
+ GetDisplayMaximum());
+ }
+
+
+
+
+ private static int ParseValue (final String sValue)
+ {
+ if (sValue == null)
+ {
+ // Missing values default to 1.
+ return 1;
+ }
+ else
+ switch (sValue)
+ {
+ case "0" : return 0;
+ case "1" : return 1;
+ case "unbounded" : return unbounded;
+ default: return Integer.parseInt(sValue);
+ }
+ }
+
+
+
+ private final int mnMinimum;
+ private final int mnMaximum;
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/complex/Sequence.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/complex/Sequence.java
new file mode 100644
index 000000000000..da01a8c15e28
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/complex/Sequence.java
@@ -0,0 +1,73 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.model.complex;
+
+import org.apache.openoffice.ooxml.schema.model.base.INodeVisitor;
+import org.apache.openoffice.ooxml.schema.model.base.Location;
+import org.apache.openoffice.ooxml.schema.model.base.Node;
+import org.apache.openoffice.ooxml.schema.model.base.NodeType;
+import org.apache.openoffice.ooxml.schema.model.base.QualifiedName;
+
+/** Representation of a 'sequence' XML schema element.
+ * It defines an order on its children.
+ */
+ public class Sequence
+ extends Node
+{
+ public Sequence (
+ final Node aParent,
+ final QualifiedName aName,
+ final Location aLocation)
+ {
+ super(aParent, aName, aLocation);
+ }
+
+
+
+
+ @Override
+ public NodeType GetNodeType ()
+ {
+ return NodeType.Sequence;
+ }
+
+
+
+
+ @Override
+ public void AcceptVisitor (final INodeVisitor aVisitor)
+ {
+ aVisitor.Visit(this);
+ }
+
+
+
+
+ @Override
+ public String toString ()
+ {
+ if (GetName() != null)
+ return "sequence "+GetName().GetDisplayName();
+ else
+ return "sequence";
+ }
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/optimize/CopyVisitor.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/optimize/CopyVisitor.java
new file mode 100644
index 000000000000..4fb84c909bf1
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/optimize/CopyVisitor.java
@@ -0,0 +1,112 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.model.optimize;
+
+import org.apache.openoffice.ooxml.schema.model.attribute.AttributeGroupReference;
+import org.apache.openoffice.ooxml.schema.model.attribute.AttributeReference;
+import org.apache.openoffice.ooxml.schema.model.base.INode;
+import org.apache.openoffice.ooxml.schema.model.base.NodeVisitorAdapter;
+import org.apache.openoffice.ooxml.schema.model.complex.ComplexType;
+import org.apache.openoffice.ooxml.schema.model.complex.GroupReference;
+import org.apache.openoffice.ooxml.schema.model.schema.SchemaBase;
+import org.apache.openoffice.ooxml.schema.model.simple.SimpleType;
+
+/** This visitor is called to copy the used types from the source to the target
+ * schema base.
+ */
+public class CopyVisitor
+ extends NodeVisitorAdapter
+{
+ CopyVisitor (
+ final SchemaBase aSourceSchemaBase,
+ final SchemaBase aTargetSchemaBase)
+ {
+ maSourceSchemaBase = aSourceSchemaBase;
+ maTargetSchemaBase = aTargetSchemaBase;
+ }
+
+
+
+
+ @Override public void Visit (final ComplexType aComplexType)
+ {
+ maTargetSchemaBase.ComplexTypes.Add(aComplexType);
+ }
+
+ @Override public void Visit (final GroupReference aGroupReference)
+ {
+ maTargetSchemaBase.Groups.Add(
+ aGroupReference.GetReferencedGroup(maSourceSchemaBase));
+ }
+
+ @Override public void Visit (final SimpleType aSimpleType)
+ {
+ maTargetSchemaBase.SimpleTypes.Add(aSimpleType);
+ }
+
+ @Override public void Visit (final AttributeReference aAttributeReference)
+ {
+ maTargetSchemaBase.Attributes.Add(
+ aAttributeReference.GetReferencedAttribute(maSourceSchemaBase));
+ }
+
+ @Override public void Visit (final AttributeGroupReference aAttributeGroupReference)
+ {
+ maTargetSchemaBase.AttributeGroups.Add(
+ aAttributeGroupReference.GetReferencedAttributeGroup(maSourceSchemaBase));
+ }
+
+ @Override public void Default (final INode aNode)
+ {
+ switch(aNode.GetNodeType())
+ {
+ case All:
+ case Any:
+ case Attribute:
+ case AttributeGroup:
+ case BuiltIn:
+ case Choice:
+ case ComplexContent:
+ case Element:
+ case ElementReference:
+ case Extension:
+ case Group:
+ case List:
+ case OccurrenceIndicator:
+ case Restriction:
+ case Sequence:
+ case SimpleContent:
+ case SimpleTypeReference:
+ case Union:
+ break;
+
+ default:
+ throw new RuntimeException("don't know how to copy "+aNode.toString());
+ }
+ }
+
+
+
+
+ private final SchemaBase maSourceSchemaBase;
+ private final SchemaBase maTargetSchemaBase;
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/optimize/RequestVisitor.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/optimize/RequestVisitor.java
new file mode 100644
index 000000000000..20aa02dd1752
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/optimize/RequestVisitor.java
@@ -0,0 +1,128 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.model.optimize;
+
+import org.apache.openoffice.ooxml.schema.model.attribute.Attribute;
+import org.apache.openoffice.ooxml.schema.model.attribute.AttributeGroupReference;
+import org.apache.openoffice.ooxml.schema.model.attribute.AttributeReference;
+import org.apache.openoffice.ooxml.schema.model.base.INode;
+import org.apache.openoffice.ooxml.schema.model.base.NodeVisitorAdapter;
+import org.apache.openoffice.ooxml.schema.model.complex.Element;
+import org.apache.openoffice.ooxml.schema.model.complex.Extension;
+import org.apache.openoffice.ooxml.schema.model.complex.GroupReference;
+import org.apache.openoffice.ooxml.schema.model.schema.SchemaBase;
+import org.apache.openoffice.ooxml.schema.model.simple.List;
+import org.apache.openoffice.ooxml.schema.model.simple.Restriction;
+import org.apache.openoffice.ooxml.schema.model.simple.SimpleTypeReference;
+
+/** A visitor that is called for all nodes of a complex or simple type to mark
+ * the referenced types as being used.
+ */
+public class RequestVisitor
+ extends NodeVisitorAdapter
+{
+ RequestVisitor (
+ final SchemaBase aSourceSchema,
+ final SchemaOptimizer aOptimizer)
+ {
+ maSourceSchemaBase = aSourceSchema;
+ maSchemaOptimizer = aOptimizer;
+ }
+
+
+ @Override public void Visit (final Attribute aAttribute)
+ {
+ maSchemaOptimizer.RequestType(aAttribute.GetTypeName());
+ }
+
+ @Override public void Visit (final AttributeReference aAttributeReference)
+ {
+ maSchemaOptimizer.RequestType(aAttributeReference.GetReferencedName());
+ }
+
+ @Override public void Visit (final AttributeGroupReference aAttributeGroupReference)
+ {
+ maSchemaOptimizer.RequestType(aAttributeGroupReference.GetReferencedName());
+ }
+
+ @Override public void Visit (final Element aElement)
+ {
+ maSchemaOptimizer.RequestType(aElement.GetTypeName());
+ }
+
+ @Override public void Visit (final Extension aExtension)
+ {
+ maSchemaOptimizer.RequestType(aExtension.GetBaseTypeName());
+ }
+
+ @Override public void Visit (final GroupReference aReference)
+ {
+ maSchemaOptimizer.RequestType(aReference.GetReferencedGroup(maSourceSchemaBase));
+ }
+
+ @Override public void Visit (final List aList)
+ {
+ maSchemaOptimizer.RequestType(aList.GetItemType());
+ }
+
+ @Override public void Visit (final Restriction aRestriction)
+ {
+ maSchemaOptimizer.RequestType(aRestriction.GetBaseType());
+ }
+
+ @Override public void Visit (final SimpleTypeReference aReference)
+ {
+ maSchemaOptimizer.RequestType(aReference.GetReferencedSimpleType(maSourceSchemaBase));
+ }
+
+ @Override public void Default (final INode aNode)
+ {
+ switch (aNode.GetNodeType())
+ {
+ case All:
+ case Any:
+ case AttributeGroup:
+ case BuiltIn:
+ case Choice:
+ case ComplexContent:
+ case ComplexType:
+ case ElementReference:
+ case Group:
+ case List:
+ case OccurrenceIndicator:
+ case Sequence:
+ case SimpleContent:
+ case SimpleType:
+ case Union:
+ break;
+
+ default:
+ throw new RuntimeException(
+ String.format("don't know how to request %s which was defined at %s",
+ aNode.toString(),
+ aNode.GetLocation()));
+ }
+ }
+
+ private final SchemaBase maSourceSchemaBase;
+ private final SchemaOptimizer maSchemaOptimizer;
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/optimize/SchemaOptimizer.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/optimize/SchemaOptimizer.java
new file mode 100644
index 000000000000..808f15dc1642
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/optimize/SchemaOptimizer.java
@@ -0,0 +1,140 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.model.optimize;
+
+import java.util.HashSet;
+import java.util.LinkedList;
+import java.util.Queue;
+import java.util.Set;
+
+import org.apache.openoffice.ooxml.schema.iterator.AttributeNodeIterator;
+import org.apache.openoffice.ooxml.schema.iterator.DereferencingNodeIterator;
+import org.apache.openoffice.ooxml.schema.model.base.INode;
+import org.apache.openoffice.ooxml.schema.model.base.INodeVisitor;
+import org.apache.openoffice.ooxml.schema.model.base.Node;
+import org.apache.openoffice.ooxml.schema.model.base.NodeType;
+import org.apache.openoffice.ooxml.schema.model.base.QualifiedName;
+import org.apache.openoffice.ooxml.schema.model.complex.Element;
+import org.apache.openoffice.ooxml.schema.model.schema.SchemaBase;
+
+/** Optimize the given schema base by creating a new one and adding only those
+ * complex types, simple types, groups, attributes and attribute groups, that
+ * are really used, i.e. used by one of the top level elements or by a type or
+ * group that is in use.
+ */
+public class SchemaOptimizer
+{
+ public SchemaOptimizer (
+ final SchemaBase aOriginalSchemaBase)
+ {
+ maOriginalSchemaBase = aOriginalSchemaBase;
+ maOptimizedSchemaBase = new SchemaBase();
+ maTodoList = new LinkedList<>();
+ maProcessedTypes = new HashSet<>();
+ }
+
+
+
+
+ public SchemaBase Run ()
+ {
+ // Seed the work list with the top-level elements.
+ for (final Element aElement : maOriginalSchemaBase.TopLevelElements.GetUnsorted())
+ {
+ maOptimizedSchemaBase.TopLevelElements.Add(aElement);
+ RequestType(aElement.GetTypeName());
+ }
+
+ final INodeVisitor aCopyVisitor = new CopyVisitor(
+ maOriginalSchemaBase,
+ maOptimizedSchemaBase);
+ final INodeVisitor aRequestVisitor = new RequestVisitor(
+ maOriginalSchemaBase,
+ this);
+
+ while ( ! maTodoList.isEmpty())
+ {
+ final INode aNode = maTodoList.poll();
+
+ // Iterate over all child nodes and attributes.
+ for (final INode aChild : new DereferencingNodeIterator(aNode, maOriginalSchemaBase, true))
+ {
+ aChild.AcceptVisitor(aCopyVisitor);
+ aChild.AcceptVisitor(aRequestVisitor);
+ for (final INode aAttribute : aChild.GetAttributes())
+ aAttribute.AcceptVisitor(aCopyVisitor);
+ for (final INode aAttribute : new AttributeNodeIterator(aChild, maOriginalSchemaBase))
+ aAttribute.AcceptVisitor(aRequestVisitor);
+ }
+
+ // Request used namespaces.
+ final QualifiedName aName = aNode.GetName();
+ if (aName != null)
+ maOptimizedSchemaBase.Namespaces.ProvideNamespace(aName.GetNamespaceURI(), aName.GetNamespacePrefix());
+ }
+
+ /*
+ System.out.printf("%d original attributes\n", maOriginalSchemaBase.Attributes.GetCount());
+ for (final Attribute aAttribute : maOriginalSchemaBase.Attributes.GetUnsorted())
+ System.out.printf("%s\n", aAttribute);
+ System.out.printf("%d optimized attributes\n", maOptimizedSchemaBase.Attributes.GetCount());
+ for (final Attribute aAttribute : maOptimizedSchemaBase.Attributes.GetUnsorted())
+ System.out.printf("%s\n", aAttribute);
+ */
+
+ return maOptimizedSchemaBase;
+ }
+
+
+
+
+ void RequestType (final QualifiedName aName)
+ {
+ final Node aNode = maOriginalSchemaBase.GetTypeForName(aName);
+ if (aNode == null)
+ throw new RuntimeException("there is no type named '"+aName+"' in the schema");
+ else
+ RequestType(aNode);
+ }
+
+
+
+
+ void RequestType (final INode aNode)
+ {
+ if (aNode.GetNodeType() == NodeType.SimpleTypeReference)
+ System.out.println(aNode);
+ if ( ! maProcessedTypes.contains(aNode))
+ {
+ maProcessedTypes.add(aNode);
+ maTodoList.add(aNode);
+ }
+ }
+
+
+
+
+ private final SchemaBase maOriginalSchemaBase;
+ private final SchemaBase maOptimizedSchemaBase;
+ private final Queue<INode> maTodoList;
+ private final Set<INode> maProcessedTypes;
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/schema/NamespaceMap.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/schema/NamespaceMap.java
new file mode 100644
index 000000000000..d3cfdafd8a0b
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/schema/NamespaceMap.java
@@ -0,0 +1,178 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.model.schema;
+
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.Map;
+import java.util.Map.Entry;
+import java.util.TreeMap;
+
+/** Map between namespace prefixes and URIs.
+ * While namespace URIs can have different prefixes in different schemas,
+ * we will use only one prefix in the OOXML parser. This class
+ * provides these global prefixes.
+ */
+public class NamespaceMap
+ implements Iterable<Entry<String, String>>
+{
+ public NamespaceMap ()
+ {
+ maURIToPrefixMap = new HashMap<>(maPredefinedURIToPrefixMap);
+
+ // Predefine namespace prefixes.
+ // If possible then use the ones already in use in the schema files or documents written by MS Office,
+ // appended with a 06 or 12 for the ECMA-376 standards of 2006 (1st edition) or 2012 (4th edition).
+ maURIToPrefixMap.put("http://schemas.openxmlformats.org/drawingml/2006/main", "a06");
+ maURIToPrefixMap.put("http://purl.oclc.org/ooxml/drawingml/main", "a12");
+
+ maURIToPrefixMap.put("http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing", "wp06");
+ maURIToPrefixMap.put("http://purl.oclc.org/ooxml/drawingml/wordprocessingDrawing", "wp12");
+
+ maURIToPrefixMap.put("http://schemas.openxmlformats.org/wordprocessingml/2006/main", "w06");
+ maURIToPrefixMap.put("http://purl.oclc.org/ooxml/wordprocessingml/main", "w12");
+
+ maURIToPrefixMap.put("http://schemas.openxmlformats.org/drawingml/2006/picture", "dpct06");
+ maURIToPrefixMap.put("http://purl.oclc.org/ooxml/drawingml/picture", "dpct12");
+
+ maURIToPrefixMap.put("http://schemas.openxmlformats.org/officeDocument/2006/math", "m06");
+ maURIToPrefixMap.put("http://purl.oclc.org/ooxml/officeDocument/math", "m12");
+
+ maURIToPrefixMap.put("http://schemas.openxmlformats.org/officeDocument/2006/relationships", "r06");
+ maURIToPrefixMap.put("http://purl.oclc.org/ooxml/officeDocument/relationships", "r12");
+
+ // Invent prefixes that are not in use.
+ maURIToPrefixMap.put("http://schemas.openxmlformats.org/spreadsheetml/2006/main", "s06");
+ maURIToPrefixMap.put("http://purl.oclc.org/ooxml/spreadsheetml/main", "s12");
+
+ maURIToPrefixMap.put("http://schemas.openxmlformats.org/presentationml/2006/main", "p06");
+ maURIToPrefixMap.put("http://purl.oclc.org/ooxml/presentationml/main", "p12");
+
+ maURIToPrefixMap.put("http://schemas.openxmlformats.org/schemaLibrary/2006/main", "sl06");
+ maURIToPrefixMap.put("http://purl.oclc.org/ooxml/schemaLibrary/main", "sl12");
+
+ maURIToPrefixMap.put("http://purl.oclc.org/ooxml/drawingml/diagram", "dd12");
+ maURIToPrefixMap.put("http://purl.oclc.org/ooxml/drawingml/chart", "dc12");
+ maURIToPrefixMap.put("http://purl.oclc.org/ooxml/drawingml/lockedCanvas", "dlc12");
+ }
+
+
+
+
+ public void ProvideNamespace (
+ final String sNamespaceURI,
+ final String sDefaultPrefix)
+ {
+ if ( ! maURIToPrefixMap.containsKey(sNamespaceURI))
+ {
+ final String sPrefix;
+ // Check if we can use the given prefix.
+ if (sDefaultPrefix==null || IsPrefixUsed(sDefaultPrefix))
+ {
+ // Prefix is already used. We have to create a new and unique one.
+ String sCandidate = null;
+ for (int nIndex=0; nIndex<=26; ++nIndex)
+ {
+ if (nIndex == 26)
+ throw new RuntimeException("can not invent more than 26 namespace names");
+ sCandidate= new String(new byte[]{(byte)('A'+nIndex)});
+ if ( ! maURIToPrefixMap.containsKey(sCandidate))
+ break;
+ }
+ sPrefix = sCandidate;
+ }
+ else
+ {
+ // Use the given prefix.
+ sPrefix = sDefaultPrefix;
+ }
+
+ maURIToPrefixMap.put(sNamespaceURI, sPrefix);
+ }
+ }
+
+
+
+
+ public String GetNamespacePrefix (final String sURI)
+ {
+ return maURIToPrefixMap.get(sURI);
+ }
+
+
+
+
+ public Iterator<Entry<String,String>> iterator ()
+ {
+ return maURIToPrefixMap.entrySet().iterator();
+ }
+
+
+
+
+ public Object GetCount()
+ {
+ return maURIToPrefixMap.size();
+ }
+
+
+
+
+ /** Return all namespace entries sorted on the prefix.
+ */
+ public Iterable<Entry<String,String>> GetSorted ()
+ {
+ final Map<String,Entry<String,String>> aSortedEntries = new TreeMap<>();
+ for (final Entry<String,String> aEntry : maURIToPrefixMap.entrySet())
+ if (aEntry.getValue() == null)
+ aSortedEntries.put("", aEntry);
+ else
+ aSortedEntries.put(aEntry.getValue(), aEntry);
+ return aSortedEntries.values();
+ }
+
+
+
+
+ private boolean IsPrefixUsed (final String sPrefix)
+ {
+ for (final String sUsedPrefix : maURIToPrefixMap.values())
+ {
+ if (sUsedPrefix == null)
+ continue;
+ if (sUsedPrefix.equals(sPrefix))
+ return true;
+ }
+ return false;
+ }
+
+
+
+
+ private final Map<String,String> maURIToPrefixMap;
+ private final static Map<String,String> maPredefinedURIToPrefixMap;
+ static
+ {
+ maPredefinedURIToPrefixMap = new HashMap<>();
+ maPredefinedURIToPrefixMap.put("http://www.w3.org/2001/XMLSchema", "xsd");
+ }
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/schema/Schema.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/schema/Schema.java
new file mode 100644
index 000000000000..47c511ef4e12
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/schema/Schema.java
@@ -0,0 +1,107 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.model.schema;
+
+import org.apache.openoffice.ooxml.schema.model.attribute.Attribute;
+import org.apache.openoffice.ooxml.schema.model.attribute.AttributeGroup;
+import org.apache.openoffice.ooxml.schema.model.base.Node;
+import org.apache.openoffice.ooxml.schema.model.base.QualifiedName;
+import org.apache.openoffice.ooxml.schema.model.complex.ComplexType;
+import org.apache.openoffice.ooxml.schema.model.complex.Element;
+import org.apache.openoffice.ooxml.schema.model.complex.Group;
+import org.apache.openoffice.ooxml.schema.model.simple.SimpleType;
+
+/** Front end of a shared SchemaBase object of a single master schema file (such
+ * as wml.xsd).
+ * Most important member is the TopLevelElements list of top level elements,
+ * which are unique to each master schema.
+ */
+public class Schema
+{
+ public Schema (
+ final String sShortName,
+ final SchemaBase aBase)
+ {
+ msShortName = sShortName;
+ TopLevelElements = new TypeContainer<>();
+
+ Namespaces = aBase.Namespaces;
+ ComplexTypes = aBase.ComplexTypes;
+ SimpleTypes = aBase.SimpleTypes;
+ Groups = aBase.Groups;
+ AttributeGroups = aBase.AttributeGroups;
+ Attributes = aBase.Attributes;
+ }
+
+
+
+
+ public Node GetTypeForName (final QualifiedName aName)
+ {
+ final String sTypeName = aName.GetDisplayName();
+
+ if (ComplexTypes.Contains(sTypeName))
+ return ComplexTypes.Get(sTypeName);
+ else if (SimpleTypes.Contains(sTypeName))
+ return SimpleTypes.Get(sTypeName);
+ else if (Groups.Contains(sTypeName))
+ return Groups.Get(sTypeName);
+ else if (TopLevelElements.Contains(sTypeName))
+ return TopLevelElements.Get(sTypeName);
+ else
+ return null;
+ }
+
+
+
+
+ public String GetShortName ()
+ {
+ return msShortName;
+ }
+
+
+
+
+ public Schema GetOptimizedSchema (final SchemaBase aSchemaBase)
+ {
+ final Schema aOptimizedSchema = new Schema(msShortName, aSchemaBase);
+ for (final Element aElement : TopLevelElements.GetUnsorted())
+ {
+ aOptimizedSchema.TopLevelElements.Add(aElement);
+ }
+
+ return aOptimizedSchema;
+ }
+
+
+
+
+ private final String msShortName;
+ public final TypeContainer<Element> TopLevelElements;
+ public final NamespaceMap Namespaces;
+ public final TypeContainer<ComplexType> ComplexTypes;
+ public final TypeContainer<SimpleType> SimpleTypes;
+ public final TypeContainer<Group> Groups;
+ public final TypeContainer<AttributeGroup> AttributeGroups;
+ public final TypeContainer<Attribute> Attributes;
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/schema/SchemaBase.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/schema/SchemaBase.java
new file mode 100644
index 000000000000..8b456acea7f4
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/schema/SchemaBase.java
@@ -0,0 +1,121 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.model.schema;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import org.apache.openoffice.ooxml.schema.model.attribute.Attribute;
+import org.apache.openoffice.ooxml.schema.model.attribute.AttributeGroup;
+import org.apache.openoffice.ooxml.schema.model.base.Node;
+import org.apache.openoffice.ooxml.schema.model.base.QualifiedName;
+import org.apache.openoffice.ooxml.schema.model.complex.ComplexType;
+import org.apache.openoffice.ooxml.schema.model.complex.Element;
+import org.apache.openoffice.ooxml.schema.model.complex.Group;
+import org.apache.openoffice.ooxml.schema.model.optimize.SchemaOptimizer;
+import org.apache.openoffice.ooxml.schema.model.simple.BuiltIn;
+import org.apache.openoffice.ooxml.schema.model.simple.SimpleType;
+
+
+/** Container of elements, complex types, simple types, etc for a set of
+ * master schema files and the included and imported secondary schema files.
+ *
+ * See Schema objects for the set of top level elements that are unique to
+ * each master schema file.
+ */
+public class SchemaBase
+{
+ public SchemaBase ()
+ {
+ Namespaces = new NamespaceMap();
+ TopLevelElements = new TypeContainer<>();
+ ComplexTypes = new TypeContainer<>();
+ SimpleTypes = new TypeContainer<>();
+ Groups = new TypeContainer<>();
+ AttributeGroups = new TypeContainer<>();
+ Attributes = new TypeContainer<>();
+ AttributeValueToIdMap = new HashMap<>();
+
+ // Initialize the list of simple types with all known built ins (
+ // these are implicitly defined).
+ for (final BuiltIn aType : BuiltIn.GetTypes())
+ SimpleTypes.Add(aType);
+ }
+
+
+
+
+ public Node GetTypeForName (final QualifiedName aName)
+ {
+ final String sTypeName = aName.GetDisplayName();
+
+ if (ComplexTypes.Contains(sTypeName))
+ return ComplexTypes.Get(sTypeName);
+ else if (SimpleTypes.Contains(sTypeName))
+ return SimpleTypes.Get(sTypeName);
+ else if (Groups.Contains(sTypeName))
+ return Groups.Get(sTypeName);
+ else if (Attributes.Contains(sTypeName))
+ return Attributes.Get(sTypeName);
+ else if (AttributeGroups.Contains(sTypeName))
+ return AttributeGroups.Get(sTypeName);
+ else
+ return null;
+ }
+
+
+
+
+ public Node GetSimpleTypeForName (final QualifiedName aName)
+ {
+ final String sTypeName = aName.GetDisplayName();
+
+ if (SimpleTypes.Contains(sTypeName))
+ return SimpleTypes.Get(aName.GetDisplayName());
+ else
+ return null;
+ }
+
+
+
+
+ /** Create a new schema object that contains only the used types, i.e.
+ * types that are reachable via element transitions, starting with the
+ * top level elements.
+ */
+ public SchemaBase GetOptimizedSchema (final Iterable<Schema> aTopLevelSchemas)
+ {
+ return new SchemaOptimizer(this).Run();
+ }
+
+
+
+
+ public final NamespaceMap Namespaces;
+ public final TypeContainer<Element> TopLevelElements;
+ public final TypeContainer<ComplexType> ComplexTypes;
+ public final TypeContainer<SimpleType> SimpleTypes;
+ public final TypeContainer<Group> Groups;
+ public final TypeContainer<AttributeGroup> AttributeGroups;
+ public final TypeContainer<Attribute> Attributes;
+ public final Map<String,Integer> AttributeValueToIdMap;
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/schema/TypeContainer.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/schema/TypeContainer.java
new file mode 100644
index 000000000000..1855469fbba9
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/schema/TypeContainer.java
@@ -0,0 +1,100 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.model.schema;
+
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Set;
+import java.util.TreeSet;
+
+import org.apache.openoffice.ooxml.schema.model.base.Node;
+import org.apache.openoffice.ooxml.schema.model.base.QualifiedName;
+
+public class TypeContainer<T extends Node>
+{
+ TypeContainer ()
+ {
+ maTypes = new HashMap<>();
+ }
+
+
+
+
+ public void Add (final T aType)
+ {
+ maTypes.put(aType.GetName().GetDisplayName(), aType);
+ }
+
+
+
+
+ public T Get (final QualifiedName aName)
+ {
+ return maTypes.get(aName.GetDisplayName());
+ }
+
+
+
+
+ public T Get (final String sPrefixedName)
+ {
+ return maTypes.get(sPrefixedName);
+ }
+
+
+
+
+ public boolean Contains (final String sPrefixedName)
+ {
+ return maTypes.containsKey(sPrefixedName);
+ }
+
+
+
+
+ public int GetCount ()
+ {
+ return maTypes.size();
+ }
+
+
+
+
+ public Iterable<T> GetUnsorted ()
+ {
+ return maTypes.values();
+ }
+
+
+
+
+ public Iterable<T> GetSorted ()
+ {
+ final Set<T> aSortedItems = new TreeSet<T>(maTypes.values());
+ return aSortedItems;
+ }
+
+
+
+
+ Map<String,T> maTypes;
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/simple/BuiltIn.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/simple/BuiltIn.java
new file mode 100644
index 000000000000..72ae7fc278a1
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/simple/BuiltIn.java
@@ -0,0 +1,103 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.model.simple;
+
+import java.util.Vector;
+
+import org.apache.openoffice.ooxml.schema.model.base.INodeVisitor;
+import org.apache.openoffice.ooxml.schema.model.base.Location;
+import org.apache.openoffice.ooxml.schema.model.base.Node;
+import org.apache.openoffice.ooxml.schema.model.base.NodeType;
+import org.apache.openoffice.ooxml.schema.model.base.QualifiedName;
+
+/** Representation of built in types.
+ */
+public class BuiltIn
+ extends SimpleType
+{
+ public static Vector<BuiltIn> GetTypes ()
+ {
+ final Vector<BuiltIn> aTypes = new Vector<>();
+ for (final BuiltInType eType : BuiltInType.values())
+ aTypes.add(new BuiltIn(eType));
+ return aTypes;
+ }
+
+
+
+
+ protected BuiltIn (
+ final BuiltInType eType)
+ {
+ super(null, eType.GetQualifiedName(), new Location());
+ meType = eType;
+ }
+
+
+
+
+ @Override
+ public NodeType GetNodeType ()
+ {
+ return NodeType.BuiltIn;
+ }
+
+
+
+
+ public BuiltInType GetBuiltInType ()
+ {
+ return meType;
+ }
+
+
+
+
+ @Override
+ public void AcceptVisitor (final INodeVisitor aVisitor)
+ {
+ aVisitor.Visit(this);
+ }
+
+
+
+
+ @Override
+ public String toString ()
+ {
+ return "builtin "+GetName().GetDisplayName();
+ }
+
+
+
+
+ private final BuiltInType meType;
+
+
+
+
+ public static Node GetForName(QualifiedName aName)
+ {
+ // TODO Auto-generated method stub
+ return null;
+ }
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/simple/BuiltInType.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/simple/BuiltInType.java
new file mode 100644
index 000000000000..4befae2ee7f7
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/simple/BuiltInType.java
@@ -0,0 +1,109 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.model.simple;
+
+import org.apache.openoffice.ooxml.schema.model.base.QualifiedName;
+import org.apache.openoffice.ooxml.schema.parser.XsdNamespace;
+
+public enum BuiltInType
+{
+ AnyURI,
+ Base64Binary,
+ Boolean,
+ Byte,
+ Float,
+ DateTime,
+ Double,
+ HexBinary,
+ ID,
+ Int,
+ Integer,
+ Long,
+ NcName,
+ Short,
+ String,
+ Token,
+ UnsignedByte,
+ UnsignedInt,
+ UnsignedLong,
+ UnsignedShort;
+
+ public static BuiltInType GetForName (final QualifiedName aName)
+ {
+ assert(aName.GetNamespacePrefix().equals(XsdNamespace.Prefix));
+ switch(aName.GetLocalPart())
+ {
+ case "anyURI": return AnyURI;
+ case "base64Binary": return Base64Binary;
+ case "boolean": return Boolean;
+ case "byte": return Byte;
+ case "dateTime": return DateTime;
+ case "double": return Double;
+ case "float": return Float;
+ case "hexBinary": return HexBinary;
+ case "ID": return ID;
+ case "int" : return Int;
+ case "integer": return Integer;
+ case "long": return Long;
+ case "NCName": return NcName;
+ case "short": return Short;
+ case "string": return String;
+ case "token": return Token;
+ case "unsignedByte": return UnsignedByte;
+ case "unsignedInt": return UnsignedInt;
+ case "unsignedLong": return UnsignedLong;
+ case "unsignedShort": return UnsignedShort;
+ default: throw new RuntimeException("there is no builtin type named "+aName.GetDisplayName());
+ }
+ }
+
+ public QualifiedName GetQualifiedName ()
+ {
+ final String sTypeName;
+ switch(this)
+ {
+ case AnyURI: sTypeName = "anyURI"; break;
+ case Base64Binary: sTypeName = "base64Binary"; break;
+ case Boolean: sTypeName = "boolean"; break;
+ case Byte: sTypeName = "byte"; break;
+ case Double: sTypeName = "double"; break;
+ case DateTime: sTypeName = "dateTime"; break;
+ case Float: sTypeName = "float"; break;
+ case HexBinary: sTypeName = "hexBinary"; break;
+ case ID: sTypeName = "ID"; break;
+ case Int: sTypeName = "int"; break;
+ case Integer: sTypeName = "integer"; break;
+ case Long: sTypeName = "long"; break;
+ case NcName: sTypeName = "NCName"; break;
+ case Short: sTypeName = "short"; break;
+ case String: sTypeName = "string"; break;
+ case Token: sTypeName = "token"; break;
+ case UnsignedByte: sTypeName = "unsignedByte"; break;
+ case UnsignedInt: sTypeName = "unsignedInt"; break;
+ case UnsignedLong: sTypeName = "unsignedLong"; break;
+ case UnsignedShort: sTypeName = "unsignedShort"; break;
+ default:
+ throw new RuntimeException();
+ }
+ return new QualifiedName(XsdNamespace.URI, XsdNamespace.Prefix, sTypeName);
+ }
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/simple/List.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/simple/List.java
new file mode 100644
index 000000000000..cac0a43e2591
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/simple/List.java
@@ -0,0 +1,84 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.model.simple;
+
+import org.apache.openoffice.ooxml.schema.model.base.INodeVisitor;
+import org.apache.openoffice.ooxml.schema.model.base.Location;
+import org.apache.openoffice.ooxml.schema.model.base.Node;
+import org.apache.openoffice.ooxml.schema.model.base.NodeType;
+import org.apache.openoffice.ooxml.schema.model.base.QualifiedName;
+
+/** Representation of the 'list' XML schema element.
+ * It is similar to an array of objects that are all of the same simple type.
+ */
+public class List
+ extends Node
+{
+ public List (
+ final Node aParent,
+ final QualifiedName aItemType,
+ final Location aLocation)
+ {
+ super(aParent, null, aLocation);
+ maItemType = aItemType;
+ }
+
+
+
+
+ @Override
+ public NodeType GetNodeType ()
+ {
+ return NodeType.List;
+ }
+
+
+
+
+ @Override
+ public void AcceptVisitor (final INodeVisitor aVisitor)
+ {
+ aVisitor.Visit(this);
+ }
+
+
+
+
+ public QualifiedName GetItemType ()
+ {
+ return maItemType;
+ }
+
+
+
+
+ @Override
+ public String toString ()
+ {
+ return "list of "+maItemType.GetDisplayName()+" items";
+ }
+
+
+
+
+ private final QualifiedName maItemType;
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/simple/Restriction.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/simple/Restriction.java
new file mode 100644
index 000000000000..8ee71d02f0c2
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/simple/Restriction.java
@@ -0,0 +1,337 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.model.simple;
+
+import java.util.Set;
+import java.util.TreeSet;
+
+import org.apache.openoffice.ooxml.schema.model.base.INodeVisitor;
+import org.apache.openoffice.ooxml.schema.model.base.Location;
+import org.apache.openoffice.ooxml.schema.model.base.Node;
+import org.apache.openoffice.ooxml.schema.model.base.NodeType;
+import org.apache.openoffice.ooxml.schema.model.base.QualifiedName;
+
+/** Representation of the 'restriction' XML schema element.
+ * It defines constraints on a another simple type.
+ * Examples for such restrictions are minimum and maximum values
+ * (inclusive or exclusive), patterns or length constraints of strings,
+ * sets of valid values.
+ */
+public class Restriction
+ extends Node
+{
+ public final static int MinInclusiveBit = 0x0001;
+ public final static int MinExclusiveBit = 0x0002;
+ public final static int MaxInclusiveBit = 0x0004;
+ public final static int MaxExclusiveBit = 0x0008;
+ public final static int LengthBit = 0x0010;
+ public final static int MinLengthBit = 0x0020;
+ public final static int MaxLengthBit = 0x0040;
+ public final static int PatternBit = 0x0080;
+ public final static int EnumerationBit = 0x0100;
+
+ public Restriction (
+ final Node aParent,
+ final QualifiedName aBaseType,
+ final Location aLocation)
+ {
+ super(aParent, null, aLocation);
+ maBaseType = aBaseType;
+ maEnumerations = new TreeSet<>();
+ mnFeatures = 0;
+ }
+
+
+
+
+ @Override
+ public void AcceptVisitor (final INodeVisitor aVisitor)
+ {
+ aVisitor.Visit(this);
+ }
+
+
+
+
+ @Override
+ public NodeType GetNodeType()
+ {
+ return NodeType.Restriction;
+ }
+
+
+
+
+ public QualifiedName GetBaseType ()
+ {
+ return maBaseType;
+ }
+
+
+
+
+ @Override
+ public String toString ()
+ {
+ final StringBuffer aBuffer = new StringBuffer("restriction based on ");
+ aBuffer.append(maBaseType.GetDisplayName());
+
+ if (msMinInclusive != null)
+ {
+ aBuffer.append(",minInclusive=");
+ aBuffer.append(msMinInclusive);
+ }
+ if (msMinExclusive != null)
+ {
+ aBuffer.append(",minExclusive=");
+ aBuffer.append(msMinExclusive);
+ }
+ if (msMaxInclusive != null)
+ {
+ aBuffer.append(",maxInclusive=");
+ aBuffer.append(msMaxInclusive);
+ }
+ if (msMaxExclusive != null)
+ {
+ aBuffer.append(",maxExclusive=");
+ aBuffer.append(msMaxExclusive);
+ }
+ if (HasFeature(LengthBit))
+ {
+ aBuffer.append(",length=");
+ aBuffer.append(mnLength);
+ }
+ if (HasFeature(MinLengthBit))
+ {
+ aBuffer.append(",minLength=");
+ aBuffer.append(mnMinLength);
+ }
+ if (HasFeature(MaxLengthBit))
+ {
+ aBuffer.append(",maxLength=");
+ aBuffer.append(mnMaxLength);
+ }
+ if (msPattern != null)
+ {
+ aBuffer.append(",pattern=\"");
+ aBuffer.append(msPattern);
+ aBuffer.append('"');
+ }
+ if ( ! maEnumerations.isEmpty())
+ {
+ aBuffer.append(",enumerations");
+ aBuffer.append(maEnumerations);
+ }
+ return aBuffer.toString();
+ }
+
+
+
+ public void AddEnumeration (final String sValue)
+ {
+ maEnumerations.add(sValue);
+ mnFeatures |= EnumerationBit;
+ }
+
+
+
+
+ public void SetMinInclusive (final String sValue)
+ {
+ msMinInclusive = sValue;
+ assert( ! HasFeature(MinExclusiveBit));
+ mnFeatures |= MinInclusiveBit;
+ }
+
+
+
+
+ public void SetMinExclusive (final String sValue)
+ {
+ msMinExclusive = sValue;
+ assert( ! HasFeature(MinInclusiveBit));
+ mnFeatures |= MinExclusiveBit;
+ }
+
+
+
+
+ public void SetMaxInclusive (final String sValue)
+ {
+ msMaxInclusive = sValue;
+ assert( ! HasFeature(MaxExclusiveBit));
+ mnFeatures |= MaxInclusiveBit;
+ }
+
+
+
+
+ public void SetMaxExclusive (final String sValue)
+ {
+ msMaxExclusive = sValue;
+ assert( ! HasFeature(MaxInclusiveBit));
+ mnFeatures |= MaxExclusiveBit;
+ }
+
+
+
+
+ public void SetLength (final String sValue)
+ {
+ mnLength = Integer.parseInt(sValue);
+ assert( ! HasFeature(MinLengthBit|MaxLengthBit));
+ mnFeatures |= LengthBit;
+ }
+
+
+
+
+ public void SetMinLength (final String sValue)
+ {
+ mnMinLength = Integer.parseInt(sValue);
+ assert( ! HasFeature(LengthBit));
+ mnFeatures |= MinLengthBit;
+ }
+
+
+
+
+ public void SetMaxLength (final String sValue)
+ {
+ mnMaxLength = Integer.parseInt(sValue);
+ assert( ! HasFeature(LengthBit));
+ mnFeatures |= MaxLengthBit;
+ }
+
+
+
+
+ public void SetPattern (final String sValue)
+ {
+ msPattern = sValue;
+ mnFeatures |= PatternBit;
+ }
+
+
+
+
+ public String GetMinInclusive ()
+ {
+ return msMinInclusive;
+ }
+
+
+
+
+ public String GetMinExclusive ()
+ {
+ return msMinExclusive;
+ }
+
+
+
+
+ public String GetMaxInclusive ()
+ {
+ return msMaxInclusive;
+ }
+
+
+
+
+ public String GetMaxExclusive ()
+ {
+ return msMaxExclusive;
+ }
+
+
+
+
+ public Set<String> GetEnumeration()
+ {
+ return maEnumerations;
+ }
+
+
+
+
+ public int GetLength()
+ {
+ return mnLength;
+ }
+
+
+
+
+ public int GetMinimumLength()
+ {
+ return mnMinLength;
+ }
+
+
+
+
+ public int GetMaximumLength()
+ {
+ return mnMaxLength;
+ }
+
+
+
+
+
+ public String GetPattern()
+ {
+ return msPattern;
+ }
+
+
+
+
+ public int GetFeatureBits ()
+ {
+ return mnFeatures;
+ }
+
+
+
+
+ public boolean HasFeature (final int nBitMask)
+ {
+ return (mnFeatures & nBitMask) != 0;
+ }
+
+
+
+
+ private final QualifiedName maBaseType;
+ private final Set<String> maEnumerations;
+ private String msMinInclusive;
+ private String msMinExclusive;
+ private String msMaxInclusive;
+ private String msMaxExclusive;
+ private int mnLength;
+ private int mnMinLength;
+ private int mnMaxLength;
+ private String msPattern;
+ private int mnFeatures;
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/simple/SimpleContent.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/simple/SimpleContent.java
new file mode 100644
index 000000000000..332df9c2b99a
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/simple/SimpleContent.java
@@ -0,0 +1,65 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.model.simple;
+
+import org.apache.openoffice.ooxml.schema.model.base.INodeVisitor;
+import org.apache.openoffice.ooxml.schema.model.base.Location;
+import org.apache.openoffice.ooxml.schema.model.base.Node;
+import org.apache.openoffice.ooxml.schema.model.base.NodeType;
+
+public class SimpleContent
+ extends Node
+{
+ public SimpleContent (
+ final Node aParent,
+ final Location aLocation)
+ {
+ super(aParent, null, aLocation);
+ }
+
+
+
+
+ @Override
+ public void AcceptVisitor (final INodeVisitor aVisitor)
+ {
+ aVisitor.Visit(this);
+ }
+
+
+
+
+ @Override
+ public NodeType GetNodeType()
+ {
+ return NodeType.SimpleContent;
+ }
+
+
+
+
+ @Override
+ public String toString ()
+ {
+ return "simple content";
+ }
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/simple/SimpleType.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/simple/SimpleType.java
new file mode 100644
index 000000000000..52366fb9c614
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/simple/SimpleType.java
@@ -0,0 +1,102 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.model.simple;
+
+import org.apache.openoffice.ooxml.schema.model.base.INodeVisitor;
+import org.apache.openoffice.ooxml.schema.model.base.Location;
+import org.apache.openoffice.ooxml.schema.model.base.Node;
+import org.apache.openoffice.ooxml.schema.model.base.NodeType;
+import org.apache.openoffice.ooxml.schema.model.base.QualifiedName;
+
+/** Representation of the 'simpleType' XML schema element.
+ * Simple types are used for attributes or the text of elements.
+ */
+public class SimpleType
+ extends Node
+{
+ public SimpleType (
+ final Node aParent,
+ final QualifiedName aName,
+ final Location aLocation)
+ {
+ super(aParent, aName, aLocation);
+ maFinalValues = null;
+ }
+
+
+
+
+ @Override
+ public NodeType GetNodeType ()
+ {
+ return NodeType.SimpleType;
+ }
+
+
+
+
+ public void SetFinal (final String[] aFinalValues)
+ {
+ maFinalValues = aFinalValues;
+ }
+
+
+
+
+ public boolean IsFinal (final String sCatgery)
+ {
+ if (maFinalValues != null)
+ {
+ for (final String sFinal : maFinalValues)
+ {
+ if (sFinal.equals(sCatgery))
+ return true;
+ else if (sFinal.equals("#all"))
+ return true;
+ }
+ }
+ return false;
+ }
+
+
+
+
+ @Override
+ public void AcceptVisitor (final INodeVisitor aVisitor)
+ {
+ aVisitor.Visit(this);
+ }
+
+
+
+
+ @Override
+ public String toString ()
+ {
+ return "simple type "+GetName().GetDisplayName();
+ }
+
+
+
+
+ private String[] maFinalValues;
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/simple/SimpleTypeReference.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/simple/SimpleTypeReference.java
new file mode 100644
index 000000000000..5925b8fd0ead
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/simple/SimpleTypeReference.java
@@ -0,0 +1,107 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.model.simple;
+
+import org.apache.openoffice.ooxml.schema.model.base.INode;
+import org.apache.openoffice.ooxml.schema.model.base.INodeReference;
+import org.apache.openoffice.ooxml.schema.model.base.INodeVisitor;
+import org.apache.openoffice.ooxml.schema.model.base.Location;
+import org.apache.openoffice.ooxml.schema.model.base.Node;
+import org.apache.openoffice.ooxml.schema.model.base.NodeType;
+import org.apache.openoffice.ooxml.schema.model.base.QualifiedName;
+import org.apache.openoffice.ooxml.schema.model.schema.SchemaBase;
+
+public class SimpleTypeReference
+ extends Node
+ implements INodeReference
+{
+ public SimpleTypeReference (
+ final Node aParent,
+ final QualifiedName aReferencedTypeName,
+ final Location aLocation)
+ {
+ super(aParent, null, aLocation);
+ maReferencedTypeName = aReferencedTypeName;
+ }
+
+
+
+
+ public SimpleType GetReferencedSimpleType (final SchemaBase aSchemaBase)
+ {
+ final Node aType = aSchemaBase.GetTypeForName(maReferencedTypeName);
+ if (aType == null)
+ throw new RuntimeException("there is no type named '"+maReferencedTypeName+"' in the schema");
+ else if (aType.GetNodeType()!=NodeType.SimpleType && aType.GetNodeType()!=NodeType.BuiltIn)
+ throw new RuntimeException("name '"+maReferencedTypeName+"' references a "+aType.GetNodeType()+" not a simple type or builtin");
+ else
+ return (SimpleType)aType;
+ }
+
+
+
+
+ @Override
+ public INode GetReferencedNode (final SchemaBase aSchemaBase)
+ {
+ return GetReferencedSimpleType(aSchemaBase);
+ }
+
+
+
+
+ public QualifiedName GetReferencedTypeName()
+ {
+ return maReferencedTypeName;
+ }
+
+
+
+
+ @Override
+ public void AcceptVisitor (final INodeVisitor aVisitor)
+ {
+ aVisitor.Visit(this);
+ }
+
+
+
+
+ @Override
+ public NodeType GetNodeType ()
+ {
+ return NodeType.SimpleTypeReference;
+ }
+
+
+
+ @Override
+ public String toString ()
+ {
+ return "reference to simple type "+maReferencedTypeName;
+ }
+
+
+
+
+ private final QualifiedName maReferencedTypeName;
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/simple/Union.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/simple/Union.java
new file mode 100644
index 000000000000..78c2171c65dd
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/model/simple/Union.java
@@ -0,0 +1,68 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.model.simple;
+
+import org.apache.openoffice.ooxml.schema.model.base.INodeVisitor;
+import org.apache.openoffice.ooxml.schema.model.base.Location;
+import org.apache.openoffice.ooxml.schema.model.base.Node;
+import org.apache.openoffice.ooxml.schema.model.base.NodeType;
+
+/** Representation of the 'union' XML schema element.
+ * Its set of valid values is the union of all of its children.
+ */
+public class Union
+ extends Node
+{
+ public Union (
+ final Node aParent,
+ final Location aLocation)
+ {
+ super(aParent, null, aLocation);
+ }
+
+
+
+
+ @Override
+ public NodeType GetNodeType ()
+ {
+ return NodeType.Union;
+ }
+
+
+
+
+ @Override
+ public void AcceptVisitor (final INodeVisitor aVisitor)
+ {
+ aVisitor.Visit(this);
+ }
+
+
+
+
+ @Override
+ public String toString ()
+ {
+ return "union";
+ }
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/parser/FormDefault.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/parser/FormDefault.java
new file mode 100644
index 000000000000..ac03f94d53a2
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/parser/FormDefault.java
@@ -0,0 +1,31 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.parser;
+
+/** Enumeration of the form default values for attributes and elements in
+ * XML documents.
+ */
+public enum FormDefault
+{
+ qualified,
+ unqualified;
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/parser/SchemaParser.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/parser/SchemaParser.java
new file mode 100644
index 000000000000..6e7bbb172691
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/parser/SchemaParser.java
@@ -0,0 +1,1211 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.parser;
+
+import java.io.File;
+import java.io.FileInputStream;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Vector;
+
+import javax.xml.stream.XMLInputFactory;
+import javax.xml.stream.XMLStreamException;
+import javax.xml.stream.XMLStreamReader;
+
+import org.apache.openoffice.ooxml.schema.model.attribute.Attribute;
+import org.apache.openoffice.ooxml.schema.model.attribute.AttributeGroup;
+import org.apache.openoffice.ooxml.schema.model.attribute.AttributeGroupReference;
+import org.apache.openoffice.ooxml.schema.model.attribute.AttributeReference;
+import org.apache.openoffice.ooxml.schema.model.base.INode;
+import org.apache.openoffice.ooxml.schema.model.base.Location;
+import org.apache.openoffice.ooxml.schema.model.base.Node;
+import org.apache.openoffice.ooxml.schema.model.base.QualifiedName;
+import org.apache.openoffice.ooxml.schema.model.complex.All;
+import org.apache.openoffice.ooxml.schema.model.complex.Any;
+import org.apache.openoffice.ooxml.schema.model.complex.Choice;
+import org.apache.openoffice.ooxml.schema.model.complex.ComplexContent;
+import org.apache.openoffice.ooxml.schema.model.complex.ComplexType;
+import org.apache.openoffice.ooxml.schema.model.complex.Element;
+import org.apache.openoffice.ooxml.schema.model.complex.ElementReference;
+import org.apache.openoffice.ooxml.schema.model.complex.Extension;
+import org.apache.openoffice.ooxml.schema.model.complex.Group;
+import org.apache.openoffice.ooxml.schema.model.complex.GroupReference;
+import org.apache.openoffice.ooxml.schema.model.complex.OccurrenceIndicator;
+import org.apache.openoffice.ooxml.schema.model.complex.Sequence;
+import org.apache.openoffice.ooxml.schema.model.schema.Schema;
+import org.apache.openoffice.ooxml.schema.model.schema.SchemaBase;
+import org.apache.openoffice.ooxml.schema.model.simple.List;
+import org.apache.openoffice.ooxml.schema.model.simple.Restriction;
+import org.apache.openoffice.ooxml.schema.model.simple.SimpleContent;
+import org.apache.openoffice.ooxml.schema.model.simple.SimpleType;
+import org.apache.openoffice.ooxml.schema.model.simple.SimpleTypeReference;
+import org.apache.openoffice.ooxml.schema.model.simple.Union;
+
+
+/** Parser for single schema file.
+ * Imports and includes of other schema files are stored and can be retrieved
+ * by calling GetImportedSchemas().
+ *
+ * Typical usage:
+ * 1) Create SchemaParser for top-level schema file.
+ * 2) Call Parse().
+ * 3) Repeat the same recursively for all imported schemas (as returned by
+ * GetImportedSchemas()).
+ *
+ * All top level types (complex types, simple types, elements, etc.) are
+ * stored in the given Schema object.
+ */
+public class SchemaParser
+{
+ public SchemaParser (
+ final File aSchemaFile,
+ final Schema aSchema,
+ final SchemaBase aSchemaBase)
+ {
+ maSchema = aSchema;
+ maSchemaBase = aSchemaBase;
+ maReader = GetStreamReader(aSchemaFile);
+ msBasename = aSchemaFile.getName();
+ maDirectory = aSchemaFile.getParentFile();
+ maLocalNamespaceMap = new HashMap<>();
+ maImportedSchemas = new Vector<>();
+ maLastLocation = null;
+ }
+
+
+
+
+ /** Parse the schema file.
+ * @return
+ * Return false if there is any error.
+ * @throws XMLStreamException
+ */
+ public void Parse ()
+ throws XMLStreamException
+ {
+ if (maReader == null)
+ return;
+
+ while (maReader.hasNext())
+ {
+ final int nCode = maReader.next();
+ switch (nCode)
+ {
+ case XMLStreamReader.START_ELEMENT:
+ if (maReader.getLocalName().equals("schema"))
+ {
+ ProcessSchemaTag();
+ ParseSchema();
+
+ maLastLocation = maReader.getLocation();
+ }
+ else
+ {
+ throw CreateErrorException("expecting top level element to be 'schema'");
+ }
+ break;
+
+ case XMLStreamReader.END_DOCUMENT:
+ return;
+
+ default:
+ throw CreateErrorException("unexpected XML event %d", nCode);
+ }
+ }
+ }
+
+
+
+
+ public Iterable<File> GetImportedSchemaFilenames ()
+ {
+ return maImportedSchemas;
+ }
+
+
+
+
+ public int GetLineCount ()
+ {
+ if (maLastLocation != null)
+ return maLastLocation.getLineNumber();
+ else
+ return 0;
+ }
+
+
+
+
+ public int GetByteCount ()
+ {
+ if (maLastLocation != null)
+ return maLastLocation.getCharacterOffset();
+ else
+ return 0;
+ }
+
+
+
+
+ /** Process the namespace definitions in the outer 'schema' element.
+ */
+ private void ProcessSchemaTag ()
+ {
+ GetOptionalAttributeValue("id", null);
+ meAttributeFormDefault = FormDefault.valueOf(
+ GetOptionalAttributeValue("attributeFormDefault", "unqualified"));
+ meElementFormDefault = FormDefault.valueOf(
+ GetOptionalAttributeValue("elementFormDefault", "unqualified"));
+ GetOptionalAttributeValue("blockDefault", null);//=(#all|list of (extension|restriction|substitution))
+ GetOptionalAttributeValue("finalDefault", null);//=(#all|list of (extension|restriction|list|union))
+ msTargetNamespace = GetOptionalAttributeValue("targetNamespace", null);
+ GetOptionalAttributeValue("version", null);
+
+ for (int nIndex=0; nIndex<maReader.getNamespaceCount(); ++nIndex)
+ {
+ final String sPrefix = maReader.getNamespacePrefix(nIndex);
+ final String sURI = maReader.getNamespaceURI(nIndex);
+ maLocalNamespaceMap.put(sPrefix, sURI);
+ maSchemaBase.Namespaces.ProvideNamespace(sURI, sPrefix);
+ }
+
+ maLocalNamespaceMap.put(null, msTargetNamespace);
+ maSchemaBase.Namespaces.ProvideNamespace(msTargetNamespace, null);
+ }
+
+
+
+
+ private void ParseSchema ()
+ throws XMLStreamException
+ {
+ while (true)
+ {
+ switch (Next())
+ {
+ case XMLStreamReader.START_ELEMENT:
+ ProcessTopLevelStartElement();
+ break;
+
+ case XMLStreamReader.END_ELEMENT:
+ return;
+
+ default:
+ throw CreateErrorException("unexpected event (expteced START_ELEMENT): %d", maReader.getEventType());
+ }
+ }
+ }
+
+
+
+
+ private void ProcessTopLevelStartElement ()
+ throws XMLStreamException
+ {
+ assert(GetAttributeValue("minOccurs") == null);
+ assert(GetAttributeValue("maxOccurs") == null);
+
+ switch (maReader.getLocalName())
+ {
+ case "attribute":
+ maSchemaBase.Attributes.Add(ParseAttribute());
+ break;
+
+ case "attributeGroup":
+ maSchemaBase.AttributeGroups.Add(ParseAttributeGroup());
+ break;
+
+ case "complexType":
+ maSchemaBase.ComplexTypes.Add(ParseComplexType());
+ break;
+
+ case "element":
+ final Element aElement = ParseElement(null);
+ if (maSchema != null)
+ maSchema.TopLevelElements.Add(aElement);
+ maSchemaBase.TopLevelElements.Add(aElement);
+ break;
+
+ case "group":
+ maSchemaBase.Groups.Add(ParseGroup(null));
+ break;
+
+ case "import":
+ ParseImport();
+ break;
+
+ case "include":
+ ParseInclude();
+ break;
+
+ case "simpleType":
+ maSchemaBase.SimpleTypes.Add(ParseSimpleType(null));
+ break;
+
+ default:
+ throw CreateErrorException("unexpected top level element %s", maReader.getLocalName());
+ }
+ }
+
+
+
+
+ private void ProcessStartElement (final Node aParent)
+ throws XMLStreamException
+ {
+ final String sMinimumOccurrence = GetOptionalAttributeValue("minOccurs", "1");
+ final String sMaximumOccurrence = GetOptionalAttributeValue("maxOccurs", "1");
+
+ final Node aLocalParent;
+ if ( ! (sMinimumOccurrence.equals("1") && sMaximumOccurrence.equals("1")))
+ {
+ // Occurrence does not only have default values (min=max=1).
+ // Have to create an intermediate node for the occurrence indicator.
+ final OccurrenceIndicator aIndicator = new OccurrenceIndicator(
+ aParent,
+ sMinimumOccurrence,
+ sMaximumOccurrence,
+ GetLocation());
+ aParent.AddChild(aIndicator);
+ aLocalParent = aIndicator;
+ }
+ else
+ aLocalParent = aParent;
+
+ switch (maReader.getLocalName())
+ {
+ case "all":
+ aLocalParent.AddChild(ParseAll(aLocalParent));
+ break;
+
+ case "any":
+ aLocalParent.AddChild(ParseAny(aLocalParent));
+ break;
+
+ case "attribute":
+ aLocalParent.AddAttribute(ParseAttributeOrReference());
+ break;
+
+ case "attributeGroup":
+ aLocalParent.AddAttribute(ParseAttributeGroupOrReference());
+ break;
+
+ case "choice":
+ aLocalParent.AddChild(ParseChoice(aLocalParent));
+ break;
+
+ case "complexContent":
+ aLocalParent.AddChild(ParseComplexContent(aLocalParent));
+ break;
+
+ case "element":
+ aLocalParent.AddChild(ParseElementOrReference(aLocalParent));
+ break;
+
+ case "extension":
+ aLocalParent.AddChild(ParseExtension(aLocalParent));
+ break;
+
+ case "group":
+ aLocalParent.AddChild(ParseGroupOrReference(aLocalParent));
+ break;
+
+ case "list":
+ aLocalParent.AddChild(ParseList(aLocalParent));
+ break;
+
+ case "sequence":
+ aLocalParent.AddChild(ParseSequence(aLocalParent));
+ break;
+
+ case "simpleContent":
+ aLocalParent.AddChild(ParseSimpleContent(aLocalParent));
+ break;
+
+ default:
+ throw CreateErrorException("unsupported content type %s", maReader.getLocalName());
+ }
+ }
+
+
+
+
+ private void IgnoreAnnotation ()
+ throws XMLStreamException
+ {
+ IgnoreContent();
+ }
+
+
+
+
+ private void IgnoreContent ()
+ throws XMLStreamException
+ {
+ while(true)
+ {
+ switch(maReader.next())
+ {
+ case XMLStreamReader.START_ELEMENT:
+ IgnoreContent();
+ break;
+
+ case XMLStreamReader.END_ELEMENT:
+ return;
+
+ case XMLStreamReader.COMMENT:
+ case XMLStreamReader.CHARACTERS:
+ break;
+
+ default:
+ throw CreateErrorException(
+ "unexpected XML event %d while ignoring content",
+ maReader.getEventType());
+ }
+ }
+ }
+
+
+
+
+ private All ParseAll (final Node aParent)
+ throws XMLStreamException
+ {
+ assert(HasOnlyAttributes("minOccurs", "maxOccurs"));
+
+ final All aAll = new All(aParent, GetLocation());
+ ParseContent(aAll);
+ return aAll;
+ }
+
+
+
+
+ private Any ParseAny (final Node aParent)
+ throws XMLStreamException
+ {
+ assert(HasOnlyAttributes("minOccurs", "maxOccurs", "namespace", "processContents"));
+
+ final Any aAny = new Any(
+ aParent,
+ GetLocation(),
+ GetOptionalAttributeValue("processContents", "strict"),
+ GetOptionalAttributeValue("namespace", "##any"));
+ ExpectEndElement("ParseAny");
+ return aAny;
+ }
+
+
+
+
+ private AttributeGroup ParseAttributeGroup ()
+ throws XMLStreamException
+ {
+ assert(HasOnlyAttributes("name"));
+
+ final AttributeGroup aGroup = new AttributeGroup(GetOptionalQualifiedName("name"), GetLocation());
+
+ while (true)
+ {
+ switch (Next())
+ {
+ case XMLStreamReader.START_ELEMENT:
+ if ( ! maReader.getLocalName().equals("attribute"))
+ throw CreateErrorException(
+ "attributeGroup expects element 'attribute' but got %s",
+ maReader.getLocalName());
+ else
+ aGroup.AddAttribute(ParseAttributeOrReference());
+ break;
+
+ case XMLStreamReader.END_ELEMENT:
+ return aGroup;
+
+ default:
+ throw CreateErrorException(
+ "unexpected event when parsing attributeGroup: %d",
+ maReader.getEventType());
+ }
+ }
+ }
+
+
+
+
+ private INode ParseAttributeGroupOrReference ()
+ throws XMLStreamException
+ {
+ assert(HasOnlyAttributes("ref"));
+
+ final INode aGroup;
+ if (GetAttributeValue("schemaLocation") != null)
+ {
+ aGroup = ParseAttributeGroup();
+ }
+ else
+ {
+ aGroup = new AttributeGroupReference(
+ CreateQualifiedName(
+ GetAttributeValue("ref")),
+ GetLocation());
+ ExpectEndElement("attribute group or reference");
+ }
+ return aGroup;
+ }
+
+
+
+
+ private INode ParseAttributeOrReference ()
+ throws XMLStreamException
+ {
+ final INode aAttribute;
+ if (GetAttributeValue("name") != null)
+ {
+ aAttribute = ParseAttribute();
+ }
+ else
+ {
+ assert(HasOnlyAttributes("default", "fixed", "ref", "use"));
+
+ aAttribute = new AttributeReference(
+ GetQualifiedName("ref"),
+ GetOptionalAttributeValue("use", "optional"),
+ GetOptionalAttributeValue("default", null),
+ GetOptionalAttributeValue("fixed", null),
+ meAttributeFormDefault,
+ GetLocation());
+ ExpectEndElement("attribute reference");
+ }
+ return aAttribute;
+ }
+
+
+
+
+ private Attribute ParseAttribute ()
+ throws XMLStreamException
+ {
+ assert(HasOnlyAttributes("default", "fixed", "name", "type", "use"));
+
+ final Attribute aAttribute = new Attribute(
+ GetQualifiedName("name"),
+ GetQualifiedName("type"),
+ GetOptionalAttributeValue("use", "optional"),
+ GetOptionalAttributeValue("default", null),
+ GetOptionalAttributeValue("fixed", null),
+ meAttributeFormDefault,
+ GetLocation());
+ ExpectEndElement("attribute");
+
+ return aAttribute;
+ }
+
+
+
+ private Choice ParseChoice (final Node aParent)
+ throws XMLStreamException
+ {
+ assert(HasOnlyAttributes("minOccurs", "maxOccurs"));
+
+ final Choice aChoice = new Choice(aParent, GetLocation());
+ ParseContent(aChoice);
+ return aChoice;
+ }
+
+
+
+
+ private ComplexContent ParseComplexContent (final Node aParent)
+ throws XMLStreamException
+ {
+ assert(HasOnlyAttributes("minOccurs", "maxOccurs"));
+
+ final ComplexContent aNode = new ComplexContent(aParent, GetLocation());
+ ParseContent(aNode);
+ return aNode;
+ }
+
+
+
+
+ private ComplexType ParseComplexType ()
+ throws XMLStreamException
+ {
+ assert(HasOnlyAttributes("mixed", "name"));
+
+ final ComplexType aComplexType = new ComplexType(
+ null,
+ GetQualifiedName("name"),
+ GetLocation());
+
+ ParseContent(aComplexType);
+
+ return aComplexType;
+ }
+
+
+
+
+ private Element ParseElement (final Node aParent)
+ throws XMLStreamException
+ {
+ assert(HasOnlyAttributes("minOccurs", "maxOccurs", "name", "type"));
+
+ final Element aElement = new Element(
+ aParent,
+ GetQualifiedName("name"),
+ GetQualifiedName("type"),
+ GetLocation());
+
+ ExpectEndElement("element");
+
+ return aElement;
+ }
+
+
+
+
+ private Element ParseElementOrReference (final Node aParent)
+ throws XMLStreamException
+ {
+ assert(HasOnlyAttributes("minOccurs", "maxOccurs", "name", "ref", "type"));
+
+ final Element aElement;
+ final String sName = GetOptionalAttributeValue("name", null);
+ if (sName != null)
+ {
+ aElement = ParseElement(aParent);
+ }
+ else
+ {
+ final String sElementReference = GetOptionalAttributeValue("ref", null);
+ if (sElementReference != null)
+ {
+ ExpectEndElement("element reference");
+ aElement = new ElementReference(
+ aParent,
+ CreateQualifiedName(sElementReference),
+ GetLocation());
+ }
+ else
+ {
+ throw CreateErrorException("element has no name and no ref");
+ }
+ }
+ return aElement;
+ }
+
+
+
+
+ private Extension ParseExtension (final Node aParent)
+ throws XMLStreamException
+ {
+ assert(HasOnlyAttributes("base", "minOccurs", "maxOccurs"));
+
+ final Extension aNode = new Extension(
+ aParent,
+ CreateQualifiedName(GetAttributeValue("base")),
+ GetLocation());
+ ParseContent(aNode);
+ return aNode;
+ }
+
+
+
+
+ private Group ParseGroup (final Node aParent)
+ throws XMLStreamException
+ {
+ assert(HasOnlyAttributes("name"));
+
+ final Group aGroup = new Group(
+ aParent,
+ GetQualifiedName("name"),
+ GetLocation());
+ ParseContent(aGroup);
+ return aGroup;
+ }
+
+
+
+
+ private Node ParseGroupOrReference (final Node aParent)
+ throws XMLStreamException
+ {
+ assert(HasOnlyAttributes("minOccurs", "maxOccurs", "name", "ref"));
+
+ final Node aGroup;
+ final String sName = GetOptionalAttributeValue("name", null);
+ if (sName != null)
+ {
+ aGroup = ParseGroup(aParent);
+ }
+ else
+ {
+ final String sGroupReference = GetOptionalAttributeValue("ref", null);
+ if (sGroupReference != null)
+ {
+ ExpectEndElement("group reference");
+ aGroup = new GroupReference(
+ aParent,
+ CreateQualifiedName(sGroupReference),
+ GetLocation());
+ }
+ else
+ {
+ throw CreateErrorException("group has no name and no ref");
+ }
+ }
+ return aGroup;
+ }
+
+
+
+
+ private Restriction ParseRestriction (final Node aParent)
+ throws XMLStreamException
+ {
+ assert(HasOnlyAttributes("base", "value"));
+
+ final String sBaseType = GetAttributeValue("base");
+ final Restriction aRestriction = new Restriction(
+ aParent,
+ CreateQualifiedName(sBaseType),
+ GetLocation());
+
+ while (true)
+ {
+ switch (Next())
+ {
+ case XMLStreamReader.START_ELEMENT:
+ final String sValue = GetAttributeValue("value");
+ switch (maReader.getLocalName())
+ {
+ case "enumeration":
+ aRestriction.AddEnumeration(sValue);
+ break;
+
+ case "minInclusive":
+ aRestriction.SetMinInclusive(sValue);
+ break;
+
+ case "minExclusive":
+ aRestriction.SetMinExclusive(sValue);
+ break;
+
+ case "maxInclusive":
+ aRestriction.SetMaxInclusive(sValue);
+ break;
+
+ case "maxExclusive":
+ aRestriction.SetMaxExclusive(sValue);
+ break;
+
+ case "length":
+ aRestriction.SetLength(sValue);
+ break;
+
+ case "minLength":
+ aRestriction.SetMinLength(sValue);
+ break;
+
+ case "maxLength":
+ aRestriction.SetMaxLength(sValue);
+ break;
+
+ case "pattern":
+ aRestriction.SetPattern(sValue);
+ break;
+
+ default:
+ throw CreateErrorException("unsupported restriction type "+maReader.getLocalName());
+ }
+ ExpectEndElement("restriction");
+ break;
+
+ case XMLStreamReader.END_ELEMENT:
+ return aRestriction;
+
+ default:
+ throw CreateErrorException("unexpected XML event while parsing restrictions: %d", maReader.getEventType());
+ }
+ }
+ }
+
+
+
+
+ private List ParseList (final Node aParent)
+ throws XMLStreamException
+ {
+ assert(HasOnlyAttributes("itemType"));
+
+ final List aList = new List(
+ aParent,
+ GetQualifiedName("itemType"),
+ GetLocation());
+ ExpectEndElement("list");
+ return aList;
+ }
+
+
+
+
+ private Sequence ParseSequence (final Node aParent)
+ throws XMLStreamException
+ {
+ assert(HasOnlyAttributes("minOccurs", "maxOccurs", "name"));
+
+ final Sequence aSequence = new Sequence(
+ aParent,
+ GetOptionalQualifiedName("name"),
+ GetLocation());
+ ParseContent(aSequence);
+ return aSequence;
+ }
+
+
+
+
+ private SimpleContent ParseSimpleContent (final Node aParent)
+ throws XMLStreamException
+ {
+ assert(HasOnlyAttributes("minOccurs", "maxOccurs"));
+
+ final SimpleContent aSimpleContent = new SimpleContent(
+ aParent,
+ GetLocation());
+ ParseContent(aSimpleContent);
+ return aSimpleContent;
+ }
+
+
+
+
+ private SimpleType ParseSimpleType (final Node aParent)
+ throws XMLStreamException
+ {
+ assert(HasOnlyAttributes("final", "name"));
+
+ final SimpleType aType = new SimpleType(
+ aParent,
+ GetQualifiedName("name"),
+ GetLocation());
+ final String sFinalValue = GetOptionalAttributeValue("final", null);
+ if (sFinalValue != null)
+ aType.SetFinal(sFinalValue.split("\\s+"));
+
+ while (true)
+ {
+ switch (Next())
+ {
+ case XMLStreamReader.START_ELEMENT:
+ switch(maReader.getLocalName())
+ {
+ case "list":
+ aType.AddChild(ParseList(aType));
+ break;
+
+ case "restriction":
+ aType.AddChild(ParseRestriction(aType));
+ break;
+
+ case "union":
+ aType.AddChild(ParseUnion(aType));
+ break;
+
+ default:
+ throw CreateErrorException("unsupported simple type part %s", maReader.getLocalName());
+ }
+ break;
+
+ case XMLStreamReader.END_ELEMENT:
+ return aType;
+
+ default:
+ throw CreateErrorException("unexpected XML event in ParseSimpleType: %s", maReader.getEventType());
+ }
+ }
+ }
+
+
+
+
+ private Union ParseUnion (final Node aParent)
+ throws XMLStreamException
+ {
+ assert(HasOnlyAttributes("memberTypes"));
+
+ final Union aUnion = new Union(
+ aParent,
+ GetLocation());
+ final String[] aMemberTypes = GetAttributeValue("memberTypes").split("\\s+");
+ for (int nIndex=0; nIndex<aMemberTypes.length; ++nIndex)
+ aUnion.AddChild(
+ new SimpleTypeReference(
+ aUnion,
+ CreateQualifiedName(aMemberTypes[nIndex]),
+ GetLocation()));
+
+ ParseContent(aUnion);
+
+ return aUnion;
+ }
+
+
+ private void ParseContent (final Node aParent)
+ throws XMLStreamException
+ {
+ while(true)
+ {
+ switch(Next())
+ {
+ case XMLStreamReader.START_ELEMENT:
+ ProcessStartElement(aParent);
+ break;
+
+ case XMLStreamReader.END_ELEMENT:
+ return;
+
+ default:
+ throw CreateErrorException(
+ "unexpected XML event %d while parsing content of %s",
+ maReader.getEventType(),
+ aParent.toString());
+ }
+ }
+ }
+
+
+
+
+ private void ParseImport ()
+ throws XMLStreamException
+ {
+ assert(HasOnlyAttributes("id", "namespace", "schemaLocation"));
+
+ final String sFilename = GetOptionalAttributeValue("schemaLocation", null);
+ if (sFilename == null)
+ {
+ final String sNamespaceName = GetAttributeValue("namespace");
+ if (sNamespaceName.equals(XmlNamespace.URI))
+ {
+ XmlNamespace.Apply(maSchemaBase);
+ maLocalNamespaceMap.put(XmlNamespace.Prefix, XmlNamespace.URI);
+ }
+ else
+ throw CreateErrorException("invalid import");
+ }
+ else
+ {
+ maImportedSchemas.add(new File(maDirectory, sFilename));
+ }
+
+ ExpectEndElement("import");
+ }
+
+
+
+
+ private void ParseInclude ()
+ throws XMLStreamException
+ {
+ assert(HasOnlyAttributes("id", "schemaLocation"));
+
+ final String sFilename = GetOptionalAttributeValue("schemaLocation", null);
+ if (sFilename == null)
+ {
+ throw CreateErrorException("invalid include");
+ }
+ else
+ {
+ maImportedSchemas.add(new File(maDirectory, sFilename));
+ }
+
+ ExpectEndElement("include");
+ }
+
+
+
+
+ private void ExpectEndElement (final String sCaller)
+ throws XMLStreamException
+ {
+ final int nNextEvent = Next();
+ if (nNextEvent != XMLStreamReader.END_ELEMENT)
+ throw CreateErrorException("expected END_ELEMENT of %s but got %s",
+ sCaller,
+ nNextEvent);
+ }
+
+
+
+
+ /** Return the next relevant token from the XML stream.
+ * Ignores comments.
+ * @return
+ * Returns the event code of the next relevant XML event or END_DOCUMENT when the end of the file has been reached.
+ */
+ private int Next ()
+ throws XMLStreamException
+ {
+ while (maReader.hasNext())
+ {
+ switch (maReader.next())
+ {
+ case XMLStreamReader.COMMENT:
+ // Ignore comments.
+ break;
+
+ case XMLStreamReader.CHARACTERS:
+ // Ignore whitespace.
+ if (maReader.getText().matches("^\\s+$"))
+ break;
+ else
+ {
+ // Character events are not expected in schema files
+ // and therefore not supported.
+ // Alternatively, they could easily be ignored.
+ throw CreateErrorException("unexpected CHARACTERS event with text [%s]", maReader.getText());
+ }
+
+ case XMLStreamReader.START_ELEMENT:
+ switch (maReader.getLocalName())
+ {
+ case "annotation":
+ IgnoreAnnotation();
+ break;
+ case "unique":
+ // Not supported.
+ IgnoreContent();
+ break;
+ default:
+ return XMLStreamReader.START_ELEMENT;
+ }
+ break;
+
+ default:
+ return maReader.getEventType();
+ }
+ }
+ return XMLStreamReader.END_DOCUMENT;
+ }
+
+
+
+
+ private String GetAttributeValue (final String sAttributeLocalName)
+ {
+ return maReader.getAttributeValue(null, sAttributeLocalName);
+ }
+
+
+
+
+ private String GetOptionalAttributeValue (
+ final String sAttributeLocalName,
+ final String sDefaultValue)
+ {
+ final String sValue = maReader.getAttributeValue(null, sAttributeLocalName);
+ if (sValue == null)
+ return sDefaultValue;
+ else
+ return sValue;
+ }
+
+
+
+
+ /** Read the specified attribute and return its value as QualifiedName object.
+ */
+ private QualifiedName GetQualifiedName (final String sAttributeLocalName)
+ {
+ final String sName = maReader.getAttributeValue(null, sAttributeLocalName);
+ if (sName == null)
+ throw CreateErrorException(
+ "did not find a qualified name as value of attribute '%s' at %s:%s",
+ sAttributeLocalName,
+ msBasename,
+ maReader.getLocation());
+ else
+ return CreateQualifiedName(sName);
+ }
+
+
+
+
+ private QualifiedName GetOptionalQualifiedName (final String sAttributeLocalName)
+ {
+ final String sName = maReader.getAttributeValue(null, sAttributeLocalName);
+ if (sName == null)
+ return null;
+ else
+ return CreateQualifiedName(sName);
+ }
+
+
+
+
+ /** Create a QualifiedName object from the given string.
+ * @param sName
+ * May or may not contain a namespace prefix (separated from the name
+ * by a colon).
+ */
+ private QualifiedName CreateQualifiedName (final String sName)
+ {
+ final String[] aParts = sName.split(":");
+ final String sNamespaceURL;
+ final String sLocalPart;
+ switch (aParts.length)
+ {
+ case 1:
+ // sName only consists of a local part.
+ // Use the target namespace as namespace.
+ sNamespaceURL = msTargetNamespace;
+ sLocalPart = aParts[0];
+ break;
+
+ case 2:
+ // sName is of the form prefix:local.
+ sNamespaceURL = maLocalNamespaceMap.get(aParts[0]);
+ sLocalPart = aParts[1];
+ break;
+
+ default:
+ throw new RuntimeException(
+ "the string '"+sName+"' can not be transformed into a qualified name");
+ }
+ if (sNamespaceURL == null)
+ throw CreateErrorException("can not determine namespace for '%s'", sName);
+ // Transform the local namespace prefix into a global namespace prefix
+ // (different schema files can use different prefixes for the same
+ // namespace URI).
+ final String sGlobalNamespacePrefix = maSchemaBase.Namespaces.GetNamespacePrefix(sNamespaceURL);
+ return new QualifiedName(
+ sNamespaceURL,
+ sGlobalNamespacePrefix,
+ sLocalPart);
+ }
+
+
+
+
+ /** Create an XMLStreamReader for the given file.
+ * Returns null when there is an error.
+ */
+ private static XMLStreamReader GetStreamReader (final File aSchemaFile)
+ {
+ final XMLInputFactory aFactory = (XMLInputFactory)XMLInputFactory.newInstance();
+ aFactory.setProperty(XMLInputFactory.IS_REPLACING_ENTITY_REFERENCES, false);
+ aFactory.setProperty(XMLInputFactory.IS_SUPPORTING_EXTERNAL_ENTITIES, false);
+ aFactory.setProperty(XMLInputFactory.IS_COALESCING, false);
+
+ try
+ {
+ return aFactory.createXMLStreamReader(
+ aSchemaFile.getName(),
+ new FileInputStream(aSchemaFile));
+ }
+ catch (Exception aException)
+ {
+ aException.printStackTrace();
+ return null;
+ }
+ }
+
+
+
+
+ private RuntimeException CreateErrorException (
+ final String sFormat,
+ final Object ... aArgumentList)
+ {
+ return new RuntimeException(String.format(sFormat, aArgumentList)
+ + String.format(" in %s at L%dC%dP%d",
+ msBasename,
+ maReader.getLocation().getLineNumber(),
+ maReader.getLocation().getColumnNumber(),
+ maReader.getLocation().getCharacterOffset()));
+ }
+
+
+
+
+ /** This predicate is only used for debugging to assert
+ * that no unsupported attributes are present.
+ * If there where then the parser has to be extended.
+ */
+ private boolean HasOnlyAttributes (final String ... aAttributeNameList)
+ {
+ for (int nIndex=0,nCount=maReader.getAttributeCount(); nIndex<nCount; ++nIndex)
+ {
+ final String sAttributeName = maReader.getAttributeLocalName(nIndex);
+ boolean bFound = false;
+ for (final String sName : aAttributeNameList)
+ if (sAttributeName.equals(sName))
+ {
+ bFound = true;
+ break;
+ }
+ if ( ! bFound)
+ {
+ // Attribute name was not found in the given list.
+ System.err.printf("attribute '%s' is not handled\n", sAttributeName);
+ return false;
+ }
+ }
+ return true;
+ }
+
+
+
+
+ private Location GetLocation ()
+ {
+ final javax.xml.stream.Location aLocation = maReader.getLocation();
+ return new Location(
+ msBasename,
+ aLocation.getLineNumber(),
+ aLocation.getColumnNumber(),
+ aLocation.getCharacterOffset());
+ }
+
+
+
+
+ private final Schema maSchema;
+ private final SchemaBase maSchemaBase;
+ private final XMLStreamReader maReader;
+ private final String msBasename;
+ private final File maDirectory;
+ private String msTargetNamespace;
+ /// Map of namespace prefix to URI, local to the currently read schema file.
+ private final Map<String,String> maLocalNamespaceMap;
+ /// The names of other schema files referenced by import elements.
+ private final Vector<File> maImportedSchemas;
+ /// Some values for tracking the number of read bytes and lines.
+ private javax.xml.stream.Location maLastLocation;
+ private FormDefault meAttributeFormDefault;
+ private FormDefault meElementFormDefault;
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/parser/XmlNamespace.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/parser/XmlNamespace.java
new file mode 100644
index 000000000000..078c9e13de10
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/parser/XmlNamespace.java
@@ -0,0 +1,69 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.parser;
+
+import org.apache.openoffice.ooxml.schema.model.attribute.Attribute;
+import org.apache.openoffice.ooxml.schema.model.base.Location;
+import org.apache.openoffice.ooxml.schema.model.base.QualifiedName;
+import org.apache.openoffice.ooxml.schema.model.schema.SchemaBase;
+import org.apache.openoffice.ooxml.schema.model.simple.Restriction;
+import org.apache.openoffice.ooxml.schema.model.simple.SimpleType;
+
+/** The http://www.w3.org/XML/1998/namespace namespace is
+ * implicitly included in all schema files.
+ *
+ * This class makes the necessary additions to namespace map and Schema object.
+ */
+public class XmlNamespace
+{
+ public static final String URI = "http://www.w3.org/XML/1998/namespace";
+ public static final String Prefix = "xml";
+
+ public static void Apply (final SchemaBase aSchemaBase)
+ {
+ aSchemaBase.Namespaces.ProvideNamespace(URI, Prefix);
+
+ final QualifiedName aStSpaceSimpleTypeName = new QualifiedName(URI, Prefix, "ST__space");
+ aSchemaBase.Attributes.Add(
+ new Attribute(
+ new QualifiedName(URI, Prefix, "space"),
+ aStSpaceSimpleTypeName,
+ "optional",
+ null,
+ null,
+ FormDefault.unqualified,
+ null));
+
+ final SimpleType aType = new SimpleType(
+ null,
+ aStSpaceSimpleTypeName,
+ new Location());
+ final Restriction aRestriction = new Restriction(
+ aType,
+ new QualifiedName(XsdNamespace.URI, XsdNamespace.Prefix, "token"),
+ null);
+ aRestriction.AddEnumeration("default");
+ aRestriction.AddEnumeration("preserve");
+ aType.AddChild(aRestriction);
+ aSchemaBase.SimpleTypes.Add(aType);
+ }
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/parser/XsdNamespace.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/parser/XsdNamespace.java
new file mode 100644
index 000000000000..901aca5efdc9
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/parser/XsdNamespace.java
@@ -0,0 +1,29 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.parser;
+
+
+public class XsdNamespace
+{
+ public static final String URI = "http://www.w3.org/2001/XMLSchema";
+ public static final String Prefix = "xsd";
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/simple/BlobNode.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/simple/BlobNode.java
new file mode 100644
index 000000000000..ab0a4fcf44cc
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/simple/BlobNode.java
@@ -0,0 +1,131 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.simple;
+
+import java.util.Map;
+
+import org.apache.openoffice.ooxml.schema.misc.Log;
+import org.apache.openoffice.ooxml.schema.model.simple.BuiltInType;
+import org.apache.openoffice.ooxml.schema.model.simple.Restriction;
+
+public class BlobNode
+ implements ISimpleTypeNode
+{
+ public BlobNode (final BuiltInType eType)
+ {
+ meType = eType;
+ mbIsList = false;
+ mnLengthRestriction = null;
+ }
+
+
+
+
+ public BuiltInType GetBlobType ()
+ {
+ return meType;
+ }
+
+
+
+
+ @Override
+ public void ApplyRestriction (
+ final Restriction aRestriction,
+ final Map<String,Integer> aValueToIdMap)
+ {
+ if (aRestriction.GetFeatureBits() == 0)
+ return;
+
+ if (aRestriction.GetFeatureBits() != Restriction.LengthBit)
+ throw new RuntimeException("unsupported restriction on blob: "+aRestriction);
+
+ mnLengthRestriction = aRestriction.GetLength();
+ }
+
+
+
+
+ @Override
+ public void Print (final Log aLog)
+ {
+ aLog.printf("blob of type %s\n", meType);
+ }
+
+
+
+
+ @Override
+ public boolean IsList ()
+ {
+ return mbIsList;
+ }
+
+
+
+
+ @Override
+ public void SetIsList ()
+ {
+ mbIsList = true;
+ }
+
+
+
+
+ @Override
+ public void AcceptVisitor (final ISimpleTypeNodeVisitor aVisitor)
+ {
+ aVisitor.Visit(this);
+ }
+
+
+
+
+ public enum RestrictionType
+ {
+ Length,
+ None;
+ }
+ public RestrictionType GetRestrictionType ()
+ {
+ if (mnLengthRestriction != null)
+ return RestrictionType.Length;
+ else
+ return RestrictionType.None;
+ }
+
+
+
+
+ public int GetLengthRestriction ()
+ {
+ return mnLengthRestriction;
+ }
+
+
+
+
+ private final BuiltInType meType;
+ private boolean mbIsList;
+ private Integer mnLengthRestriction;
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/simple/DateTimeNode.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/simple/DateTimeNode.java
new file mode 100644
index 000000000000..9f32145bf55c
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/simple/DateTimeNode.java
@@ -0,0 +1,92 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.simple;
+
+import java.util.Map;
+
+import org.apache.openoffice.ooxml.schema.misc.Log;
+import org.apache.openoffice.ooxml.schema.model.simple.BuiltInType;
+import org.apache.openoffice.ooxml.schema.model.simple.Restriction;
+
+public class DateTimeNode
+ implements ISimpleTypeNode
+{
+
+ public DateTimeNode (final BuiltInType eType)
+ {
+ mbIsList = false;
+ }
+
+
+
+
+ @Override
+ public void ApplyRestriction (
+ final Restriction aRestriction,
+ final Map<String,Integer> aValueToIdMap)
+ {
+ if (aRestriction.GetFeatureBits() == 0)
+ return;
+ System.out.println(aRestriction);
+ }
+
+
+
+
+ @Override
+ public void Print (final Log aLog)
+ {
+ aLog.printf("date or time\n");
+ }
+
+
+
+
+ @Override
+ public boolean IsList ()
+ {
+ return mbIsList;
+ }
+
+
+
+
+ @Override
+ public void SetIsList ()
+ {
+ mbIsList = true;
+ }
+
+
+
+
+ @Override
+ public void AcceptVisitor (final ISimpleTypeNodeVisitor aVisitor)
+ {
+ aVisitor.Visit(this);
+ }
+
+
+
+
+ private boolean mbIsList;
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/simple/EnumerationNode.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/simple/EnumerationNode.java
new file mode 100644
index 000000000000..f4844aeaab59
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/simple/EnumerationNode.java
@@ -0,0 +1,27 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.simple;
+
+public class EnumerationNode
+{
+
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/simple/ISimpleTypeNode.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/simple/ISimpleTypeNode.java
new file mode 100644
index 000000000000..6698b856ccc1
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/simple/ISimpleTypeNode.java
@@ -0,0 +1,48 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.simple;
+
+import java.util.Map;
+
+import org.apache.openoffice.ooxml.schema.misc.Log;
+import org.apache.openoffice.ooxml.schema.model.simple.Restriction;
+
+/** Represent a single node in the node tree of a simple type.
+ */
+public interface ISimpleTypeNode
+{
+ void ApplyRestriction (
+ final Restriction aNode,
+ final Map<String,Integer> aValueToIdMap);
+ void Print (final Log aLog);
+
+ /** List elements are not represented by their own node (type).
+ * There is only this flag that makes this node a list of the item type
+ * which is represented by the node.
+ */
+ boolean IsList ();
+
+ /** Set the IsList flag.
+ */
+ void SetIsList ();
+ void AcceptVisitor (final ISimpleTypeNodeVisitor aVisitor);
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/simple/ISimpleTypeNodeVisitor.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/simple/ISimpleTypeNodeVisitor.java
new file mode 100644
index 000000000000..be7ea27b0b5d
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/simple/ISimpleTypeNodeVisitor.java
@@ -0,0 +1,31 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.simple;
+
+public interface ISimpleTypeNodeVisitor
+{
+ void Visit (final BlobNode aType);
+ void Visit (final DateTimeNode aType);
+ void Visit (final NumberNode<?> aType);
+ void Visit (final StringNode aType);
+ void Visit (final UnionNode aType);
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/simple/NumberNode.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/simple/NumberNode.java
new file mode 100644
index 000000000000..6cbb320c6980
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/simple/NumberNode.java
@@ -0,0 +1,310 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.simple;
+
+import java.util.Map;
+import java.util.Vector;
+
+import org.apache.openoffice.ooxml.schema.misc.Log;
+import org.apache.openoffice.ooxml.schema.model.simple.BuiltInType;
+import org.apache.openoffice.ooxml.schema.model.simple.Restriction;
+
+public class NumberNode<T extends Comparable<T>>
+ implements ISimpleTypeNode
+{
+ NumberNode (final BuiltInType eType)
+ {
+ meType = eType;
+ mbIsList = false;
+ }
+
+
+
+
+ public BuiltInType GetNumberType ()
+ {
+ return meType;
+ }
+
+
+
+
+ T ParseString (final String sValue)
+ {
+ switch(meType)
+ {
+ case Float:
+ return (T)(Float)Float.parseFloat(sValue);
+
+ case Double:
+ return (T)(Double)Double.parseDouble(sValue);
+
+ case Byte:
+ return (T)(Byte)Byte.parseByte(sValue);
+
+ case Int:
+ case UnsignedShort:
+ return (T)(Integer)Integer.parseInt(sValue);
+
+ case Short:
+ case UnsignedByte:
+ return (T)(Short)Short.parseShort(sValue);
+
+ case Long:
+ case UnsignedInt:
+ case Integer:
+ return (T)(Long)Long.parseLong(sValue);
+
+ default:
+ throw new RuntimeException("unsupported type "+meType);
+ }
+ }
+
+
+
+
+ @Override
+ public void ApplyRestriction (
+ final Restriction aNode,
+ final Map<String,Integer> aValueToIdMap)
+ {
+ if (aNode.HasFeature(Restriction.MinExclusiveBit))
+ ApplyMinimum(ParseString(aNode.GetMinExclusive()), false);
+ if (aNode.HasFeature(Restriction.MinInclusiveBit))
+ ApplyMinimum(ParseString(aNode.GetMinInclusive()), true);
+
+ if (aNode.HasFeature(Restriction.MaxExclusiveBit))
+ ApplyMaximum(ParseString(aNode.GetMaxExclusive()), false);
+ if (aNode.HasFeature(Restriction.MaxInclusiveBit))
+ ApplyMaximum(ParseString(aNode.GetMaxInclusive()), true);
+
+ if (aNode.HasFeature(Restriction.EnumerationBit))
+ {
+ final Vector<T> aValues = new Vector<>();
+ for (final String sEnumerationValue : aNode.GetEnumeration())
+ aValues.add(ParseString(sEnumerationValue));
+ ApplyEnumeration(aValues);
+ }
+ }
+
+
+
+
+ @Override
+ public void Print (final Log aLog)
+ {
+ aLog.printf("%s\n", toString());
+ }
+
+
+
+
+ @Override
+ public String toString ()
+ {
+ final StringBuffer sMessage = new StringBuffer();
+ sMessage.append(meType);
+ if (maEnumeration != null)
+ {
+ sMessage.append(", restricted to values");
+ for (final T nValue : maEnumeration)
+ {
+ sMessage.append(' ');
+ sMessage.append(nValue);
+ }
+ }
+ else if (maMinimumValue!=null || maMaximumValue!=null)
+ {
+ sMessage.append(" restricted to ");
+
+ if (maMinimumValue != null)
+ {
+ sMessage.append(maMinimumValue);
+ if (mbIsMinimumInclusive)
+ sMessage.append(" <= ");
+ else
+ sMessage.append(" < ");
+ }
+ sMessage.append("value");
+ if (maMaximumValue != null)
+ {
+ if (mbIsMaximumInclusive)
+ sMessage.append(" <= ");
+ else
+ sMessage.append(" < ");
+ sMessage.append(maMaximumValue);
+ }
+ }
+ else
+ sMessage.append(", not restricted");
+
+ return sMessage.toString();
+ }
+
+
+
+
+ private void ApplyMinimum (
+ final T nValue,
+ final boolean bIsInclusive)
+ {
+ if (maEnumeration != null)
+ throw new RuntimeException("minimum can not be applied to an enumeration");
+ else if (maMinimumValue != null)
+ {
+ final int nComparison = maMinimumValue.compareTo(nValue);
+ if (nComparison > 0)
+ throw new RuntimeException("second restriction tries to enlarge value space");
+ else if (nComparison == 0)
+ if (mbIsMinimumInclusive && ! bIsInclusive)
+ throw new RuntimeException("second restriction tries to enlarge value space");
+ }
+ maMinimumValue = nValue;
+ mbIsMinimumInclusive = bIsInclusive;
+ }
+
+
+
+
+
+ private void ApplyMaximum (
+ final T nValue,
+ final boolean bIsInclusive)
+ {
+ if (maEnumeration != null)
+ throw new RuntimeException("maximum can not be applied to an enumeration");
+ else if (maMaximumValue != null)
+ {
+ final int nComparison = maMaximumValue.compareTo(nValue);
+ if (nComparison < 0)
+ throw new RuntimeException("second restriction tries to enlarge value space");
+ else if (nComparison == 0)
+ if ( ! mbIsMaximumInclusive && bIsInclusive)
+ throw new RuntimeException("second restriction tries to enlarge value space");
+ }
+ maMaximumValue = nValue;
+ mbIsMaximumInclusive = bIsInclusive;
+ }
+
+
+
+
+ private void ApplyEnumeration (final Vector<T> aValues)
+ {
+ if (maEnumeration!=null || maMaximumValue!=null || maMinimumValue!=null)
+ throw new RuntimeException("can not apply enumeration to existing restriction");
+ maEnumeration = aValues;
+ }
+
+
+
+
+ @Override
+ public boolean IsList ()
+ {
+ return mbIsList;
+ }
+
+
+
+
+ @Override
+ public void SetIsList ()
+ {
+ mbIsList = true;
+ }
+
+
+
+
+ @Override
+ public void AcceptVisitor (final ISimpleTypeNodeVisitor aVisitor)
+ {
+ aVisitor.Visit(this);
+ }
+
+
+ public enum RestrictionType
+ {
+ Size,
+ Enumeration,
+ None
+ }
+ public RestrictionType GetRestrictionType ()
+ {
+ if (maEnumeration != null)
+ return RestrictionType.Enumeration;
+ else if (maMinimumValue!=null || maMaximumValue!=null)
+ return RestrictionType.Size;
+ else
+ return RestrictionType.None;
+ }
+
+
+
+ public Iterable<T> GetEnumerationRestriction ()
+ {
+ return maEnumeration;
+ }
+
+
+
+
+ public T GetMinimum ()
+ {
+ return maMinimumValue;
+ }
+
+
+
+
+ public T GetMaximum ()
+ {
+ return maMaximumValue;
+ }
+
+
+
+ public boolean IsMinimumInclusive ()
+ {
+ return mbIsMinimumInclusive;
+ }
+
+
+
+
+ public boolean IsMaximumInclusive ()
+ {
+ return mbIsMaximumInclusive;
+ }
+
+
+
+
+ private final BuiltInType meType;
+ private T maMinimumValue;
+ private boolean mbIsMinimumInclusive;
+ private T maMaximumValue;
+ private boolean mbIsMaximumInclusive;
+ private Vector<T> maEnumeration;
+ private boolean mbIsList;
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/simple/SimpleTypeContainer.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/simple/SimpleTypeContainer.java
new file mode 100644
index 000000000000..c77294c557a9
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/simple/SimpleTypeContainer.java
@@ -0,0 +1,102 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.simple;
+
+import java.io.File;
+import java.util.Map;
+import java.util.Map.Entry;
+import java.util.TreeMap;
+
+import org.apache.openoffice.ooxml.schema.misc.Log;
+import org.apache.openoffice.ooxml.schema.model.schema.SchemaBase;
+import org.apache.openoffice.ooxml.schema.model.simple.SimpleType;
+
+public class SimpleTypeContainer
+{
+ public static SimpleTypeContainer Create (
+ final SchemaBase aSchemaBase,
+ final File aLogFile)
+ {
+ final SimpleTypeContainer aContainer = new SimpleTypeContainer(aLogFile);
+ for (final SimpleType aType : aSchemaBase.SimpleTypes.GetSorted())
+ {
+ aContainer.ProcessSimpleType(aType, aSchemaBase);
+ }
+ return aContainer;
+ }
+
+
+
+
+ public int GetSimpleTypeCount ()
+ {
+ return maSimpleTypes.size();
+ }
+
+
+
+
+ public Iterable<Entry<String,SimpleTypeDescriptor>> GetSimpleTypes ()
+ {
+ return maSimpleTypes.entrySet();
+ }
+
+
+
+
+ public Iterable<Entry<String,SimpleTypeDescriptor>> GetSimpleTypesSorted ()
+ {
+ final Map<String,SimpleTypeDescriptor> aSortedSimpleTypes = new TreeMap<>();
+ aSortedSimpleTypes.putAll(maSimpleTypes);
+ return aSortedSimpleTypes.entrySet();
+ }
+
+
+
+
+ private SimpleTypeContainer (final File aLogFile)
+ {
+ maSimpleTypes = new TreeMap<>();
+ maLog = new Log(aLogFile);
+ }
+
+
+
+
+ private void ProcessSimpleType (
+ final SimpleType aType,
+ final SchemaBase aSchemaBase)
+ {
+ maSimpleTypes.put(
+ aType.GetName().GetStateName(),
+ SimpleTypeDescriptorFactory.CreateSimpleTypeDescriptor(
+ aType,
+ aSchemaBase,
+ maLog));
+ }
+
+
+
+
+ private final Map<String,SimpleTypeDescriptor> maSimpleTypes;
+ private final Log maLog;
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/simple/SimpleTypeDescriptor.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/simple/SimpleTypeDescriptor.java
new file mode 100644
index 000000000000..0c415e11a3a7
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/simple/SimpleTypeDescriptor.java
@@ -0,0 +1,86 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.simple;
+
+import org.apache.openoffice.ooxml.schema.misc.Log;
+import org.apache.openoffice.ooxml.schema.model.base.QualifiedName;
+
+public class SimpleTypeDescriptor
+{
+ public SimpleTypeDescriptor (
+ final QualifiedName aName)
+ {
+ maName = aName;
+ maSubTypes = null;
+ }
+
+
+
+
+ public QualifiedName GetName()
+ {
+ return maName;
+ }
+
+
+
+
+ public void SetSubTypes (final ISimpleTypeNode[] aSubTypes)
+ {
+ maSubTypes = aSubTypes;
+ }
+
+
+
+
+ public ISimpleTypeNode[] GetSubType ()
+ {
+ return maSubTypes;
+ }
+
+
+
+
+ @Override
+ public String toString ()
+ {
+ return "simple type "+maName;
+ }
+
+
+
+
+ public void Print (final Log aLog)
+ {
+ aLog.printf("%s\n", toString());
+ aLog.StartBlock();
+ for (final ISimpleTypeNode aSubType : maSubTypes)
+ aSubType.Print(aLog);
+ aLog.EndBlock();
+ }
+
+
+
+
+ private final QualifiedName maName;
+ private ISimpleTypeNode[] maSubTypes;
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/simple/SimpleTypeDescriptorFactory.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/simple/SimpleTypeDescriptorFactory.java
new file mode 100644
index 000000000000..55c1cf24c145
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/simple/SimpleTypeDescriptorFactory.java
@@ -0,0 +1,307 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.simple;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import org.apache.openoffice.ooxml.schema.misc.Log;
+import org.apache.openoffice.ooxml.schema.model.base.INode;
+import org.apache.openoffice.ooxml.schema.model.base.NodeType;
+import org.apache.openoffice.ooxml.schema.model.base.NodeVisitorAdapter;
+import org.apache.openoffice.ooxml.schema.model.schema.SchemaBase;
+import org.apache.openoffice.ooxml.schema.model.simple.BuiltIn;
+import org.apache.openoffice.ooxml.schema.model.simple.List;
+import org.apache.openoffice.ooxml.schema.model.simple.Restriction;
+import org.apache.openoffice.ooxml.schema.model.simple.SimpleType;
+import org.apache.openoffice.ooxml.schema.model.simple.SimpleTypeReference;
+import org.apache.openoffice.ooxml.schema.model.simple.Union;
+
+public class SimpleTypeDescriptorFactory
+ extends NodeVisitorAdapter
+{
+ class TypeCounter
+ extends NodeVisitorAdapter
+ {
+ public final Map<NodeType,Integer> Counters;
+ TypeCounter ()
+ {
+ Counters = new HashMap<>();
+ for (final NodeType eType : NodeType.values())
+ Counters.put(eType, 0);
+ }
+ @Override
+ public void Default (final INode aNode)
+ {
+ Counters.put(aNode.GetNodeType(), Counters.get(aNode.GetNodeType())+1);
+ }
+ }
+
+
+
+
+ public static SimpleTypeDescriptor CreateSimpleTypeDescriptor(
+ final SimpleType aSimpleType,
+ final SchemaBase aSchemaBase,
+ final Log aLog)
+ {
+ final SimpleTypeDescriptorFactory aFactory = new SimpleTypeDescriptorFactory(
+ aSchemaBase,
+ aLog);
+
+ aLog.AddComment("Simple type %s, defined at %s",
+ aSimpleType.GetName(),
+ aSimpleType.GetLocation().toString());
+
+ final ISimpleTypeNode aSubType = aFactory.ProcessSimpleType(aSimpleType);
+ final SimpleTypeDescriptor aDescriptor = new SimpleTypeDescriptor(aSimpleType.GetName());
+ aSubType.AcceptVisitor(new SimpleTypeNodeVisitorAdapter ()
+ {
+ @Override public void Visit (final UnionNode aType)
+ {
+ aDescriptor.SetSubTypes(aType.GetChildren());
+ }
+
+ @Override public void Default (final ISimpleTypeNode aType)
+ {
+ aDescriptor.SetSubTypes(new ISimpleTypeNode[]{aSubType});
+ }
+ });
+
+ aDescriptor.Print(aLog);
+ aLog.printf("\n");
+
+ return aDescriptor;
+ }
+
+
+
+
+ private SimpleTypeDescriptorFactory (
+ final SchemaBase aSchemaBase,
+ final Log aLog)
+ {
+ maSchemaBase = aSchemaBase;
+ maLog = aLog;
+ maResult = null;
+ }
+
+
+
+
+ ISimpleTypeNode ProcessSimpleType (final SimpleType aSimpleType)
+ {
+ return ApplyVisitor(aSimpleType);
+ }
+
+
+
+
+ @Override
+ public void Visit (final BuiltIn aNode)
+ {
+ assert(aNode.GetChildCount() == 0);
+ assert(maResult == null);
+
+ maLog.AddComment("builtin %s", aNode.toString());
+
+ switch(aNode.GetBuiltInType())
+ {
+ case Double:
+ maResult = new NumberNode<Double>(aNode.GetBuiltInType());
+ break;
+ case Float:
+ maResult = new NumberNode<Float>(aNode.GetBuiltInType());
+ break;
+
+ case Boolean:
+ maResult = new NumberNode<Boolean>(aNode.GetBuiltInType());
+ case Integer:
+ maResult = new NumberNode<Long>(aNode.GetBuiltInType());
+ break;
+ case Byte:
+ maResult = new NumberNode<Byte>(aNode.GetBuiltInType());
+ case Int:
+ maResult = new NumberNode<Integer>(aNode.GetBuiltInType());
+ case Long:
+ maResult = new NumberNode<Long>(aNode.GetBuiltInType());
+ case Short:
+ maResult = new NumberNode<Short>(aNode.GetBuiltInType());
+ case UnsignedByte:
+ maResult = new NumberNode<Integer>(aNode.GetBuiltInType());
+ case UnsignedInt:
+ maResult = new NumberNode<Long>(aNode.GetBuiltInType());
+ case UnsignedLong:
+ maResult = new NumberNode<Long>(aNode.GetBuiltInType());
+ case UnsignedShort:
+ maResult = new NumberNode<Integer>(aNode.GetBuiltInType());
+ break;
+
+ case AnyURI:
+ case ID:
+ case NcName:
+ case String:
+ case Token:
+ maResult = new StringNode(aNode.GetBuiltInType());
+ break;
+
+ case Base64Binary:
+ case HexBinary:
+ maResult = new BlobNode(aNode.GetBuiltInType());
+ break;
+
+ case DateTime:
+ maResult = new DateTimeNode(aNode.GetBuiltInType());
+ break;
+
+ default:
+ throw new RuntimeException(aNode.toString()+" is not supported");
+ }
+ }
+
+
+
+
+ @Override
+ public void Visit (final List aNode)
+ {
+ maLog.AddComment("list of type %s", aNode.GetItemType().toString());
+ maLog.StartBlock();
+ final ISimpleTypeNode aItemType = ApplyVisitor(maSchemaBase.GetSimpleTypeForName(aNode.GetItemType()));
+ maLog.EndBlock();
+
+ aItemType.SetIsList();
+ maResult = aItemType;
+ }
+
+
+
+
+ @Override
+ public void Visit (final Restriction aNode)
+ {
+ assert(aNode.GetChildCount() == 0);
+
+ maLog.AddComment("%s", aNode.toString());
+
+ final INode aBaseType = maSchemaBase.GetSimpleTypeForName(aNode.GetBaseType());
+ if (aBaseType == null)
+ throw new RuntimeException("got no type for name "+aNode.GetBaseType());
+ maLog.StartBlock();
+ maResult = ApplyVisitor(aBaseType);
+ maLog.EndBlock();
+ maResult.ApplyRestriction(
+ aNode,
+ maSchemaBase.AttributeValueToIdMap);
+ }
+
+
+
+
+ @Override
+ public void Visit (final SimpleType aNode)
+ {
+ maLog.AddComment(aNode.toString());
+
+ assert(aNode.GetChildCount() <= 1);
+ switch(aNode.GetChildCount())
+ {
+ case 0:
+ maResult = null;
+ break;
+ case 1:
+ maLog.StartBlock();
+ maResult = ApplyVisitor(aNode.GetOnlyChild());
+ maLog.EndBlock();
+ break;
+ default:
+ throw new RuntimeException();
+ }
+ }
+
+
+
+
+ @Override
+ public void Visit (final SimpleTypeReference aNode)
+ {
+ maLog.AddComment("reference to %s", aNode.GetReferencedTypeName());
+
+ maLog.StartBlock();
+ maResult = ApplyVisitor(aNode.GetReferencedNode(maSchemaBase));
+ maLog.EndBlock();
+ }
+
+
+
+
+ @Override
+ public void Visit (final Union aNode)
+ {
+ maLog.AddComment("union");
+
+ final UnionNode aUnion = new UnionNode();
+
+ // Make sure that all children have compatible types and value sets.
+ maLog.StartBlock();
+
+ for (final INode aChild : aNode.GetChildren())
+ {
+ aUnion.AddNode(ApplyVisitor(aChild));
+ }
+
+ maLog.EndBlock();
+
+ maResult = aUnion;
+ }
+
+
+
+
+ @Override
+ public void Default (final INode aNode)
+ {
+ switch(aNode.GetNodeType())
+ {
+ default:
+ throw new RuntimeException(aNode.GetNodeType() +" is not yet supported");
+ }
+ }
+
+
+
+
+ ISimpleTypeNode ApplyVisitor (final INode aNode)
+ {
+ aNode.AcceptVisitor(this);
+ final ISimpleTypeNode aResult = maResult;
+ maResult = null;
+ return aResult;
+ }
+
+
+
+
+ private final SchemaBase maSchemaBase;
+ private final Log maLog;
+ private ISimpleTypeNode maResult;
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/simple/SimpleTypeNodeVisitorAdapter.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/simple/SimpleTypeNodeVisitorAdapter.java
new file mode 100644
index 000000000000..9e30d653bb9a
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/simple/SimpleTypeNodeVisitorAdapter.java
@@ -0,0 +1,60 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.simple;
+
+public class SimpleTypeNodeVisitorAdapter
+ implements ISimpleTypeNodeVisitor
+{
+ @Override
+ public void Visit(BlobNode aType)
+ {
+ Default(aType);
+ }
+
+ @Override
+ public void Visit(DateTimeNode aType)
+ {
+ Default(aType);
+ }
+
+ @Override
+ public void Visit(NumberNode<?> aType)
+ {
+ Default(aType);
+ }
+
+ @Override
+ public void Visit(StringNode aType)
+ {
+ Default(aType);
+ }
+
+ @Override
+ public void Visit(UnionNode aType)
+ {
+ Default(aType);
+ }
+
+ public void Default (final ISimpleTypeNode aType)
+ {
+ }
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/simple/StringNode.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/simple/StringNode.java
new file mode 100644
index 000000000000..b88da5c7e40a
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/simple/StringNode.java
@@ -0,0 +1,269 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.simple;
+
+import java.util.HashSet;
+import java.util.Map;
+import java.util.Set;
+import java.util.TreeSet;
+import java.util.regex.Pattern;
+import java.util.regex.PatternSyntaxException;
+
+import org.apache.openoffice.ooxml.schema.misc.Log;
+import org.apache.openoffice.ooxml.schema.model.simple.BuiltInType;
+import org.apache.openoffice.ooxml.schema.model.simple.Restriction;
+
+public class StringNode
+ implements ISimpleTypeNode
+{
+ public StringNode (
+ final BuiltInType eType)
+ {
+ meType = eType;
+ mbIsList = false;
+ }
+
+
+
+
+ @Override
+ public void ApplyRestriction (
+ final Restriction aRestriction,
+ final Map<String,Integer> aValueToIdMap)
+ {
+ assert( ! aRestriction.HasFeature(
+ Restriction.MinExclusiveBit
+ | Restriction.MinInclusiveBit
+ | Restriction.MaxExclusiveBit
+ | Restriction.MaxInclusiveBit));
+
+ if (aRestriction.HasFeature(Restriction.EnumerationBit))
+ {
+ if (aRestriction.HasFeature(Restriction.LengthBit|Restriction.MinLengthBit|Restriction.MaxLengthBit))
+ for (final String sValue : aRestriction.GetEnumeration())
+ assert(CheckLengthRestriction(sValue, aRestriction));
+ maEnumerationValues = new TreeSet<>();
+ maEnumerationValueIds = new HashSet<>();
+ for (final String sValue : aRestriction.GetEnumeration())
+ {
+ if ( ! aValueToIdMap.containsKey(sValue))
+ aValueToIdMap.put(sValue, aValueToIdMap.size());
+ maEnumerationValues.add(sValue);
+ maEnumerationValueIds.add(aValueToIdMap.get(sValue));
+ }
+ }
+ else if (aRestriction.HasFeature(Restriction.PatternBit))
+ {
+ msPattern = aRestriction.GetPattern();
+ // Make the regular expression understandable by Java (by replacing
+ // character class names like IsBasicLatin to InBasicLatin).
+ try
+ {
+ maPattern = Pattern.compile(msPattern.replace("\\p{Is", "\\p{In"), Pattern.UNICODE_CHARACTER_CLASS);
+ }
+ catch (PatternSyntaxException aException)
+ {
+ aException.printStackTrace();
+ }
+ }
+ else if (aRestriction.HasFeature(Restriction.LengthBit|Restriction.MinLengthBit|Restriction.MaxLengthBit))
+ {
+ if (aRestriction.HasFeature(Restriction.LengthBit))
+ mnMinimumLength = mnMaximumLength = aRestriction.GetLength();
+ if (aRestriction.HasFeature(Restriction.MinLengthBit))
+ mnMinimumLength = aRestriction.GetMinimumLength();
+ if (aRestriction.HasFeature(Restriction.MaxLengthBit))
+ mnMaximumLength = aRestriction.GetMaximumLength();
+ }
+ else
+ {
+ // no restriction.
+ assert(aRestriction.GetFeatureBits() == 0);
+ }
+ }
+
+
+
+
+ @Override
+ public void Print (final Log aLog)
+ {
+ aLog.println(toString());
+ }
+
+
+
+
+ @Override
+ public String toString ()
+ {
+ final StringBuffer aBuffer = new StringBuffer();
+ aBuffer.append(String.format("string (%s)", meType));
+ if (maEnumerationValueIds != null)
+ {
+ aBuffer.append(" [");
+ boolean bIsFirst = true;
+ for (final String sValue : maEnumerationValues)
+ {
+ if (bIsFirst)
+ bIsFirst = false;
+ else
+ aBuffer.append(", ");
+ aBuffer.append(sValue);
+ }
+ aBuffer.append("]");
+ }
+ else if (maPattern != null)
+ {
+ aBuffer.append("pattern=\"");
+ aBuffer.append(maPattern);
+ aBuffer.append("\"");
+ }
+ return aBuffer.toString();
+ }
+
+
+
+
+ @Override
+ public boolean IsList ()
+ {
+ return mbIsList;
+ }
+
+
+
+
+ @Override
+ public void SetIsList ()
+ {
+ mbIsList = true;
+ }
+
+
+
+
+ /** Try to join the called and the given string types.
+ * If that is possible then return the resulting type.
+ * Otherwise return null.
+ */
+ public ISimpleTypeNode Join (final StringNode aType)
+ {
+ if (maEnumerationValues!=null && aType.maEnumerationValues!=null)
+ {
+ // Join the enumeration values.
+ maEnumerationValues.addAll(aType.maEnumerationValues);
+ maEnumerationValueIds.addAll(aType.maEnumerationValueIds);
+ return this;
+ }
+ else
+ return null;
+ }
+
+
+ public enum RestrictionType
+ {
+ Pattern,
+ Enumeration,
+ Length,
+ None
+ }
+ public RestrictionType GetRestrictionType ()
+ {
+ if (maEnumerationValueIds != null)
+ return RestrictionType.Enumeration;
+ else if (maPattern != null)
+ return RestrictionType.Pattern;
+ else if (mnMinimumLength != null)
+ return RestrictionType.Length;
+ else
+ return RestrictionType.None;
+ }
+
+
+
+
+ public Set<Integer> GetEnumerationRestriction ()
+ {
+ final Set<Integer> aSortedIds = new TreeSet<>();
+ aSortedIds.addAll(maEnumerationValueIds);
+ return aSortedIds;
+ }
+
+
+
+
+ public String GetPatternRestriction ()
+ {
+ return msPattern;
+ }
+
+
+
+
+ public int[] GetLengthRestriction ()
+ {
+ return new int[]{mnMinimumLength, mnMaximumLength};
+ }
+
+
+
+
+ private boolean CheckLengthRestriction (
+ final String sValue,
+ final Restriction aRestriction)
+ {
+ final int nValueLength = sValue.length();
+ if (aRestriction.HasFeature(Restriction.LengthBit))
+ return nValueLength == aRestriction.GetLength();
+ else if (aRestriction.HasFeature(Restriction.MinLengthBit | Restriction.MaxLengthBit))
+ return nValueLength>=aRestriction.GetMinimumLength()
+ && nValueLength<=aRestriction.GetMaximumLength();
+ else if (aRestriction.HasFeature(Restriction.MinLengthBit))
+ return nValueLength>=aRestriction.GetMinimumLength();
+ else if (aRestriction.HasFeature(Restriction.MaxLengthBit))
+ return nValueLength<=aRestriction.GetMaximumLength();
+ else
+ throw new RuntimeException();
+ }
+
+
+
+
+ @Override
+ public void AcceptVisitor (final ISimpleTypeNodeVisitor aVisitor)
+ {
+ aVisitor.Visit(this);
+ }
+
+
+
+
+ private final BuiltInType meType;
+ private Set<String> maEnumerationValues;
+ private Set<Integer> maEnumerationValueIds;
+ private Pattern maPattern;
+ private String msPattern;
+ private Integer mnMinimumLength;
+ private Integer mnMaximumLength;
+ private boolean mbIsList;
+}
diff --git a/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/simple/UnionNode.java b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/simple/UnionNode.java
new file mode 100644
index 000000000000..94d428ae333a
--- /dev/null
+++ b/ooxml/source/framework/SchemaParser/src/org/apache/openoffice/ooxml/schema/simple/UnionNode.java
@@ -0,0 +1,151 @@
+/**************************************************************
+*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*
+*************************************************************/
+
+package org.apache.openoffice.ooxml.schema.simple;
+
+import java.util.Map;
+import java.util.Vector;
+
+import org.apache.openoffice.ooxml.schema.misc.Log;
+import org.apache.openoffice.ooxml.schema.model.simple.Restriction;
+
+public class UnionNode
+ implements ISimpleTypeNode
+{
+ UnionNode ()
+ {
+ maTypes = new Vector<>();
+ mbIsList = false;
+ }
+
+
+
+
+ @Override
+ public void ApplyRestriction (
+ final Restriction aNode,
+ final Map<String,Integer> aValueToIdMap)
+ {
+ throw new RuntimeException("can not handle restriction on union");
+ }
+
+
+
+
+
+ public void AddNode (final ISimpleTypeNode aType)
+ {
+ if (aType instanceof UnionNode)
+ {
+ // Integrate union of child into this union.
+ final UnionNode aChildUnion = (UnionNode)aType;
+ for (final ISimpleTypeNode aChildChild : aChildUnion.maTypes)
+ maTypes.add(aChildChild);
+ }
+ else if (aType instanceof StringNode)
+ {
+ // Is there already a string child?
+ for (int nIndex=0; nIndex<maTypes.size(); ++nIndex)
+ {
+ final ISimpleTypeNode aChild = maTypes.get(nIndex);
+
+ if (aChild instanceof StringNode)
+ {
+ // Yes. Can it be joined with the new child?
+ final ISimpleTypeNode aNewChild = ((StringNode)aChild).Join((StringNode)aType);
+ if (aNewChild != null)
+ {
+ // Yes. Replace the child with the joined child.
+ maTypes.set(nIndex, aNewChild);
+ return;
+ }
+ }
+ }
+ // When we reach this point then there was no join possible.
+ // Just add the new type.
+ maTypes.add(aType);
+
+ }
+ else
+ maTypes.add(aType);
+ }
+
+
+
+
+ @Override
+ public void Print (final Log aLog)
+ {
+ aLog.printf("union of %d sub types\n", maTypes.size());
+ aLog.StartBlock();
+ for (final ISimpleTypeNode aType : maTypes)
+ aType.Print(aLog);
+ aLog.EndBlock();
+ }
+
+
+
+
+ @Override
+ public boolean IsList ()
+ {
+ return mbIsList;
+ }
+
+
+
+
+ @Override
+ public void SetIsList ()
+ {
+ mbIsList = true;
+ }
+
+
+
+
+ @Override
+ public String toString ()
+ {
+ return "union";
+ }
+
+
+ ISimpleTypeNode[] GetChildren ()
+ {
+ return maTypes.toArray(new ISimpleTypeNode[maTypes.size()]);
+ }
+
+
+
+
+ @Override
+ public void AcceptVisitor (final ISimpleTypeNodeVisitor aVisitor)
+ {
+ aVisitor.Visit(this);
+ }
+
+
+
+
+ private final Vector<ISimpleTypeNode> maTypes;
+ private boolean mbIsList;
+}
diff --git a/package/qa/ofopxmlstorages/Test01.java b/package/qa/ofopxmlstorages/Test01.java
index 7f66075e23a4..4e7dc690f30a 100644
--- a/package/qa/ofopxmlstorages/Test01.java
+++ b/package/qa/ofopxmlstorages/Test01.java
@@ -146,7 +146,7 @@ public class Test01 implements StorageTest {
}
// copy xTempStorage to xTempFileStorage
- // xTempFileStorage will be automatically commited
+ // xTempFileStorage will be automatically committed
if ( !m_aTestHelper.copyStorage( xTempStorage, xTempFileStorage ) )
return false;
diff --git a/package/qa/ofopxmlstorages/Test04.java b/package/qa/ofopxmlstorages/Test04.java
index b36843863dac..baafbf134c54 100644
--- a/package/qa/ofopxmlstorages/Test04.java
+++ b/package/qa/ofopxmlstorages/Test04.java
@@ -170,7 +170,7 @@ public class Test04 implements StorageTest {
if ( !m_aTestHelper.copyElementTo( xTempStorage, "SubStorage1", xTempFileStorage ) )
return false;
- // if storage is not commited before disposing all the changes will be lost
+ // if storage is not committed before disposing all the changes will be lost
if ( !m_aTestHelper.commitStorage( xTempSubStorage2 ) )
return false;
diff --git a/package/qa/ofopxmlstorages/Test07.java b/package/qa/ofopxmlstorages/Test07.java
index 7a98cf6667c2..a80faa6337dc 100644
--- a/package/qa/ofopxmlstorages/Test07.java
+++ b/package/qa/ofopxmlstorages/Test07.java
@@ -134,7 +134,7 @@ public class Test07 implements StorageTest {
// check cloning at current state
// ==============================
- // the new storage still was not commited so the clone must be empty
+ // the new storage still was not committed so the clone must be empty
XStorage xClonedSubStorage = m_aTestHelper.cloneSubStorage( m_xMSF, m_xStorageFactory, xTempStorage, "SubStorage1" );
if ( xClonedSubStorage == null )
@@ -158,7 +158,7 @@ public class Test07 implements StorageTest {
if ( xClonedNameAccess.hasElements() )
{
- m_aTestHelper.Error( "The new substorage still was not commited so it must be empty!" );
+ m_aTestHelper.Error( "The new substorage still was not committed so it must be empty!" );
return false;
}
@@ -224,7 +224,7 @@ public class Test07 implements StorageTest {
if ( xCloneOfRootNA.hasElements() )
{
- m_aTestHelper.Error( "The root storage still was not commited so it's clone must be empty!" );
+ m_aTestHelper.Error( "The root storage still was not committed so it's clone must be empty!" );
return false;
}
diff --git a/package/qa/ofopxmlstorages/TestHelper.java b/package/qa/ofopxmlstorages/TestHelper.java
index a62f4d5a7697..2d7c2c1dfcd0 100644
--- a/package/qa/ofopxmlstorages/TestHelper.java
+++ b/package/qa/ofopxmlstorages/TestHelper.java
@@ -1041,7 +1041,7 @@ public class TestHelper {
public XStorage cloneStorage( XMultiServiceFactory xMSF, XSingleServiceFactory xFactory, XStorage xStorage )
{
- // create a copy of a last commited version of specified storage
+ // create a copy of a last committed version of specified storage
XStorage xResult = null;
try
{
@@ -1060,7 +1060,7 @@ public class TestHelper {
public XStorage cloneSubStorage( XMultiServiceFactory xMSF, XSingleServiceFactory xFactory, XStorage xStorage, String sName )
{
- // create a copy of a last commited version of specified substorage
+ // create a copy of a last committed version of specified substorage
XStorage xResult = null;
try
{
diff --git a/package/qa/storages/RegressionTest_i29169.java b/package/qa/storages/RegressionTest_i29169.java
index ad33d46ecce8..2a2564927e01 100644
--- a/package/qa/storages/RegressionTest_i29169.java
+++ b/package/qa/storages/RegressionTest_i29169.java
@@ -127,7 +127,7 @@ public class RegressionTest_i29169 implements StorageTest {
// commit the storages, and check the renaming in all stages
// ================================================
- // rename the storage before it is commited
+ // rename the storage before it is committed
if ( !m_aTestHelper.renameElement( xTempSubStorage, "SubSubStorage1", "SubSubStorage2" ) )
return false;
@@ -139,7 +139,7 @@ public class RegressionTest_i29169 implements StorageTest {
if ( !m_aTestHelper.commitStorage( xTempSubSubStorage ) )
return false;
- // rename the storage after it is commited
+ // rename the storage after it is committed
if ( !m_aTestHelper.renameElement( xTempSubStorage, "SubSubStorage2", "SubSubStorage3" ) )
return false;
@@ -151,11 +151,11 @@ public class RegressionTest_i29169 implements StorageTest {
if ( !m_aTestHelper.commitStorage( xTempSubStorage ) )
return false;
- // rename the storage after it`s parent is commited
+ // rename the storage after it's parent is committed
if ( !m_aTestHelper.renameElement( xTempSubStorage, "SubSubStorage3", "SubSubStorage4" ) )
return false;
- // rename the stream after it`s parent is commited
+ // rename the stream after it's parent is committed
if ( !m_aTestHelper.renameElement( xTempSubStorage, "SubStream3", "SubStream4" ) )
return false;
@@ -167,11 +167,11 @@ public class RegressionTest_i29169 implements StorageTest {
if ( !m_aTestHelper.commitStorage( xTempStorage ) )
return false;
- // rename the storage after the package is commited
+ // rename the storage after the package is committed
if ( !m_aTestHelper.renameElement( xTempSubStorage, "SubSubStorage4", "SubSubStorage5" ) )
return false;
- // rename the stream after it`s parent is commited
+ // rename the stream after it's parent is committed
if ( !m_aTestHelper.renameElement( xTempSubStorage, "SubStream4", "SubStream5" ) )
return false;
@@ -252,7 +252,7 @@ public class RegressionTest_i29169 implements StorageTest {
// rename the reopened storages and streams
// ================================================
- // rename the storage before it is commited
+ // rename the storage before it is committed
if ( !m_aTestHelper.renameElement( xTempSubStorage, "SubSubStorage5", "SubSubStorage6" ) )
return false;
@@ -264,7 +264,7 @@ public class RegressionTest_i29169 implements StorageTest {
if ( !m_aTestHelper.commitStorage( xTempSubSubStorage ) )
return false;
- // rename the storage after it is commited
+ // rename the storage after it is committed
if ( !m_aTestHelper.renameElement( xTempSubStorage, "SubSubStorage6", "SubSubStorage7" ) )
return false;
@@ -276,11 +276,11 @@ public class RegressionTest_i29169 implements StorageTest {
if ( !m_aTestHelper.commitStorage( xTempSubStorage ) )
return false;
- // rename the storage after it`s parent is commited
+ // rename the storage after it's parent is committed
if ( !m_aTestHelper.renameElement( xTempSubStorage, "SubSubStorage7", "SubSubStorage8" ) )
return false;
- // rename the stream after it`s parent is commited
+ // rename the stream after it's parent is committed
if ( !m_aTestHelper.renameElement( xTempSubStorage, "SubStream7", "SubStream8" ) )
return false;
@@ -292,11 +292,11 @@ public class RegressionTest_i29169 implements StorageTest {
if ( !m_aTestHelper.commitStorage( xTempStorage ) )
return false;
- // rename the storage after the package is commited
+ // rename the storage after the package is committed
if ( !m_aTestHelper.renameElement( xTempSubStorage, "SubSubStorage8", "SubSubStorage9" ) )
return false;
- // rename the stream after it`s parent is commited
+ // rename the stream after it`s parent is committed
if ( !m_aTestHelper.renameElement( xTempSubStorage, "SubStream8", "SubStream9" ) )
return false;
diff --git a/package/qa/storages/Test01.java b/package/qa/storages/Test01.java
index f231dafe2ff7..6ec994d90d22 100644
--- a/package/qa/storages/Test01.java
+++ b/package/qa/storages/Test01.java
@@ -131,7 +131,7 @@ public class Test01 implements StorageTest {
}
// copy xTempStorage to xTempFileStorage
- // xTempFileStorage will be automatically commited
+ // xTempFileStorage will be automatically committed
if ( !m_aTestHelper.copyStorage( xTempStorage, xTempFileStorage ) )
return false;
diff --git a/package/qa/storages/Test04.java b/package/qa/storages/Test04.java
index 1ed1efd16c44..06ca476d1316 100644
--- a/package/qa/storages/Test04.java
+++ b/package/qa/storages/Test04.java
@@ -155,7 +155,7 @@ public class Test04 implements StorageTest {
if ( !m_aTestHelper.copyElementTo( xTempStorage, "SubStorage1", xTempFileStorage ) )
return false;
- // if storage is not commited before disposing all the changes will be lost
+ // if storage is not committed before disposing all the changes will be lost
if ( !m_aTestHelper.commitStorage( xTempSubStorage2 ) )
return false;
diff --git a/package/qa/storages/Test07.java b/package/qa/storages/Test07.java
index 5076fcf56b0c..6a5796b40cfd 100644
--- a/package/qa/storages/Test07.java
+++ b/package/qa/storages/Test07.java
@@ -109,7 +109,7 @@ public class Test07 implements StorageTest {
}
// copy xTempStorage to xTempFileStorage
- // xTempFileStorage will be automatically commited
+ // xTempFileStorage will be automatically committed
if ( !m_aTestHelper.copyStorage( xTempStorage, xTempFileStorage ) )
return false;
diff --git a/package/qa/storages/Test08.java b/package/qa/storages/Test08.java
index 7d8f5bcc4968..857c75fa1a9d 100644
--- a/package/qa/storages/Test08.java
+++ b/package/qa/storages/Test08.java
@@ -162,7 +162,7 @@ public class Test08 implements StorageTest {
}
// copy xTempStorage to xTempFileStorage
- // xTempFileStorage will be automatically commited
+ // xTempFileStorage will be automatically committed
if ( !m_aTestHelper.copyStorage( xTempStorage, xTempFileStorage ) )
return false;
diff --git a/package/qa/storages/Test09.java b/package/qa/storages/Test09.java
index 45f8a7d9aca2..03e62400bf40 100644
--- a/package/qa/storages/Test09.java
+++ b/package/qa/storages/Test09.java
@@ -99,7 +99,7 @@ public class Test09 implements StorageTest {
}
// copy xTempStorage to xTempFileStorage
- // xTempFileStorage will be automatically commited
+ // xTempFileStorage will be automatically committed
if ( !m_aTestHelper.copyStorage( xTempStorage, xTempFileStorage ) )
return false;
diff --git a/package/qa/storages/Test10.java b/package/qa/storages/Test10.java
index 827ef428b8e3..c459c143714a 100644
--- a/package/qa/storages/Test10.java
+++ b/package/qa/storages/Test10.java
@@ -116,7 +116,7 @@ public class Test10 implements StorageTest {
// check cloning at current state
// ==============================
- // the new storage still was not commited so the clone must be empty
+ // the new storage still was not committed so the clone must be empty
XStorage xClonedSubStorage = m_aTestHelper.cloneSubStorage( m_xStorageFactory, xTempStorage, "SubStorage1" );
if ( xClonedSubStorage == null )
@@ -137,7 +137,7 @@ public class Test10 implements StorageTest {
if ( xClonedNameAccess.hasElements() )
{
- m_aTestHelper.Error( "The new substorage still was not commited so it must be empty!" );
+ m_aTestHelper.Error( "The new substorage still was not committed so it must be empty!" );
return false;
}
@@ -202,7 +202,7 @@ public class Test10 implements StorageTest {
if ( xCloneOfRootNA.hasElements() )
{
- m_aTestHelper.Error( "The root storage still was not commited so it's clone must be empty!" );
+ m_aTestHelper.Error( "The root storage still was not committed so it's clone must be empty!" );
return false;
}
diff --git a/package/qa/storages/Test11.java b/package/qa/storages/Test11.java
index 0780770f0fb9..2a09845d36c6 100644
--- a/package/qa/storages/Test11.java
+++ b/package/qa/storages/Test11.java
@@ -118,7 +118,7 @@ public class Test11 implements StorageTest {
// check cloning at current state
// ==============================
- // the new storage still was not commited so the clone must be empty
+ // the new storage still was not committed so the clone must be empty
XStorage xClonedSubStorage = m_aTestHelper.cloneSubStorage( m_xStorageFactory, xTempStorage, "SubStorage1" );
if ( xClonedSubStorage == null )
@@ -139,7 +139,7 @@ public class Test11 implements StorageTest {
if ( xClonedNameAccess.hasElements() )
{
- m_aTestHelper.Error( "The new substorage still was not commited so it must be empty!" );
+ m_aTestHelper.Error( "The new substorage still was not committed so it must be empty!" );
return false;
}
diff --git a/package/qa/storages/Test13.java b/package/qa/storages/Test13.java
index 218a25ecac63..07ecb5e7b5f3 100644
--- a/package/qa/storages/Test13.java
+++ b/package/qa/storages/Test13.java
@@ -215,7 +215,7 @@ public class Test13 implements StorageTest {
if ( !m_aTestHelper.checkStreamH( xResultStorage, aBigSubStream1Path, "MediaType3", true, pBigBytes ) )
return false;
- // the following stream was not commited last time, so the last change must be lost
+ // the following stream was not committed last time, so the last change must be lost
if ( !m_aTestHelper.checkStreamH( xResultStorage, aBigSubStream2Path, "MediaType2", false, pBigBytes ) )
return false;
diff --git a/package/qa/storages/Test14.java b/package/qa/storages/Test14.java
index a2f727db6a8b..4d0d45917850 100644
--- a/package/qa/storages/Test14.java
+++ b/package/qa/storages/Test14.java
@@ -188,7 +188,7 @@ public class Test14 implements StorageTest {
if ( !m_aTestHelper.checkEncrStreamH( xResultStorage, aSubStream1Path, "MediaType3", pBytes2, sPass1 ) )
return false;
- // the following stream was not commited last time, so the last change must be lost
+ // the following stream was not committed last time, so the last change must be lost
if ( !m_aTestHelper.checkEncrStreamH( xResultStorage, aSubStream2Path, "MediaType2", pBytes2, sPass2 ) )
return false;
diff --git a/package/qa/storages/Test16.java b/package/qa/storages/Test16.java
index ee5b560b2bbc..fcdff3935245 100644
--- a/package/qa/storages/Test16.java
+++ b/package/qa/storages/Test16.java
@@ -119,7 +119,7 @@ public class Test16 implements StorageTest {
}
// copy xTempStorage to xTempFileStorage
- // xTempFileStorage will be automatically commited
+ // xTempFileStorage will be automatically committed
if ( !m_aTestHelper.copyStorage( xTempStorage, xTempFileStorage ) )
return false;
diff --git a/package/qa/storages/Test18.java b/package/qa/storages/Test18.java
index 3ee766b4488e..1a9a067801b9 100644
--- a/package/qa/storages/Test18.java
+++ b/package/qa/storages/Test18.java
@@ -126,7 +126,7 @@ public class Test18 implements StorageTest {
}
// copy xTempStorage to xTempFileStorage
- // xTempFileStorage will be automatically commited
+ // xTempFileStorage will be automatically committed
if ( !m_aTestHelper.copyStorage( xTempStorage, xTempFileStorage ) )
return false;
diff --git a/package/qa/storages/TestHelper.java b/package/qa/storages/TestHelper.java
index b53522bc904a..c3cd5648fa93 100644
--- a/package/qa/storages/TestHelper.java
+++ b/package/qa/storages/TestHelper.java
@@ -1599,7 +1599,7 @@ public class TestHelper {
public XStorage cloneStorage( XSingleServiceFactory xFactory, XStorage xStorage )
{
- // create a copy of a last commited version of specified storage
+ // create a copy of a last committed version of specified storage
XStorage xResult = null;
try
{
@@ -1619,7 +1619,7 @@ public class TestHelper {
public XStorage cloneSubStorage( XSingleServiceFactory xFactory, XStorage xStorage, String sName )
{
- // create a copy of a last commited version of specified substorage
+ // create a copy of a last committed version of specified substorage
XStorage xResult = null;
try
{
diff --git a/package/source/xstor/ohierarchyholder.cxx b/package/source/xstor/ohierarchyholder.cxx
index 70163505865a..5a0e1306bc3f 100644
--- a/package/source/xstor/ohierarchyholder.cxx
+++ b/package/source/xstor/ohierarchyholder.cxx
@@ -120,8 +120,8 @@ uno::Reference< embed::XExtendedStorageStream > OHierarchyElement_Impl::GetStrea
uno::Reference< embed::XTransactedObject > xTransact( xResult, uno::UNO_QUERY );
if ( xTransact.is() )
{
- // the existance of the transacted object means that the stream is opened for writing also
- // so the whole chain must be commited
+ // the existence of the transacted object means that the stream is opened for writing also
+ // so the whole chain must be committed
uno::Reference< embed::XTransactionBroadcaster > xTrBroadcast( xTransact, uno::UNO_QUERY_THROW );
xTrBroadcast->addTransactionListener( static_cast< embed::XTransactionListener* >( this ) );
}
diff --git a/package/source/xstor/owriteablestream.cxx b/package/source/xstor/owriteablestream.cxx
index 0787d9c9e5bd..e968def72ff1 100644
--- a/package/source/xstor/owriteablestream.cxx
+++ b/package/source/xstor/owriteablestream.cxx
@@ -1031,7 +1031,7 @@ void OWriteStream_Impl::Revert()
}
else
{
- // the original stream was aready parsed
+ // the original stream was already parsed
if ( !m_bOrigRelInfoBroken )
m_nRelInfoStatus = RELINFO_READ;
else
diff --git a/package/source/xstor/xstorage.cxx b/package/source/xstor/xstorage.cxx
index 93ceab27db8e..6fd43fbc70a4 100644
--- a/package/source/xstor/xstorage.cxx
+++ b/package/source/xstor/xstorage.cxx
@@ -71,7 +71,7 @@ struct StorInternalData_Impl
::cppu::OMultiTypeInterfaceContainerHelper m_aListenersContainer; // list of listeners
::cppu::OTypeCollection* m_pTypeCollection;
sal_Bool m_bIsRoot;
- sal_Int32 m_nStorageType; // the mode in wich the storage is used
+ sal_Int32 m_nStorageType; // the mode in which the storage is used
sal_Bool m_bReadOnlyWrap;
OChildDispListener_Impl* m_pSubElDispListener;
@@ -1062,7 +1062,7 @@ void OStorage_Impl::Commit()
// in case of a new empty storage it is possible that the contents are still not read
// ( the storage of course has no contents, but the initialization is postponed till the first use,
- // thus if a new storage was created and commited immediatelly it must be initialized here )
+ // thus if a new storage was created and commited immediately it must be initialized here )
ReadContents();
// if storage is commited it should have a valid Package representation
@@ -1180,7 +1180,7 @@ void OStorage_Impl::Commit()
{
// the element must be just copied to the new temporary package folder
// the connection with the original package should not be lost just because
- // the element is still refered by the folder in the original hierarchy
+ // the element is still referred by the folder in the original hierarchy
uno::Any aPackageElement = m_xPackageFolder->getByName( (*pElementIter)->m_aOriginalName );
xNewPackageFolder->insertByName( (*pElementIter)->m_aName, aPackageElement );
}
@@ -1545,7 +1545,7 @@ SotElement_Impl* OStorage_Impl::InsertElement( ::rtl::OUString aName, sal_Bool b
OSL_ENSURE( (*pElementIter)->m_bIsRemoved, "Try to insert an element instead of existing one!\n" );
if ( (*pElementIter)->m_bIsRemoved )
{
- OSL_ENSURE( !(*pElementIter)->m_bIsInserted, "Inserted elements must be deleted immediatelly!\n" );
+ OSL_ENSURE( !(*pElementIter)->m_bIsInserted, "Inserted elements must be deleted immediately!\n" );
pDeletedElm = *pElementIter;
break;
}
diff --git a/package/source/xstor/xstorage.hxx b/package/source/xstor/xstorage.hxx
index a2a06172d27a..8f039e6fedb0 100644
--- a/package/source/xstor/xstorage.hxx
+++ b/package/source/xstor/xstorage.hxx
@@ -170,7 +170,7 @@ struct OStorage_Impl
SwitchablePersistenceStream* m_pSwitchStream;
- sal_Int32 m_nStorageType; // the mode in wich the storage is used
+ sal_Int32 m_nStorageType; // the mode in which the storage is used
// the _rels substorage that is handled in a special way in embed::StorageFormats::OFOPXML
SotElement_Impl* m_pRelStorElement;
diff --git a/package/source/zippackage/ZipPackage.cxx b/package/source/zippackage/ZipPackage.cxx
index e43475c9abd7..b945d54dd3b1 100644
--- a/package/source/zippackage/ZipPackage.cxx
+++ b/package/source/zippackage/ZipPackage.cxx
@@ -1390,7 +1390,7 @@ uno::Reference< XActiveDataStreamer > ZipPackage::openOriginalForOutput()
void SAL_CALL ZipPackage::commitChanges()
throw( WrappedTargetException, RuntimeException )
{
- // lock the component for the time of commiting
+ // lock the component for the time of committing
::osl::MutexGuard aGuard( m_aMutexHolder->GetMutex() );
if ( m_eMode == e_IMode_XInputStream )
diff --git a/package/source/zippackage/zipfileaccess.cxx b/package/source/zippackage/zipfileaccess.cxx
index 4b2fa0157937..6df00f182bc4 100644
--- a/package/source/zippackage/zipfileaccess.cxx
+++ b/package/source/zippackage/zipfileaccess.cxx
@@ -65,7 +65,7 @@ OZipFileAccess::~OZipFileAccess()
if ( !m_bDisposed )
{
try {
- m_refCount++; // dispose will use refcounting so the further distruction must be avoided
+ m_refCount++; // dispose will use refcounting so the further destruction must be avoided
dispose();
} catch( uno::Exception& )
{}
diff --git a/padmin/source/padialog.src b/padmin/source/padialog.src
index 327853646543..a4d564aec1df 100644
--- a/padmin/source/padialog.src
+++ b/padmin/source/padialog.src
@@ -353,7 +353,7 @@ String RID_ERR_NOPRINTER
String RID_PA_TXT_TESTPAGE_PRINTED
{
- Text [ en-US ] = "The test page was printed succesfully. Please check the result.";
+ Text [ en-US ] = "The test page was printed successfully. Please check the result.";
};
String RID_ERR_NOWRITE
diff --git a/padmin/source/pamain.cxx b/padmin/source/pamain.cxx
index a9070c294e64..ca40ea5e7f5d 100644
--- a/padmin/source/pamain.cxx
+++ b/padmin/source/pamain.cxx
@@ -145,7 +145,7 @@ void MyApp::Main()
if( Application::GetSettings().GetMiscSettings().GetEnableATToolSupport() )
{
- sal_Bool bQuitApp;
+ sal_Bool bQuitApp (sal_False);
if( !InitAccessBridge( true, bQuitApp ) )
if( bQuitApp )
return;
diff --git a/postprocess/packcomponents/makefile.mk b/postprocess/packcomponents/makefile.mk
index 99661f2e3ee1..4ef5f140728b 100644
--- a/postprocess/packcomponents/makefile.mk
+++ b/postprocess/packcomponents/makefile.mk
@@ -211,6 +211,10 @@ my_components += component/vcl/vcl.unx
my_components += updchk.uno
.END
+.IF "$(OS)" != "WNT" && "$(OS)" != "OS2"
+my_components += mozbootstrap
+.END
+
.IF "$(ENABLE_OOOIMPROVEMENT)" != ""
my_components += oooimprovement
.END
@@ -310,13 +314,12 @@ my_components += \
.IF "$(OS)" == "MACOSX"
my_components += \
+ avmediaQuickTime \
+ avmediaMacAVF \
fps_aqua \
macab1 \
macbe1 \
MacOSXSpell
-.IF "${MACOSX_DEPLOYMENT_TARGET}" == ""
- my_components += avmediaQuickTime
-.END
.END
.IF "$(OS)" == "WNT"
diff --git a/postprocess/signing/signing.pl b/postprocess/signing/signing.pl
index 4b289bc5a0e4..070f21dab5b4 100644
--- a/postprocess/signing/signing.pl
+++ b/postprocess/signing/signing.pl
@@ -236,7 +236,7 @@ sub execute #11.07.2007 10:02
my $result = "";
print "$commandline\n" if ($debug);
- open(PIPE, "$commandline 2>&1 |") || die "Error: Cant open pipe!\n";
+ open(PIPE, "$commandline 2>&1 |") || die "Error: Can't open pipe!\n";
while ( $result = <PIPE> ) {
print LOG "$result" if ($opt_log); # logging
if ( $result =~ /SignTool Error\:/ ) {
diff --git a/python/makefile.mk b/python/makefile.mk
index f9b0051a73c1..7949af94a851 100644
--- a/python/makefile.mk
+++ b/python/makefile.mk
@@ -42,7 +42,7 @@ all:
TARFILE_NAME=Python-$(PYVERSION)
-TARFILE_MD5=6334b666b7ff2038c761d7b27ba699c1
+TARFILE_MD5=1d8728eb0dfcac72a0fd99c17ec7f386
PATCH_FILES=\
python-solaris.patch \
python-freebsd.patch \
diff --git a/python/prj/d.lst b/python/prj/d.lst
index 1748f37543d0..fd8d0a2395a1 100644
--- a/python/prj/d.lst
+++ b/python/prj/d.lst
@@ -36,51 +36,51 @@ mkdir: %_DEST%\lib%_EXT%\python\multiprocessing\dummy
mkdir: %_DEST%\lib%_EXT%\python\unittest
mkdir: %_DEST%\lib%_EXT%\python\python2.7\config
-..\%__SRC%\misc\build\Python-2.7.5\Lib\* %_DEST%\lib%_EXT%\python\*
-..\%__SRC%\misc\build\Python-2.7.5\Lib\lib-old\* %_DEST%\lib%_EXT%\python\lib-old\*
-..\%__SRC%\misc\build\Python-2.7.5\Lib\lib-tk\* %_DEST%\lib%_EXT%\python\lib-tk\*
-..\%__SRC%\misc\build\Python-2.7.5\Lib\site-packages\* %_DEST%\lib%_EXT%\python\site-packages\*
-..\%__SRC%\misc\build\Python-2.7.5\Lib\encodings\* %_DEST%\lib%_EXT%\python\encodings\*
-..\%__SRC%\misc\build\Python-2.7.5\Lib\email\* %_DEST%\lib%_EXT%\python\email\*
-..\%__SRC%\misc\build\Python-2.7.5\Lib\email\mime\* %_DEST%\lib%_EXT%\python\email\mime\*
-..\%__SRC%\misc\build\Python-2.7.5\Lib\compiler\* %_DEST%\lib%_EXT%\python\compiler\*
-..\%__SRC%\misc\build\Python-2.7.5\Lib\hotshot\* %_DEST%\lib%_EXT%\python\hotshot\*
-..\%__SRC%\misc\build\Python-2.7.5\Lib\distutils\* %_DEST%\lib%_EXT%\python\distutils\*
-..\%__SRC%\misc\build\Python-2.7.5\Lib\distutils\command\* %_DEST%\lib%_EXT%\python\distutils\command\*
-..\%__SRC%\misc\build\Python-2.7.5\Lib\xml\* %_DEST%\lib%_EXT%\python\xml\*
-..\%__SRC%\misc\build\Python-2.7.5\Lib\xml\dom\* %_DEST%\lib%_EXT%\python\xml\dom\*
-..\%__SRC%\misc\build\Python-2.7.5\Lib\xml\parsers\* %_DEST%\lib%_EXT%\python\xml\parsers\*
-..\%__SRC%\misc\build\Python-2.7.5\Lib\xml\sax\* %_DEST%\lib%_EXT%\python\xml\sax\*
-..\%__SRC%\misc\build\Python-2.7.5\Lib\curses\* %_DEST%\lib%_EXT%\python\curses\*
-..\%__SRC%\misc\build\Python-2.7.5\Lib\plat-linux2\* %_DEST%\lib%_EXT%\python\plat-linux2\*
-..\%__SRC%\misc\build\Python-2.7.5\Lib\config\* %_DEST%\lib%_EXT%\python\config\*
-..\%__SRC%\misc\build\Python-2.7.5\Lib\bsddb\* %_DEST%\lib%_EXT%\python\bsddb\*
-..\%__SRC%\misc\build\Python-2.7.5\Lib\logging\* %_DEST%\lib%_EXT%\python\logging\*
-..\%__SRC%\misc\build\Python-2.7.5\Lib\idlelib\* %_DEST%\lib%_EXT%\python\idlelib\*
-..\%__SRC%\misc\build\Python-2.7.5\Lib\idlelib\Icons\* %_DEST%\lib%_EXT%\python\idlelib\Icons\*
-..\%__SRC%\misc\build\Python-2.7.5\Lib\wsgiref\* %_DEST%\lib%_EXT%\python\wsgiref\*
-..\%__SRC%\misc\build\Python-2.7.5\Lib\json\* %_DEST%\lib%_EXT%\python\json\*
-..\%__SRC%\misc\build\Python-2.7.5\Lib\lib2to3\* %_DEST%\lib%_EXT%\python\lib2to3\*
-..\%__SRC%\misc\build\Python-2.7.5\Lib\lib2to3\fixes\* %_DEST%\lib%_EXT%\python\lib2to3\fixes\*
-..\%__SRC%\misc\build\Python-2.7.5\Lib\lib2to3\pgen2\* %_DEST%\lib%_EXT%\python\lib2to3\pgen2\*
-..\%__SRC%\misc\build\Python-2.7.5\Lib\sqlite3\* %_DEST%\lib%_EXT%\python\sqlite3\*
-..\%__SRC%\misc\build\Python-2.7.5\Lib\ctypes\* %_DEST%\lib%_EXT%\python\ctypes\*
-..\%__SRC%\misc\build\Python-2.7.5\Lib\ctypes\macholib\* %_DEST%\lib%_EXT%\python\ctypes\macholib\*
-..\%__SRC%\misc\build\Python-2.7.5\Lib\xml\etree\* %_DEST%\lib%_EXT%\python\xml\etree
-..\%__SRC%\misc\build\Python-2.7.5\Lib\xml\etree\* %_DEST%\lib%_EXT%\python\xml\etree
-..\%__SRC%\misc\build\Python-2.7.5\Lib\importlib\* %_DEST%\lib%_EXT%\python\importlib\*
-..\%__SRC%\misc\build\Python-2.7.5\Lib\multiprocessing\* %_DEST%\lib%_EXT%\python\multiprocessing\*
-..\%__SRC%\misc\build\Python-2.7.5\Lib\multiprocessing\dummy\* %_DEST%\lib%_EXT%\python\multiprocessing\dummy\*
-..\%__SRC%\misc\build\Python-2.7.5\Lib\unittest\* %_DEST%\lib%_EXT%\python\unittest\*
-..\%__SRC%\misc\build\Python-2.7.5\Makefile %_DEST%\lib%_EXT%\python\python2.7\config\Makefile
+..\%__SRC%\misc\build\Python-2.7.6\Lib\* %_DEST%\lib%_EXT%\python\*
+..\%__SRC%\misc\build\Python-2.7.6\Lib\lib-old\* %_DEST%\lib%_EXT%\python\lib-old\*
+..\%__SRC%\misc\build\Python-2.7.6\Lib\lib-tk\* %_DEST%\lib%_EXT%\python\lib-tk\*
+..\%__SRC%\misc\build\Python-2.7.6\Lib\site-packages\* %_DEST%\lib%_EXT%\python\site-packages\*
+..\%__SRC%\misc\build\Python-2.7.6\Lib\encodings\* %_DEST%\lib%_EXT%\python\encodings\*
+..\%__SRC%\misc\build\Python-2.7.6\Lib\email\* %_DEST%\lib%_EXT%\python\email\*
+..\%__SRC%\misc\build\Python-2.7.6\Lib\email\mime\* %_DEST%\lib%_EXT%\python\email\mime\*
+..\%__SRC%\misc\build\Python-2.7.6\Lib\compiler\* %_DEST%\lib%_EXT%\python\compiler\*
+..\%__SRC%\misc\build\Python-2.7.6\Lib\hotshot\* %_DEST%\lib%_EXT%\python\hotshot\*
+..\%__SRC%\misc\build\Python-2.7.6\Lib\distutils\* %_DEST%\lib%_EXT%\python\distutils\*
+..\%__SRC%\misc\build\Python-2.7.6\Lib\distutils\command\* %_DEST%\lib%_EXT%\python\distutils\command\*
+..\%__SRC%\misc\build\Python-2.7.6\Lib\xml\* %_DEST%\lib%_EXT%\python\xml\*
+..\%__SRC%\misc\build\Python-2.7.6\Lib\xml\dom\* %_DEST%\lib%_EXT%\python\xml\dom\*
+..\%__SRC%\misc\build\Python-2.7.6\Lib\xml\parsers\* %_DEST%\lib%_EXT%\python\xml\parsers\*
+..\%__SRC%\misc\build\Python-2.7.6\Lib\xml\sax\* %_DEST%\lib%_EXT%\python\xml\sax\*
+..\%__SRC%\misc\build\Python-2.7.6\Lib\curses\* %_DEST%\lib%_EXT%\python\curses\*
+..\%__SRC%\misc\build\Python-2.7.6\Lib\plat-linux2\* %_DEST%\lib%_EXT%\python\plat-linux2\*
+..\%__SRC%\misc\build\Python-2.7.6\Lib\config\* %_DEST%\lib%_EXT%\python\config\*
+..\%__SRC%\misc\build\Python-2.7.6\Lib\bsddb\* %_DEST%\lib%_EXT%\python\bsddb\*
+..\%__SRC%\misc\build\Python-2.7.6\Lib\logging\* %_DEST%\lib%_EXT%\python\logging\*
+..\%__SRC%\misc\build\Python-2.7.6\Lib\idlelib\* %_DEST%\lib%_EXT%\python\idlelib\*
+..\%__SRC%\misc\build\Python-2.7.6\Lib\idlelib\Icons\* %_DEST%\lib%_EXT%\python\idlelib\Icons\*
+..\%__SRC%\misc\build\Python-2.7.6\Lib\wsgiref\* %_DEST%\lib%_EXT%\python\wsgiref\*
+..\%__SRC%\misc\build\Python-2.7.6\Lib\json\* %_DEST%\lib%_EXT%\python\json\*
+..\%__SRC%\misc\build\Python-2.7.6\Lib\lib2to3\* %_DEST%\lib%_EXT%\python\lib2to3\*
+..\%__SRC%\misc\build\Python-2.7.6\Lib\lib2to3\fixes\* %_DEST%\lib%_EXT%\python\lib2to3\fixes\*
+..\%__SRC%\misc\build\Python-2.7.6\Lib\lib2to3\pgen2\* %_DEST%\lib%_EXT%\python\lib2to3\pgen2\*
+..\%__SRC%\misc\build\Python-2.7.6\Lib\sqlite3\* %_DEST%\lib%_EXT%\python\sqlite3\*
+..\%__SRC%\misc\build\Python-2.7.6\Lib\ctypes\* %_DEST%\lib%_EXT%\python\ctypes\*
+..\%__SRC%\misc\build\Python-2.7.6\Lib\ctypes\macholib\* %_DEST%\lib%_EXT%\python\ctypes\macholib\*
+..\%__SRC%\misc\build\Python-2.7.6\Lib\xml\etree\* %_DEST%\lib%_EXT%\python\xml\etree
+..\%__SRC%\misc\build\Python-2.7.6\Lib\xml\etree\* %_DEST%\lib%_EXT%\python\xml\etree
+..\%__SRC%\misc\build\Python-2.7.6\Lib\importlib\* %_DEST%\lib%_EXT%\python\importlib\*
+..\%__SRC%\misc\build\Python-2.7.6\Lib\multiprocessing\* %_DEST%\lib%_EXT%\python\multiprocessing\*
+..\%__SRC%\misc\build\Python-2.7.6\Lib\multiprocessing\dummy\* %_DEST%\lib%_EXT%\python\multiprocessing\dummy\*
+..\%__SRC%\misc\build\Python-2.7.6\Lib\unittest\* %_DEST%\lib%_EXT%\python\unittest\*
+..\%__SRC%\misc\build\Python-2.7.6\Makefile %_DEST%\lib%_EXT%\python\python2.7\config\Makefile
..\%__SRC%\misc\build\python-inst\lib\python2.7\_sysconfigdata.py %_DEST%\lib%_EXT%\python\_sysconfigdata.py
..\pyversion.mk %_DEST%\inc%_EXT%\pyversion.mk
-..\%__SRC%\misc\build\Python-2.7.5\Include\* %_DEST%\inc%_EXT%\python\*
+..\%__SRC%\misc\build\Python-2.7.6\Include\* %_DEST%\inc%_EXT%\python\*
#unix ONLY !
..\%__SRC%\misc\build\python-inst\bin\python %_DEST%\bin%_EXT%\python
-..\%__SRC%\misc\build\Python-2.7.5\pyconfig.h %_DEST%\inc%_EXT%\python\pyconfig.h
+..\%__SRC%\misc\build\Python-2.7.6\pyconfig.h %_DEST%\inc%_EXT%\python\pyconfig.h
..\%__SRC%\misc\build\python-inst\lib\python2.7\lib-dynload\* %_DEST%\lib%_EXT%\python\lib-dynload\*
..\%__SRC%\misc\build\python-inst\bin\python2.7 %_DEST%\bin%_EXT%\python
..\%__SRC%\misc\build\python-inst\lib\libpython2.7.so.1.0 %_DEST%\lib%_EXT%\libpython2.7.so.1.0
@@ -91,24 +91,24 @@ symlink: %_DEST%\lib%_EXT%\libpython2.7.so.1.0 %_DEST%\lib%_EXT%\libpython2.7.so
#MingW ONLY !
..\%__SRC%\misc\build\python-inst\bin\python.exe %_DEST%\bin%_EXT%\python.exe
-..\%__SRC%\misc\build\Python-2.7.5\libpython2.7.dll %_DEST%\bin%_EXT%\libpython2.7.dll
+..\%__SRC%\misc\build\Python-2.7.6\libpython2.7.dll %_DEST%\bin%_EXT%\libpython2.7.dll
# WINDOWS ONLY !
..\%__SRC%\misc\build\pyconfig.h %_DEST%\inc%_EXT%\python\pyconfig.h
-..\%__SRC%\misc\build\Python-2.7.5\PCbuild\python.exe %_DEST%\bin%_EXT%\python.exe
-..\%__SRC%\misc\build\Python-2.7.5\PCbuild\python27.dll %_DEST%\bin%_EXT%\python27.dll
-..\%__SRC%\misc\build\Python-2.7.5\PCbuild\python27.lib %_DEST%\lib%_EXT%\python27.lib
-..\%__SRC%\misc\build\Python-2.7.5\PCbuild\_socket.pyd %_DEST%\lib%_EXT%\python\_socket.pyd
-..\%__SRC%\misc\build\Python-2.7.5\PCbuild\_ssl.pyd %_DEST%\lib%_EXT%\python\_ssl.pyd
-..\%__SRC%\misc\build\Python-2.7.5\PCbuild\select.pyd %_DEST%\lib%_EXT%\python\select.pyd
-..\%__SRC%\misc\build\Python-2.7.5\PCbuild\unicodedata.pyd %_DEST%\lib%_EXT%\python\unicodedata.pyd
-..\%__SRC%\misc\build\Python-2.7.5\PCbuild\winsound.pyd %_DEST%\lib%_EXT%\python\winsound.pyd
-..\%__SRC%\misc\build\Python-2.7.5\PCbuild\pyexpat.pyd %_DEST%\lib%_EXT%\python\pyexpat.pyd
-..\%__SRC%\misc\build\Python-2.7.5\PCbuild\_testcapi.pyd %_DEST%\lib%_EXT%\python\_testcapi.pyd
-..\%__SRC%\misc\build\Python-2.7.5\PCbuild\_multiprocessing.pyd %_DEST%\lib%_EXT%\python\_multiprocessing.pyd
-..\%__SRC%\misc\build\Python-2.7.5\PCbuild\_msi.pyd %_DEST%\lib%_EXT%\python\_msi.pyd
-..\%__SRC%\misc\build\Python-2.7.5\PCbuild\_elementtree.pyd %_DEST%\lib%_EXT%\python\_elementtree.pyd
-..\%__SRC%\misc\build\Python-2.7.5\PCbuild\_ctypes.pyd %_DEST%\lib%_EXT%\python\_ctypes.pyd
+..\%__SRC%\misc\build\Python-2.7.6\PCbuild\python.exe %_DEST%\bin%_EXT%\python.exe
+..\%__SRC%\misc\build\Python-2.7.6\PCbuild\python27.dll %_DEST%\bin%_EXT%\python27.dll
+..\%__SRC%\misc\build\Python-2.7.6\PCbuild\python27.lib %_DEST%\lib%_EXT%\python27.lib
+..\%__SRC%\misc\build\Python-2.7.6\PCbuild\_socket.pyd %_DEST%\lib%_EXT%\python\_socket.pyd
+..\%__SRC%\misc\build\Python-2.7.6\PCbuild\_ssl.pyd %_DEST%\lib%_EXT%\python\_ssl.pyd
+..\%__SRC%\misc\build\Python-2.7.6\PCbuild\select.pyd %_DEST%\lib%_EXT%\python\select.pyd
+..\%__SRC%\misc\build\Python-2.7.6\PCbuild\unicodedata.pyd %_DEST%\lib%_EXT%\python\unicodedata.pyd
+..\%__SRC%\misc\build\Python-2.7.6\PCbuild\winsound.pyd %_DEST%\lib%_EXT%\python\winsound.pyd
+..\%__SRC%\misc\build\Python-2.7.6\PCbuild\pyexpat.pyd %_DEST%\lib%_EXT%\python\pyexpat.pyd
+..\%__SRC%\misc\build\Python-2.7.6\PCbuild\_testcapi.pyd %_DEST%\lib%_EXT%\python\_testcapi.pyd
+..\%__SRC%\misc\build\Python-2.7.6\PCbuild\_multiprocessing.pyd %_DEST%\lib%_EXT%\python\_multiprocessing.pyd
+..\%__SRC%\misc\build\Python-2.7.6\PCbuild\_msi.pyd %_DEST%\lib%_EXT%\python\_msi.pyd
+..\%__SRC%\misc\build\Python-2.7.6\PCbuild\_elementtree.pyd %_DEST%\lib%_EXT%\python\_elementtree.pyd
+..\%__SRC%\misc\build\Python-2.7.6\PCbuild\_ctypes.pyd %_DEST%\lib%_EXT%\python\_ctypes.pyd
#linklib: libpython.so.*.*.*
diff --git a/python/python-2.7.5-mingw.patch b/python/python-2.7.6-mingw.patch
index 255aad75977d..56e03dd23a11 100644
--- a/python/python-2.7.5-mingw.patch
+++ b/python/python-2.7.6-mingw.patch
@@ -1,6 +1,6 @@
-diff -ru misc/Python-2.7.5/Include/pyport.h misc/build/Python-2.7.5/Include/pyport.h
---- misc/Python-2.7.5/Include/pyport.h 2012-04-09 18:07:29.000000000 -0500
-+++ misc/build/Python-2.7.5/Include/pyport.h 2012-07-25 15:33:16.000000000 -0500
+diff -ru misc/Python-2.7.6/Include/pyport.h misc/build/Python-2.7.6/Include/pyport.h
+--- misc/Python-2.7.6/Include/pyport.h 2012-04-09 18:07:29.000000000 -0500
++++ misc/build/Python-2.7.6/Include/pyport.h 2012-07-25 15:33:16.000000000 -0500
@@ -9,6 +9,30 @@
#include <inttypes.h>
#endif
@@ -32,20 +32,20 @@ diff -ru misc/Python-2.7.5/Include/pyport.h misc/build/Python-2.7.5/Include/pypo
#ifdef HAVE_STDINT_H
#include <stdint.h>
#endif
-diff -ru misc/Python-2.7.5/Lib/distutils/ccompiler.py misc/build/Python-2.7.5/Lib/distutils/ccompiler.py
---- misc/Python-2.7.5/Lib/distutils/ccompiler.py 2012-04-09 18:07:29.000000000 -0500
-+++ misc/build/Python-2.7.5/Lib/distutils/ccompiler.py 2012-07-25 15:33:16.000000000 -0500
+diff -ru misc/Python-2.7.6/Lib/distutils/ccompiler.py misc/build/Python-2.7.6/Lib/distutils/ccompiler.py
+--- misc/Python-2.7.6/Lib/distutils/ccompiler.py 2012-04-09 18:07:29.000000000 -0500
++++ misc/build/Python-2.7.6/Lib/distutils/ccompiler.py 2012-07-25 15:33:16.000000000 -0500
@@ -893,6 +893,7 @@
- # on a cygwin built python we can use gcc like an ordinary UNIXish
+ # on a cygwin built python we can use gcc like an ordinary UNIXishno
# compiler
('cygwin.*', 'unix'),
+ ('winmingw*', 'unix'),
('os2emx', 'emx'),
# OS name mappings
-diff -ru misc/Python-2.7.5/Lib/distutils/command/build_ext.py misc/build/Python-2.7.5/Lib/distutils/command/build_ext.py
---- misc/Python-2.7.5/Lib/distutils/command/build_ext.py 2012-04-09 18:07:29.000000000 -0500
-+++ misc/build/Python-2.7.5/Lib/distutils/command/build_ext.py 2012-07-25 15:33:16.000000000 -0500
+diff -ru misc/Python-2.7.6/Lib/distutils/command/build_ext.py misc/build/Python-2.7.6/Lib/distutils/command/build_ext.py
+--- misc/Python-2.7.6/Lib/distutils/command/build_ext.py 2012-04-09 18:07:29.000000000 -0500
++++ misc/build/Python-2.7.6/Lib/distutils/command/build_ext.py 2012-07-25 15:33:16.000000000 -0500
@@ -221,7 +221,7 @@
# for extensions under Cygwin and AtheOS Python's library directory must be
@@ -64,9 +64,9 @@ diff -ru misc/Python-2.7.5/Lib/distutils/command/build_ext.py misc/build/Python-
template = "python%d.%d"
pythonlib = (template %
(sys.hexversion >> 24, (sys.hexversion >> 16) & 0xff))
-diff -ru misc/Python-2.7.5/Lib/distutils/command/install.py misc/build/Python-2.7.5/Lib/distutils/command/install.py
---- misc/Python-2.7.5/Lib/distutils/command/install.py 2012-04-09 18:07:29.000000000 -0500
-+++ misc/build/Python-2.7.5/Lib/distutils/command/install.py 2012-07-25 15:33:16.000000000 -0500
+diff -ru misc/Python-2.7.6/Lib/distutils/command/install.py misc/build/Python-2.7.6/Lib/distutils/command/install.py
+--- misc/Python-2.7.6/Lib/distutils/command/install.py 2012-04-09 18:07:29.000000000 -0500
++++ misc/build/Python-2.7.6/Lib/distutils/command/install.py 2012-07-25 15:33:16.000000000 -0500
@@ -348,9 +348,10 @@
# Convert directories from Unix /-separated syntax to the local
@@ -102,9 +102,9 @@ diff -ru misc/Python-2.7.5/Lib/distutils/command/install.py misc/build/Python-2.
def handle_extra_path (self):
-diff -ru misc/Python-2.7.5/Lib/distutils/spawn.py misc/build/Python-2.7.5/Lib/distutils/spawn.py
---- misc/Python-2.7.5/Lib/distutils/spawn.py 2012-04-09 18:07:29.000000000 -0500
-+++ misc/build/Python-2.7.5/Lib/distutils/spawn.py 2012-07-25 15:39:23.000000000 -0500
+diff -ru misc/Python-2.7.6/Lib/distutils/spawn.py misc/build/Python-2.7.6/Lib/distutils/spawn.py
+--- misc/Python-2.7.6/Lib/distutils/spawn.py 2012-04-09 18:07:29.000000000 -0500
++++ misc/build/Python-2.7.6/Lib/distutils/spawn.py 2012-07-25 15:39:23.000000000 -0500
@@ -185,7 +185,7 @@
paths = path.split(os.pathsep)
base, ext = os.path.splitext(executable)
@@ -114,9 +114,9 @@ diff -ru misc/Python-2.7.5/Lib/distutils/spawn.py misc/build/Python-2.7.5/Lib/di
executable = executable + '.exe'
if not os.path.isfile(executable):
-diff -ru misc/Python-2.7.5/Lib/distutils/sysconfig.py misc/build/Python-2.7.5/Lib/distutils/sysconfig.py
---- misc/Python-2.7.5/Lib/distutils/sysconfig.py 2012-04-09 18:07:29.000000000 -0500
-+++ misc/build/Python-2.7.5/Lib/distutils/sysconfig.py 2012-07-25 15:44:24.000000000 -0500
+diff -ru misc/Python-2.7.6/Lib/distutils/sysconfig.py misc/build/Python-2.7.6/Lib/distutils/sysconfig.py
+--- misc/Python-2.7.6/Lib/distutils/sysconfig.py 2012-04-09 18:07:29.000000000 -0500
++++ misc/build/Python-2.7.6/Lib/distutils/sysconfig.py 2012-07-25 15:44:24.000000000 -0500
@@ -419,6 +419,9 @@
raise DistutilsPlatformError(my_msg)
@@ -137,9 +137,9 @@ diff -ru misc/Python-2.7.5/Lib/distutils/sysconfig.py misc/build/Python-2.7.5/Li
if func:
func()
else:
-diff -ru misc/Python-2.7.5/Lib/distutils/unixccompiler.py misc/build/Python-2.7.5/Lib/distutils/unixccompiler.py
---- misc/Python-2.7.5/Lib/distutils/unixccompiler.py 2012-04-09 18:07:30.000000000 -0500
-+++ misc/build/Python-2.7.5/Lib/distutils/unixccompiler.py 2012-07-25 15:33:16.000000000 -0500
+diff -ru misc/Python-2.7.6/Lib/distutils/unixccompiler.py misc/build/Python-2.7.6/Lib/distutils/unixccompiler.py
+--- misc/Python-2.7.6/Lib/distutils/unixccompiler.py 2012-04-09 18:07:30.000000000 -0500
++++ misc/build/Python-2.7.6/Lib/distutils/unixccompiler.py 2012-07-25 15:33:16.000000000 -0500
@@ -139,7 +139,7 @@
shared_lib_extension = ".so"
dylib_lib_extension = ".dylib"
@@ -149,9 +149,9 @@ diff -ru misc/Python-2.7.5/Lib/distutils/unixccompiler.py misc/build/Python-2.7.
exe_extension = ".exe"
def preprocess(self, source,
-diff -ru misc/Python-2.7.5/Lib/os.py misc/build/Python-2.7.5/Lib/os.py
---- misc/Python-2.7.5/Lib/os.py 2012-04-09 18:07:30.000000000 -0500
-+++ misc/build/Python-2.7.5/Lib/os.py 2012-07-25 15:33:16.000000000 -0500
+diff -ru misc/Python-2.7.6/Lib/os.py misc/build/Python-2.7.6/Lib/os.py
+--- misc/Python-2.7.6/Lib/os.py 2012-04-09 18:07:30.000000000 -0500
++++ misc/build/Python-2.7.6/Lib/os.py 2012-07-25 15:33:16.000000000 -0500
@@ -38,7 +38,21 @@
except AttributeError:
return [n for n in dir(module) if n[0] != '_']
@@ -175,9 +175,9 @@ diff -ru misc/Python-2.7.5/Lib/os.py misc/build/Python-2.7.5/Lib/os.py
name = 'posix'
linesep = '\n'
from posix import *
-diff -ru misc/Python-2.7.5/Lib/socket.py misc/build/Python-2.7.5/Lib/socket.py
---- misc/Python-2.7.5/Lib/socket.py 2012-04-09 18:07:31.000000000 -0500
-+++ misc/build/Python-2.7.5/Lib/socket.py 2012-07-25 15:33:16.000000000 -0500
+diff -ru misc/Python-2.7.6/Lib/socket.py misc/build/Python-2.7.6/Lib/socket.py
+--- misc/Python-2.7.6/Lib/socket.py 2012-04-09 18:07:31.000000000 -0500
++++ misc/build/Python-2.7.6/Lib/socket.py 2012-07-25 15:33:16.000000000 -0500
@@ -153,7 +153,7 @@
'sendall', 'setblocking',
'settimeout', 'gettimeout', 'shutdown')
@@ -187,9 +187,9 @@ diff -ru misc/Python-2.7.5/Lib/socket.py misc/build/Python-2.7.5/Lib/socket.py
_socketmethods = _socketmethods + ('ioctl',)
if sys.platform == "riscos":
-diff -ru misc/Python-2.7.5/Makefile.pre.in misc/build/Python-2.7.5/Makefile.pre.in
---- misc/Python-2.7.5/Makefile.pre.in 2012-04-09 18:07:33.000000000 -0500
-+++ misc/build/Python-2.7.5/Makefile.pre.in 2012-07-25 16:01:28.000000000 -0500
+diff -ru misc/Python-2.7.6/Makefile.pre.in misc/build/Python-2.7.6/Makefile.pre.in
+--- misc/Python-2.7.6/Makefile.pre.in 2012-04-09 18:07:33.000000000 -0500
++++ misc/build/Python-2.7.6/Makefile.pre.in 2012-07-25 16:01:28.000000000 -0500
@@ -112,6 +112,16 @@
BLDSHARED= @BLDSHARED@ $(LDFLAGS)
LDCXXSHARED= @LDCXXSHARED@
@@ -347,9 +347,9 @@ diff -ru misc/Python-2.7.5/Makefile.pre.in misc/build/Python-2.7.5/Makefile.pre.
# Here are a couple of targets for MacOSX again, to install a full
# framework-based Python. frameworkinstall installs everything, the
# subtargets install specific parts. Much of the actual work is offloaded to
-diff -ru misc/Python-2.7.5/Modules/Setup.config.in misc/build/Python-2.7.5/Modules/Setup.config.in
---- misc/Python-2.7.5/Modules/Setup.config.in 2012-04-09 18:07:33.000000000 -0500
-+++ misc/build/Python-2.7.5/Modules/Setup.config.in 2012-07-25 15:33:16.000000000 -0500
+diff -ru misc/Python-2.7.6/Modules/Setup.config.in misc/build/Python-2.7.6/Modules/Setup.config.in
+--- misc/Python-2.7.6/Modules/Setup.config.in 2012-04-09 18:07:33.000000000 -0500
++++ misc/build/Python-2.7.6/Modules/Setup.config.in 2012-07-25 15:33:16.000000000 -0500
@@ -9,5 +9,9 @@
# The signal module
@USE_SIGNAL_MODULE@signal signalmodule.c
@@ -360,9 +360,9 @@ diff -ru misc/Python-2.7.5/Modules/Setup.config.in misc/build/Python-2.7.5/Modul
+
# The rest of the modules previously listed in this file are built
# by the setup.py script in Python 2.1 and later.
-diff -ru misc/Python-2.7.5/Modules/Setup.dist misc/build/Python-2.7.5/Modules/Setup.dist
---- misc/Python-2.7.5/Modules/Setup.dist 2012-04-09 18:07:33.000000000 -0500
-+++ misc/build/Python-2.7.5/Modules/Setup.dist 2012-07-25 15:33:16.000000000 -0500
+diff -ru misc/Python-2.7.6/Modules/Setup.dist misc/build/Python-2.7.6/Modules/Setup.dist
+--- misc/Python-2.7.6/Modules/Setup.dist 2012-04-09 18:07:33.000000000 -0500
++++ misc/build/Python-2.7.6/Modules/Setup.dist 2012-07-25 15:33:16.000000000 -0500
@@ -114,7 +114,7 @@
posix posixmodule.c # posix (UNIX) system calls
@@ -372,9 +372,9 @@ diff -ru misc/Python-2.7.5/Modules/Setup.dist misc/build/Python-2.7.5/Modules/Se
# if $HOME is not set
_sre _sre.c # Fredrik Lundh's new regular expressions
_codecs _codecsmodule.c # access to the builtin codecs and codec registry
-diff -ru misc/Python-2.7.5/Modules/_ctypes/libffi/configure misc/build/Python-2.7.5/Modules/_ctypes/libffi/configure
---- misc/Python-2.7.5/Modules/_ctypes/libffi/configure 2012-04-09 18:07:33.000000000 -0500
-+++ misc/build/Python-2.7.5/Modules/_ctypes/libffi/configure 2012-07-25 16:12:30.000000000 -0500
+diff -ru misc/Python-2.7.6/Modules/_ctypes/libffi/configure misc/build/Python-2.7.6/Modules/_ctypes/libffi/configure
+--- misc/Python-2.7.6/Modules/_ctypes/libffi/configure 2012-04-09 18:07:33.000000000 -0500
++++ misc/build/Python-2.7.6/Modules/_ctypes/libffi/configure 2012-07-25 16:12:30.000000000 -0500
@@ -1,13 +1,11 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
@@ -3572,9 +3572,9 @@ diff -ru misc/Python-2.7.5/Modules/_ctypes/libffi/configure misc/build/Python-2.
fi
if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5
-diff -ru misc/Python-2.7.5/Modules/_ctypes/libffi/configure.ac misc/build/Python-2.7.5/Modules/_ctypes/libffi/configure.ac
---- misc/Python-2.7.5/Modules/_ctypes/libffi/configure.ac 2012-04-09 18:07:33.000000000 -0500
-+++ misc/build/Python-2.7.5/Modules/_ctypes/libffi/configure.ac 2012-07-25 16:10:32.000000000 -0500
+diff -ru misc/Python-2.7.6/Modules/_ctypes/libffi/configure.ac misc/build/Python-2.7.6/Modules/_ctypes/libffi/configure.ac
+--- misc/Python-2.7.6/Modules/_ctypes/libffi/configure.ac 2012-04-09 18:07:33.000000000 -0500
++++ misc/build/Python-2.7.6/Modules/_ctypes/libffi/configure.ac 2012-07-25 16:10:32.000000000 -0500
@@ -401,6 +401,12 @@
multilib_arg=
fi
@@ -3588,9 +3588,9 @@ diff -ru misc/Python-2.7.5/Modules/_ctypes/libffi/configure.ac misc/build/Python
AC_CONFIG_COMMANDS(include, [test -d include || mkdir include])
AC_CONFIG_COMMANDS(src, [
test -d src || mkdir src
-diff -ru misc/Python-2.7.5/Modules/_ctypes/libffi/include/ffi.h.in misc/build/Python-2.7.5/Modules/_ctypes/libffi/include/ffi.h.in
---- misc/Python-2.7.5/Modules/_ctypes/libffi/include/ffi.h.in 2012-04-09 18:07:33.000000000 -0500
-+++ misc/build/Python-2.7.5/Modules/_ctypes/libffi/include/ffi.h.in 2012-07-25 15:33:16.000000000 -0500
+diff -ru misc/Python-2.7.6/Modules/_ctypes/libffi/include/ffi.h.in misc/build/Python-2.7.6/Modules/_ctypes/libffi/include/ffi.h.in
+--- misc/Python-2.7.6/Modules/_ctypes/libffi/include/ffi.h.in 2012-04-09 18:07:33.000000000 -0500
++++ misc/build/Python-2.7.6/Modules/_ctypes/libffi/include/ffi.h.in 2012-07-25 15:33:16.000000000 -0500
@@ -359,7 +359,11 @@
ffi_type *rtype,
ffi_type **atypes);
@@ -3603,9 +3603,9 @@ diff -ru misc/Python-2.7.5/Modules/_ctypes/libffi/include/ffi.h.in misc/build/Py
void (*fn)(void),
void *rvalue,
void **avalue);
-diff -ru misc/Python-2.7.5/Modules/config.c.in misc/build/Python-2.7.5/Modules/config.c.in
---- misc/Python-2.7.5/Modules/config.c.in 2012-04-09 18:07:34.000000000 -0500
-+++ misc/build/Python-2.7.5/Modules/config.c.in 2012-07-25 16:19:28.000000000 -0500
+diff -ru misc/Python-2.7.6/Modules/config.c.in misc/build/Python-2.7.6/Modules/config.c.in
+--- misc/Python-2.7.6/Modules/config.c.in 2012-04-09 18:07:34.000000000 -0500
++++ misc/build/Python-2.7.6/Modules/config.c.in 2012-07-25 16:19:28.000000000 -0500
@@ -48,6 +48,9 @@
{"__builtin__", NULL},
{"sys", NULL},
@@ -3616,9 +3616,9 @@ diff -ru misc/Python-2.7.5/Modules/config.c.in misc/build/Python-2.7.5/Modules/c
/* This lives in gcmodule.c */
{"gc", initgc},
-diff -ru misc/Python-2.7.5/Modules/posixmodule.c misc/build/Python-2.7.5/Modules/posixmodule.c
---- misc/Python-2.7.5/Modules/posixmodule.c 2012-04-09 18:07:34.000000000 -0500
-+++ misc/build/Python-2.7.5/Modules/posixmodule.c 2012-07-25 15:33:16.000000000 -0500
+diff -ru misc/Python-2.7.6/Modules/posixmodule.c misc/build/Python-2.7.6/Modules/posixmodule.c
+--- misc/Python-2.7.6/Modules/posixmodule.c 2012-04-09 18:07:34.000000000 -0500
++++ misc/build/Python-2.7.6/Modules/posixmodule.c 2012-07-25 15:33:16.000000000 -0500
@@ -129,6 +129,15 @@
#define HAVE_FSYNC 1
#define fsync _commit
@@ -3685,9 +3685,9 @@ diff -ru misc/Python-2.7.5/Modules/posixmodule.c misc/build/Python-2.7.5/Modules
/* IsUNCRoot -- test whether the supplied path is of the form \\SERVER\SHARE\,
where / can be used in place of \ and the trailing slash is optional.
-diff -ru misc/Python-2.7.5/Modules/socketmodule.c misc/build/Python-2.7.5/Modules/socketmodule.c
---- misc/Python-2.7.5/Modules/socketmodule.c 2012-04-09 18:07:34.000000000 -0500
-+++ misc/build/Python-2.7.5/Modules/socketmodule.c 2012-07-25 15:33:16.000000000 -0500
+diff -ru misc/Python-2.7.6/Modules/socketmodule.c misc/build/Python-2.7.6/Modules/socketmodule.c
+--- misc/Python-2.7.6/Modules/socketmodule.c 2012-04-09 18:07:34.000000000 -0500
++++ misc/build/Python-2.7.6/Modules/socketmodule.c 2012-07-25 15:33:16.000000000 -0500
@@ -312,7 +312,7 @@
/* Do not include addrinfo.h for MSVC7 or greater. 'addrinfo' and
* EAI_* constants are defined in (the already included) ws2tcpip.h.
@@ -3697,9 +3697,9 @@ diff -ru misc/Python-2.7.5/Modules/socketmodule.c misc/build/Python-2.7.5/Module
# include "addrinfo.h"
#endif
-diff -ru misc/Python-2.7.5/PC/_winreg.c misc/build/Python-2.7.5/PC/_winreg.c
---- misc/Python-2.7.5/PC/_winreg.c 2012-04-09 18:07:35.000000000 -0500
-+++ misc/build/Python-2.7.5/PC/_winreg.c 2012-07-25 15:33:16.000000000 -0500
+diff -ru misc/Python-2.7.6/PC/_winreg.c misc/build/Python-2.7.6/PC/_winreg.c
+--- misc/Python-2.7.6/PC/_winreg.c 2012-04-09 18:07:35.000000000 -0500
++++ misc/build/Python-2.7.6/PC/_winreg.c 2012-07-25 15:33:16.000000000 -0500
@@ -1784,6 +1784,9 @@
}
@@ -3710,9 +3710,9 @@ diff -ru misc/Python-2.7.5/PC/_winreg.c misc/build/Python-2.7.5/PC/_winreg.c
PyMODINIT_FUNC init_winreg(void)
{
-diff -ru misc/Python-2.7.5/Python/dynload_win.c misc/build/Python-2.7.5/Python/dynload_win.c
---- misc/Python-2.7.5/Python/dynload_win.c 2012-04-09 18:07:35.000000000 -0500
-+++ misc/build/Python-2.7.5/Python/dynload_win.c 2012-07-25 16:25:30.000000000 -0500
+diff -ru misc/Python-2.7.6/Python/dynload_win.c misc/build/Python-2.7.6/Python/dynload_win.c
+--- misc/Python-2.7.6/Python/dynload_win.c 2012-04-09 18:07:35.000000000 -0500
++++ misc/build/Python-2.7.6/Python/dynload_win.c 2012-07-25 16:25:30.000000000 -0500
@@ -28,6 +28,7 @@
/* Case insensitive string compare, to avoid any dependencies on particular
C RTL implementations */
@@ -3729,9 +3729,9 @@ diff -ru misc/Python-2.7.5/Python/dynload_win.c misc/build/Python-2.7.5/Python/d
/* Function to return the name of the "python" DLL that the supplied module
-diff -ru misc/Python-2.7.5/Python/frozenmain.c misc/build/Python-2.7.5/Python/frozenmain.c
---- misc/Python-2.7.5/Python/frozenmain.c 2012-04-09 18:07:35.000000000 -0500
-+++ misc/build/Python-2.7.5/Python/frozenmain.c 2012-07-25 16:28:20.000000000 -0500
+diff -ru misc/Python-2.7.6/Python/frozenmain.c misc/build/Python-2.7.6/Python/frozenmain.c
+--- misc/Python-2.7.6/Python/frozenmain.c 2012-04-09 18:07:35.000000000 -0500
++++ misc/build/Python-2.7.6/Python/frozenmain.c 2012-07-25 16:28:20.000000000 -0500
@@ -3,7 +3,7 @@
#include "Python.h"
@@ -3765,9 +3765,9 @@ diff -ru misc/Python-2.7.5/Python/frozenmain.c misc/build/Python-2.7.5/Python/fr
PyWinFreeze_ExeTerm();
#endif
Py_Finalize();
-diff -ru misc/Python-2.7.5/configure misc/build/Python-2.7.5/configure
---- misc/Python-2.7.5/configure 2012-04-09 18:07:36.000000000 -0500
-+++ misc/build/Python-2.7.5/configure 2012-07-25 16:40:08.000000000 -0500
+diff -ru misc/Python-2.7.6/configure misc/build/Python-2.7.6/configure
+--- misc/Python-2.7.6/configure 2012-04-09 18:07:36.000000000 -0500
++++ misc/build/Python-2.7.6/configure 2012-07-25 16:40:08.000000000 -0500
@@ -1,14 +1,12 @@
#! /bin/sh
# From configure.in Revision.
@@ -7020,9 +7020,9 @@ diff -ru misc/Python-2.7.5/configure misc/build/Python-2.7.5/configure
|| as_fn_error $? "could not create -" "$LINENO" 5
fi
;;
-diff -ru misc/Python-2.7.5/configure.in misc/build/Python-2.7.5/configure.in
---- misc/Python-2.7.5/configure.in 2012-04-09 18:07:36.000000000 -0500
-+++ misc/build/Python-2.7.5/configure.in 2012-07-25 16:31:28.000000000 -0500
+diff -ru misc/Python-2.7.6/configure.in misc/build/Python-2.7.6/configure.in
+--- misc/Python-2.7.6/configure.in 2012-04-09 18:07:36.000000000 -0500
++++ misc/build/Python-2.7.6/configure.in 2012-07-25 16:31:28.000000000 -0500
@@ -417,6 +417,13 @@
LDFLAGS="$SGI_ABI $LDFLAGS"
MACHDEP=`echo "${MACHDEP}${SGI_ABI}" | sed 's/ *//g'`
@@ -7192,9 +7192,9 @@ diff -ru misc/Python-2.7.5/configure.in misc/build/Python-2.7.5/configure.in
AC_SUBST(UNICODE_OBJS)
if test "$enable_unicode" = "no"
then
-diff -ru misc/Python-2.7.5/setup.py misc/build/Python-2.7.5/setup.py
---- misc/Python-2.7.5/setup.py 2012-04-09 18:07:36.000000000 -0500
-+++ misc/build/Python-2.7.5/setup.py 2012-07-25 16:38:25.000000000 -0500
+diff -ru misc/Python-2.7.6/setup.py misc/build/Python-2.7.6/setup.py
+--- misc/Python-2.7.6/setup.py 2012-04-09 18:07:36.000000000 -0500
++++ misc/build/Python-2.7.6/setup.py 2012-07-25 16:38:25.000000000 -0500
@@ -271,6 +271,18 @@
if not self.configure_ctypes(ext):
return
diff --git a/python/python-2.7.5-nohardlink.patch b/python/python-2.7.6-nohardlink.patch
index 94a9e06046f3..16008d069fb4 100644
--- a/python/python-2.7.5-nohardlink.patch
+++ b/python/python-2.7.6-nohardlink.patch
@@ -1,5 +1,5 @@
---- misc/Python-2.7.5/Makefile.pre.in 2012-04-09 18:07:33.000000000 -0500
-+++ misc/build/Python-2.7.5/Makefile.pre.in 2012-07-22 14:54:26.000000000 -0500
+--- misc/Python-2.7.6/Makefile.pre.in 2012-04-09 18:07:33.000000000 -0500
++++ misc/build/Python-2.7.6/Makefile.pre.in 2012-07-22 14:54:26.000000000 -0500
@@ -427,7 +427,7 @@
libpython$(VERSION).so: $(LIBRARY_OBJS)
if test $(INSTSONAME) != $(LDLIBRARY); then \
diff --git a/python/python-2.7.5-pcbuild.patch b/python/python-2.7.6-pcbuild.patch
index c6c8cf1d9755..c2e542a92c90 100644
--- a/python/python-2.7.5-pcbuild.patch
+++ b/python/python-2.7.6-pcbuild.patch
@@ -1,6 +1,6 @@
-diff -u misc/Python-2.7.5/PCbuild/_bsddb.vcproj misc/build/Python-2.7.5/PCbuild/_bsddb.vcproj
---- misc/Python-2.7.5/PCbuild/_bsddb.vcproj 2012-04-09 18:07:35.000000000 -0500
-+++ misc/build/Python-2.7.5/PCbuild/_bsddb.vcproj 2012-07-30 20:59:37.000000000 -0500
+diff -u misc/Python-2.7.6/PCbuild/_bsddb.vcproj misc/build/Python-2.7.6/PCbuild/_bsddb.vcproj
+--- misc/Python-2.7.6/PCbuild/_bsddb.vcproj 2012-04-09 18:07:35.000000000 -0500
++++ misc/build/Python-2.7.6/PCbuild/_bsddb.vcproj 2012-07-30 20:59:37.000000000 -0500
@@ -56,6 +56,7 @@
/>
<Tool
@@ -65,9 +65,9 @@ diff -u misc/Python-2.7.5/PCbuild/_bsddb.vcproj misc/build/Python-2.7.5/PCbuild/
AdditionalDependencies="$(bsddbDepLibs)"
BaseAddress="0x1e180000"
TargetMachine="17"
-diff -u misc/Python-2.7.5/PCbuild/_ctypes.vcproj misc/build/Python-2.7.5/PCbuild/_ctypes.vcproj
---- misc/Python-2.7.5/PCbuild/_ctypes.vcproj 2012-04-09 18:07:35.000000000 -0500
-+++ misc/build/Python-2.7.5/PCbuild/_ctypes.vcproj 2012-07-30 20:59:37.000000000 -0500
+diff -u misc/Python-2.7.6/PCbuild/_ctypes.vcproj misc/build/Python-2.7.6/PCbuild/_ctypes.vcproj
+--- misc/Python-2.7.6/PCbuild/_ctypes.vcproj 2012-04-09 18:07:35.000000000 -0500
++++ misc/build/Python-2.7.6/PCbuild/_ctypes.vcproj 2012-07-30 20:59:37.000000000 -0500
@@ -177,7 +177,7 @@
/>
<Tool
@@ -122,9 +122,9 @@ diff -u misc/Python-2.7.5/PCbuild/_ctypes.vcproj misc/build/Python-2.7.5/PCbuild
SubSystem="0"
BaseAddress="0x1D1A0000"
TargetMachine="17"
-diff -u misc/Python-2.7.5/PCbuild/_ctypes_test.vcproj misc/build/Python-2.7.5/PCbuild/_ctypes_test.vcproj
---- misc/Python-2.7.5/PCbuild/_ctypes_test.vcproj 2012-04-09 18:07:35.000000000 -0500
-+++ misc/build/Python-2.7.5/PCbuild/_ctypes_test.vcproj 2012-07-30 20:59:37.000000000 -0500
+diff -u misc/Python-2.7.6/PCbuild/_ctypes_test.vcproj misc/build/Python-2.7.6/PCbuild/_ctypes_test.vcproj
+--- misc/Python-2.7.6/PCbuild/_ctypes_test.vcproj 2012-04-09 18:07:35.000000000 -0500
++++ misc/build/Python-2.7.6/PCbuild/_ctypes_test.vcproj 2012-07-30 20:59:37.000000000 -0500
@@ -54,6 +54,7 @@
/>
<Tool
@@ -189,9 +189,9 @@ diff -u misc/Python-2.7.5/PCbuild/_ctypes_test.vcproj misc/build/Python-2.7.5/PC
/>
<Tool
Name="VCALinkTool"
-diff -u misc/Python-2.7.5/PCbuild/_elementtree.vcproj misc/build/Python-2.7.5/PCbuild/_elementtree.vcproj
---- misc/Python-2.7.5/PCbuild/_elementtree.vcproj 2012-04-09 18:07:35.000000000 -0500
-+++ misc/build/Python-2.7.5/PCbuild/_elementtree.vcproj 2012-07-30 20:59:37.000000000 -0500
+diff -u misc/Python-2.7.6/PCbuild/_elementtree.vcproj misc/build/Python-2.7.6/PCbuild/_elementtree.vcproj
+--- misc/Python-2.7.6/PCbuild/_elementtree.vcproj 2012-04-09 18:07:35.000000000 -0500
++++ misc/build/Python-2.7.6/PCbuild/_elementtree.vcproj 2012-07-30 20:59:37.000000000 -0500
@@ -57,6 +57,7 @@
<Tool
Name="VCLinkerTool"
@@ -256,9 +256,9 @@ diff -u misc/Python-2.7.5/PCbuild/_elementtree.vcproj misc/build/Python-2.7.5/PC
/>
<Tool
Name="VCALinkTool"
-diff -u misc/Python-2.7.5/PCbuild/_hashlib.vcproj misc/build/Python-2.7.5/PCbuild/_hashlib.vcproj
---- misc/Python-2.7.5/PCbuild/_hashlib.vcproj 2012-04-09 18:07:35.000000000 -0500
-+++ misc/build/Python-2.7.5/PCbuild/_hashlib.vcproj 2012-07-30 20:59:37.000000000 -0500
+diff -u misc/Python-2.7.6/PCbuild/_hashlib.vcproj misc/build/Python-2.7.6/PCbuild/_hashlib.vcproj
+--- misc/Python-2.7.6/PCbuild/_hashlib.vcproj 2012-04-09 18:07:35.000000000 -0500
++++ misc/build/Python-2.7.6/PCbuild/_hashlib.vcproj 2012-07-30 20:59:37.000000000 -0500
@@ -58,6 +58,7 @@
<Tool
Name="VCLinkerTool"
@@ -323,9 +323,9 @@ diff -u misc/Python-2.7.5/PCbuild/_hashlib.vcproj misc/build/Python-2.7.5/PCbuil
/>
<Tool
Name="VCALinkTool"
-diff -u misc/Python-2.7.5/PCbuild/_msi.vcproj misc/build/Python-2.7.5/PCbuild/_msi.vcproj
---- misc/Python-2.7.5/PCbuild/_msi.vcproj 2012-04-09 18:07:35.000000000 -0500
-+++ misc/build/Python-2.7.5/PCbuild/_msi.vcproj 2012-07-30 20:59:37.000000000 -0500
+diff -u misc/Python-2.7.6/PCbuild/_msi.vcproj misc/build/Python-2.7.6/PCbuild/_msi.vcproj
+--- misc/Python-2.7.6/PCbuild/_msi.vcproj 2012-04-09 18:07:35.000000000 -0500
++++ misc/build/Python-2.7.6/PCbuild/_msi.vcproj 2012-07-30 20:59:37.000000000 -0500
@@ -56,6 +56,7 @@
Name="VCLinkerTool"
AdditionalDependencies="fci.lib msi.lib rpcrt4.lib"
@@ -390,9 +390,9 @@ diff -u misc/Python-2.7.5/PCbuild/_msi.vcproj misc/build/Python-2.7.5/PCbuild/_m
/>
<Tool
Name="VCALinkTool"
-diff -u misc/Python-2.7.5/PCbuild/_multiprocessing.vcproj misc/build/Python-2.7.5/PCbuild/_multiprocessing.vcproj
---- misc/Python-2.7.5/PCbuild/_multiprocessing.vcproj 2012-04-09 18:07:35.000000000 -0500
-+++ misc/build/Python-2.7.5/PCbuild/_multiprocessing.vcproj 2012-07-30 20:59:37.000000000 -0500
+diff -u misc/Python-2.7.6/PCbuild/_multiprocessing.vcproj misc/build/Python-2.7.6/PCbuild/_multiprocessing.vcproj
+--- misc/Python-2.7.6/PCbuild/_multiprocessing.vcproj 2012-04-09 18:07:35.000000000 -0500
++++ misc/build/Python-2.7.6/PCbuild/_multiprocessing.vcproj 2012-07-30 20:59:37.000000000 -0500
@@ -56,6 +56,7 @@
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib"
@@ -457,9 +457,9 @@ diff -u misc/Python-2.7.5/PCbuild/_multiprocessing.vcproj misc/build/Python-2.7.
/>
<Tool
Name="VCALinkTool"
-diff -u misc/Python-2.7.5/PCbuild/_socket.vcproj misc/build/Python-2.7.5/PCbuild/_socket.vcproj
---- misc/Python-2.7.5/PCbuild/_socket.vcproj 2012-04-09 18:07:35.000000000 -0500
-+++ misc/build/Python-2.7.5/PCbuild/_socket.vcproj 2012-07-30 20:59:37.000000000 -0500
+diff -u misc/Python-2.7.6/PCbuild/_socket.vcproj misc/build/Python-2.7.6/PCbuild/_socket.vcproj
+--- misc/Python-2.7.6/PCbuild/_socket.vcproj 2012-04-09 18:07:35.000000000 -0500
++++ misc/build/Python-2.7.6/PCbuild/_socket.vcproj 2012-07-30 20:59:37.000000000 -0500
@@ -56,6 +56,7 @@
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib"
@@ -524,9 +524,9 @@ diff -u misc/Python-2.7.5/PCbuild/_socket.vcproj misc/build/Python-2.7.5/PCbuild
/>
<Tool
Name="VCALinkTool"
-diff -u misc/Python-2.7.5/PCbuild/_sqlite3.vcproj misc/build/Python-2.7.5/PCbuild/_sqlite3.vcproj
---- misc/Python-2.7.5/PCbuild/_sqlite3.vcproj 2012-04-09 18:07:35.000000000 -0500
-+++ misc/build/Python-2.7.5/PCbuild/_sqlite3.vcproj 2012-07-30 20:59:37.000000000 -0500
+diff -u misc/Python-2.7.6/PCbuild/_sqlite3.vcproj misc/build/Python-2.7.6/PCbuild/_sqlite3.vcproj
+--- misc/Python-2.7.6/PCbuild/_sqlite3.vcproj 2012-04-09 18:07:35.000000000 -0500
++++ misc/build/Python-2.7.6/PCbuild/_sqlite3.vcproj 2012-07-30 20:59:37.000000000 -0500
@@ -57,6 +57,7 @@
<Tool
Name="VCLinkerTool"
@@ -591,9 +591,9 @@ diff -u misc/Python-2.7.5/PCbuild/_sqlite3.vcproj misc/build/Python-2.7.5/PCbuil
/>
<Tool
Name="VCALinkTool"
-diff -u misc/Python-2.7.5/PCbuild/_ssl.vcproj misc/build/Python-2.7.5/PCbuild/_ssl.vcproj
---- misc/Python-2.7.5/PCbuild/_ssl.vcproj 2012-04-09 18:07:35.000000000 -0500
-+++ misc/build/Python-2.7.5/PCbuild/_ssl.vcproj 2012-07-30 20:59:37.000000000 -0500
+diff -u misc/Python-2.7.6/PCbuild/_ssl.vcproj misc/build/Python-2.7.6/PCbuild/_ssl.vcproj
+--- misc/Python-2.7.6/PCbuild/_ssl.vcproj 2012-04-09 18:07:35.000000000 -0500
++++ misc/build/Python-2.7.6/PCbuild/_ssl.vcproj 2012-07-30 20:59:37.000000000 -0500
@@ -43,7 +43,7 @@
/>
<Tool
@@ -746,9 +746,9 @@ diff -u misc/Python-2.7.5/PCbuild/_ssl.vcproj misc/build/Python-2.7.5/PCbuild/_s
TargetMachine="17"
/>
<Tool
-diff -u misc/Python-2.7.5/PCbuild/_testcapi.vcproj misc/build/Python-2.7.5/PCbuild/_testcapi.vcproj
---- misc/Python-2.7.5/PCbuild/_testcapi.vcproj 2012-04-09 18:07:35.000000000 -0500
-+++ misc/build/Python-2.7.5/PCbuild/_testcapi.vcproj 2012-07-30 20:59:37.000000000 -0500
+diff -u misc/Python-2.7.6/PCbuild/_testcapi.vcproj misc/build/Python-2.7.6/PCbuild/_testcapi.vcproj
+--- misc/Python-2.7.6/PCbuild/_testcapi.vcproj 2012-04-09 18:07:35.000000000 -0500
++++ misc/build/Python-2.7.6/PCbuild/_testcapi.vcproj 2012-07-30 20:59:37.000000000 -0500
@@ -55,6 +55,7 @@
<Tool
Name="VCLinkerTool"
@@ -813,9 +813,9 @@ diff -u misc/Python-2.7.5/PCbuild/_testcapi.vcproj misc/build/Python-2.7.5/PCbui
/>
<Tool
Name="VCALinkTool"
-diff -u misc/Python-2.7.5/PCbuild/_tkinter.vcproj misc/build/Python-2.7.5/PCbuild/_tkinter.vcproj
---- misc/Python-2.7.5/PCbuild/_tkinter.vcproj 2012-04-09 18:07:35.000000000 -0500
-+++ misc/build/Python-2.7.5/PCbuild/_tkinter.vcproj 2012-07-30 20:59:37.000000000 -0500
+diff -u misc/Python-2.7.6/PCbuild/_tkinter.vcproj misc/build/Python-2.7.6/PCbuild/_tkinter.vcproj
+--- misc/Python-2.7.6/PCbuild/_tkinter.vcproj 2012-04-09 18:07:35.000000000 -0500
++++ misc/build/Python-2.7.6/PCbuild/_tkinter.vcproj 2012-07-30 20:59:37.000000000 -0500
@@ -57,6 +57,7 @@
<Tool
Name="VCLinkerTool"
@@ -880,9 +880,9 @@ diff -u misc/Python-2.7.5/PCbuild/_tkinter.vcproj misc/build/Python-2.7.5/PCbuil
/>
<Tool
Name="VCALinkTool"
-diff -u misc/Python-2.7.5/PCbuild/bdist_wininst.vcproj misc/build/Python-2.7.5/PCbuild/bdist_wininst.vcproj
---- misc/Python-2.7.5/PCbuild/bdist_wininst.vcproj 2012-04-09 18:07:35.000000000 -0500
-+++ misc/build/Python-2.7.5/PCbuild/bdist_wininst.vcproj 2012-07-30 20:59:37.000000000 -0500
+diff -u misc/Python-2.7.6/PCbuild/bdist_wininst.vcproj misc/build/Python-2.7.6/PCbuild/bdist_wininst.vcproj
+--- misc/Python-2.7.6/PCbuild/bdist_wininst.vcproj 2012-04-09 18:07:35.000000000 -0500
++++ misc/build/Python-2.7.6/PCbuild/bdist_wininst.vcproj 2012-07-30 20:59:37.000000000 -0500
@@ -81,8 +81,7 @@
IgnoreDefaultLibraryNames="LIBC"
ProgramDatabaseFile="..\lib\distutils\command\wininst-9.0.pdb"
@@ -903,9 +903,9 @@ diff -u misc/Python-2.7.5/PCbuild/bdist_wininst.vcproj misc/build/Python-2.7.5/P
TargetMachine="17"
/>
<Tool
-diff -u misc/Python-2.7.5/PCbuild/bz2.vcproj misc/build/Python-2.7.5/PCbuild/bz2.vcproj
---- misc/Python-2.7.5/PCbuild/bz2.vcproj 2012-04-09 18:07:35.000000000 -0500
-+++ misc/build/Python-2.7.5/PCbuild/bz2.vcproj 2012-07-30 20:59:37.000000000 -0500
+diff -u misc/Python-2.7.6/PCbuild/bz2.vcproj misc/build/Python-2.7.6/PCbuild/bz2.vcproj
+--- misc/Python-2.7.6/PCbuild/bz2.vcproj 2012-04-09 18:07:35.000000000 -0500
++++ misc/build/Python-2.7.6/PCbuild/bz2.vcproj 2012-07-30 20:59:37.000000000 -0500
@@ -57,6 +57,7 @@
<Tool
Name="VCLinkerTool"
@@ -970,9 +970,9 @@ diff -u misc/Python-2.7.5/PCbuild/bz2.vcproj misc/build/Python-2.7.5/PCbuild/bz2
/>
<Tool
Name="VCALinkTool"
-diff -u misc/Python-2.7.5/PCbuild/kill_python.vcproj misc/build/Python-2.7.5/PCbuild/kill_python.vcproj
---- misc/Python-2.7.5/PCbuild/kill_python.vcproj 2012-04-09 18:07:35.000000000 -0500
-+++ misc/build/Python-2.7.5/PCbuild/kill_python.vcproj 2012-07-30 20:59:37.000000000 -0500
+diff -u misc/Python-2.7.6/PCbuild/kill_python.vcproj misc/build/Python-2.7.6/PCbuild/kill_python.vcproj
+--- misc/Python-2.7.6/PCbuild/kill_python.vcproj 2012-04-09 18:07:35.000000000 -0500
++++ misc/build/Python-2.7.6/PCbuild/kill_python.vcproj 2012-07-30 20:59:37.000000000 -0500
@@ -56,6 +56,7 @@
Name="VCLinkerTool"
OutputFile="$(OutDir)\$(ProjectName)_d.exe"
@@ -1005,9 +1005,9 @@ diff -u misc/Python-2.7.5/PCbuild/kill_python.vcproj misc/build/Python-2.7.5/PCb
/>
<Tool
Name="VCALinkTool"
-diff -u misc/Python-2.7.5/PCbuild/make_buildinfo.vcproj misc/build/Python-2.7.5/PCbuild/make_buildinfo.vcproj
---- misc/Python-2.7.5/PCbuild/make_buildinfo.vcproj 2012-04-09 18:07:35.000000000 -0500
-+++ misc/build/Python-2.7.5/PCbuild/make_buildinfo.vcproj 2012-07-30 20:59:37.000000000 -0500
+diff -u misc/Python-2.7.6/PCbuild/make_buildinfo.vcproj misc/build/Python-2.7.6/PCbuild/make_buildinfo.vcproj
+--- misc/Python-2.7.6/PCbuild/make_buildinfo.vcproj 2012-04-09 18:07:35.000000000 -0500
++++ misc/build/Python-2.7.6/PCbuild/make_buildinfo.vcproj 2012-07-30 20:59:37.000000000 -0500
@@ -61,6 +61,7 @@
OutputFile="$(OutDir)/make_buildinfo.exe"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
@@ -1024,9 +1024,9 @@ diff -u misc/Python-2.7.5/PCbuild/make_buildinfo.vcproj misc/build/Python-2.7.5/
/>
<Tool
Name="VCALinkTool"
-diff -u misc/Python-2.7.5/PCbuild/make_versioninfo.vcproj misc/build/Python-2.7.5/PCbuild/make_versioninfo.vcproj
---- misc/Python-2.7.5/PCbuild/make_versioninfo.vcproj 2012-04-09 18:07:35.000000000 -0500
-+++ misc/build/Python-2.7.5/PCbuild/make_versioninfo.vcproj 2012-07-30 20:59:37.000000000 -0500
+diff -u misc/Python-2.7.6/PCbuild/make_versioninfo.vcproj misc/build/Python-2.7.6/PCbuild/make_versioninfo.vcproj
+--- misc/Python-2.7.6/PCbuild/make_versioninfo.vcproj 2012-04-09 18:07:35.000000000 -0500
++++ misc/build/Python-2.7.6/PCbuild/make_versioninfo.vcproj 2012-07-30 20:59:37.000000000 -0500
@@ -71,6 +71,7 @@
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
SubSystem="1"
@@ -1059,9 +1059,9 @@ diff -u misc/Python-2.7.5/PCbuild/make_versioninfo.vcproj misc/build/Python-2.7.
/>
<Tool
Name="VCALinkTool"
-diff -u misc/Python-2.7.5/PCbuild/pcbuild.sln misc/build/Python-2.7.5/PCbuild/pcbuild.sln
---- misc/Python-2.7.5/PCbuild/pcbuild.sln 2012-04-09 18:07:35.000000000 -0500
-+++ misc/build/Python-2.7.5/PCbuild/pcbuild.sln 2012-07-30 21:04:33.000000000 -0500
+diff -u misc/Python-2.7.6/PCbuild/pcbuild.sln misc/build/Python-2.7.6/PCbuild/pcbuild.sln
+--- misc/Python-2.7.6/PCbuild/pcbuild.sln 2012-04-09 18:07:35.000000000 -0500
++++ misc/build/Python-2.7.6/PCbuild/pcbuild.sln 2012-07-30 21:04:33.000000000 -0500
@@ -38,12 +38,12 @@
{CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} = {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26}
EndProjectSection
@@ -1156,9 +1156,9 @@ diff -u misc/Python-2.7.5/PCbuild/pcbuild.sln misc/build/Python-2.7.5/PCbuild/pc
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_multiprocessing", "_multiprocessing.vcproj", "{9E48B300-37D1-11DD-8C41-005056C00008}"
ProjectSection(ProjectDependencies) = postProject
{CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} = {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26}
-diff -u misc/Python-2.7.5/PCbuild/pyexpat.vcproj misc/build/Python-2.7.5/PCbuild/pyexpat.vcproj
---- misc/Python-2.7.5/PCbuild/pyexpat.vcproj 2012-04-09 18:07:35.000000000 -0500
-+++ misc/build/Python-2.7.5/PCbuild/pyexpat.vcproj 2012-07-30 20:59:37.000000000 -0500
+diff -u misc/Python-2.7.6/PCbuild/pyexpat.vcproj misc/build/Python-2.7.6/PCbuild/pyexpat.vcproj
+--- misc/Python-2.7.6/PCbuild/pyexpat.vcproj 2012-04-09 18:07:35.000000000 -0500
++++ misc/build/Python-2.7.6/PCbuild/pyexpat.vcproj 2012-07-30 20:59:37.000000000 -0500
@@ -56,6 +56,7 @@
/>
<Tool
@@ -1223,9 +1223,9 @@ diff -u misc/Python-2.7.5/PCbuild/pyexpat.vcproj misc/build/Python-2.7.5/PCbuild
/>
<Tool
Name="VCALinkTool"
-diff -u misc/Python-2.7.5/PCbuild/python.vcproj misc/build/Python-2.7.5/PCbuild/python.vcproj
---- misc/Python-2.7.5/PCbuild/python.vcproj 2012-04-09 18:07:35.000000000 -0500
-+++ misc/build/Python-2.7.5/PCbuild/python.vcproj 2012-07-30 20:59:37.000000000 -0500
+diff -u misc/Python-2.7.6/PCbuild/python.vcproj misc/build/Python-2.7.6/PCbuild/python.vcproj
+--- misc/Python-2.7.6/PCbuild/python.vcproj 2012-04-09 18:07:35.000000000 -0500
++++ misc/build/Python-2.7.6/PCbuild/python.vcproj 2012-07-30 20:59:37.000000000 -0500
@@ -66,6 +66,7 @@
SubSystem="1"
StackReserveSize="2000000"
@@ -1290,9 +1290,9 @@ diff -u misc/Python-2.7.5/PCbuild/python.vcproj misc/build/Python-2.7.5/PCbuild/
/>
<Tool
Name="VCALinkTool"
-diff -u misc/Python-2.7.5/PCbuild/pythoncore.vcproj misc/build/Python-2.7.5/PCbuild/pythoncore.vcproj
---- misc/Python-2.7.5/PCbuild/pythoncore.vcproj 2012-04-09 18:07:35.000000000 -0500
-+++ misc/build/Python-2.7.5/PCbuild/pythoncore.vcproj 2012-07-30 20:59:37.000000000 -0500
+diff -u misc/Python-2.7.6/PCbuild/pythoncore.vcproj misc/build/Python-2.7.6/PCbuild/pythoncore.vcproj
+--- misc/Python-2.7.6/PCbuild/pythoncore.vcproj 2012-04-09 18:07:35.000000000 -0500
++++ misc/build/Python-2.7.6/PCbuild/pythoncore.vcproj 2012-07-30 20:59:37.000000000 -0500
@@ -69,6 +69,7 @@
ProgramDatabaseFile="$(OutDir)$(PyDllName).pdb"
BaseAddress="0x1e000000"
@@ -1364,9 +1364,9 @@ diff -u misc/Python-2.7.5/PCbuild/pythoncore.vcproj misc/build/Python-2.7.5/PCbu
-</VisualStudioProject>
\ No newline at end of file
+</VisualStudioProject>
-diff -u misc/Python-2.7.5/PCbuild/pythonw.vcproj misc/build/Python-2.7.5/PCbuild/pythonw.vcproj
---- misc/Python-2.7.5/PCbuild/pythonw.vcproj 2012-04-09 18:07:35.000000000 -0500
-+++ misc/build/Python-2.7.5/PCbuild/pythonw.vcproj 2012-07-30 20:59:37.000000000 -0500
+diff -u misc/Python-2.7.6/PCbuild/pythonw.vcproj misc/build/Python-2.7.6/PCbuild/pythonw.vcproj
+--- misc/Python-2.7.6/PCbuild/pythonw.vcproj 2012-04-09 18:07:35.000000000 -0500
++++ misc/build/Python-2.7.6/PCbuild/pythonw.vcproj 2012-07-30 20:59:37.000000000 -0500
@@ -66,6 +66,7 @@
StackReserveSize="2000000"
BaseAddress="0x1d000000"
@@ -1431,9 +1431,9 @@ diff -u misc/Python-2.7.5/PCbuild/pythonw.vcproj misc/build/Python-2.7.5/PCbuild
/>
<Tool
Name="VCALinkTool"
-diff -u misc/Python-2.7.5/PCbuild/select.vcproj misc/build/Python-2.7.5/PCbuild/select.vcproj
---- misc/Python-2.7.5/PCbuild/select.vcproj 2012-04-09 18:07:35.000000000 -0500
-+++ misc/build/Python-2.7.5/PCbuild/select.vcproj 2012-07-30 20:59:37.000000000 -0500
+diff -u misc/Python-2.7.6/PCbuild/select.vcproj misc/build/Python-2.7.6/PCbuild/select.vcproj
+--- misc/Python-2.7.6/PCbuild/select.vcproj 2012-04-09 18:07:35.000000000 -0500
++++ misc/build/Python-2.7.6/PCbuild/select.vcproj 2012-07-30 20:59:37.000000000 -0500
@@ -57,6 +57,7 @@
AdditionalDependencies="ws2_32.lib"
IgnoreDefaultLibraryNames="libc"
@@ -1498,9 +1498,9 @@ diff -u misc/Python-2.7.5/PCbuild/select.vcproj misc/build/Python-2.7.5/PCbuild/
/>
<Tool
Name="VCALinkTool"
-diff -u misc/Python-2.7.5/PCbuild/sqlite3.vcproj misc/build/Python-2.7.5/PCbuild/sqlite3.vcproj
---- misc/Python-2.7.5/PCbuild/sqlite3.vcproj 2012-04-09 18:07:35.000000000 -0500
-+++ misc/build/Python-2.7.5/PCbuild/sqlite3.vcproj 2012-07-30 20:59:37.000000000 -0500
+diff -u misc/Python-2.7.6/PCbuild/sqlite3.vcproj misc/build/Python-2.7.6/PCbuild/sqlite3.vcproj
+--- misc/Python-2.7.6/PCbuild/sqlite3.vcproj 2012-04-09 18:07:35.000000000 -0500
++++ misc/build/Python-2.7.6/PCbuild/sqlite3.vcproj 2012-07-30 20:59:37.000000000 -0500
@@ -56,6 +56,7 @@
<Tool
Name="VCLinkerTool"
@@ -1565,9 +1565,9 @@ diff -u misc/Python-2.7.5/PCbuild/sqlite3.vcproj misc/build/Python-2.7.5/PCbuild
/>
<Tool
Name="VCALinkTool"
-diff -u misc/Python-2.7.5/PCbuild/unicodedata.vcproj misc/build/Python-2.7.5/PCbuild/unicodedata.vcproj
---- misc/Python-2.7.5/PCbuild/unicodedata.vcproj 2012-04-09 18:07:35.000000000 -0500
-+++ misc/build/Python-2.7.5/PCbuild/unicodedata.vcproj 2012-07-30 20:59:37.000000000 -0500
+diff -u misc/Python-2.7.6/PCbuild/unicodedata.vcproj misc/build/Python-2.7.6/PCbuild/unicodedata.vcproj
+--- misc/Python-2.7.6/PCbuild/unicodedata.vcproj 2012-04-09 18:07:35.000000000 -0500
++++ misc/build/Python-2.7.6/PCbuild/unicodedata.vcproj 2012-07-30 20:59:37.000000000 -0500
@@ -55,6 +55,7 @@
<Tool
Name="VCLinkerTool"
@@ -1632,9 +1632,9 @@ diff -u misc/Python-2.7.5/PCbuild/unicodedata.vcproj misc/build/Python-2.7.5/PCb
/>
<Tool
Name="VCALinkTool"
-diff -u misc/Python-2.7.5/PCbuild/w9xpopen.vcproj misc/build/Python-2.7.5/PCbuild/w9xpopen.vcproj
---- misc/Python-2.7.5/PCbuild/w9xpopen.vcproj 2012-04-09 18:07:35.000000000 -0500
-+++ misc/build/Python-2.7.5/PCbuild/w9xpopen.vcproj 2012-07-30 20:59:37.000000000 -0500
+diff -u misc/Python-2.7.6/PCbuild/w9xpopen.vcproj misc/build/Python-2.7.6/PCbuild/w9xpopen.vcproj
+--- misc/Python-2.7.6/PCbuild/w9xpopen.vcproj 2012-04-09 18:07:35.000000000 -0500
++++ misc/build/Python-2.7.6/PCbuild/w9xpopen.vcproj 2012-07-30 20:59:37.000000000 -0500
@@ -59,6 +59,7 @@
<Tool
Name="VCLinkerTool"
@@ -1699,9 +1699,9 @@ diff -u misc/Python-2.7.5/PCbuild/w9xpopen.vcproj misc/build/Python-2.7.5/PCbuil
/>
<Tool
Name="VCALinkTool"
-diff -u misc/Python-2.7.5/PCbuild/winsound.vcproj misc/build/Python-2.7.5/PCbuild/winsound.vcproj
---- misc/Python-2.7.5/PCbuild/winsound.vcproj 2012-04-09 18:07:35.000000000 -0500
-+++ misc/build/Python-2.7.5/PCbuild/winsound.vcproj 2012-07-30 20:59:37.000000000 -0500
+diff -u misc/Python-2.7.6/PCbuild/winsound.vcproj misc/build/Python-2.7.6/PCbuild/winsound.vcproj
+--- misc/Python-2.7.6/PCbuild/winsound.vcproj 2012-04-09 18:07:35.000000000 -0500
++++ misc/build/Python-2.7.6/PCbuild/winsound.vcproj 2012-07-30 20:59:37.000000000 -0500
@@ -55,6 +55,7 @@
<Tool
Name="VCLinkerTool"
diff --git a/python/python-2.7.5-sysbase.patch b/python/python-2.7.6-sysbase.patch
index 03c47f0036e1..3385a4e67953 100644
--- a/python/python-2.7.5-sysbase.patch
+++ b/python/python-2.7.6-sysbase.patch
@@ -1,5 +1,5 @@
---- misc/Python-2.7.5/configure 2012-04-09 18:07:36.000000000 -0500
-+++ misc/build/Python-2.7.5/configure 2012-07-22 15:01:20.000000000 -0500
+--- misc/Python-2.7.6/configure 2012-04-09 18:07:36.000000000 -0500
++++ misc/build/Python-2.7.6/configure 2012-07-22 15:01:20.000000000 -0500
@@ -2982,7 +2982,9 @@
if test -z "$MACHDEP"
then
diff --git a/python/python-freebsd.patch b/python/python-freebsd.patch
index 63efa1100a03..0489052f2290 100644
--- a/python/python-freebsd.patch
+++ b/python/python-freebsd.patch
@@ -1,5 +1,5 @@
---- misc/Python-2.7.5/Lib/plat-freebsd9/IN.py 1969-12-31 19:00:00.000000000 -0500
-+++ misc/build/Python-2.7.5/Lib/plat-freebsd9/IN.py 2012-08-01 18:56:04.000000000 -0500
+--- misc/Python-2.7.6/Lib/plat-freebsd9/IN.py 1969-12-31 19:00:00.000000000 -0500
++++ misc/build/Python-2.7.6/Lib/plat-freebsd9/IN.py 2012-08-01 18:56:04.000000000 -0500
@@ -0,0 +1,612 @@
+# Generated by h2py from /usr/include/netinet/in.h
+
@@ -613,14 +613,14 @@
+IPV6CTL_NORBIT_RAIF = 49
+IPV6CTL_RFC6204W3 = 50
+IPV6CTL_MAXID = 51
---- misc/Python-2.7.5/Lib/plat-freebsd9/regen 1969-12-31 19:00:00.000000000 -0500
-+++ misc/build/Python-2.7.5/Lib/plat-freebsd9/regen 2012-08-01 18:55:27.000000000 -0500
+--- misc/Python-2.7.6/Lib/plat-freebsd9/regen 1969-12-31 19:00:00.000000000 -0500
++++ misc/build/Python-2.7.6/Lib/plat-freebsd9/regen 2012-08-01 18:55:27.000000000 -0500
@@ -0,0 +1,3 @@
+#! /bin/sh
+set -v
+python ../../Tools/scripts/h2py.py -i '(u_long)' /usr/include/netinet/in.h
---- misc/Python-2.7.5/Lib/test/test_threading.py 2012-04-09 18:07:32.000000000 -0500
-+++ misc/build/Python-2.7.5/Lib/test/test_threading.py 2012-08-01 18:44:40.000000000 -0500
+--- misc/Python-2.7.6/Lib/test/test_threading.py 2012-04-09 18:07:32.000000000 -0500
++++ misc/build/Python-2.7.6/Lib/test/test_threading.py 2012-08-01 18:44:40.000000000 -0500
@@ -421,7 +421,7 @@
# #12316 and #11870), and fork() from a worker thread is known to trigger
# problems with some operating systems (issue #3863): skip problematic tests
@@ -630,8 +630,8 @@
'os2emx')
def _run_and_join(self, script):
---- misc/Python-2.7.5/Modules/_ctypes/libffi/configure 2012-04-09 18:07:33.000000000 -0500
-+++ misc/build/Python-2.7.5/Modules/_ctypes/libffi/configure 2012-08-01 18:53:21.000000000 -0500
+--- misc/Python-2.7.6/Modules/_ctypes/libffi/configure 2012-04-09 18:07:33.000000000 -0500
++++ misc/build/Python-2.7.6/Modules/_ctypes/libffi/configure 2012-08-01 18:53:21.000000000 -0500
@@ -6289,7 +6289,7 @@
rm -rf conftest*
;;
@@ -651,8 +651,8 @@
powerpc*-*-rtems*)
TARGET=POWERPC; TARGETDIR=powerpc
;;
---- misc/Python-2.7.5/Modules/fcntlmodule.c 2012-04-09 18:07:34.000000000 -0500
-+++ misc/build/Python-2.7.5/Modules/fcntlmodule.c 2012-08-01 18:44:40.000000000 -0500
+--- misc/Python-2.7.6/Modules/fcntlmodule.c 2012-04-09 18:07:34.000000000 -0500
++++ misc/build/Python-2.7.6/Modules/fcntlmodule.c 2012-08-01 18:44:40.000000000 -0500
@@ -97,20 +97,15 @@
{
#define IOCTL_BUFSZ 1024
@@ -704,8 +704,8 @@
" an integer and optionally an integer or buffer argument",
conv_descriptor, &fd, &code, &arg)) {
return NULL;
---- misc/Python-2.7.5/Python/thread_pthread.h 2012-04-09 18:07:35.000000000 -0500
-+++ misc/build/Python-2.7.5/Python/thread_pthread.h 2012-08-01 18:44:40.000000000 -0500
+--- misc/Python-2.7.6/Python/thread_pthread.h 2012-04-09 18:07:35.000000000 -0500
++++ misc/build/Python-2.7.6/Python/thread_pthread.h 2012-08-01 18:44:40.000000000 -0500
@@ -38,13 +38,18 @@
#endif
#endif
@@ -759,9 +759,9 @@
#if defined(THREAD_STACK_SIZE) || defined(PTHREAD_SYSTEM_SCHED_SUPPORTED)
pthread_attr_destroy(&attrs);
#endif
-diff -ruN misc/Python-2.7.5/configure misc/build/Python-2.7.5/configure
---- misc/Python-2.7.5/configure 2012-04-09 18:07:36.000000000 -0500
-+++ misc/build/Python-2.7.5/configure 2012-08-01 18:44:40.000000000 -0500
+diff -ruN misc/Python-2.7.6/configure misc/build/Python-2.7.6/configure
+--- misc/Python-2.7.6/configure 2012-04-09 18:07:36.000000000 -0500
++++ misc/build/Python-2.7.6/configure 2012-08-01 18:44:40.000000000 -0500
@@ -4916,7 +4916,7 @@
;;
SunOS*)
@@ -783,9 +783,9 @@ diff -ruN misc/Python-2.7.5/configure misc/build/Python-2.7.5/configure
INSTSONAME="$LDLIBRARY".$SOVERSION
;;
hp*|HP*)
-diff -ruN misc/Python-2.7.5/setup.py misc/build/Python-2.7.5/setup.py
---- misc/Python-2.7.5/setup.py 2012-04-09 18:07:36.000000000 -0500
-+++ misc/build/Python-2.7.5/setup.py 2012-08-01 18:44:40.000000000 -0500
+diff -ruN misc/Python-2.7.6/setup.py misc/build/Python-2.7.6/setup.py
+--- misc/Python-2.7.6/setup.py 2012-04-09 18:07:36.000000000 -0500
++++ misc/build/Python-2.7.6/setup.py 2012-08-01 18:44:40.000000000 -0500
@@ -1555,7 +1540,7 @@
macros = dict()
libraries = []
diff --git a/python/python-md5.patch b/python/python-md5.patch
index c1c284c90bc6..981907109ca4 100644
--- a/python/python-md5.patch
+++ b/python/python-md5.patch
@@ -1,6 +1,6 @@
-diff -ru misc/Python-2.7.5/Modules/Setup.dist misc/build/Python-2.7.5/Modules/Setup.dist
---- misc/Python-2.7.5/Modules/Setup.dist 2012-04-09 18:07:33.000000000 -0500
-+++ misc/build/Python-2.7.5/Modules/Setup.dist 2012-07-24 17:08:56.000000000 -0500
+diff -ru misc/Python-2.7.6/Modules/Setup.dist misc/build/Python-2.7.6/Modules/Setup.dist
+--- misc/Python-2.7.6/Modules/Setup.dist 2012-04-09 18:07:33.000000000 -0500
++++ misc/build/Python-2.7.6/Modules/Setup.dist 2012-07-24 17:08:56.000000000 -0500
@@ -248,14 +248,14 @@
# Message-Digest Algorithm, described in RFC 1321. The necessary files
# md5.c and md5.h are included here.
diff --git a/python/python-solaris.patch b/python/python-solaris.patch
index 583a1d7b0864..707a3af202bd 100644
--- a/python/python-solaris.patch
+++ b/python/python-solaris.patch
@@ -1,5 +1,5 @@
---- misc/Python-2.7.5/Include/pyport.h 2012-04-09 18:07:29.000000000 -0500
-+++ misc/build/Python-2.7.5/Include/pyport.h 2012-07-24 18:19:52.000000000 -0500
+--- misc/Python-2.7.6/Include/pyport.h 2012-04-09 18:07:29.000000000 -0500
++++ misc/build/Python-2.7.6/Include/pyport.h 2012-07-24 18:19:52.000000000 -0500
@@ -603,11 +603,6 @@
in platform-specific #ifdefs.
**************************************************************************/
diff --git a/python/python-solver-before-std.patch b/python/python-solver-before-std.patch
index 938b99c94168..1c66d24216d5 100644
--- a/python/python-solver-before-std.patch
+++ b/python/python-solver-before-std.patch
@@ -1,5 +1,5 @@
---- misc/Python-2.7.5/setup.py 2013-07-01 17:51:46.237674580 +0200
-+++ misc/build/Python-2.7.5/setup.py 2013-07-01 17:51:24.230453108 +0200
+--- misc/Python-2.7.6/setup.py 2013-07-01 17:51:46.237674580 +0200
++++ misc/build/Python-2.7.6/setup.py 2013-07-01 17:51:24.230453108 +0200
@@ -80,61 +80,62 @@
# system, but with only header files and libraries.
sysroot = macosx_sdk_root()
diff --git a/python/python-ssl.patch b/python/python-ssl.patch
index 02923e9133f8..04921f354612 100644
--- a/python/python-ssl.patch
+++ b/python/python-ssl.patch
@@ -1,15 +1,15 @@
-diff -ru misc/Python-2.7.5/PCbuild/build_ssl.py misc/build/Python-2.7.5/PCbuild/build_ssl.py
---- misc/Python-2.7.5/PCbuild/build_ssl.py 2012-04-09 18:07:35.000000000 -0500
-+++ misc/build/Python-2.7.5/PCbuild/build_ssl.py 2012-07-25 14:37:37.000000000 -0500
+diff -ru misc/Python-2.7.6/PCbuild/build_ssl.py misc/build/Python-2.7.6/PCbuild/build_ssl.py
+--- misc/Python-2.7.6/PCbuild/build_ssl.py 2012-04-09 18:07:35.000000000 -0500
++++ misc/build/Python-2.7.6/PCbuild/build_ssl.py 2012-07-25 14:37:37.000000000 -0500
@@ -253,4 +253,4 @@
sys.exit(rc)
if __name__=='__main__':
- main()
+ sys.exit(0)
-diff -ru misc/Python-2.7.5/setup.py misc/build/Python-2.7.5/setup.py
---- misc/Python-2.7.5/setup.py 2012-04-09 18:07:36.000000000 -0500
-+++ misc/build/Python-2.7.5/setup.py 2012-07-25 14:37:37.000000000 -0500
+diff -ru misc/Python-2.7.6/setup.py misc/build/Python-2.7.6/setup.py
+--- misc/Python-2.7.6/setup.py 2012-04-09 18:07:36.000000000 -0500
++++ misc/build/Python-2.7.6/setup.py 2012-07-25 14:37:37.000000000 -0500
@@ -702,7 +702,15 @@
exts.append( Extension('_socket', ['socketmodule.c'],
depends = ['socketmodule.h']) )
diff --git a/python/pyversion.mk b/python/pyversion.mk
index 2cc62b98a00a..2f8ae7e7d4ae 100644
--- a/python/pyversion.mk
+++ b/python/pyversion.mk
@@ -22,7 +22,7 @@
# in the python project accordingly !!!
PYMAJOR=2
PYMINOR=7
-PYMICRO=5
+PYMICRO=6
PYVERSION=$(PYMAJOR).$(PYMINOR).$(PYMICRO)
.IF "$(GUI)" == "UNX"
diff --git a/pyuno/source/module/pyuno_module.cxx b/pyuno/source/module/pyuno_module.cxx
index 55b4db53c7af..e029a147fc02 100644
--- a/pyuno/source/module/pyuno_module.cxx
+++ b/pyuno/source/module/pyuno_module.cxx
@@ -292,7 +292,7 @@ static PyObject *createUnoStructHelper(PyObject *, PyObject* args )
OStringBuffer buf;
buf.append( "UNO struct " );
buf.append( OUStringToOString( typeName, RTL_TEXTENCODING_ASCII_US ) );
- buf.append( " is unkown" );
+ buf.append( " is unknown" );
PyErr_SetString (PyExc_RuntimeError, buf.getStr());
}
}
diff --git a/qadevOOo/runner/base/java_complex.java b/qadevOOo/runner/base/java_complex.java
index 86e8dc81b064..918b81b3a204 100644
--- a/qadevOOo/runner/base/java_complex.java
+++ b/qadevOOo/runner/base/java_complex.java
@@ -46,7 +46,7 @@ public class java_complex implements TestBase
* This function executes the complex tests given as parameter "-o" or "TestJob". It querys for the correspond class
* and crates the JobDescription.
* @param param
- * @return true of all tests run successfuly, esle false
+ * @return true of all tests run successfuly, else false
*/
public boolean executeTest(TestParameters param)
{
@@ -73,7 +73,7 @@ public class java_complex implements TestBase
* This function run the given DescEntry[] as ComplexTest
* @param param
* @param entries
- * @return true of all tests run successfuly, esle false
+ * @return true of all tests run successfuly, else false
*/
public boolean executeTest(TestParameters param, DescEntry[] entries)
{
@@ -90,7 +90,7 @@ public class java_complex implements TestBase
boolean returnVal = true;
// the concept of the TimeOut depends on runner logs. If the runner log,
-// for exmaple to start a test method, the timeout was restet. This is not
+// for example to start a test method, the timeout was reset. This is not
// while the test itself log something like "open docuent...".
// An property of complex test could be that it have only one test method
// which works for serveral minutes. Ih this case the TimeOut get not trigger
diff --git a/qadevOOo/runner/basicrunner/BasicHandler.java b/qadevOOo/runner/basicrunner/BasicHandler.java
index 27b731400659..843c5cbebe68 100644
--- a/qadevOOo/runner/basicrunner/BasicHandler.java
+++ b/qadevOOo/runner/basicrunner/BasicHandler.java
@@ -80,7 +80,7 @@ public class BasicHandler implements XServiceInfo, XSingleServiceFactory {
static private LogWriter log;
/**
- * <code>oHandlerDoc</code> is a referrence to BASIC's document.
+ * <code>oHandlerDoc</code> is a reference to BASIC's document.
*/
static private XComponent oHandlerDoc = null;
diff --git a/qadevOOo/runner/basicrunner/basichelper/Connector.java b/qadevOOo/runner/basicrunner/basichelper/Connector.java
index 69d6c30062a1..fc4c1f02dd6b 100644
--- a/qadevOOo/runner/basicrunner/basichelper/Connector.java
+++ b/qadevOOo/runner/basicrunner/basichelper/Connector.java
@@ -38,7 +38,7 @@ import com.sun.star.lang.XSingleServiceFactory;
/**
* This is a special service that is used in testing Acceptor
* component in BASIC. This componennt creates a separate thread
- * that tries to connect to BASIC's acceptor. After successfull
+ * that tries to connect to BASIC's acceptor. After successful
* connection it writes a connectionString to XConnection.
*/
public class Connector implements XServiceInfo, XSingleServiceFactory {
@@ -233,7 +233,7 @@ class ConnThread extends Thread {
/**Construct the thread.
* @param oCntr A connector.
- * @param cStr The conection string.
+ * @param cStr The connection string.
*/
public ConnThread(XConnector oCntr, String cStr){
connStr = cStr;
diff --git a/qadevOOo/runner/complexlib/ComplexTestCase.java b/qadevOOo/runner/complexlib/ComplexTestCase.java
index f29341e2e95a..b7a8cadcc581 100644
--- a/qadevOOo/runner/complexlib/ComplexTestCase.java
+++ b/qadevOOo/runner/complexlib/ComplexTestCase.java
@@ -153,7 +153,7 @@ public abstract class ComplexTestCase extends Assurance implements ComplexTest
{
// some tests are very dynamic in its exceution time so that
// a threadTimeOut fials. In this cases the logging mechanisim
- // is a usefull way to detect that a office respective a test
+ // is a useful way to detect that a office respective a test
// is running and not death.
// But way ThreadTimeOut?
// There exeitsts a complex test which uses no office. Therefore
diff --git a/qadevOOo/runner/convwatch/ConvWatch.java b/qadevOOo/runner/convwatch/ConvWatch.java
index e36ac3fb9cbc..537e7c589a77 100644
--- a/qadevOOo/runner/convwatch/ConvWatch.java
+++ b/qadevOOo/runner/convwatch/ConvWatch.java
@@ -47,7 +47,7 @@ public class ConvWatch
}
/**
* Check if given document (_sAbsoluteInputFile) and it's postscript representation (_sAbsoluteReferenceFile) produce
- * the same output like the StarOffice / OpenOffice.org which is accessable with XMultiServiceFactory.
+ * the same output like the StarOffice / OpenOffice.org which is accessible with XMultiServiceFactory.
* Here a simple graphically difference check is run through.
*
* Hint: In the OutputPath all needed files will create, there must
diff --git a/qadevOOo/runner/convwatch/ConvWatchStarter.java b/qadevOOo/runner/convwatch/ConvWatchStarter.java
index bed5b69b9649..d1dcc049c88c 100644
--- a/qadevOOo/runner/convwatch/ConvWatchStarter.java
+++ b/qadevOOo/runner/convwatch/ConvWatchStarter.java
@@ -152,7 +152,7 @@ public class ConvWatchStarter extends EnhancedComplexTestCase
/**
*
- * @return a List of software which must accessable as an external executable
+ * @return a List of software which must accessible as an external executable
*/
protected Object[] mustInstalledSoftware()
{
@@ -189,7 +189,7 @@ public class ConvWatchStarter extends EnhancedComplexTestCase
{
GlobalLogWriter.set(log);
String sDBConnection = (String)param.get( PropertyName.DB_CONNECTION_STRING );
- // check if all need software is installed and accessable
+ // check if all need software is installed and accessible
checkEnvironment(mustInstalledSoftware());
GraphicalTestArguments aGTA = getGraphicalTestArguments();
@@ -379,7 +379,7 @@ public class ConvWatchStarter extends EnhancedComplexTestCase
// aSemaphore.V(aSemaphore.getSemaphoreFile());
// aSemaphore.sleep(2);
// // wait some time maybe an other process will take the semaphore
- // // I know, this is absolutly dirty, but the whole convwatch is dirty and need a big cleanup.
+ // // I know, this is absolutely dirty, but the whole convwatch is dirty and need a big cleanup.
// }
}
diff --git a/qadevOOo/runner/convwatch/DB.java b/qadevOOo/runner/convwatch/DB.java
index 8f6cf27b5114..43bdc5428660 100644
--- a/qadevOOo/runner/convwatch/DB.java
+++ b/qadevOOo/runner/convwatch/DB.java
@@ -323,7 +323,7 @@ public class DB extends DBHelper
{
String sError = e.getMessage();
GlobalLogWriter.get().println("DB: Original SQL error: " + sError);
- // throw new ValueNotFoundException("Cant execute SQL: " + _sSQL);
+ // throw new ValueNotFoundException("Can't execute SQL: " + _sSQL);
}
return aResultList;
}
diff --git a/qadevOOo/runner/convwatch/DBHelper.java b/qadevOOo/runner/convwatch/DBHelper.java
index f03d83df46bc..3705d77272f3 100644
--- a/qadevOOo/runner/convwatch/DBHelper.java
+++ b/qadevOOo/runner/convwatch/DBHelper.java
@@ -275,7 +275,7 @@ public class DBHelper
{
String sError = e.getMessage();
GlobalLogWriter.get().println("DB: Original SQL error: " + sError);
- throw new ValueNotFoundException("Cant execute SQL: " + _sSQL);
+ throw new ValueNotFoundException("Can't execute SQL: " + _sSQL);
}
}
catch(SQLException e)
diff --git a/qadevOOo/runner/convwatch/DocumentConverter.java b/qadevOOo/runner/convwatch/DocumentConverter.java
index e658f4d4d904..5a371d8f57a1 100644
--- a/qadevOOo/runner/convwatch/DocumentConverter.java
+++ b/qadevOOo/runner/convwatch/DocumentConverter.java
@@ -134,7 +134,7 @@ public class DocumentConverter extends EnhancedComplexTestCase
}
/**
- * Function returns a List of software which must accessable as an external executable
+ * Function returns a List of software which must accessible as an external executable
*/
protected Object[] mustInstalledSoftware()
{
@@ -147,7 +147,7 @@ public class DocumentConverter extends EnhancedComplexTestCase
public void convert()
{
GlobalLogWriter.set(log);
- // check if all need software is installed and accessable
+ // check if all need software is installed and accessible
checkEnvironment(mustInstalledSoftware());
// test_removeFirstDirectorysAndBasenameFrom();
diff --git a/qadevOOo/runner/convwatch/EnhancedComplexTestCase.java b/qadevOOo/runner/convwatch/EnhancedComplexTestCase.java
index fe3b3b45bcd7..78605fd4781e 100644
--- a/qadevOOo/runner/convwatch/EnhancedComplexTestCase.java
+++ b/qadevOOo/runner/convwatch/EnhancedComplexTestCase.java
@@ -57,7 +57,7 @@ public abstract class EnhancedComplexTestCase extends ComplexTestCase
if (sText.length() == 0)
{
- String sError = "Must quit. " + _sName + " may be not accessable.";
+ String sError = "Must quit. " + _sName + " may be not accessible.";
assure(sError, false);
// System.exit(1);
}
diff --git a/qadevOOo/runner/convwatch/FileHelper.java b/qadevOOo/runner/convwatch/FileHelper.java
index 47068c72a2d1..034c62fa8fb8 100644
--- a/qadevOOo/runner/convwatch/FileHelper.java
+++ b/qadevOOo/runner/convwatch/FileHelper.java
@@ -64,7 +64,7 @@ public class FileHelper
return true;
}
// This is just nice for DEBUG behaviour
- // due to the fact this is absolutly context dependency no one should use it.
+ // due to the fact this is absolutely context dependency no one should use it.
// else
// {
// System.out.println("FileHelper:exists() tell this path doesn't exists. Check it. path is:" );
diff --git a/qadevOOo/runner/convwatch/GfxCompare.java b/qadevOOo/runner/convwatch/GfxCompare.java
index 49ba04c44770..248fc5a8c4db 100644
--- a/qadevOOo/runner/convwatch/GfxCompare.java
+++ b/qadevOOo/runner/convwatch/GfxCompare.java
@@ -56,7 +56,7 @@ public class GfxCompare extends EnhancedComplexTestCase
/**
*
- * @return a List of software which must accessable as an external executable
+ * @return a List of software which must accessible as an external executable
*/
protected Object[] mustInstalledSoftware()
{
@@ -82,7 +82,7 @@ public class GfxCompare extends EnhancedComplexTestCase
{
GlobalLogWriter.set(log);
- // check if all need software is installed and accessable
+ // check if all need software is installed and accessible
checkEnvironment(mustInstalledSoftware());
m_aArguments = getGraphicalTestArguments();
diff --git a/qadevOOo/runner/convwatch/MSOfficePrint.java b/qadevOOo/runner/convwatch/MSOfficePrint.java
index 82460b32fef4..52f0780dd91b 100644
--- a/qadevOOo/runner/convwatch/MSOfficePrint.java
+++ b/qadevOOo/runner/convwatch/MSOfficePrint.java
@@ -400,7 +400,7 @@ public class MSOfficePrint
File aPerlScript = new File(userdir + fs + _sScriptName);
if (FileHelper.isDebugEnabled())
{
- GlobalLogWriter.get().println("Search for local existance of " + aPerlScript.getAbsolutePath());
+ GlobalLogWriter.get().println("Search for local existence of " + aPerlScript.getAbsolutePath());
}
if (aPerlScript.exists())
diff --git a/qadevOOo/runner/convwatch/OfficePrint.java b/qadevOOo/runner/convwatch/OfficePrint.java
index dfcdbe27f9c3..ea479c9b92ab 100644
--- a/qadevOOo/runner/convwatch/OfficePrint.java
+++ b/qadevOOo/runner/convwatch/OfficePrint.java
@@ -376,7 +376,7 @@ public class OfficePrint {
* @param _sPrintFileURL
* @return true, if print has been done.
* Be careful, true means only print returns with no errors, to be sure print is really done
- * check existance of _sPrintFileURL
+ * check existence of _sPrintFileURL
*/
public static boolean printToFileWithOOo(GraphicalTestArguments _aGTA,
@@ -593,7 +593,7 @@ public class OfficePrint {
// configure Office to allow to execute macos
-// TODO: We need a possiblity to set the printer name also for StarOffice/OpenOffice
+// TODO: We need a possibility to set the printer name also for StarOffice/OpenOffice
if (OSHelper.isWindows())
{
if (_aGTA.getPrinterName() != null)
diff --git a/qadevOOo/runner/convwatch/ReferenceBuilder.java b/qadevOOo/runner/convwatch/ReferenceBuilder.java
index 4ea5d0986041..877f9d91933d 100644
--- a/qadevOOo/runner/convwatch/ReferenceBuilder.java
+++ b/qadevOOo/runner/convwatch/ReferenceBuilder.java
@@ -134,7 +134,7 @@ public class ReferenceBuilder extends EnhancedComplexTestCase
}
/**
- * Function returns a List of software which must accessable as an external executable
+ * Function returns a List of software which must accessible as an external executable
*/
protected Object[] mustInstalledSoftware()
{
@@ -149,7 +149,7 @@ public class ReferenceBuilder extends EnhancedComplexTestCase
GlobalLogWriter.set(log);
String sDBConnection = (String)param.get( PropertyName.DB_CONNECTION_STRING );
- // check if all need software is installed and accessable
+ // check if all need software is installed and accessible
checkEnvironment(mustInstalledSoftware());
// test_removeFirstDirectorysAndBasenameFrom();
@@ -286,7 +286,7 @@ public class ReferenceBuilder extends EnhancedComplexTestCase
// aSemaphore.V(aSemaphore.getSemaphoreFile());
// aSemaphore.sleep(2);
// // wait some time maybe an other process will take the semaphore
- // // I know, this is absolutly dirty, but the whole convwatch is dirty and need a big cleanup.
+ // // I know, this is absolutely dirty, but the whole convwatch is dirty and need a big cleanup.
// }
}
}
diff --git a/qadevOOo/runner/convwatch/ReportDesignerTest.java b/qadevOOo/runner/convwatch/ReportDesignerTest.java
index 8efb5e430aa4..724246c7a83c 100644
--- a/qadevOOo/runner/convwatch/ReportDesignerTest.java
+++ b/qadevOOo/runner/convwatch/ReportDesignerTest.java
@@ -681,7 +681,7 @@ public class ReportDesignerTest extends ComplexTestCase {
catch (com.sun.star.util.CloseVetoException e)
{
log.println("ERROR: CloseVetoException caught");
- log.println("CloseVetoException occured Can't close document.");
+ log.println("CloseVetoException occurred Can't close document.");
log.println("Message: " + e.getMessage());
}
}
diff --git a/qadevOOo/runner/graphical/FileHelper.java b/qadevOOo/runner/graphical/FileHelper.java
index a0b3777e6a2c..c0fed52cb962 100644
--- a/qadevOOo/runner/graphical/FileHelper.java
+++ b/qadevOOo/runner/graphical/FileHelper.java
@@ -72,7 +72,7 @@ public class FileHelper
return true;
}
// This is just nice for DEBUG behaviour
- // due to the fact this is absolutly context dependency no one should use it.
+ // due to the fact this is absolutely context dependency no one should use it.
// else
// {
// System.out.println("FileHelper:exists() tell this path doesn't exists. Check it. path is:" );
diff --git a/qadevOOo/runner/graphical/IniFile.java b/qadevOOo/runner/graphical/IniFile.java
index 97daae6c5725..495212fdc902 100644
--- a/qadevOOo/runner/graphical/IniFile.java
+++ b/qadevOOo/runner/graphical/IniFile.java
@@ -671,7 +671,7 @@ public class IniFile implements Enumeration
}
/**
- * Helper to count the occurence of Sections
+ * Helper to count the occurrence of Sections
* @return returns the count of '^['.*']$' Elements
*/
public int getElementCount()
diff --git a/qadevOOo/runner/graphical/MSOfficePostscriptCreator.java b/qadevOOo/runner/graphical/MSOfficePostscriptCreator.java
index 0b5a37b7a026..32d65642b886 100644
--- a/qadevOOo/runner/graphical/MSOfficePostscriptCreator.java
+++ b/qadevOOo/runner/graphical/MSOfficePostscriptCreator.java
@@ -488,7 +488,7 @@ public class MSOfficePostscriptCreator implements IOffice
File aPerlScript = new File(sFileName);
if (FileHelper.isDebugEnabled())
{
- GlobalLogWriter.println("Search for local existance of " + aPerlScript.getAbsolutePath());
+ GlobalLogWriter.println("Search for local existence of " + aPerlScript.getAbsolutePath());
}
if (aPerlScript.exists())
diff --git a/qadevOOo/runner/graphical/OpenOfficeDatabaseReportExtractor.java b/qadevOOo/runner/graphical/OpenOfficeDatabaseReportExtractor.java
index 98aee03384aa..2550d5f55d87 100644
--- a/qadevOOo/runner/graphical/OpenOfficeDatabaseReportExtractor.java
+++ b/qadevOOo/runner/graphical/OpenOfficeDatabaseReportExtractor.java
@@ -553,7 +553,7 @@ public class OpenOfficeDatabaseReportExtractor extends Assurance
catch (com.sun.star.util.CloseVetoException e)
{
GlobalLogWriter.println("ERROR: CloseVetoException caught");
- GlobalLogWriter.println("CloseVetoException occured Can't close document.");
+ GlobalLogWriter.println("CloseVetoException occurred Can't close document.");
GlobalLogWriter.println("Message: " + e.getMessage());
}
}
diff --git a/qadevOOo/runner/graphical/OpenOfficePostscriptCreator.java b/qadevOOo/runner/graphical/OpenOfficePostscriptCreator.java
index d4822efeb7d7..4cec1c037003 100644
--- a/qadevOOo/runner/graphical/OpenOfficePostscriptCreator.java
+++ b/qadevOOo/runner/graphical/OpenOfficePostscriptCreator.java
@@ -426,7 +426,7 @@ public class OpenOfficePostscriptCreator implements IOffice
*
* @return true, if print has been done.
* Be careful, true means only print returns with no errors, to be sure print is really done
- * check existance of _sPrintFileURL
+ * check existence of _sPrintFileURL
*/
// public boolean printToFileWithOOo(ParameterHelper _aGTA,
@@ -561,7 +561,7 @@ public class OpenOfficePostscriptCreator implements IOffice
// configure Office to allow to execute macos
-// TODO: We need a possiblity to set the printer name also for StarOffice/OpenOffice
+// TODO: We need a possibility to set the printer name also for StarOffice/OpenOffice
if (OSHelper.isWindows())
{
if (_aGTA.getPrinterName() != null)
@@ -1400,7 +1400,7 @@ public class OpenOfficePostscriptCreator implements IOffice
// aSemaphore.V(aSemaphore.getSemaphoreFile());
// aSemaphore.sleep(2);
// // wait some time maybe an other process will take the semaphore
- // // I know, this is absolutly dirty, but the whole convwatch is dirty and need a big cleanup.
+ // // I know, this is absolutely dirty, but the whole convwatch is dirty and need a big cleanup.
// }
}
}
diff --git a/qadevOOo/runner/helper/ConfigHelper.java b/qadevOOo/runner/helper/ConfigHelper.java
index 51cdc7e30238..60868322a2e1 100644
--- a/qadevOOo/runner/helper/ConfigHelper.java
+++ b/qadevOOo/runner/helper/ConfigHelper.java
@@ -64,7 +64,7 @@ import com.sun.star.util.*;
* <li><CODE>&lt;prop oor:name=&quot;UserItem&quot;&gt;</CODE>
* represents a <CODE>property</CODE> of the extensible group</LI>
* </UL>
- * We assume in the following examples the existance of:<P>
+ * We assume in the following examples the existence of:<P>
* <CODE>ConfigHelper aConfig = new ConfigHelper(xMSF, "org.openoffice.Office.Views", false);</CODE>
* <ul>
* <li>If you like to insert a new <CODE>Group</CODE> into the <CODE>Set</CODE> "Windows":<p>
@@ -254,7 +254,7 @@ public class ConfigHelper
/**
* Update a property of a group container of a set container
- * @param setName the name of the <CODE>set</CODE> which containes the <CODE>group</CODE>
+ * @param setName the name of the <CODE>set</CODE> which contains the <CODE>group</CODE>
* @param groupName the name of the <CODE>group</CODE> which property should be changed
* @param propName the name of the property which should be changed
* @param propValue the value the property should get
@@ -291,7 +291,7 @@ public class ConfigHelper
/**
* Insert a property in an extensible group container or else update it
- * @param setName the name of the <CODE>set</CODE> which containes the <CODE>group</CODE>
+ * @param setName the name of the <CODE>set</CODE> which contains the <CODE>group</CODE>
* @param group The name of the <CODE>group</CODE> which conatins the <CODE>extensible group</CODE>.
* @param extGroup The name of the <CODE>extensible group</CODE> which
* [should] contain the property
diff --git a/qadevOOo/runner/helper/ContextMenuInterceptor.java b/qadevOOo/runner/helper/ContextMenuInterceptor.java
index beaa35720a60..566119e54161 100644
--- a/qadevOOo/runner/helper/ContextMenuInterceptor.java
+++ b/qadevOOo/runner/helper/ContextMenuInterceptor.java
@@ -126,7 +126,7 @@ public class ContextMenuInterceptor implements XContextMenuInterceptor {
// do something useful
// we used an invalid index for accessing a container
} catch ( Exception ex ) {
- // something strange has happend!
+ // something strange has happened!
} catch ( Throwable ex ) {
// catch java exceptions and do something useful
}
diff --git a/qadevOOo/runner/helper/LoggingThread.java b/qadevOOo/runner/helper/LoggingThread.java
index 73708b6ecb76..075713c8127b 100644
--- a/qadevOOo/runner/helper/LoggingThread.java
+++ b/qadevOOo/runner/helper/LoggingThread.java
@@ -29,7 +29,7 @@ import util.PropertyName;
import util.utils;
/**
- * This class is printing to a <CODE>LogWriter</CODE>. This could be usefull if a UNO-API
+ * This class is printing to a <CODE>LogWriter</CODE>. This could be useful if a UNO-API
* function runns longer the the time out. To avoid the assumption of death applikation
* a simple string is logged for 100 times of time out.</br>
* Example:</br>
diff --git a/qadevOOo/runner/helper/OfficeProvider.java b/qadevOOo/runner/helper/OfficeProvider.java
index 2ecee532a87d..31e2ba37165c 100644
--- a/qadevOOo/runner/helper/OfficeProvider.java
+++ b/qadevOOo/runner/helper/OfficeProvider.java
@@ -58,7 +58,7 @@ public class OfficeProvider implements AppProvider
private static boolean debug = false;
/**
- * copy the user layer to a safe place, usualy to $TMP/user_backup$USER
+ * copy the user layer to a safe place, usually to $TMP/user_backup$USER
* @param param
* @param msf
*/
@@ -182,7 +182,7 @@ public class OfficeProvider implements AppProvider
// be usesfull to restart the office if possible and continuing the tests.
// Example: The UNO-API-Tests in the projects will be executed by calling
// 'damke'. This connects to an existing office. If the office crashes
- // it is usefull to restart the office and continuing the tests.
+ // it is useful to restart the office and continuing the tests.
if ((param.getBool(util.PropertyName.AUTO_RESTART)) && (msf != null))
{
makeAppExecCommand(msf, param);
diff --git a/qadevOOo/runner/helper/ProcessHandler.java b/qadevOOo/runner/helper/ProcessHandler.java
index 13ea5ca30cde..b4949edb12d0 100644
--- a/qadevOOo/runner/helper/ProcessHandler.java
+++ b/qadevOOo/runner/helper/ProcessHandler.java
@@ -97,7 +97,7 @@ class Pump extends Thread
}
catch (java.io.IOException e)
{
- log.println(pref + "Exception occured: " + e);
+ log.println(pref + "Exception occurred: " + e);
}
}
@@ -793,7 +793,7 @@ public class ProcessHandler
*
* The method can also be called before the command
* starts its execution. Then the text is buffered
- * and transfered to command when it will be started.
+ * and transferred to command when it will be started.
* @param str
*/
public void printInputText(String str)
diff --git a/qadevOOo/runner/helper/PropertyHandlerImpl.java b/qadevOOo/runner/helper/PropertyHandlerImpl.java
index c5a108542bfc..876f27a5a5c7 100644
--- a/qadevOOo/runner/helper/PropertyHandlerImpl.java
+++ b/qadevOOo/runner/helper/PropertyHandlerImpl.java
@@ -47,7 +47,7 @@ public class PropertyHandlerImpl implements XPropertyHandler{
* @param FirstTimeInit If true , the method is called for the first-time update of the respective property, that is, when the property browser is just initializing with the properties of the introspected object.
* If false , there was a real ::com::sun::star::beans::XPropertyChangeListener::propertyChange event which triggered the call.
*
- * In some cases it may be necessary to differentiate between both situations. For instance, if you want to set the value of another property when an actuating property's value changed, you should definately not do this when FirstTimeInit is true .
+ * In some cases it may be necessary to differentiate between both situations. For instance, if you want to set the value of another property when an actuating property's value changed, you should definitely not do this when FirstTimeInit is true .
* @throws com.sun.star.lang.NullPointerException ::com::sun::star::lang::NullPointerException if InspectorUI is NULL
*/
public void actuatingPropertyChanged(
diff --git a/qadevOOo/runner/helper/StreamSimulator.java b/qadevOOo/runner/helper/StreamSimulator.java
index 3e73d8cff00e..34a854791012 100644
--- a/qadevOOo/runner/helper/StreamSimulator.java
+++ b/qadevOOo/runner/helper/StreamSimulator.java
@@ -81,7 +81,7 @@ public class StreamSimulator implements com.sun.star.io.XInputStream ,
*
* @throw com.sun.star.io.NotConnectedException
* in case the internal streams to the file on disk couldn't established.
- * They are neccessary. Otherwhise this simulator can't realy work.
+ * They are necessary. Otherwise this simulator can't really work.
*/
public StreamSimulator( String sFileName , boolean bInput ,
lib.TestParameters param ) throws com.sun.star.io.NotConnectedException
@@ -134,7 +134,7 @@ public class StreamSimulator implements com.sun.star.io.XInputStream ,
/**
* following methods simulates the XInputStream.
* The notice all actions inside the internal protocol
- * and try to map all neccessary functions to the internal
+ * and try to map all necessary functions to the internal
* open in-stream.
*/
public int readBytes( /*OUT*/ byte[][] lData ,
@@ -314,7 +314,7 @@ public class StreamSimulator implements com.sun.star.io.XInputStream ,
/**
* following methods simulates the XOutputStream.
* The notice all actions inside the internal protocol
- * and try to map all neccessary functions to the internal
+ * and try to map all necessary functions to the internal
* open out-stream.
*/
public void writeBytes( /*IN*/byte[] lData ) throws com.sun.star.io.NotConnectedException ,
@@ -417,7 +417,7 @@ public class StreamSimulator implements com.sun.star.io.XInputStream ,
/**
* following methods simulates the XSeekable.
* The notice all actions inside the internal protocol
- * and try to map all neccessary functions to the internal
+ * and try to map all necessary functions to the internal
* open stream.
*/
public void seek( /*IN*/long nLocation ) throws com.sun.star.lang.IllegalArgumentException,
diff --git a/qadevOOo/runner/helper/URLHelper.java b/qadevOOo/runner/helper/URLHelper.java
index c7dec7cd183c..d8d7fa718dfa 100644
--- a/qadevOOo/runner/helper/URLHelper.java
+++ b/qadevOOo/runner/helper/URLHelper.java
@@ -39,7 +39,7 @@ import java.util.Enumeration;
/**
* It collects some static helper functons to handle URLs.
- * Sometimes it's neccessary to convert URL from/to system pathes.
+ * Sometimes it's necessary to convert URL from/to system paths.
* Or from string to strutural notations (e.g. com.sun.star.util.URL).
* And sometimes java had another notation then the office it has.
*
@@ -50,7 +50,7 @@ public class URLHelper
/**
* Because the office need URLs for loading/saving documents
- * we must convert used system pathes.
+ * we must convert used system paths.
* And java use another notation for file URLs ... correct it.
*
* @param aSystemPath
@@ -92,7 +92,7 @@ public class URLHelper
/**
* The same as getFileURLFromSystemPath() before but uses string parameter instead
- * of a File type. It exist to supress converting of neccessary parameters in the
+ * of a File type. It exists to suppress converting of necessary parameters in the
* outside code. But of course getFileURLFromSystemPath(File) will be a little bit faster
* then this method ...
*
@@ -157,7 +157,7 @@ public class URLHelper
/**
* The same as getURLWithProtocolFromSystemPath() before but uses string parameter instead
- * of a File types. It exist to supress converting of neccessary parameters in the
+ * of a File types. It exists to suppress converting of necessary parameters in the
* outside code. But of course getURLWithProtocolFromSystemPath(File,File,String) will be
* a little bit faster then this method ...
*
@@ -247,7 +247,7 @@ public class URLHelper
*
* @return [Vector]
* a filtered list of java File objects of all available files of the start dir
- * and all accessable sub directories.
+ * and all accessible subdirectories.
*/
public static Vector getSystemFilesFromDir(String sStartDir)
{
diff --git a/qadevOOo/runner/lib/MultiMethodTest.java b/qadevOOo/runner/lib/MultiMethodTest.java
index 475a413bc6c1..43f6e3723fbf 100644
--- a/qadevOOo/runner/lib/MultiMethodTest.java
+++ b/qadevOOo/runner/lib/MultiMethodTest.java
@@ -55,7 +55,7 @@ import stats.Summarizer;
* 3. to set status for a call 'tRes.tested(String method,
* boolean result)' should be used. For example 'tRes.tested("getText()",
* true)'. Also 'tRes.assert(String assertion, boolean result)' call can
- * be used. Note, that one can call the methods not neccesarily from the
+ * be used. Note, that one can call the methods not necessarily from the
* test for the tested method, but from other method tests too (in the
* MultiMethodTest subclass). See also TestResult and MultiMethodTest.tRes
* documentation.
diff --git a/qadevOOo/runner/lib/MultiPropertyTest.java b/qadevOOo/runner/lib/MultiPropertyTest.java
index ab6120b8a628..e3740440c048 100644
--- a/qadevOOo/runner/lib/MultiPropertyTest.java
+++ b/qadevOOo/runner/lib/MultiPropertyTest.java
@@ -249,7 +249,7 @@ public class MultiPropertyTest extends MultiMethodTest
}
catch (Exception e)
{
- log.println("Exception occured while testing property '" + propName + "'");
+ log.println("Exception occurred while testing property '" + propName + "'");
e.printStackTrace(log);
tRes.tested(propName, false);
}
@@ -473,7 +473,7 @@ public class MultiPropertyTest extends MultiMethodTest
* The method compares obj1 and obj2. It calls
* MultiPropertyTest.compare, but subclasses can override to change
* the behaviour, since normally compare calls Object.equals method
- * which is not apropriate in some cases(e.g., structs with equals
+ * which is not appropriate in some cases(e.g., structs with equals
* not overridden).
*/
protected boolean compare(Object obj1, Object obj2)
diff --git a/qadevOOo/runner/lib/Status.java b/qadevOOo/runner/lib/Status.java
index 46af7202e56e..f11c1dcf70d2 100644
--- a/qadevOOo/runner/lib/Status.java
+++ b/qadevOOo/runner/lib/Status.java
@@ -27,7 +27,7 @@ package lib;
* Status represents a result of a testing activity performed. The result is
* described in two ways: state and runtime state. The state describes if the
* activity was successful (OK state) or not (FAILED state). The runtime state
- * describes what happend during the activity: the test can be:
+ * describes what happened during the activity: the test can be:
* - PASSED - the activity completed normally (although it can complete with
* FAILED state)
* - SKIPPED - the activity was not performed because of a reason (it also can
diff --git a/qadevOOo/runner/lib/TestParameters.java b/qadevOOo/runner/lib/TestParameters.java
index 8d0fe1ae617e..8892d5aa1466 100644
--- a/qadevOOo/runner/lib/TestParameters.java
+++ b/qadevOOo/runner/lib/TestParameters.java
@@ -69,7 +69,7 @@ public class TestParameters extends Hashtable {
/**
* If this parameter is <CODE>true</CODE> the <CODE>OfficeProvider</CODE> tries
* to get the URL to the binary of the office and to fill the
- * <CODE>AppExecutionCommand</CODE> with usefull content if needet
+ * <CODE>AppExecutionCommand</CODE> with useful content if needet
*/
public boolean AutoRestart = false;
diff --git a/qadevOOo/runner/org/openoffice/Runner.java b/qadevOOo/runner/org/openoffice/Runner.java
index 84b325eec875..621af9a5a272 100644
--- a/qadevOOo/runner/org/openoffice/Runner.java
+++ b/qadevOOo/runner/org/openoffice/Runner.java
@@ -220,7 +220,7 @@ public class Runner
{
System.out.println("==========================================================================");
System.out.println("No TestJob given, please make sure that you ");
- System.out.println("a.) called the OOoRunner with the paramter -o <job> or -sce <scenarioFile>");
+ System.out.println("a.) called the OOoRunner with the parameter -o <job> or -sce <scenarioFile>");
System.out.println("or");
System.out.println("b.) have an entry called TestJob in your used properties file");
System.out.println("==========================================================================");
diff --git a/qadevOOo/runner/share/DescEntry.java b/qadevOOo/runner/share/DescEntry.java
index f66d3fd5170d..5be768ddf54b 100644
--- a/qadevOOo/runner/share/DescEntry.java
+++ b/qadevOOo/runner/share/DescEntry.java
@@ -69,7 +69,7 @@ public class DescEntry {
public String ErrorMsg;
/**
- * Contains information if errors occured while gaining the Description
+ * Contains information if errors occurred while gaining the Description
*/
public boolean hasErrorMsg;
diff --git a/qadevOOo/runner/share/LogWriter.java b/qadevOOo/runner/share/LogWriter.java
index cd41417d14ac..c66f106888ea 100644
--- a/qadevOOo/runner/share/LogWriter.java
+++ b/qadevOOo/runner/share/LogWriter.java
@@ -54,7 +54,7 @@ public interface LogWriter {
/**
* Set a <CODE>Watcher</CODE> to the <CODE>LogWriter</CODE>
- * This is usefull if a test starts a new office instance by itself. In this cases
+ * This is useful if a test starts a new office instance by itself. In this cases
* the <CODE>LogWritter</CODE> could retrigger the <CODE>Watcher</CODE>
* @see share.Watcher
* @param watcher the new <CODE>Watcher</CODE>
diff --git a/qadevOOo/runner/stats/SQLExecution.java b/qadevOOo/runner/stats/SQLExecution.java
index d8c9ce6b55d8..9c2e4fbcbc24 100644
--- a/qadevOOo/runner/stats/SQLExecution.java
+++ b/qadevOOo/runner/stats/SQLExecution.java
@@ -77,7 +77,7 @@ public class SQLExecution {
/**
* Open a connection to the DataBase
- * @return True, if no error occured.
+ * @return True, if no error occurred.
*/
public boolean openConnection() {
if(m_bConnectionOpen) return true;
@@ -104,7 +104,7 @@ public class SQLExecution {
/**
* Close the connection to the DataBase
- * @return True, if no error occured.
+ * @return True, if no error occurred.
*/
public boolean closeConnection() {
if (!m_bConnectionOpen) return true;
@@ -126,7 +126,7 @@ public class SQLExecution {
* @param command The command to execute.
* @param sqlInput Input values for the command.
* @param sqlOutput The results of the command are put in this Hashtable.
- * @return True, if no error occured.
+ * @return True, if no error occurred.
*/
public boolean executeSQLCommand(String command, Hashtable sqlInput, Hashtable sqlOutput)
throws IllegalArgumentException {
@@ -140,7 +140,7 @@ public class SQLExecution {
* @param sqlOutput The results of the command are put in this Hashtable.
* @param mergeOutputIntoInput The output of the result is put into the
* sqlInput Hashtable.
- * @return True, if no error occured.
+ * @return True, if no error occurred.
*/
public boolean executeSQLCommand(String command, Hashtable sqlInput, Hashtable sqlOutput, boolean mergeOutputIntoInput)
throws IllegalArgumentException {
@@ -156,7 +156,7 @@ public class SQLExecution {
Vector sqlCommand = new Vector();
sqlCommand.add("");
boolean update = false;
- // synchronize all "$varname" occurences in the command string with
+ // synchronize all "$varname" occurrences in the command string with
// values from input
StringTokenizer token = new StringTokenizer(command, " ");
while (token.hasMoreTokens()) {
diff --git a/qadevOOo/runner/util/CalcTools.java b/qadevOOo/runner/util/CalcTools.java
index 0baa7e937938..f373d4238132 100644
--- a/qadevOOo/runner/util/CalcTools.java
+++ b/qadevOOo/runner/util/CalcTools.java
@@ -39,7 +39,7 @@ import com.sun.star.uno.Type;
import com.sun.star.uno.UnoRuntime;
/**
- * This class contains some usefull mathods to handle Calc documents
+ * This class contains some useful mathods to handle Calc documents
* and its sheets.
*/
public class CalcTools {
@@ -47,7 +47,7 @@ public class CalcTools {
/**
* fills a range of a calc sheet with computed data of type
* <CODE>Double</CODE>.
- * @param xSheetDoc the Clac documents wich should be filled
+ * @param xSheetDoc the Clac documents which should be filled
* @param sheetNumber the number of the sheet of <CODE>xSheetDoc</CODE>
* @param startCellX the cell number of the X start point (row) of the range to fill
* @param startCellY the cell number of the Y start point (column) of the range to fill
@@ -112,7 +112,7 @@ public class CalcTools {
/**
*
* returns an <CODE>XSpreadsheet</CODE> from a Calc document.
- * @param xSheetDoc the Calc docuent which containes the sheet
+ * @param xSheetDoc the Calc docuent which contains the sheet
* @param sheetNumber the number of the sheet to return
* @throws java.lang.Exception on any error an <CODE>java.lang.Exception</CODE> was thrown
* @return calc sheet
diff --git a/qadevOOo/runner/util/DBTools.java b/qadevOOo/runner/util/DBTools.java
index c0c2c332163b..2dc1d08bdbcd 100644
--- a/qadevOOo/runner/util/DBTools.java
+++ b/qadevOOo/runner/util/DBTools.java
@@ -57,7 +57,7 @@ import java.sql.DriverManager;
/**
* Provides useful methods for working with SOffice databases.
-* Database creation, data transfering, outputting infromation.
+* Database creation, data transferring, outputting infromation.
*/
public class DBTools {
diff --git a/qadevOOo/runner/util/RegistryTools.java b/qadevOOo/runner/util/RegistryTools.java
index 6f0115fa7a3a..93d0e32de6cf 100644
--- a/qadevOOo/runner/util/RegistryTools.java
+++ b/qadevOOo/runner/util/RegistryTools.java
@@ -353,7 +353,7 @@ public class RegistryTools {
out.println("") ;
}
} catch (com.sun.star.uno.Exception e) {
- out.println("Exception occured : ") ;
+ out.println("Exception occurred : ") ;
e.printStackTrace(out) ;
} finally {
key.closeKey() ;
diff --git a/qadevOOo/runner/util/SOfficeFactory.java b/qadevOOo/runner/util/SOfficeFactory.java
index 4c54f7f25d26..479e8eb45089 100644
--- a/qadevOOo/runner/util/SOfficeFactory.java
+++ b/qadevOOo/runner/util/SOfficeFactory.java
@@ -430,7 +430,7 @@ public class SOfficeFactory {
}
/**
- * creates a Diagram wich specified in kind(String)
+ * creates a Diagram which specified in kind(String)
*/
public XDiagram createDiagram(XComponent oDoc, String kind) {
XInterface oInterface = null;
diff --git a/qadevOOo/runner/util/ValueChanger.java b/qadevOOo/runner/util/ValueChanger.java
index 8da6c06c4699..5d349873e0e3 100644
--- a/qadevOOo/runner/util/ValueChanger.java
+++ b/qadevOOo/runner/util/ValueChanger.java
@@ -769,7 +769,7 @@ public class ValueChanger {
}
}
} catch (Exception e) {
- System.err.println("Exception occured while changing Enumeration value:") ;
+ System.err.println("Exception occurred while changing Enumeration value:") ;
e.printStackTrace(System.err) ;
}
if (newValue == null) newValue = oldValue ;
diff --git a/qadevOOo/runner/util/ValueComparer.java b/qadevOOo/runner/util/ValueComparer.java
index f8e68c2db980..4233553f326c 100644
--- a/qadevOOo/runner/util/ValueComparer.java
+++ b/qadevOOo/runner/util/ValueComparer.java
@@ -68,7 +68,7 @@ public class ValueComparer {
}
}
catch (Exception e) {
- System.out.println("Exception occured while comparing Objects");
+ System.out.println("Exception occurred while comparing Objects");
e.printStackTrace();
}
return eq;
diff --git a/qadevOOo/runner/util/XMLTools.java b/qadevOOo/runner/util/XMLTools.java
index 3337462d0e6c..7e43dd9e175a 100644
--- a/qadevOOo/runner/util/XMLTools.java
+++ b/qadevOOo/runner/util/XMLTools.java
@@ -339,7 +339,7 @@ public class XMLTools {
/**
* Checks if there were no errors during document handling.
* I.e. startDocument() and endDocument() must be called,
- * XML must be well formed, paramters must be valid.
+ * XML must be well formed, parameters must be valid.
*/
public boolean isWellFormed() {
if (!docEnded) {
@@ -351,7 +351,7 @@ public class XMLTools {
}
/**
- * Prints error message and all tags where error occured inside.
+ * Prints error message and all tags where error occurred inside.
* Also prints "Tag trace" in case if the full XML data isn't
* printed.
*/
diff --git a/qadevOOo/runner/util/dbg.java b/qadevOOo/runner/util/dbg.java
index 5aa4eb7fe874..5a2792ee01ba 100644
--- a/qadevOOo/runner/util/dbg.java
+++ b/qadevOOo/runner/util/dbg.java
@@ -129,7 +129,7 @@ public class dbg {
}
}
catch (Exception ex) {
- System.out.println("Exception occured while printing InterfaceInfo");
+ System.out.println("Exception occurred while printing InterfaceInfo");
ex.printStackTrace();
}
}
diff --git a/qadevOOo/runner/util/utils.java b/qadevOOo/runner/util/utils.java
index f86ac4f77402..ced688759cba 100644
--- a/qadevOOo/runner/util/utils.java
+++ b/qadevOOo/runner/util/utils.java
@@ -265,7 +265,7 @@ public class utils {
public static String getOfficeUserPath(XMultiServiceFactory msf) {
String userPath = null;
- // get a folder wich is located in the user dir
+ // get a folder which is located in the user dir
try {
userPath = (String) getOfficeSettingsValue(msf, "UserConfig");
} catch (Exception e) {
@@ -374,7 +374,7 @@ public class utils {
/**
* Gets StarOffice temp directory without 'file:///' prefix.
- * For example is usefull for Registry URL specifying.
+ * For example is useful for Registry URL specifying.
* @msf Office factory for accessing its settings.
* @return SOffice temporary directory in form for example
* 'd:/Office60/user/temp/'.
@@ -463,9 +463,9 @@ public class utils {
}
/**
- * This method check via Office the existance of the given file URL
+ * This method check via Office the existence of the given file URL
* @param msf the multiservice factory
- * @param fileURL the file which existance should be checked
+ * @param fileURL the file which existence should be checked
* @return true if the file exists, else false
*/
public static boolean fileExists(XMultiServiceFactory msf, String fileURL) {
@@ -488,7 +488,7 @@ public class utils {
}
/**
- * This method deletes via office the given file URL. It checks the existance
+ * This method deletes via office the given file URL. It checks the existence
* of <CODE>fileURL</CODE>. If exists it will be deletet.
* @param xMsf the multiservice factory
* @param fileURL the file to delete
@@ -566,7 +566,7 @@ public class utils {
* file already exists, the file is deleted.
*
* @returns <code>true</code> if the file was successfully copied,
- * <code>false</code> if some errors occured (e.g. file is locked, used
+ * <code>false</code> if some errors occurred (e.g. file is locked, used
* by another process).
*/
public static boolean tryOverwriteFile(
diff --git a/qadevOOo/tests/basic/ifc/awt/XWindow/awt_XWindow.xba b/qadevOOo/tests/basic/ifc/awt/XWindow/awt_XWindow.xba
index 6fc40043b7b1..5aa240d4bc58 100644
--- a/qadevOOo/tests/basic/ifc/awt/XWindow/awt_XWindow.xba
+++ b/qadevOOo/tests/basic/ifc/awt/XWindow/awt_XWindow.xba
@@ -256,7 +256,7 @@ On Error Goto ErrHndl
Test.StartMethod("addKeyListener()")
bOK = true
- Out.Log("Not realy tested! Please see comments in Basic-Source.")
+ Out.Log("Not really tested! Please see comments in Basic-Source.")
oObj.addKeyListener(oListener5)
oObj.addKeyListener(oListener6)
bOK = bOK AND true
@@ -264,7 +264,7 @@ On Error Goto ErrHndl
Test.StartMethod("removeKeyListener()")
bOK = true
- Out.Log("Not realy tested! Please see comments in Basic-Source.")
+ Out.Log("Not really tested! Please see comments in Basic-Source.")
oObj.removeKeyListener(oListener5)
bOK = bOK AND true
oObj.removeKeyListener(oListener6)
@@ -272,7 +272,7 @@ On Error Goto ErrHndl
Test.StartMethod("addMouseListener()")
bOK = true
- Out.Log("Not realy tested! Please see comments in Basic-Source.")
+ Out.Log("Not really tested! Please see comments in Basic-Source.")
oObj.addMouseListener(oListener7)
oObj.addMouseListener(oListener8)
bOK = bOK AND true
@@ -280,7 +280,7 @@ On Error Goto ErrHndl
Test.StartMethod("removeMouseListener()")
bOK = true
- Out.Log("Not realy tested! Please see comments in Basic-Source.")
+ Out.Log("Not really tested! Please see comments in Basic-Source.")
oObj.removeMouseListener(oListener7)
bOK = bOK AND true
oObj.removeMouseListener(oListener8)
@@ -288,7 +288,7 @@ On Error Goto ErrHndl
Test.StartMethod("addMouseMotionListener()")
bOK = true
- Out.Log("Not realy tested! Please see comments in Basic-Source.")
+ Out.Log("Not really tested! Please see comments in Basic-Source.")
oObj.addMouseMotionListener(oListener9)
oObj.addMouseMotionListener(oListener10)
bOK = bOK AND true
@@ -296,7 +296,7 @@ On Error Goto ErrHndl
Test.StartMethod("removeMouseMotionListener()")
bOK = true
- Out.Log("Not realy tested! Please see comments in Basic-Source.")
+ Out.Log("Not really tested! Please see comments in Basic-Source.")
oObj.removeMouseMotionListener(oListener9)
bOK = bOK AND true
oObj.removeMouseMotionListener(oListener10)
@@ -304,7 +304,7 @@ On Error Goto ErrHndl
Test.StartMethod("addPaintListener()")
bOK = true
- Out.Log("Not realy tested! Please see comments in Basic-Source.")
+ Out.Log("Not really tested! Please see comments in Basic-Source.")
oObj.addPaintListener(oListener11)
oObj.addPaintListener(oListener12)
bOK = bOK AND true
@@ -312,7 +312,7 @@ On Error Goto ErrHndl
Test.StartMethod("removePaintListener()")
bOK = true
- Out.Log("Not realy tested! Please see comments in Basic-Source.")
+ Out.Log("Not really tested! Please see comments in Basic-Source.")
oObj.removePaintListener(oListener11)
bOK = bOK AND true
oObj.removePaintListener(oListener12)
diff --git a/qadevOOo/tests/basic/ifc/beans/XPropertyState/beans_XPropertyState.xba b/qadevOOo/tests/basic/ifc/beans/XPropertyState/beans_XPropertyState.xba
index 8e1b65dc47ac..6ab224bd2562 100644
--- a/qadevOOo/tests/basic/ifc/beans/XPropertyState/beans_XPropertyState.xba
+++ b/qadevOOo/tests/basic/ifc/beans/XPropertyState/beans_XPropertyState.xba
@@ -154,7 +154,7 @@ On Error Goto ErrHndl
bTypesEq = (oProperties(n).Type.Name = oCoreRefl.getType(aValue).Name)
end if
- if (NOT bOK) then ' exception was occured
+ if (NOT bOK) then ' exception has occurred
Out.Log("Error while testing getPropertyDefault() for '" &amp; AllPropsNames(n) &amp; "' FAILED.")
elseif ((TypeName(aValue) &lt;&gt; "Empty") AND (NOT bTypesEq)) then
Out.Log("Types: '" &amp; oProperties(n).Type.Name &amp; "' and '" &amp; oCoreRefl.getType(aValue).Name &amp; "' are different.")
diff --git a/qadevOOo/tests/basic/ifc/container/XIndexReplace/container_XIndexReplace.xba b/qadevOOo/tests/basic/ifc/container/XIndexReplace/container_XIndexReplace.xba
index 0ef9e04e80e3..e7f35a9e79f1 100644
--- a/qadevOOo/tests/basic/ifc/container/XIndexReplace/container_XIndexReplace.xba
+++ b/qadevOOo/tests/basic/ifc/container/XIndexReplace/container_XIndexReplace.xba
@@ -35,7 +35,7 @@ option explicit
' This Interface/Service test depends on the following GLOBAL variables,
' which must be specified in the object creation:
-' the Test-Object must contain two diffrent named Objects
+' the Test-Object must contain two different named Objects
' Global oIdxReplaceInstance as Object
'*************************************************************************
diff --git a/qadevOOo/tests/basic/ifc/io/XMarkableStream/io_XMarkableStream.xba b/qadevOOo/tests/basic/ifc/io/XMarkableStream/io_XMarkableStream.xba
index 0e6df75755a6..ef9f869bf328 100644
--- a/qadevOOo/tests/basic/ifc/io/XMarkableStream/io_XMarkableStream.xba
+++ b/qadevOOo/tests/basic/ifc/io/XMarkableStream/io_XMarkableStream.xba
@@ -124,7 +124,7 @@ On Error Goto ErrHndl
On Error goto ErrHndl1
Out.Log("Trying to jump to deleted mark")
oObj.jumpToMark(iMark1)
- Out.Log("No exception occured. FAILED")
+ Out.Log("No exception occurred. FAILED")
bOK = false
goto Cont1
ErrHndl1:
@@ -184,7 +184,7 @@ On Error Goto ErrHndl
On Error goto ErrHndl2
Out.Log("Trying to jump to Mark1")
oObj.jumpToMark(iMark2)
- Out.Log("No exception occured - FAILED")
+ Out.Log("No exception occurred - FAILED")
bOK = false
goto Cont2
ErrHndl2:
diff --git a/qadevOOo/tests/basic/ifc/lang/XInitialization/lang_XInitialization.xba b/qadevOOo/tests/basic/ifc/lang/XInitialization/lang_XInitialization.xba
index d0f13f4ea614..95eac406171f 100644
--- a/qadevOOo/tests/basic/ifc/lang/XInitialization/lang_XInitialization.xba
+++ b/qadevOOo/tests/basic/ifc/lang/XInitialization/lang_XInitialization.xba
@@ -37,7 +37,7 @@ option explicit
' - Global aInitArgs() As Variant
' Global aNoInit() As Variant [optional]
-' if the variable defined as Array the method initialize() isnt called.
+' if the variable defined as Array the method initialize() isn't called.
'*************************************************************************
diff --git a/qadevOOo/tests/basic/ifc/sdbc/XCloseable/sdbc_XCloseable.xba b/qadevOOo/tests/basic/ifc/sdbc/XCloseable/sdbc_XCloseable.xba
index b25cec4dd6bb..8a8333dd9dd6 100644
--- a/qadevOOo/tests/basic/ifc/sdbc/XCloseable/sdbc_XCloseable.xba
+++ b/qadevOOo/tests/basic/ifc/sdbc/XCloseable/sdbc_XCloseable.xba
@@ -67,7 +67,7 @@ ErrHndl:
resume next
ExpectErr:
- Out.Log("Proper exception occured")
+ Out.Log("Proper exception occurred")
bEx = true
resume next
End Sub
diff --git a/qadevOOo/tests/basic/ifc/sdbcx/XRowLocate/sdbcx_XRowLocate.xba b/qadevOOo/tests/basic/ifc/sdbcx/XRowLocate/sdbcx_XRowLocate.xba
index d4d4dad68408..01f299d7cd39 100644
--- a/qadevOOo/tests/basic/ifc/sdbcx/XRowLocate/sdbcx_XRowLocate.xba
+++ b/qadevOOo/tests/basic/ifc/sdbcx/XRowLocate/sdbcx_XRowLocate.xba
@@ -63,14 +63,14 @@ On Error Goto ErrHndl
cDscr2 = oObj.getString(1)
Out.Log("Now on " + cDscr2)
oObj.moveToBookmark(oBM1)
- Out.Log("After movment on " + oObj.getString(1))
+ Out.Log("After movement on " + oObj.getString(1))
bOK = bOK AND oObj.getString(1) = cDscr1
Test.MethodTested("moveToBookmark()", bOK)
Test.StartMethod("moveRelativeToBookmark()")
bOK = true
oObj.moveRelativeToBookmark(oBM1, 1)
- Out.Log("After movment on " + oObj.getString(1))
+ Out.Log("After movement on " + oObj.getString(1))
bOK = bOK AND oObj.getString(1) = cDscr2
Test.MethodTested("moveRelativeToBookmark()", bOK)
diff --git a/qadevOOo/tests/basic/ifc/text/XRelativeTextContentInsert/text_XRelativeTextContentInsert.xba b/qadevOOo/tests/basic/ifc/text/XRelativeTextContentInsert/text_XRelativeTextContentInsert.xba
index e5e814d2a723..4f8a9d1a0159 100644
--- a/qadevOOo/tests/basic/ifc/text/XRelativeTextContentInsert/text_XRelativeTextContentInsert.xba
+++ b/qadevOOo/tests/basic/ifc/text/XRelativeTextContentInsert/text_XRelativeTextContentInsert.xba
@@ -50,7 +50,7 @@ On Error Goto ErrHndl
oCursor = oObj.createTextCursor()
if (isNULL(oCursor)) then Out.Log("Can't create text cursor!")
- Out.Log("First, mark all existant entries with 0")
+ Out.Log("First, mark all existent entries with 0")
oEnum = oObj.createEnumeration()
while (oEnum.hasMoreElements())
diff --git a/qadevOOo/tests/basic/ifc/text/XTextColumns/text_XTextColumns.xba b/qadevOOo/tests/basic/ifc/text/XTextColumns/text_XTextColumns.xba
index 6717868f580b..e053fd83e7c1 100644
--- a/qadevOOo/tests/basic/ifc/text/XTextColumns/text_XTextColumns.xba
+++ b/qadevOOo/tests/basic/ifc/text/XTextColumns/text_XTextColumns.xba
@@ -84,7 +84,7 @@ On Error Goto ErrHndl
' initialize the pagestyle with the new values
oPageStyle.TextColumns = oObj
- ' check if ColumnsCount was set successfull
+ ' check if ColumnsCount was set successful
Test.StartMethod("getColumnCount()")
bOK = true
bOK = bOK AND (nCount = oPageStyle.TextColumns.ColumnCount)
diff --git a/qadevOOo/tests/basic/mod/dynamicloader.uno/Dynamic/dynamicloader_uno_Dynamic.xba b/qadevOOo/tests/basic/mod/dynamicloader.uno/Dynamic/dynamicloader_uno_Dynamic.xba
index 1662ca846718..99e3457b8205 100644
--- a/qadevOOo/tests/basic/mod/dynamicloader.uno/Dynamic/dynamicloader_uno_Dynamic.xba
+++ b/qadevOOo/tests/basic/mod/dynamicloader.uno/Dynamic/dynamicloader_uno_Dynamic.xba
@@ -32,7 +32,7 @@
option explicit
'*************************************************************************
-'!!! Doesnt currently work as service can't be instantiated.
+'!!! Doesn't currently work as service can't be instantiated.
'*************************************************************************
diff --git a/qadevOOo/tests/basic/mod/dynamicloader/Dynamic/dynamicloader_Dynamic.xba b/qadevOOo/tests/basic/mod/dynamicloader/Dynamic/dynamicloader_Dynamic.xba
index 2d9c55b266c1..5c11e06aa0b7 100644
--- a/qadevOOo/tests/basic/mod/dynamicloader/Dynamic/dynamicloader_Dynamic.xba
+++ b/qadevOOo/tests/basic/mod/dynamicloader/Dynamic/dynamicloader_Dynamic.xba
@@ -32,7 +32,7 @@
option explicit
'*************************************************************************
-'!!! Doesnt currently work as service can't be instantiated.
+'!!! Doesn't currently work as service can't be instantiated.
'*************************************************************************
diff --git a/qadevOOo/tests/basic/mod/sc/ScDDELinkObj/sc_ScDDELinkObj.xba b/qadevOOo/tests/basic/mod/sc/ScDDELinkObj/sc_ScDDELinkObj.xba
index ffa2ae6eae42..01bf30eae753 100644
--- a/qadevOOo/tests/basic/mod/sc/ScDDELinkObj/sc_ScDDELinkObj.xba
+++ b/qadevOOo/tests/basic/mod/sc/ScDDELinkObj/sc_ScDDELinkObj.xba
@@ -60,7 +60,7 @@ On Error Goto ErrHndl
DDEItem = "Sheet1.A1"
- ' This construction of 2-way convertion of testdocs location
+ ' This construction of 2-way conversion of testdocs location
' should take place here, because there is unnecessary slash at the end of
' cTestDocsDir.
DDETopic = utils.URL2Path(utils.Path2URL(cTestDocsDir &amp; "ScDDELinksObj.sdc"))
diff --git a/qadevOOo/tests/basic/mod/sc/ScDDELinksObj/sc_ScDDELinksObj.xba b/qadevOOo/tests/basic/mod/sc/ScDDELinksObj/sc_ScDDELinksObj.xba
index eea6dc68a7c9..be0c0abd35a3 100644
--- a/qadevOOo/tests/basic/mod/sc/ScDDELinksObj/sc_ScDDELinksObj.xba
+++ b/qadevOOo/tests/basic/mod/sc/ScDDELinksObj/sc_ScDDELinksObj.xba
@@ -51,7 +51,7 @@ On Error Goto ErrHndl
oTestDoc = utils.loadTestDocument("ScDDELinksObj.sdc")
- ' This construction of 2-way convertion of testdocs location
+ ' This construction of 2-way conversion of testdocs location
' should take place here, because there is unnecessary slash at the end of
' cTestDocsDir.
testDoc = utils.URL2Path(utils.Path2URL(cTestDocsDir &amp; "ScDDELinksObj.sdc"))
diff --git a/qadevOOo/tests/basic/mod/sc/ScIndexEnumeration_DDELinksEnumeration/sc_ScIndexEnumeration_DDELinksEnumeration.xba b/qadevOOo/tests/basic/mod/sc/ScIndexEnumeration_DDELinksEnumeration/sc_ScIndexEnumeration_DDELinksEnumeration.xba
index fc57bcf9910e..ba5847c7ab3f 100644
--- a/qadevOOo/tests/basic/mod/sc/ScIndexEnumeration_DDELinksEnumeration/sc_ScIndexEnumeration_DDELinksEnumeration.xba
+++ b/qadevOOo/tests/basic/mod/sc/ScIndexEnumeration_DDELinksEnumeration/sc_ScIndexEnumeration_DDELinksEnumeration.xba
@@ -49,7 +49,7 @@ On Error Goto ErrHndl
oTestDoc = utils.loadTestDocument("ScDDELinksObj.sdc")
- ' This construction of 2-way convertion of testdocs location
+ ' This construction of 2-way conversion of testdocs location
' should take place here, because there is unnecessary slash at the end of
' cTestDocsDir.
testDoc = utils.URL2Path(utils.Path2URL(cTestDocsDir &amp; "ScDDELinksObj.sdc"))
diff --git a/qadevOOo/tests/java/ifc/accessibility/_XAccessibleComponent.java b/qadevOOo/tests/java/ifc/accessibility/_XAccessibleComponent.java
index 1883085b9e45..5e42673d54b6 100644
--- a/qadevOOo/tests/java/ifc/accessibility/_XAccessibleComponent.java
+++ b/qadevOOo/tests/java/ifc/accessibility/_XAccessibleComponent.java
@@ -495,7 +495,7 @@ public class _XAccessibleComponent extends MultiMethodTest {
/**
* Just calls the method. <p>
*
- * Has <b> OK </b> status if no runtime exceptions occured.
+ * Has <b> OK </b> status if no runtime exceptions occurred.
*/
public void _grabFocus() {
boolean result = true;
@@ -509,7 +509,7 @@ public class _XAccessibleComponent extends MultiMethodTest {
* component which support <code>XAccessibleComponent</code>.
*
* @return The array of children. Empty array returned if
- * such children were not found or some error occured.
+ * such children were not found or some error occurred.
*/
private XAccessibleComponent[] getChildrenComponents() {
XAccessible xAcc = (XAccessible) UnoRuntime.queryInterface(
@@ -555,7 +555,7 @@ public class _XAccessibleComponent extends MultiMethodTest {
* <code>XAccessibleComponent</code>.
*
* @return The parent or <code>null</code> if the component
- * has no parent or some errors occured.
+ * has no parent or some errors occurred.
*/
private XAccessibleComponent getParentComponent() {
XAccessible xAcc = (XAccessible) UnoRuntime.queryInterface(
diff --git a/qadevOOo/tests/java/ifc/awt/_XButton.java b/qadevOOo/tests/java/ifc/awt/_XButton.java
index 9d1ebb0221e0..8a4bfdc3c97e 100644
--- a/qadevOOo/tests/java/ifc/awt/_XButton.java
+++ b/qadevOOo/tests/java/ifc/awt/_XButton.java
@@ -87,7 +87,7 @@ public class _XButton extends MultiMethodTest {
/**
* Just sets some text for label. <p>
- * Has <b> OK </b> status if no runtime exceptions occured
+ * Has <b> OK </b> status if no runtime exceptions occurred
*/
public void _setLabel() {
@@ -99,7 +99,7 @@ public class _XButton extends MultiMethodTest {
/**
* Just sets some command for button. <p>
- * Has <b> OK </b> status if no runtime exceptions occured
+ * Has <b> OK </b> status if no runtime exceptions occurred
*/
public void _setActionCommand() {
diff --git a/qadevOOo/tests/java/ifc/awt/_XComboBox.java b/qadevOOo/tests/java/ifc/awt/_XComboBox.java
index 249c2eecebd6..02764ce5878c 100644
--- a/qadevOOo/tests/java/ifc/awt/_XComboBox.java
+++ b/qadevOOo/tests/java/ifc/awt/_XComboBox.java
@@ -251,7 +251,7 @@ public class _XComboBox extends MultiMethodTest {
/**
* Gets line count and stores it. <p>
- * Has <b>OK</b> status if no runtime exceptions occured.
+ * Has <b>OK</b> status if no runtime exceptions occurred.
*/
public void _getDropDownLineCount() {
diff --git a/qadevOOo/tests/java/ifc/awt/_XCurrencyField.java b/qadevOOo/tests/java/ifc/awt/_XCurrencyField.java
index 12203f993d77..c6a730a59665 100644
--- a/qadevOOo/tests/java/ifc/awt/_XCurrencyField.java
+++ b/qadevOOo/tests/java/ifc/awt/_XCurrencyField.java
@@ -81,7 +81,7 @@ public class _XCurrencyField extends MultiMethodTest {
/**
* Just calls the method and stores value returned. <p>
- * Has <b>OK</b> status if no runtime exceptions occured.
+ * Has <b>OK</b> status if no runtime exceptions occurred.
*/
public void _getValue() {
val = oObj.getValue();
@@ -107,7 +107,7 @@ public class _XCurrencyField extends MultiMethodTest {
/**
* Just calls the method and stores value returned. <p>
- * Has <b>OK</b> status if no runtime exceptions occured.
+ * Has <b>OK</b> status if no runtime exceptions occurred.
*/
public void _getMin() {
@@ -137,7 +137,7 @@ public class _XCurrencyField extends MultiMethodTest {
/**
* Just calls the method and stores value returned. <p>
- * Has <b>OK</b> status if no runtime exceptions occured.
+ * Has <b>OK</b> status if no runtime exceptions occurred.
*/
public void _getMax() {
@@ -168,7 +168,7 @@ public class _XCurrencyField extends MultiMethodTest {
/**
* Just calls the method and stores value returned. <p>
- * Has <b>OK</b> status if no runtime exceptions occured.
+ * Has <b>OK</b> status if no runtime exceptions occurred.
*/
public void _getFirst() {
@@ -200,7 +200,7 @@ public class _XCurrencyField extends MultiMethodTest {
/**
* Just calls the method and stores value returned. <p>
- * Has <b>OK</b> status if no runtime exceptions occured.
+ * Has <b>OK</b> status if no runtime exceptions occurred.
*/
public void _getLast() {
@@ -230,7 +230,7 @@ public class _XCurrencyField extends MultiMethodTest {
/**
* Just calls the method and stores value returned. <p>
- * Has <b>OK</b> status if no runtime exceptions occured.
+ * Has <b>OK</b> status if no runtime exceptions occurred.
*/
public void _getSpinSize() {
@@ -262,7 +262,7 @@ public class _XCurrencyField extends MultiMethodTest {
/**
* Just calls the method and stores value returned. <p>
- * Has <b>OK</b> status if no runtime exceptions occured.
+ * Has <b>OK</b> status if no runtime exceptions occurred.
*/
public void _getDecimalDigits() {
@@ -292,7 +292,7 @@ public class _XCurrencyField extends MultiMethodTest {
/**
* Just calls the method and stores value returned. <p>
- * Has <b>OK</b> status if no runtime exceptions occured.
+ * Has <b>OK</b> status if no runtime exceptions occurred.
*/
public void _isStrictFormat() {
diff --git a/qadevOOo/tests/java/ifc/awt/_XDateField.java b/qadevOOo/tests/java/ifc/awt/_XDateField.java
index d134a413590b..ee424d1170b0 100644
--- a/qadevOOo/tests/java/ifc/awt/_XDateField.java
+++ b/qadevOOo/tests/java/ifc/awt/_XDateField.java
@@ -84,7 +84,7 @@ public class _XDateField extends MultiMethodTest {
/**
* Gets the current value. <p>
- * Has <b> OK </b> status if no runtime exceptions occured
+ * Has <b> OK </b> status if no runtime exceptions occurred
*/
public void _getDate() {
@@ -114,7 +114,7 @@ public class _XDateField extends MultiMethodTest {
/**
* Gets the current value. <p>
- * Has <b> OK </b> status if no runtime exceptions occured
+ * Has <b> OK </b> status if no runtime exceptions occurred
*/
public void _getMin() {
@@ -144,7 +144,7 @@ public class _XDateField extends MultiMethodTest {
/**
* Gets the current value. <p>
- * Has <b> OK </b> status if no runtime exceptions occured
+ * Has <b> OK </b> status if no runtime exceptions occurred
*/
public void _getMax() {
@@ -178,7 +178,7 @@ public class _XDateField extends MultiMethodTest {
/**
* Gets the current value. <p>
- * Has <b> OK </b> status if no runtime exceptions occured
+ * Has <b> OK </b> status if no runtime exceptions occurred
*/
public void _getFirst() {
@@ -214,7 +214,7 @@ public class _XDateField extends MultiMethodTest {
/**
* Gets the current value. <p>
- * Has <b> OK </b> status if no runtime exceptions occured
+ * Has <b> OK </b> status if no runtime exceptions occurred
*/
public void _getLast() {
@@ -228,7 +228,7 @@ public class _XDateField extends MultiMethodTest {
/**
* Sets the value to empty. <p>
- * Has <b> OK </b> status if no runtime exceptions occured
+ * Has <b> OK </b> status if no runtime exceptions occurred
* The following method tests are to be completed successfully before :
* <ul>
* <li> <code> setTime </code> : value must be not empty </li>
@@ -286,7 +286,7 @@ public class _XDateField extends MultiMethodTest {
/**
* Gets strict state and stores it. <p>
- * Has <b> OK </b> status if no runtime exceptions occured.
+ * Has <b> OK </b> status if no runtime exceptions occurred.
*/
public void _isStrictFormat() {
@@ -322,7 +322,7 @@ public class _XDateField extends MultiMethodTest {
/**
* Gets long format state and stores it. <p>
- * Has <b> OK </b> status if no runtime exceptions occured.
+ * Has <b> OK </b> status if no runtime exceptions occurred.
*/
public void _isLongFormat() {
diff --git a/qadevOOo/tests/java/ifc/awt/_XDialog.java b/qadevOOo/tests/java/ifc/awt/_XDialog.java
index 33a170264dd7..08d09e15e941 100644
--- a/qadevOOo/tests/java/ifc/awt/_XDialog.java
+++ b/qadevOOo/tests/java/ifc/awt/_XDialog.java
@@ -89,7 +89,7 @@ public class _XDialog extends MultiMethodTest {
* As this call is blocking then the thread execution
* must not be finished. <p>
* Has <b>OK</b> status if thread wasn't finished and
- * no exceptions occured.
+ * no exceptions occurred.
*/
public void _execute() {
boolean result = true ;
diff --git a/qadevOOo/tests/java/ifc/awt/_XFixedText.java b/qadevOOo/tests/java/ifc/awt/_XFixedText.java
index 9e67b52f35d5..4cad536e27f6 100644
--- a/qadevOOo/tests/java/ifc/awt/_XFixedText.java
+++ b/qadevOOo/tests/java/ifc/awt/_XFixedText.java
@@ -67,7 +67,7 @@ public class _XFixedText extends MultiMethodTest {
/**
* Just calls the method and stores value returned. <p>
- * Has <b>OK</b> status if no runtime exceptions occured.
+ * Has <b>OK</b> status if no runtime exceptions occurred.
*/
public void _getText() {
@@ -101,7 +101,7 @@ public class _XFixedText extends MultiMethodTest {
/**
* Just calls the method and stores value returned. <p>
- * Has <b>OK</b> status if no runtime exceptions occured.
+ * Has <b>OK</b> status if no runtime exceptions occurred.
*/
public void _getAlignment() {
diff --git a/qadevOOo/tests/java/ifc/awt/_XImageConsumer.java b/qadevOOo/tests/java/ifc/awt/_XImageConsumer.java
index a226270207ff..d7f135dcd6f8 100644
--- a/qadevOOo/tests/java/ifc/awt/_XImageConsumer.java
+++ b/qadevOOo/tests/java/ifc/awt/_XImageConsumer.java
@@ -48,7 +48,7 @@ public class _XImageConsumer extends MultiMethodTest {
/**
* Initialize the consumer with size 2x2. <p>
- * Has <b> OK </b> status if no runtime exceptions occured
+ * Has <b> OK </b> status if no runtime exceptions occurred
*/
public void _init() {
@@ -60,7 +60,7 @@ public class _XImageConsumer extends MultiMethodTest {
/**
* Sets color model. <p>
- * Has <b> OK </b> status if no runtime exceptions occured
+ * Has <b> OK </b> status if no runtime exceptions occurred
* The following method tests are to be completed successfully before :
* <ul>
* <li> <code> init </code> </li>
@@ -79,7 +79,7 @@ public class _XImageConsumer extends MultiMethodTest {
/**
* Fill the picture with for pixels. <p>
- * Has <b> OK </b> status if no runtime exceptions occured
+ * Has <b> OK </b> status if no runtime exceptions occurred
* The following method tests are to be executed before :
* <ul>
* <li> <code> setColorModel </code> </li>
@@ -97,7 +97,7 @@ public class _XImageConsumer extends MultiMethodTest {
/**
* Fill the picture with for pixels. <p>
- * Has <b> OK </b> status if no runtime exceptions occured
+ * Has <b> OK </b> status if no runtime exceptions occurred
* The following method tests are to be executed before :
* <ul>
* <li> <code> setColorModel </code> </li>
@@ -114,7 +114,7 @@ public class _XImageConsumer extends MultiMethodTest {
/**
* Just calls the method. <p>
- * Has <b> OK </b> status if no runtime exceptions occured
+ * Has <b> OK </b> status if no runtime exceptions occurred
* The following method tests are to be completed successfully before :
* <ul>
* <li> <code> init </code> </li>
diff --git a/qadevOOo/tests/java/ifc/awt/_XImageProducer.java b/qadevOOo/tests/java/ifc/awt/_XImageProducer.java
index d624888a32bf..85b58300f22c 100644
--- a/qadevOOo/tests/java/ifc/awt/_XImageProducer.java
+++ b/qadevOOo/tests/java/ifc/awt/_XImageProducer.java
@@ -106,7 +106,7 @@ public class _XImageProducer extends MultiMethodTest {
/**
* Adds a new consumer to producer. <p>
- * Has <b> OK </b> status if no runtime exceptions occured
+ * Has <b> OK </b> status if no runtime exceptions occurred
*/
public void _addConsumer() {
@@ -118,7 +118,7 @@ public class _XImageProducer extends MultiMethodTest {
/**
* Removes the consumer added before. <p>
- * Has <b> OK </b> status if no runtime exceptions occured
+ * Has <b> OK </b> status if no runtime exceptions occurred
* The following method tests are to be executed before :
* <ul>
* <li> <code> startProduction </code> </li>
diff --git a/qadevOOo/tests/java/ifc/awt/_XListBox.java b/qadevOOo/tests/java/ifc/awt/_XListBox.java
index 192741acfa55..80c46df2c0b3 100644
--- a/qadevOOo/tests/java/ifc/awt/_XListBox.java
+++ b/qadevOOo/tests/java/ifc/awt/_XListBox.java
@@ -275,7 +275,7 @@ public class _XListBox extends MultiMethodTest {
/**
* Gets line count and stores it. <p>
- * Has <b>OK</b> status if no runtime exceptions occured.
+ * Has <b>OK</b> status if no runtime exceptions occurred.
*/
public void _getDropDownLineCount() {
@@ -407,7 +407,7 @@ public class _XListBox extends MultiMethodTest {
/**
* Unselects all items, then selects a single item. <p>
- * Has <b> OK </b> status if no runtime exceptions occured
+ * Has <b> OK </b> status if no runtime exceptions occurred
* The following method tests are to be completed successfully before :
* <ul>
* <li> <code> addItems </code> : to have some items </li>
@@ -428,7 +428,7 @@ public class _XListBox extends MultiMethodTest {
/**
* Just selects some items. <p>
- * Has <b> OK </b> status if no runtime exceptions occured
+ * Has <b> OK </b> status if no runtime exceptions occurred
* The following method tests are to be completed successfully before :
* <ul>
* <li> <code> addItems </code> : to have some items </li>
@@ -446,7 +446,7 @@ public class _XListBox extends MultiMethodTest {
/**
* Just selects an item. <p>
- * Has <b> OK </b> status if no runtime exceptions occured
+ * Has <b> OK </b> status if no runtime exceptions occurred
* The following method tests are to be completed successfully before :
* <ul>
* <li> <code> addItems </code> : to have some items </li>
@@ -480,7 +480,7 @@ public class _XListBox extends MultiMethodTest {
/**
* Sets multiple mode. <p>
- * Has <b> OK </b> status if no runtime exceptions occured
+ * Has <b> OK </b> status if no runtime exceptions occurred
*/
public void _setMultipleMode() {
@@ -492,7 +492,7 @@ public class _XListBox extends MultiMethodTest {
/**
* Just calls the method to make visible third item. <p>
- * Has <b> OK </b> status if no runtime exceptions occured.<p>
+ * Has <b> OK </b> status if no runtime exceptions occurred.<p>
* The following method tests are to be completed successfully before :
* <ul>
* <li> <code> addItems </code> </li>
diff --git a/qadevOOo/tests/java/ifc/awt/_XNumericField.java b/qadevOOo/tests/java/ifc/awt/_XNumericField.java
index 768d08aa3828..59284520519c 100644
--- a/qadevOOo/tests/java/ifc/awt/_XNumericField.java
+++ b/qadevOOo/tests/java/ifc/awt/_XNumericField.java
@@ -82,7 +82,7 @@ public class _XNumericField extends MultiMethodTest {
/**
* Just calls the method and stores value returned. <p>
- * Has <b>OK</b> status if no runtime exceptions occured.
+ * Has <b>OK</b> status if no runtime exceptions occurred.
*/
public void _getValue() {
val = oObj.getValue() ;
@@ -108,7 +108,7 @@ public class _XNumericField extends MultiMethodTest {
/**
* Just calls the method and stores value returned. <p>
- * Has <b>OK</b> status if no runtime exceptions occured.
+ * Has <b>OK</b> status if no runtime exceptions occurred.
*/
public void _getMin() {
@@ -138,7 +138,7 @@ public class _XNumericField extends MultiMethodTest {
/**
* Just calls the method and stores value returned. <p>
- * Has <b>OK</b> status if no runtime exceptions occured.
+ * Has <b>OK</b> status if no runtime exceptions occurred.
*/
public void _getMax() {
@@ -169,7 +169,7 @@ public class _XNumericField extends MultiMethodTest {
/**
* Just calls the method and stores value returned. <p>
- * Has <b>OK</b> status if no runtime exceptions occured.
+ * Has <b>OK</b> status if no runtime exceptions occurred.
*/
public void _getFirst() {
@@ -201,7 +201,7 @@ public class _XNumericField extends MultiMethodTest {
/**
* Just calls the method and stores value returned. <p>
- * Has <b>OK</b> status if no runtime exceptions occured.
+ * Has <b>OK</b> status if no runtime exceptions occurred.
*/
public void _getLast() {
@@ -231,7 +231,7 @@ public class _XNumericField extends MultiMethodTest {
/**
* Just calls the method and stores value returned. <p>
- * Has <b>OK</b> status if no runtime exceptions occured.
+ * Has <b>OK</b> status if no runtime exceptions occurred.
*/
public void _getSpinSize() {
@@ -263,7 +263,7 @@ public class _XNumericField extends MultiMethodTest {
/**
* Just calls the method and stores value returned. <p>
- * Has <b>OK</b> status if no runtime exceptions occured.
+ * Has <b>OK</b> status if no runtime exceptions occurred.
*/
public void _getDecimalDigits() {
@@ -293,7 +293,7 @@ public class _XNumericField extends MultiMethodTest {
/**
* Just calls the method and stores value returned. <p>
- * Has <b>OK</b> status if no runtime exceptions occured.
+ * Has <b>OK</b> status if no runtime exceptions occurred.
*/
public void _isStrictFormat() {
diff --git a/qadevOOo/tests/java/ifc/awt/_XPatternField.java b/qadevOOo/tests/java/ifc/awt/_XPatternField.java
index 64a6c250669e..5b1ccdfc74f0 100644
--- a/qadevOOo/tests/java/ifc/awt/_XPatternField.java
+++ b/qadevOOo/tests/java/ifc/awt/_XPatternField.java
@@ -78,7 +78,7 @@ public class _XPatternField extends MultiMethodTest {
/**
* Gets masks and stores them. <p>
- * Has <b> OK </b> status if no runtime exceptions occured.
+ * Has <b> OK </b> status if no runtime exceptions occurred.
*/
public void _getMasks() {
@@ -127,7 +127,7 @@ public class _XPatternField extends MultiMethodTest {
/**
* Gets current string and stores it. <p>
- * Has <b> OK </b> status if no runtime exceptions occured
+ * Has <b> OK </b> status if no runtime exceptions occurred
*/
public void _getString() {
@@ -158,7 +158,7 @@ public class _XPatternField extends MultiMethodTest {
/**
* Gets the current strict state and stores it. <p>
- * Has <b> OK </b> status if no runtime exceptions occured.
+ * Has <b> OK </b> status if no runtime exceptions occurred.
*/
public void _isStrictFormat() {
diff --git a/qadevOOo/tests/java/ifc/awt/_XRadioButton.java b/qadevOOo/tests/java/ifc/awt/_XRadioButton.java
index 3423206030c0..a31be7d03510 100644
--- a/qadevOOo/tests/java/ifc/awt/_XRadioButton.java
+++ b/qadevOOo/tests/java/ifc/awt/_XRadioButton.java
@@ -98,7 +98,7 @@ public class _XRadioButton extends MultiMethodTest {
/**
* Gets state and stores it. <p>
- * Has <b> OK </b> status if no runtime exceptions occured
+ * Has <b> OK </b> status if no runtime exceptions occurred
*/
public void _getState() {
@@ -133,7 +133,7 @@ public class _XRadioButton extends MultiMethodTest {
/**
* Just sets a new label. <p>
- * Has <b> OK </b> status if no runtime exceptions occured
+ * Has <b> OK </b> status if no runtime exceptions occurred
*/
public void _setLabel() {
diff --git a/qadevOOo/tests/java/ifc/awt/_XSpinField.java b/qadevOOo/tests/java/ifc/awt/_XSpinField.java
index 8f011e5c1222..e9251dd22ef6 100644
--- a/qadevOOo/tests/java/ifc/awt/_XSpinField.java
+++ b/qadevOOo/tests/java/ifc/awt/_XSpinField.java
@@ -78,7 +78,7 @@ public class _XSpinField extends MultiMethodTest {
/**
* Just adds a listener. <p>
- * Has <b>OK</b> status if no runtime exceptions occured.
+ * Has <b>OK</b> status if no runtime exceptions occurred.
*/
public void _addSpinListener() {
oObj.addSpinListener(listener) ;
@@ -189,7 +189,7 @@ public class _XSpinField extends MultiMethodTest {
/**
* Enables then disables repeating. <p>
- * Has <b>OK</b> status if no runtime exceptions occured.
+ * Has <b>OK</b> status if no runtime exceptions occurred.
*/
public void _enableRepeat() {
oObj.enableRepeat(true) ;
diff --git a/qadevOOo/tests/java/ifc/awt/_XTimeField.java b/qadevOOo/tests/java/ifc/awt/_XTimeField.java
index 18f7480ec343..6515aa2a3978 100644
--- a/qadevOOo/tests/java/ifc/awt/_XTimeField.java
+++ b/qadevOOo/tests/java/ifc/awt/_XTimeField.java
@@ -80,7 +80,7 @@ public class _XTimeField extends MultiMethodTest {
/**
* Gets the current value. <p>
- * Has <b> OK </b> status if no runtime exceptions occured
+ * Has <b> OK </b> status if no runtime exceptions occurred
*/
public void _getTime() {
@@ -110,7 +110,7 @@ public class _XTimeField extends MultiMethodTest {
/**
* Gets the current value. <p>
- * Has <b> OK </b> status if no runtime exceptions occured
+ * Has <b> OK </b> status if no runtime exceptions occurred
*/
public void _getMin() {
@@ -140,7 +140,7 @@ public class _XTimeField extends MultiMethodTest {
/**
* Gets the current value. <p>
- * Has <b> OK </b> status if no runtime exceptions occured
+ * Has <b> OK </b> status if no runtime exceptions occurred
*/
public void _getMax() {
@@ -174,7 +174,7 @@ public class _XTimeField extends MultiMethodTest {
/**
* Gets the current value. <p>
- * Has <b> OK </b> status if no runtime exceptions occured
+ * Has <b> OK </b> status if no runtime exceptions occurred
*/
public void _getFirst() {
@@ -210,7 +210,7 @@ public class _XTimeField extends MultiMethodTest {
/**
* Gets the current value. <p>
- * Has <b> OK </b> status if no runtime exceptions occured
+ * Has <b> OK </b> status if no runtime exceptions occurred
*/
public void _getLast() {
@@ -224,7 +224,7 @@ public class _XTimeField extends MultiMethodTest {
/**
* Sets the value to empty. <p>
- * Has <b> OK </b> status if no runtime exceptions occured
+ * Has <b> OK </b> status if no runtime exceptions occurred
* The following method tests are to be completed successfully before :
* <ul>
* <li> <code> setTime </code> : value must be not empty </li>
@@ -277,7 +277,7 @@ public class _XTimeField extends MultiMethodTest {
/**
* Gets strict state and stores it. <p>
- * Has <b> OK </b> status if no runtime exceptions occured.
+ * Has <b> OK </b> status if no runtime exceptions occurred.
*/
public void _isStrictFormat() {
diff --git a/qadevOOo/tests/java/ifc/awt/_XToolkit.java b/qadevOOo/tests/java/ifc/awt/_XToolkit.java
index 9957a42d4dd8..ddcf1db015f7 100644
--- a/qadevOOo/tests/java/ifc/awt/_XToolkit.java
+++ b/qadevOOo/tests/java/ifc/awt/_XToolkit.java
@@ -89,7 +89,7 @@ public class _XToolkit extends MultiMethodTest {
res = true;
}
} catch (com.sun.star.lang.IllegalArgumentException ex) {
- log.println("Exception occured while checking 'createWindow':");
+ log.println("Exception occurred while checking 'createWindow':");
ex.printStackTrace(log);
}
tRes.tested("createWindow()", res);
@@ -115,7 +115,7 @@ public class _XToolkit extends MultiMethodTest {
res = true;
}
} catch (com.sun.star.lang.IllegalArgumentException ex) {
- log.println("Exception occured while checking 'createWindows':");
+ log.println("Exception occurred while checking 'createWindows':");
ex.printStackTrace(log);
}
tRes.tested("createWindows()", res);
diff --git a/qadevOOo/tests/java/ifc/awt/_XTopWindow.java b/qadevOOo/tests/java/ifc/awt/_XTopWindow.java
index 43916170e0bd..a60ca03f6899 100644
--- a/qadevOOo/tests/java/ifc/awt/_XTopWindow.java
+++ b/qadevOOo/tests/java/ifc/awt/_XTopWindow.java
@@ -161,7 +161,7 @@ public class _XTopWindow extends MultiMethodTest {
/**
* Creates a simple menu bar and adds to the window. <p>
- * Has <b>OK</b> status if no runtime exceptions occured.
+ * Has <b>OK</b> status if no runtime exceptions occurred.
*/
public void _setMenuBar() {
XMenuBar menu = null ;
diff --git a/qadevOOo/tests/java/ifc/awt/_XUnoControlContainer.java b/qadevOOo/tests/java/ifc/awt/_XUnoControlContainer.java
index 945d965ff0c2..6ed107beeb93 100644
--- a/qadevOOo/tests/java/ifc/awt/_XUnoControlContainer.java
+++ b/qadevOOo/tests/java/ifc/awt/_XUnoControlContainer.java
@@ -61,7 +61,7 @@ public class _XUnoControlContainer extends MultiMethodTest {
tabControl1 = (XTabController) tEnv.getObjRelation("TABCONTROL1");
tabControl2 = (XTabController) tEnv.getObjRelation("TABCONTROL2");
if ((tabControl1 == null) || (tabControl2 == null)){
- log.println("ERROR: Needed object realtions 'TABCONTROL1' and "
+ log.println("ERROR: Needed object relations 'TABCONTROL1' and "
+ "'TABCONTROL2' are not found.");
}
TabControllers[0] = tabControl1;
diff --git a/qadevOOo/tests/java/ifc/awt/_XUserInputInterception.java b/qadevOOo/tests/java/ifc/awt/_XUserInputInterception.java
index d431b113a3d2..01c793cd8a68 100644
--- a/qadevOOo/tests/java/ifc/awt/_XUserInputInterception.java
+++ b/qadevOOo/tests/java/ifc/awt/_XUserInputInterception.java
@@ -273,7 +273,7 @@ public class _XUserInputInterception extends MultiMethodTest {
return true;
}
/**
- * This event does nothing usefull
+ * This event does nothing useful
* @param oEvent refers to the object that fired the event.
*/
public void disposing( EventObject oEvent ){
@@ -310,7 +310,7 @@ public class _XUserInputInterception extends MultiMethodTest {
return true;
}
/**
- * This event does nothing usefull
+ * This event does nothing useful
* @param oEvent refers to the object that fired the event.
*/
public void disposing( EventObject oEvent ){
@@ -347,7 +347,7 @@ public class _XUserInputInterception extends MultiMethodTest {
return true;
}
/**
- * This event does nothing usefull
+ * This event does nothing useful
* @param oEvent refers to the object that fired the event.
*/
public void disposing( EventObject oEvent ){
@@ -385,7 +385,7 @@ public class _XUserInputInterception extends MultiMethodTest {
return true;
}
/**
- * This event does nothing usefull
+ * This event does nothing useful
* @param oEvent refers to the object that fired the event.
*/
public void disposing( EventObject oEvent ){
@@ -417,7 +417,7 @@ public class _XUserInputInterception extends MultiMethodTest {
/**
* Creates an instacne of this class. The parameter <CODE>eType</CODE> represents
- * the kind of event wich will be triggert at <CODE>run()</CODE>
+ * the kind of event which will be triggert at <CODE>run()</CODE>
* @param model the model of a document
* @param eType the kind of event which should be trigger
*/
@@ -428,7 +428,7 @@ public class _XUserInputInterception extends MultiMethodTest {
}
/**
- * Triggers the event wich is represented by <CODE>eventType</CODE>
+ * Triggers the event which is represented by <CODE>eventType</CODE>
* The scenarios are:
* <ul>
* <li>EventTest.EventTriggerType.MOUSE_KLICK_INTO_DOC
diff --git a/qadevOOo/tests/java/ifc/awt/_XWindow.java b/qadevOOo/tests/java/ifc/awt/_XWindow.java
index 1a7f8416bdb5..8d60c6411ff5 100644
--- a/qadevOOo/tests/java/ifc/awt/_XWindow.java
+++ b/qadevOOo/tests/java/ifc/awt/_XWindow.java
@@ -202,13 +202,13 @@ public class _XWindow extends MultiMethodTest {
/**
* Test calls the method. Then we check if listener's methods were called
* when we move, resize, hide and show the window. The resizing is
- * performed depending on 'XWindow.ControlShape' existance. If this
+ * performed depending on 'XWindow.ControlShape' existence. If this
* relation exists then the size and position of container control
* shape is changed, else the position and size of window itself is
* chaged<p>
*
* Has <b> OK </b> status if methods of wListener were called when
- * corresponding events occured. <p>
+ * corresponding events occurred. <p>
*
* The following method tests are to be executed before :
* <ul>
@@ -352,7 +352,7 @@ public class _XWindow extends MultiMethodTest {
* Test calls the method. Then we change focus and check that listener's
* methods were called. <p>
* Has <b> OK </b> status if methods of fListener were called when
- * corresponding events occured. <p>
+ * corresponding events occurred. <p>
* The following method tests are to be completed successfully before :
* <ul>
* <li> <code> setFocus() </code>: sets the focus to the window </li>
diff --git a/qadevOOo/tests/java/ifc/awt/tree/_XMutableTreeNode.java b/qadevOOo/tests/java/ifc/awt/tree/_XMutableTreeNode.java
index 7a3a596c8bcc..f8ca31c03285 100644
--- a/qadevOOo/tests/java/ifc/awt/tree/_XMutableTreeNode.java
+++ b/qadevOOo/tests/java/ifc/awt/tree/_XMutableTreeNode.java
@@ -140,7 +140,7 @@ public class _XMutableTreeNode extends MultiMethodTest {
log.println("ERROR: expected IndexOutOfBoundsException was not thrown => FAILED");
bOK = false;
} catch (com.sun.star.lang.IllegalArgumentException ex) {
- log.println("ERROR: wrong IllegalArgumentException was thrown. Expeced is IndexOutOfBoundsException => FAILED");
+ log.println("ERROR: wrong IllegalArgumentException was thrown. Expected is IndexOutOfBoundsException => FAILED");
bOK = false;
} catch (com.sun.star.lang.IndexOutOfBoundsException ex) {
log.println("Expected IndexOutOfBoundsException was thrown => OK");
@@ -177,7 +177,7 @@ public class _XMutableTreeNode extends MultiMethodTest {
try {
log.println("try to remove node at invalid index '-3'");
oObj.removeChildByIndex(-3);
- log.println("ERROR: expeced IndexOutOfBoundsException was not thrown => FAILED");
+ log.println("ERROR: expected IndexOutOfBoundsException was not thrown => FAILED");
bOK = false;
} catch (com.sun.star.lang.IndexOutOfBoundsException ex) {
log.println("expected IndexOutOfBoundsException was thrown => OK");
diff --git a/qadevOOo/tests/java/ifc/beans/_XFastPropertySet.java b/qadevOOo/tests/java/ifc/beans/_XFastPropertySet.java
index a4aad67dcd15..fbdd26502a40 100644
--- a/qadevOOo/tests/java/ifc/beans/_XFastPropertySet.java
+++ b/qadevOOo/tests/java/ifc/beans/_XFastPropertySet.java
@@ -104,16 +104,16 @@ public class _XFastPropertySet extends MultiMethodTest {
oObj.setFastPropertyValue(handle, sValue);
sValue = oObj.getFastPropertyValue(handle);
} catch (com.sun.star.beans.UnknownPropertyException e) {
- log.println("Exception occured while trying to change property with handle = " + handle);
+ log.println("Exception occurred while trying to change property with handle = " + handle);
e.printStackTrace(log);
} catch (com.sun.star.lang.WrappedTargetException e) {
- log.println("Exception occured while trying to change property with handle = " + handle);
+ log.println("Exception occurred while trying to change property with handle = " + handle);
e.printStackTrace(log);
} catch (com.sun.star.beans.PropertyVetoException e) {
- log.println("Exception occured while trying to change property with handle = " + handle);
+ log.println("Exception occurred while trying to change property with handle = " + handle);
e.printStackTrace(log);
} catch (com.sun.star.lang.IllegalArgumentException e) {
- log.println("Exception occured while trying to change property with handle = " + handle);
+ log.println("Exception occurred while trying to change property with handle = " + handle);
e.printStackTrace(log);
}
@@ -143,12 +143,12 @@ public class _XFastPropertySet extends MultiMethodTest {
oObj.getFastPropertyValue(handle);
tRes.tested("getFastPropertyValue()",true);
} catch (com.sun.star.beans.UnknownPropertyException e) {
- log.println("Exception occured while trying to get property '"
+ log.println("Exception occurred while trying to get property '"
+ handle +"'");
e.printStackTrace(log);
tRes.tested("getFastPropertyValue()",false);
} catch (com.sun.star.lang.WrappedTargetException e) {
- log.println("Exception occured while trying to get property '"
+ log.println("Exception occurred while trying to get property '"
+ handle +"'");
e.printStackTrace(log);
tRes.tested("getFastPropertyValue()",false);
diff --git a/qadevOOo/tests/java/ifc/beans/_XMultiPropertySet.java b/qadevOOo/tests/java/ifc/beans/_XMultiPropertySet.java
index a10ce40a5ba8..b585a0312418 100644
--- a/qadevOOo/tests/java/ifc/beans/_XMultiPropertySet.java
+++ b/qadevOOo/tests/java/ifc/beans/_XMultiPropertySet.java
@@ -194,15 +194,15 @@ public class _XMultiPropertySet extends MultiMethodTest {
result &= propertiesChanged ;
log.println(" ... done");
} catch (com.sun.star.beans.PropertyVetoException e) {
- log.println("Exception occured while trying to change "+
+ log.println("Exception occurred while trying to change "+
"property '"+testPropsNames[i] + "' :" + e);
e.printStackTrace(log);
} catch (com.sun.star.lang.IllegalArgumentException e) {
- log.println("Exception occured while trying to change "+
+ log.println("Exception occurred while trying to change "+
"property '"+testPropsNames[i] + "' :" + e);
e.printStackTrace(log);
} catch (com.sun.star.lang.WrappedTargetException e) {
- log.println("Exception occured while trying to change "+
+ log.println("Exception occurred while trying to change "+
"property '"+testPropsNames[i] + "' :" + e);
e.printStackTrace(log);
} // end of try-catch
@@ -293,15 +293,15 @@ public class _XMultiPropertySet extends MultiMethodTest {
}
}
} catch (com.sun.star.beans.PropertyVetoException e) {
- log.println("Exception occured while setting properties");
+ log.println("Exception occurred while setting properties");
e.printStackTrace(log);
bResult = false;
} catch (com.sun.star.lang.IllegalArgumentException e) {
- log.println("Exception occured while setting properties");
+ log.println("Exception occurred while setting properties");
e.printStackTrace(log);
bResult = false;
} catch (com.sun.star.lang.WrappedTargetException e) {
- log.println("Exception occured while setting properties");
+ log.println("Exception occurred while setting properties");
e.printStackTrace(log);
bResult = false;
} // end of try-catch
diff --git a/qadevOOo/tests/java/ifc/beans/_XPropertySet.java b/qadevOOo/tests/java/ifc/beans/_XPropertySet.java
index 20b36a1f3228..29d9c2a00a98 100644
--- a/qadevOOo/tests/java/ifc/beans/_XPropertySet.java
+++ b/qadevOOo/tests/java/ifc/beans/_XPropertySet.java
@@ -175,19 +175,19 @@ public class _XPropertySet extends MultiMethodTest {
oObj.setPropertyValue(propertyName,
ValueChanger.changePValue(gValue));
} catch (com.sun.star.beans.PropertyVetoException e) {
- log.println("Exception occured while trying to change "+
+ log.println("Exception occurred while trying to change "+
"property '"+ propertyName+"'");
e.printStackTrace(log);
} catch (com.sun.star.lang.IllegalArgumentException e) {
- log.println("Exception occured while trying to change "+
+ log.println("Exception occurred while trying to change "+
"property '"+ propertyName+"'");
e.printStackTrace(log);
} catch (com.sun.star.beans.UnknownPropertyException e) {
- log.println("Exception occured while trying to change "+
+ log.println("Exception occurred while trying to change "+
"property '"+ propertyName+"'");
e.printStackTrace(log);
} catch (com.sun.star.lang.WrappedTargetException e) {
- log.println("Exception occured while trying to change "+
+ log.println("Exception occurred while trying to change "+
"property '"+ propertyName+"'");
e.printStackTrace(log);
} // end of try-catch
@@ -235,19 +235,19 @@ public class _XPropertySet extends MultiMethodTest {
oObj.setPropertyValue(propertyName,
ValueChanger.changePValue(gValue));
} catch (com.sun.star.beans.PropertyVetoException e) {
- log.println("Exception occured while trying to change "+
+ log.println("Exception occurred while trying to change "+
"property '"+ propertyName+"'");
e.printStackTrace(log);
} catch (com.sun.star.lang.IllegalArgumentException e) {
- log.println("Exception occured while trying to change "+
+ log.println("Exception occurred while trying to change "+
"property '"+ propertyName+"'");
e.printStackTrace(log);
} catch (com.sun.star.beans.UnknownPropertyException e) {
- log.println("Exception occured while trying to change "+
+ log.println("Exception occurred while trying to change "+
"property '"+ propertyName+"'");
e.printStackTrace(log);
} catch (com.sun.star.lang.WrappedTargetException e) {
- log.println("Exception occured while trying to change "+
+ log.println("Exception occurred while trying to change "+
"property '"+ propertyName+"'");
e.printStackTrace(log);
} // end of try-catch
@@ -299,19 +299,19 @@ public class _XPropertySet extends MultiMethodTest {
oObj.setPropertyValue(propertyName, sValue);
sValue = oObj.getPropertyValue(propertyName);
} catch (com.sun.star.beans.PropertyVetoException e) {
- log.println("Exception occured while trying to change "+
+ log.println("Exception occurred while trying to change "+
"property '"+ propertyName+"'");
e.printStackTrace(log);
} catch (com.sun.star.lang.IllegalArgumentException e) {
- log.println("Exception occured while trying to change "+
+ log.println("Exception occurred while trying to change "+
"property '"+ propertyName+"'");
e.printStackTrace(log);
} catch (com.sun.star.beans.UnknownPropertyException e) {
- log.println("Exception occured while trying to change "+
+ log.println("Exception occurred while trying to change "+
"property '"+ propertyName+"'");
e.printStackTrace(log);
} catch (com.sun.star.lang.WrappedTargetException e) {
- log.println("Exception occured while trying to change "+
+ log.println("Exception occurred while trying to change "+
"property '"+ propertyName+"'");
e.printStackTrace(log);
} // end of try-catch
@@ -330,7 +330,7 @@ public class _XPropertySet extends MultiMethodTest {
/**
* Tests <code>getPropertyValue</code> method for the given property.
- * Returns true if no exceptions occured
+ * Returns true if no exceptions occurred
*/
private boolean getSinglePropertyValue( String propertyName )
{
@@ -339,11 +339,11 @@ public class _XPropertySet extends MultiMethodTest {
oObj.getPropertyValue(propertyName);
runOk = true;
} catch (com.sun.star.beans.UnknownPropertyException e) {
- log.println("Exception occured while trying to get property '"+
+ log.println("Exception occurred while trying to get property '"+
propertyName+"'");
e.printStackTrace(log);
} catch (com.sun.star.lang.WrappedTargetException e) {
- log.println("Exception occured while trying to get property '"+
+ log.println("Exception occurred while trying to get property '"+
propertyName+"'");
e.printStackTrace(log);
}
@@ -423,7 +423,7 @@ public class _XPropertySet extends MultiMethodTest {
try {
oObj.removePropertyChangeListener(propertyName,PClistener);
} catch (Exception e) {
- log.println("Exception occured while removing change listener from"+
+ log.println("Exception occurred while removing change listener from"+
"property '"+ propertyName+"'");
e.printStackTrace(log);
}
@@ -440,19 +440,19 @@ public class _XPropertySet extends MultiMethodTest {
oObj.setPropertyValue(propertyName,
ValueChanger.changePValue(gValue));
} catch (com.sun.star.beans.PropertyVetoException e) {
- log.println("Exception occured while trying to change "+
+ log.println("Exception occurred while trying to change "+
"property '"+ propertyName+"'");
e.printStackTrace(log);
} catch (com.sun.star.lang.IllegalArgumentException e) {
- log.println("Exception occured while trying to change "+
+ log.println("Exception occurred while trying to change "+
"property '"+ propertyName+"'");
e.printStackTrace(log);
} catch (com.sun.star.beans.UnknownPropertyException e) {
- log.println("Exception occured while trying to change "+
+ log.println("Exception occurred while trying to change "+
"property '"+ propertyName+"'");
e.printStackTrace(log);
} catch (com.sun.star.lang.WrappedTargetException e) {
- log.println("Exception occured while trying to change "+
+ log.println("Exception occurred while trying to change "+
"property '"+ propertyName+"'");
e.printStackTrace(log);
} // end of try-catch
@@ -499,7 +499,7 @@ public class _XPropertySet extends MultiMethodTest {
try {
oObj.removeVetoableChangeListener(propertyName,VClistener);
} catch (Exception e) {
- log.println("Exception occured while removing veto listener from"+
+ log.println("Exception occurred while removing veto listener from"+
"property '"+ propertyName+"'");
e.printStackTrace(log);
}
@@ -516,19 +516,19 @@ public class _XPropertySet extends MultiMethodTest {
oObj.setPropertyValue(propertyName,
ValueChanger.changePValue(gValue));
} catch (com.sun.star.beans.PropertyVetoException e) {
- log.println("Exception occured while trying to change "+
+ log.println("Exception occurred while trying to change "+
"property '"+ propertyName+"'");
e.printStackTrace(log);
} catch (com.sun.star.lang.IllegalArgumentException e) {
- log.println("Exception occured while trying to change "+
+ log.println("Exception occurred while trying to change "+
"property '"+ propertyName+"'");
e.printStackTrace(log);
} catch (com.sun.star.beans.UnknownPropertyException e) {
- log.println("Exception occured while trying to change "+
+ log.println("Exception occurred while trying to change "+
"property '"+ propertyName+"'");
e.printStackTrace(log);
} catch (com.sun.star.lang.WrappedTargetException e) {
- log.println("Exception occured while trying to change "+
+ log.println("Exception occurred while trying to change "+
"property '"+ propertyName+"'");
e.printStackTrace(log);
} // end of try-catch
diff --git a/qadevOOo/tests/java/ifc/beans/_XPropertyState.java b/qadevOOo/tests/java/ifc/beans/_XPropertyState.java
index a690ef7cfe8d..b56907133571 100644
--- a/qadevOOo/tests/java/ifc/beans/_XPropertyState.java
+++ b/qadevOOo/tests/java/ifc/beans/_XPropertyState.java
@@ -131,11 +131,11 @@ public class _XPropertyState extends MultiMethodTest {
log.println("Default property value is : '" + propDef + "'");
} catch (com.sun.star.beans.UnknownPropertyException e) {
log.println("Exception " + e +
- "occured while getting Property default");
+ "occurred while getting Property default");
result=false;
} catch (com.sun.star.lang.WrappedTargetException e) {
log.println("Exception " + e +
- "occured while getting Property default");
+ "occurred while getting Property default");
result=false;
}
tRes.tested("getPropertyDefault()", result);
@@ -163,7 +163,7 @@ public class _XPropertyState extends MultiMethodTest {
}
} catch (com.sun.star.beans.UnknownPropertyException e) {
log.println("Exception " + e +
- "occured while getting Property state");
+ "occurred while getting Property state");
result = false;
}
tRes.tested("getPropertyState()", result);
@@ -198,7 +198,7 @@ public class _XPropertyState extends MultiMethodTest {
}
} catch (com.sun.star.beans.UnknownPropertyException e) {
log.println("Exception " + e +
- "occured while getting Property state");
+ "occurred while getting Property state");
result = false;
}
@@ -251,11 +251,11 @@ public class _XPropertyState extends MultiMethodTest {
}
} catch (com.sun.star.beans.UnknownPropertyException e) {
log.println("Exception " + e +
- "occured while setting Property to default");
+ "occurred while setting Property to default");
result=false;
} catch (com.sun.star.lang.WrappedTargetException e) {
log.println("Exception " + e +
- "occured while testing property value");
+ "occurred while testing property value");
result=false;
}
diff --git a/qadevOOo/tests/java/ifc/bridge/_XBridgeFactory.java b/qadevOOo/tests/java/ifc/bridge/_XBridgeFactory.java
index 47691b7e7c18..71570f919087 100644
--- a/qadevOOo/tests/java/ifc/bridge/_XBridgeFactory.java
+++ b/qadevOOo/tests/java/ifc/bridge/_XBridgeFactory.java
@@ -64,7 +64,7 @@ public class _XBridgeFactory extends MultiMethodTest {
}
/**
* Calls <code>accept()</code> method in a separate thread.
- * Then stores exception thrown by call if it occured, or
+ * Then stores exception thrown by call if it occurred, or
* return value.
*/
protected class AcceptorThread extends Thread {
@@ -73,7 +73,7 @@ public class _XBridgeFactory extends MultiMethodTest {
*/
private XAcceptor acc = null ;
/**
- * If exception occured during method call it is
+ * If exception occurred during method call it is
* stored in this field.
*/
public Exception ex = null ;
diff --git a/qadevOOo/tests/java/ifc/connection/_XAcceptor.java b/qadevOOo/tests/java/ifc/connection/_XAcceptor.java
index 5b0ce68803d9..40b7fba2fbae 100644
--- a/qadevOOo/tests/java/ifc/connection/_XAcceptor.java
+++ b/qadevOOo/tests/java/ifc/connection/_XAcceptor.java
@@ -53,12 +53,12 @@ public class _XAcceptor extends MultiMethodTest {
/**
* Calls <code>accept()</code> method in a separate thread.
- * Then stores exception thrown by call if it occured, or
+ * Then stores exception thrown by call if it occurred, or
* return value.
*/
protected class AcceptorThread extends Thread {
/**
- * If exception occured during method call it is
+ * If exception occurred during method call it is
* stored in this field.
*/
public Exception ex = null ;
@@ -179,7 +179,7 @@ public class _XAcceptor extends MultiMethodTest {
acception.acceptedCall.getDescription()) ;
} else {
if (acception.ex != null) {
- log.println("Exception occured in accept() thread :") ;
+ log.println("Exception occurred in accept() thread :") ;
acception.ex.printStackTrace(log) ;
}
@@ -299,7 +299,7 @@ public class _XAcceptor extends MultiMethodTest {
} else {
if (acception.ex != null) {
- log.println("Exception occured in accept() thread :") ;
+ log.println("Exception occurred in accept() thread :") ;
acception.ex.printStackTrace(log) ;
result = false ;
} else {
diff --git a/qadevOOo/tests/java/ifc/connection/_XConnector.java b/qadevOOo/tests/java/ifc/connection/_XConnector.java
index c6af2a310e81..41352adc0919 100644
--- a/qadevOOo/tests/java/ifc/connection/_XConnector.java
+++ b/qadevOOo/tests/java/ifc/connection/_XConnector.java
@@ -49,7 +49,7 @@ public class _XConnector extends MultiMethodTest {
/**
* Calls <code>accept()</code> method in a separate thread.
- * Then stores exception thrown by call if it occured, or
+ * Then stores exception thrown by call if it occurred, or
* return value.
*/
protected class AcceptorThread extends Thread {
@@ -58,7 +58,7 @@ public class _XConnector extends MultiMethodTest {
*/
private XAcceptor acc = null ;
/**
- * If exception occured during method call it is
+ * If exception occurred during method call it is
* stored in this field.
*/
public Exception ex = null ;
@@ -163,7 +163,7 @@ public class _XConnector extends MultiMethodTest {
acceptorThread.acceptedCall.getDescription()) ;
} else {
if (acceptorThread.ex != null) {
- log.println("Exception occured in accept() thread :") ;
+ log.println("Exception occurred in accept() thread :") ;
acceptorThread.ex.printStackTrace(log) ;
}
diff --git a/qadevOOo/tests/java/ifc/container/_XChild.java b/qadevOOo/tests/java/ifc/container/_XChild.java
index 1963c7b8f35e..3a86a73fdeaa 100644
--- a/qadevOOo/tests/java/ifc/container/_XChild.java
+++ b/qadevOOo/tests/java/ifc/container/_XChild.java
@@ -84,7 +84,7 @@ public class _XChild extends MultiMethodTest {
tRes.tested("setParent()",true);
}
catch (com.sun.star.lang.NoSupportException ex) {
- log.println("Exception occured during setParent()");
+ log.println("Exception occurred during setParent()");
ex.printStackTrace(log);
tRes.tested("setParent()",false);
}
diff --git a/qadevOOo/tests/java/ifc/container/_XContainer.java b/qadevOOo/tests/java/ifc/container/_XContainer.java
index 7b3458fd3b86..ac0ef767b423 100644
--- a/qadevOOo/tests/java/ifc/container/_XContainer.java
+++ b/qadevOOo/tests/java/ifc/container/_XContainer.java
@@ -237,19 +237,19 @@ public class _XContainer extends MultiMethodTest {
}
NC.removeByName("XContainer_dummy");
} catch (com.sun.star.lang.IllegalArgumentException ex) {
- log.println("Exception occured ");
+ log.println("Exception occurred ");
ex.printStackTrace(log);
bResult = false;
} catch (com.sun.star.lang.WrappedTargetException ex) {
- log.println("Exception occured ");
+ log.println("Exception occurred ");
ex.printStackTrace(log);
bResult = false;
} catch (com.sun.star.container.NoSuchElementException ex) {
- log.println("Exception occured ");
+ log.println("Exception occurred ");
ex.printStackTrace(log);
bResult = false;
} catch (com.sun.star.container.ElementExistException ex) {
- log.println("Exception occured ");
+ log.println("Exception occurred ");
ex.printStackTrace(log);
bResult = false;
}
diff --git a/qadevOOo/tests/java/ifc/container/_XContainerQuery.java b/qadevOOo/tests/java/ifc/container/_XContainerQuery.java
index b5d86011b981..2f57edd8652e 100644
--- a/qadevOOo/tests/java/ifc/container/_XContainerQuery.java
+++ b/qadevOOo/tests/java/ifc/container/_XContainerQuery.java
@@ -109,11 +109,11 @@ public class _XContainerQuery extends MultiMethodTest {
Object element = subSet.nextElement();
} catch (com.sun.star.container.NoSuchElementException e){
- log.println("Exception occured ");
+ log.println("Exception occurred ");
e.printStackTrace(log);
bResult = false;
} catch (com.sun.star.lang.WrappedTargetException e){
- log.println("Exception occured ");
+ log.println("Exception occurred ");
e.printStackTrace(log);
bResult = false;
}
@@ -143,11 +143,11 @@ public class _XContainerQuery extends MultiMethodTest {
Object element = subSet.nextElement();
} catch (com.sun.star.container.NoSuchElementException e){
- log.println("Exception occured ");
+ log.println("Exception occurred ");
e.printStackTrace(log);
bResult = false;
} catch (com.sun.star.lang.WrappedTargetException e){
- log.println("Exception occured ");
+ log.println("Exception occurred ");
e.printStackTrace(log);
bResult = false;
}
diff --git a/qadevOOo/tests/java/ifc/container/_XContentEnumerationAccess.java b/qadevOOo/tests/java/ifc/container/_XContentEnumerationAccess.java
index d12466b1c216..36a5fd4033e4 100644
--- a/qadevOOo/tests/java/ifc/container/_XContentEnumerationAccess.java
+++ b/qadevOOo/tests/java/ifc/container/_XContentEnumerationAccess.java
@@ -52,7 +52,7 @@ public class _XContentEnumerationAccess extends MultiMethodTest{
serviceNames = oObj.getAvailableServiceNames();
bResult = serviceNames != null ;
} catch (Exception e) {
- log.println("Exception occured. " + e);
+ log.println("Exception occurred. " + e);
bResult = false;
}
tRes.tested("getAvailableServiceNames()", bResult);
diff --git a/qadevOOo/tests/java/ifc/container/_XEnumeration.java b/qadevOOo/tests/java/ifc/container/_XEnumeration.java
index af446b2cc187..8b76eb02b2d8 100644
--- a/qadevOOo/tests/java/ifc/container/_XEnumeration.java
+++ b/qadevOOo/tests/java/ifc/container/_XEnumeration.java
@@ -56,7 +56,7 @@ public class _XEnumeration extends MultiMethodTest {
* Retrieves relation and sets oObj to a separate enumeration
* created. Retrieves all elements from enumeration.<p>
* Has <b> OK </b> status if all elements successfully retrieved
- * and exceptions occured.
+ * and exceptions occurred.
*/
public void _hasMoreElements() {
boolean result = true;
diff --git a/qadevOOo/tests/java/ifc/container/_XIndexAccess.java b/qadevOOo/tests/java/ifc/container/_XIndexAccess.java
index 19613fea30a7..cbcd5119e462 100644
--- a/qadevOOo/tests/java/ifc/container/_XIndexAccess.java
+++ b/qadevOOo/tests/java/ifc/container/_XIndexAccess.java
@@ -64,7 +64,7 @@ public class _XIndexAccess extends MultiMethodTest {
/**
* This method tests the IndexAccess from the first element,
- * the middle element and the last element. Finaly it test
+ * the middle element and the last element. Finally it test
* Exceptions which throws by a not available index. <p>
* Has <b> OK </b> status if first, middle and last elements
* successfully returned and has non null value; and if on
diff --git a/qadevOOo/tests/java/ifc/container/_XIndexContainer.java b/qadevOOo/tests/java/ifc/container/_XIndexContainer.java
index 8397aeee59e1..41b71f632af0 100644
--- a/qadevOOo/tests/java/ifc/container/_XIndexContainer.java
+++ b/qadevOOo/tests/java/ifc/container/_XIndexContainer.java
@@ -76,7 +76,7 @@ public class _XIndexContainer extends MultiMethodTest {
/**
* First tries to insert proper object. Second tries to insert
* null value. For each test thread different objects are inserted
- * on different indexes. For exmaple for the first started test index
+ * on different indexes. For example for the first started test index
* is 0 and object is get from relation 'INCTANCE1', and so on. <p>
* Has <b>OK</b> status if in the first case <code>getByIndex</code>
* method returns non null value and in the second <code>
diff --git a/qadevOOo/tests/java/ifc/container/_XNameReplace.java b/qadevOOo/tests/java/ifc/container/_XNameReplace.java
index 583409e5094a..db9fd895f676 100644
--- a/qadevOOo/tests/java/ifc/container/_XNameReplace.java
+++ b/qadevOOo/tests/java/ifc/container/_XNameReplace.java
@@ -110,7 +110,7 @@ public class _XNameReplace extends MultiMethodTest {
log.println("ObjRelation(\"INSTANCE" + Index +"\") Object n.a.");
}
- log.println("getting the existant object's name");
+ log.println("getting the existent object's name");
XNameAccess oNameAccess = (XNameAccess)UnoRuntime.queryInterface(
XNameAccess.class, oObj);
oNames = oNameAccess.getElementNames();
diff --git a/qadevOOo/tests/java/ifc/datatransfer/_XMimeContentTypeFactory.java b/qadevOOo/tests/java/ifc/datatransfer/_XMimeContentTypeFactory.java
index b7fcdce8d7a0..b9777cd0bb85 100644
--- a/qadevOOo/tests/java/ifc/datatransfer/_XMimeContentTypeFactory.java
+++ b/qadevOOo/tests/java/ifc/datatransfer/_XMimeContentTypeFactory.java
@@ -70,7 +70,7 @@ public class _XMimeContentTypeFactory extends MultiMethodTest {
result = false ;
}
} catch (com.sun.star.lang.IllegalArgumentException e) {
- log.println("Exception occured : " ) ;
+ log.println("Exception occurred : " ) ;
e.printStackTrace(log) ;
result = false ;
}
diff --git a/qadevOOo/tests/java/ifc/datatransfer/clipboard/_XClipboardEx.java b/qadevOOo/tests/java/ifc/datatransfer/clipboard/_XClipboardEx.java
index ce3dc095f637..f4f181ba1584 100644
--- a/qadevOOo/tests/java/ifc/datatransfer/clipboard/_XClipboardEx.java
+++ b/qadevOOo/tests/java/ifc/datatransfer/clipboard/_XClipboardEx.java
@@ -42,7 +42,7 @@ public class _XClipboardEx extends MultiMethodTest {
/**
* Just calls the method. <p>
- * Has <b> OK </b> status if no runtime exceptions occured.
+ * Has <b> OK </b> status if no runtime exceptions occurred.
*/
public void _getRenderingCapabilities() {
byte caps = oObj.getRenderingCapabilities();
diff --git a/qadevOOo/tests/java/ifc/datatransfer/clipboard/_XFlushableClipboard.java b/qadevOOo/tests/java/ifc/datatransfer/clipboard/_XFlushableClipboard.java
index 48704cf3c572..2a8265dadf6d 100644
--- a/qadevOOo/tests/java/ifc/datatransfer/clipboard/_XFlushableClipboard.java
+++ b/qadevOOo/tests/java/ifc/datatransfer/clipboard/_XFlushableClipboard.java
@@ -42,7 +42,7 @@ public class _XFlushableClipboard extends MultiMethodTest {
/**
* Just calls the method. <p>
- * Has <b> OK </b> status if no runtime exceptions occured.
+ * Has <b> OK </b> status if no runtime exceptions occurred.
*/
public void _flushClipboard() {
oObj.flushClipboard();
diff --git a/qadevOOo/tests/java/ifc/document/_LinkTarget.java b/qadevOOo/tests/java/ifc/document/_LinkTarget.java
index 9b6b1c73e327..9f5f7047d4b5 100644
--- a/qadevOOo/tests/java/ifc/document/_LinkTarget.java
+++ b/qadevOOo/tests/java/ifc/document/_LinkTarget.java
@@ -59,7 +59,7 @@ public class _LinkTarget extends MultiPropertyTest {
tRes.tested("LinkDisplayName",LDN!=null);
}
catch (Exception ex) {
- log.println("Exception occured during LinkDisplayName");
+ log.println("Exception occurred during LinkDisplayName");
ex.printStackTrace(log);
tRes.tested("LinkDisplayName",false);
}
diff --git a/qadevOOo/tests/java/ifc/document/_XActionLockable.java b/qadevOOo/tests/java/ifc/document/_XActionLockable.java
index de863e5146fd..87b3dbf75651 100644
--- a/qadevOOo/tests/java/ifc/document/_XActionLockable.java
+++ b/qadevOOo/tests/java/ifc/document/_XActionLockable.java
@@ -46,7 +46,7 @@ public class _XActionLockable extends MultiMethodTest {
/**
* Method addActionLock called first and then
* checked value returned by isActionLocked().<p>
- * Has <b> OK </b> status if no runtime exceptions occured
+ * Has <b> OK </b> status if no runtime exceptions occurred
* and returned value is true.
*/
public void _isActionLocked() {
@@ -58,7 +58,7 @@ public class _XActionLockable extends MultiMethodTest {
/**
* Just calls the method. <p>
- * Has <b> OK </b> status if no runtime exceptions occured
+ * Has <b> OK </b> status if no runtime exceptions occurred
*/
public void _addActionLock() {
requiredMethod("resetActionLocks()");
@@ -68,7 +68,7 @@ public class _XActionLockable extends MultiMethodTest {
/**
* Calls the method and check value returned by isActionLocked(). <p>
- * Has <b> OK </b> status if no runtime exceptions occured
+ * Has <b> OK </b> status if no runtime exceptions occurred
* and returned value is false.
*/
public void _removeActionLock() {
@@ -80,7 +80,7 @@ public class _XActionLockable extends MultiMethodTest {
/**
* Calls the method with specific value. <p>
- * Has <b> OK </b> status if no runtime exceptions occured
+ * Has <b> OK </b> status if no runtime exceptions occurred
*/
public void _setActionLocks() {
oObj.setActionLocks( nLock );
diff --git a/qadevOOo/tests/java/ifc/document/_XDocumentInsertable.java b/qadevOOo/tests/java/ifc/document/_XDocumentInsertable.java
index de97058eca3f..4cd64d4deade 100644
--- a/qadevOOo/tests/java/ifc/document/_XDocumentInsertable.java
+++ b/qadevOOo/tests/java/ifc/document/_XDocumentInsertable.java
@@ -126,7 +126,7 @@ public class _XDocumentInsertable extends MultiMethodTest {
/**
* Tries to insert document from URL specified by relation or
* from default URL. If no relation was passed, text range is
- * checked for existance of loaded document content. In case
+ * checked for existence of loaded document content. In case
* if relation was found, then its <code>isInserted</code>
* method is used to check insertion.<p>
* A Second test uses an invalid URL and checks for correct exceptions.
@@ -155,12 +155,12 @@ public class _XDocumentInsertable extends MultiMethodTest {
}
} catch (com.sun.star.lang.IllegalArgumentException ex) {
- log.println("Exception occured while testing "+
+ log.println("Exception occurred while testing "+
"insertDocumentFromURL()");
ex.printStackTrace(log);
result = false ;
} catch (com.sun.star.io.IOException ex) {
- log.println("Exception occured while testing "+
+ log.println("Exception occurred while testing "+
"insertDocumentFromURL()");
ex.printStackTrace(log);
result = false ;
diff --git a/qadevOOo/tests/java/ifc/document/_XExporter.java b/qadevOOo/tests/java/ifc/document/_XExporter.java
index d688af0db80f..36e18c2073a8 100644
--- a/qadevOOo/tests/java/ifc/document/_XExporter.java
+++ b/qadevOOo/tests/java/ifc/document/_XExporter.java
@@ -63,7 +63,7 @@ public class _XExporter extends MultiMethodTest {
/**
* Just calls the method. <p>
- * Has <b> OK </b> status if no runtime exceptions occured.
+ * Has <b> OK </b> status if no runtime exceptions occurred.
* Usually this interface is supported both with <code>XFilter</code>
* where source document setting is checked.
*/
diff --git a/qadevOOo/tests/java/ifc/document/_XFilter.java b/qadevOOo/tests/java/ifc/document/_XFilter.java
index 577bf16e9a3b..b4a6cc8dd977 100644
--- a/qadevOOo/tests/java/ifc/document/_XFilter.java
+++ b/qadevOOo/tests/java/ifc/document/_XFilter.java
@@ -50,7 +50,7 @@ import com.sun.star.uno.UnoRuntime;
* <li> <code>'XFilter.Checker'</code> <b>(optional)</b> (of type
* <code>ifc.document._XFilter.FilterChecker</code>) : implementation
* of interface must allow checking that document was exported successfully.
-* If the relation doesn't exist then by default successfull filtering
+* If the relation doesn't exist then by default successful filtering
* assumed.
* </li>
* <ul> <p>
@@ -106,7 +106,7 @@ public class _XFilter extends MultiMethodTest {
/**
* Just calls the method. <p>
- * Has <b> OK </b> status if no runtime exceptions occured
+ * Has <b> OK </b> status if no runtime exceptions occurred
*/
public void _filter() {
if (dummy) {
@@ -127,7 +127,7 @@ public class _XFilter extends MultiMethodTest {
/**
* Just calls the method. <p>
- * Has <b> OK </b> status if no runtime exceptions occured
+ * Has <b> OK </b> status if no runtime exceptions occurred
*/
public void _cancel() {
if (dummy) {
diff --git a/qadevOOo/tests/java/ifc/document/_XImporter.java b/qadevOOo/tests/java/ifc/document/_XImporter.java
index 0197e8c288b7..fb8cf6ef2b50 100644
--- a/qadevOOo/tests/java/ifc/document/_XImporter.java
+++ b/qadevOOo/tests/java/ifc/document/_XImporter.java
@@ -48,7 +48,7 @@ public class _XImporter extends MultiMethodTest {
/**
* Retrieves relation and sets target document. <p>
- * Has <b> OK </b> status if no runtime exceptions occured,
+ * Has <b> OK </b> status if no runtime exceptions occurred,
* really this method tested when the whole import result
* checked.
*/
diff --git a/qadevOOo/tests/java/ifc/document/_XStandaloneDocumentInfo.java b/qadevOOo/tests/java/ifc/document/_XStandaloneDocumentInfo.java
index 14a86f7cca17..065aec47c2df 100644
--- a/qadevOOo/tests/java/ifc/document/_XStandaloneDocumentInfo.java
+++ b/qadevOOo/tests/java/ifc/document/_XStandaloneDocumentInfo.java
@@ -60,7 +60,7 @@ public class _XStandaloneDocumentInfo extends MultiMethodTest {
String newProp = null;
/**
* Sets new value of the property 'Author' and calls the method. <p>
- * Has <b> OK </b> status if no exception occured.
+ * Has <b> OK </b> status if no exception occurred.
*/
public void _storeIntoURL() {
try {
@@ -95,7 +95,7 @@ public class _XStandaloneDocumentInfo extends MultiMethodTest {
/**
* Calls the method and checks value of the property 'Author'. <p>
- * Has <b> OK </b> status if no exception occured and value of the property
+ * Has <b> OK </b> status if no exception occurred and value of the property
* 'Author' is equal to value that was set in the method
* <code>storeIntoURL</code>.
*/
diff --git a/qadevOOo/tests/java/ifc/drawing/_GenericDrawPage.java b/qadevOOo/tests/java/ifc/drawing/_GenericDrawPage.java
index 3e4b413af50c..91bca4573817 100644
--- a/qadevOOo/tests/java/ifc/drawing/_GenericDrawPage.java
+++ b/qadevOOo/tests/java/ifc/drawing/_GenericDrawPage.java
@@ -57,10 +57,10 @@ public class _GenericDrawPage extends MultiPropertyTest {
res=true;
}
} catch (com.sun.star.beans.UnknownPropertyException e) {
- log.println("an UnknownPropertyException occured");
+ log.println("an UnknownPropertyException occurred");
} catch (com.sun.star.lang.WrappedTargetException e) {
- log.println("an WrappedTargetException occured");
+ log.println("an WrappedTargetException occurred");
}
tRes.tested("Number",res);
@@ -79,10 +79,10 @@ public class _GenericDrawPage extends MultiPropertyTest {
res=true;
}
} catch (com.sun.star.beans.UnknownPropertyException e) {
- log.println("an UnknownPropertyException occured");
+ log.println("an UnknownPropertyException occurred");
} catch (com.sun.star.lang.WrappedTargetException e) {
- log.println("an WrappedTargetException occured");
+ log.println("an WrappedTargetException occurred");
}
tRes.tested("UserDefinedAttributes",res);
diff --git a/qadevOOo/tests/java/ifc/drawing/_LineShapeDescriptor.java b/qadevOOo/tests/java/ifc/drawing/_LineShapeDescriptor.java
index 8249c1d84c61..7fa588569221 100644
--- a/qadevOOo/tests/java/ifc/drawing/_LineShapeDescriptor.java
+++ b/qadevOOo/tests/java/ifc/drawing/_LineShapeDescriptor.java
@@ -114,7 +114,7 @@ public class _LineShapeDescriptor extends MultiMethodTest {
tRes.tested(name, true);
}
} catch (Exception e) {
- log.println("Exception occured while testing property '" +
+ log.println("Exception occurred while testing property '" +
name + "'");
e.printStackTrace(log);
tRes.tested(name, false);
diff --git a/qadevOOo/tests/java/ifc/drawing/_ShapeDescriptor.java b/qadevOOo/tests/java/ifc/drawing/_ShapeDescriptor.java
index f4fd20b1fecc..864d01afcce2 100644
--- a/qadevOOo/tests/java/ifc/drawing/_ShapeDescriptor.java
+++ b/qadevOOo/tests/java/ifc/drawing/_ShapeDescriptor.java
@@ -108,14 +108,14 @@ public class _ShapeDescriptor extends MultiMethodTest {
"' is optional and not supported");
tRes.tested(name,true);
} else {
- log.println("Exception occured while testing property '" +
+ log.println("Exception occurred while testing property '" +
name + "'");
ex.printStackTrace(log);
tRes.tested(name, false);
}
}
catch (Exception e) {
- log.println("Exception occured while testing property '" +
+ log.println("Exception occurred while testing property '" +
name + "'");
e.printStackTrace(log);
tRes.tested(name, false);
diff --git a/qadevOOo/tests/java/ifc/drawing/_Text.java b/qadevOOo/tests/java/ifc/drawing/_Text.java
index 65e5786189df..15862eae8c91 100644
--- a/qadevOOo/tests/java/ifc/drawing/_Text.java
+++ b/qadevOOo/tests/java/ifc/drawing/_Text.java
@@ -53,7 +53,7 @@ public class _Text extends MultiPropertyTest {
oObj.getPropertyValue( "NumberingRules" );
bResult = true;
} catch( Exception e ) {
- log.println("Error occured while trying to get property"+
+ log.println("Error occurred while trying to get property"+
" 'NumberingRules'");
e.printStackTrace( log );
bResult = false;
diff --git a/qadevOOo/tests/java/ifc/drawing/_XDrawPageDuplicator.java b/qadevOOo/tests/java/ifc/drawing/_XDrawPageDuplicator.java
index 2b943d11953c..015bf81f8d57 100644
--- a/qadevOOo/tests/java/ifc/drawing/_XDrawPageDuplicator.java
+++ b/qadevOOo/tests/java/ifc/drawing/_XDrawPageDuplicator.java
@@ -69,11 +69,11 @@ public class _XDrawPageDuplicator extends MultiMethodTest {
DP = (XDrawPage) AnyConverter.toObject(
new Type(XDrawPage.class),DPs.getByIndex(0));
} catch (com.sun.star.lang.WrappedTargetException e) {
- log.println("Exception occured while testing: " + e);
+ log.println("Exception occurred while testing: " + e);
} catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- log.println("Exception occured while testing: " + e);
+ log.println("Exception occurred while testing: " + e);
} catch (com.sun.star.lang.IllegalArgumentException e) {
- log.println("Exception occured while testing: " + e);
+ log.println("Exception occurred while testing: " + e);
}
if (DP != null) {
diff --git a/qadevOOo/tests/java/ifc/drawing/_XDrawView.java b/qadevOOo/tests/java/ifc/drawing/_XDrawView.java
index 5e0e102629af..94c19cd273ca 100644
--- a/qadevOOo/tests/java/ifc/drawing/_XDrawView.java
+++ b/qadevOOo/tests/java/ifc/drawing/_XDrawView.java
@@ -91,15 +91,15 @@ public class _XDrawView extends MultiMethodTest {
oObj.setCurrentPage(the_page);
tRes.tested("setCurrentPage()",eq);
} catch (com.sun.star.lang.WrappedTargetException ex) {
- log.println("Exception occured while checking 'setCurrentPage()'");
+ log.println("Exception occurred while checking 'setCurrentPage()'");
ex.printStackTrace(log);
tRes.tested("setCurrentPage()",false);
} catch (com.sun.star.lang.IndexOutOfBoundsException ex) {
- log.println("Exception occured while checking 'setCurrentPage()'");
+ log.println("Exception occurred while checking 'setCurrentPage()'");
ex.printStackTrace(log);
tRes.tested("setCurrentPage()",false);
} catch (com.sun.star.lang.IllegalArgumentException ex) {
- log.println("Exception occured while checking 'setCurrentPage()'");
+ log.println("Exception occurred while checking 'setCurrentPage()'");
ex.printStackTrace(log);
tRes.tested("setCurrentPage()",false);
}
diff --git a/qadevOOo/tests/java/ifc/drawing/_XMasterPageTarget.java b/qadevOOo/tests/java/ifc/drawing/_XMasterPageTarget.java
index 08ceea7c1aa9..bc3f1c41838a 100644
--- a/qadevOOo/tests/java/ifc/drawing/_XMasterPageTarget.java
+++ b/qadevOOo/tests/java/ifc/drawing/_XMasterPageTarget.java
@@ -94,7 +94,7 @@ public class _XMasterPageTarget extends MultiMethodTest{
// get the new MasterPage
DrawPage = oObj.getMasterPage();
- // test the diffrent MasterPages
+ // test the different MasterPages
if (DrawPage.equals(oOldPage)) result = false;
tRes.tested("setMasterPage()",result);
diff --git a/qadevOOo/tests/java/ifc/form/_DataAwareControlModel.java b/qadevOOo/tests/java/ifc/form/_DataAwareControlModel.java
index dd5ea363df9e..77f7abfd5224 100644
--- a/qadevOOo/tests/java/ifc/form/_DataAwareControlModel.java
+++ b/qadevOOo/tests/java/ifc/form/_DataAwareControlModel.java
@@ -102,7 +102,7 @@ public class _DataAwareControlModel extends MultiPropertyTest {
* 'Address'. <p>
* Has <b> OK </b> status if the proeprty was properly set
* and no exceptions were thrown. If old and new values are equal
- * the test is OK if no exceptions occured and the value remains
+ * the test is OK if no exceptions occurred and the value remains
* the same.<p>
*/
public void _DataField() {
diff --git a/qadevOOo/tests/java/ifc/form/_XFormController.java b/qadevOOo/tests/java/ifc/form/_XFormController.java
index 2af5b05a6574..db48cd4e50ca 100644
--- a/qadevOOo/tests/java/ifc/form/_XFormController.java
+++ b/qadevOOo/tests/java/ifc/form/_XFormController.java
@@ -56,7 +56,7 @@ public class _XFormController extends MultiMethodTest {
XWindow otherWind = null;
/**
- * Listener which determines and stores events occured.
+ * Listener which determines and stores events occurred.
*/
protected class MyListener implements XFormControllerListener {
public boolean activated = false ;
diff --git a/qadevOOo/tests/java/ifc/form/_XGrid.java b/qadevOOo/tests/java/ifc/form/_XGrid.java
index ca0830486b4f..e1f64286ee7f 100644
--- a/qadevOOo/tests/java/ifc/form/_XGrid.java
+++ b/qadevOOo/tests/java/ifc/form/_XGrid.java
@@ -63,7 +63,7 @@ public class _XGrid extends MultiMethodTest {
/**
* The method called. Then CurrentColumnPosition is obtained, changed
* and saved.
- * Has <b> OK </b> status if no exceptions was occured.
+ * Has <b> OK </b> status if no exceptions was occurred.
*/
public void _setCurrentColumnPosition() {
log.println("Testing setCurrentColumnPosition()...");
diff --git a/qadevOOo/tests/java/ifc/form/_XGridColumnFactory.java b/qadevOOo/tests/java/ifc/form/_XGridColumnFactory.java
index daf64f7b686b..7ea5f8130fb7 100644
--- a/qadevOOo/tests/java/ifc/form/_XGridColumnFactory.java
+++ b/qadevOOo/tests/java/ifc/form/_XGridColumnFactory.java
@@ -66,7 +66,7 @@ public class _XGridColumnFactory extends MultiMethodTest {
tRes.tested("createColumn()",column!=null);
}
catch (com.sun.star.lang.IllegalArgumentException ex) {
- log.println("Exception occured while creating Column");
+ log.println("Exception occurred while creating Column");
tRes.tested("createColumn()",false);
}
}
diff --git a/qadevOOo/tests/java/ifc/form/_XGridFieldDataSupplier.java b/qadevOOo/tests/java/ifc/form/_XGridFieldDataSupplier.java
index 6ef186d66726..5b0440d79cfd 100644
--- a/qadevOOo/tests/java/ifc/form/_XGridFieldDataSupplier.java
+++ b/qadevOOo/tests/java/ifc/form/_XGridFieldDataSupplier.java
@@ -43,7 +43,7 @@ public class _XGridFieldDataSupplier extends MultiMethodTest {
/**
* Calls the method and checks returned value. <p>
- * Has <b> OK </b> status if no runtime exceptions occured
+ * Has <b> OK </b> status if no runtime exceptions occurred
* and returned value is not null.
*/
public void _queryFieldDataType() {
@@ -53,7 +53,7 @@ public class _XGridFieldDataSupplier extends MultiMethodTest {
/**
* Calls the method and checks returned value. <p>
- * Has <b> OK </b> status if no runtime exceptions occured
+ * Has <b> OK </b> status if no runtime exceptions occurred
* and returned value is not null.
*/
public void _queryFieldData() {
diff --git a/qadevOOo/tests/java/ifc/form/_XLoadable.java b/qadevOOo/tests/java/ifc/form/_XLoadable.java
index 3515d4ce2463..20c889208b3c 100644
--- a/qadevOOo/tests/java/ifc/form/_XLoadable.java
+++ b/qadevOOo/tests/java/ifc/form/_XLoadable.java
@@ -204,7 +204,7 @@ public class _XLoadable extends MultiMethodTest {
/**
* Adds a listener. If its methods are called or not is checked
* in other object methods. <p>
- * Has <b> OK </b> status if no runtime exceptions occured.
+ * Has <b> OK </b> status if no runtime exceptions occurred.
*/
public void _addLoadListener() {
diff --git a/qadevOOo/tests/java/ifc/form/_XUpdateBroadcaster.java b/qadevOOo/tests/java/ifc/form/_XUpdateBroadcaster.java
index 1a7c5bbd33d1..c011efd52fe5 100644
--- a/qadevOOo/tests/java/ifc/form/_XUpdateBroadcaster.java
+++ b/qadevOOo/tests/java/ifc/form/_XUpdateBroadcaster.java
@@ -42,7 +42,7 @@ import com.sun.star.lang.EventObject;
* <li> <code>'XUpdateBroadcaster.Checker'</code> : <code>
* _XUpdateBroadcaster.UpdateChecker</code> interface implementation
* which can update, commit data and check if the data was successfully
-* commited.</li>
+* committed.</li>
* <ul> <p>
* Test is <b> NOT </b> multithread compilant. <p>
* @see com.sun.star.form.XUpdateBroadcaster
@@ -53,8 +53,8 @@ public class _XUpdateBroadcaster extends MultiMethodTest {
UpdateChecker checker = null ;
/**
- * Interface for relation. Updating, commiting and checking
- * if data was commited is object dependent behaviour.
+ * Interface for relation. Updating, committing and checking
+ * if data was committed is object dependent behaviour.
*/
public static interface UpdateChecker {
/**
@@ -66,9 +66,9 @@ public class _XUpdateBroadcaster extends MultiMethodTest {
*/
public void commit() throws com.sun.star.uno.Exception ;
/**
- * Checks if the data commited by <code>commit</code> method
+ * Checks if the data committed by <code>commit</code> method
* became permanent in data source.
- * @return <code>true</code> if data was commited.
+ * @return <code>true</code> if data was committed.
*/
public boolean wasCommited() throws com.sun.star.uno.Exception ;
}
@@ -130,7 +130,7 @@ public class _XUpdateBroadcaster extends MultiMethodTest {
* Has <b>OK</b> status if on update rejected only <code>
* approveUpdate</code> listener method was called, and if
* on update approved <code>approveUpdate</code> and
- * <code>updated</code> methods called, and data was commited
+ * <code>updated</code> methods called, and data was committed
* to the source.
*/
public void _addUpdateListener() {
@@ -143,18 +143,18 @@ public class _XUpdateBroadcaster extends MultiMethodTest {
shortWait() ;
checker.commit() ;
shortWait() ;
- boolean commited = checker.wasCommited() ;
+ boolean committed = checker.wasCommited() ;
shortWait() ;
bResult = listener.approveCalled &&
! listener.updateCalled &&
- ! commited ;
+ ! committed ;
log.println("Calling with no approving : approveUpdate() was " +
(listener.approveCalled ? "":"NOT")+" called, updated() was "+
(listener.updateCalled ? "":"NOT")+" called, the value was " +
- (commited ? "" : "NOT") + " commited.") ;
+ (committed ? "" : "NOT") + " committed.") ;
shortWait() ;
@@ -165,18 +165,18 @@ public class _XUpdateBroadcaster extends MultiMethodTest {
shortWait() ;
checker.commit() ;
shortWait() ;
- commited = checker.wasCommited() ;
+ committed = checker.wasCommited() ;
shortWait() ;
log.println("Calling with approving : approveUpdate() was " +
(listener.approveCalled ? "":"NOT")+" called, updated() was "+
(listener.updateCalled ? "":"NOT")+" called, the value was "+
- (commited ? "" : "NOT") + " commited.") ;
+ (committed ? "" : "NOT") + " committed.") ;
bResult = listener.approveCalled &&
listener.updateCalled &&
- commited ;
+ committed ;
} catch (com.sun.star.uno.Exception e) {
bResult = false ;
e.printStackTrace(log) ;
@@ -215,7 +215,7 @@ public class _XUpdateBroadcaster extends MultiMethodTest {
! listener.updateCalled ;
}
catch (com.sun.star.uno.Exception e) {
- log.println("Exception occured during removeUpdateListener()");
+ log.println("Exception occurred during removeUpdateListener()");
e.printStackTrace(log);
bResult = false;
}
diff --git a/qadevOOo/tests/java/ifc/form/validation/_XValidatableFormComponent.java b/qadevOOo/tests/java/ifc/form/validation/_XValidatableFormComponent.java
index 82e7789a4852..54b3816bf127 100644
--- a/qadevOOo/tests/java/ifc/form/validation/_XValidatableFormComponent.java
+++ b/qadevOOo/tests/java/ifc/form/validation/_XValidatableFormComponent.java
@@ -142,17 +142,17 @@ public class _XValidatableFormComponent extends MultiMethodTest
}
catch (com.sun.star.beans.PropertyVetoException e)
{
- log.println("Exception occured while setting properties");
+ log.println("Exception occurred while setting properties");
e.printStackTrace(log);
}
catch (com.sun.star.lang.IllegalArgumentException e)
{
- log.println("Exception occured while setting properties");
+ log.println("Exception occurred while setting properties");
e.printStackTrace(log);
}
catch (com.sun.star.lang.WrappedTargetException e)
{
- log.println("Exception occured while setting properties");
+ log.println("Exception occurred while setting properties");
e.printStackTrace(log);
}
// end of try-catch
diff --git a/qadevOOo/tests/java/ifc/frame/_XComponentLoader.java b/qadevOOo/tests/java/ifc/frame/_XComponentLoader.java
index 8c5a91f1d186..c892a4ba229c 100644
--- a/qadevOOo/tests/java/ifc/frame/_XComponentLoader.java
+++ b/qadevOOo/tests/java/ifc/frame/_XComponentLoader.java
@@ -135,12 +135,12 @@ public class _XComponentLoader extends MultiMethodTest {
}
catch (com.sun.star.lang.IllegalArgumentException e) {
- log.println("Exception occured while loading");
+ log.println("Exception occurred while loading");
e.printStackTrace(log);
result=false;
}
catch (com.sun.star.io.IOException e) {
- log.println("Exception occured while loading");
+ log.println("Exception occurred while loading");
e.printStackTrace(log);
result=false;
}
diff --git a/qadevOOo/tests/java/ifc/frame/_XDispatch.java b/qadevOOo/tests/java/ifc/frame/_XDispatch.java
index 56043a001089..7a824a3e360c 100644
--- a/qadevOOo/tests/java/ifc/frame/_XDispatch.java
+++ b/qadevOOo/tests/java/ifc/frame/_XDispatch.java
@@ -197,7 +197,7 @@ public class _XDispatch extends MultiMethodTest {
/**
* Adds two listeners. <p>
- * Has <b> OK </b> status if no runtime exceptions occured.
+ * Has <b> OK </b> status if no runtime exceptions occurred.
*/
public void _addStatusListener() {
diff --git a/qadevOOo/tests/java/ifc/frame/_XDocumentTemplates.java b/qadevOOo/tests/java/ifc/frame/_XDocumentTemplates.java
index 2d386c525614..0a89a1cda12e 100644
--- a/qadevOOo/tests/java/ifc/frame/_XDocumentTemplates.java
+++ b/qadevOOo/tests/java/ifc/frame/_XDocumentTemplates.java
@@ -203,7 +203,7 @@ public class _XDocumentTemplates extends MultiMethodTest {
statRes.next();
}
} catch (com.sun.star.sdbc.SQLException e) {
- log.println("Exception occured:" + e);
+ log.println("Exception occurred:" + e);
}
return ret;
@@ -214,7 +214,7 @@ public class _XDocumentTemplates extends MultiMethodTest {
try {
statResSet = getDynaResultSet(content).getStaticResultSet();
} catch(com.sun.star.ucb.ListenerAlreadySetException e) {
- log.println("Exception occured:" + e);
+ log.println("Exception occurred:" + e);
}
return statResSet;
}
@@ -263,7 +263,7 @@ public class _XDocumentTemplates extends MultiMethodTest {
statRes.next();
}
} catch(com.sun.star.sdbc.SQLException e) {
- log.println("Exception occured:" + e);
+ log.println("Exception occurred:" + e);
}
return subContent;
diff --git a/qadevOOo/tests/java/ifc/frame/_XFrame.java b/qadevOOo/tests/java/ifc/frame/_XFrame.java
index 1d85f15d77d0..1f6eb7e78752 100644
--- a/qadevOOo/tests/java/ifc/frame/_XFrame.java
+++ b/qadevOOo/tests/java/ifc/frame/_XFrame.java
@@ -443,7 +443,7 @@ public class _XFrame extends MultiMethodTest {
/**
* Test calls the method. Remembered old creater is restored at the end. <p>
- * Has <b> OK </b> status if the method sucessfully set new value to (XFrame)
+ * Has <b> OK </b> status if the method successfully set new value to (XFrame)
* oObj object.
*/
public void _setCreator() {
@@ -541,7 +541,7 @@ public class _XFrame extends MultiMethodTest {
try {
oObj.initialize(win) ;
} catch (com.sun.star.uno.RuntimeException e){
- String message="Frame::initialized() is called more then once, which isnt usefull nor allowed.";
+ String message="Frame::initialized() is called more then once, which isn't useful nor allowed.";
if (e.toString().indexOf(message) != -1){
log.println(e.toString());
log.println("methods throws exception, but it's OK");
diff --git a/qadevOOo/tests/java/ifc/frame/_XFrameLoader.java b/qadevOOo/tests/java/ifc/frame/_XFrameLoader.java
index c22e2d141062..d8d2b19f5f3f 100644
--- a/qadevOOo/tests/java/ifc/frame/_XFrameLoader.java
+++ b/qadevOOo/tests/java/ifc/frame/_XFrameLoader.java
@@ -53,11 +53,11 @@ import com.sun.star.uno.UnoRuntime;
* <li> <code>'FrameLoader.Frame'</code> <b>(optional)</b>
* (of type <code>com.sun.star.frame.XFrame</code>):
* a target frame where component to be loaded. If this
-* relation is ommited then a text document created and its
+* relation is omitted then a text document created and its
* frame is used. </li>
* <li> <code>'FrameLoader.args'</code> <b>(optional)</b>
* (of type <code>Object[]</code>):
-* necessary arguuments for loading a component. If ommited
+* necessary arguuments for loading a component. If omitted
* then zero length array is passed as parameter</li>
* <ul> <p>
* Test is <b> NOT </b> multithread compilant. <p>
@@ -138,8 +138,8 @@ public class _XFrameLoader extends MultiMethodTest {
* listener have a chance to be called and then checks
* if the load listener was called. <p>
* Has <b>OK</b> status if <code>cancel</code> method test
- * didn't interrupt loading and it was successfull, or
- * if in this method it loads successfull and listener's
+ * didn't interrupt loading and it was successful, or
+ * if in this method it loads successful and listener's
* <code>finished</code> method was called.
* The following method tests are to be executed before :
* <ul>
@@ -161,7 +161,7 @@ public class _XFrameLoader extends MultiMethodTest {
}
/**
- * Starts to load a component and then immediatly tries to
+ * Starts to load a component and then immediately tries to
* cancel the process. <p>
* Has <b>OK</b> status if the process was cancelled or
* finished (appropriate listener methods were called).
diff --git a/qadevOOo/tests/java/ifc/frame/_XFramesSupplier.java b/qadevOOo/tests/java/ifc/frame/_XFramesSupplier.java
index 84c8bc19314a..e5c08dc5a7bb 100644
--- a/qadevOOo/tests/java/ifc/frame/_XFramesSupplier.java
+++ b/qadevOOo/tests/java/ifc/frame/_XFramesSupplier.java
@@ -84,11 +84,11 @@ public class _XFramesSupplier extends MultiMethodTest {
log.println("Can't convert any");
}
} catch (com.sun.star.lang.WrappedTargetException e) {
- log.println("Exception occured while calling getByIndex() method :") ;
+ log.println("Exception occurred while calling getByIndex() method :") ;
e.printStackTrace(log) ;
return;
} catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- log.println("Exception occured while calling getByIndex() method :") ;
+ log.println("Exception occurred while calling getByIndex() method :") ;
e.printStackTrace(log) ;
return;
}
@@ -132,11 +132,11 @@ public class _XFramesSupplier extends MultiMethodTest {
result = false ;
}
} catch (com.sun.star.lang.WrappedTargetException e) {
- log.println("Exception occured while calling getByIndex() method :") ;
+ log.println("Exception occurred while calling getByIndex() method :") ;
e.printStackTrace(log) ;
return;
} catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- log.println("Exception occured while calling getByIndex() method :") ;
+ log.println("Exception occurred while calling getByIndex() method :") ;
e.printStackTrace(log) ;
return;
}
@@ -177,11 +177,11 @@ public class _XFramesSupplier extends MultiMethodTest {
log.println("Can't convert any");
}
} catch (com.sun.star.lang.WrappedTargetException e) {
- log.println("Exception occured while calling getByIndex() method :") ;
+ log.println("Exception occurred while calling getByIndex() method :") ;
e.printStackTrace(log) ;
return;
} catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- log.println("Exception occured while calling getByIndex() method :") ;
+ log.println("Exception occurred while calling getByIndex() method :") ;
e.printStackTrace(log) ;
return;
}
diff --git a/qadevOOo/tests/java/ifc/frame/_XModel.java b/qadevOOo/tests/java/ifc/frame/_XModel.java
index 2afe82f52c65..cdb38cedf527 100644
--- a/qadevOOo/tests/java/ifc/frame/_XModel.java
+++ b/qadevOOo/tests/java/ifc/frame/_XModel.java
@@ -152,7 +152,7 @@ public class _XModel extends MultiMethodTest {
try {
selsupp.select(toSelect);
} catch (com.sun.star.lang.IllegalArgumentException e) {
- log.println("Exception occured while select:");
+ log.println("Exception occurred while select:");
e.printStackTrace(log);
return;
diff --git a/qadevOOo/tests/java/ifc/frame/_XModuleManager.java b/qadevOOo/tests/java/ifc/frame/_XModuleManager.java
index ab4185cce408..42734cc92641 100644
--- a/qadevOOo/tests/java/ifc/frame/_XModuleManager.java
+++ b/qadevOOo/tests/java/ifc/frame/_XModuleManager.java
@@ -60,7 +60,7 @@ public class _XModuleManager extends MultiMethodTest {
* The onject relations <CODE>XModuleManager.XFrame</CODE>,
* <CODE>XModuleManager.XController</CODE> and <CODE>XModuleManager.XModel</CODE>
* are sequenzes of <CODE>PropertyValue</CODE>. The value of a PropertyValue
- * containes a <CODE>XFrame</CODE>, <CODE>XController</CODE> or a
+ * contains a <CODE>XFrame</CODE>, <CODE>XController</CODE> or a
* <CODE>XModel</CODE>. The name of the PropertyValue contains the expected return
* value of method <CODE>indetify()</CODE> if the method was called with
* coresponding value.<p>
diff --git a/qadevOOo/tests/java/ifc/frame/_XStorable.java b/qadevOOo/tests/java/ifc/frame/_XStorable.java
index 50a73ed6d8f6..42f5798a1eab 100644
--- a/qadevOOo/tests/java/ifc/frame/_XStorable.java
+++ b/qadevOOo/tests/java/ifc/frame/_XStorable.java
@@ -78,7 +78,7 @@ public class _XStorable extends MultiMethodTest {
// else try to obtain location
requiredMethod("storeAsURL()");
if (storeUrl != null) {
- // if stored succesfully - check location
+ // if stored successfully - check location
log.println(oObj.getLocation() + "--" + storeUrl);
tRes.tested("getLocation()",
storeUrl.equals(oObj.getLocation()));
@@ -103,7 +103,7 @@ public class _XStorable extends MultiMethodTest {
public void _hasLocation() {
requiredMethod("storeAsURL()");
if (storeUrl != null) {
- // if stored succesfully - it should have a location
+ // if stored successfully - it should have a location
tRes.tested("hasLocation()", oObj.hasLocation());
} else {
// if not - it should not
@@ -186,7 +186,7 @@ public class _XStorable extends MultiMethodTest {
* Has <b> OK </b> status if:
* <ol>
* <li>component was stored, object is not readonly and has location</li>
- * <li>exception occured because of component is readonly
+ * <li>exception occurred because of component is readonly
* and wasn't stored</li>
* </ol>
*/
diff --git a/qadevOOo/tests/java/ifc/frame/_XSynchronousFrameLoader.java b/qadevOOo/tests/java/ifc/frame/_XSynchronousFrameLoader.java
index e7ab70c33eb5..36da8663dc9c 100644
--- a/qadevOOo/tests/java/ifc/frame/_XSynchronousFrameLoader.java
+++ b/qadevOOo/tests/java/ifc/frame/_XSynchronousFrameLoader.java
@@ -52,7 +52,7 @@ import com.sun.star.util.XURLTransformer;
* <li> <code>'FrameLoader.Frame'</code> <b>(optional)</b>
* (of type <code>com.sun.star.frame.XFrame</code>):
* a target frame where component to be loaded. If this
- * relation is ommited then a text document created and its
+ * relation is omitted then a text document created and its
* frame is used. </li>
* <ul> <p>
*
@@ -139,7 +139,7 @@ public class _XSynchronousFrameLoader extends MultiMethodTest {
/**
* Tries to load component to a frame in separate thread to
- * avoid blocking of the current thread and imediately
+ * avoid blocking of the current thread and immediately
* cancels loading. <p>
*
* Has <b> OK </b> status if <code>flase</code> is returned,
diff --git a/qadevOOo/tests/java/ifc/i18n/_XBreakIterator.java b/qadevOOo/tests/java/ifc/i18n/_XBreakIterator.java
index 40eed9c33c7e..4da53dcaf964 100644
--- a/qadevOOo/tests/java/ifc/i18n/_XBreakIterator.java
+++ b/qadevOOo/tests/java/ifc/i18n/_XBreakIterator.java
@@ -460,7 +460,7 @@ public class _XBreakIterator extends MultiMethodTest {
private static String arabic = new String(new char[] {0x0641, 0x0642}) ;
/**
- * Tries to find the begining of the nearest script specified
+ * Tries to find the beginning of the nearest script specified
* relatively to position passed. <p>
* Has <b>OK</b> status if the starting position of script is returned.
*/
diff --git a/qadevOOo/tests/java/ifc/i18n/_XCalendar.java b/qadevOOo/tests/java/ifc/i18n/_XCalendar.java
index 54a8e74285fd..18f0486a7b66 100644
--- a/qadevOOo/tests/java/ifc/i18n/_XCalendar.java
+++ b/qadevOOo/tests/java/ifc/i18n/_XCalendar.java
@@ -331,7 +331,7 @@ public class _XCalendar extends MultiMethodTest {
short get = oObj.getValue(fields[k]);
if (get != set) {
if (debug)
- log.println("ERROR occure: tried to set " + names[k] + " to value " + set);
+ log.println("ERROR occur: tried to set " + names[k] + " to value " + set);
log.println("list of values BEFORE set " + names[k] + " to value " + set + ":");
for (int n=0; n < oldValues.length; n++){
log.println(names[n] + ":" + oldValues[n]);
diff --git a/qadevOOo/tests/java/ifc/inspection/_XObjectInspector.java b/qadevOOo/tests/java/ifc/inspection/_XObjectInspector.java
index c070c7b0eb1d..a50148bfd965 100644
--- a/qadevOOo/tests/java/ifc/inspection/_XObjectInspector.java
+++ b/qadevOOo/tests/java/ifc/inspection/_XObjectInspector.java
@@ -90,7 +90,7 @@ public class _XObjectInspector extends MultiMethodTest {
/**
* Inspects a new collection of one or more objects given by object realtion
* <CODE>XObjectInspector.toInspect</CODE><br>
- * Has <b>OK</b> status if no runtime exceptions occured.
+ * Has <b>OK</b> status if no runtime exceptions occurred.
*/
public void _inspect() {
diff --git a/qadevOOo/tests/java/ifc/io/_XActiveDataControl.java b/qadevOOo/tests/java/ifc/io/_XActiveDataControl.java
index a9c3c3d5e060..8d2436dc7fa8 100644
--- a/qadevOOo/tests/java/ifc/io/_XActiveDataControl.java
+++ b/qadevOOo/tests/java/ifc/io/_XActiveDataControl.java
@@ -139,7 +139,7 @@ public class _XActiveDataControl extends MultiMethodTest {
oObj.start();
- // waiting a little bit for data transfered
+ // waiting a little bit for data transferred
try {
Thread.sleep(200);
} catch (InterruptedException e) {
@@ -212,7 +212,7 @@ public class _XActiveDataControl extends MultiMethodTest {
throw new StatusException(Status.failed(e.getMessage()));
}
- // check, if any error occured
+ // check, if any error occurred
if (errorCalled) {
Status.failed("Unexpected error");
log.println("Unexpected error " + error);
diff --git a/qadevOOo/tests/java/ifc/io/_XActiveDataSink.java b/qadevOOo/tests/java/ifc/io/_XActiveDataSink.java
index f515723c2ea9..7156c4b33145 100644
--- a/qadevOOo/tests/java/ifc/io/_XActiveDataSink.java
+++ b/qadevOOo/tests/java/ifc/io/_XActiveDataSink.java
@@ -66,7 +66,7 @@ public class _XActiveDataSink extends MultiMethodTest {
/**
* Just sets new input stream. <p>
- * Has <b>OK</b> status if no runtime exceptions occured.
+ * Has <b>OK</b> status if no runtime exceptions occurred.
*/
public void _setInputStream() {
oObj.setInputStream(iStream) ;
diff --git a/qadevOOo/tests/java/ifc/io/_XMarkableStream.java b/qadevOOo/tests/java/ifc/io/_XMarkableStream.java
index b197b568ecf4..ecfce41c5772 100644
--- a/qadevOOo/tests/java/ifc/io/_XMarkableStream.java
+++ b/qadevOOo/tests/java/ifc/io/_XMarkableStream.java
@@ -135,7 +135,7 @@ public class _XMarkableStream extends MultiMethodTest {
* The following method tests are to be completed successfully before :
* <ul>
* <li> <code> jumpToFurthest() </code> : for the right order of tests
- * excecution </li>
+ * execution </li>
* </ul>
*/
public void _jumpToMark() {
diff --git a/qadevOOo/tests/java/ifc/io/_XPersistObject.java b/qadevOOo/tests/java/ifc/io/_XPersistObject.java
index a35f0c6309cc..3a6976850d7f 100644
--- a/qadevOOo/tests/java/ifc/io/_XPersistObject.java
+++ b/qadevOOo/tests/java/ifc/io/_XPersistObject.java
@@ -173,7 +173,7 @@ public class _XPersistObject extends MultiMethodTest {
}
} catch (com.sun.star.uno.Exception e) {
- log.println("Exception occured : ");
+ log.println("Exception occurred : ");
e.printStackTrace(log) ;
bResult = false;
}
@@ -192,7 +192,7 @@ public class _XPersistObject extends MultiMethodTest {
initPipe();
oObj.write(oStream);
} catch (com.sun.star.io.IOException e) {
- log.println("Exception occured while test. " + e);
+ log.println("Exception occurred while test. " + e);
bResult = false;
}
tRes.tested("write()", bResult);
diff --git a/qadevOOo/tests/java/ifc/lang/_XInitialization.java b/qadevOOo/tests/java/ifc/lang/_XInitialization.java
index cfa91bea608f..b729d193ec77 100644
--- a/qadevOOo/tests/java/ifc/lang/_XInitialization.java
+++ b/qadevOOo/tests/java/ifc/lang/_XInitialization.java
@@ -73,20 +73,20 @@ public class _XInitialization extends MultiMethodTest {
result = false;
xInit.initialize(ExArgs);
} catch (com.sun.star.uno.Exception e) {
- log.println("Expected Exception 'com.sun.star.uno.Exception' occured -> OK") ;
+ log.println("Expected Exception 'com.sun.star.uno.Exception' occurred -> OK") ;
result = true ;
} catch (com.sun.star.uno.RuntimeException e) {
- log.println("Expected Exception 'com.sun.star.uno.RuntimeException' occured -> OK") ;
+ log.println("Expected Exception 'com.sun.star.uno.RuntimeException' occurred -> OK") ;
result = true ;
} catch (Exception e) {
- log.println("Un-Expected Exception occured -> FALSE") ;
+ log.println("Un-Expected Exception occurred -> FALSE") ;
log.println(e.toString());
e.printStackTrace();
}
}
} catch (com.sun.star.uno.Exception e) {
- log.println("Exception occured while method calling.") ;
+ log.println("Exception occurred while method calling.") ;
log.println(e) ;
result = false ;
}
diff --git a/qadevOOo/tests/java/ifc/lang/_XMain.java b/qadevOOo/tests/java/ifc/lang/_XMain.java
index 286f23fc1bc3..f6ad838ff12e 100644
--- a/qadevOOo/tests/java/ifc/lang/_XMain.java
+++ b/qadevOOo/tests/java/ifc/lang/_XMain.java
@@ -51,7 +51,7 @@ public class _XMain extends MultiMethodTest{
/**
* Just calls the method. <p>
*
- * Has <b> OK </b> status if no runtime exceptions occured.
+ * Has <b> OK </b> status if no runtime exceptions occurred.
*/
public void _run() {
String[] args = (String[])tEnv.getObjRelation("ARGS");
diff --git a/qadevOOo/tests/java/ifc/lang/_XMultiComponentFactory.java b/qadevOOo/tests/java/ifc/lang/_XMultiComponentFactory.java
index 1da106fecc3e..11f8383229cc 100644
--- a/qadevOOo/tests/java/ifc/lang/_XMultiComponentFactory.java
+++ b/qadevOOo/tests/java/ifc/lang/_XMultiComponentFactory.java
@@ -54,7 +54,7 @@ public class _XMultiComponentFactory extends MultiMethodTest {
/**
* Calls the method with one of the available service names
* obtained by method getAvailableServiceNames. <p>
- * Has <b> OK </b> status if no runtime exceptions occured
+ * Has <b> OK </b> status if no runtime exceptions occurred
* and returned value is not null.
*/
public void _createInstanceWithContext() {
@@ -77,7 +77,7 @@ public class _XMultiComponentFactory extends MultiMethodTest {
/**
* Calls the method with one of the available service names
* obtained by method getAvailableServiceNames. <p>
- * Has <b> OK </b> status if no runtime exceptions occured
+ * Has <b> OK </b> status if no runtime exceptions occurred
* and returned value is not null.
*/
public void _createInstanceWithArgumentsAndContext() {
@@ -99,7 +99,7 @@ public class _XMultiComponentFactory extends MultiMethodTest {
/**
* Just calls the method. <p>
- * Has <b> OK </b> status if no runtime exceptions occured
+ * Has <b> OK </b> status if no runtime exceptions occurred
* and returned value is not null.
*/
public void _getAvailableServiceNames() {
diff --git a/qadevOOo/tests/java/ifc/lang/_XMultiServiceFactory.java b/qadevOOo/tests/java/ifc/lang/_XMultiServiceFactory.java
index d8b3c79d29b8..6d82722f9f3f 100644
--- a/qadevOOo/tests/java/ifc/lang/_XMultiServiceFactory.java
+++ b/qadevOOo/tests/java/ifc/lang/_XMultiServiceFactory.java
@@ -129,7 +129,7 @@ public class _XMultiServiceFactory extends MultiMethodTest {
Object Inst = oObj.createInstance(services[k]);
res = (Inst != null);
} catch (com.sun.star.uno.Exception ex) {
- log.println("Exception occured during createInstance()");
+ log.println("Exception occurred during createInstance()");
ex.printStackTrace(log);
res = false;
}
@@ -181,7 +181,7 @@ public class _XMultiServiceFactory extends MultiMethodTest {
res &= (Inst != null);
} catch (com.sun.star.uno.Exception ex) {
log.println(
- "Exception occured during createInstanceWithArguments()");
+ "Exception occurred during createInstanceWithArguments()");
ex.printStackTrace(log);
res = false;
}
diff --git a/qadevOOo/tests/java/ifc/lang/_XServiceInfo.java b/qadevOOo/tests/java/ifc/lang/_XServiceInfo.java
index 392bb87a2192..e62dedd45316 100644
--- a/qadevOOo/tests/java/ifc/lang/_XServiceInfo.java
+++ b/qadevOOo/tests/java/ifc/lang/_XServiceInfo.java
@@ -44,7 +44,7 @@ public class _XServiceInfo extends MultiMethodTest {
/**
* Just calls the method.<p>
- * Has <b>OK</b> status if no runtime exceptions occured.
+ * Has <b>OK</b> status if no runtime exceptions occurred.
*/
public void _getImplementationName() {
boolean result = true;
@@ -60,7 +60,7 @@ public class _XServiceInfo extends MultiMethodTest {
/**
* Just calls the method.<p>
- * Has <b>OK</b> status if no runtime exceptions occured.
+ * Has <b>OK</b> status if no runtime exceptions occurred.
*/
public void _getSupportedServiceNames() {
boolean result = true;
diff --git a/qadevOOo/tests/java/ifc/lang/_XSingleServiceFactory.java b/qadevOOo/tests/java/ifc/lang/_XSingleServiceFactory.java
index 5bcff3ef771a..9f54ad84cc2b 100644
--- a/qadevOOo/tests/java/ifc/lang/_XSingleServiceFactory.java
+++ b/qadevOOo/tests/java/ifc/lang/_XSingleServiceFactory.java
@@ -108,7 +108,7 @@ public class _XSingleServiceFactory extends MultiMethodTest {
tRes.tested("createInstance()",
(negative && Inst == null) || (!negative && bOK));
} catch (com.sun.star.uno.Exception ex) {
- log.println("Exception occured during createInstance()");
+ log.println("Exception occurred during createInstance()");
if (negative) {
ex.printStackTrace(log);
}
@@ -153,7 +153,7 @@ public class _XSingleServiceFactory extends MultiMethodTest {
tRes.tested("createInstanceWithArguments()", bOK);
}
catch (com.sun.star.uno.Exception ex) {
- log.println("Exception occured during createInstanceWithArguments()");
+ log.println("Exception occurred during createInstanceWithArguments()");
ex.printStackTrace(log);
tRes.tested("createInstanceWithArguments()",false);
}
diff --git a/qadevOOo/tests/java/ifc/lang/_XTypeProvider.java b/qadevOOo/tests/java/ifc/lang/_XTypeProvider.java
index 9ae6cf36f04b..ef02af314b0e 100644
--- a/qadevOOo/tests/java/ifc/lang/_XTypeProvider.java
+++ b/qadevOOo/tests/java/ifc/lang/_XTypeProvider.java
@@ -45,7 +45,7 @@ public class _XTypeProvider extends MultiMethodTest {
/**
* Just calls the method.<p>
- * Has <b>OK</b> status if no runtime exceptions occured.
+ * Has <b>OK</b> status if no runtime exceptions occurred.
*/
public void _getImplementationId() {
boolean result = true;
diff --git a/qadevOOo/tests/java/ifc/reflection/_XProxyFactory.java b/qadevOOo/tests/java/ifc/reflection/_XProxyFactory.java
index f6bd15218609..9c0b8afdaebf 100644
--- a/qadevOOo/tests/java/ifc/reflection/_XProxyFactory.java
+++ b/qadevOOo/tests/java/ifc/reflection/_XProxyFactory.java
@@ -57,7 +57,7 @@ public class _XProxyFactory extends MultiMethodTest {
* called. The goal is to check if the real object method
* was called throwgh it's proxy. <p>
* Has <b>OK</b> status if the real object method was
- * called and paramters were passed correctly.
+ * called and parameters were passed correctly.
*/
public void _createProxy() {
class MyObject implements XInitialization {
diff --git a/qadevOOo/tests/java/ifc/registry/_XSimpleRegistry.java b/qadevOOo/tests/java/ifc/registry/_XSimpleRegistry.java
index a8c0ac5bd15a..99bb873e5456 100644
--- a/qadevOOo/tests/java/ifc/registry/_XSimpleRegistry.java
+++ b/qadevOOo/tests/java/ifc/registry/_XSimpleRegistry.java
@@ -198,7 +198,7 @@ public class _XSimpleRegistry extends MultiMethodTest {
* Has <b> OK </b> status if the method isn't supported by the component
* (the object relation <code>'NR'</code> isn't null)
* or
- * if it's supported and after successfull merging the keys mentioned
+ * if it's supported and after successful merging the keys mentioned
* above are recursively equal. <p>
*/
public void _mergeKey() {
diff --git a/qadevOOo/tests/java/ifc/sdb/_XCompletedConnection.java b/qadevOOo/tests/java/ifc/sdb/_XCompletedConnection.java
index 0de1699a4a83..18e10751e3b5 100644
--- a/qadevOOo/tests/java/ifc/sdb/_XCompletedConnection.java
+++ b/qadevOOo/tests/java/ifc/sdb/_XCompletedConnection.java
@@ -54,7 +54,7 @@ public class _XCompletedConnection extends MultiMethodTest {
* Test call the method with handler passed as object relation.
* Then value returned is checked.<p>
* Has OK status if not null value returned. <&nbsp>
- * FAILED if exception occured, null value returned or object
+ * FAILED if exception occurred, null value returned or object
* relation was not found.
*/
public void _connectWithCompletion() throws StatusException {
diff --git a/qadevOOo/tests/java/ifc/sdb/_XSingleSelectQueryAnalyzer.java b/qadevOOo/tests/java/ifc/sdb/_XSingleSelectQueryAnalyzer.java
index f73910ac37e0..1aee2aa1c924 100644
--- a/qadevOOo/tests/java/ifc/sdb/_XSingleSelectQueryAnalyzer.java
+++ b/qadevOOo/tests/java/ifc/sdb/_XSingleSelectQueryAnalyzer.java
@@ -60,7 +60,7 @@ public class _XSingleSelectQueryAnalyzer extends MultiMethodTest {
private XSingleSelectQueryComposer xComposer = null;
/**
- * Recieves the object relations:
+ * Receives the object relations:
* <ul>
* <li><code>XSingleSelectQueryComposer xCompoer</code></li>
* </ul> <p>
diff --git a/qadevOOo/tests/java/ifc/sdb/_XSingleSelectQueryComposer.java b/qadevOOo/tests/java/ifc/sdb/_XSingleSelectQueryComposer.java
index afb65f99df51..081697e3e22c 100644
--- a/qadevOOo/tests/java/ifc/sdb/_XSingleSelectQueryComposer.java
+++ b/qadevOOo/tests/java/ifc/sdb/_XSingleSelectQueryComposer.java
@@ -160,7 +160,7 @@ public class _XSingleSelectQueryComposer extends MultiMethodTest {
/**
* At first the object relation <code>xProp</code> was set as parameter.
- * Relation <code>xQueryAna</code> was used to chek if realtion
+ * Relation <code>xQueryAna</code> was used to check if realtion
* <code>colName</code> was found.
* Second an empty <code>XPropertySet</code> was used as parameter. A
* <code>com.sun.star.sdbc.SQLException</code> must be thrown.
@@ -204,7 +204,7 @@ public class _XSingleSelectQueryComposer extends MultiMethodTest {
/**
* At first the object relation <code>xProp</code> was used as parameter.
- * Relation <code>xQueryAna</code> was used to chek if realtion
+ * Relation <code>xQueryAna</code> was used to check if realtion
* <code>colName</code> was found.
* Second an empty <code>XPropertySet</code> was used as parameter. An
* <code>com.sun.star.sdbc.SQLException</code> must be thrown.
@@ -308,7 +308,7 @@ public class _XSingleSelectQueryComposer extends MultiMethodTest {
/**
* First object relation <code>xProp</code> was used as parameter. Relation
- * <code>xQueryAna</code> was used to chek if realtion <code>colName</code>
+ * <code>xQueryAna</code> was used to check if realtion <code>colName</code>
* was found.
* Second an empty <code>XPropertySet</code> was given as parameter. An
* <code>com.sun.star.sdbc.SQLException</code> must be thrown.
@@ -340,7 +340,7 @@ public class _XSingleSelectQueryComposer extends MultiMethodTest {
/**
* First object relation <code>xProp</code> was set as parameter. Relation
- * <code>xQueryAna</code> was used to chek if realtion <code>colName</code>
+ * <code>xQueryAna</code> was used to check if realtion <code>colName</code>
* was found.
* Second an empty <code>XPropertySet</code> was given as parameter. An
* <code>com.sun.star.sdbc.SQLException</code> must be thrown.
diff --git a/qadevOOo/tests/java/ifc/sdbc/_XCloseable.java b/qadevOOo/tests/java/ifc/sdbc/_XCloseable.java
index 131045378cd4..30a8501ccab4 100644
--- a/qadevOOo/tests/java/ifc/sdbc/_XCloseable.java
+++ b/qadevOOo/tests/java/ifc/sdbc/_XCloseable.java
@@ -58,7 +58,7 @@ public class _XCloseable extends MultiMethodTest {
oObj.close();
res = true;
} catch (SQLException e) {
- log.println("Unexpected SQL Exception occured:" + e) ;
+ log.println("Unexpected SQL Exception occurred:" + e) ;
res = false;
}
@@ -68,10 +68,10 @@ public class _XCloseable extends MultiMethodTest {
if (resSet != null) {
try {
resSet.first();
- log.println("Expected SQLException not occured !");
+ log.println("Expected SQLException not occurred !");
res = false;
} catch(SQLException e) {
- log.println("Expected SQLException occured");
+ log.println("Expected SQLException occurred");
res = true;
}
}
diff --git a/qadevOOo/tests/java/ifc/sdbc/_XColumnLocate.java b/qadevOOo/tests/java/ifc/sdbc/_XColumnLocate.java
index ab2061418f8b..0f9c3b89ed70 100644
--- a/qadevOOo/tests/java/ifc/sdbc/_XColumnLocate.java
+++ b/qadevOOo/tests/java/ifc/sdbc/_XColumnLocate.java
@@ -69,7 +69,7 @@ public class _XColumnLocate extends MultiMethodTest {
int colIdx = oObj.findColumn(colName) ;
result = colIdx == 1 ;
} catch (SQLException e) {
- log.println("Exception occured:");
+ log.println("Exception occurred:");
e.printStackTrace(log);
result = false;
}
diff --git a/qadevOOo/tests/java/ifc/sdbc/_XIsolatedConnection.java b/qadevOOo/tests/java/ifc/sdbc/_XIsolatedConnection.java
index 39fa5359ca4d..ed5a462a79af 100644
--- a/qadevOOo/tests/java/ifc/sdbc/_XIsolatedConnection.java
+++ b/qadevOOo/tests/java/ifc/sdbc/_XIsolatedConnection.java
@@ -55,7 +55,7 @@ public class _XIsolatedConnection extends MultiMethodTest {
* Test call the method with handler passed as object relation.
* Then value returned is checked.<p>
* Has OK status if not null value returned. <&nbsp>
- * FAILED if exception occured, null value returned or object
+ * FAILED if exception occurred, null value returned or object
* relation was not found.
*/
public void _getIsolatedConnectionWithCompletion() throws StatusException {
@@ -82,7 +82,7 @@ public class _XIsolatedConnection extends MultiMethodTest {
* Test call the method with handler passed as object relation.
* Then value returned is checked.<p>
* Has OK status if not null value returned. <&nbsp>
- * FAILED if exception occured, null value returned or object
+ * FAILED if exception occurred, null value returned or object
* relation was not found.
*/
public void _getIsolatedConnection() throws StatusException {
diff --git a/qadevOOo/tests/java/ifc/sdbc/_XParameters.java b/qadevOOo/tests/java/ifc/sdbc/_XParameters.java
index 318fecb33e45..c87b92e29f41 100644
--- a/qadevOOo/tests/java/ifc/sdbc/_XParameters.java
+++ b/qadevOOo/tests/java/ifc/sdbc/_XParameters.java
@@ -114,7 +114,7 @@ public class _XParameters extends MultiMethodTest {
/**
* Sets String parameter (if exists) to SQL NULL value. <p>
- * Has OK status if no exceptions occured.
+ * Has OK status if no exceptions occurred.
*/
public void _setNull() {
boolean result = true ;
@@ -142,7 +142,7 @@ public class _XParameters extends MultiMethodTest {
/**
* Sets String parameter (if exists) to new value. <p>
- * Has OK status if no exceptions occured.
+ * Has OK status if no exceptions occurred.
*/
public void _setString() {
boolean result = true ;
@@ -163,7 +163,7 @@ public class _XParameters extends MultiMethodTest {
/**
* Sets parameter (if exists) to new value. <p>
- * Has OK status if no exceptions occured.
+ * Has OK status if no exceptions occurred.
*/
public void _setBoolean() {
boolean result = true ;
@@ -184,7 +184,7 @@ public class _XParameters extends MultiMethodTest {
/**
* Sets parameter (if exists) to new value. <p>
- * Has OK status if no exceptions occured.
+ * Has OK status if no exceptions occurred.
*/
public void _setByte() {
boolean result = true ;
@@ -205,7 +205,7 @@ public class _XParameters extends MultiMethodTest {
/**
* Sets parameter (if exists) to new value. <p>
- * Has OK status if no exceptions occured.
+ * Has OK status if no exceptions occurred.
*/
public void _setShort() {
boolean result = true ;
@@ -226,7 +226,7 @@ public class _XParameters extends MultiMethodTest {
/**
* Sets parameter (if exists) to new value. <p>
- * Has OK status if no exceptions occured.
+ * Has OK status if no exceptions occurred.
*/
public void _setInt() {
boolean result = true ;
@@ -247,7 +247,7 @@ public class _XParameters extends MultiMethodTest {
/**
* Sets parameter (if exists) to new value. <p>
- * Has OK status if no exceptions occured.
+ * Has OK status if no exceptions occurred.
*/
public void _setLong() {
boolean result = true ;
@@ -268,7 +268,7 @@ public class _XParameters extends MultiMethodTest {
/**
* Sets parameter (if exists) to new value. <p>
- * Has OK status if no exceptions occured.
+ * Has OK status if no exceptions occurred.
*/
public void _setFloat() {
boolean result = true ;
@@ -289,7 +289,7 @@ public class _XParameters extends MultiMethodTest {
/**
* Sets parameter (if exists) to new value. <p>
- * Has OK status if no exceptions occured.
+ * Has OK status if no exceptions occurred.
*/
public void _setDouble() {
boolean result = true ;
@@ -310,7 +310,7 @@ public class _XParameters extends MultiMethodTest {
/**
* Sets parameter (if exists) to new value. <p>
- * Has OK status if no exceptions occured.
+ * Has OK status if no exceptions occurred.
*/
public void _setBytes() {
boolean result = true ;
@@ -331,7 +331,7 @@ public class _XParameters extends MultiMethodTest {
/**
* Sets parameter (if exists) to new value. <p>
- * Has OK status if no exceptions occured.
+ * Has OK status if no exceptions occurred.
*/
public void _setDate() {
boolean result = true ;
@@ -353,7 +353,7 @@ public class _XParameters extends MultiMethodTest {
/**
* Sets parameter (if exists) to new value. <p>
- * Has OK status if no exceptions occured.
+ * Has OK status if no exceptions occurred.
*/
public void _setTime() {
boolean result = true ;
@@ -375,7 +375,7 @@ public class _XParameters extends MultiMethodTest {
/**
* Sets parameter (if exists) to new value. <p>
- * Has OK status if no exceptions occured.
+ * Has OK status if no exceptions occurred.
*/
public void _setTimestamp() {
boolean result = true ;
@@ -397,7 +397,7 @@ public class _XParameters extends MultiMethodTest {
/**
* Sets parameter (if exists) to new value. <p>
- * Has OK status if no exceptions occured.
+ * Has OK status if no exceptions occurred.
*/
public void _setBinaryStream() {
boolean result = true ;
@@ -427,7 +427,7 @@ public class _XParameters extends MultiMethodTest {
/**
* Sets parameter (if exists) to new value. <p>
- * Has OK status if no exceptions occured.
+ * Has OK status if no exceptions occurred.
*/
public void _setCharacterStream() {
boolean result = true ;
@@ -457,7 +457,7 @@ public class _XParameters extends MultiMethodTest {
/**
* Sets parameter (if exists) to new value. <p>
- * Has OK status if no exceptions occured.
+ * Has OK status if no exceptions occurred.
*/
public void _setObject() {
boolean result = true ;
@@ -485,7 +485,7 @@ public class _XParameters extends MultiMethodTest {
/**
* Sets parameter (if exists) to new value. <p>
- * Has OK status if no exceptions occured.
+ * Has OK status if no exceptions occurred.
*/
public void _setObjectWithInfo() {
boolean result = true ;
@@ -538,7 +538,7 @@ public class _XParameters extends MultiMethodTest {
/**
* Calls method. <p>
- * Has OK status if no exceptions occured.
+ * Has OK status if no exceptions occurred.
*/
public void _clearParameters() {
boolean result = true ;
diff --git a/qadevOOo/tests/java/ifc/sdbc/_XResultSet.java b/qadevOOo/tests/java/ifc/sdbc/_XResultSet.java
index 1e2b8e8a799d..169f5c0d74cf 100644
--- a/qadevOOo/tests/java/ifc/sdbc/_XResultSet.java
+++ b/qadevOOo/tests/java/ifc/sdbc/_XResultSet.java
@@ -102,7 +102,7 @@ public class _XResultSet extends MultiMethodTest {
try {
oObj.beforeFirst() ;
} catch (SQLException e) {
- log.println("Exception occured :") ;
+ log.println("Exception occurred :") ;
e.printStackTrace(log) ;
tRes.tested("beforeFirst()", false) ;
return ;
@@ -111,7 +111,7 @@ public class _XResultSet extends MultiMethodTest {
}
/**
- * The method is called immediatly after <code>beforeFirst</code>
+ * The method is called immediately after <code>beforeFirst</code>
* method test. <p>
* Has <b>OK</b> status if method returns <code>true</code>. <p>
* The following method tests are to be completed successfully before :
@@ -128,7 +128,7 @@ public class _XResultSet extends MultiMethodTest {
try {
result = oObj.isBeforeFirst() ;
} catch (SQLException e) {
- log.println("Exception occured :") ;
+ log.println("Exception occurred :") ;
e.printStackTrace(log) ;
result = false ;
}
@@ -143,7 +143,7 @@ public class _XResultSet extends MultiMethodTest {
try {
oObj.afterLast() ;
} catch (SQLException e) {
- log.println("Exception occured :") ;
+ log.println("Exception occurred :") ;
e.printStackTrace(log) ;
tRes.tested("afterLast()", false) ;
return ;
@@ -152,7 +152,7 @@ public class _XResultSet extends MultiMethodTest {
}
/**
- * The method is called immediatly after <code>afterLast</code>
+ * The method is called immediately after <code>afterLast</code>
* method test. <p>
* Has <b>OK</b> status if method returns <code>true</code> <p>
* The following method tests are to be completed successfully before :
@@ -169,7 +169,7 @@ public class _XResultSet extends MultiMethodTest {
try {
result = oObj.isAfterLast() ;
} catch (SQLException e) {
- log.println("Exception occured :") ;
+ log.println("Exception occurred :") ;
e.printStackTrace(log) ;
result = false ;
}
@@ -184,7 +184,7 @@ public class _XResultSet extends MultiMethodTest {
try {
oObj.first() ;
} catch (SQLException e) {
- log.println("Exception occured :") ;
+ log.println("Exception occurred :") ;
e.printStackTrace(log) ;
tRes.tested("first()", false) ;
return ;
@@ -193,7 +193,7 @@ public class _XResultSet extends MultiMethodTest {
}
/**
- * The method is called immediatly after <code>first</code>
+ * The method is called immediately after <code>first</code>
* method test. <p>
* Has <b>OK</b> status if method returns <code>true</code>. <p>
* The following method tests are to be completed successfully before :
@@ -210,7 +210,7 @@ public class _XResultSet extends MultiMethodTest {
try {
result = oObj.isFirst() ;
} catch (SQLException e) {
- log.println("Exception occured :") ;
+ log.println("Exception occurred :") ;
e.printStackTrace(log) ;
result = false ;
}
@@ -225,7 +225,7 @@ public class _XResultSet extends MultiMethodTest {
try {
oObj.last() ;
} catch (SQLException e) {
- log.println("Exception occured :") ;
+ log.println("Exception occurred :") ;
e.printStackTrace(log) ;
tRes.tested("last()", false) ;
return ;
@@ -234,7 +234,7 @@ public class _XResultSet extends MultiMethodTest {
}
/**
- * The method is called immediatly after <code>last</code>
+ * The method is called immediately after <code>last</code>
* method test. <p>
* Has <b>OK</b> status if method returns <code>true</code>. <p>
* The following method tests are to be completed successfully before :
@@ -250,7 +250,7 @@ public class _XResultSet extends MultiMethodTest {
try {
result = oObj.isLast() ;
} catch (SQLException e) {
- log.println("Exception occured :") ;
+ log.println("Exception occurred :") ;
e.printStackTrace(log) ;
result = false ;
}
@@ -267,7 +267,7 @@ public class _XResultSet extends MultiMethodTest {
try {
oObj.absolute(1) ;
} catch (SQLException e) {
- log.println("Exception occured :") ;
+ log.println("Exception occurred :") ;
e.printStackTrace(log) ;
result = false ;
}
@@ -275,7 +275,7 @@ public class _XResultSet extends MultiMethodTest {
}
/**
- * The method is called immediatly after <code>absolute</code>
+ * The method is called immediately after <code>absolute</code>
* method test. <p>
* Has <b>OK</b> status if method returns 1. <p>
* The following method tests are to be completed successfully before :
@@ -291,7 +291,7 @@ public class _XResultSet extends MultiMethodTest {
try {
result &= oObj.getRow() == 1;
} catch (SQLException e) {
- log.println("Exception occured:");
+ log.println("Exception occurred:");
e.printStackTrace(log);
result = false;
}
@@ -315,7 +315,7 @@ public class _XResultSet extends MultiMethodTest {
log.println("Row was : " + prevRow + ", row is : " + oObj.getRow());
result &= prevRow + 1 == oObj.getRow() ;
} catch (SQLException e) {
- log.println("Exception occured :") ;
+ log.println("Exception occurred :") ;
e.printStackTrace(log) ;
result = false ;
}
@@ -338,7 +338,7 @@ public class _XResultSet extends MultiMethodTest {
log.println("Row was : " + prevRow + ", row is : " + oObj.getRow());
result &= prevRow - 1 == oObj.getRow() ;
} catch (SQLException e) {
- log.println("Exception occured :") ;
+ log.println("Exception occurred :") ;
e.printStackTrace(log) ;
result = false ;
}
@@ -363,7 +363,7 @@ public class _XResultSet extends MultiMethodTest {
result &= prevRow + 2 == oObj.getRow() ;
} catch (SQLException e) {
- log.println("Exception occured :") ;
+ log.println("Exception occurred :") ;
e.printStackTrace(log) ;
result = false ;
}
@@ -391,7 +391,7 @@ public class _XResultSet extends MultiMethodTest {
oObj.refreshRow() ;
tRes.tested("refreshRow()", true) ;
} catch (SQLException e) {
- log.println("Exception occured :") ;
+ log.println("Exception occurred :") ;
e.printStackTrace(log) ;
tRes.tested("refreshRow()", false) ;
}
@@ -410,7 +410,7 @@ public class _XResultSet extends MultiMethodTest {
log.println("Value after refresh: " + valAfterRefresh);
tRes.tested("refreshRow()", valAfterRefresh.equals(oldValue));
} catch(SQLException e) {
- log.println("Exception occured :");
+ log.println("Exception occurred :");
e.printStackTrace(log);
tRes.tested("refreshRow()", false);
}
@@ -427,7 +427,7 @@ public class _XResultSet extends MultiMethodTest {
boolean res = oObj.rowUpdated() ;
tRes.tested("rowUpdated()", true) ;
} catch (SQLException e) {
- log.println("Exception occured :") ;
+ log.println("Exception occurred :") ;
e.printStackTrace(log) ;
tRes.tested("rowUpdated()", false) ;
}
@@ -442,7 +442,7 @@ public class _XResultSet extends MultiMethodTest {
boolean res = oObj.rowInserted() ;
tRes.tested("rowInserted()", true) ;
} catch (SQLException e) {
- log.println("Exception occured :") ;
+ log.println("Exception occurred :") ;
e.printStackTrace(log) ;
tRes.tested("rowInserted()", false) ;
}
@@ -457,7 +457,7 @@ public class _XResultSet extends MultiMethodTest {
boolean res = oObj.rowDeleted() ;
tRes.tested("rowDeleted()", true) ;
} catch (SQLException e) {
- log.println("Exception occured :") ;
+ log.println("Exception occurred :") ;
e.printStackTrace(log) ;
tRes.tested("rowDeleted()", false) ;
}
@@ -477,7 +477,7 @@ public class _XResultSet extends MultiMethodTest {
tRes.tested("getStatement()",
(hasStatement && res != null) || !hasStatement) ;
} catch (SQLException e) {
- log.println("Exception occured :") ;
+ log.println("Exception occurred :") ;
e.printStackTrace(log) ;
tRes.tested("getStatement()", false) ;
}
@@ -492,7 +492,7 @@ public class _XResultSet extends MultiMethodTest {
try {
oObj.first();
} catch (SQLException e) {
- log.println("Exception occured :") ;
+ log.println("Exception occurred :") ;
e.printStackTrace(log) ;
}
}
diff --git a/qadevOOo/tests/java/ifc/sdbc/_XResultSetUpdate.java b/qadevOOo/tests/java/ifc/sdbc/_XResultSetUpdate.java
index dc5948e4a8b5..8bbac3cac328 100644
--- a/qadevOOo/tests/java/ifc/sdbc/_XResultSetUpdate.java
+++ b/qadevOOo/tests/java/ifc/sdbc/_XResultSetUpdate.java
@@ -78,7 +78,7 @@ public class _XResultSetUpdate extends MultiMethodTest {
public void update() throws SQLException ;
/**
* Checks if updates made by method <code>update</code> was
- * commited to the data source.
+ * committed to the data source.
*/
public boolean wasUpdated() throws SQLException ;
/**
@@ -136,7 +136,7 @@ public class _XResultSetUpdate extends MultiMethodTest {
/**
* Using relation methods first updates some data in the current
* row, then calls <code>updateRow</code> method to commit data.
- * Then checks if the data changed was commited. <p>
+ * Then checks if the data changed was committed. <p>
* Executes <code>moveToCurrentRow</code> method test before to
* be sure that cursor is not on the insert row. <p>
* Has OK status if data in the source was changed.
@@ -159,7 +159,7 @@ public class _XResultSetUpdate extends MultiMethodTest {
/**
* Using relation methods first updates some data in the current
* row, then calls <code>cancelRowUpdates</code> method.
- * Then checks if the data changed was not commited. <p>
+ * Then checks if the data changed was not committed. <p>
* Executes <code>moveToCurrentRow</code> method test before to
* be sure that cursor is not on the insert row. <p>
* Has OK status if data in the source was not changed.
diff --git a/qadevOOo/tests/java/ifc/sdbc/_XRow.java b/qadevOOo/tests/java/ifc/sdbc/_XRow.java
index 1da91a860e59..2b0723b8ee54 100644
--- a/qadevOOo/tests/java/ifc/sdbc/_XRow.java
+++ b/qadevOOo/tests/java/ifc/sdbc/_XRow.java
@@ -138,7 +138,7 @@ public class _XRow extends MultiMethodTest {
}
/**
- * Has <b>OK</b> status if no exceptions occured in method call.
+ * Has <b>OK</b> status if no exceptions occurred in method call.
*/
public void _getString() {
boolean result = true ;
@@ -160,7 +160,7 @@ public class _XRow extends MultiMethodTest {
}
/**
- * Has <b>OK</b> status if no exceptions occured in method call.
+ * Has <b>OK</b> status if no exceptions occurred in method call.
*/
public void _getBoolean() {
boolean result = true ;
@@ -182,7 +182,7 @@ public class _XRow extends MultiMethodTest {
}
/**
- * Has <b>OK</b> status if no exceptions occured in method call.
+ * Has <b>OK</b> status if no exceptions occurred in method call.
*/
public void _getByte() {
boolean result = true ;
@@ -204,7 +204,7 @@ public class _XRow extends MultiMethodTest {
}
/**
- * Has <b>OK</b> status if no exceptions occured in method call.
+ * Has <b>OK</b> status if no exceptions occurred in method call.
*/
public void _getShort() {
boolean result = true ;
@@ -226,7 +226,7 @@ public class _XRow extends MultiMethodTest {
}
/**
- * Has <b>OK</b> status if no exceptions occured in method call.
+ * Has <b>OK</b> status if no exceptions occurred in method call.
*/
public void _getInt() {
boolean result = true ;
@@ -246,7 +246,7 @@ public class _XRow extends MultiMethodTest {
}
/**
- * Has <b>OK</b> status if no exceptions occured in method call.
+ * Has <b>OK</b> status if no exceptions occurred in method call.
*/
public void _getLong() {
boolean result = true ;
@@ -266,7 +266,7 @@ public class _XRow extends MultiMethodTest {
}
/**
- * Has <b>OK</b> status if no exceptions occured in method call.
+ * Has <b>OK</b> status if no exceptions occurred in method call.
*/
public void _getFloat() {
boolean result = true ;
@@ -286,7 +286,7 @@ public class _XRow extends MultiMethodTest {
}
/**
- * Has <b>OK</b> status if no exceptions occured in method call.
+ * Has <b>OK</b> status if no exceptions occurred in method call.
*/
public void _getDouble() {
boolean result = true ;
@@ -306,7 +306,7 @@ public class _XRow extends MultiMethodTest {
}
/**
- * Has <b>OK</b> status if no exceptions occured in method call.
+ * Has <b>OK</b> status if no exceptions occurred in method call.
*/
public void _getBytes() {
boolean result = true ;
@@ -326,7 +326,7 @@ public class _XRow extends MultiMethodTest {
}
/**
- * Has <b>OK</b> status if no exceptions occured in method call.
+ * Has <b>OK</b> status if no exceptions occurred in method call.
*/
public void _getDate() {
boolean result = true ;
@@ -346,7 +346,7 @@ public class _XRow extends MultiMethodTest {
}
/**
- * Has <b>OK</b> status if no exceptions occured in method call.
+ * Has <b>OK</b> status if no exceptions occurred in method call.
*/
public void _getTime() {
boolean result = true ;
@@ -366,7 +366,7 @@ public class _XRow extends MultiMethodTest {
}
/**
- * Has <b>OK</b> status if no exceptions occured in method call.
+ * Has <b>OK</b> status if no exceptions occurred in method call.
*/
public void _getTimestamp() {
boolean result = true ;
@@ -386,7 +386,7 @@ public class _XRow extends MultiMethodTest {
}
/**
- * Has <b>OK</b> status if no exceptions occured in method call.
+ * Has <b>OK</b> status if no exceptions occurred in method call.
*/
public void _getBinaryStream() {
boolean result = true ;
@@ -406,7 +406,7 @@ public class _XRow extends MultiMethodTest {
}
/**
- * Has <b>OK</b> status if no exceptions occured in method call.
+ * Has <b>OK</b> status if no exceptions occurred in method call.
*/
public void _getCharacterStream() {
boolean result = true ;
@@ -426,7 +426,7 @@ public class _XRow extends MultiMethodTest {
}
/**
- * Has <b>OK</b> status if no exceptions occured in method call.
+ * Has <b>OK</b> status if no exceptions occurred in method call.
*/
public void _getObject() {
boolean result = true ;
@@ -446,7 +446,7 @@ public class _XRow extends MultiMethodTest {
}
/**
- * Has <b>OK</b> status if no exceptions occured in method call.
+ * Has <b>OK</b> status if no exceptions occurred in method call.
*/
public void _getRef() {
boolean result = true ;
@@ -466,7 +466,7 @@ public class _XRow extends MultiMethodTest {
}
/**
- * Has <b>OK</b> status if no exceptions occured in method call.
+ * Has <b>OK</b> status if no exceptions occurred in method call.
*/
public void _getBlob() {
boolean result = true ;
@@ -486,7 +486,7 @@ public class _XRow extends MultiMethodTest {
}
/**
- * Has <b>OK</b> status if no exceptions occured in method call.
+ * Has <b>OK</b> status if no exceptions occurred in method call.
*/
public void _getClob() {
boolean result = true ;
@@ -506,7 +506,7 @@ public class _XRow extends MultiMethodTest {
}
/**
- * Has <b>OK</b> status if no exceptions occured in method call.
+ * Has <b>OK</b> status if no exceptions occurred in method call.
*/
public void _getArray() {
boolean result = true ;
diff --git a/qadevOOo/tests/java/ifc/sdbc/_XRowSet.java b/qadevOOo/tests/java/ifc/sdbc/_XRowSet.java
index 935e9d2d1228..74c99efbf3d2 100644
--- a/qadevOOo/tests/java/ifc/sdbc/_XRowSet.java
+++ b/qadevOOo/tests/java/ifc/sdbc/_XRowSet.java
@@ -109,7 +109,7 @@ public class _XRowSet extends MultiMethodTest {
try {
oObj.execute() ;
} catch (SQLException e) {
- log.println("Exception occured :" + e) ;
+ log.println("Exception occurred :" + e) ;
result = false ;
}
diff --git a/qadevOOo/tests/java/ifc/sdbc/_XWarningsSupplier.java b/qadevOOo/tests/java/ifc/sdbc/_XWarningsSupplier.java
index 92b88d2a174d..669b55a5fe19 100644
--- a/qadevOOo/tests/java/ifc/sdbc/_XWarningsSupplier.java
+++ b/qadevOOo/tests/java/ifc/sdbc/_XWarningsSupplier.java
@@ -98,7 +98,7 @@ public class _XWarningsSupplier extends MultiMethodTest {
}
catch (SQLException e)
{
- log.println("Exception occured :");
+ log.println("Exception occurred :");
e.printStackTrace(log);
tRes.tested("getWarnings()", res);
return;
@@ -123,7 +123,7 @@ public class _XWarningsSupplier extends MultiMethodTest {
Object warns = oObj.getWarnings();
res = (utils.isVoid(warns));
} catch (SQLException e) {
- log.println("Exception occured :");
+ log.println("Exception occurred :");
e.printStackTrace(log);
tRes.tested("clearWarnings()", res);
return;
diff --git a/qadevOOo/tests/java/ifc/sdbcx/_XRowLocate.java b/qadevOOo/tests/java/ifc/sdbcx/_XRowLocate.java
index 5c6903b54513..0886cf7a6da4 100644
--- a/qadevOOo/tests/java/ifc/sdbcx/_XRowLocate.java
+++ b/qadevOOo/tests/java/ifc/sdbcx/_XRowLocate.java
@@ -65,7 +65,7 @@ public class _XRowLocate extends MultiMethodTest {
try {
bookmark1 = oObj.getBookmark() ;
} catch (SQLException e) {
- log.println("Exception occured :" + e) ;
+ log.println("Exception occurred :" + e) ;
}
tRes.tested("getBookmark()", bookmark1 != null) ;
@@ -86,7 +86,7 @@ public class _XRowLocate extends MultiMethodTest {
* </ul> <p>
* Has OK status difference between positions of bookmarks (where
* cursor was moved to and created new one) equals to 0 and no
- * exceptions occured, FAILED otherwise.
+ * exceptions occurred, FAILED otherwise.
*/
public void _moveToBookmark() {
requiredMethod("getBookmark()") ;
@@ -101,7 +101,7 @@ public class _XRowLocate extends MultiMethodTest {
}
comparison = oObj.compareBookmarks(bookmark1, tmpBookmark) ;
} catch (SQLException e) {
- log.println("Exception occured :" + e) ;
+ log.println("Exception occurred :" + e) ;
}
tRes.tested("moveToBookmark()", comparison == 0) ;
@@ -115,7 +115,7 @@ public class _XRowLocate extends MultiMethodTest {
* <ul>
* <li> <code>getBookmark()</code> : to have a bookmark to move to.</li>
* </ul> <p>
- * Has OK status if no exceptions occured while method call.
+ * Has OK status if no exceptions occurred while method call.
*/
public void _moveRelativeToBookmark() {
requiredMethod("getBookmark()") ;
@@ -127,7 +127,7 @@ public class _XRowLocate extends MultiMethodTest {
bookmark2 = oObj.getBookmark() ;
}
} catch (SQLException e) {
- log.println("Exception occured :" + e) ;
+ log.println("Exception occurred :" + e) ;
result = false ;
}
@@ -155,7 +155,7 @@ public class _XRowLocate extends MultiMethodTest {
comparison = oObj.compareBookmarks(bookmark1, bookmark2) ;
comparison1 = oObj.compareBookmarks(bookmark1, bookmark1) ;
} catch (SQLException e) {
- log.println("Exception occured :" + e) ;
+ log.println("Exception occurred :" + e) ;
}
if (comparison != -1) {
@@ -183,7 +183,7 @@ public class _XRowLocate extends MultiMethodTest {
try {
res = oObj.hasOrderedBookmarks() ;
} catch (SQLException e) {
- log.println("Exception occured :" + e) ;
+ log.println("Exception occurred :" + e) ;
result = false ;
}
@@ -219,7 +219,7 @@ public class _XRowLocate extends MultiMethodTest {
result = hash1 != hash2 ;
} catch (SQLException e) {
- log.println("Exception occured :" + e) ;
+ log.println("Exception occurred :" + e) ;
result = false ;
}
diff --git a/qadevOOo/tests/java/ifc/sheet/_DatabaseImportDescriptor.java b/qadevOOo/tests/java/ifc/sheet/_DatabaseImportDescriptor.java
index 74fb8565bcda..c28cfc09e948 100644
--- a/qadevOOo/tests/java/ifc/sheet/_DatabaseImportDescriptor.java
+++ b/qadevOOo/tests/java/ifc/sheet/_DatabaseImportDescriptor.java
@@ -91,7 +91,7 @@ public class _DatabaseImportDescriptor extends MultiMethodTest {
tRes.tested(name, true);
}
} catch (Exception e) {
- log.println("Exception occured while testing property '" +
+ log.println("Exception occurred while testing property '" +
name + "'");
e.printStackTrace(log);
tRes.tested(name, false);
diff --git a/qadevOOo/tests/java/ifc/sheet/_FunctionDescription.java b/qadevOOo/tests/java/ifc/sheet/_FunctionDescription.java
index d6c6fc7be899..1ed00e3758e0 100644
--- a/qadevOOo/tests/java/ifc/sheet/_FunctionDescription.java
+++ b/qadevOOo/tests/java/ifc/sheet/_FunctionDescription.java
@@ -89,7 +89,7 @@ public class _FunctionDescription extends MultiMethodTest {
}
} catch (Exception e) {
log.println(
- "Exception occured while testing property 'Arguments'" );
+ "Exception occurred while testing property 'Arguments'" );
e.printStackTrace( log );
tRes.tested( "Arguments", false );
}
@@ -141,7 +141,7 @@ public class _FunctionDescription extends MultiMethodTest {
}
catch ( Exception e ) {
log.println(
- "Exception occured while testing property '" + name + "'" );
+ "Exception occurred while testing property '" + name + "'" );
e.printStackTrace( log );
tRes.tested( name, false );
}
diff --git a/qadevOOo/tests/java/ifc/sheet/_SheetSortDescriptor.java b/qadevOOo/tests/java/ifc/sheet/_SheetSortDescriptor.java
index 64aeecb293c2..9079ea25a458 100644
--- a/qadevOOo/tests/java/ifc/sheet/_SheetSortDescriptor.java
+++ b/qadevOOo/tests/java/ifc/sheet/_SheetSortDescriptor.java
@@ -129,7 +129,7 @@ public class _SheetSortDescriptor extends MultiMethodTest {
tRes.tested(name, true);
}
} catch (Exception e) {
- log.println("Exception occured while testing property '" +
+ log.println("Exception occurred while testing property '" +
name + "'");
e.printStackTrace(log);
tRes.tested(name, false);
diff --git a/qadevOOo/tests/java/ifc/sheet/_XActivationBroadcaster.java b/qadevOOo/tests/java/ifc/sheet/_XActivationBroadcaster.java
index 12c4599020b2..64d28fabe4ba 100644
--- a/qadevOOo/tests/java/ifc/sheet/_XActivationBroadcaster.java
+++ b/qadevOOo/tests/java/ifc/sheet/_XActivationBroadcaster.java
@@ -70,7 +70,7 @@ public class _XActivationBroadcaster extends MultiMethodTest {
xSpreadsheetView.setActiveSheet(two);
if (listenerCalled) {
- log.println("Listener was called eventhough it is removed");
+ log.println("Listener was called even though it is removed");
}
xSpreadsheetView.setActiveSheet(org);
diff --git a/qadevOOo/tests/java/ifc/sheet/_XDataPilotTables.java b/qadevOOo/tests/java/ifc/sheet/_XDataPilotTables.java
index 254295830585..702f8697073e 100644
--- a/qadevOOo/tests/java/ifc/sheet/_XDataPilotTables.java
+++ b/qadevOOo/tests/java/ifc/sheet/_XDataPilotTables.java
@@ -95,7 +95,7 @@ public class _XDataPilotTables extends MultiMethodTest {
bResult &= oSheet.getCellByPosition
(CA.Column, CA.Row).getFormula().equals("Filter");
} catch (com.sun.star.uno.Exception e) {
- log.println("Exception occured! " + e);
+ log.println("Exception occurred! " + e);
bResult = false;
}
@@ -132,7 +132,7 @@ public class _XDataPilotTables extends MultiMethodTest {
bResult &= oSheet.getCellByPosition
(CA.Column, CA.Row).getFormula().equals("");
} catch (com.sun.star.uno.Exception e) {
- log.println("Exception occured ! " + e);
+ log.println("Exception occurred ! " + e);
bResult = false;
}
log.println(bResult ? "OK" : "FAILED");
diff --git a/qadevOOo/tests/java/ifc/sheet/_XDatabaseRanges.java b/qadevOOo/tests/java/ifc/sheet/_XDatabaseRanges.java
index 840a35fe74e3..2cb253ec4628 100644
--- a/qadevOOo/tests/java/ifc/sheet/_XDatabaseRanges.java
+++ b/qadevOOo/tests/java/ifc/sheet/_XDatabaseRanges.java
@@ -70,7 +70,7 @@ public class _XDatabaseRanges extends MultiMethodTest {
log.println("Exception expected... Test failed.");
bResult = false;
} catch(com.sun.star.uno.RuntimeException e) {
- log.println("Exception occured while testing addNewByName() : " + e);
+ log.println("Exception occurred while testing addNewByName() : " + e);
bResult = true;
}
@@ -80,7 +80,7 @@ public class _XDatabaseRanges extends MultiMethodTest {
/**
* Test removes the database range with name that exist exactly and then
* tries to remove the range with name that doesn't exist exactly. <p>
- * Has <b> OK </b> status if first range was succesfully removed and
+ * Has <b> OK </b> status if first range was successfully removed and
* exception was thrown when trying to remove non-existent database range.<p>
* The following method tests are to be completed successfully before :
* <ul>
@@ -98,7 +98,7 @@ public class _XDatabaseRanges extends MultiMethodTest {
oObj.removeByName(name);
bResult &= !oObj.hasByName(name);
} catch (com.sun.star.uno.RuntimeException e) {
- log.println("Exception occured while testing removeByName() : " + e);
+ log.println("Exception occurred while testing removeByName() : " + e);
bResult = false;
}
diff --git a/qadevOOo/tests/java/ifc/sheet/_XDocumentAuditing.java b/qadevOOo/tests/java/ifc/sheet/_XDocumentAuditing.java
index 5ef5a5b35007..881ed8bf1a0b 100644
--- a/qadevOOo/tests/java/ifc/sheet/_XDocumentAuditing.java
+++ b/qadevOOo/tests/java/ifc/sheet/_XDocumentAuditing.java
@@ -182,7 +182,7 @@ public class _XDocumentAuditing extends MultiMethodTest {
/**
* Check if the amount of shapes is the right one after displaying that stuff
- * 2do improve this: check taht the shapes are the correct ones -> convwatch
+ * 2do improve this: check that the shapes are the correct ones -> convwatch
* @desiredValue That's the amount of shapes that have to be here.
* @return True, if the actual count of shapes is the same
*/
diff --git a/qadevOOo/tests/java/ifc/sheet/_XNamedRanges.java b/qadevOOo/tests/java/ifc/sheet/_XNamedRanges.java
index 6fb971cdcdf0..92cc8add253c 100644
--- a/qadevOOo/tests/java/ifc/sheet/_XNamedRanges.java
+++ b/qadevOOo/tests/java/ifc/sheet/_XNamedRanges.java
@@ -278,7 +278,7 @@ public class _XNamedRanges extends MultiMethodTest {
log.println("Exception expected when removed unexistent element!");
bResult = false;
} catch (com.sun.star.uno.RuntimeException e) {
- log.println("Expected exception occured while testing" +
+ log.println("Expected exception occurred while testing" +
"removeByName() when removed unexistent element.");
}
diff --git a/qadevOOo/tests/java/ifc/sheet/_XSheetAuditing.java b/qadevOOo/tests/java/ifc/sheet/_XSheetAuditing.java
index d1210b737611..9344889a6141 100644
--- a/qadevOOo/tests/java/ifc/sheet/_XSheetAuditing.java
+++ b/qadevOOo/tests/java/ifc/sheet/_XSheetAuditing.java
@@ -174,7 +174,7 @@ public class _XSheetAuditing extends MultiMethodTest {
/**
* Check if the amount of shapes is the right one after displaying that stuff
- * 2do improve this: check taht the shapes are the correct ones -> convwatch
+ * 2do improve this: check that the shapes are the correct ones -> convwatch
* @desiredValue That's the amount of shapes that have to be here.
* @return True, if the actual count of shapes is the same
*/
diff --git a/qadevOOo/tests/java/ifc/sheet/_XSheetCellCursor.java b/qadevOOo/tests/java/ifc/sheet/_XSheetCellCursor.java
index 0275a6d4af73..2fda2d16d048 100644
--- a/qadevOOo/tests/java/ifc/sheet/_XSheetCellCursor.java
+++ b/qadevOOo/tests/java/ifc/sheet/_XSheetCellCursor.java
@@ -254,7 +254,7 @@ public class _XSheetCellCursor extends MultiMethodTest {
log.println("DB: Successfuly merged.") ;
oObj.collapseToMergedArea() ;
- log.println("DB: Succesfully collapseToMergedArea() method called");
+ log.println("DB: Successfully collapseToMergedArea() method called");
// unmerge area to restore SpreadSheet
mergeRange.merge(false);
@@ -267,7 +267,7 @@ public class _XSheetCellCursor extends MultiMethodTest {
int rows = ((XColumnRowRange)
UnoRuntime.queryInterface(
XColumnRowRange.class, oObj) ).getRows().getCount();
- log.println("DB: Column and row numbers succesfully get") ;
+ log.println("DB: Column and row numbers successfully get") ;
if (cols == width + 1 && rows == height + 3) {
bResult &= true;
diff --git a/qadevOOo/tests/java/ifc/sheet/_XSheetOperation.java b/qadevOOo/tests/java/ifc/sheet/_XSheetOperation.java
index 66974f59bd8d..cd5d257d13c1 100644
--- a/qadevOOo/tests/java/ifc/sheet/_XSheetOperation.java
+++ b/qadevOOo/tests/java/ifc/sheet/_XSheetOperation.java
@@ -65,7 +65,7 @@ public class _XSheetOperation extends MultiMethodTest {
} catch (com.sun.star.uno.Exception e) {
result &= false ;
log.println(
- "Exception occured while checking results of method");
+ "Exception occurred while checking results of method");
e.printStackTrace(log);
}
@@ -89,7 +89,7 @@ public class _XSheetOperation extends MultiMethodTest {
result = resultVal >= 0;
} catch (com.sun.star.uno.Exception e) {
result = false;
- log.println("Exception occured in method computeFunction.");
+ log.println("Exception occurred in method computeFunction.");
e.printStackTrace(log);
}
diff --git a/qadevOOo/tests/java/ifc/sheet/_XSpreadsheets.java b/qadevOOo/tests/java/ifc/sheet/_XSpreadsheets.java
index fde1e7dbddb0..0c1151aab544 100644
--- a/qadevOOo/tests/java/ifc/sheet/_XSpreadsheets.java
+++ b/qadevOOo/tests/java/ifc/sheet/_XSpreadsheets.java
@@ -116,7 +116,7 @@ public class _XSpreadsheets extends MultiMethodTest {
* the collection, removes the sheet, tries to insert the sheet with the
* bad name returned by method <code>badName()</code>. <p>
* Has <b> OK </b> status if the inserted sheet exists in the collection
- * after first method call and if exception occured during the second call. <p>
+ * after first method call and if exception occurred during the second call. <p>
*/
public void _insertNewByName() {
boolean result = false;
@@ -148,7 +148,7 @@ public class _XSpreadsheets extends MultiMethodTest {
oObj.removeByName(NewSheet);
} catch (com.sun.star.uno.RuntimeException e) {
log.println(
- "Expected exception occured during testing 'insertNewByName'");
+ "Expected exception occurred during testing 'insertNewByName'");
result &= true;
} catch (com.sun.star.lang.WrappedTargetException e) {
log.print("Can't remove sheet '" + NewSheet + "':");
diff --git a/qadevOOo/tests/java/ifc/style/_CharacterProperties.java b/qadevOOo/tests/java/ifc/style/_CharacterProperties.java
index 17fd8d234f10..1c266cc24e58 100644
--- a/qadevOOo/tests/java/ifc/style/_CharacterProperties.java
+++ b/qadevOOo/tests/java/ifc/style/_CharacterProperties.java
@@ -408,23 +408,23 @@ public class _CharacterProperties extends MultiPropertyTest {
tRes.tested(name,true);
}
else {
- log.println("Exception occured while testing property '" +
+ log.println("Exception occurred while testing property '" +
name + "'");
ex.printStackTrace(log);
tRes.tested(name, false);
}
} catch (com.sun.star.lang.WrappedTargetException e) {
- log.println("Exception occured while testing property '" +
+ log.println("Exception occurred while testing property '" +
name + "'");
e.printStackTrace(log);
tRes.tested(name, false);
} catch (com.sun.star.lang.IllegalArgumentException e) {
- log.println("Exception occured while testing property '" +
+ log.println("Exception occurred while testing property '" +
name + "'");
e.printStackTrace(log);
tRes.tested(name, false);
} catch (com.sun.star.beans.PropertyVetoException e) {
- log.println("Exception occured while testing property '" +
+ log.println("Exception occurred while testing property '" +
name + "'");
e.printStackTrace(log);
tRes.tested(name, false);
diff --git a/qadevOOo/tests/java/ifc/style/_ParagraphProperties.java b/qadevOOo/tests/java/ifc/style/_ParagraphProperties.java
index c250facfe3b9..9eaea9cd986d 100644
--- a/qadevOOo/tests/java/ifc/style/_ParagraphProperties.java
+++ b/qadevOOo/tests/java/ifc/style/_ParagraphProperties.java
@@ -296,13 +296,13 @@ public class _ParagraphProperties extends MultiPropertyTest {
oObj.setPropertyValue("ParaAdjust",
com.sun.star.style.ParagraphAdjust.BLOCK);
} catch (com.sun.star.lang.WrappedTargetException e) {
- log.println("Exception occured setting property 'ParagraphAdjust'" + e);
+ log.println("Exception occurred setting property 'ParagraphAdjust'" + e);
} catch (com.sun.star.lang.IllegalArgumentException e) {
- log.println("Exception occured setting property 'ParagraphAdjust'" + e);
+ log.println("Exception occurred setting property 'ParagraphAdjust'" + e);
} catch (com.sun.star.beans.UnknownPropertyException e) {
- log.println("Exception occured setting property 'ParagraphAdjust'" + e);
+ log.println("Exception occurred setting property 'ParagraphAdjust'" + e);
} catch (com.sun.star.beans.PropertyVetoException e) {
- log.println("Exception occured setting property 'ParagraphAdjust'" + e);
+ log.println("Exception occurred setting property 'ParagraphAdjust'" + e);
}
testProperty("ParaLastLineAdjust", ShortTester);
diff --git a/qadevOOo/tests/java/ifc/style/_XStyle.java b/qadevOOo/tests/java/ifc/style/_XStyle.java
index 09f60368f91e..f70dc804059c 100644
--- a/qadevOOo/tests/java/ifc/style/_XStyle.java
+++ b/qadevOOo/tests/java/ifc/style/_XStyle.java
@@ -103,7 +103,7 @@ public class _XStyle extends MultiMethodTest {
try {
oObj.setParentStyle(oMyStyle.getName());
} catch (com.sun.star.container.NoSuchElementException e) {
- log.println("Exception occured while method call: " + e);
+ log.println("Exception occurred while method call: " + e);
result = false ;
}
diff --git a/qadevOOo/tests/java/ifc/system/_XSystemShellExecute.java b/qadevOOo/tests/java/ifc/system/_XSystemShellExecute.java
index 78886de8c1c5..6e09cb4ed399 100644
--- a/qadevOOo/tests/java/ifc/system/_XSystemShellExecute.java
+++ b/qadevOOo/tests/java/ifc/system/_XSystemShellExecute.java
@@ -46,7 +46,7 @@ public class _XSystemShellExecute extends MultiMethodTest {
public XSystemShellExecute oObj = null;
/**
- * Excecutes 'java SystemShellExecute SystemShellExecute.txt' command line.
+ * Executes 'java SystemShellExecute SystemShellExecute.txt' command line.
* <p>Has <b> OK </b> status if the method successfully returns
* and file 'SystemShellExecute.txt' was created. <p>
*/
diff --git a/qadevOOo/tests/java/ifc/table/_XAutoFormattable.java b/qadevOOo/tests/java/ifc/table/_XAutoFormattable.java
index 82527a8324a2..ef0537d4eb2d 100644
--- a/qadevOOo/tests/java/ifc/table/_XAutoFormattable.java
+++ b/qadevOOo/tests/java/ifc/table/_XAutoFormattable.java
@@ -113,7 +113,7 @@ public class _XAutoFormattable extends MultiMethodTest {
bResult &= !bkgrnd1.equals(bkgrnd2);
} catch (com.sun.star.uno.Exception e) {
- log.println("Exception occured :");
+ log.println("Exception occurred :");
e.printStackTrace(log);
bResult = false;
}
diff --git a/qadevOOo/tests/java/ifc/text/_BaseIndex.java b/qadevOOo/tests/java/ifc/text/_BaseIndex.java
index 8064852ea662..cde719390910 100644
--- a/qadevOOo/tests/java/ifc/text/_BaseIndex.java
+++ b/qadevOOo/tests/java/ifc/text/_BaseIndex.java
@@ -130,13 +130,13 @@ public class _BaseIndex extends MultiPropertyTest {
indProp.replaceByIndex(0, newVal);
} catch (com.sun.star.lang.WrappedTargetException e) {
- log.println("Exception occured while testing LevelFormat");
+ log.println("Exception occurred while testing LevelFormat");
e.printStackTrace(log);
} catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- log.println("Exception occured while testing LevelFormat");
+ log.println("Exception occurred while testing LevelFormat");
e.printStackTrace(log);
} catch (com.sun.star.lang.IllegalArgumentException e) {
- log.println("Exception occured while testing LevelFormat");
+ log.println("Exception occurred while testing LevelFormat");
e.printStackTrace(log);
}
@@ -190,10 +190,10 @@ public class _BaseIndex extends MultiPropertyTest {
}
}
} catch (com.sun.star.lang.WrappedTargetException e) {
- log.println("Exception occured while printing LevelFormat");
+ log.println("Exception occurred while printing LevelFormat");
e.printStackTrace(log);
} catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- log.println("Exception occured while printing LevelFormat");
+ log.println("Exception occurred while printing LevelFormat");
e.printStackTrace(log);
}
}
diff --git a/qadevOOo/tests/java/ifc/text/_XAutoTextGroup.java b/qadevOOo/tests/java/ifc/text/_XAutoTextGroup.java
index 050fa4202785..ea6af3d7f026 100644
--- a/qadevOOo/tests/java/ifc/text/_XAutoTextGroup.java
+++ b/qadevOOo/tests/java/ifc/text/_XAutoTextGroup.java
@@ -74,7 +74,7 @@ public class _XAutoTextGroup extends MultiMethodTest {
* Constructs a unique string for current interface thread
* for naming purposes. All old entries which names are
* started with prefix used for entry names, are deleted
- * from the group (they can remain after previous unsuccessfull
+ * from the group (they can remain after previous unsuccessful
* test runs). The relation is obtained.
*
* @throws StatusException if the relation is not found.
@@ -131,7 +131,7 @@ public class _XAutoTextGroup extends MultiMethodTest {
result = !util.ValueComparer.equalValue(before, after);
}
catch (com.sun.star.container.ElementExistException ex) {
- log.println("Exception occured while testing insertNewByName");
+ log.println("Exception occurred while testing insertNewByName");
ex.printStackTrace(log);
result = false;
}
@@ -176,7 +176,7 @@ public class _XAutoTextGroup extends MultiMethodTest {
!ValueComparer.equalValue(before,after));
}
catch (com.sun.star.container.NoSuchElementException ex) {
- log.println("Exception occured while testing removeByName");
+ log.println("Exception occurred while testing removeByName");
ex.printStackTrace(log);
tRes.tested("removeByName()",false);
}
@@ -208,7 +208,7 @@ public class _XAutoTextGroup extends MultiMethodTest {
names = oObj.getElementNames() ;
result = true;
} catch (com.sun.star.container.ElementExistException e) {
- log.println("Unexpected exception occured :") ;
+ log.println("Unexpected exception occurred :") ;
e.printStackTrace(log);
} finally {
if (!result) {
@@ -275,15 +275,15 @@ public class _XAutoTextGroup extends MultiMethodTest {
oObj.renameByName(str,str+"a",str+"b");
result &= oObj.hasByName(str + "a");
} catch (com.sun.star.container.ElementExistException ex) {
- log.println("Exception occured while testing renameByName");
+ log.println("Exception occurred while testing renameByName");
ex.printStackTrace(log);
result &=false;
} catch (com.sun.star.lang.IllegalArgumentException ex) {
- log.println("Exception occured while testing renameByName");
+ log.println("Exception occurred while testing renameByName");
ex.printStackTrace(log);
result &=false;
} catch (com.sun.star.io.IOException ex) {
- log.println("Exception occured while testing renameByName");
+ log.println("Exception occurred while testing renameByName");
ex.printStackTrace(log);
result &=false;
} finally {
diff --git a/qadevOOo/tests/java/ifc/text/_XDefaultNumberingProvider.java b/qadevOOo/tests/java/ifc/text/_XDefaultNumberingProvider.java
index 96a0558da9eb..a007d410339f 100644
--- a/qadevOOo/tests/java/ifc/text/_XDefaultNumberingProvider.java
+++ b/qadevOOo/tests/java/ifc/text/_XDefaultNumberingProvider.java
@@ -48,7 +48,7 @@ public class _XDefaultNumberingProvider extends MultiMethodTest {
/**
* Just gets numberings for "en" locale. <p>
* Has <b>OK</b> status if not <code>null</code> value returned
- * and no runtime exceptions occured.
+ * and no runtime exceptions occurred.
*/
public void _getDefaultOutlineNumberings() {
XIndexAccess xIA[] = oObj.getDefaultOutlineNumberings(loc) ;
@@ -59,7 +59,7 @@ public class _XDefaultNumberingProvider extends MultiMethodTest {
/**
* Just gets numberings for "en" locale. <p>
* Has <b>OK</b> status if not <code>null</code> value returned
- * and no runtime exceptions occured.
+ * and no runtime exceptions occurred.
*/
public void _getDefaultContinuousNumberingLevels() {
PropertyValue[][] lev = oObj.getDefaultContinuousNumberingLevels(loc) ;
diff --git a/qadevOOo/tests/java/ifc/text/_XRelativeTextContentInsert.java b/qadevOOo/tests/java/ifc/text/_XRelativeTextContentInsert.java
index 8c48d53055e9..05fd5c8c4f19 100644
--- a/qadevOOo/tests/java/ifc/text/_XRelativeTextContentInsert.java
+++ b/qadevOOo/tests/java/ifc/text/_XRelativeTextContentInsert.java
@@ -46,7 +46,7 @@ import com.sun.star.uno.XInterface;
* the creator which can create instances of
* <code>com.sun.star.text.Paragraph</code> service. </li>
* <li> <code>'XTEXTINFO'</code> (of type <code>XInstCreator</code>):
- * the creator which can create instances of soem text content
+ * the creator which can create instances of some text content
* service (objects which implement <code>XTextContent</code>).
* </li>
* <ul> <p>
@@ -67,7 +67,7 @@ public class _XRelativeTextContentInsert extends MultiMethodTest {
* using relation and inserted into text. Then an instance
* of text content is created and inserted after the paragraph. <p>
*
- * Has <b>OK</b> status if no exceptions occured.
+ * Has <b>OK</b> status if no exceptions occurred.
*/
public void _insertTextContentAfter() {
@@ -87,7 +87,7 @@ public class _XRelativeTextContentInsert extends MultiMethodTest {
tRes.tested("insertTextContentAfter()",true);
}
catch (com.sun.star.lang.IllegalArgumentException ex) {
- log.println("Exception occured while checking "+
+ log.println("Exception occurred while checking "+
"insertTextContentAfter()");
ex.printStackTrace(log);
tRes.tested("insertTextContentAfter()",false);
@@ -101,7 +101,7 @@ public class _XRelativeTextContentInsert extends MultiMethodTest {
* and inserted before the paragraph which was added into
* text in <code>insertTextContentAfter</code> method test. <p>
*
- * Has <b>OK</b> status if no exceptions occured. <p>
+ * Has <b>OK</b> status if no exceptions occurred. <p>
*
* The following method tests are to be completed successfully before :
* <ul>
@@ -119,7 +119,7 @@ public class _XRelativeTextContentInsert extends MultiMethodTest {
tRes.tested("insertTextContentBefore()",true);
}
catch (com.sun.star.lang.IllegalArgumentException ex) {
- log.println("Exception occured while checking "+
+ log.println("Exception occurred while checking "+
"insertTextContentBefore()");
ex.printStackTrace(log);
tRes.tested("insertTextContentBefore()",false);
diff --git a/qadevOOo/tests/java/ifc/text/_XText.java b/qadevOOo/tests/java/ifc/text/_XText.java
index d4026cdb8a3f..2d5a967c06e0 100644
--- a/qadevOOo/tests/java/ifc/text/_XText.java
+++ b/qadevOOo/tests/java/ifc/text/_XText.java
@@ -90,10 +90,10 @@ public class _XText extends MultiMethodTest {
// get indexaccess to the tablecollection
XIndexAccess xIA = info.getCollection();
- // this comparision works just because it has to be at least one
+ // this comparison works just because it has to be at least one
// table at this point regardless which thread inserted it
// there is although the possibility that the first threads call
- // failed, the second not and comparision happens after second threads
+ // failed, the second not and comparison happens after second threads
// otherwise if something fails it should have thrown an exception
//tRes.tested("insertTextContent()", xIA.getCount() > 0 );
@@ -110,12 +110,12 @@ public class _XText extends MultiMethodTest {
log.println( "test for insertTextContent" );
try {
oObj.insertTextContent(oCursor, null, false);
- log.println("The expected Exception doesn't occured");
+ log.println("The expected Exception doesn't occurred");
result &= false;
}
catch( com.sun.star.lang.IllegalArgumentException iaE ){
// Some exception.FAILED
- log.println("Expected Exception occured");
+ log.println("Expected Exception occurred");
String msg = iaE.getMessage();
if (msg.equals("")) {
log.println("But there is not detailed message");
@@ -157,7 +157,7 @@ public class _XText extends MultiMethodTest {
return;
}
- // no exception occured so it works
+ // no exception occurred so it works
tRes.tested( "removeTextContent()", true );
}
diff --git a/qadevOOo/tests/java/ifc/text/_XTextFieldsSupplier.java b/qadevOOo/tests/java/ifc/text/_XTextFieldsSupplier.java
index 1b24fb6847b9..d43fa6b5d6d0 100644
--- a/qadevOOo/tests/java/ifc/text/_XTextFieldsSupplier.java
+++ b/qadevOOo/tests/java/ifc/text/_XTextFieldsSupplier.java
@@ -119,19 +119,19 @@ public class _XTextFieldsSupplier extends MultiMethodTest {
the_Cursor, oContent, true);
} catch (com.sun.star.lang.WrappedTargetException e) {
- log.println("Exception occured while creating test Object.");
+ log.println("Exception occurred while creating test Object.");
e.printStackTrace(log);
throw new StatusException("Couldn't insert textField.URL", e);
} catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- log.println("Exception occured while creating test Object.");
+ log.println("Exception occurred while creating test Object.");
e.printStackTrace(log);
throw new StatusException("Couldn't insert textField.URL", e);
} catch (com.sun.star.lang.IllegalArgumentException e) {
- log.println("Exception occured while creating test Object.");
+ log.println("Exception occurred while creating test Object.");
e.printStackTrace(log);
throw new StatusException("Couldn't insert textField.URL", e);
} catch (com.sun.star.uno.Exception e) {
- log.println("Exception occured while creating test Object.");
+ log.println("Exception occurred while creating test Object.");
e.printStackTrace(log);
throw new StatusException("Couldn't insert textField.URL", e);
}
@@ -171,7 +171,7 @@ public class _XTextFieldsSupplier extends MultiMethodTest {
/**
* Just for convenience: log the exception and set the method false.
* @param method The name of the method to set to false.
- * @param e The Exception that occured.
+ * @param e The Exception that occurred.
*/
private void setMethodFalse(String method, Exception e) {
log.println("Exception while executing '" + method + "'");
diff --git a/qadevOOo/tests/java/ifc/ucb/_XCachedDynamicResultSetStubFactory.java b/qadevOOo/tests/java/ifc/ucb/_XCachedDynamicResultSetStubFactory.java
index b445ff206b60..725edf546349 100644
--- a/qadevOOo/tests/java/ifc/ucb/_XCachedDynamicResultSetStubFactory.java
+++ b/qadevOOo/tests/java/ifc/ucb/_XCachedDynamicResultSetStubFactory.java
@@ -137,7 +137,7 @@ public class _XCachedDynamicResultSetStubFactory extends MultiMethodTest {
setFac = (XCachedDynamicResultSetFactory) UnoRuntime.queryInterface
(XCachedDynamicResultSetFactory.class, fac) ;
} catch (com.sun.star.uno.Exception e) {
- log.println("Cant instantiate a service") ;
+ log.println("Can't instantiate a service") ;
e.printStackTrace(log) ;
result = false ;
}
diff --git a/qadevOOo/tests/java/ifc/ucb/_XContentProvider.java b/qadevOOo/tests/java/ifc/ucb/_XContentProvider.java
index c97abe19fe53..1134fa588c1d 100644
--- a/qadevOOo/tests/java/ifc/ucb/_XContentProvider.java
+++ b/qadevOOo/tests/java/ifc/ucb/_XContentProvider.java
@@ -117,7 +117,7 @@ public class _XContentProvider extends MultiMethodTest {
int compare = oObj.compareContentIds(CI,CI2);
boolean res = (compare != 0);
if (!res) {
- log.println("Didn't work with differnt IDs");
+ log.println("Didn't work with different IDs");
log.println(compare+" was returned");
}
compare = oObj.compareContentIds(CI,CI);
diff --git a/qadevOOo/tests/java/ifc/ucb/_XDataContainer.java b/qadevOOo/tests/java/ifc/ucb/_XDataContainer.java
index b594ceb0ec4c..e453eb47b35c 100644
--- a/qadevOOo/tests/java/ifc/ucb/_XDataContainer.java
+++ b/qadevOOo/tests/java/ifc/ucb/_XDataContainer.java
@@ -50,7 +50,7 @@ public class _XDataContainer extends MultiMethodTest {
/**
* Sets the content type to some value. <p>
- * Has <b>OK</b> status if no runtime exseptions occured.
+ * Has <b>OK</b> status if no runtime exseptions occurred.
*/
public void _setContentType() {
oObj.setContentType("image/jpeg") ;
@@ -74,7 +74,7 @@ public class _XDataContainer extends MultiMethodTest {
/**
* Sets the data to some byte array. <p>
- * Has <b>OK</b> status if no runtime exseptions occured.
+ * Has <b>OK</b> status if no runtime exseptions occurred.
*/
public void _setData() {
oObj.setData(data) ;
@@ -105,7 +105,7 @@ public class _XDataContainer extends MultiMethodTest {
/**
* Sets the data URL to some URL. <p>
- * Has <b>OK</b> status if no runtime exseptions occured.
+ * Has <b>OK</b> status if no runtime exseptions occurred.
*/
public void _setDataURL() {
dataURL = util.utils.getOfficeTemp((XMultiServiceFactory)tParam.getMSF()) ;
diff --git a/qadevOOo/tests/java/ifc/ucb/_XSimpleFileAccess.java b/qadevOOo/tests/java/ifc/ucb/_XSimpleFileAccess.java
index 4632c41c4f88..a8fb961dfef0 100644
--- a/qadevOOo/tests/java/ifc/ucb/_XSimpleFileAccess.java
+++ b/qadevOOo/tests/java/ifc/ucb/_XSimpleFileAccess.java
@@ -79,7 +79,7 @@ public class _XSimpleFileAccess extends MultiMethodTest {
oObj.kill(copiedFile);
}
catch (com.sun.star.uno.Exception ex) {
- log.println("Exception occured while testing 'copy()'");
+ log.println("Exception occurred while testing 'copy()'");
ex.printStackTrace(log);
tRes.tested("copy()",false);
}
@@ -112,7 +112,7 @@ public class _XSimpleFileAccess extends MultiMethodTest {
oObj.kill(copiedFile);
}
catch (com.sun.star.uno.Exception ex) {
- log.println("Exception occured while testing 'move()'");
+ log.println("Exception occurred while testing 'move()'");
ex.printStackTrace(log);
tRes.tested("move()",false);
}
@@ -141,7 +141,7 @@ public class _XSimpleFileAccess extends MultiMethodTest {
tRes.tested("kill()",!oObj.exists(copiedFile));
}
catch (com.sun.star.uno.Exception ex) {
- log.println("Exception occured while testing 'kill()'");
+ log.println("Exception occurred while testing 'kill()'");
ex.printStackTrace(log);
tRes.tested("kill()",false);
}
@@ -158,7 +158,7 @@ public class _XSimpleFileAccess extends MultiMethodTest {
tRes.tested("isFolder()",oObj.isFolder(dirname));
}
catch (com.sun.star.uno.Exception ex) {
- log.println("Exception occured while testing 'isFolder()'");
+ log.println("Exception occurred while testing 'isFolder()'");
ex.printStackTrace(log);
tRes.tested("isFolder()",false);
}
@@ -203,7 +203,7 @@ public class _XSimpleFileAccess extends MultiMethodTest {
oObj.kill(readonlyCopy);
tRes.tested("isReadOnly()",result);
} catch (com.sun.star.uno.Exception ex) {
- log.println("Exception occured while testing 'isReadOnly()'");
+ log.println("Exception occurred while testing 'isReadOnly()'");
ex.printStackTrace(log);
tRes.tested("isReadOnly()",false);
}
@@ -250,7 +250,7 @@ public class _XSimpleFileAccess extends MultiMethodTest {
oObj.kill(readonlyCopy);
}
catch (Exception ex) {
- log.println("Exception occured while testing 'setReadOnly()'");
+ log.println("Exception occurred while testing 'setReadOnly()'");
ex.printStackTrace(log);
tRes.tested("setReadOnly()",false);
}
@@ -274,7 +274,7 @@ public class _XSimpleFileAccess extends MultiMethodTest {
oObj.kill(newFolder);
}
catch (com.sun.star.uno.Exception ex) {
- log.println("Exception occured while testing 'createFolder()'");
+ log.println("Exception occurred while testing 'createFolder()'");
ex.printStackTrace(log);
tRes.tested("createFolder()",false);
}
@@ -296,7 +296,7 @@ public class _XSimpleFileAccess extends MultiMethodTest {
tRes.tested("getSize()", fSize == 17 );
}
catch (com.sun.star.uno.Exception ex) {
- log.println("Exception occured while testing 'getSize()'");
+ log.println("Exception occurred while testing 'getSize()'");
ex.printStackTrace(log);
tRes.tested("getSize()",false);
}
@@ -320,7 +320,7 @@ public class _XSimpleFileAccess extends MultiMethodTest {
"application/vnd.sun.staroffice.fsys-file".equals(fType) );
}
catch (com.sun.star.uno.Exception ex) {
- log.println("Exception occured while testing 'getContentType()'");
+ log.println("Exception occurred while testing 'getContentType()'");
ex.printStackTrace(log);
tRes.tested("getContentType()",false);
}
@@ -372,7 +372,7 @@ public class _XSimpleFileAccess extends MultiMethodTest {
tRes.tested("getDateTimeModified()", res);
}
catch (com.sun.star.uno.Exception ex) {
- log.println("Exception occured while testing 'getDateTimeModified()'");
+ log.println("Exception occurred while testing 'getDateTimeModified()'");
ex.printStackTrace(log);
tRes.tested("getDateTimeModified()",false);
}
@@ -393,7 +393,7 @@ public class _XSimpleFileAccess extends MultiMethodTest {
tRes.tested("getFolderContents()", cont.length>0);
}
catch (com.sun.star.uno.Exception ex) {
- log.println("Exception occured while testing 'getFolderContents()'");
+ log.println("Exception occurred while testing 'getFolderContents()'");
ex.printStackTrace(log);
tRes.tested("getFolderContents()",false);
}
@@ -417,7 +417,7 @@ public class _XSimpleFileAccess extends MultiMethodTest {
oObj.exists(filename) && !oObj.exists(wrongname));
}
catch (com.sun.star.uno.Exception ex) {
- log.println("Exception occured while testing 'exists()'");
+ log.println("Exception occurred while testing 'exists()'");
ex.printStackTrace(log);
tRes.tested("exists()",false);
}
@@ -439,7 +439,7 @@ public class _XSimpleFileAccess extends MultiMethodTest {
tRes.tested("openFileRead()", iStream != null);
}
catch (com.sun.star.uno.Exception ex) {
- log.println("Exception occured while testing 'openFileRead()'");
+ log.println("Exception occurred while testing 'openFileRead()'");
ex.printStackTrace(log);
tRes.tested("openFileRead()",false);
}
@@ -470,7 +470,7 @@ public class _XSimpleFileAccess extends MultiMethodTest {
oObj.kill(copiedFile);
}
catch (com.sun.star.uno.Exception ex) {
- log.println("Exception occured while testing 'openFileWrite()'");
+ log.println("Exception occurred while testing 'openFileWrite()'");
ex.printStackTrace(log);
tRes.tested("openFileWrite()",false);
}
@@ -502,7 +502,7 @@ public class _XSimpleFileAccess extends MultiMethodTest {
oObj.kill(copiedFile);
}
catch (com.sun.star.uno.Exception ex) {
- log.println("Exception occured while testing 'openFileReadWrite()'");
+ log.println("Exception occurred while testing 'openFileReadWrite()'");
ex.printStackTrace(log);
tRes.tested("openFileReadWrite()",false);
}
@@ -527,7 +527,7 @@ public class _XSimpleFileAccess extends MultiMethodTest {
oObj.setInteractionHandler(handler);
tRes.tested("setInteractionHandler()", true);
} catch (Exception ex) {
- log.println("Exception occured while testing 'setInteractionHandler()'");
+ log.println("Exception occurred while testing 'setInteractionHandler()'");
ex.printStackTrace(log);
tRes.tested("setInteractionHandler()", false);
}
diff --git a/qadevOOo/tests/java/ifc/ucb/_XSimpleFileAccess2.java b/qadevOOo/tests/java/ifc/ucb/_XSimpleFileAccess2.java
index 682108988f48..a0b5324e5cfd 100644
--- a/qadevOOo/tests/java/ifc/ucb/_XSimpleFileAccess2.java
+++ b/qadevOOo/tests/java/ifc/ucb/_XSimpleFileAccess2.java
@@ -59,13 +59,13 @@ public class _XSimpleFileAccess2 extends MultiMethodTest {
tRes.tested("writeFile()",result);
}
catch (com.sun.star.ucb.CommandAbortedException ex) {
- log.println("CommandAbortedException occured while testing "+
+ log.println("CommandAbortedException occurred while testing "+
"'writeFile()'");
ex.printStackTrace(log);
tRes.tested("writeFile()",false);
}
catch (com.sun.star.uno.Exception ex) {
- log.println("Exception occured while testing 'writeFile()'");
+ log.println("Exception occurred while testing 'writeFile()'");
ex.printStackTrace(log);
tRes.tested("writeFile()",false);
}
diff --git a/qadevOOo/tests/java/ifc/ucb/_XSortedDynamicResultSetFactory.java b/qadevOOo/tests/java/ifc/ucb/_XSortedDynamicResultSetFactory.java
index f9a3efb56dd3..40d66d3a801d 100644
--- a/qadevOOo/tests/java/ifc/ucb/_XSortedDynamicResultSetFactory.java
+++ b/qadevOOo/tests/java/ifc/ucb/_XSortedDynamicResultSetFactory.java
@@ -140,7 +140,7 @@ public class _XSortedDynamicResultSetFactory extends MultiMethodTest {
rowCount = set.getRow();
log.println("Number of rows in result set: " + rowCount);
} catch (com.sun.star.sdbc.SQLException e) {
- log.println("Exception occured while accessing "+
+ log.println("Exception occurred while accessing "+
"sorted result set :");
e.printStackTrace(log);
}
diff --git a/qadevOOo/tests/java/ifc/ui/dialogs/_XFilePicker.java b/qadevOOo/tests/java/ifc/ui/dialogs/_XFilePicker.java
index a75b20ac64ed..5e765dca5bc4 100644
--- a/qadevOOo/tests/java/ifc/ui/dialogs/_XFilePicker.java
+++ b/qadevOOo/tests/java/ifc/ui/dialogs/_XFilePicker.java
@@ -52,7 +52,7 @@ public class _XFilePicker extends MultiMethodTest {
/**
* Sets the current directory to the test document directory. <p>
- * Has <b>OK</b> status if no exceptions occured.
+ * Has <b>OK</b> status if no exceptions occurred.
*/
public void _setDisplayDirectory() {
boolean result = true ;
@@ -91,7 +91,7 @@ public class _XFilePicker extends MultiMethodTest {
/**
* Sets default name to file name existing in test document
* directory ('space-metal.jpg'). <p>
- * Has <b>OK</b> status if no exceptions occured.
+ * Has <b>OK</b> status if no exceptions occurred.
*/
public void _setDefaultName() {
boolean result = true ;
@@ -109,7 +109,7 @@ public class _XFilePicker extends MultiMethodTest {
/**
* Just switch object to MultiSelectionMode. There is no ways
* to check this method (only interactively). <p>
- * Has <b>OK</b> status if no runtime exceptions occured.
+ * Has <b>OK</b> status if no runtime exceptions occurred.
*/
public void _setMultiSelectionMode() {
diff --git a/qadevOOo/tests/java/ifc/ui/dialogs/_XFilePickerControlAccess.java b/qadevOOo/tests/java/ifc/ui/dialogs/_XFilePickerControlAccess.java
index b336af1a826e..e280e3418404 100644
--- a/qadevOOo/tests/java/ifc/ui/dialogs/_XFilePickerControlAccess.java
+++ b/qadevOOo/tests/java/ifc/ui/dialogs/_XFilePickerControlAccess.java
@@ -48,7 +48,7 @@ import com.sun.star.ui.dialogs.XFilePickerControlAccess;
* <code>Short</code>) : control identifier in the extended
* FilePicker dialog. </li>
* <li> <code>'XFilePickerControlAccess.ControlValue'</code> (of type
-* <code>Object</code>) <b>optional</b> (but mostly desireable
+* <code>Object</code>) <b>optional</b> (but mostly desirable
* since the control has emtpy initial value):
* the value which can set for the control . </li>
* <ul> <p>
@@ -79,7 +79,7 @@ public class _XFilePickerControlAccess extends MultiMethodTest {
/**
* Gets the value of the control and stores it. <p>
- * Has <b>OK</b> status if no runtime exceptions occured.
+ * Has <b>OK</b> status if no runtime exceptions occurred.
*/
public void _getValue() {
boolean result = true ;
@@ -132,7 +132,7 @@ public class _XFilePickerControlAccess extends MultiMethodTest {
/**
* Gets the label of the control and stores it. <p>
- * Has <b>OK</b> status if no runtime exceptions occured.
+ * Has <b>OK</b> status if no runtime exceptions occurred.
*/
public void _getLabel() {
@@ -178,7 +178,7 @@ public class _XFilePickerControlAccess extends MultiMethodTest {
/**
* Disables and then enables the control. Can be checked only
* interactively. <p>
- * Has <b>OK</b> status if no runtime exceptions occured.
+ * Has <b>OK</b> status if no runtime exceptions occurred.
*/
public void _enableControl() {
boolean result = true ;
diff --git a/qadevOOo/tests/java/ifc/ui/dialogs/_XFilePickerNotifier.java b/qadevOOo/tests/java/ifc/ui/dialogs/_XFilePickerNotifier.java
index da1bebe28599..4bc6e23af926 100644
--- a/qadevOOo/tests/java/ifc/ui/dialogs/_XFilePickerNotifier.java
+++ b/qadevOOo/tests/java/ifc/ui/dialogs/_XFilePickerNotifier.java
@@ -104,9 +104,9 @@ public class _XFilePickerNotifier extends MultiMethodTest {
(XFilePicker.class, oObj) ;
if (fps == null) {
- log.println("The object doesnt implement XFilePicker") ;
+ log.println("The object doesn't implement XFilePicker") ;
throw new StatusException(Status.failed
- ("The object doesnt implement XFilePicker"));
+ ("The object doesn't implement XFilePicker"));
}
XExecutableDialog exD = (XExecutableDialog) UnoRuntime.queryInterface(
diff --git a/qadevOOo/tests/java/ifc/ui/dialogs/_XFilterManager.java b/qadevOOo/tests/java/ifc/ui/dialogs/_XFilterManager.java
index 1ca62fa88077..a83716f9d579 100644
--- a/qadevOOo/tests/java/ifc/ui/dialogs/_XFilterManager.java
+++ b/qadevOOo/tests/java/ifc/ui/dialogs/_XFilterManager.java
@@ -60,7 +60,7 @@ public class _XFilterManager extends MultiMethodTest {
/**
* Sets the current filter to that which was appended before.<p>
- * Has <b>OK</b> status if no exceptions occured, else one of
+ * Has <b>OK</b> status if no exceptions occurred, else one of
* <code>appendFilter</code> and <code>setCurrentFilter</code>
* methods failed. <p>
* The following method tests are to be completed successfully before :
diff --git a/qadevOOo/tests/java/ifc/ui/dialogs/_XFolderPicker.java b/qadevOOo/tests/java/ifc/ui/dialogs/_XFolderPicker.java
index eed2dec05d5d..8262b139364f 100644
--- a/qadevOOo/tests/java/ifc/ui/dialogs/_XFolderPicker.java
+++ b/qadevOOo/tests/java/ifc/ui/dialogs/_XFolderPicker.java
@@ -45,7 +45,7 @@ public class _XFolderPicker extends MultiMethodTest {
/**
* Sets the current directory to SOffice temp dir. <p>
- * Has <b>OK</b> status if no exceptions occured.
+ * Has <b>OK</b> status if no exceptions occurred.
*/
public void _setDisplayDirectory() {
boolean result = true ;
diff --git a/qadevOOo/tests/java/ifc/uno/_XComponentContext.java b/qadevOOo/tests/java/ifc/uno/_XComponentContext.java
index 04cbff263ba7..94b24cac0047 100644
--- a/qadevOOo/tests/java/ifc/uno/_XComponentContext.java
+++ b/qadevOOo/tests/java/ifc/uno/_XComponentContext.java
@@ -52,7 +52,7 @@ public class _XComponentContext extends MultiMethodTest {
log.println("worked .... ok");
res &= true;
} catch (com.sun.star.uno.Exception e) {
- log.println("Exception occured " + e.getMessage());
+ log.println("Exception occurred " + e.getMessage());
res &= false;
}
}
diff --git a/qadevOOo/tests/java/ifc/util/_XCancellable.java b/qadevOOo/tests/java/ifc/util/_XCancellable.java
index 1879ad93123f..470ec9f7a866 100644
--- a/qadevOOo/tests/java/ifc/util/_XCancellable.java
+++ b/qadevOOo/tests/java/ifc/util/_XCancellable.java
@@ -42,7 +42,7 @@ public class _XCancellable extends MultiMethodTest {
/**
* Just calls the method. <p>
- * Has <b>OK</b> status if no exception has occured. <p>
+ * Has <b>OK</b> status if no exception has occurred. <p>
*/
public void _cancel() {
oObj.cancel() ;
diff --git a/qadevOOo/tests/java/ifc/util/_XCloneable.java b/qadevOOo/tests/java/ifc/util/_XCloneable.java
index a0e137e61a00..982d4d549ba6 100644
--- a/qadevOOo/tests/java/ifc/util/_XCloneable.java
+++ b/qadevOOo/tests/java/ifc/util/_XCloneable.java
@@ -47,7 +47,7 @@ public class _XCloneable extends MultiMethodTest {
/**
* calls the method. <p>
- * Has <b>OK</b> status if no exception has occured. <p>
+ * Has <b>OK</b> status if no exception has occurred. <p>
*/
public void _createClone() {
boolean result = true;
diff --git a/qadevOOo/tests/java/ifc/util/_XFlushable.java b/qadevOOo/tests/java/ifc/util/_XFlushable.java
index 62e7b1049707..bed5738c9be2 100644
--- a/qadevOOo/tests/java/ifc/util/_XFlushable.java
+++ b/qadevOOo/tests/java/ifc/util/_XFlushable.java
@@ -64,7 +64,7 @@ public class _XFlushable extends MultiMethodTest {
/**
* Test call method <code>flush</code> and checks if added listener
* was called and removed one wasn't. <p>
- * Has OK status if no exception has occured. <p>
+ * Has OK status if no exception has occurred. <p>
* Methods to be executed before :
* {@link #_addFlushListener},
* {@link #_removeFlushListener}
diff --git a/qadevOOo/tests/java/ifc/util/_XModeSelector.java b/qadevOOo/tests/java/ifc/util/_XModeSelector.java
index a3933852c384..8ffd93d7d11d 100644
--- a/qadevOOo/tests/java/ifc/util/_XModeSelector.java
+++ b/qadevOOo/tests/java/ifc/util/_XModeSelector.java
@@ -46,7 +46,7 @@ public class _XModeSelector extends MultiMethodTest {
/**
* Calls the method and as argument pass one of the supported modes
* that was returned by method getSupportedMode.<p>
- * Has <b> OK </b> status if no runtime exceptions occured.
+ * Has <b> OK </b> status if no runtime exceptions occurred.
*/
public void _setMode() {
requiredMethod("getSupportedModes()");
@@ -63,7 +63,7 @@ public class _XModeSelector extends MultiMethodTest {
/**
* Calls the method and check returned value.<p>
- * Has <b> OK </b> status if no runtime exceptions occured
+ * Has <b> OK </b> status if no runtime exceptions occurred
* and returned value is equal to value that was set by method setMode.
*/
public void _getMode() {
@@ -74,7 +74,7 @@ public class _XModeSelector extends MultiMethodTest {
/**
* Calls the method and checks value returned by method.<p>
- * Has <b> OK </b> status if no runtime exceptions occured
+ * Has <b> OK </b> status if no runtime exceptions occurred
* and returned value is not null.
*/
public void _getSupportedModes() {
@@ -87,7 +87,7 @@ public class _XModeSelector extends MultiMethodTest {
* by method getSupportedMode is passed as argument.
* Then the method is called again and the mode that is certainly not supported
* is passed. Checks up returned values in both cases.<p>
- * Has <b> OK </b> status if no runtime exceptions occured,
+ * Has <b> OK </b> status if no runtime exceptions occurred,
* returned value is true in first call and is false in second call.
*/
public void _supportsMode() {
diff --git a/qadevOOo/tests/java/ifc/util/_XModifyBroadcaster.java b/qadevOOo/tests/java/ifc/util/_XModifyBroadcaster.java
index 4a90c0941028..ea055d023ae6 100644
--- a/qadevOOo/tests/java/ifc/util/_XModifyBroadcaster.java
+++ b/qadevOOo/tests/java/ifc/util/_XModifyBroadcaster.java
@@ -60,7 +60,7 @@ public class _XModifyBroadcaster extends MultiMethodTest {
/**
* Just calls the method. <p>
- * Has <b> OK </b> status if no runtime exceptions occured
+ * Has <b> OK </b> status if no runtime exceptions occurred
*/
public void _addModifyListener() {
log.println("'Modified' events are called only in case"+
@@ -71,7 +71,7 @@ public class _XModifyBroadcaster extends MultiMethodTest {
/**
* Just calls the method. <p>
- * Has <b> OK </b> status if no runtime exceptions occured
+ * Has <b> OK </b> status if no runtime exceptions occurred
*/
public void _removeModifyListener() {
requiredMethod("addModifyListener()");
diff --git a/qadevOOo/tests/java/ifc/util/_XSearchable.java b/qadevOOo/tests/java/ifc/util/_XSearchable.java
index 36dbec9a6dca..33dcc262f889 100644
--- a/qadevOOo/tests/java/ifc/util/_XSearchable.java
+++ b/qadevOOo/tests/java/ifc/util/_XSearchable.java
@@ -125,7 +125,7 @@ public class _XSearchable extends MultiMethodTest {
/**
* Performs search using descriptor created before. Storing the
- * first occurence result. <p>
+ * first occurrence result. <p>
* Has <b> OK </b> status if the method not <code>null</code>
* value. <p>
* The following method tests are to be completed successfully before :
diff --git a/qadevOOo/tests/java/ifc/util/_XTextSearch.java b/qadevOOo/tests/java/ifc/util/_XTextSearch.java
index 8a6df25ce177..40655e6d3909 100644
--- a/qadevOOo/tests/java/ifc/util/_XTextSearch.java
+++ b/qadevOOo/tests/java/ifc/util/_XTextSearch.java
@@ -56,7 +56,7 @@ public class _XTextSearch extends MultiMethodTest {
/**
* Sets options for searching regular expression in a string,
* ignoring case. <p>
- * Has <b>OK</b> status if no runtime exceptions occured.
+ * Has <b>OK</b> status if no runtime exceptions occurred.
*/
public void _setOptions() {
diff --git a/qadevOOo/tests/java/ifc/view/_XControlAccess.java b/qadevOOo/tests/java/ifc/view/_XControlAccess.java
index 2b111e5af735..7ad7aa3221ad 100644
--- a/qadevOOo/tests/java/ifc/view/_XControlAccess.java
+++ b/qadevOOo/tests/java/ifc/view/_XControlAccess.java
@@ -105,13 +105,13 @@ public class _XControlAccess extends MultiMethodTest {
bResult &= oControl != null;
} catch (com.sun.star.container.NoSuchElementException e) {
- log.println("Exception occured calling the method: " + e);
+ log.println("Exception occurred calling the method: " + e);
bResult = false;
} catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- log.println("Exception occured calling the method: " + e);
+ log.println("Exception occurred calling the method: " + e);
bResult = false;
} catch (com.sun.star.lang.WrappedTargetException e) {
- log.println("Exception occured calling the method: " + e);
+ log.println("Exception occurred calling the method: " + e);
bResult = false;
}
tRes.tested("getControl()", bResult);
diff --git a/qadevOOo/tests/java/ifc/view/_XSelectionSupplier.java b/qadevOOo/tests/java/ifc/view/_XSelectionSupplier.java
index 9aa9274b73ca..9dbcf3436438 100644
--- a/qadevOOo/tests/java/ifc/view/_XSelectionSupplier.java
+++ b/qadevOOo/tests/java/ifc/view/_XSelectionSupplier.java
@@ -101,7 +101,7 @@ public class _XSelectionSupplier extends MultiMethodTest {
oObj.select(selections[1]);
res = selectionChanged;
} catch (com.sun.star.lang.IllegalArgumentException ex) {
- log.println("Exception occured during addSelectionChangeListener()");
+ log.println("Exception occurred during addSelectionChangeListener()");
ex.printStackTrace(log);
res = false;
}
@@ -147,7 +147,7 @@ public class _XSelectionSupplier extends MultiMethodTest {
}
}
} catch (com.sun.star.lang.IllegalArgumentException ex) {
- log.println("Exception occured during select()");
+ log.println("Exception occurred during select()");
ex.printStackTrace(log);
res = false;
}
@@ -175,7 +175,7 @@ public class _XSelectionSupplier extends MultiMethodTest {
oObj.select(selections[1]);
res = !selectionChanged;
} catch (com.sun.star.lang.IllegalArgumentException ex) {
- log.println("Exception occured during removeSelectionChangeListener()");
+ log.println("Exception occurred during removeSelectionChangeListener()");
ex.printStackTrace(log);
res = false;
}
diff --git a/qadevOOo/tests/java/ifc/xml/sax/_XDocumentHandler.java b/qadevOOo/tests/java/ifc/xml/sax/_XDocumentHandler.java
index aad114a9bc91..63a91d535014 100644
--- a/qadevOOo/tests/java/ifc/xml/sax/_XDocumentHandler.java
+++ b/qadevOOo/tests/java/ifc/xml/sax/_XDocumentHandler.java
@@ -170,7 +170,7 @@ public class _XDocumentHandler extends MultiMethodTest {
* Sets document locator to dummy locator implementation and
* calls the <code>startDocument</code> method. <p>
*
- * Has <b> OK </b> status if no runtime exceptions occured.
+ * Has <b> OK </b> status if no runtime exceptions occurred.
*/
public void _startDocument() {
if (ToBeSkipped) {
@@ -199,11 +199,11 @@ public class _XDocumentHandler extends MultiMethodTest {
/**
* This test is finally executed. It finishes XML data
- * transfering with <code>endDocument</code> method call. <p>
+ * transferring with <code>endDocument</code> method call. <p>
*
- * Has <b>OK</b> status if no exceptions occured during
- * the whole transfering and if the appropriate changes
- * occured in the document where XML data was trnsfered to.
+ * Has <b>OK</b> status if no exceptions occurred during
+ * the whole transferring and if the appropriate changes
+ * occurred in the document where XML data was trnsfered to.
* This check is performed by checker relation.
*/
public void _endDocument() {
@@ -236,8 +236,8 @@ public class _XDocumentHandler extends MultiMethodTest {
* Transfers XML data obtained from relation
* <code>'XDocumentHandler.XMLData'</code>. <p>
*
- * Has <b>OK</b> status if no exceptions occured during XML data
- * transfering in <code>startDocument</code> and
+ * Has <b>OK</b> status if no exceptions occurred during XML data
+ * transferring in <code>startDocument</code> and
* <code>startElement</code> method tests. <p>
*
* Exact checking of XML transfer is made in <code>endDocument</code>
@@ -301,8 +301,8 @@ public class _XDocumentHandler extends MultiMethodTest {
/**
* Does nothing. <p>
*
- * Has <b>OK</b> status if no exceptions occured during XML data
- * transfering in <code>startDocument</code> and
+ * Has <b>OK</b> status if no exceptions occurred during XML data
+ * transferring in <code>startDocument</code> and
* <code>startElement</code> method tests.
*/
public void _endElement() {
@@ -320,8 +320,8 @@ public class _XDocumentHandler extends MultiMethodTest {
/**
* Does nothing. <p>
*
- * Has <b>OK</b> status if no exceptions occured during XML data
- * transfering in <code>startDocument</code> and
+ * Has <b>OK</b> status if no exceptions occurred during XML data
+ * transferring in <code>startDocument</code> and
* <code>startElement</code> method tests.
*/
public void _characters() {
@@ -339,8 +339,8 @@ public class _XDocumentHandler extends MultiMethodTest {
/**
* Does nothing. <p>
*
- * Has <b>OK</b> status if no exceptions occured during XML data
- * transfering in <code>startDocument</code> and
+ * Has <b>OK</b> status if no exceptions occurred during XML data
+ * transferring in <code>startDocument</code> and
* <code>startElement</code> method tests.
*/
public void _ignorableWhitespace() {
@@ -358,8 +358,8 @@ public class _XDocumentHandler extends MultiMethodTest {
/**
* Does nothing. <p>
*
- * Has <b>OK</b> status if no exceptions occured during XML data
- * transfering in <code>startDocument</code> and
+ * Has <b>OK</b> status if no exceptions occurred during XML data
+ * transferring in <code>startDocument</code> and
* <code>startElement</code> method tests.
*/
public void _processingInstruction() {
@@ -377,8 +377,8 @@ public class _XDocumentHandler extends MultiMethodTest {
/**
* Does nothing. <p>
*
- * Has <b>OK</b> status if no exceptions occured during XML data
- * transfering in <code>startDocument</code> and
+ * Has <b>OK</b> status if no exceptions occurred during XML data
+ * transferring in <code>startDocument</code> and
* <code>startElement</code> method tests.
*/
public void _setDocumentLocator() {
@@ -390,7 +390,7 @@ public class _XDocumentHandler extends MultiMethodTest {
boolean result = locatorResult ;
if (locatorException != null) {
- log.println("Exception occured during setDocumentLocator() call:") ;
+ log.println("Exception occurred during setDocumentLocator() call:") ;
locatorException.printStackTrace(log) ;
log.println("Wrapped exception :"
+ locatorException.WrappedException) ;
diff --git a/qadevOOo/tests/java/mod/_acceptor/package.html b/qadevOOo/tests/java/mod/_acceptor/package.html
index 430fbefe5a29..dc37f5c246d1 100644
--- a/qadevOOo/tests/java/mod/_acceptor/package.html
+++ b/qadevOOo/tests/java/mod/_acceptor/package.html
@@ -21,6 +21,6 @@
***********************************************************-->
<HTML>
<BODY>
-<P>Containes all test cases for the module 'acceptor'.</P>
+<P>Contains all test cases for the module 'acceptor'.</P>
</BODY>
</HTML>
diff --git a/qadevOOo/tests/java/mod/_brdgfctr/package.html b/qadevOOo/tests/java/mod/_brdgfctr/package.html
index 3a0eced37d72..837d0117e891 100644
--- a/qadevOOo/tests/java/mod/_brdgfctr/package.html
+++ b/qadevOOo/tests/java/mod/_brdgfctr/package.html
@@ -21,6 +21,6 @@
***********************************************************-->
<HTML>
<BODY>
-<P>Containes all test cases for the module 'brdgfctr'.</P>
+<P>Contains all test cases for the module 'brdgfctr'.</P>
</BODY>
</HTML>
diff --git a/qadevOOo/tests/java/mod/_bridgefac.uno/package.html b/qadevOOo/tests/java/mod/_bridgefac.uno/package.html
index 3a0eced37d72..837d0117e891 100644
--- a/qadevOOo/tests/java/mod/_bridgefac.uno/package.html
+++ b/qadevOOo/tests/java/mod/_bridgefac.uno/package.html
@@ -21,6 +21,6 @@
***********************************************************-->
<HTML>
<BODY>
-<P>Containes all test cases for the module 'brdgfctr'.</P>
+<P>Contains all test cases for the module 'brdgfctr'.</P>
</BODY>
</HTML>
diff --git a/qadevOOo/tests/java/mod/_connector.uno/package.html b/qadevOOo/tests/java/mod/_connector.uno/package.html
index 3e6d6cd31946..9894f0865187 100644
--- a/qadevOOo/tests/java/mod/_connector.uno/package.html
+++ b/qadevOOo/tests/java/mod/_connector.uno/package.html
@@ -21,6 +21,6 @@
***********************************************************-->
<HTML>
<BODY>
-<P>Containes all test cases for the module 'connectr'.</P>
+<P>Contains all test cases for the module 'connectr'.</P>
</BODY>
</HTML>
diff --git a/qadevOOo/tests/java/mod/_connectr/package.html b/qadevOOo/tests/java/mod/_connectr/package.html
index 3e6d6cd31946..9894f0865187 100644
--- a/qadevOOo/tests/java/mod/_connectr/package.html
+++ b/qadevOOo/tests/java/mod/_connectr/package.html
@@ -21,6 +21,6 @@
***********************************************************-->
<HTML>
<BODY>
-<P>Containes all test cases for the module 'connectr'.</P>
+<P>Contains all test cases for the module 'connectr'.</P>
</BODY>
</HTML>
diff --git a/qadevOOo/tests/java/mod/_corefl/package.html b/qadevOOo/tests/java/mod/_corefl/package.html
index 184c7a2700b8..0559e8d9e542 100644
--- a/qadevOOo/tests/java/mod/_corefl/package.html
+++ b/qadevOOo/tests/java/mod/_corefl/package.html
@@ -21,6 +21,6 @@
***********************************************************-->
<HTML>
<BODY>
-<P>Containes all test cases for the module 'corefl'.</P>
+<P>Contains all test cases for the module 'corefl'.</P>
</BODY>
</HTML>
diff --git a/qadevOOo/tests/java/mod/_corereflection.uno/package.html b/qadevOOo/tests/java/mod/_corereflection.uno/package.html
index 184c7a2700b8..0559e8d9e542 100644
--- a/qadevOOo/tests/java/mod/_corereflection.uno/package.html
+++ b/qadevOOo/tests/java/mod/_corereflection.uno/package.html
@@ -21,6 +21,6 @@
***********************************************************-->
<HTML>
<BODY>
-<P>Containes all test cases for the module 'corefl'.</P>
+<P>Contains all test cases for the module 'corefl'.</P>
</BODY>
</HTML>
diff --git a/qadevOOo/tests/java/mod/_cpld/package.html b/qadevOOo/tests/java/mod/_cpld/package.html
index b5baf3279454..9fb18fcca8f6 100644
--- a/qadevOOo/tests/java/mod/_cpld/package.html
+++ b/qadevOOo/tests/java/mod/_cpld/package.html
@@ -21,6 +21,6 @@
***********************************************************-->
<HTML>
<BODY>
-<P>Containes all test cases for the module 'cpld'.</P>
+<P>Contains all test cases for the module 'cpld'.</P>
</BODY>
</HTML>
diff --git a/qadevOOo/tests/java/mod/_dbaccess/ORowSet.java b/qadevOOo/tests/java/mod/_dbaccess/ORowSet.java
index 6ea75c8450cf..e9adf90fb93a 100644
--- a/qadevOOo/tests/java/mod/_dbaccess/ORowSet.java
+++ b/qadevOOo/tests/java/mod/_dbaccess/ORowSet.java
@@ -208,7 +208,7 @@ public class ORowSet extends TestCase {
/**
* Creating a Testenvironment for the interfaces to be tested.
* The database (DBF) file is copied from test document directory
- * into SOffice temp dir with unique name for each enviroment
+ * into SOffice temp dir with unique name for each environment
* creation. If the file cann't be copied (is not released)
* then another unique name is used (file name suffix incremented
* by 1).<p>
diff --git a/qadevOOo/tests/java/mod/_dbaccess/package.html b/qadevOOo/tests/java/mod/_dbaccess/package.html
index 9675624adfd5..147d0a520b04 100644
--- a/qadevOOo/tests/java/mod/_dbaccess/package.html
+++ b/qadevOOo/tests/java/mod/_dbaccess/package.html
@@ -21,6 +21,6 @@
***********************************************************-->
<HTML>
<BODY>
-<P>Containes all test cases for the module 'dbaccess'.</P>
+<P>Contains all test cases for the module 'dbaccess'.</P>
</BODY>
</HTML>
diff --git a/qadevOOo/tests/java/mod/_defreg/NestedRegistry.java b/qadevOOo/tests/java/mod/_defreg/NestedRegistry.java
index 7fd737d3cda6..38f473667fe7 100644
--- a/qadevOOo/tests/java/mod/_defreg/NestedRegistry.java
+++ b/qadevOOo/tests/java/mod/_defreg/NestedRegistry.java
@@ -151,9 +151,9 @@ public class NestedRegistry extends TestCase {
copyFile(source, openF, log) ;
copyFile(source, mergeF, log) ;
} catch (java.io.IOException e) {
- log.println("Exception occured while copying files");
+ log.println("Exception occurred while copying files");
e.printStackTrace(log);
- throw new StatusException("Exception occured while copying files", e);
+ throw new StatusException("Exception occurred while copying files", e);
}
try {
diff --git a/qadevOOo/tests/java/mod/_defreg/package.html b/qadevOOo/tests/java/mod/_defreg/package.html
index ef4c87d18705..cea3b6fd6ff2 100644
--- a/qadevOOo/tests/java/mod/_defreg/package.html
+++ b/qadevOOo/tests/java/mod/_defreg/package.html
@@ -21,6 +21,6 @@
***********************************************************-->
<HTML>
<BODY>
-<P>Containes all test cases for the module 'defreg'.</P>
+<P>Contains all test cases for the module 'defreg'.</P>
</BODY>
</HTML>
diff --git a/qadevOOo/tests/java/mod/_fileacc/package.html b/qadevOOo/tests/java/mod/_fileacc/package.html
index 8ccc75571627..8a3554ca511c 100644
--- a/qadevOOo/tests/java/mod/_fileacc/package.html
+++ b/qadevOOo/tests/java/mod/_fileacc/package.html
@@ -21,6 +21,6 @@
***********************************************************-->
<HTML>
<BODY>
-<P>Containes all test cases for the module 'fileacc'.</P>
+<P>Contains all test cases for the module 'fileacc'.</P>
</BODY>
</HTML>
diff --git a/qadevOOo/tests/java/mod/_forms/GenericModelTest.java b/qadevOOo/tests/java/mod/_forms/GenericModelTest.java
index 0efdcfaad901..c5c0c10aab30 100644
--- a/qadevOOo/tests/java/mod/_forms/GenericModelTest.java
+++ b/qadevOOo/tests/java/mod/_forms/GenericModelTest.java
@@ -257,7 +257,7 @@ public class GenericModelTest extends TestCase {
if (myForm == null){
log.println("ERROR: could not get 'Standard' from drawpage!");
}
- log.println("the draw page contains folowing elemtens:");
+ log.println("the draw page contains following elemtens:");
String[] elements = FormTools.getForms(WriterTools.getDrawPage(m_xTextDoc)).getElementNames();
for (int i = 0; i< elements.length; i++){
log.println("Element[" + i + "] :" + elements[i]);
@@ -360,7 +360,7 @@ public class GenericModelTest extends TestCase {
* <li> <code>'XUpdateBroadcaster.Checker'</code> : <code>
* _XUpdateBroadcaster.UpdateChecker</code> interface implementation
* which can update, commit data and check if the data was successfully
- * commited.</li>
+ * committed.</li>
* <li> <code>'DataAwareControlModel.NewFieldName'</code> : for
* <code>com.sun.star.form.DataAwareControlModel</code> service
* which contains new name of the field ('_DATE') to bind control to.
diff --git a/qadevOOo/tests/java/mod/_forms/package.html b/qadevOOo/tests/java/mod/_forms/package.html
index 36491d316391..acbc93e15dac 100644
--- a/qadevOOo/tests/java/mod/_forms/package.html
+++ b/qadevOOo/tests/java/mod/_forms/package.html
@@ -21,6 +21,6 @@
***********************************************************-->
<HTML>
<BODY>
-<P>Containes all test cases for the module 'forms'.</P>
+<P>Contains all test cases for the module 'forms'.</P>
</BODY>
</HTML>
diff --git a/qadevOOo/tests/java/mod/_fwk/JobExecutor.java b/qadevOOo/tests/java/mod/_fwk/JobExecutor.java
index 2faf2d3ccb4b..8104fb32cc23 100644
--- a/qadevOOo/tests/java/mod/_fwk/JobExecutor.java
+++ b/qadevOOo/tests/java/mod/_fwk/JobExecutor.java
@@ -94,7 +94,7 @@ public class JobExecutor extends TestCase {
* </ol>. <p>
*
* First these two conditions are checked. If job and event are not
- * registered they are inserted into configuration and commited.
+ * registered they are inserted into configuration and committed.
* After what SOffice must be destroyed for proper initialization
* of <code>JobExecutor</code> after startup. <p>
*
diff --git a/qadevOOo/tests/java/mod/_fwl/FilterFactory.java b/qadevOOo/tests/java/mod/_fwl/FilterFactory.java
index 5164eba1f2f3..47bdaf0e162d 100644
--- a/qadevOOo/tests/java/mod/_fwl/FilterFactory.java
+++ b/qadevOOo/tests/java/mod/_fwl/FilterFactory.java
@@ -66,7 +66,7 @@ public class FilterFactory extends TestCase {
* <code>com.sun.star.comp.framework.FilterFactory</code>.
* Prepares relation for
* <code>XMultiServiceFactory.createInstanceWithArguments</code> method
- * test. Only filters wich have their service names can be instantiated
+ * test. Only filters which have their service names can be instantiated
* in some reasons (?). For instantiation used filter type as service
* name and its name as a parameter. <p>
*/
diff --git a/qadevOOo/tests/java/mod/_implreg.uno/package.html b/qadevOOo/tests/java/mod/_implreg.uno/package.html
index fef095833b0e..604a09658c52 100644
--- a/qadevOOo/tests/java/mod/_implreg.uno/package.html
+++ b/qadevOOo/tests/java/mod/_implreg.uno/package.html
@@ -21,6 +21,6 @@
***********************************************************-->
<HTML>
<BODY>
-<P>Containes all test cases for the module 'impreg'.</P>
+<P>Contains all test cases for the module 'impreg'.</P>
</BODY>
</HTML>
diff --git a/qadevOOo/tests/java/mod/_impreg/package.html b/qadevOOo/tests/java/mod/_impreg/package.html
index fef095833b0e..604a09658c52 100644
--- a/qadevOOo/tests/java/mod/_impreg/package.html
+++ b/qadevOOo/tests/java/mod/_impreg/package.html
@@ -21,6 +21,6 @@
***********************************************************-->
<HTML>
<BODY>
-<P>Containes all test cases for the module 'impreg'.</P>
+<P>Contains all test cases for the module 'impreg'.</P>
</BODY>
</HTML>
diff --git a/qadevOOo/tests/java/mod/_insp/package.html b/qadevOOo/tests/java/mod/_insp/package.html
index 4b2321c92caa..7d45d615317c 100644
--- a/qadevOOo/tests/java/mod/_insp/package.html
+++ b/qadevOOo/tests/java/mod/_insp/package.html
@@ -21,6 +21,6 @@
***********************************************************-->
<HTML>
<BODY>
-<P>Containes all test cases for the module 'insp'.</P>
+<P>Contains all test cases for the module 'insp'.</P>
</BODY>
</HTML>
diff --git a/qadevOOo/tests/java/mod/_introspection.uno/package.html b/qadevOOo/tests/java/mod/_introspection.uno/package.html
index 4b2321c92caa..7d45d615317c 100644
--- a/qadevOOo/tests/java/mod/_introspection.uno/package.html
+++ b/qadevOOo/tests/java/mod/_introspection.uno/package.html
@@ -21,6 +21,6 @@
***********************************************************-->
<HTML>
<BODY>
-<P>Containes all test cases for the module 'insp'.</P>
+<P>Contains all test cases for the module 'insp'.</P>
</BODY>
</HTML>
diff --git a/qadevOOo/tests/java/mod/_inv/package.html b/qadevOOo/tests/java/mod/_inv/package.html
index b102d92e1d88..417ca2f827ce 100644
--- a/qadevOOo/tests/java/mod/_inv/package.html
+++ b/qadevOOo/tests/java/mod/_inv/package.html
@@ -21,6 +21,6 @@
***********************************************************-->
<HTML>
<BODY>
-<P>Containes all test cases for the module 'inv'.</P>
+<P>Contains all test cases for the module 'inv'.</P>
</BODY>
</HTML>
diff --git a/qadevOOo/tests/java/mod/_invadp/package.html b/qadevOOo/tests/java/mod/_invadp/package.html
index 91f4c49ad89b..4ea393b1469b 100644
--- a/qadevOOo/tests/java/mod/_invadp/package.html
+++ b/qadevOOo/tests/java/mod/_invadp/package.html
@@ -21,6 +21,6 @@
***********************************************************-->
<HTML>
<BODY>
-<P>Containes all test cases for the module 'invadp'.</P>
+<P>Contains all test cases for the module 'invadp'.</P>
</BODY>
</HTML>
diff --git a/qadevOOo/tests/java/mod/_invocadapt.uno/package.html b/qadevOOo/tests/java/mod/_invocadapt.uno/package.html
index 91f4c49ad89b..4ea393b1469b 100644
--- a/qadevOOo/tests/java/mod/_invocadapt.uno/package.html
+++ b/qadevOOo/tests/java/mod/_invocadapt.uno/package.html
@@ -21,6 +21,6 @@
***********************************************************-->
<HTML>
<BODY>
-<P>Containes all test cases for the module 'invadp'.</P>
+<P>Contains all test cases for the module 'invadp'.</P>
</BODY>
</HTML>
diff --git a/qadevOOo/tests/java/mod/_invocation.uno/package.html b/qadevOOo/tests/java/mod/_invocation.uno/package.html
index b102d92e1d88..417ca2f827ce 100644
--- a/qadevOOo/tests/java/mod/_invocation.uno/package.html
+++ b/qadevOOo/tests/java/mod/_invocation.uno/package.html
@@ -21,6 +21,6 @@
***********************************************************-->
<HTML>
<BODY>
-<P>Containes all test cases for the module 'inv'.</P>
+<P>Contains all test cases for the module 'inv'.</P>
</BODY>
</HTML>
diff --git a/qadevOOo/tests/java/mod/_javavm.uno/package.html b/qadevOOo/tests/java/mod/_javavm.uno/package.html
index a58e59cf2325..a54ca6e098de 100644
--- a/qadevOOo/tests/java/mod/_javavm.uno/package.html
+++ b/qadevOOo/tests/java/mod/_javavm.uno/package.html
@@ -1,6 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<HTML>
<BODY>
-<P>Containes all test cases for the module 'jen'.</P>
+<P>Contains all test cases for the module 'jen'.</P>
</BODY>
</HTML> \ No newline at end of file
diff --git a/qadevOOo/tests/java/mod/_jen/package.html b/qadevOOo/tests/java/mod/_jen/package.html
index 992a260b7cdd..b4d623fba0e3 100644
--- a/qadevOOo/tests/java/mod/_jen/package.html
+++ b/qadevOOo/tests/java/mod/_jen/package.html
@@ -21,6 +21,6 @@
***********************************************************-->
<HTML>
<BODY>
-<P>Containes all test cases for the module 'jen'.</P>
+<P>Contains all test cases for the module 'jen'.</P>
</BODY>
</HTML>
diff --git a/qadevOOo/tests/java/mod/_namingservice/package.html b/qadevOOo/tests/java/mod/_namingservice/package.html
index 2f58200df190..e6cc0a499003 100644
--- a/qadevOOo/tests/java/mod/_namingservice/package.html
+++ b/qadevOOo/tests/java/mod/_namingservice/package.html
@@ -21,6 +21,6 @@
***********************************************************-->
<HTML>
<BODY>
-<P>Containes all test cases for the module 'namingservice'.</P>
+<P>Contains all test cases for the module 'namingservice'.</P>
</BODY>
</HTML>
diff --git a/qadevOOo/tests/java/mod/_nestedreg.uno/NestedRegistry.java b/qadevOOo/tests/java/mod/_nestedreg.uno/NestedRegistry.java
index 5e1bb19ae991..d1dccade551d 100644
--- a/qadevOOo/tests/java/mod/_nestedreg.uno/NestedRegistry.java
+++ b/qadevOOo/tests/java/mod/_nestedreg.uno/NestedRegistry.java
@@ -147,9 +147,9 @@ public class NestedRegistry extends TestCase {
copyFile(source, openF, log) ;
copyFile(source, mergeF, log) ;
} catch (java.io.IOException e) {
- log.println("Exception occured while copying files");
+ log.println("Exception occurred while copying files");
e.printStackTrace(log);
- throw new StatusException("Exception occured while copying files", e);
+ throw new StatusException("Exception occurred while copying files", e);
}
try {
diff --git a/qadevOOo/tests/java/mod/_nestedreg.uno/package.html b/qadevOOo/tests/java/mod/_nestedreg.uno/package.html
index ef4c87d18705..cea3b6fd6ff2 100644
--- a/qadevOOo/tests/java/mod/_nestedreg.uno/package.html
+++ b/qadevOOo/tests/java/mod/_nestedreg.uno/package.html
@@ -21,6 +21,6 @@
***********************************************************-->
<HTML>
<BODY>
-<P>Containes all test cases for the module 'defreg'.</P>
+<P>Contains all test cases for the module 'defreg'.</P>
</BODY>
</HTML>
diff --git a/qadevOOo/tests/java/mod/_proxyfac/package.html b/qadevOOo/tests/java/mod/_proxyfac/package.html
index e9e6fc2fbca5..dc59fa86e347 100644
--- a/qadevOOo/tests/java/mod/_proxyfac/package.html
+++ b/qadevOOo/tests/java/mod/_proxyfac/package.html
@@ -21,6 +21,6 @@
***********************************************************-->
<HTML>
<BODY>
-<P>Containes all test cases for the module 'proxyfac'.</P>
+<P>Contains all test cases for the module 'proxyfac'.</P>
</BODY>
</HTML>
diff --git a/qadevOOo/tests/java/mod/_rdbtdp/package.html b/qadevOOo/tests/java/mod/_rdbtdp/package.html
index 2535ea5c9142..caa31d1f070f 100644
--- a/qadevOOo/tests/java/mod/_rdbtdp/package.html
+++ b/qadevOOo/tests/java/mod/_rdbtdp/package.html
@@ -21,6 +21,6 @@
***********************************************************-->
<HTML>
<BODY>
-<P>Containes all test cases for the module 'rdbtdp'.</P>
+<P>Contains all test cases for the module 'rdbtdp'.</P>
</BODY>
</HTML>
diff --git a/qadevOOo/tests/java/mod/_remotebridge.uno/various.java b/qadevOOo/tests/java/mod/_remotebridge.uno/various.java
index cebe66e3fd6e..271842582c6d 100644
--- a/qadevOOo/tests/java/mod/_remotebridge.uno/various.java
+++ b/qadevOOo/tests/java/mod/_remotebridge.uno/various.java
@@ -121,12 +121,12 @@ public class various extends TestCase {
/**
* Calls <code>accept()</code> method in a separate thread.
- * Then stores exception thrown by call if it occured, or
+ * Then stores exception thrown by call if it occurred, or
* return value.
*/
protected class AcceptorThread extends Thread {
/**
- * If exception occured during method call it is
+ * If exception occurred during method call it is
* stored in this field.
*/
public Exception ex = null ;
diff --git a/qadevOOo/tests/java/mod/_remotebridge/package.html b/qadevOOo/tests/java/mod/_remotebridge/package.html
index 3c7b311da886..9b423b630947 100644
--- a/qadevOOo/tests/java/mod/_remotebridge/package.html
+++ b/qadevOOo/tests/java/mod/_remotebridge/package.html
@@ -21,6 +21,6 @@
***********************************************************-->
<HTML>
<BODY>
-<P>Containes all test cases for the module 'remotebridge'.</P>
+<P>Contains all test cases for the module 'remotebridge'.</P>
</BODY>
</HTML>
diff --git a/qadevOOo/tests/java/mod/_remotebridge/various.java b/qadevOOo/tests/java/mod/_remotebridge/various.java
index a1b34640d640..970518723e94 100644
--- a/qadevOOo/tests/java/mod/_remotebridge/various.java
+++ b/qadevOOo/tests/java/mod/_remotebridge/various.java
@@ -121,12 +121,12 @@ public class various extends TestCase {
/**
* Calls <code>accept()</code> method in a separate thread.
- * Then stores exception thrown by call if it occured, or
+ * Then stores exception thrown by call if it occurred, or
* return value.
*/
protected class AcceptorThread extends Thread {
/**
- * If exception occured during method call it is
+ * If exception occurred during method call it is
* stored in this field.
*/
public Exception ex = null ;
diff --git a/qadevOOo/tests/java/mod/_sc/ScAreaLinkObj.java b/qadevOOo/tests/java/mod/_sc/ScAreaLinkObj.java
index a788b966f968..e54ce36e23de 100644
--- a/qadevOOo/tests/java/mod/_sc/ScAreaLinkObj.java
+++ b/qadevOOo/tests/java/mod/_sc/ScAreaLinkObj.java
@@ -124,19 +124,19 @@ public class ScAreaLinkObj extends TestCase {
oObj = (XInterface) AnyConverter.toObject(
new Type(XInterface.class), links.getByIndex(0)) ;
} catch (com.sun.star.beans.UnknownPropertyException e) {
- log.println ("Exception occured while creating test Object.") ;
+ log.println ("Exception occurred while creating test Object.") ;
e.printStackTrace(log) ;
throw new StatusException("Couldn't create test object", e);
} catch (com.sun.star.lang.WrappedTargetException e) {
- log.println ("Exception occured while creating test Object.") ;
+ log.println ("Exception occurred while creating test Object.") ;
e.printStackTrace(log) ;
throw new StatusException("Couldn't create test object", e);
} catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- log.println ("Exception occured while creating test Object.") ;
+ log.println ("Exception occurred while creating test Object.") ;
e.printStackTrace(log) ;
throw new StatusException("Couldn't create test object", e);
} catch (com.sun.star.lang.IllegalArgumentException e) {
- log.println ("Exception occured while creating test Object.") ;
+ log.println ("Exception occurred while creating test Object.") ;
e.printStackTrace(log) ;
throw new StatusException("Couldn't create test object", e);
}
diff --git a/qadevOOo/tests/java/mod/_sc/ScAreaLinksObj.java b/qadevOOo/tests/java/mod/_sc/ScAreaLinksObj.java
index 898096356626..7356e2d7acdc 100644
--- a/qadevOOo/tests/java/mod/_sc/ScAreaLinksObj.java
+++ b/qadevOOo/tests/java/mod/_sc/ScAreaLinksObj.java
@@ -126,15 +126,15 @@ public class ScAreaLinksObj extends TestCase {
tEnv = new TestEnvironment(oObj);
} catch (com.sun.star.beans.UnknownPropertyException e) {
- log.println ("Exception occured while creating test Object.") ;
+ log.println ("Exception occurred while creating test Object.") ;
e.printStackTrace(log) ;
throw new StatusException("Couldn't create test object", e);
} catch (com.sun.star.lang.WrappedTargetException e) {
- log.println ("Exception occured while creating test Object.") ;
+ log.println ("Exception occurred while creating test Object.") ;
e.printStackTrace(log) ;
throw new StatusException("Couldn't create test object", e);
} catch (com.sun.star.lang.IllegalArgumentException e) {
- log.println ("Exception occured while creating test Object.") ;
+ log.println ("Exception occurred while creating test Object.") ;
e.printStackTrace(log) ;
throw new StatusException("Couldn't create test object", e);
}
diff --git a/qadevOOo/tests/java/mod/_sc/ScAutoFormatFieldObj.java b/qadevOOo/tests/java/mod/_sc/ScAutoFormatFieldObj.java
index 5f23dff13cf9..5a46fd0f43fb 100644
--- a/qadevOOo/tests/java/mod/_sc/ScAutoFormatFieldObj.java
+++ b/qadevOOo/tests/java/mod/_sc/ScAutoFormatFieldObj.java
@@ -89,7 +89,7 @@ public class ScAutoFormatFieldObj extends TestCase {
new Type(XInterface.class),formatIndex.getByIndex(0));
} catch (com.sun.star.uno.Exception e) {
- log.println ("Exception occured while creating test Object.") ;
+ log.println ("Exception occurred while creating test Object.") ;
e.printStackTrace(log) ;
}
diff --git a/qadevOOo/tests/java/mod/_sc/ScAutoFormatsObj.java b/qadevOOo/tests/java/mod/_sc/ScAutoFormatsObj.java
index 29e7bb40cd41..a168968d908c 100644
--- a/qadevOOo/tests/java/mod/_sc/ScAutoFormatsObj.java
+++ b/qadevOOo/tests/java/mod/_sc/ScAutoFormatsObj.java
@@ -144,7 +144,7 @@ public class ScAutoFormatsObj extends TestCase{
return tEnv;
} catch (com.sun.star.uno.Exception e) {
- log.println ("Exception occured while creating test Object.");
+ log.println ("Exception occurred while creating test Object.");
e.printStackTrace(log);
throw new StatusException("Couldn't create test object", e);
}
diff --git a/qadevOOo/tests/java/mod/_sc/ScCellCursorObj.java b/qadevOOo/tests/java/mod/_sc/ScCellCursorObj.java
index a85c26ac960b..ae85eb03a9cc 100644
--- a/qadevOOo/tests/java/mod/_sc/ScCellCursorObj.java
+++ b/qadevOOo/tests/java/mod/_sc/ScCellCursorObj.java
@@ -182,19 +182,19 @@ public class ScCellCursorObj extends TestCase {
oSheet.getCellByPosition(3, 2).setFormula("xTextDoc");
oSheet.getCellByPosition(3, 3).setFormula("xTextDoc");
} catch (com.sun.star.lang.WrappedTargetException e) {
- log.println("Exception occured while creating test object:");
+ log.println("Exception occurred while creating test object:");
e.printStackTrace(log);
throw new StatusException("Couldn't create test object", e);
} catch (com.sun.star.container.NoSuchElementException e) {
- log.println("Exception occured while creating test object:");
+ log.println("Exception occurred while creating test object:");
e.printStackTrace(log);
throw new StatusException("Couldn't create test object", e);
} catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- log.println("Exception occured while creating test object:");
+ log.println("Exception occurred while creating test object:");
e.printStackTrace(log);
throw new StatusException("Couldn't create test object", e);
} catch (com.sun.star.lang.IllegalArgumentException e) {
- log.println("Exception occured while creating test object:");
+ log.println("Exception occurred while creating test object:");
e.printStackTrace(log);
throw new StatusException("Couldn't create test object", e);
}
diff --git a/qadevOOo/tests/java/mod/_sc/ScCellFieldObj.java b/qadevOOo/tests/java/mod/_sc/ScCellFieldObj.java
index 22ba8c375ecb..c3917a2a3c86 100644
--- a/qadevOOo/tests/java/mod/_sc/ScCellFieldObj.java
+++ b/qadevOOo/tests/java/mod/_sc/ScCellFieldObj.java
@@ -160,19 +160,19 @@ public class ScCellFieldObj extends TestCase {
oCell = oSheet.getCellByPosition(1,4);
oText = (XText)UnoRuntime.queryInterface(XText.class, oCell);
} catch (com.sun.star.lang.WrappedTargetException e) {
- log.println("Exception occured while creating test Object.");
+ log.println("Exception occurred while creating test Object.");
e.printStackTrace(log);
throw new StatusException("Couldn't create test object", e);
} catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- log.println("Exception occured while creating test Object.");
+ log.println("Exception occurred while creating test Object.");
e.printStackTrace(log);
throw new StatusException("Couldn't create test object", e);
} catch (com.sun.star.lang.IllegalArgumentException e) {
- log.println("Exception occured while creating test Object.");
+ log.println("Exception occurred while creating test Object.");
e.printStackTrace(log);
throw new StatusException("Couldn't create test object", e);
} catch (com.sun.star.uno.Exception e) {
- log.println("Exception occured while creating test Object.");
+ log.println("Exception occurred while creating test Object.");
e.printStackTrace(log);
throw new StatusException("Couldn't create test object", e);
}
diff --git a/qadevOOo/tests/java/mod/_sc/ScCellFieldsObj.java b/qadevOOo/tests/java/mod/_sc/ScCellFieldsObj.java
index a90a8373c566..80183dcae454 100644
--- a/qadevOOo/tests/java/mod/_sc/ScCellFieldsObj.java
+++ b/qadevOOo/tests/java/mod/_sc/ScCellFieldsObj.java
@@ -137,19 +137,19 @@ public class ScCellFieldsObj extends TestCase {
oObj = xTextFieldsSupp.getTextFields();
} catch (com.sun.star.lang.WrappedTargetException e) {
- log.println("Exception occured while creating test Object.");
+ log.println("Exception occurred while creating test Object.");
e.printStackTrace(log);
throw new StatusException("Couldn't create test object", e);
} catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- log.println("Exception occured while creating test Object.");
+ log.println("Exception occurred while creating test Object.");
e.printStackTrace(log);
throw new StatusException("Couldn't create test object", e);
} catch (com.sun.star.lang.IllegalArgumentException e) {
- log.println("Exception occured while creating test Object.");
+ log.println("Exception occurred while creating test Object.");
e.printStackTrace(log);
throw new StatusException("Couldn't create test object", e);
} catch (com.sun.star.uno.Exception e) {
- log.println("Exception occured while creating test Object.");
+ log.println("Exception occurred while creating test Object.");
e.printStackTrace(log);
throw new StatusException("Couldn't create test object", e);
}
diff --git a/qadevOOo/tests/java/mod/_sc/ScCellsEnumeration.java b/qadevOOo/tests/java/mod/_sc/ScCellsEnumeration.java
index 2420a3f3b574..0e27e23b815c 100644
--- a/qadevOOo/tests/java/mod/_sc/ScCellsEnumeration.java
+++ b/qadevOOo/tests/java/mod/_sc/ScCellsEnumeration.java
@@ -137,15 +137,15 @@ public class ScCellsEnumeration extends TestCase {
cellArr[1] = oCell_2;
cellArr[2] = oCell_3;
} catch(com.sun.star.lang.WrappedTargetException e) {
- log.println ("Exception occured while creating test Object.");
+ log.println ("Exception occurred while creating test Object.");
e.printStackTrace(log);
throw new StatusException("Couldn't create test object", e);
} catch(com.sun.star.lang.IndexOutOfBoundsException e) {
- log.println ("Exception occured while creating test Object.");
+ log.println ("Exception occurred while creating test Object.");
e.printStackTrace(log);
throw new StatusException("Couldn't create test object", e);
} catch(com.sun.star.lang.IllegalArgumentException e) {
- log.println ("Exception occured while creating test Object.");
+ log.println ("Exception occurred while creating test Object.");
e.printStackTrace(log);
throw new StatusException("Couldn't create test object", e);
}
diff --git a/qadevOOo/tests/java/mod/_sc/ScCellsObj.java b/qadevOOo/tests/java/mod/_sc/ScCellsObj.java
index a1afd6aa61c2..d99a060e4ecc 100644
--- a/qadevOOo/tests/java/mod/_sc/ScCellsObj.java
+++ b/qadevOOo/tests/java/mod/_sc/ScCellsObj.java
@@ -134,15 +134,15 @@ public class ScCellsObj extends TestCase {
cellArr[2] = oCell_2;
cellArr[1] = oCell_3;
} catch(com.sun.star.lang.WrappedTargetException e) {
- log.println ("Exception occured while creating test Object.");
+ log.println ("Exception occurred while creating test Object.");
e.printStackTrace(log);
throw new StatusException("Couldn't create test object", e);
} catch(com.sun.star.lang.IndexOutOfBoundsException e) {
- log.println ("Exception occured while creating test Object.");
+ log.println ("Exception occurred while creating test Object.");
e.printStackTrace(log);
throw new StatusException("Couldn't create test object", e);
} catch(com.sun.star.lang.IllegalArgumentException e) {
- log.println ("Exception occured while creating test Object.");
+ log.println ("Exception occurred while creating test Object.");
e.printStackTrace(log);
throw new StatusException("Couldn't create test object", e);
}
diff --git a/qadevOOo/tests/java/mod/_sc/ScDrawPageObj.java b/qadevOOo/tests/java/mod/_sc/ScDrawPageObj.java
index 45a46d4c81b5..231386b68dab 100644
--- a/qadevOOo/tests/java/mod/_sc/ScDrawPageObj.java
+++ b/qadevOOo/tests/java/mod/_sc/ScDrawPageObj.java
@@ -128,15 +128,15 @@ public class ScDrawPageObj extends TestCase {
} catch (com.sun.star.lang.WrappedTargetException e) {
log.println("Couldn't create insance");
e.printStackTrace(log);
- throw new StatusException("Can't create enviroment", e) ;
+ throw new StatusException("Can't create environment", e) ;
} catch (com.sun.star.lang.IndexOutOfBoundsException e) {
log.println("Couldn't create insance");
e.printStackTrace(log);
- throw new StatusException("Can't create enviroment", e) ;
+ throw new StatusException("Can't create environment", e) ;
} catch (com.sun.star.lang.IllegalArgumentException e) {
log.println("Couldn't create insance");
e.printStackTrace(log);
- throw new StatusException("Can't create enviroment", e) ;
+ throw new StatusException("Can't create environment", e) ;
}
// create test environment here
diff --git a/qadevOOo/tests/java/mod/_sc/ScIndexEnumeration_CellAreaLinksEnumeration.java b/qadevOOo/tests/java/mod/_sc/ScIndexEnumeration_CellAreaLinksEnumeration.java
index 0a54557fb361..6db7ce0a90b1 100644
--- a/qadevOOo/tests/java/mod/_sc/ScIndexEnumeration_CellAreaLinksEnumeration.java
+++ b/qadevOOo/tests/java/mod/_sc/ScIndexEnumeration_CellAreaLinksEnumeration.java
@@ -107,15 +107,15 @@ public class ScIndexEnumeration_CellAreaLinksEnumeration extends TestCase {
tEnv.addObjRelation("ENUM",ea);
} catch (com.sun.star.beans.UnknownPropertyException e) {
- log.println ("Exception occured while creating test Object.") ;
+ log.println ("Exception occurred while creating test Object.") ;
e.printStackTrace(log) ;
throw new StatusException("Couldn't create test object", e);
} catch (com.sun.star.lang.WrappedTargetException e) {
- log.println ("Exception occured while creating test Object.") ;
+ log.println ("Exception occurred while creating test Object.") ;
e.printStackTrace(log) ;
throw new StatusException("Couldn't create test object", e);
} catch (com.sun.star.lang.IllegalArgumentException e) {
- log.println ("Exception occured while creating test Object.") ;
+ log.println ("Exception occurred while creating test Object.") ;
e.printStackTrace(log) ;
throw new StatusException("Couldn't create test object", e);
}
diff --git a/qadevOOo/tests/java/mod/_sc/ScIndexEnumeration_TableAutoFormatEnumeration.java b/qadevOOo/tests/java/mod/_sc/ScIndexEnumeration_TableAutoFormatEnumeration.java
index a30efb50fc67..3a2bb76a02f8 100644
--- a/qadevOOo/tests/java/mod/_sc/ScIndexEnumeration_TableAutoFormatEnumeration.java
+++ b/qadevOOo/tests/java/mod/_sc/ScIndexEnumeration_TableAutoFormatEnumeration.java
@@ -91,7 +91,7 @@ public class ScIndexEnumeration_TableAutoFormatEnumeration extends TestCase{
return tEnv;
} catch (com.sun.star.uno.Exception e) {
- log.println ("Exception occured while creating test Object.");
+ log.println ("Exception occurred while creating test Object.");
e.printStackTrace(log);
throw new StatusException("Couldn't create test object", e);
}
diff --git a/qadevOOo/tests/java/mod/_sc/ScIndexEnumeration_TextFieldEnumeration.java b/qadevOOo/tests/java/mod/_sc/ScIndexEnumeration_TextFieldEnumeration.java
index ad92b6a905a8..8d2a84cbe589 100644
--- a/qadevOOo/tests/java/mod/_sc/ScIndexEnumeration_TextFieldEnumeration.java
+++ b/qadevOOo/tests/java/mod/_sc/ScIndexEnumeration_TextFieldEnumeration.java
@@ -134,19 +134,19 @@ public class ScIndexEnumeration_TextFieldEnumeration extends TestCase {
oObj = xTextFieldsSupp.getTextFields().createEnumeration();
} catch (com.sun.star.lang.WrappedTargetException e) {
- log.println("Exception occured while creating test Object.");
+ log.println("Exception occurred while creating test Object.");
e.printStackTrace(log);
throw new StatusException("Couldn't create test object", e);
} catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- log.println("Exception occured while creating test Object.");
+ log.println("Exception occurred while creating test Object.");
e.printStackTrace(log);
throw new StatusException("Couldn't create test object", e);
} catch (com.sun.star.lang.IllegalArgumentException e) {
- log.println("Exception occured while creating test Object.");
+ log.println("Exception occurred while creating test Object.");
e.printStackTrace(log);
throw new StatusException("Couldn't create test object", e);
} catch (com.sun.star.uno.Exception e) {
- log.println("Exception occured while creating test Object.");
+ log.println("Exception occurred while creating test Object.");
e.printStackTrace(log);
throw new StatusException("Couldn't create test object", e);
}
diff --git a/qadevOOo/tests/java/mod/_sc/ScStyleFamilyObj.java b/qadevOOo/tests/java/mod/_sc/ScStyleFamilyObj.java
index 64c6d7608db1..fcd7567b1582 100644
--- a/qadevOOo/tests/java/mod/_sc/ScStyleFamilyObj.java
+++ b/qadevOOo/tests/java/mod/_sc/ScStyleFamilyObj.java
@@ -141,15 +141,15 @@ public class ScStyleFamilyObj extends TestCase {
} catch (com.sun.star.lang.WrappedTargetException e) {
e.printStackTrace(log);
throw new StatusException(
- "Exception occured while getting StyleFamily", e);
+ "Exception occurred while getting StyleFamily", e);
} catch (com.sun.star.lang.IndexOutOfBoundsException e) {
e.printStackTrace(log);
throw new StatusException(
- "Exception occured while getting StyleFamily", e);
+ "Exception occurred while getting StyleFamily", e);
} catch (com.sun.star.lang.IllegalArgumentException e) {
e.printStackTrace(log);
throw new StatusException(
- "Exception occured while getting StyleFamily", e);
+ "Exception occurred while getting StyleFamily", e);
}
SOfficeFactory SOF = SOfficeFactory.getFactory( (XMultiServiceFactory)tParam.getMSF());
diff --git a/qadevOOo/tests/java/mod/_sc/ScTableSheetObj.java b/qadevOOo/tests/java/mod/_sc/ScTableSheetObj.java
index a5c59b9414e0..604021474c82 100644
--- a/qadevOOo/tests/java/mod/_sc/ScTableSheetObj.java
+++ b/qadevOOo/tests/java/mod/_sc/ScTableSheetObj.java
@@ -241,7 +241,7 @@ public class ScTableSheetObj extends TestCase {
// do not execute com::sun::star::sheets::XCellSeries::fillAuto()
tEnv.addObjRelation("XCELLSERIES_FILLAUTO", new Boolean(false));
- // set the adress ranges of the cells (see values set above): for e.g. XSheetOutline test
+ // set the address ranges of the cells (see values set above): for e.g. XSheetOutline test
tEnv.addObjRelation("CellRangeAddress",
new CellRangeAddress((short)0, 6, 6, 8, 8));
tEnv.addObjRelation("CellRangeSubAddress",
diff --git a/qadevOOo/tests/java/mod/_sc/XMLContentExporter.java b/qadevOOo/tests/java/mod/_sc/XMLContentExporter.java
index 04d8d4af884e..27a35df9dab7 100644
--- a/qadevOOo/tests/java/mod/_sc/XMLContentExporter.java
+++ b/qadevOOo/tests/java/mod/_sc/XMLContentExporter.java
@@ -182,7 +182,7 @@ public class XMLContentExporter extends TestCase {
/**
* This class checks the XML for tags and data required and returns
* checking result to <code>XFilter</code> interface test. All
- * the information about errors occured in XML data is written
+ * the information about errors occurred in XML data is written
* to log specified.
* @see ifc.document._XFilter
*/
@@ -202,7 +202,7 @@ public class XMLContentExporter extends TestCase {
* which returns the result of XML checking.
* @return <code>true</code> if the XML data exported was
* valid (i.e. all necessary tags and character data exists),
- * <code>false</code> if some errors occured.
+ * <code>false</code> if some errors occurred.
*/
public boolean checkFilter() {
return checkTags();
diff --git a/qadevOOo/tests/java/mod/_sc/XMLExporter.java b/qadevOOo/tests/java/mod/_sc/XMLExporter.java
index fbd89388abad..6437b3482aa1 100644
--- a/qadevOOo/tests/java/mod/_sc/XMLExporter.java
+++ b/qadevOOo/tests/java/mod/_sc/XMLExporter.java
@@ -191,7 +191,7 @@ public class XMLExporter extends TestCase {
/**
* This class checks the XML for tags and data required and returns
* checking result to <code>XFilter</code> interface test. All
- * the information about errors occured in XML data is written
+ * the information about errors occurred in XML data is written
* to log specified.
* @see ifc.document._XFilter
*/
@@ -210,7 +210,7 @@ public class XMLExporter extends TestCase {
* which returns the result of XML checking.
* @return <code>true</code> if the XML data exported was
* valid (i.e. all necessary tags and character data exists),
- * <code>false</code> if some errors occured.
+ * <code>false</code> if some errors occurred.
*/
public boolean checkFilter() {
return check();
diff --git a/qadevOOo/tests/java/mod/_sc/XMLMetaExporter.java b/qadevOOo/tests/java/mod/_sc/XMLMetaExporter.java
index 22fba23885a0..98eb8c365cd9 100644
--- a/qadevOOo/tests/java/mod/_sc/XMLMetaExporter.java
+++ b/qadevOOo/tests/java/mod/_sc/XMLMetaExporter.java
@@ -124,7 +124,7 @@ public class XMLMetaExporter extends TestCase {
FilterChecker filter = new FilterChecker(log);
Any arg = new Any(new Type(XDocumentHandler.class),filter);
- // Checking tags existance and changed property value
+ // Checking tags existence and changed property value
filter.addTag(new XMLTools.Tag ("office:document-meta"));
filter.addTag(new XMLTools.Tag ("office:meta"));
filter.addCharactersEnclosed("TestDocument",
@@ -172,7 +172,7 @@ public class XMLMetaExporter extends TestCase {
/**
* This class checks the XML for tags and data required and returns
* checking result to <code>XFilter</code> interface test. All
- * the information about errors occured in XML data is written
+ * the information about errors occurred in XML data is written
* to log specified.
* @see ifc.document._XFilter
*/
@@ -191,7 +191,7 @@ public class XMLMetaExporter extends TestCase {
* which returns the result of XML checking.
* @return <code>true</code> if the XML data exported was
* valid (i.e. all necessary tags and character data exists),
- * <code>false</code> if some errors occured.
+ * <code>false</code> if some errors occurred.
*/
public boolean checkFilter() {
return check();
diff --git a/qadevOOo/tests/java/mod/_sc/XMLMetaImporter.java b/qadevOOo/tests/java/mod/_sc/XMLMetaImporter.java
index 4d13c17c3565..6569dc4e9f9d 100644
--- a/qadevOOo/tests/java/mod/_sc/XMLMetaImporter.java
+++ b/qadevOOo/tests/java/mod/_sc/XMLMetaImporter.java
@@ -180,7 +180,7 @@ public class XMLMetaImporter extends TestCase {
logF.println("Title returned = '" + title + "'") ;
return impTitle.equals(title) ;
} catch (com.sun.star.uno.Exception e) {
- logF.println("Exception occured while checking filter :") ;
+ logF.println("Exception occurred while checking filter :") ;
e.printStackTrace(logF) ;
return false ;
}
diff --git a/qadevOOo/tests/java/mod/_sc/XMLSettingsExporter.java b/qadevOOo/tests/java/mod/_sc/XMLSettingsExporter.java
index d0166b98efb0..6a9f8a5daecc 100644
--- a/qadevOOo/tests/java/mod/_sc/XMLSettingsExporter.java
+++ b/qadevOOo/tests/java/mod/_sc/XMLSettingsExporter.java
@@ -173,7 +173,7 @@ public class XMLSettingsExporter extends TestCase {
/**
* This class checks the XML for tags and data required and returns
* checking result to <code>XFilter</code> interface test. All
- * the information about errors occured in XML data is written
+ * the information about errors occurred in XML data is written
* to log specified.
* @see ifc.document._XFilter
*/
@@ -192,7 +192,7 @@ public class XMLSettingsExporter extends TestCase {
* which returns the result of XML checking.
* @return <code>true</code> if the XML data exported was
* valid (i.e. all necessary tags and character data exists),
- * <code>false</code> if some errors occured.
+ * <code>false</code> if some errors occurred.
*/
public boolean checkFilter() {
return check();
diff --git a/qadevOOo/tests/java/mod/_sc/XMLSettingsImporter.java b/qadevOOo/tests/java/mod/_sc/XMLSettingsImporter.java
index ea5b68a2fbe8..36094da42c08 100644
--- a/qadevOOo/tests/java/mod/_sc/XMLSettingsImporter.java
+++ b/qadevOOo/tests/java/mod/_sc/XMLSettingsImporter.java
@@ -202,7 +202,7 @@ public class XMLSettingsImporter extends TestCase {
logF.println("ShowGrid = " + gVal ) ;
return "false".equals(gVal) ;
} catch (com.sun.star.uno.Exception e) {
- logF.println("Exception occured while checking filter :") ;
+ logF.println("Exception occurred while checking filter :") ;
e.printStackTrace(logF) ;
return false ;
}
diff --git a/qadevOOo/tests/java/mod/_sc/XMLStylesExporter.java b/qadevOOo/tests/java/mod/_sc/XMLStylesExporter.java
index 65becab96369..de006024da62 100644
--- a/qadevOOo/tests/java/mod/_sc/XMLStylesExporter.java
+++ b/qadevOOo/tests/java/mod/_sc/XMLStylesExporter.java
@@ -126,7 +126,7 @@ public class XMLStylesExporter extends TestCase {
Any arg = new Any(new Type(XDocumentHandler.class),filter);
String newName = "NewStyle" + counter++;
- // Adding tags for checking existance of head tag and property value
+ // Adding tags for checking existence of head tag and property value
filter.addTag(new XMLTools.Tag("office:document-styles"));
filter.addTag(new XMLTools.Tag("style:style","style:name", newName));
@@ -178,7 +178,7 @@ public class XMLStylesExporter extends TestCase {
/**
* This class checks the XML for tags and data required and returns
* checking result to <code>XFilter</code> interface test. All
- * the information about errors occured in XML data is written
+ * the information about errors occurred in XML data is written
* to log specified.
* @see ifc.document._XFilter
*/
@@ -197,7 +197,7 @@ public class XMLStylesExporter extends TestCase {
* which returns the result of XML checking.
* @return <code>true</code> if the XML data exported was
* valid (i.e. all necessary tags and character data exists),
- * <code>false</code> if some errors occured.
+ * <code>false</code> if some errors occurred.
*/
public boolean checkFilter() {
return check();
diff --git a/qadevOOo/tests/java/mod/_sc/package.html b/qadevOOo/tests/java/mod/_sc/package.html
index 616bcbeb82f5..3a30de1fe462 100644
--- a/qadevOOo/tests/java/mod/_sc/package.html
+++ b/qadevOOo/tests/java/mod/_sc/package.html
@@ -21,6 +21,6 @@
***********************************************************-->
<HTML>
<BODY>
-<P>Containes all test cases for the module 'sc'.</P>
+<P>Contains all test cases for the module 'sc'.</P>
</BODY>
</HTML>
diff --git a/qadevOOo/tests/java/mod/_sd/package.html b/qadevOOo/tests/java/mod/_sd/package.html
index ba58de23d4f9..dfa3421a331e 100644
--- a/qadevOOo/tests/java/mod/_sd/package.html
+++ b/qadevOOo/tests/java/mod/_sd/package.html
@@ -21,6 +21,6 @@
***********************************************************-->
<HTML>
<BODY>
-<P>Containes all test cases for the module 'sd'.</P>
+<P>Contains all test cases for the module 'sd'.</P>
</BODY>
</HTML>
diff --git a/qadevOOo/tests/java/mod/_servicemgr.uno/package.html b/qadevOOo/tests/java/mod/_servicemgr.uno/package.html
index a29dbb576333..c0c68d490c1e 100644
--- a/qadevOOo/tests/java/mod/_servicemgr.uno/package.html
+++ b/qadevOOo/tests/java/mod/_servicemgr.uno/package.html
@@ -21,6 +21,6 @@
***********************************************************-->
<HTML>
<BODY>
-<P>Containes all test cases for the module 'smgr'.</P>
+<P>Contains all test cases for the module 'smgr'.</P>
</BODY>
</HTML>
diff --git a/qadevOOo/tests/java/mod/_shlibloader.uno/package.html b/qadevOOo/tests/java/mod/_shlibloader.uno/package.html
index b5baf3279454..9fb18fcca8f6 100644
--- a/qadevOOo/tests/java/mod/_shlibloader.uno/package.html
+++ b/qadevOOo/tests/java/mod/_shlibloader.uno/package.html
@@ -21,6 +21,6 @@
***********************************************************-->
<HTML>
<BODY>
-<P>Containes all test cases for the module 'cpld'.</P>
+<P>Contains all test cases for the module 'cpld'.</P>
</BODY>
</HTML>
diff --git a/qadevOOo/tests/java/mod/_simplereg.uno/SimpleRegistry.java b/qadevOOo/tests/java/mod/_simplereg.uno/SimpleRegistry.java
index e126c63cb4a2..9a67691ee106 100644
--- a/qadevOOo/tests/java/mod/_simplereg.uno/SimpleRegistry.java
+++ b/qadevOOo/tests/java/mod/_simplereg.uno/SimpleRegistry.java
@@ -141,7 +141,7 @@ public class SimpleRegistry extends TestCase {
copyFile(source, tmpDir + destroyF, log);
copyFile(source, tmpDir + mergeF, log);
} catch (java.io.IOException e) {
- log.println("Exception occured while copying files");
+ log.println("Exception occurred while copying files");
e.printStackTrace(log);
}
diff --git a/qadevOOo/tests/java/mod/_simplereg.uno/package.html b/qadevOOo/tests/java/mod/_simplereg.uno/package.html
index 82cb03427538..4c8f505a25e5 100644
--- a/qadevOOo/tests/java/mod/_simplereg.uno/package.html
+++ b/qadevOOo/tests/java/mod/_simplereg.uno/package.html
@@ -21,6 +21,6 @@
***********************************************************-->
<HTML>
<BODY>
-<P>Containes all test cases for the module 'simreg'.</P>
+<P>Contains all test cases for the module 'simreg'.</P>
</BODY>
</HTML>
diff --git a/qadevOOo/tests/java/mod/_simreg/SimpleRegistry.java b/qadevOOo/tests/java/mod/_simreg/SimpleRegistry.java
index a458f134aadf..004654e83d31 100644
--- a/qadevOOo/tests/java/mod/_simreg/SimpleRegistry.java
+++ b/qadevOOo/tests/java/mod/_simreg/SimpleRegistry.java
@@ -145,7 +145,7 @@ public class SimpleRegistry extends TestCase {
copyFile(source, tmpDir + destroyF, log);
copyFile(source, tmpDir + mergeF, log);
} catch (java.io.IOException e) {
- log.println("Exception occured while copying files");
+ log.println("Exception occurred while copying files");
e.printStackTrace(log);
}
diff --git a/qadevOOo/tests/java/mod/_simreg/package.html b/qadevOOo/tests/java/mod/_simreg/package.html
index 82cb03427538..4c8f505a25e5 100644
--- a/qadevOOo/tests/java/mod/_simreg/package.html
+++ b/qadevOOo/tests/java/mod/_simreg/package.html
@@ -21,6 +21,6 @@
***********************************************************-->
<HTML>
<BODY>
-<P>Containes all test cases for the module 'simreg'.</P>
+<P>Contains all test cases for the module 'simreg'.</P>
</BODY>
</HTML>
diff --git a/qadevOOo/tests/java/mod/_sm/XMLExporter.java b/qadevOOo/tests/java/mod/_sm/XMLExporter.java
index 0bdd2f6b6614..5111a578b1cf 100644
--- a/qadevOOo/tests/java/mod/_sm/XMLExporter.java
+++ b/qadevOOo/tests/java/mod/_sm/XMLExporter.java
@@ -163,7 +163,7 @@ public class XMLExporter extends TestCase {
/**
* This class checks the XML for tags and data required and returns
* checking result to <code>XFilter</code> interface test. All
- * the information about errors occured in XML data is written
+ * the information about errors occurred in XML data is written
* to log specified.
* @see ifc.document._XFilter
*/
@@ -182,7 +182,7 @@ public class XMLExporter extends TestCase {
* which returns the result of XML checking.
* @return <code>true</code> if the XML data exported was
* valid (i.e. all necessary tags and character data exists),
- * <code>false</code> if some errors occured.
+ * <code>false</code> if some errors occurred.
*/
public boolean checkFilter() {
return check();
diff --git a/qadevOOo/tests/java/mod/_sm/XMLImporter.java b/qadevOOo/tests/java/mod/_sm/XMLImporter.java
index 459d8be77afc..1fa7c686abf2 100644
--- a/qadevOOo/tests/java/mod/_sm/XMLImporter.java
+++ b/qadevOOo/tests/java/mod/_sm/XMLImporter.java
@@ -153,7 +153,7 @@ public class XMLImporter extends TestCase {
logF.println("Formula returned = '" + gFormula + "'") ;
return impFormula.equals(gFormula) ;
} catch (com.sun.star.uno.Exception e) {
- logF.println("Exception occured while checking filter :") ;
+ logF.println("Exception occurred while checking filter :") ;
e.printStackTrace(logF) ;
return false ;
}
diff --git a/qadevOOo/tests/java/mod/_sm/XMLMetaExporter.java b/qadevOOo/tests/java/mod/_sm/XMLMetaExporter.java
index 4ccb4f194dbd..ac0819fda7b9 100644
--- a/qadevOOo/tests/java/mod/_sm/XMLMetaExporter.java
+++ b/qadevOOo/tests/java/mod/_sm/XMLMetaExporter.java
@@ -165,7 +165,7 @@ public class XMLMetaExporter extends TestCase {
/**
* This class checks the XML for tags and data required and returns
* checking result to <code>XFilter</code> interface test. All
- * the information about errors occured in XML data is written
+ * the information about errors occurred in XML data is written
* to log specified.
* @see ifc.document._XFilter
*/
@@ -184,7 +184,7 @@ public class XMLMetaExporter extends TestCase {
* which returns the result of XML checking.
* @return <code>true</code> if the XML data exported was
* valid (i.e. all necessary tags and character data exists),
- * <code>false</code> if some errors occured.
+ * <code>false</code> if some errors occurred.
*/
public boolean checkFilter() {
return check();
diff --git a/qadevOOo/tests/java/mod/_sm/XMLMetaImporter.java b/qadevOOo/tests/java/mod/_sm/XMLMetaImporter.java
index b45fff310072..6727f4a3f7e7 100644
--- a/qadevOOo/tests/java/mod/_sm/XMLMetaImporter.java
+++ b/qadevOOo/tests/java/mod/_sm/XMLMetaImporter.java
@@ -181,7 +181,7 @@ public class XMLMetaImporter extends TestCase {
return result ;
} catch (com.sun.star.uno.Exception e) {
- logF.println("Exception occured while checking filter :") ;
+ logF.println("Exception occurred while checking filter :") ;
e.printStackTrace(logF) ;
return false ;
}
diff --git a/qadevOOo/tests/java/mod/_sm/XMLSettingsExporter.java b/qadevOOo/tests/java/mod/_sm/XMLSettingsExporter.java
index 534547a133e4..baab3a5a80c8 100644
--- a/qadevOOo/tests/java/mod/_sm/XMLSettingsExporter.java
+++ b/qadevOOo/tests/java/mod/_sm/XMLSettingsExporter.java
@@ -164,7 +164,7 @@ public class XMLSettingsExporter extends TestCase {
/**
* This class checks the XML for tags and data required and returns
* checking result to <code>XFilter</code> interface test. All
- * the information about errors occured in XML data is written
+ * the information about errors occurred in XML data is written
* to log specified.
* @see ifc.document._XFilter
*/
@@ -183,7 +183,7 @@ public class XMLSettingsExporter extends TestCase {
* which returns the result of XML checking.
* @return <code>true</code> if the XML data exported was
* valid (i.e. all necessary tags and character data exists),
- * <code>false</code> if some errors occured.
+ * <code>false</code> if some errors occurred.
*/
public boolean checkFilter() {
return check();
diff --git a/qadevOOo/tests/java/mod/_sm/XMLSettingsImporter.java b/qadevOOo/tests/java/mod/_sm/XMLSettingsImporter.java
index c1b2c080ab34..e9c0c1ff2ad5 100644
--- a/qadevOOo/tests/java/mod/_sm/XMLSettingsImporter.java
+++ b/qadevOOo/tests/java/mod/_sm/XMLSettingsImporter.java
@@ -163,7 +163,7 @@ public class XMLSettingsImporter extends TestCase {
logF.println("Margin returned: " + gMargin);
return impMargin == gMargin.shortValue() ;
} catch (com.sun.star.uno.Exception e) {
- logF.println("Exception occured while checking filter :") ;
+ logF.println("Exception occurred while checking filter :") ;
e.printStackTrace(logF) ;
return false ;
}
diff --git a/qadevOOo/tests/java/mod/_smgr/package.html b/qadevOOo/tests/java/mod/_smgr/package.html
index a29dbb576333..c0c68d490c1e 100644
--- a/qadevOOo/tests/java/mod/_smgr/package.html
+++ b/qadevOOo/tests/java/mod/_smgr/package.html
@@ -21,6 +21,6 @@
***********************************************************-->
<HTML>
<BODY>
-<P>Containes all test cases for the module 'smgr'.</P>
+<P>Contains all test cases for the module 'smgr'.</P>
</BODY>
</HTML>
diff --git a/qadevOOo/tests/java/mod/_stm/package.html b/qadevOOo/tests/java/mod/_stm/package.html
index 0b99f8a0e5c3..566870b3ef0b 100644
--- a/qadevOOo/tests/java/mod/_stm/package.html
+++ b/qadevOOo/tests/java/mod/_stm/package.html
@@ -21,6 +21,6 @@
***********************************************************-->
<HTML>
<BODY>
-<P>Containes all test cases for the module 'stm'.</P>
+<P>Contains all test cases for the module 'stm'.</P>
</BODY>
</HTML>
diff --git a/qadevOOo/tests/java/mod/_streams.uno/package.html b/qadevOOo/tests/java/mod/_streams.uno/package.html
index 0b99f8a0e5c3..566870b3ef0b 100644
--- a/qadevOOo/tests/java/mod/_streams.uno/package.html
+++ b/qadevOOo/tests/java/mod/_streams.uno/package.html
@@ -21,6 +21,6 @@
***********************************************************-->
<HTML>
<BODY>
-<P>Containes all test cases for the module 'stm'.</P>
+<P>Contains all test cases for the module 'stm'.</P>
</BODY>
</HTML>
diff --git a/qadevOOo/tests/java/mod/_svx/SvxDrawPage.java b/qadevOOo/tests/java/mod/_svx/SvxDrawPage.java
index 6218bed35783..afd23f072349 100644
--- a/qadevOOo/tests/java/mod/_svx/SvxDrawPage.java
+++ b/qadevOOo/tests/java/mod/_svx/SvxDrawPage.java
@@ -178,15 +178,15 @@ public class SvxDrawPage extends TestCase {
} catch (com.sun.star.lang.WrappedTargetException e) {
log.println("Couldn't create insance");
e.printStackTrace(log);
- throw new StatusException("Can't create enviroment", e);
+ throw new StatusException("Can't create environment", e);
} catch (com.sun.star.lang.IndexOutOfBoundsException e) {
log.println("Couldn't create insance");
e.printStackTrace(log);
- throw new StatusException("Can't create enviroment", e);
+ throw new StatusException("Can't create environment", e);
} catch (com.sun.star.lang.IllegalArgumentException e) {
log.println("Couldn't create insance");
e.printStackTrace(log);
- throw new StatusException("Can't create enviroment", e);
+ throw new StatusException("Can't create environment", e);
}
// create test environment here
diff --git a/qadevOOo/tests/java/mod/_svx/package.html b/qadevOOo/tests/java/mod/_svx/package.html
index ecc89639ab49..bffda1450ad9 100644
--- a/qadevOOo/tests/java/mod/_svx/package.html
+++ b/qadevOOo/tests/java/mod/_svx/package.html
@@ -21,6 +21,6 @@
***********************************************************-->
<HTML>
<BODY>
-<P>Containes all test cases for the module 'svx'.</P>
+<P>Contains all test cases for the module 'svx'.</P>
</BODY>
</HTML>
diff --git a/qadevOOo/tests/java/mod/_sw/CharacterStyle.java b/qadevOOo/tests/java/mod/_sw/CharacterStyle.java
index 437a73564cce..313799dfa9d7 100644
--- a/qadevOOo/tests/java/mod/_sw/CharacterStyle.java
+++ b/qadevOOo/tests/java/mod/_sw/CharacterStyle.java
@@ -118,11 +118,11 @@ public class CharacterStyle extends TestCase {
oStyle = (XStyle) UnoRuntime.queryInterface(
XStyle.class,oSFIA.getByIndex(0));
} catch ( com.sun.star.lang.WrappedTargetException e ) {
- log.println("Error: exception occured.");
+ log.println("Error: exception occurred.");
e.printStackTrace(log);
throw new StatusException( "Couldn't create environment ", e );
} catch ( com.sun.star.lang.IndexOutOfBoundsException e ) {
- log.println("Error: exception occured.");
+ log.println("Error: exception occurred.");
e.printStackTrace(log);
throw new StatusException( "Couldn't create environment ", e );
}
@@ -135,7 +135,7 @@ public class CharacterStyle extends TestCase {
oMSF.createInstance("com.sun.star.style.CharacterStyle");
oMyStyle = (XStyle) UnoRuntime.queryInterface(XStyle.class, oInt);
} catch ( com.sun.star.uno.Exception e ) {
- log.println("Error: exception occured.");
+ log.println("Error: exception occurred.");
e.printStackTrace(log);
throw new StatusException( "Couldn't create environment ", e );
}
diff --git a/qadevOOo/tests/java/mod/_sw/ConditionalParagraphStyle.java b/qadevOOo/tests/java/mod/_sw/ConditionalParagraphStyle.java
index c1303d4025ca..d9be6bd94d98 100644
--- a/qadevOOo/tests/java/mod/_sw/ConditionalParagraphStyle.java
+++ b/qadevOOo/tests/java/mod/_sw/ConditionalParagraphStyle.java
@@ -81,7 +81,7 @@ public class ConditionalParagraphStyle extends TestCase {
* Create a new instance of the conditional
* paragraph style, and insert it into the document.
* @see com.sun.star.style.ConditionalParagraphStyle
- * @param tParam The test paramters
+ * @param tParam The test parameters
* @param log The log writer.
*/
protected TestEnvironment createTestEnvironment(TestParameters tParam, PrintWriter log) {
@@ -105,15 +105,15 @@ public class ConditionalParagraphStyle extends TestCase {
oStyle = (XStyle) UnoRuntime.queryInterface(
XStyle.class,oSFIA.getByIndex(1));
} catch ( com.sun.star.lang.WrappedTargetException e ) {
- log.println("Error: exception occured.");
+ log.println("Error: exception occurred.");
e.printStackTrace(log);
throw new StatusException( "Couldn't create environment ", e );
} catch ( com.sun.star.lang.IndexOutOfBoundsException e ) {
- log.println("Error: exception occured.");
+ log.println("Error: exception occurred.");
e.printStackTrace(log);
throw new StatusException( "Couldn't create environment ", e );
} catch ( com.sun.star.container.NoSuchElementException e ) {
- log.println("Error: exception occured.");
+ log.println("Error: exception occurred.");
e.printStackTrace(log);
throw new StatusException( "Couldn't create environment ", e );
}
@@ -126,7 +126,7 @@ public class ConditionalParagraphStyle extends TestCase {
oMSF.createInstance("com.sun.star.style.ConditionalParagraphStyle");
oMyStyle = (XStyle) UnoRuntime.queryInterface(XStyle.class, oInt);
} catch ( com.sun.star.uno.Exception e ) {
- log.println("Error: exception occured.");
+ log.println("Error: exception occurred.");
e.printStackTrace(log);
throw new StatusException( "Couldn't create environment ", e );
}
diff --git a/qadevOOo/tests/java/mod/_sw/PageStyle.java b/qadevOOo/tests/java/mod/_sw/PageStyle.java
index 93171bdb7be9..ab5fea9cb480 100644
--- a/qadevOOo/tests/java/mod/_sw/PageStyle.java
+++ b/qadevOOo/tests/java/mod/_sw/PageStyle.java
@@ -100,15 +100,15 @@ public class PageStyle extends TestCase {
log.println("Chosen pool style: "+oStyle.getName());
} catch ( com.sun.star.lang.WrappedTargetException e ) {
- log.println("Error: exception occured.");
+ log.println("Error: exception occurred.");
e.printStackTrace(log);
throw new StatusException( "Couldn't create environment ", e );
} catch ( com.sun.star.lang.IndexOutOfBoundsException e ) {
- log.println("Error: exception occured.");
+ log.println("Error: exception occurred.");
e.printStackTrace(log);
throw new StatusException( "Couldn't create environment ", e );
} catch ( com.sun.star.container.NoSuchElementException e ) {
- log.println("Error: exception occured.");
+ log.println("Error: exception occurred.");
e.printStackTrace(log);
throw new StatusException( "Couldn't create environment ", e );
}
@@ -122,7 +122,7 @@ public class PageStyle extends TestCase {
// oMSF.createInstanceWithArguments("com.sun.star.style.PageStyle",new Object[]{oStyle});
oMyStyle = (XStyle) UnoRuntime.queryInterface(XStyle.class, oInt);
} catch ( com.sun.star.uno.Exception e ) {
- log.println("Error: exception occured.");
+ log.println("Error: exception occurred.");
e.printStackTrace(log);
throw new StatusException( "Couldn't create environment ", e );
}
diff --git a/qadevOOo/tests/java/mod/_sw/ParagraphStyle.java b/qadevOOo/tests/java/mod/_sw/ParagraphStyle.java
index 23c75d7a0959..076ad28db429 100644
--- a/qadevOOo/tests/java/mod/_sw/ParagraphStyle.java
+++ b/qadevOOo/tests/java/mod/_sw/ParagraphStyle.java
@@ -99,15 +99,15 @@ public class ParagraphStyle extends TestCase {
oStyle = (XStyle) UnoRuntime.queryInterface(
XStyle.class,oSFIA.getByIndex(1));
} catch ( com.sun.star.lang.WrappedTargetException e ) {
- log.println("Error: exception occured.");
+ log.println("Error: exception occurred.");
e.printStackTrace(log);
throw new StatusException( "Couldn't create environment ", e );
} catch ( com.sun.star.lang.IndexOutOfBoundsException e ) {
- log.println("Error: exception occured.");
+ log.println("Error: exception occurred.");
e.printStackTrace(log);
throw new StatusException( "Couldn't create environment ", e );
} catch ( com.sun.star.container.NoSuchElementException e ) {
- log.println("Error: exception occured.");
+ log.println("Error: exception occurred.");
e.printStackTrace(log);
throw new StatusException( "Couldn't create environment ", e );
}
@@ -120,7 +120,7 @@ public class ParagraphStyle extends TestCase {
oMSF.createInstance("com.sun.star.style.ParagraphStyle");
oMyStyle = (XStyle) UnoRuntime.queryInterface(XStyle.class, oInt);
} catch ( com.sun.star.uno.Exception e ) {
- log.println("Error: exception occured.");
+ log.println("Error: exception occurred.");
e.printStackTrace(log);
throw new StatusException( "Couldn't create environment ", e );
}
diff --git a/qadevOOo/tests/java/mod/_sw/SwAccessiblePageView.java b/qadevOOo/tests/java/mod/_sw/SwAccessiblePageView.java
index 6f611832b2ad..7a4df2174ff3 100644
--- a/qadevOOo/tests/java/mod/_sw/SwAccessiblePageView.java
+++ b/qadevOOo/tests/java/mod/_sw/SwAccessiblePageView.java
@@ -122,13 +122,13 @@ public class SwAccessiblePageView extends TestCase {
new Type(XInterface.class),oEnum2.nextElement());
} catch ( com.sun.star.lang.WrappedTargetException e ) {
e.printStackTrace(log);
- log.println("Error: exception occured...");
+ log.println("Error: exception occurred...");
} catch ( com.sun.star.container.NoSuchElementException e ) {
e.printStackTrace(log);
- log.println("Error: exception occured...");
+ log.println("Error: exception occurred...");
} catch ( com.sun.star.lang.IllegalArgumentException e ) {
e.printStackTrace(log);
- log.println("Error: exception occured...");
+ log.println("Error: exception occurred...");
}
try {
@@ -138,19 +138,19 @@ public class SwAccessiblePageView extends TestCase {
UnoRuntime.queryInterface(XPropertySet.class, para);
paraP.setPropertyValue("BreakType",com.sun.star.style.BreakType.PAGE_AFTER);
} catch ( com.sun.star.lang.WrappedTargetException e ) {
- log.println("Error, exception occured...");
+ log.println("Error, exception occurred...");
e.printStackTrace(log);
throw new StatusException( "Couldn't get Paragraph", e );
} catch ( com.sun.star.lang.IllegalArgumentException e ) {
- log.println("Error, exception occured...");
+ log.println("Error, exception occurred...");
e.printStackTrace(log);
throw new StatusException( "Couldn't get Paragraph", e );
} catch ( com.sun.star.beans.UnknownPropertyException e ) {
- log.println("Error, exception occured...");
+ log.println("Error, exception occurred...");
e.printStackTrace(log);
throw new StatusException( "Couldn't get Paragraph", e );
} catch ( com.sun.star.beans.PropertyVetoException e ) {
- log.println("Error, exception occured...");
+ log.println("Error, exception occurred...");
e.printStackTrace(log);
throw new StatusException( "Couldn't get Paragraph", e );
}
diff --git a/qadevOOo/tests/java/mod/_sw/SwXLineNumberingProperties.java b/qadevOOo/tests/java/mod/_sw/SwXLineNumberingProperties.java
index 8a9b16786edb..478bde414efd 100644
--- a/qadevOOo/tests/java/mod/_sw/SwXLineNumberingProperties.java
+++ b/qadevOOo/tests/java/mod/_sw/SwXLineNumberingProperties.java
@@ -99,7 +99,7 @@ public class SwXLineNumberingProperties extends TestCase {
}
} catch ( com.sun.star.lang.IllegalArgumentException e ) {
e.printStackTrace(log);
- log.println("Exception occured: " + e);
+ log.println("Exception occurred: " + e);
}
XLineNumberingProperties oLNP = (XLineNumberingProperties)
diff --git a/qadevOOo/tests/java/mod/_sw/SwXMailMerge.java b/qadevOOo/tests/java/mod/_sw/SwXMailMerge.java
index 711d5717a68e..107671dcc42d 100644
--- a/qadevOOo/tests/java/mod/_sw/SwXMailMerge.java
+++ b/qadevOOo/tests/java/mod/_sw/SwXMailMerge.java
@@ -149,7 +149,7 @@ public class SwXMailMerge extends TestCase {
oResultSet.next();
myBookMarks[1] = oRowLocate.getBookmark();
} catch (SQLException e) {
- throw new StatusException("Cant get Bookmarks", e);
+ throw new StatusException("Can't get Bookmarks", e);
}
// </create Bookmarks>
diff --git a/qadevOOo/tests/java/mod/_sw/SwXNumberingRules.java b/qadevOOo/tests/java/mod/_sw/SwXNumberingRules.java
index ff85e78d9c24..9cab3ecbdac6 100644
--- a/qadevOOo/tests/java/mod/_sw/SwXNumberingRules.java
+++ b/qadevOOo/tests/java/mod/_sw/SwXNumberingRules.java
@@ -115,7 +115,7 @@ public class SwXNumberingRules extends TestCase {
ControlCharacter.PARAGRAPH_BREAK, false);
}
} catch ( com.sun.star.lang.IllegalArgumentException e ) {
- log.println("Error, exception occured...");
+ log.println("Error, exception occurred...");
e.printStackTrace(log);
}
@@ -130,13 +130,13 @@ public class SwXNumberingRules extends TestCase {
NumStyleI = (XIndexAccess)
UnoRuntime.queryInterface(XIndexAccess.class,NumStyles);
} catch ( com.sun.star.lang.WrappedTargetException e ) {
- log.println("Error, exception occured...");
+ log.println("Error, exception occurred...");
e.printStackTrace(log);
} catch ( com.sun.star.container.NoSuchElementException e ) {
log.println("Error, no such style family...");
e.printStackTrace(log);
} catch ( com.sun.star.lang.IllegalArgumentException e ) {
- log.println("Error, exception occured...");
+ log.println("Error, exception occurred...");
e.printStackTrace(log);
}
@@ -152,16 +152,16 @@ public class SwXNumberingRules extends TestCase {
XIndexAccess nRules = (XIndexAccess) UnoRuntime.queryInterface(XIndexAccess.class, props.getPropertyValue("NumberingRules"));
instance1 = nRules.getByIndex(0);
} catch ( com.sun.star.lang.WrappedTargetException e ) {
- log.println("Error, exception occured...");
+ log.println("Error, exception occurred...");
e.printStackTrace(log);
} catch ( com.sun.star.lang.IndexOutOfBoundsException e ) {
- log.println("Error, exception occured...");
+ log.println("Error, exception occurred...");
e.printStackTrace(log);
} catch ( com.sun.star.beans.UnknownPropertyException e ) {
- log.println("Error, exception occured...");
+ log.println("Error, exception occurred...");
e.printStackTrace(log);
} catch ( com.sun.star.lang.IllegalArgumentException e ) {
- log.println("Error, exception occured...");
+ log.println("Error, exception occurred...");
e.printStackTrace(log);
}
diff --git a/qadevOOo/tests/java/mod/_sw/SwXParagraph.java b/qadevOOo/tests/java/mod/_sw/SwXParagraph.java
index a77a1900e45c..3c67f040fa39 100644
--- a/qadevOOo/tests/java/mod/_sw/SwXParagraph.java
+++ b/qadevOOo/tests/java/mod/_sw/SwXParagraph.java
@@ -209,13 +209,13 @@ public class SwXParagraph extends TestCase {
new Type(XInterface.class),oEnum2.nextElement());
} catch ( com.sun.star.lang.WrappedTargetException e ) {
e.printStackTrace(log);
- log.println("Error: exception occured...");
+ log.println("Error: exception occurred...");
} catch ( com.sun.star.container.NoSuchElementException e ) {
e.printStackTrace(log);
- log.println("Error: exception occured...");
+ log.println("Error: exception occurred...");
} catch ( com.sun.star.lang.IllegalArgumentException e ) {
e.printStackTrace(log);
- log.println("Error: exception occured...");
+ log.println("Error: exception occurred...");
}
try {
@@ -226,19 +226,19 @@ public class SwXParagraph extends TestCase {
paraP.setPropertyValue("NumberingStyleName","Numbering 4");
nRules = paraP.getPropertyValue("NumberingRules");
} catch ( com.sun.star.lang.WrappedTargetException e ) {
- log.println("Error, exception occured...");
+ log.println("Error, exception occurred...");
e.printStackTrace(log);
throw new StatusException( "Couldn't get Paragraph", e );
} catch ( com.sun.star.lang.IllegalArgumentException e ) {
- log.println("Error, exception occured...");
+ log.println("Error, exception occurred...");
e.printStackTrace(log);
throw new StatusException( "Couldn't get Paragraph", e );
} catch ( com.sun.star.beans.UnknownPropertyException e ) {
- log.println("Error, exception occured...");
+ log.println("Error, exception occurred...");
e.printStackTrace(log);
throw new StatusException( "Couldn't get Paragraph", e );
} catch ( com.sun.star.beans.PropertyVetoException e ) {
- log.println("Error, exception occured...");
+ log.println("Error, exception occurred...");
e.printStackTrace(log);
throw new StatusException( "Couldn't get Paragraph", e );
}
@@ -248,7 +248,7 @@ public class SwXParagraph extends TestCase {
oObj = (XInterface) AnyConverter.toObject(
new Type(XInterface.class),oEnum.nextElement());
} catch ( Exception e) {
- log.println("Error, exception occured...");
+ log.println("Error, exception occurred...");
e.printStackTrace(log);
throw new StatusException( "Couldn't get Paragraph", e );
}
diff --git a/qadevOOo/tests/java/mod/_sw/SwXStyle.java b/qadevOOo/tests/java/mod/_sw/SwXStyle.java
index 7ffc4e29fc4b..166fe7a470ab 100644
--- a/qadevOOo/tests/java/mod/_sw/SwXStyle.java
+++ b/qadevOOo/tests/java/mod/_sw/SwXStyle.java
@@ -136,15 +136,15 @@ public class SwXStyle extends TestCase {
oStyle = (XStyle) AnyConverter.toObject(
new Type(XStyle.class),oSFIA.getByIndex(10));
} catch ( com.sun.star.lang.WrappedTargetException e ) {
- log.println("Error: exception occured.");
+ log.println("Error: exception occurred.");
e.printStackTrace(log);
throw new StatusException( "Couldn't create environment ", e );
} catch ( com.sun.star.lang.IndexOutOfBoundsException e ) {
- log.println("Error: exception occured.");
+ log.println("Error: exception occurred.");
e.printStackTrace(log);
throw new StatusException( "Couldn't create environment ", e );
} catch ( com.sun.star.lang.IllegalArgumentException e ) {
- log.println("Error: exception occured.");
+ log.println("Error: exception occurred.");
e.printStackTrace(log);
throw new StatusException( "Couldn't create environment ", e );
}
@@ -157,7 +157,7 @@ public class SwXStyle extends TestCase {
oMSF.createInstance("com.sun.star.style.CharacterStyle");
oMyStyle = (XStyle) UnoRuntime.queryInterface(XStyle.class, oInt);
} catch ( com.sun.star.uno.Exception e ) {
- log.println("Error: exception occured.");
+ log.println("Error: exception occurred.");
e.printStackTrace(log);
throw new StatusException( "Couldn't create environment ", e );
}
diff --git a/qadevOOo/tests/java/mod/_sw/SwXTextColumns.java b/qadevOOo/tests/java/mod/_sw/SwXTextColumns.java
index 686fc94d98bd..ad7da2f236bf 100644
--- a/qadevOOo/tests/java/mod/_sw/SwXTextColumns.java
+++ b/qadevOOo/tests/java/mod/_sw/SwXTextColumns.java
@@ -116,16 +116,16 @@ public class SwXTextColumns extends TestCase {
oStyle = (XStyle) AnyConverter.toObject(
new Type(XStyle.class),oSFNA.getByName("Standard"));
} catch ( com.sun.star.lang.WrappedTargetException e ) {
- log.println("Error, exception occured while getting style.");
+ log.println("Error, exception occurred while getting style.");
e.printStackTrace(log);
} catch ( com.sun.star.lang.IndexOutOfBoundsException e ) {
- log.println("Error, exception occured while getting style.");
+ log.println("Error, exception occurred while getting style.");
e.printStackTrace(log);
} catch ( com.sun.star.container.NoSuchElementException e ) {
- log.println("Error, exception occured while getting style.");
+ log.println("Error, exception occurred while getting style.");
e.printStackTrace(log);
} catch ( com.sun.star.lang.IllegalArgumentException e ) {
- log.println("Error, exception occured while getting style.");
+ log.println("Error, exception occurred while getting style.");
e.printStackTrace(log);
}
@@ -137,13 +137,13 @@ public class SwXTextColumns extends TestCase {
oObj = (XTextColumns) AnyConverter.toObject(
new Type(XTextColumns.class),xProps.getPropertyValue("TextColumns"));
} catch ( com.sun.star.lang.WrappedTargetException e ) {
- log.println("Exception occured while getting style property");
+ log.println("Exception occurred while getting style property");
e.printStackTrace(log);
} catch ( com.sun.star.beans.UnknownPropertyException e ) {
- log.println("Exception occured while getting style property");
+ log.println("Exception occurred while getting style property");
e.printStackTrace(log);
} catch ( com.sun.star.lang.IllegalArgumentException e ) {
- log.println("Exception occured while getting style property");
+ log.println("Exception occurred while getting style property");
e.printStackTrace(log);
}
@@ -168,7 +168,7 @@ public class SwXTextColumns extends TestCase {
ControlCharacter.LINE_BREAK, false );
}
} catch ( com.sun.star.lang.IllegalArgumentException e ){
- log.println("Exception occured while inserting Text");
+ log.println("Exception occurred while inserting Text");
e.printStackTrace(log);
}
diff --git a/qadevOOo/tests/java/mod/_sw/SwXTextView.java b/qadevOOo/tests/java/mod/_sw/SwXTextView.java
index fe31da331b74..3e69c35da374 100644
--- a/qadevOOo/tests/java/mod/_sw/SwXTextView.java
+++ b/qadevOOo/tests/java/mod/_sw/SwXTextView.java
@@ -259,7 +259,7 @@ public class SwXTextView extends TestCase {
if (xForms == null)
log.println("ERROR: could not get Forms");
- log.println("the draw page contains folowing elemtens:");
+ log.println("the draw page contains following elemtens:");
String[] elements = FormTools.getForms(WriterTools.getDrawPage(xTextDoc)).getElementNames();
for (int i = 0; i< elements.length; i++){
log.println("Element[" + i + "] :" + elements[i]);
@@ -269,7 +269,7 @@ public class SwXTextView extends TestCase {
if (myForm == null){
log.println("ERROR: could not get 'Standard' from drawpage!");
if (debug){
- log.println("the draw page contains folowing elemtens:");
+ log.println("the draw page contains following elemtens:");
// String[] elements = FormTools.getForms(WriterTools.getDrawPage(xTextDoc)).getElementNames();
// for (int i = 0; i< elements.length; i++){
// log.println("Element[" + i + "] :" + elements[i]);
diff --git a/qadevOOo/tests/java/mod/_sw/XMLContentExporter.java b/qadevOOo/tests/java/mod/_sw/XMLContentExporter.java
index 7173d261c897..2fecc5a59baa 100644
--- a/qadevOOo/tests/java/mod/_sw/XMLContentExporter.java
+++ b/qadevOOo/tests/java/mod/_sw/XMLContentExporter.java
@@ -162,7 +162,7 @@ public class XMLContentExporter extends TestCase {
/**
* This class checks the XML for tags and data required and returns
* checking result to <code>XFilter</code> interface test. All
- * the information about errors occured in XML data is written
+ * the information about errors occurred in XML data is written
* to log specified.
* @see ifc.document._XFilter
*/
@@ -182,7 +182,7 @@ public class XMLContentExporter extends TestCase {
* which returns the result of XML checking.
* @return <code>true</code> if the XML data exported was
* valid (i.e. all necessary tags and character data exists),
- * <code>false</code> if some errors occured.
+ * <code>false</code> if some errors occurred.
*/
public boolean checkFilter() {
return checkTags();
diff --git a/qadevOOo/tests/java/mod/_sw/XMLExporter.java b/qadevOOo/tests/java/mod/_sw/XMLExporter.java
index 612fc5766a12..b78eed95c5f6 100644
--- a/qadevOOo/tests/java/mod/_sw/XMLExporter.java
+++ b/qadevOOo/tests/java/mod/_sw/XMLExporter.java
@@ -166,7 +166,7 @@ public class XMLExporter extends TestCase {
/**
* This class checks the XML for tags and data required and returns
* checking result to <code>XFilter</code> interface test. All
- * the information about errors occured in XML data is written
+ * the information about errors occurred in XML data is written
* to log specified.
* @see ifc.document._XFilter
*/
@@ -185,7 +185,7 @@ public class XMLExporter extends TestCase {
* which returns the result of XML checking.
* @return <code>true</code> if the XML data exported was
* valid (i.e. all necessary tags and character data exists),
- * <code>false</code> if some errors occured.
+ * <code>false</code> if some errors occurred.
*/
public boolean checkFilter() {
return checkTags() ;
diff --git a/qadevOOo/tests/java/mod/_sw/XMLMetaExporter.java b/qadevOOo/tests/java/mod/_sw/XMLMetaExporter.java
index b8f241215dfb..62fd68902c9f 100644
--- a/qadevOOo/tests/java/mod/_sw/XMLMetaExporter.java
+++ b/qadevOOo/tests/java/mod/_sw/XMLMetaExporter.java
@@ -166,7 +166,7 @@ public class XMLMetaExporter extends TestCase {
/**
* This class checks the XML for tags and data required and returns
* checking result to <code>XFilter</code> interface test. All
- * the information about errors occured in XML data is written
+ * the information about errors occurred in XML data is written
* to log specified.
* @see ifc.document._XFilter
*/
@@ -186,7 +186,7 @@ public class XMLMetaExporter extends TestCase {
* which returns the result of XML checking.
* @return <code>true</code> if the XML data exported was
* valid (i.e. all necessary tags and character data exists),
- * <code>false</code> if some errors occured.
+ * <code>false</code> if some errors occurred.
*/
public boolean checkFilter() {
return checkTags();
diff --git a/qadevOOo/tests/java/mod/_sw/XMLMetaImporter.java b/qadevOOo/tests/java/mod/_sw/XMLMetaImporter.java
index 14da529322d1..2bd55f1109f2 100644
--- a/qadevOOo/tests/java/mod/_sw/XMLMetaImporter.java
+++ b/qadevOOo/tests/java/mod/_sw/XMLMetaImporter.java
@@ -172,7 +172,7 @@ public class XMLMetaImporter extends TestCase {
logF.println("Title returned = '" + title + "'") ;
return impTitle.equals(title) ;
} catch (com.sun.star.uno.Exception e) {
- logF.println("Exception occured while checking filter :") ;
+ logF.println("Exception occurred while checking filter :") ;
e.printStackTrace(logF) ;
return false ;
}
diff --git a/qadevOOo/tests/java/mod/_sw/XMLSettingsExporter.java b/qadevOOo/tests/java/mod/_sw/XMLSettingsExporter.java
index a711dbcaf2d9..cfdc45ffc5f8 100644
--- a/qadevOOo/tests/java/mod/_sw/XMLSettingsExporter.java
+++ b/qadevOOo/tests/java/mod/_sw/XMLSettingsExporter.java
@@ -175,7 +175,7 @@ public class XMLSettingsExporter extends TestCase {
/**
* This class checks the XML for tags and data required and returns
* checking result to <code>XFilter</code> interface test. All
- * the information about errors occured in XML data is written
+ * the information about errors occurred in XML data is written
* to log specified.
* @see ifc.document._XFilter
*/
@@ -195,7 +195,7 @@ public class XMLSettingsExporter extends TestCase {
* which returns the result of XML checking.
* @return <code>true</code> if the XML data exported was
* valid (i.e. all necessary tags and character data exists),
- * <code>false</code> if some errors occured.
+ * <code>false</code> if some errors occurred.
*/
public boolean checkFilter() {
return check();
diff --git a/qadevOOo/tests/java/mod/_sw/XMLStylesExporter.java b/qadevOOo/tests/java/mod/_sw/XMLStylesExporter.java
index 719c01d15dfb..4a234b174a33 100644
--- a/qadevOOo/tests/java/mod/_sw/XMLStylesExporter.java
+++ b/qadevOOo/tests/java/mod/_sw/XMLStylesExporter.java
@@ -134,7 +134,7 @@ public class XMLStylesExporter extends TestCase {
throw new StatusException("Can't create component.", e) ;
}
- // Cheching Head Tag existance and that property has changed
+ // Cheching Head Tag existence and that property has changed
filter.addTag(new XMLTools.Tag ("office:document-styles"));
filter.addTag(new XMLTools.Tag ("text:footnotes-configuration",
"style:num-prefix","New Property")) ;
@@ -168,7 +168,7 @@ public class XMLStylesExporter extends TestCase {
/**
* This class checks the XML for tags and data required and returns
* checking result to <code>XFilter</code> interface test. All
- * the information about errors occured in XML data is written
+ * the information about errors occurred in XML data is written
* to log specified.
* @see ifc.document._XFilter
*/
@@ -188,7 +188,7 @@ public class XMLStylesExporter extends TestCase {
* which returns the result of XML checking.
* @return <code>true</code> if the XML data exported was
* valid (i.e. all necessary tags and character data exists),
- * <code>false</code> if some errors occured.
+ * <code>false</code> if some errors occurred.
*/
public boolean checkFilter() {
return check();
diff --git a/qadevOOo/tests/java/mod/_sw/XMLStylesImporter.java b/qadevOOo/tests/java/mod/_sw/XMLStylesImporter.java
index 25765b360509..70d91fcee7ec 100644
--- a/qadevOOo/tests/java/mod/_sw/XMLStylesImporter.java
+++ b/qadevOOo/tests/java/mod/_sw/XMLStylesImporter.java
@@ -171,7 +171,7 @@ public class XMLStylesImporter extends TestCase {
logF.println("Prefix returned = '" + prefix + "'") ;
return impPrefix.equals(prefix) ;
} catch (com.sun.star.uno.Exception e) {
- logF.println("Exception occured while checking filter :") ;
+ logF.println("Exception occurred while checking filter :") ;
e.printStackTrace(logF) ;
return false ;
}
diff --git a/qadevOOo/tests/java/mod/_sw/package.html b/qadevOOo/tests/java/mod/_sw/package.html
index ac05ea4b451b..1eed759a30d7 100644
--- a/qadevOOo/tests/java/mod/_sw/package.html
+++ b/qadevOOo/tests/java/mod/_sw/package.html
@@ -21,6 +21,6 @@
***********************************************************-->
<HTML>
<BODY>
-<P>Containes all test cases for the module 'sw'.</P>
+<P>Contains all test cases for the module 'sw'.</P>
</BODY>
</HTML>
diff --git a/qadevOOo/tests/java/mod/_sysdtrans/package.html b/qadevOOo/tests/java/mod/_sysdtrans/package.html
index 4c76d2faf9ba..55d71454e3bf 100644
--- a/qadevOOo/tests/java/mod/_sysdtrans/package.html
+++ b/qadevOOo/tests/java/mod/_sysdtrans/package.html
@@ -21,6 +21,6 @@
***********************************************************-->
<HTML>
<BODY>
-<P>Containes all test cases for the module 'sysdtrans'.</P>
+<P>Contains all test cases for the module 'sysdtrans'.</P>
</BODY>
</HTML>
diff --git a/qadevOOo/tests/java/mod/_tcv/package.html b/qadevOOo/tests/java/mod/_tcv/package.html
index 626cbd6b1feb..9dd42ccfee24 100644
--- a/qadevOOo/tests/java/mod/_tcv/package.html
+++ b/qadevOOo/tests/java/mod/_tcv/package.html
@@ -21,6 +21,6 @@
***********************************************************-->
<HTML>
<BODY>
-<P>Containes all test cases for the module 'tcv'.</P>
+<P>Contains all test cases for the module 'tcv'.</P>
</BODY>
</HTML>
diff --git a/qadevOOo/tests/java/mod/_tdmgr/package.html b/qadevOOo/tests/java/mod/_tdmgr/package.html
index c0207b28b304..d76f8766465a 100644
--- a/qadevOOo/tests/java/mod/_tdmgr/package.html
+++ b/qadevOOo/tests/java/mod/_tdmgr/package.html
@@ -21,6 +21,6 @@
***********************************************************-->
<HTML>
<BODY>
-<P>Containes all test cases for the module 'tdmgr'.</P>
+<P>Contains all test cases for the module 'tdmgr'.</P>
</BODY>
</HTML>
diff --git a/qadevOOo/tests/java/mod/_toolkit/package.html b/qadevOOo/tests/java/mod/_toolkit/package.html
index 810e0d17db27..70df81af9bf8 100644
--- a/qadevOOo/tests/java/mod/_toolkit/package.html
+++ b/qadevOOo/tests/java/mod/_toolkit/package.html
@@ -21,6 +21,6 @@
***********************************************************-->
<HTML>
<BODY>
-<P>Containes all test cases for the module 'toolkit'.</P>
+<P>Contains all test cases for the module 'toolkit'.</P>
</BODY>
</HTML>
diff --git a/qadevOOo/tests/java/mod/_typeconverter.uno/package.html b/qadevOOo/tests/java/mod/_typeconverter.uno/package.html
index 626cbd6b1feb..9dd42ccfee24 100644
--- a/qadevOOo/tests/java/mod/_typeconverter.uno/package.html
+++ b/qadevOOo/tests/java/mod/_typeconverter.uno/package.html
@@ -21,6 +21,6 @@
***********************************************************-->
<HTML>
<BODY>
-<P>Containes all test cases for the module 'tcv'.</P>
+<P>Contains all test cases for the module 'tcv'.</P>
</BODY>
</HTML>
diff --git a/qadevOOo/tests/java/mod/_typemgr.uno/package.html b/qadevOOo/tests/java/mod/_typemgr.uno/package.html
index c0207b28b304..d76f8766465a 100644
--- a/qadevOOo/tests/java/mod/_typemgr.uno/package.html
+++ b/qadevOOo/tests/java/mod/_typemgr.uno/package.html
@@ -21,6 +21,6 @@
***********************************************************-->
<HTML>
<BODY>
-<P>Containes all test cases for the module 'tdmgr'.</P>
+<P>Contains all test cases for the module 'tdmgr'.</P>
</BODY>
</HTML>
diff --git a/qadevOOo/tests/java/mod/_uuresolver.uno/package.html b/qadevOOo/tests/java/mod/_uuresolver.uno/package.html
index f24c68d33143..0f836a8b9ce6 100644
--- a/qadevOOo/tests/java/mod/_uuresolver.uno/package.html
+++ b/qadevOOo/tests/java/mod/_uuresolver.uno/package.html
@@ -21,6 +21,6 @@
***********************************************************-->
<HTML>
<BODY>
-<P>Containes all test cases for the module 'uuresolver'.</P>
+<P>Contains all test cases for the module 'uuresolver'.</P>
</BODY>
</HTML>
diff --git a/qadevOOo/tests/java/mod/_uuresolver/package.html b/qadevOOo/tests/java/mod/_uuresolver/package.html
index f24c68d33143..0f836a8b9ce6 100644
--- a/qadevOOo/tests/java/mod/_uuresolver/package.html
+++ b/qadevOOo/tests/java/mod/_uuresolver/package.html
@@ -21,6 +21,6 @@
***********************************************************-->
<HTML>
<BODY>
-<P>Containes all test cases for the module 'uuresolver'.</P>
+<P>Contains all test cases for the module 'uuresolver'.</P>
</BODY>
</HTML>
diff --git a/qadevOOo/tests/java/mod/_xmloff/Chart/XMLContentExporter.java b/qadevOOo/tests/java/mod/_xmloff/Chart/XMLContentExporter.java
index 1e8d17f8e6a0..5c0e739d4ecd 100644
--- a/qadevOOo/tests/java/mod/_xmloff/Chart/XMLContentExporter.java
+++ b/qadevOOo/tests/java/mod/_xmloff/Chart/XMLContentExporter.java
@@ -169,7 +169,7 @@ public class XMLContentExporter extends TestCase {
/**
* This class checks the XML for tags and data required and returns
* checking result to <code>XFilter</code> interface test. All
- * the information about errors occured in XML data is written
+ * the information about errors occurred in XML data is written
* to log specified.
* @see ifc.document._XFilter
*/
@@ -188,7 +188,7 @@ public class XMLContentExporter extends TestCase {
* which returns the result of XML checking.
* @return <code>true</code> if the XML data exported was
* valid (i.e. all necessary tags and character data exists),
- * <code>false</code> if some errors occured.
+ * <code>false</code> if some errors occurred.
*/
public boolean checkFilter() {
return check() ;
diff --git a/qadevOOo/tests/java/mod/_xmloff/Chart/XMLContentImporter.java b/qadevOOo/tests/java/mod/_xmloff/Chart/XMLContentImporter.java
index 6daeaa59f514..a867e7fe162e 100644
--- a/qadevOOo/tests/java/mod/_xmloff/Chart/XMLContentImporter.java
+++ b/qadevOOo/tests/java/mod/_xmloff/Chart/XMLContentImporter.java
@@ -189,7 +189,7 @@ public class XMLContentImporter extends TestCase {
return impValue.equals(title) ;
} catch (com.sun.star.uno.Exception e) {
logF.println
- ("Exception occured while checking filter :") ;
+ ("Exception occurred while checking filter :") ;
e.printStackTrace(logF) ;
return false ;
}
diff --git a/qadevOOo/tests/java/mod/_xmloff/Chart/XMLExporter.java b/qadevOOo/tests/java/mod/_xmloff/Chart/XMLExporter.java
index 10f124844cf6..4ec81d8ac8e4 100644
--- a/qadevOOo/tests/java/mod/_xmloff/Chart/XMLExporter.java
+++ b/qadevOOo/tests/java/mod/_xmloff/Chart/XMLExporter.java
@@ -172,7 +172,7 @@ public class XMLExporter extends TestCase {
/**
* This class checks the XML for tags and data required and returns
* checking result to <code>XFilter</code> interface test. All
- * the information about errors occured in XML data is written
+ * the information about errors occurred in XML data is written
* to log specified.
* @see ifc.document._XFilter
*/
@@ -191,7 +191,7 @@ public class XMLExporter extends TestCase {
* which returns the result of XML checking.
* @return <code>true</code> if the XML data exported was
* valid (i.e. all necessary tags and character data exists),
- * <code>false</code> if some errors occured.
+ * <code>false</code> if some errors occurred.
*/
public boolean checkFilter() {
return check() ;
diff --git a/qadevOOo/tests/java/mod/_xmloff/Chart/XMLImporter.java b/qadevOOo/tests/java/mod/_xmloff/Chart/XMLImporter.java
index 81c4557b358f..fb3d5356d21b 100644
--- a/qadevOOo/tests/java/mod/_xmloff/Chart/XMLImporter.java
+++ b/qadevOOo/tests/java/mod/_xmloff/Chart/XMLImporter.java
@@ -187,7 +187,7 @@ public class XMLImporter extends TestCase {
return impValue.equals(title) ;
} catch (com.sun.star.uno.Exception e) {
logF.println
- ("Exception occured while checking filter :") ;
+ ("Exception occurred while checking filter :") ;
e.printStackTrace(logF) ;
return false ;
}
diff --git a/qadevOOo/tests/java/mod/_xmloff/Chart/XMLStylesExporter.java b/qadevOOo/tests/java/mod/_xmloff/Chart/XMLStylesExporter.java
index ff25602b743d..8a510e35b947 100644
--- a/qadevOOo/tests/java/mod/_xmloff/Chart/XMLStylesExporter.java
+++ b/qadevOOo/tests/java/mod/_xmloff/Chart/XMLStylesExporter.java
@@ -159,7 +159,7 @@ public class XMLStylesExporter extends TestCase {
/**
* This class checks the XML for tags and data required and returns
* checking result to <code>XFilter</code> interface test. All
- * the information about errors occured in XML data is written
+ * the information about errors occurred in XML data is written
* to log specified.
* @see ifc.document._XFilter
*/
@@ -178,7 +178,7 @@ public class XMLStylesExporter extends TestCase {
* which returns the result of XML checking.
* @return <code>true</code> if the XML data exported was
* valid (i.e. all necessary tags and character data exists),
- * <code>false</code> if some errors occured.
+ * <code>false</code> if some errors occurred.
*/
public boolean checkFilter() {
return check() ;
diff --git a/qadevOOo/tests/java/mod/_xmloff/Chart/XMLStylesImporter.java b/qadevOOo/tests/java/mod/_xmloff/Chart/XMLStylesImporter.java
index c287cad746f0..8b21dd6c1b0c 100644
--- a/qadevOOo/tests/java/mod/_xmloff/Chart/XMLStylesImporter.java
+++ b/qadevOOo/tests/java/mod/_xmloff/Chart/XMLStylesImporter.java
@@ -168,7 +168,7 @@ public class XMLStylesImporter extends TestCase {
logF.println(" TRUE returned.");
return true ;
/* } catch (com.sun.star.uno.Exception e) {
- logF.println("Exception occured while checking filter :") ;
+ logF.println("Exception occurred while checking filter :") ;
e.printStackTrace(logF) ;
return false ;
}
diff --git a/qadevOOo/tests/java/mod/_xmloff/Draw/XMLContentExporter.java b/qadevOOo/tests/java/mod/_xmloff/Draw/XMLContentExporter.java
index d9bae484dbdc..901ebb442ca3 100644
--- a/qadevOOo/tests/java/mod/_xmloff/Draw/XMLContentExporter.java
+++ b/qadevOOo/tests/java/mod/_xmloff/Draw/XMLContentExporter.java
@@ -124,7 +124,7 @@ public class XMLContentExporter extends TestCase {
FilterChecker filter = new FilterChecker(log);
Any arg = new Any(new Type(XDocumentHandler.class),filter);
- // Adding tags for checking existance of head tag and other tags
+ // Adding tags for checking existence of head tag and other tags
filter.addTag(new XMLTools.Tag("office:document-content"));
filter.addTag(new XMLTools.Tag("office:body"));
filter.addTagEnclosed(
@@ -181,7 +181,7 @@ public class XMLContentExporter extends TestCase {
/**
* This class checks the XML for tags and data required and returns
* checking result to <code>XFilter</code> interface test. All
- * the information about errors occured in XML data is written
+ * the information about errors occurred in XML data is written
* to log specified.
* @see ifc.document._XFilter
*/
@@ -200,7 +200,7 @@ public class XMLContentExporter extends TestCase {
* which returns the result of XML checking.
* @return <code>true</code> if the XML data exported was
* valid (i.e. all necessary tags and character data exists),
- * <code>false</code> if some errors occured.
+ * <code>false</code> if some errors occurred.
*/
public boolean checkFilter() {
return check();
diff --git a/qadevOOo/tests/java/mod/_xmloff/Draw/XMLExporter.java b/qadevOOo/tests/java/mod/_xmloff/Draw/XMLExporter.java
index 5de03f19d60b..7a27bc3b2f1e 100644
--- a/qadevOOo/tests/java/mod/_xmloff/Draw/XMLExporter.java
+++ b/qadevOOo/tests/java/mod/_xmloff/Draw/XMLExporter.java
@@ -126,7 +126,7 @@ public class XMLExporter extends TestCase {
FilterChecker filter = new FilterChecker(log);
Any arg = new Any(new Type(XDocumentHandler.class),filter);
- // Adding tags for checking existance of head tag and other tags
+ // Adding tags for checking existence of head tag and other tags
filter.addTag(new XMLTools.Tag("office:document"));
filter.addTag(new XMLTools.Tag("office:body"));
filter.addTagEnclosed(
@@ -182,7 +182,7 @@ public class XMLExporter extends TestCase {
/**
* This class checks the XML for tags and data required and returns
* checking result to <code>XFilter</code> interface test. All
- * the information about errors occured in XML data is written
+ * the information about errors occurred in XML data is written
* to log specified.
* @see ifc.document._XFilter
*/
@@ -201,7 +201,7 @@ public class XMLExporter extends TestCase {
* which returns the result of XML checking.
* @return <code>true</code> if the XML data exported was
* valid (i.e. all necessary tags and character data exists),
- * <code>false</code> if some errors occured.
+ * <code>false</code> if some errors occurred.
*/
public boolean checkFilter() {
return check();
diff --git a/qadevOOo/tests/java/mod/_xmloff/Draw/XMLMetaExporter.java b/qadevOOo/tests/java/mod/_xmloff/Draw/XMLMetaExporter.java
index eecb07651996..467bdbf31562 100644
--- a/qadevOOo/tests/java/mod/_xmloff/Draw/XMLMetaExporter.java
+++ b/qadevOOo/tests/java/mod/_xmloff/Draw/XMLMetaExporter.java
@@ -146,7 +146,7 @@ public class XMLMetaExporter extends TestCase {
throw new StatusException("Can't create component.", e) ;
}
- // Checking Head Tag existance and that property has changed
+ // Checking Head Tag existence and that property has changed
filter.addTag(new XMLTools.Tag ("office:document-meta"));
filter.addTagEnclosed(
new XMLTools.Tag("office:meta"),
@@ -172,7 +172,7 @@ public class XMLMetaExporter extends TestCase {
/**
* This class checks the XML for tags and data required and returns
* checking result to <code>XFilter</code> interface test. All
- * the information about errors occured in XML data is written
+ * the information about errors occurred in XML data is written
* to log specified.
* @see ifc.document._XFilter
*/
@@ -192,7 +192,7 @@ public class XMLMetaExporter extends TestCase {
* which returns the result of XML checking.
* @return <code>true</code> if the XML data exported was
* valid (i.e. all necessary tags and character data exists),
- * <code>false</code> if some errors occured.
+ * <code>false</code> if some errors occurred.
*/
public boolean checkFilter() {
return check();
diff --git a/qadevOOo/tests/java/mod/_xmloff/Draw/XMLMetaImporter.java b/qadevOOo/tests/java/mod/_xmloff/Draw/XMLMetaImporter.java
index 9091cba748b1..1459d274a6d4 100644
--- a/qadevOOo/tests/java/mod/_xmloff/Draw/XMLMetaImporter.java
+++ b/qadevOOo/tests/java/mod/_xmloff/Draw/XMLMetaImporter.java
@@ -173,7 +173,7 @@ public class XMLMetaImporter extends TestCase {
logF.println("Title returned = '" + title + "'") ;
return impTitle.equals(title) ;
} catch (com.sun.star.uno.Exception e) {
- logF.println("Exception occured while checking filter :") ;
+ logF.println("Exception occurred while checking filter :") ;
e.printStackTrace(logF) ;
return false ;
}
diff --git a/qadevOOo/tests/java/mod/_xmloff/Draw/XMLSettingsExporter.java b/qadevOOo/tests/java/mod/_xmloff/Draw/XMLSettingsExporter.java
index 6e368f8c0c96..0dab38d0ade7 100644
--- a/qadevOOo/tests/java/mod/_xmloff/Draw/XMLSettingsExporter.java
+++ b/qadevOOo/tests/java/mod/_xmloff/Draw/XMLSettingsExporter.java
@@ -147,7 +147,7 @@ public class XMLSettingsExporter extends TestCase {
throw new StatusException("Can't create component.", e) ;
}
- // Checking Head Tag existance and that property has changed
+ // Checking Head Tag existence and that property has changed
filter.addTag(new XMLTools.Tag ("office:document-settings"));
filter.addTagEnclosed(
new XMLTools.Tag ("office:settings"),
@@ -178,7 +178,7 @@ public class XMLSettingsExporter extends TestCase {
/**
* This class checks the XML for tags and data required and returns
* checking result to <code>XFilter</code> interface test. All
- * the information about errors occured in XML data is written
+ * the information about errors occurred in XML data is written
* to log specified.
* @see ifc.document._XFilter
*/
@@ -198,7 +198,7 @@ public class XMLSettingsExporter extends TestCase {
* which returns the result of XML checking.
* @return <code>true</code> if the XML data exported was
* valid (i.e. all necessary tags and character data exists),
- * <code>false</code> if some errors occured.
+ * <code>false</code> if some errors occurred.
*/
public boolean checkFilter() {
return check();
diff --git a/qadevOOo/tests/java/mod/_xmloff/Draw/XMLStylesExporter.java b/qadevOOo/tests/java/mod/_xmloff/Draw/XMLStylesExporter.java
index 4eb904a7b64a..e20d9beedf00 100644
--- a/qadevOOo/tests/java/mod/_xmloff/Draw/XMLStylesExporter.java
+++ b/qadevOOo/tests/java/mod/_xmloff/Draw/XMLStylesExporter.java
@@ -157,7 +157,7 @@ public class XMLStylesExporter extends TestCase {
throw new StatusException("Can't create component.", e) ;
}
- // Checking Head Tag existance and that property has changed
+ // Checking Head Tag existence and that property has changed
filter.addTag(new XMLTools.Tag ("office:document-styles"));
filter.addTag(new XMLTools.Tag ("office:styles"));
filter.addTagEnclosed(
@@ -180,7 +180,7 @@ public class XMLStylesExporter extends TestCase {
/**
* This class checks the XML for tags and data required and returns
* checking result to <code>XFilter</code> interface test. All
- * the information about errors occured in XML data is written
+ * the information about errors occurred in XML data is written
* to log specified.
* @see ifc.document._XFilter
*/
@@ -200,7 +200,7 @@ public class XMLStylesExporter extends TestCase {
* which returns the result of XML checking.
* @return <code>true</code> if the XML data exported was
* valid (i.e. all necessary tags and character data exists),
- * <code>false</code> if some errors occured.
+ * <code>false</code> if some errors occurred.
*/
public boolean checkFilter() {
return check();
diff --git a/qadevOOo/tests/java/mod/_xmloff/Impress/XMLContentExporter.java b/qadevOOo/tests/java/mod/_xmloff/Impress/XMLContentExporter.java
index 81e9e781739c..d1f52b4aa84b 100644
--- a/qadevOOo/tests/java/mod/_xmloff/Impress/XMLContentExporter.java
+++ b/qadevOOo/tests/java/mod/_xmloff/Impress/XMLContentExporter.java
@@ -175,7 +175,7 @@ public class XMLContentExporter extends TestCase {
/**
* This class checks the XML for tags and data required and returns
* checking result to <code>XFilter</code> interface test. All
- * the information about errors occured in XML data is written
+ * the information about errors occurred in XML data is written
* to log specified.
* @see ifc.document._XFilter
*/
@@ -194,7 +194,7 @@ public class XMLContentExporter extends TestCase {
* which returns the result of XML checking.
* @return <code>true</code> if the XML data exported was
* valid (i.e. all necessary tags and character data exists),
- * <code>false</code> if some errors occured.
+ * <code>false</code> if some errors occurred.
*/
public boolean checkFilter() {
return check() ;
diff --git a/qadevOOo/tests/java/mod/_xmloff/Impress/XMLContentImporter.java b/qadevOOo/tests/java/mod/_xmloff/Impress/XMLContentImporter.java
index ad55956c6da6..4f0ba34c7033 100644
--- a/qadevOOo/tests/java/mod/_xmloff/Impress/XMLContentImporter.java
+++ b/qadevOOo/tests/java/mod/_xmloff/Impress/XMLContentImporter.java
@@ -204,7 +204,7 @@ public class XMLContentImporter extends TestCase {
logF.println("Page name returned = '" + gName + "'") ;
return impPageName.equals(gName) ;
} catch (com.sun.star.uno.Exception e) {
- logF.println("Exception occured while checking filter :") ;
+ logF.println("Exception occurred while checking filter :") ;
e.printStackTrace(logF) ;
return false ;
}
diff --git a/qadevOOo/tests/java/mod/_xmloff/Impress/XMLExporter.java b/qadevOOo/tests/java/mod/_xmloff/Impress/XMLExporter.java
index b8fb56112f79..7ae8fe84287d 100644
--- a/qadevOOo/tests/java/mod/_xmloff/Impress/XMLExporter.java
+++ b/qadevOOo/tests/java/mod/_xmloff/Impress/XMLExporter.java
@@ -178,7 +178,7 @@ public class XMLExporter extends TestCase {
/**
* This class checks the XML for tags and data required and returns
* checking result to <code>XFilter</code> interface test. All
- * the information about errors occured in XML data is written
+ * the information about errors occurred in XML data is written
* to log specified.
* @see ifc.document._XFilter
*/
@@ -197,7 +197,7 @@ public class XMLExporter extends TestCase {
* which returns the result of XML checking.
* @return <code>true</code> if the XML data exported was
* valid (i.e. all necessary tags and character data exists),
- * <code>false</code> if some errors occured.
+ * <code>false</code> if some errors occurred.
*/
public boolean checkFilter() {
return check();
diff --git a/qadevOOo/tests/java/mod/_xmloff/Impress/XMLMetaExporter.java b/qadevOOo/tests/java/mod/_xmloff/Impress/XMLMetaExporter.java
index 0c4694af193d..3f09eefb5dfa 100644
--- a/qadevOOo/tests/java/mod/_xmloff/Impress/XMLMetaExporter.java
+++ b/qadevOOo/tests/java/mod/_xmloff/Impress/XMLMetaExporter.java
@@ -147,7 +147,7 @@ public class XMLMetaExporter extends TestCase {
throw new StatusException("Can't create component.", e) ;
}
- // Checking tags existance and changed property value
+ // Checking tags existence and changed property value
filter.addTag(new XMLTools.Tag ("office:document-meta"));
filter.addTagEnclosed(
new XMLTools.Tag("office:meta"),
@@ -174,7 +174,7 @@ public class XMLMetaExporter extends TestCase {
/**
* This class checks the XML for tags and data required and returns
* checking result to <code>XFilter</code> interface test. All
- * the information about errors occured in XML data is written
+ * the information about errors occurred in XML data is written
* to log specified.
* @see ifc.document._XFilter
*/
@@ -193,7 +193,7 @@ public class XMLMetaExporter extends TestCase {
* which returns the result of XML checking.
* @return <code>true</code> if the XML data exported was
* valid (i.e. all necessary tags and character data exists),
- * <code>false</code> if some errors occured.
+ * <code>false</code> if some errors occurred.
*/
public boolean checkFilter() {
return check();
diff --git a/qadevOOo/tests/java/mod/_xmloff/Impress/XMLMetaImporter.java b/qadevOOo/tests/java/mod/_xmloff/Impress/XMLMetaImporter.java
index b1cb4684c35f..9d4f989fb83b 100644
--- a/qadevOOo/tests/java/mod/_xmloff/Impress/XMLMetaImporter.java
+++ b/qadevOOo/tests/java/mod/_xmloff/Impress/XMLMetaImporter.java
@@ -172,7 +172,7 @@ public class XMLMetaImporter extends TestCase {
logF.println("Title returned = '" + title + "'") ;
return impTitle.equals(title) ;
} catch (com.sun.star.uno.Exception e) {
- logF.println("Exception occured while checking filter :") ;
+ logF.println("Exception occurred while checking filter :") ;
e.printStackTrace(logF) ;
return false ;
}
diff --git a/qadevOOo/tests/java/mod/_xmloff/Impress/XMLSettingsExporter.java b/qadevOOo/tests/java/mod/_xmloff/Impress/XMLSettingsExporter.java
index 4c4d314df385..37894ba45cd9 100644
--- a/qadevOOo/tests/java/mod/_xmloff/Impress/XMLSettingsExporter.java
+++ b/qadevOOo/tests/java/mod/_xmloff/Impress/XMLSettingsExporter.java
@@ -158,7 +158,7 @@ public class XMLSettingsExporter extends TestCase {
throw new StatusException("Can't create component.", e) ;
}
- // Adding tags for checking existance of head tag and other tags
+ // Adding tags for checking existence of head tag and other tags
filter.addTagEnclosed(new XMLTools.Tag("office:settings"),
new XMLTools.Tag("office:document-settings"));
filter.addTagEnclosed(new XMLTools.Tag("config:config-item-set"),
@@ -187,7 +187,7 @@ public class XMLSettingsExporter extends TestCase {
/**
* This class checks the XML for tags and data required and returns
* checking result to <code>XFilter</code> interface test. All
- * the information about errors occured in XML data is written
+ * the information about errors occurred in XML data is written
* to log specified.
* @see ifc.document._XFilter
*/
@@ -206,7 +206,7 @@ public class XMLSettingsExporter extends TestCase {
* which returns the result of XML checking.
* @return <code>true</code> if the XML data exported was
* valid (i.e. all necessary tags and character data exists),
- * <code>false</code> if some errors occured.
+ * <code>false</code> if some errors occurred.
*/
public boolean checkFilter() {
return check();
diff --git a/qadevOOo/tests/java/mod/_xmloff/Impress/XMLStylesExporter.java b/qadevOOo/tests/java/mod/_xmloff/Impress/XMLStylesExporter.java
index 6c206cb101b1..3147d76fa3a4 100644
--- a/qadevOOo/tests/java/mod/_xmloff/Impress/XMLStylesExporter.java
+++ b/qadevOOo/tests/java/mod/_xmloff/Impress/XMLStylesExporter.java
@@ -129,7 +129,7 @@ public class XMLStylesExporter extends TestCase {
Any arg = new Any(new Type(XDocumentHandler.class),filter);
String newName = "NewGraphicsStyle" + counter++;
- // Adding tags for checking existance of head tag and property value
+ // Adding tags for checking existence of head tag and property value
filter.addTag(new XMLTools.Tag("office:document-styles"));
filter.addTag(new XMLTools.Tag("office:styles"));
filter.addTag(new XMLTools.Tag("style:style","style:name", newName));
@@ -177,7 +177,7 @@ public class XMLStylesExporter extends TestCase {
/**
* This class checks the XML for tags and data required and returns
* checking result to <code>XFilter</code> interface test. All
- * the information about errors occured in XML data is written
+ * the information about errors occurred in XML data is written
* to log specified.
* @see ifc.document._XFilter
*/
@@ -196,7 +196,7 @@ public class XMLStylesExporter extends TestCase {
* which returns the result of XML checking.
* @return <code>true</code> if the XML data exported was
* valid (i.e. all necessary tags and character data exists),
- * <code>false</code> if some errors occured.
+ * <code>false</code> if some errors occurred.
*/
public boolean checkFilter() {
return check();
diff --git a/rat-excludes b/rat-excludes
index 7224c30e5aab..0f08f1575044 100644
--- a/rat-excludes
+++ b/rat-excludes
@@ -1472,3 +1472,19 @@ main/vcl/unx/generic/fontmanager/parseAFM.hxx
main/icc/source/create_sRGB_profile/Makefile.in
+
+##############################################################################
+#
+# exclude generated files during the build, e.g. config files, environment scripts
+#
+
+main/config.log
+main/config.parms
+main/config.status
+main/configure
+main/warn
+main/autom4te.cache/*
+
+main/LinuxX86-64Env.Set*
+main/MacOSXX64Env.Set*
+main/winenv.set*
diff --git a/readlicense_oo/docs/readme/readme.xrm b/readlicense_oo/docs/readme/readme.xrm
index d2f34e8857bb..333a2f92a181 100644
--- a/readlicense_oo/docs/readme/readme.xrm
+++ b/readlicense_oo/docs/readme/readme.xrm
@@ -55,7 +55,7 @@
<div class="MAC" id="SystemRequirements_OSX">
<ul>
<li>
- <p id="macxiOSX" xml:lang="en-US">MacOSX 10.4 (Tiger) or higher</p>
+ <p id="macxiOSX" xml:lang="en-US">MacOSX 10.7 (Lion) or higher</p>
</li>
<li>
diff --git a/registry/inc/registry/reader.h b/registry/inc/registry/reader.h
index a13c359caa9d..a59c5d4fe946 100644
--- a/registry/inc/registry/reader.h
+++ b/registry/inc/registry/reader.h
@@ -60,7 +60,7 @@ extern "C" {
not be null; if the given binary blob is malformed, or of a version larger
than <code>maxVersion</code>, null is returned
- @return false iff an out-of-memory condition occured, in which case
+ @return false iff an out-of-memory condition occurred, in which case
<code>result</code> is left unchanged, and no type reader is created
@since UDK 3.2.0
@@ -318,7 +318,7 @@ void SAL_CALL typereg_reader_getFieldTypeName(
@param result an out-parameter obtaining the field value's value; must not be
null
- @return false iff an out-of-memory condition occured, in which case
+ @return false iff an out-of-memory condition occurred, in which case
<code>type</code> and <code>value</code> are left unchanged
@since UDK 3.2.0
diff --git a/registry/inc/registry/regtype.h b/registry/inc/registry/regtype.h
index d6493850e8da..8ae4d58767d5 100644
--- a/registry/inc/registry/regtype.h
+++ b/registry/inc/registry/regtype.h
@@ -71,7 +71,7 @@ enum RegKeyType
A registry key can contain a value which has one of seven different types.
Three simple types (long, ascii and unicode string) and a list type of
- these simple types. Furthermore a binary type which provides the possibilty
+ these simple types. Furthermore a binary type which provides the possibility
to define own data structures and store these types in the registry. The UNO
core reflection data is stored as a binary blob in the type registry.
*/
diff --git a/registry/inc/registry/types.h b/registry/inc/registry/types.h
index a8c6cb6c2cfd..13d746b29e79 100644
--- a/registry/inc/registry/types.h
+++ b/registry/inc/registry/types.h
@@ -265,8 +265,8 @@ enum RTMethodMode {
/** specifies the mode of a parameter.
- There are three paramter modes which have impact of the handling of the
- paramter in the UNO bridges and the UNO code generation.
+ There are three parameter modes which have impact of the handling of the
+ parameter in the UNO bridges and the UNO code generation.
*/
enum RTParamMode {
/// indicates an invalid parameter mode
diff --git a/registry/inc/registry/writer.h b/registry/inc/registry/writer.h
index d6682c59c624..da2afa9d41a0 100644
--- a/registry/inc/registry/writer.h
+++ b/registry/inc/registry/writer.h
@@ -94,7 +94,7 @@ void SAL_CALL typereg_writer_destroy(void * handle) SAL_THROW_EXTERN_C();
@param typeName the super type name; must not be null
- @return false iff an out-of-memory condition ocurred, in which case the type
+ @return false iff an out-of-memory condition occurred, in which case the type
writer is not modified
@since UDK 3.2.0
@@ -124,7 +124,7 @@ sal_Bool SAL_CALL typereg_writer_setSuperTypeName(
@param valueValue the value of the value of the field
- @return false iff an out-of-memory condition ocurred, in which case the type
+ @return false iff an out-of-memory condition occurred, in which case the type
writer is not modified
@since UDK 3.2.0
@@ -155,7 +155,7 @@ sal_Bool SAL_CALL typereg_writer_setFieldData(
@param exceptionCount the number of exceptions of the method
- @return false iff an out-of-memory condition ocurred, in which case the type
+ @return false iff an out-of-memory condition occurred, in which case the type
writer is not modified
@since UDK 3.2.0
@@ -184,7 +184,7 @@ sal_Bool SAL_CALL typereg_writer_setMethodData(
@param typeName the type name of the parameter; must not be null
- @return false iff an out-of-memory condition ocurred, in which case the type
+ @return false iff an out-of-memory condition occurred, in which case the type
writer is not modified
@since UDK 3.2.0
@@ -207,7 +207,7 @@ sal_Bool SAL_CALL typereg_writer_setMethodParameterData(
@param typeName the exception type name; must not be null
- @return false iff an out-of-memory condition ocurred, in which case the type
+ @return false iff an out-of-memory condition occurred, in which case the type
writer is not modified
@since UDK 3.2.0
@@ -233,7 +233,7 @@ sal_Bool SAL_CALL typereg_writer_setMethodExceptionTypeName(
@param typeName the type name of the reference; must not be null
- @return false iff an out-of-memory condition ocurred, in which case the type
+ @return false iff an out-of-memory condition occurred, in which case the type
writer is not modified
@since UDK 3.2.0
diff --git a/registry/tools/regcompare.cxx b/registry/tools/regcompare.cxx
index e4eb09706791..6536df1d4a6f 100644
--- a/registry/tools/regcompare.cxx
+++ b/registry/tools/regcompare.cxx
@@ -127,7 +127,7 @@ void Options_Impl::printUsage_Impl() const
" -c|C = make a complete check, that means any differences will be\n"
" detected. Default is only a compatibility check that means\n"
" only UNO typelibrary entries will be checked.\n"
- " -t|T = make an UNO type compatiblity check. This means that registry 2\n"
+ " -t|T = make an UNO type compatibility check. This means that registry 2\n"
" will be checked against registry 1. If a interface in r2 contains\n"
" more methods or the methods are in a different order as in r1, r2 is\n"
" incompatible to r1. But if a service in r2 supports more properties as\n"
diff --git a/reportbuilder/java/com/sun/star/report/makefile.mk b/reportbuilder/java/com/sun/star/report/makefile.mk
index b33a0c0e3ab0..c90224e9f69f 100644
--- a/reportbuilder/java/com/sun/star/report/makefile.mk
+++ b/reportbuilder/java/com/sun/star/report/makefile.mk
@@ -34,7 +34,7 @@ JARFILES = ridl.jar unoil.jar jurt.jar juh.jar java_uno.jar
.IF "$(SYSTEM_APACHE_COMMONS)" == "YES"
EXTRAJARFILES = $(COMMONS_LOGGING_JAR)
.ELSE
-JARFILES += commons-logging-1.1.1.jar
+JARFILES += commons-logging-1.1.3.jar
.ENDIF
JAVAFILES := DataRow.java\
diff --git a/reportbuilder/java/com/sun/star/report/pentaho/Manifest.mf b/reportbuilder/java/com/sun/star/report/pentaho/Manifest.mf
index 5d27005f2d65..7875e1b506fb 100644
--- a/reportbuilder/java/com/sun/star/report/pentaho/Manifest.mf
+++ b/reportbuilder/java/com/sun/star/report/pentaho/Manifest.mf
@@ -3,5 +3,5 @@ Class-Path: reportbuilderwizard.jar
flute-1.1.6.jar libserializer-1.1.6.jar libbase-1.1.6.jar
libfonts-1.1.6.jar libformula-1.1.7.jar liblayout-0.2.10.jar
libloader-1.1.6.jar librepository-1.1.6.jar libxml-1.1.7.jar
- flow-engine-0.9.4.jar sac.jar commons-logging-1.1.1.jar
+ flow-engine-0.9.4.jar sac.jar commons-logging-1.1.3.jar
UNO-Type-Path:
diff --git a/reportbuilder/java/com/sun/star/report/pentaho/makefile.mk b/reportbuilder/java/com/sun/star/report/pentaho/makefile.mk
index 21c0bc3d0410..fb3aae895bd5 100644
--- a/reportbuilder/java/com/sun/star/report/pentaho/makefile.mk
+++ b/reportbuilder/java/com/sun/star/report/pentaho/makefile.mk
@@ -53,7 +53,7 @@ JARFILES += \
.IF "$(SYSTEM_APACHE_COMMONS)" == "YES"
EXTRAJARFILES += $(COMMONS_LOGGING_JAR)
.ELSE
-JARFILES += commons-logging-1.1.1.jar
+JARFILES += commons-logging-1.1.3.jar
.ENDIF
.IF "$(SYSTEM_JFREEREPORT)" == "YES" || "$(SYSTEM_APACHE_COMMONS)" == "YES"
@@ -69,7 +69,7 @@ JAVAFILES := $(shell @$(FIND) . -name "*.java")
PROPERTYFILES := $(CLASSDIR)$/$(PACKAGE)$/configuration.properties \
$(CLASSDIR)$/$(PACKAGE)$/module.properties \
$(CLASSDIR)$/$(PACKAGE)$/parser$/selectors.properties
-
+
# CSSFILES := $(subst,./,$(CLASSDIR)$/$(PACKAGE)$/ $(shell @$(FIND) . -name "*.css"))
CSSFILES := $(CLASSDIR)$/$(PACKAGE)$/oasis-datastyle.css\
$(CLASSDIR)$/$(PACKAGE)$/oasis-draw.css\
@@ -86,12 +86,12 @@ CSSFILES := $(CLASSDIR)$/$(PACKAGE)$/oasis-datastyle.css\
XSDFILES := $(CLASSDIR)$/$(PACKAGE)$/parser$/rpt-schema-v1.0-os.xsd \
$(CLASSDIR)$/$(PACKAGE)$/styles$/stylemapper.xsd
-
+
XMLFILES := $(CLASSDIR)$/$(PACKAGE)$/styles$/stylemapper.xml
-
+
TXTFILES := $(CLASSDIR)$/$(PACKAGE)$/parser$/style-mapping.txt
-
+
#----- make a jar from compiled files ------------------------------
JARCLASSDIRS = .
@@ -137,7 +137,7 @@ $(CLASSDIR)$/$(PACKAGE)$/%.css : %.css
$(CLASSDIR)$/$(PACKAGE)$/%.xsd : %.xsd
@@-$(MKDIRHIER) $(@:d)
$(COPY) $< $@
-
+
$(CLASSDIR)$/$(PACKAGE)$/%.xml : %.xml
@@-$(MKDIRHIER) $(@:d)
$(COPY) $< $@
diff --git a/reportbuilder/util/makefile.mk b/reportbuilder/util/makefile.mk
index 41cf3bcf5acf..b31ede732895 100644
--- a/reportbuilder/util/makefile.mk
+++ b/reportbuilder/util/makefile.mk
@@ -71,7 +71,7 @@ COMPONENT_MERGED_XCU= \
COMPONENT_OTR_FILES= \
$(EXTENSIONDIR)$/template$/en-US$/wizard$/report$/default.otr
-
+
COMPONENT_IMAGES= \
$(EXTENSIONDIR)$/images$/extension_32.png \
$(EXTENSIONDIR)$/images$/extension_32_h.png
@@ -107,7 +107,7 @@ COMPONENT_EXTJARFILES += \
.ENDIF
.IF "$(SYSTEM_APACHE_COMMONS)" != "YES"
COMPONENT_EXTJARFILES += \
- $(EXTENSIONDIR)$/commons-logging-1.1.1.jar
+ $(EXTENSIONDIR)$/commons-logging-1.1.3.jar
.ENDIF
COMPONENT_MANIFEST_GENERIC:=TRUE
diff --git a/rhino/rhino1_7R3.patch b/rhino/rhino1_7R3.patch
index d8557737ca47..b0a4f807f79f 100644
--- a/rhino/rhino1_7R3.patch
+++ b/rhino/rhino1_7R3.patch
@@ -721,7 +721,7 @@ Index: toolsrc/org/mozilla/javascript/tools/debugger/OfficeScriptInfo.java
+ if ( info.closeCallback != null )
+ {
+ System.out.println("** In removeSFScriptInfo have callback for " + key );
-+ info.closeCallback.run(); // really need to do this in seperate thread????
++ info.closeCallback.run(); // really need to do this in separate thread????
+ }
+ }
+ }
diff --git a/ridljar/com/sun/star/lib/util/WeakMap.java b/ridljar/com/sun/star/lib/util/WeakMap.java
index f110951982f2..77a514197efd 100644
--- a/ridljar/com/sun/star/lib/util/WeakMap.java
+++ b/ridljar/com/sun/star/lib/util/WeakMap.java
@@ -44,7 +44,7 @@ import java.util.Set;
*
* <p>Unlike other map implementations, <code>WeakMap</code> is asymmetric in
* that <code>put</code> expects the given value to be a plain object that is
- * then wrapped in a <code>WeakReference</code>, while the occurences of values
+ * then wrapped in a <code>WeakReference</code>, while the occurrences of values
* in all other methods (<code>containsValue</code>, <code>entrySet</code>,
* <code>equals</code>, <code>get</code>, <code>hashCode</code>,
* <code>remove</code>, <code>values</code>, and also the return value of
diff --git a/ridljar/com/sun/star/uno/IMethodDescription.java b/ridljar/com/sun/star/uno/IMethodDescription.java
index e9f7f905c9db..f712556c8ad9 100644
--- a/ridljar/com/sun/star/uno/IMethodDescription.java
+++ b/ridljar/com/sun/star/uno/IMethodDescription.java
@@ -38,7 +38,7 @@ import java.lang.reflect.Method;
public interface IMethodDescription extends IMemberDescription {
/**
* Indicates if this method is <code>oneWay</code>,
- * respectivly if this method may become executed asynchronously.
+ * respectively if this method may become executed asynchronously.
* <p>
* @return true means may execute asynchronously .
*/
diff --git a/ridljar/com/sun/star/uno/ITypeDescription.java b/ridljar/com/sun/star/uno/ITypeDescription.java
index f5b6adbcb131..87883edbafe3 100644
--- a/ridljar/com/sun/star/uno/ITypeDescription.java
+++ b/ridljar/com/sun/star/uno/ITypeDescription.java
@@ -154,7 +154,7 @@ public interface ITypeDescription {
* names <var>M<sub>1</sub></var>, ..., <var>M<sub>n</sub></var> followed by
* a simple name <var>S</var>, the corresponding type name consists of the
* same sequence of module names and simple name, with <code>"."</code>
- * seperating the individual elements.</p>
+ * separating the individual elements.</p>
*
* @return the type name.
*/
diff --git a/ridljar/com/sun/star/uno/Type.java b/ridljar/com/sun/star/uno/Type.java
index 993cee5f5201..f3a55f44096d 100644
--- a/ridljar/com/sun/star/uno/Type.java
+++ b/ridljar/com/sun/star/uno/Type.java
@@ -46,7 +46,7 @@ import java.util.HashMap;
public class Type {
// The following private static members and static initializer must come
// first in the class definition, so that the class can be initialized
- // sucessfully:
+ // successfully:
private static final String TYPE_NAME_VOID = "void";
private static final String TYPE_NAME_BOOLEAN = "boolean";
diff --git a/rsc/inc/rscrsc.hxx b/rsc/inc/rscrsc.hxx
index 9d329d0311b8..e514b2ef00dc 100644
--- a/rsc/inc/rscrsc.hxx
+++ b/rsc/inc/rscrsc.hxx
@@ -70,7 +70,7 @@ public:
ByteString aLangName; // language name
ByteString aOutputRc; // target file
ByteString aLangSearchPath; // language specific search path
- ::std::list< ByteString > aSysSearchDirs; // pathes to search for images
+ ::std::list< ByteString > aSysSearchDirs; // paths to search for images
OutputFile() {}
};
diff --git a/rsc/source/parser/erscerr.cxx b/rsc/source/parser/erscerr.cxx
index 58f6c629851e..4ac384bd5ab5 100644
--- a/rsc/source/parser/erscerr.cxx
+++ b/rsc/source/parser/erscerr.cxx
@@ -220,7 +220,7 @@ void RscError::WriteError( const ERRTYPE& rError, const char * pMessage )
StdLstOut( "-rsc2=<filename> Specify the location for rsc2.\n" );
StdLstOut( "No longer existent: -rc<filename> Use a different system resource compiler.\n" );
StdLstOut( "-fs=<filename> Name of the .res file.\n" );
- StdLstOut( "-lip=<path> additional search path for system dependant files\n" );
+ StdLstOut( "-lip=<path> additional search path for system dependent files\n" );
StdLstOut( "-fp=<filename> Renaming of the .srs file.\n" );
StdLstOut( "-fl=<filename> Listing file.\n" );
StdLstOut( "-fh=<filename> Header file.\n" );
diff --git a/rsc/source/rscpp/cpp1.c b/rsc/source/rscpp/cpp1.c
index 7a5f3a18c570..eecfa273f423 100644
--- a/rsc/source/rscpp/cpp1.c
+++ b/rsc/source/rscpp/cpp1.c
@@ -120,7 +120,7 @@ char *workp; /* Work buffer pointer */
* the output from cpp is to be passed to lint (which uses commands
* embedded in comments). cflag contains the permanent state of the
* -C flag. keepcomments is always falsified when processing #control
- * commands and when compilation is supressed by a false #if
+ * commands and when compilation is suppressed by a false #if
*
* If eflag is set, CPP returns "success" even if non-fatal errors
* were detected.
@@ -157,7 +157,7 @@ char **incend = incdir; /* -> free space in incdir[] */
* This is the table used to predefine target machine and operating
* system designators. It may need hacking for specific circumstances.
* Note: it is not clear that this is part of the Ansi Standard.
- * The -N option supresses preset definitions.
+ * The -N option suppresses preset definitions.
*/
char *preset[] = { /* names defined at cpp start */
#ifdef MACHINE
diff --git a/rsc/source/rscpp/cpp2.c b/rsc/source/rscpp/cpp2.c
index 8e8554c78af4..b92d361a3722 100644
--- a/rsc/source/rscpp/cpp2.c
+++ b/rsc/source/rscpp/cpp2.c
@@ -320,8 +320,8 @@ void doif(int hash)
* while #if needs a subroutine of its own to evaluate the expression.
*
* doif() is called only if compiling is TRUE. If false, compilation
- * is always supressed, so we don't need to evaluate anything. This
- * supresses unnecessary warnings.
+ * is always suppressed, so we don't need to evaluate anything. This
+ * suppresses unnecessary warnings.
*/
{
register int c;
diff --git a/rsc/source/rscpp/cpp3.c b/rsc/source/rscpp/cpp3.c
index 1d3bb738c3e7..29e970c478a0 100644
--- a/rsc/source/rscpp/cpp3.c
+++ b/rsc/source/rscpp/cpp3.c
@@ -454,7 +454,7 @@ void initdefines()
* #define __FILE__ ?? (dynamic, evaluated by magic)
* Called only on cpp startup.
*
- * Note: the built-in static definitions are supressed by the -N option.
+ * Note: the built-in static definitions are suppressed by the -N option.
* __LINE__, __FILE__, and __DATE__ are always present.
*/
{
@@ -570,7 +570,7 @@ char **argv;
break; /* Exit case statement */
perror(ap); /* Error, can't append */
exit(errno); /* After access test */
- } /* If file accessable */
+ } /* If file accessible */
}
/*
* On vms, we want to create the file using "standard"
diff --git a/rsc/source/rscpp/cpp5.c b/rsc/source/rscpp/cpp5.c
index c59aea20eeb1..41f42ebf0dfb 100644
--- a/rsc/source/rscpp/cpp5.c
+++ b/rsc/source/rscpp/cpp5.c
@@ -49,7 +49,7 @@ static char *opname[] = { /* For debug and error messages */
* 10 The new value of the binop flag.
* Note: Expected, New binop
* constant 0 1 Binop, end, or ) should follow constants
- * End of line 1 0 End may not be preceeded by an operator
+ * End of line 1 0 End may not be preceded by an operator
* binary 1 0 Binary op follows a value, value follows.
* unary 0 0 Unary op doesn't follow a value, value follows
* ( 0 0 Doesn't follow value, value or unop follows
@@ -218,7 +218,7 @@ eval()
* evaleval Evaluate the current operator, given the values on
* the value stack. Returns a pointer to the (new)
* value stack.
- * For compatiblity with older cpp's, this return returns 1 (TRUE)
+ * For compatibility with older cpp's, this return returns 1 (TRUE)
* if a syntax error is detected.
*/
{
diff --git a/sal/inc/osl/conditn.h b/sal/inc/osl/conditn.h
index 0e130c60e9ef..0b2184c5467c 100644
--- a/sal/inc/osl/conditn.h
+++ b/sal/inc/osl/conditn.h
@@ -35,7 +35,7 @@ typedef void* oslCondition;
typedef enum {
osl_cond_result_ok, /* successful completion */
- osl_cond_result_error, /* error occured, check osl_getLastSocketError() for details */
+ osl_cond_result_error, /* error occurred, check osl_getLastSocketError() for details */
osl_cond_result_timeout, /* blocking operation timed out */
osl_cond_result_FORCE_EQUAL_SIZE = SAL_MAX_ENUM
} oslConditionResult;
diff --git a/sal/inc/osl/diagnose.hxx b/sal/inc/osl/diagnose.hxx
index 9d887aafd9c9..5cab37981afc 100644
--- a/sal/inc/osl/diagnose.hxx
+++ b/sal/inc/osl/diagnose.hxx
@@ -23,21 +23,10 @@
#if ! defined(OSL_DIAGNOSE_HXX_INCLUDED)
#define OSL_DIAGNOSE_HXX_INCLUDED
-#if ! defined(_OSL_DIAGNOSE_H_)
#include "osl/diagnose.h"
-#endif
-#if ! defined(_OSL_INTERLOCK_H_)
#include "osl/interlck.h"
-#endif
-#if ! defined(_OSL_MUTEX_HXX_)
#include "osl/mutex.hxx"
-#endif
-#if ! defined(INCLUDED_RTL_ALLOCATOR_HXX)
-#include "rtl/allocator.hxx"
-#endif
-#if ! defined(_RTL_INSTANCE_HXX_)
#include "rtl/instance.hxx"
-#endif
#include <hash_set>
#include <functional>
#include <typeinfo>
@@ -91,8 +80,7 @@ struct VoidPtrHash : ::std::unary_function<void const*, ::std::size_t> {
}
};
-typedef ::std::hash_set<void const*, VoidPtrHash, ::std::equal_to<void const*>,
- ::rtl::Allocator<void const*> > VoidPointerSet;
+typedef ::std::hash_set<void const*, VoidPtrHash, ::std::equal_to<void const*> > VoidPointerSet;
struct ObjectRegistryData {
ObjectRegistryData( ::std::type_info const& rTypeInfo )
diff --git a/sal/inc/osl/endian.h b/sal/inc/osl/endian.h
index 476fd6eb93a3..27e678a2a624 100644
--- a/sal/inc/osl/endian.h
+++ b/sal/inc/osl/endian.h
@@ -157,7 +157,7 @@ extern "C" {
#elif defined _BIG_ENDIAN
# define OSL_BIGENDIAN
#else
-# error undetermined endianess
+# error undetermined endianness
#endif
diff --git a/sal/inc/osl/file.h b/sal/inc/osl/file.h
index be5add4fcb8f..3e0c74be4ac1 100644
--- a/sal/inc/osl/file.h
+++ b/sal/inc/osl/file.h
@@ -57,7 +57,7 @@ contain only ASCII characters<p>
case preserving or not. The operating system implementation itself should
determine if it can map case-insensitive paths. The case correct notation of
a filename or file path is part of the "File Info". This case correct name
-can be used as a unique key if neccessary.<p>
+can be used as a unique key if necessary.<p>
4. Obtaining information about files or volumes is controlled by a
bitmask which specifies which fields are of interest. Due to performance
@@ -336,7 +336,7 @@ typedef enum {
#define osl_File_Attribute_OthRead 0x00001000
#define osl_File_Attribute_OthExe 0x00002000
-/* Flags specifying which fields to retreive by osl_getFileStatus */
+/* Flags specifying which fields to retrieve by osl_getFileStatus */
#define osl_FileStatus_Mask_Type 0x00000001
#define osl_FileStatus_Mask_Attributes 0x00000002
@@ -557,7 +557,7 @@ oslFileError SAL_CALL osl_getVolumeDeviceMountPath( oslVolumeDeviceHandle Handle
#define osl_Volume_Attribute_Case_Is_Preserved 0x00000040L
#define osl_Volume_Attribute_Case_Sensitive 0x00000080L
-/* Flags specifying which fields to retreive by osl_getVolumeInfo */
+/* Flags specifying which fields to retrieve by osl_getVolumeInfo */
#define osl_VolumeInfo_Mask_Attributes 0x00000001L
#define osl_VolumeInfo_Mask_TotalSpace 0x00000002L
@@ -584,7 +584,7 @@ struct _oslVolumeInfo {
sal_uInt32 uValidFields;
/** Attributes of the volume (remote and/or removable) */
sal_uInt32 uAttributes;
-/** Total availiable space on the volume for the current process/user */
+/** Total available space on the volume for the current process/user */
sal_uInt64 uTotalSpace;
/** Used space on the volume for the current process/user */
sal_uInt64 uUsedSpace;
diff --git a/sal/inc/osl/file.hxx b/sal/inc/osl/file.hxx
index bd9c9f04b05d..ff745c7c5321 100644
--- a/sal/inc/osl/file.hxx
+++ b/sal/inc/osl/file.hxx
@@ -476,7 +476,7 @@ public:
/** Constructor.
@param nMask
- Set of flaggs decribing the demanded information.
+ Set of flaggs describing the demanded information.
*/
VolumeInfo( sal_uInt32 nMask ): _nMask( nMask )
@@ -750,7 +750,7 @@ public:
/** Constructor.
@param nMask
- Set of flaggs decribing the demanded information.
+ Set of flaggs describing the demanded information.
*/
FileStatus( sal_uInt32 nMask ): _nMask( nMask )
diff --git a/sal/inc/osl/pipe_decl.hxx b/sal/inc/osl/pipe_decl.hxx
index 55698bedef5f..3310867bca27 100644
--- a/sal/inc/osl/pipe_decl.hxx
+++ b/sal/inc/osl/pipe_decl.hxx
@@ -128,9 +128,9 @@ public:
inline oslPipeError SAL_CALL accept(StreamPipe& Connection);
- /** Delivers a constant decribing the last error for the pipe system.
- @return ENONE if no error occured, invalid_PipeError if
- an unknown (unmapped) error occured, otherwise an enum describing the
+ /** Delivers a constant describing the last error for the pipe system.
+ @return ENONE if no error occurred, invalid_PipeError if
+ an unknown (unmapped) error occurred, otherwise an enum describing the
error.
*/
inline oslPipeError SAL_CALL getError() const;
@@ -203,7 +203,7 @@ public:
@param pBuffer [in] Points to a buffer that contains the send-data.
@param BytesToSend [in] The number of bytes to send. pBuffer must have at least
this size.
- @return the number of transfered bytes.
+ @return the number of transferred bytes.
*/
inline sal_Int32 SAL_CALL send(const void* pBuffer, sal_Int32 BytesToSend) const;
diff --git a/sal/inc/osl/process.h b/sal/inc/osl/process.h
index c5eed8216e54..c4783648b569 100644
--- a/sal/inc/osl/process.h
+++ b/sal/inc/osl/process.h
@@ -64,7 +64,7 @@ typedef sal_uInt32 oslProcessExitCode;
typedef enum {
osl_Process_E_None, /* no error */
osl_Process_E_NotFound, /* image not found */
- osl_Process_E_TimedOut, /* timout occured */
+ osl_Process_E_TimedOut, /* timout occurred */
osl_Process_E_NoPermission, /* permission denied */
osl_Process_E_Unknown, /* unknown error */
osl_Process_E_InvalidError, /* unmapped error */
@@ -138,7 +138,7 @@ typedef void* oslProcess;
the process will be started in the context of the current user.
@param ustrDirectory
- [in] The file URL of the working directory of the new proces. If the specified directory
+ [in] The file URL of the working directory of the new process. If the specified directory
does not exist or is inaccessible the working directory of the newly created process
is undefined. If this parameter is NULL or the caller provides an empty string the
new process will have the same current working directory as the calling process.
@@ -153,7 +153,7 @@ typedef void* oslProcess;
[in] The number of environment variables to set.
@param pProcess
- [out] Pointer to a oslProcess variable, wich receives the handle of the newly created process.
+ [out] Pointer to a oslProcess variable, which receives the handle of the newly created process.
This parameter must not be NULL.
@return
@@ -208,7 +208,7 @@ oslProcessError SAL_CALL osl_executeProcess(
the process will be started in the context of the current user.
@param ustrDirectory
- [in] The file URL of the working directory of the new proces. If the specified directory
+ [in] The file URL of the working directory of the new process. If the specified directory
does not exist or is inaccessible the working directory of the newly created process
is undefined. If this parameter is NULL or the caller provides an empty string the
new process will have the same current working directory as the calling process.
@@ -223,7 +223,7 @@ oslProcessError SAL_CALL osl_executeProcess(
[in] The number of environment variables to set.
@param pProcess
- [out] Pointer to a oslProcess variable, wich receives the handle of the newly created process.
+ [out] Pointer to a oslProcess variable, which receives the handle of the newly created process.
This parameter must not be NULL.
@param pChildInputWrite
@@ -318,7 +318,7 @@ oslProcessError SAL_CALL osl_joinProcess(oslProcess Process);
@return
osl_Process_E_None on success
osl_Process_E_TimedOut waiting for the child process timed out
- osl_Process_E_Unknown an error occured or the parameter are invalid
+ osl_Process_E_Unknown an error occurred or the parameter are invalid
@see osl_executeProcess
*/
@@ -378,13 +378,13 @@ oslProcessError SAL_CALL osl_getCommandArg(sal_uInt32 nArg, rtl_uString **strCom
*/
void SAL_CALL osl_setCommandArgs (int argc, char **argv);
-/** Get the value of one enviroment variable.
+/** Get the value of one environment variable.
@param strVar [in] denotes the name of the variable to get.
@param strValue [out] string that receives the value of environment variable.
*/
oslProcessError SAL_CALL osl_getEnvironment(rtl_uString *strVar, rtl_uString **strValue);
-/** Set the value of one enviroment variable.
+/** Set the value of one environment variable.
@param strVar [in] denotes the name of the variable to set.
@param strValue [in] string of the new value of environment variable.
@@ -392,7 +392,7 @@ oslProcessError SAL_CALL osl_getEnvironment(rtl_uString *strVar, rtl_uString **s
*/
oslProcessError SAL_CALL osl_setEnvironment(rtl_uString *strVar, rtl_uString *strValue);
-/** Unsets the value of one enviroment variable.
+/** Unsets the value of one environment variable.
@param strVar [in] denotes the name of the variable to unset.
@since UDK 3.2.13
diff --git a/sal/inc/osl/security.h b/sal/inc/osl/security.h
index d2d9b47c8326..5eed5e7a0808 100644
--- a/sal/inc/osl/security.h
+++ b/sal/inc/osl/security.h
@@ -74,7 +74,7 @@ oslSecurityError SAL_CALL osl_loginUser(
the maped drive on this server.
@param strUserName [in] denotes the name of the user to logg in.
@param strPasswd [in] the password for this user.
- @param strFileServer [in] denotes the file server on wich the user is logged in.
+ @param strFileServer [in] denotes the file server on which the user is logged in.
@param pSecurity [out] returns the security handle if user could be logged in.
@return osl_Security_E_None if user could be logged in, otherwise an error-code.
@see osl_freeSecurityHandle
diff --git a/sal/inc/osl/semaphor.h b/sal/inc/osl/semaphor.h
index d3e1159ce405..1a81751a7de1 100644
--- a/sal/inc/osl/semaphor.h
+++ b/sal/inc/osl/semaphor.h
@@ -39,7 +39,7 @@ typedef void* oslSemaphore;
@param InitialCount denotes the starting value the semaphore. If you set it to
zero, the first acquire() blocks. Otherwise InitialCount acquire()s are
- immedeatly successfull.
+ immedeatly successful.
@return 0 if the semaphore could not be created, otherwise a handle to the sem.
*/
oslSemaphore SAL_CALL osl_createSemaphore(sal_uInt32 initialCount);
diff --git a/sal/inc/osl/semaphor.hxx b/sal/inc/osl/semaphor.hxx
index 9ae6dca14178..be548815ea21 100644
--- a/sal/inc/osl/semaphor.hxx
+++ b/sal/inc/osl/semaphor.hxx
@@ -43,7 +43,7 @@ namespace osl
/** Creates a semaphore.<BR>
@param InitialCount denotes the starting value the semaphore. If you set it to
zero, the first acquire() blocks. Otherwise InitialCount acquire()s are
- immedeatly successfull.
+ immediately successful.
@return 0 if the semaphore could not be created, otherwise a handle to the sem.
*/
diff --git a/sal/inc/osl/socket.h b/sal/inc/osl/socket.h
index 175688dcec5c..28db6c76b5e2 100644
--- a/sal/inc/osl/socket.h
+++ b/sal/inc/osl/socket.h
@@ -190,7 +190,7 @@ typedef enum {
*/
typedef enum {
osl_Socket_Ok, /* successful completion */
- osl_Socket_Error, /* error occured, check osl_getLastSocketError() for details */
+ osl_Socket_Error, /* error occurred, check osl_getLastSocketError() for details */
osl_Socket_TimedOut, /* blocking operation timed out */
osl_Socket_Interrupted, /* blocking operation was interrupted */
osl_Socket_InProgress, /* nonblocking operation is in progress */
@@ -545,7 +545,7 @@ sal_Int32 SAL_CALL osl_receiveFromSocket(oslSocket Socket,
<li><code>osl_Socket_MsgMaxIOVLen</code>
</ul>
- @return the number of transfered bytes.
+ @return the number of transferred bytes.
*/
sal_Int32 SAL_CALL osl_sendSocket(oslSocket Socket,
const void* pBuffer,
@@ -575,7 +575,7 @@ sal_Int32 SAL_CALL osl_sendSocket(oslSocket Socket,
<li><code>osl_Socket_MsgMaxIOVLen</code>
</ul>
- @return the number of transfered bytes.
+ @return the number of transferred bytes.
*/
sal_Int32 SAL_CALL osl_sendToSocket(oslSocket Socket,
oslSocketAddr ReceiverAddr,
@@ -589,7 +589,7 @@ sal_Int32 SAL_CALL osl_sendToSocket(oslSocket Socket,
how long the operation will block if the Socket is not ready.
@return <code>sal_True</code> if read operations (recv, recvFrom, accept) on the Socket
- will NOT block; <code>sal_False</code> if it would block or if an error occured.
+ will NOT block; <code>sal_False</code> if it would block or if an error occurred.
@param Socket the Socket to perfom the operation on.
@param pTimeout if NULL, the operation will block without a timeout.
@@ -600,7 +600,7 @@ sal_Bool SAL_CALL osl_isReceiveReady(oslSocket Socket, const TimeValue* pTimeout
You can specify a timeout-value in seconds/microseconds that denotes
how long the operation will block if the Socket is not ready.
@return <code>sal_True</code> if send operations (send, sendTo) on the Socket
- will NOT block; <code>sal_False</code> if it would block or if an error occured.
+ will NOT block; <code>sal_False</code> if it would block or if an error occurred.
@param Socket the Socket to perfom the operation on.
@param pTimeout if NULL, the operation will block without a timeout. Otherwise
@@ -612,7 +612,7 @@ sal_Bool SAL_CALL osl_isSendReady(oslSocket Socket, const TimeValue* pTimeout);
You can specify a timeout-value in seconds/microseconds that denotes
how long the operation will block if the Socket has no pending OOB data.
@return <code>sal_True</code> if OOB-request operations (recv with appropriate flags)
- on the Socket will NOT block; <code>sal_False</code> if it would block or if an error occured.
+ on the Socket will NOT block; <code>sal_False</code> if it would block or if an error occurred.
@param Socket the Socket to perfom the operation on.
@param pTimeout if NULL, the operation will block without a timeout.
@@ -700,7 +700,7 @@ sal_Bool SAL_CALL osl_shutdownSocket(oslSocket Socket,
<li><code>osl_Socket_OptionTcpNoDelay</code><br>
Disables the Nagle algorithm for send coalescing. (Do not
- collect data until a packet is full, instead send immediatly.
+ collect data until a packet is full, instead send immediately.
This increases network traffic but might improve latency-times.)
1 = disables the algorithm, 0 = keeps it enabled.
</ul>
@@ -712,7 +712,7 @@ sal_Bool SAL_CALL osl_shutdownSocket(oslSocket Socket,
@param BufferSize contains the length of the Buffer.
- @return -1 if an error occured or else the size of the data copied into
+ @return -1 if an error occurred or else the size of the data copied into
pBuffer.
@see osl_setSocketOption()
*/
@@ -773,7 +773,7 @@ sal_Bool SAL_CALL osl_isNonBlockingMode(oslSocket Socket);
<li> osl_Socket_TypeRaw
<li> osl_Socket_TypeRdm
<li> osl_Socket_TypeSeqPacket
- <li> osl_invalid_SocketType, if an error occured
+ <li> osl_invalid_SocketType, if an error occurred
</ul>
*/
@@ -784,10 +784,10 @@ oslSocketType SAL_CALL osl_getSocketType(oslSocket Socket);
*/
void SAL_CALL osl_getLastSocketErrorDescription(oslSocket Socket, rtl_uString **strError);
-/** returns a constant decribing the last error for the socket system.
- @return <code>osl_Socket_E_NONE</code> if no error occured,
+/** returns a constant describing the last error for the socket system.
+ @return <code>osl_Socket_E_NONE</code> if no error occurred,
<code>osl_invalid_SocketError</code> if an unknown (unmapped)
- error occured, otherwise an enum describing the error.
+ error occurred, otherwise an enum describing the error.
*/
oslSocketError SAL_CALL osl_getLastSocketError(oslSocket Socket);
diff --git a/sal/inc/osl/socket_decl.hxx b/sal/inc/osl/socket_decl.hxx
index 4830590d90b9..136e61925f61 100644
--- a/sal/inc/osl/socket_decl.hxx
+++ b/sal/inc/osl/socket_decl.hxx
@@ -272,7 +272,7 @@ namespace osl
You can specify a timeout-value in seconds/nanoseconds that denotes
how the operation will block if the Socket is not ready.
@return <code>sal_True</code> if read operations (recv, recvFrom, accept) on the Socket
- will NOT block; <code>sal_False</code> if it would block or if an error occured.
+ will NOT block; <code>sal_False</code> if it would block or if an error occurred.
@param pTimeout if 0, the operation will block without a timeout. Otherwise
the specified amout of time.
@@ -284,7 +284,7 @@ namespace osl
You can specify a timeout-value in seconds/nanoseconds that denotes
how the operation will block if the Socket is not ready.
@return <code>sal_True</code> if send operations (send, sendTo) on the Socket
- will NOT block; <code>sal_False</code> if it would block or if an error occured.
+ will NOT block; <code>sal_False</code> if it would block or if an error occurred.
@param pTimeout if 0, the operation will block without a timeout. Otherwise
the specified amout of time.
@@ -299,7 +299,7 @@ namespace osl
@return <code>sal_True</code> if OOB-request operations (recv with appropriate flags)
on the Socket will NOT block; <code>sal_False</code> if it would block or if
- an error occured.
+ an error occurred.
@param pTimeout if 0, the operation will block without a timeout. Otherwise
the specified amout of time.
@@ -315,7 +315,7 @@ namespace osl
<li> <code>osl_Socket_TypeRaw</code>
<li> <code>osl_Socket_TypeRdm</code>
<li> <code>osl_Socket_TypeSeqPacket</code>
- <li> <code>osl_invalid_SocketType</code>, if an error occured
+ <li> <code>osl_invalid_SocketType</code>, if an error occurred
</ul>
*/
inline oslSocketType SAL_CALL getType() const;
@@ -380,7 +380,7 @@ namespace osl
<li><code>osl_Socket_OptionTcpNoDelay</code><br>
Disables the Nagle algorithm for send coalescing. (Do not
- collect data until a packet is full, instead send immediatly.
+ collect data until a packet is full, instead send immediately.
This increases network traffic but might improve latency-times.)
1 = disables the algorithm, 0 = keeps it enabled.
</ul>
@@ -399,7 +399,7 @@ namespace osl
<li><code>osl_Socket_LevelTcp</code> : Level of Transmission Control Protocol
</ul>
@return The size of the attribute copied into pBuffer or -1 if an error
- occured.
+ occurred.
*/
inline sal_Int32 SAL_CALL getOption(
oslSocketOption Option,
@@ -481,10 +481,10 @@ namespace osl
*/
inline void SAL_CALL clearError() const;
- /** returns a constant decribing the last error for the socket system.
+ /** returns a constant describing the last error for the socket system.
- @return osl_Socket_E_NONE if no error occured, invalid_SocketError if
- an unknown (unmapped) error occured, otherwise an enum describing the
+ @return osl_Socket_E_NONE if no error occurred, invalid_SocketError if
+ an unknown (unmapped) error occurred, otherwise an enum describing the
error.
@see osl_getLastSocketError()
*/
@@ -574,7 +574,7 @@ namespace osl
<li><code>osl_Socket_MsgMaxIOVLen</code>
</ul>
- @return the number of transfered bytes. It may be less than BytesToSend.
+ @return the number of transferred bytes. It may be less than BytesToSend.
*/
sal_Int32 SAL_CALL send(const void* pBuffer,
sal_uInt32 BytesToSend,
@@ -705,7 +705,7 @@ namespace osl
<li><code>osl_Socket_MsgMaxIOVLen</code>
</ul>
- @return the number of transfered bytes.
+ @return the number of transferred bytes.
*/
inline sal_Int32 SAL_CALL sendTo( const SocketAddr& ReceiverAddr,
const void* pBuffer,
diff --git a/sal/inc/osl/thread.hxx b/sal/inc/osl/thread.hxx
index 5755e5ed5209..b57f7b617f55 100644
--- a/sal/inc/osl/thread.hxx
+++ b/sal/inc/osl/thread.hxx
@@ -202,7 +202,7 @@ public:
}
/** Set the data associated with the data key.
- @returns True if operation was successfull
+ @returns True if operation was successful
*/
sal_Bool SAL_CALL setData(void *pData)
{
diff --git a/sal/inc/rtl/allocator.hxx b/sal/inc/rtl/allocator.hxx
deleted file mode 100644
index d4c1d47a1fd1..000000000000
--- a/sal/inc/rtl/allocator.hxx
+++ /dev/null
@@ -1,171 +0,0 @@
-/**************************************************************
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- *************************************************************/
-
-
-#if !defined INCLUDED_RTL_ALLOCATOR_HXX
-#define INCLUDED_RTL_ALLOCATOR_HXX
-
-#if ! defined(_SAL_TYPES_H_)
-#include "sal/types.h"
-#endif
-#if ! defined(_RTL_ALLOC_H_)
-#include "rtl/alloc.h"
-#endif
-
-#include <cstddef>
-
-//######################################################
-// This is no general purpose STL allocator but one
-// necessary to use STL for some implementation but
-// avoid linking sal against the STLPort library!!!
-// For more information on when and how to define a
-// custom stl allocator have a look at Scott Meyers:
-// "Effective STL", Nicolai M. Josuttis:
-// "The C++ Standard Library - A Tutorial and Reference"
-// and at http://www.josuttis.com/cppcode/allocator.html
-
-namespace rtl {
-
-/** @internal */
-template<class T>
-class Allocator
-{
-public:
- typedef T value_type;
- typedef T* pointer;
- typedef const T* const_pointer;
- typedef T& reference;
- typedef const T& const_reference;
- typedef ::std::size_t size_type;
- typedef ::std::ptrdiff_t difference_type;
-
- //-----------------------------------------
- template<class U>
- struct rebind
- {
- typedef Allocator<U> other;
- };
-
- //-----------------------------------------
- pointer address (reference value) const
- {
- return &value;
- }
-
- //-----------------------------------------
- const_pointer address (const_reference value) const
- {
- return &value;
- }
-
- //-----------------------------------------
- Allocator() SAL_THROW(())
- {}
-
- //-----------------------------------------
- template<class U>
- Allocator (const Allocator<U>&) SAL_THROW(())
- {}
-
- //-----------------------------------------
- Allocator(const Allocator&) SAL_THROW(())
- {}
-
- //-----------------------------------------
- ~Allocator() SAL_THROW(())
- {}
-
- //-----------------------------------------
- size_type max_size() const SAL_THROW(())
- {
- return size_type(-1)/sizeof(T);
- }
-
- //-----------------------------------------
- /* Normally the code for allocate should
- throw a std::bad_alloc exception if the
- requested memory could not be allocated:
- (C++ standard 20.4.1.1):
-
- pointer allocate (size_type n, const void* hint = 0)
- {
- pointer p = reinterpret_cast<pointer>(
- rtl_allocateMemory(sal_uInt32(n * sizeof(T))));
-
- if (NULL == p)
- throw ::std::bad_alloc();
-
- return p;
- }
-
- but some compilers do not compile it if exceptions
- are not enabled, e.g. GCC under Linux and it is
- in general not desired to compile sal with exceptions
- enabled. */
- pointer allocate (size_type n, const void* hint = 0)
- {
- hint = hint; /* avoid warnings */
- return reinterpret_cast<pointer>(
- rtl_allocateMemory(sal_uInt32(n * sizeof(T))));
- }
-
- //-----------------------------------------
- void deallocate (pointer p, size_type /* n */)
- {
- rtl_freeMemory(p);
- }
-
- //-----------------------------------------
- void construct (pointer p, const T& value)
- {
- new ((void*)p)T(value);
- }
-
- //-----------------------------------------
- void destroy (pointer p)
- {
- p->~T();
- }
-};
-
-//######################################################
-// Custom STL allocators must be stateless (see
-// references above) that's why the operators below
-// return always true or false
-
-/** @internal */
-template<class T, class U>
-inline bool operator== (const Allocator<T>&, const Allocator<U>&) SAL_THROW(())
-{
- return true;
-}
-
-/** @internal */
-template<class T, class U>
-inline bool operator!= (const Allocator<T>&, const Allocator<U>&) SAL_THROW(())
-{
- return false;
-}
-
-} /* namespace rtl */
-
-#endif /* INCLUDED_RTL_ALLOCATOR_HXX */
-
diff --git a/sal/inc/rtl/bootstrap.h b/sal/inc/rtl/bootstrap.h
index 98b9dc80bdeb..6eee37ddb2ce 100644
--- a/sal/inc/rtl/bootstrap.h
+++ b/sal/inc/rtl/bootstrap.h
@@ -213,7 +213,7 @@ void SAL_CALL rtl_bootstrap_expandMacros(
an arbitrary, non-NULL value
@param encoded
- non-NULL out parameter, receiving the given value with all occurences of
+ non-NULL out parameter, receiving the given value with all occurrences of
special characters ("$" and "\") escaped
@since UDK 3.2.9
diff --git a/sal/inc/rtl/bootstrap.hxx b/sal/inc/rtl/bootstrap.hxx
index 85da7ec2639e..4b66440a9280 100644
--- a/sal/inc/rtl/bootstrap.hxx
+++ b/sal/inc/rtl/bootstrap.hxx
@@ -145,7 +145,7 @@ namespace rtl
an arbitrary value
@return
- the given value, with all occurences of special characters ("$" and
+ the given value, with all occurrences of special characters ("$" and
"\") escaped
@since UDK 3.2.9
diff --git a/sal/inc/rtl/instance.hxx b/sal/inc/rtl/instance.hxx
index 321bfd7f33ec..1693e11fd102 100644
--- a/sal/inc/rtl/instance.hxx
+++ b/sal/inc/rtl/instance.hxx
@@ -227,10 +227,10 @@ namespace {
Some comments:
For any instantiation of rtl_Instance, at most one call to a create method
- may occur in the program code: Each occurance of a create method within
+ may occur in the program code: Each occurrence of a create method within
the program code is supposed to return a fresh object instance on the
first call, and that same object instance on subsequent calls; but
- independent occurances of create methods are supposed to return
+ independent occurrences of create methods are supposed to return
independent object instances. Since there is a one-to-one correspondence
between object instances and instantiations of rtl_Instance, the
requirement should be clear. One measure to enforce the requirement is
@@ -240,7 +240,7 @@ namespace {
needs a funny "hand coded" prefix "rtl_" instead of a proper namespace
prefix like "::rtl::".
- A known problem with this template is when two occurences of calls to
+ A known problem with this template is when two occurrences of calls to
create methods with identical template arguments appear in one translation
unit. Those two places will share a single object instance. This can be
avoided by using different Init structs (see the above code samples) in
diff --git a/sal/inc/rtl/math.hxx b/sal/inc/rtl/math.hxx
index 30b9974c4701..8d87c733455d 100644
--- a/sal/inc/rtl/math.hxx
+++ b/sal/inc/rtl/math.hxx
@@ -276,10 +276,10 @@ inline double approxAdd(double a, double b)
return a + b;
}
-/** Substract two values (a-b).
+/** Subtract two values (a-b).
If signs are identical and the values are equal according to approxEqual()
- the method returns 0.0 instead of calculating the substraction.
+ the method returns 0.0 instead of calculating the subtraction.
*/
inline double approxSub(double a, double b)
{
diff --git a/sal/inc/rtl/string.h b/sal/inc/rtl/string.h
index e2a027ea4a3c..278375b0abb7 100644
--- a/sal/inc/rtl/string.h
+++ b/sal/inc/rtl/string.h
@@ -1056,7 +1056,7 @@ void SAL_CALL rtl_string_newTrim( rtl_String ** newStr, rtl_String * str ) SAL_T
the number of the token to return, starting at index.
@param cTok
- the character that seperates the tokens.
+ the character that separates the tokens.
@param index
the position at which searching for the token starts. Must not be greater
diff --git a/sal/inc/rtl/string.hxx b/sal/inc/rtl/string.hxx
index 47631fd8c9a0..8c98a3657ab2 100644
--- a/sal/inc/rtl/string.hxx
+++ b/sal/inc/rtl/string.hxx
@@ -726,7 +726,7 @@ public:
while ( nIndex >= 0 );
@param token the number of the token to return.
- @param cTok the character which seperate the tokens.
+ @param cTok the character which separate the tokens.
@param index the position at which the token is searched in the
string.
The index must not be greater thanthe length of the
@@ -945,10 +945,10 @@ struct OStringHash
struct CStringEqual
{
bool operator()( const char* p1, const char* p2) const {
- while( *p1)
+ while( *p1 != '\0')
if( *(p1++) != *(p2++))
return false;
- return true;
+ return (*p2 == '\0');
}
};
diff --git a/sal/inc/rtl/tencinfo.h b/sal/inc/rtl/tencinfo.h
index d92954380145..cdb0a934142d 100644
--- a/sal/inc/rtl/tencinfo.h
+++ b/sal/inc/rtl/tencinfo.h
@@ -99,7 +99,7 @@ typedef struct _rtl_TextEncodingInfo
ASCII control codes 0x00--1F are not included here, as they are used for
special purposes in some encodings.
- If an encoding has this property, it is easy to search for occurences of
+ If an encoding has this property, it is easy to search for occurrences of
ASCII characters within strings of this encoding---you do not need to
keep track whether a byte in the range 0x20--7F really represents an
ASCII character or rather is part of some multi-byte character.
diff --git a/sal/inc/rtl/tres.h b/sal/inc/rtl/tres.h
index 40895edb9d68..7a118ba04e32 100644
--- a/sal/inc/rtl/tres.h
+++ b/sal/inc/rtl/tres.h
@@ -53,7 +53,7 @@ typedef struct _rtl_TestResult rtl_TestResult;
typedef void* rtl_funcstate;
typedef void* rtl_cmpstate;
- /* type definitions of function pointers wich can be overloaded */
+ /* type definitions of function pointers which can be overloaded */
typedef sal_Bool (SAL_CALL *rtl_tres_state_ptr)(
rtl_TestResult*,
sal_Bool,
diff --git a/sal/inc/rtl/ustring.h b/sal/inc/rtl/ustring.h
index 2b3be9af78bf..0d7b4a87e33a 100644
--- a/sal/inc/rtl/ustring.h
+++ b/sal/inc/rtl/ustring.h
@@ -1418,7 +1418,7 @@ void SAL_CALL rtl_uString_newTrim( rtl_uString ** newStr, rtl_uString * str ) SA
the number of the token to return, starting at index.
@param cTok
- the character that seperates the tokens.
+ the character that separates the tokens.
@param index
the position at which searching for the token starts. Must not be greater
diff --git a/sal/inc/rtl/ustring.hxx b/sal/inc/rtl/ustring.hxx
index 183aa8b72f64..b1ed2eb28723 100644
--- a/sal/inc/rtl/ustring.hxx
+++ b/sal/inc/rtl/ustring.hxx
@@ -1095,7 +1095,7 @@ public:
while ( nIndex >= 0 );
@param token the number of the token to return
- @param cTok the character which seperate the tokens.
+ @param cTok the character which separate the tokens.
@param index the position at which the token is searched in the
string.
The index must not be greater than the length of the
diff --git a/sal/inc/sal/main.h b/sal/inc/sal/main.h
index 9051b6833b07..8180d11e640b 100644
--- a/sal/inc/sal/main.h
+++ b/sal/inc/sal/main.h
@@ -83,7 +83,7 @@ int SAL_CALL main(int argc, char ** argv) \
#define INCLUDED_STDLIB_H
#endif
-/* Sorry but this is neccessary cause HINSTANCE is a typedef that differs (C++ causes an error) */
+/* Sorry but this is necessary cause HINSTANCE is a typedef that differs (C++ causes an error) */
#if 0
diff --git a/sal/inc/systools/win32/StrConvert.h b/sal/inc/systools/win32/StrConvert.h
index aa20000baedc..8f8fb83d0689 100644
--- a/sal/inc/systools/win32/StrConvert.h
+++ b/sal/inc/systools/win32/StrConvert.h
@@ -72,7 +72,7 @@ if( wcStr ) \
calculates the needed length of a corresponding the multi byte string
list for a wide char string list.
- @Param: cp - the code page to use for convertion.
+ @Param: cp - the code page to use for conversion.
wcList - a double '\0' terminated wide char string list.
*/
@@ -82,7 +82,7 @@ int WideCharListGetMultiByteLength( UINT codepage, LPCWSTR wcList );
converts a double '\0' terminated list of wide char strings to a
multi byte string list.
- @Param: cp - the code page to use for convertion.
+ @Param: cp - the code page to use for conversion.
wcList - a double '\0' terminated wide char string list.
mbList - a double '\0' terminated multi byte string list.
dwSize - size of buffer for multi byte string list.
diff --git a/sal/osl/all/debugbase.cxx b/sal/osl/all/debugbase.cxx
index 1315a878263c..6234a5bca550 100644
--- a/sal/osl/all/debugbase.cxx
+++ b/sal/osl/all/debugbase.cxx
@@ -44,7 +44,7 @@
namespace {
-typedef std::vector<rtl::OString, rtl::Allocator<rtl::OString> > OStringVec;
+typedef std::vector<rtl::OString> OStringVec;
struct StaticDebugBaseAddressFilter
: rtl::StaticWithInit<OStringVec const, StaticDebugBaseAddressFilter> {
diff --git a/sal/osl/os2/file_path_helper.h b/sal/osl/os2/file_path_helper.h
index b6a95ba75ece..d8017ea327af 100644
--- a/sal/osl/os2/file_path_helper.h
+++ b/sal/osl/os2/file_path_helper.h
@@ -155,7 +155,7 @@
/*****************************************
osl_systemPathGetParent
- Replaces the last occurrance of a path
+ Replaces the last occurrence of a path
separator with '\0' and returns the
position where the '/' was replaced
diff --git a/sal/osl/os2/file_path_helper.hxx b/sal/osl/os2/file_path_helper.hxx
index f1fbd4862d13..385fd86d7f7d 100644
--- a/sal/osl/os2/file_path_helper.hxx
+++ b/sal/osl/os2/file_path_helper.hxx
@@ -162,7 +162,7 @@ namespace osl
/*****************************************
systemPathGetParent
- Replaces the last occurrance of a path
+ Replaces the last occurrence of a path
separator with '\0' and returns the
position where the '/' was replaced
diff --git a/sal/osl/os2/file_url.cxx b/sal/osl/os2/file_url.cxx
index e04db43f6057..425b0c47db3d 100644
--- a/sal/osl/os2/file_url.cxx
+++ b/sal/osl/os2/file_url.cxx
@@ -739,7 +739,7 @@ oslFileError SAL_CALL osl_getFileURLFromSystemPath( rtl_uString *ustrSystemPath,
/* adapt index to pTmp */
nIndex += pTmp->length - ustrSystemPath->length;
- /* remove all occurances of '//' */
+ /* remove all occurrences of '//' */
for( nSrcIndex = nIndex + 1; nSrcIndex < pTmp->length; nSrcIndex++ )
{
if( ((sal_Unicode) '/' == pTmp->buffer[nSrcIndex]) && ((sal_Unicode) '/' == pTmp->buffer[nIndex]) )
@@ -913,7 +913,7 @@ oslFileError SAL_CALL osl_getSystemPathFromFileURL( rtl_uString *ustrFileURL, rt
{
nOffset += nIndex;
- /* break url down in '/' devided tokens tokens */
+ /* break url down in '/' divided tokens tokens */
nIndex = rtl_ustr_indexOfChar_WithLength( ustrFileURL->buffer + nOffset, ustrFileURL->length - nOffset, (sal_Unicode) '/' );
/* copy token to new string */
diff --git a/sal/osl/os2/file_url.h b/sal/osl/os2/file_url.h
index e9010d631b12..c9d4c814a016 100644
--- a/sal/osl/os2/file_url.h
+++ b/sal/osl/os2/file_url.h
@@ -23,7 +23,7 @@
/***************************************************
* Internal header file, declares all functions
- * that are not part of the offical API and are
+ * that are not part of the official API and are
* not defined in the osl header files
**************************************************/
diff --git a/sal/osl/os2/makefile.mk b/sal/osl/os2/makefile.mk
index 4b0e8ad80163..cb2531a8a9ec 100644
--- a/sal/osl/os2/makefile.mk
+++ b/sal/osl/os2/makefile.mk
@@ -38,7 +38,7 @@ MULTITHREAD_OBJ=TRUE
.INCLUDE : settings.mk
# Uncomment the following line if you want to compile with -Wall
-# it disables lots of unnecessary warnings comming from the Win32
+# it disables lots of unnecessary warnings coming from the Win32
# header files (disabling warnings via command line only works with
# MSVC >= 7.x)
#
diff --git a/sal/osl/os2/pipe.cxx b/sal/osl/os2/pipe.cxx
index c12753298279..90df6b9779a2 100644
--- a/sal/osl/os2/pipe.cxx
+++ b/sal/osl/os2/pipe.cxx
@@ -468,7 +468,7 @@ oslPipeError SAL_CALL osl_getLastPipeError(oslPipe pPipe)
sal_Int32 SAL_CALL osl_writePipe( oslPipe pPipe, const void *pBuffer , sal_Int32 n )
{
- /* loop until all desired bytes were send or an error occured */
+ /* loop until all desired bytes were send or an error occurred */
sal_Int32 BytesSend= 0;
sal_Int32 BytesToSend= n;
@@ -479,7 +479,7 @@ sal_Int32 SAL_CALL osl_writePipe( oslPipe pPipe, const void *pBuffer , sal_Int32
RetVal= osl_sendPipe(pPipe, pBuffer, BytesToSend);
- /* error occured? */
+ /* error occurred? */
if(RetVal <= 0)
{
break;
@@ -495,7 +495,7 @@ sal_Int32 SAL_CALL osl_writePipe( oslPipe pPipe, const void *pBuffer , sal_Int32
sal_Int32 SAL_CALL osl_readPipe( oslPipe pPipe, void *pBuffer , sal_Int32 n )
{
- /* loop until all desired bytes were read or an error occured */
+ /* loop until all desired bytes were read or an error occurred */
sal_Int32 BytesRead= 0;
sal_Int32 BytesToRead= n;
@@ -505,7 +505,7 @@ sal_Int32 SAL_CALL osl_readPipe( oslPipe pPipe, void *pBuffer , sal_Int32 n )
sal_Int32 RetVal;
RetVal= osl_receivePipe(pPipe, pBuffer, BytesToRead);
- /* error occured? */
+ /* error occurred? */
if(RetVal <= 0)
{
break;
diff --git a/sal/osl/os2/process.c b/sal/osl/os2/process.c
index 185a6ca6a57f..9fcc9bd0f1a3 100644
--- a/sal/osl/os2/process.c
+++ b/sal/osl/os2/process.c
@@ -464,11 +464,11 @@ oslProcessError SAL_CALL osl_psz_executeProcess(sal_Char *pszImageName,
OSL_TRACE( "osl_executeProcess with DosExecPgm (args: %s)\n", args );
- /* calculate needed space for environment: since enviroment var search
- is a linear scan of the current enviroment, we place new variables
+ /* calculate needed space for environment: since environment var search
+ is a linear scan of the current environment, we place new variables
before existing ones; so the child will find new definitions before
olders; this doesn't require us to replace existing vars */
- // existing enviroment size
+ // existing environment size
n = 0;
p = environ;
while( *p)
@@ -848,7 +848,7 @@ oslProcessError SAL_CALL osl_getCommandArgs( sal_Char* pszBuffer, sal_uInt32 Max
{
/*
* C-Runtime expects char to be unsigned and so to be
- * preceeded with 00 instead of FF when converting to int
+ * preceded with 00 instead of FF when converting to int
*/
int n = *((unsigned char *) pszCmdLine);
if (! (isspace(n) || (*pszCmdLine == '\0')) )
diff --git a/sal/osl/os2/profile.c b/sal/osl/os2/profile.c
index f8e7874dd167..fb31bd2d169c 100644
--- a/sal/osl/os2/profile.c
+++ b/sal/osl/os2/profile.c
@@ -1923,7 +1923,7 @@ static osl_TProfileImpl* acquireProfile(oslProfile Profile, sal_Bool bWriteable)
if ( pProfile->m_strFileName != 0 && pProfile->m_strFileName->buffer[0] != 0 )
FileURLToPath( pszFilename, PATH_MAX, pProfile->m_strFileName );
- /* hack: usualy you have a specific HAB, but NULL works here... */
+ /* hack: usually you have a specific HAB, but NULL works here... */
pProfile->m_hIni = PrfOpenProfile(NULL, (PCSZ)pszFilename);
if (! pProfile->m_hIni)
return (NULL);
@@ -2124,7 +2124,7 @@ static sal_Bool lookupProfile(const sal_Char *pszPath, const sal_Char *pszFile,
if (osl_getExecutableFile(Path, sizeof(Path)) != osl_Process_E_None)
return (sal_False);
- /* seperate path from filename */
+ /* separate path from filename */
if ((pChr = strrchr(Path, '\\')) == NULL)
if ((pChr = strrchr(Path, ':')) == NULL)
return (sal_False);
diff --git a/sal/osl/os2/socket.c b/sal/osl/os2/socket.c
index 3066859bb800..f0cf028e4e69 100644
--- a/sal/osl/os2/socket.c
+++ b/sal/osl/os2/socket.c
@@ -782,7 +782,7 @@ oslSocketResult SAL_CALL osl_getAddrOfSocketAddr( oslSocketAddr pAddr, sal_Seque
/** try to figure out a full-qualified hostname, by adding the current domain
as given by the domainname program to the given hostname.
- This function MUST NOT call gethostbyname since pHostName allready points
+ This function MUST NOT call gethostbyname since pHostName already points
to data returned by gethostname and would be garbled: use gethostname_r
instead!
*/
@@ -2492,7 +2492,7 @@ sal_Int32 SAL_CALL osl_readSocket (
OSL_ASSERT( pSocket);
- /* loop until all desired bytes were read or an error occured */
+ /* loop until all desired bytes were read or an error occurred */
while (BytesToRead > 0)
{
sal_Int32 RetVal;
@@ -2501,7 +2501,7 @@ sal_Int32 SAL_CALL osl_readSocket (
BytesToRead,
osl_Socket_MsgNormal);
- /* error occured? */
+ /* error occurred? */
if(RetVal <= 0)
{
break;
@@ -2521,7 +2521,7 @@ sal_Int32 SAL_CALL osl_readSocket (
sal_Int32 SAL_CALL osl_writeSocket(
oslSocket pSocket, const void *pBuffer, sal_Int32 n )
{
- /* loop until all desired bytes were send or an error occured */
+ /* loop until all desired bytes were send or an error occurred */
sal_uInt32 BytesSend= 0;
sal_uInt32 BytesToSend= n;
sal_uInt8 *Ptr = ( sal_uInt8 * )pBuffer;
@@ -2534,7 +2534,7 @@ sal_Int32 SAL_CALL osl_writeSocket(
RetVal= osl_sendSocket( pSocket,Ptr,BytesToSend,osl_Socket_MsgNormal);
- /* error occured? */
+ /* error occurred? */
if(RetVal <= 0)
{
break;
diff --git a/sal/osl/os2/system.h b/sal/osl/os2/system.h
index a815659a1a0a..6d8d204d6008 100644
--- a/sal/osl/os2/system.h
+++ b/sal/osl/os2/system.h
@@ -362,7 +362,7 @@ char *macxp_tempnam( const char *tmpdir, const char *prefix );
#elif defined _BIG_ENDIAN_OO
# define _OSL_LITENDIAN
#else
-# error undetermined endianess
+# error undetermined endianness
#endif
#else
#if defined _LITTLE_ENDIAN
@@ -370,7 +370,7 @@ char *macxp_tempnam( const char *tmpdir, const char *prefix );
#elif defined _BIG_ENDIAN
# define _OSL_LITENDIAN
#else
-# error undetermined endianess
+# error undetermined endianness
#endif
#endif
diff --git a/sal/osl/unx/asm/interlck_sparc.s b/sal/osl/unx/asm/interlck_sparc.s
index 68fa1197394d..edf9884444dd 100644
--- a/sal/osl/unx/asm/interlck_sparc.s
+++ b/sal/osl/unx/asm/interlck_sparc.s
@@ -38,7 +38,7 @@
* bv9 = 1 use sparcv9/sparcv8plus "cas" (no spinlock)
*
* 32 bit mode without v8 support (implies v8plus) or 64 bit mode:
- * No need (nor the possibilty) to call osl_InterlockedCountSetV9(),
+ * No need (nor the possibility) to call osl_InterlockedCountSetV9(),
* sparcv9 mode is implied. Assemble with -xarch=v8plus (32 bit) or
* -xarch=v9 (64 bit).
*
diff --git a/sal/osl/unx/file_url.cxx b/sal/osl/unx/file_url.cxx
index 7d11179aa2aa..e20c5b71a8b7 100644
--- a/sal/osl/unx/file_url.cxx
+++ b/sal/osl/unx/file_url.cxx
@@ -188,7 +188,7 @@ oslFileError SAL_CALL osl_getSystemPathFromFileURL( rtl_uString *ustrFileURL, rt
{
nOffset += nIndex;
- /* break url down in '/' devided tokens tokens */
+ /* break url down in '/' divided tokens tokens */
nIndex = rtl_ustr_indexOfChar_WithLength( ustrFileURL->buffer + nOffset, ustrFileURL->length - nOffset, (sal_Unicode) '/' );
/* copy token to new string */
@@ -368,7 +368,7 @@ oslFileError SAL_CALL osl_getFileURLFromSystemPath( rtl_uString *ustrSystemPath,
/* adapt index to pTmp */
nIndex += pTmp->length - ustrSystemPath->length;
- /* remove all occurances of '//' */
+ /* remove all occurrences of '//' */
for( nSrcIndex = nIndex + 1; nSrcIndex < pTmp->length; nSrcIndex++ )
{
if( ((sal_Unicode) '/' == pTmp->buffer[nSrcIndex]) && ((sal_Unicode) '/' == pTmp->buffer[nIndex]) )
diff --git a/sal/osl/unx/pipe.c b/sal/osl/unx/pipe.c
index 6f362c25a5ef..eb2e5fc49dd4 100644
--- a/sal/osl/unx/pipe.c
+++ b/sal/osl/unx/pipe.c
@@ -535,7 +535,7 @@ oslPipeError SAL_CALL osl_getLastPipeError(oslPipe pPipe)
sal_Int32 SAL_CALL osl_writePipe( oslPipe pPipe, const void *pBuffer , sal_Int32 n )
{
- /* loop until all desired bytes were send or an error occured */
+ /* loop until all desired bytes were send or an error occurred */
sal_Int32 BytesSend= 0;
sal_Int32 BytesToSend= n;
@@ -546,7 +546,7 @@ sal_Int32 SAL_CALL osl_writePipe( oslPipe pPipe, const void *pBuffer , sal_Int32
RetVal= osl_sendPipe(pPipe, pBuffer, BytesToSend);
- /* error occured? */
+ /* error occurred? */
if(RetVal <= 0)
{
break;
@@ -562,7 +562,7 @@ sal_Int32 SAL_CALL osl_writePipe( oslPipe pPipe, const void *pBuffer , sal_Int32
sal_Int32 SAL_CALL osl_readPipe( oslPipe pPipe, void *pBuffer , sal_Int32 n )
{
- /* loop until all desired bytes were read or an error occured */
+ /* loop until all desired bytes were read or an error occurred */
sal_Int32 BytesRead= 0;
sal_Int32 BytesToRead= n;
@@ -572,7 +572,7 @@ sal_Int32 SAL_CALL osl_readPipe( oslPipe pPipe, void *pBuffer , sal_Int32 n )
sal_Int32 RetVal;
RetVal= osl_receivePipe(pPipe, pBuffer, BytesToRead);
- /* error occured? */
+ /* error occurred? */
if(RetVal <= 0)
{
break;
diff --git a/sal/osl/unx/process.c b/sal/osl/unx/process.c
index 343df63a6db8..dd07d4effa21 100644
--- a/sal/osl/unx/process.c
+++ b/sal/osl/unx/process.c
@@ -1445,7 +1445,7 @@ static int is_timeout(const struct timeval* tend)
}
/**********************************************
- kill(pid, 0) is usefull for checking if a
+ kill(pid, 0) is useful for checking if a
process is still alive, but remember that
kill even returns 0 if the process is already
a zombie.
diff --git a/sal/osl/unx/signal.c b/sal/osl/unx/signal.c
index 9a0ce703838a..1112764f9f5f 100644
--- a/sal/osl/unx/signal.c
+++ b/sal/osl/unx/signal.c
@@ -130,7 +130,7 @@ plan to have the new handler use this signal*/
{ SIGWINCH, ACT_IGNORE, NULL }, /* window size change */
{ SIGURG, ACT_EXIT, NULL }, /* urgent socket condition */
#ifdef SIGPOLL
- { SIGPOLL, ACT_EXIT, NULL }, /* pollable event occured */
+ { SIGPOLL, ACT_EXIT, NULL }, /* pollable event occurred */
#endif
{ SIGSTOP, ACT_SYSTEM, NULL }, /* stop (cannot be caught or ignored) */
{ SIGTSTP, ACT_SYSTEM, NULL }, /* user stop requested from tty */
@@ -252,7 +252,7 @@ static sal_Bool InitSignal()
/* Initialize the rest of the signals */
for (i = 0; i < NoSignals; i++)
{
- /* hack: stomcatd is attaching JavaVM wich dont work with an sigaction(SEGV) */
+ /* hack: stomcatd is attaching JavaVM which dont work with an sigaction(SEGV) */
if ((bSetSEGVHandler || Signals[i].Signal != SIGSEGV)
&& (bSetWINCHHandler || Signals[i].Signal != SIGWINCH)
&& (bSetILLHandler || Signals[i].Signal != SIGILL))
diff --git a/sal/osl/unx/socket.c b/sal/osl/unx/socket.c
index 0c640c897e89..a55d759f1ee0 100644
--- a/sal/osl/unx/socket.c
+++ b/sal/osl/unx/socket.c
@@ -782,7 +782,7 @@ oslSocketResult SAL_CALL osl_getAddrOfSocketAddr( oslSocketAddr pAddr, sal_Seque
/** try to figure out a full-qualified hostname, by adding the current domain
as given by the domainname program to the given hostname.
- This function MUST NOT call gethostbyname since pHostName allready points
+ This function MUST NOT call gethostbyname since pHostName already points
to data returned by gethostname and would be garbled: use gethostname_r
instead!
*/
@@ -2454,7 +2454,7 @@ sal_Int32 SAL_CALL osl_readSocket (
OSL_ASSERT( pSocket);
- /* loop until all desired bytes were read or an error occured */
+ /* loop until all desired bytes were read or an error occurred */
while (BytesToRead > 0)
{
sal_Int32 RetVal;
@@ -2463,7 +2463,7 @@ sal_Int32 SAL_CALL osl_readSocket (
BytesToRead,
osl_Socket_MsgNormal);
- /* error occured? */
+ /* error occurred? */
if(RetVal <= 0)
{
break;
@@ -2483,7 +2483,7 @@ sal_Int32 SAL_CALL osl_readSocket (
sal_Int32 SAL_CALL osl_writeSocket(
oslSocket pSocket, const void *pBuffer, sal_Int32 n )
{
- /* loop until all desired bytes were send or an error occured */
+ /* loop until all desired bytes were send or an error occurred */
sal_uInt32 BytesSend= 0;
sal_uInt32 BytesToSend= n;
sal_uInt8 *Ptr = ( sal_uInt8 * )pBuffer;
@@ -2496,7 +2496,7 @@ sal_Int32 SAL_CALL osl_writeSocket(
RetVal= osl_sendSocket( pSocket,Ptr,BytesToSend,osl_Socket_MsgNormal);
- /* error occured? */
+ /* error occurred? */
if(RetVal <= 0)
{
break;
diff --git a/sal/osl/unx/system.h b/sal/osl/unx/system.h
index e85ee99afd10..beaaca3e2764 100644
--- a/sal/osl/unx/system.h
+++ b/sal/osl/unx/system.h
@@ -345,7 +345,7 @@ int macxp_resolveAlias(char *path, int buflen);
#elif defined _BIG_ENDIAN_OO
# define _OSL_LITENDIAN
#else
-# error undetermined endianess
+# error undetermined endianness
#endif
#else
#if defined _LITTLE_ENDIAN
@@ -353,7 +353,7 @@ int macxp_resolveAlias(char *path, int buflen);
#elif defined _BIG_ENDIAN
# define _OSL_LITENDIAN
#else
-# error undetermined endianess
+# error undetermined endianness
#endif
#endif
diff --git a/sal/osl/w32/MAKEFILE.MK b/sal/osl/w32/MAKEFILE.MK
index 2a60901ab5f3..8e84d6fa3b70 100644
--- a/sal/osl/w32/MAKEFILE.MK
+++ b/sal/osl/w32/MAKEFILE.MK
@@ -38,7 +38,7 @@ MULTITHREAD_OBJ=TRUE
.INCLUDE : settings.mk
# Uncomment the following line if you want to compile with -Wall
-# it disables lots of unnecessary warnings comming from the Win32
+# it disables lots of unnecessary warnings coming from the Win32
# header files (disabling warnings via command line only works with
# MSVC >= 7.x)
#
diff --git a/sal/osl/w32/file_dirvol.cxx b/sal/osl/w32/file_dirvol.cxx
index d73b5b5bd454..44b5b19861e1 100644
--- a/sal/osl/w32/file_dirvol.cxx
+++ b/sal/osl/w32/file_dirvol.cxx
@@ -515,7 +515,7 @@ static oslFileError osl_openLocalRoot(
ZeroMemory( pDirImpl, sizeof(Directory_Impl) );
rtl_uString_newFromString( &pDirImpl->m_pDirectoryPath, strSysPath );
- /* Append backslash if neccessary */
+ /* Append backslash if necessary */
/* @@@ToDo
use function ensure backslash
@@ -580,7 +580,7 @@ static oslFileError SAL_CALL osl_openFileDirectory(
ZeroMemory( pDirImpl, sizeof(Directory_Impl) );
rtl_uString_newFromString( &pDirImpl->m_pDirectoryPath, strDirectoryPath );
- /* Append backslash if neccessary */
+ /* Append backslash if necessary */
/* @@@ToDo
use function ensure backslash
diff --git a/sal/osl/w32/file_url.cxx b/sal/osl/w32/file_url.cxx
index 36bae58e273d..8eea0c194972 100644
--- a/sal/osl/w32/file_url.cxx
+++ b/sal/osl/w32/file_url.cxx
@@ -1004,7 +1004,7 @@ oslFileError SAL_CALL osl_searchFileURL(
LPCTSTR lpszSearchFile = reinterpret_cast<LPCTSTR>(ustrSysPath->buffer);
/* Allocate space for buffer according to previous returned count of required chars */
- /* +1 is not neccessary if we follow MSDN documentation but for robustness we do so */
+ /* +1 is not necessary if we follow MSDN documentation but for robustness we do so */
nBufferLength = dwResult + 1;
lpBuffer = lpBuffer ?
reinterpret_cast<LPTSTR>(rtl_reallocateMemory(lpBuffer, nBufferLength * sizeof(TCHAR))) :
diff --git a/sal/osl/w32/interlck.c b/sal/osl/w32/interlck.c
index 836d37ce48d1..d93b64b64373 100644
--- a/sal/osl/w32/interlck.c
+++ b/sal/osl/w32/interlck.c
@@ -33,7 +33,7 @@ extern int osl_isSingleCPU;
Instead there is only returned a value greater than zero is the increment
result is greater than zero, but not the the result of the addition.
For Windows NT the native function could be used, because the correct result
- is returned. Beacuse of simpler code maintance and performace reasons we use
+ is returned. Because of simpler code maintenance and performace reasons we use
on every x86-Windows-Platform the inline assembler implementation.
*/
diff --git a/sal/osl/w32/module.cxx b/sal/osl/w32/module.cxx
index 7fa52e49113b..2d1c0f34c670 100644
--- a/sal/osl/w32/module.cxx
+++ b/sal/osl/w32/module.cxx
@@ -74,7 +74,7 @@ oslModule SAL_CALL osl_loadModule(rtl_uString *strModuleName, sal_Int32 nRtldMod
//on Windows XP and ERROR_INSUFFICIENT_BUFFER on Windows 7 (64bit)
if (hInstance == NULL && Module->length > 260)
{
- std::vector<WCHAR, rtl::Allocator<WCHAR> > vec(Module->length + 1);
+ std::vector<WCHAR> vec(Module->length + 1);
DWORD len = GetShortPathNameW(reinterpret_cast<LPCWSTR>(Module->buffer),
&vec[0], Module->length + 1);
if (len )
@@ -310,7 +310,7 @@ typedef BOOL (WINAPI *SymGetModuleInfo_PROC)(
PIMAGEHLP_MODULE ModuleInfo
);
-/* Seems that IMAGEHLP.DLL is always availiable on NT 4. But MSDN from Platform SDK says Win 2K is required. MSDN from VS 6.0a says
+/* Seems that IMAGEHLP.DLL is always available on NT 4. But MSDN from Platform SDK says Win 2K is required. MSDN from VS 6.0a says
it's O.K on NT 4 ???!!!
BTW: We are using ANSI function because not all version of IMAGEHLP.DLL contain Unicode support
*/
@@ -421,7 +421,7 @@ typedef BOOL (WINAPI *GetModuleInformation_PROC)(
#define bufsizeof(buffer) (sizeof(buffer) / sizeof((buffer)[0]))
-/* This version can fail because PSAPI.DLL is not always part of NT 4 despite MSDN Libary 6.0a say so */
+/* This version can fail because PSAPI.DLL is not always part of NT 4 despite MSDN Library 6.0a say so */
static sal_Bool SAL_CALL _osl_addressGetModuleURL_NT( void *pv, rtl_uString **pustrURL )
{
diff --git a/sal/osl/w32/nlsupport.c b/sal/osl/w32/nlsupport.c
index ed33323163f5..8abbcef8d6b2 100644
--- a/sal/osl/w32/nlsupport.c
+++ b/sal/osl/w32/nlsupport.c
@@ -75,7 +75,7 @@ BOOL CALLBACK EnumLocalesProcA( LPSTR lpLocaleStringA )
/*
get the ISO language code for this locale
- remeber: we call the GetLocaleInfoW function
+ remember: we call the GetLocaleInfoW function
because the ansi version of this function returns
an error under WinNT/2000 when called with an
unicode only lcid
diff --git a/sal/osl/w32/path_helper.hxx b/sal/osl/w32/path_helper.hxx
index 3e11371da0c2..630602913dd7 100644
--- a/sal/osl/w32/path_helper.hxx
+++ b/sal/osl/w32/path_helper.hxx
@@ -30,7 +30,7 @@
#include "path_helper.h"
#include <rtl/ustring.hxx>
-#include <rtl/allocator.hxx>
+#include <rtl/alloc.h>
namespace osl
{
diff --git a/sal/osl/w32/pipe.c b/sal/osl/w32/pipe.c
index 7ffc05516eb2..33f1282ef2a8 100644
--- a/sal/osl/w32/pipe.c
+++ b/sal/osl/w32/pipe.c
@@ -561,7 +561,7 @@ sal_Int32 SAL_CALL osl_sendPipe(oslPipe pPipe,
sal_Int32 SAL_CALL osl_writePipe( oslPipe pPipe, const void *pBuffer , sal_Int32 n )
{
- /* loop until all desired bytes were send or an error occured */
+ /* loop until all desired bytes were send or an error occurred */
sal_Int32 BytesSend= 0;
sal_Int32 BytesToSend= n;
@@ -572,7 +572,7 @@ sal_Int32 SAL_CALL osl_writePipe( oslPipe pPipe, const void *pBuffer , sal_Int32
RetVal= osl_sendPipe(pPipe, pBuffer, BytesToSend);
- /* error occured? */
+ /* error occurred? */
if(RetVal <= 0)
{
break;
@@ -588,7 +588,7 @@ sal_Int32 SAL_CALL osl_writePipe( oslPipe pPipe, const void *pBuffer , sal_Int32
sal_Int32 SAL_CALL osl_readPipe( oslPipe pPipe, void *pBuffer , sal_Int32 n )
{
- /* loop until all desired bytes were read or an error occured */
+ /* loop until all desired bytes were read or an error occurred */
sal_Int32 BytesRead= 0;
sal_Int32 BytesToRead= n;
@@ -598,7 +598,7 @@ sal_Int32 SAL_CALL osl_readPipe( oslPipe pPipe, void *pBuffer , sal_Int32 n )
sal_Int32 RetVal;
RetVal= osl_receivePipe(pPipe, pBuffer, BytesToRead);
- /* error occured? */
+ /* error occurred? */
if(RetVal <= 0)
{
break;
diff --git a/sal/osl/w32/process.cxx b/sal/osl/w32/process.cxx
index dd3a22876f81..8188449a2483 100644
--- a/sal/osl/w32/process.cxx
+++ b/sal/osl/w32/process.cxx
@@ -516,7 +516,7 @@ static sal_Bool ReadPipe(oslPipe hPipe,
sal_Int32* nBytes)
{
*nBytes = osl_receivePipe(hPipe, pBuffer, BytesToRead);
- OSL_TRACE("tried to recieve %d, recieved %d.\n",
+ OSL_TRACE("tried to receive %d, received %d.\n",
BytesToRead, *nBytes);
return (sal_Bool)((*nBytes >= 0) && (osl_getLastPipeError(hPipe) == osl_Pipe_E_None));
}
diff --git a/sal/osl/w32/procimpl.cxx b/sal/osl/w32/procimpl.cxx
index ae2de9be2993..822a68131de0 100644
--- a/sal/osl/w32/procimpl.cxx
+++ b/sal/osl/w32/procimpl.cxx
@@ -43,7 +43,6 @@
#include <rtl/ustring.hxx>
#include <rtl/ustrbuf.hxx>
#include "secimpl.h"
-#include "rtl/allocator.hxx"
#include <osl/file.hxx>
#include <list>
@@ -63,11 +62,11 @@ const rtl::OUString QUOTE = rtl::OUString::createFromAscii("\"");
namespace /* private */
{
//#################################################
- typedef std::list<rtl::OUString, rtl::Allocator<rtl::OUString> > string_container_t;
+ typedef std::list<rtl::OUString> string_container_t;
typedef string_container_t::iterator string_container_iterator_t;
typedef string_container_t::const_iterator string_container_const_iterator_t;
typedef std::pair<string_container_iterator_t, string_container_iterator_t> iterator_pair_t;
- typedef std::vector<sal_Unicode, rtl::Allocator<sal_Unicode> > environment_container_t;
+ typedef std::vector<sal_Unicode > environment_container_t;
//#################################################
/* Function object that compares two strings that are
@@ -307,7 +306,7 @@ namespace /* private */
rtl::OUString ret(path);
if (path.getLength() > 260)
{
- std::vector<sal_Unicode, rtl::Allocator<sal_Unicode> > vec(path.getLength() + 1);
+ std::vector<sal_Unicode> vec(path.getLength() + 1);
//GetShortPathNameW only works if the file can be found!
const DWORD len = GetShortPathNameW(
reinterpret_cast<LPCWSTR>(path.getStr()), reinterpret_cast<LPWSTR>(&vec[0]), path.getLength() + 1);
@@ -316,8 +315,7 @@ namespace /* private */
&& extension.getLength())
{
const rtl::OUString extPath(path + extension);
- std::vector<sal_Unicode, rtl::Allocator<sal_Unicode> > vec2(
- extPath.getLength() + 1);
+ std::vector<sal_Unicode > vec2( extPath.getLength() + 1);
const DWORD len2 = GetShortPathNameW(
reinterpret_cast<LPCWSTR>(extPath.getStr()), reinterpret_cast<LPWSTR>(&vec2[0]), extPath.getLength() + 1);
ret = rtl::OUString(&vec2[0], len2);
@@ -622,7 +620,7 @@ oslProcessError SAL_CALL osl_executeProcess_WithRedirectedIO(
}
}
- /* if an error occured we have to close the server side pipe ends too */
+ /* if an error occurred we have to close the server side pipe ends too */
if (hInputWrite)
CloseHandle(hInputWrite);
diff --git a/sal/osl/w32/profile.cxx b/sal/osl/w32/profile.cxx
index c568782ec901..b108657a4182 100644
--- a/sal/osl/w32/profile.cxx
+++ b/sal/osl/w32/profile.cxx
@@ -2497,7 +2497,7 @@ static sal_Bool lookupProfile(const sal_Unicode *strPath, const sal_Unicode *str
rtl_uString_release(strTmp);
- /* seperate path from filename */
+ /* separate path from filename */
if ((nPos = rtl_ustr_lastIndexOfChar(strExecutable->buffer, L'\\')) == -1)
{
if ((nPos = rtl_ustr_lastIndexOfChar(strExecutable->buffer, L':')) == -1)
diff --git a/sal/osl/w32/security.c b/sal/osl/w32/security.c
index 20fd39048c0b..a3e3c189528b 100644
--- a/sal/osl/w32/security.c
+++ b/sal/osl/w32/security.c
@@ -246,7 +246,7 @@ sal_Bool SAL_CALL osl_isAdministrator(oslSecurity Security)
{
if (Security != NULL)
{
- /* ts: on Window 95 systems any user seems to be an adminstrator */
+ /* ts: on Window 95 systems any user seems to be an administrator */
if (!isWNT())
{
return(sal_True);
diff --git a/sal/osl/w32/socket.cxx b/sal/osl/w32/socket.cxx
index 6514ea37f01b..af369787776a 100644
--- a/sal/osl/w32/socket.cxx
+++ b/sal/osl/w32/socket.cxx
@@ -1561,7 +1561,7 @@ sal_Int32 SAL_CALL osl_readSocket( oslSocket pSocket, void *pBuffer, sal_Int32 n
OSL_ASSERT( pSocket);
- /* loop until all desired bytes were read or an error occured */
+ /* loop until all desired bytes were read or an error occurred */
sal_uInt32 BytesRead= 0;
sal_uInt32 BytesToRead= n;
while (BytesToRead > 0)
@@ -1572,7 +1572,7 @@ sal_Int32 SAL_CALL osl_readSocket( oslSocket pSocket, void *pBuffer, sal_Int32 n
BytesToRead,
osl_Socket_MsgNormal);
- /* error occured? */
+ /* error occurred? */
if(RetVal <= 0)
{
break;
@@ -1593,7 +1593,7 @@ sal_Int32 SAL_CALL osl_writeSocket( oslSocket pSocket, const void *pBuffer, sal_
{
OSL_ASSERT( pSocket );
- /* loop until all desired bytes were send or an error occured */
+ /* loop until all desired bytes were send or an error occurred */
sal_uInt32 BytesSend= 0;
sal_uInt32 BytesToSend= n;
sal_uInt8 *Ptr = ( sal_uInt8 * )pBuffer;
@@ -1603,7 +1603,7 @@ sal_Int32 SAL_CALL osl_writeSocket( oslSocket pSocket, const void *pBuffer, sal_
RetVal= osl_sendSocket( pSocket,Ptr,BytesToSend,osl_Socket_MsgNormal);
- /* error occured? */
+ /* error occurred? */
if(RetVal <= 0)
{
break;
diff --git a/sal/prj/build.lst b/sal/prj/build.lst
index ddc6b105fde1..4b568a8c7c73 100644
--- a/sal/prj/build.lst
+++ b/sal/prj/build.lst
@@ -1,4 +1,4 @@
-sa sal : xml2cmp stlport external BOOST:boost NULL
+sa sal : xml2cmp stlport external BOOST:boost GTEST:gtest NULL
sa sal usr1 - all sa_mkout NULL
sa sal\inc nmake - all sa_inc NULL
sa sal\typesconfig nmake - u sa_tc sa_inc NULL
@@ -10,15 +10,18 @@ sa sal\systools\win32\kill nmake - n sa_kill sa_uwinapi.n sa_inc NULL
sa sal\systools\win32\onlineupdate nmake - n sa_onlineupdate sa_uwinapi.n sa_inc NULL
sa sal\osl\w32 nmake - n sa_osln sa_inc NULL
sa sal\osl\os2 nmake - p sa_oslp sa_inc NULL
-sa sal\qa nmake - all sa_qa sa_util NULL
+sa sal\qa nmake - all sa_qa sa_util sa_cpprt.u NULL
sa sal\osl\unx nmake - u sa_oslu sa_tc.u sa_inc NULL
sa sal\osl\all nmake - all sa_oslall sa_tc.u sa_inc NULL
sa sal\util nmake - all sa_util sa_tc.u sa_oslall sa_uwinapi.n sa_kill.n sa_onlineupdate.n sa_osln.n sa_oslp.p sa_oslu.u sa_rtl sa_textenc NULL
+sa sal\qa\sal nmake - all sa_qa_sal sa_util sa_cpprt.u NULL
+sa sal\qa\osl\condition nmake - all sa_qa_osl_condition sa_util sa_cpprt.u NULL
+sa sal\qa\osl\pipe nmake - all sa_qa_osl_pipe sa_util sa_cpprt.u NULL
+
sa sal\cppunittester nmake - all sa_cppunittester sa_cpprt.u sa_util NULL
sa sal\qa\ByteSequence nmake - all sa_qa_ByteSequence sa_cppunittester sa_util NULL
sa sal\qa\OStringBuffer nmake - all sa_qa_OStringBuffer sa_cppunittester sa_util NULL
sa sal\qa\osl\mutex nmake - all sa_qa_osl_mutex sa_cppunittester sa_util NULL
-sa sal\qa\osl\pipe nmake - all sa_qa_osl_pipe sa_cppunittester sa_util NULL
sa sal\qa\osl\profile nmake - all sa_qa_osl_profile sa_cppunittester sa_util NULL
sa sal\qa\osl\setthreadname nmake - all sa_qa_osl_setthreadname sa_cppunittester sa_util NULL
sa sal\qa\rtl\math nmake - all sa_qa_rtl_math sa_cppunittester sa_util NULL
diff --git a/sal/qa/buildall.pl b/sal/qa/buildall.pl
index 9f54718d1d78..a1d20654d614 100644
--- a/sal/qa/buildall.pl
+++ b/sal/qa/buildall.pl
@@ -154,7 +154,7 @@ sub initEnvironment()
$g_sTempDir = $ENV{TMP} ? "$ENV{TMP}${FS}" : "${FS}tmp${FS}";
last SWITCH;
}
- print STDERR "buildall.pl: unkown platform\n";
+ print STDERR "buildall.pl: unknown platform\n";
exit(1);
}
}
@@ -266,7 +266,7 @@ sub giveOutFailures($$)
if ($nFailures > 0)
{
# extra return for a better output
- print "\nFailures occured: $nFailures\n";
+ print "\nFailures occurred: $nFailures\n";
print "The whole output can be found in $sFailureFile\n";
print "\n";
@@ -292,7 +292,7 @@ sub runASingleTest($$)
my $sLogFile = $sLogPath . "/" . $sTarget . ".out";
# due to the fact, a library name in one project is distinct, we should remember all already run through libraries and
- # supress same libraries, if they occur one more.
+ # suppress same libraries, if they occur one more.
if (exists $libraryRunThrough{getLibName($sTarget)})
{
@@ -482,7 +482,7 @@ $/)
if ($nGlobalFailures > 0)
{
- print "\nFailures over all occured: $nGlobalFailures\n";
+ print "\nFailures over all occurred: $nGlobalFailures\n";
print "\nPASSED FAILED.\n";
}
else
diff --git a/sal/qa/helper/gcov/deprecated.txt b/sal/qa/helper/gcov/deprecated.txt
index 036dcf2b3e2f..76099c3ae223 100644
--- a/sal/qa/helper/gcov/deprecated.txt
+++ b/sal/qa/helper/gcov/deprecated.txt
@@ -58,7 +58,7 @@
# B. untested functions:
# functions need Client/Server model and blocking mode of transmission. some of the functions
-# can not run through on testshl2 env while the same code can run successfully in normal seperate
+# can not run through on testshl2 env while the same code can run successfully in normal separate
# files.
# 1) in DatagramSocket class:
# osl_receiveFromSocket;
@@ -210,7 +210,7 @@
# LLA:
# marked as deprecated, due to the fact there is no access from outside
-# so this functions are not really accessable
+# so this functions are not really accessible
# They are used in rtl/source/locale.c
rtl_hashentry_destroy;
rtl_hashfunc;
diff --git a/sal/qa/osl/condition/makefile.mk b/sal/qa/osl/condition/makefile.mk
index 2c8c8e996791..0b80bedbd0ea 100644
--- a/sal/qa/osl/condition/makefile.mk
+++ b/sal/qa/osl/condition/makefile.mk
@@ -24,7 +24,7 @@
PRJ=..$/..$/..
PRJNAME=sal
-TARGET=qa_osl_condition
+TARGET=sal_ut_osl_condition
ENABLE_EXCEPTIONS=TRUE
@@ -35,22 +35,19 @@ ENABLE_EXCEPTIONS=TRUE
CFLAGS+= $(LFS_CFLAGS)
CXXFLAGS+= $(LFS_CFLAGS)
-# BEGIN ----------------------------------------------------------------
-# auto generated Target:Condition by codegen.pl
-SHL1OBJS= \
- $(SLO)$/osl_Condition.obj
+.IF "$(ENABLE_UNIT_TESTS)" != "YES"
+all:
+ @echo unit tests are disabled. Nothing to do.
-SHL1TARGET= osl_Condition
-SHL1STDLIBS= $(SALLIB) $(CPPUNITLIB) $(TESTSHL2LIB)
+.ELSE
-SHL1IMPLIB= i$(SHL1TARGET)
+APP1OBJS = $(OBJ)/osl_Condition.obj
+APP1RPATH = NONE
+APP1STDLIBS = $(GTESTLIB) $(SALLIB)
+APP1TARGET = sal_ut_osl_condition
+APP1TEST = enabled
+#APP1TEST = disabled
-DEF1NAME =$(SHL1TARGET)
-SHL1VERSIONMAP = $(PRJ)$/qa$/export.map
-# auto generated Target:Condition
-# END ------------------------------------------------------------------
+.INCLUDE: target.mk
-# --- Targets ------------------------------------------------------
-
-.INCLUDE : target.mk
-.INCLUDE : _cppunit.mk
+.ENDIF
diff --git a/sal/qa/osl/condition/osl_Condition.cxx b/sal/qa/osl/condition/osl_Condition.cxx
index 0e5f080d00eb..7231d0538d44 100644
--- a/sal/qa/osl/condition/osl_Condition.cxx
+++ b/sal/qa/osl/condition/osl_Condition.cxx
@@ -29,6 +29,12 @@
//------------------------------------------------------------------------
#include <osl_Condition_Const.h>
+#ifdef WNT
+#include <Windows.h>
+#endif
+
+#include "gtest/gtest.h"
+
using namespace osl;
using namespace rtl;
@@ -41,8 +47,8 @@ using namespace rtl;
*/
inline void printBool( sal_Bool bOk )
{
- t_print("#printBool# " );
- ( sal_True == bOk ) ? t_print("TRUE!\n" ): t_print("FALSE!\n" );
+ printf("#printBool# " );
+ ( sal_True == bOk ) ? printf("TRUE!\n" ): printf("FALSE!\n" );
}
/** print a UNI_CODE String.
@@ -51,9 +57,9 @@ inline void printUString( const ::rtl::OUString & str )
{
rtl::OString aString;
- t_print("#printUString_u# " );
+ printf("#printUString_u# " );
aString = ::rtl::OUStringToOString( str, RTL_TEXTENCODING_ASCII_US );
- t_print("%s\n", aString.getStr( ) );
+ printf("%s\n", aString.getStr( ) );
}
/** wait _nSec seconds.
@@ -61,7 +67,7 @@ inline void printUString( const ::rtl::OUString & str )
void thread_sleep( sal_Int32 _nSec )
{
/// print statement in thread process must use fflush() to force display.
- t_print("# wait %d seconds. ", _nSec );
+ printf("# wait %d seconds. ", _nSec );
fflush( stdout );
#ifdef WNT //Windows
@@ -70,7 +76,7 @@ void thread_sleep( sal_Int32 _nSec )
#if ( defined UNX ) || ( defined OS2 ) //Unix
sleep( _nSec );
#endif
- t_print("# done\n" );
+ printf("# done\n" );
}
enum ConditionType
@@ -121,260 +127,175 @@ protected:
namespace osl_Condition
{
-
/** testing the method:
Condition()
*/
- class ctors : public CppUnit::TestFixture
- {
- public:
- sal_Bool bRes, bRes1;
-
- void ctors_001( )
- {
- ::osl::Condition aCond;
- bRes = aCond.check( );
+ TEST(Sal_Test_Condition, ctors_001) {
+ ::osl::Condition aCond;
+ sal_Bool bRes = aCond.check( );
- CPPUNIT_ASSERT_MESSAGE( "#test comment#: create a condition its initial check state should be sal_False.",
- sal_False == bRes );
- }
-
- void ctors_002( )
- {
- ::osl::Condition aCond;
- aCond.set( );
- bRes = aCond.check( );
+ // #test comment#: create a condition its initial check state should be sal_False.
+ ASSERT_TRUE( !bRes );
+ }
- CPPUNIT_ASSERT_MESSAGE( "#test comment#: create a condition and set it.",
- sal_True == bRes );
- }
+ TEST(Sal_Test_Condition, ctors_002) {
+ ::osl::Condition aCond;
+ aCond.set( );
+ sal_Bool bRes = aCond.check( );
- CPPUNIT_TEST_SUITE( ctors );
- CPPUNIT_TEST( ctors_001 );
- CPPUNIT_TEST( ctors_002 );
- CPPUNIT_TEST_SUITE_END( );
- }; // class ctors
+ // #test comment#: create a condition and set it.
+ ASSERT_TRUE( bRes );
+ }
/** testing the method:
void set()
*/
- class set : public CppUnit::TestFixture
- {
- public:
- sal_Bool bRes, bRes1, bRes2;
+ TEST(Sal_Test_Condition, set_001) {
+ ::osl::Condition aCond;
+ aCond.set( );
+ sal_Bool bRes = aCond.check( );
- void set_001( )
- {
- ::osl::Condition aCond;
- aCond.set( );
- bRes = aCond.check( );
+ // #test comment#: check state should be sal_True after set.
+ ASSERT_TRUE( bRes );
+ }
- CPPUNIT_ASSERT_MESSAGE( "#test comment#: check state should be sal_True after set.",
- sal_True == bRes );
- }
+ TEST(Sal_Test_Condition, set_002) {
+ ::osl::Condition aCond;
+ ConditionThread myThread1( aCond, thread_type_wait );
+ myThread1.create();
+ sal_Bool bRes = myThread1.isRunning( );
- void set_002( )
- {
- ::osl::Condition aCond;
- ConditionThread myThread1( aCond, thread_type_wait );
- myThread1.create();
- bRes = myThread1.isRunning( );
-
- ConditionThread myThread2( aCond, thread_type_set );
- myThread2.create();
- thread_sleep(1);
- bRes1 = myThread1.isRunning( );
- bRes2 = aCond.check( );
-
- myThread1.join( );
- myThread2.join( );
-
- CPPUNIT_ASSERT_MESSAGE( "#test comment#: use one thread to set the condition in order to release another thread.",
- sal_True == bRes && sal_False == bRes1 && sal_True == bRes2 );
- }
+ ConditionThread myThread2( aCond, thread_type_set );
+ myThread2.create();
+ thread_sleep(1);
+ sal_Bool bRes1 = myThread1.isRunning( );
+ sal_Bool bRes2 = aCond.check( );
+ myThread1.join( );
+ myThread2.join( );
- CPPUNIT_TEST_SUITE( set );
- CPPUNIT_TEST( set_001 );
- CPPUNIT_TEST( set_002 );
- CPPUNIT_TEST_SUITE_END( );
- }; // class set
+ // #test comment#: use one thread to set the condition in order to release another thread."
+ ASSERT_TRUE( bRes && !bRes1 && bRes2 );
+ }
/** testing the method:
void reset()
*/
- class reset : public CppUnit::TestFixture
- {
- public:
- sal_Bool bRes, bRes1, bRes2;
-
- void reset_001( )
- {
- ::osl::Condition aCond;
- aCond.reset( );
+ TEST(Sal_Test_Condition, reset_001) {
+ ::osl::Condition aCond;
+ aCond.reset( );
- ConditionThread myThread( aCond, thread_type_wait );
- myThread.create();
- bRes = myThread.isRunning( );
- bRes2 = aCond.check( );
+ ConditionThread myThread( aCond, thread_type_wait );
+ myThread.create();
+ sal_Bool bRes = myThread.isRunning( );
+ sal_Bool bRes2 = aCond.check( );
- aCond.set( );
- myThread.join( );
- bRes1 = myThread.isRunning( );
+ aCond.set( );
+ myThread.join( );
+ sal_Bool bRes1 = myThread.isRunning( );
- CPPUNIT_ASSERT_MESSAGE( "#test comment#: wait will cause a reset thread block, use set to release it.",
- sal_True == bRes && sal_False == bRes1 && sal_False == bRes2 );
- }
+ // #test comment#: wait will cause a reset thread block, use set to release it.
+ ASSERT_TRUE( bRes && !bRes1 && !bRes2 );
+ }
- void reset_002( )
- {
- ::osl::Condition aCond;
- aCond.reset( );
- bRes = aCond.check( );
- aCond.set( );
- bRes1 = aCond.check( );
-
- CPPUNIT_ASSERT_MESSAGE( "#test comment#: create a condition and reset/set it.",
- ( sal_False == bRes && sal_True == bRes1 ) );
- }
+ TEST(Sal_Test_Condition, reset_002) {
+ ::osl::Condition aCond;
+ aCond.reset( );
+ sal_Bool bRes = aCond.check( );
+ aCond.set( );
+ sal_Bool bRes1 = aCond.check( );
- CPPUNIT_TEST_SUITE( reset );
- CPPUNIT_TEST( reset_001 );
- CPPUNIT_TEST( reset_002 );
- CPPUNIT_TEST_SUITE_END( );
- }; // class reset
+ // #test comment#: create a condition and reset/set it.
+ ASSERT_TRUE( sal_False == bRes && sal_True == bRes1 );
+ }
/** testing the method:
Result wait(const TimeValue *pTimeout = 0)
*/
- class wait : public CppUnit::TestFixture
- {
- public:
- sal_Bool bRes, bRes1, bRes2;
- TimeValue *tv1;
+ TEST(Sal_Test_Condition, wait_001) {
+ TimeValue tv1 = {1,0};
- void setUp( )
- {
- tv1 = (TimeValue*)malloc(sizeof(TimeValue));
- tv1->Seconds = 1;
+ ::osl::Condition cond1;
+ ::osl::Condition cond2;
+ ::osl::Condition cond3;
- }
+ cond1.set();
+ cond2.set();
- void tearDown( )
- {
- free( tv1 );
- }
-
-
- void wait_001( )
- {
- ::osl::Condition cond1;
- ::osl::Condition cond2;
- ::osl::Condition cond3;
-
- cond1.set();
- cond2.set();
-
-osl::Condition::Result r1=cond1.wait(tv1);
-osl::Condition::Result r2=cond2.wait();
-osl::Condition::Result r3=cond3.wait(tv1);
-fprintf(stderr,"%d %d %d\n",r1,r2,r3);
- CPPUNIT_ASSERT_MESSAGE( "#test comment#: test three types of wait.",
- (cond1.wait(tv1) == ::osl::Condition::result_ok) &&
- (cond2.wait() == ::osl::Condition::result_ok) &&
- (cond3.wait(tv1) == ::osl::Condition::result_timeout) );
+ osl::Condition::Result r1=cond1.wait(&tv1);
+ osl::Condition::Result r2=cond2.wait();
+ osl::Condition::Result r3=cond3.wait(&tv1);
+ fprintf(stderr,"%d %d %d\n",r1,r2,r3);
- }
+ // #test comment#: test three types of wait.
+ ASSERT_TRUE( cond1.wait(&tv1) == ::osl::Condition::result_ok );
+ ASSERT_TRUE( cond2.wait() == ::osl::Condition::result_ok );
+ ASSERT_TRUE( cond3.wait(&tv1) == ::osl::Condition::result_timeout );
+ }
- void wait_002( )
- {
- ::osl::Condition aCond;
- ::osl::Condition::Result wRes, wRes1;
+ TEST(Sal_Test_Condition, wait_002) {
+ TimeValue tv1 = {1,0};
- aCond.reset( );
- bRes = aCond.check( );
- wRes = aCond.wait( tv1 );
+ ::osl::Condition aCond;
+ ::osl::Condition::Result wRes, wRes1;
- aCond.set( );
- wRes1 = aCond.wait( tv1 );
- bRes1 = aCond.check( );
+ aCond.reset( );
+ sal_Bool bRes = aCond.check( );
+ wRes = aCond.wait( &tv1 );
- CPPUNIT_ASSERT_MESSAGE( "#test comment#: wait a condition after set/reset.",
- ( sal_False == bRes ) && ( sal_True == bRes1 ) &&
- ( ::osl::Condition::result_timeout == wRes ) &&
- ( ::osl::Condition::result_ok == wRes1 ) );
- }
+ aCond.set( );
+ wRes1 = aCond.wait( &tv1 );
+ sal_Bool bRes1 = aCond.check( );
- CPPUNIT_TEST_SUITE( wait );
- CPPUNIT_TEST( wait_001 );
- CPPUNIT_TEST( wait_002 );
- CPPUNIT_TEST_SUITE_END( );
- }; // class wait
+ // #test comment#: wait a condition after set/reset.
+ ASSERT_TRUE( !bRes );
+ ASSERT_TRUE( bRes1 );
+ ASSERT_TRUE( ::osl::Condition::result_timeout == wRes );
+ ASSERT_TRUE( ::osl::Condition::result_ok == wRes1 );
+ }
/** testing the method:
sal_Bool check()
*/
- class check : public CppUnit::TestFixture
- {
- public:
- sal_Bool bRes, bRes1, bRes2;
-
- void check_001( )
- {
- ::osl::Condition aCond;
-
- aCond.reset( );
- bRes = aCond.check( );
- aCond.set( );
- bRes1 = aCond.check( );
-
- CPPUNIT_ASSERT_MESSAGE( "#test comment#: check the condition states.",
- ( sal_False == bRes && sal_True == bRes1 ) );
- }
-
- void check_002( )
- {
- ::osl::Condition aCond;
- aCond.reset( );
-
- ConditionThread myThread( aCond, thread_type_set );
- myThread.create( );
- myThread.join( );
- bRes = aCond.check( );
-
- ConditionThread myThread1( aCond, thread_type_reset );
- myThread1.create( );
- myThread1.join( );
- bRes1 = aCond.check( );
+ TEST(Sal_Test_Condition, check_001) {
+ ::osl::Condition aCond;
+ aCond.reset( );
+ sal_Bool bRes = aCond.check( );
+ aCond.set( );
+ sal_Bool bRes1 = aCond.check( );
+
+ // #test comment#: check the condition states.
+ ASSERT_TRUE( !bRes && bRes1 );
+ }
- CPPUNIT_ASSERT_MESSAGE( "#test comment#: use threads to set/reset Condition and check it in main routine.",
- ( sal_True == bRes && sal_False == bRes1 ) );
- }
+ TEST(Sal_Test_Condition, check_002) {
+ ::osl::Condition aCond;
+ aCond.reset( );
- CPPUNIT_TEST_SUITE( check );
- CPPUNIT_TEST( check_001 );
- CPPUNIT_TEST( check_002 );
- CPPUNIT_TEST_SUITE_END( );
- }; // class check
+ ConditionThread myThread( aCond, thread_type_set );
+ myThread.create( );
+ myThread.join( );
+ sal_Bool bRes = aCond.check( );
+ ConditionThread myThread1( aCond, thread_type_reset );
+ myThread1.create( );
+ myThread1.join( );
+ sal_Bool bRes1 = aCond.check( );
-// -----------------------------------------------------------------------------
-CPPUNIT_TEST_SUITE_NAMED_REGISTRATION(osl_Condition::ctors, "osl_Condition");
-CPPUNIT_TEST_SUITE_NAMED_REGISTRATION(osl_Condition::set, "osl_Condition");
-CPPUNIT_TEST_SUITE_NAMED_REGISTRATION(osl_Condition::reset, "osl_Condition");
-CPPUNIT_TEST_SUITE_NAMED_REGISTRATION(osl_Condition::wait, "osl_Condition");
-CPPUNIT_TEST_SUITE_NAMED_REGISTRATION(osl_Condition::check, "osl_Condition");
-// -----------------------------------------------------------------------------
+ // #test comment#: use threads to set/reset Condition and check it in main routine.
+ ASSERT_TRUE( bRes );
+ ASSERT_TRUE( !bRes1 );
+ }
} // namespace osl_Condition
-// -----------------------------------------------------------------------------
-
-// this macro creates an empty function, which will called by the RegisterAllFunctions()
-// to let the user the possibility to also register some functions by hand.
-NOADDITIONAL;
+int main(int argc, char **argv)
+{
+ ::testing::InitGoogleTest(&argc, argv);
+ return RUN_ALL_TESTS();
+}
diff --git a/sal/qa/osl/condition/osl_Condition_Const.h b/sal/qa/osl/condition/osl_Condition_Const.h
index df08c9e2a28a..8ab1470df2fb 100644
--- a/sal/qa/osl/condition/osl_Condition_Const.h
+++ b/sal/qa/osl/condition/osl_Condition_Const.h
@@ -52,7 +52,7 @@
#include <unistd.h>
#endif
-#include <testshl/simpleheader.hxx>
+//#include <testshl/simpleheader.hxx>
#define OSLTEST_DECLARE_USTRING( str_name, str_value ) \
::rtl::OUString a##str_name = rtl::OUString::createFromAscii( str_value )
@@ -62,7 +62,7 @@
//------------------------------------------------------------------------
OSLTEST_DECLARE_USTRING( TestCon, "testcondition" );
-const char pTestString[17] = "Sun Microsystems";
+const char pTestString[27] = "Apache Software Foundation";
#endif /* _OSL_CONDITION_CONST_H_ */
diff --git a/sal/qa/osl/file/osl_File.cxx b/sal/qa/osl/file/osl_File.cxx
index 8985ba90c0f0..eee364acc76d 100644
--- a/sal/qa/osl/file/osl_File.cxx
+++ b/sal/qa/osl/file/osl_File.cxx
@@ -347,7 +347,7 @@ inline sal_Bool isURL( const ::rtl::OUString pathname )
return ( ( pathname.indexOf( aPreURL ) == 0 ) ? sal_True : sal_False );
}
-/** concat two part to form a URL or system path, add PATH_SEPERATOR between them if necessary, add "file:///" to begining if necessary.
+/** concat two part to form a URL or system path, add PATH_SEPERATOR between them if necessary, add "file:///" to beginning if necessary.
*/
inline void concatURL( ::rtl::OUString & pathname1, const ::rtl::OUString & pathname2 )
{
@@ -588,7 +588,7 @@ inline sal_Bool ifFileExist( const ::rtl::OUString & str )
}
-//check if the file can be writen
+//check if the file can be written
inline sal_Bool ifFileCanWrite( const ::rtl::OUString & str )
{
sal_Bool bCheckResult = sal_False;
@@ -1284,7 +1284,7 @@ namespace osl_FileBase
the second only on windows based systems
the first parameter are a file URL where we want to get the system path of,
the second parameter is the assumed error of the osl_getSystemPathFromFileURL() function,
- the thrid parameter is the assumed result string, the string will only test, if it's length is greater 0
+ the third parameter is the assumed result string, the string will only test, if it's length is greater 0
*/
void SystemPath_FileURL::getSystemPathFromFileURL_001_1()
@@ -1461,7 +1461,7 @@ namespace osl_FileBase
}
- //CJK charactors case
+ //CJK characters case
void SystemPath_FileURL::getSystemPathFromFileURL_005( )
{
::rtl::OUString aUStr;
@@ -4497,7 +4497,7 @@ namespace osl_File
nError1 = testFile.close( );
CPPUNIT_ASSERT( ::osl::FileBase::E_None == nError1 );
- CPPUNIT_ASSERT_MESSAGE( "test for read function: read from a special positon in the file",
+ CPPUNIT_ASSERT_MESSAGE( "test for read function: read from a special position in the file",
( 52 == nFilePointer ) && ( 26 == nCount_read ) && ( 0 == strncmp( buffer_read, &pBuffer_Char[26], 26 ) ) );
}
@@ -4546,7 +4546,7 @@ namespace osl_File
//get the current pointer;
nError1 = testFile.getPos( nFilePointer );
CPPUNIT_ASSERT( ::osl::FileBase::E_None == nError1 );
- //reset pointer to the begining;
+ //reset pointer to the beginning;
nError1 = testFile.setPos( Pos_Absolut, 0 );
CPPUNIT_ASSERT( ::osl::FileBase::E_None == nError1 );
nError1 = testFile.read( buffer_read, 10, nCount_read );
@@ -6747,7 +6747,7 @@ inline void insertPID( ::rtl::OUString & pathname )
/** to do some initialized work, we replace the NOADDITIONAL macro with the initialize work which
will check the file and directory existence. and set some variables for test use.
- to simplify the initialize work, we seperate it into UNIX section and Windows section, the main task
+ to simplify the initialize work, we separate it into UNIX section and Windows section, the main task
of initialization is adapt all URL defined in osl_File_Const.h to TEMP/USERPID/URL style format,
since there may be an instance that multiuser execute test at the same time, and the temp file
may not be clean up in this case due to access right problem.
@@ -6808,7 +6808,7 @@ class GlobalObject
}
// LLA: t_print("after deleteTestDirectory\n");
- //~ special clean up task in Windows and Unix seperately;
+ //~ special clean up task in Windows and Unix separately;
#if ( defined UNX ) || ( defined OS2 )
//~ some clean up task for UNIX OS
;
diff --git a/sal/qa/osl/module/osl_Module_Const.h b/sal/qa/osl/module/osl_Module_Const.h
index 13e99d2ee744..d3268ee78ec5 100644
--- a/sal/qa/osl/module/osl_Module_Const.h
+++ b/sal/qa/osl/module/osl_Module_Const.h
@@ -44,7 +44,7 @@
# define FILE_PREFIX "file:///"
-//Korea charactors
+//Korea characters
::rtl::OUString aKname(
RTL_CONSTASCII_STRINGPARAM(
"/\xEC\x95\x88\xEB\x85\x95\xED\x95\x98\xEC\x84\xB8\xEC\x9A\x94"),
diff --git a/sal/qa/osl/mutex/osl_Mutex.cxx b/sal/qa/osl/mutex/osl_Mutex.cxx
index fcd00e6927c9..ad91d75cf187 100644
--- a/sal/qa/osl/mutex/osl_Mutex.cxx
+++ b/sal/qa/osl/mutex/osl_Mutex.cxx
@@ -500,7 +500,7 @@ namespace osl_Mutex
if ( bRes2 == sal_True )
aMutex.release( );
- CPPUNIT_ASSERT_MESSAGE( "release Mutex: try to aquire before and after the mutex has been released",
+ CPPUNIT_ASSERT_MESSAGE( "release Mutex: try to acquire before and after the mutex has been released",
bRes1 == sal_False && bRes2 == sal_True && bRunning == sal_True );
}
@@ -514,7 +514,7 @@ namespace osl_Mutex
sal_Bool bRes1 = aMutex.release( );
sal_Bool bRes2 = aMutex.release( );
- CPPUNIT_ASSERT_MESSAGE( "release Mutex: mutex should not be released without aquire, should not release twice. although the behaviour is still under discussion, this test is passed on (LINUX), not passed on (SOLARIS)&(WINDOWS)",
+ CPPUNIT_ASSERT_MESSAGE( "release Mutex: mutex should not be released without acquire, should not release twice. although the behaviour is still under discussion, this test is passed on (LINUX), not passed on (SOLARIS)&(WINDOWS)",
bRes1 == sal_False && bRes2 == sal_False );
#endif
}
@@ -655,7 +655,7 @@ namespace osl_Guard
aMutex.release( );
myThread.join( );
- CPPUNIT_ASSERT_MESSAGE("GuardThread constructor: reference initialization, aquire the mutex before running the thread, then check if it is blocking.",
+ CPPUNIT_ASSERT_MESSAGE("GuardThread constructor: reference initialization, acquire the mutex before running the thread, then check if it is blocking.",
bRes == sal_True);
}
@@ -719,7 +719,7 @@ namespace osl_ClearableGuard
/// it will return sal_False if the aMutex has not been Guarded.
sal_Bool bRes = aMutex.release( );
- CPPUNIT_ASSERT_MESSAGE("ClearableMutexGuard constructor, test the aquire operation when initilized.",
+ CPPUNIT_ASSERT_MESSAGE("ClearableMutexGuard constructor, test the acquire operation when initilized.",
bRes == sal_True );
}
@@ -733,7 +733,7 @@ namespace osl_ClearableGuard
/// it will return sal_False if the aMutex has not been Guarded.
sal_Bool bRes = aMutex.release( );
- CPPUNIT_ASSERT_MESSAGE("ClearableMutexGuard constructor, test the aquire operation when initilized, we use reference constructor this time.",
+ CPPUNIT_ASSERT_MESSAGE("ClearableMutexGuard constructor, test the acquire operation when initilized, we use reference constructor this time.",
bRes == sal_True );
}
@@ -858,7 +858,7 @@ namespace osl_ResettableGuard
/// it will return sal_False if the aMutex has not been Guarded.
sal_Bool bRes = aMutex.release( );
- CPPUNIT_ASSERT_MESSAGE("ResettableMutexGuard constructor, test the aquire operation when initilized.",
+ CPPUNIT_ASSERT_MESSAGE("ResettableMutexGuard constructor, test the acquire operation when initilized.",
bRes == sal_True );
}
@@ -872,7 +872,7 @@ namespace osl_ResettableGuard
/// it will return sal_False if the aMutex has not been Guarded.
sal_Bool bRes = aMutex.release( );
- CPPUNIT_ASSERT_MESSAGE( "ResettableMutexGuard constructor, test the aquire operation when initilized, we use reference constructor this time.",
+ CPPUNIT_ASSERT_MESSAGE( "ResettableMutexGuard constructor, test the acquire operation when initilized, we use reference constructor this time.",
bRes == sal_True );
}
@@ -920,7 +920,7 @@ namespace osl_ResettableGuard
myMutexGuard.reset( );
sal_Bool bRes1 = aMutex.release( );
- CPPUNIT_ASSERT_MESSAGE( "ResettableMutexGuard method: reset, release after clear and reset, on Solaris, the mutex can be release without aquire, so it can not passed on (SOLARIS), but not the reason for reset_002",
+ CPPUNIT_ASSERT_MESSAGE( "ResettableMutexGuard method: reset, release after clear and reset, on Solaris, the mutex can be release without acquire, so it can not passed on (SOLARIS), but not the reason for reset_002",
( sal_False == bRes ) && ( sal_True == bRes1 ) );
}
diff --git a/sal/qa/osl/pipe/makefile.mk b/sal/qa/osl/pipe/makefile.mk
index 4378a5101672..776470cf9efd 100644
--- a/sal/qa/osl/pipe/makefile.mk
+++ b/sal/qa/osl/pipe/makefile.mk
@@ -20,15 +20,10 @@
#**************************************************************
-
-.IF "$(OOO_SUBSEQUENT_TESTS)" == ""
-nothing .PHONY:
-.ELSE
-
PRJ=..$/..$/..
PRJNAME=sal
-TARGET=qa_osl_pipe
+TARGET=sal_ut_osl_pipe
ENABLE_EXCEPTIONS=TRUE
@@ -39,28 +34,20 @@ ENABLE_EXCEPTIONS=TRUE
CFLAGS+= $(LFS_CFLAGS)
CXXFLAGS+= $(LFS_CFLAGS)
-CFLAGSCXX += $(CPPUNIT_CFLAGS)
+.IF "$(ENABLE_UNIT_TESTS)" != "YES"
+all:
+ @echo unit tests are disabled. Nothing to do.
-# BEGIN ----------------------------------------------------------------
-# auto generated Target:Pipe by codegen.pl
-SHL1OBJS= \
- $(SLO)$/osl_Pipe.obj
-
-SHL1TARGET= osl_Pipe
-SHL1STDLIBS= $(SALLIB) $(CPPUNITLIB) $(TESTLIB)
-
-SHL1IMPLIB= i$(SHL1TARGET)
-# SHL1DEF= $(MISC)$/$(SHL1TARGET).def
+.ELSE
-DEF1NAME =$(SHL1TARGET)
-SHL1VERSIONMAP = $(PRJ)$/qa$/export.map
-SHL1RPATH = NONE
-# auto generated Target:Pipe
-# END ------------------------------------------------------------------
+APP1OBJS = $(OBJ)/osl_Pipe.obj
+APP1RPATH = NONE
+APP1STDLIBS = $(GTESTLIB) $(SALLIB)
+APP1TARGET = sal_ut_osl_pipe
+APP1TEST = enabled
+#APP1TEST = disabled
-# --- Targets ------------------------------------------------------
+.INCLUDE: target.mk
-.INCLUDE : target.mk
-.INCLUDE : _cppunit.mk
+.ENDIF
-.END
diff --git a/sal/qa/osl/pipe/osl_Pipe.cxx b/sal/qa/osl/pipe/osl_Pipe.cxx
index 12f6d059c484..dd0bed9c1186 100644
--- a/sal/qa/osl/pipe/osl_Pipe.cxx
+++ b/sal/qa/osl/pipe/osl_Pipe.cxx
@@ -28,11 +28,10 @@
// include files
//------------------------------------------------------------------------
-#include "cppunit/TestAssert.h"
-#include "cppunit/TestFixture.h"
-#include "cppunit/extensions/HelperMacros.h"
-#include "cppunit/plugin/TestPlugIn.h"
-#include "test/uniquepipename.hxx"
+#ifdef WNT
+#include <Windows.h>
+#endif
+
#include <sal/types.h>
#include <rtl/ustring.hxx>
@@ -48,12 +47,15 @@
#include <osl/pipe.hxx>
#endif
#include <osl/time.h>
+#include <osl/process.h>
#ifdef UNX
#include <unistd.h>
#endif
#include <string.h>
+#include "gtest/gtest.h"
+
using namespace osl;
using namespace rtl;
@@ -61,6 +63,16 @@ using namespace rtl;
// helper functions
//------------------------------------------------------------------------
+
+/** helper function for unique pipe names
+ */
+OUString uniquePipeName(OUString const & name) {
+ oslProcessInfo info;
+ info.Size = sizeof info;
+ EXPECT_TRUE( osl_Process_E_None == osl_getProcessInfo(0, osl_Process_IDENTIFIER, &info) );
+ return name + OUString::valueOf((sal_Int32)info.Ident);
+}
+
/** print Boolean value.
*/
inline void printBool( sal_Bool bOk )
@@ -133,9 +145,9 @@ inline void printPipeError( ::osl::Pipe aPipe )
//------------------------------------------------------------------------
const rtl::OUString aTestPipeName = rtl::OUString::createFromAscii( "testpipe2" );
const rtl::OUString aTestPipe1 = rtl::OUString::createFromAscii( "testpipe1" );
-const rtl::OUString aTestString = rtl::OUString::createFromAscii( "Sun Microsystems" );
+const rtl::OUString aTestString = rtl::OUString::createFromAscii( "Apache Software Foundation" );
-const OString m_pTestString1("Sun Microsystems");
+const OString m_pTestString1("Apache Software Foundation");
const OString m_pTestString2("test pipe PASS/OK");
//------------------------------------------------------------------------
@@ -158,159 +170,119 @@ namespace osl_Pipe
inline Pipe(oslPipe pipe, __sal_NoAcquire noacquire );
inline Pipe(oslPipe Pipe);
*/
- class ctors : public CppUnit::TestFixture
- {
- public:
- sal_Bool bRes, bRes1;
-
- void setUp( )
- {
- }
+ TEST(Sal_Test_Pipe, ctors_none) {
+ ::osl::Pipe aPipe;
+ sal_Bool bRes = aPipe.is( );
- void tearDown( )
- {
- }
-
- void ctors_none( )
- {
- ::osl::Pipe aPipe;
- bRes = aPipe.is( );
-
- CPPUNIT_ASSERT_MESSAGE( "#test comment#: test constructor with no parameter, yet no case to test.",
- sal_False == bRes );
- }
-
- void ctors_name_option( )
- {
- /// create a named pipe.
- ::osl::Pipe aPipe( test::uniquePipeName(aTestPipeName), osl_Pipe_CREATE );
- ::osl::Pipe aAssignPipe( test::uniquePipeName(aTestPipeName), osl_Pipe_OPEN );
+ // #test comment#: test constructor with no parameter, yet no case to test.
+ ASSERT_TRUE( !bRes );
+ }
- bRes = aPipe.is( ) && aAssignPipe.is( );
+ TEST(Sal_Test_Pipe, ctors_name_option) {
+ /// create a named pipe.
+ ::osl::Pipe aPipe( uniquePipeName(aTestPipeName), osl_Pipe_CREATE );
+ ::osl::Pipe aAssignPipe( uniquePipeName(aTestPipeName), osl_Pipe_OPEN );
- CPPUNIT_ASSERT_MESSAGE( "#test comment#: test constructor with name and option.",
- sal_True == bRes );
- }
+ sal_Bool bRes = aPipe.is( ) && aAssignPipe.is( );
- void ctors_name_option_security( )
- {
- /// create a security pipe.
- const ::osl::Security rSecurity;
- ::osl::Pipe aSecurityPipe( test::uniquePipeName(aTestPipeName), osl_Pipe_CREATE, rSecurity );
+ // #test comment#: test constructor with name and option.
+ ASSERT_TRUE( bRes );
+ }
- bRes = aSecurityPipe.is( );
+ TEST(Sal_Test_Pipe, ctors_name_option_security) {
+ /// create a security pipe.
+ const ::osl::Security rSecurity;
+ ::osl::Pipe aSecurityPipe( uniquePipeName(aTestPipeName), osl_Pipe_CREATE, rSecurity );
- CPPUNIT_ASSERT_MESSAGE( "#test comment#: test constructor with name, option and security, the test of security is not implemented yet.",
- sal_True == bRes );
- }
+ sal_Bool bRes = aSecurityPipe.is( );
- void ctors_copy( )
- {
- /// create a pipe.
- ::osl::Pipe aPipe( test::uniquePipeName(aTestPipeName), osl_Pipe_CREATE );
- /// create a pipe using copy constructor.
- ::osl::Pipe aCopyPipe( aPipe );
+ // #test comment#: test constructor with name, option and security, the test of security is not implemented yet.
+ ASSERT_TRUE( bRes );
+ }
- bRes = aCopyPipe.is( ) && aCopyPipe == aPipe;
+ TEST(Sal_Test_Pipe, ctors_copy) {
+ /// create a pipe.
+ ::osl::Pipe aPipe( uniquePipeName(aTestPipeName), osl_Pipe_CREATE );
+ /// create a pipe using copy constructor.
+ ::osl::Pipe aCopyPipe( aPipe );
- CPPUNIT_ASSERT_MESSAGE( "#test comment#: test copy constructor.",
- sal_True == bRes );
- }
+ sal_Bool bRes = aCopyPipe.is( ) && aCopyPipe == aPipe;
- /** tester comment:
+ // #test comment#: test copy constructor.
+ ASSERT_TRUE( bRes );
+ }
- When test the following two constructors, don't know how to test the
- acquire and no acquire action. possible plans:
- 1.release one handle and check the other( did not success since the
- other still exist and valid. )
- 2. release one handle twice to see getLastError( )(the getLastError
- always returns invalidError(LINUX)).
- */
- void ctors_no_acquire( )
- {
- /// create a pipe.
- ::osl::Pipe aPipe( test::uniquePipeName(aTestPipeName), osl_Pipe_CREATE );
- /// constructs a pipe reference without acquiring the handle.
- ::osl::Pipe aNoAcquirePipe( aPipe.getHandle( ), SAL_NO_ACQUIRE );
+ /** tester comment:
- bRes = aNoAcquirePipe.is( );
- ///aPipe.clear( );
- ///bRes1 = aNoAcquirePipe.is( );
+ When test the following two constructors, don't know how to test the
+ acquire and no acquire action. possible plans:
+ 1.release one handle and check the other( did not success since the
+ other still exist and valid. )
+ 2. release one handle twice to see getLastError( )(the getLastError
+ always returns invalidError(LINUX)).
+ */
+ TEST(Sal_Test_Pipe, ctors_no_acquire) {
+ /// create a pipe.
+ ::osl::Pipe aPipe( uniquePipeName(aTestPipeName), osl_Pipe_CREATE );
+ /// constructs a pipe reference without acquiring the handle.
+ ::osl::Pipe aNoAcquirePipe( aPipe.getHandle( ), SAL_NO_ACQUIRE );
+ sal_Bool bRes = aNoAcquirePipe.is( );
+ ///aPipe.clear( );
+ ///bRes1 = aNoAcquirePipe.is( );
- CPPUNIT_ASSERT_MESSAGE( "#test comment#: test constructor with no aquire of handle, only validation test, do not know how to test no acquire.",
- sal_True == bRes );
- }
- void ctors_acquire( )
- {
- /// create a base pipe.
- ::osl::Pipe aPipe( test::uniquePipeName(aTestPipeName), osl_Pipe_CREATE );
- /// constructs two pipes without acquiring the handle on the base pipe.
- ::osl::Pipe aAcquirePipe( aPipe.getHandle( ) );
- ::osl::Pipe aAcquirePipe1( NULL );
+ // #test comment#: test constructor with no acquire of handle, only validation test, do not know how to test no acquire.
+ ASSERT_TRUE( bRes );
+ }
- bRes = aAcquirePipe.is( );
- bRes1 = aAcquirePipe1.is( );
+ TEST(Sal_Test_Pipe, ctors_acquire) {
+ /// create a base pipe.
+ ::osl::Pipe aPipe( uniquePipeName(aTestPipeName), osl_Pipe_CREATE );
+ /// constructs two pipes without acquiring the handle on the base pipe.
+ ::osl::Pipe aAcquirePipe( aPipe.getHandle( ) );
+ ::osl::Pipe aAcquirePipe1( NULL );
- CPPUNIT_ASSERT_MESSAGE( "#test comment#: test constructor with no aquire of handle.only validation test, do not know how to test no acquire.",
- sal_True == bRes && sal_False == bRes1 );
- }
+ sal_Bool bRes = aAcquirePipe.is( );
+ sal_Bool bRes1 = aAcquirePipe1.is( );
- CPPUNIT_TEST_SUITE( ctors );
- CPPUNIT_TEST( ctors_none );
- CPPUNIT_TEST( ctors_name_option );
- CPPUNIT_TEST( ctors_name_option_security );
- CPPUNIT_TEST( ctors_copy );
- CPPUNIT_TEST( ctors_no_acquire );
- CPPUNIT_TEST( ctors_acquire );
- CPPUNIT_TEST_SUITE_END( );
- }; // class ctors
+ // #test comment#: test constructor with no acquire of handle.only validation test, do not know how to test no acquire.
+ ASSERT_TRUE( bRes && !bRes1 );
+ }
/** testing the method:
inline sal_Bool SAL_CALL is() const;
*/
- class is : public CppUnit::TestFixture
- {
- public:
- void is_001( )
- {
- ::osl::Pipe aPipe;
-
- CPPUNIT_ASSERT_MESSAGE( "#test comment#: test is(), check if the pipe is a valid one.", sal_False == aPipe.is( ) );
- }
+ TEST(Sal_Test_Pipe, is_001) {
+ ::osl::Pipe aPipe;
- void is_002( )
- {
- ::osl::Pipe aPipe( test::uniquePipeName(aTestPipeName), osl_Pipe_CREATE );
+ // #test comment#: test is(), check if the pipe is a valid one.
+ ASSERT_TRUE( !aPipe.is( ) );
+ }
- CPPUNIT_ASSERT_MESSAGE( "#test comment#: test is(), a normal pipe creation.", sal_True == aPipe.is( ) );
- }
+ TEST(Sal_Test_Pipe, is_002) {
+ ::osl::Pipe aPipe( uniquePipeName(aTestPipeName), osl_Pipe_CREATE );
- void is_003( )
- {
- ::osl::Pipe aPipe( test::uniquePipeName(aTestPipeName), osl_Pipe_CREATE );
- aPipe.clear( );
+ // #test comment#: test is(), a normal pipe creation.
+ ASSERT_TRUE( aPipe.is( ) );
+ }
- CPPUNIT_ASSERT_MESSAGE( "#test comment#: test is(), an invalid case.", sal_False == aPipe.is( ) );
- }
+ TEST(Sal_Test_Pipe, is_003) {
+ ::osl::Pipe aPipe( uniquePipeName(aTestPipeName), osl_Pipe_CREATE );
+ aPipe.clear( );
- void is_004( )
- {
- ::osl::Pipe aPipe( NULL );
+ // #test comment#: test is(), an invalid case
+ ASSERT_TRUE( !aPipe.is( ) );
+ }
- CPPUNIT_ASSERT_MESSAGE( "#test comment#: test is(), an invalid constructor.", sal_False == aPipe.is( ) );
- }
+ TEST(Sal_Test_Pipe, is_004) {
+ ::osl::Pipe aPipe( NULL );
- CPPUNIT_TEST_SUITE( is );
- CPPUNIT_TEST( is_001 );
- CPPUNIT_TEST( is_002 );
- CPPUNIT_TEST( is_003 );
- CPPUNIT_TEST( is_004 );
- CPPUNIT_TEST_SUITE_END( );
- }; // class is
+ // #test comment#: test is(), an invalid constructor.
+ ASSERT_TRUE( !aPipe.is( ) );
+ }
/** testing the methods:
@@ -319,387 +291,244 @@ namespace osl_Pipe
nline sal_Bool create( const ::rtl::OUString & strName,
oslPipeOptions Options = osl_Pipe_OPEN );
*/
- class create : public CppUnit::TestFixture
- {
- public:
- sal_Bool bRes, bRes1;
-
- /** tester comment:
+ TEST(Sal_Test_Pipe, create_named_security_001) {
+ const Security rSec;
+ ::osl::Pipe aPipe;
+ sal_Bool bRes = aPipe.create( uniquePipeName(aTestPipeName), osl_Pipe_CREATE, rSec );
+ sal_Bool bRes1 = aPipe.create( uniquePipeName(aTestPipeName), osl_Pipe_CREATE, rSec );
+ aPipe.clear( );
+
+ // #test comment#: test creation.
+ ASSERT_TRUE( bRes && !bRes1 );
+ }
- security create only be tested creation, security section is
- untested yet.
- */
+ TEST(Sal_Test_Pipe, create_named_security_002) {
+ const Security rSec;
+ ::osl::Pipe aPipe, aPipe1;
+ sal_Bool bRes = aPipe.create( uniquePipeName(aTestPipeName), osl_Pipe_CREATE, rSec );
+ sal_Bool bRes1 = aPipe1.create( uniquePipeName(aTestPipeName), osl_Pipe_OPEN, rSec );
+ aPipe.clear( );
- void create_named_security_001( )
- {
- const Security rSec;
- ::osl::Pipe aPipe;
- bRes = aPipe.create( test::uniquePipeName(aTestPipeName), osl_Pipe_CREATE, rSec );
- bRes1 = aPipe.create( test::uniquePipeName(aTestPipeName), osl_Pipe_CREATE, rSec );
- aPipe.clear( );
-
- CPPUNIT_ASSERT_MESSAGE( "#test comment#: test creation.",
- sal_True == bRes && sal_False == bRes1);
- }
-
- void create_named_security_002( )
- {
- const Security rSec;
- ::osl::Pipe aPipe, aPipe1;
- bRes = aPipe.create( test::uniquePipeName(aTestPipeName), osl_Pipe_CREATE, rSec );
- bRes1 = aPipe1.create( test::uniquePipeName(aTestPipeName), osl_Pipe_OPEN, rSec );
- aPipe.clear( );
-
- CPPUNIT_ASSERT_MESSAGE( "#test comment#: test creation and open.",
- sal_True == bRes && sal_True == bRes1);
- }
+ // #test comment#: test creation and open.
+ ASSERT_TRUE( bRes && bRes1 );
+ }
- void create_named_001( )
- {
- ::osl::Pipe aPipe;
- bRes = aPipe.create( test::uniquePipeName(aTestPipeName), osl_Pipe_CREATE );
- bRes1 = aPipe.create( test::uniquePipeName(aTestPipeName), osl_Pipe_CREATE );
- aPipe.clear( );
+ TEST(Sal_Test_Pipe, create_named_001) {
+ ::osl::Pipe aPipe;
+ sal_Bool bRes = aPipe.create( uniquePipeName(aTestPipeName), osl_Pipe_CREATE );
+ sal_Bool bRes1 = aPipe.create( uniquePipeName(aTestPipeName), osl_Pipe_CREATE );
+ aPipe.clear( );
- CPPUNIT_ASSERT_MESSAGE( "#test comment#: test creation.",
- sal_True == bRes && sal_False == bRes1);
- }
-
- void create_named_002( )
- {
- ::osl::Pipe aPipe, aPipe1;
- bRes = aPipe.create( test::uniquePipeName(aTestPipeName), osl_Pipe_CREATE );
- bRes1 = aPipe1.create( test::uniquePipeName(aTestPipeName), osl_Pipe_OPEN );
- aPipe.clear( );
+ // #test comment#: test creation.
+ ASSERT_TRUE( bRes && !bRes1);
+ }
- CPPUNIT_ASSERT_MESSAGE( "#test comment#: test creation and open.",
- sal_True == bRes && sal_True == bRes1);
- }
+ TEST(Sal_Test_Pipe, create_named_002) {
+ ::osl::Pipe aPipe, aPipe1;
+ sal_Bool bRes = aPipe.create( uniquePipeName(aTestPipeName), osl_Pipe_CREATE );
+ sal_Bool bRes1 = aPipe1.create( uniquePipeName(aTestPipeName), osl_Pipe_OPEN );
+ aPipe.clear( );
- void create_named_003( )
- {
- ::osl::Pipe aPipe;
- bRes = aPipe.create( test::uniquePipeName(aTestPipeName) );
- aPipe.clear( );
+ // #test comment#: test creation and open.
+ ASSERT_TRUE( bRes && bRes1);
+ }
- CPPUNIT_ASSERT_MESSAGE( "#test comment#: test default option is open.",
- sal_False == bRes );
- }
+ TEST(Sal_Test_Pipe, create_named_003) {
+ ::osl::Pipe aPipe;
+ sal_Bool bRes = aPipe.create( uniquePipeName(aTestPipeName) );
+ aPipe.clear( );
- CPPUNIT_TEST_SUITE( create );
- CPPUNIT_TEST( create_named_security_001 );
- CPPUNIT_TEST( create_named_security_002 );
- CPPUNIT_TEST( create_named_001 );
- CPPUNIT_TEST( create_named_002 );
- CPPUNIT_TEST( create_named_003 );
- CPPUNIT_TEST_SUITE_END( );
- }; // class create
+ // #test comment#: test default option is open.
+ ASSERT_TRUE( !bRes );
+ }
/** testing the method:
inline void SAL_CALL clear();
*/
- class clear : public CppUnit::TestFixture
- {
- public:
- sal_Bool bRes, bRes1;
-
- void clear_001( )
- {
- ::osl::Pipe aPipe;
- aPipe.create( test::uniquePipeName(aTestPipeName), osl_Pipe_CREATE );
- aPipe.clear( );
- bRes = aPipe.is( );
-
- CPPUNIT_ASSERT_MESSAGE( "#test comment#: test clear.",
- sal_False == bRes );
- }
-
- CPPUNIT_TEST_SUITE( clear );
- CPPUNIT_TEST( clear_001 );
- CPPUNIT_TEST_SUITE_END( );
- }; // class clear
+ TEST(Sal_Test_Pipe, clear_001) {
+ ::osl::Pipe aPipe;
+ aPipe.create( uniquePipeName(aTestPipeName), osl_Pipe_CREATE );
+ aPipe.clear( );
+ sal_Bool bRes = aPipe.is( );
+
+ // #test comment#: test clear.
+ ASSERT_TRUE( !bRes );
+ }
/** testing the methods:
inline Pipe& SAL_CALL operator= (const Pipe& pipe);
inline Pipe& SAL_CALL operator= (const oslPipe pipe );
*/
- class assign : public CppUnit::TestFixture
- {
- public:
- sal_Bool bRes, bRes1;
-
- void assign_ref( )
- {
- ::osl::Pipe aPipe, aPipe1;
- aPipe.create( test::uniquePipeName(aTestPipeName), osl_Pipe_CREATE );
- aPipe1 = aPipe;
- bRes = aPipe1.is( );
- bRes1 = aPipe == aPipe1;
- aPipe.close( );
- aPipe1.close( );
-
- CPPUNIT_ASSERT_MESSAGE( "#test comment#: test assign with reference.",
- sal_True == bRes && sal_True == bRes1 );
- }
-
- void assign_handle( )
- {
- ::osl::Pipe aPipe, aPipe1;
- aPipe.create( test::uniquePipeName(aTestPipeName), osl_Pipe_CREATE );
- aPipe1 = aPipe.getHandle( );
- bRes = aPipe1.is( );
- bRes1 = aPipe == aPipe1;
- aPipe.close( );
- aPipe1.close( );
-
- CPPUNIT_ASSERT_MESSAGE( "#test comment#: test assign with handle.",
- sal_True == bRes && sal_True == bRes1 );
- }
+ TEST(Sal_Test_Pipe, assign_ref) {
+ ::osl::Pipe aPipe, aPipe1;
+ aPipe.create( uniquePipeName(aTestPipeName), osl_Pipe_CREATE );
+ aPipe1 = aPipe;
+ sal_Bool bRes = aPipe1.is( );
+ sal_Bool bRes1 = aPipe == aPipe1;
+ aPipe.close( );
+ aPipe1.close( );
+
+ // #test comment#: test assign with reference.
+ ASSERT_TRUE( bRes && bRes1 );
+ }
- CPPUNIT_TEST_SUITE( assign );
- CPPUNIT_TEST( assign_ref );
- CPPUNIT_TEST( assign_handle );
- CPPUNIT_TEST_SUITE_END( );
- }; // class assign
+ TEST(Sal_Test_Pipe, assign_handle) {
+ ::osl::Pipe aPipe, aPipe1;
+ aPipe.create( uniquePipeName(aTestPipeName), osl_Pipe_CREATE );
+ aPipe1 = aPipe.getHandle( );
+ sal_Bool bRes = aPipe1.is( );
+ sal_Bool bRes1 = aPipe == aPipe1;
+ aPipe.close( );
+ aPipe1.close( );
+
+ // #test comment#: test assign with handle.
+ ASSERT_TRUE( bRes && bRes1 );
+ }
/** testing the method:
inline sal_Bool SAL_CALL isValid() const;
isValid( ) has not been implemented under the following platforms, please refer to osl/pipe.hxx
*/
- /*class isValid : public CppUnit::TestFixture
- {
- public:
- sal_Bool bRes, bRes1;
-
- void isValid_001( )
- {
- CPPUNIT_ASSERT_MESSAGE( "#test comment#: isValid() has not been implemented on all platforms.",
- sal_False );
- }
-
- CPPUNIT_TEST_SUITE( isValid );
- CPPUNIT_TEST( isValid_001 );
- CPPUNIT_TEST_SUITE_END( );
- };*/ // class isValid
+ // TEST(Sal_Test_Pipe, isValid_001) {
+ // ...
+ // // #test comment#: isValid() has not been implemented on all platforms.
+ // ASSERT_TRUE( ... );
+ // }
/** testing the method:
inline sal_Bool SAL_CALL operator==( const Pipe& rPipe ) const;
*/
- class isEqual : public CppUnit::TestFixture
- {
- public:
- sal_Bool bRes, bRes1;
-
- void isEqual_001( )
- {
- ::osl::Pipe aPipe;
- aPipe.create( test::uniquePipeName(aTestPipeName), osl_Pipe_CREATE );
- bRes = aPipe == aPipe;
- aPipe.close( );
-
- CPPUNIT_ASSERT_MESSAGE( "#test comment#: test isEqual(), compare its self.",
- sal_True == bRes );
- }
-
- void isEqual_002( )
- {
- ::osl::Pipe aPipe, aPipe1, aPipe2;
- aPipe.create( test::uniquePipeName(aTestPipeName), osl_Pipe_CREATE );
-
- aPipe1 = aPipe;
- aPipe2.create( test::uniquePipeName(aTestPipeName), osl_Pipe_CREATE );
+ TEST(Sal_Test_Pipe, isEqual_001) {
+ ::osl::Pipe aPipe;
+ aPipe.create( uniquePipeName(aTestPipeName), osl_Pipe_CREATE );
+ sal_Bool bRes = aPipe == aPipe;
+ aPipe.close( );
+
+ // #test comment#: test isEqual(), compare its self.
+ ASSERT_TRUE( bRes );
+ }
- bRes = aPipe == aPipe1;
- bRes1 = aPipe == aPipe2;
- aPipe.close( );
- aPipe1.close( );
- aPipe2.close( );
+ TEST(Sal_Test_Pipe, isEqual_002) {
+ ::osl::Pipe aPipe, aPipe1, aPipe2;
+ aPipe.create( uniquePipeName(aTestPipeName), osl_Pipe_CREATE );
+ aPipe1 = aPipe;
+ aPipe2.create( uniquePipeName(aTestPipeName), osl_Pipe_CREATE );
- CPPUNIT_ASSERT_MESSAGE( "#test comment#: test isEqual(),create one copy instance, and compare.",
- sal_True == bRes && sal_False == bRes1 );
- }
+ sal_Bool bRes = aPipe == aPipe1;
+ sal_Bool bRes1 = aPipe == aPipe2;
+ aPipe.close( );
+ aPipe1.close( );
+ aPipe2.close( );
- CPPUNIT_TEST_SUITE( isEqual );
- CPPUNIT_TEST( isEqual_001 );
- CPPUNIT_TEST( isEqual_002 );
- CPPUNIT_TEST_SUITE_END( );
- }; // class isEqual
+ // #test comment#: test isEqual(),create one copy instance, and compare.
+ ASSERT_TRUE( bRes && !bRes1 );
+ }
/** testing the method:
inline void SAL_CALL close();
*/
- class close : public CppUnit::TestFixture
- {
- public:
- sal_Bool bRes, bRes1;
-
- void close_001( )
- {
- ::osl::Pipe aPipe( test::uniquePipeName(aTestPipe1), osl_Pipe_CREATE );
- aPipe.close( );
- bRes = aPipe.is( );
+ TEST(Sal_Test_Pipe, close_001) {
+ ::osl::Pipe aPipe( uniquePipeName(aTestPipe1), osl_Pipe_CREATE );
+ aPipe.close( );
+ sal_Bool bRes = aPipe.is( );
- aPipe.clear( );
- bRes1 = aPipe.is( );
+ aPipe.clear( );
+ sal_Bool bRes1 = aPipe.is( );
- CPPUNIT_ASSERT_MESSAGE( "#test comment#: difference between close and clear.",
- sal_True == bRes && sal_False == bRes1);
- }
-
- void close_002( )
- {
- ::osl::StreamPipe aPipe( test::uniquePipeName(aTestPipe1), osl_Pipe_CREATE );
- aPipe.close( );
- int nRet = aPipe.send( m_pTestString1.getStr(), 3 );
+ // #test comment#: difference between close and clear.
+ ASSERT_TRUE( bRes && !bRes1);
+ }
- CPPUNIT_ASSERT_MESSAGE( "#test comment#: use after close.",
- OSL_PIPE_FAIL == nRet );
- }
+ TEST(Sal_Test_Pipe, close_002) {
+ ::osl::StreamPipe aPipe( uniquePipeName(aTestPipe1), osl_Pipe_CREATE );
+ aPipe.close( );
+ int nRet = aPipe.send( m_pTestString1.getStr(), 3 );
- CPPUNIT_TEST_SUITE( close );
- CPPUNIT_TEST( close_001 );
- CPPUNIT_TEST( close_002 );
- CPPUNIT_TEST_SUITE_END( );
- }; // class close
+ // #test comment#: use after close.
+ ASSERT_EQ( nRet, OSL_PIPE_FAIL );
+ }
/** testing the method:
inline oslPipeError SAL_CALL accept(StreamPipe& Connection);
please refer to StreamPipe::recv
*/
- /* class accept : public CppUnit::TestFixture
- {
- public:
- sal_Bool bRes, bRes1;
-
- void accept_001( )
- {
-
- // CPPUNIT_ASSERT_MESSAGE( "#test comment#: accept, untested.", 1 == 1 );
- //CPPUNIT_ASSERT_STUB();
- }
-
- CPPUNIT_TEST_SUITE( accept );
- CPPUNIT_TEST( accept_001 );
- CPPUNIT_TEST_SUITE_END( );
- };*/ // class accept
/** testing the method:
inline oslPipeError SAL_CALL getError() const;
*/
- class getError : public CppUnit::TestFixture
- {
- public:
- sal_Bool bRes, bRes1;
- /*
- PipeError[]= {
- { 0, osl_Pipe_E_None }, // no error
- { EPROTOTYPE, osl_Pipe_E_NoProtocol }, // Protocol wrong type for socket
- { ENOPROTOOPT, osl_Pipe_E_NoProtocol }, // Protocol not available
- { EPROTONOSUPPORT, osl_Pipe_E_NoProtocol }, // Protocol not supported
- { ESOCKTNOSUPPORT, osl_Pipe_E_NoProtocol }, // Socket type not supported
- { EPFNOSUPPORT, osl_Pipe_E_NoProtocol }, // Protocol family not supported
- { EAFNOSUPPORT, osl_Pipe_E_NoProtocol }, // Address family not supported by
- // protocol family
- { ENETRESET, osl_Pipe_E_NetworkReset }, // Network dropped connection because
- // of reset
- { ECONNABORTED, osl_Pipe_E_ConnectionAbort }, // Software caused connection abort
- { ECONNRESET, osl_Pipe_E_ConnectionReset }, // Connection reset by peer
- { ENOBUFS, osl_Pipe_E_NoBufferSpace }, // No buffer space available
- { ETIMEDOUT, osl_Pipe_E_TimedOut }, // Connection timed out
- { ECONNREFUSED, osl_Pipe_E_ConnectionRefused }, // Connection refused
- { -1, osl_Pipe_E_invalidError }
- };
- did not define osl_Pipe_E_NotFound, osl_Pipe_E_AlreadyExists
- */
-
- void getError_001( )
- {
- ::osl::Pipe aPipe( test::uniquePipeName(aTestPipeName), osl_Pipe_OPEN );
- oslPipeError nError = aPipe.getError( );
- printPipeError( aPipe );
- aPipe.clear( );
-
- CPPUNIT_ASSERT_MESSAGE( "#test comment#: open a non-exist pipe.",
- nError != osl_Pipe_E_None );
- }
+ /*
+ PipeError[]= {
+ { 0, osl_Pipe_E_None }, // no error
+ { EPROTOTYPE, osl_Pipe_E_NoProtocol }, // Protocol wrong type for socket
+ { ENOPROTOOPT, osl_Pipe_E_NoProtocol }, // Protocol not available
+ { EPROTONOSUPPORT, osl_Pipe_E_NoProtocol }, // Protocol not supported
+ { ESOCKTNOSUPPORT, osl_Pipe_E_NoProtocol }, // Socket type not supported
+ { EPFNOSUPPORT, osl_Pipe_E_NoProtocol }, // Protocol family not supported
+ { EAFNOSUPPORT, osl_Pipe_E_NoProtocol }, // Address family not supported by
+ // protocol family
+ { ENETRESET, osl_Pipe_E_NetworkReset }, // Network dropped connection because
+ // of reset
+ { ECONNABORTED, osl_Pipe_E_ConnectionAbort }, // Software caused connection abort
+ { ECONNRESET, osl_Pipe_E_ConnectionReset }, // Connection reset by peer
+ { ENOBUFS, osl_Pipe_E_NoBufferSpace }, // No buffer space available
+ { ETIMEDOUT, osl_Pipe_E_TimedOut }, // Connection timed out
+ { ECONNREFUSED, osl_Pipe_E_ConnectionRefused }, // Connection refused
+ { -1, osl_Pipe_E_invalidError }
+ };
+ did not define osl_Pipe_E_NotFound, osl_Pipe_E_AlreadyExists
+ */
+ TEST(Sal_Test_Pipe, getError_001) {
+ ::osl::Pipe aPipe( uniquePipeName(aTestPipeName), osl_Pipe_OPEN );
+ oslPipeError nError = aPipe.getError( );
+ printPipeError( aPipe );
+ aPipe.clear( );
+
+ // #test comment#: open a non-exist pipe.
+ ASSERT_NE( nError, osl_Pipe_E_None );
+ }
- void getError_002( )
- {
- ::osl::Pipe aPipe( test::uniquePipeName(aTestPipeName), osl_Pipe_CREATE );
- ::osl::Pipe aPipe1( test::uniquePipeName(aTestPipeName), osl_Pipe_CREATE );
- oslPipeError nError = aPipe.getError( );
- printPipeError( aPipe );
- aPipe.clear( );
- aPipe1.clear( );
-
- CPPUNIT_ASSERT_MESSAGE( "#test comment#: create an already exist pipe.",
- nError != osl_Pipe_E_None );
- }
+ TEST(Sal_Test_Pipe, getError_002) {
+ ::osl::Pipe aPipe( uniquePipeName(aTestPipeName), osl_Pipe_CREATE );
+ ::osl::Pipe aPipe1( uniquePipeName(aTestPipeName), osl_Pipe_CREATE );
+ oslPipeError nError = aPipe.getError( );
+ printPipeError( aPipe );
+ aPipe.clear( );
+ aPipe1.clear( );
- CPPUNIT_TEST_SUITE( getError );
- CPPUNIT_TEST( getError_001 );
- CPPUNIT_TEST( getError_002 );
- CPPUNIT_TEST_SUITE_END( );
- }; // class getError
+ // #test comment#: create an already exist pipe.
+ ASSERT_NE( nError, osl_Pipe_E_None );
+ }
/** testing the method:
inline oslPipe SAL_CALL getHandle() const;
*/
- class getHandle : public CppUnit::TestFixture
- {
- public:
- sal_Bool bRes, bRes1;
+ TEST(Sal_Test_Pipe, getHandle_001) {
+ ::osl::Pipe aPipe( uniquePipeName(aTestPipeName), osl_Pipe_OPEN );
+ sal_Bool bRes = aPipe == aPipe.getHandle( );
+ aPipe.clear( );
- void getHandle_001( )
- {
- ::osl::Pipe aPipe( test::uniquePipeName(aTestPipeName), osl_Pipe_OPEN );
- bRes = aPipe == aPipe.getHandle( );
- aPipe.clear( );
+ // #test comment#: one pipe should equal to its handle.
+ ASSERT_TRUE( bRes );
+ }
- CPPUNIT_ASSERT_MESSAGE( "#test comment#: one pipe should equal to its handle.",
- sal_True == bRes );
- }
+ TEST(Sal_Test_Pipe, getHandle_002) {
+ ::osl::Pipe aPipe( uniquePipeName(aTestPipeName), osl_Pipe_CREATE );
+ ::osl::Pipe aPipe1( aPipe.getHandle( ) );
+ sal_Bool bRes = aPipe == aPipe1;
+ aPipe.clear( );
+ aPipe1.clear( );
- void getHandle_002( )
- {
- ::osl::Pipe aPipe( test::uniquePipeName(aTestPipeName), osl_Pipe_CREATE );
- ::osl::Pipe aPipe1( aPipe.getHandle( ) );
- bRes = aPipe == aPipe1;
- aPipe.clear( );
- aPipe1.clear( );
-
- CPPUNIT_ASSERT_MESSAGE( "#test comment#: one pipe derived from another pipe's handle.",
- sal_True == bRes );
- }
-
- CPPUNIT_TEST_SUITE( getHandle );
- CPPUNIT_TEST( getHandle_001 );
- CPPUNIT_TEST( getHandle_002 );
- CPPUNIT_TEST_SUITE_END( );
- }; // class getHandle
-
-
-// -----------------------------------------------------------------------------
- CPPUNIT_TEST_SUITE_REGISTRATION(osl_Pipe::ctors);
- CPPUNIT_TEST_SUITE_REGISTRATION(osl_Pipe::is);
- CPPUNIT_TEST_SUITE_REGISTRATION(osl_Pipe::create);
- CPPUNIT_TEST_SUITE_REGISTRATION(osl_Pipe::clear);
- CPPUNIT_TEST_SUITE_REGISTRATION(osl_Pipe::assign);
-//CPPUNIT_TEST_SUITE_REGISTRATION(osl_Pipe::isValid);
- CPPUNIT_TEST_SUITE_REGISTRATION(osl_Pipe::isEqual);
- CPPUNIT_TEST_SUITE_REGISTRATION(osl_Pipe::close);
- //CPPUNIT_TEST_SUITE_REGISTRATION(osl_Pipe::accept);
- CPPUNIT_TEST_SUITE_REGISTRATION(osl_Pipe::getError);
- CPPUNIT_TEST_SUITE_REGISTRATION(osl_Pipe::getHandle);
-// -----------------------------------------------------------------------------
+ // #test comment#: one pipe derived from another pipe's handle.
+ ASSERT_TRUE( bRes );
+ }
} // namespace osl_Pipe
@@ -715,166 +544,130 @@ namespace osl_StreamPipe
inline StreamPipe(const ::rtl::OUString& strName, oslPipeOptions Options, const Security &rSec );
inline StreamPipe( oslPipe pipe, __sal_NoAcquire noacquire );
*/
- class ctors : public CppUnit::TestFixture
- {
- public:
- sal_Bool bRes, bRes1;
-
- void ctors_none( )
- {
- // create a pipe.
- ::osl::StreamPipe aStreamPipe( test::uniquePipeName(aTestPipeName), osl_Pipe_CREATE );
- // create an unattached pipe.
- ::osl::StreamPipe aStreamPipe1;
- bRes = aStreamPipe1.is( );
-
- // assign it and check.
- aStreamPipe1 = aStreamPipe;
- bRes1 = aStreamPipe1.is( );
- aStreamPipe.clear( );
- aStreamPipe1.clear( );
-
- CPPUNIT_ASSERT_MESSAGE( "#test comment#: test constructor with no parameter, before and after assign.",
- sal_False == bRes && sal_True == bRes1 );
- }
-
- void ctors_handle( )
- {
- // create a pipe.
- ::osl::StreamPipe aStreamPipe( test::uniquePipeName(aTestPipeName), osl_Pipe_CREATE );
- // create a pipe with last handle.
- ::osl::StreamPipe aStreamPipe1( aStreamPipe.getHandle( ) );
- bRes = aStreamPipe1.is( ) && aStreamPipe == aStreamPipe1;
- aStreamPipe.clear( );
- aStreamPipe1.clear( );
-
- CPPUNIT_ASSERT_MESSAGE( "#test comment#: test constructor with other's handle.",
- sal_True == bRes );
- }
- void ctors_copy( )
- {
- // create a pipe.
- ::osl::StreamPipe aStreamPipe( test::uniquePipeName(aTestPipeName), osl_Pipe_CREATE );
- // create an unattached pipe.
- ::osl::StreamPipe aStreamPipe1( aStreamPipe );
- bRes = aStreamPipe1.is( ) && aStreamPipe == aStreamPipe1;
- aStreamPipe.clear( );
- aStreamPipe1.clear( );
-
- CPPUNIT_ASSERT_MESSAGE( "#test comment#: test copy constructor.",
- sal_True == bRes );
- }
-
- void ctors_name_option( )
- {
- // create a pipe.
- ::osl::StreamPipe aStreamPipe( test::uniquePipeName(aTestPipeName), osl_Pipe_CREATE );
- // create an unattached pipe.
- ::osl::StreamPipe aStreamPipe1( test::uniquePipeName(aTestPipeName), osl_Pipe_OPEN );
- bRes = aStreamPipe1.is( ) && aStreamPipe.is( );
- aStreamPipe.clear( );
- aStreamPipe1.clear( );
-
- CPPUNIT_ASSERT_MESSAGE( "#test comment#: test constructor with name and option.",
- sal_True == bRes );
- }
-
- void ctors_name_option_security( )
- {
- /// create a security pipe.
- const ::osl::Security rSecurity;
- ::osl::StreamPipe aSecurityPipe( test::uniquePipeName(aTestPipeName), osl_Pipe_CREATE, rSecurity );
-
- bRes = aSecurityPipe.is( );
- aSecurityPipe.clear( );
+ TEST(Sal_Test_StreamPipe, ctors_none) {
+ // create a pipe.
+ ::osl::StreamPipe aStreamPipe( uniquePipeName(aTestPipeName), osl_Pipe_CREATE );
+ // create an unattached pipe.
+ ::osl::StreamPipe aStreamPipe1;
+ sal_Bool bRes = aStreamPipe1.is( );
+
+ // assign it and check.
+ aStreamPipe1 = aStreamPipe;
+ sal_Bool bRes1 = aStreamPipe1.is( );
+ aStreamPipe.clear( );
+ aStreamPipe1.clear( );
+
+ // #test comment#: test constructor with no parameter, before and after assign.
+ ASSERT_TRUE( !bRes && bRes1 );
+ }
- CPPUNIT_ASSERT_MESSAGE( "#test comment#: test constructor with name, option and security, the test of security is not implemented yet.",
- sal_True == bRes );
- }
+ TEST(Sal_Test_StreamPipe, ctors_handle) {
+ // create a pipe.
+ ::osl::StreamPipe aStreamPipe( uniquePipeName(aTestPipeName), osl_Pipe_CREATE );
+ // create a pipe with last handle.
+ ::osl::StreamPipe aStreamPipe1( aStreamPipe.getHandle( ) );
+ sal_Bool bRes = aStreamPipe1.is( ) && aStreamPipe == aStreamPipe1;
+ aStreamPipe.clear( );
+ aStreamPipe1.clear( );
+
+ // #test comment#: test constructor with other's handle.
+ ASSERT_TRUE( bRes );
+ }
- /** tester comment:
+ TEST(Sal_Test_StreamPipe, ctors_copy) {
+ // create a pipe.
+ ::osl::StreamPipe aStreamPipe( uniquePipeName(aTestPipeName), osl_Pipe_CREATE );
+ // create an unattached pipe.
+ ::osl::StreamPipe aStreamPipe1( aStreamPipe );
+ sal_Bool bRes = aStreamPipe1.is( ) && aStreamPipe == aStreamPipe1;
+ aStreamPipe.clear( );
+ aStreamPipe1.clear( );
+
+ // #test comment#: test copy constructor.
+ ASSERT_TRUE( bRes );
+ }
- When test the following constructor, don't know how to test the
- acquire and no acquire action. possible plans:
- 1.release one handle and check the other( did not success since the
- other still exist and valid. )
- 2. release one handle twice to see getLastError( )(the getLastError
- always returns invalidError(LINUX)).
- */
+ TEST(Sal_Test_StreamPipe, ctors_name_option) {
+ // create a pipe.
+ ::osl::StreamPipe aStreamPipe( uniquePipeName(aTestPipeName), osl_Pipe_CREATE );
+ // create an unattached pipe.
+ ::osl::StreamPipe aStreamPipe1( uniquePipeName(aTestPipeName), osl_Pipe_OPEN );
+ sal_Bool bRes = aStreamPipe1.is( ) && aStreamPipe.is( );
+ aStreamPipe.clear( );
+ aStreamPipe1.clear( );
+
+ // #test comment#: test constructor with name and option.
+ ASSERT_TRUE( bRes );
+ }
- void ctors_no_acquire( )
- {
- // create a pipe.
- ::osl::StreamPipe aPipe( test::uniquePipeName(aTestPipeName), osl_Pipe_CREATE );
- // constructs a pipe reference without acquiring the handle.
- ::osl::StreamPipe aNoAcquirePipe( aPipe.getHandle( ), SAL_NO_ACQUIRE );
+ TEST(Sal_Test_StreamPipe, ctors_name_option_security) {
+ // create a security pipe.
+ const ::osl::Security rSecurity;
+ ::osl::StreamPipe aSecurityPipe( uniquePipeName(aTestPipeName), osl_Pipe_CREATE, rSecurity );
- bRes = aNoAcquirePipe.is( );
- aPipe.clear( );
- // bRes1 = aNoAcquirePipe.is( );
+ sal_Bool bRes = aSecurityPipe.is( );
+ aSecurityPipe.clear( );
- CPPUNIT_ASSERT_MESSAGE( "#test comment#: test constructor with no aquire of handle, only validation test, do not know how to test no acquire.",
- sal_True == bRes );
- }
+ // #test comment#: test constructor with name, option and security, the test of security is not implemented yet.
+ ASSERT_TRUE( bRes );
+ }
- CPPUNIT_TEST_SUITE( ctors );
- CPPUNIT_TEST( ctors_none );
- CPPUNIT_TEST( ctors_handle );
- CPPUNIT_TEST( ctors_copy );
- CPPUNIT_TEST( ctors_name_option );
- CPPUNIT_TEST( ctors_name_option_security );
- CPPUNIT_TEST( ctors_no_acquire );
- CPPUNIT_TEST_SUITE_END( );
- }; // class ctors
+ /** tester comment:
+ When test the following constructor, don't know how to test the
+ acquire and no acquire action. possible plans:
+ 1.release one handle and check the other( did not success since the
+ other still exist and valid. )
+ 2. release one handle twice to see getLastError( )(the getLastError
+ always returns invalidError(LINUX)).
+ */
+ TEST(Sal_Test_StreamPipe, ctors_no_acquire) {
+ // create a pipe.
+ ::osl::StreamPipe aPipe( uniquePipeName(aTestPipeName), osl_Pipe_CREATE );
+ // constructs a pipe reference without acquiring the handle.
+ ::osl::StreamPipe aNoAcquirePipe( aPipe.getHandle( ), SAL_NO_ACQUIRE );
+
+ sal_Bool bRes = aNoAcquirePipe.is( );
+ aPipe.clear( );
+ // bRes1 = aNoAcquirePipe.is( );
+
+ // #test comment#: test constructor with no acquire of handle, only validation test, do not know how to test no acquire.
+ ASSERT_TRUE( bRes );
+ }
/** testing the methods:
inline StreamPipe & SAL_CALL operator=(oslPipe Pipe);
inline StreamPipe& SAL_CALL operator=(const Pipe& pipe);
mindy: not implementated in osl/pipe.hxx, so remove the cases
*/
- /*
- class assign : public CppUnit::TestFixture
- {
- public:
- sal_Bool bRes, bRes1;
-
- void assign_ref( )
- {
- ::osl::StreamPipe aPipe, aPipe1;
- aPipe.create( test::uniquePipeName(aTestPipeName), osl_Pipe_CREATE );
- aPipe1 = aPipe;
- bRes = aPipe1.is( );
- bRes1 = aPipe == aPipe1;
- aPipe.close( );
- aPipe1.close( );
-
- CPPUNIT_ASSERT_MESSAGE( "#test comment#: test assign with reference.",
- sal_True == bRes && sal_True == bRes1 );
- }
-
- void assign_handle( )
- {
- ::osl::StreamPipe * pPipe = new ::osl::StreamPipe( test::uniquePipeName(aTestPipeName), osl_Pipe_CREATE );
- ::osl::StreamPipe * pAssignPipe = new ::osl::StreamPipe;
- *pAssignPipe = pPipe->getHandle( );
-
- bRes = pAssignPipe->is( );
- bRes1 = ( *pPipe == *pAssignPipe );
- pPipe->close( );
-
- delete pAssignPipe;
-
- CPPUNIT_ASSERT_MESSAGE( "#test comment#: test assign with handle., seems not implemented under (LINUX)(W32)",
- sal_True == bRes && sal_True == bRes1 );
- }
-
- CPPUNIT_TEST_SUITE( assign );
- CPPUNIT_TEST( assign_ref );
- CPPUNIT_TEST( assign_handle );
- CPPUNIT_TEST_SUITE_END( );
- };*/ // class assign
+ // TEST(Sal_Test_StreamPipe, assign_ref) {
+ // ::osl::StreamPipe aPipe, aPipe1;
+ // aPipe.create( uniquePipeName(aTestPipeName), osl_Pipe_CREATE );
+ // aPipe1 = aPipe;
+ // sal_Bool bRes = aPipe1.is( );
+ // sal_Bool bRes1 = aPipe == aPipe1;
+ // aPipe.close( );
+ // aPipe1.close( );
+
+ // // #test comment#: test assign with reference.
+ // ASSERT_TRUE( bRes && bRes1 );
+ // }
+
+ // TEST(Sal_Test_StreamPipe, assign_ref) {
+ // ::osl::StreamPipe * pPipe = new ::osl::StreamPipe( uniquePipeName(aTestPipeName), osl_Pipe_CREATE );
+ // ::osl::StreamPipe * pAssignPipe = new ::osl::StreamPipe;
+ // *pAssignPipe = pPipe->getHandle( );
+
+ // bRes = pAssignPipe->is( );
+ // bRes1 = ( *pPipe == *pAssignPipe );
+ // pPipe->close( );
+
+ // delete pAssignPipe;
+
+ // // #test comment#: test assign with handle., seems not implemented under (LINUX)(W32)
+ // ASSERT_TRUE( bRes && bRes1 );
+ // }
/** wait _nSec seconds.
@@ -893,7 +686,8 @@ namespace osl_StreamPipe
#endif
// printf("done\n" );
}
- // test read/write & send/recv data to pipe
+
+ // test read/write & send/recv data to pipe
// -----------------------------------------------------------------------------
class Pipe_DataSink_Thread : public Thread
@@ -903,39 +697,39 @@ namespace osl_StreamPipe
Pipe_DataSink_Thread( ) { }
~Pipe_DataSink_Thread( )
- {
- }
+ {
+ }
protected:
void SAL_CALL run( )
- {
- sal_Int32 nChars = 0;
+ {
+ sal_Int32 nChars = 0;
- printf("open pipe\n");
- ::osl::StreamPipe aSenderPipe( test::uniquePipeName(aTestPipeName), osl_Pipe_OPEN ); // test::uniquePipeName(aTestPipeName) is a string = "TestPipe"
- if ( aSenderPipe.is() == sal_False )
+ printf("open pipe\n");
+ // uniquePipeName(aTestPipeName) is a string = "TestPipe"
+ ::osl::StreamPipe aSenderPipe( uniquePipeName(aTestPipeName), osl_Pipe_OPEN );
+ if ( aSenderPipe.is() == sal_False )
+ {
+ printf("pipe open failed! \n");
+ }
+ else
+ {
+ printf("read\n");
+ nChars = aSenderPipe.read( buf, m_pTestString1.getLength() + 1 );
+ if ( nChars < 0 )
{
- printf("pipe open failed! \n");
+ printf("read failed! \n");
+ return;
}
- else
+ printf("buffer is %s \n", buf);
+ printf("send\n");
+ nChars = aSenderPipe.send( m_pTestString2.getStr(), m_pTestString2.getLength() + 1 );
+ if ( nChars < 0 )
{
- printf("read\n");
- nChars = aSenderPipe.read( buf, m_pTestString1.getLength() + 1 );
- if ( nChars < 0 )
- {
- printf("read failed! \n");
- return;
- }
- printf("buffer is %s \n", buf);
- printf("send\n");
- nChars = aSenderPipe.send( m_pTestString2.getStr(), m_pTestString2.getLength() + 1 );
- if ( nChars < 0 )
- {
- printf("client send failed! \n");
- return;
- }
+ printf("client send failed! \n");
+ return;
}
}
-
+ }
};
// -----------------------------------------------------------------------------
@@ -944,113 +738,89 @@ namespace osl_StreamPipe
{
public:
sal_Char buf[256];
- //::osl::StreamPipe aListenPipe; //( test::uniquePipeName(aTestPipeName), osl_Pipe_CREATE );
+ //::osl::StreamPipe aListenPipe; //( uniquePipeName(aTestPipeName), osl_Pipe_CREATE );
::osl::Pipe aListenPipe;
::osl::StreamPipe aConnectionPipe;
Pipe_DataSource_Thread( )
- {
- printf("create pipe\n");
- aListenPipe.create( test::uniquePipeName(aTestPipeName), osl_Pipe_CREATE );
- }
+ {
+ printf("create pipe\n");
+ aListenPipe.create( uniquePipeName(aTestPipeName), osl_Pipe_CREATE );
+ }
~Pipe_DataSource_Thread( )
- {
- aListenPipe.close();
- }
+ {
+ aListenPipe.close();
+ }
protected:
void SAL_CALL run( )
+ {
+ //create pipe.
+ sal_Int32 nChars;
+ //::osl::StreamPipe aListenPipe( test::uniquePipeName(aTestPipeName), osl_Pipe_CREATE );
+ printf("listen\n");
+ if ( aListenPipe.is() == sal_False )
{
- //create pipe.
- sal_Int32 nChars;
- //::osl::StreamPipe aListenPipe( test::uniquePipeName(aTestPipeName), osl_Pipe_CREATE );
- printf("listen\n");
- if ( aListenPipe.is() == sal_False )
+ printf("pipe create failed! \n");
+ }
+ else
+ {
+ //::osl::StreamPipe aConnectionPipe;
+
+ //start server and wait for connection.
+ printf("accept\n");
+ if ( osl_Pipe_E_None != aListenPipe.accept( aConnectionPipe ) )
{
- printf("pipe create failed! \n");
+ printf("pipe accept failed!");
+ return;
}
- else
+ printf("write\n");
+ // write to pipe
+ nChars = aConnectionPipe.write( m_pTestString1.getStr(), m_pTestString1.getLength() + 1 );
+ if ( nChars < 0)
{
- //::osl::StreamPipe aConnectionPipe;
-
- //start server and wait for connection.
- printf("accept\n");
- if ( osl_Pipe_E_None != aListenPipe.accept( aConnectionPipe ) )
- {
- printf("pipe accept failed!");
- return;
- }
- printf("write\n");
- // write to pipe
- nChars = aConnectionPipe.write( m_pTestString1.getStr(), m_pTestString1.getLength() + 1 );
- if ( nChars < 0)
- {
- printf("server write failed! \n");
- return;
- }
- printf("recv\n");
- nChars = aConnectionPipe.recv( buf, 256 );
-
- if ( nChars < 0)
- {
- printf("server receive failed! \n");
- return;
- }
- //thread_sleep( 2 );
- printf("received message is: %s\n", buf );
- //aConnectionPipe.close();
+ printf("server write failed! \n");
+ return;
}
+ printf("recv\n");
+ nChars = aConnectionPipe.recv( buf, 256 );
+
+ if ( nChars < 0)
+ {
+ printf("server receive failed! \n");
+ return;
+ }
+ //thread_sleep( 2 );
+ printf("received message is: %s\n", buf );
+ //aConnectionPipe.close();
}
+ }
};
+
/** testing the method: read/write/send/recv and Pipe::accept
*/
- class recv : public CppUnit::TestFixture
- {
- public:
- sal_Bool bRes, bRes1;
+ TEST(Sal_Test_StreamPipe, recv_001) {
+ //launch threads.
+ Pipe_DataSource_Thread myDataSourceThread;
+ Pipe_DataSink_Thread myDataSinkThread;
+ myDataSourceThread.create( );
+ thread_sleep( 1 );
+ myDataSinkThread.create( );
- void recv_001( )
- {
- //launch threads.
- Pipe_DataSource_Thread myDataSourceThread;
- Pipe_DataSink_Thread myDataSinkThread;
- myDataSourceThread.create( );
- thread_sleep( 1 );
- myDataSinkThread.create( );
-
- //wait until the thread terminate
- myDataSinkThread.join( );
- myDataSourceThread.join( );
-
- int nCompare1 = strcmp( myDataSinkThread.buf, m_pTestString1.getStr() );
- int nCompare2 = strcmp( myDataSourceThread.buf, m_pTestString2.getStr() );
- CPPUNIT_ASSERT_MESSAGE( "test send/recv/write/read.", nCompare1 == 0 && nCompare2 == 0 );
- }
- //close pipe when accept
- void recv_002()
- {
- thread_sleep( 1 );
-
- Pipe_DataSource_Thread myDataSourceThread;
- Pipe_DataSink_Thread myDataSinkThread;
- myDataSourceThread.create( );
- thread_sleep( 1 );
- myDataSourceThread.aListenPipe.close();
- myDataSourceThread.join( );
- //no condition judgement here, if the case could finish excuting within 1 or 2 seconds, it passes.
- }
+ //wait until the thread terminate
+ myDataSinkThread.join( );
+ myDataSourceThread.join( );
- CPPUNIT_TEST_SUITE( recv );
- CPPUNIT_TEST( recv_001 );
- CPPUNIT_TEST( recv_002 );
- CPPUNIT_TEST_SUITE_END( );
- }; // class recv
+ int nCompare1 = strcmp( myDataSinkThread.buf, m_pTestString1.getStr() );
+ int nCompare2 = strcmp( myDataSourceThread.buf, m_pTestString2.getStr() );
-// -----------------------------------------------------------------------------
- CPPUNIT_TEST_SUITE_REGISTRATION(osl_StreamPipe::ctors);
-//CPPUNIT_TEST_SUITE_REGISTRATION(osl_StreamPipe::assign);
- CPPUNIT_TEST_SUITE_REGISTRATION(osl_StreamPipe::recv);
-// -----------------------------------------------------------------------------
+ // test send/recv/write/read.
+ ASSERT_TRUE( nCompare1 == 0 && nCompare2 == 0 );
+ }
} // namespace osl_StreamPipe
-CPPUNIT_PLUGIN_IMPLEMENT();
+int main(int argc, char **argv)
+{
+ ::testing::InitGoogleTest(&argc, argv);
+ return RUN_ALL_TESTS();
+}
diff --git a/sal/qa/osl/process/osl_Thread.cxx b/sal/qa/osl/process/osl_Thread.cxx
index a5e90ca3b8f7..36bf0cceb2f0 100644
--- a/sal/qa/osl/process/osl_Thread.cxx
+++ b/sal/qa/osl/process/osl_Thread.cxx
@@ -581,7 +581,7 @@ namespace osl_Thread
myThread* newthread = new myThread();
sal_Bool res1 = newthread->create();
sal_Bool res2 = newthread->create();
- t_print("In non pro, an assertion should occured. This behaviour is right.\n");
+ t_print("In non pro, an assertion should occurred. This behaviour is right.\n");
termAndJoinThread(newthread);
delete newthread;
diff --git a/sal/qa/osl/process/osl_process.cxx b/sal/qa/osl/process/osl_process.cxx
index 5dfd829ea744..be19ef03a4f2 100644
--- a/sal/qa/osl/process/osl_process.cxx
+++ b/sal/qa/osl/process/osl_process.cxx
@@ -44,8 +44,6 @@
#include <tools/postwin.h>
#endif
-#include "rtl/allocator.hxx"
-
#include <iostream>
#include <fstream>
#include <vector>
@@ -296,7 +294,7 @@ public:
//#########################################################
-typedef std::vector<std::string, rtl::Allocator<std::string> > string_container_t;
+typedef std::vector<std::string> string_container_t;
typedef string_container_t::const_iterator string_container_const_iter_t;
typedef string_container_t::iterator string_container_iter_t;
diff --git a/sal/qa/osl/socket/osl_ConnectorSocket.cxx b/sal/qa/osl/socket/osl_ConnectorSocket.cxx
index 12754023e75f..ad16b3e9ee15 100644
--- a/sal/qa/osl/socket/osl_ConnectorSocket.cxx
+++ b/sal/qa/osl/socket/osl_ConnectorSocket.cxx
@@ -205,7 +205,7 @@ namespace osl_ConnectorSocket
sal_True == compareSocketAddr( saPeerSocketAddr, saLocalSocketAddr ) ) ;
}
// really an error or just delayed
- // how to design senarios that will return osl_Socket_Interrupted, osl_Socket_TimedOut
+ // how to design scenarios that will return osl_Socket_Interrupted, osl_Socket_TimedOut
void connect_003()
{
::osl::SocketAddr saTargetSocketAddr1( rtl::OUString::createFromAscii("127.0.0.1"), IP_PORT_MYPORT3 );
diff --git a/sal/qa/osl/socket/osl_Socket.cxx b/sal/qa/osl/socket/osl_Socket.cxx
index e503dd812240..825d3abf12aa 100644
--- a/sal/qa/osl/socket/osl_Socket.cxx
+++ b/sal/qa/osl/socket/osl_Socket.cxx
@@ -1511,7 +1511,7 @@ namespace osl_Socket
/// Socket constructor.
// ::osl::Socket sSocket;
- CPPUNIT_ASSERT_MESSAGE( "test for ctors_none constructor function: check if the socket was created successfully, if no exception occured",
+ CPPUNIT_ASSERT_MESSAGE( "test for ctors_none constructor function: check if the socket was created successfully, if no exception occurred",
1 == 1 );
}
@@ -3060,7 +3060,7 @@ protected:
oslSocketResult eResult = asSocket.acceptConnection( ssConnectionSocket );
CPPUNIT_ASSERT_MESSAGE("shutdown_002: acceptConnection fail", eResult == osl_Socket_Ok );
- /* set socket option SO_LINGER 0, so close immediatly */
+ /* set socket option SO_LINGER 0, so close immediately */
linger aLingerSet;
sal_Int32 nBufferLen = sizeof( struct linger );
aLingerSet.l_onoff = 0;
@@ -3285,7 +3285,7 @@ namespace osl_ConnectorSocket
sal_True == compareSocketAddr( saPeerSocketAddr, saLocalSocketAddr ) ) ;
}
// really an error or just delayed
- // how to design senarios that will return osl_Socket_Interrupted, osl_Socket_TimedOut
+ // how to design scenarios that will return osl_Socket_Interrupted, osl_Socket_TimedOut
void connect_003()
{
::osl::SocketAddr saTargetSocketAddr1( aHostIp1, IP_PORT_MYPORT3 );
diff --git a/sal/qa/osl/socket/osl_Socket2.cxx b/sal/qa/osl/socket/osl_Socket2.cxx
index 4004a1b5d496..b449333ec169 100644
--- a/sal/qa/osl/socket/osl_Socket2.cxx
+++ b/sal/qa/osl/socket/osl_Socket2.cxx
@@ -176,7 +176,7 @@ namespace osl_Socket
/// Socket constructor.
// ::osl::Socket sSocket();
- CPPUNIT_ASSERT_MESSAGE( "test for ctors_none constructor function: check if the socket was created successfully, if no exception occured",
+ CPPUNIT_ASSERT_MESSAGE( "test for ctors_none constructor function: check if the socket was created successfully, if no exception occurred",
1 == 1 );
}
diff --git a/sal/qa/osl/socket/osl_StreamSocket.cxx b/sal/qa/osl/socket/osl_StreamSocket.cxx
index 29a4ddbbe510..c595548b58c8 100644
--- a/sal/qa/osl/socket/osl_StreamSocket.cxx
+++ b/sal/qa/osl/socket/osl_StreamSocket.cxx
@@ -819,7 +819,7 @@ namespace osl_StreamSocket
oslSocketResult eResult = asSocket.acceptConnection( ssConnectionSocket );
CPPUNIT_ASSERT_MESSAGE("shutdown_002: acceptConnection fail", eResult == osl_Socket_Ok );
- /* set socket option SO_LINGER 0, so close immediatly */
+ /* set socket option SO_LINGER 0, so close immediately */
linger aLingerSet;
sal_Int32 nBufferLen = sizeof( struct linger );
aLingerSet.l_onoff = 0;
@@ -1037,7 +1037,7 @@ namespace osl_StreamSocket
{
t_print("read()\n");
m_nReadCount = aSocket.read( m_pBuffer, m_nBufferSize );
- t_print("%d bytes recived.\n", m_nReadCount);
+ t_print("%d bytes received.\n", m_nReadCount);
}
}
else
@@ -1108,12 +1108,12 @@ namespace osl_StreamSocket
if (! aSocketAddr.setPort(IP_PORT_TEST))
{
- t_print("# cant set port\n" );
+ t_print("# can't set port\n" );
}
if (! aSocketAddr.setHostname(rtl::OUString::createFromAscii(_sAddr.getStr())))
{
- t_print("# cant set hostname/ip\n" );
+ t_print("# can't set hostname/ip\n" );
}
rtl::OUString aHostname = aSocketAddr.getHostname();
diff --git a/sal/qa/osl/socket/sockethelper.cxx b/sal/qa/osl/socket/sockethelper.cxx
index 8830dcd515d7..929fecb687a4 100644
--- a/sal/qa/osl/socket/sockethelper.cxx
+++ b/sal/qa/osl/socket/sockethelper.cxx
@@ -283,7 +283,7 @@ sal_Bool ifIpv4is( const ::rtl::ByteSequence Ipaddr, sal_Int8 seq1, sal_Int8 seq
return sal_False;
}
-/** if the IP or hostname is availble( alive )
+/** if the IP or hostname is available( alive )
*/
/*sal_Bool ifAvailable( const char * stringAddrOrHostName )
{
diff --git a/sal/qa/osl/socket/sockethelper.hxx b/sal/qa/osl/socket/sockethelper.hxx
index d7faa11cfd34..99c7f5f95c48 100644
--- a/sal/qa/osl/socket/sockethelper.hxx
+++ b/sal/qa/osl/socket/sockethelper.hxx
@@ -143,7 +143,7 @@ void printSocketResult( oslSocketResult eResult );
/** if 4 parts of an IP addr are equal to specified values
*/
sal_Bool ifIpv4is( const ::rtl::ByteSequence Ipaddr, sal_Int8 seq1, sal_Int8 seq2, sal_Int8 seq3, sal_Int8 seq4 );
-/** if the IP or hostname is availble( alive )
+/** if the IP or hostname is available( alive )
*/
//sal_Bool ifAvailable( const char * stringAddrOrHostName );
sal_Bool ifAvailable( rtl::OUString const& strAddrOrHostName );
diff --git a/sal/qa/rtl/bootstrap/rtl_Bootstrap.cxx b/sal/qa/rtl/bootstrap/rtl_Bootstrap.cxx
index efd7e495ba4e..c5eed78a13e6 100644
--- a/sal/qa/rtl/bootstrap/rtl_Bootstrap.cxx
+++ b/sal/qa/rtl/bootstrap/rtl_Bootstrap.cxx
@@ -191,7 +191,7 @@ namespace rtl_Bootstrap
// but try to use ${file::KEYVALUE} than 'file' will only used out of the 'executable path'/file
// not from the path given from the absolute path.
- // Due to the fact, we create at this position a file (createTestshl2rc() ), we check for existance
+ // Due to the fact, we create at this position a file (createTestshl2rc() ), we check for existence
bool bFileExist = t_fileExist( suGetname );
CPPUNIT_ASSERT_MESSAGE("ctor error with initial file.", bFileExist == true );
}
diff --git a/sal/qa/rtl_strings/rtl_OUString.cxx b/sal/qa/rtl_strings/rtl_OUString.cxx
index 9967e4354d53..5a447ff47288 100644
--- a/sal/qa/rtl_strings/rtl_OUString.cxx
+++ b/sal/qa/rtl_strings/rtl_OUString.cxx
@@ -744,7 +744,7 @@ extern "C" void /* sal_Bool */ SAL_CALL test_rtl_OUString_op_eq(
{"null and Ustr1", new OUString, new OUString(aUStr1)},
{"Ustr2 and Ustr1", new OUString(aUStr2),
new OUString(aUStr1)},
- {""" and Ustr1 from bit charactor buffer",
+ {""" and Ustr1 from bit character buffer",
new OUString(aUStr1),
new OUString( "",
0,
diff --git a/sal/qa/sal/makefile.mk b/sal/qa/sal/makefile.mk
index f7c5bab30ba1..c3ae3468a547 100644
--- a/sal/qa/sal/makefile.mk
+++ b/sal/qa/sal/makefile.mk
@@ -20,27 +20,27 @@
#**************************************************************
+PRJ = ..$/..
+PRJNAME = sal
+TARGET = sal_ut_types
-PRJ := ..$/..
-PRJNAME := sal
-TARGET := qa_sal
-
-ENABLE_EXCEPTIONS := TRUE
+ENABLE_EXCEPTIONS = TRUE
.INCLUDE: settings.mk
-SHL1TARGET = $(TARGET)_types
-SHL1OBJS = $(SLO)$/test_types.obj
-SHL1STDLIBS = $(SALLIB) $(CPPUNITLIB) $(TESTSHL2LIB)
-SHL1VERSIONMAP = version.map
-SHL1IMPLIB = i$(SHL1TARGET)
-DEF1NAME = $(SHL1TARGET)
+.IF "$(ENABLE_UNIT_TESTS)" != "YES"
+all:
+ @echo unit tests are disabled. Nothing to do.
-SLOFILES = $(SHL1OBJS)
+.ELSE
-.INCLUDE: target.mk
+APP1OBJS = $(OBJ)/test_types.obj
+APP1RPATH = NONE
+APP1STDLIBS = $(GTESTLIB) $(SALLIB)
+APP1TARGET = sal_ut_test
+APP1TEST = enabled
+#APP1TEST = disabled
-ALLTAR: test
+.INCLUDE: target.mk
-test .PHONY: $(SHL1TARGETN)
- testshl2 $(SHL1TARGETN)
+.ENDIF
diff --git a/sal/qa/sal/test_types.cxx b/sal/qa/sal/test_types.cxx
index 4c69e16329ca..7cac0152545e 100644
--- a/sal/qa/sal/test_types.cxx
+++ b/sal/qa/sal/test_types.cxx
@@ -28,9 +28,10 @@
#include <stdio.h> // C99 snprintf not necessarily in <cstdio>
#include <string.h> // wntmsci10 does not know <cstring> std::strcmp
-#include "testshl/simpleheader.hxx"
#include "sal/types.h"
+#include "gtest/gtest.h"
+
namespace {
template< typename T > void testPrintf(
@@ -39,20 +40,11 @@ template< typename T > void testPrintf(
std::size_t const bufsize = 1000;
char buf[bufsize];
int n = snprintf(buf, bufsize, format, argument);
- CPPUNIT_ASSERT(n >= 0 && sal::static_int_cast< unsigned int >(n) < bufsize);
- CPPUNIT_ASSERT(strcmp(buf, result) == 0);
+ ASSERT_TRUE(n >= 0 && sal::static_int_cast< unsigned int >(n) < bufsize);
+ ASSERT_TRUE(strcmp(buf, result) == 0);
}
-class Test: public CppUnit::TestFixture {
-public:
- void test();
-
- CPPUNIT_TEST_SUITE(Test);
- CPPUNIT_TEST(test);
- CPPUNIT_TEST_SUITE_END();
-};
-
-void Test::test() {
+TEST(Sal_Test, Types_Test) {
testPrintf("-2147483648", "%" SAL_PRIdINT32, SAL_MIN_INT32);
testPrintf("4294967295", "%" SAL_PRIuUINT32, SAL_MAX_UINT32);
testPrintf("ffffffff", "%" SAL_PRIxUINT32, SAL_MAX_UINT32);
@@ -70,8 +62,10 @@ void Test::test() {
testPrintf("ABC", "%" SAL_PRIXUINTPTR, static_cast< sal_uIntPtr >(0xabc));
}
-CPPUNIT_TEST_SUITE_NAMED_REGISTRATION(Test, "alltests");
-
}
-NOADDITIONAL;
+int main(int argc, char **argv)
+{
+ ::testing::InitGoogleTest(&argc, argv);
+ return RUN_ALL_TESTS();
+}
diff --git a/sal/rtl/source/bootstrap.cxx b/sal/rtl/source/bootstrap.cxx
index 2c93d9897f13..b219c5c5442a 100644
--- a/sal/rtl/source/bootstrap.cxx
+++ b/sal/rtl/source/bootstrap.cxx
@@ -41,7 +41,6 @@
#include <rtl/instance.hxx>
#include <rtl/malformeduriexception.hxx>
#include <rtl/uri.hxx>
-#include "rtl/allocator.hxx"
#include "macro.hxx"
@@ -134,10 +133,7 @@ struct rtl_bootstrap_NameValue
{}
};
-typedef std::list<
- rtl_bootstrap_NameValue,
- rtl::Allocator< rtl_bootstrap_NameValue >
-> NameValueList;
+typedef std::list<rtl_bootstrap_NameValue> NameValueList;
bool find(
NameValueList const & list, rtl::OUString const & key,
@@ -605,10 +601,7 @@ void Bootstrap_Impl::expandValue(
namespace {
struct bootstrap_map {
- typedef std::hash_map<
- rtl::OUString, Bootstrap_Impl *,
- rtl::OUStringHash, std::equal_to< rtl::OUString >,
- rtl::Allocator< OUString > > t;
+ typedef std::hash_map< const rtl::OUString, Bootstrap_Impl*, rtl::OUStringHash > t;
// get and release must only be called properly synchronized via some mutex
// (e.g., osl::Mutex::getGlobalMutex()):
diff --git a/sal/rtl/source/hash.cxx b/sal/rtl/source/hash.cxx
index 6d22c3dd76fc..db7243bf931b 100644
--- a/sal/rtl/source/hash.cxx
+++ b/sal/rtl/source/hash.cxx
@@ -23,12 +23,10 @@
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sal.hxx"
-#include "rtl/allocator.hxx"
#include "hash.h"
#include "strimp.h"
-
#include <hash_set>
namespace {
@@ -53,8 +51,7 @@ struct UStringEqual
}
};
-typedef std::hash_set< rtl_uString *, UStringHash, UStringEqual,
- rtl::Allocator<rtl_uString *> > StringHashTable;
+typedef std::hash_set< rtl_uString *, UStringHash, UStringEqual > StringHashTable;
StringHashTable *
getHashTable ()
diff --git a/sal/rtl/source/unload.cxx b/sal/rtl/source/unload.cxx
index 81672ce7f373..f33d34dd44d1 100644
--- a/sal/rtl/source/unload.cxx
+++ b/sal/rtl/source/unload.cxx
@@ -28,7 +28,6 @@
#include <rtl/ustring.hxx>
#include <osl/mutex.hxx>
#include <hash_map>
-#include "rtl/allocator.hxx"
#include <functional>
#include <list>
@@ -153,11 +152,10 @@ struct hashModule
};
typedef std::hash_map<
- oslModule,
+ const oslModule,
std::pair<sal_uInt32, component_canUnloadFunc>,
hashModule,
- std::equal_to<oslModule>,
- rtl::Allocator<oslModule>
+ std::equal_to<oslModule>
> ModuleMap;
typedef ModuleMap::iterator Mod_IT;
@@ -243,7 +241,7 @@ extern "C" void SAL_CALL rtl_unloadUnusedModules( TimeValue* libUnused)
{
MutexGuard guard( getUnloadingMutex());
- typedef std::list< oslModule, rtl::Allocator<oslModule> > list_type;
+ typedef std::list< oslModule > list_type;
list_type unloadedModulesList;
ModuleMap& moduleMap= getModuleMap();
@@ -302,11 +300,10 @@ struct hashListener
};
typedef std::hash_map<
- sal_Int32,
+ const sal_Int32,
std::pair<rtl_unloadingListenerFunc, void*>,
hashListener,
- std::equal_to<sal_Int32>,
- rtl::Allocator<sal_Int32>
+ std::equal_to<sal_Int32>
> ListenerMap;
typedef ListenerMap::iterator Lis_IT;
@@ -330,13 +327,10 @@ static ListenerMap& getListenerMap()
// This queue contains cookies which have been passed out by rtl_addUnloadingListener and
// which have been regainded by rtl_removeUnloadingListener. When rtl_addUnloadingListener
// is called then a cookie has to be returned. First we look into the set if there is one
-// availabe. Otherwise a new cookie will be provided.
+// available. Otherwise a new cookie will be provided.
// not a new value is returned.
-typedef std::deque<
- sal_Int32,
- rtl::Allocator<sal_Int32>
-> queue_type;
+typedef std::deque< sal_Int32 > queue_type;
static queue_type& getCookieQueue()
{
diff --git a/sal/systools/win32/kill/kill.cxx b/sal/systools/win32/kill/kill.cxx
index 25587d9f124c..76f0b2669d35 100644
--- a/sal/systools/win32/kill/kill.cxx
+++ b/sal/systools/win32/kill/kill.cxx
@@ -67,7 +67,7 @@ static inline bool IsValidHandle( HANDLE handle )
#define elementsof( a ) (sizeof(a) / sizeof( (a)[0] ))
/////////////////////////////////////////////////////////////////////////////
-// Retrieves function adress in another process
+// Retrieves function address in another process
/////////////////////////////////////////////////////////////////////////////
#if 1
diff --git a/sal/systools/win32/uwinapi/MoveFileExA.cpp b/sal/systools/win32/uwinapi/MoveFileExA.cpp
index 3d41327651a2..9b5831d6aa03 100644
--- a/sal/systools/win32/uwinapi/MoveFileExA.cpp
+++ b/sal/systools/win32/uwinapi/MoveFileExA.cpp
@@ -76,7 +76,7 @@ IMPLEMENT_THUNK( kernel32, WINDOWS, BOOL, WINAPI, MoveFileExA, ( LPCSTR lpExisti
fSuccess = CopyFileA( lpExistingFileNameA, lpNewFileNameA, bFailIfExist );
- // In case of successfull copy do not return FALSE if delete fails.
+ // In case of successful copy do not return FALSE if delete fails.
// Error detection is done by GetLastError()
if ( fSuccess )
diff --git a/sal/test/bootstrap b/sal/test/bootstrap
index 57a5d9e4a9c9..74e915026a2f 100644
--- a/sal/test/bootstrap
+++ b/sal/test/bootstrap
@@ -72,7 +72,7 @@ echo 13
./testbootstrap TheKeysValue -env:ININAME=./bootstraptest.ini \
-env:'MYBOOTSTRAPTESTVALUE=${$ININAME:${$ININAME:SecondSection:IndirectSection}:${$ININAME:SecondSection:IndirectKey}}'
-# test no infinit recursion
+# test no infinite recursion
echo 14
./testbootstrap "***RECURSION DETECTED***" -env:'MYBOOTSTRAPTESTVALUE=$MYBOOTSTRAPTESTVALUE'
diff --git a/sal/test/bootstrap.bat b/sal/test/bootstrap.bat
index 34c14792bc05..76951e0d9e01 100755
--- a/sal/test/bootstrap.bat
+++ b/sal/test/bootstrap.bat
@@ -70,7 +70,7 @@ rem ini access with complex macro expansion
echo 13
.\testbootstrap TheKeysValue -env:ININAME=./bootstraptest.ini -env:MYBOOTSTRAPTESTVALUE=${$ININAME:${$ININAME:SecondSection:IndirectSection}:${$ININAME:SecondSection:IndirectKey}}
-rem test no infinit recursion
+rem test no infinite recursion
echo 14
.\testbootstrap "***RECURSION DETECTED***" -env:MYBOOTSTRAPTESTVALUE=$MYBOOTSTRAPTESTVALUE
diff --git a/sal/test/bootstrap.pl b/sal/test/bootstrap.pl
index 2bf6de574e04..32386cba62b8 100755
--- a/sal/test/bootstrap.pl
+++ b/sal/test/bootstrap.pl
@@ -217,7 +217,7 @@ if (!$rc) {
$state = 0;
}
-# test no infinit recursion
+# test no infinite recursion
if ($ENV{GUI} eq "WNT") {
$rc = system "./testbootstrap",
'"***RECURSION DETECTED***"',
@@ -229,7 +229,7 @@ else {
'-env:MYBOOTSTRAPTESTVALUE=$MYBOOTSTRAPTESTVALUE';
}
if (!$rc) {
- $comment = $comment . "no infinit recursion test not passed\n";
+ $comment = $comment . "no infinite recursion test not passed\n";
$state = 0;
}
diff --git a/sal/textenc/generate/cns116431992.pl b/sal/textenc/generate/cns116431992.pl
index dfed86b3451c..cb882d1c5ab5 100644
--- a/sal/textenc/generate/cns116431992.pl
+++ b/sal/textenc/generate/cns116431992.pl
@@ -322,7 +322,7 @@ for ($cns_plane = 1; $cns_plane <= 16; ++$cns_plane)
$cns1_row = ($cns1 >> 8) & 0xFF;
$cns1_column = $cns1 & 0xFF;
- # Do not map from Unicode to Fictious Character Set
+ # Do not map from Unicode to Fictitious Character Set
# Extensions (Lunde, p. 131), if possible:
if ($cns_plane == 3
&& ($cns_row == 66 && $cns_column > 38
@@ -330,7 +330,7 @@ for ($cns_plane = 1; $cns_plane <= 16; ++$cns_plane)
{
print " (",
printUtf32($utf32),
- " to fictious ",
+ " to fictitious ",
printCns116431992($cns_plane,
$cns_row,
$cns_column),
@@ -350,7 +350,7 @@ for ($cns_plane = 1; $cns_plane <= 16; ++$cns_plane)
| $cns_column;
print " (",
printUtf32($utf32),
- " to fictious ",
+ " to fictitious ",
printCns116431992($cns1_plane,
$cns1_row,
$cns1_column),
diff --git a/sal/textenc/tcvtkr1.tab b/sal/textenc/tcvtkr1.tab
index ca0cc4ff3360..bf82f0e18616 100644
--- a/sal/textenc/tcvtkr1.tab
+++ b/sal/textenc/tcvtkr1.tab
@@ -35,7 +35,7 @@
range 0x81 to 0xA0, extra second byte ranges 0x41 to 0x5A, 0x61 to 0x7A,
and 0x81 to 0xA0, even within the original EUC-KR area).
- The mappings are also used for the HangulTalk encoding (Macintosh), altough
+ The mappings are also used for the HangulTalk encoding (Macintosh), although
this contains some other EUC-KR extensions (that are thus not supported):
special single byte characters 0x81, 0x82, 0x83, 0xFE, and 0xFF; extra
double byte characters within first byte range 0xA1 to 0xAD and second byte
diff --git a/sal/textenc/tcvtmb.c b/sal/textenc/tcvtmb.c
index 432f5d7d5b3c..c30fd381a823 100644
--- a/sal/textenc/tcvtmb.c
+++ b/sal/textenc/tcvtmb.c
@@ -30,7 +30,7 @@
/* DBCS to Unicode conversion routine use a lead table for the first byte, */
/* where we determine the trail table or for single byte chars the unicode */
/* value. We have for all lead byte a separate table, because we can */
-/* then share many tables for diffrent charset encodings. */
+/* then share many tables for different charset encodings. */
/* ======================================================================= */
diff --git a/sal/textenc/tcvtutf8.c b/sal/textenc/tcvtutf8.c
index d137836bad70..dca0e434d872 100644
--- a/sal/textenc/tcvtutf8.c
+++ b/sal/textenc/tcvtutf8.c
@@ -141,7 +141,7 @@ sal_Size ImplConvertUtf8ToUnicode(ImplTextConverterData const * pData,
else
{
/*
- This byte is preceeded by a broken UTF-8 sequence; if this byte
+ This byte is preceded by a broken UTF-8 sequence; if this byte
is neither in the range [0x80..0xBF] nor in the range
[0xFE..0xFF], assume that this byte does not belong to that
broken sequence, but instead starts a new, legal UTF-8 sequence:
diff --git a/sal/typesconfig/typesconfig.c b/sal/typesconfig/typesconfig.c
index 25e6c6e84d43..7ef0130efed8 100644
--- a/sal/typesconfig/typesconfig.c
+++ b/sal/typesconfig/typesconfig.c
@@ -379,7 +379,7 @@ void Description_Print( struct Description* pThis, char* name )
fprintf( f, "#define SAL_TYPES_SIZEOFLONGLONG\t%d\n", (int) sizeof( long long ) );
fprintf( f, "#define SAL_TYPES_SIZEOFPOINTER\t%d\n", (int) sizeof( void* ) );
-/* Disabled for now, becuase OOo code assumes sizeof(double) == 8 and this is not
+/* Disabled for now, because OOo code assumes sizeof(double) == 8 and this is not
* likely to change any time soon. fa (2004-03-15)
*/
/* fprintf( f, "#define SAL_TYPES_SIZEOFDOUBLE\t%d\n", sizeof( double ) );*/
diff --git a/sal/workben/tgetpwnam.cxx b/sal/workben/tgetpwnam.cxx
index 9bb134f90a38..a8e1a0699517 100644
--- a/sal/workben/tgetpwnam.cxx
+++ b/sal/workben/tgetpwnam.cxx
@@ -229,7 +229,7 @@ int main(int argc, char *argv[])
}
else
{
- printf("failed to detect non existant host\n");
+ printf("failed to detect non existent host\n");
}
free(phostent);
diff --git a/salhelper/inc/salhelper/dynload.hxx b/salhelper/inc/salhelper/dynload.hxx
index 10039c0ccca0..862712fa1e31 100644
--- a/salhelper/inc/salhelper/dynload.hxx
+++ b/salhelper/inc/salhelper/dynload.hxx
@@ -36,7 +36,7 @@ namespace salhelper
class ORealDynamicLoader
{
public:
- /** initializes the loader, loads the library and call the initialization fucntion.
+ /** initializes the loader, loads the library and call the initialization function.
@param ppSetToZeroInDestructor points to the loader instance which must be set to NULL
if the loader will be destroyed.
diff --git a/salhelper/inc/salhelper/singletonref.hxx b/salhelper/inc/salhelper/singletonref.hxx
index 23fe45e5b587..837fb98b789e 100644
--- a/salhelper/inc/salhelper/singletonref.hxx
+++ b/salhelper/inc/salhelper/singletonref.hxx
@@ -55,10 +55,10 @@ namespace salhelper{
@attention To prevent the code against race conditions, its not
allowed to start operations inside the ctor
- of the internal wrapped object - especialy operations
+ of the internal wrapped object - especially operations
which needs a reference to the same singleton too.
- The only chance to supress such strange constellations
+ The only chance to suppress such strange constellations
is a lazy-init mechanism.
<ul>
@@ -70,7 +70,7 @@ namespace salhelper{
Note further that this singleton pattern can work only, if
all user of such singleton are located inside the same library!
- Because static values cant be exported - e.g. from windows libraries.
+ Because static values can't be exported - e.g. from windows libraries.
*/
template< class SingletonClass >
class SingletonRef
diff --git a/sax/inc/sax/parser/saxparser.hxx b/sax/inc/sax/parser/saxparser.hxx
index 3ef44954f2b3..7b7b5c29ed7f 100644
--- a/sax/inc/sax/parser/saxparser.hxx
+++ b/sax/inc/sax/parser/saxparser.hxx
@@ -112,7 +112,7 @@ public:
Default implementation calls StartElement() on the topmost contex. */
virtual void StartElement( sal_uInt32 aElementToken, const AttributeMap& rAttributes );
- /** is called for characters betwen elements in the xml stream.
+ /** is called for characters between elements in the xml stream.
Default implementation calls Characters() on the topmost contex.
@param pCharacters The characters in utf-8 encoding
@param nLength the size in bytes of the utf-8 string
diff --git a/sax/source/expatwrap/sax_expat.cxx b/sax/source/expatwrap/sax_expat.cxx
index 5cd382a1f103..a8967032455f 100644
--- a/sax/source/expatwrap/sax_expat.cxx
+++ b/sax/source/expatwrap/sax_expat.cxx
@@ -58,7 +58,7 @@ using namespace ::com::sun::star::io;
namespace sax_expatwrap {
-// Useful macros for correct String conversion depending on the choosen expat-mode
+// Useful macros for correct String conversion depending on the chosen expat-mode
#ifdef XML_UNICODE
OUString XmlNChar2OUString( const XML_Char *p , int nLen )
{
diff --git a/sc/addin/datefunc/dfa.cl b/sc/addin/datefunc/dfa.cl
index 366011ee1a27..283aff9ecb8a 100644
--- a/sc/addin/datefunc/dfa.cl
+++ b/sc/addin/datefunc/dfa.cl
@@ -217,14 +217,14 @@ static void DaysToDate( long nDays,
* The International Standard IS-8601 has decreed that Monday
* shall be the first day of the week.
*
- * A week that lies partly in one year and partly in annother
+ * A week that lies partly in one year and partly in another
* is assigned a number in the the year in which most of its days lie.
*
* That means that week 1 of any year is the week that contains the 4. January
*
* The internal representation of a Date used in the Addin is the number of days based on 01/01/0001
*
- * A WeekDay can be then calculated by substracting 1 and calculating the rest of
+ * A WeekDay can be then calculated by subtracting 1 and calculating the rest of
* a division by 7, which gives a 0 - 6 value for Monday - Sunday
*
* Using the 4. January rule explained above the formula
@@ -234,7 +234,7 @@ static void DaysToDate( long nDays,
* calculates a number between 0-53 for each day which is in the same year as nJan4
* where 0 means that this week belonged to the year before.
*
- * If a day in the same or annother year is used in this formula this calculates
+ * If a day in the same or another year is used in this formula this calculates
* an calendar week offset from a given 4. January
*
* nWeek2 = ( nDays2 - nJan4 + ( (nJan4-1) % 7 ) ) / 7 + 1;
@@ -428,7 +428,7 @@ void CALLTYPE ScDate_DaysInMonth(double *r, double *d)
* The International Standard IS-8601 has decreed that Monday
* shall be the first day of the week.
*
- * A WeekDay can be calculated by substracting 1 and calculating the rest of
+ * A WeekDay can be calculated by subtracting 1 and calculating the rest of
* a division by 7 from the internal date represention
* which gives a 0 - 6 value for Monday - Sunday
*
@@ -508,7 +508,7 @@ void CALLTYPE GetFunctionCount( USHORT *nCount )
}
/**
- * Provides neccessary data for each new function to StarCalc
+ * Provides necessary data for each new function to StarCalc
*
* @param *nNo Input: Function number between 0 and nCount - 1
* @param *pFuncName Output: Functionname which should be called in the AddIn-DLL
diff --git a/sc/addin/datefunc/dfa.src b/sc/addin/datefunc/dfa.src
index d61fe7ca73dc..a03881d6504e 100644
--- a/sc/addin/datefunc/dfa.src
+++ b/sc/addin/datefunc/dfa.src
@@ -27,7 +27,7 @@
* legacy AddIn interface. The interface is still supported, but deprecated.
* The strings here were displayed in the function wizard. To prevent
* duplicated and useless translation effort (functions and strings are also
- * part of the new scaddin module), the strings here are now layed out as fixed
+ * part of the new scaddin module), the strings here are now laid out as fixed
* untranslatable strings. The entire mechanism with the ../util/cl2c.pl perl
* script merging the raw .cl and the .src during build time didn't work
* anymore anyway, since we switched from MS-LCIDs / telephone area codes to
diff --git a/sc/addin/rot13/rot13.cl b/sc/addin/rot13/rot13.cl
index a1bd601354bf..9f2dd4f8ea80 100644
--- a/sc/addin/rot13/rot13.cl
+++ b/sc/addin/rot13/rot13.cl
@@ -57,7 +57,7 @@ void CALLTYPE GetFunctionCount( USHORT *nCount )
}
/**
- * Provides neccessary data for each new function to StarCalc
+ * Provides necessary data for each new function to StarCalc
*
* @param *nNo Input: Function number between 0 and nCount - 1
* @param *pFuncName Output: Functionname which should be called in the AddIn-DLL
diff --git a/sc/addin/rot13/rot13.src b/sc/addin/rot13/rot13.src
index b7b29187a0b6..8bd75cc3b112 100644
--- a/sc/addin/rot13/rot13.src
+++ b/sc/addin/rot13/rot13.src
@@ -27,7 +27,7 @@
* legacy AddIn interface. The interface is still supported, but deprecated.
* The strings here were displayed in the function wizard. To prevent
* duplicated and useless translation effort (functions and strings are also
- * part of the new scaddin module), the strings here are now layed out as fixed
+ * part of the new scaddin module), the strings here are now laid out as fixed
* untranslatable strings. The entire mechanism with the ../util/cl2c.pl perl
* script merging the raw .cl and the .src during build time didn't work
* anymore anyway, since we switched from MS-LCIDs / telephone area codes to
diff --git a/sc/inc/attarray.hxx b/sc/inc/attarray.hxx
index 6771b7cd5cbd..488c6afbc841 100644
--- a/sc/inc/attarray.hxx
+++ b/sc/inc/attarray.hxx
@@ -167,7 +167,7 @@ public:
sal_Bool GetFirstVisibleAttr( SCROW& rFirstRow ) const;
sal_Bool GetLastVisibleAttr( SCROW& rLastRow, SCROW nLastData ) const;
/*
- Get the last cell's row number , which have visual atribute or visual data in attribute list
+ Get the last cell's row number , which have visual attribute or visual data in attribute list
*/
sal_Bool GetLastAttr( SCROW& rLastRow, SCROW nLastData ) const;
sal_Bool HasVisibleAttrIn( SCROW nStartRow, SCROW nEndRow ) const;
diff --git a/sc/inc/chgtrack.hxx b/sc/inc/chgtrack.hxx
index 67b516bbd0e6..229560ecdcfb 100644
--- a/sc/inc/chgtrack.hxx
+++ b/sc/inc/chgtrack.hxx
@@ -593,7 +593,7 @@ public:
const ScChangeActionType eType,
const SCsCOLROW nD,
ScChangeTrack* pTrack); // only to use in the XML import
- // wich of nDx and nDy is set is depend on the type
+ // which of nDx and nDy is set is depend on the type
// ob dieses das unterste einer Reihe (oder
// auch einzeln) ist
diff --git a/sc/inc/column.hxx b/sc/inc/column.hxx
index e856bf803441..e4fa1216cbbd 100644
--- a/sc/inc/column.hxx
+++ b/sc/inc/column.hxx
@@ -172,7 +172,7 @@ public:
sal_Bool GetFirstVisibleAttr( SCROW& rFirstRow ) const;
sal_Bool GetLastVisibleAttr( SCROW& rLastRow ) const;
/*
- Get the last cell's row number , which have visual atribute or visual data in a column
+ Get the last cell's row number , which have visual attribute or visual data in a column
*/
sal_Bool GetLastAttr( SCROW& rLastRow ) const;
sal_Bool HasVisibleAttrIn( SCROW nStartRow, SCROW nEndRow ) const;
diff --git a/sc/inc/compressedarray.hxx b/sc/inc/compressedarray.hxx
index a34063925247..1fe2f4479d55 100644
--- a/sc/inc/compressedarray.hxx
+++ b/sc/inc/compressedarray.hxx
@@ -221,7 +221,7 @@ ScCompressedArray<A,D>::GetDataEntry( size_t nIndex ) const
/** Iterator for ScCompressedArray.
- @ATTENTION: the iterator is not persistant if the underlying
+ @ATTENTION: the iterator is not persistent if the underlying
ScCompressedArray happens to be changed by any means, for example by
setting new values or adding or removing or combining entries. If you do
such things inside a loop you MUST resynchronize the iterator by calling
diff --git a/sc/inc/document.hxx b/sc/inc/document.hxx
index 1c7fa09372de..f666978a92a5 100644
--- a/sc/inc/document.hxx
+++ b/sc/inc/document.hxx
@@ -722,7 +722,7 @@ public:
/** Tries to find a DDE link or creates a new, if not extant.
@param pResults If not 0, sets the matrix as as DDE link result matrix (also for existing links).
- @return true = DDE link found; false = Unpredictable error occured, no DDE link created. */
+ @return true = DDE link found; false = Unpredictable error occurred, no DDE link created. */
SC_DLLPUBLIC bool CreateDdeLink( const String& rAppl, const String& rTopic, const String& rItem, sal_uInt8 nMode, ScMatrix* pResults = NULL );
/** Sets a result matrix for the specified DDE link.
@param nDdePos Index of the DDE link (does not include other links from link manager).
@@ -980,7 +980,7 @@ public:
void InvalidateTableArea();
/*
- Get the last cell's row number , which have visual atribute or visual data in specific table
+ Get the last cell's row number , which have visual attribute or visual data in specific table
*/
SC_DLLPUBLIC void GetLastAttrCell( SCTAB nTab, SCCOL& rEndCol, SCROW& rEndRow ) const;
@@ -1435,7 +1435,7 @@ public:
SCROW GetNextDifferentChangedRow( SCTAB nTab, SCROW nStart, bool bCareManualSize = true) const;
// returns whether to export a Default style for this col/row or not
- // nDefault is setted to one possition in the current row/col where the Default style is
+ // nDefault is setted to one position in the current row/col where the Default style is
sal_Bool GetColDefault( SCTAB nTab, SCCOL nCol, SCROW nLastRow, SCROW& nDefault);
sal_Bool GetRowDefault( SCTAB nTab, SCROW nRow, SCCOL nLastCol, SCCOL& nDefault);
diff --git a/sc/inc/table.hxx b/sc/inc/table.hxx
index 052f8733a3ee..445f2ef64327 100644
--- a/sc/inc/table.hxx
+++ b/sc/inc/table.hxx
@@ -422,7 +422,7 @@ public:
SCROW& rEndRow, sal_Bool bNotes ) const;
/*
- Get the last cell's postion, which has visual attribute or data and has max row number among all columns.
+ Get the last cell's position, which has visual attribute or data and has max row number among all columns.
*/
void GetLastAttrCell( SCCOL& rEndCol, SCROW& rEndRow ) const;
sal_Bool GetDataStart( SCCOL& rStartCol, SCROW& rStartRow ) const;
diff --git a/sc/qa/complex/dataPilot/_XPropertySet.java b/sc/qa/complex/dataPilot/_XPropertySet.java
index fab4bfa11e56..0711f05f1c18 100644
--- a/sc/qa/complex/dataPilot/_XPropertySet.java
+++ b/sc/qa/complex/dataPilot/_XPropertySet.java
@@ -201,19 +201,19 @@ public class _XPropertySet {
oObj.setPropertyValue(PTT.bound,
ValueChanger.changePValue(gValue));
} catch (com.sun.star.beans.PropertyVetoException e) {
- System.out.println("Exception occured while trying to change "+
+ System.out.println("Exception occurred while trying to change "+
"property '"+ PTT.bound+"'");
e.printStackTrace();
} catch (com.sun.star.lang.IllegalArgumentException e) {
- System.out.println("Exception occured while trying to change "+
+ System.out.println("Exception occurred while trying to change "+
"property '"+ PTT.bound+"'");
e.printStackTrace();
} catch (com.sun.star.beans.UnknownPropertyException e) {
- System.out.println("Exception occured while trying to change "+
+ System.out.println("Exception occurred while trying to change "+
"property '"+ PTT.bound+"'");
e.printStackTrace();
} catch (com.sun.star.lang.WrappedTargetException e) {
- System.out.println("Exception occured while trying to change "+
+ System.out.println("Exception occurred while trying to change "+
"property '"+ PTT.bound+"'");
e.printStackTrace();
} // end of try-catch
@@ -256,19 +256,19 @@ public class _XPropertySet {
oObj.setPropertyValue(PTT.constrained,
ValueChanger.changePValue(gValue));
} catch (com.sun.star.beans.PropertyVetoException e) {
- System.out.println("Exception occured while trying to change "+
+ System.out.println("Exception occurred while trying to change "+
"property '"+ PTT.constrained+"'");
e.printStackTrace();
} catch (com.sun.star.lang.IllegalArgumentException e) {
- System.out.println("Exception occured while trying to change "+
+ System.out.println("Exception occurred while trying to change "+
"property '"+ PTT.constrained+"'");
e.printStackTrace();
} catch (com.sun.star.beans.UnknownPropertyException e) {
- System.out.println("Exception occured while trying to change "+
+ System.out.println("Exception occurred while trying to change "+
"property '"+ PTT.constrained+"'");
e.printStackTrace();
} catch (com.sun.star.lang.WrappedTargetException e) {
- System.out.println("Exception occured while trying to change "+
+ System.out.println("Exception occurred while trying to change "+
"property '"+ PTT.constrained+"'");
e.printStackTrace();
} // end of try-catch
@@ -314,19 +314,19 @@ public class _XPropertySet {
oObj.setPropertyValue(PTT.normal, sValue);
sValue = oObj.getPropertyValue(PTT.normal);
} catch (com.sun.star.beans.PropertyVetoException e) {
- System.out.println("Exception occured while trying to change "+
+ System.out.println("Exception occurred while trying to change "+
"property '"+ PTT.normal+"'");
e.printStackTrace();
} catch (com.sun.star.lang.IllegalArgumentException e) {
- System.out.println("Exception occured while trying to change "+
+ System.out.println("Exception occurred while trying to change "+
"property '"+ PTT.normal+"'");
e.printStackTrace();
} catch (com.sun.star.beans.UnknownPropertyException e) {
- System.out.println("Exception occured while trying to change "+
+ System.out.println("Exception occurred while trying to change "+
"property '"+ PTT.normal+"'");
e.printStackTrace();
} catch (com.sun.star.lang.WrappedTargetException e) {
- System.out.println("Exception occured while trying to change "+
+ System.out.println("Exception occurred while trying to change "+
"property '"+ PTT.normal+"'");
e.printStackTrace();
} // end of try-catch
@@ -364,12 +364,12 @@ public class _XPropertySet {
try {
Object gValue = oObj.getPropertyValue(toCheck);
} catch (com.sun.star.beans.UnknownPropertyException e) {
- System.out.println("Exception occured while trying to get property '"+
+ System.out.println("Exception occurred while trying to get property '"+
PTT.normal+"'");
e.printStackTrace();
result = false;
} catch (com.sun.star.lang.WrappedTargetException e) {
- System.out.println("Exception occured while trying to get property '"+
+ System.out.println("Exception occurred while trying to get property '"+
PTT.normal+"'");
e.printStackTrace();
result = false;
@@ -407,19 +407,19 @@ public class _XPropertySet {
oObj.setPropertyValue(PTT.bound,
ValueChanger.changePValue(gValue));
} catch (com.sun.star.beans.PropertyVetoException e) {
- System.out.println("Exception occured while trying to change "+
+ System.out.println("Exception occurred while trying to change "+
"property '"+ PTT.bound+"'");
e.printStackTrace();
} catch (com.sun.star.lang.IllegalArgumentException e) {
- System.out.println("Exception occured while trying to change "+
+ System.out.println("Exception occurred while trying to change "+
"property '"+ PTT.bound+"'");
e.printStackTrace();
} catch (com.sun.star.beans.UnknownPropertyException e) {
- System.out.println("Exception occured while trying to change "+
+ System.out.println("Exception occurred while trying to change "+
"property '"+ PTT.bound+"'");
e.printStackTrace();
} catch (com.sun.star.lang.WrappedTargetException e) {
- System.out.println("Exception occured while trying to change "+
+ System.out.println("Exception occurred while trying to change "+
"property '"+ PTT.bound+"'");
e.printStackTrace();
} // end of try-catch
@@ -464,19 +464,19 @@ public class _XPropertySet {
oObj.setPropertyValue(PTT.constrained,
ValueChanger.changePValue(gValue));
} catch (com.sun.star.beans.PropertyVetoException e) {
- System.out.println("Exception occured while trying to change "+
+ System.out.println("Exception occurred while trying to change "+
"property '"+ PTT.constrained+"'");
e.printStackTrace();
} catch (com.sun.star.lang.IllegalArgumentException e) {
- System.out.println("Exception occured while trying to change "+
+ System.out.println("Exception occurred while trying to change "+
"property '"+ PTT.constrained+"'");
e.printStackTrace();
} catch (com.sun.star.beans.UnknownPropertyException e) {
- System.out.println("Exception occured while trying to change "+
+ System.out.println("Exception occurred while trying to change "+
"property '"+ PTT.constrained+"'");
e.printStackTrace();
} catch (com.sun.star.lang.WrappedTargetException e) {
- System.out.println("Exception occured while trying to change "+
+ System.out.println("Exception occurred while trying to change "+
"property '"+ PTT.constrained+"'");
e.printStackTrace();
} // end of try-catch
diff --git a/sc/qa/complex/sc/CalcRTL.java b/sc/qa/complex/sc/CalcRTL.java
index e80c9213f05b..21832ef549ee 100644
--- a/sc/qa/complex/sc/CalcRTL.java
+++ b/sc/qa/complex/sc/CalcRTL.java
@@ -336,7 +336,7 @@ public class CalcRTL /* extends ComplexTestCase */
worked = checkResult(set, pName, oldValue, pValue, resValue,
exception);
} catch (Exception e) {
- System.out.println("Exception occured while testing property '" +
+ System.out.println("Exception occurred while testing property '" +
pName + "'");
e.printStackTrace();
worked = false;
diff --git a/sc/source/core/data/column.cxx b/sc/source/core/data/column.cxx
index 4989aede2b48..9240098196d7 100644
--- a/sc/source/core/data/column.cxx
+++ b/sc/source/core/data/column.cxx
@@ -726,7 +726,7 @@ sal_Bool ScColumn::Search( SCROW nRow, SCSIZE& nIndex ) const
i = (nLo+nHi) / 2; // no effort, no division by zero
else
{ // interpolating search
- long nLoRow = pItems[nLo].nRow; // no unsigned underflow upon substraction
+ long nLoRow = pItems[nLo].nRow; // no unsigned underflow upon subtraction
i = nLo + (long)((long)(nRow - nLoRow) * (nHi - nLo)
/ (pItems[nHi].nRow - nLoRow));
if ( i < 0 || static_cast<SCSIZE>(i) >= nCount )
diff --git a/sc/source/core/data/documen9.cxx b/sc/source/core/data/documen9.cxx
index 62d5da0a4141..30e7e22319b0 100644
--- a/sc/source/core/data/documen9.cxx
+++ b/sc/source/core/data/documen9.cxx
@@ -157,6 +157,22 @@ void ScDocument::InitDrawLayer( SfxObjectShell* pDocShell )
if (GetLinkManager())
pDrawLayer->SetLinkManager( pLinkManager );
+ //UUUU set DrawingLayer's SfxItemPool at Calc's SfxItemPool as
+ // secondary pool to support DrawingLayer FillStyle ranges (and similar)
+ // in SfxItemSets using the Calc SfxItemPool. This is e.g. needed when
+ // the PageStyle using SvxBrushItem is visualized and will be potentially
+ // used more intense in the future
+ if(xPoolHelper.isValid())
+ {
+ ScDocumentPool* pLocalPool = xPoolHelper->GetDocPool();
+
+ if(pLocalPool)
+ {
+ OSL_ENSURE(!pLocalPool->GetSecondaryPool(), "OOps, already a secondary pool set where the DrawingLayer ItemPool is to be placed (!)");
+ pLocalPool->SetSecondaryPool(&pDrawLayer->GetItemPool());
+ }
+ }
+
// Drawing pages are accessed by table number, so they must also be present
// for preceding table numbers, even if the tables aren't allocated
// (important for clipboard documents).
@@ -251,7 +267,20 @@ IMPL_LINK_INLINE_END( ScDocument, GetUserDefinedColor, sal_uInt16 *, pColorIndex
void ScDocument::DeleteDrawLayer()
{
+ //UUUU remove DrawingLayer's SfxItemPool from Calc's SfxItemPool where
+ // it is registered as secondary pool
+ if(xPoolHelper.isValid())
+ {
+ ScDocumentPool* pLocalPool = xPoolHelper->GetDocPool();
+
+ if(pLocalPool && pLocalPool->GetSecondaryPool())
+ {
+ pLocalPool->SetSecondaryPool(0);
+ }
+ }
+
delete pDrawLayer;
+ pDrawLayer = 0;
}
sal_Bool ScDocument::DrawGetPrintArea( ScRange& rRange, sal_Bool bSetHor, sal_Bool bSetVer ) const
diff --git a/sc/source/core/data/dpobject.cxx b/sc/source/core/data/dpobject.cxx
index ee4158201e3c..bbd19e259cd0 100644
--- a/sc/source/core/data/dpobject.cxx
+++ b/sc/source/core/data/dpobject.cxx
@@ -1724,7 +1724,7 @@ void lcl_FillOldFields( ScPivotFieldVector& rFields,
bool bDataFound = false;
rFields.clear();
- //! merge multiple occurences (data field with different functions)
+ //! merge multiple occurrences (data field with different functions)
//! force data field in one dimension
std::vector< long > aPos;
diff --git a/sc/source/core/data/dptablecache.cxx b/sc/source/core/data/dptablecache.cxx
index a1b07ca2fd91..01f7cfecfed1 100644
--- a/sc/source/core/data/dptablecache.cxx
+++ b/sc/source/core/data/dptablecache.cxx
@@ -623,7 +623,7 @@ bool ScDPTableDataCache::InitFromDataBase (const Reference<sdbc::XRowSet>& xRowS
sal_uLong ScDPTableDataCache::GetDimNumType( SCCOL nDim) const
{
DBG_ASSERT( IsValid(), " IsValid() == false " );
- DBG_ASSERT( nDim < mnColumnCount && nDim >=0, " dimention out of bound " );
+ DBG_ASSERT( nDim < mnColumnCount && nDim >=0, " dimension out of bound " );
if ( mpTableDataValues[nDim].size()==0 )
return NUMBERFORMAT_UNDEFINED;
else
diff --git a/sc/source/core/data/dptabres.cxx b/sc/source/core/data/dptabres.cxx
index b498484e2cea..5d4642b63d46 100644
--- a/sc/source/core/data/dptabres.cxx
+++ b/sc/source/core/data/dptabres.cxx
@@ -704,7 +704,7 @@ ScDPAggData* lcl_GetChildTotal( ScDPAggData* pFirst, long nMeasure )
ScDPAggData* pAgg = pFirst;
long nSkip = nMeasure;
- // subtotal settings are ignored - colum/row totals exist once per measure
+ // subtotal settings are ignored - column/row totals exist once per measure
for ( long nPos=0; nPos<nSkip; nPos++ )
pAgg = pAgg->GetChild(); // column total is constructed empty - children need to be created
@@ -1095,7 +1095,7 @@ void ScDPResultMember::InitFrom( const vector<ScDPDimension*>& ppDim, const vect
if ( GetDPMember() && !GetDPMember()->getShowDetails() )
{
// Wang Xu Ming -- 2009-6-16
- // Show DataLayout dimention
+ // Show DataLayout dimension
nMemberStep = 1;
while ( nPos < ppDim.size() )
{
@@ -1143,7 +1143,7 @@ void ScDPResultMember::LateInitFrom( LateInitParams& rParams/*const vector<ScDPD
{
// Wang Xu Ming -- 2009-6-16
// DataPilot Migration
- // Show DataLayout dimention
+ // Show DataLayout dimension
nMemberStep = 1;
while ( !rParams.IsEnd( nPos ) )
{
diff --git a/sc/source/core/data/dptabsrc.cxx b/sc/source/core/data/dptabsrc.cxx
index 2519f33b43b7..5f9bab302905 100644
--- a/sc/source/core/data/dptabsrc.cxx
+++ b/sc/source/core/data/dptabsrc.cxx
@@ -1002,7 +1002,7 @@ void ScDPSource::CreateRes_Impl()
pRowResRoot->UpdateDataResults( pColResRoot, pResData->GetRowStartMeasure() );
}
- // SortMembers does the sorting by a result dimension, using the orginal results,
+ // SortMembers does the sorting by a result dimension, using the original results,
// but not running totals etc.
pRowResRoot->SortMembers( pColResRoot );
diff --git a/sc/source/core/data/global.cxx b/sc/source/core/data/global.cxx
index 79a98c6c9b33..714338b6aff1 100644
--- a/sc/source/core/data/global.cxx
+++ b/sc/source/core/data/global.cxx
@@ -1236,7 +1236,7 @@ ScFunctionList::ScFunctionList() :
::std::auto_ptr<ScResourcePublisher> pBlock( new ScResourcePublisher( ScResId( nDescBlock[k] ) ) );
// Browse for all possible OpCodes. This is not the fastest method, but
// otherwise the sub resources within the resource blocks and the
- // resource blocks themselfs would had to be ordered according to
+ // resource blocks themselves would had to be ordered according to
// OpCodes, which is utopian..
for (i = 0; i <= SC_OPCODE_LAST_OPCODE_ID; i++)
{
diff --git a/sc/source/core/data/validat.cxx b/sc/source/core/data/validat.cxx
index 555766c2d094..3d2bbcb60611 100644
--- a/sc/source/core/data/validat.cxx
+++ b/sc/source/core/data/validat.cxx
@@ -655,7 +655,7 @@ bool ScValidationData::GetSelectionFromFormula( TypedScStrCollection* pStrings,
const ScMatrix *pValues = aValidationSrc.GetMatrix();
if (!pValues)
{
- // The somewhat nasty case of either an error occured, or the
+ // The somewhat nasty case of either an error occurred, or the
// dereferenced value of a single cell reference or an immediate result
// is stored as a single value.
diff --git a/sc/source/core/tool/chgtrack.cxx b/sc/source/core/tool/chgtrack.cxx
index 142c93ce12d7..6b6bb713f61b 100644
--- a/sc/source/core/tool/chgtrack.cxx
+++ b/sc/source/core/tool/chgtrack.cxx
@@ -933,7 +933,7 @@ ScChangeActionDel::ScChangeActionDel( const ScRange& rRange,
ScChangeActionDel::ScChangeActionDel(const sal_uLong nActionNumber, const ScChangeActionState eStateP, const sal_uLong nRejectingNumber,
const ScBigRange& aBigRangeP, const String& aUserP, const DateTime& aDateTimeP, const String &sComment,
- const ScChangeActionType eTypeP, const SCsCOLROW nD, ScChangeTrack* pTrackP) // wich of nDx and nDy is set is depend on the type
+ const ScChangeActionType eTypeP, const SCsCOLROW nD, ScChangeTrack* pTrackP) // which of nDx and nDy is set is depend on the type
:
ScChangeAction(eTypeP, aBigRangeP, nActionNumber, nRejectingNumber, eStateP, aDateTimeP, aUserP, sComment),
pTrack( pTrackP ),
@@ -1261,7 +1261,7 @@ void ScChangeActionDel::UndoCutOffInsert()
ScChangeActionMove::ScChangeActionMove(const sal_uLong nActionNumber, const ScChangeActionState eStateP, const sal_uLong nRejectingNumber,
const ScBigRange& aToBigRange, const String& aUserP, const DateTime& aDateTimeP, const String &sComment,
- const ScBigRange& aFromBigRange, ScChangeTrack* pTrackP) // wich of nDx and nDy is set is depend on the type
+ const ScBigRange& aFromBigRange, ScChangeTrack* pTrackP) // which of nDx and nDy is set is depend on the type
:
ScChangeAction(SC_CAT_MOVE, aToBigRange, nActionNumber, nRejectingNumber, eStateP, aDateTimeP, aUserP, sComment),
aFromRange(aFromBigRange),
diff --git a/sc/source/core/tool/compiler.cxx b/sc/source/core/tool/compiler.cxx
index 82c5d75de671..600d7741deb1 100644
--- a/sc/source/core/tool/compiler.cxx
+++ b/sc/source/core/tool/compiler.cxx
@@ -1235,7 +1235,7 @@ struct ConventionXL
if( bStartHasDoc )
{
- // A ref across multipled workbooks ?
+ // A ref across multiplied workbooks ?
if( !bEndHasDoc )
return;
diff --git a/sc/source/core/tool/interpr1.cxx b/sc/source/core/tool/interpr1.cxx
index 23be39911a7a..70afc97396df 100644
--- a/sc/source/core/tool/interpr1.cxx
+++ b/sc/source/core/tool/interpr1.cxx
@@ -6592,7 +6592,7 @@ void ScInterpreter::ScDBCount()
// existing cells, so if a query matches an empty cell there's
// nothing returned, and therefor not counted!
// Since this has ever been the case and this code here only came
- // into existance to fix #i6899 and it never worked before we'll
+ // into existence to fix #i6899 and it never worked before we'll
// have to live with it until we reimplement the iterators to also
// return empty cells, which would mean to adapt all callers of
// iterators.
diff --git a/sc/source/core/tool/interpr2.cxx b/sc/source/core/tool/interpr2.cxx
index 63edaf706cd0..1d9638b27b28 100644
--- a/sc/source/core/tool/interpr2.cxx
+++ b/sc/source/core/tool/interpr2.cxx
@@ -325,7 +325,7 @@ void ScInterpreter::ScGetDiffDate360()
* 30" or "NASD 30" method (funny enough they also state that Excel is the
* only tool that does so).
*
- * Note that the definiton given in
+ * Note that the definition given in
* http://msdn.microsoft.com/library/en-us/office97/html/SEB7C.asp
* is _not_ the way how it is actually calculated by Excel (that would not
* even match any of the 7 methods mentioned above) and would result in the
diff --git a/sc/source/core/tool/interpr5.cxx b/sc/source/core/tool/interpr5.cxx
index e1f9c0a5b788..bf668a582ed3 100644
--- a/sc/source/core/tool/interpr5.cxx
+++ b/sc/source/core/tool/interpr5.cxx
@@ -667,7 +667,7 @@ void ScInterpreter::MEMat(ScMatrix* mM, SCSIZE n)
* permutations (row exchanges).
*
* Returns 0 if a singular matrix is encountered, else +1 if an even number of
- * permutations occured, or -1 if odd, which is the sign of the determinant.
+ * permutations occurred, or -1 if odd, which is the sign of the determinant.
* This may be used to calculate the determinant by multiplying the sign with
* the product of the diagonal elements of the LU matrix.
*/
diff --git a/sc/source/filter/excel/ooxml-export-TODO.txt b/sc/source/filter/excel/ooxml-export-TODO.txt
index 011cf705686a..bab76067e8f9 100644
--- a/sc/source/filter/excel/ooxml-export-TODO.txt
+++ b/sc/source/filter/excel/ooxml-export-TODO.txt
@@ -147,7 +147,7 @@ Elements:
- Comments (§3.7):
- Note: Excel *requires* that there be a drawing object associated
with the comment before it will show it. If you _just_ generate the
- <comments/> XML part and create a <Relationship/> for it, Excell
+ <comments/> XML part and create a <Relationship/> for it, Excel
will NOT display the comment.
- As drawing is not currently implemented, comments support is
incomplete.
diff --git a/sc/source/filter/excel/xeformula.cxx b/sc/source/filter/excel/xeformula.cxx
index 1bdecee7d613..a9f374c83703 100644
--- a/sc/source/filter/excel/xeformula.cxx
+++ b/sc/source/filter/excel/xeformula.cxx
@@ -708,7 +708,7 @@ void XclExpFmlaCompImpl::RecalcTokenClass( const XclExpTokenConvInfo& rConvInfo,
case EXC_PARAMCONV_RPX:
/* If parent token has REF class (REF token in REFTYPE
function parameter), then RPX repeats the previous
- effective conversion (wich will be either ORG or ARR,
+ effective conversion (which will be either ORG or ARR,
but never VAL), otherwise falls back to ORG conversion. */
eClassConv = bWasRefClass ? ePrevClassConv : EXC_CLASSCONV_ORG;
break;
diff --git a/sc/source/filter/excel/xepivot.cxx b/sc/source/filter/excel/xepivot.cxx
index cf948afbfcb2..d629664afbd1 100644
--- a/sc/source/filter/excel/xepivot.cxx
+++ b/sc/source/filter/excel/xepivot.cxx
@@ -72,7 +72,7 @@ using ::rtl::OUStringBuffer;
namespace {
-// constants to track occurence of specific data types
+// constants to track occurrence of specific data types
const sal_uInt16 EXC_PCITEM_DATA_STRING = 0x0001; /// String, empty, boolean, error.
const sal_uInt16 EXC_PCITEM_DATA_DOUBLE = 0x0002; /// Double with fraction.
const sal_uInt16 EXC_PCITEM_DATA_INTEGER = 0x0004; /// Integer, double without fraction.
diff --git a/sc/source/filter/excel/xestyle.cxx b/sc/source/filter/excel/xestyle.cxx
index 9242445a2148..e519f563b4b9 100644
--- a/sc/source/filter/excel/xestyle.cxx
+++ b/sc/source/filter/excel/xestyle.cxx
@@ -524,7 +524,7 @@ XclListColor* XclExpPaletteImpl::SearchListEntry( const Color& rColor, sal_uInt3
rnIndex = mnLastIdx;
XclListColor* pEntry = mxColorList->GetObject( rnIndex );
- // search optimization for equal-colored objects occuring repeatedly
+ // search optimization for equal-colored objects occurring repeatedly
if( pEntry && (pEntry->GetColor() == rColor) )
return pEntry;
diff --git a/sc/source/filter/excel/xichart.cxx b/sc/source/filter/excel/xichart.cxx
index 28e53d09ccf8..22157426d9c6 100644
--- a/sc/source/filter/excel/xichart.cxx
+++ b/sc/source/filter/excel/xichart.cxx
@@ -3786,7 +3786,7 @@ void XclImpChChart::ReadChDataFormat( XclImpStream& rStrm )
{
XclImpChDataFormatRef& rxMapFmt = maDataFmts[ xDataFmt->GetPointPos() ];
/* Do not overwrite existing data format group, Excel always uses the
- first data format group occuring in any CHSERIES group. */
+ first data format group occurring in any CHSERIES group. */
if( !rxMapFmt )
rxMapFmt = xDataFmt;
}
diff --git a/sc/source/filter/excel/xipivot.cxx b/sc/source/filter/excel/xipivot.cxx
index 6c4d450e9079..cf25d8d33c3a 100644
--- a/sc/source/filter/excel/xipivot.cxx
+++ b/sc/source/filter/excel/xipivot.cxx
@@ -1321,7 +1321,7 @@ void XclImpPivotTable::ReadSxdi( XclImpStream& rStrm )
if( XclImpPTField* pField = GetFieldAcc( aDataInfo.mnField ) )
{
maOrigDataFields.push_back( aDataInfo.mnField );
- // DataPilot does not support double data fields -> add first appearence to index list only
+ // DataPilot does not support double data fields -> add first appearance to index list only
if( !pField->HasDataFieldInfo() )
maFiltDataFields.push_back( aDataInfo.mnField );
pField->AddDataFieldInfo( aDataInfo );
diff --git a/sc/source/filter/excel/xlpivot.cxx b/sc/source/filter/excel/xlpivot.cxx
index 08c085ecd478..67257ae8f5c9 100644
--- a/sc/source/filter/excel/xlpivot.cxx
+++ b/sc/source/filter/excel/xlpivot.cxx
@@ -1027,7 +1027,7 @@ void XclPTViewEx9Info::Init( const ScDPObject& rDPObj )
else
{
// Report1 for now
- // TODO : sync with autoformat indicies
+ // TODO : sync with autoformat indices
mbReport = 2;
mnAutoFormat = 1;
mnGridLayout = 0x10;
diff --git a/sc/source/filter/inc/fapihelper.hxx b/sc/source/filter/inc/fapihelper.hxx
index 327be6da55fb..ede6675333d6 100644
--- a/sc/source/filter/inc/fapihelper.hxx
+++ b/sc/source/filter/inc/fapihelper.hxx
@@ -185,7 +185,7 @@ public:
{ UnoAny aAny; return GetAnyProperty( aAny, rPropName ) && (aAny >>= rValue); }
/** Gets the specified Boolean property from the property set.
- @return true = property contains true; false = property contains false or error occured. */
+ @return true = property contains true; false = property contains false or error occurred. */
bool GetBoolProperty( const ::rtl::OUString& rPropName ) const;
/** Gets the specified Boolean property from the property set.
diff --git a/sc/source/filter/inc/xehelper.hxx b/sc/source/filter/inc/xehelper.hxx
index 7364895aa765..cf2830e8377d 100644
--- a/sc/source/filter/inc/xehelper.hxx
+++ b/sc/source/filter/inc/xehelper.hxx
@@ -186,7 +186,7 @@ class XclExpHyperlink;
/** Helper to create HLINK records during creation of formatted cell strings.
In Excel it is not possible to have more than one hyperlink in a cell. This
- helper detects multiple occurences of hyperlinks and fills a string which
+ helper detects multiple occurrences of hyperlinks and fills a string which
is used to create a cell note containing all URLs. Only cells containing
one hyperlink are exported as hyperlink cells.
*/
diff --git a/sc/source/filter/inc/xestream.hxx b/sc/source/filter/inc/xestream.hxx
index 396075461f32..5afd245762b5 100644
--- a/sc/source/filter/inc/xestream.hxx
+++ b/sc/source/filter/inc/xestream.hxx
@@ -93,7 +93,7 @@ public:
/** Starts a new record: writes header data, stores calculated record size. */
void StartRecord( sal_uInt16 nRecId, sal_Size nRecSize );
- /** Checks and corrects real record length. Must be called everytime a record is finished. */
+ /** Checks and corrects real record length. Must be called every time a record is finished. */
void EndRecord();
/** Returns the position inside of current record (starts by 0 in every CONTINUE). */
diff --git a/sc/source/filter/inc/xistream.hxx b/sc/source/filter/inc/xistream.hxx
index 88f31761408a..65dacfe18971 100644
--- a/sc/source/filter/inc/xistream.hxx
+++ b/sc/source/filter/inc/xistream.hxx
@@ -461,9 +461,9 @@ private:
/** Initializes the decrypter to read a new record. */
void SetupDecrypter();
- /** Initializes all members after base stream has been seeked to new raw record. */
+ /** Initializes all members after base stream has been sought to new raw record. */
void SetupRawRecord();
- /** Initializes all members after base stream has been seeked to new record. */
+ /** Initializes all members after base stream has been sought to new record. */
void SetupRecord();
/** Returns true, if the passed ID is real or alternative continuation record ID. */
diff --git a/sc/source/filter/inc/xistyle.hxx b/sc/source/filter/inc/xistyle.hxx
index 0295546a2b8b..42011ad34bfa 100644
--- a/sc/source/filter/inc/xistyle.hxx
+++ b/sc/source/filter/inc/xistyle.hxx
@@ -210,7 +210,7 @@ private:
// FORMAT record - number formats =============================================
-/** Stores all user defined number formats occured in the file. */
+/** Stores all user defined number formats occurred in the file. */
class XclImpNumFmtBuffer : public XclNumFmtBuffer, protected XclImpRoot
{
public:
@@ -485,7 +485,7 @@ private:
// ----------------------------------------------------------------------------
-/** Contains all XF records occured in the file.
+/** Contains all XF records occurred in the file.
@descr This class is able to read XF records (BIFF2 - BIFF8) and STYLE records (BIFF8). */
class XclImpXFBuffer : protected XclImpRoot, ScfNoCopy
{
diff --git a/sc/source/filter/xml/xmlimprt.cxx b/sc/source/filter/xml/xmlimprt.cxx
index fd0150fc30c7..e460c31d682d 100644
--- a/sc/source/filter/xml/xmlimprt.cxx
+++ b/sc/source/filter/xml/xmlimprt.cxx
@@ -2054,7 +2054,7 @@ void ScXMLImport::ExamineDefaultStyle()
const SvNumberformat* pFormat = pFormatter->GetEntry(nKey);
if ( pFormat && pFormat->IsStandard() )
{
- // The standard format is all-latin if the decimal separator dosen't
+ // The standard format is all-latin if the decimal separator doesn't
// have a different script type
String aDecSep;
diff --git a/sc/source/filter/xml/xmlsubti.cxx b/sc/source/filter/xml/xmlsubti.cxx
index 2be8985bb5e9..b940a296b202 100644
--- a/sc/source/filter/xml/xmlsubti.cxx
+++ b/sc/source/filter/xml/xmlsubti.cxx
@@ -787,7 +787,7 @@ sal_Bool ScMyTables::IsPartOfMatrix(sal_Int32 nColumn, sal_Int32 nRow)
{
if (nCurrentSheet > aItr->aRange.Sheet)
{
- DBG_ERROR("should never hapen, because the list should be cleared in DeleteTable");
+ DBG_ERROR("should never happen, because the list should be cleared in DeleteTable");
aItr = aMatrixRangeList.erase(aItr);
}
else if ((nRow > aItr->aRange.EndRow) && (nColumn > aItr->aRange.EndColumn))
diff --git a/sc/source/ui/Accessibility/AccessibleCell.cxx b/sc/source/ui/Accessibility/AccessibleCell.cxx
index 084b42094892..0386581bbd2c 100644
--- a/sc/source/ui/Accessibility/AccessibleCell.cxx
+++ b/sc/source/ui/Accessibility/AccessibleCell.cxx
@@ -88,7 +88,7 @@ ScAccessibleCell::~ScAccessibleCell()
{
// increment refcount to prevent double call off dtor
osl_incrementInterlockedCount( &m_refCount );
- // call dispose to inform object wich have a weak reference to this object
+ // call dispose to inform object which have a weak reference to this object
dispose();
}
}
diff --git a/sc/source/ui/Accessibility/AccessibleContextBase.cxx b/sc/source/ui/Accessibility/AccessibleContextBase.cxx
index 433248f7814a..89041fd6c9f9 100644
--- a/sc/source/ui/Accessibility/AccessibleContextBase.cxx
+++ b/sc/source/ui/Accessibility/AccessibleContextBase.cxx
@@ -76,7 +76,7 @@ ScAccessibleContextBase::~ScAccessibleContextBase(void)
{
// increment refcount to prevent double call off dtor
osl_incrementInterlockedCount( &m_refCount );
- // call dispose to inform object wich have a weak reference to this object
+ // call dispose to inform object which have a weak reference to this object
dispose();
}
}
diff --git a/sc/source/ui/Accessibility/AccessibleDataPilotControl.cxx b/sc/source/ui/Accessibility/AccessibleDataPilotControl.cxx
index 661cece95055..a150f59c7251 100644
--- a/sc/source/ui/Accessibility/AccessibleDataPilotControl.cxx
+++ b/sc/source/ui/Accessibility/AccessibleDataPilotControl.cxx
@@ -184,7 +184,7 @@ ScAccessibleDataPilotControl::~ScAccessibleDataPilotControl(void)
{
// increment refcount to prevent double call off dtor
osl_incrementInterlockedCount( &m_refCount );
- // call dispose to inform object wich have a weak reference to this object
+ // call dispose to inform object which have a weak reference to this object
dispose();
}
}
@@ -542,7 +542,7 @@ ScAccessibleDataPilotButton::ScAccessibleDataPilotButton(
::com::sun::star::accessibility::XAccessible>& rxParent,
ScPivotFieldWindow* pFieldWindow,
sal_Int32 nIndex)
-//change role frome PUSH_BUTTON to BUTTON_MENU
+//change role from PUSH_BUTTON to BUTTON_MENU
: ScAccessibleContextBase(rxParent, AccessibleRole::BUTTON_MENU),
mpFieldWindow(pFieldWindow),
mnIndex(nIndex)
@@ -555,7 +555,7 @@ ScAccessibleDataPilotButton::~ScAccessibleDataPilotButton(void)
{
// increment refcount to prevent double call off dtor
osl_incrementInterlockedCount( &m_refCount );
- // call dispose to inform object wich have a weak reference to this object
+ // call dispose to inform object which have a weak reference to this object
dispose();
}
}
diff --git a/sc/source/ui/Accessibility/AccessibleDocument.cxx b/sc/source/ui/Accessibility/AccessibleDocument.cxx
index 121d736e82e1..79ed0aedb79b 100644
--- a/sc/source/ui/Accessibility/AccessibleDocument.cxx
+++ b/sc/source/ui/Accessibility/AccessibleDocument.cxx
@@ -961,7 +961,7 @@ sal_Bool ScChildrenShapes::FindSelectedShapesChanges(const uno::Reference<drawin
SortedShapes::const_iterator aFocusedItr = aDataEndItr;
while((aDataItr != aDataEndItr))
{
- if (*aDataItr) // is it realy a shape or only the sheet
+ if (*aDataItr) // is it really a shape or only the sheet
{
sal_Int8 nComp(0);
if (aXShapesItr == aXShapesEndItr)
diff --git a/sc/source/ui/Accessibility/AccessibleDocumentPagePreview.cxx b/sc/source/ui/Accessibility/AccessibleDocumentPagePreview.cxx
index 99bb643bb885..ac26d23d1cff 100644
--- a/sc/source/ui/Accessibility/AccessibleDocumentPagePreview.cxx
+++ b/sc/source/ui/Accessibility/AccessibleDocumentPagePreview.cxx
@@ -1444,7 +1444,7 @@ ScAccessibleDocumentPagePreview::ScAccessibleDocumentPagePreview(
if (pViewShell)
pViewShell->AddAccessibilityObject(*this);
-// GetNotesChilds(); not neccessary and reduces the creation performance
+// GetNotesChilds(); not necessary and reduces the creation performance
// GetShapeChilds();
}
@@ -1454,7 +1454,7 @@ ScAccessibleDocumentPagePreview::~ScAccessibleDocumentPagePreview(void)
{
// increment refcount to prevent double call off dtor
osl_incrementInterlockedCount( &m_refCount );
- // call dispose to inform object wich have a weak reference to this object
+ // call dispose to inform object which have a weak reference to this object
dispose();
}
}
diff --git a/sc/source/ui/Accessibility/AccessibleEditObject.cxx b/sc/source/ui/Accessibility/AccessibleEditObject.cxx
index 1f80a6709e74..58c7ff2deea3 100644
--- a/sc/source/ui/Accessibility/AccessibleEditObject.cxx
+++ b/sc/source/ui/Accessibility/AccessibleEditObject.cxx
@@ -102,7 +102,7 @@ ScAccessibleEditObject::~ScAccessibleEditObject()
{
// increment refcount to prevent double call off dtor
osl_incrementInterlockedCount( &m_refCount );
- // call dispose to inform object wich have a weak reference to this object
+ // call dispose to inform object which have a weak reference to this object
dispose();
}
}
diff --git a/sc/source/ui/Accessibility/AccessiblePreviewCell.cxx b/sc/source/ui/Accessibility/AccessiblePreviewCell.cxx
index b2583c2328a3..3c235ab53dd9 100644
--- a/sc/source/ui/Accessibility/AccessiblePreviewCell.cxx
+++ b/sc/source/ui/Accessibility/AccessiblePreviewCell.cxx
@@ -65,7 +65,7 @@ ScAccessiblePreviewCell::~ScAccessiblePreviewCell()
{
// increment refcount to prevent double call off dtor
osl_incrementInterlockedCount( &m_refCount );
- // call dispose to inform object wich have a weak reference to this object
+ // call dispose to inform object which have a weak reference to this object
dispose();
}
}
diff --git a/sc/source/ui/app/inputwin.cxx b/sc/source/ui/app/inputwin.cxx
index d5e09c5c0e2e..b0879df46047 100644
--- a/sc/source/ui/app/inputwin.cxx
+++ b/sc/source/ui/app/inputwin.cxx
@@ -1764,7 +1764,7 @@ void ScPosWnd::DoEnter()
}
else
{
- // for all selection types, excecute the SID_CURRENTCELL slot
+ // for all selection types, execute the SID_CURRENTCELL slot
SfxStringItem aPosItem( SID_CURRENTCELL, aText );
SfxBoolItem aUnmarkItem( FN_PARAM_1, sal_True ); // remove existing selection
diff --git a/sc/source/ui/app/scmod.cxx b/sc/source/ui/app/scmod.cxx
index 2510ff89235b..40e05adced8f 100644
--- a/sc/source/ui/app/scmod.cxx
+++ b/sc/source/ui/app/scmod.cxx
@@ -1861,7 +1861,7 @@ IMPL_LINK( ScModule, IdleHandler, Timer*, EMPTYARG )
bMore = bLinks || bWidth || bSpell; // ueberhaupt noch was?
- // While calculating a Basic formula, a paint event may have occured,
+ // While calculating a Basic formula, a paint event may have occurred,
// so check the bNeedsRepaint flags for this document's views
if (bWidth)
lcl_CheckNeedsRepaint( pDocSh );
diff --git a/sc/source/ui/docshell/docfunc.cxx b/sc/source/ui/docshell/docfunc.cxx
index 42fd2a8e1bb9..98544aa1c21e 100644
--- a/sc/source/ui/docshell/docfunc.cxx
+++ b/sc/source/ui/docshell/docfunc.cxx
@@ -800,7 +800,7 @@ sal_Bool ScDocFunc::PutCell( const ScAddress& rPos, ScBaseCell* pNewCell, sal_Bo
sal_Bool bUndo (pDoc->IsUndoEnabled());
sal_Bool bXMLLoading(pDoc->IsImportingXML());
- // #i925#; it is not neccessary to test whether the cell is editable on loading a XML document
+ // #i925#; it is not necessary to test whether the cell is editable on loading a XML document
if (!bXMLLoading)
{
ScEditableTester aTester( pDoc, rPos.Tab(), rPos.Col(),rPos.Row(), rPos.Col(),rPos.Row() );
@@ -839,7 +839,7 @@ sal_Bool ScDocFunc::PutCell( const ScAddress& rPos, ScBaseCell* pNewCell, sal_Bo
aModificator.SetDocumentModified();
- // #i925#; it is not neccessary to notify on loading a XML document
+ // #i925#; it is not necessary to notify on loading a XML document
// #103934#; notify editline and cell in edit mode
if (bApi && !bXMLLoading)
NotifyInputHandler( rPos );
@@ -1229,7 +1229,7 @@ sal_Bool ScDocFunc::ApplyAttributes( const ScMarkData& rMark, const ScPatternAtt
pUndoDoc, bMulti, &rPattern ) );
}
- // While loading XML it is not neccessary to ask HasAttrib. It needs too much time.
+ // While loading XML it is not necessary to ask HasAttrib. It needs too much time.
sal_uInt16 nExtFlags = 0;
if ( !bImportingXML )
rDocShell.UpdatePaintExt( nExtFlags, aMultiRange ); // content before the change
diff --git a/sc/source/ui/docshell/docsh8.cxx b/sc/source/ui/docshell/docsh8.cxx
index 7f64e543241f..e48acc24d7f4 100644
--- a/sc/source/ui/docshell/docsh8.cxx
+++ b/sc/source/ui/docshell/docsh8.cxx
@@ -612,7 +612,7 @@ void lcl_GetColumnTypes( ScDocShell& rDocShell,
if ( nPrecision && nFieldLen < nPrecision + 2 )
nFieldLen = nPrecision + 2; // 0. muss mit reinpassen
// 538 MUST: Sdb internal representation adds 2 to the field length!
- // To give the user what he wants we must substract it here.
+ // To give the user what he wants we must subtract it here.
//! CAVEAT! There is no way to define a numeric field with a length
//! of 1 and no decimals!
if ( nFieldLen == 1 && nPrecision == 0 )
diff --git a/sc/source/ui/drawfunc/fupoor.cxx b/sc/source/ui/drawfunc/fupoor.cxx
index 3c956df541a5..1a90d49e63f1 100644
--- a/sc/source/ui/drawfunc/fupoor.cxx
+++ b/sc/source/ui/drawfunc/fupoor.cxx
@@ -166,7 +166,7 @@ IMPL_LINK_INLINE_START( FuPoor, ScrollHdl, Timer *, EMPTYARG )
Point aPosPixel = pWindow->GetPointerPosPixel();
// #95491# use remembered MouseButton state to create correct
- // MouseEvents for this artifical MouseMove.
+ // MouseEvents for this artificial MouseMove.
MouseMove(MouseEvent(aPosPixel, 1, 0, GetMouseButtonCode()));
return 0;
diff --git a/sc/source/ui/miscdlgs/linkarea.cxx b/sc/source/ui/miscdlgs/linkarea.cxx
index 7623af967f1f..8a64ea1f2140 100644
--- a/sc/source/ui/miscdlgs/linkarea.cxx
+++ b/sc/source/ui/miscdlgs/linkarea.cxx
@@ -130,7 +130,7 @@ IMPL_LINK( ScLinkedAreaDlg, FileHdl, ComboBox*, EMPTYARG )
String aFilter;
String aOptions;
// get filter name by looking at the file content (bWithContent = sal_True)
- // Break operation if any error occured inside.
+ // Break operation if any error occurred inside.
if (!ScDocumentLoader::GetFilterName( aEntered, aFilter, aOptions, sal_True, sal_True ))
return 0;
diff --git a/sc/source/ui/unoobj/chart2uno.cxx b/sc/source/ui/unoobj/chart2uno.cxx
index 166529005af0..675dfe681701 100644
--- a/sc/source/ui/unoobj/chart2uno.cxx
+++ b/sc/source/ui/unoobj/chart2uno.cxx
@@ -1497,7 +1497,7 @@ ScChart2DataProvider::createDataSource(
pLabelTokens.reset(pChartMap->getLeftUpperCornerRanges());
Reference< chart2::data::XLabeledDataSequence > xCategories = lcl_createLabeledDataSequenceFromTokens(
- pValueTokens, pLabelTokens, m_pDocument, this, m_bIncludeHiddenCells ); //ownership of pointers is transfered!
+ pValueTokens, pLabelTokens, m_pDocument, this, m_bIncludeHiddenCells ); //ownership of pointers is transferred!
if ( xCategories.is() )
{
aSeqs.push_back( xCategories );
@@ -1521,7 +1521,7 @@ ScChart2DataProvider::createDataSource(
pLabelTokens.reset(pChartMap->getRowHeaderRanges(static_cast<SCROW>(i)));
}
Reference< chart2::data::XLabeledDataSequence > xChartSeries = lcl_createLabeledDataSequenceFromTokens(
- pValueTokens, pLabelTokens, m_pDocument, this, m_bIncludeHiddenCells ); //ownership of pointers is transfered!
+ pValueTokens, pLabelTokens, m_pDocument, this, m_bIncludeHiddenCells ); //ownership of pointers is transferred!
if ( xChartSeries.is() )
{
aSeqs.push_back( xChartSeries );
diff --git a/sc/source/ui/unoobj/dapiuno.cxx b/sc/source/ui/unoobj/dapiuno.cxx
index a06b1e43f42d..0b6eb60b8e35 100644
--- a/sc/source/ui/unoobj/dapiuno.cxx
+++ b/sc/source/ui/unoobj/dapiuno.cxx
@@ -2114,7 +2114,7 @@ void ScDataPilotFieldObj::setOrientation(DataPilotFieldOrientation eNew)
if ( pOneDim->GetOrientation() == DataPilotFieldOrientation_HIDDEN )
pNewDim = pOneDim; // use this one
else
- ++nFound; // count existing non-hidden occurences
+ ++nFound; // count existing non-hidden occurrences
}
}
@@ -2969,7 +2969,7 @@ void SAL_CALL ScDataPilotFieldGroupsObj::insertByName( const OUString& rName, co
if( !lclExtractGroupMembers( aMembers, rElement ) )
throw IllegalArgumentException();
- // create the new entry if no error has been occured
+ // create the new entry if no error has been occurred
maGroups.resize( maGroups.size() + 1 );
ScFieldGroup& rGroup = maGroups.back();
rGroup.maName = rName;
diff --git a/sc/source/ui/unoobj/dispuno.cxx b/sc/source/ui/unoobj/dispuno.cxx
index 792a7191cb26..293d03d7a53a 100644
--- a/sc/source/ui/unoobj/dispuno.cxx
+++ b/sc/source/ui/unoobj/dispuno.cxx
@@ -83,7 +83,7 @@ ScDispatchProviderInterceptor::ScDispatchProviderInterceptor(ScTabViewShell* pVi
m_xIntercepted->registerDispatchProviderInterceptor(
static_cast<frame::XDispatchProviderInterceptor*>(this));
// this should make us the top-level dispatch-provider for the component, via a call to our
- // setDispatchProvider we should have got an fallback for requests we (i.e. our master) cannot fullfill
+ // setDispatchProvider we should have got an fallback for requests we (i.e. our master) cannot fulfill
uno::Reference<lang::XComponent> xInterceptedComponent(m_xIntercepted, uno::UNO_QUERY);
if (xInterceptedComponent.is())
xInterceptedComponent->addEventListener(static_cast<lang::XEventListener*>(this));
diff --git a/sc/source/ui/unoobj/docuno.cxx b/sc/source/ui/unoobj/docuno.cxx
index 1f2901a8379f..e2f097d9cd0f 100644
--- a/sc/source/ui/unoobj/docuno.cxx
+++ b/sc/source/ui/unoobj/docuno.cxx
@@ -1937,7 +1937,7 @@ uno::Any SAL_CALL ScModelObj::getPropertyValue( const rtl::OUString& aPropertyNa
{
/* #i111553# This property provides the name of the constant that
will be used to store this model in the global Basic manager.
- That constant will be equivelant to 'ThisComponent' but for
+ That constant will be equivalent to 'ThisComponent' but for
each application, so e.g. a 'ThisExcelDoc' and a 'ThisWordDoc'
constant can co-exist, as required by VBA. */
aRet <<= rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "ThisExcelDoc" ) );
@@ -2023,7 +2023,7 @@ uno::Reference<uno::XInterface> SAL_CALL ScModelObj::createInstance(
! ( nType == SC_SERVICE_CHDATAPROV &&
( pDocShell->GetCreateMode() == SFX_CREATE_MODE_INTERNAL ));
// this should never happen, i.e. the temporary document should never be
- // loaded, becuase this unlinks the data
+ // loaded, because this unlinks the data
OSL_ASSERT( bCreate );
if ( !xRet.is() && bCreate )
diff --git a/sc/source/ui/unoobj/nameuno.cxx b/sc/source/ui/unoobj/nameuno.cxx
index 70234c9b6670..4e660c809a46 100644
--- a/sc/source/ui/unoobj/nameuno.cxx
+++ b/sc/source/ui/unoobj/nameuno.cxx
@@ -240,7 +240,7 @@ void SAL_CALL ScNamedRangeObj::setName( const rtl::OUString& aNewName )
// GRAM_PODF_A1 for API compatibility.
Modify_Impl( &aNewStr, NULL, NULL, NULL, NULL,formula::FormulaGrammar::GRAM_PODF_A1 );
- if ( aName != aNewStr ) // some error occured...
+ if ( aName != aNewStr ) // some error occurred...
throw uno::RuntimeException(); // no other exceptions specified
}
rtl::OUString SAL_CALL ScNamedRangeObj::getScopeName() throw(uno::RuntimeException)
@@ -260,7 +260,7 @@ void SAL_CALL ScNamedRangeObj::setScopeAndRangeName( const rtl::OUString& aNewSc
// GRAM_PODF_A1 for API compatibility.
Modify_Impl( &aNewRangeStr, NULL, NULL, NULL, NULL,formula::FormulaGrammar::GRAM_PODF_A1, aNewScopeName.getLength() == 0 ? NULL : &aNewScopeStr);
- if ( aScopeName != aNewScopeStr || aName != aNewRangeStr ) // some error occured...
+ if ( aScopeName != aNewScopeStr || aName != aNewRangeStr ) // some error occurred...
throw uno::RuntimeException(); // no other exceptions specified
}
diff --git a/sc/source/ui/vba/vbacharacters.hxx b/sc/source/ui/vba/vbacharacters.hxx
index 8a11398c7721..1a4c4d5c3cef 100644
--- a/sc/source/ui/vba/vbacharacters.hxx
+++ b/sc/source/ui/vba/vbacharacters.hxx
@@ -41,7 +41,7 @@ private:
ScVbaPalette m_aPalette;
sal_Int16 nLength;
sal_Int16 nStart;
- // Add becuase of MSO has diferent behavior.
+ // Add because of MSO has different behavior.
sal_Bool bReplace;
public:
ScVbaCharacters( const css::uno::Reference< ov::XHelperInterface >& xParent, const css::uno::Reference< css::uno::XComponentContext >& xContext, const ScVbaPalette& dPalette, const css::uno::Reference< css::text::XSimpleText >& xRange, const css::uno::Any& Start, const css::uno::Any& Length, sal_Bool bReplace = sal_False ) throw ( css::lang::IllegalArgumentException );
diff --git a/sc/source/ui/vba/vbachartobject.cxx b/sc/source/ui/vba/vbachartobject.cxx
index 658e147f2209..642e64d04fd1 100644
--- a/sc/source/ui/vba/vbachartobject.cxx
+++ b/sc/source/ui/vba/vbachartobject.cxx
@@ -113,7 +113,7 @@ ScVbaChartObject::Activate() throw ( script::BasicErrorException )
{
try
{
- // #TODO #FIXME should be ThisWorkbook or equivelant, or in
+ // #TODO #FIXME should be ThisWorkbook or equivalent, or in
// fact probably the chart object should be created with
// the XModel owner
//uno::Reference< view::XSelectionSupplier > xSelectionSupplier( getXModel().getCurrentController());
diff --git a/sc/source/ui/vba/vbaformatconditions.cxx b/sc/source/ui/vba/vbaformatconditions.cxx
index 6f72f23c8b65..eb72369e2782 100644
--- a/sc/source/ui/vba/vbaformatconditions.cxx
+++ b/sc/source/ui/vba/vbaformatconditions.cxx
@@ -136,7 +136,7 @@ ScVbaFormatConditions::Add( ::sal_Int32 _nType, const uno::Any& _aOperator, cons
// #TODO
// #FIXME
// This method will NOT handle r1c1 formulas [*]and only assumes that
- // the formulas are _xlA1 based ( need to hook into calc work ths should
+ // the formulas are _xlA1 based ( need to hook into calc work this should
// address this )
// [*] reason: getA1Formula method below is just a hook and just
// returns whats it gets ( e.g. doesn't convert anything )
diff --git a/sc/source/ui/vba/vbarange.cxx b/sc/source/ui/vba/vbarange.cxx
index 7d8c7a773bcf..32dc27934f41 100644
--- a/sc/source/ui/vba/vbarange.cxx
+++ b/sc/source/ui/vba/vbarange.cxx
@@ -618,7 +618,7 @@ typedef ::std::vector< CellPos > vCellPos;
// #FIXME - QUICK
// we could probably could and should modify CellsEnumeration below
-// to handle rows and columns ( but I do this seperately for now
+// to handle rows and columns ( but I do this separately for now
// and.. this class only handles singe areas ( does it have to handle
// multi area ranges?? )
class ColumnsRowEnumeration: public CellsEnumeration_BASE
@@ -1174,7 +1174,7 @@ bool getScRangeListForAddress( const rtl::OUString& sName, ScDocShell* pDocSh, S
uno::Reference< beans::XPropertySet > xProps( pDocSh->GetModel(), uno::UNO_QUERY_THROW );
uno::Reference< container::XNameAccess > xNameAccess( xProps->getPropertyValue( rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("NamedRanges") ) ), uno::UNO_QUERY_THROW );
// Strangly enough you can have Range( "namedRange1, namedRange2, etc," )
- // loop around each ',' seperated name
+ // loop around each ',' separated name
std::vector< rtl::OUString > vNames;
sal_Int32 nIndex = 0;
do
@@ -2151,7 +2151,7 @@ ScVbaRange::CellsHelper( const uno::Reference< ov::XHelperInterface >& xParent,
// Sometimes we might get a float or a double or whatever
// set in the Any, we should convert as appropriate
// #FIXME - perhaps worth turning this into some sort of
- // convertion routine e.g. bSuccess = getValueFromAny( nRow, nRowIndex, getCppuType((sal_Int32*)0) )
+ // conversion routine e.g. bSuccess = getValueFromAny( nRow, nRowIndex, getCppuType((sal_Int32*)0) )
if ( nRowIndex.hasValue() && !( nRowIndex >>= nRow ) )
{
uno::Reference< script::XTypeConverter > xConverter = getTypeConverter( xContext );
@@ -4132,7 +4132,7 @@ ScVbaRange::getWorksheet() throw (uno::RuntimeException)
uno::Reference< excel::XRange >
ScVbaRange::ApplicationRange( const uno::Reference< uno::XComponentContext >& xContext, const css::uno::Any &Cell1, const css::uno::Any &Cell2 ) throw (css::uno::RuntimeException)
{
- // Althought the documentation seems clear that Range without a
+ // Although the documentation seems clear that Range without a
// qualifier then its a shortcut for ActiveSheet.Range
// however, similarly Application.Range is apparently also a
// shortcut for ActiveSheet.Range
diff --git a/sc/source/ui/vba/vbarange.hxx b/sc/source/ui/vba/vbarange.hxx
index c8e382253e9b..bf2aaa5b5a7c 100644
--- a/sc/source/ui/vba/vbarange.hxx
+++ b/sc/source/ui/vba/vbarange.hxx
@@ -293,7 +293,7 @@ public:
// #TODO completely rewrite ScVbaRange, its become a hackfest
// it needs to be closer to ScCellRangeBase in that the underlying
// object model should probably be a ScRangelst.
-// * would be nice to be able to construct a range from an addres only
+// * would be nice to be able to construct a range from an address only
// * or a list of address ( multi-area )
// * object should be a lightweight as possible
// * we shouldn't need hacks like this below
diff --git a/sc/source/ui/vba/vbawindow.cxx b/sc/source/ui/vba/vbawindow.cxx
index 117add5bb7bf..516ecbba6a9e 100644
--- a/sc/source/ui/vba/vbawindow.cxx
+++ b/sc/source/ui/vba/vbawindow.cxx
@@ -338,7 +338,7 @@ ScVbaWindow::getCaption() throw (uno::RuntimeException)
static rtl::OUString sDot( RTL_CONSTASCII_USTRINGPARAM(".") );
// starts with title
if ( sName.indexOf( sTitle ) == 0 )
- // extention starts immediately after
+ // extension starts immediately after
if ( sName.match( sDot, sTitle.getLength() ) )
sTitle = sName;
}
diff --git a/sc/source/ui/vba/vbaworksheet.cxx b/sc/source/ui/vba/vbaworksheet.cxx
index 75abe75e1b3d..9524b7901919 100644
--- a/sc/source/ui/vba/vbaworksheet.cxx
+++ b/sc/source/ui/vba/vbaworksheet.cxx
@@ -600,7 +600,7 @@ ScVbaWorksheet::getPrevious() throw (uno::RuntimeException)
void
ScVbaWorksheet::Protect( const uno::Any& Password, const uno::Any& /*DrawingObjects*/, const uno::Any& /*Contents*/, const uno::Any& /*Scenarios*/, const uno::Any& /*UserInterfaceOnly*/ ) throw (uno::RuntimeException)
{
- // #TODO# #FIXME# is there anything we can do witht the unused param
+ // #TODO# #FIXME# is there anything we can do with the unused param
// can the implementation use anything else here
uno::Reference<util::XProtectable > xProtectable(getSheet(), uno::UNO_QUERY_THROW);
::rtl::OUString aPasswd;
diff --git a/sc/source/ui/view/drawview.cxx b/sc/source/ui/view/drawview.cxx
index 31a237404c5a..ed92f9cdecdf 100644
--- a/sc/source/ui/view/drawview.cxx
+++ b/sc/source/ui/view/drawview.cxx
@@ -1013,7 +1013,7 @@ SdrObject* ScDrawView::ApplyGraphicToObject(
return &rHitObject;
}
- return false;
+ return NULL;
}
// eof
diff --git a/scaddins/source/analysis/analysis.src b/scaddins/source/analysis/analysis.src
index 1ab7c49b001e..79dc97a07dec 100644
--- a/scaddins/source/analysis/analysis.src
+++ b/scaddins/source/analysis/analysis.src
@@ -981,7 +981,7 @@ Resource RID_ANALYSIS_FUNCTION_DESCRIPTIONS
String 5 // description of parameter 2 GeStep
{
- Text [ en-US ] = "The threshhold value";
+ Text [ en-US ] = "The threshold value";
};
};
diff --git a/scaddins/source/analysis/analysishelper.cxx b/scaddins/source/analysis/analysishelper.cxx
index 6928e033f8bb..a380f614025f 100644
--- a/scaddins/source/analysis/analysishelper.cxx
+++ b/scaddins/source/analysis/analysishelper.cxx
@@ -2650,7 +2650,7 @@ ConvertDataList::ConvertDataList( void )
NEWDP( "T", 1.0000000000000000E00, CDC_Magnetism ); // Tesla
NEWDP( "ga", 1.0000000000000000E04, CDC_Magnetism ); // Gauss
- // TEMERATURE: 1 Kelvin is...
+ // TEMPERATURE: 1 Kelvin is...
NEWL( "C", 1.0000000000000000E00, -2.7315000000000000E02, CDC_Temperature ); // Celsius
NEWL( "cel", 1.0000000000000000E00, -2.7315000000000000E02, CDC_Temperature ); // Celsius also
NEWL( "F", 1.8000000000000000E00, -2.5537222222222222E02, CDC_Temperature ); // Fahrenheit
@@ -2660,7 +2660,7 @@ ConvertDataList::ConvertDataList( void )
NEWL( "Reau", 8.0000000000000000E-01, -2.7315000000000000E02, CDC_Temperature ); // *** Reaumur
NEWL( "Rank", 1.8000000000000000E00, +0.0000000000000000E00, CDC_Temperature ); // *** Rankine
- // VOLUMNE: 1 Liter is...
+ // VOLUME: 1 Liter is...
NEWD( "tsp", 2.0284000000000000E02, CDC_Volume ); // Teaspoon
NEWD( "tbs", 6.7613333333333333E01, CDC_Volume ); // Tablespoon
NEWD( "oz", 3.3806666666666667E01, CDC_Volume ); // Ounce Liquid
diff --git a/scaddins/source/analysis/analysishelper.hxx b/scaddins/source/analysis/analysishelper.hxx
index bc387514a392..655670ad45dd 100644
--- a/scaddins/source/analysis/analysishelper.hxx
+++ b/scaddins/source/analysis/analysishelper.hxx
@@ -230,7 +230,7 @@ private:
::rtl::OUString aIntName;
sal_uInt16 nUINameID;
sal_uInt16 nDescrID; // leads also to parameter descriptions!
- sal_Bool bDouble; // flag for names, wich already exist in Calc
+ sal_Bool bDouble; // flag for names, which already exists in Calc
sal_Bool bWithOpt; // has internal parameter on first position
sal_uInt16 nParam; // num of parameters
diff --git a/scaddins/source/datefunc/datefunc.cxx b/scaddins/source/datefunc/datefunc.cxx
index 80961bac1b0d..dbdd693d1c6b 100644
--- a/scaddins/source/datefunc/datefunc.cxx
+++ b/scaddins/source/datefunc/datefunc.cxx
@@ -707,14 +707,14 @@ sal_Int32 GetNullDate( const uno::Reference< beans::XPropertySet >& xOptions )
* The International Standard IS-8601 has decreed that Monday
* shall be the first day of the week.
*
- * A week that lies partly in one year and partly in annother
+ * A week that lies partly in one year and partly in another
* is assigned a number in the the year in which most of its days lie.
*
* That means that week 1 of any year is the week that contains the 4. January
*
* The internal representation of a Date used in the Addin is the number of days based on 01/01/0001
*
- * A WeekDay can be then calculated by substracting 1 and calculating the rest of
+ * A WeekDay can be then calculated by subtracting 1 and calculating the rest of
* a division by 7, which gives a 0 - 6 value for Monday - Sunday
*
* Using the 4. January rule explained above the formula
@@ -724,7 +724,7 @@ sal_Int32 GetNullDate( const uno::Reference< beans::XPropertySet >& xOptions )
* calculates a number between 0-53 for each day which is in the same year as nJan4
* where 0 means that this week belonged to the year before.
*
- * If a day in the same or annother year is used in this formula this calculates
+ * If a day in the same or another year is used in this formula this calculates
* an calendar week offset from a given 4. January
*
* nWeek2 = ( nDays2 - nJan4 + ( (nJan4-1) % 7 ) ) / 7 + 1;
@@ -911,7 +911,7 @@ sal_Int32 SAL_CALL ScaDateAddIn::getDaysInYear(
* The International Standard IS-8601 has decreed that Monday
* shall be the first day of the week.
*
- * A WeekDay can be calculated by substracting 1 and calculating the rest of
+ * A WeekDay can be calculated by subtracting 1 and calculating the rest of
* a division by 7 from the internal date represention
* which gives a 0 - 6 value for Monday - Sunday
*
diff --git a/scp2/source/ooo/file_library_ooo.scp b/scp2/source/ooo/file_library_ooo.scp
index a5c38f304d52..a80f7670348f 100644
--- a/scp2/source/ooo/file_library_ooo.scp
+++ b/scp2/source/ooo/file_library_ooo.scp
@@ -553,6 +553,15 @@ End
#endif
+#if !defined WNT && !defined OS2
+File gid_File_Lib_Mozbootstrap
+ TXT_FILE_BODY;
+ Styles = (PACKED);
+ Dir = SCP2_OOO_BIN_DIR;
+ Name = SPECIAL_COMPONENT_LIB_NAME(mozbootstrap.uno);
+ End
+#endif
+
#if defined UNX && ! defined MACOSX
File gid_File_Lib_Desktopbe
@@ -600,14 +609,20 @@ File gid_File_Lib_MacOSXSpell
Dir = SCP2_OOO_BIN_DIR;
End
-#if (MACOSX_DEPLOYMENT_TARGET_NUM < 106)
File gid_File_Lib_avmediaQuickTime
TXT_FILE_BODY;
Styles = (PACKED);
Name = LIBNAME(avmediaQuickTime);
Dir = SCP2_OOO_BIN_DIR;
End
-#endif // MACOSX_DEPLOYMENT_TARGET_NUM
+
+File gid_File_Lib_avmediaMacAVF
+ TXT_FILE_BODY;
+ Styles = (PACKED);
+ Name = LIBNAME(avmediaMacAVF);
+ Dir = SCP2_OOO_BIN_DIR;
+End
+
#endif // MACOSX
#ifdef OS2
diff --git a/scp2/source/ooo/module_hidden_ooo.scp b/scp2/source/ooo/module_hidden_ooo.scp
index a296f32f4dea..04834465e14a 100644
--- a/scp2/source/ooo/module_hidden_ooo.scp
+++ b/scp2/source/ooo/module_hidden_ooo.scp
@@ -373,6 +373,9 @@ Module gid_Module_Root_Files_5
gid_File_Lib_XSec_XMLSecurity,
gid_File_Lib_XSec_Framework,
gid_File_Lib_XSec_XmlSec,
+#if !defined WNT && ! defined OS2
+ gid_File_Lib_Mozbootstrap,
+#endif
gid_File_Lib_Xstor,
gid_File_CanvasFactory,
gid_File_SimpleCanvas,
diff --git a/scripting/examples/python/Capitalise.py b/scripting/examples/python/Capitalise.py
index 67facb2bc136..2e5a34b1e431 100644
--- a/scripting/examples/python/Capitalise.py
+++ b/scripting/examples/python/Capitalise.py
@@ -77,6 +77,6 @@ def capitalisePython( ):
i+= 1
-# lists the scripts, that shall be visible inside OOo. Can be omited, if
-# all functions shall be visible, however here getNewString shall be surpressed
+# lists the scripts, that shall be visible inside OOo. Can be omitted, if
+# all functions shall be visible, however here getNewString shall be suppressed
g_exportedScripts = capitalisePython,
diff --git a/scripting/java/com/sun/star/script/framework/browse/ParcelBrowseNode.java b/scripting/java/com/sun/star/script/framework/browse/ParcelBrowseNode.java
index 4b3488224804..f973c451fc31 100644
--- a/scripting/java/com/sun/star/script/framework/browse/ParcelBrowseNode.java
+++ b/scripting/java/com/sun/star/script/framework/browse/ParcelBrowseNode.java
@@ -191,7 +191,7 @@ public class ParcelBrowseNode extends PropertySet
com.sun.star.reflection.InvocationTargetException
{
LogUtils.DEBUG("ParcelBrowseNode invoke for " + aFunctionName );
- // Initialise the out paramters - not used but prevents error in
+ // Initialise the out parameters - not used but prevents error in
// UNO bridge
aOutParamIndex[0] = new short[0];
aOutParam[0] = new Object[0];
diff --git a/scripting/java/com/sun/star/script/framework/browse/ProviderBrowseNode.java b/scripting/java/com/sun/star/script/framework/browse/ProviderBrowseNode.java
index a7394640ad80..fc8e39d4dd5d 100644
--- a/scripting/java/com/sun/star/script/framework/browse/ProviderBrowseNode.java
+++ b/scripting/java/com/sun/star/script/framework/browse/ProviderBrowseNode.java
@@ -179,7 +179,7 @@ public class ProviderBrowseNode extends PropertySet
com.sun.star.script.CannotConvertException,
com.sun.star.reflection.InvocationTargetException
{
- // Initialise the out paramters - not used but prevents error in
+ // Initialise the out parameters - not used but prevents error in
// UNO bridge
aOutParamIndex[0] = new short[0];
aOutParam[0] = new Object[0];
diff --git a/scripting/java/com/sun/star/script/framework/browse/ScriptBrowseNode.java b/scripting/java/com/sun/star/script/framework/browse/ScriptBrowseNode.java
index c8f7704f681a..26f490ff44a2 100644
--- a/scripting/java/com/sun/star/script/framework/browse/ScriptBrowseNode.java
+++ b/scripting/java/com/sun/star/script/framework/browse/ScriptBrowseNode.java
@@ -173,7 +173,7 @@ public class ScriptBrowseNode extends PropertySet
com.sun.star.script.CannotConvertException,
com.sun.star.reflection.InvocationTargetException
{
- // Initialise the out paramters - not used but prevents error in
+ // Initialise the out parameters - not used but prevents error in
// UNO bridge
aOutParamIndex[0] = new short[0];
aOutParam[0] = new Object[0];
diff --git a/scripting/java/com/sun/star/script/framework/container/UnoPkgContainer.java b/scripting/java/com/sun/star/script/framework/container/UnoPkgContainer.java
index fb0be61ae461..4fd275a3a2b1 100644
--- a/scripting/java/com/sun/star/script/framework/container/UnoPkgContainer.java
+++ b/scripting/java/com/sun/star/script/framework/container/UnoPkgContainer.java
@@ -289,7 +289,7 @@ public class UnoPkgContainer extends ParcelContainer
}
else
{
- LogUtils.DEBUG("In writeUnoPackageDB() CANT Truncate...." );
+ LogUtils.DEBUG("In writeUnoPackageDB() CAN'T Truncate...." );
}
os = new XOutputStreamWrapper( xos );
dp.write( os );
diff --git a/scripting/java/com/sun/star/script/framework/provider/ScriptProvider.java b/scripting/java/com/sun/star/script/framework/provider/ScriptProvider.java
index f8e3912f83b3..8a410b94ce67 100644
--- a/scripting/java/com/sun/star/script/framework/provider/ScriptProvider.java
+++ b/scripting/java/com/sun/star/script/framework/provider/ScriptProvider.java
@@ -352,7 +352,7 @@ public abstract class ScriptProvider
// TODO need to encapsulate this better,
// Some factory concept for creating/accessing Editor
- // How this is passed down or how it is accessable by BrowseNode
+ // How this is passed down or how it is accessible by BrowseNode
// implementations needs thinking about
// This method is used to determine whether the ScriptProvider
// has a ScriptEditor
diff --git a/scripting/java/com/sun/star/script/framework/provider/beanshell/ScriptEditorForBeanShell.java b/scripting/java/com/sun/star/script/framework/provider/beanshell/ScriptEditorForBeanShell.java
index 4dee4d21f281..5daeb671f643 100644
--- a/scripting/java/com/sun/star/script/framework/provider/beanshell/ScriptEditorForBeanShell.java
+++ b/scripting/java/com/sun/star/script/framework/provider/beanshell/ScriptEditorForBeanShell.java
@@ -169,7 +169,7 @@ public class ScriptEditorForBeanShell
/**
- * Indicates the line where error occured
+ * Indicates the line where error occurred
*
*/
public void indicateErrorLine( int lineNum )
diff --git a/scripting/java/com/sun/star/script/framework/provider/beanshell/ScriptProviderForBeanShell.java b/scripting/java/com/sun/star/script/framework/provider/beanshell/ScriptProviderForBeanShell.java
index de597ae7d10f..08900111bea8 100644
--- a/scripting/java/com/sun/star/script/framework/provider/beanshell/ScriptProviderForBeanShell.java
+++ b/scripting/java/com/sun/star/script/framework/provider/beanshell/ScriptProviderForBeanShell.java
@@ -184,7 +184,7 @@ class ScriptImpl implements XScript
throws ScriptFrameworkErrorException,
InvocationTargetException
{
- // Initialise the out paramters - not used at the moment
+ // Initialise the out parameters - not used at the moment
aOutParamIndex[0] = new short[0];
aOutParam[0] = new Object[0];
diff --git a/scripting/java/com/sun/star/script/framework/provider/java/ScriptProviderForJava.java b/scripting/java/com/sun/star/script/framework/provider/java/ScriptProviderForJava.java
index bad84288a759..94b47c1e1ebc 100644
--- a/scripting/java/com/sun/star/script/framework/provider/java/ScriptProviderForJava.java
+++ b/scripting/java/com/sun/star/script/framework/provider/java/ScriptProviderForJava.java
@@ -186,7 +186,7 @@ class ScriptImpl implements XScript
{
LogUtils.DEBUG( "** ScriptProviderForJava::invoke: Starting..." );
- // Initialise the out paramters - not used at the moment
+ // Initialise the out parameters - not used at the moment
aOutParamIndex[0] = new short[0];
aOutParam[0] = new Object[0];
diff --git a/scripting/java/com/sun/star/script/framework/provider/java/StrictResolver.java b/scripting/java/com/sun/star/script/framework/provider/java/StrictResolver.java
index 4e8104b88590..b31f73ce059f 100644
--- a/scripting/java/com/sun/star/script/framework/provider/java/StrictResolver.java
+++ b/scripting/java/com/sun/star/script/framework/provider/java/StrictResolver.java
@@ -70,12 +70,12 @@ public class StrictResolver implements Resolver
}
catch ( ClassNotFoundException e )
{
- throw new NoSuchMethodException( "StrictResolver.getProxy: Cant find method: "
+ throw new NoSuchMethodException( "StrictResolver.getProxy: Can't find method: "
+ sd.getMethodName() + ":" + e.getMessage() );
}
catch ( NoSuchMethodException e )
{
- throw new NoSuchMethodException( "StrictResolver.getProxy: Cant find method: "
+ throw new NoSuchMethodException( "StrictResolver.getProxy: Can't find method: "
+ sd.getMethodName() + ":" + e.getMessage() );
}
@@ -91,12 +91,12 @@ public class StrictResolver implements Resolver
}
catch ( InstantiationException ie )
{
- throw new NoSuchMethodException( "getScriptProxy: Cant instantiate: " +
+ throw new NoSuchMethodException( "getScriptProxy: Can't instantiate: " +
c.getName() );
}
catch ( IllegalAccessException iae )
{
- throw new NoSuchMethodException( "getScriptProxy: Cant access: "
+ throw new NoSuchMethodException( "getScriptProxy: Can't access: "
+ c.getName() );
}
sp.setTargetObject( o );
diff --git a/scripting/java/com/sun/star/script/framework/provider/javascript/ScriptEditorForJavaScript.java b/scripting/java/com/sun/star/script/framework/provider/javascript/ScriptEditorForJavaScript.java
index 0bbdbc89acc5..aba030a08adf 100644
--- a/scripting/java/com/sun/star/script/framework/provider/javascript/ScriptEditorForJavaScript.java
+++ b/scripting/java/com/sun/star/script/framework/provider/javascript/ScriptEditorForJavaScript.java
@@ -240,7 +240,7 @@ public class ScriptEditorForJavaScript implements ScriptEditor
}
/**
- * Indicates the line where error occured
+ * Indicates the line where error occurred
*
*/
public void indicateErrorLine( int lineNum )
diff --git a/scripting/java/com/sun/star/script/framework/provider/javascript/ScriptProviderForJavaScript.java b/scripting/java/com/sun/star/script/framework/provider/javascript/ScriptProviderForJavaScript.java
index 1027c9e085dd..4e3320425820 100644
--- a/scripting/java/com/sun/star/script/framework/provider/javascript/ScriptProviderForJavaScript.java
+++ b/scripting/java/com/sun/star/script/framework/provider/javascript/ScriptProviderForJavaScript.java
@@ -182,7 +182,7 @@ class ScriptImpl implements XScript
throws ScriptFrameworkErrorException, InvocationTargetException
{
- // Initialise the out paramters - not used at the moment
+ // Initialise the out parameters - not used at the moment
aOutParamIndex[0] = new short[0];
aOutParam[0] = new Object[0];
diff --git a/scripting/java/org/openoffice/netbeans/modules/office/filesystem/OpenOfficeDocFileSystem.java b/scripting/java/org/openoffice/netbeans/modules/office/filesystem/OpenOfficeDocFileSystem.java
index 4b0f121cd3c2..ba398030764e 100644
--- a/scripting/java/org/openoffice/netbeans/modules/office/filesystem/OpenOfficeDocFileSystem.java
+++ b/scripting/java/org/openoffice/netbeans/modules/office/filesystem/OpenOfficeDocFileSystem.java
@@ -234,7 +234,7 @@ System.out.println(" exception: " + ioe.getMessage());
*/
public void prepareEnvironment(FileSystem.Environment environment)
{
- // BUG: the compiller cannot access files withing the OpenOffice document.
+ // BUG: the compiller cannot access files within the OpenOffice document.
//environment.addClassPath(docFile.toString());
}
diff --git a/scripting/source/protocolhandler/scripthandler.cxx b/scripting/source/protocolhandler/scripthandler.cxx
index bd3542e3ff88..12ee3267453e 100644
--- a/scripting/source/protocolhandler/scripthandler.cxx
+++ b/scripting/source/protocolhandler/scripthandler.cxx
@@ -170,10 +170,31 @@ void SAL_CALL ScriptProtocolHandler::dispatchWithNotification(
OSL_ENSURE( xDocumentScripts.is(), "ScriptProtocolHandler::dispatchWithNotification: can't do the security check!" );
if ( !xDocumentScripts.is() || !xDocumentScripts->getAllowMacroExecution() )
+ {
+ if ( xListener.is() )
+ {
+ ::com::sun::star::frame::DispatchResultEvent aEvent(
+ static_cast< ::cppu::OWeakObject* >( this ),
+ ::com::sun::star::frame::DispatchResultState::FAILURE,
+ invokeResult );
+ try
+ {
+ xListener->dispatchFinished( aEvent ) ;
+ }
+ catch(RuntimeException & e)
+ {
+ OSL_TRACE(
+ "ScriptProtocolHandler::dispatchWithNotification: caught RuntimeException"
+ "while dispatchFinished with failture of the execution %s",
+ ::rtl::OUStringToOString( e.Message,
+ RTL_TEXTENCODING_ASCII_US ).pData->buffer );
+ }
+ }
return;
+ }
}
- // Creates a ScriptProvider ( if one is not created allready )
+ // Creates a ScriptProvider ( if one is not created already )
createScriptProvider();
Reference< provider::XScript > xFunc =
@@ -345,6 +366,25 @@ ScriptProtocolHandler::getScriptInvocation()
if ( !m_xScriptInvocation.set( xController->getModel(), UNO_QUERY ) )
m_xScriptInvocation.set( xController, UNO_QUERY );
}
+ else
+ {
+ Reference< XFrame > xFrame( m_xFrame.get(), UNO_QUERY );
+ if ( xFrame.is() )
+ {
+ SfxFrame* pFrame = NULL;
+ for ( pFrame = SfxFrame::GetFirst(); pFrame; pFrame = SfxFrame::GetNext( *pFrame ) )
+ {
+ if ( pFrame->GetFrameInterface() == xFrame )
+ break;
+ }
+ SfxObjectShell* pDocShell = pFrame ? pFrame->GetCurrentDocument() : SfxObjectShell::Current();
+ if ( pDocShell )
+ {
+ Reference< XModel > xModel( pDocShell->GetModel() );
+ m_xScriptInvocation.set( xModel, UNO_QUERY );
+ }
+ }
+ }
}
return m_xScriptInvocation.is();
}
diff --git a/scripting/source/pyprov/officehelper.py b/scripting/source/pyprov/officehelper.py
index 0e915a6b792b..6151dab1882d 100644
--- a/scripting/source/pyprov/officehelper.py
+++ b/scripting/source/pyprov/officehelper.py
@@ -56,7 +56,7 @@ def bootstrap():
random.seed()
sPipeName = "uno" + str(random.random())[2:]
- # Start the office proces, don't check for exit status since an exception is caught anyway if the office terminates unexpectedly.
+ # Start the office process, don't check for exit status since an exception is caught anyway if the office terminates unexpectedly.
cmdArray = (sOffice, "-nologo", "-nodefault", "".join(["-accept=pipe,name=", sPipeName, ";urp;"]))
os.spawnv(os.P_NOWAIT, sOffice, cmdArray)
diff --git a/scripting/workben/bindings/ScriptBinding.xba b/scripting/workben/bindings/ScriptBinding.xba
index ba6d4ebdf0b2..50e60f9e19cb 100644
--- a/scripting/workben/bindings/ScriptBinding.xba
+++ b/scripting/workben/bindings/ScriptBinding.xba
@@ -972,7 +972,7 @@ sub AddNewKeyBinding( scriptName as string, shift as boolean, control as boolean
&apos; Calculate from the key the offset into key group array we need to point to
KeyGroupIndex = getKeyGroupIndex( key, keyTypeOffset )
- &apos; if key is allready allocated to a script then just reallocate
+ &apos; if key is already allocated to a script then just reallocate
if ( keyAllocationMap( offsetIntoArrayOfArrays, KeyGroupIndex ).Value &gt; 1 ) then
keyAllocationMap( offsetIntoArrayOfArrays, KeyGroupIndex ).Name = scriptName
@@ -1676,7 +1676,7 @@ sub LangLocComboListener()
end if
endif
- &apos; extra dialog dependant processing
+ &apos; extra dialog dependent processing
if dialogName = &quot;Menu&quot; then
&apos; will set New button to false if no text in LableBox
MenuLabelBoxListener()
diff --git a/scripting/workben/ifc/scripting/SecurityDialogUtil.java b/scripting/workben/ifc/scripting/SecurityDialogUtil.java
index 7be7bb9f0677..ff0f002ce72d 100644
--- a/scripting/workben/ifc/scripting/SecurityDialogUtil.java
+++ b/scripting/workben/ifc/scripting/SecurityDialogUtil.java
@@ -60,7 +60,7 @@ public SecurityDialogUtil(XMultiServiceFactory xMSF, String btnName, boolean che
}
/**
- * Returns the error message that occured while
+ * Returns the error message that occurred while
* accessing and pressing the button.
* @return Error message.
*/
diff --git a/sd/inc/Outliner.hxx b/sd/inc/Outliner.hxx
index 47669c867e83..7263065745a4 100644
--- a/sd/inc/Outliner.hxx
+++ b/sd/inc/Outliner.hxx
@@ -131,7 +131,7 @@ public:
void PrepareSpelling (void);
/** Initialize a spell check but do not start it yet. This method
- is a better candiate for the name PrepareSpelling.
+ is a better candidate for the name PrepareSpelling.
*/
void StartSpelling (void);
@@ -240,7 +240,7 @@ private:
*/
bool mbFoundObject;
- /** When set to <true/> this flag indicates that an error has occured
+ /** When set to <TRUE/> this flag indicates that an error has occurred
that should terminate the iteration over the objects to search/spell
check.
*/
@@ -277,7 +277,7 @@ private:
SdrObject* mpObj;
/** this stores the first object that is used for text conversion.
- Conversion automaticly wraps around the document and stops when it
+ Conversion automatically wraps around the document and stops when it
finds this object again.
*/
SdrObject* mpFirstObj;
@@ -417,7 +417,7 @@ private:
*/
void ShowEndOfSearchDialog (void);
- /** Show a dialog that asks the user whether to wrap arround to the
+ /** Show a dialog that asks the user whether to wrap around to the
beginning/end of the document and continue with the search/spell
check.
*/
@@ -496,7 +496,7 @@ private:
i.e. there is no match in the whole presentation, or when no further
match exists.
@return
- The returned value indicates whether another (wrapped arround)
+ The returned value indicates whether another (wrapped around)
search shall take place. If that is so, then it is the caller's
responsibility to set the cursor position accordingly.
*/
@@ -528,7 +528,7 @@ private:
/** Initiate the spell check of the next relevant text object.
When the outline view is active then this method is called
- after a wrap arround to continue at the beginning of the document.
+ after a wrap around to continue at the beginning of the document.
@return
Returns <true/> to indicate that another call to this method is
required. When all text objects have been processed then
diff --git a/sd/inc/stlsheet.hxx b/sd/inc/stlsheet.hxx
index 3c47274212b5..3085ab3812c7 100644
--- a/sd/inc/stlsheet.hxx
+++ b/sd/inc/stlsheet.hxx
@@ -139,7 +139,7 @@ protected:
rtl::OUString msApiName;
rtl::Reference< SfxStyleSheetBasePool > mxPool;
- /** boradcast helper for events */
+ /** broadcast helper for events */
::cppu::OBroadcastHelper mrBHelper;
boost::scoped_ptr< ModifyListenerForewarder > mpModifyListenerForewarder;
diff --git a/sd/source/core/sdpage.cxx b/sd/source/core/sdpage.cxx
index 25655a510ba0..5e882fc88ccb 100644
--- a/sd/source/core/sdpage.cxx
+++ b/sd/source/core/sdpage.cxx
@@ -2861,7 +2861,7 @@ void SdPage::setHeaderFooterSettings( const sd::HeaderFooterSettings& rNewSettin
// #119056# For HeaderFooterSettings SdrObjects are used, but the properties
// used are not part of their model data, but kept in SD. This data is applied
// using a 'backdoor' on primitive creation. Thus, the normal mechanism to detect
- // object changes does not work here. It is neccessary to trigger updates here
+ // object changes does not work here. It is necessary to trigger updates here
// directly. BroadcastObjectChange used for PagePreview invalidations,
// flushViewObjectContacts used to invalidate and flush all visualizations in
// edit views.
diff --git a/sd/source/core/stlpool.cxx b/sd/source/core/stlpool.cxx
index c70bcecca107..28607c6ef738 100644
--- a/sd/source/core/stlpool.cxx
+++ b/sd/source/core/stlpool.cxx
@@ -265,14 +265,14 @@ void SdStyleSheetPool::CreateLayoutStyleSheets(const String& rLayoutName, sal_Bo
sal_uLong nFontSize = 20;
short nFirstIndent = -600;
// sal_uInt16 nIndent = nLevel * 1200;
- sal_uInt16 nLower = 100;
+ sal_uInt16 nUpper = 100;
switch (nLevel)
{
case 1:
{
nFontSize = 32;
- nLower = 500;
+ nUpper = 500;
nFirstIndent = -900;
}
break;
@@ -280,7 +280,7 @@ void SdStyleSheetPool::CreateLayoutStyleSheets(const String& rLayoutName, sal_Bo
case 2:
{
nFontSize = 28;
- nLower = 400;
+ nUpper = 400;
nFirstIndent = -800;
}
break;
@@ -288,13 +288,13 @@ void SdStyleSheetPool::CreateLayoutStyleSheets(const String& rLayoutName, sal_Bo
case 3:
{
nFontSize = 24;
- nLower = 300;
+ nUpper = 300;
}
break;
case 4:
{
- nLower = 200;
+ nUpper = 200;
}
break;
}
@@ -315,7 +315,7 @@ void SdStyleSheetPool::CreateLayoutStyleSheets(const String& rLayoutName, sal_Bo
pSheet->GetItemSet().Put(aSvxLRSpaceItem);
*/
// Zeilendurchschuss (Abstand nach unten)
- aSvxULSpaceItem.SetLower(nLower);
+ aSvxULSpaceItem.SetUpper(nUpper);
pSheet->GetItemSet().Put(aSvxULSpaceItem);
/* i35937
diff --git a/sd/source/filter/eppt/eppt.cxx b/sd/source/filter/eppt/eppt.cxx
index 960ba82d8ba2..a1e0287c3e03 100644
--- a/sd/source/filter/eppt/eppt.cxx
+++ b/sd/source/filter/eppt/eppt.cxx
@@ -621,7 +621,7 @@ bool PPTWriter::ImplCreateDocument()
<< (sal_uInt32)4 // flags - only bit 3 used, if set then slide contains shapes other than placeholders
<< (sal_Int32)0 // numberTexts - number of placeholder texts stored with the persist object. Allows to display outline view without loading the slide persist objects
<< (sal_Int32)i + 0x100 // slideId - Unique slide identifier, used for OLE link monikers for example
- << (sal_uInt32)0; // reserved, usualy 0
+ << (sal_uInt32)0; // reserved, usually 0
if ( !ImplGetPageByIndex( i, NORMAL ) ) // sehr aufregend: noch einmal ueber alle seiten
return false;
@@ -678,7 +678,7 @@ bool PPTWriter::ImplCreateDocument()
// Bit 3 Use named show
// Bit 4 Browse mode on
// Bit 5 Kiosk mode on
- // Bit 7 loop continously
+ // Bit 7 loop continuously
// Bit ? show scrollbar
if ( ImplGetPropertyValue( String( RTL_CONSTASCII_USTRINGPARAM( "CustomShow" ) ) ) )
diff --git a/sd/source/filter/eppt/epptso.cxx b/sd/source/filter/eppt/epptso.cxx
index 1a8a7f978605..62c7727ee47a 100644
--- a/sd/source/filter/eppt/epptso.cxx
+++ b/sd/source/filter/eppt/epptso.cxx
@@ -616,7 +616,7 @@ sal_uInt32 PPTWriter::ImplMasterSlideListContainer( SvStream* pStrm )
<< (sal_uInt32)0 // flags - only bit 3 used, if set then slide contains shapes other than placeholders
<< (sal_Int32)0 // numberTexts - number of placeholder texts stored with the persist object. Allows to display outline view without loading the slide persist objects
<< (sal_Int32)( 0x80000000 | i ) // slideId - Unique slide identifier, used for OLE link monikers for example
- << (sal_uInt32)0; // reserved, usualy 0
+ << (sal_uInt32)0; // reserved, usually 0
}
}
return nSize;
diff --git a/sd/source/filter/xml/sdxmlwrp.cxx b/sd/source/filter/xml/sdxmlwrp.cxx
index 7ea0910063f0..c36cc3e48a54 100644
--- a/sd/source/filter/xml/sdxmlwrp.cxx
+++ b/sd/source/filter/xml/sdxmlwrp.cxx
@@ -383,7 +383,7 @@ sal_Int32 ReadThroughComponent(
if (!bContainsStream )
{
// stream name not found! Then try the compatibility name.
- // if no stream can be opened, return immediatly with OK signal
+ // if no stream can be opened, return immediately with OK signal
// do we even have an alternative name?
if ( NULL == pCompatibilityStreamName )
diff --git a/sd/source/ui/accessibility/AccessibleDocumentViewBase.cxx b/sd/source/ui/accessibility/AccessibleDocumentViewBase.cxx
index 8433e747281f..09a96ab8d1dc 100644
--- a/sd/source/ui/accessibility/AccessibleDocumentViewBase.cxx
+++ b/sd/source/ui/accessibility/AccessibleDocumentViewBase.cxx
@@ -773,7 +773,7 @@ void SAL_CALL AccessibleDocumentViewBase::disposing (void)
void AccessibleDocumentViewBase::Activated (void)
{
- // Empty. Overwrite to do something usefull.
+ // Empty. Overwrite to do something useful.
}
@@ -781,7 +781,7 @@ void AccessibleDocumentViewBase::Activated (void)
void AccessibleDocumentViewBase::Deactivated (void)
{
- // Empty. Overwrite to do something usefull.
+ // Empty. Overwrite to do something useful.
}
diff --git a/sd/source/ui/accessibility/AccessibleDrawDocumentView.cxx b/sd/source/ui/accessibility/AccessibleDrawDocumentView.cxx
index fd8f18a290d7..900f8434f255 100644
--- a/sd/source/ui/accessibility/AccessibleDrawDocumentView.cxx
+++ b/sd/source/ui/accessibility/AccessibleDrawDocumentView.cxx
@@ -558,7 +558,7 @@ uno::Sequence< sal_Int32 > SAL_CALL
uno::Reference< drawing::XShape > xShape = mpChildrenManager->GetChildShape(i);
if ( xShape.is() )
{
- //if the object is visable in the page, we add it into the group list.
+ //if the object is visible in the page, we add it into the group list.
SdrObject* pObj = GetSdrObjectFromXShape(xShape);
if(pObj && pSdView && pSdView->IsObjMarkable(*pObj))
{
diff --git a/sd/source/ui/accessibility/AccessibleSlideSorterView.cxx b/sd/source/ui/accessibility/AccessibleSlideSorterView.cxx
index c9c9086518ab..c936c14e2bcc 100644
--- a/sd/source/ui/accessibility/AccessibleSlideSorterView.cxx
+++ b/sd/source/ui/accessibility/AccessibleSlideSorterView.cxx
@@ -833,7 +833,7 @@ void AccessibleSlideSorterView::Implementation::RequestUpdateChildren (void)
void AccessibleSlideSorterView::Implementation::UpdateChildren (void)
{
- //By default, all children should be accessable. So here workaround is to make all children visible.
+ //By default, all children should be accessible. So here workaround is to make all children visible.
// MT: THis was in UpdateVisibility, which has some similarity, and hg merge automatically has put it here. Correct?!
// In the IA2 CWS, also setting mnFirst/LastVisibleChild was commented out!
mnLastVisibleChild = maPageObjects.size();
diff --git a/sd/source/ui/accessibility/AccessibleViewForwarder.cxx b/sd/source/ui/accessibility/AccessibleViewForwarder.cxx
index 7f2224ffffcb..e9cebb952dde 100644
--- a/sd/source/ui/accessibility/AccessibleViewForwarder.cxx
+++ b/sd/source/ui/accessibility/AccessibleViewForwarder.cxx
@@ -35,7 +35,7 @@ namespace accessibility {
/** For the time beeing, the implementation of this class will not use the
member mrDevice. Instead the device is retrieved from the view
- everytime it is used. This is necessary because the device has to stay
+ every time it is used. This is necessary because the device has to stay
up-to-date with the current view and the class has to stay compatible.
May change in the future.
*/
diff --git a/sd/source/ui/animations/CustomAnimationList.cxx b/sd/source/ui/animations/CustomAnimationList.cxx
index 7b1d65bfcde3..57405e3837a1 100644
--- a/sd/source/ui/animations/CustomAnimationList.cxx
+++ b/sd/source/ui/animations/CustomAnimationList.cxx
@@ -881,7 +881,7 @@ EffectSequence CustomAnimationList::getSelection() const
aSelection.push_back( pEffect );
// if the selected effect is not expanded and has children
- // we say that the children are automaticly selected
+ // we say that the children are automatically selected
if( !IsExpanded( pEntry ) )
{
CustomAnimationListEntry* pChild = dynamic_cast< CustomAnimationListEntry* >( FirstChild( pEntry ) );
diff --git a/sd/source/ui/animations/CustomAnimationPane.cxx b/sd/source/ui/animations/CustomAnimationPane.cxx
index 1a26fced630f..1fb910188ff8 100644
--- a/sd/source/ui/animations/CustomAnimationPane.cxx
+++ b/sd/source/ui/animations/CustomAnimationPane.cxx
@@ -1697,7 +1697,7 @@ void CustomAnimationPane::changeSelection( STLPropertySet* pResultSet, STLProper
{
// we need to do a second pass for text grouping options
// since changing them can cause effects to be removed
- // or replaced, we do this after we aplied all other options
+ // or replaced, we do this after we applied all other options
// above
sal_Int32 nTextGrouping = 0;
@@ -1788,7 +1788,7 @@ void CustomAnimationPane::changeSelection( STLPropertySet* pResultSet, STLProper
if( bHasAnimateForm )
{
- if( pTextGroup->getAnimateForm() != bAnimateForm )
+ if( pTextGroup.get() && pTextGroup->getAnimateForm() != bAnimateForm )
{
if( (pTextGroup->getTextGrouping() >= 0) && (nTextGrouping == -1 ) )
{
@@ -1806,22 +1806,25 @@ void CustomAnimationPane::changeSelection( STLPropertySet* pResultSet, STLProper
if( bHasTextGrouping )
{
- if( (pTextGroup->getTextGrouping() != nTextGrouping) )
+ if( pTextGroup.get() && pTextGroup->getTextGrouping() != nTextGrouping )
{
pEffectSequence->setTextGrouping( pTextGroup, nTextGrouping );
bChanged = true;
}
}
- if (!bDoSetAnimateFormFirst&&bNeedDoSetAnimateForm)
+ if (!bDoSetAnimateFormFirst && bNeedDoSetAnimateForm)
{
- pEffectSequence->setAnimateForm( pTextGroup, bAnimateForm );
- bChanged = true;
+ if( pTextGroup.get() )
+ {
+ pEffectSequence->setAnimateForm( pTextGroup, bAnimateForm );
+ bChanged = true;
+ }
}
if( bHasTextGroupingAuto )
{
- if( pTextGroup->getTextGroupingAuto() != fTextGroupingAuto )
+ if( pTextGroup.get() && pTextGroup->getTextGroupingAuto() != fTextGroupingAuto )
{
pEffectSequence->setTextGroupingAuto( pTextGroup, fTextGroupingAuto );
bChanged = true;
@@ -1830,7 +1833,7 @@ void CustomAnimationPane::changeSelection( STLPropertySet* pResultSet, STLProper
if( bHasTextReverse )
{
- if( pTextGroup->getTextReverse() != bTextReverse )
+ if( pTextGroup.get() && pTextGroup->getTextReverse() != bTextReverse )
{
pEffectSequence->setTextReverse( pTextGroup, bTextReverse );
bChanged = true;
diff --git a/sd/source/ui/annotations/annotationmanager.cxx b/sd/source/ui/annotations/annotationmanager.cxx
index 2312fbe419e3..f00615eccf90 100644
--- a/sd/source/ui/annotations/annotationmanager.cxx
+++ b/sd/source/ui/annotations/annotationmanager.cxx
@@ -737,7 +737,7 @@ void AnnotationManagerImpl::SelectNextAnnotation(bool bForeward)
else
nStringId = bImpress ? STR_ANNOTATION_WRAP_BACKWARD : STR_ANNOTATION_WRAP_BACKWARD_DRAW;
- // Pop up question box that asks the user whether to wrap arround.
+ // Pop up question box that asks the user whether to wrap around.
// The dialog is made modal with respect to the whole application.
QueryBox aQuestionBox (
NULL,
diff --git a/sd/source/ui/app/sdmod1.cxx b/sd/source/ui/app/sdmod1.cxx
index 20e2b57775c3..88d6d69a8181 100644
--- a/sd/source/ui/app/sdmod1.cxx
+++ b/sd/source/ui/app/sdmod1.cxx
@@ -957,7 +957,7 @@ OutlineToImpressFinalizer::OutlineToImpressFinalizer (
&nReadByteCount));
// Check the error code and stop copying the stream data when an
- // error has occured.
+ // error has occurred.
switch (nErrorCode)
{
case ERRCODE_NONE:
diff --git a/sd/source/ui/app/sdxfer.cxx b/sd/source/ui/app/sdxfer.cxx
index 5c0cc34d9da3..005fe7738b89 100644
--- a/sd/source/ui/app/sdxfer.cxx
+++ b/sd/source/ui/app/sdxfer.cxx
@@ -250,19 +250,28 @@ void SdTransferable::CreateObjectReplacement( SdrObject* pObj )
if( pSdrTextObj )
{
- const OutlinerParaObject* pPara;
+ const OutlinerParaObject* pPara = pSdrTextObj->GetOutlinerParaObject();
- if( (pPara = pSdrTextObj->GetOutlinerParaObject()) != 0 )
+ if(pPara)
{
- const SvxFieldItem* pField;
+ const SvxFieldItem* pField = pPara->GetTextObject().GetField();
- if( (pField = pPara->GetTextObject().GetField()) != 0 )
+ if(pField)
{
const SvxURLField* pURL = dynamic_cast< const SvxURLField* >(pField->GetField());
- if( pURL )
+ if(pURL)
{
- mpBookmark = new INetBookmark( pURL->GetURL(), pURL->GetRepresentation() );
+ // #63399# This special code identifies TextFrames which have just an URL
+ // as content and directly add this to the clipboard, probably to avoid adding
+ // an unnecessary DrawObject to the target where paste may take place. This is
+ // wanted only for SdrObjects with no fill and no line, else it is necessary to
+ // use the whole SdrObect. Test here for Line/FillStyle and take shortcut only
+ // when both are unused
+ if(!pObj->HasFillStyle() && !pObj->HasLineStyle())
+ {
+ mpBookmark = new INetBookmark( pURL->GetURL(), pURL->GetRepresentation() );
+ }
}
}
}
@@ -341,7 +350,7 @@ void SdTransferable::CreateData()
pNewStylePool->CopyLayoutSheets( aOldLayoutName, *pOldStylePool, aCreatedSheets );
}
- // set VisArea and adjust objects if neccessary
+ // set VisArea and adjust objects if necessary
if( maVisArea.IsEmpty() &&
mpSdDrawDocumentIntern && mpSdViewIntern &&
mpSdDrawDocumentIntern->GetPageCount() )
diff --git a/sd/source/ui/dlg/dlgass.cxx b/sd/source/ui/dlg/dlgass.cxx
index 5abdef6643ea..b478e62cf792 100644
--- a/sd/source/ui/dlg/dlgass.cxx
+++ b/sd/source/ui/dlg/dlgass.cxx
@@ -121,7 +121,7 @@ DECLARE_LIST( PasswordEntryList, PasswordEntry * )
// ====================================================================
/** A simple wrapper that looks like a PushButton and is used to force the
- broadcasting of focus events primarly for accessibility tools.
+ broadcasting of focus events primarily for accessibility tools.
Forcing focus events is achieved by using two identical PushButtons
which, when the focus event is requested, are exchanged and play focus
ping-pong by moving the focus from one to the other.
diff --git a/sd/source/ui/dlg/prltempl.cxx b/sd/source/ui/dlg/prltempl.cxx
index 3aafb898f181..b922a246bacf 100644
--- a/sd/source/ui/dlg/prltempl.cxx
+++ b/sd/source/ui/dlg/prltempl.cxx
@@ -178,7 +178,7 @@ SdPresLayoutTemplateDlg::SdPresLayoutTemplateDlg( SfxObjectShell* pDocSh,
}
// #112490# the tabpages Alignment, Tabs and Asian Typography are very
- // usefull, except for the background style
+ // useful, except for the background style
if( DlgId.GetId() != TAB_PRES_LAYOUT_TEMPLATE_BACKGROUND )
{
SvtCJKOptions aCJKOptions;
diff --git a/sd/source/ui/dlg/sdtreelb.cxx b/sd/source/ui/dlg/sdtreelb.cxx
index 7ca0a1284428..3644d9a55d61 100644
--- a/sd/source/ui/dlg/sdtreelb.cxx
+++ b/sd/source/ui/dlg/sdtreelb.cxx
@@ -1144,7 +1144,7 @@ SdDrawDocument* SdPageObjsTLB::GetBookmarkDoc(SfxMedium* pMed)
if (pMed)
{
- // it looks that it is undefined if a Medium was set by Fill() allready
+ // it looks that it is undefined if a Medium was set by Fill() already
DBG_ASSERT( !mpMedium, "SfxMedium confusion!" );
delete mpMedium;
mpMedium = NULL;
@@ -1167,7 +1167,7 @@ SdDrawDocument* SdPageObjsTLB::GetBookmarkDoc(SfxMedium* pMed)
else if ( mpMedium )
// in this mode the document is owned and controlled by the SdDrawDocument
// it can be released by calling the corresponding CloseBookmarkDoc method
- // successfull creation of a document makes this the owner of the medium
+ // successful creation of a document makes this the owner of the medium
mpBookmarkDoc = ((SdDrawDocument*) mpDoc)->OpenBookmarkDoc(*mpMedium);
if ( !mpBookmarkDoc )
@@ -1209,7 +1209,7 @@ void SdPageObjsTLB::CloseBookmarkDoc()
}
else
{
- // perhaps mpOwnMedium provided, but no successfull creation of BookmarkDoc
+ // perhaps mpOwnMedium provided, but no successful creation of BookmarkDoc
delete mpOwnMedium;
mpOwnMedium = NULL;
}
diff --git a/sd/source/ui/dlg/tpoption.cxx b/sd/source/ui/dlg/tpoption.cxx
index bea151f14136..7ab77c828208 100644
--- a/sd/source/ui/dlg/tpoption.cxx
+++ b/sd/source/ui/dlg/tpoption.cxx
@@ -683,7 +683,7 @@ void SdTpOptionsMisc::SetDrawMode()
lcl_MoveWin( aTxtTabstop, -nDiff );
lcl_MoveWin( aMtrFldTabstop, -nDiff );
- // Move the scale controls so that they are visually centered betwen the
+ // Move the scale controls so that they are visually centered between the
// group controls above and below.
lcl_MoveWin (aFtScale, -17);
lcl_MoveWin (aCbScale, -17);
diff --git a/sd/source/ui/docshell/docshell.cxx b/sd/source/ui/docshell/docshell.cxx
index 0fb5b03ef3ad..69b6fe8e24a6 100644
--- a/sd/source/ui/docshell/docshell.cxx
+++ b/sd/source/ui/docshell/docshell.cxx
@@ -230,7 +230,7 @@ DrawDocShell::~DrawDocShell()
// Tell all listeners that the doc shell is about to be
// destroyed. This has been introduced for the PreviewRenderer to
// free its view (that uses the item poll of the doc shell) but
- // may be usefull in other places as well.
+ // may be useful in other places as well.
Broadcast(SfxSimpleHint(SFX_HINT_DYING));
mbInDestruction = true;
diff --git a/sd/source/ui/framework/configuration/ConfigurationUpdater.cxx b/sd/source/ui/framework/configuration/ConfigurationUpdater.cxx
index c765c0dfce07..2c748140f94b 100644
--- a/sd/source/ui/framework/configuration/ConfigurationUpdater.cxx
+++ b/sd/source/ui/framework/configuration/ConfigurationUpdater.cxx
@@ -195,7 +195,7 @@ void ConfigurationUpdater::UpdateConfiguration (void)
ConfigurationTracer::TraceConfiguration(
mxCurrentConfiguration, "current configuration");
#endif
- // Notify the begining of the update.
+ // Notify the beginning of the update.
ConfigurationChangeEvent aEvent;
aEvent.Type = FrameworkHelper::msConfigurationUpdateStartEvent;
aEvent.Configuration = mxRequestedConfiguration;
@@ -284,7 +284,7 @@ void ConfigurationUpdater::CheckUpdateSuccess (void)
}
else
{
- // Update was successfull. Reset the failed update count.
+ // Update was successful. Reset the failed update count.
mnFailedUpdateCount = 0;
}
}
diff --git a/sd/source/ui/framework/configuration/ConfigurationUpdater.hxx b/sd/source/ui/framework/configuration/ConfigurationUpdater.hxx
index cf6f82672104..68e7ef8726aa 100644
--- a/sd/source/ui/framework/configuration/ConfigurationUpdater.hxx
+++ b/sd/source/ui/framework/configuration/ConfigurationUpdater.hxx
@@ -44,7 +44,7 @@ class ConfigurationUpdaterLock;
configuration. An update is made by activating or deactivating drawing
framework resources.
- When an update is not successfull, i.e. after the update the current
+ When an update is not successful, i.e. after the update the current
configuration is not equivalent to the requested configuration, then a
timer is started to repeat the update after a short time.
*/
diff --git a/sd/source/ui/framework/module/ViewTabBarModule.hxx b/sd/source/ui/framework/module/ViewTabBarModule.hxx
index b0fa7ec5e9ee..a5b8e819abbb 100644
--- a/sd/source/ui/framework/module/ViewTabBarModule.hxx
+++ b/sd/source/ui/framework/module/ViewTabBarModule.hxx
@@ -56,7 +56,7 @@ class ViewTabBarModule
public ViewTabBarModuleInterfaceBase
{
public:
- /** Create a new module that controlls the view tab bar above the view
+ /** Create a new module that controls the view tab bar above the view
in the specified pane.
@param rxController
This is the access point to the drawing framework.
diff --git a/sd/source/ui/framework/tools/FrameworkHelper.cxx b/sd/source/ui/framework/tools/FrameworkHelper.cxx
index 5c738bb7ae63..f4e49ce279ce 100644
--- a/sd/source/ui/framework/tools/FrameworkHelper.cxx
+++ b/sd/source/ui/framework/tools/FrameworkHelper.cxx
@@ -124,7 +124,7 @@ typedef ::cppu::WeakComponentImplHelper1 <
::com::sun::star::lang::XEventListener
> LifetimeControllerInterfaceBase;
-/** This class helps controling the lifetime of the
+/** This class helps controlling the lifetime of the
FrameworkHelper. Register at a ViewShellBase object and an XController
object and call Dispose() at the associated FrameworkHelper object when
one of them and Release() when both of them are destroyed.
diff --git a/sd/source/ui/func/fuediglu.cxx b/sd/source/ui/func/fuediglu.cxx
index 1dce0874a236..fcb90c2bf86b 100644
--- a/sd/source/ui/func/fuediglu.cxx
+++ b/sd/source/ui/func/fuediglu.cxx
@@ -320,7 +320,7 @@ bool FuEditGluePoints::KeyInput(const KeyEvent& rKEvt)
mpView->SetActualOutDev( mpWindow );
//Solution: Add Shift+UP/DOWN/LEFT/RIGHT key to move the position of insert point,
- //and SHIFT+ENTER key to decide the postion and draw the new insert point
+ //and SHIFT+ENTER key to decide the position and draw the new insert point
bool bReturn = FuDraw::KeyInput(rKEvt);
@@ -407,7 +407,7 @@ bool FuEditGluePoints::KeyInput(const KeyEvent& rKEvt)
}
//Solution: Add Shift+UP/DOWN/LEFT/RIGHT key to move the position of insert point,
- //and SHIFT+ENTER key to decide the postion and draw the new insert point
+ //and SHIFT+ENTER key to decide the position and draw the new insert point
void FuEditGluePoints::ForcePointer(const MouseEvent* pMEvt)
{
if(mbBeginInsertPoint && pMEvt)
diff --git a/sd/source/ui/func/fupoor.cxx b/sd/source/ui/func/fupoor.cxx
index 1295485a0285..4951f537eda0 100644
--- a/sd/source/ui/func/fupoor.cxx
+++ b/sd/source/ui/func/fupoor.cxx
@@ -232,7 +232,7 @@ IMPL_LINK_INLINE_START( FuPoor, ScrollHdl, Timer *, EMPTYARG )
Point aPnt(mpWindow->GetPointerPosPixel());
// #95491# use remembered MouseButton state to create correct
- // MouseEvents for this artifical MouseMove.
+ // MouseEvents for this artificial MouseMove.
MouseMove(MouseEvent(aPnt, 1, 0, GetMouseButtonCode()));
return 0;
@@ -1026,7 +1026,7 @@ IMPL_LINK_INLINE_START( FuPoor, DelayHdl, Timer *, EMPTYARG )
Point aPnt(mpWindow->GetPointerPosPixel());
// #95491# use remembered MouseButton state to create correct
- // MouseEvents for this artifical MouseMove.
+ // MouseEvents for this artificial MouseMove.
MouseMove(MouseEvent(aPnt, 1, 0, GetMouseButtonCode()));
return 0;
diff --git a/sd/source/ui/func/fusel.cxx b/sd/source/ui/func/fusel.cxx
index c68010b884e0..651c014adfbf 100644
--- a/sd/source/ui/func/fusel.cxx
+++ b/sd/source/ui/func/fusel.cxx
@@ -106,7 +106,7 @@ FuSelection::FuSelection (
nEditMode(SID_BEZIER_MOVE),
pWaterCanCandidate(NULL),
//Solution: Add Shift+UP/DOWN/LEFT/RIGHT key to move the position of insert point,
- //and SHIFT+ENTER key to decide the postion and draw the new insert point
+ //and SHIFT+ENTER key to decide the position and draw the new insert point
maOldPoint(0, 0),
mbBeginInsertPoint(false),
mbMovedToCenterPoint(false)
@@ -819,7 +819,7 @@ bool FuSelection::MouseButtonUp(const MouseEvent& rMEvt)
}
else if (pWaterCanCandidate != NULL)
{
- // Is the candiate object still under the mouse?
+ // Is the candidate object still under the mouse?
if (pickObject (aLogicPos) == pWaterCanCandidate)
{
SdStyleSheetPool* pPool = static_cast<SdStyleSheetPool*>(
diff --git a/sd/source/ui/func/smarttag.cxx b/sd/source/ui/func/smarttag.cxx
index 704e6183c163..ca2788ff989a 100644
--- a/sd/source/ui/func/smarttag.cxx
+++ b/sd/source/ui/func/smarttag.cxx
@@ -253,7 +253,7 @@ bool SmartTagSet::MouseButtonDown( const MouseEvent& rMEvt )
return false;
}
- // if a smart tag handle is hit, foreward event to its smart tag
+ // if a smart tag handle is hit, foreword event to its smart tag
SmartHdl* pSmartHdl = dynamic_cast< SmartHdl* >( pHdl );
if(pSmartHdl && pSmartHdl->getTag().is() )
{
@@ -296,7 +296,7 @@ bool SmartTagSet::RequestHelp( const HelpEvent& rHEvt )
if( pHdl )
{
- // if a smart tag handle is hit, foreward event to its smart tag
+ // if a smart tag handle is hit, foreword event to its smart tag
SmartHdl* pSmartHdl = dynamic_cast< SmartHdl* >( pHdl );
if(pSmartHdl && pSmartHdl->getTag().is() )
{
@@ -321,7 +321,7 @@ bool SmartTagSet::Command( const CommandEvent& rCEvt )
if( pHdl )
{
- // if a smart tag handle is hit, foreward event to its smart tag
+ // if a smart tag handle is hit, foreword event to its smart tag
SmartHdl* pSmartHdl = dynamic_cast< SmartHdl* >( pHdl );
if(pSmartHdl && pSmartHdl->getTag().is() )
{
diff --git a/sd/source/ui/inc/AccessibleDocumentViewBase.hxx b/sd/source/ui/inc/AccessibleDocumentViewBase.hxx
index 921fa1e12abf..b445fac25661 100644
--- a/sd/source/ui/inc/AccessibleDocumentViewBase.hxx
+++ b/sd/source/ui/inc/AccessibleDocumentViewBase.hxx
@@ -82,7 +82,7 @@ namespace accessibility {
<li>As window listener it waits for changes of the window geometry and
forwards those as view forwarder changes.</li>
<li>As focus listener it keeps track of the focus to give this class and
- derived classes the oportunity to set and remove the focus to/from
+ derived classes the opportunity to set and remove the focus to/from
shapes.</li>
</ol>
</p>
@@ -137,7 +137,7 @@ public:
//===== IAccessibleViewForwarderListener ================================
/** A view forwarder change is signalled for instance when any of the
- window events is recieved. Thus, instead of overloading the four
+ window events is received. Thus, instead of overloading the four
windowResized... methods it will be sufficient in most cases just to
overload this method.
*/
diff --git a/sd/source/ui/inc/AccessibleViewForwarder.hxx b/sd/source/ui/inc/AccessibleViewForwarder.hxx
index 2d6e9b4ae047..b7e4f715423f 100644
--- a/sd/source/ui/inc/AccessibleViewForwarder.hxx
+++ b/sd/source/ui/inc/AccessibleViewForwarder.hxx
@@ -41,7 +41,7 @@ namespace accessibility {
@attention
Note, that modifications of the underlying view that lead to
different transformations between internal and screen coordinates or
- change the validity of the forwarder have to be signaled seperately.
+ change the validity of the forwarder have to be signaled separately.
*/
class AccessibleViewForwarder
: public IAccessibleViewForwarder
diff --git a/sd/source/ui/inc/DrawViewShell.hxx b/sd/source/ui/inc/DrawViewShell.hxx
index 56fdcbb3a511..4ca0f55409c7 100644
--- a/sd/source/ui/inc/DrawViewShell.hxx
+++ b/sd/source/ui/inc/DrawViewShell.hxx
@@ -470,7 +470,7 @@ private:
a) it is running in its own frame, i.e. is a full screen show and
b) the given flag bCloseFrame is true.
@param bCloseFrame
- Be carefull with this flag when stopping a full screen show.
+ Be careful with this flag when stopping a full screen show.
When called from the destructor the flag has to be <false/> or
otherwise we run into a loop of calls to destructors of the view
and the frame.
diff --git a/sd/source/ui/inc/OutlineView.hxx b/sd/source/ui/inc/OutlineView.hxx
index 3bcd3f2239e5..2c6269e872d4 100644
--- a/sd/source/ui/inc/OutlineView.hxx
+++ b/sd/source/ui/inc/OutlineView.hxx
@@ -150,7 +150,7 @@ public:
/** After this method has been called with <true/> following changes of
the current page are ignored in that the corresponding text is not
selected.
- This is used to supress unwanted side effects between selection and
+ This is used to suppress unwanted side effects between selection and
cursor position.
*/
void IgnoreCurrentPageChanges (bool bIgnore);
diff --git a/sd/source/ui/inc/OutlinerIteratorImpl.hxx b/sd/source/ui/inc/OutlinerIteratorImpl.hxx
index 11e2c586be40..f030938b1baf 100644
--- a/sd/source/ui/inc/OutlinerIteratorImpl.hxx
+++ b/sd/source/ui/inc/OutlinerIteratorImpl.hxx
@@ -98,7 +98,7 @@ public:
When both iterators ar equal <true/> is returned, <false/> otherwise.
*/
virtual bool operator== (const IteratorImplBase& rIterator) const;
- /** This method is used by the equality operator. Additionaly to the
+ /** This method is used by the equality operator. Additionally to the
iterator it takes a type information which is taken into account on
comparison. It is part of a "multimethod" pattern.
@param rIterator
@@ -220,7 +220,7 @@ protected:
void SetPage (sal_Int32 nPageIndex);
private:
- /// Indicates whether a page changed occured on switching to current page.
+ /// Indicates whether a page changed occurred on switching to current page.
bool mbPageChangeOccured;
/// Pointer to the page associated with the current page index. May be NULL.
SdPage* mpPage;
diff --git a/sd/source/ui/inc/PreviewRenderer.hxx b/sd/source/ui/inc/PreviewRenderer.hxx
index 2e147054e8b2..6c9f8612c8ca 100644
--- a/sd/source/ui/inc/PreviewRenderer.hxx
+++ b/sd/source/ui/inc/PreviewRenderer.hxx
@@ -45,7 +45,7 @@ class PreviewRenderer
: public SfxListener
{
public:
- /** Create a new preview renderer that takes some of its inital values
+ /** Create a new preview renderer that takes some of its initial values
from the given output device.
@param pTemplate
May be NULL.
@@ -139,7 +139,7 @@ private:
const Color maFrameColor;
const bool mbHasFrame;
static const int snSubstitutionTextSize;
- // Width of the frame that is painted arround the preview.
+ // Width of the frame that is painted around the preview.
static const int snFrameWidth;
bool Initialize (
diff --git a/sd/source/ui/inc/SlideSorter.hxx b/sd/source/ui/inc/SlideSorter.hxx
index 83a52afcea9c..170f76ea6a86 100644
--- a/sd/source/ui/inc/SlideSorter.hxx
+++ b/sd/source/ui/inc/SlideSorter.hxx
@@ -187,12 +187,12 @@ public:
*/
void SetCurrentFunction (const FunctionReference& rpFunction);
- /** Return a collection of properties that are used througout the slide
+ /** Return a collection of properties that are used throughout the slide
sorter.
*/
::boost::shared_ptr<controller::Properties> GetProperties (void) const;
- /** Return the active theme wich gives access to colors and fonts.
+ /** Return the active theme which gives access to colors and fonts.
*/
::boost::shared_ptr<view::Theme> GetTheme (void) const;
diff --git a/sd/source/ui/inc/SlideViewShell.hxx b/sd/source/ui/inc/SlideViewShell.hxx
index 4799312d67e2..abc46eb72fee 100644
--- a/sd/source/ui/inc/SlideViewShell.hxx
+++ b/sd/source/ui/inc/SlideViewShell.hxx
@@ -117,7 +117,7 @@ public:
virtual bool HasSelection( bool bText = true ) const;
- /** Draw the rectangle arround the specified slide that indicates whether
+ /** Draw the rectangle around the specified slide that indicates whether
the slide is selected or not. When not selected the rectangle is
painted in the background color (WindowColor from the style settings)
and is therefore not visible. A selected slide is painted with the
diff --git a/sd/source/ui/inc/ToolBarManager.hxx b/sd/source/ui/inc/ToolBarManager.hxx
index a5277a0b902f..65d3995bd359 100644
--- a/sd/source/ui/inc/ToolBarManager.hxx
+++ b/sd/source/ui/inc/ToolBarManager.hxx
@@ -52,7 +52,7 @@ class ViewShellManager;
Tool bars are managed in groups. Each group can be set, reset, or
modified independently of the others. This allows for instance to
replace the toolbars associated with the current function independently
- from those assoicated with the main view.
+ from those associated with the main view.
The ToolBarManager has two high level methods which contain the
knowledge about which tool bars to show in a specific context.
diff --git a/sd/source/ui/inc/ViewShell.hxx b/sd/source/ui/inc/ViewShell.hxx
index d16c71a51ea2..86e989325991 100644
--- a/sd/source/ui/inc/ViewShell.hxx
+++ b/sd/source/ui/inc/ViewShell.hxx
@@ -318,7 +318,7 @@ public:
*/
::sd::WindowUpdater* GetWindowUpdater (void) const;
- /** Return the border that is drawn arround the actual document view.
+ /** Return the border that is drawn around the actual document view.
The border contains typically rulers and scroll bars.
@param bOuterResize
When this flag is <true/> then the border is used for an
@@ -420,7 +420,7 @@ public:
/** Set the given window as new parent window. This is not possible for
all views, so the return value tells the caller if the relocation
- was successfull.
+ was successful.
*/
virtual bool RelocateToParentWindow (::Window* pParentWindow);
diff --git a/sd/source/ui/inc/ViewShellHint.hxx b/sd/source/ui/inc/ViewShellHint.hxx
index a70362b37f62..a89a3e3a0aa4 100644
--- a/sd/source/ui/inc/ViewShellHint.hxx
+++ b/sd/source/ui/inc/ViewShellHint.hxx
@@ -29,7 +29,7 @@
namespace sd {
/** Local derivation of the SfxHint class that defines some hint ids that
- are used by the ViewShell class and its decendants.
+ are used by the ViewShell class and its descendants.
*/
class ViewShellHint
: public SfxHint
diff --git a/sd/source/ui/inc/ViewShellImplementation.hxx b/sd/source/ui/inc/ViewShellImplementation.hxx
index ceceae4479d7..1a0ab0543c14 100644
--- a/sd/source/ui/inc/ViewShellImplementation.hxx
+++ b/sd/source/ui/inc/ViewShellImplementation.hxx
@@ -61,7 +61,7 @@ public:
/** This update lock for the ToolBarManager exists in order to avoid
problems with tool bars being displayed while the mouse button is
- pressed. Whith docked tool bars this can lead to a size change of
+ pressed. With docked tool bars this can lead to a size change of
the view. This would change the relative mouse coordinates and thus
interpret every mouse click as move command.
*/
diff --git a/sd/source/ui/inc/Window.hxx b/sd/source/ui/inc/Window.hxx
index 8c9b71a14058..07b8f28caaa9 100644
--- a/sd/source/ui/inc/Window.hxx
+++ b/sd/source/ui/inc/Window.hxx
@@ -63,7 +63,7 @@ public:
void SetViewShell (ViewShell* pViewSh);
/** Set the zoom factor to the specified value and center the display
- area arround the zoom center.
+ area around the zoom center.
@param nZoom
The zoom factor is given as integral percent value.
*/
@@ -128,7 +128,7 @@ public:
void SetViewSize(const basegfx::B2DVector& rSize);
void SetCenterAllowed (bool bIsAllowed);
- /** Calculate origin of the map mode accoring to the size of the view
+ /** Calculate origin of the map mode according to the size of the view
and window (its size in model coordinates; that takes the zoom
factor into account), and the bCenterAllowed flag. When it is not
set then nothing is changed. When in any direction the window is
diff --git a/sd/source/ui/inc/fuediglu.hxx b/sd/source/ui/inc/fuediglu.hxx
index 9e3194a53c78..1870b6ec0e80 100644
--- a/sd/source/ui/inc/fuediglu.hxx
+++ b/sd/source/ui/inc/fuediglu.hxx
@@ -54,7 +54,7 @@ public:
virtual void Deactivate(); // Function deaktivieren
//Solution: Add Shift+UP/DOWN/LEFT/RIGHT key to move the position of insert point,
- //and SHIFT+ENTER key to decide the postion and draw the new insert point
+ //and SHIFT+ENTER key to decide the position and draw the new insert point
virtual void ForcePointer(const MouseEvent* pMEvt = NULL);
private:
Point maOldPoint;
diff --git a/sd/source/ui/inc/fupoor.hxx b/sd/source/ui/inc/fupoor.hxx
index 44519c43339d..a944f37c803e 100644
--- a/sd/source/ui/inc/fupoor.hxx
+++ b/sd/source/ui/inc/fupoor.hxx
@@ -116,7 +116,7 @@ public:
// #i33136#
/** Decide if the object to be created should be created
orthogonal. Default implementation uses nSlotID
- to decide. May be overloaded to use other criterias
+ to decide. May be overloaded to use other criteria
for this decision
@returns true if the to be created object should be orthogonal.
@@ -144,7 +144,7 @@ protected:
control at the lower left of the document window positive values
move to the right and negative values move to the left.
- <p>Switching the layer is independant of the view's layer mode. The
+ <p>Switching the layer is independent of the view's layer mode. The
layers are switched even when the layer mode is turned off and the
layer control is not visible.</p>
@param nOffset
diff --git a/sd/source/ui/inc/fusel.hxx b/sd/source/ui/inc/fusel.hxx
index 2ab80fc348af..90b0912b8440 100644
--- a/sd/source/ui/inc/fusel.hxx
+++ b/sd/source/ui/inc/fusel.hxx
@@ -101,7 +101,7 @@ private:
*/
SdrObject* pickObject (const basegfx::B2DPoint& rTestPoint);
//Solution: Add Shift+UP/DOWN/LEFT/RIGHT key to move the position of insert point,
- //and SHIFT+ENTER key to decide the postion and draw the new insert point
+ //and SHIFT+ENTER key to decide the position and draw the new insert point
Point maOldPoint;
/// bitfield
diff --git a/sd/source/ui/inc/taskpane/ControlContainer.hxx b/sd/source/ui/inc/taskpane/ControlContainer.hxx
index be5344c2c2a9..f6c3a4df68ac 100644
--- a/sd/source/ui/inc/taskpane/ControlContainer.hxx
+++ b/sd/source/ui/inc/taskpane/ControlContainer.hxx
@@ -125,7 +125,7 @@ public:
is <false/> the hidden controls are skipped.
@param bCycle
When this flag is <true/> then the search for the previous
- control wraps arround when reaching the first control.
+ control wraps around when reaching the first control.
@return
Returns the index to the previous control or (sal_uInt32)-1 when
there is no previous control. This would be the case when there
@@ -147,7 +147,7 @@ public:
<false/> the hidden controls are skipped.
@param bCycle
When this flag is <true/> then the search for the next control
- wraps arround when reaching the last control.
+ wraps around when reaching the last control.
@return
Returns the index to the next control or (sal_uInt32)-1 when
there is no next control. This would be the case when there is
diff --git a/sd/source/ui/inc/taskpane/ScrollPanel.hxx b/sd/source/ui/inc/taskpane/ScrollPanel.hxx
index c6cf3c36c090..14d33c8a3ec8 100644
--- a/sd/source/ui/inc/taskpane/ScrollPanel.hxx
+++ b/sd/source/ui/inc/taskpane/ScrollPanel.hxx
@@ -141,7 +141,7 @@ private:
const int mnHorizontalBorder;
/** List of horizontal stripes that is created from the gaps between
children when they are layouted. The stripes are painted in Paint()
- to fill the space arround the children.
+ to fill the space around the children.
*/
typedef ::std::vector< ::std::pair<int,int> > StripeList;
StripeList maStripeList;
diff --git a/sd/source/ui/inc/taskpane/SubToolPanel.hxx b/sd/source/ui/inc/taskpane/SubToolPanel.hxx
index 6bf5e78b3392..9e81e36972c4 100644
--- a/sd/source/ui/inc/taskpane/SubToolPanel.hxx
+++ b/sd/source/ui/inc/taskpane/SubToolPanel.hxx
@@ -50,7 +50,7 @@ namespace sd { namespace toolpanel {
is made transparent and painting it is done by this class. While
layouting its children it remembers the gaps between children and stores
them in maStripeList. In Paint() those gaps as well as the border
- arround all children are painted in the background color.</p>
+ around all children are painted in the background color.</p>
*/
class SubToolPanel
: public Control,
@@ -101,7 +101,7 @@ private:
const int mnHorizontalBorder;
/** List of horizontal stripes that is created from the gaps between
children when they are layouted. The stripes are painted in Paint()
- to fill the space arround the children.
+ to fill the space around the children.
*/
typedef ::std::vector< ::std::pair<int,int> > StripeList;
StripeList maStripeList;
diff --git a/sd/source/ui/inc/taskpane/TitledControl.hxx b/sd/source/ui/inc/taskpane/TitledControl.hxx
index c4a0f4f21ba7..5b2528a9bfd5 100644
--- a/sd/source/ui/inc/taskpane/TitledControl.hxx
+++ b/sd/source/ui/inc/taskpane/TitledControl.hxx
@@ -101,7 +101,7 @@ public:
const String& GetTitle (void) const;
/** Expand the control without informing its container. This
- method ususally is called by the container as a result of a
+ method usually is called by the container as a result of a
higher level expand command. You may want to use
ExpandViaContainer() instead.
@param bExpanded
diff --git a/sd/source/ui/inc/tools/IconCache.hxx b/sd/source/ui/inc/tools/IconCache.hxx
index 1b4ce1d9e66d..07a3e50bbb1d 100644
--- a/sd/source/ui/inc/tools/IconCache.hxx
+++ b/sd/source/ui/inc/tools/IconCache.hxx
@@ -33,7 +33,7 @@ namespace sd {
use the icons do not have to store them in every one of their
instances.
- Icons are adressed over their resource id and are loaded on demand.
+ Icons are addressed over their resource id and are loaded on demand.
This cache acts like a singleton with a lifetime equal to that of the sd
module.
@@ -50,7 +50,7 @@ public:
/** Return the icon with the given resource id.
@return
The returned Image may be empty when there is no icon for the
- given id or an error occured. Should not happen under normal
+ given id or an error occurred. Should not happen under normal
circumstances.
*/
Image GetIcon (sal_uInt16 nResourceId);
diff --git a/sd/source/ui/presenter/PresenterCanvas.hxx b/sd/source/ui/presenter/PresenterCanvas.hxx
index 368f056197fc..c33bad06b15b 100644
--- a/sd/source/ui/presenter/PresenterCanvas.hxx
+++ b/sd/source/ui/presenter/PresenterCanvas.hxx
@@ -97,7 +97,7 @@ public:
rxSharedCanvas argument.
@param rxWindow
The window that is represented by the new PresenterCanvas
- object. It is expected to be a direct decendent of
+ object. It is expected to be a direct descendant of
rxSharedWindow. Its position inside rxSharedWindow defines the
offset of the canvas implemented by the new PresenterCanvas
object and rxSharedCanvas.
diff --git a/sd/source/ui/sidebar/MasterPageContainer.cxx b/sd/source/ui/sidebar/MasterPageContainer.cxx
index 25975d0a80f2..e84cbcb627de 100644
--- a/sd/source/ui/sidebar/MasterPageContainer.cxx
+++ b/sd/source/ui/sidebar/MasterPageContainer.cxx
@@ -145,7 +145,7 @@ private:
bool mbFirstPageObjectSeen;
// The widths for the previews contain two pixels for the border that is
- // painted arround the preview.
+ // painted around the preview.
static const int SMALL_PREVIEW_WIDTH = 72 + 2;
static const int LARGE_PREVIEW_WIDTH = 2*72 + 2;
diff --git a/sd/source/ui/sidebar/MasterPageContainer.hxx b/sd/source/ui/sidebar/MasterPageContainer.hxx
index e1502082b743..ab95815c4014 100644
--- a/sd/source/ui/sidebar/MasterPageContainer.hxx
+++ b/sd/source/ui/sidebar/MasterPageContainer.hxx
@@ -51,7 +51,7 @@ class MasterPageDescriptor;
controls. It uses internally a singleton implementation object.
Therefore, all MasterPageContainer object operator on the same set of
master pages. Each MasterPageContainer, however, has its own
- PreviewSize value and thus can independantly switch between large and
+ PreviewSize value and thus can independently switch between large and
small previews.
The container maintains its own document to store master page objects.
@@ -60,7 +60,7 @@ class MasterPageDescriptor;
name, and, if available, the page object.
Entries are accessed via a Token, which is mostly a numerical index but
- whose values do not neccessarily have to be consecutive.
+ whose values do not necessarily have to be consecutive.
*/
class MasterPageContainer
{
diff --git a/sd/source/ui/sidebar/MasterPagesSelector.hxx b/sd/source/ui/sidebar/MasterPagesSelector.hxx
index 5a08a5a16392..21277415eb41 100644
--- a/sd/source/ui/sidebar/MasterPagesSelector.hxx
+++ b/sd/source/ui/sidebar/MasterPagesSelector.hxx
@@ -97,7 +97,7 @@ public:
virtual sal_Int32 GetMinimumWidth (void);
/** Update the selection of previews according to whatever
- influences them appart from mouse and keyboard. If, for
+ influences them apart from mouse and keyboard. If, for
example, the current page of the main pane changes, then call
this method at the CurrentMasterPagesSelector to select the
previews of the master pages that are assigned to the new
@@ -195,14 +195,14 @@ protected:
ItemList maLockedMasterPages;
/** Lock master pages in the given list and release locks that where
- previously aquired.
+ previously acquired.
*/
void UpdateLocks (const ItemList& rItemList);
void Fill (void);
virtual void Fill (ItemList& rItemList) = 0;
- /** Give derived classes the oportunity to provide their own context
+ /** Give derived classes the opportunity to provide their own context
menu. If they do then they probably have to provide their own
Execute() and GetState() methods as well.
*/
diff --git a/sd/source/ui/sidebar/PreviewValueSet.hxx b/sd/source/ui/sidebar/PreviewValueSet.hxx
index 5a0c55c18d10..8aceaec128fe 100644
--- a/sd/source/ui/sidebar/PreviewValueSet.hxx
+++ b/sd/source/ui/sidebar/PreviewValueSet.hxx
@@ -28,7 +28,7 @@
namespace sd { namespace sidebar {
-/** Adapt the svtools valueset to the needs of the master page controlls.
+/** Adapt the svtools valueset to the needs of the master page controls.
*/
class PreviewValueSet
: public ValueSet
diff --git a/sd/source/ui/slideshow/SlideShowRestarter.hxx b/sd/source/ui/slideshow/SlideShowRestarter.hxx
index 60c2c5601e59..a5098d20e642 100644
--- a/sd/source/ui/slideshow/SlideShowRestarter.hxx
+++ b/sd/source/ui/slideshow/SlideShowRestarter.hxx
@@ -37,7 +37,7 @@ namespace sd {
leads to a crash.
During a restart a possibly installed presenter extension is given the
- oportunity to show or hide depending on the number of available displays.
+ opportunity to show or hide depending on the number of available displays.
*/
class SlideShowRestarter
: public boost::enable_shared_from_this<SlideShowRestarter>
diff --git a/sd/source/ui/slideshow/slideshowimpl.cxx b/sd/source/ui/slideshow/slideshowimpl.cxx
index db32e511462f..a1f6fcea7964 100644
--- a/sd/source/ui/slideshow/slideshowimpl.cxx
+++ b/sd/source/ui/slideshow/slideshowimpl.cxx
@@ -1033,7 +1033,7 @@ bool SlideshowImpl::startShow( PresentationSettingsEx* pPresSettings )
getViewFrame()->SetChildWindow( SID_NAVIGATOR, maPresSettings.mbStartWithNavigator );
}
- // these Slots are forbiden in other views for this document
+ // these Slots are forbidden in other views for this document
if( mpDocSh )
{
mpDocSh->SetSlotFilter( true, sizeof( pAllowed ) / sizeof( sal_uInt16 ), pAllowed );
@@ -1893,7 +1893,7 @@ void SlideshowImpl::startUpdateTimer()
/** this timer is called 20ms after a new slide was displayed.
This is used to unfreeze user input that was disabled after
slide change to skip input that was buffered during slide
- transition preperation */
+ transition preparation */
IMPL_LINK( SlideshowImpl, ReadyForNextInputHdl, Timer*, EMPTYARG )
{
mbInputFreeze = false;
@@ -2818,7 +2818,7 @@ void SAL_CALL SlideshowImpl::activate() throw (RuntimeException)
if( pDispatcher )
{
- // filter all forbiden slots
+ // filter all forbidden slots
pDispatcher->SetSlotFilter( true, sizeof(pAllowed) / sizeof(sal_uInt16), pAllowed );
}
diff --git a/sd/source/ui/slidesorter/cache/SlsBitmapCache.hxx b/sd/source/ui/slidesorter/cache/SlsBitmapCache.hxx
index 297b24ea23ac..e90b8021fcf6 100644
--- a/sd/source/ui/slidesorter/cache/SlsBitmapCache.hxx
+++ b/sd/source/ui/slidesorter/cache/SlsBitmapCache.hxx
@@ -160,11 +160,11 @@ public:
@param bIncludePrecious
When this flag is <true/> entries with the precious flag set are
included in the index. When the flag is <false/> these entries
- are ommited.
+ are omitted.
@param bIncludeNoPreview
When this flag is <true/> entries with that have no preview
bitmaps are included in the index. When the flag is <false/> these entries
- are ommited.
+ are omitted.
*/
::std::auto_ptr<CacheIndex> GetCacheIndex (
bool bIncludePrecious,
diff --git a/sd/source/ui/slidesorter/cache/SlsQueueProcessor.hxx b/sd/source/ui/slidesorter/cache/SlsQueueProcessor.hxx
index 98304df48956..fa6aaf39ffb2 100644
--- a/sd/source/ui/slidesorter/cache/SlsQueueProcessor.hxx
+++ b/sd/source/ui/slidesorter/cache/SlsQueueProcessor.hxx
@@ -104,7 +104,7 @@ public:
void SetBitmapCache (const ::boost::shared_ptr<BitmapCache>& rpCache);
private:
- /** This mutex is used to guard the queue processor. Be carefull not to
+ /** This mutex is used to guard the queue processor. Be careful not to
mix its use with that of the solar mutex.
*/
::osl::Mutex maMutex;
diff --git a/sd/source/ui/slidesorter/cache/SlsQueueProcessorThread.hxx b/sd/source/ui/slidesorter/cache/SlsQueueProcessorThread.hxx
index 31a5bbe40c0b..50a76b32bac1 100644
--- a/sd/source/ui/slidesorter/cache/SlsQueueProcessorThread.hxx
+++ b/sd/source/ui/slidesorter/cache/SlsQueueProcessorThread.hxx
@@ -76,7 +76,7 @@ public:
void SAL_CALL Terminate (void);
protected:
- /** This virutal method is called (among others?) from the
+ /** This virtual method is called (among others?) from the
inherited create method and acts as the main function of this
thread.
*/
@@ -95,7 +95,7 @@ private:
volatile bool mbCanBeJoined;
- /** This mutex is used to guard the queue processor. Be carefull not to
+ /** This mutex is used to guard the queue processor. Be careful not to
mix its use with that of the solar mutex.
*/
::osl::Mutex maMutex;
diff --git a/sd/source/ui/slidesorter/controller/SlsFocusManager.cxx b/sd/source/ui/slidesorter/controller/SlsFocusManager.cxx
index 65df2748ceb5..7ebd8112a9e7 100644
--- a/sd/source/ui/slidesorter/controller/SlsFocusManager.cxx
+++ b/sd/source/ui/slidesorter/controller/SlsFocusManager.cxx
@@ -97,7 +97,7 @@ void FocusManager::MoveFocus (FocusMoveDirection eDirection)
{
if (mbIsVerticalWrapActive)
{
- // Wrap arround to the bottom row or the one above
+ // Wrap around to the bottom row or the one above
// and go to the correct column.
const sal_Int32 nLastIndex (nPageCount-1);
const sal_Int32 nLastColumn (nLastIndex % nColumnCount);
@@ -131,7 +131,7 @@ void FocusManager::MoveFocus (FocusMoveDirection eDirection)
{
if (mbIsVerticalWrapActive)
{
- // Wrap arround to the correct column.
+ // Wrap around to the correct column.
mnPageIndex = mnPageIndex % nColumnCount;
}
else
diff --git a/sd/source/ui/slidesorter/controller/SlsHideSlideFunction.cxx b/sd/source/ui/slidesorter/controller/SlsHideSlideFunction.cxx
index 4683385ca682..e7c39797884d 100644
--- a/sd/source/ui/slidesorter/controller/SlsHideSlideFunction.cxx
+++ b/sd/source/ui/slidesorter/controller/SlsHideSlideFunction.cxx
@@ -134,7 +134,7 @@ HideSlideFunction::ExclusionState HideSlideFunction::GetExclusionState (
switch (eState)
{
case UNDEFINED:
- // Use the first selected page to set the inital value.
+ // Use the first selected page to set the initial value.
eState = bState ? EXCLUDED : INCLUDED;
break;
diff --git a/sd/source/ui/slidesorter/controller/SlsListener.hxx b/sd/source/ui/slidesorter/controller/SlsListener.hxx
index 75589ca0d70d..f89c608ef8b2 100644
--- a/sd/source/ui/slidesorter/controller/SlsListener.hxx
+++ b/sd/source/ui/slidesorter/controller/SlsListener.hxx
@@ -82,7 +82,7 @@ public:
/** Connect to the current controller of the view shell as listener.
This method is called once during initialization and every time a
FrameActionEvent signals the current controller being exchanged.
- When the connection is successfull then the flag
+ When the connection is successful then the flag
mbListeningToController is set to <true/>.
*/
void ConnectToController (void);
@@ -154,7 +154,7 @@ private:
::com::sun::star::uno::WeakReference< ::com::sun::star::frame::XFrame> mxFrameWeak;
/** This object is used to lock the model between some
- events. It is refernce counted in order to cope with events that
+ events. It is references counted in order to cope with events that
are expected but never sent.
*/
::boost::shared_ptr<SlideSorterController::ModelChangeLock> mpModelChangeLock;
diff --git a/sd/source/ui/slidesorter/controller/SlsSelectionCommand.hxx b/sd/source/ui/slidesorter/controller/SlsSelectionCommand.hxx
index 1fa2fdd29008..76deb3bc58f4 100644
--- a/sd/source/ui/slidesorter/controller/SlsSelectionCommand.hxx
+++ b/sd/source/ui/slidesorter/controller/SlsSelectionCommand.hxx
@@ -52,7 +52,7 @@ class SelectionCommand
: public Command
{
public:
- /** Create a new command object that will on its exection use the given
+ /** Create a new command object that will on its execution use the given
PageSelector to select a set of pages.
*/
SelectionCommand (
diff --git a/sd/source/ui/slidesorter/controller/SlsSelectionFunction.cxx b/sd/source/ui/slidesorter/controller/SlsSelectionFunction.cxx
index 54152488c5c0..fa15caeb2e73 100644
--- a/sd/source/ui/slidesorter/controller/SlsSelectionFunction.cxx
+++ b/sd/source/ui/slidesorter/controller/SlsSelectionFunction.cxx
@@ -799,7 +799,7 @@ void SelectionFunction::ProcessKeyEvent (const KeyEvent& rEvent)
void SelectionFunction::ProcessEvent (EventDescriptor& rDescriptor)
{
// The call to ProcessEvent may switch to another mode handler.
- // Prevent the untimely destruction of the called handler by aquiring a
+ // Prevent the untimely destruction of the called handler by acquiring a
// temporary reference here.
::boost::shared_ptr<ModeHandler> pModeHandler (mpModeHandler);
pModeHandler->ProcessEvent(rDescriptor);
@@ -1882,7 +1882,7 @@ bool DragAndDropModeHandler::ProcessButtonUpEvent (
{
if (Match(rDescriptor.mnEventCode, BUTTON_UP | LEFT_BUTTON))
{
- // The following Process() call may lead to the desctruction
+ // The following Process() call may lead to the destruction
// of rDescriptor.mpHitDescriptor so release our reference to it.
rDescriptor.mpHitDescriptor.reset();
mrSelectionFunction.SwitchToNormalMode();
diff --git a/sd/source/ui/slidesorter/controller/SlsSlotManager.cxx b/sd/source/ui/slidesorter/controller/SlsSlotManager.cxx
index fa623cb44126..a53f585ace40 100644
--- a/sd/source/ui/slidesorter/controller/SlsSlotManager.cxx
+++ b/sd/source/ui/slidesorter/controller/SlsSlotManager.cxx
@@ -1307,7 +1307,7 @@ SlideExclusionState GetSlideExclusionState (model::PageEnumeration& rPageSet)
switch (eState)
{
case UNDEFINED:
- // Use the first selected page to set the inital value.
+ // Use the first selected page to set the initial value.
eState = bState ? EXCLUDED : INCLUDED;
break;
diff --git a/sd/source/ui/slidesorter/inc/controller/SlsAnimationFunction.hxx b/sd/source/ui/slidesorter/inc/controller/SlsAnimationFunction.hxx
index 9d011e192ac2..c93b04cd1023 100644
--- a/sd/source/ui/slidesorter/inc/controller/SlsAnimationFunction.hxx
+++ b/sd/source/ui/slidesorter/inc/controller/SlsAnimationFunction.hxx
@@ -39,7 +39,7 @@ class SlideSorterView;
namespace sd { namespace slidesorter { namespace controller {
-/** A collection of functions that are usefull when creating animations.
+/** A collection of functions that are useful when creating animations.
They are collected here until a better place is found.
*/
class AnimationFunction
diff --git a/sd/source/ui/slidesorter/inc/controller/SlsFocusManager.hxx b/sd/source/ui/slidesorter/inc/controller/SlsFocusManager.hxx
index 5f00e0f2e41d..ba829d6f4416 100644
--- a/sd/source/ui/slidesorter/inc/controller/SlsFocusManager.hxx
+++ b/sd/source/ui/slidesorter/inc/controller/SlsFocusManager.hxx
@@ -66,11 +66,11 @@ public:
/** Move the focus from the currently focused page to one that is
displayed adjacent to it, either vertically or horizontally.
@param eDirection
- Direction in which to move the focus. Wrap arround is done
+ Direction in which to move the focus. Wrap around is done
differently when moving vertically or horizontally. Vertical
- wrap arround takes place in the same column, i.e. when you are
+ wrap around takes place in the same column, i.e. when you are
in the top row and move up you come out in the bottom row in the
- same column. Horizontal wrap arround moves to the next
+ same column. Horizontal wrap around moves to the next
(FMD_RIGHT) or previous (FMD_LEFT) page. Moving to the right
from the last page goes to the first page and vice versa.
When FMD_NONE is given, the current page index is checked for
@@ -218,7 +218,7 @@ private:
const bool bScrollToFocus);
/** Call all currently registered listeners that a focus change has
- happended. The focus may be hidden or shown or moved from one page
+ happened. The focus may be hidden or shown or moved from one page
object to another.
*/
void NotifyFocusChangeListeners (void) const;
diff --git a/sd/source/ui/slidesorter/inc/controller/SlsPageSelector.hxx b/sd/source/ui/slidesorter/inc/controller/SlsPageSelector.hxx
index c2a1a3b192e3..4d439d894025 100644
--- a/sd/source/ui/slidesorter/inc/controller/SlsPageSelector.hxx
+++ b/sd/source/ui/slidesorter/inc/controller/SlsPageSelector.hxx
@@ -152,7 +152,7 @@ public:
When <TRUE/> (the default value) then after setting the
selection update the current page to the first page of the
selection.
- When called from withing UpdateCurrentPage() then this flag is
+ When called from within UpdateCurrentPage() then this flag is
used to prevent a recursion loop.
*/
void SetPageSelection (
diff --git a/sd/source/ui/slidesorter/inc/model/SlsPageDescriptor.hxx b/sd/source/ui/slidesorter/inc/model/SlsPageDescriptor.hxx
index e129fbbcecaa..09a711e0c685 100644
--- a/sd/source/ui/slidesorter/inc/model/SlsPageDescriptor.hxx
+++ b/sd/source/ui/slidesorter/inc/model/SlsPageDescriptor.hxx
@@ -65,7 +65,7 @@ public:
@param pPage
The page pointer can in some situations not be detected from
rxPage, e.g. after undo of page deletion. Therefore supply it
- seperately.
+ separately.
@param nIndex
This index is displayed in the view as page number. It is not
necessaryily the page index (not even when you add or subtract 1
diff --git a/sd/source/ui/slidesorter/inc/view/SlsLayouter.hxx b/sd/source/ui/slidesorter/inc/view/SlsLayouter.hxx
index 74d42709ea94..7786e1129305 100644
--- a/sd/source/ui/slidesorter/inc/view/SlsLayouter.hxx
+++ b/sd/source/ui/slidesorter/inc/view/SlsLayouter.hxx
@@ -50,7 +50,7 @@ class InsertPosition;
2.) Desired and minimal and maximal widths of page objects.
3.) Minimal and maximal number of columns.
4.) Vertical and horizontal gaps between objects in adjacent columns.
- 5.) Borders arround every page object.
+ 5.) Borders around every page object.
6.) Vertical and horizontal borders between enclosing page and outer
page objects.
From these it calculates various output values:
@@ -99,7 +99,7 @@ public:
sal_Int32 nTopBorder, sal_Int32 nBottomBorder);
/** Set the interval of valid column counts. When nMinimalColumnCount
- <= nMaximalColumnCount is not fullfilled then the call is ignored.
+ <= nMaximalColumnCount is not fulfilled then the call is ignored.
@param nMinimalColumnCount
The default value is 1. The question whether higher values make
any sense is left to the caller.
@@ -113,7 +113,7 @@ public:
calculates the output values. Both given sizes must not be 0 in any
dimension or the call is ignored.
@param eOrientation
- This defines the generaly layout and specifies whether there may
+ This defines the generally layout and specifies whether there may
be more than one row or more than one column.
@param rWindowSize
The size of the window in pixels that the slide sorter is
diff --git a/sd/source/ui/slidesorter/inc/view/SlsPageObjectViewObjectContact.hxx b/sd/source/ui/slidesorter/inc/view/SlsPageObjectViewObjectContact.hxx
index 1f710120df3f..ff74651fd6a7 100644
--- a/sd/source/ui/slidesorter/inc/view/SlsPageObjectViewObjectContact.hxx
+++ b/sd/source/ui/slidesorter/inc/view/SlsPageObjectViewObjectContact.hxx
@@ -99,7 +99,7 @@ public:
model::SharedPageDescriptor GetPageDescriptor (void) const;
/** Return the border widths in the screen coordinate system of the
- border arround the page object. The border contains frames for
+ border around the page object. The border contains frames for
selection, focus, the page name and number, and the indicator for
the page transition.
@param pDevice
diff --git a/sd/source/ui/slidesorter/model/SlsPageEnumeration.cxx b/sd/source/ui/slidesorter/model/SlsPageEnumeration.cxx
index 67e0dfc8d9b9..c52df38768c2 100644
--- a/sd/source/ui/slidesorter/model/SlsPageEnumeration.cxx
+++ b/sd/source/ui/slidesorter/model/SlsPageEnumeration.cxx
@@ -54,14 +54,14 @@ private:
/** This constructor sets the internal page index to the given value.
It does not call AdvanceToNextValidElement() to skip elements that
- do not fullfill Predicate.
+ do not fulfill Predicate.
*/
inline PageEnumerationImpl (
const SlideSorterModel& rModel,
const PageEnumeration::PagePredicate& rPredicate,
int nIndex);
- /** Skip all elements that do not fullfill Predicate starting with the
+ /** Skip all elements that do not fulfill Predicate starting with the
one pointed to by mnIndex.
*/
inline void AdvanceToNextValidElement (void);
@@ -262,7 +262,7 @@ void PageEnumerationImpl::AdvanceToNextValidElement (void)
{
SharedPageDescriptor pDescriptor (mrModel.GetPageDescriptor(mnIndex));
- // Test for the predicate being fullfilled.
+ // Test for the predicate being fulfilled.
if (pDescriptor.get()!=NULL && maPredicate(pDescriptor))
{
// This predicate is valid.
diff --git a/sd/source/ui/slidesorter/view/SlsButtonBar.cxx b/sd/source/ui/slidesorter/view/SlsButtonBar.cxx
index 9d9ad735b194..042af73be1ab 100644
--- a/sd/source/ui/slidesorter/view/SlsButtonBar.cxx
+++ b/sd/source/ui/slidesorter/view/SlsButtonBar.cxx
@@ -141,7 +141,7 @@ namespace {
};
/** The source mask is essentially multiplied with the given alpha value.
- The result is writen to the result mask.
+ The result is written to the result mask.
*/
void AdaptTransparency (AlphaMask& rMask, const AlphaMask& rSourceMask, const double nAlpha)
{
diff --git a/sd/source/ui/tools/PreviewRenderer.cxx b/sd/source/ui/tools/PreviewRenderer.cxx
index 907cab12bacc..175e1407f91d 100644
--- a/sd/source/ui/tools/PreviewRenderer.cxx
+++ b/sd/source/ui/tools/PreviewRenderer.cxx
@@ -395,7 +395,7 @@ void PreviewRenderer::PaintFrame (void)
{
if (mbHasFrame)
{
- // Paint a frame arround the preview.
+ // Paint a frame around the preview.
Rectangle aPaintRectangle (
Point(0,0),
mpPreviewDevice->GetOutputSizePixel());
@@ -510,7 +510,7 @@ Image PreviewRenderer::ScaleBitmap (
mpPreviewDevice->SetMapMode (aMapMode);
mpPreviewDevice->SetOutputSize (aFrameSize);
- // Paint a frame arround the preview.
+ // Paint a frame around the preview.
mpPreviewDevice->SetLineColor (maFrameColor);
mpPreviewDevice->SetFillColor ();
mpPreviewDevice->DrawRect (Rectangle(Point(0,0), aFrameSize));
diff --git a/sd/source/ui/unoidl/unopage.cxx b/sd/source/ui/unoidl/unopage.cxx
index 203e22fb31f2..8dcaf10e1d46 100644
--- a/sd/source/ui/unoidl/unopage.cxx
+++ b/sd/source/ui/unoidl/unopage.cxx
@@ -67,11 +67,7 @@
#include <svx/svdview.hxx>
#include "misc.hxx"
#include "View.hxx"
-#ifndef SVX_LIGHT
-#ifndef SD_DRAW_DOC_SHELL_HXX
#include "DrawDocShell.hxx"
-#endif
-#endif
#include "ViewShell.hxx"
#include "DrawViewShell.hxx"
#include "unoobj.hxx"
@@ -81,6 +77,7 @@
#include "unohelp.hxx"
#include <svx/globaldrawitempool.hxx>
#include <vcl/dibtools.hxx>
+#include <svx/svdograf.hxx>
using ::com::sun::star::animations::XAnimationNode;
using ::com::sun::star::animations::XAnimationNodeSupplier;
@@ -432,7 +429,20 @@ SdrObject * SdGenericDrawPage::_CreateSdrObject( const Reference< drawing::XShap
if( pObj && ( (pObj->GetObjInventor() != SdrInventor) || (pObj->GetObjIdentifier() != OBJ_PAGE) ) )
{
SdDrawDocument& rDoc = static_cast< SdDrawDocument& >(GetPage()->getSdrModelFromSdrPage());
- pObj->SetStyleSheet( rDoc.GetDefaultStyleSheet(), sal_True );
+ // #119287# similar to the code in the SdrObject methods the graphic and ole
+ // SdrObjects need another default style than the rest, see task. Adding here, too.
+ // TTTT: Same as for #119287#: Can be removed in branch aw080 again
+ const bool bIsSdrGrafObj(0 != dynamic_cast< SdrGrafObj* >(pObj));
+ const bool bIsSdrOle2Obj(0 != dynamic_cast< SdrOle2Obj* >(pObj));
+
+ if(bIsSdrGrafObj || bIsSdrOle2Obj)
+ {
+ pObj->SetStyleSheet(rDoc.GetDefaultStyleSheetForSdrGrafObjAndSdrOle2Obj(), sal_True);
+ }
+ else
+ {
+ pObj->SetStyleSheet(rDoc.GetDefaultStyleSheet(), sal_True);
+ }
}
return pObj;
}
diff --git a/sd/source/ui/view/DocumentRenderer.cxx b/sd/source/ui/view/DocumentRenderer.cxx
index 4139cc95ab40..13320571f062 100644
--- a/sd/source/ui/view/DocumentRenderer.cxx
+++ b/sd/source/ui/view/DocumentRenderer.cxx
@@ -115,7 +115,7 @@ namespace {
bool IsHandoutHorizontal (void) const
{
- return GetBoolValue("SlidesPerPageOrder", sal_Int32(0), true);
+ return GetBoolValue("SlidesPerPageOrder", NULL, true);
}
sal_Int32 GetHandoutPageCount (void) const
diff --git a/sd/source/ui/view/FormShellManager.cxx b/sd/source/ui/view/FormShellManager.cxx
index aa4bea53e09f..3fb73c91cdd1 100644
--- a/sd/source/ui/view/FormShellManager.cxx
+++ b/sd/source/ui/view/FormShellManager.cxx
@@ -224,7 +224,7 @@ void FormShellManager::UnregisterAtCenterPane (void)
IMPL_LINK(FormShellManager, FormControlActivated, FmFormShell*, EMPTYARG)
{
- // The form shell has been actived. To give it priority in reacting to
+ // The form shell has been activated. To give it priority in reacting to
// slot calls the form shell is moved to the top of the object bar shell
// stack.
ViewShell* pShell = mrBase.GetMainViewShell().get();
diff --git a/sd/source/ui/view/Outliner.cxx b/sd/source/ui/view/Outliner.cxx
index 04a1bc1f1037..b85ab6f0c893 100644
--- a/sd/source/ui/view/Outliner.cxx
+++ b/sd/source/ui/view/Outliner.cxx
@@ -454,7 +454,7 @@ sal_Bool Outliner::SpellNextDocument (void)
// found the loop is left through a break.
// It is the responsibility of the sd outliner object to correctly
// iterate over all text shapes, i.e. switch between views, wrap
- // arround at the end of the document, stop when all text shapes
+ // around at the end of the document, stop when all text shapes
// have been examined exactly once.
bool bFoundNextSentence = false;
while ( ! bFoundNextSentence)
@@ -614,7 +614,7 @@ void Outliner::Initialize (bool bDirectionIsForward)
}
else if (bOldDirectionIsForward != mbDirectionIsForward)
{
- // Requested iteration direction has changed. Turn arround the iterator.
+ // Requested iteration direction has changed. Turn around the iterator.
maObjectIterator.Reverse();
if (bIsAtEnd)
{
@@ -760,7 +760,7 @@ bool Outliner::SearchAndReplaceOnce (void)
{
mpDrawDocument->GetDocSh()->SetWaitCursor (false);
// The following loop is executed more then once only when a
- // wrap arround search is done.
+ // wrap around search is done.
while (true)
{
int nResult = pOutlinerView->StartSearchAndReplace(*mpSearchItem);
@@ -1104,7 +1104,7 @@ void Outliner::EndOfSearch (void)
ShowEndOfSearchDialog ();
mbEndOfSearch = true;
}
- // Ask the user whether to wrap arround and continue the search or
+ // Ask the user whether to wrap around and continue the search or
// to terminate.
else if (meMode==TEXT_CONVERSION || ShowWrapArroundDialog ())
{
@@ -1123,7 +1123,7 @@ void Outliner::EndOfSearch (void)
}
else
{
- // No wrap arround.
+ // No wrap around.
mbEndOfSearch = true;
}
}
@@ -1190,7 +1190,7 @@ bool Outliner::ShowWrapArroundDialog (void)
? STR_SAR_WRAP_BACKWARD
: STR_SAR_WRAP_BACKWARD_DRAW;
- // Pop up question box that asks the user whether to wrap arround.
+ // Pop up question box that asks the user whether to wrap around.
// The dialog is made modal with respect to the whole application.
QueryBox aQuestionBox (
NULL,
@@ -1287,7 +1287,7 @@ void Outliner::PrepareSearchAndReplace (void)
EnterEditMode ();
mpDrawDocument->GetDocSh()->SetWaitCursor( false );
- // Start seach at the right end of the current object's text
+ // Start search at the right end of the current object's text
// depending on the search direction.
OutlinerView* pOutlinerView = mpImpl->GetOutlinerView();
if (pOutlinerView != NULL)
@@ -1491,7 +1491,7 @@ bool Outliner::HandleFailedSearch (void)
if (pOutlinerView != NULL && mpSearchItem != NULL)
{
// Detect whether there is/may be a prior match. If there is then
- // ask the user whether to wrap arround. Otherwise tell the user
+ // ask the user whether to wrap around. Otherwise tell the user
// that there is no match.
if (HasNoPreviousMatch ())
{
@@ -1504,7 +1504,7 @@ bool Outliner::HandleFailedSearch (void)
else
{
// No further matches found. Ask the user whether to wrap
- // arround and start again.
+ // around and start again.
bContinueSearch = ShowWrapArroundDialog ();
}
}
@@ -1627,7 +1627,7 @@ void Outliner::PrepareConversion (void)
EnterEditMode ();
mpDrawDocument->GetDocSh()->SetWaitCursor( false );
- // Start seach at the right end of the current object's text
+ // Start search at the right end of the current object's text
// depending on the search direction.
// mpOutlineView->SetSelection (GetSearchStartPosition ());
}
@@ -1702,7 +1702,7 @@ sal_Bool Outliner::ConvertNextDocument()
mpDrawDocument->GetDocSh()->SetWaitCursor( false );
ClearModifyFlag();
- // for text conversion we automaticly wrap around one
+ // for text conversion we automatically wrap around one
// time and stop at the start shape
if( mpFirstObj )
{
diff --git a/sd/source/ui/view/ToolBarManager.cxx b/sd/source/ui/view/ToolBarManager.cxx
index 8dddbfc3c0e6..0719a6960f4c 100644
--- a/sd/source/ui/view/ToolBarManager.cxx
+++ b/sd/source/ui/view/ToolBarManager.cxx
@@ -125,7 +125,7 @@ private:
list the current list and clears the current list.
Each shell belongs to one group. Different groups can be modified
- seperately.
+ separately.
*/
class ToolBarShellList
{
diff --git a/sd/source/ui/view/drtxtob.cxx b/sd/source/ui/view/drtxtob.cxx
index 58c602b58537..3624d4435025 100644
--- a/sd/source/ui/view/drtxtob.cxx
+++ b/sd/source/ui/view/drtxtob.cxx
@@ -421,7 +421,7 @@ void TextObjectBar::GetAttrState( SfxItemSet& rSet )
{
rSet.DisableItem( SID_THES );
}
- //! avoid puting the same item as SfxBoolItem at the end of this function
+ //! avoid putting the same item as SfxBoolItem at the end of this function
nSlotId = 0;
}
break;
diff --git a/sd/source/ui/view/drviews2.cxx b/sd/source/ui/view/drviews2.cxx
index 0a63c00c494f..4a5d2f660f2f 100644
--- a/sd/source/ui/view/drviews2.cxx
+++ b/sd/source/ui/view/drviews2.cxx
@@ -686,6 +686,9 @@ void DrawViewShell::FuTemporary(SfxRequest& rReq)
mpDrawView->DeleteMarkedObj();
}
+ // #124816# copy layer from lowest object which gets replaced
+ pGraphicObj->SetLayer(pReplacementCandidate->GetLayer());
+
// now replace lowest object with new one
mpDrawView->ReplaceObjectAtView(*pReplacementCandidate, *pGraphicObj);
diff --git a/sd/source/ui/view/frmview.cxx b/sd/source/ui/view/frmview.cxx
index ac5e44fd1d3a..c4b9739444d1 100644
--- a/sd/source/ui/view/frmview.cxx
+++ b/sd/source/ui/view/frmview.cxx
@@ -561,7 +561,7 @@ void FrameView::WriteUserDataSequence ( ::com::sun::star::uno::Sequence < ::com:
// pValue++;nIndex++;
aUserData.addValue( sUNO_View_SlidesPerRow, makeAny( (sal_Int16)GetSlidesPerRow() ) );
-/* #107128# Product managment decided to not make this persistent
+/* #107128# Product management decided to not make this persistent
aUserData.addValue( sUNO_View_DrawMode, makeAny( (sal_Int32)GetDrawMode() ) );
aUserData.addValue( sUNO_View_PreviewDrawMode, makeAny( (sal_Int32)GetPreviewDrawMode() ) );
*/
@@ -803,7 +803,7 @@ void FrameView::ReadUserDataSequence ( const ::com::sun::star::uno::Sequence < :
SetSlidesPerRow( (sal_uInt16)nInt16 );
}
}
-/* #107128# Product managment decided to not make this persistent
+/* #107128# Product management decided to not make this persistent
else if (pValue->Name.equalsAsciiL( RTL_CONSTASCII_STRINGPARAM( sUNO_View_DrawMode ) ) )
{
if( pValue->Value >>= nInt32 )
diff --git a/sd/source/ui/view/sdview.cxx b/sd/source/ui/view/sdview.cxx
index 883a3cf4cd71..6ebca15c9483 100644
--- a/sd/source/ui/view/sdview.cxx
+++ b/sd/source/ui/view/sdview.cxx
@@ -859,7 +859,7 @@ SdrEndTextEditKind View::SdrEndTextEdit(bool bDontDeleteReally )
// --------------------------------------------------------------------
/** restores the default text if the given text object is currently in edit mode and
- no text has been entered already. Is only usefull just before text edit ends. */
+ no text has been entered already. Is only useful just before text edit ends. */
bool View::RestoreDefaultText( SdrTextObj* pTextObj )
{
bool bRestored = false;
diff --git a/sd/source/ui/view/viewshel.cxx b/sd/source/ui/view/viewshel.cxx
index efcb5d8c1a4b..ac118cfad934 100644
--- a/sd/source/ui/view/viewshel.cxx
+++ b/sd/source/ui/view/viewshel.cxx
@@ -1094,7 +1094,7 @@ void ViewShell::SetDefTabHRuler( sal_uInt16 nDefTab )
/** Tell the FmFormShell that the view shell is closing. Give it the
- oportunity to prevent that.
+ opportunity to prevent that.
*/
sal_uInt16 ViewShell::PrepareClose (bool bUI, bool bForBrowsing)
{
@@ -1114,7 +1114,7 @@ void ViewShell::UpdatePreview (SdPage*, bool )
{
// Do nothing. After the actual preview has been removed,
// OutlineViewShell::UpdatePreview() is the place where something
- // usefull is still done.
+ // useful is still done.
}
::svl::IUndoManager* ViewShell::ImpGetUndoManager (void) const
diff --git a/sdext/source/minimizer/optimizerdialog.cxx b/sdext/source/minimizer/optimizerdialog.cxx
index 5228513783ce..3c9b4e30e604 100644
--- a/sdext/source/minimizer/optimizerdialog.cxx
+++ b/sdext/source/minimizer/optimizerdialog.cxx
@@ -42,7 +42,7 @@
#define URL_GRAPHIC_REPO "private:graphicrepository"
#define IMAGE_ROADMAP URL_GRAPHIC_REPO "/minimizer/minimizepresi_80.png"
-#define IMAGE_ROADMAP_HC URL_GRAPHIC_REPO "/minimizer/minimizepresi_80.png"
+#define IMAGE_ROADMAP_HC URL_GRAPHIC_REPO "/minimizer/minimizepresi_80_h.png"
// -------------------
// - OPTIMIZERDIALOG -
diff --git a/sdext/source/pdfimport/inc/pdfparse.hxx b/sdext/source/pdfimport/inc/pdfparse.hxx
index 49379c105c4d..62a50b4f0f56 100644
--- a/sdext/source/pdfimport/inc/pdfparse.hxx
+++ b/sdext/source/pdfimport/inc/pdfparse.hxx
@@ -198,7 +198,7 @@ struct PDFDict : public PDFContainer
// removes a name/value pair from the dict
void eraseValue( const rtl::OString& rName );
// builds new map as of sub elements
- // returns NULL if successfull, else the first offending element
+ // returns NULL if successful, else the first offending element
PDFEntry* buildMap();
};
diff --git a/sdext/source/presenter/PresenterFrameworkObserver.hxx b/sdext/source/presenter/PresenterFrameworkObserver.hxx
index da703abbd4fc..5ae53478012b 100644
--- a/sdext/source/presenter/PresenterFrameworkObserver.hxx
+++ b/sdext/source/presenter/PresenterFrameworkObserver.hxx
@@ -54,7 +54,7 @@ public:
/** Register an action callback to be run when the specified resource is
activated. The action may be called synchronously when the resource
- is already active or asynchronously when the resource is actived in
+ is already active or asynchronously when the resource is activated in
the future.
@param rxController
The controller gives access to the drawing framework.
diff --git a/sdext/source/presenter/PresenterScreen.cxx b/sdext/source/presenter/PresenterScreen.cxx
index 99fa57b52f5d..4638c5c80caf 100644
--- a/sdext/source/presenter/PresenterScreen.cxx
+++ b/sdext/source/presenter/PresenterScreen.cxx
@@ -464,7 +464,7 @@ void PresenterScreen::InitializePresenterScreen (void)
// own full screen window that is controlled by the same
// configuration controller as the Impress document from
// which the presentation was started. Therefore the main
- // pane is actived additionally to the already existing
+ // pane is activated additionally to the already existing
// panes and does not replace them.
xCC->requestResourceActivation(
xMainPaneId,
diff --git a/sdext/source/presenter/PresenterSlidePreview.cxx b/sdext/source/presenter/PresenterSlidePreview.cxx
index 092efb7cf94d..47abd3cb7ef3 100644
--- a/sdext/source/presenter/PresenterSlidePreview.cxx
+++ b/sdext/source/presenter/PresenterSlidePreview.cxx
@@ -43,7 +43,7 @@ using ::rtl::OUString;
namespace
{
- // Use a super sample factor greater than 1 to achive a poor mans
+ // Use a super sample factor greater than 1 to achieve a poor mans
// antialiasing effect for slide previews.
const sal_Int16 gnSuperSampleFactor = 2;
}
diff --git a/sdext/source/presenter/PresenterSlideShowView.cxx b/sdext/source/presenter/PresenterSlideShowView.cxx
index 08b018c1ed30..39ba42b2677b 100644
--- a/sdext/source/presenter/PresenterSlideShowView.cxx
+++ b/sdext/source/presenter/PresenterSlideShowView.cxx
@@ -167,7 +167,7 @@ void PresenterSlideShowView::LateInit (void)
{
Reference<presentation::XSlideShowView> xView (this);
mxSlideShow->addView(xView);
- // Prevent embeded sounds being played twice at the same time by
+ // Prevent embedded sounds being played twice at the same time by
// disabling sound for the new slide show view.
beans::PropertyValue aProperty;
aProperty.Name = A2S("IsSoundEnabled");
diff --git a/sdext/source/presenter/PresenterSlideSorter.cxx b/sdext/source/presenter/PresenterSlideSorter.cxx
index a38ce06f3271..13df5ae10e21 100644
--- a/sdext/source/presenter/PresenterSlideSorter.cxx
+++ b/sdext/source/presenter/PresenterSlideSorter.cxx
@@ -1294,7 +1294,7 @@ void PresenterSlideSorter::Layout::Update (
// Determine column count, preview width, and horizontal gap (borders
// are half the gap). Try to use the preferred values. Try more to
// stay in the valid intervalls. This last constraint may be not
- // fullfilled in some cases.
+ // fulfilled in some cases.
const double nElementWidth = nWidth / gnPreferredColumnCount;
if (nElementWidth < gnMinimalPreviewWidth + gnMinimalHorizontalPreviewGap)
{
diff --git a/sdext/source/presenter/PresenterViewFactory.hxx b/sdext/source/presenter/PresenterViewFactory.hxx
index bc697eeee349..f428c70f554e 100644
--- a/sdext/source/presenter/PresenterViewFactory.hxx
+++ b/sdext/source/presenter/PresenterViewFactory.hxx
@@ -62,7 +62,7 @@ public:
virtual void DeactivatePresenterView (void);
/** Called before the view is disposed. This gives the view the
- oportunity to trigger actions that may lead to (synchronous)
+ opportunity to trigger actions that may lead to (synchronous)
callbacks that do not result in DisposedExceptions.
*/
virtual void ReleaseView (void);
diff --git a/set_soenv.in b/set_soenv.in
index 2364a6084825..5cd279f83039 100644
--- a/set_soenv.in
+++ b/set_soenv.in
@@ -105,7 +105,7 @@ my ( $oldPATH, $SRC_ROOT, $SO_HOME, $JAVA_HOME, $JDK, $JAVAFLAGS, $OOO_SHELL,
$WIN_GNUCOPY, $WIN_TOUCH, $MOZILLABUILD,
$PROEXT, $TARFILE_LOCATION,
$ENABLE_HUNSPELL, $ENABLE_HYPHEN,
- $SYSTEM_PYTHON, $EPM_FLAGS);
+ $SYSTEM_PYTHON, $EPM_FLAGS, $ENABLE_UNIT_TESTS);
#
#-------------------------------------------
# IId. Declaring the aliases.
@@ -397,6 +397,46 @@ elsif ( $platform =~ m/freebsd/ )
$JRETOOLKITDIR = '$JAVA_HOME'.$ds."jre".$ds."lib".$ds."i386".$ds."client";
$JRETHREADDIR = '$JAVA_HOME'.$ds."jre".$ds."lib".$ds."i386".$ds."native_threads";
}
+ elsif ($platform =~ m/^powerpc/)
+ {
+ if (($platform =~ m/^powerpc64/) && ('@SIZEOF_LONG@' eq '8')) {
+ print "Setting FreeBSD PPC64 specific values... ";
+ $outfile = "FreeBSDPPC64Env.Set";
+ $OUTPATH = "unxfbsdppc64";
+ $CPUNAME = "POWERPC64";
+
+ if ( $JDK eq "gcj" ) {
+ $JRELIBDIR = '$JAVA_HOME'.$ds."jre".$ds."lib".$ds."ppc64";
+ $JRETOOLKITDIR = '$JAVA_HOME'.$ds."jre".$ds."lib".$ds."ppc64".$ds."client";
+ $JRETHREADDIR = '$JAVA_HOME'.$ds."jre".$ds."lib".$ds."ppc64".$ds."native_threads";
+ }
+ }
+ else {
+ print "Setting FreeBSD PPC specific values... ";
+ $outfile = "FreeBSDPPCEnv.Set";
+ $OUTPATH = "unxlngppc";
+ $CPUNAME = "POWERPC";
+
+ if ( $JDK eq "gcj" ) {
+ $JRELIBDIR = '$JAVA_HOME'.$ds."jre".$ds."lib".$ds."ppc";
+ $JRETOOLKITDIR = '$JAVA_HOME'.$ds."jre".$ds."lib".$ds."ppc".$ds."client";
+ $JRETHREADDIR = '$JAVA_HOME'.$ds."jre".$ds."lib".$ds."ppc".$ds."native_threads"; }
+ elsif ($JDK =~ m/^[Ii][Bb][Mm]/)
+ { $JRELIBDIR = '$JAVA_HOME'.$ds."jre".$ds."lib".$ds."ppc";
+ $JRETOOLKITDIR = '$JAVA_HOME'.$ds."jre".$ds."lib".$ds."ppc".$ds."classic";
+ $JRETHREADDIR = '$JAVA_HOME'.$ds."jre".$ds."lib".$ds."ppc";
+ }
+ # OpenJDK
+ elsif ($JDK =~ m/sun/) {
+ $JRELIBDIR = '$JAVA_HOME'.$ds."jre".$ds."lib".$ds."ppc";
+ $JRETOOLKITDIR = '$JAVA_HOME'.$ds."jre".$ds."lib".$ds."ppc".$ds."server";
+ $JRETHREADDIR = '$JAVA_HOME'.$ds."jre".$ds."lib".$ds."ppc".$ds."native_threads";
+ }
+ }
+
+ $CPU = "P";
+
+ }
else
{ print "Unsupported FreeBSD architecture: $platform \n";
exit 1;
@@ -1441,7 +1481,8 @@ elsif ($platform =~ m/cygwin/)
elsif ($platform =~ m/darwin/)
{
$FRAMEWORKSHOME = "@MACOSX_SDK_PATH@/System/Library/Frameworks";
- my $STLINC .= $I."/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/c++/v1/";
+ chomp( my $TOOLSPATH = `xcode-select --print-path` );
+ my $STLINC .= $I."$TOOLSPATH/Toolchains/XcodeDefault.xctoolchain/usr/lib/c++/v1/";
$SOLARINC .= $STLINC . $I.$FRAMEWORKSHOME.$ds."JavaVM.framework".$ds."Headers";
$GUIBASE = "aqua";
}
@@ -1860,6 +1901,7 @@ ToFile( "SYSTEM_CPPUNIT", "@SYSTEM_CPPUNIT@", "e" );
ToFile( "CPPUNIT_CFLAGS", "@CPPUNIT_CFLAGS@", "e" );
ToFile( "CPPUNIT_LIBS", "@CPPUNIT_LIBS@", "e" );
ToFile( "WITH_CPPUNIT", "@WITH_CPPUNIT@", "e" );
+ToFile( "ENABLE_UNIT_TESTS", "@ENABLE_UNIT_TESTS@", "e" );
ToFile( "SYSTEM_LIBXML", "@SYSTEM_LIBXML@", "e" );
ToFile( "USE_FT_EMBOLDEN", "@USE_FT_EMBOLDEN@", "e" );
ToFile( "LIBXML_CFLAGS", "@LIBXML_CFLAGS@", "e" );
diff --git a/setup_native/scripts/admin.pl b/setup_native/scripts/admin.pl
index cc94ad943376..f62cbe881b18 100644
--- a/setup_native/scripts/admin.pl
+++ b/setup_native/scripts/admin.pl
@@ -143,7 +143,7 @@ sub controlparameter
#############################################################################
# The program msidb.exe can be located next to the Perl program. Then it is
-# not neccessary to find it in the PATH variable.
+# not necessary to find it in the PATH variable.
#############################################################################
sub check_local_msidb
@@ -263,7 +263,7 @@ sub check_system_path
}
##########################################################################
-# Searching a file in a list of pathes
+# Searching a file in a list of paths
##########################################################################
sub get_sourcepath_from_filename_and_includepath
@@ -843,7 +843,7 @@ sub create_directory_structure
foreach $dir (@startparents) { create_directory_tree($dir, \%fullpathhash, $targetdir, $dirhash); }
- # Also adding the pathes of the startparents
+ # Also adding the paths of the startparents
foreach $dir (@startparents)
{
if ( ! exists($fullpathhash{$dir}) ) { $fullpathhash{$dir} = $targetdir; }
diff --git a/setup_native/scripts/deregister_extensions b/setup_native/scripts/deregister_extensions
index 925d89dbb2f0..379fcaf0f3bf 100644
--- a/setup_native/scripts/deregister_extensions
+++ b/setup_native/scripts/deregister_extensions
@@ -47,7 +47,7 @@ help()
# if [ $UID -ne 0 ]
# then
-# printf "\nThis script is for installation only wiht administrative rights only\n"
+# printf "\nThis script is for installation only with administrative rights only\n"
# help
# exit 2
# fi
diff --git a/setup_native/scripts/register_extensions b/setup_native/scripts/register_extensions
index 73154201b2a7..68349490bc45 100644
--- a/setup_native/scripts/register_extensions
+++ b/setup_native/scripts/register_extensions
@@ -49,7 +49,7 @@ help()
# if [ $UID -ne 0 ]
# then
-# printf "\nThis script is for installation only wiht administrative rights only\n"
+# printf "\nThis script is for installation only with administrative rights only\n"
# help
# exit 2
# fi
diff --git a/setup_native/source/opensolaris/bundledextensions/README b/setup_native/source/opensolaris/bundledextensions/README
index c552794f69ea..17e50fca49c1 100644
--- a/setup_native/source/opensolaris/bundledextensions/README
+++ b/setup_native/source/opensolaris/bundledextensions/README
@@ -50,7 +50,7 @@ already been installed with unopkg. This will prevent to reinstall those
extensions whenever the service is restarted.
When a new version of OOo becomes available, then the respective OOo package
-containes a new version of 'installed'. That is, it contains a version string,
+contains a new version of 'installed'. That is, it contains a version string,
such as 3.2.0. The sole reason for that string is, to change the content of this
file in every release. Otherwise IPS would not replace the installed version of
'installed' with the one contained in the package.
diff --git a/setup_native/source/opensolaris/bundledextensions/svc-ooo_bundled_extensions b/setup_native/source/opensolaris/bundledextensions/svc-ooo_bundled_extensions
index 1f1b76e14649..6b8c9a7de54c 100644
--- a/setup_native/source/opensolaris/bundledextensions/svc-ooo_bundled_extensions
+++ b/setup_native/source/opensolaris/bundledextensions/svc-ooo_bundled_extensions
@@ -107,7 +107,7 @@ case "$1" in
# done
# #Write the new list to the file "installed". It now has all names
-# #remove which refered to previously removed extensions (removed
+# #remove which referred to previously removed extensions (removed
# #from .../share/extension/install)
# if [ "$REMOVED" ]; then
# #remove the last empty line
diff --git a/setup_native/source/win32/customactions/patch/swappatchfiles.cxx b/setup_native/source/win32/customactions/patch/swappatchfiles.cxx
index 56c9404e5a77..f77624ff270c 100644
--- a/setup_native/source/win32/customactions/patch/swappatchfiles.cxx
+++ b/setup_native/source/win32/customactions/patch/swappatchfiles.cxx
@@ -87,7 +87,7 @@ static std::_tstring GetMsiProperty( MSIHANDLE handle, const std::_tstring& sPro
return result;
}
-// The provided GUID must be without surounding '{}'
+// The provided GUID must be without surrounding '{}'
static std::_tstring GetGuidPart(const std::_tstring& guid, int index)
{
assert((guid.length() == 36) && "No GUID or wrong format!");
diff --git a/setup_native/source/win32/customactions/reg4msdoc/registrar.cxx b/setup_native/source/win32/customactions/reg4msdoc/registrar.cxx
index e91838459fae..0771c707ee2f 100644
--- a/setup_native/source/win32/customactions/reg4msdoc/registrar.cxx
+++ b/setup_native/source/win32/customactions/reg4msdoc/registrar.cxx
@@ -331,7 +331,7 @@ bool Registrar::QueryPreselectMsPowerPointRegistration() const
HKCR\.htm\OpenWithList\App Friendly Name\shell\edit\command
But the reality shows that this works only
with Internet Explorer 5.x
- Internet Explorer 6.0 wants the follwoing
+ Internet Explorer 6.0 wants the following
entries:
HKCR\.htm\OpenWithList\App.exe
HKCR\Applications\App.ex\shell\edit\command
diff --git a/setup_native/source/win32/customactions/reg4msdoc/userregistrar.cxx b/setup_native/source/win32/customactions/reg4msdoc/userregistrar.cxx
index fc96381da7f4..4e07faf35440 100644
--- a/setup_native/source/win32/customactions/reg4msdoc/userregistrar.cxx
+++ b/setup_native/source/win32/customactions/reg4msdoc/userregistrar.cxx
@@ -148,7 +148,7 @@ RegistryKey UserRegistrar::GetRootKeyForDefHtmlEditorForIERegistration() const
void UserRegistrar::DeleteHtmFileAssociationKeys() const
{
// Later delete the created keys if they are empty and have not changed meanwhile.
- // Remeber: if we create a new registry key in the user part of the
+ // Remember: if we create a new registry key in the user part of the
// registry, changes to that key via the merged key HKEY_CLASSES_ROOT
// go into the user branch HKEY_CURRENT_USER and are not visible for other users.
// so we must carefully detect if the keys have not changed in order to prevent accidentally
diff --git a/setup_native/source/win32/customactions/shellextensions/completeinstallpath.cxx b/setup_native/source/win32/customactions/shellextensions/completeinstallpath.cxx
index b5370eb07cc5..f0ea27896648 100644
--- a/setup_native/source/win32/customactions/shellextensions/completeinstallpath.cxx
+++ b/setup_native/source/win32/customactions/shellextensions/completeinstallpath.cxx
@@ -100,7 +100,7 @@ extern "C" UINT __stdcall CompleteInstallPath( MSIHANDLE handle )
}
// If the path INSTALLLOCATION does not end with this string, INSTALLLOCATION is maybe
- // transfered from an OOo 3.0, OOo 3.1 and OOo 3.2 and need to be changed therefore.
+ // transferred from an OOo 3.0, OOo 3.1 and OOo 3.2 and need to be changed therefore.
if ( pathCompletionRequired )
{
diff --git a/setup_native/source/win32/customactions/shellextensions/upgrade.cxx b/setup_native/source/win32/customactions/shellextensions/upgrade.cxx
index ffc43bbda6f0..559252a2fd38 100644
--- a/setup_native/source/win32/customactions/shellextensions/upgrade.cxx
+++ b/setup_native/source/win32/customactions/shellextensions/upgrade.cxx
@@ -46,7 +46,7 @@ using namespace std;
namespace
{
- // The provided GUID must be without surounding '{}'
+ // The provided GUID must be without surrounding '{}'
string GetGuidPart(const string& guid, int index)
{
assert((guid.length() == 36) && "No GUID or wrong format!");
diff --git a/sfx2/inc/sfx2/docmacromode.hxx b/sfx2/inc/sfx2/docmacromode.hxx
index c716b0e428e5..cf9e9ac6729c 100644
--- a/sfx2/inc/sfx2/docmacromode.hxx
+++ b/sfx2/inc/sfx2/docmacromode.hxx
@@ -107,7 +107,7 @@ namespace sfx2
virtual ::rtl::OUString
getDocumentLocation() const = 0;
- /** returns a zip-storage based on the last commited version of the document,
+ /** returns a zip-storage based on the last committed version of the document,
for readonly access
The storage is intended to be used for signing. An implementation is
diff --git a/sfx2/inc/sfx2/objsh.hxx b/sfx2/inc/sfx2/objsh.hxx
index cda7eb3ae561..dc2826139f8b 100644
--- a/sfx2/inc/sfx2/objsh.hxx
+++ b/sfx2/inc/sfx2/objsh.hxx
@@ -214,8 +214,16 @@ private:
sal_Bool bHasName :1, // sal_True := bestehendes Objekt, sal_False := es ist ein neues Objekt
bIsTmp :1; // temp. Storage
sal_Bool bIsInGenerateThumbnail; //optimize thumbnail generate and store procedure to improve odt saving performance, i120030
- virtual void BeforeLoading( SfxMedium&, const ::rtl::OUString &, const ::rtl::OUString & ){};
- virtual void AfterLoading( SfxMedium&, const ::rtl::OUString &, const ::rtl::OUString & ){};
+
+protected:
+ // methods called in implementation of <ImportFrom(..)>
+ virtual void BeforeLoading( SfxMedium&, const ::rtl::OUString &, const ::rtl::OUString & )
+ {
+ };
+
+ virtual void AfterLoading( SfxMedium&, const ::rtl::OUString &, const ::rtl::OUString & )
+ {
+ };
private:
//#if 0 // _SOLAR__PRIVATE
diff --git a/sfx2/inc/sfx2/sfxbasemodel.hxx b/sfx2/inc/sfx2/sfxbasemodel.hxx
index 0af678a5ee18..2bdc403759c7 100644
--- a/sfx2/inc/sfx2/sfxbasemodel.hxx
+++ b/sfx2/inc/sfx2/sfxbasemodel.hxx
@@ -386,7 +386,7 @@ public:
/**___________________________________________________________________________________________________
@short get implementation id
- @descr This ID is neccessary for UNO-caching. If there no ID, cache is disabled.
+ @descr This ID is necessary for UNO-caching. If there no ID, cache is disabled.
Another way, cache is enabled.
@seealso XTypeProvider
diff --git a/sfx2/inc/sfx2/sfxsids.hrc b/sfx2/inc/sfx2/sfxsids.hrc
index 2b5e8044a706..801e18e100a7 100644
--- a/sfx2/inc/sfx2/sfxsids.hrc
+++ b/sfx2/inc/sfx2/sfxsids.hrc
@@ -837,6 +837,7 @@
#define SID_OPT_MIDDLE_MOUSE (SID_OPTIONS_START + 97)
#define SID_ATTR_PRETTYPRINTING (SID_OPTIONS_START + 98)
#define SID_HELP_STYLESHEET (SID_OPTIONS_START + 99)
+#define SID_ATTR_ODFENCRYPTION (SID_OPTIONS_START + 100)
// slot IDs from SVX (svxids.hrc) ---------------------------------------------
diff --git a/sfx2/inc/sfx2/titledockwin.hxx b/sfx2/inc/sfx2/titledockwin.hxx
index 0a76023caf36..b12a71ee22a6 100644
--- a/sfx2/inc/sfx2/titledockwin.hxx
+++ b/sfx2/inc/sfx2/titledockwin.hxx
@@ -145,7 +145,7 @@ namespace sfx2
Link m_aEndDockingHdl;
- /** The border that is painted arround the inner window. The bevel
+ /** The border that is painted around the inner window. The bevel
shadow lines are part of the border, so where the border is 0 no
such line is painted.
*/
diff --git a/sfx2/qa/complex/sfx2/DocumentProperties.java b/sfx2/qa/complex/sfx2/DocumentProperties.java
index fde9ccfc1e7f..beda027fb445 100644
--- a/sfx2/qa/complex/sfx2/DocumentProperties.java
+++ b/sfx2/qa/complex/sfx2/DocumentProperties.java
@@ -277,7 +277,7 @@ public class DocumentProperties
xDP.setModificationDate(dt);
assertTrue("setModificationDate",
dt.Year == xDP.getModificationDate().Year);
- str = "i didnt do it";
+ str = "i didn't do it";
xDP.setPrintedBy(str);
assertTrue("setPrintedBy", str.equals(xDP.getPrintedBy()));
dt.Year = 2024;
@@ -338,7 +338,7 @@ public class DocumentProperties
// differently some day...
boolean b = true;
double d = 3.1415;
- // note that Time is only supported for backward compatibilty!
+ // note that Time is only supported for backward compatibility!
Time t = new Time();
t.Hours = 1;
t.Minutes = 16;
diff --git a/sfx2/source/appl/appcfg.cxx b/sfx2/source/appl/appcfg.cxx
index 892dfbb7def6..c7e4b2c8e5bc 100644
--- a/sfx2/source/appl/appcfg.cxx
+++ b/sfx2/source/appl/appcfg.cxx
@@ -205,6 +205,16 @@ sal_Bool SfxApplication::GetOptions( SfxItemSet& rSet )
bRet = sal_False;
}
break;
+ case SID_ATTR_ODFENCRYPTION:
+ {
+ bRet = sal_True;
+ if (!aSaveOptions.IsReadOnly(SvtSaveOptions::E_USESHA1INODF12) &&
+ !aSaveOptions.IsReadOnly(SvtSaveOptions::E_USEBLOWFISHINODF12))
+ if (!rSet.Put( SfxBoolItem( rPool.GetWhich( SID_ATTR_ODFENCRYPTION ),
+ !(aSaveOptions.IsUseSHA1InODF12() && aSaveOptions.IsUseBlowfishInODF12()))))
+ bRet = sal_False;
+ }
+ break;
case SID_ATTR_PRETTYPRINTING:
{
bRet = sal_True;
@@ -563,6 +573,16 @@ void SfxApplication::SetOptions_Impl( const SfxItemSet& rSet )
aSaveOptions.SetBackup( ( (const SfxBoolItem*)pItem )->GetValue() );
}
+ // ODF Encryption
+ if ( SFX_ITEM_SET == rSet.GetItemState( rPool.GetWhich( SID_ATTR_ODFENCRYPTION ), sal_True, &pItem ) )
+ {
+ DBG_ASSERT(dynamic_cast< const SfxBoolItem* >(pItem), "BoolItem expected");
+ sal_Bool bItemValue = static_cast< const SfxBoolItem*>(pItem)->GetValue();
+
+ aSaveOptions.SetUseSHA1InODF12( !bItemValue );
+ aSaveOptions.SetUseBlowfishInODF12( !bItemValue );
+ }
+
// PrettyPrinting
if ( SFX_ITEM_SET == rSet.GetItemState( rPool.GetWhich( SID_ATTR_PRETTYPRINTING ), sal_True, &pItem ) )
{
diff --git a/sfx2/source/appl/appinit.cxx b/sfx2/source/appl/appinit.cxx
index f0aa20ecf110..11d1bdcfbbf9 100644
--- a/sfx2/source/appl/appinit.cxx
+++ b/sfx2/source/appl/appinit.cxx
@@ -172,8 +172,8 @@ void SAL_CALL SfxTerminateListener_Impl::notifyTermination( const EventObject& a
Sequence< ::rtl::OUString > SAL_CALL SfxTerminateListener_Impl::getSupportedServiceNames() throw (RuntimeException)
{
- // Note: That service does not realy exists .-)
- // But this implementation is not thought to be registered realy within our service.rdb.
+ // Note: That service does not really exists .-)
+ // But this implementation is not thought to be registered really within our service.rdb.
// At least we need the implementation name only to identify these service at the global desktop instance.
// The desktop must know, which listener will terminate the SfxApplication in real !
// It must call this special listener as last one ... otherwise we shutdown the SfxApplication BEFORE other listener
diff --git a/sfx2/source/appl/appopen.cxx b/sfx2/source/appl/appopen.cxx
index 3cd4e2c11f74..aa18d7ae92e4 100644
--- a/sfx2/source/appl/appopen.cxx
+++ b/sfx2/source/appl/appopen.cxx
@@ -268,7 +268,7 @@ private:
{
// check the encryption data
// if the data correct is the stream will be opened successfuly
- // and immediatelly closed
+ // and immediately closed
::comphelper::OStorageHelper::SetCommonStorageEncryptionData( mxStorage, rEncryptionData );
mxStorage->openStreamElement(
@@ -552,7 +552,7 @@ void SfxApplication::NewDocDirectExec_Impl( SfxRequest& rReq )
aReq.AppendItem( SfxFrameItem( SID_DOCFRAME, GetFrame() ) );
aReq.AppendItem( SfxStringItem( SID_TARGETNAME, String::CreateFromAscii( "_default" ) ) );
- // TODO/LATER: Should the other arguments be transfered as well?
+ // TODO/LATER: Should the other arguments be transferred as well?
SFX_REQUEST_ARG( rReq, pDefaultPathItem, SfxStringItem, SID_DEFAULTFILEPATH);
if ( pDefaultPathItem )
aReq.AppendItem( *pDefaultPathItem );
@@ -762,7 +762,7 @@ void SfxApplication::OpenDocExec_Impl( SfxRequest& rReq )
rReq.AppendItem( SfxBoolItem( SID_TEMPLATE, sal_False ) );
// This helper wraps an existing (or may new created InteractionHandler)
- // intercept all incoming interactions and provide usefull informations
+ // intercept all incoming interactions and provide useful informations
// later if the following transaction was finished.
::framework::PreventDuplicateInteraction* pHandler = new ::framework::PreventDuplicateInteraction(::comphelper::getProcessServiceFactory());
@@ -1217,7 +1217,7 @@ void SfxApplication::OpenDocExec_Impl( SfxRequest& rReq )
Reference < XController > xController;
// if ( ( !bIsBlankTarget && pFrame ) || pLinkItem || !rReq.IsSynchronCall() )
// {
- // if a frame is given, it must be used for the starting point of the targetting mechanism
+ // if a frame is given, it must be used for the starting point of the targeting mechanism
// this code is also used if asynchronous loading is possible, because loadComponent always is synchron
if ( !xTargetFrame.is() )
{
@@ -1252,7 +1252,7 @@ void SfxApplication::OpenDocExec_Impl( SfxRequest& rReq )
if( bHidden || pLinkItem || rReq.IsSynchronCall() )
{
// if loading must be done synchron, we must wait for completion to get a return value
- // find frame by myself; I must konw the exact frame to get the controller for the return value from it
+ // find frame by myself; I must know the exact frame to get the controller for the return value from it
//if( aTarget.getLength() )
// xTargetFrame = xTargetFrame->findFrame( aTarget, FrameSearchFlag::ALL );
Reference < XComponent > xComp;
diff --git a/sfx2/source/appl/appquit.cxx b/sfx2/source/appl/appquit.cxx
index c1c5cb4f931b..142e894d1e8c 100644
--- a/sfx2/source/appl/appquit.cxx
+++ b/sfx2/source/appl/appquit.cxx
@@ -156,7 +156,7 @@ void SfxApplication::Deinitialize()
//TODO/CLEANTUP
//ReleaseArgs could be used instead!
/* This leak is intended !
- Otherwise the TestTool cant use .uno:QuitApp ...
+ Otherwise the TestTool can't use .uno:QuitApp ...
because every destructed ItemSet work's on an already
released pool pointer .-)
diff --git a/sfx2/source/appl/appserv.cxx b/sfx2/source/appl/appserv.cxx
index 51b02d0a57ce..4bfb2653a688 100644
--- a/sfx2/source/appl/appserv.cxx
+++ b/sfx2/source/appl/appserv.cxx
@@ -197,7 +197,7 @@ void SfxApplication::MiscExec_Impl( SfxRequest& rReq )
{
/* Dont save the request for closing the application and try it later
again. This is an UI bound functionality ... and the user will try it again
- if the dialog is closed. But we shouldnt close the application automaticly
+ if the dialog is closed. But we shouldn't close the application automatically
if this dialog is closed by the user ...
So we ignore this request now and wait for a new user decision.
*/
diff --git a/sfx2/source/appl/childwin.cxx b/sfx2/source/appl/childwin.cxx
index aec148d5af50..75505236e0b5 100644
--- a/sfx2/source/appl/childwin.cxx
+++ b/sfx2/source/appl/childwin.cxx
@@ -827,7 +827,7 @@ void SfxChildWindow::SetFrame( const ::com::sun::star::uno::Reference< ::com::su
pImp->xListener = ::com::sun::star::uno::Reference< ::com::sun::star::lang::XEventListener >( new DisposeListener( this, pImp ) );
// Set new frame in data container
- // and build new listener connection, if neccessary.
+ // and build new listener connection, if necessary.
pImp->xFrame = rFrame;
if( pImp->xFrame.is() )
pImp->xFrame->addEventListener( pImp->xListener );
diff --git a/sfx2/source/appl/impldde.cxx b/sfx2/source/appl/impldde.cxx
index c4d8ae6463b4..3fbcaa77cc9a 100644
--- a/sfx2/source/appl/impldde.cxx
+++ b/sfx2/source/appl/impldde.cxx
@@ -49,6 +49,8 @@
#include <svl/svdde.hxx>
#include <sot/formats.hxx>
+#include <unotools/securityoptions.hxx>
+
#define DDELINK_COLD 0
#define DDELINK_HOT 1
@@ -255,15 +257,23 @@ sal_Bool SvDDEObject::Connect( SvBaseLink * pSvLink )
}
#if defined(WNT)
-
- // Server nicht da, starten und nochmal versuchen
- if( !bInWinExec )
+ // check the suitability of starting the DDE server
+ const SvtSecurityOptions aSecOpts;
+ bool bForbidden = (aSecOpts.GetMacroSecurityLevel() == eNEVER_EXECUTE);
+ bForbidden |= (sServer.SearchChar( L":./%\\") != STRING_NOTFOUND);
+ static const char* aBadServers[] = { "cmd", "rundll32" };
+ for( int i = 0; i < sizeof(aBadServers)/sizeof(*aBadServers); ++i)
+ bForbidden |= (sServer.CompareIgnoreCaseToAscii( aBadServers[i]) == COMPARE_EQUAL);
+
+ // try to start the DDE server if it is not there already
+ bForbidden |= (bInWinExec != sal_False);
+ if( !bForbidden )
{
ByteString aCmdLine( sServer, RTL_TEXTENCODING_ASCII_US );
aCmdLine.Append( ".exe " );
aCmdLine.Append( ByteString( sTopic, RTL_TEXTENCODING_ASCII_US ) );
- if( WinExec( aCmdLine.GetBuffer(), SW_SHOWMINIMIZED ) < 32 )
+ if( WinExec( aCmdLine.GetBuffer(), SW_SHOWMINIMIZED ) < 32 ) // TODO: use CreateProcess() instead
nError = DDELINK_ERROR_APP;
else
{
diff --git a/sfx2/source/bastyp/bitset.cxx b/sfx2/source/bastyp/bitset.cxx
index dabff64d083b..6171362d9afc 100644
--- a/sfx2/source/bastyp/bitset.cxx
+++ b/sfx2/source/bastyp/bitset.cxx
@@ -84,7 +84,7 @@ BitSet BitSet::operator<<( sal_uInt16 nOffset ) const
//--------------------------------------------------------------------
-// substracts nOffset from each bit-value in the set
+// subtracts nOffset from each bit-value in the set
BitSet BitSet::operator>>( sal_uInt16 ) const
{
diff --git a/sfx2/source/bastyp/fltlst.cxx b/sfx2/source/bastyp/fltlst.cxx
index 08e2a699a79b..edf6100a799c 100644
--- a/sfx2/source/bastyp/fltlst.cxx
+++ b/sfx2/source/bastyp/fltlst.cxx
@@ -50,7 +50,7 @@ using namespace ::com::sun::star;
/*-************************************************************************************************************//**
@short ctor
- @descr These initialize an instance of a SfxFilterListener class. Created object listen automaticly
+ @descr These initialize an instance of a SfxFilterListener class. Created object listen automatically
on right FilterFactory-Service for all changes and synchronize right SfxFilterContainer with
corresponding framework-cache.
We use given "sFactory" value to decide which query must be used to fill "pContainer" with new values.
diff --git a/sfx2/source/bastyp/sfxhtml.cxx b/sfx2/source/bastyp/sfxhtml.cxx
index 9ead3516cd26..7458376d1186 100644
--- a/sfx2/source/bastyp/sfxhtml.cxx
+++ b/sfx2/source/bastyp/sfxhtml.cxx
@@ -80,7 +80,7 @@ SfxHTMLParser::SfxHTMLParser( SvStream& rStream, sal_Bool bIsNewDoc,
DBG_ASSERT( !IsSwitchToUCS2(),
"SfxHTMLParser::SfxHTMLParser: Switch to UCS2?" );
- // Altough the real default encoding is ISO8859-1, we use MS-1252
+ // Although the real default encoding is ISO8859-1, we use MS-1252
// als default encoding.
SetSrcEncoding( GetExtendedCompatibilityTextEncoding( RTL_TEXTENCODING_ISO_8859_1 ) );
diff --git a/sfx2/source/config/evntconf.cxx b/sfx2/source/config/evntconf.cxx
index 0aa3f183ffaa..5873aa4779e3 100644
--- a/sfx2/source/config/evntconf.cxx
+++ b/sfx2/source/config/evntconf.cxx
@@ -258,7 +258,7 @@ void PropagateEvent_Impl( SfxObjectShell *pDoc, rtl::OUString aEventName, const
{ DBG_ERRORFILE( "PropagateEvents_Impl: caught NoSuchElementException" ); }
}
else {
- DBG_WARNING( "PropagateEvents_Impl: Got unkown event" );
+ DBG_WARNING( "PropagateEvents_Impl: Got unknown event" );
}
}
}
diff --git a/sfx2/source/dialog/dockwin.cxx b/sfx2/source/dialog/dockwin.cxx
index 1171521492d3..34e1b8f4676a 100644
--- a/sfx2/source/dialog/dockwin.cxx
+++ b/sfx2/source/dialog/dockwin.cxx
@@ -1413,7 +1413,7 @@ SfxChildAlignment SfxDockingWindow::CalcAlignment(const Point& rPos, Rectangle&
aSmallDockingRect.SetPos(rPos);
Rectangle aIntersectRect = aInRect.GetIntersection( aSmallDockingRect );
if ( aIntersectRect == aSmallDockingRect )
- // docking rectangle completely inside (shrinked) inner area -> floating mode
+ // docking rectangle completely inside (shrunk) inner area -> floating mode
bBecomesFloating = sal_True;
}
diff --git a/sfx2/source/dialog/filtergrouping.cxx b/sfx2/source/dialog/filtergrouping.cxx
index 230ffeb5feed..5c4966dd8bf8 100644
--- a/sfx2/source/dialog/filtergrouping.cxx
+++ b/sfx2/source/dialog/filtergrouping.cxx
@@ -1233,7 +1233,7 @@ namespace sfx2
::std::list< FilterGroup >::iterator pIter = aAllFilters.begin();
++pIter;
::std::for_each(
- pIter, // first filter group was handled seperately, see above
+ pIter, // first filter group was handled separately, see above
aAllFilters.end(),
AppendFilterGroup( _rxFilterManager, &_rFileDlgImpl ) );
}
diff --git a/sfx2/source/dialog/tabdlg.cxx b/sfx2/source/dialog/tabdlg.cxx
index c03a4e4a5c79..ac89649318af 100644
--- a/sfx2/source/dialog/tabdlg.cxx
+++ b/sfx2/source/dialog/tabdlg.cxx
@@ -1404,10 +1404,11 @@ IMPL_LINK( SfxTabDialog, ActivatePageHdl, TabControl *, pTabCtrl )
//UUUU fallback to 1st page when requested one does not exist
if(!pDataObject && pTabCtrl->GetPageCount())
{
+ OSL_ENSURE(false, "Requested TabPage not found in the TabDialog, fallback to 1st page (!)");
pTabCtrl->SetCurPageId(pTabCtrl->GetPageId(0));
nId = pTabCtrl->GetCurPageId();
pTabPage = dynamic_cast< SfxTabPage* >(pTabCtrl->GetTabPage(nId));
- Data_Impl* pDataObject = Find(*pImpl->pData, nId);
+ pDataObject = Find(*pImpl->pData, nId);
}
DBG_ASSERT( pDataObject, "Id nicht bekannt" );
diff --git a/sfx2/source/doc/Metadatable.cxx b/sfx2/source/doc/Metadatable.cxx
index 9441d23d2f67..4e2c67b2269d 100644
--- a/sfx2/source/doc/Metadatable.cxx
+++ b/sfx2/source/doc/Metadatable.cxx
@@ -83,7 +83,7 @@
These serve only to track the position in an XML ID list in a document
registry, so that future actions can insert objects at the right position.
Unfortunately, inserting dummy objects seems to be necessary:
- <ul><li>it is not sufficent to just remember the saved id, because then
+ <ul><li>it is not sufficient to just remember the saved id, because then
the relative priorities might change when executing the undo</li>
<li>it is not sufficient to record the position as an integer, because
if we delete a text node and then undo, the node will be copied(!),
diff --git a/sfx2/source/doc/docfile.cxx b/sfx2/source/doc/docfile.cxx
index 2b44a05e6cae..708a484306fe 100644
--- a/sfx2/source/doc/docfile.cxx
+++ b/sfx2/source/doc/docfile.cxx
@@ -2533,7 +2533,7 @@ void SfxMedium::UseInteractionHandler( sal_Bool bUse )
::com::sun::star::uno::Reference< ::com::sun::star::task::XInteractionHandler >
SfxMedium::GetInteractionHandler()
{
- // if interaction isnt allowed explicitly ... return empty reference!
+ // if interaction isn't allowed explicitly ... return empty reference!
if ( !pImp->bUseInteractionHandler )
return ::com::sun::star::uno::Reference< ::com::sun::star::task::XInteractionHandler >();
@@ -2546,7 +2546,7 @@ SfxMedium::GetInteractionHandler()
return xHandler;
}
- // if default interaction isnt allowed explicitly ... return empty reference!
+ // if default interaction isn't allowed explicitly ... return empty reference!
if ( !pImp->bAllowDefaultIntHdl )
return ::com::sun::star::uno::Reference< ::com::sun::star::task::XInteractionHandler >();
@@ -3405,7 +3405,7 @@ sal_Bool SfxMedium::IsReadOnly()
{
sal_Bool bReadOnly = sal_False;
- // a) ReadOnly filter cant produce read/write contents!
+ // a) ReadOnly filter can't produce read/write contents!
bReadOnly = (
(pFilter ) &&
((pFilter->GetFilterFlags() & SFX_FILTER_OPENREADONLY) == SFX_FILTER_OPENREADONLY)
diff --git a/sfx2/source/doc/doctempl.cxx b/sfx2/source/doc/doctempl.cxx
index a76a3f978d7a..78c0bb85ee8f 100644
--- a/sfx2/source/doc/doctempl.cxx
+++ b/sfx2/source/doc/doctempl.cxx
@@ -134,7 +134,7 @@ class DocTempl_EntryData_Impl
{
RegionData_Impl* mpParent;
- // the following member must be SfxObjectShellLock since it controlls that SfxObjectShell lifetime by design
+ // the following member must be SfxObjectShellLock since it controls that SfxObjectShell lifetime by design
// and users of this class expect it to be so.
SfxObjectShellLock mxObjShell;
diff --git a/sfx2/source/doc/docvor.cxx b/sfx2/source/doc/docvor.cxx
index 15f9da8568f1..65e8de41481c 100644
--- a/sfx2/source/doc/docvor.cxx
+++ b/sfx2/source/doc/docvor.cxx
@@ -420,7 +420,7 @@ ImpPath_Impl::ImpPath_Impl( const ImpPath_Impl& rCopy ) :
Implementierungsklasse; Darstellung einer Position in der Outline-
Listbox als sal_uInt16-Array; dieses beschreibt die Position jeweil
- als relative Postion zum "ubergeordneten Eintrag
+ als relative Position zum "ubergeordneten Eintrag
*/
class Path
diff --git a/sfx2/source/doc/graphhelp.cxx b/sfx2/source/doc/graphhelp.cxx
index d8955f55e46c..792d122d71d1 100644
--- a/sfx2/source/doc/graphhelp.cxx
+++ b/sfx2/source/doc/graphhelp.cxx
@@ -356,7 +356,7 @@ sal_Bool GraphicHelper::createThumb_Impl( const GDIMetaFile& rMtf,
const_cast< GDIMetaFile& >( rMtf ).WindStart();
const_cast< GDIMetaFile& >( rMtf ).Play( &aVDev, aBackPosPix, aDrawSize );
- // draw overlay if neccessary
+ // draw overlay if necessary
if ( pOverlay )
aVDev.DrawBitmapEx( aOverlayRect.TopLeft(), aOverlayRect.GetSize(), *pOverlay );
diff --git a/sfx2/source/doc/objcont.cxx b/sfx2/source/doc/objcont.cxx
index 01e49b26c58e..052955447deb 100644
--- a/sfx2/source/doc/objcont.cxx
+++ b/sfx2/source/doc/objcont.cxx
@@ -247,7 +247,7 @@ void SfxObjectShell::UpdateTime_Impl(
util::Duration editDuration(sal_False, 0, 0, 0,
secs/3600, (secs%3600)/60, secs%60, 0);
- // Initialize some local member! Its neccessary for wollow operations!
+ // Initialize some local member! Its necessary for wollow operations!
DateTime aNow ; // Date and time at current moment
Time n24Time (24,0,0,0) ; // Time-value for 24 hours - see follow calculation
sal_uIntPtr nDays = 0 ; // Count of days between now and last editing
diff --git a/sfx2/source/doc/objserv.cxx b/sfx2/source/doc/objserv.cxx
index bdbcaec50132..6bf76f409c63 100644
--- a/sfx2/source/doc/objserv.cxx
+++ b/sfx2/source/doc/objserv.cxx
@@ -658,8 +658,8 @@ void SfxObjectShell::ExecFile_Impl(SfxRequest &rReq)
GetMedium()->SetUpdatePickList( sal_True );
// TODO: in future it must be done in followind way
- // if document is opened from GUI it is immediatelly appeares in the picklist
- // if the document is a new one then it appeares in the picklist immediatelly
+ // if document is opened from GUI it is immediately appeares in the picklist
+ // if the document is a new one then it appeares in the picklist immediately
// after SaveAs operation triggered from GUI
}
catch( task::ErrorCodeIOException& aErrorEx )
@@ -1002,7 +1002,7 @@ void SfxObjectShell::GetState_Impl(SfxItemSet &rSet)
{
/*
- search for filter cant work correctly ...
+ search for filter can't work correctly ...
Because it's not clear, which export filter for which office module
must be searched. On the other side it can be very expensive doing so.
The best solution would be: on installation time we should know if pdf feature
diff --git a/sfx2/source/doc/objstor.cxx b/sfx2/source/doc/objstor.cxx
index 2c9fe1e34fe4..e130de7cf051 100644
--- a/sfx2/source/doc/objstor.cxx
+++ b/sfx2/source/doc/objstor.cxx
@@ -299,10 +299,10 @@ sal_Bool SfxObjectShell::PutURLContentsToVersionStream_Impl(
uno::Reference< embed::XStorage > xTempStorage =
::comphelper::OStorageHelper::GetStorageFromURL( aTempURL, embed::ElementModes::READWRITE );
- // the password will be transfered from the xStorage to xTempStorage by storage implemetation
+ // the password will be transferred from the xStorage to xTempStorage by storage implemetation
xStorage->copyToStorage( xTempStorage );
- // the temporary storage was commited by the previous method and it will die by refcount
+ // the temporary storage was committed by the previous method and it will die by refcount
}
catch ( uno::Exception& )
{
@@ -1253,9 +1253,9 @@ sal_Bool SfxObjectShell::SaveTo_Impl
// The active storage must be switched. The simple saving is not enough.
// The problem is that the target medium contains target MediaDescriptor.
- // In future the switch of the persistance could be done on stream level:
+ // In future the switch of the persistence could be done on stream level:
// a new wrapper service will be implemented that allows to exchange
- // persistance on the fly. So the real persistance will be set
+ // persistence on the fly. So the real persistence will be set
// to that stream only after successful commit of the storage.
// TODO/LATER:
// create wrapper stream based on the URL
@@ -1264,7 +1264,7 @@ sal_Bool SfxObjectShell::SaveTo_Impl
// commit the new storage
// call saveCompleted based with this new storage ( get rid of old storage and "frees" URL )
// commit the wrapper stream ( the stream will connect the URL only on commit, after that it will hold it )
- // if the last step is failed the stream should stay to be transacted and should be commited on any flush
+ // if the last step is failed the stream should stay to be transacted and should be committed on any flush
// so we can forget the stream in any way and the next storage commit will flush it
AddLog( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( OSL_LOG_PREFIX "Save: Own to Own" ) ) );
@@ -1629,7 +1629,7 @@ sal_Bool SfxObjectShell::SaveTo_Impl
{
pMedium->Close();
- // target medium is still not commited, it should not be closed
+ // target medium is still not committed, it should not be closed
// commit the package storage and close it, but leave the streams open
rMedium.StorageCommit_Impl();
rMedium.CloseStorage();
@@ -2014,7 +2014,7 @@ sal_Bool SfxObjectShell::DoSaveObjectAs( SfxMedium& rMedium, sal_Bool bCommit )
}
catch( uno::Exception& )
{
- DBG_ERROR( "The strotage was not commited on DoSaveAs!\n" );
+ DBG_ERROR( "The strotage was not committed on DoSaveAs!\n" );
}
}
}
@@ -2938,7 +2938,7 @@ sal_Bool SfxObjectShell::PreDoSaveAs_Impl
DBG_ERROR("Salvage item present in Itemset, check the parameters!");
#endif
- // should be unneccessary - too hot to handle!
+ // should be unnecessary - too hot to handle!
pMergedParams->ClearItem( SID_DOC_SALVAGE );
// take over the new merged itemset
@@ -3526,7 +3526,7 @@ sal_Bool StoragesOfUnknownMediaTypeAreCopied_Impl( const uno::Reference< embed::
}
catch( uno::Exception& )
{
- OSL_ENSURE( sal_False, "Cant check storage consistency!\n" );
+ OSL_ENSURE( sal_False, "Can't check storage consistency!\n" );
}
return sal_True;
diff --git a/sfx2/source/doc/objuno.cxx b/sfx2/source/doc/objuno.cxx
index dac80ffc1ec9..5e73366b37e7 100644
--- a/sfx2/source/doc/objuno.cxx
+++ b/sfx2/source/doc/objuno.cxx
@@ -692,7 +692,7 @@ void SAL_CALL SfxDocumentInfoObject::removeProperty(const ::rtl::OUString& sName
::rtl::OUStringBuffer sMsg(256);
sMsg.appendAscii("The property \"" );
sMsg.append (sName );
- sMsg.appendAscii("\" cant be removed. Its a fix property of the DocumentInfo service.");
+ sMsg.appendAscii("\" can't be removed. Its a fix property of the DocumentInfo service.");
throw ::com::sun::star::beans::NotRemoveableException(
sMsg.makeStringAndClear(),
@@ -721,7 +721,7 @@ void SAL_CALL SfxDocumentInfoObject::setFastPropertyValue(sal_Int32 nHandle, co
lang::WrappedTargetException)
{
// Attention: Only fix properties should be provided by this method.
- // Dynamic properties has no handle in real ... because it cant be used inside multithreaded environments :-)
+ // Dynamic properties has no handle in real ... because it can't be used inside multithreaded environments :-)
::osl::ClearableMutexGuard aGuard( _pImp->_aMutex );
@@ -937,7 +937,7 @@ void SAL_CALL SfxDocumentInfoObject::setFastPropertyValue(sal_Int32 nHandle, co
lang::WrappedTargetException)
{
// Attention: Only fix properties should be provided by this method.
- // Dynamic properties has no handle in real ... because it cant be used inside multithreaded environments :-)
+ // Dynamic properties has no handle in real ... because it can't be used inside multithreaded environments :-)
::osl::MutexGuard aGuard( _pImp->_aMutex );
::com::sun::star::uno::Any aValue;
diff --git a/sfx2/source/doc/objxtor.cxx b/sfx2/source/doc/objxtor.cxx
index 01141e9bb42f..5591e1d224ac 100644
--- a/sfx2/source/doc/objxtor.cxx
+++ b/sfx2/source/doc/objxtor.cxx
@@ -494,7 +494,7 @@ SfxObjectShell* SfxObjectShell::GetFirst
{
SfxObjectShellArr_Impl &rDocs = SFX_APP()->GetObjectShells_Impl();
- // seach for a SfxDocument of the specified type
+ // search for a SfxDocument of the specified type
for ( sal_uInt16 nPos = 0; nPos < rDocs.Count(); ++nPos )
{
SfxObjectShell* pSh = rDocs.GetObject( nPos );
diff --git a/sfx2/source/doc/printhelper.cxx b/sfx2/source/doc/printhelper.cxx
index 85e1d7b26f47..b3d02ef689b6 100644
--- a/sfx2/source/doc/printhelper.cxx
+++ b/sfx2/source/doc/printhelper.cxx
@@ -484,7 +484,7 @@ class ImplUCBPrintWatcher : public ::osl::Thread
SfxPrinter* m_pPrinter;
/// this describes the target location for the printed temp file
String m_sTargetURL;
- /// it holds the temp file alive, till the print job will finish and remove it from disk automaticly if the object die
+ /// it holds the temp file alive, till the print job will finish and remove it from disk automatically if the object die
::utl::TempFile* m_pTempFile;
public:
@@ -510,11 +510,11 @@ class ImplUCBPrintWatcher : public ::osl::Thread
}
/* } SAFE */
- // lock for further using of our member isn't neccessary - because
+ // lock for further using of our member isn't necessary - because
// we truns alone by defenition. Nobody join for us nor use us ...
ImplUCBPrintWatcher::moveAndDeleteTemp(&m_pTempFile,m_sTargetURL);
- // finishing of this run() method will call onTerminate() automaticly
+ // finishing of this run() method will call onTerminate() automatically
// kill this thread there!
}
@@ -526,7 +526,7 @@ class ImplUCBPrintWatcher : public ::osl::Thread
}
/* static helper to move the temp. file to the target location by using the ucb
- It's static to be useable from outside too. So it's not realy neccessary to start
+ It's static to be useable from outside too. So it's not really necessary to start
the thread, if finishing of the job was detected outside this thread.
But it must be called without using a corresponding thread for the given parameter!
*/
@@ -598,7 +598,7 @@ void SAL_CALL SfxPrintHelper::print(const uno::Sequence< beans::PropertyValue >&
// by executing the slot. Because if it is a ucb relevant URL we must wait for
// finishing the print job and move the temporary local file by using the ucb
// to the right location. But in case of no file name is given or it is already
- // a local one we can supress this special handling. Because then vcl makes all
+ // a local one we can suppress this special handling. Because then vcl makes all
// right for us.
String sUcbUrl;
::utl::TempFile* pUCBPrintTempFile = NULL;
@@ -635,7 +635,7 @@ void SAL_CALL SfxPrintHelper::print(const uno::Sequence< beans::PropertyValue >&
// reasons. Otherwhise we break to much external code ...
// We try to convert it to a file URL. If its possible
// we put the system path to the item set and let vcl work with it.
- // No ucb or thread will be neccessary then. In case it couldnt be
+ // No ucb or thread will be necessary then. In case it couldn't be
// converted its not an URL nor a system path. Then we can't accept
// this parameter and have to throw an exception.
::rtl::OUString sSystemPath(sTemp);
@@ -670,7 +670,7 @@ void SAL_CALL SfxPrintHelper::print(const uno::Sequence< beans::PropertyValue >&
// it's an ucb target. So we must use a temp. file for vcl
// and move it after printing by using the ucb.
// Create a temp file on the heap (because it must delete the
- // real file on disk automaticly if it die - bt we have to share it with
+ // real file on disk automatically if it die - bt we have to share it with
// some other sources ... e.g. the ImplUCBPrintWatcher).
// And we put the name of this temp file to the descriptor instead
// of the URL. The URL we save for later using seperatly.
@@ -763,11 +763,11 @@ void SAL_CALL SfxPrintHelper::print(const uno::Sequence< beans::PropertyValue >&
// Ok - may be execution before has finished (or started!) printing.
// And may it was a printing to a file.
- // Now we have to check if we can move the file (if neccessary) via ucb to his right location.
+ // Now we have to check if we can move the file (if necessary) via ucb to his right location.
// Cases:
// a) printing finished => move the file directly and forget the watcher thread
// b) printing is asynchron and runs currently => start watcher thread and exit this method
- // This thread make all neccessary things by itself.
+ // This thread make all necessary things by itself.
if (pUCBPrintTempFile!=NULL)
{
// a)
@@ -778,7 +778,7 @@ void SAL_CALL SfxPrintHelper::print(const uno::Sequence< beans::PropertyValue >&
else
{
// Note: we create(d) some ressource on the heap. (thread and tep file)
- // They will be delected by the thread automaticly if he finish his run() method.
+ // They will be delected by the thread automatically if he finish his run() method.
ImplUCBPrintWatcher* pWatcher = new ImplUCBPrintWatcher( pPrinter, pUCBPrintTempFile, sUcbUrl );
pWatcher->create();
}
diff --git a/sfx2/source/doc/sfxbasemodel.cxx b/sfx2/source/doc/sfxbasemodel.cxx
index 79d648980604..1c6793297a65 100644
--- a/sfx2/source/doc/sfxbasemodel.cxx
+++ b/sfx2/source/doc/sfxbasemodel.cxx
@@ -510,7 +510,7 @@ SfxSaveGuard::~SfxSaveGuard()
// storing at the same time. Further m_bSuicide was set to sal_True only if close(sal_True) was called.
// So the owner ship was delegated to the place where a veto exception was thrown.
// Now we have to call close() again and delegate the owner ship to the next one, which
- // cant accept that. Close(sal_False) cant work in this case. Because then the document will may be never closed ...
+ // can't accept that. Close(sal_False) can't work in this case. Because then the document will may be never closed ...
if ( m_pData->m_bSuicide )
{
@@ -1431,7 +1431,7 @@ void SAL_CALL SfxBaseModel::removeModifyListener(const uno::Reference< XMODIFYLI
void SAL_CALL SfxBaseModel::close( sal_Bool bDeliverOwnership ) throw (util::CloseVetoException, uno::RuntimeException)
{
- static ::rtl::OUString MSG_1 = ::rtl::OUString::createFromAscii("Cant close while saving.");
+ static ::rtl::OUString MSG_1 = ::rtl::OUString::createFromAscii("Can't close while saving.");
::vos::OGuard aGuard( Application::GetSolarMutex() );
if ( impl_isDisposed() || m_pData->m_bClosed || m_pData->m_bClosing )
@@ -1610,7 +1610,8 @@ void SAL_CALL SfxBaseModel::storeSelf( const uno::Sequence< beans::PropertyVa
if ( !aSeqArgs[nInd].Name.equals( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "VersionComment" ) ) )
&& !aSeqArgs[nInd].Name.equals( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Author" ) ) )
&& !aSeqArgs[nInd].Name.equals( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "InteractionHandler" ) ) )
- && !aSeqArgs[nInd].Name.equals( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "StatusIndicator" ) ) ) )
+ && !aSeqArgs[nInd].Name.equals( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "StatusIndicator" ) ) )
+ && !aSeqArgs[nInd].Name.equals( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "FailOnWarning" ) ) ) )
{
m_pData->m_pObjectShell->AddLog( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( OSL_LOG_PREFIX "unexpected parameter for storeSelf, might be no problem if SaveAs is executed." ) ) );
m_pData->m_pObjectShell->StoreLog();
@@ -2489,7 +2490,7 @@ void SAL_CALL SfxBaseModel::removeDocumentEventListener( const uno::Reference< d
void SAL_CALL SfxBaseModel::notifyDocumentEvent( const ::rtl::OUString&, const uno::Reference< frame::XController2 >&, const uno::Any& )
throw ( lang::IllegalArgumentException, lang::NoSupportException, uno::RuntimeException )
{
- throw lang::NoSupportException( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "SfxBaseModel controlls all the sent notifications itself!" ) ), uno::Reference< uno::XInterface >() );
+ throw lang::NoSupportException( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "SfxBaseModel controls all the sent notifications itself!" ) ), uno::Reference< uno::XInterface >() );
}
//________________________________________________________________________________________________________
@@ -2833,7 +2834,7 @@ void SfxBaseModel::impl_store( const ::rtl::OUString& sURL
else
{
// if the password is changed a special error should be used in case of shared document
- throw task::ErrorCodeIOException( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Cant change password for shared document." ) ), uno::Reference< uno::XInterface >(), ERRCODE_SFX_SHARED_NOPASSWORDCHANGE );
+ throw task::ErrorCodeIOException( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Can't change password for shared document." ) ), uno::Reference< uno::XInterface >(), ERRCODE_SFX_SHARED_NOPASSWORDCHANGE );
}
}
}
diff --git a/sfx2/source/menu/virtmenu.cxx b/sfx2/source/menu/virtmenu.cxx
index ad94ad1a37fd..3b3d424c2ca9 100644
--- a/sfx2/source/menu/virtmenu.cxx
+++ b/sfx2/source/menu/virtmenu.cxx
@@ -341,20 +341,17 @@ void SfxVirtualMenu::CreateFromSVMenu()
if ( pSVMenu->IsMenuBar() )
{
+ Reference<com::sun::star::lang::XMultiServiceFactory> aXMultiServiceFactory(::comphelper::getProcessServiceFactory());
sal_uInt16 nPos = pSVMenu->GetItemPos( SID_MDIWINDOWLIST );
if ( nPos != MENU_ITEM_NOTFOUND && xFrame.is() )
{
// Retrieve addon popup menus and add them to our menu bar
- Reference< com::sun::star::frame::XModel > xModel;
- Reference< com::sun::star::frame::XController > xController( xFrame->getController(), UNO_QUERY );
- if ( xController.is() )
- xModel = Reference< com::sun::star::frame::XModel >( xController->getModel(), UNO_QUERY );
- framework::AddonMenuManager::MergeAddonPopupMenus( xFrame, xModel, nPos, (MenuBar *)pSVMenu );
+ framework::AddonMenuManager::MergeAddonPopupMenus( xFrame, nPos, (MenuBar *)pSVMenu, aXMultiServiceFactory );
}
// Merge the Add-Ons help menu items into the Office help menu
if ( xFrame.is() )
- framework::AddonMenuManager::MergeAddonHelpMenu( xFrame, (MenuBar *)pSVMenu );
+ framework::AddonMenuManager::MergeAddonHelpMenu( xFrame, (MenuBar *)pSVMenu, aXMultiServiceFactory );
// Set addon menu pointer here to avoid problems. When accessibility is enabled, the whole menu
// is created immediately!
@@ -870,7 +867,7 @@ void SfxVirtualMenu::InsertAddOnsMenuItem( Menu* pMenu )
PopupMenu* pAddonMenu = NULL;
try
{
- pAddonMenu = framework::AddonMenuManager::CreateAddonMenu( xFrame );
+ pAddonMenu = framework::AddonMenuManager::CreateAddonMenu( xFrame, aXMultiServiceFactory );
}
catch ( ::com::sun::star::lang::WrappedTargetException )
{
diff --git a/sfx2/source/notify/eventsupplier.cxx b/sfx2/source/notify/eventsupplier.cxx
index 2ce81e7d85f0..60c7636d7b5e 100644
--- a/sfx2/source/notify/eventsupplier.cxx
+++ b/sfx2/source/notify/eventsupplier.cxx
@@ -642,7 +642,7 @@ void SAL_CALL SfxGlobalEvents_Impl::notifyDocumentEvent( const ::rtl::OUString&
const css::uno::Reference< css::frame::XController2 >& /*_ViewController*/, const css::uno::Any& /*_Supplement*/ )
throw (css::lang::IllegalArgumentException, css::lang::NoSupportException, css::uno::RuntimeException)
{
- // we're a multiplexer only, no chance to generate artifical events here
+ // we're a multiplexer only, no chance to generate artificial events here
throw css::lang::NoSupportException(::rtl::OUString(), *this);
}
@@ -710,7 +710,7 @@ void SAL_CALL SfxGlobalEvents_Impl::insert( const css::uno::Any& aElement )
aElement >>= xDoc;
if (!xDoc.is())
throw css::lang::IllegalArgumentException(
- ::rtl::OUString::createFromAscii("Cant locate at least the model parameter."),
+ ::rtl::OUString::createFromAscii("Can't locate at least the model parameter."),
static_cast< css::container::XSet* >(this),
0);
@@ -747,7 +747,7 @@ void SAL_CALL SfxGlobalEvents_Impl::remove( const css::uno::Any& aElement )
aElement >>= xDoc;
if (!xDoc.is())
throw css::lang::IllegalArgumentException(
- ::rtl::OUString::createFromAscii("Cant locate at least the model parameter."),
+ ::rtl::OUString::createFromAscii("Can't locate at least the model parameter."),
static_cast< css::container::XSet* >(this),
0);
diff --git a/sfx2/source/sidebar/SidebarDockingWindow.cxx b/sfx2/source/sidebar/SidebarDockingWindow.cxx
index e19e2bd937fd..0795cbc04a92 100644
--- a/sfx2/source/sidebar/SidebarDockingWindow.cxx
+++ b/sfx2/source/sidebar/SidebarDockingWindow.cxx
@@ -84,7 +84,10 @@ void SidebarDockingWindow::DoDispose (void)
void SidebarDockingWindow::GetFocus()
{
- mpSidebarController->GetFocusManager().GrabFocus();
+ if (mpSidebarController.is())
+ {
+ mpSidebarController->GetFocusManager().GrabFocus();
+ }
}
diff --git a/sfx2/source/view/frmload.cxx b/sfx2/source/view/frmload.cxx
index cbbb8113810a..555b43697e45 100644
--- a/sfx2/source/view/frmload.cxx
+++ b/sfx2/source/view/frmload.cxx
@@ -234,7 +234,7 @@ namespace
return sal_False;
// default must be set to true, because some return values
- // cant be checked, but nonetheless indicate "success"!
+ // can't be checked, but nonetheless indicate "success"!
sal_Bool bSuccess = sal_True;
// On the other side some special slots return a boolean state,
@@ -530,7 +530,7 @@ sal_Bool SAL_CALL SfxFrameLoader_Impl::load( const Sequence< PropertyValue >& rA
if ( !aDescriptor.has( "Referer" ) )
aDescriptor.put( "Referer", ::rtl::OUString() );
- // TODO: is this needed? finally, when loading is successfull, then there should be no need for this item,
+ // TODO: is this needed? finally, when loading is successful, then there should be no need for this item,
// as the document can always obtain its frame. In particular, there might be situations where this frame
// is accessed, but already disposed: Imagine the user loading a document, opening a second view on it, and
// then closing the first view/frame.
diff --git a/sfx2/source/view/ipclient.cxx b/sfx2/source/view/ipclient.cxx
index 2a90eaa31805..0cb8ec183c5e 100644
--- a/sfx2/source/view/ipclient.cxx
+++ b/sfx2/source/view/ipclient.cxx
@@ -247,7 +247,7 @@ void SAL_CALL SfxInPlaceClient_Impl::saveObject()
// and the user didn't request saving the changes
return;
- // the common persistance is supported by objects and links
+ // the common persistence is supported by objects and links
uno::Reference< embed::XCommonEmbedPersist > xPersist( m_xObject, uno::UNO_QUERY );
if ( !xPersist.is() )
throw uno::RuntimeException();
diff --git a/sfx2/source/view/sfxbasecontroller.cxx b/sfx2/source/view/sfxbasecontroller.cxx
index 2353897ef69d..de33a09ca5a9 100644
--- a/sfx2/source/view/sfxbasecontroller.cxx
+++ b/sfx2/source/view/sfxbasecontroller.cxx
@@ -668,7 +668,7 @@ sal_Bool SAL_CALL SfxBaseController::suspend( sal_Bool bSuspend ) throw( ::com::
{
::vos::OGuard aGuard( Application::GetSolarMutex() );
- // ignore dublicate calls, which doesnt change anything real
+ // ignore dublicate calls, which doesn't change anything real
if (bSuspend == m_pData->m_bSuspendState)
return sal_True;
@@ -1419,7 +1419,7 @@ void SfxBaseController::ConnectSfxFrame_Impl( const ConnectSfxFrame i_eConnect )
if ( !bHasPluginMode && !bHasJumpMark )
{
// Note that this might not be the ideal place here. Restoring view data should, IMO, be the
- // responsibility of the loader, not an implementation detail burried here deep within the controller's
+ // responsibility of the loader, not an implementation detail buried here deep within the controller's
// implementation.
// What I think should be done to replace the below code:
// - change SfxBaseController::restoreViewData to also accept a PropertyValue[] (it currently accepts
diff --git a/sfx2/source/view/viewprn.cxx b/sfx2/source/view/viewprn.cxx
index e0fab5a00629..b3c5351feaf6 100644
--- a/sfx2/source/view/viewprn.cxx
+++ b/sfx2/source/view/viewprn.cxx
@@ -334,7 +334,7 @@ void SfxPrinterController::jobFinished( com::sun::star::view::PrintableState nSt
}
case view::PrintableState_JOB_ABORTED :
{
- // printing not succesful, reset DocInfo
+ // printing not successful, reset DocInfo
uno::Reference<document::XDocumentProperties> xDocProps(mpObjectShell->getDocProperties());
xDocProps->setPrintedBy(m_aLastPrintedBy);
xDocProps->setPrintDate(m_aLastPrinted);
diff --git a/sfx2/source/view/viewsh.cxx b/sfx2/source/view/viewsh.cxx
index f863b7c1bad2..c0d1d30ae397 100644
--- a/sfx2/source/view/viewsh.cxx
+++ b/sfx2/source/view/viewsh.cxx
@@ -213,7 +213,7 @@ throw ( uno::RuntimeException )
xNotify->removeClipboardListener( xThis );
// Make asynchronous call to avoid locking SolarMutex which is the
- // root for many deadlocks, especially in conjuction with the "Windows"
+ // root for many deadlocks, especially in conjunction with the "Windows"
// based single thread apartment clipboard code!
AsyncExecuteInfo* pInfo = new AsyncExecuteInfo( ASYNCEXECUTE_CMD_DISPOSING, xThis, this );
Application::PostUserEvent( STATIC_LINK( 0, SfxClipboardChangeListener, AsyncExecuteHdl_Impl ), pInfo );
@@ -223,7 +223,7 @@ void SAL_CALL SfxClipboardChangeListener::changedContents( const datatransfer::c
throw ( RuntimeException )
{
// Make asynchronous call to avoid locking SolarMutex which is the
- // root for many deadlocks, especially in conjuction with the "Windows"
+ // root for many deadlocks, especially in conjunction with the "Windows"
// based single thread apartment clipboard code!
uno::Reference< datatransfer::clipboard::XClipboardListener > xThis( static_cast< datatransfer::clipboard::XClipboardListener* >( this ));
AsyncExecuteInfo* pInfo = new AsyncExecuteInfo( ASYNCEXECUTE_CMD_CHANGEDCONTENTS, xThis, this );
diff --git a/shell/inc/internal/xml_parser.hxx b/shell/inc/internal/xml_parser.hxx
index 00dafd25cc9d..f731b8a9f921 100644
--- a/shell/inc/internal/xml_parser.hxx
+++ b/shell/inc/internal/xml_parser.hxx
@@ -79,7 +79,7 @@ public:
@param IsFinal
Indicates whether these are the last xml data
of an xml document to parse. For very large
- xml documents it may be usefull to read and
+ xml documents it may be useful to read and
parse the document partially.
@precond XmlData must not be null
diff --git a/shell/qa/zip/ziptest.cxx b/shell/qa/zip/ziptest.cxx
index c2190868d235..5342675a2b11 100644
--- a/shell/qa/zip/ziptest.cxx
+++ b/shell/qa/zip/ziptest.cxx
@@ -77,7 +77,7 @@ void Test::test_getContent()
{
TestZipImpl testImpl(documentName.c_str());
bool isPassed = testImpl.test_getContent();
- CPPUNIT_ASSERT_MESSAGE("Couldn't recieve content buffer form zipfile.", isPassed);
+ CPPUNIT_ASSERT_MESSAGE("Couldn't receive content buffer form zipfile.", isPassed);
}
//#####################################
diff --git a/shell/source/all/ooofilereader/metainforeader.cxx b/shell/source/all/ooofilereader/metainforeader.cxx
index da692e4f139d..8868cef771ff 100644
--- a/shell/source/all/ooofilereader/metainforeader.cxx
+++ b/shell/source/all/ooofilereader/metainforeader.cxx
@@ -41,7 +41,7 @@ CBaseReader( DocumentName )
m_pSimple_Builder = new CSimpleTag( );
m_pDummy_Builder = new CDummyTag( );
- //retrieve all infomation that is useful
+ //retrieve all information that is useful
m_AllMetaInfo[META_INFO_AUTHOR] = EMPTY_XML_TAG;
m_AllMetaInfo[META_INFO_TITLE] = EMPTY_XML_TAG;
m_AllMetaInfo[META_INFO_SUBJECT] = EMPTY_XML_TAG;
@@ -82,7 +82,7 @@ try
m_pSimple_Builder = new CSimpleTag( );
m_pDummy_Builder = new CDummyTag( );
- //retrieve all infomation that is useful
+ //retrieve all information that is useful
m_AllMetaInfo[META_INFO_AUTHOR] = EMPTY_XML_TAG;
m_AllMetaInfo[META_INFO_TITLE] = EMPTY_XML_TAG;
m_AllMetaInfo[META_INFO_SUBJECT] = EMPTY_XML_TAG;
diff --git a/shell/source/backends/macbe/macbackend.cxx b/shell/source/backends/macbe/macbackend.cxx
index 73b6d1d17418..48b8ca4a54c0 100644
--- a/shell/source/backends/macbe/macbackend.cxx
+++ b/shell/source/backends/macbe/macbackend.cxx
@@ -412,7 +412,7 @@ css::uno::Any MacOSXBackend::getPropertyValue(
CFDictionaryRef rProxyDict = SCDynamicStoreCopyProxies(NULL);
if (!rProxyDict)
- rExceptionsList = false;
+ rExceptionsList = nil;
else
rExceptionsList = (CFArrayRef) CFDictionaryGetValue(rProxyDict, kSCPropNetProxiesExceptionsList);
diff --git a/shell/source/backends/wininetbe/wininetbackend.cxx b/shell/source/backends/wininetbe/wininetbackend.cxx
index 92e78d6ad6f4..d492507fe890 100644
--- a/shell/source/backends/wininetbe/wininetbackend.cxx
+++ b/shell/source/backends/wininetbe/wininetbackend.cxx
@@ -122,7 +122,7 @@ WinInetBackend::WinInetBackend()
{
LPINTERNET_PROXY_INFO lpi = NULL;
- // query for the neccessary space
+ // query for the necessary space
DWORD dwLength = 0;
BOOL bRet = lpfnInternetQueryOption(
NULL,
diff --git a/shell/source/tools/lngconvex/lngconvex.cxx b/shell/source/tools/lngconvex/lngconvex.cxx
index f6a53a1eeaed..96ae42f05e12 100644
--- a/shell/source/tools/lngconvex/lngconvex.cxx
+++ b/shell/source/tools/lngconvex/lngconvex.cxx
@@ -469,7 +469,7 @@ void start_language_section(
char buff[10];
int primLangID = PRIMARYLANGID(ltype);
int subLangID = SUBLANGID(ltype);
- // Our resources are normaly not sub language dependant.
+ // Our resources are normaly not sub language dependent.
// Esp. for spanish we don't want to distinguish between trad.
// and internatinal sorting ( which leads to two different sub languages )
// Setting the sub language to neutral allows us to use one
diff --git a/shell/source/unix/misc/senddoc.sh b/shell/source/unix/misc/senddoc.sh
index 0ba9ce9682db..93328635017d 100644
--- a/shell/source/unix/misc/senddoc.sh
+++ b/shell/source/unix/misc/senddoc.sh
@@ -19,7 +19,7 @@
# under the License.
#
# *************************************************************
-URI_ENCODE="`dirname $0`/uri-encode"
+URI_ENCODE="`dirname "$0"`/uri-encode"
FOPTS=""
# linux file utility needs -L option to resolve symlinks
@@ -100,7 +100,7 @@ case `basename "$MAILER" | sed 's/-.*$//'` in
shift
;;
--attach)
- ATTACH=${ATTACH:-}${ATTACH:+,}`echo "file://$2" | ${URI_ENCODE}`
+ ATTACH=${ATTACH:-}${ATTACH:+,}`echo "file://$2" | "${URI_ENCODE}"`
shift
;;
*)
@@ -160,7 +160,7 @@ case `basename "$MAILER" | sed 's/-.*$//'` in
shift
;;
--attach)
- ATTACH="${ATTACH:-}${ATTACH:+ }--attach "`echo "file://$2" | ${URI_ENCODE}`
+ ATTACH="${ATTACH:-}${ATTACH:+ }--attach "`echo "file://$2" | "${URI_ENCODE}"`
shift
;;
*)
@@ -243,23 +243,23 @@ case `basename "$MAILER" | sed 's/-.*$//'` in
shift
;;
--cc)
- MAILTO="${MAILTO:-}${MAILTO:+&}cc="`echo "$2" | ${URI_ENCODE}`
+ MAILTO="${MAILTO:-}${MAILTO:+&}cc="`echo "$2" | "${URI_ENCODE}"`
shift
;;
--bcc)
- MAILTO="${MAILTO:-}${MAILTO:+&}bcc="`echo "$2" | ${URI_ENCODE}`
+ MAILTO="${MAILTO:-}${MAILTO:+&}bcc="`echo "$2" | "${URI_ENCODE}"`
shift
;;
--subject)
- MAILTO="${MAILTO:-}${MAILTO:+&}subject"=`echo "$2" | ${URI_ENCODE}`
+ MAILTO="${MAILTO:-}${MAILTO:+&}subject"=`echo "$2" | "${URI_ENCODE}"`
shift
;;
--body)
- MAILTO="${MAILTO:-}${MAILTO:+&}body="`echo "$2" | ${URI_ENCODE}`
+ MAILTO="${MAILTO:-}${MAILTO:+&}body="`echo "$2" | "${URI_ENCODE}"`
shift
;;
--attach)
- MAILTO="${MAILTO:-}${MAILTO:+&}attach="`echo "file://$2" | ${URI_ENCODE}`
+ MAILTO="${MAILTO:-}${MAILTO:+&}attach="`echo "file://$2" | "${URI_ENCODE}"`
shift
;;
*)
@@ -285,23 +285,23 @@ case `basename "$MAILER" | sed 's/-.*$//'` in
shift
;;
--cc)
- MAILTO="${MAILTO:-}${MAILTO:+&}cc="`echo "$2" | ${URI_ENCODE}`
+ MAILTO="${MAILTO:-}${MAILTO:+&}cc="`echo "$2" | "${URI_ENCODE}"`
shift
;;
--bcc)
- MAILTO="${MAILTO:-}${MAILTO:+&}bcc="`echo "$2" | ${URI_ENCODE}`
+ MAILTO="${MAILTO:-}${MAILTO:+&}bcc="`echo "$2" | "${URI_ENCODE}"`
shift
;;
--subject)
- MAILTO="${MAILTO:-}${MAILTO:+&}subject"=`echo "$2" | ${URI_ENCODE}`
+ MAILTO="${MAILTO:-}${MAILTO:+&}subject"=`echo "$2" | "${URI_ENCODE}"`
shift
;;
--body)
- MAILTO="${MAILTO:-}${MAILTO:+&}body="`echo "$2" | ${URI_ENCODE}`
+ MAILTO="${MAILTO:-}${MAILTO:+&}body="`echo "$2" | "${URI_ENCODE}"`
shift
;;
--attach)
- MAILTO="${MAILTO:-}${MAILTO:+&}attachment="`echo "file://$2" | ${URI_ENCODE}`
+ MAILTO="${MAILTO:-}${MAILTO:+&}attachment="`echo "file://$2" | "${URI_ENCODE}"`
shift
;;
*)
@@ -362,7 +362,7 @@ case `basename "$MAILER" | sed 's/-.*$//'` in
case $1 in
--attach)
#i95688# fix filenames containing accented chars, whatever alien
- ATTACH="${ATTACH:-}${ATTACH:+ }"`echo "file://$2" | ${URI_ENCODE}`
+ ATTACH="${ATTACH:-}${ATTACH:+ }"`echo "file://$2" | "${URI_ENCODE}"`
shift
;;
*)
@@ -388,23 +388,23 @@ case `basename "$MAILER" | sed 's/-.*$//'` in
shift
;;
--cc)
- MAILTO="${MAILTO:-}${MAILTO:+&}cc="`echo "$2" | ${URI_ENCODE}`
+ MAILTO="${MAILTO:-}${MAILTO:+&}cc="`echo "$2" | "${URI_ENCODE}"`
shift
;;
--bcc)
- MAILTO="${MAILTO:-}${MAILTO:+&}bcc="`echo "$2" | ${URI_ENCODE}`
+ MAILTO="${MAILTO:-}${MAILTO:+&}bcc="`echo "$2" | "${URI_ENCODE}"`
shift
;;
--subject)
- MAILTO="${MAILTO:-}${MAILTO:+&}subject="`echo "$2" | ${URI_ENCODE}`
+ MAILTO="${MAILTO:-}${MAILTO:+&}subject="`echo "$2" | "${URI_ENCODE}"`
shift
;;
--body)
- MAILTO="${MAILTO:-}${MAILTO:+&}body="`echo "$2" | ${URI_ENCODE}`
+ MAILTO="${MAILTO:-}${MAILTO:+&}body="`echo "$2" | "${URI_ENCODE}"`
shift
;;
--attach)
- MAILTO="${MAILTO:-}${MAILTO:+&}attachment="`echo "$2" | ${URI_ENCODE}`
+ MAILTO="${MAILTO:-}${MAILTO:+&}attachment="`echo "$2" | "${URI_ENCODE}"`
shift
;;
*)
diff --git a/shell/source/win32/SysShExec.cxx b/shell/source/win32/SysShExec.cxx
index 3d984b7df9b6..4923e3176780 100644
--- a/shell/source/win32/SysShExec.cxx
+++ b/shell/source/win32/SysShExec.cxx
@@ -297,7 +297,7 @@ void SAL_CALL CSysShExec::execute( const OUString& aCommand, const OUString& aPa
/* #i4789#; jump mark detection on system paths
if the given command is a system path (not http or
other uri schemes) and seems to have a jump mark
- and names no existing file (remeber the jump mark
+ and names no existing file (remember the jump mark
sign '#' is a valid file name character we remove
the jump mark, else ShellExecuteEx fails */
OUString preprocessed_command(aCommand);
diff --git a/shell/source/win32/shlxthandler/infotips/infotips.cxx b/shell/source/win32/shlxthandler/infotips/infotips.cxx
index e2840f837b6a..7bd3323eab7f 100644
--- a/shell/source/win32/shlxthandler/infotips/infotips.cxx
+++ b/shell/source/win32/shlxthandler/infotips/infotips.cxx
@@ -117,7 +117,7 @@ ULONG STDMETHODCALLTYPE CInfoTip::Release( void)
//********************helper functions for GetInfoTip functions**********************
-/** get file type infomation from registry.
+/** get file type information from registry.
*/
std::wstring getFileTypeInfo(const std::string& file_extension)
{
@@ -194,7 +194,7 @@ std::wstring formatSizeOfFile( DWORD dwSize )
}
-/** get file size infomation.
+/** get file size information.
*/
std::wstring getFileSizeInfo(char* FileName)
{
@@ -283,7 +283,7 @@ HRESULT STDMETHODCALLTYPE CInfoTip::GetInfoTip(DWORD /*dwFlags*/, wchar_t** ppws
//return E_FAIL;
}
- //display file size, no matter other infomation is loaded successfully or not.
+ //display file size, no matter other information is loaded successfully or not.
std::wstring tmpSizeStr = getFileSizeInfo( m_szFileName );
if ( tmpSizeStr != EMPTY_STRING )
{
diff --git a/shell/source/win32/shlxthandler/util/utilities.cxx b/shell/source/win32/shlxthandler/util/utilities.cxx
index 1854abdb4daa..1d8f71f6fc03 100644
--- a/shell/source/win32/shlxthandler/util/utilities.cxx
+++ b/shell/source/win32/shlxthandler/util/utilities.cxx
@@ -145,7 +145,7 @@ bool HasOnlySpaces(const std::wstring& String)
}
//---------------------------------
-/** helper function to convert windows pathes to short form.
+/** helper function to convert windows paths to short form.
@returns
shortend path.
*/
diff --git a/shell/source/win32/workbench/TestSmplMail.cxx b/shell/source/win32/workbench/TestSmplMail.cxx
index 1e6a808e73af..ed8f571d5462 100644
--- a/shell/source/win32/workbench/TestSmplMail.cxx
+++ b/shell/source/win32/workbench/TestSmplMail.cxx
@@ -88,7 +88,7 @@ int SAL_CALL main(int , char*, char* )
OUString rdbName = OUString( RTL_CONSTASCII_USTRINGPARAM( RDB_SYSPATH ) );
Reference< XMultiServiceFactory > g_xFactory( createRegistryServiceFactory( rdbName ) );
- // Print a message if an error occured.
+ // Print a message if an error occurred.
if ( g_xFactory.is() == sal_False )
{
OSL_ENSURE(sal_False, "Can't create RegistryServiceFactory");
@@ -167,7 +167,7 @@ int SAL_CALL main(int , char*, char* )
// Cast factory to XComponent
Reference< XComponent > xComponent( g_xFactory, UNO_QUERY );
- // Print a message if an error occured.
+ // Print a message if an error occurred.
if ( xComponent.is() == sal_False )
{
OSL_ENSURE(sal_False, "Error shuting down");
diff --git a/shell/source/win32/workbench/TestSysShExec.cxx b/shell/source/win32/workbench/TestSysShExec.cxx
index 64e69821f813..cb34d9d588c2 100644
--- a/shell/source/win32/workbench/TestSysShExec.cxx
+++ b/shell/source/win32/workbench/TestSysShExec.cxx
@@ -97,7 +97,7 @@ int SAL_CALL main(int nArgc, char* Argv[], char* )
OUString rdbName = OUString( RTL_CONSTASCII_USTRINGPARAM( RDB_SYSPATH ) );
Reference< XMultiServiceFactory > g_xFactory( createRegistryServiceFactory( rdbName ) );
- // Print a message if an error occured.
+ // Print a message if an error occurred.
if ( g_xFactory.is() == sal_False )
{
OSL_ENSURE(sal_False, "Can't create RegistryServiceFactory");
@@ -143,7 +143,7 @@ int SAL_CALL main(int nArgc, char* Argv[], char* )
// Cast factory to XComponent
Reference< XComponent > xComponent( g_xFactory, UNO_QUERY );
- // Print a message if an error occured.
+ // Print a message if an error occurred.
if ( xComponent.is() == sal_False )
{
OSL_ENSURE(sal_False, "Error shuting down");
diff --git a/slideshow/source/engine/OGLTrans/OGLTrans_TransitionImpl.hxx b/slideshow/source/engine/OGLTrans/OGLTrans_TransitionImpl.hxx
index 3ad80b77fd15..8da7458f8e8b 100644
--- a/slideshow/source/engine/OGLTrans/OGLTrans_TransitionImpl.hxx
+++ b/slideshow/source/engine/OGLTrans/OGLTrans_TransitionImpl.hxx
@@ -282,7 +282,7 @@ private:
vector<basegfx::B2DVector> TexCoords;
};
-/** This class is to be derived to make any operation (tranform) you may need in order to construct your transitions
+/** This class is to be derived to make any operation (transform) you may need in order to construct your transitions
*/
class Operation
{
diff --git a/slideshow/source/engine/animatedsprite.cxx b/slideshow/source/engine/animatedsprite.cxx
index 0b6e61288bbb..2817af4c031f 100644
--- a/slideshow/source/engine/animatedsprite.cxx
+++ b/slideshow/source/engine/animatedsprite.cxx
@@ -101,7 +101,7 @@ namespace slideshow
{
// Enlarge or reduce the sprite size, if necessary. This
// method employs a strategy similar to container, when
- // allocating memory: size is doubled or halved everytime
+ // allocating memory: size is doubled or halved every time
// the limit is reached. This makes for amortized constant
// time in runtime complexity. Note that we take exact
// powers of two here, since several HW-accelerated canvas
diff --git a/slideshow/source/engine/animationnodes/basenode.hxx b/slideshow/source/engine/animationnodes/basenode.hxx
index 90fc67967dbe..70a2246acbe5 100644
--- a/slideshow/source/engine/animationnodes/basenode.hxx
+++ b/slideshow/source/engine/animationnodes/basenode.hxx
@@ -148,7 +148,7 @@ protected:
private:
// all state affecting methods have "_st" counterparts being called at
- // derived classes when in state transistion: no-ops here at BaseNode...
+ // derived classes when in state transition: no-ops here at BaseNode...
virtual bool init_st();
virtual bool resolve_st();
virtual void activate_st();
diff --git a/slideshow/source/engine/shapes/drawshapesubsetting.cxx b/slideshow/source/engine/shapes/drawshapesubsetting.cxx
index 285b43c2295c..e88c15f43219 100644
--- a/slideshow/source/engine/shapes/drawshapesubsetting.cxx
+++ b/slideshow/source/engine/shapes/drawshapesubsetting.cxx
@@ -660,7 +660,7 @@ namespace slideshow
};
}
- /// Counts number of class occurences
+ /// Counts number of class occurrences
class CountClassFunctor
{
public:
@@ -678,7 +678,7 @@ namespace slideshow
if( eCurrElemClassification == meClass )
++mnCurrCount;
- return true; // never stop, count all occurences
+ return true; // never stop, count all occurrences
}
sal_Int32 getCount() const
@@ -703,7 +703,7 @@ namespace slideshow
// actions
CountClassFunctor aFunctor( eRequestedClass );
- // count all occurences in the given range
+ // count all occurrences in the given range
iterateActionClassifications( aFunctor, rBegin, rEnd );
return aFunctor.getCount();
diff --git a/slideshow/source/engine/shapes/intrinsicanimationactivity.cxx b/slideshow/source/engine/shapes/intrinsicanimationactivity.cxx
index 1f5a2e935bb4..0e76b7240617 100644
--- a/slideshow/source/engine/shapes/intrinsicanimationactivity.cxx
+++ b/slideshow/source/engine/shapes/intrinsicanimationactivity.cxx
@@ -66,7 +66,7 @@ namespace slideshow
@param rWakeupEvent
Externally generated wakeup event, to set this
activity to sleep during inter-frame intervals. Must
- come frome the outside, since wakeup event and this
+ come from the outside, since wakeup event and this
object have mutual references to each other.
@param rTimeouts
diff --git a/slideshow/source/engine/shapes/intrinsicanimationactivity.hxx b/slideshow/source/engine/shapes/intrinsicanimationactivity.hxx
index a2e288253613..2d0e40e96c39 100644
--- a/slideshow/source/engine/shapes/intrinsicanimationactivity.hxx
+++ b/slideshow/source/engine/shapes/intrinsicanimationactivity.hxx
@@ -52,7 +52,7 @@ namespace slideshow
@param rWakeupEvent
Externally generated wakeup event, to set this
activity to sleep during inter-frame intervals. Must
- come frome the outside, since wakeup event and this
+ come from the outside, since wakeup event and this
object have mutual references to each other.
@param rTimeouts
diff --git a/slideshow/source/engine/slide/layer.hxx b/slideshow/source/engine/slide/layer.hxx
index 22be8d8a7bb4..7b2cb34c1875 100644
--- a/slideshow/source/engine/slide/layer.hxx
+++ b/slideshow/source/engine/slide/layer.hxx
@@ -52,13 +52,13 @@ namespace slideshow
Since slides have a notion of depth, i.e. shapes on it
have a certain order in which they lie upon each other,
- this layering must be modeled. A prime example for this
+ this layering must be modelled. A prime example for this
necessity are animations of shapes lying behind other
shapes. Then, everything behind the animated shape will be
in a background layer, the shape itself will be in an
animation layer, and everything before it will be in a
- foreground layer (these layers are most preferrably
- modeled as XSprite objects internally).
+ foreground layer (these layers are most preferably
+ modelled as XSprite objects internally).
@attention All methods of this class are only supposed to
be called from the LayerManager. Normally, it shouldn't be
diff --git a/slideshow/source/engine/slide/layermanager.cxx b/slideshow/source/engine/slide/layermanager.cxx
index 089394e800ba..98238a679543 100644
--- a/slideshow/source/engine/slide/layermanager.cxx
+++ b/slideshow/source/engine/slide/layermanager.cxx
@@ -113,7 +113,7 @@ namespace slideshow
{
mbActive = true;
maUpdateShapes.clear(); // update gets forced via area, or
- // has happend outside already
+ // has happened outside already
if( !bSlideBackgoundPainted )
{
diff --git a/slideshow/source/engine/slide/layermanager.hxx b/slideshow/source/engine/slide/layermanager.hxx
index 2acd7203251e..5f4c2fd14368 100644
--- a/slideshow/source/engine/slide/layermanager.hxx
+++ b/slideshow/source/engine/slide/layermanager.hxx
@@ -358,7 +358,7 @@ namespace slideshow
*/
const basegfx::B2DRange maPageBounds;
- /// Number of shape sprites currenly active on this LayerManager
+ /// Number of shape sprites currently active on this LayerManager
sal_Int32 mnActiveSprites;
/// sal_True, if shapes might need to move to different layer
diff --git a/slideshow/source/engine/transitions/clippingfunctor.cxx b/slideshow/source/engine/transitions/clippingfunctor.cxx
index 717c0e3e5232..3e0f08f506b2 100644
--- a/slideshow/source/engine/transitions/clippingfunctor.cxx
+++ b/slideshow/source/engine/transitions/clippingfunctor.cxx
@@ -203,7 +203,7 @@ namespace slideshow
else
{
// when not completely inside aBackgroundRange clipping is needed
- // substract aClipPoly from aBackgroundRange
+ // subtract aClipPoly from aBackgroundRange
const basegfx::B2DPolyPolygon aBackgroundPolyPoly(basegfx::tools::createPolygonFromRect(aBackgroundRange));
aClipPoly = basegfx::tools::solvePolygonOperationDiff(aBackgroundPolyPoly, aClipPoly);
}
diff --git a/slideshow/source/engine/wakeupevent.cxx b/slideshow/source/engine/wakeupevent.cxx
index 7bde8b4f9a32..ff12bdfafdd7 100644
--- a/slideshow/source/engine/wakeupevent.cxx
+++ b/slideshow/source/engine/wakeupevent.cxx
@@ -63,7 +63,7 @@ namespace slideshow
bool WakeupEvent::isCharged() const
{
- // this event won't expire, we fire everytime we're
+ // this event won't expire, we fire every time we're
// re-inserted into the event queue.
return true;
}
diff --git a/slideshow/source/inc/animatedsprite.hxx b/slideshow/source/inc/animatedsprite.hxx
index 8973f5fdad4f..d2e84bf474be 100644
--- a/slideshow/source/inc/animatedsprite.hxx
+++ b/slideshow/source/inc/animatedsprite.hxx
@@ -103,7 +103,7 @@ namespace slideshow
/** Query the content canvas for the current sprite.
Note that this method must be called
- <em>everytime</em> something is rendered to the
+ <em>every time</em> something is rendered to the
sprite, because XCustomSprite does not guarantee the
validity of the canvas after a render operation.
diff --git a/slideshow/source/inc/eventmultiplexer.hxx b/slideshow/source/inc/eventmultiplexer.hxx
index 58d27655de6d..1450b356b5b7 100644
--- a/slideshow/source/inc/eventmultiplexer.hxx
+++ b/slideshow/source/inc/eventmultiplexer.hxx
@@ -56,7 +56,7 @@ struct EventMultiplexerImpl;
are handled as well. Note that registered events which
have a non-zero timeout (i.e. events that return non-zero
from getActivationTime()) will not be fired immediately
- after the user action occured, but only after the given
+ after the user action occurred, but only after the given
timeout. Which is actually a feature.
*/
class EventMultiplexer : private ::boost::noncopyable
diff --git a/slideshow/source/inc/usereventqueue.hxx b/slideshow/source/inc/usereventqueue.hxx
index 425f1efacc12..08ac1f9fff44 100644
--- a/slideshow/source/inc/usereventqueue.hxx
+++ b/slideshow/source/inc/usereventqueue.hxx
@@ -52,7 +52,7 @@ class MouseLeaveHandler;
This class registeres at the EventMultiplexer and fires
events registered for certain user actions. Note that all
events will not be fired immediately after the user action
- occured, but always added to the EventQueue (and fired the
+ occurred, but always added to the EventQueue (and fired the
next time that queue is processed). Which is actually a
feature.
diff --git a/solenv/bin/build.pl b/solenv/bin/build.pl
index 57853d9d7619..c82b57c3912e 100755
--- a/solenv/bin/build.pl
+++ b/solenv/bin/build.pl
@@ -1049,7 +1049,7 @@ sub add_prerequisite_job {
};
#
-# procedure adds a job wich is dependent from all already registered jobs
+# procedure adds a job which is dependent from all already registered jobs
#
sub add_dependent_job {
# $post_job is dependent from all jobs
@@ -1777,7 +1777,7 @@ sub handle_dead_children {
sub give_second_chance {
my $pid = shift;
- # A malicious hack for misterious windows problems - try 2 times
+ # A malicious hack for mysterious windows problems - try 2 times
# to run dmake in the same directory if errors occurs
my $child_nick = $processes_hash{$pid};
$running_children{$folders_hashes{$child_nick}}--;
@@ -3386,7 +3386,7 @@ sub run_server {
};
} else {
if ($client_hash{result} eq "0") {
-# print "$clients_jobs{$pid} succedded on $pid\n";
+# print "$clients_jobs{$pid} succeeded on $pid\n";
} else {
print "Error $client_hash{result}\n";
if (store_error($pid, $client_hash{result})) {
diff --git a/solenv/bin/build_release.pl b/solenv/bin/build_release.pl
index d5f9b06fe764..83ea6f404f46 100755
--- a/solenv/bin/build_release.pl
+++ b/solenv/bin/build_release.pl
@@ -1342,7 +1342,7 @@ sub ResolveTemplate ($$$$$)
my $name = $template;
- # Resolve %? template paramters.
+ # Resolve %? template parameters.
$name =~ s/%V/$release_descriptor->{'version'}/g;
$name =~ s/%W/$old_to_new_version_dash/g;
$name =~ s/%w/$old_to_new_version_dots/g;
diff --git a/solenv/bin/cws.pl b/solenv/bin/cws.pl
index 7583a4b6cb70..59e530b96fc0 100644
--- a/solenv/bin/cws.pl
+++ b/solenv/bin/cws.pl
@@ -126,7 +126,7 @@ sub parse_command_line
my $command = shift @ARGV;
if (!exists $valid_commands_hash{$command}) {
- print_error("Unkown command: '$command'\n");
+ print_error("Unknown command: '$command'\n");
usage();
exit(1);
}
@@ -144,7 +144,7 @@ sub parse_command_line
$command = 'task';
}
- # An unkown option might be accompanied with a valid command.
+ # An unknown option might be accompanied with a valid command.
# Show the command specific help
if ( !$success ) {
do_help([$command])
@@ -607,7 +607,7 @@ sub query_integratedinto
if ( is_valid_cws($cws) ) {
my $milestone = $cws->get_milestone_integrated();
print_message("Integrated into:");
- print defined($milestone) ? "$milestone\n" : "unkown\n";
+ print defined($milestone) ? "$milestone\n" : "unknown\n";
}
return;
}
@@ -1405,7 +1405,7 @@ sub do_help
elsif ($arg eq 'create') {
print STDERR "create: Create a new child workspace\n";
print STDERR "usage: create [-m milestone] <master workspace> <child workspace>\n";
- print STDERR "\t-m milestone: Milestone to base the child workspace on. If ommitted the\n";
+ print STDERR "\t-m milestone: Milestone to base the child workspace on. If omitted the\n";
print STDERR "\t last published milestone will be used.\n";
print STDERR "\t--milestone milestone: Same as -m milestone.\n";
}
@@ -2012,7 +2012,7 @@ sub hg_clone
print STDERR "CWS-DEBUG: ... hg clone: '$source -> $dest', options: '$options'\n";
}
- # The to be cloned revision might not yet be avaliable. In this case clone
+ # The to be cloned revision might not yet be available. In this case clone
# the available tip.
my @result = execute_hg_command(0, 'clone', $options, $source, $dest);
if ( defined($result[0]) && $result[0] =~ /abort: unknown revision/ ) {
diff --git a/solenv/bin/download_external_dependencies.pl b/solenv/bin/download_external_dependencies.pl
index 855f430958ef..d1b4121247ec 100755
--- a/solenv/bin/download_external_dependencies.pl
+++ b/solenv/bin/download_external_dependencies.pl
@@ -587,7 +587,7 @@ sub DownloadFile ($$$)
close $out;
}
- # When download was successfull then check the checksum and rename the .part file
+ # When download was successful then check the checksum and rename the .part file
# into the actual extension name.
if ($success)
{
diff --git a/solenv/bin/make_download.pl b/solenv/bin/make_download.pl
index 6b36ed32bcc5..eb7fc29fc0ef 100644
--- a/solenv/bin/make_download.pl
+++ b/solenv/bin/make_download.pl
@@ -64,7 +64,7 @@ foreach my $infofilename ( @{$infofilelist} )
installer::logger::print_message( "... WARNING: Signing only for Windows platforms active ...\n" );
}
- # installer::logger::include_header_into_logfile("Reading include pathes");
+ # installer::logger::include_header_into_logfile("Reading include paths");
# installer::worker::collect_all_files_from_includepathes($followmeinfohash->{'includepatharray'});
if (( $installer::globals::iswindowsbuild ) && ( $installer::globals::dosign ))
diff --git a/solenv/bin/make_installer.pl b/solenv/bin/make_installer.pl
index 05c566dce23b..cce6c29f9a9e 100644
--- a/solenv/bin/make_installer.pl
+++ b/solenv/bin/make_installer.pl
@@ -1470,7 +1470,7 @@ installer::ziplist::remove_ending_separator($includepatharrayref);
##############################################
# Collecting all files from all include
-# pathes in global hashes.
+# paths in global hashes.
##############################################
installer::worker::collect_all_files_from_includepathes($includepatharrayref);
@@ -1954,7 +1954,7 @@ for (;1;last)
# There are two ways for a directory to be included into the epm directory list:
# 1. Looking for all destination paths in the files array
# 2. Looking for directories with CREATE flag in the directory array
- # Advantage: Many pathes are hidden in zip files, they are not defined in the setup script.
+ # Advantage: Many paths are hidden in zip files, they are not defined in the setup script.
# It will be possible, that in the setup script only those directoies have to be defined,
# that have a CREATE flag. All other directories are created, if they contain at least one file.
diff --git a/solenv/bin/modules/Cws.pm b/solenv/bin/modules/Cws.pm
index 5134006d5170..03e47800f54b 100644
--- a/solenv/bin/modules/Cws.pm
+++ b/solenv/bin/modules/Cws.pm
@@ -1406,7 +1406,7 @@ sub set_integration_milestone_in_eis
if ( !defined($milestone) ) {
$milestone = Eis::to_string('');
}
- # $buildid must be transfered as string
+ # $buildid must be transferred as string
if ( !defined($buildid) ) {
$buildid = Eis::to_string('');
}
diff --git a/solenv/bin/modules/ExtensionsLst.pm b/solenv/bin/modules/ExtensionsLst.pm
index 55c280c7dcf7..39bb6d06af82 100644
--- a/solenv/bin/modules/ExtensionsLst.pm
+++ b/solenv/bin/modules/ExtensionsLst.pm
@@ -169,7 +169,7 @@ sub EvaluateTerm ($$)
my $left_value = $ENV{$left};
$left_value = "" if ! defined $left_value;
- # We can check whether the condition is fullfilled right now.
+ # We can check whether the condition is fulfilled right now.
$result = EvaluateOperator($left_value, $operator, $right);
}
elsif ($left eq "language")
@@ -506,7 +506,7 @@ sub Download (@)
my $response = $agent->get($URL);
close $out;
- # When download was successfull then check the md5 checksum and rename the .part file
+ # When download was successful then check the md5 checksum and rename the .part file
# into the actual extension name.
if ($response->is_success())
{
diff --git a/solenv/bin/modules/installer/archivefiles.pm b/solenv/bin/modules/installer/archivefiles.pm
index 421c418c4afa..0d4cd54f5794 100644
--- a/solenv/bin/modules/installer/archivefiles.pm
+++ b/solenv/bin/modules/installer/archivefiles.pm
@@ -362,7 +362,7 @@ sub resolving_archive_flag
if ( $set_executable_privileges )
{
- # All pathes to executables are saved in the hash %executable_files_in_extensions
+ # All paths to executables are saved in the hash %executable_files_in_extensions
my $compare_path = $newfile{'sourcepath'};
$compare_path =~ s/\\/\//g; # contains only slashes for comparison reasons
if ( exists($executable_files_in_extensions{$compare_path}) )
diff --git a/solenv/bin/modules/installer/control.pm b/solenv/bin/modules/installer/control.pm
index 8db26b264537..38b8fa20e126 100644
--- a/solenv/bin/modules/installer/control.pm
+++ b/solenv/bin/modules/installer/control.pm
@@ -269,7 +269,7 @@ sub check_makecab_version
}
######################################################################
-# Reading the environment variables for the pathes in ziplist.
+# Reading the environment variables for the paths in ziplist.
# solarpath, solarenvpath, solarcommonpath, os, osdef, pmiscpath
######################################################################
@@ -378,7 +378,7 @@ sub check_logfile ()
}
else
{
- push(@output, "ERROR: The following errors occured in packaging process:\n");
+ push(@output, "ERROR: The following errors occurred in packaging process:\n");
}
push(@output, "\n");
@@ -557,7 +557,7 @@ sub check_updatepack
$installer::logger::Global->printf("Failed to create directory \n", $directory);
if ( defined $ENV{'BSCLIENT'} && ( uc $ENV{'BSCLIENT'} eq 'TRUE' ) )
{
- installer::exiter::exit_program("ERROR: No write access to SHIPDRIVE allthough BSCLIENT is set.", "check_updatepack");
+ installer::exiter::exit_program("ERROR: No write access to SHIPDRIVE although BSCLIENT is set.", "check_updatepack");
}
}
}
diff --git a/solenv/bin/modules/installer/converter.pm b/solenv/bin/modules/installer/converter.pm
index c6d2b794314a..d3c45b3fa8ea 100644
--- a/solenv/bin/modules/installer/converter.pm
+++ b/solenv/bin/modules/installer/converter.pm
@@ -273,7 +273,7 @@ sub copy_item_object
}
#################################################################
-# Windows pathes must not contain the following structure:
+# Windows paths must not contain the following structure:
# c:\dirA\dirB\..\dirC
# This has to be exchanged to
# c:\dirA\dirC
diff --git a/solenv/bin/modules/installer/downloadsigner.pm b/solenv/bin/modules/installer/downloadsigner.pm
index 0bdf49edb16b..616543777c7a 100644
--- a/solenv/bin/modules/installer/downloadsigner.pm
+++ b/solenv/bin/modules/installer/downloadsigner.pm
@@ -200,7 +200,7 @@ sub set_temp_path
}
#############################################
-# Setting output pathes to temp directory
+# Setting output paths to temp directory
# This are the:
# unpackpath and the loggingdir
#############################################
@@ -214,7 +214,7 @@ sub set_output_pathes_to_temp
}
#############################################
-# Setting the minor into the pathes. This is
+# Setting the minor into the paths. This is
# required, if the original installation set
# was created without minor
# Value is always saved in
@@ -240,20 +240,20 @@ sub set_minor_into_pathes
return;
}
- # Affected pathes:
+ # Affected paths:
# $contenthash{'installlogdir'}
# $contenthash{'includepatharray'}
# $installer::globals::unpackpath
# $installer::globals::idttemplatepath
# $installer::globals::idtlanguagepath
- installer::logger::include_header_into_logfile("Changing saved pathes to add the minor");
- $installer::logger::Lang->print("Old pathes:\n");
+ installer::logger::include_header_into_logfile("Changing saved paths to add the minor");
+ $installer::logger::Lang->print("Old paths:\n");
$installer::logger::Lang->printf("\$followmeinfohash->{'installlogdir'}: %s\n", $followmeinfohash->{'installlogdir'});
$installer::logger::Lang->printf("\$installer::globals::unpackpath: %s\n", $installer::globals::unpackpath);
$installer::logger::Lang->printf("\$installer::globals::idttemplatepath: %s\n", $installer::globals::idttemplatepath);
$installer::logger::Lang->printf("\$installer::globals::idtlanguagepath: %s\n", $installer::globals::idtlanguagepath);
- $installer::logger::Lang->printf("Include pathes:\n");
+ $installer::logger::Lang->printf("Include paths:\n");
foreach my $path ( @{$followmeinfohash->{'includepatharray'}} )
{
$installer::logger::Lang->print($path);
@@ -301,12 +301,12 @@ sub set_minor_into_pathes
foreach my $path ( @{$followmeinfohash->{'includepatharray'}} ) { if ( $path =~ /\Q$srcpath\E/ ) { $path =~ s/\Q$srcpath\E/$newsrcpath/; } }
$installer::logger::Lang->print("\n");
- $installer::logger::Lang->print("New pathes:\n");
+ $installer::logger::Lang->print("New paths:\n");
$installer::logger::Lang->printf("\$followmeinfohash->{'installlogdir'}: %s\n", $followmeinfohash->{'installlogdir'});
$installer::logger::Lang->printf("\$installer::globals::unpackpath: %s\n", $installer::globals::unpackpath);
$installer::logger::Lang->printf("\$installer::globals::idttemplatepath: %s\n", $installer::globals::idttemplatepath);
$installer::logger::Lang->printf("\$installer::globals::idtlanguagepath: %s\n", $installer::globals::idtlanguagepath);
- $installer::logger::Lang->printf("Include pathes:\n");
+ $installer::logger::Lang->printf("Include paths:\n");
foreach my $path ( @{$followmeinfohash->{'includepatharray'}} )
{
$installer::logger::Lang->print($path);
diff --git a/solenv/bin/modules/installer/environment.pm b/solenv/bin/modules/installer/environment.pm
index b6d6b96297c5..e7f9eca78bc2 100644
--- a/solenv/bin/modules/installer/environment.pm
+++ b/solenv/bin/modules/installer/environment.pm
@@ -72,7 +72,7 @@ sub create_pathvariables
}
##################################################
-# Replacing tilde in pathes, because of
+# Replacing tilde in paths, because of
# problem with deep recursion (task 104830)
##################################################
diff --git a/solenv/bin/modules/installer/epmfile.pm b/solenv/bin/modules/installer/epmfile.pm
index 38cff5d3569c..21b35981f072 100644
--- a/solenv/bin/modules/installer/epmfile.pm
+++ b/solenv/bin/modules/installer/epmfile.pm
@@ -55,7 +55,7 @@ sub read_packagemap
$installer::logger::Lang->printf("\n");
$installer::logger::Lang->printf("nCollected abbreviations and package names:\n");
- # Can be a comma separated list. All files have to be found in include pathes
+ # Can be a comma separated list. All files have to be found in include paths
my $allpackagemapnames = installer::converter::convert_stringlist_into_hash(\$packagemapname, ",");
foreach my $onepackagemapname ( keys %{$allpackagemapnames} )
{
diff --git a/solenv/bin/modules/installer/javainstaller.pm b/solenv/bin/modules/installer/javainstaller.pm
index 31f3709fc1ab..40bae72caa34 100644
--- a/solenv/bin/modules/installer/javainstaller.pm
+++ b/solenv/bin/modules/installer/javainstaller.pm
@@ -371,7 +371,7 @@ sub convert_licenstring
#######################################################
# Adding the license file into the java file
# In the template java file there are two
-# occurences of INSTALLSDK_GUI_LICENSE
+# occurrences of INSTALLSDK_GUI_LICENSE
# and INSTALLSDK_CONSOLE_LICENSE
#######################################################
diff --git a/solenv/bin/modules/installer/packagelist.pm b/solenv/bin/modules/installer/packagelist.pm
index 51706274beff..fcdabd9feecd 100644
--- a/solenv/bin/modules/installer/packagelist.pm
+++ b/solenv/bin/modules/installer/packagelist.pm
@@ -735,7 +735,7 @@ sub log_packages_content
}
#####################################################################
-# Creating assignments from modules to destination pathes.
+# Creating assignments from modules to destination paths.
# This is required for logging in fileinfo file. Otherwise
# the complete destination file would not be known in file list.
# Saved in %installer::globals::moduledestination
@@ -761,7 +761,7 @@ sub create_module_destination_hash
}
#####################################################################
-# Adding the default pathes into the files collector for Unixes.
+# Adding the default paths into the files collector for Unixes.
# This is necessary to know the complete destination path in
# fileinfo log file.
#####################################################################
diff --git a/solenv/bin/modules/installer/packagepool.pm b/solenv/bin/modules/installer/packagepool.pm
index 69d9a09339b9..f8ce641df1f9 100644
--- a/solenv/bin/modules/installer/packagepool.pm
+++ b/solenv/bin/modules/installer/packagepool.pm
@@ -90,7 +90,7 @@ sub compare_epm_content
for ( my $i = 0; $i <= $#{$newcontent}; $i++ )
{
if ( ${$newcontent}[$i] =~ /^\s*$/ ) { next; } # Removing empty lines from $newcontent. Empty lines are also not included into pcf file, from where $oldcontent was read.
- if ( ${$newcontent}[$i] =~ /^\s*f\s+/ ) { next; } # Ignoring files, they can contain temporary pathes
+ if ( ${$newcontent}[$i] =~ /^\s*f\s+/ ) { next; } # Ignoring files, they can contain temporary paths
if (( ${$newcontent}[$i] =~ /^\s*%readme\s+/ ) || ( ${$newcontent}[$i] =~ /^\s*%license\s+/ )) { next; } # ignoring license and readme (language specific!)
my $oneline = ${$newcontent}[$i];
$oneline =~ s/\s*$//; # Removing line ends. Also not included in old epm file, that is read from pcf file.
@@ -308,7 +308,7 @@ sub create_pcfcontent_file
for ( my $i = 0; $i <= $#{$epmfilecontent}; $i++ )
{
if ( ${$epmfilecontent}[$i] =~ /^\s*$/ ) { next; } # avoiding empty lines
- if ( ${$epmfilecontent}[$i] =~ /^\s*f\s+/ ) { next; } # ignoring files, because they can contain temporary pathes
+ if ( ${$epmfilecontent}[$i] =~ /^\s*f\s+/ ) { next; } # ignoring files, because they can contain temporary paths
if (( ${$epmfilecontent}[$i] =~ /^\s*%readme\s+/ ) || ( ${$epmfilecontent}[$i] =~ /^\s*%license\s+/ )) { next; } # ignoring license and readme (language specific!)
$oneline = "EPM:\t${$epmfilecontent}[$i]";
push(@content, $oneline);
@@ -775,7 +775,7 @@ sub package_is_up_to_date
log_pool_info(0);
# removing new package from installation set
- if ( $newpackagepath ne "" ) { remove_package_from_installset($newpackagepath); } # A file was copied and a problem occured with pooling
+ if ( $newpackagepath ne "" ) { remove_package_from_installset($newpackagepath); } # A file was copied and a problem occurred with pooling
$package_is_up_to_date = 4; # repeat this package
return $package_is_up_to_date;
@@ -788,7 +788,7 @@ sub package_is_up_to_date
log_pool_info(1);
# removing new package from installation set
- if ( $newpackagepath ne "" ) { remove_package_from_installset($newpackagepath); } # A file was copied and a problem occured with pooling
+ if ( $newpackagepath ne "" ) { remove_package_from_installset($newpackagepath); } # A file was copied and a problem occurred with pooling
$package_is_up_to_date = 4; # repeat this package
return $package_is_up_to_date;
@@ -946,7 +946,7 @@ sub put_content_into_pool
}
# Before the new package is renamed in the pool, it has to be checked, if this process still has the lock for this package.
- # Check, if lock file still exists and if this process is the owner. Otherwise a pool error occured.
+ # Check, if lock file still exists and if this process is the owner. Otherwise a pool error occurred.
if ( ! -f $installer::globals::poollockfilename )
{
unlink $uniquedestination; # removing file from pool
@@ -968,7 +968,7 @@ sub put_content_into_pool
$installer::logger::Lang->print($infoline);
# Before the lock file in the pool can be removed, it has to be checked, if this process is still the owner of this lock file.
- # Check, if lock file still exists and if this process is the owner. Otherwise a pool error occured.
+ # Check, if lock file still exists and if this process is the owner. Otherwise a pool error occurred.
if ( ! -f $installer::globals::poollockfilename )
{
log_pool_info(0);
@@ -1015,7 +1015,7 @@ sub copy_package_from_pool
$destinationfile =~ s/.tar\s*$//;
}
- # Keeping the content of @installer::globals::installsetcontent up to date (with full pathes):
+ # Keeping the content of @installer::globals::installsetcontent up to date (with full paths):
push(@installer::globals::installsetcontent, $destinationfile);
return $destinationfile;
diff --git a/solenv/bin/modules/installer/parameter.pm b/solenv/bin/modules/installer/parameter.pm
index 62e0bee70c80..122abf58934a 100644
--- a/solenv/bin/modules/installer/parameter.pm
+++ b/solenv/bin/modules/installer/parameter.pm
@@ -202,7 +202,7 @@ sub control_fundamental_parameter
##########################################################
# The path parameters can be relative or absolute.
-# This function creates absolute pathes.
+# This function creates absolute paths.
##########################################################
sub make_path_absolute
diff --git a/solenv/bin/modules/installer/patch/InstallationSet.pm b/solenv/bin/modules/installer/patch/InstallationSet.pm
index 8ea4f1579863..fecb94cacbc0 100644
--- a/solenv/bin/modules/installer/patch/InstallationSet.pm
+++ b/solenv/bin/modules/installer/patch/InstallationSet.pm
@@ -475,7 +475,7 @@ sub Download ($$$)
if ( ! defined $digest
|| $digest->hexdigest() eq $checksum_value)
{
- $installer::logger::Info->print("download was successfull\n");
+ $installer::logger::Info->print("download was successful\n");
if ( ! rename($temporary_filename, $filename))
{
installer::logger::PrintError("can not rename '%s' to '%s'\n", $temporary_filename, $filename);
diff --git a/solenv/bin/modules/installer/scriptitems.pm b/solenv/bin/modules/installer/scriptitems.pm
index a874daac04c0..d11e9cfb36fd 100644
--- a/solenv/bin/modules/installer/scriptitems.pm
+++ b/solenv/bin/modules/installer/scriptitems.pm
@@ -1229,7 +1229,7 @@ sub get_Destination_Directory_For_Item_From_Directorylist # this is used f
}
##########################################################################
-# Searching a file in a list of pathes
+# Searching a file in a list of paths
##########################################################################
sub get_sourcepath_from_filename_and_includepath_classic
@@ -1394,7 +1394,7 @@ sub determine_directory_language_dependency
}
##############################################################
-# Getting all source pathes for all files to be packed
+# Getting all source paths for all files to be packed
# $item can be "Files" or "ScpActions"
##############################################################
@@ -2201,7 +2201,7 @@ sub quoting_illegal_filenames
}
############################################################################
-# Removing multiple occurences of same module.
+# Removing multiple occurrences of same module.
############################################################################
sub optimize_list
@@ -2581,7 +2581,7 @@ sub resolve_links_with_flag_relative
# Before this step is:
# destination=program/libsalhelperC52.so.3, this will be the name of the link
# destinationfile=program/libsalhelperC52.so.3, this will be the linked file or name
- # If the flag RELATIVE is set, the pathes have to be analyzed. If the flag is not set
+ # If the flag RELATIVE is set, the paths have to be analyzed. If the flag is not set
# (this will not occur in the future?) destinationfile has to be an absolute path name
for ( my $i = 0; $i <= $#{$linksarrayref}; $i++ )
diff --git a/solenv/bin/modules/installer/windows/admin.pm b/solenv/bin/modules/installer/windows/admin.pm
index 0bb4e2819033..e7f31a784570 100644
--- a/solenv/bin/modules/installer/windows/admin.pm
+++ b/solenv/bin/modules/installer/windows/admin.pm
@@ -415,7 +415,7 @@ sub create_directory_structure
foreach $dir (@startparents) { create_directory_tree($dir, \%fullpathhash, $targetdir, $dirhash); }
- # Also adding the pathes of the startparents
+ # Also adding the paths of the startparents
foreach $dir (@startparents)
{
if ( ! exists($fullpathhash{$dir}) ) { $fullpathhash{$dir} = $targetdir; }
diff --git a/solenv/bin/modules/installer/windows/directory.pm b/solenv/bin/modules/installer/windows/directory.pm
index 18d036adc789..dc37ae2cdd90 100644
--- a/solenv/bin/modules/installer/windows/directory.pm
+++ b/solenv/bin/modules/installer/windows/directory.pm
@@ -126,7 +126,7 @@ sub make_short_dir_version ($)
$shortstring =~ s/^\s*\_//;
# Setting unique ID to each directory
- # No counter allowed, process must be absolute reproducable due to patch creation process.
+ # No counter allowed, process must be absolute reproducible due to patch creation process.
my $subid = installer::windows::msiglobal::calculate_id($longstring_save, 9); # taking only the first 9 digits
$shortstring = substr($shortstring, 0, $cutlength) . "_" . $subid;
diff --git a/solenv/bin/modules/installer/windows/feature.pm b/solenv/bin/modules/installer/windows/feature.pm
index d7979dd01ee5..d4650a664708 100644
--- a/solenv/bin/modules/installer/windows/feature.pm
+++ b/solenv/bin/modules/installer/windows/feature.pm
@@ -435,7 +435,7 @@ sub add_missing_features ($)
return $features if ! $installer::globals::is_release;
- # Aquire the feature list of the source release.
+ # Acquire the feature list of the source release.
my $source_feature_table = $installer::globals::source_msi->GetTable("Feature");
my $feature_column_index = $source_feature_table->GetColumnIndex("Feature");
diff --git a/solenv/bin/modules/installer/windows/idtglobal.pm b/solenv/bin/modules/installer/windows/idtglobal.pm
index 8caffaf48e98..4b3d59aff50b 100644
--- a/solenv/bin/modules/installer/windows/idtglobal.pm
+++ b/solenv/bin/modules/installer/windows/idtglobal.pm
@@ -2130,7 +2130,7 @@ sub get_customaction_position
##########################################################################
# Setting the position of CustomActions in sequence tables.
-# Replacing all occurences of "POSITIONTEMPLATE_"
+# Replacing all occurrences of "POSITIONTEMPLATE_"
##########################################################################
sub set_positions_in_table
@@ -2140,7 +2140,7 @@ sub set_positions_in_table
$installer::logger::Lang->print("\n");
$installer::logger::Lang->printf("Setting positions in table \"%s\".\n", $tablename);
- # Step 1: Resolving all occurences of "POSITIONTEMPLATE_end"
+ # Step 1: Resolving all occurrences of "POSITIONTEMPLATE_end"
my $lastposition = get_last_position_in_sequencetable($sequencetable);
@@ -2156,9 +2156,9 @@ sub set_positions_in_table
}
}
- # Step 2: Resolving all occurences of "POSITIONTEMPLATE_abc" or "POSITIONTEMPLATE_behind_abc"
+ # Step 2: Resolving all occurrences of "POSITIONTEMPLATE_abc" or "POSITIONTEMPLATE_behind_abc"
# where abc is the name of the reference Custom Action.
- # This has to be done, until there is no more occurence of POSITIONTEMPLATE (success)
+ # This has to be done, until there is no more occurrence of POSITIONTEMPLATE (success)
# or there is no replacement in one circle (failure).
my $template_exists = 0;
@@ -2213,7 +2213,7 @@ sub set_positions_in_table
}
} while (( $template_exists ) && ( $template_replaced ));
- # An error occured, because templates still exist, but could not be replaced.
+ # An error occurred, because templates still exist, but could not be replaced.
# Reason:
# 1. Wrong name of CustomAction in scp2 (typo?)
# 2. Circular dependencies of CustomActions (A after B and B after A)
diff --git a/solenv/bin/modules/installer/windows/msiglobal.pm b/solenv/bin/modules/installer/windows/msiglobal.pm
index db0791468d76..4314319c6105 100644
--- a/solenv/bin/modules/installer/windows/msiglobal.pm
+++ b/solenv/bin/modules/installer/windows/msiglobal.pm
@@ -109,7 +109,7 @@ sub check_ddf_file
##########################################################################
# Lines in ddf files must not be longer than 256 characters.
-# Therefore it can be useful to use relative pathes. Then it is
+# Therefore it can be useful to use relative paths. Then it is
# necessary to change into temp directory before calling
# makecab.exe.
##########################################################################
@@ -183,7 +183,7 @@ sub generate_cab_file_list ($$$$)
$sourcepath = $onefile->{'cyg_sourcepath'};
}
- # to avoid lines with more than 256 characters, it can be useful to use relative pathes
+ # to avoid lines with more than 256 characters, it can be useful to use relative paths
if ($allvariables->{'RELATIVE_PATHES_IN_DDF'})
{
$sourcepath = make_relative_ddf_path($sourcepath);
@@ -581,9 +581,9 @@ sub create_transforms
my $infoline = "Systemcall: $systemcall\n";
$installer::logger::Lang->print($infoline);
- # Problem: msitran.exe in version 4.0 always returns "1", even if no failure occured.
+ # Problem: msitran.exe in version 4.0 always returns "1", even if no failure occurred.
# Therefore it has to be checked, if this is version 4.0. If yes, if the mst file
- # exists and if it is larger than 0 bytes. If this is true, then no error occured.
+ # exists and if it is larger than 0 bytes. If this is true, then no error occurred.
# File Version of msitran.exe: 4.0.6000.16384 has checksum: "b66190a70145a57773ec769e16777b29".
# Same for msitran.exe from wntmsci12: "aa25d3445b94ffde8ef0c1efb77a56b8"
@@ -628,13 +628,13 @@ sub create_transforms
}
else
{
- $infoline = "Filesize indicates that an error occured.\n";
+ $infoline = "Filesize indicates that an error occurred.\n";
$installer::logger::Lang->print($infoline);
}
}
else
{
- $infoline = "File $transformfile does not exist -> An error occured.\n";
+ $infoline = "File $transformfile does not exist -> An error occurred.\n";
$installer::logger::Lang->print($infoline);
}
}
@@ -1289,7 +1289,7 @@ sub prepare_64bit_database
}
}
- # 2. Replacing all occurences of "VersionNT" by "VersionNT64"
+ # 2. Replacing all occurrences of "VersionNT" by "VersionNT64"
my @versionnt_files = ("Componen.idt", "InstallE.idt", "InstallU.idt", "LaunchCo.idt");
@@ -1413,7 +1413,7 @@ sub execute_packaging
$infoline = "chdir: $to \n";
$installer::logger::Lang->print($infoline);
- # if the ddf file contains relative pathes, it is necessary to change into the temp directory
+ # if the ddf file contains relative paths, it is necessary to change into the temp directory
if ( $allvariables->{'RELATIVE_PATHES_IN_DDF'} )
{
$to = $installer::globals::temppath;
@@ -1567,10 +1567,12 @@ sub get_source_codes ($)
Determine values for the product code and upgrade code of the target version.
- As perparation for building a Windows patch, certain conditions have to be fullfilled.
- - The upgrade code changes from old to new version
+ As preparation for building a Windows patch, certain conditions have to be fulfilled.
+ - The upgrade code remains the same
- The product code remains the same
- In order to inforce that we have to access information about the source version.
+ [this is still to be determined. For patches to work we need the same product codes but
+ the install sets install only when the product codes differ.]
+ In order to enforce that we have to access information about the source version.
The resulting values are stored as global variables
$installer::globals::productcode
@@ -1631,6 +1633,28 @@ sub set_global_code_variables ($$)
$installer::logger::Lang->printf("there is no source version => created new guids\n");
}
+ # Keep the upgrade code constant between versions. Read it from the codes.txt file.
+ # Note that this handles regular installation sets and language packs.
+ my $onelanguage = ${$languagesref}[0];
+ $installer::logger::Lang->printf("reading upgrade code for language %s from %s\n",
+ $onelanguage,
+ $installer::globals::codefilename);
+ if (defined $installer::globals::codefilename)
+ {
+ my $code_filename = $installer::globals::codefilename;
+ installer::files::check_file($code_filename);
+ my $codefile = installer::files::read_file($code_filename);
+ my $searchstring = "UPGRADECODE";
+ my $codeblock = installer::windows::idtglobal::get_language_block_from_language_file(
+ $searchstring,
+ $codefile);
+ $target_upgrade_code = installer::windows::idtglobal::get_language_string_from_language_block(
+ $codeblock,
+ $onelanguage,
+ "");
+ }
+ # else use the previously generated upgrade code.
+
$installer::globals::productcode = $target_product_code;
$installer::globals::upgradecode = $target_upgrade_code;
$allvariableshashref->{'PRODUCTCODE'} = $target_product_code;
diff --git a/solenv/bin/modules/installer/windows/sign.pm b/solenv/bin/modules/installer/windows/sign.pm
index 8ce4cc6e054c..38dd2fde5896 100644
--- a/solenv/bin/modules/installer/windows/sign.pm
+++ b/solenv/bin/modules/installer/windows/sign.pm
@@ -631,9 +631,9 @@ sub cabinet_cosistency_check
}
else
{
- $infoline = "ERROR: Problem occured calling diff.exe (File: $lastfile)\n";
+ $infoline = "ERROR: Problem occurred calling diff.exe (File: $lastfile)\n";
$installer::logger::Lang->print($infoline);
- installer::exiter::exit_program("ERROR: Problem occured calling diff.exe (File: $lastfile) !", "cabinet_cosistency_check");
+ installer::exiter::exit_program("ERROR: Problem occurred calling diff.exe (File: $lastfile) !", "cabinet_cosistency_check");
}
}
}
diff --git a/solenv/bin/modules/installer/worker.pm b/solenv/bin/modules/installer/worker.pm
index b7db09969d31..3364db4fe9d6 100644
--- a/solenv/bin/modules/installer/worker.pm
+++ b/solenv/bin/modules/installer/worker.pm
@@ -492,7 +492,7 @@ sub analyze_and_save_logfile
if ( $installer::globals::creating_windows_installer_patch ) { $installer::globals::creating_windows_installer_patch = 0; }
- # Exiting the packaging process, if an error occured.
+ # Exiting the packaging process, if an error occurred.
# This is important, to get an error code "-1", if an error was found in the log file,
# that did not break the packaging process
@@ -607,7 +607,7 @@ sub copy_hash_from_references
###########################################################
# Setting one language in the language independent
-# array of include pathes with $(LANG)
+# array of include paths with $(LANG)
###########################################################
sub get_language_specific_include_pathes
@@ -2354,7 +2354,7 @@ sub add_variables_from_inc_to_hashref
}
##############################################
-# Collecting all files from include pathes
+# Collecting all files from include paths
##############################################
sub collect_all_files_from_includepathes
@@ -2362,7 +2362,7 @@ sub collect_all_files_from_includepathes
my ($patharrayref) = @_;
installer::logger::globallog("Reading all directories: Start");
- $installer::logger::Info->print( "... reading include pathes ...\n" );
+ $installer::logger::Info->print( "... reading include paths ...\n" );
# empty the global
@installer::globals::allincludepathes =();
@@ -2668,7 +2668,7 @@ sub set_time_stamp
}
############################################################
-# Generating pathes for cygwin (first version)
+# Generating paths for cygwin (first version)
# This function has problems with cygwin, if $tmpfilename
# contains many thousand files (OpenOffice SDK).
############################################################
@@ -2695,7 +2695,7 @@ sub generate_cygwin_pathes_old
}
#################################################
-# Generating pathes for cygwin (second version)
+# Generating paths for cygwin (second version)
# This function generates smaller files for
#################################################
@@ -2703,12 +2703,12 @@ sub generate_cygwin_pathes
{
my ($filesref) = @_;
- $installer::logger::Lang->add_timestamp("Starting generating cygwin pathes");
+ $installer::logger::Lang->add_timestamp("Starting generating cygwin paths");
- my $infoline = "Generating cygwin pathes (generate_cygwin_pathes)\n";
+ my $infoline = "Generating cygwin paths (generate_cygwin_pathes)\n";
$installer::logger::Lang->print($infoline);
- my $max = 5000; # number of pathes in one file
+ my $max = 5000; # number of paths in one file
my @pathcollector = ();
my $startnumber = 0;
@@ -2726,7 +2726,7 @@ sub generate_cygwin_pathes
my $temppath = $installer::globals::temppath;
$temppath =~ s/\Q$installer::globals::separator\E\s*$//;
$tmpfilename = $temppath . $installer::globals::separator . $tmpfilename;
- $infoline = "Creating temporary file for cygwin conversion: $tmpfilename (contains $counter pathes)\n";
+ $infoline = "Creating temporary file for cygwin conversion: $tmpfilename (contains $counter paths)\n";
$installer::logger::Lang->print($infoline);
if ( -f $tmpfilename ) { unlink $tmpfilename; }
@@ -2751,9 +2751,9 @@ sub generate_cygwin_pathes
}
else
{
- $installer::logger::Lang->print("ERROR: Failed to convert to cygwin pathes!\n");
+ $installer::logger::Lang->print("ERROR: Failed to convert to cygwin paths!\n");
installer::exiter::exit_program(
- "ERROR: Failed to convert to cygwin pathes!",
+ "ERROR: Failed to convert to cygwin paths!",
"generate_cygwin_pathes");
}
@@ -2782,7 +2782,7 @@ sub generate_cygwin_pathes
}
}
- $installer::logger::Lang->add_timestamp("Ending generating cygwin pathes");
+ $installer::logger::Lang->add_timestamp("Ending generating cygwin paths");
}
##############################################
diff --git a/solenv/bin/modules/installer/xpdinstaller.pm b/solenv/bin/modules/installer/xpdinstaller.pm
index 301878b8ab88..941f9285cbe1 100644
--- a/solenv/bin/modules/installer/xpdinstaller.pm
+++ b/solenv/bin/modules/installer/xpdinstaller.pm
@@ -441,8 +441,8 @@ sub get_forceintoupdate_value
}
###################################################
-# Substituting all occurences of "<" by "&lt;"
-# and all occurences of ">" by "&gt;"
+# Substituting all occurrences of "<" by "&lt;"
+# and all occurrences of ">" by "&gt;"
###################################################
sub replace_brackets_in_string
@@ -456,7 +456,7 @@ sub replace_brackets_in_string
}
###################################################
-# Substituting all occurences of "\uUXYZ" by
+# Substituting all occurrences of "\uUXYZ" by
# "&#xUXYZ;", because the use xml saxparser does
# not know anything about this encoding. Therfore
# the xml file can keep standard encoding "UTF-8"
diff --git a/solenv/bin/modules/installer/ziplist.pm b/solenv/bin/modules/installer/ziplist.pm
index 7c66cdd6851c..c30bbb431ce1 100644
--- a/solenv/bin/modules/installer/ziplist.pm
+++ b/solenv/bin/modules/installer/ziplist.pm
@@ -639,7 +639,7 @@ sub replace_packagetype_in_pathes
}
####################################################
-# Removing ending separators in pathes
+# Removing ending separators in paths
####################################################
sub remove_ending_separator
@@ -667,7 +667,7 @@ sub replace_languages_in_pathes
{
my ( $patharrayref, $languagesref ) = @_;
- installer::logger::include_header_into_logfile("Replacing languages in include pathes:");
+ installer::logger::include_header_into_logfile("Replacing languages in include paths:");
my @patharray = ();
my $infoline = "";
@@ -691,7 +691,7 @@ sub replace_languages_in_pathes
installer::remover::remove_leading_and_ending_whitespaces(\$newline);
- # Is it necessary to refresh the global array, containing all files of all include pathes?
+ # Is it necessary to refresh the global array, containing all files of all include paths?
if ( -d $newdir )
{
# Checking if $newdir is empty
@@ -731,7 +731,7 @@ sub list_all_files_from_include_path
{
my ( $patharrayref) = @_;
- installer::logger::include_header_into_logfile("Include pathes:");
+ installer::logger::include_header_into_logfile("Include paths:");
for ( my $i = 0; $i <= $#{$patharrayref}; $i++ )
{
@@ -790,7 +790,7 @@ sub set_default_productversion_if_required
}
####################################################
-# Removing .. in pathes
+# Removing .. in paths
####################################################
sub simplify_path
@@ -813,7 +813,7 @@ sub simplify_path
}
####################################################
-# Removing ending separators in pathes
+# Removing ending separators in paths
####################################################
sub resolve_relative_pathes
diff --git a/solenv/bin/modules/osarch.pm b/solenv/bin/modules/osarch.pm
index a6b35336035a..1a7fe62944c7 100644
--- a/solenv/bin/modules/osarch.pm
+++ b/solenv/bin/modules/osarch.pm
@@ -23,7 +23,7 @@
# ***********************************************************************
# Description:
# Filename: osarch.pm
-# Autor: EG
+# Author: EG
# Date: 28.10.96
# $Header: /zpool/svn/migration/cvs_rep_09_09_08/code/solenv/bin/modules/osarch.pm,v 1.3 2008-08-18 13:11:04 vg Exp $
# Copyright: STAR DIVISION
diff --git a/solenv/bin/modules/packager/work.pm b/solenv/bin/modules/packager/work.pm
index 0fd4c299da0c..69eeb222cd27 100644
--- a/solenv/bin/modules/packager/work.pm
+++ b/solenv/bin/modules/packager/work.pm
@@ -289,7 +289,7 @@ sub do_broadcast
print "cmd_bcst -s 18 \@$tmpfile_name\n";
unlink "$tmpfile_name";
- if ( $returnvalue ) # an error occured
+ if ( $returnvalue ) # an error occurred
{
if (!($packager::globals::ignoreerrors)) { packager::exiter::exit_program("ERROR: Packing not successful!", "do_broadcast"); }
}
diff --git a/solenv/bin/modules/par2script/parameter.pm b/solenv/bin/modules/par2script/parameter.pm
index 3bc9fc4b08e2..06fac65a1fc4 100644
--- a/solenv/bin/modules/par2script/parameter.pm
+++ b/solenv/bin/modules/par2script/parameter.pm
@@ -47,7 +47,7 @@ sub usage
--------------------------------------------------------------
$par2script::globals::prog
The following parameter are needed:
--i: include pathes, comma separated list
+-i: include paths, comma separated list
-o: setup script file name
-v: writing logfile.txt (optional)
\@\@list: list of all par files
@@ -101,7 +101,7 @@ sub control_parameter
if ($par2script::globals::includepathlist eq "")
{
print "\n************************************************\n";
- print "Error: Include pathes not set not set (-i)!";
+ print "Error: Include paths not set not set (-i)!";
print "\n************************************************\n";
usage();
exit(-1);
diff --git a/solenv/bin/modules/par2script/work.pm b/solenv/bin/modules/par2script/work.pm
index 01c299829b81..0bdfb85dde78 100644
--- a/solenv/bin/modules/par2script/work.pm
+++ b/solenv/bin/modules/par2script/work.pm
@@ -62,14 +62,14 @@ sub analyze_comma_separated_list
}
############################################
-# setting list of include pathes
+# setting list of include paths
############################################
sub setincludes
{
my ($list) = @_;
- # input is the comma separated list of include pathes
+ # input is the comma separated list of include paths
my $includes = analyze_comma_separated_list($list);
@@ -127,7 +127,7 @@ sub make_complete_pathes_for_parfiles
if ( ! $foundparfile )
{
- die "ERROR: Could not find parfile ${$parfiles}[$i] in includes pathes: $par2script::globals::includepathlist !\n";
+ die "ERROR: Could not find parfile ${$parfiles}[$i] in includes paths: $par2script::globals::includepathlist !\n";
}
}
}
diff --git a/solenv/bin/modules/pre2par/parameter.pm b/solenv/bin/modules/pre2par/parameter.pm
index 288dde17eba0..92fe9840faa8 100644
--- a/solenv/bin/modules/pre2par/parameter.pm
+++ b/solenv/bin/modules/pre2par/parameter.pm
@@ -128,7 +128,7 @@ sub control_parameter
##########################################################
# The path parameters can be relative or absolute.
-# This function creates absolute pathes.
+# This function creates absolute paths.
##########################################################
sub make_path_absolute
diff --git a/solenv/bin/packimages.pl b/solenv/bin/packimages.pl
index 54ae0bd12805..1de1ea4e74ea 100755
--- a/solenv/bin/packimages.pl
+++ b/solenv/bin/packimages.pl
@@ -45,7 +45,7 @@ my $global_path; # path to global images directory
my $module_path; # path to module images directory
my $sort_file; # path to file containing sorting data
my @custom_path; # path to custom images directory
-my @imagelist_path; # pathes to directories containing the image lists
+my @imagelist_path; # paths to directories containing the image lists
my $verbose; # be verbose
my $extra_verbose; # be extra verbose
my $do_rebuild = 0; # is rebuilding zipfile required?
diff --git a/solenv/bin/packregistry.xslt b/solenv/bin/packregistry.xslt
index f418e6dda89e..ecab36da9dcf 100644
--- a/solenv/bin/packregistry.xslt
+++ b/solenv/bin/packregistry.xslt
@@ -39,7 +39,7 @@
instead of the below for-each would only issue warnings, not errors, for
non-existing or otherwise bad input files; it is important that the input
filename list is already sorted in an order suitable for the configmgr
- (e.g., xcs files preceeding xcu files).
+ (e.g., xcs files preceding xcu files).
-->
<xsl:for-each select="list/filename">
<xsl:variable name="doc" select="document(concat($prefix, .))"/>
diff --git a/solenv/bin/patch_tool.pl b/solenv/bin/patch_tool.pl
index 7f2d4de5b4fd..36b635117cfc 100644
--- a/solenv/bin/patch_tool.pl
+++ b/solenv/bin/patch_tool.pl
@@ -1281,7 +1281,7 @@ sub Check ($$$$)
{
my ($source_msi, $target_msi, $variables, $product_name) = @_;
- $installer::logger::Info->printf("checking if source and target releases are compatable\n");
+ $installer::logger::Info->printf("checking if source and target releases are compatible\n");
$installer::logger::Info->increase_indentation();
my $result = 1;
diff --git a/solenv/bin/srcrelease.xml b/solenv/bin/srcrelease.xml
index 0049952fbee6..5a05488e83e2 100644
--- a/solenv/bin/srcrelease.xml
+++ b/solenv/bin/srcrelease.xml
@@ -27,7 +27,7 @@
<property name="out.dir" value="."/>
<property name="aoo.name" value="apache-openoffice"/>
<property name="aoo.short.name" value="aoo"/>
- <property name="aoo.ver" value="4.1.0"/>
+ <property name="aoo.ver" value="4.2.0"/>
<property name="excludes.list" value="configure, moz/zipped/*.zip, **/.svn **/.gitignore, **/.git, warn, set_soenv, solver/**, makefile.mk, config.log, config.parms, config.status, bootstrap, autom4te.cache/**, MacOSXX86Env.*, external/unowinreg/unowinreg.dll" />
<property name="excludes.executables" value="solenv/bin/macosx-create-bundle, solenv/bin/linkoo, solenv/bin/localize, solenv/bin/createpdbrelocators, solenv/bin/langwrap, solenv/bin/makedepn, solenv/bin/packmodule, solenv/bin/rpm-wrapper, solenv/bin/relocate, solenv/bin/receditor, solenv/bin/subsequenttests, **/*.sh, **/*.bat, **/*.exe, configure.cmd, oowintool, config.sub, config.guess, **/*.pl"/>
@@ -46,8 +46,6 @@
<property name="release.name" value="${aoo.name}-${aoo.ver}"/>
<property name="release.file.name" value="${release.name}-r${scm.revision}-src"/>
<property name="release.zip" value="${out.dir}/${release.file.name}.zip"/>
- <property name="release.tar" value="${out.dir}/${release.file.name}.tar"/>
- <property name="release.tar.gz" value="${out.dir}/${release.file.name}.tar.gz"/>
<property name="release.tar.bz2" value="${out.dir}/${release.file.name}.tar.bz2"/>
</target>
@@ -79,9 +77,9 @@
<echo level="verbose" message=" ... DONE"/>
</target>
- <target name="source.tar" depends="declarenames">
- <echo level="verbose" message="### creating intermediate ${release.tar} ..."/>
- <tar destfile="${release.tar}" longfile="gnu">
+ <target name="source.tar.bz2" depends="declarenames">
+ <echo level="verbose" message="### creating ${release.tar.bz2} ..."/>
+ <tar destfile="${release.tar.bz2}" compression="bzip2" longfile="gnu">
<tarfileset file="main/NOTICE" fullpath="${release.dir.name}/NOTICE"/>
<tarfileset file="main/LICENSE" fullpath="${release.dir.name}/LICENSE"/>
<tarfileset file="main/README" fullpath="${release.dir.name}/README"/>
@@ -95,19 +93,7 @@
<echo level="verbose" message=" ... DONE"/>
</target>
- <target name="source.tar.gz" depends="source.tar">
- <echo level="verbose" message="### creating ${release.tar.gz} ..."/>
- <gzip destfile="${release.tar.gz}" src="${release.tar}"/>
- <echo level="verbose" message=" ... DONE"/>
- </target>
-
- <target name="source.tar.bz2" depends="source.tar">
- <echo level="verbose" message="### creating ${release.tar.bz2} ..."/>
- <bzip2 destfile="${release.tar.bz2}" src="${release.tar}"/>
- <echo level="verbose" message=" ... DONE"/>
- </target>
-
- <target name="pack" depends="clean,source.zip,source.tar.gz,source.tar.bz2">
+ <target name="pack" depends="clean,source.zip,source.tar.bz2">
<echo level="info" message="### Create source release files for Apache OpenOffice ${aoo.ver} ..."/>
</target>
diff --git a/solenv/bin/transform_description.pl b/solenv/bin/transform_description.pl
index c3343f294124..297efc74cd37 100644
--- a/solenv/bin/transform_description.pl
+++ b/solenv/bin/transform_description.pl
@@ -126,7 +126,7 @@ sub explain
print STDOUT "\n";
print STDOUT " The following transformations are done at the moment:\n";
print STDOUT " - duplicate all lines containing #LANG#, for ever token of \$WITH_LANG\n";
- print STDOUT " replacing every occurance of \$LANG with a token\n";
+ print STDOUT " replacing every occurrence of \$LANG with a token\n";
print STDOUT "\n";
print STDOUT " And yes, the functionality of this script should be\n";
print STDOUT " - moved to solenv/inc/tg_ext.mk\n";
diff --git a/solenv/doc/gbuild/doxygen.cfg b/solenv/doc/gbuild/doxygen.cfg
index 0998b2f6095c..b0f057e51894 100644
--- a/solenv/doc/gbuild/doxygen.cfg
+++ b/solenv/doc/gbuild/doxygen.cfg
@@ -301,7 +301,7 @@ TYPEDEF_HIDES_STRUCT = NO
# causing a significant performance penality.
# If the system has enough physical memory increasing the cache will improve the
# performance by keeping more symbols in memory. Note that the value works on
-# a logarithmic scale so increasing the size by one will rougly double the
+# a logarithmic scale so increasing the size by one will roughly double the
# memory usage. The cache size is given by this formula:
# 2^(16+SYMBOL_CACHE_SIZE). The valid range is 0..9, the default is 0,
# corresponding to a cache size of 2^16 = 65536 symbols
diff --git a/solenv/gbuild/LinkTarget.mk b/solenv/gbuild/LinkTarget.mk
index 3dfd2df82ded..5a3ab0414554 100644
--- a/solenv/gbuild/LinkTarget.mk
+++ b/solenv/gbuild/LinkTarget.mk
@@ -494,7 +494,7 @@ define gb_LinkTarget_add_external_libs
# Make sure that all libraries are given as base names.
ifneq (,$$(filter -l% lib% %.so %.lib, $(2)))
-$$(eval $$(call gb_Output_announce,ERROR: Please give only libary basenames to gb_LinkTarget_add_external_libs))
+$$(eval $$(call gb_Output_announce,ERROR: Please give only library basenames to gb_LinkTarget_add_external_libs))
$$(eval $$(call gb_Output_announce,ERROR: (no prefixes -l% or lib%, no suffixes %.so or %.lib)))
$$(eval $$(call gb_Output_announce,ERROR: libraries given: $(2)))
$$(eval $$(call gb_Output_announce,ERROR: offending: $$(filter -l% lib% %.so %.lib, $(2))))
diff --git a/solenv/gbuild/gbuild.mk b/solenv/gbuild/gbuild.mk
index 7f1fe75c2f37..2bedf65298db 100644
--- a/solenv/gbuild/gbuild.mk
+++ b/solenv/gbuild/gbuild.mk
@@ -212,7 +212,7 @@ $(eval $(call gb_Deliver_init))
# It is important to include them in the right order as that is
# -- at least in part -- defining precedence. This is not an issue in the
# WORKDIR as there are no nameing collisions there, but OUTDIR is a mess
-# and precedence is important there. This is also platform dependant.
+# and precedence is important there. This is also platform dependent.
# For example:
# $(OUTDIR)/bin/% for executables collides
# with $(OUTDIR)/bin/%.res for resources on unix
diff --git a/solenv/inc/_tg_app.mk b/solenv/inc/_tg_app.mk
index fbced222ba8d..7c2698d5f351 100644
--- a/solenv/inc/_tg_app.mk
+++ b/solenv/inc/_tg_app.mk
@@ -279,6 +279,13 @@ $(APP1TARGETN): $(APP1OBJS) $(APP1LIBS) \
.ENDIF # "$(APP1TARGETN)"!=""
+# New rule for automatic run targets of unit test targets
+.IF "$(APP1TEST)" == "enabled" && "$(APP1TARGET)" != ""
+
+$(APP1TARGET)_run: $(APP1TARGETN)
+ $(COMMAND_ECHO) $(AUGMENT_LIBRARY_PATH_LOCAL) $(APP1TARGETN) --gtest_output="xml:$(BIN)/$(APP1TARGET)_result.xml"
+
+.ENDIF
# Instruction for linking
# unroll begin
diff --git a/solenv/inc/libs.mk b/solenv/inc/libs.mk
index 9aa27cfcc20c..d8d70a934f84 100644
--- a/solenv/inc/libs.mk
+++ b/solenv/inc/libs.mk
@@ -278,6 +278,9 @@ CPPUNITLIB = $(CPPUNIT_LIBS)
.ELSE
CPPUNITLIB = -lcppunit
.ENDIF
+
+GTESTLIB= -lgtest
+
.IF "$(SYSTEM_LIBXSLT)"=="YES"
XSLTLIB=$(LIBXSLT_LIBS)
.ELSE
@@ -294,7 +297,6 @@ REDLANDLIB=$(REDLAND_LIBS)
REDLANDLIB=-lrdf
.ENDIF
-
#
# USED_%NAME%_LIBS
# Variablen, in denen in gueltiger Reihenfolge ALLE Libraries,
@@ -470,6 +472,8 @@ HELPLINKERLIB=ihelplinker.lib
JVMACCESSLIB = ijvmaccess.lib
XSLTLIB = libxslt.lib $(LIBXML2LIB)
CPPUNITLIB = icppunit_dll.lib
+GTESTLIB = igtest.lib
+
REDLANDLIB = librdf.lib
JVMFWKLIB = ijvmfwk.lib
diff --git a/solenv/inc/minor.mk b/solenv/inc/minor.mk
index 0a775cae600d..cdc095a8cad8 100644
--- a/solenv/inc/minor.mk
+++ b/solenv/inc/minor.mk
@@ -18,8 +18,8 @@
# under the License.
#
# *************************************************************
-RSCVERSION=410
-RSCREVISION=410m14(Build:9760)
-BUILD=9760
-LAST_MINOR=m14
-SOURCEVERSION=AOO410
+RSCVERSION=420
+RSCREVISION=420m1(Build:9800)
+BUILD=9800
+LAST_MINOR=m1
+SOURCEVERSION=AOO420
diff --git a/solenv/inc/os2gcci.mk b/solenv/inc/os2gcci.mk
index 1c400c616fd9..fc9aaeb658bf 100644
--- a/solenv/inc/os2gcci.mk
+++ b/solenv/inc/os2gcci.mk
@@ -44,7 +44,7 @@ EMXOMFOPT = -q
#//YD SOLAR_JAVA=TRUE
JAVAFLAGSDEBUG=-g
-# filter for supressing verbose messages from linker
+# filter for suppressing verbose messages from linker
#not needed at the moment
#LINKOUTPUT_FILTER=" |& $(SOLARENV)/bin/msg_filter"
diff --git a/solenv/inc/settings.mk b/solenv/inc/settings.mk
index 01234a70d04d..bc1b648594a8 100644
--- a/solenv/inc/settings.mk
+++ b/solenv/inc/settings.mk
@@ -22,7 +22,7 @@
MKFILENAME:=SETTINGS.MK
-# smaller/greater arithmetic's like ".IF 400<=200" are an OOo extention to
+# smaller/greater arithmetic's like ".IF 400<=200" are an OOo extension to
# the initial dmake 4.1PL0 (unfortunately called 4.10) version and are
# tested implicitly by the construction below.
.IF $(MAKEVERSION:s/-cvs//:s/.//)<=410
@@ -602,7 +602,7 @@ LOCAL_COMMON_OUT:=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(OUT))
# disable for makefiles wrapping a gnumake module
.IF "$(TARGET)"!="prj"
-# As this is not part of the initial startup makefile we define an infered
+# As this is not part of the initial startup makefile we define an inferred
# target instead of using $(OUT)/inc/myworld.mk as target name.
# (See iz62795)
$(posix_PWD)/$(OUT)/inc/%world.mk :
@@ -1041,7 +1041,7 @@ MAXPROCESS!:=1
.ENDIF # "$(debug)"!=""
# for multiprocess building in external modules
-# allow seperate handling
+# allow separate handling
EXTMAXPROCESS*=$(MAXPROCESS)
IDLC*=$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/idlc
@@ -1066,7 +1066,7 @@ JAVA*:=$(JAVAINTERPRETER)
.EXPORT : JAVA JAVAI
# Define SCPCOMP without wrapper because pre2par.pl chokes on DOS style
-# pathes. (See iz57443)
+# paths. (See iz57443)
SCPCOMP=$(PERL) $(SOLARENV)/bin/pre2par.pl
SCPLINK=$(PERL) $(SOLARENV)/bin/par2script.pl
LZIP*=lzip
diff --git a/solenv/inc/startup/Readme b/solenv/inc/startup/Readme
index 63a023d10d3e..032de54704b5 100644
--- a/solenv/inc/startup/Readme
+++ b/solenv/inc/startup/Readme
@@ -1,6 +1,6 @@
here are some hints about our use of the startup directory.
-the .INCLUDEDIRS line in startup.mk gives you the oportunity of switching
+the .INCLUDEDIRS line in startup.mk gives you the opportunity of switching
to your own set of central makefiles.
diff --git a/solenv/inc/target.mk b/solenv/inc/target.mk
index 030877ad397f..77a334e5ef25 100644
--- a/solenv/inc/target.mk
+++ b/solenv/inc/target.mk
@@ -126,7 +126,7 @@ APP6RES=
APP7RES=
APP8RES=
APP9RES=
-# unfortunatly there are some applications which don't VCL resources but have
+# unfortunately there are some applications which don't VCL resources but have
# resources of their own
.IF "$(APP1NOSVRES)" != ""
APP1RES=$(APP1NOSVRES)
@@ -150,6 +150,44 @@ APP8TARGET=
APP9TARGET=
.ENDIF
+APP1RUNTEST=
+APP2RUNTEST=
+APP3RUNTEST=
+APP4RUNTEST=
+APP5RUNTEST=
+APP6RUNTEST=
+APP7RUNTEST=
+APP8RUNTEST=
+APP9RUNTEST=
+
+.IF "$(APP1TEST)"=="enabled"
+APP1RUNTEST=$(APP1TARGET)_run
+.ENDIF
+.IF "$(APP2TEST)"=="enabled"
+APP2RUNTEST=$(APP2TARGET)_run
+.ENDIF
+.IF "$(APP3TEST)"=="enabled"
+APP3RUNTEST=$(APP3TARGET)_run
+.ENDIF
+.IF "$(APP4TEST)"=="enabled"
+APP4RUNTEST=$(APP4TARGET)_run
+.ENDIF
+.IF "$(APP5TEST)"=="enabled"
+APP5RUNTEST=$(APP5TARGET)_run
+.ENDIF
+.IF "$(APP6TEST)"=="enabled"
+APP6RUNTEST=$(APP6TARGET)_run
+.ENDIF
+.IF "$(APP7TEST)"=="enabled"
+APP7RUNTEST=$(APP7TARGET)_run
+.ENDIF
+.IF "$(APP8TEST)"=="enabled"
+APP8RUNTEST=$(APP8TARGET)_run
+.ENDIF
+.IF "$(APP9TEST)"=="enabled"
+APP9RUNTEST=$(APP9TARGET)_run
+.ENDIF
+
.IF "$(IDLFILES)"!=""
URDFILES+=$(foreach,i,$(IDLFILES:s/.idl/.urd/:f) $(OUT)/ucr/$(IDLPACKAGE)/$i)
@@ -1156,6 +1194,9 @@ ALLTAR: \
$(APP1TARGETN) $(APP2TARGETN) $(APP3TARGETN) \
$(APP4TARGETN) $(APP5TARGETN) $(APP6TARGETN) \
$(APP7TARGETN) $(APP8TARGETN) $(APP9TARGETN) \
+ $(APP1RUNTEST) $(APP2RUNTEST) $(APP3RUNTEST) \
+ $(APP4RUNTEST) $(APP5RUNTEST) $(APP6RUNTEST) \
+ $(APP7RUNTEST) $(APP8RUNTEST) $(APP9RUNTEST) \
$(JARTARGETN) \
$(JARTARGETDEPN) \
$(SRC1TARGET) \
diff --git a/solenv/inc/tg_app.mk b/solenv/inc/tg_app.mk
index ad2a50f3c34c..0054c98c36e7 100644
--- a/solenv/inc/tg_app.mk
+++ b/solenv/inc/tg_app.mk
@@ -281,6 +281,13 @@ $(APP$(TNR)TARGETN): $(APP$(TNR)OBJS) $(APP$(TNR)LIBS) \
.ENDIF # "$(APP$(TNR)TARGETN)"!=""
+# New rule for automatic run targets of unit test targets
+.IF "$(APP$(TNR)TEST)" == "enabled" && "$(APP$(TNR)TARGET)" != ""
+
+$(APP$(TNR)TARGET)_run: $(APP$(TNR)TARGETN)
+ $(COMMAND_ECHO) $(AUGMENT_LIBRARY_PATH_LOCAL) $(APP$(TNR)TARGETN) --gtest_output="xml:$(BIN)/$(APP$(TNR)TARGET)_result.xml"
+
+.ENDIF
# Instruction for linking
# unroll end
diff --git a/solenv/inc/tg_compv.mk b/solenv/inc/tg_compv.mk
index 5585be8b3b6b..445b037a090e 100644
--- a/solenv/inc/tg_compv.mk
+++ b/solenv/inc/tg_compv.mk
@@ -62,7 +62,7 @@ CFLAGSNUMVERSION_CMD= -version |& cut -d" " -f4-
CCVER:=$(shell @-$(CXX) $(CFLAGSVERSION_CMD))
# and a computed integer for comparing
-# each point seperated token blown up to 4 digits
+# each point separated token blown up to 4 digits
CCNUMVER:=$(shell @-$(CXX) $(CFLAGSNUMVERSION_CMD))
.IF "$(COM)"=="MSC"
diff --git a/solenv/inc/tg_ext.mk b/solenv/inc/tg_ext.mk
index 290b50347273..ab3a519a67f5 100644
--- a/solenv/inc/tg_ext.mk
+++ b/solenv/inc/tg_ext.mk
@@ -164,8 +164,7 @@ $(PACKAGE_DIR)/$(UNTAR_FLAG_FILE) : $(PRJ)/$(ROUT)/misc/$(TARFILE_MD5)-$(TARFILE
@-$(MKDIRHIER) $(PACKAGE_DIR)$(fake_root_dir)
$(COMMAND_ECHO)cd $(PACKAGE_DIR)$(fake_root_dir) && ( $(shell @$(TYPE) $(PRJ)/$(ROUT)/misc/$(TARFILE_MD5)-$(TARFILE_NAME).unpack)) && $(TOUCH) $(UNTAR_FLAG_FILE)
@echo make writeable...
- @cd $(PACKAGE_DIR) && chmod -R +rw $(TARFILE_ROOTDIR) && $(TOUCH) $(UNTAR_FLAG_FILE)
- @cd $(PACKAGE_DIR) && find $(TARFILE_ROOTDIR) -type d -exec chmod a+x {{}} \;
+ @cd $(PACKAGE_DIR) && chmod -R +rwX $(TARFILE_ROOTDIR) && $(TOUCH) $(UNTAR_FLAG_FILE)
#add new files to patch
$(PACKAGE_DIR)/$(ADD_FILES_FLAG_FILE) : $(PACKAGE_DIR)/$(UNTAR_FLAG_FILE) $(T_ADDITIONAL_FILES:+".dummy")
diff --git a/solenv/inc/tg_javav.mk b/solenv/inc/tg_javav.mk
index faaa1ed57bf4..bb1b2b410c41 100644
--- a/solenv/inc/tg_javav.mk
+++ b/solenv/inc/tg_javav.mk
@@ -38,7 +38,7 @@ JFLAGSNUMVERSION_CMD=-version $(PIPEERROR) $(AWK) -v num=true -f $(SOLARENV)/bin
JAVAVER:=$(shell @-$(JAVA_HOME)/bin/java $(JFLAGSVERSION_CMD))
# and a computed integer for comparing
-# each point seperated token blown up to 4 digits
+# each point separated token blown up to 4 digits
JAVANUMVER:=$(shell @-$(JAVA_HOME)/bin/java $(JFLAGSNUMVERSION_CMD))
.ELSE # "$(SOLAR_JAVA)"!=""
diff --git a/solenv/inc/unitools.mk b/solenv/inc/unitools.mk
index d2ad9e5e010a..ef2017d7dcf4 100644
--- a/solenv/inc/unitools.mk
+++ b/solenv/inc/unitools.mk
@@ -185,7 +185,7 @@ CONVERT*:=$(PERL) $(SOLARENV)/bin/leconvert.pl
EXECTEST := $(PERL) -w $(SOLARENV)/bin/exectest.pl
GCCINSTLIB:=$(PERL) -w $(SOLARENV)/bin/gccinstlib.pl
-# The dmake $(PWD) apparantly produces paths with symlinks resolved, while the
+# The dmake $(PWD) apparently produces paths with symlinks resolved, while the
# bash pwd command by default produces paths with unresolved symlinks, so that
# computing PATH_IN_MODULE in settings.mk would fail without the -P flag to the
# bash pwd command:
diff --git a/solenv/inc/unxbsdi.mk b/solenv/inc/unxbsdi.mk
index ef9f271c01a2..0278cb9c6f18 100644
--- a/solenv/inc/unxbsdi.mk
+++ b/solenv/inc/unxbsdi.mk
@@ -28,7 +28,7 @@ AFLAGS=
SOLAR_JAVA=TRUE
JAVAFLAGSDEBUG=-g
-# filter for supressing verbose messages from linker
+# filter for suppressing verbose messages from linker
#not needed at the moment
#LINKOUTPUT_FILTER=" |& $(SOLARENV)/bin/msg_filter"
diff --git a/solenv/inc/unxbsdi2.mk b/solenv/inc/unxbsdi2.mk
index 835016ad96c7..3d2b8d4fbb0e 100644
--- a/solenv/inc/unxbsdi2.mk
+++ b/solenv/inc/unxbsdi2.mk
@@ -28,7 +28,7 @@ AFLAGS=
SOLAR_JAVA=TRUE
JAVAFLAGSDEBUG=-g
-# filter for supressing verbose messages from linker
+# filter for suppressing verbose messages from linker
#not needed at the moment
#LINKOUTPUT_FILTER=" |& $(SOLARENV)/bin/msg_filter"
diff --git a/solenv/inc/unxbsds.mk b/solenv/inc/unxbsds.mk
index d888a0e745f3..fc62c5427f32 100644
--- a/solenv/inc/unxbsds.mk
+++ b/solenv/inc/unxbsds.mk
@@ -28,7 +28,7 @@ AFLAGS=-Wa,-Av8plusa,-K,PIC -x assembler-with-cpp -c $(CDEFS)
SOLAR_JAVA=TRUE
JAVAFLAGSDEBUG=-g
-# filter for supressing verbose messages from linker
+# filter for suppressing verbose messages from linker
#not needed at the moment
#LINKOUTPUT_FILTER=" |& $(SOLARENV)/bin/msg_filter"
diff --git a/solenv/inc/unxfbsd.mk b/solenv/inc/unxfbsd.mk
index 07ba14a5b244..c77128240485 100644
--- a/solenv/inc/unxfbsd.mk
+++ b/solenv/inc/unxfbsd.mk
@@ -37,8 +37,14 @@ JAVAFLAGSDEBUG=-g
.IF "$(CPUNAME)" == "X86_64"
.INCLUDE : unxfbsdx.mk
.ENDIF
+.IF "$(CPUNAME)" == "POWERPC"
+.INCLUDE : unxfbsdppc.mk
+.ENDIF
+.IF "$(CPUNAME)" == "POWERPC64"
+.INCLUDE : unxfbsdppc64.mk
+.ENDIF
-# filter for supressing verbose messages from linker
+# filter for suppressing verbose messages from linker
#not needed at the moment
#LINKOUTPUT_FILTER=" |& $(SOLARENV)/bin/msg_filter"
diff --git a/solenv/inc/unxfbsdppc.mk b/solenv/inc/unxfbsdppc.mk
new file mode 100644
index 000000000000..7f48122404c3
--- /dev/null
+++ b/solenv/inc/unxfbsdppc.mk
@@ -0,0 +1,30 @@
+#**************************************************************
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+#**************************************************************
+
+
+
+# mk file for Unix FreeBSD PowerPC using GCC, please make generic
+# modifications to unxfbsd.mk
+
+DEFAULTOPT=-Os
+PICSWITCH:=-fPIC
+CDEFS+=-DPOWERPC -DPPC
+DLLPOSTFIX=
diff --git a/solenv/inc/unxfbsdppc64.mk b/solenv/inc/unxfbsdppc64.mk
new file mode 100644
index 000000000000..76e89c9c3021
--- /dev/null
+++ b/solenv/inc/unxfbsdppc64.mk
@@ -0,0 +1,31 @@
+#**************************************************************
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+#**************************************************************
+
+
+
+# mk file for Unix FreeBSD 64Bit PowerPC using GCC, inherit from
+# ppc and add some flags
+
+.INCLUDE : unxfbsdppc.mk
+
+CDEFS+=-DPOWERPC64
+CFLAGSCXX+=-mminimal-toc
+BUILD64=1
diff --git a/solenv/inc/unxlng.mk b/solenv/inc/unxlng.mk
index c7cacc3f9b3d..79b585883b51 100644
--- a/solenv/inc/unxlng.mk
+++ b/solenv/inc/unxlng.mk
@@ -34,7 +34,7 @@ ARCH_FLAGS*=
PICSWITCH*:=-fpic
JAVAFLAGSDEBUG=-g
-# filter for supressing verbose messages from linker
+# filter for suppressing verbose messages from linker
#not needed at the moment
#LINKOUTPUT_FILTER=" |& $(SOLARENV)/bin/msg_filter"
diff --git a/sot/qa/complex/olesimplestorage/Test01.java b/sot/qa/complex/olesimplestorage/Test01.java
index 687027c8ab81..1c50d6c76784 100644
--- a/sot/qa/complex/olesimplestorage/Test01.java
+++ b/sot/qa/complex/olesimplestorage/Test01.java
@@ -91,7 +91,7 @@ public class Test01 implements OLESimpleStorageTest
//commit the storage and close it
xOLESimpleStorage.commit ();
- m_aTestHelper.Message ( "Storage commited." );
+ m_aTestHelper.Message ( "Storage committed." );
xOLESimpleStorage.dispose ();
for ( int i = 0; i < pStreamCnt; ++i )
{
diff --git a/sot/source/sdstor/stg.cxx b/sot/source/sdstor/stg.cxx
index d17de661910d..8e5118091fd7 100644
--- a/sot/source/sdstor/stg.cxx
+++ b/sot/source/sdstor/stg.cxx
@@ -741,7 +741,7 @@ sal_Bool Storage::CopyTo( const String& rElem, BaseStorage* pDest, const String&
if( pElem )
{
/*
- this lines are misterious !!! MM
+ this lines are mysterious !!! MM
if( !pElem->IsContained( pDest->pEntry ) )
{
SetError( SVSTREAM_ACCESS_DENIED );
diff --git a/sot/source/sdstor/stgdir.cxx b/sot/source/sdstor/stgdir.cxx
index d0cf28e5bb8a..f4269955f70f 100644
--- a/sot/source/sdstor/stgdir.cxx
+++ b/sot/source/sdstor/stgdir.cxx
@@ -827,7 +827,7 @@ StgDirStrm::StgDirStrm( StgIo& r )
// temporarily use this instance as owner, so
// the TOC pages can be removed.
pEntry = (StgDirEntry*) this; // just for a bit pattern
- SetupEntry( 0, pRoot );
+ SetupEntry(0, pRoot, nSize/STGENTRY_SIZE, 0);
rIo.Revert( pEntry );
pEntry = NULL;
}
@@ -840,8 +840,26 @@ StgDirStrm::~StgDirStrm()
// Recursively parse the directory tree during reading the TOC stream
-void StgDirStrm::SetupEntry( sal_Int32 n, StgDirEntry* pUpper )
+void StgDirStrm::SetupEntry (
+ const sal_Int32 n,
+ StgDirEntry* pUpper,
+ const sal_Int32 nEntryCount,
+ const sal_Int32 nDepth)
{
+ if (nDepth > nEntryCount)
+ {
+ // Tree grew higher than there are different nodes. Looks like
+ // something is wrong with the file. Return now to avoid
+ // infinite recursion.
+ return;
+ }
+ else if (n>=nEntryCount || (n<0 && n!=STG_FREE))
+ {
+ // n has an invalid value. Don't access the corresponding
+ // stream content.
+ return;
+ }
+
void* p = ( n == STG_FREE ) ? NULL : GetEntry( n );
if( p )
{
@@ -852,7 +870,7 @@ void StgDirStrm::SetupEntry( sal_Int32 n, StgDirEntry* pUpper )
{
delete pCur;
rIo.SetError( SVSTREAM_GENERALERROR );
- // an error occured
+ // an error occurred
return;
}
@@ -889,9 +907,9 @@ void StgDirStrm::SetupEntry( sal_Int32 n, StgDirEntry* pUpper )
delete pCur; pCur = NULL;
return;
}
- SetupEntry( nLeft, pUpper );
- SetupEntry( nRight, pUpper );
- SetupEntry( nLeaf, pCur );
+ SetupEntry( nLeft, pUpper, nEntryCount, nDepth+1);
+ SetupEntry( nRight, pUpper, nEntryCount, nDepth+1);
+ SetupEntry( nLeaf, pCur, nEntryCount, nDepth+1);
}
}
}
diff --git a/sot/source/sdstor/stgdir.hxx b/sot/source/sdstor/stgdir.hxx
index daf2f4b3d99a..11f03107f2e1 100644
--- a/sot/source/sdstor/stgdir.hxx
+++ b/sot/source/sdstor/stgdir.hxx
@@ -100,7 +100,11 @@ class StgDirStrm : public StgDataStrm
friend class StgIterator;
StgDirEntry* pRoot; // root of dir tree
short nEntries; // entries per page
- void SetupEntry( sal_Int32, StgDirEntry* );
+ void SetupEntry(
+ const sal_Int32 n,
+ StgDirEntry* pUpper,
+ const sal_Int32 nEntryCount,
+ const sal_Int32 nDepth);
public:
StgDirStrm( StgIo& );
~StgDirStrm();
diff --git a/sot/source/sdstor/stgelem.cxx b/sot/source/sdstor/stgelem.cxx
index 2e4bf396d4d9..0327f3e1aa6c 100644
--- a/sot/source/sdstor/stgelem.cxx
+++ b/sot/source/sdstor/stgelem.cxx
@@ -258,7 +258,7 @@ void StgHeader::SetMasters( sal_Int32 n )
///////////////////////////// class StgEntry /////////////////////////////
-// This class is only a wrapper around teh dir entry structure
+// This class is only a wrapper around the dir entry structure
// which retrieves and sets data.
// The name must be smaller than 32 chars. Conversion into Unicode
diff --git a/sot/source/sdstor/ucbstorage.cxx b/sot/source/sdstor/ucbstorage.cxx
index 6130b4cfbd1c..356b3fe929cf 100644
--- a/sot/source/sdstor/ucbstorage.cxx
+++ b/sot/source/sdstor/ucbstorage.cxx
@@ -578,7 +578,7 @@ public:
SV_DECL_IMPL_REF( UCBStorage_Impl );
-// this struct contains all neccessary information on an element inside a UCBStorage
+// this struct contains all necessary information on an element inside a UCBStorage
struct UCBStorageElement_Impl
{
String m_aName; // the actual URL relative to the root "folder"
@@ -775,7 +775,7 @@ Reference<XInputStream> UCBStorageStream_Impl::GetXInputStream()
if( aResult.is() )
{
// temporary stream can not be used here any more
- // and can not be opened untill wrapper is closed
+ // and can not be opened until wrapper is closed
// stream is deleted by wrapper after use
m_pStream = NULL;
m_nRepresentMode = xinputstream;
@@ -842,7 +842,7 @@ sal_Bool UCBStorageStream_Impl::Init()
if( m_bSourceRead && !m_rSource.is() )
{
- // source file contain usefull information and is not opened
+ // source file contain useful information and is not opened
// open it from the point of noncopied data
try
@@ -1278,7 +1278,7 @@ sal_Int16 UCBStorageStream_Impl::Commit()
sal_Bool UCBStorageStream_Impl::Revert()
{
- // if an OLEStorage is created on this stream, no "revert" is neccessary because OLEStorages do nothing on "Revert" !
+ // if an OLEStorage is created on this stream, no "revert" is necessary because OLEStorages do nothing on "Revert" !
if ( m_bCommited )
{
DBG_ERROR("Revert while commit is in progress!" );
@@ -2575,7 +2575,7 @@ sal_Int16 UCBStorage_Impl::Commit()
return nRet;
}
- // after successfull root commit all elements names and types are adjusted and all removed elements
+ // after successful root commit all elements names and types are adjusted and all removed elements
// are also removed from the lists
UCBStorageElement_Impl* pInnerElement = m_aChildrenList.First();
sal_Bool bRet = sal_True;
@@ -2876,7 +2876,7 @@ sal_Bool UCBStorage::CopyTo( const String& rElemName, BaseStorage* pDest, const
}
else
{
- // for copying no optimization is usefull, because in every case the stream data must be copied
+ // for copying no optimization is useful, because in every case the stream data must be copied
UCBStorageElement_Impl* pElement = FindElement_Impl( rElemName );
if ( pElement )
return CopyStorageElement_Impl( *pElement, pDest, rNew );
@@ -2893,7 +2893,7 @@ sal_Bool UCBStorage::Commit()
// mark this storage for sending it on root commit
pImp->m_bCommited = sal_True;
if ( pImp->m_bIsRoot )
- // the root storage coordinates commiting by sending a Commit command to its content
+ // the root storage coordinates committing by sending a Commit command to its content
return ( pImp->Commit() != COMMIT_RESULT_FAILURE );
else
return sal_True;
diff --git a/starmath/inc/toolbox.hxx b/starmath/inc/toolbox.hxx
index 7b625e08a97e..ca6700ba4cc2 100644
--- a/starmath/inc/toolbox.hxx
+++ b/starmath/inc/toolbox.hxx
@@ -36,7 +36,7 @@ class SmToolBoxWindow : public SfxFloatingWindow
protected:
ToolBox aToolBoxCat;
- FixedLine aToolBoxCat_Delim; // to visualy seperate the catalog part
+ FixedLine aToolBoxCat_Delim; // to visualy separate the catalog part
ToolBox *pToolBoxCmd;
ToolBox *vToolBoxCategories[NUM_TBX_CATEGORIES];
ImageList *aImageLists [NUM_TBX_CATEGORIES + 1]; /* regular */
diff --git a/starmath/source/mathmlexport.cxx b/starmath/source/mathmlexport.cxx
index bcd26ce298cc..8f0026da63cd 100644
--- a/starmath/source/mathmlexport.cxx
+++ b/starmath/source/mathmlexport.cxx
@@ -443,7 +443,7 @@ uno::Reference< uno::XInterface > SAL_CALL SmXMLExport_createInstance(
{
// #110680#
// return (cppu::OWeakObject*)new SmXMLExport( EXPORT_ALL );
- // EXPORT_OASIS is required here allthough there is no differrence between
+ // EXPORT_OASIS is required here although there is no differrence between
// OOo and OASIS, because without the flag, a transformation to OOo would
// be chained in.
return (cppu::OWeakObject*)new SmXMLExport( rSMgr, EXPORT_OASIS|EXPORT_ALL );
@@ -869,7 +869,7 @@ void SmXMLExport::ExportMath(const SmNode *pNode, int /*nLevel*/)
sal_Unicode cTmp = ConvertMathToMathML( nArse[0] );
if (cTmp != 0)
nArse[0] = cTmp;
- DBG_ASSERT(nArse[0] != 0xffff,"Non existant symbol");
+ DBG_ASSERT(nArse[0] != 0xffff,"Non existent symbol");
nArse[1] = 0;
GetDocHandler()->characters(nArse);
}
@@ -1073,11 +1073,11 @@ void SmXMLExport::ExportBrace(const SmNode *pNode, int nLevel)
nArse[1] = 0;
nArse[0] = static_cast<
const SmMathSymbolNode* >(pLeft)->GetText().GetChar(0);
- DBG_ASSERT(nArse[0] != 0xffff,"Non existant symbol");
+ DBG_ASSERT(nArse[0] != 0xffff,"Non existent symbol");
AddAttribute(XML_NAMESPACE_MATH, XML_OPEN,nArse);
nArse[0] = static_cast<
const SmMathSymbolNode* >(pRight)->GetText().GetChar(0);
- DBG_ASSERT(nArse[0] != 0xffff,"Non existant symbol");
+ DBG_ASSERT(nArse[0] != 0xffff,"Non existent symbol");
AddAttribute(XML_NAMESPACE_MATH, XML_CLOSE,nArse);
pFences = new SvXMLElementExport(*this, XML_NAMESPACE_MATH, XML_MFENCED,
sal_True,sal_True);
diff --git a/starmath/source/mathmlimport.cxx b/starmath/source/mathmlimport.cxx
index ed087375e6fc..fd2354b9665b 100644
--- a/starmath/source/mathmlimport.cxx
+++ b/starmath/source/mathmlimport.cxx
@@ -2437,7 +2437,7 @@ void SmXMLRowContext_Impl::EndElement()
//If the first or last element is an operator with stretchyness
//set then we must create a brace node here from those elements,
//removing the stretchness from the operators and applying it to
- //ourselves, and creating the appropiate dummy StarMath none bracket
+ //ourselves, and creating the appropriate dummy StarMath none bracket
//to balance the arrangement
if (((aRelationArray[0]->GetScaleMode() == SCALE_HEIGHT)
&& (aRelationArray[0]->GetType() == NMATH))
@@ -2551,7 +2551,7 @@ SvXMLImportContext *SmXMLRowContext_Impl::StrictCreateChildContext(
break;
/*Note: The maligngroup should only be seen when the row
- * (or decendants) are in a table*/
+ * (or descendants) are in a table*/
case XML_TOK_MALIGNGROUP:
pContext = GetSmImport().CreateAlignGroupContext(nPrefix,rLocalName,
xAttrList);
diff --git a/starmath/source/mathtype.cxx b/starmath/source/mathtype.cxx
index 7f4f6e05d80f..fb86991854c1 100644
--- a/starmath/source/mathtype.cxx
+++ b/starmath/source/mathtype.cxx
@@ -723,7 +723,7 @@ int MathType::Parse(SotStorage *pStor)
#endif
int nRet = HandleRecords();
- //little crude hack to close ocassionally open expressions
+ //little crude hack to close occasionally open expressions
//a sophisticated system to determine what expressions are
//opened is required, but this is as much work as rewriting
//starmaths internals.
@@ -1827,7 +1827,7 @@ int MathType::HandleRecords(int nLevel,sal_uInt8 nSelector,
//symbols that follow some of these
//records. Foo Data.
- /*In matrices and piles we cannot seperate equation
+ /*In matrices and piles we cannot separate equation
*lines with the newline keyword*/
if (nMatrixCols==0)
newline++;
@@ -2214,7 +2214,7 @@ int MathType::StartTemplate(sal_uInt16 nSelector,sal_uInt16 nVariation)
//theres just no way we can now handle any character
//attributes (from mathtypes perspective) centered
//over an expression but above template attribute
- //such as widevec and similiar constructs
+ //such as widevec and similar constructs
//we have to drop them
nPendingAttributes=0;
return nOldPending;
@@ -3357,7 +3357,7 @@ void MathType::HandleAttributes(SmNode *pNode,int nLevel)
//theres just no way we can now handle any character
//attributes (from mathtypes perspective) centered
//over an expression but above template attributes
- //such as widevec and similiar constructs
+ //such as widevec and similar constructs
//we have to drop them
nOldPending = StartTemplate(0x2f,0x01);
break;
diff --git a/starmath/source/node.cxx b/starmath/source/node.cxx
index 86832dd18a8c..bff9321f2c38 100644
--- a/starmath/source/node.cxx
+++ b/starmath/source/node.cxx
@@ -1001,7 +1001,7 @@ void SmRootNode::Arrange(const OutputDevice &rDev, const SmFormat &rFormat)
pRootSym->Arrange(rDev, rFormat);
Point aPos = pRootSym->AlignTo(*pBody, RP_LEFT, RHA_CENTER, RVA_BASELINE);
- //! overrride calulated vertical position
+ //! overrride calculated vertical position
aPos.Y() = pRootSym->GetTop() + pBody->GetBottom() - pRootSym->GetBottom();
aPos.Y() -= nVerOffset;
pRootSym->MoveTo(aPos);
@@ -2578,7 +2578,7 @@ void SmMatrixNode::Arrange(const OutputDevice &rDev, const SmFormat &rFormat)
// norm distance from which the following two are calcutated
const int nNormDist = 3 * GetFont().GetSize().Height();
- // define horizontal and vertical minimal distances that seperate
+ // define horizontal and vertical minimal distances that separate
// the elements
long nHorDist = nNormDist * rFormat.GetDistance(DIS_MATRIXCOL) / 100L,
nVerDist = nNormDist * rFormat.GetDistance(DIS_MATRIXROW) / 100L;
@@ -2882,7 +2882,7 @@ bool lcl_IsFromGreekSymbolSet( const String &rTokenText )
{
bool bRes = false;
- // valid symbol name needs to have a '%' at pos 0 and at least an additonal char
+ // valid symbol name needs to have a '%' at pos 0 and at least an additional char
if (rTokenText.Len() > 2 && rTokenText.GetBuffer()[0] == (sal_Unicode)'%')
{
String aName( rTokenText.Copy(1) );
diff --git a/starmath/source/smdetect.cxx b/starmath/source/smdetect.cxx
index 4b50fd66dfed..94d8d9ccd267 100644
--- a/starmath/source/smdetect.cxx
+++ b/starmath/source/smdetect.cxx
@@ -326,17 +326,69 @@ SmFilterDetect::~SmFilterDetect()
}
else
{
- const sal_uInt16 nSize = 5;
- sal_Char aBuffer[nSize+1];
- aBuffer[nSize] = 0;
+ // #124636# detection should not only check for xml, but at least also for
+ // the math start element and the MathML URL. Additionally take their order
+ // into account. Also allow the case where the start element has a namespace
+ // (e.g. <bla:math), but in that case ensure that it is in front of an evtl.
+ // xmlns:math namespace declaration and thus not part of that
+ const sal_uInt16 nReadSize(4095);
+ sal_Char aBuffer[nReadSize+1];
pStrm->Seek( STREAM_SEEK_TO_BEGIN );
- sal_uLong nBytesRead = pStrm->Read( aBuffer, nSize );
- if (nBytesRead == nSize)
+ const sal_uLong nBytesRead(pStrm->Read( aBuffer, nReadSize ));
+
+ if(nBytesRead > (5 + 1 + 34 + 5)) // xml + '>' + URL + '(<|:)math'
{
- if (0 == strncmp( "<?xml",aBuffer,nSize))
+ // end string with null
+ aBuffer[nBytesRead + 1] = 0;
+
+ // is it a xml file?
+ const sal_Char* pXML = strstr(aBuffer, "<?xml");
+ bool isMathFile(false);
+
+ if(pXML)
+ {
+ // does it have the MathML URL?
+ const sal_Char* pURL = strstr(aBuffer, "http://www.w3.org/1998/Math/MathML");
+
+ // URL has to be after XML start
+ if(pURL && pURL > pXML)
+ {
+ // look if we have a direct math start element
+ sal_Char* pMathStart = strstr(aBuffer, "<math");
+
+ if(!pMathStart)
+ {
+ // if not, look if we have a math start element in another namespace
+ pMathStart = strstr(aBuffer, ":math");
+
+ if(pMathStart)
+ {
+ // if found, this has to be in front of the evtl. also existing namespace
+ // declaration also containing :math to be the start element
+ sal_Char* pNamespaceMath = strstr(aBuffer, "xmlns:math");
+
+ if(pNamespaceMath && pMathStart > pNamespaceMath)
+ {
+ // invalid :math found (probably part of the namespace declaration)
+ // -> this cannot be the math start element
+ pMathStart = 0;
+ }
+ }
+ }
+
+ // MathStart has to be before the URL
+ if(pMathStart && pMathStart < pURL)
+ {
+ isMathFile = true;
+ }
+ }
+ }
+
+ if(isMathFile)
{
static const sal_Char sFltrNm_2[] = MATHML_XML;
static const sal_Char sTypeNm_2[] = "math_MathML_XML_Math";
+
aFilterName.AssignAscii( sFltrNm_2 );
aTypeName.AssignAscii( sTypeNm_2 );
}
diff --git a/starmath/source/toolbox.cxx b/starmath/source/toolbox.cxx
index 44fc2893ad91..40ec9e63f859 100644
--- a/starmath/source/toolbox.cxx
+++ b/starmath/source/toolbox.cxx
@@ -60,7 +60,7 @@ static sal_uInt16 GetImageListRID( sal_uInt16 nCategoryRID, sal_Bool bHighContr
case RID_FORMAT_CAT : nRes = RID_IL_FORMAT; break;
case RID_MISC_CAT : nRes = RID_IL_MISC; break;
default :
- DBG_ERROR( "unkown category" );
+ DBG_ERROR( "unknown category" );
}
if (nRes != 0xFFFF && bHighContrast)
++nRes; //! the resource ID for the high contrast image list is just +1 compared to the regular ones
@@ -116,7 +116,7 @@ static sal_uInt16 GetCategoryRID( sal_uInt16 nResId )
if (nResId != RID_IL_CATALOG && nResId != RID_ILH_CATALOG)
{
#if OSL_DEBUG_LEVEL > 1
- DBG_ERROR( "unkown category" );
+ DBG_ERROR( "unknown category" );
#endif
}
}
@@ -341,7 +341,7 @@ void SmToolBoxWindow::SetCategory(sal_uInt16 nCategoryRID)
pToolBoxCmd->Hide();
sal_Int16 nIdx = GetToolBoxCategoriesIndex( nCategoryRID );
- DBG_ASSERT( nIdx >= 0, "unkown category" );
+ DBG_ASSERT( nIdx >= 0, "unknown category" );
if (nIdx >= 0)
pToolBoxCmd = vToolBoxCategories[nIdx];
diff --git a/starmath/source/view.cxx b/starmath/source/view.cxx
index 8caf0db57fd7..acc528abb63a 100644
--- a/starmath/source/view.cxx
+++ b/starmath/source/view.cxx
@@ -640,7 +640,7 @@ void SmCmdBoxWindow::StateChanged( StateChangedType nStateChange )
// aEdit.GrabFocus();
// grab focus as above does not work...
- // Thus we implement a timer based solution to get the inital
+ // Thus we implement a timer based solution to get the initial
// focus in the Edit window.
aInitialFocusTimer.Start();
}
diff --git a/stlport/systemstl/hash_map b/stlport/systemstl/hash_map
index 5c2777f85c97..812a51ad39ea 100644
--- a/stlport/systemstl/hash_map
+++ b/stlport/systemstl/hash_map
@@ -55,40 +55,38 @@ template<
typename __K,
typename __T,
typename __H = hash<__K>,
- typename __E = equal_to<__K>,
- typename __A = allocator<pair<__K,__T> > >
+ typename __E = equal_to<__K> >
class hash_map
-: public unordered_map<__K,__T,__H,__E,__A>
+: public unordered_map<__K,__T,__H,__E>
{
public:
- typedef unordered_map<__K,__T,__H,__E,__A> _super;
+ typedef unordered_map<__K,__T,__H,__E> _super;
hash_map( void) {}
hash_map( size_t n) : _super( n) {}
private:
// setting the hasher dynamically is not supported in the emulation!
- hash_map( size_t, const __H&, const __E& rE=__E(), const __A& rA=__A()); // not implemented
+ hash_map( size_t, const __H&, const __E& rE=__E()); // not implemented
};
template<
typename __K,
typename __T,
typename __H = hash<__K>,
- typename __E = equal_to<__K>,
- typename __A = allocator<pair<__K,__T> > >
+ typename __E = equal_to<__K> >
class hash_multimap
-: public unordered_multimap<__K,__T,__H,__E,__A>
+: public unordered_multimap<__K,__T,__H,__E>
{
public:
- typedef unordered_multimap<__K,__T,__H,__E,__A> _super;
+ typedef unordered_multimap<__K,__T,__H,__E> _super;
hash_multimap( void) {}
hash_multimap( size_t n) : _super( n) {}
private:
// setting the hasher dynamically is not supported in the emulation!
- hash_multimap( size_t, const __H&, const __E& rE=__E(), const __A& rA=__A()); // not implemented
+ hash_multimap( size_t, const __H&, const __E& rE=__E()); // not implemented
};
} // namespace std
diff --git a/stlport/systemstl/hash_set b/stlport/systemstl/hash_set
index a6bc33cf0d6c..5435ee93b7cc 100644
--- a/stlport/systemstl/hash_set
+++ b/stlport/systemstl/hash_set
@@ -51,37 +51,35 @@ namespace std
template<
typename __K,
typename __H = hash<__K>,
- typename __E = equal_to<__K>,
- typename __A = allocator<__K> >
+ typename __E = equal_to<__K> >
class hash_set
-: public unordered_set<__K,__H,__E,__A>
+: public unordered_set<__K,__H,__E>
{
- typedef unordered_set<__K,__H,__E,__A> _super;
+ typedef unordered_set<__K,__H,__E> _super;
public:
hash_set( void) {}
hash_set( size_t n) : _super(n) {}
private:
// setting the hasher dynamically is not supported in the emulation!
- hash_set( size_t, const __H&, const __E& rE=__E(), const __A& rA=__A()); // not implemented
+ hash_set( size_t, const __H&, const __E& rE=__E()); // not implemented
};
template<
typename __K,
typename __H = hash<__K>,
- typename __E = equal_to<__K>,
- typename __A = allocator<__K> >
+ typename __E = equal_to<__K> >
class hash_multiset
-: public unordered_multiset<__K,__H,__E,__A>
+: public unordered_multiset<__K,__H,__E>
{
- typedef unordered_multiset<__K,__H,__E,__A> _super;
+ typedef unordered_multiset<__K,__H,__E> _super;
public:
hash_multiset( void) {}
hash_multiset( size_t n) : _super( n) {}
private:
// setting the hasher dynamically is not supported in the emulation!
- hash_multiset( size_t, const __H&, const __E& rE=__E(), const __A& rA=__A()); // not implemented
+ hash_multiset( size_t, const __H&, const __E& rE=__E()); // not implemented
};
} // namespace std
diff --git a/stlport/systemstl/slist b/stlport/systemstl/slist
index a51fc2460cde..4ff1514f2ceb 100644
--- a/stlport/systemstl/slist
+++ b/stlport/systemstl/slist
@@ -57,11 +57,11 @@ namespace std
using STLP4_SLIST_EMUBASE;
// lame emulation of the pre-C++11 slist using the std::forward_list (or std::list)
-template< typename T, class A=allocator<T> >
-class slist : public STLP4_SLIST_EMUBASE<T,A>
+template< typename T >
+class slist : public STLP4_SLIST_EMUBASE<T>
{
public:
- typedef typename STLP4_SLIST_EMUBASE<T,A> _super;
+ typedef typename STLP4_SLIST_EMUBASE<T> _super;
typedef typename _super::iterator slist_mit;
typedef typename _super::const_iterator slist_cit;
diff --git a/stoc/source/bootstrap/bootstrap.xml b/stoc/source/bootstrap/bootstrap.xml
index e63b84a78efd..d51b724b66f1 100644
--- a/stoc/source/bootstrap/bootstrap.xml
+++ b/stoc/source/bootstrap/bootstrap.xml
@@ -57,7 +57,7 @@
<author> Juergen Schmidt </author>
<name> com.sun.star.comp.stoc.NestedRegistry </name>
<description>
- This component provides access to a simple hierachical registry. The registry based on
+ This component provides access to a simple hierarchical registry. The registry based on
two registry file.
</description>
<loader-name> com.sun.star.loader.SharedLibrary </loader-name>
@@ -235,7 +235,7 @@ This service is an implementation of the com.sun.star.security.Policy service.
<author> Juergen Schmidt </author>
<name> com.sun.star.comp.stoc.SimpleRegistry </name>
<description>
- This component provides access to a simple hierachical registry. The registry based on
+ This component provides access to a simple hierarchical registry. The registry based on
one registry file.
</description>
<loader-name> com.sun.star.loader.SharedLibrary </loader-name>
diff --git a/stoc/source/corereflection/criface.cxx b/stoc/source/corereflection/criface.cxx
index 9fcf498a830a..bc26d0cb9550 100644
--- a/stoc/source/corereflection/criface.cxx
+++ b/stoc/source/corereflection/criface.cxx
@@ -330,7 +330,7 @@ void IdlAttributeFieldImpl::checkException(
throw WrappedTargetRuntimeException(
OUString(
RTL_CONSTASCII_USTRINGPARAM(
- "non-RuntimeException occured when accessing an"
+ "non-RuntimeException occurred when accessing an"
" interface type attribute")),
context, e);
}
@@ -744,7 +744,7 @@ Any SAL_CALL IdlInterfaceMethodImpl::invoke( const Any & rObj, Sequence< Any > &
InvocationTargetException aExc;
aExc.Context = *(const Reference< XInterface > *)rObj.getValue();
- aExc.Message = OUString( RTL_CONSTASCII_USTRINGPARAM("exception occured during invocation!") );
+ aExc.Message = OUString( RTL_CONSTASCII_USTRINGPARAM("exception occurred during invocation!") );
uno_any_destruct(
&aExc.TargetException,
reinterpret_cast< uno_ReleaseFunc >(cpp_release) );
diff --git a/stoc/source/invocation/invocation.cxx b/stoc/source/invocation/invocation.cxx
index 2ea5e8260f9e..370f51ffe5a6 100644
--- a/stoc/source/invocation/invocation.cxx
+++ b/stoc/source/invocation/invocation.cxx
@@ -638,7 +638,7 @@ void Invocation_Impl::setValue( const OUString& PropertyName, const Any& Value )
catch (Exception & exc)
{
throw InvocationTargetException(
- OUString( RTL_CONSTASCII_USTRINGPARAM("exception occured in setValue(): ") ) +
+ OUString( RTL_CONSTASCII_USTRINGPARAM("exception occurred in setValue(): ") ) +
exc.Message, Reference< XInterface >(), makeAny( exc /* though sliced */ ) );
}
}
@@ -1145,11 +1145,11 @@ InvocationService::InvocationService( const Reference<XComponentContext> & xCtx
OUString(
RTL_CONSTASCII_USTRINGPARAM("/singletons/com.sun.star.reflection.theCoreReflection")) )
>>= xCoreReflection;
- OSL_ENSURE( xCoreReflection.is(), "### CoreReflection singleton not accessable!?" );
+ OSL_ENSURE( xCoreReflection.is(), "### CoreReflection singleton not accessible!?" );
if (! xCoreReflection.is())
{
throw DeploymentException(
- OUString( RTL_CONSTASCII_USTRINGPARAM("/singletons/com.sun.star.reflection.theCoreReflection singleton not accessable") ),
+ OUString( RTL_CONSTASCII_USTRINGPARAM("/singletons/com.sun.star.reflection.theCoreReflection singleton not accessible") ),
Reference< XInterface >() );
}
// xCoreReflection = Reference<XIdlReflection>(
diff --git a/stoc/source/invocation_adapterfactory/iafactory.cxx b/stoc/source/invocation_adapterfactory/iafactory.cxx
index 5e7f8c268c8c..b0418cee2ff7 100644
--- a/stoc/source/invocation_adapterfactory/iafactory.cxx
+++ b/stoc/source/invocation_adapterfactory/iafactory.cxx
@@ -299,7 +299,7 @@ bool AdapterImpl::coerce_assign(
m_pFactory->m_pConverter,
m_pFactory->m_pConvertToTD, &ret, args, &p_exc );
- if (p_exc) // exception occured
+ if (p_exc) // exception occurred
{
OSL_ASSERT(
p_exc->pType->eTypeClass == typelib_TypeClass_EXCEPTION );
diff --git a/stoc/source/proxy_factory/proxyfac.cxx b/stoc/source/proxy_factory/proxyfac.cxx
index 543386b472cc..1a65eefb7a55 100644
--- a/stoc/source/proxy_factory/proxyfac.cxx
+++ b/stoc/source/proxy_factory/proxyfac.cxx
@@ -155,7 +155,7 @@ UnoInterfaceReference FactoryImpl::binuno_queryInterface(
}
else
{
- // exception occured:
+ // exception occurred:
OSL_ENSURE(
typelib_typedescriptionreference_isAssignableFrom(
::getCppuType( reinterpret_cast<
diff --git a/stoc/source/security/access_controller.cxx b/stoc/source/security/access_controller.cxx
index ec2d6368903d..70c32513d5eb 100644
--- a/stoc/source/security/access_controller.cxx
+++ b/stoc/source/security/access_controller.cxx
@@ -849,7 +849,7 @@ PermissionCollection AccessController::getEffectivePermissions(
clearPostPoned(); // safety: exception could have happened before checking postponed?
OUStringBuffer buf( 64 );
buf.appendAscii(
- RTL_CONSTASCII_STRINGPARAM("deployment error (AccessControlException occured): ") );
+ RTL_CONSTASCII_STRINGPARAM("deployment error (AccessControlException occurred): ") );
buf.append( exc.Message );
throw DeploymentException( buf.makeStringAndClear(), exc.Context );
}
diff --git a/stoc/source/security/permissions.cxx b/stoc/source/security/permissions.cxx
index d74dd5769631..e9c95c7c33ca 100644
--- a/stoc/source/security/permissions.cxx
+++ b/stoc/source/security/permissions.cxx
@@ -416,11 +416,11 @@ bool FilePermission::implies( Permission const & perm ) const SAL_THROW( () )
#ifdef SAL_W32
return ((0 == ::rtl_ustr_compareIgnoreAsciiCase_WithLength(
demanded.m_url.pData->buffer, len, m_url.pData->buffer, len )) &&
- (0 > demanded.m_url.indexOf( '/', len ))); // in addition, no deeper pathes
+ (0 > demanded.m_url.indexOf( '/', len ))); // in addition, no deeper paths
#else
return ((0 == ::rtl_ustr_reverseCompare_WithLength(
demanded.m_url.pData->buffer, len, m_url.pData->buffer, len )) &&
- (0 > demanded.m_url.indexOf( '/', len ))); // in addition, no deeper pathes
+ (0 > demanded.m_url.indexOf( '/', len ))); // in addition, no deeper paths
#endif
}
return false;
diff --git a/stoc/source/servicemanager/servicemanager.cxx b/stoc/source/servicemanager/servicemanager.cxx
index b642066697ce..fe69bec5e937 100644
--- a/stoc/source/servicemanager/servicemanager.cxx
+++ b/stoc/source/servicemanager/servicemanager.cxx
@@ -928,7 +928,7 @@ void OServiceManager::onUnloadingNotify()
IT_MM it_end1= m_ServiceMap.end();
list<IT_MM> listDeleteServiceMap;
typedef list<IT_MM>::const_iterator CIT_DMM;
- // find occurences in m_ServiceMap
+ // find occurrences in m_ServiceMap
for(IT_MM it_i1= m_ServiceMap.begin(); it_i1 != it_end1; it_i1++)
{
if( m_SetLoadedFactories.find( it_i1->second) != it_SetEnd)
@@ -1041,7 +1041,7 @@ void OServiceManager::disposing()
{
#if OSL_DEBUG_LEVEL > 1
OString str( OUStringToOString( exc.Message, RTL_TEXTENCODING_ASCII_US ) );
- OSL_TRACE( "### RuntimeException occured upon disposing factory: %s", str.getStr() );
+ OSL_TRACE( "### RuntimeException occurred upon disposing factory: %s", str.getStr() );
#else
(void) exc; // unused
#endif
@@ -1263,7 +1263,7 @@ Reference< XInterface > OServiceManager::createInstanceWithContext(
{
#if OSL_DEBUG_LEVEL > 1
OString str( OUStringToOString( exc.Message, RTL_TEXTENCODING_ASCII_US ) );
- OSL_TRACE( "### DisposedException occured: %s", str.getStr() );
+ OSL_TRACE( "### DisposedException occurred: %s", str.getStr() );
#else
(void) exc; // unused
#endif
@@ -1327,7 +1327,7 @@ Reference< XInterface > OServiceManager::createInstanceWithArgumentsAndContext(
{
#if OSL_DEBUG_LEVEL > 1
OString str( OUStringToOString( exc.Message, RTL_TEXTENCODING_ASCII_US ) );
- OSL_TRACE( "### DisposedException occured: %s", str.getStr() );
+ OSL_TRACE( "### DisposedException occurred: %s", str.getStr() );
#else
(void) exc; // unused
#endif
diff --git a/stoc/source/tdmanager/tdmgr.cxx b/stoc/source/tdmanager/tdmgr.cxx
index b13ff438593a..a063763b95a9 100644
--- a/stoc/source/tdmanager/tdmgr.cxx
+++ b/stoc/source/tdmanager/tdmgr.cxx
@@ -475,7 +475,7 @@ void SAL_CALL ManagerImpl::insert( const Any & rElement )
catch (container::NoSuchElementException & exc)
{
throw lang::IllegalArgumentException(
- OUSTR("NoSuchElementException occured: ") +
+ OUSTR("NoSuchElementException occurred: ") +
exc.Message, static_cast<OWeakObject *>(this),
-1 /* unknown */ );
}
@@ -511,13 +511,13 @@ void SAL_CALL ManagerImpl::insert( const Any & rElement )
catch (reflection::NoSuchTypeNameException & exc)
{
throw lang::IllegalArgumentException(
- OUSTR("NoSuchTypeNameException occured: ") + exc.Message,
+ OUSTR("NoSuchTypeNameException occurred: ") + exc.Message,
static_cast<OWeakObject *>(this), -1 /* unknown */ );
}
catch (reflection::InvalidTypeNameException & exc)
{
throw lang::IllegalArgumentException(
- OUSTR("InvalidTypeNameException occured: ") + exc.Message,
+ OUSTR("InvalidTypeNameException occurred: ") + exc.Message,
static_cast<OWeakObject *>(this), -1 /* unknown */ );
}
}
diff --git a/stoc/test/javavm/testjavavm.cxx b/stoc/test/javavm/testjavavm.cxx
index 242f1faee7a5..ddf38e867ff2 100644
--- a/stoc/test/javavm/testjavavm.cxx
+++ b/stoc/test/javavm/testjavavm.cxx
@@ -181,9 +181,9 @@ SAL_IMPLEMENT_MAIN()
}
catch (Exception & rExc)
{
- OSL_ENSURE( sal_False, "### exception occured!" );
+ OSL_ENSURE( sal_False, "### exception occurred!" );
OString aMsg( OUStringToOString( rExc.Message, RTL_TEXTENCODING_ASCII_US ) );
- OSL_TRACE( "### exception occured: " );
+ OSL_TRACE( "### exception occurred: " );
OSL_TRACE( aMsg.getStr() );
OSL_TRACE( "\n" );
}
diff --git a/stoc/test/testconv.cxx b/stoc/test/testconv.cxx
index dfbd9475d130..441f4d80c98d 100644
--- a/stoc/test/testconv.cxx
+++ b/stoc/test/testconv.cxx
@@ -689,9 +689,9 @@ SAL_IMPLEMENT_MAIN()
}
catch (Exception & rExc)
{
- OSL_ENSURE( sal_False, "### exception occured!" );
+ OSL_ENSURE( sal_False, "### exception occurred!" );
OString aMsg( OUStringToOString( rExc.Message, RTL_TEXTENCODING_ASCII_US ) );
- OSL_TRACE( "### exception occured: " );
+ OSL_TRACE( "### exception occurred: " );
OSL_TRACE( aMsg.getStr() );
OSL_TRACE( "\n" );
}
diff --git a/stoc/test/testcorefl.cxx b/stoc/test/testcorefl.cxx
index 4815ea96acf5..bd9f7056a9e8 100644
--- a/stoc/test/testcorefl.cxx
+++ b/stoc/test/testcorefl.cxx
@@ -387,7 +387,7 @@ SAL_IMPLEMENT_MAIN()
"/singletons/com.sun.star.reflection.theCoreReflection")) )
>>= xRefl;
OSL_ENSURE(
- xRefl.is(), "### CoreReflection singleton not accessable!?" );
+ xRefl.is(), "### CoreReflection singleton not accessible!?" );
bSucc = test_corefl( xRefl );
@@ -395,10 +395,10 @@ SAL_IMPLEMENT_MAIN()
}
catch (Exception & rExc)
{
- OSL_ENSURE( sal_False, "### exception occured!" );
+ OSL_ENSURE( sal_False, "### exception occurred!" );
OString aMsg(
OUStringToOString( rExc.Message, RTL_TEXTENCODING_ASCII_US ) );
- OSL_TRACE( "### exception occured: " );
+ OSL_TRACE( "### exception occurred: " );
OSL_TRACE( aMsg.getStr() );
OSL_TRACE( "\n" );
}
diff --git a/stoc/test/testiadapter.cxx b/stoc/test/testiadapter.cxx
index 8e0107b7823b..37be8fb1426a 100644
--- a/stoc/test/testiadapter.cxx
+++ b/stoc/test/testiadapter.cxx
@@ -1054,7 +1054,7 @@ SAL_IMPLEMENT_MAIN()
}
catch (Exception & rExc)
{
- fprintf( stderr, "> exception occured: " );
+ fprintf( stderr, "> exception occurred: " );
OString aMsg( OUStringToOString( rExc.Message, RTL_TEXTENCODING_ASCII_US ) );
fprintf( stderr, "%s\n", aMsg.getStr() );
}
diff --git a/stoc/test/testintrosp.cxx b/stoc/test/testintrosp.cxx
index c52b1f267969..52832375e4a3 100644
--- a/stoc/test/testintrosp.cxx
+++ b/stoc/test/testintrosp.cxx
@@ -1581,9 +1581,9 @@ SAL_IMPLEMENT_MAIN()
}
catch (Exception & rExc)
{
- OSL_ENSURE( sal_False, "### exception occured!" );
+ OSL_ENSURE( sal_False, "### exception occurred!" );
OString aMsg( OUStringToOString( rExc.Message, RTL_TEXTENCODING_ASCII_US ) );
- OSL_TRACE( "### exception occured: " );
+ OSL_TRACE( "### exception occurred: " );
OSL_TRACE( aMsg.getStr() );
OSL_TRACE( "\n" );
}
diff --git a/svgio/inc/svgio/svgreader/svgclippathnode.hxx b/svgio/inc/svgio/svgreader/svgclippathnode.hxx
index e2fc7cb11f5c..5cf4e711c82d 100644
--- a/svgio/inc/svgio/svgreader/svgclippathnode.hxx
+++ b/svgio/inc/svgio/svgreader/svgclippathnode.hxx
@@ -52,8 +52,10 @@ namespace svgio
virtual void parseAttribute(const rtl::OUString& rTokenName, SVGToken aSVGToken, const rtl::OUString& aContent);
virtual void decomposeSvgNode(drawinglayer::primitive2d::Primitive2DSequence& rTarget, bool bReferenced) const;
- /// apply contained clipPath to given geometry
- void apply(drawinglayer::primitive2d::Primitive2DSequence& rTarget) const;
+ /// apply contained clipPath to given geometry #i124852# transform may be needed
+ void apply(
+ drawinglayer::primitive2d::Primitive2DSequence& rTarget,
+ const basegfx::B2DHomMatrix* pTransform) const;
/// clipPathUnits content
SvgUnits getClipPathUnits() const { return maClipPathUnits; }
diff --git a/svgio/inc/svgio/svgreader/svgmasknode.hxx b/svgio/inc/svgio/svgreader/svgmasknode.hxx
index 6c3089d4a107..4c5fa5fcf5e1 100644
--- a/svgio/inc/svgio/svgreader/svgmasknode.hxx
+++ b/svgio/inc/svgio/svgreader/svgmasknode.hxx
@@ -57,8 +57,10 @@ namespace svgio
virtual void parseAttribute(const rtl::OUString& rTokenName, SVGToken aSVGToken, const rtl::OUString& aContent);
virtual void decomposeSvgNode(drawinglayer::primitive2d::Primitive2DSequence& rTarget, bool bReferenced) const;
- /// apply contained clipPath to given geometry
- void apply(drawinglayer::primitive2d::Primitive2DSequence& rTarget) const;
+ /// apply contained clipPath to given geometry #i124852# transform may be needed
+ void apply(
+ drawinglayer::primitive2d::Primitive2DSequence& rTarget,
+ const basegfx::B2DHomMatrix* pTransform) const;
/// x content, set if found in current context
const SvgNumber& getX() const { return maX; }
diff --git a/svgio/source/svgreader/svgclippathnode.cxx b/svgio/source/svgreader/svgclippathnode.cxx
index a242f6724385..3e4ecd806f3d 100644
--- a/svgio/source/svgreader/svgclippathnode.cxx
+++ b/svgio/source/svgreader/svgclippathnode.cxx
@@ -29,6 +29,7 @@
#include <drawinglayer/geometry/viewinformation2d.hxx>
#include <drawinglayer/processor2d/contourextractor2d.hxx>
#include <basegfx/polygon/b2dpolypolygoncutter.hxx>
+#include <basegfx/polygon/b2dpolygontools.hxx>
//////////////////////////////////////////////////////////////////////////////
@@ -131,7 +132,9 @@ namespace svgio
}
}
- void SvgClipPathNode::apply(drawinglayer::primitive2d::Primitive2DSequence& rContent) const
+ void SvgClipPathNode::apply(
+ drawinglayer::primitive2d::Primitive2DSequence& rContent,
+ const basegfx::B2DHomMatrix* pTransform) const
{
if(rContent.hasElements() && Display_none != getDisplay())
{
@@ -178,17 +181,84 @@ namespace svgio
aContentRange.getRange(),
aContentRange.getMinimum()));
}
+ else // userSpaceOnUse
+ {
+ // #i124852#
+ if(pTransform)
+ {
+ aClipPolyPolygon.transform(*pTransform);
+ }
+ }
+
+ // #124313# try to avoid creating an embedding to a MaskPrimitive2D if
+ // possible; MaskPrimitive2D processing is potentially expensive
+ bool bCreateEmbedding(true);
+ bool bAddContent(true);
+
+ if(basegfx::tools::isRectangle(aClipPolyPolygon))
+ {
+ // ClipRegion is a rectangle, thus it is not expensive to tell
+ // if the content is completely inside or outside of it; get ranges
+ const basegfx::B2DRange aClipRange(aClipPolyPolygon.getB2DRange());
+ const basegfx::B2DRange aContentRange(
+ drawinglayer::primitive2d::getB2DRangeFromPrimitive2DSequence(
+ rContent,
+ aViewInformation2D));
+
+ if(aClipRange.isInside(aContentRange))
+ {
+ // completely contained, no need to clip at all, so no need for embedding
+ bCreateEmbedding = false;
+ }
+ else if(aClipRange.overlaps(aContentRange))
+ {
+ // overlap; embedding needed. ClipRegion can be minimized by using
+ // the intersection of the ClipRange and the ContentRange. Minimizing
+ // the ClipRegion potentially enhances further processing since
+ // usually clip operations are expensive.
+ basegfx::B2DRange aCommonRange(aContentRange);
- // redefine target. Use MaskPrimitive2D with created clip
- // geometry. Using the automatically set mbIsClipPathContent at
- // SvgStyleAttributes the clip definition is without fill, stroke,
- // and strokeWidth and forced to black
- const drawinglayer::primitive2d::Primitive2DReference xEmbedTransparence(
- new drawinglayer::primitive2d::MaskPrimitive2D(
- aClipPolyPolygon,
- rContent));
+ aCommonRange.intersect(aClipRange);
+ aClipPolyPolygon = basegfx::B2DPolyPolygon(basegfx::tools::createPolygonFromRect(aCommonRange));
+ }
+ else
+ {
+ // not inside and no overlap -> completely outside
+ // no need for embedding, no need for content at all
+ bCreateEmbedding = false;
+ bAddContent = false;
+ }
+ }
+ else
+ {
+ // ClipRegion is not a simple rectangle, it would be possible but expensive to
+ // tell if the content needs clipping or not. It is also dependent of
+ // the content's decomposition. To do this, a processor would be needed that
+ // is capable if processing the given sequence of primitives and decide
+ // if all is inside or all is outside. Such a ClipProcessor could be written,
+ // but for now just create the embedding
+ }
- rContent = drawinglayer::primitive2d::Primitive2DSequence(&xEmbedTransparence, 1);
+ if(bCreateEmbedding)
+ {
+ // redefine target. Use MaskPrimitive2D with created clip
+ // geometry. Using the automatically set mbIsClipPathContent at
+ // SvgStyleAttributes the clip definition is without fill, stroke,
+ // and strokeWidth and forced to black
+ const drawinglayer::primitive2d::Primitive2DReference xEmbedTransparence(
+ new drawinglayer::primitive2d::MaskPrimitive2D(
+ aClipPolyPolygon,
+ rContent));
+
+ rContent = drawinglayer::primitive2d::Primitive2DSequence(&xEmbedTransparence, 1);
+ }
+ else
+ {
+ if(!bAddContent)
+ {
+ rContent.realloc(0);
+ }
+ }
}
else
{
diff --git a/svgio/source/svgreader/svgmasknode.cxx b/svgio/source/svgreader/svgmasknode.cxx
index 26e28f5e42a1..37459afd7cd9 100644
--- a/svgio/source/svgreader/svgmasknode.cxx
+++ b/svgio/source/svgreader/svgmasknode.cxx
@@ -197,7 +197,9 @@ namespace svgio
}
}
- void SvgMaskNode::apply(drawinglayer::primitive2d::Primitive2DSequence& rTarget) const
+ void SvgMaskNode::apply(
+ drawinglayer::primitive2d::Primitive2DSequence& rTarget,
+ const basegfx::B2DHomMatrix* pTransform) const
{
if(rTarget.hasElements() && Display_none != getDisplay())
{
@@ -259,6 +261,19 @@ namespace svgio
aMaskTarget = drawinglayer::primitive2d::Primitive2DSequence(&xTransform, 1);
}
+ else // userSpaceOnUse
+ {
+ // #i124852#
+ if(pTransform)
+ {
+ const drawinglayer::primitive2d::Primitive2DReference xTransform(
+ new drawinglayer::primitive2d::TransformPrimitive2D(
+ *pTransform,
+ aMaskTarget));
+
+ aMaskTarget = drawinglayer::primitive2d::Primitive2DSequence(&xTransform, 1);
+ }
+ }
// embed content to a ModifiedColorPrimitive2D since the definitions
// how content is used as alpha is special for Svg
diff --git a/svgio/source/svgreader/svgstyleattributes.cxx b/svgio/source/svgreader/svgstyleattributes.cxx
index 2dc7f4c43637..f691fc6cfff7 100644
--- a/svgio/source/svgreader/svgstyleattributes.cxx
+++ b/svgio/source/svgreader/svgstyleattributes.cxx
@@ -252,7 +252,7 @@ namespace svgio
const drawinglayer::geometry::ViewInformation2D aViewInformation2D;
drawinglayer::processor2d::TextAsPolygonExtractor2D aExtractor(aViewInformation2D);
- // proccess
+ // process
aExtractor.process(rSource);
// get results
@@ -690,7 +690,7 @@ namespace svgio
const drawinglayer::geometry::ViewInformation2D aViewInformation2D;
drawinglayer::processor2d::LineGeometryExtractor2D aExtractor(aViewInformation2D);
- // proccess
+ // process
aExtractor.process(aSeq);
// check for fill rsults
@@ -1130,7 +1130,8 @@ namespace svgio
if(mpClip)
{
- mpClip->apply(aSource);
+ // #i124852# transform may be needed when userSpaceOnUse
+ mpClip->apply(aSource, pTransform);
}
}
@@ -1143,7 +1144,8 @@ namespace svgio
if(mpMask)
{
- mpMask->apply(aSource);
+ // #i124852# transform may be needed when userSpaceOnUse
+ mpMask->apply(aSource, pTransform);
}
}
diff --git a/svgio/source/svgreader/svgsvgnode.cxx b/svgio/source/svgreader/svgsvgnode.cxx
index fc613db500e6..7871a2349f5a 100644
--- a/svgio/source/svgreader/svgsvgnode.cxx
+++ b/svgio/source/svgreader/svgsvgnode.cxx
@@ -560,7 +560,7 @@ namespace svgio
{
// Clip is necessary. This will make Svg images evtl. smaller
// than wanted from Svg (the free space which may be around it is
- // conform to the Svg spec), but avoids an expensive and unneccessary
+ // conform to the Svg spec), but avoids an expensive and unnecessary
// clip. Keep the full Svg range here to get the correct mappings
// to objects using this. Optimizations can be done in the processors
const drawinglayer::primitive2d::Primitive2DReference xMask(
diff --git a/svl/inc/svl/inettype.hxx b/svl/inc/svl/inettype.hxx
index 770c5b16c3d0..261d23d6f005 100644
--- a/svl/inc/svl/inettype.hxx
+++ b/svl/inc/svl/inettype.hxx
@@ -438,7 +438,7 @@ public:
@param rAttribute The name of the parameter. Must be a valid RFC
2045 token.
- @param rValue The value of the paramter. Must only consist of US-
+ @param rValue The value of the parameter. Must only consist of US-
ASCII characters.
@return The string representation of rMediaType with the new
@@ -456,7 +456,7 @@ public:
@param rAttribute The name of the parameter. Must be a valid RFC
2045 token.
- @param rValue The value of the paramter. Must only consist of US-
+ @param rValue The value of the parameter. Must only consist of US-
ASCII characters.
@return The string representation of rMediaType with the new
diff --git a/svl/inc/svl/ondemand.hxx b/svl/inc/svl/ondemand.hxx
index 2e4b16a75318..70145b9de8ea 100644
--- a/svl/inc/svl/ondemand.hxx
+++ b/svl/inc/svl/ondemand.hxx
@@ -37,7 +37,7 @@
#include <com/sun/star/lang/XMultiServiceFactory.hpp>
/*
- On demand instanciation and initialization of several i18n wrappers,
+ On demand instantiation and initialization of several i18n wrappers,
helping the number formatter to not perform worse than it already does.
*/
diff --git a/svl/inc/svl/urihelper.hxx b/svl/inc/svl/urihelper.hxx
index c6be8e71185f..8658b1018b87 100644
--- a/svl/inc/svl/urihelper.hxx
+++ b/svl/inc/svl/urihelper.hxx
@@ -140,9 +140,9 @@ normalizedMakeRelative(
@param uriReference a URI reference, passed to normalizedMakeRelative
- @return if the XUriReference returnd by normalizedMakeRelative is empty,
+ @return if the XUriReference returned by normalizedMakeRelative is empty,
uriReference is returned unmodified; otherwise, the result of calling
- XUriReference::getUriReference on the XUriReference returnd by
+ XUriReference::getUriReference on the XUriReference returned by
normalizedMakeRelative is returned
@exception std::bad_alloc if an out-of-memory condition occurs
diff --git a/svl/inc/svl/zforlist.hxx b/svl/inc/svl/zforlist.hxx
index 45b30a566e2c..a244cdec5ab7 100644
--- a/svl/inc/svl/zforlist.hxx
+++ b/svl/inc/svl/zforlist.hxx
@@ -394,14 +394,14 @@ public:
sal_uInt32& FIndex,
LanguageType& rLnge);
- /// Delete an entry including the format it is refering to
+ /// Delete an entry including the format it is referring to
void DeleteEntry(sal_uInt32 nKey);
/** Create new entry of a format code string for language/country.
@return
<TRUE/> if string new and ok and inserted.
<FALSE/> if string already exists or an unresolvable parse error
- occured, in which case nCheckPos is the error position within rString.
+ occurred, in which case nCheckPos is the error position within rString.
If the error occurs at position 0 or rString is empty nCheckPos
will be 1, so an error in the string is always indicated by
nCheckPos not being zero.
diff --git a/svl/qa/complex/ConfigItems/helper/HistoryOptTest.cxx b/svl/qa/complex/ConfigItems/helper/HistoryOptTest.cxx
index 1fedbc7a4b81..4c8bf97ef0e7 100644
--- a/svl/qa/complex/ConfigItems/helper/HistoryOptTest.cxx
+++ b/svl/qa/complex/ConfigItems/helper/HistoryOptTest.cxx
@@ -93,7 +93,7 @@ void HistoryOptTest::impl_testHistory(EHistoryType eHistory ,
impl_clearList( );
impl_setSize (c);
- // a) fill list completely and check if all items could be realy created.
+ // a) fill list completely and check if all items could be really created.
// But dont check its order here! Because every new item will change that order.
for (i=0; i<c; ++i)
{
@@ -150,7 +150,7 @@ void HistoryOptTest::impl_testHistory(EHistoryType eHistory ,
// Note: impl_setSize() will make sure that 3 items exists only.
// Otherwhise it throws an exception. If we further check
// positions of three items no further items must be checked.
- // They cant exists :-)
+ // They can't exists :-)
::sal_Int32 nNewSize = 3;
impl_setSize(nNewSize);
if (
@@ -160,7 +160,7 @@ void HistoryOptTest::impl_testHistory(EHistoryType eHistory ,
)
throw css::uno::Exception(MESSAGE_WRONG_ORDER, 0);
- // finaly we should try to clean up all used structures so the same office can be used
+ // finally we should try to clean up all used structures so the same office can be used
// without problems :-)
impl_clearList();
}
diff --git a/svl/qa/complex/ConfigItems/helper/HistoryOptTest.hxx b/svl/qa/complex/ConfigItems/helper/HistoryOptTest.hxx
index 490574179bb0..541bf296a2f7 100644
--- a/svl/qa/complex/ConfigItems/helper/HistoryOptTest.hxx
+++ b/svl/qa/complex/ConfigItems/helper/HistoryOptTest.hxx
@@ -53,7 +53,7 @@ class HistoryOptTest
//---------------------------------------------------------------------
/** test every well known history list in the same way.
* Only the count of created and tested items can be defined from outside
- * e.g. usefull for stress tests.
+ * e.g. useful for stress tests.
*
* @param eHistory
* specify the history list for testing.
@@ -94,7 +94,7 @@ class HistoryOptTest
void impl_appendItem(::sal_Int32 nItem);
//---------------------------------------------------------------------
- /** check if an entry for given item id realy exists (in memory and xcu file).
+ /** check if an entry for given item id really exists (in memory and xcu file).
*
* @param nItem
* id of the item
@@ -104,7 +104,7 @@ class HistoryOptTest
::sal_Bool impl_existsItem(::sal_Int32 nItem);
//---------------------------------------------------------------------
- /** check if an entry for given item id realy exists (in memory and xcu file).
+ /** check if an entry for given item id really exists (in memory and xcu file).
* Further it checks if the requested item is placed at the also specified
* position inside history list.
*
diff --git a/svl/source/config/itemholder2.hxx b/svl/source/config/itemholder2.hxx
index 5ab71d70d896..042ba4256437 100644
--- a/svl/source/config/itemholder2.hxx
+++ b/svl/source/config/itemholder2.hxx
@@ -35,7 +35,7 @@
// namespaces
#ifdef css
-#error "Cant use css as namespace alias."
+#error "Can't use css as namespace alias."
#else
#define css ::com::sun::star
#endif
diff --git a/svl/source/items/itemset.cxx b/svl/source/items/itemset.cxx
index 21e04a5e8b32..ef7b42588f95 100644
--- a/svl/source/items/itemset.cxx
+++ b/svl/source/items/itemset.cxx
@@ -2138,7 +2138,7 @@ inline void SfxItemSet::UpdateHashKey()
{
_aHashKey= myhash(_aItems,TotalCount()* sizeof(_aItems[0]));
- //always treat '0' as invalidate hash key, not using addtional bool data field for saving space.
+ //always treat '0' as invalidate hash key, not using additional bool data field for saving space.
if (!IsValidateHashKey() )
{
_aHashKey = 1;
diff --git a/svl/source/numbers/supservs.hxx b/svl/source/numbers/supservs.hxx
index 89cbe2be58e8..e6202b0aa55f 100644
--- a/svl/source/numbers/supservs.hxx
+++ b/svl/source/numbers/supservs.hxx
@@ -43,7 +43,7 @@ class SvNumberFormatsSupplierServiceObject
,public ::com::sun::star::lang::XInitialization
,public ::com::sun::star::io::XPersistObject
,public ::com::sun::star::lang::XServiceInfo
-{ // don't want the Set-/GetNumberFormatter to be accessable from outside
+{ // don't want the Set-/GetNumberFormatter to be accessible from outside
friend ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface >
SAL_CALL SvNumberFormatsSupplierServiceObject_CreateInstance(
diff --git a/svl/source/numbers/zforlist.cxx b/svl/source/numbers/zforlist.cxx
index 683add241749..d94c3b01a949 100644
--- a/svl/source/numbers/zforlist.cxx
+++ b/svl/source/numbers/zforlist.cxx
@@ -590,7 +590,7 @@ sal_uInt32 SvNumberFormatter::GetIndexPuttingAndConverting( String & rString,
{
sal_uInt32 nOrig = GetEntryKey( rString, eSysLnge );
if (nOrig == NUMBERFORMAT_ENTRY_NOT_FOUND)
- nKey = nOrig; // none avaliable, maybe user-defined
+ nKey = nOrig; // none available, maybe user-defined
else
nKey = GetFormatForLanguageIfBuiltIn( nOrig, SvtSysLocale().GetLanguage() );
diff --git a/svl/source/numbers/zformat.cxx b/svl/source/numbers/zformat.cxx
index c5db1344e310..a45af36ae89e 100644
--- a/svl/source/numbers/zformat.cxx
+++ b/svl/source/numbers/zformat.cxx
@@ -613,7 +613,7 @@ SvNumberformat::SvNumberformat(String& rString,
bStarFlag( sal_False )
{
// If the group (AKA thousand) separator is a Non-Breaking Space (French)
- // replace all occurences by a simple space.
+ // replace all occurrences by a simple space.
// The tokens will be changed to the LocaleData separator again later on.
const sal_Unicode cNBSp = 0xA0;
const String& rThSep = GetFormatter().GetNumThousandSep();
diff --git a/svl/source/numbers/zforscan.cxx b/svl/source/numbers/zforscan.cxx
index 1ddebea4f94c..8579cc464b3b 100644
--- a/svl/source/numbers/zforscan.cxx
+++ b/svl/source/numbers/zforscan.cxx
@@ -872,7 +872,7 @@ short ImpSvNumberformatScan::Next_Symbol( const String& rStr,
{
eState = SsStop;
sSymbol += cToken;
- nRepPos = (nPos - nStart) - 1; // everytime > 0!!
+ nRepPos = (nPos - nStart) - 1; // every time > 0!!
}
break;
case SsGetBlank:
diff --git a/svtools/bmpmaker/bmp.cxx b/svtools/bmpmaker/bmp.cxx
index 1d22765e8cb7..eb66f89dc058 100644
--- a/svtools/bmpmaker/bmp.cxx
+++ b/svtools/bmpmaker/bmp.cxx
@@ -161,7 +161,7 @@ void BmpApp::ShowUsage()
Message( String( RTL_CONSTASCII_USTRINGPARAM( "Usage:" ) ), EXIT_NOERROR );
Message( String( RTL_CONSTASCII_USTRINGPARAM( " bmp srs_inputfile output_dir lang_dir lang_num -i input_dir [-i input_dir ][-f err_file]" ) ), EXIT_NOERROR );
Message( String( RTL_CONSTASCII_USTRINGPARAM( "Options:" ) ), EXIT_NOERROR );
- Message( String( RTL_CONSTASCII_USTRINGPARAM( " -i ... name of directory to be searched for input files [multiple occurence is possible]" ) ), EXIT_NOERROR );
+ Message( String( RTL_CONSTASCII_USTRINGPARAM( " -i ... name of directory to be searched for input files [multiple occurrence is possible]" ) ), EXIT_NOERROR );
Message( String( RTL_CONSTASCII_USTRINGPARAM( " -f name of file, output should be written to" ) ), EXIT_NOERROR );
Message( String( RTL_CONSTASCII_USTRINGPARAM( "Examples:" ) ), EXIT_NOERROR );
Message( String( RTL_CONSTASCII_USTRINGPARAM( " bmp /home/test.srs /home/out enus 01 -i /home/res -f /home/out/bmp.err" ) ), EXIT_NOERROR );
diff --git a/svtools/inc/svtools/acceleratorexecute.hxx b/svtools/inc/svtools/acceleratorexecute.hxx
index 3f180ef7481a..68e38dce0458 100644
--- a/svtools/inc/svtools/acceleratorexecute.hxx
+++ b/svtools/inc/svtools/acceleratorexecute.hxx
@@ -99,7 +99,7 @@ struct TMutexInit
Because exceution of an accelerator command can be dangerous
(in case it force an office shutdown for key "ALT+F4"!)
all internal dispatches are done asynchronous.
- Menas that the trigger call doesnt wait till the dispatch
+ Menas that the trigger call doesn't wait till the dispatch
is finished. You can call very often. All requests will be
queued internal and dispatched ASAP.
@@ -171,7 +171,7 @@ class SVT_DLLPUBLIC AcceleratorExecute : private TMutexInit
=> All currently queued events will be finished. The
helper kills itself afterwards. A shutdown of the
environment will be recognized ... The helper stop its
- work immediatly then!
+ work immediately then!
*/
static AcceleratorExecute* createAcceleratorHelper();
diff --git a/svtools/inc/svtools/accessibletable.hxx b/svtools/inc/svtools/accessibletable.hxx
index 4bd30a25a176..0b92a956e756 100644
--- a/svtools/inc/svtools/accessibletable.hxx
+++ b/svtools/inc/svtools/accessibletable.hxx
@@ -83,7 +83,7 @@ public:
@param eObjType
The type to ask for
@param _nPosition
- The position of a tablecell (index position), header bar colum/row cell
+ The position of a tablecell (index position), header bar column/row cell
@return
The description of the specified object.
*/
diff --git a/svtools/inc/svtools/brwbox.hxx b/svtools/inc/svtools/brwbox.hxx
index c36a0fe55a21..2c4415e45072 100644
--- a/svtools/inc/svtools/brwbox.hxx
+++ b/svtools/inc/svtools/brwbox.hxx
@@ -591,7 +591,7 @@ public:
void RowModified( long nRow, sal_uInt16 nColId = USHRT_MAX );
void RowInserted( long nRow, long nNumRows = 1, sal_Bool bDoPaint = sal_True, sal_Bool bKeepSelection = sal_False );
- // miscellanous
+ // miscellaneous
void ReserveControlArea( sal_uInt16 nWidth = USHRT_MAX );
Rectangle GetControlArea() const;
sal_Bool ProcessKey( const KeyEvent& rEvt );
@@ -702,7 +702,7 @@ public:
@param _nRowId
the current row
@param _nColId
- teh column id
+ the column id
@param _bOnScreen
<TRUE/> when the rectangle should be calculated OnScreen
@return
@@ -790,7 +790,7 @@ public:
@param eObjType
The type to ask for
@param _nPosition
- The position of a tablecell (index position), header bar colum/row cell
+ The position of a tablecell (index position), header bar column/row cell
@return
The name of the specified object.
*/
@@ -800,7 +800,7 @@ public:
@param eObjType
The type to ask for
@param _nPosition
- The position of a tablecell (index position), header bar colum/row cell
+ The position of a tablecell (index position), header bar column/row cell
@return
The description of the specified object.
*/
diff --git a/svtools/inc/svtools/contextmenuhelper.hxx b/svtools/inc/svtools/contextmenuhelper.hxx
index 1611e71744ae..37e56a809693 100644
--- a/svtools/inc/svtools/contextmenuhelper.hxx
+++ b/svtools/inc/svtools/contextmenuhelper.hxx
@@ -100,7 +100,7 @@ class SVT_DLLPUBLIC ContextMenuHelper
bool associateUIConfigurationManagers();
// resets associations to create associations again on-demand.
- // Usefull for implementations which recycle frames. Normal
+ // Useful for implementations which recycle frames. Normal
// implementations can profit from caching and should set
// auto refresh on ctor to false (default).
void resetAssociations()
diff --git a/svtools/inc/svtools/dialogcontrolling.hxx b/svtools/inc/svtools/dialogcontrolling.hxx
index f4a54a711ccf..694de04016dc 100644
--- a/svtools/inc/svtools/dialogcontrolling.hxx
+++ b/svtools/inc/svtools/dialogcontrolling.hxx
@@ -110,7 +110,7 @@ namespace svt
*/
void addDependentWindow( Window& _rWindow );
- /** resets the controller so that no actions happend anymore.
+ /** resets the controller so that no actions happened anymore.
The instances is disfunctional after this method has been called.
*/
diff --git a/svtools/inc/svtools/fmtfield.hxx b/svtools/inc/svtools/fmtfield.hxx
index 4db1a3b3515f..9ef8a37df9d3 100644
--- a/svtools/inc/svtools/fmtfield.hxx
+++ b/svtools/inc/svtools/fmtfield.hxx
@@ -42,7 +42,7 @@
typedef sal_uInt16 FORMAT_CHANGE_TYPE;
#define FCT_KEYONLY 0x00 // only a new key was set
-#define FCT_FORMATTER 0x01 // a new formatter weas set, usually implies a change of the key, too
+#define FCT_FORMATTER 0x01 // a new formatter was set, usually implies a change of the key, too
#define FCT_PRECISION 0x02 // a new precision was set
#define FCT_THOUSANDSSEP 0x03 // the thousands separator setting changed
diff --git a/svtools/inc/svtools/genericunodialog.hxx b/svtools/inc/svtools/genericunodialog.hxx
index 339f6e9a7dcb..ce86d5b3fb47 100644
--- a/svtools/inc/svtools/genericunodialog.hxx
+++ b/svtools/inc/svtools/genericunodialog.hxx
@@ -75,7 +75,7 @@ namespace svt
,public ::comphelper::OPropertyContainer
{
private:
- ::osl::Mutex m_aExecutionMutex; /// acess safety for execute/cancel
+ ::osl::Mutex m_aExecutionMutex; /// access safety for execute/cancel
protected:
Dialog* m_pDialog; /// the dialog to execute
diff --git a/svtools/inc/svtools/grfmgr.hxx b/svtools/inc/svtools/grfmgr.hxx
index 94b8b10cb0e8..52902c0722b6 100644
--- a/svtools/inc/svtools/grfmgr.hxx
+++ b/svtools/inc/svtools/grfmgr.hxx
@@ -207,7 +207,10 @@ private:
Timer* mpSwapOutTimer;
GrfSimpleCacheObj* mpSimpleCache;
sal_uLong mnAnimationLoopCount;
- void* mpDummy1;
+
+ // a unique increasing ID to be able to say which data change is older
+ sal_uLong mnDataChangeTimeStamp;
+
void* mpDummy2;
sal_Bool mbAutoSwapped : 1;
sal_Bool mbTransparent : 1;
@@ -299,6 +302,10 @@ private:
DECL_LINK( ImplAutoSwapOutHdl, void* );
+ // Handle evtl. needed AfterDataChanges, needs to be called when new
+ // graphic data is swapped in/added to the GraphicManager
+ void ImplAfterDataChange();
+
protected:
virtual void GraphicManagerDestroyed();
@@ -479,6 +486,12 @@ public:
double fTopCrop,
double fRightCrop,
double fBottomCrop) const;
+
+ // read access
+ sal_uLong GetDataChangeTimeStamp() const { return mnDataChangeTimeStamp; }
+
+ // restart SwapOut timer; this is like touching in a cache to reset to the full timeout value
+ void restartSwapOutTimer() const;
};
// ------------------
@@ -543,6 +556,15 @@ private:
ByteString SVT_DLLPRIVATE ImplGetUniqueID( const GraphicObject& rObj ) const;
+ // This method allows to check memory footprint for all currently swapped in GraphicObjects on this GraphicManager
+ // which are based on Bitmaps. This is needed on 32Bit systems and only does something on those systems. The problem
+ // to solve is that normally the SwapOut is timer-driven, but even with short timer settings there are situations
+ // where this does not trigger - or in other words: A maximum limitation for GraphicManagers was not in place before.
+ // For 32Bit systems this leads to situations where graphics will be missing. This method will actively swap out
+ // the longest swapped in graphics until a maximum memory boundary (derived from user settings in tools/options/memory)
+ // is no longer exceeded
+ void ImplCheckSizeOfSwappedInGraphics();
+
public:
GraphicManager( sal_uLong nCacheSize = 10000000UL, sal_uLong nMaxObjCacheSize = 2400000UL );
diff --git a/svtools/inc/svtools/helpagentwindow.hxx b/svtools/inc/svtools/helpagentwindow.hxx
index 8f3f1ed12867..b09280c3e407 100644
--- a/svtools/inc/svtools/helpagentwindow.hxx
+++ b/svtools/inc/svtools/helpagentwindow.hxx
@@ -61,7 +61,7 @@ namespace svt
/// returns the preferred size of the window
const Size& getPreferredSizePixel() const { return m_aPreferredSize; }
- // callback handler maintainance
+ // callback handler maintenance
void setCallback(IHelpAgentCallback* _pCB) { m_pCallback = _pCB; }
IHelpAgentCallback* getCallback() const { return m_pCallback; }
diff --git a/svtools/inc/svtools/menuoptions.hxx b/svtools/inc/svtools/menuoptions.hxx
index 5b52df8a7e53..9a2a3dfce44c 100644
--- a/svtools/inc/svtools/menuoptions.hxx
+++ b/svtools/inc/svtools/menuoptions.hxx
@@ -39,7 +39,7 @@
/*-************************************************************************************************************//**
@short forward declaration to our private date container implementation
@descr We use these class as internal member to support small memory requirements.
- You can create the container if it is neccessary. The class which use these mechanism
+ You can create the container if it is necessary. The class which use these mechanism
is faster and smaller then a complete implementation!
*//*-*************************************************************************************************************/
diff --git a/svtools/inc/svtools/miscopt.hxx b/svtools/inc/svtools/miscopt.hxx
index 605f0280c64b..63e43caada06 100644
--- a/svtools/inc/svtools/miscopt.hxx
+++ b/svtools/inc/svtools/miscopt.hxx
@@ -41,7 +41,7 @@
/*-************************************************************************************************************//**
@short forward declaration to our private date container implementation
@descr We use these class as internal member to support small memory requirements.
- You can create the container if it is neccessary. The class which use these mechanism
+ You can create the container if it is necessary. The class which use these mechanism
is faster and smaller then a complete implementation!
*//*-*************************************************************************************************************/
diff --git a/svtools/inc/svtools/optionsdrawinglayer.hxx b/svtools/inc/svtools/optionsdrawinglayer.hxx
index 439728e7ddf4..4ac490d3aaf5 100644
--- a/svtools/inc/svtools/optionsdrawinglayer.hxx
+++ b/svtools/inc/svtools/optionsdrawinglayer.hxx
@@ -41,7 +41,7 @@
/*-************************************************************************************************************//**
@short forward declaration to our private date container implementation
@descr We use these class as internal member to support small memory requirements.
- You can create the container if it is neccessary. The class which use these mechanism
+ You can create the container if it is necessary. The class which use these mechanism
is faster and smaller then a complete implementation!
*//*-*************************************************************************************************************/
diff --git a/svtools/inc/svtools/stringtransfer.hxx b/svtools/inc/svtools/stringtransfer.hxx
index 281f40b54fe0..905ddaff1d78 100644
--- a/svtools/inc/svtools/stringtransfer.hxx
+++ b/svtools/inc/svtools/stringtransfer.hxx
@@ -62,7 +62,7 @@ namespace svt
SVT_DLLPUBLIC static void CopyString( const ::rtl::OUString& _rContent, Window* _pWindow = NULL );
/** extracts a string from the system clipboard given
- @return <TRUE/> if the extraction was successfull, i.e. if the clipboard contained a string content
+ @return <TRUE/> if the extraction was successful, i.e. if the clipboard contained a string content
*/
SVT_DLLPUBLIC static sal_Bool PasteString( ::rtl::OUString& _rContent, Window* _pWindow = NULL );
diff --git a/svtools/inc/svtools/svlbitm.hxx b/svtools/inc/svtools/svlbitm.hxx
index 1948efe28220..4744242d902f 100644
--- a/svtools/inc/svtools/svlbitm.hxx
+++ b/svtools/inc/svtools/svlbitm.hxx
@@ -95,7 +95,7 @@ public:
Image aBmps[24]; // Indizes siehe Konstanten BMP_ ....
void SetDefaultImages( const Control* pControlForSettings = NULL );
- // set images acording to the color scheeme of the Control
+ // set images according to the color scheeme of the Control
// pControlForSettings == NULL: settings are taken from Application
sal_Bool HasDefaultImages( void ) const;
};
diff --git a/svtools/inc/svtools/svtdata.hxx b/svtools/inc/svtools/svtdata.hxx
index 6eb8d71ab1ac..00c40bdbd83c 100644
--- a/svtools/inc/svtools/svtdata.hxx
+++ b/svtools/inc/svtools/svtdata.hxx
@@ -47,7 +47,7 @@ private:
public:
ResMgr * GetResMgr(const ::com::sun::star::lang::Locale aLocale);
- ResMgr * GetResMgr(); // VCL dependant, only available in SVT, not in SVL!
+ ResMgr * GetResMgr(); // VCL dependent, only available in SVT, not in SVL!
static ImpSvtData & GetSvtData();
};
@@ -58,7 +58,7 @@ class SVT_DLLPUBLIC SvtResId: public ResId
public:
SvtResId(sal_uInt16 nId, const ::com::sun::star::lang::Locale aLocale);
SvtResId(sal_uInt16 nId);
- // VCL dependant, only available in SVT, not in SVL!
+ // VCL dependent, only available in SVT, not in SVL!
};
#endif // _SVTOOLS_SVTDATA_HXX
diff --git a/svtools/inc/svtools/table/tablemodel.hxx b/svtools/inc/svtools/table/tablemodel.hxx
index da3d5681ba28..29b878403ec2 100644
--- a/svtools/inc/svtools/table/tablemodel.hxx
+++ b/svtools/inc/svtools/table/tablemodel.hxx
@@ -189,7 +189,7 @@ namespace svt { namespace table
/** sets a new column ID
@return
- <TRUE/> if setting the new ID was successfull. A possible error
+ <TRUE/> if setting the new ID was successful. A possible error
conditions is if you try to set an ID which is already used
by another column within the same table.
diff --git a/svtools/inc/svtools/textview.hxx b/svtools/inc/svtools/textview.hxx
index 46a9cf0e6047..a3a2447ac669 100644
--- a/svtools/inc/svtools/textview.hxx
+++ b/svtools/inc/svtools/textview.hxx
@@ -205,7 +205,7 @@ public:
/**
Drag and Drop, deleting and selection regards all text that has an attribute
- TEXTATTR_PROTECTED set as one entitity. Drag and dropped text is automatically
+ TEXTATTR_PROTECTED set as one entity. Drag and dropped text is automatically
attibuted as protected.
*/
void SupportProtectAttribute(sal_Bool bSupport);
diff --git a/svtools/inc/svtools/valueset.hxx b/svtools/inc/svtools/valueset.hxx
index f52710c78f64..ffe6366b5bee 100644
--- a/svtools/inc/svtools/valueset.hxx
+++ b/svtools/inc/svtools/valueset.hxx
@@ -436,7 +436,7 @@ public:
private:
/** Determine whether RTL (right to left writing) is active. For this
- method to return <true/> two conditions have to be fullfilled:
+ method to return <true/> two conditions have to be fulfilled:
<ol><li>RTL is active for the whole application.</li>
<li>RTL is enabled for the control.</li></ol>
@return
diff --git a/svtools/inc/svtools/wizardmachine.hxx b/svtools/inc/svtools/wizardmachine.hxx
index b60d8246271d..6efe937eb179 100644
--- a/svtools/inc/svtools/wizardmachine.hxx
+++ b/svtools/inc/svtools/wizardmachine.hxx
@@ -288,7 +288,7 @@ namespace svt
method is able to determine the next state without actually having the page of the current state.
@return
- <TRUE/> if and only if traveling was successfull
+ <TRUE/> if and only if traveling was successful
@see skipUntil
@see skipBackwardUntil
@@ -304,7 +304,7 @@ namespace svt
The skipped states appear in the state history, so <method>travelPrevious</method> will make use of them.
@return
- <TRUE/> if and only if traveling was successfull
+ <TRUE/> if and only if traveling was successful
@see skip
@see skipBackwardUntil
@@ -322,7 +322,7 @@ namespace svt
you from this.
@return
- <TRUE/> if and only if traveling was successfull
+ <TRUE/> if and only if traveling was successful
@see skipUntil
@see skip
diff --git a/svtools/source/brwbox/brwbox1.cxx b/svtools/source/brwbox/brwbox1.cxx
index 863dc4c03a83..24e3c0829aef 100644
--- a/svtools/source/brwbox/brwbox1.cxx
+++ b/svtools/source/brwbox/brwbox1.cxx
@@ -441,7 +441,7 @@ void BrowseBox::FreezeColumn( sal_uInt16 nItemId, sal_Bool bFreeze )
// to be moved?
if ( nItemPos != FrozenColCount()-1 )
{
- // move to the leftmost scrollable colum
+ // move to the leftmost scrollable column
sal_uInt16 nFirstScrollable = FrozenColCount();
BrowserColumn *pColumn = pCols->GetObject(nItemPos);
pCols->Remove( (sal_uLong) nItemPos );
diff --git a/svtools/source/brwbox/brwbox2.cxx b/svtools/source/brwbox/brwbox2.cxx
index 9bbcfc6b8a2f..53a4adc56903 100644
--- a/svtools/source/brwbox/brwbox2.cxx
+++ b/svtools/source/brwbox/brwbox2.cxx
@@ -1028,7 +1028,7 @@ void BrowseBox::ImplPaintData(OutputDevice& _rOut, const Rectangle& _rRect, sal_
{
// clip the column's output to the field area
if (_bForeignDevice)
- { // (not neccessary if painting onto the data window)
+ { // (not necessary if painting onto the data window)
Size aFieldSize(pCol->Width(), nDataRowHeigt);
if (aPos.X() + aFieldSize.Width() > aOverallAreaBRPos.X())
@@ -1535,7 +1535,7 @@ void BrowseBox::MouseButtonDown( const MouseEvent& rEvt )
}
}
- // event occured out of data area
+ // event occurred out of data area
if ( rEvt.IsRight() )
pDataWin->Command(
CommandEvent( Point( 1, LONG_MAX ), COMMAND_CONTEXTMENU, sal_True ) );
diff --git a/svtools/source/brwbox/editbrowsebox.cxx b/svtools/source/brwbox/editbrowsebox.cxx
index d7ea003a7fb1..b57069c4407f 100644
--- a/svtools/source/brwbox/editbrowsebox.cxx
+++ b/svtools/source/brwbox/editbrowsebox.cxx
@@ -943,7 +943,7 @@ namespace svt
{
Window& rWindow = GetDataWindow();
// don't paint too much
- // update the status immediatly if possible
+ // update the status immediately if possible
if ((nEditRow >= 0) && (GetBrowserFlags() & EBBF_NO_HANDLE_COLUMN_CONTENT) == 0)
{
Rectangle aRect = GetFieldRectPixel(nEditRow, 0, sal_False );
diff --git a/svtools/source/config/itemholder2.hxx b/svtools/source/config/itemholder2.hxx
index 5ab71d70d896..042ba4256437 100644
--- a/svtools/source/config/itemholder2.hxx
+++ b/svtools/source/config/itemholder2.hxx
@@ -35,7 +35,7 @@
// namespaces
#ifdef css
-#error "Cant use css as namespace alias."
+#error "Can't use css as namespace alias."
#else
#define css ::com::sun::star
#endif
diff --git a/svtools/source/config/test/test.cxx b/svtools/source/config/test/test.cxx
index a414fc080e5b..10a624f9fcfc 100644
--- a/svtools/source/config/test/test.cxx
+++ b/svtools/source/config/test/test.cxx
@@ -149,7 +149,7 @@ void TestApplication::Main()
// Init global servicemanager and set it for external services.
::comphelper::setProcessServiceFactory( TestApplication::getUNOServiceManager() );
- // Control sucess of operation.
+ // Control success of operation.
OSL_ENSURE( !(::comphelper::getProcessServiceFactory()!=TestApplication::getUNOServiceManager()), "TestApplication::Main()\nGlobal servicemanager not right initialized.\n" );
/**-***********************************************************************************************************
diff --git a/svtools/source/contnr/contentenumeration.hxx b/svtools/source/contnr/contentenumeration.hxx
index f3a71739cf2f..585cd257ab41 100644
--- a/svtools/source/contnr/contentenumeration.hxx
+++ b/svtools/source/contnr/contentenumeration.hxx
@@ -48,7 +48,7 @@ namespace svt
{
private:
::rtl::OUString maFilename; // only filename in upper case - for compare purposes
- ::rtl::OUString maTitle; // -> be carefull when changing maTitle to update maFilename only when new
+ ::rtl::OUString maTitle; // -> be careful when changing maTitle to update maFilename only when new
::rtl::OUString maLowerTitle;
@@ -135,8 +135,8 @@ namespace svt
//====================================================================
enum EnumerationResult
{
- SUCCESS, /// the enumration was successfull
- ERROR, /// the enumration was unsuccessfull
+ SUCCESS, /// the enumration was successful
+ ERROR, /// the enumration was unsuccessful
RUNNING /// the enumeration is still running, and the maximum wait time has passed
};
diff --git a/svtools/source/contnr/fileview.cxx b/svtools/source/contnr/fileview.cxx
index fb14fe2a9d02..d2027be8d1e0 100644
--- a/svtools/source/contnr/fileview.cxx
+++ b/svtools/source/contnr/fileview.cxx
@@ -1430,7 +1430,7 @@ sal_Bool SvtFileView::GetParentURL( String& rParentURL ) const
}
catch( Exception const & )
{
- // perhaps an unkown url protocol (e.g. "private:newdoc")
+ // perhaps an unknown url protocol (e.g. "private:newdoc")
}
return bRet;
diff --git a/svtools/source/control/roadmap.cxx b/svtools/source/control/roadmap.cxx
index 5178b69796a1..ad4c75af574e 100644
--- a/svtools/source/control/roadmap.cxx
+++ b/svtools/source/control/roadmap.cxx
@@ -766,7 +766,8 @@ namespace svt
SetFont( aFont );
RoadmapTypes::ItemId curItemID = GetCurrentRoadmapItemID();
RoadmapItem* pLabelItem = GetByID( curItemID );
- pLabelItem->ToggleBackgroundColor(rStyleSettings.GetHighlightColor());
+ if ( pLabelItem != NULL )
+ pLabelItem->ToggleBackgroundColor(rStyleSettings.GetHighlightColor());
Invalidate();
}
}
diff --git a/svtools/source/filter/filter.cxx b/svtools/source/filter/filter.cxx
index 7b474884d1e2..71f3f90f29e7 100644
--- a/svtools/source/filter/filter.cxx
+++ b/svtools/source/filter/filter.cxx
@@ -1630,8 +1630,8 @@ sal_uInt16 GraphicFilter::ImportGraphic( Graphic& rGraphic, const String& rPath,
if( !ImportXPM( rIStream, rGraphic ) )
nStatus = GRFILTER_FILTERERROR;
}
- else if( aFilterName.EqualsIgnoreCaseAscii( IMP_BMP ) ||
- aFilterName.EqualsIgnoreCaseAscii( IMP_SVMETAFILE ) )
+ else if ( aFilterName.EqualsIgnoreCaseAscii( IMP_BMP )
+ || aFilterName.EqualsIgnoreCaseAscii( IMP_SVMETAFILE ) )
{
// SV interne Importfilter fuer Bitmaps und MetaFiles
rIStream >> rGraphic;
@@ -1642,8 +1642,11 @@ sal_uInt16 GraphicFilter::ImportGraphic( Graphic& rGraphic, const String& rPath,
}
else
{
- // #15508# added BMP type (checked, works)
- eLinkType = GFX_LINK_TYPE_NATIVE_BMP;
+ if ( aFilterName.EqualsIgnoreCaseAscii( IMP_BMP ) )
+ {
+ // #15508# added BMP type (checked, works)
+ eLinkType = GFX_LINK_TYPE_NATIVE_BMP;
+ }
}
}
else if( aFilterName.EqualsIgnoreCaseAscii( IMP_WMF ) ||
diff --git a/svtools/source/graphic/grfmgr.cxx b/svtools/source/graphic/grfmgr.cxx
index 417a5676d47e..8e087ccafb80 100644
--- a/svtools/source/graphic/grfmgr.cxx
+++ b/svtools/source/graphic/grfmgr.cxx
@@ -74,6 +74,21 @@ struct GrfSimpleCacheObj
// - GraphicObject -
// -----------------
+// unique increasing ID for being able to detect the GraphicObject with the
+// oldest last data changes
+static sal_uLong aIncrementingTimeOfLastDataChange = 1;
+
+void GraphicObject::ImplAfterDataChange()
+{
+ // set unique timestamp ID of last data change
+ mnDataChangeTimeStamp = aIncrementingTimeOfLastDataChange++;
+
+ // check memory footprint of all GraphicObjects managed and evtl. take action
+ GetGraphicManager().ImplCheckSizeOfSwappedInGraphics();
+}
+
+// -----------------------------------------------------------------------------
+
GraphicObject::GraphicObject( const GraphicManager* pMgr ) :
mpLink ( NULL ),
mpUserData ( NULL )
@@ -169,6 +184,9 @@ void GraphicObject::ImplConstruct()
mbAutoSwapped = sal_False;
mbIsInSwapIn = sal_False;
mbIsInSwapOut = sal_False;
+
+ // Init with a unique, increasing ID
+ mnDataChangeTimeStamp = aIncrementingTimeOfLastDataChange++;
}
// -----------------------------------------------------------------------------
@@ -286,6 +304,9 @@ void GraphicObject::ImplAutoSwapIn()
if( !mbAutoSwapped && mpMgr )
mpMgr->ImplGraphicObjectWasSwappedIn( *this );
}
+
+ // Handle evtl. needed AfterDataChanges
+ ImplAfterDataChange();
}
}
@@ -910,6 +931,9 @@ void GraphicObject::SetGraphic( const Graphic& rGraphic, const GraphicObject* pC
if( mpSwapOutTimer )
mpSwapOutTimer->Start();
+
+ // Handle evtl. needed AfterDataChanges
+ ImplAfterDataChange();
}
// -----------------------------------------------------------------------------
@@ -1251,7 +1275,9 @@ sal_Bool GraphicObject::SwapIn()
bRet = sal_True;
}
else if( mpMgr && mpMgr->ImplFillSwappedGraphicObject( *this, maGraphic ) )
+ {
bRet = sal_True;
+ }
else
{
bRet = maGraphic.SwapIn();
@@ -1261,8 +1287,13 @@ sal_Bool GraphicObject::SwapIn()
}
if( bRet )
+ {
ImplAssignGraphicData();
+ // Handle evtl. needed AfterDataChanges
+ ImplAfterDataChange();
+ }
+
return bRet;
}
@@ -1278,7 +1309,9 @@ sal_Bool GraphicObject::SwapIn( SvStream* pIStm )
bRet = sal_True;
}
else if( mpMgr && mpMgr->ImplFillSwappedGraphicObject( *this, maGraphic ) )
+ {
bRet = sal_True;
+ }
else
{
bRet = maGraphic.SwapIn( pIStm );
@@ -1288,8 +1321,13 @@ sal_Bool GraphicObject::SwapIn( SvStream* pIStm )
}
if( bRet )
+ {
ImplAssignGraphicData();
+ //
+ ImplAfterDataChange();
+ }
+
return bRet;
}
@@ -1449,4 +1487,15 @@ basegfx::B2DVector GraphicObject::calculateCropScaling(
return basegfx::B2DVector(fFactorX,fFactorY);
}
+// ------------------------------------------------------------------------
+// restart SwapOut timer
+
+void GraphicObject::restartSwapOutTimer() const
+{
+ if( mpSwapOutTimer && mpSwapOutTimer->IsActive() )
+ {
+ mpSwapOutTimer->Start();
+ }
+}
+
// eof
diff --git a/svtools/source/graphic/grfmgr2.cxx b/svtools/source/graphic/grfmgr2.cxx
index c599a1d3f48d..5cac068d0603 100644
--- a/svtools/source/graphic/grfmgr2.cxx
+++ b/svtools/source/graphic/grfmgr2.cxx
@@ -295,9 +295,82 @@ ByteString GraphicManager::ImplGetUniqueID( const GraphicObject& rObj ) const
// -----------------------------------------------------------------------------
+namespace
+{
+ struct simpleSortByDataChangeTimeStamp
+ {
+ bool operator() (GraphicObject* p1, GraphicObject* p2) const
+ {
+ return p1->GetDataChangeTimeStamp() < p2->GetDataChangeTimeStamp();
+ }
+ };
+} // end of anonymous namespace
+
+void GraphicManager::ImplCheckSizeOfSwappedInGraphics()
+{
+ // only necessary for 32bit systems
+ if(SAL_TYPES_SIZEOFPOINTER <= 4)
+ {
+ // get the currently used memory footprint of all swapped in bitmap graphics
+ // of this graphic manager. Remember candidates in a vector. The size in bytes is
+ // already available, thus this loop is not expensive to execute
+ sal_uLong nUsedSize(0);
+ GraphicObject* pObj = 0;
+ std::vector< GraphicObject* > aCandidates;
+
+ for(pObj = (GraphicObject*)maObjList.First(); pObj; pObj = (GraphicObject*)maObjList.Next())
+ {
+ if(pObj->meType == GRAPHIC_BITMAP && !pObj->IsSwappedOut() && pObj->GetSizeBytes())
+ {
+ aCandidates.push_back(pObj);
+ nUsedSize += pObj->GetSizeBytes();
+ }
+ }
+
+ // detect maximum allowed memory footprint. Use the user-settings of MaxCacheSize (defaulted
+ // to 20MB) and add a decent multiplicator (expecrimented to find one). Limit to
+ // a useful maximum for 32Bit address space
+
+ // default is 20MB, so allow 200MB initially
+ static sal_uLong aMultiplicator(10);
+
+ // max at 500MB; I experimented with 800 for debug and 750 for non-debug settings (pics start
+ // missing when AOO reaches a mem footprint of 1.5GB) but some secure left over space for
+ // app activity is needed
+ static sal_uLong aMaxSize32Bit(500 * 1024 * 1024);
+
+ // calc max allowed cache size
+ const sal_uLong nMaxCacheSize(::std::min(GetMaxCacheSize() * aMultiplicator, aMaxSize32Bit));
+
+ if(nUsedSize >= nMaxCacheSize && !aCandidates.empty())
+ {
+ // if we use more currently, sort by last DataChangeTimeStamp
+ // sort by DataChangeTimeStamp so that the oldest get removed first
+ ::std::sort(aCandidates.begin(), aCandidates.end(), simpleSortByDataChangeTimeStamp());
+
+ for(sal_uInt32 a(0); nUsedSize >= nMaxCacheSize && a < aCandidates.size(); a++)
+ {
+ // swap out until we have no more or the goal to use less than nMaxCacheSize
+ // is reached
+ pObj = aCandidates[a];
+ const sal_uLong nSizeBytes(pObj->GetSizeBytes());
+
+ // do not swap out when we have less than 16KB data objects
+ if(nSizeBytes >= (16 * 1024))
+ {
+ pObj->FireSwapOutRequest();
+ nUsedSize = (nSizeBytes < nUsedSize) ? nUsedSize - nSizeBytes : 0;
+ }
+ }
+ }
+ }
+}
+
+// -----------------------------------------------------------------------------
+
sal_Bool GraphicManager::ImplFillSwappedGraphicObject( const GraphicObject& rObj, Graphic& rSubstitute )
{
- return( mpCache->FillSwappedGraphicObject( rObj, rSubstitute ) );
+ return mpCache->FillSwappedGraphicObject(rObj, rSubstitute);
}
// -----------------------------------------------------------------------------
diff --git a/svtools/source/svrtf/svparser.cxx b/svtools/source/svrtf/svparser.cxx
index a8626d5f5c45..faaa0e8a29d7 100644
--- a/svtools/source/svrtf/svparser.cxx
+++ b/svtools/source/svrtf/svparser.cxx
@@ -288,7 +288,7 @@ sal_Unicode SvParser::GetNextChar()
&nInfo, &nCvtBytes);
if( (nInfo&RTL_TEXTTOUNICODE_INFO_SRCBUFFERTOSMALL) != 0 )
{
- // The conversion wasn't successfull because we haven't
+ // The conversion wasn't successful because we haven't
// read enough characters.
if( pImplData->hContext != (rtl_TextToUnicodeContext)1 )
{
@@ -377,7 +377,7 @@ sal_Unicode SvParser::GetNextChar()
}
else if( 1 == nChars && 0 == nInfo )
{
- // The conversion was successfull
+ // The conversion was successful
DBG_ASSERT( nCvtBytes == 1,
"no all bytes have been converted!" );
c = cUC;
diff --git a/svtools/source/uno/wizard/unowizard.cxx b/svtools/source/uno/wizard/unowizard.cxx
index 845adfc9fa7d..b1da984af319 100644
--- a/svtools/source/uno/wizard/unowizard.cxx
+++ b/svtools/source/uno/wizard/unowizard.cxx
@@ -228,7 +228,7 @@ namespace svt { namespace uno
//--------------------------------------------------------------------
Dialog* Wizard::createDialog( Window* i_pParent )
{
- WizardShell* pDialog( new WizardShell( i_pParent, this, m_xController, m_aWizardSteps ) );
+ WizardShell* pDialog( new WizardShell( i_pParent, m_xController, m_aWizardSteps ) );
pDialog->SetHelpId( lcl_getHelpId( m_sHelpURL ) );
pDialog->setTitleBase( m_sTitle );
return pDialog;
diff --git a/svtools/source/uno/wizard/wizardshell.cxx b/svtools/source/uno/wizard/wizardshell.cxx
index 51d85e6b8630..a78503e1f7e4 100644
--- a/svtools/source/uno/wizard/wizardshell.cxx
+++ b/svtools/source/uno/wizard/wizardshell.cxx
@@ -72,14 +72,13 @@ namespace svt { namespace uno
//= WizardShell
//==================================================================================================================
//------------------------------------------------------------------------------------------------------------------
- WizardShell::WizardShell( Window* i_pParent, const Reference< XWizard >& i_rWizard, const Reference< XWizardController >& i_rController,
+ WizardShell::WizardShell( Window* i_pParent, const Reference< XWizardController >& i_rController,
const Sequence< Sequence< sal_Int16 > >& i_rPaths )
:WizardShell_Base( i_pParent, WB_MOVEABLE | WB_CLOSEABLE )
- ,m_xWizard( i_rWizard )
,m_xController( i_rController )
,m_nFirstPageID( lcl_determineFirstPageID( i_rPaths ) )
{
- ENSURE_OR_THROW( m_xWizard.is() && m_xController.is(), "invalid wizard/controller" );
+ ENSURE_OR_THROW( m_xController.is(), "invalid controller" );
// declare the paths
for ( sal_Int32 i=0; i<i_rPaths.getLength(); ++i )
diff --git a/svtools/source/uno/wizard/wizardshell.hxx b/svtools/source/uno/wizard/wizardshell.hxx
index 0587f0d1e58e..6f218bcac6af 100644
--- a/svtools/source/uno/wizard/wizardshell.hxx
+++ b/svtools/source/uno/wizard/wizardshell.hxx
@@ -51,7 +51,6 @@ namespace svt { namespace uno
public:
WizardShell(
Window* _pParent,
- const ::com::sun::star::uno::Reference< ::com::sun::star::ui::dialogs::XWizard >& i_rWizard,
const ::com::sun::star::uno::Reference< ::com::sun::star::ui::dialogs::XWizardController >& i_rController,
const ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Sequence< sal_Int16 > >& i_rPaths
);
@@ -70,10 +69,6 @@ namespace svt { namespace uno
virtual IWizardPageController*
getPageController( TabPage* _pCurrentPage ) const;
- // attribute access
- const ::com::sun::star::uno::Reference< ::com::sun::star::ui::dialogs::XWizard >&
- getWizard() const { return m_xWizard; }
-
static sal_Int16 convertCommitReasonToTravelType( const CommitPageReason i_eReason );
// operations
@@ -131,7 +126,6 @@ namespace svt { namespace uno
private:
typedef ::std::map< TabPage*, PWizardPageController > Page2ControllerMap;
- const ::com::sun::star::uno::Reference< ::com::sun::star::ui::dialogs::XWizard > m_xWizard;
const ::com::sun::star::uno::Reference< ::com::sun::star::ui::dialogs::XWizardController > m_xController;
const sal_Int16 m_nFirstPageID;
Page2ControllerMap m_aPageControllers;
diff --git a/svx/Library_svxcore.mk b/svx/Library_svxcore.mk
index b2bce1e9b1e3..4d2704a24dbe 100644
--- a/svx/Library_svxcore.mk
+++ b/svx/Library_svxcore.mk
@@ -188,6 +188,7 @@ $(eval $(call gb_Library_add_exception_objects,svxcore,\
svx/source/sdr/animation/scheduler \
svx/source/sdr/animation/objectanimator \
svx/source/sdr/animation/animationstate \
+ svx/source/sdr/attribute/sdrallfillattributeshelper \
svx/source/sdr/attribute/sdrlinefillshadowtextattribute \
svx/source/sdr/attribute/sdrfilltextattribute \
svx/source/sdr/attribute/sdrshadowtextattribute \
@@ -394,6 +395,7 @@ $(eval $(call gb_Library_add_exception_objects,svxcore,\
svx/source/unodraw/gluepts \
svx/source/unodraw/shapepropertynotifier \
svx/source/unodraw/tableshape \
+ svx/source/unodraw/unobrushitemhelper \
svx/source/unodraw/unobtabl \
svx/source/unodraw/unodtabl \
svx/source/unodraw/UnoGraphicExporter \
diff --git a/svx/Package_inc.mk b/svx/Package_inc.mk
index f0c8f620e7b6..2a28b96e76ec 100644
--- a/svx/Package_inc.mk
+++ b/svx/Package_inc.mk
@@ -203,6 +203,7 @@ $(eval $(call gb_Package_add_file,svx_inc,inc/svx/sdprcitm.hxx,svx/sdprcitm.hxx)
$(eval $(call gb_Package_add_file,svx_inc,inc/svx/sdr/animation/animationstate.hxx,svx/sdr/animation/animationstate.hxx))
$(eval $(call gb_Package_add_file,svx_inc,inc/svx/sdr/animation/objectanimator.hxx,svx/sdr/animation/objectanimator.hxx))
$(eval $(call gb_Package_add_file,svx_inc,inc/svx/sdr/animation/scheduler.hxx,svx/sdr/animation/scheduler.hxx))
+$(eval $(call gb_Package_add_file,svx_inc,inc/svx/sdr/attribute/sdrallfillattributeshelper.hxx,svx/sdr/attribute/sdrallfillattributeshelper.hxx))
$(eval $(call gb_Package_add_file,svx_inc,inc/svx/sdr/attribute/sdrfilltextattribute.hxx,svx/sdr/attribute/sdrfilltextattribute.hxx))
$(eval $(call gb_Package_add_file,svx_inc,inc/svx/sdr/attribute/sdrformtextattribute.hxx,svx/sdr/attribute/sdrformtextattribute.hxx))
$(eval $(call gb_Package_add_file,svx_inc,inc/svx/sdr/attribute/sdrformtextoutlineattribute.hxx,svx/sdr/attribute/sdrformtextoutlineattribute.hxx))
@@ -437,6 +438,7 @@ $(eval $(call gb_Package_add_file,svx_inc,inc/svx/ucsubset.hrc,svx/ucsubset.hrc)
$(eval $(call gb_Package_add_file,svx_inc,inc/svx/ucsubset.hxx,svx/ucsubset.hxx))
$(eval $(call gb_Package_add_file,svx_inc,inc/svx/unoapi.hxx,svx/unoapi.hxx))
$(eval $(call gb_Package_add_file,svx_inc,inc/svx/unofill.hxx,svx/unofill.hxx))
+$(eval $(call gb_Package_add_file,svx_inc,inc/svx/unobrushitemhelper.hxx,svx/unobrushitemhelper.hxx))
$(eval $(call gb_Package_add_file,svx_inc,inc/svx/unomaster.hxx,svx/unomaster.hxx))
$(eval $(call gb_Package_add_file,svx_inc,inc/svx/unomid.hxx,svx/unomid.hxx))
$(eval $(call gb_Package_add_file,svx_inc,inc/svx/unomod.hxx,svx/unomod.hxx))
diff --git a/svx/inc/svx/AccessibleShapeTreeInfo.hxx b/svx/inc/svx/AccessibleShapeTreeInfo.hxx
index 5b9d7ba94d3b..ba4ee0701b9c 100644
--- a/svx/inc/svx/AccessibleShapeTreeInfo.hxx
+++ b/svx/inc/svx/AccessibleShapeTreeInfo.hxx
@@ -43,7 +43,7 @@ namespace accessibility {
<ul>
<li>The model broadcaster is used for getting notified about shape
changes. Using this broadcaster makes in unnecessary to register at
- each shape seperately.</li>
+ each shape separately.</li>
<li>The view forwarder is responsible for transformation between
coordinate systems and for providing the visible area both with respect
to a specific window.</li>
diff --git a/svx/inc/svx/AccessibleTextHelper.hxx b/svx/inc/svx/AccessibleTextHelper.hxx
index a868dc606abb..6e8b7d4fd388 100644
--- a/svx/inc/svx/AccessibleTextHelper.hxx
+++ b/svx/inc/svx/AccessibleTextHelper.hxx
@@ -142,7 +142,7 @@ namespace accessibility
/** Query the current edit source
@attention This method returns by reference, so you are
- responsible for serialization (typically, you aquired the
+ responsible for serialization (typically, you acquired the
solar mutex when calling this method). Thus, the method
should only be called from the main office thread.
diff --git a/svx/inc/svx/ChildrenManager.hxx b/svx/inc/svx/ChildrenManager.hxx
index be1f4079d466..53db7675e204 100644
--- a/svx/inc/svx/ChildrenManager.hxx
+++ b/svx/inc/svx/ChildrenManager.hxx
@@ -57,7 +57,7 @@ class ChildrenManagerImpl;
forwarder in the shape tree info.</p>
<p>A children manager registers itself at the broadcaster passed to its
- constructor and transforms/forwards the recieved events to the listeners
+ constructor and transforms/forwards the received events to the listeners
of the also given context base. The transformation process includes
interpreting a <type>document::XEventListener</type>, the change from
XShape references to the associated XAccessible reference, and the
@@ -80,7 +80,7 @@ public:
/** Create a children manager, which manages the children of the given
parent. The parent is used for creating accessible objects. The
list of shapes for which to create those objects is not derived from
- the parent and has to be provided seperately by calling one of the
+ the parent and has to be provided separately by calling one of the
update methods.
@param rxParent
The parent of the accessible objects which will be created
@@ -135,7 +135,7 @@ public:
/** Update the child manager. Take care of a modified set of children
and modified visible area. This method can optimize the update
- process with respect seperate updates of a modified children list
+ process with respect separate updates of a modified children list
and visible area.
@param bCreateNewObjectsOnDemand
If </true> then accessible objects associated with the visible
diff --git a/svx/inc/svx/IAccessibleParent.hxx b/svx/inc/svx/IAccessibleParent.hxx
index bf1f3dd6fc56..48389825e0fb 100644
--- a/svx/inc/svx/IAccessibleParent.hxx
+++ b/svx/inc/svx/IAccessibleParent.hxx
@@ -50,7 +50,7 @@ public:
with another and send the appropriate notifications. That are two
child events: One notifying the removal of the current child and one
about the existence of the new child. The index of the new child is
- implementation dependent, i.e. it is not garanteed that the
+ implementation dependent, i.e. it is not guaranteed that the
replacement has the same index as the current child has.
<p>A default implementation can just use the ShapeTypeHandler::CreateAccessibleObject
diff --git a/svx/inc/svx/IAccessibleViewForwarder.hxx b/svx/inc/svx/IAccessibleViewForwarder.hxx
index a99db066e43e..53d40e514d0d 100644
--- a/svx/inc/svx/IAccessibleViewForwarder.hxx
+++ b/svx/inc/svx/IAccessibleViewForwarder.hxx
@@ -45,13 +45,13 @@ namespace accessibility {
transformation methods do not require explicit mapmodes. These have to
be provided implicitely by the classes that implement this
interface. A third, less important, difference are the additional
- transfomation methods for sizes. The reasons for their existince are
+ transfomation methods for sizes. The reasons for their existence are
convenience and improved performance.</p>
@attention
Note, that modifications of the underlying view that lead to
different transformations between internal and screen coordinates or
- change the validity of the forwarder have to be signaled seperately.
+ change the validity of the forwarder have to be signaled separately.
*/
class IAccessibleViewForwarder
{
diff --git a/svx/inc/svx/dbaexchange.hxx b/svx/inc/svx/dbaexchange.hxx
index dc6b765dd502..3760342f445c 100644
--- a/svx/inc/svx/dbaexchange.hxx
+++ b/svx/inc/svx/dbaexchange.hxx
@@ -169,7 +169,7 @@ namespace svx
//====================================================================
//= ODataAccessObjectTransferable
//====================================================================
- /** class for transfering data access objects (tables, queries, statements ...)
+ /** class for transferring data access objects (tables, queries, statements ...)
*/
class SVX_DLLPUBLIC ODataAccessObjectTransferable : public TransferableHelper
{
@@ -257,7 +257,7 @@ namespace svx
//====================================================================
//= OMultiColumnTransferable
//====================================================================
- /** class for transfering multiple columns
+ /** class for transferring multiple columns
*/
class SVX_DLLPUBLIC OMultiColumnTransferable : public TransferableHelper
{
diff --git a/svx/inc/svx/dlgctrl.hxx b/svx/inc/svx/dlgctrl.hxx
index 682bb7a1c0a5..c9a53303b3ba 100644
--- a/svx/inc/svx/dlgctrl.hxx
+++ b/svx/inc/svx/dlgctrl.hxx
@@ -255,7 +255,7 @@ public:
long PointToIndex(const Point &pt) const;
Point IndexToPoint(long nIndex) const ;
long GetFoucsPosIndex() const ;
- //Solution:Keyboard fucntion for key input and focus handling function
+ //Solution:Keyboard function for key input and focus handling function
virtual void KeyInput( const KeyEvent& rKEvt );
virtual void GetFocus();
virtual void LoseFocus();
diff --git a/svx/inc/svx/fillctrl.hxx b/svx/inc/svx/fillctrl.hxx
index daa2b20604db..53ec40622b90 100644
--- a/svx/inc/svx/fillctrl.hxx
+++ b/svx/inc/svx/fillctrl.hxx
@@ -19,14 +19,13 @@
*
*************************************************************/
-
-
#ifndef _FILLCTRL_HXX
#define _FILLCTRL_HXX
#include <svl/lstner.hxx>
#include <sfx2/tbxctrl.hxx>
#include "svx/svxdllapi.h"
+#include <svx/xenum.hxx>
class XFillStyleItem;
class XFillColorItem;
@@ -44,32 +43,33 @@ class ListBox;
|*
\************************************************************************/
-class SVX_DLLPUBLIC SvxFillToolBoxControl: public SfxToolBoxControl
+class SVX_DLLPUBLIC SvxFillToolBoxControl : public SfxToolBoxControl
{
private:
- XFillStyleItem* pStyleItem;
- XFillColorItem* pColorItem;
- XFillGradientItem* pGradientItem;
- XFillHatchItem* pHatchItem;
- XFillBitmapItem* pBitmapItem;
+ XFillStyleItem* mpStyleItem;
+ XFillColorItem* mpColorItem;
+ XFillGradientItem* mpGradientItem;
+ XFillHatchItem* mpHatchItem;
+ XFillBitmapItem* mpBitmapItem;
+
+ FillControl* mpFillControl;
+ SvxFillTypeBox* mpFillTypeLB;
+ SvxFillAttrBox* mpFillAttrLB;
- FillControl* pFillControl;
- SvxFillTypeBox* pFillTypeLB;
- SvxFillAttrBox* pFillAttrLB;
+ XFillStyle meLastXFS;
- sal_Bool bUpdate;
- sal_uInt16 eLastXFS;
+ /// bitfield
+ bool mbUpdate : 1;
public:
SFX_DECL_TOOLBOX_CONTROL();
- SvxFillToolBoxControl( sal_uInt16 nSlotId, sal_uInt16 nId, ToolBox& rTbx );
+ SvxFillToolBoxControl(sal_uInt16 nSlotId, sal_uInt16 nId, ToolBox& rTbx);
~SvxFillToolBoxControl();
- virtual void StateChanged( sal_uInt16 nSID, SfxItemState eState,
- const SfxPoolItem* pState );
- void Update( const SfxPoolItem* pState );
- virtual Window* CreateItemWindow( Window *pParent );
+ virtual void StateChanged(sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState);
+ void Update(const SfxPoolItem* pState);
+ virtual Window* CreateItemWindow(Window* pParent);
};
//========================================================================
@@ -79,24 +79,34 @@ class FillControl : public Window
private:
friend class SvxFillToolBoxControl;
- SvxFillTypeBox* pLbFillType;
- SvxFillAttrBox* pLbFillAttr;
- Size aLogicalFillSize;
- Size aLogicalAttrSize;
- Timer aDelayTimer;
-
-//#if 0 // _SOLAR__PRIVATE
- DECL_LINK( DelayHdl, Timer * );
- DECL_LINK( SelectFillTypeHdl, ListBox * );
- DECL_LINK( SelectFillAttrHdl, ListBox * );
-//#endif
- virtual void DataChanged( const DataChangedEvent& rDCEvt );
+ SvxFillTypeBox* mpLbFillType;
+ SvxFillAttrBox* mpLbFillAttr;
+ Size maLogicalFillSize;
+ Size maLogicalAttrSize;
+
+ //
+ sal_uInt16 mnLastFillTypeControlSelectEntryPos;
+ sal_uInt16 mnLastFillAttrControlSelectEntryPos;
+
+ /// bitfield
+ bool mbFillTypeChanged : 1;
+
+ DECL_LINK(SelectFillTypeHdl,ListBox *);
+ DECL_LINK(SelectFillAttrHdl,ListBox *);
+
+ virtual void DataChanged(const DataChangedEvent& rDCEvt);
+
+ void InitializeFillStyleAccordingToGivenFillType(XFillStyle aFillStyle);
+ void updateLastFillTypeControlSelectEntryPos();
+ void updateLastFillAttrControlSelectEntryPos();
+
public:
- FillControl( Window* pParent, WinBits nStyle = 0 );
+ FillControl(Window* pParent, WinBits nStyle = 0);
~FillControl();
virtual void Resize();
};
-#endif // _FILLCTRL_HXX
+#endif // _FILLCTRL_HXX
+// eof
diff --git a/svx/inc/svx/fmgridcl.hxx b/svx/inc/svx/fmgridcl.hxx
index 6c51494f5b51..7a1d92c18a6d 100644
--- a/svx/inc/svx/fmgridcl.hxx
+++ b/svx/inc/svx/fmgridcl.hxx
@@ -141,7 +141,7 @@ public:
@param eObjType
The type to ask for
@param _nPosition
- The position of a tablecell (index position), header bar colum/row cell
+ The position of a tablecell (index position), header bar column/row cell
@return
The name of the specified object.
*/
@@ -151,7 +151,7 @@ public:
@param eObjType
The type to ask for
@param _nPosition
- The position of a tablecell (index position), header bar colum/row cell
+ The position of a tablecell (index position), header bar column/row cell
@return
The description of the specified object.
*/
diff --git a/svx/inc/svx/fmsrcimp.hxx b/svx/inc/svx/fmsrcimp.hxx
index 5791d2e44e09..dc4ba7e81d50 100644
--- a/svx/inc/svx/fmsrcimp.hxx
+++ b/svx/inc/svx/fmsrcimp.hxx
@@ -92,7 +92,7 @@ struct FmSearchProgress
class FmRecordCountListener : public ::cppu::WeakImplHelper1< ::com::sun::star::beans::XPropertyChangeListener>
{
-// Atribute
+// Attribute
Link m_lnkWhoWantsToKnow;
::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet > m_xListening;
diff --git a/svx/inc/svx/hdft.hxx b/svx/inc/svx/hdft.hxx
index f0018b3a6e55..307e044933f1 100644
--- a/svx/inc/svx/hdft.hxx
+++ b/svx/inc/svx/hdft.hxx
@@ -43,11 +43,15 @@
// class SvxHFPage ------------------------------------------------------
-class SVX_DLLPUBLIC SvxHFPage: public SfxTabPage
+class SVX_DLLPUBLIC SvxHFPage : public SfxTabPage
{
using TabPage::ActivatePage;
using TabPage::DeactivatePage;
+private:
+ //UUUU
+ void EnableDrawingLayerFillStyles(bool bNew) { mbEnableDrawingLayerFillStyles = bNew; }
+
public:
virtual sal_Bool FillItemSet( SfxItemSet& rOutSet );
@@ -55,8 +59,12 @@ public:
virtual ~SvxHFPage();
- void DisableDeleteQueryBox() { bDisableQueryBox = sal_True; }
- void EnableBackgroundSelector( sal_Bool bNew ) { bEnableBackgroundSelector = bNew; }
+ void DisableDeleteQueryBox() { mbDisableQueryBox = true; }
+ void EnableBackgroundSelector(bool bNew) { mbEnableBackgroundSelector = bNew; }
+
+ //UUUU
+ virtual void PageCreated(SfxAllItemSet aSet);
+
void EnableDynamicSpacing();
protected:
@@ -84,9 +92,11 @@ protected:
sal_uInt16 nId;
SfxItemSet* pBBSet;
- sal_Bool bDisableQueryBox;
- sal_Bool bEnableBackgroundSelector;
- bool bInReset;
+
+ /// bitfield
+ bool mbDisableQueryBox : 1;
+ bool mbEnableBackgroundSelector : 1;
+ bool mbEnableDrawingLayerFillStyles : 1;
void InitHandler();
DECL_LINK( TurnOnHdl, CheckBox*);
diff --git a/svx/inc/svx/msdffdef.hxx b/svx/inc/svx/msdffdef.hxx
index f8530309ad4e..bb13756678c9 100644
--- a/svx/inc/svx/msdffdef.hxx
+++ b/svx/inc/svx/msdffdef.hxx
@@ -1100,7 +1100,7 @@ typedef enum {
} MSO_BLIPUSAGE;
typedef enum { // GEL provided types...
- mso_blipERROR = 0, // An error occured during loading
+ mso_blipERROR = 0, // An error occurred during loading
mso_blipUNKNOWN, // An unknown blip type
mso_blipEMF, // Windows Enhanced Metafile
mso_blipWMF, // Windows Metafile
diff --git a/svx/inc/svx/pagectrl.hxx b/svx/inc/svx/pagectrl.hxx
index 471b72c3cfea..df3e7582a39e 100644
--- a/svx/inc/svx/pagectrl.hxx
+++ b/svx/inc/svx/pagectrl.hxx
@@ -19,19 +19,14 @@
*
*************************************************************/
-
#ifndef _SVX_PAGECTRL_HXX
#define _SVX_PAGECTRL_HXX
-// include ---------------------------------------------------------------
-
#include <vcl/window.hxx>
#include "svx/svxdllapi.h"
-
-// forward ---------------------------------------------------------------
+#include <svx/sdr/attribute/sdrallfillattributeshelper.hxx>
class SvxBoxItem;
-struct PageWindow_Impl;
// class SvxPageWindow ---------------------------------------------------
@@ -47,29 +42,34 @@ private:
long nBottom;
long nLeft;
long nRight;
- Color aColor;
- PageWindow_Impl* pImpl;
+ SvxBoxItem* pBorder;
+ sal_Bool bResetBackground;
+ sal_Bool bFrameDirection;
+ sal_Int32 nFrameDirection;
long nHdLeft;
long nHdRight;
long nHdDist;
long nHdHeight;
- Color aHdColor;
SvxBoxItem* pHdBorder;
long nFtLeft;
long nFtRight;
long nFtDist;
long nFtHeight;
- Color aFtColor;
SvxBoxItem* pFtBorder;
- sal_Bool bFooter :1;
- sal_Bool bHeader :1;
- sal_Bool bTable :1;
- sal_Bool bHorz :1;
- sal_Bool bVert :1;
+ //UUUU
+ drawinglayer::attribute::SdrAllFillAttributesHelperPtr maHeaderFillAttributes;
+ drawinglayer::attribute::SdrAllFillAttributesHelperPtr maFooterFillAttributes;
+ drawinglayer::attribute::SdrAllFillAttributesHelperPtr maPageFillAttributes;
+
+ sal_Bool bFooter : 1;
+ sal_Bool bHeader : 1;
+ sal_Bool bTable : 1;
+ sal_Bool bHorz : 1;
+ sal_Bool bVert : 1;
sal_uInt16 eUsage;
@@ -77,90 +77,95 @@ private:
String aRightText;
protected:
- virtual void Paint( const Rectangle& rRect );
+ virtual void Paint(const Rectangle& rRect);
- virtual void DrawPage( const Point& rPoint,
- const sal_Bool bSecond,
- const sal_Bool bEnabled );
+ virtual void DrawPage(const Point& rPoint,
+ const sal_Bool bSecond,
+ const sal_Bool bEnabled);
+
+ //UUUU
+ void drawFillAttributes(
+ const drawinglayer::attribute::SdrAllFillAttributesHelperPtr& rFillAttributes,
+ const Rectangle& rPaintRange,
+ const Rectangle& rDefineRange);
public:
- SvxPageWindow( Window* pParent, const ResId& rId );
+ SvxPageWindow(Window* pParent,const ResId& rId);
~SvxPageWindow();
- void SetWidth( long nW ) { aSize.Width() = nW; }
- void SetHeight( long nH ) { aSize.Height() = nH; }
+ //UUUU
+ void setHeaderFillAttributes(const drawinglayer::attribute::SdrAllFillAttributesHelperPtr& rFillAttributes) { maHeaderFillAttributes = rFillAttributes; }
+ void setFooterFillAttributes(const drawinglayer::attribute::SdrAllFillAttributesHelperPtr& rFillAttributes) { maFooterFillAttributes = rFillAttributes; }
+ void setPageFillAttributes(const drawinglayer::attribute::SdrAllFillAttributesHelperPtr& rFillAttributes) { maPageFillAttributes = rFillAttributes; }
+ const drawinglayer::attribute::SdrAllFillAttributesHelperPtr& getPageFillAttributes() const { return maPageFillAttributes; }
+
+ void SetWidth(long nW) { aSize.Width() = nW; }
+ void SetHeight(long nH) { aSize.Height() = nH; }
- void SetSize( const Size& rSz ) { aSize = rSz; }
+ void SetSize(const Size& rSz) { aSize = rSz; }
const Size& GetSize() const { return aSize; }
- void SetTop( long nNew ) { nTop = nNew; }
- void SetBottom( long nNew ) { nBottom = nNew; }
- void SetLeft( long nNew ) { nLeft = nNew; }
- void SetRight( long nNew ) { nRight = nNew; }
- void SetColor( const Color& rNew ) { aColor = rNew; }
- void SetBorder( const SvxBoxItem& rNew );
- void SetBitmap( Bitmap* pBmp );
-
- long GetTop() const { return nTop; }
- long GetBottom() const { return nBottom;}
- long GetLeft() const { return nLeft; }
+ void SetTop(long nNew) { nTop = nNew; }
+ void SetBottom(long nNew) { nBottom = nNew; }
+ void SetLeft(long nNew) { nLeft = nNew; }
+ void SetRight(long nNew) { nRight = nNew; }
+ void SetBorder(const SvxBoxItem& rNew);
+
+ long GetTop() const { return nTop; }
+ long GetBottom() const { return nBottom; }
+ long GetLeft() const { return nLeft; }
long GetRight() const { return nRight; }
- const Color& GetColor() const { return aColor; }
const SvxBoxItem& GetBorder() const;
- void SetHdLeft( long nNew ) { nHdLeft = nNew; }
- void SetHdRight( long nNew ) { nHdRight = nNew; }
- void SetHdDist( long nNew ) { nHdDist = nNew; }
- void SetHdHeight( long nNew ) { nHdHeight = nNew; }
- void SetHdColor( const Color& aNew ) { aHdColor = aNew; }
- void SetHdBorder( const SvxBoxItem& rNew );
+ void SetHdLeft(long nNew) { nHdLeft = nNew; }
+ void SetHdRight(long nNew) { nHdRight = nNew; }
+ void SetHdDist(long nNew) { nHdDist = nNew; }
+ void SetHdHeight(long nNew) { nHdHeight = nNew; }
+ void SetHdBorder(const SvxBoxItem& rNew);
- long GetHdLeft() const { return nHdLeft; }
+ long GetHdLeft() const { return nHdLeft; }
long GetHdRight() const { return nHdRight; }
- long GetHdDist() const { return nHdDist; }
- long GetHdHeight() const { return nHdHeight;}
+ long GetHdDist() const { return nHdDist; }
+ long GetHdHeight() const { return nHdHeight; }
- const Color& GetHdColor() const { return aHdColor; }
const SvxBoxItem& GetHdBorder() const { return *pHdBorder; }
- void SetFtLeft( long nNew ) { nFtLeft = nNew; }
- void SetFtRight( long nNew ) { nFtRight = nNew; }
- void SetFtDist( long nNew ) { nFtDist = nNew; }
- void SetFtHeight( long nNew ) { nFtHeight = nNew; }
- void SetFtColor( const Color& aNew ) { aFtColor = aNew; }
- void SetFtBorder( const SvxBoxItem& rNew );
+ void SetFtLeft(long nNew) { nFtLeft = nNew; }
+ void SetFtRight(long nNew) { nFtRight = nNew; }
+ void SetFtDist(long nNew) { nFtDist = nNew; }
+ void SetFtHeight(long nNew) { nFtHeight = nNew; }
+ void SetFtBorder(const SvxBoxItem& rNew);
- long GetFtLeft() const { return nFtLeft; }
+ long GetFtLeft() const { return nFtLeft; }
long GetFtRight() const { return nFtRight; }
- long GetFtDist() const { return nFtDist; }
- long GetFtHeight() const { return nFtHeight;}
+ long GetFtDist() const { return nFtDist; }
+ long GetFtHeight() const { return nFtHeight; }
- const Color& GetFtColor() const { return aFtColor; }
const SvxBoxItem& GetFtBorder() const { return *pFtBorder; }
- void SetUsage( sal_uInt16 eU ) { eUsage = eU; }
- sal_uInt16 GetUsage() const { return eUsage;}
+ void SetUsage(sal_uInt16 eU) { eUsage = eU; }
+ sal_uInt16 GetUsage() const { return eUsage; }
- void SetHeader( sal_Bool bNew ) { bHeader = bNew; }
- sal_Bool GetHeader() const { return bHeader;}
- void SetFooter( sal_Bool bNew ) { bFooter = bNew; }
- sal_Bool GetFooter() const { return bFooter;}
+ void SetHeader(sal_Bool bNew) { bHeader = bNew; }
+ sal_Bool GetHeader() const { return bHeader; }
+ void SetFooter(sal_Bool bNew) { bFooter = bNew; }
+ sal_Bool GetFooter() const { return bFooter; }
- void SetTable( sal_Bool bNew ) { bTable = bNew; }
- sal_Bool GetTable() const { return bTable;}
- void SetHorz( sal_Bool bNew ) { bHorz = bNew; }
- sal_Bool GetHorz() const { return bHorz;}
- void SetVert( sal_Bool bNew ) { bVert = bNew; }
- sal_Bool GetVert() const { return bVert;}
+ void SetTable(sal_Bool bNew) { bTable = bNew; }
+ sal_Bool GetTable() const { return bTable; }
+ void SetHorz(sal_Bool bNew) { bHorz = bNew; }
+ sal_Bool GetHorz() const { return bHorz; }
+ void SetVert(sal_Bool bNew) { bVert = bNew; }
+ sal_Bool GetVert() const { return bVert; }
void EnableFrameDirection(sal_Bool bEnable);
//uses enum SvxFrameDirection
- void SetFrameDirection(sal_Int32 nFrameDirection);
+ void SetFrameDirection(sal_Int32 nDirection);
void ResetBackground();
};
#endif // #ifndef _SVX_PAGECTRL_HXX
-
+//eof
diff --git a/svx/inc/svx/sdr/attribute/sdrallfillattributeshelper.hxx b/svx/inc/svx/sdr/attribute/sdrallfillattributeshelper.hxx
new file mode 100755
index 000000000000..3983db27fc07
--- /dev/null
+++ b/svx/inc/svx/sdr/attribute/sdrallfillattributeshelper.hxx
@@ -0,0 +1,98 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+#ifndef _SDR_ATTRIBUTE_SDRALLFILLATTRIBUTESHELPER_HXX
+#define _SDR_ATTRIBUTE_SDRALLFILLATTRIBUTESHELPER_HXX
+
+#include "svx/svxdllapi.h"
+#include <drawinglayer/attribute/fillgradientattribute.hxx>
+#include <drawinglayer/attribute/sdrfillattribute.hxx>
+#include <drawinglayer/primitive2d/baseprimitive2d.hxx>
+#include <boost/shared_ptr.hpp>
+#include <tools/color.hxx>
+#include <svl/itemset.hxx>
+
+//////////////////////////////////////////////////////////////////////////////
+
+namespace drawinglayer
+{
+ namespace attribute
+ {
+ class SVX_DLLPUBLIC SdrAllFillAttributesHelper
+ {
+ private:
+ basegfx::B2DRange maLastPaintRange;
+ basegfx::B2DRange maLastDefineRange;
+ boost::shared_ptr< drawinglayer::attribute::SdrFillAttribute > maFillAttribute;
+ boost::shared_ptr< drawinglayer::attribute::FillGradientAttribute > maFillGradientAttribute;
+ drawinglayer::primitive2d::Primitive2DSequence maPrimitives;
+
+ void createPrimitive2DSequence(
+ const basegfx::B2DRange& rPaintRange,
+ const basegfx::B2DRange& rDefineRange);
+
+ protected:
+ public:
+ SdrAllFillAttributesHelper();
+ SdrAllFillAttributesHelper(const Color& rColor);
+ SdrAllFillAttributesHelper(const SfxItemSet& rSet);
+ ~SdrAllFillAttributesHelper();
+
+ bool isUsed() const;
+ bool hasSdrFillAttribute() const { return maFillAttribute.get(); }
+ bool hasFillGradientAttribute() const { return maFillGradientAttribute.get(); }
+ bool isTransparent() const;
+
+ const drawinglayer::attribute::SdrFillAttribute& getFillAttribute() const;
+ const drawinglayer::attribute::FillGradientAttribute& getFillGradientAttribute() const;
+ const drawinglayer::primitive2d::Primitive2DSequence& getPrimitive2DSequence(
+ const basegfx::B2DRange& rPaintRange,
+ const basegfx::B2DRange& rDefineRange) const;
+
+ // get average fill color; tries to calculate a 'medium' color
+ // which e.g. may be used as comparison to decide if other
+ // colors are visible
+ basegfx::BColor getAverageColor(const basegfx::BColor& rFallback) const;
+
+ // return if a repaint of this content needs a complete repaint. This
+ // is e.g. not needed for no fill or color fill (a partial repaint
+ // will do the trick), but necessary for everything that is not top-left
+ // oriented
+ bool needCompleteRepaint() const;
+ };
+ } // end of namespace attribute
+} // end of namespace drawinglayer
+
+//////////////////////////////////////////////////////////////////////////////
+
+namespace drawinglayer
+{
+ namespace attribute
+ {
+ typedef boost::shared_ptr< SdrAllFillAttributesHelper > SdrAllFillAttributesHelperPtr;
+ } // end of namespace attribute
+} // end of namespace drawinglayer
+
+//////////////////////////////////////////////////////////////////////////////
+
+#endif // _SDR_ATTRIBUTE_SDRALLFILLATTRIBUTESHELPER_HXX
+
+// eof
diff --git a/svx/inc/svx/sdr/contact/displayinfo.hxx b/svx/inc/svx/sdr/contact/displayinfo.hxx
index abc599a922b3..4bae7bb99f64 100644
--- a/svx/inc/svx/sdr/contact/displayinfo.hxx
+++ b/svx/inc/svx/sdr/contact/displayinfo.hxx
@@ -73,7 +73,7 @@ namespace sdr
bool mbPageProcessingActive : 1;
// Internal flag to remember if EnteredGroupDrawMode is active. Default is true
- // since this mode starts activated and gets switched off when reacing
+ // since this mode starts activated and gets switched off when reaching
// the current group level. Should only be changed by instances which do
// primitive processing
bool mbGhostedDrawModeActive : 1;
diff --git a/svx/inc/svx/sdr/contact/objectcontact.hxx b/svx/inc/svx/sdr/contact/objectcontact.hxx
index 061005314788..9d9064b9f9e0 100644
--- a/svx/inc/svx/sdr/contact/objectcontact.hxx
+++ b/svx/inc/svx/sdr/contact/objectcontact.hxx
@@ -124,7 +124,7 @@ namespace sdr
// LazyInvalidate request. This is used from the VOCs to mark that they
// got invalidated by an ActionCanged() call. An active view needs to remember
// this and take action on it. Default implementation directly calls back
- // triggerLazyInvalidate() wich promptly handles the request
+ // triggerLazyInvalidate() which promptly handles the request
virtual void setLazyInvalidate(ViewObjectContact& rVOC);
// call this to support evtl. preparations for repaint. Default does nothing
diff --git a/svx/inc/svx/sdr/contact/objectcontactofpageview.hxx b/svx/inc/svx/sdr/contact/objectcontactofpageview.hxx
index 342860f4af74..1f908857ac6d 100644
--- a/svx/inc/svx/sdr/contact/objectcontactofpageview.hxx
+++ b/svx/inc/svx/sdr/contact/objectcontactofpageview.hxx
@@ -63,7 +63,7 @@ namespace sdr
// LazyInvalidate request. This is used from the VOCs to mark that they
// got invalidated by an ActionCanged() call. An active view needs to remember
// this and take action on it. Default implementation directly calls back
- // triggerLazyInvalidate() wich promptly handles the request
+ // triggerLazyInvalidate() which promptly handles the request
virtual void setLazyInvalidate(ViewObjectContact& rVOC);
// call this to support evtl. preparations for repaint
diff --git a/svx/inc/svx/sdr/overlay/overlayobject.hxx b/svx/inc/svx/sdr/overlay/overlayobject.hxx
index 1280aa5bbb54..6a637c8f8064 100644
--- a/svx/inc/svx/sdr/overlay/overlayobject.hxx
+++ b/svx/inc/svx/sdr/overlay/overlayobject.hxx
@@ -117,7 +117,7 @@ namespace sdr
virtual void objectChange();
// write access to AntiAliase flag. This is protected since
- // only implementations are allowed to change this, preferrably in their
+ // only implementations are allowed to change this, preferably in their
// constructor
void allowAntiAliase(bool bNew);
diff --git a/svx/inc/svx/sdr/primitive2d/sdrtextprimitive2d.hxx b/svx/inc/svx/sdr/primitive2d/sdrtextprimitive2d.hxx
index fbc66481ee61..a6b6266ed0b9 100644
--- a/svx/inc/svx/sdr/primitive2d/sdrtextprimitive2d.hxx
+++ b/svx/inc/svx/sdr/primitive2d/sdrtextprimitive2d.hxx
@@ -56,7 +56,7 @@ namespace drawinglayer
// COW) and in exclusive, local form as needed in a primitive
const OutlinerParaObject maOutlinerParaObject;
- // remeber last VisualizingPage for which a decomposition was made. If the new target
+ // remember last VisualizingPage for which a decomposition was made. If the new target
// is not given or different, the decomposition needs to be potentially removed
// for supporting e.g. page number change on MasterPage objects or the different
// field renderings in SubGeometry and MasterPage mnode
diff --git a/svx/inc/svx/svdouno.hxx b/svx/inc/svx/svdouno.hxx
index 17f9d1501bf5..8c15217988f1 100644
--- a/svx/inc/svx/svdouno.hxx
+++ b/svx/inc/svx/svdouno.hxx
@@ -150,7 +150,7 @@ protected:
private:
/** retrieves the typed ViewContact for the object
@param _out_rpContact
- Upon successfull return, ->_out_rpContact contains the ViewContact.
+ Upon successful return, ->_out_rpContact contains the ViewContact.
@return
<TRUE/> if and only if the contact was successfully retrieved. In this case,
->_out_rpContact contains a pointer to this contact.
diff --git a/svx/inc/svx/svdpage.hxx b/svx/inc/svx/svdpage.hxx
index 90ad0f30d87e..1d86b4386b7c 100644
--- a/svx/inc/svx/svdpage.hxx
+++ b/svx/inc/svx/svdpage.hxx
@@ -181,6 +181,18 @@ public:
*/
void ClearUserNavigationOrder(void);
+ /** Set the navigation position of all SdrObjects to their position in
+ the mpNavigationOrder list. This method returns immediately when no
+ update is necessary.
+ @return
+ This method returns <TRUE/> when the navigation positions stored
+ in SdrObjects are up to date.
+ It returns <FALSE/> when the navigation positions are not valid,
+ for example because no explicit navigation order has been
+ defined, i.e. HasObjectNavigationOrder() would return <FALSE/>.
+ */
+ bool RecalcNavigationPositions (void);
+
/** Set the navigation order to the one defined by the given list of
XShape objects.
@param rxOrder
diff --git a/svx/inc/svx/svdpntv.hxx b/svx/inc/svx/svdpntv.hxx
index 4c75f72fbf7d..30fbcf139ea4 100644
--- a/svx/inc/svx/svdpntv.hxx
+++ b/svx/inc/svx/svdpntv.hxx
@@ -330,7 +330,7 @@ public:
// #i72889# used from CompleteRedraw() implementation internally, added to be able to do a complete redraw in single steps
//
- // BeginCompleteRedraw returns (or even creates) a SdrPaintWindow whcih shall then be used as
+ // BeginCompleteRedraw returns (or even creates) a SdrPaintWindow which shall then be used as
// target for paints. Since paints may be buffered, use it's GetTargetOutputDevice() method which will
// return the buffer in case of bufered.
// DoCompleteRedraw draws the DrawingLayer hierarchy then.
diff --git a/svx/inc/svx/svxdlg.hxx b/svx/inc/svx/svxdlg.hxx
index bea905ea6952..55589a2ca9e8 100644
--- a/svx/inc/svx/svxdlg.hxx
+++ b/svx/inc/svx/svxdlg.hxx
@@ -385,9 +385,14 @@ public:
sal_uInt16 nOther,
sal_uInt16 nShorter,
sal_uInt16 nLonger ) = 0;
- virtual SfxAbstractTabDialog* CreateSvxBorderBackgroundDlg( Window* pParent, //add for SvxBorderBackgroundDlg
- const SfxItemSet& rCoreSet,
- sal_Bool bEnableSelector = sal_False) = 0;
+
+ //UUUU add for SvxBorderBackgroundDlg
+ virtual SfxAbstractTabDialog* CreateSvxBorderBackgroundDlg(
+ Window* pParent,
+ const SfxItemSet& rCoreSet,
+ bool bEnableSelector = false,
+ bool bEnableDrawingLayerFillStyles = false) = 0;
+
virtual AbstractSvxTransformTabDialog* CreateSvxTransformTabDialog( Window* pParent, //add for SvxTransformTabDialog
const SfxItemSet* pAttr,
const SdrView* pView,
diff --git a/svx/inc/svx/svxids.hrc b/svx/inc/svx/svxids.hrc
index 67b145f3c301..f48c4ff0dc89 100755
--- a/svx/inc/svx/svxids.hrc
+++ b/svx/inc/svx/svxids.hrc
@@ -1347,9 +1347,10 @@
//UUUU
#define SID_OFFER_IMPORT ( SID_SVX_START + 1119)
+#define SID_DRAWINGLAYER_FILLSTYLES ( SID_SVX_START + 1120)
// IMPORTANT NOTE: adjust SID_SVX_FIRSTFREE, when adding new slot id
-#define SID_SVX_FIRSTFREE (SID_OFFER_IMPORT + 1)
+#define SID_SVX_FIRSTFREE (SID_DRAWINGLAYER_FILLSTYLES + 1)
// --------------------------------------------------------------------------
// Overflow check for slot IDs
diff --git a/svx/inc/svx/unobrushitemhelper.hxx b/svx/inc/svx/unobrushitemhelper.hxx
new file mode 100644
index 000000000000..a943d4cb3195
--- /dev/null
+++ b/svx/inc/svx/unobrushitemhelper.hxx
@@ -0,0 +1,56 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+#ifndef _UNOBRUSHITEMHELPER_HXX
+#define _UNOBRUSHITEMHELPER_HXX
+
+#include "svx/svxdllapi.h"
+#include <editeng/brshitem.hxx>
+
+//UUUU Helper function definintions for UNO API fallbacks to replace SvxBrushItem. The
+// idea is to have fallbacks to create a SvxBrushItem if needed for backwards compatibility
+// if needed from the SfxItemSet and vice versa. This is used in cases where e.g. UNO API
+// accesses to slots in the SvxBrushItem are used (see cases in SvxBrushItem::QueryValue
+// and SvxBrushItem::PutValue as MID_BACK_COLOR and similar).
+// To make this work, a cycle of creating a SvxBrushItem from a SfxItemSet, changing a value
+// using PutValue, putting back to the SfxItemSet should create the *same* SvxBrushItem
+// the next time this will be created using getSvxBrushItemFromSourceSet. For more details,
+// see comments at the implementations of that two methods.
+
+// Set the equivalent in the range [XATTR_FILL_FIRST .. XATTR_FILL_LAST] in the given
+// SfxItemSet to create the same FillStyle as is expressed by the given SvxBrushItem.
+// This method will reset all items in the XATTR_FILL_* range first.
+void SVX_DLLPUBLIC setSvxBrushItemAsFillAttributesToTargetSet(
+ const SvxBrushItem& rBrush,
+ SfxItemSet& rToSet);
+
+// Create a SvxBrushItem as close as possible to the settings in the DrawingLayer
+// items in the range [XATTR_FILL_FIRST .. XATTR_FILL_LAST]. Since this is not 100%
+// representable this may lead to reduced data. With nBackgroundID a Which-ID for the
+// to-be-created SvxBrushItem has to be given (default should be 99 as in RES_BACKGROUND).
+SvxBrushItem SVX_DLLPUBLIC getSvxBrushItemFromSourceSet(
+ const SfxItemSet& rSourceSet,
+ sal_uInt16 nBackgroundID,
+ sal_Bool bSearchInParents = sal_True);
+
+#endif // _UNOBRUSHITEMHELPER_HXX
+
+//eof
diff --git a/svx/inc/svx/xflbmpit.hxx b/svx/inc/svx/xflbmpit.hxx
index 5bd225d1862b..f8079cf10d0c 100644
--- a/svx/inc/svx/xflbmpit.hxx
+++ b/svx/inc/svx/xflbmpit.hxx
@@ -28,6 +28,7 @@
#include "svx/svxdllapi.h"
#include "svx/rectenum.hxx"
+
/*************************************************************************
|*
|*
diff --git a/svx/inc/svx/xtable.hxx b/svx/inc/svx/xtable.hxx
index e724ee551ec4..593248d91216 100644
--- a/svx/inc/svx/xtable.hxx
+++ b/svx/inc/svx/xtable.hxx
@@ -211,7 +211,7 @@ typedef ::boost::shared_ptr< XBitmapList > XBitmapListSharedPtr;
//////////////////////////////////////////////////////////////////////////////
// XPropertyListFactory to limit XListSharedPtr creation and thus XPropertyList creation
-// to this factory, so noone can instantiate a non-shared instace of XPropertyList
+// to this factory, so no one can instantiate a non-shared instace of XPropertyList
// or it's derivates
class SVX_DLLPUBLIC XPropertyListFactory
diff --git a/svx/source/accessibility/ChildrenManagerImpl.cxx b/svx/source/accessibility/ChildrenManagerImpl.cxx
index 62fdf9e09d33..61eb91bfed41 100644
--- a/svx/source/accessibility/ChildrenManagerImpl.cxx
+++ b/svx/source/accessibility/ChildrenManagerImpl.cxx
@@ -306,7 +306,7 @@ void ChildrenManagerImpl::CreateListOfVisibleShapes (
Rectangle aVisibleArea = maShapeTreeInfo.GetViewForwarder()->GetVisibleArea();
- // Add the visible shapes for wich the accessible objects already exist.
+ // Add the visible shapes for which the accessible objects already exist.
AccessibleShapeList::iterator I,aEnd = maAccessibleShapes.end();
for (I=maAccessibleShapes.begin(); I != aEnd; ++I)
{
@@ -875,7 +875,7 @@ sal_Bool ChildrenManagerImpl::ReplaceChild (
uno::Any(),
uno::makeAny (I->mxAccessibleShape));
- // Replace with replacement and send an event about existance
+ // Replace with replacement and send an event about existence
// of the new child.
I->mxAccessibleShape = pNewChild;
mrContext.CommitChange (
diff --git a/svx/source/accessibility/ChildrenManagerImpl.hxx b/svx/source/accessibility/ChildrenManagerImpl.hxx
index 396263ad34c2..64f8725cf9c1 100644
--- a/svx/source/accessibility/ChildrenManagerImpl.hxx
+++ b/svx/source/accessibility/ChildrenManagerImpl.hxx
@@ -89,7 +89,7 @@ public:
/** Create a children manager, which manages the children of the given
parent. The parent is used for creating accessible objects. The
list of shapes for which to create those objects is not derived from
- the parent and has to be provided seperately by calling one of the
+ the parent and has to be provided separately by calling one of the
update methods.
@param rxParent
The parent of the accessible objects which will be created
@@ -184,7 +184,7 @@ public:
/** Update the child manager. Take care of a modified set of children
and modified visible area. This method can optimize the update
- process with respect seperate updates of a modified children list
+ process with respect separate updates of a modified children list
and visible area.
@param bCreateNewObjectsOnDemand
If </true> then accessible objects associated with the visible
@@ -274,10 +274,10 @@ public:
(or more) aspect of the view forwarder.
@param aChangeType
A change type of <const>VISIBLE_AREA</const> leads to a call to
- the <member>Update</memeber> which creates accessible objects of
+ the <member>Update</member> which creates accessible objects of
new shapes immediately. Other change types are passed to the
visible accessible children without calling
- <member>Update</memeber>.
+ <member>Update</member>.
@param pViewForwarder
The modified view forwarder. Use this one from now on.
*/
@@ -521,7 +521,7 @@ public:
/** This flag is set during the visibility calculation and indicates
that at one time in this process an event is sent that informs the
- listners of the creation of a new accessible object. This flags is
+ listeners of the creation of a new accessible object. This flags is
not reset afterwards. Don't use it unless you know exactly what you
are doing.
*/
diff --git a/svx/source/accessibility/DGColorNameLookUp.cxx b/svx/source/accessibility/DGColorNameLookUp.cxx
index 97455cb9d489..be75185df418 100644
--- a/svx/source/accessibility/DGColorNameLookUp.cxx
+++ b/svx/source/accessibility/DGColorNameLookUp.cxx
@@ -109,7 +109,7 @@ DGColorNameLookUp::DGColorNameLookUp (void)
}
catch (uno::RuntimeException e)
{
- // When an excpetion occured then whe have an empty name sequence
+ // When an excpetion occurred then whe have an empty name sequence
// and the loop below is not entered.
}
diff --git a/svx/source/accessibility/svxpixelctlaccessiblecontext.cxx b/svx/source/accessibility/svxpixelctlaccessiblecontext.cxx
index ed68c386eba1..e016b7065b7a 100644
--- a/svx/source/accessibility/svxpixelctlaccessiblecontext.cxx
+++ b/svx/source/accessibility/svxpixelctlaccessiblecontext.cxx
@@ -1256,7 +1256,7 @@ Rectangle SvxPixelCtlAccessibleChild::GetBoundingBoxOnScreen( void ) throw( Runt
Rectangle SvxPixelCtlAccessibleChild::GetBoundingBox( void ) throw( RuntimeException )
{
- // no guard neccessary, because no one changes mpBoundingBox after creating it
+ // no guard necessary, because no one changes mpBoundingBox after creating it
ThrowExceptionIfNotAlive();
return *mpBoundingBox;
diff --git a/svx/source/accessibility/svxrectctaccessiblecontext.cxx b/svx/source/accessibility/svxrectctaccessiblecontext.cxx
index 6a053ba5d9ec..3f2c753acc01 100644
--- a/svx/source/accessibility/svxrectctaccessiblecontext.cxx
+++ b/svx/source/accessibility/svxrectctaccessiblecontext.cxx
@@ -595,7 +595,7 @@ void SAL_CALL SvxRectCtlAccessibleContext::selectAccessibleChild( sal_Int32 nInd
DBG_ASSERT( pData,
"SvxRectCtlAccessibleContext::selectAccessibleChild(): this is an impossible state! Or at least should be..." );
- // this does all wich is needed, including the change of the child's state!
+ // this does all which is needed, including the change of the child's state!
mpRepr->SetActualRP( pData->ePoint );
}
@@ -1286,7 +1286,7 @@ Rectangle SvxRectCtlChildAccessibleContext::GetBoundingBoxOnScreen( void ) throw
Rectangle SvxRectCtlChildAccessibleContext::GetBoundingBox( void ) throw( RuntimeException )
{
- // no guard neccessary, because no one changes mpBoundingBox after creating it
+ // no guard necessary, because no one changes mpBoundingBox after creating it
ThrowExceptionIfNotAlive();
return *mpBoundingBox;
diff --git a/svx/source/dialog/dlgctrl.cxx b/svx/source/dialog/dlgctrl.cxx
index 72101ed2acaa..f4f8d65f86bd 100644
--- a/svx/source/dialog/dlgctrl.cxx
+++ b/svx/source/dialog/dlgctrl.cxx
@@ -1099,7 +1099,7 @@ Rectangle SvxPixelCtl::implCalFocusRect( const Point& aPosition )
return Rectangle(nLeft,nTop,nRight,nBottom);
}
-//Solution:Keyboard fucntion
+//Solution:Keyboard function
void SvxPixelCtl::KeyInput( const KeyEvent& rKEvt )
{
KeyCode aKeyCode = rKEvt.GetKeyCode();
diff --git a/svx/source/dialog/docrecovery.cxx b/svx/source/dialog/docrecovery.cxx
index aec7768ba8b9..fec655dbb057 100644
--- a/svx/source/dialog/docrecovery.cxx
+++ b/svx/source/dialog/docrecovery.cxx
@@ -448,7 +448,7 @@ ERecoveryState RecoveryCore::mapDocState2RecoverState(sal_Int32 eDocState)
ERecoveryState eRecState = E_NOT_RECOVERED_YET;
/* Attention:
- Some of the following states can occure at the
+ Some of the following states can occur at the
same time. So we have to check for the "worst case" first!
DAMAGED -> INCOMPLETE -> HANDLED
@@ -596,7 +596,7 @@ void RecoveryCore::impl_startListening()
//===============================================
void RecoveryCore::impl_stopListening()
{
- // Ignore it, if this instance doesnt listen currently
+ // Ignore it, if this instance doesn't listen currently
if (!m_xRealCore.is())
return;
@@ -757,7 +757,7 @@ SaveDialog::SaveDialog(Window* pParent,
FreeResource();
// Prepare the office for the following crash save step.
- // E.g. hide all open widows so the user cant influence our
+ // E.g. hide all open widows so the user can't influence our
// operation .-)
m_pCore->doEmergencySavePrepare();
@@ -1323,7 +1323,7 @@ short RecoveryDialog::execute()
Application::Yield();
// TODO: show BrokenRecoveryDialog again, ift he user
- // doesnt accepted it last time.
+ // doesn't accepted it last time.
if (m_bUserDecideNext)
return DLG_RET_OK;
diff --git a/svx/source/dialog/hdft.cxx b/svx/source/dialog/hdft.cxx
index 4eb9ca73712b..70bae5fa376b 100644
--- a/svx/source/dialog/hdft.cxx
+++ b/svx/source/dialog/hdft.cxx
@@ -19,12 +19,9 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_svx.hxx"
-// include ---------------------------------------------------------------
#include <tools/shl.hxx>
#include <svl/itemiter.hxx>
#include <sfx2/app.hxx>
@@ -32,31 +29,33 @@
#include <sfx2/module.hxx>
#include <vcl/msgbox.hxx>
#include <vcl/graph.hxx>
-
#include <sfx2/sfxsids.hrc>
#include <svx/svxids.hrc>
#include <svx/dialogs.hrc>
#include "hdft.hrc"
#include <svl/intitem.hxx>
-
#define _SVX_HDFT_CXX
-
#include <svx/hdft.hxx>
#include <svx/pageitem.hxx>
-//CHINA001 #include "bbdlg.hxx"
#include "svx/dlgutil.hxx"
#include <svx/dialmgr.hxx>
#include "svx/htmlmode.hxx"
-
#include <editeng/brshitem.hxx>
#include <editeng/lrspitem.hxx>
#include <editeng/ulspitem.hxx>
#include <editeng/shaditem.hxx>
#include <editeng/sizeitem.hxx>
#include <editeng/boxitem.hxx>
-
#include <svx/svxdlg.hxx> //CHINA001
#include <svx/dialogs.hrc> //CHINA001
+
+//UUUU
+#include <svx/xdef.hxx>
+#include <svx/xenum.hxx>
+#include <svx/xfillit0.hxx>
+#include <svx/unobrushitemhelper.hxx>
+#include <sfx2/request.hxx>
+
// static ----------------------------------------------------------------
// --> OD 2004-06-18 #i19922#
@@ -70,6 +69,11 @@ static const long DEF_DIST_CALC = 250; // 2,5mm (Calc)
static sal_uInt16 pRanges[] =
{
SID_ATTR_BRUSH, SID_ATTR_BRUSH,
+
+ //UUUU Support DrawingLayer FillStyles (no real call to below GetRanges()
+ // detected, still do the complete transition)
+ XATTR_FILL_FIRST, XATTR_FILL_LAST,
+
SID_ATTR_BORDER_OUTER, SID_ATTR_BORDER_OUTER,
SID_ATTR_BORDER_INNER, SID_ATTR_BORDER_INNER,
SID_ATTR_BORDER_SHADOW, SID_ATTR_BORDER_SHADOW,
@@ -138,9 +142,8 @@ SvxFooterPage::SvxFooterPage( Window* pParent, const SfxItemSet& rAttr ) :
// -----------------------------------------------------------------------
-SvxHFPage::SvxHFPage( Window* pParent, sal_uInt16 nResId, const SfxItemSet& rAttr, sal_uInt16 nSetId ) :
-
- SfxTabPage( pParent, SVX_RES( nResId ), rAttr ),
+SvxHFPage::SvxHFPage( Window* pParent, sal_uInt16 nResId, const SfxItemSet& rAttr, sal_uInt16 nSetId )
+: SfxTabPage( pParent, SVX_RES( nResId ), rAttr ),
aFrm ( this, SVX_RES( FL_FRAME ) ),
aTurnOnBox ( this, SVX_RES( CB_TURNON ) ),
@@ -158,11 +161,13 @@ SvxHFPage::SvxHFPage( Window* pParent, sal_uInt16 nResId, const SfxItemSet& rAtt
aBspWin ( this, SVX_RES( WN_BSP ) ),
aBackgroundBtn ( this, SVX_RES( BTN_EXTRAS ) ),
- nId ( nSetId ),
- pBBSet ( NULL ),
- bDisableQueryBox ( sal_False ),
- bEnableBackgroundSelector ( sal_True )
+ nId ( nSetId ),
+ pBBSet ( NULL ),
+ // bitfield
+ mbDisableQueryBox(false),
+ mbEnableBackgroundSelector(true),
+ mbEnableDrawingLayerFillStyles(false)
{
InitHandler();
aBspWin.EnableRTL( sal_False );
@@ -205,34 +210,49 @@ SvxHFPage::~SvxHFPage()
sal_Bool SvxHFPage::FillItemSet( SfxItemSet& rSet )
{
- const sal_uInt16 nWSize = GetWhich( SID_ATTR_PAGE_SIZE );
- const sal_uInt16 nWLRSpace = GetWhich( SID_ATTR_LRSPACE );
- const sal_uInt16 nWULSpace = GetWhich( SID_ATTR_ULSPACE );
- const sal_uInt16 nWOn = GetWhich( SID_ATTR_PAGE_ON );
- const sal_uInt16 nWDynamic = GetWhich( SID_ATTR_PAGE_DYNAMIC );
- const sal_uInt16 nWDynSpacing = GetWhich( SID_ATTR_HDFT_DYNAMIC_SPACING );
- const sal_uInt16 nWShared = GetWhich( SID_ATTR_PAGE_SHARED );
- const sal_uInt16 nWBrush = GetWhich( SID_ATTR_BRUSH );
- const sal_uInt16 nWBox = GetWhich( SID_ATTR_BORDER_OUTER );
- const sal_uInt16 nWBoxInfo = GetWhich( SID_ATTR_BORDER_INNER );
- const sal_uInt16 nWShadow = GetWhich( SID_ATTR_BORDER_SHADOW );
- const sal_uInt16 aWhichTab[] = { nWSize, nWSize,
- nWLRSpace, nWLRSpace,
- nWULSpace, nWULSpace,
- nWOn, nWOn,
- nWDynamic, nWDynamic,
- nWShared, nWShared,
- nWBrush, nWBrush,
- nWBoxInfo, nWBoxInfo,
- nWBox, nWBox,
- nWShadow, nWShadow,
- nWDynSpacing, nWDynSpacing,
- 0 };
- const SfxItemSet& rOldSet = GetItemSet();
- SfxItemPool* pPool = rOldSet.GetPool();
- DBG_ASSERT( pPool, "no pool :-(" );
- SfxMapUnit eUnit = pPool->GetMetric( nWSize );
- SfxItemSet aSet ( *pPool, aWhichTab );
+ const sal_uInt16 nWSize = GetWhich(SID_ATTR_PAGE_SIZE);
+ const sal_uInt16 nWLRSpace = GetWhich(SID_ATTR_LRSPACE);
+ const sal_uInt16 nWULSpace = GetWhich(SID_ATTR_ULSPACE);
+ const sal_uInt16 nWOn = GetWhich(SID_ATTR_PAGE_ON);
+ const sal_uInt16 nWDynamic = GetWhich(SID_ATTR_PAGE_DYNAMIC);
+ const sal_uInt16 nWDynSpacing = GetWhich(SID_ATTR_HDFT_DYNAMIC_SPACING);
+ const sal_uInt16 nWShared = GetWhich(SID_ATTR_PAGE_SHARED);
+ const sal_uInt16 nWBrush = GetWhich(SID_ATTR_BRUSH);
+ const sal_uInt16 nWBox = GetWhich(SID_ATTR_BORDER_OUTER);
+ const sal_uInt16 nWBoxInfo = GetWhich(SID_ATTR_BORDER_INNER);
+ const sal_uInt16 nWShadow = GetWhich(SID_ATTR_BORDER_SHADOW);
+
+ const sal_uInt16 aWhichTab[] = {
+ nWSize, nWSize,
+ nWLRSpace, nWLRSpace,
+ nWULSpace, nWULSpace,
+ nWOn, nWOn,
+ nWDynamic, nWDynamic,
+ nWShared, nWShared,
+ nWBrush, nWBrush,
+ nWBoxInfo, nWBoxInfo,
+ nWBox, nWBox,
+ nWShadow, nWShadow,
+ nWDynSpacing, nWDynSpacing,
+
+ //UUUU take over DrawingLayer FillStyles
+ XATTR_FILL_FIRST, XATTR_FILL_LAST, // [1014
+
+ 0, 0};
+
+ const SfxItemSet& rOldSet = GetItemSet();
+ SfxItemPool* pPool = rOldSet.GetPool();
+ DBG_ASSERT(pPool,"no pool :-(");
+ SfxMapUnit eUnit = pPool->GetMetric(nWSize);
+ SfxItemSet aSet(*pPool,aWhichTab);
+
+ if(mbEnableDrawingLayerFillStyles)
+ {
+ //UUUU When using the XATTR_FILLSTYLE DrawingLayer FillStyle definition
+ // extra action has to be done here since the pool default is XFILL_SOLID
+ // instead of XFILL_NONE (to have the default blue fill color at start).
+ aSet.Put(XFillStyleItem(XFILL_NONE));
+ }
//--------------------------------------------------------------------
@@ -274,26 +294,47 @@ sal_Bool SvxHFPage::FillItemSet( SfxItemSet& rSet )
aSet.Put( aUL );
// Hintergrund und Umrandung?
- if ( pBBSet )
- aSet.Put( *pBBSet );
+ if(pBBSet)
+ {
+ aSet.Put(*pBBSet);
+ }
else
{
const SfxItemSet* _pSet;
const SfxPoolItem* pItem;
- if ( SFX_ITEM_SET ==
- GetItemSet().GetItemState( GetWhich( nId ), sal_False, &pItem ) )
+ if(SFX_ITEM_SET == GetItemSet().GetItemState(GetWhich(nId), sal_False, &pItem))
{
- _pSet = &( (SvxSetItem*)pItem )->GetItemSet();
-
- if ( _pSet->GetItemState( nWBrush ) == SFX_ITEM_SET )
- aSet.Put( (const SvxBrushItem&)_pSet->Get( nWBrush ) );
- if ( _pSet->GetItemState( nWBoxInfo ) == SFX_ITEM_SET )
- aSet.Put( (const SvxBoxInfoItem&)_pSet->Get( nWBoxInfo ) );
- if ( _pSet->GetItemState( nWBox ) == SFX_ITEM_SET )
- aSet.Put( (const SvxBoxItem&)_pSet->Get( nWBox ) );
- if ( _pSet->GetItemState( nWShadow ) == SFX_ITEM_SET )
- aSet.Put( (const SvxShadowItem&)_pSet->Get( nWShadow ) );
+ _pSet = &(static_cast< const SvxSetItem* >(pItem)->GetItemSet());
+
+ if(_pSet->GetItemState(nWBrush) == SFX_ITEM_SET)
+ {
+ aSet.Put(_pSet->Get(nWBrush));
+ }
+
+ if(_pSet->GetItemState(nWBoxInfo) == SFX_ITEM_SET)
+ {
+ aSet.Put(_pSet->Get(nWBoxInfo));
+ }
+
+ if(_pSet->GetItemState(nWBox) == SFX_ITEM_SET)
+ {
+ aSet.Put(_pSet->Get(nWBox));
+ }
+
+ if(_pSet->GetItemState(nWShadow) == SFX_ITEM_SET)
+ {
+ aSet.Put(_pSet->Get(nWShadow));
+ }
+
+ //UUUU take care of [XATTR_XATTR_FILL_FIRST .. XATTR_FILL_LAST]
+ for(sal_uInt16 nFillStyleId(XATTR_FILL_FIRST); nFillStyleId <= XATTR_FILL_LAST; nFillStyleId++)
+ {
+ if(_pSet->GetItemState(nFillStyleId) == SFX_ITEM_SET)
+ {
+ aSet.Put(_pSet->Get(nFillStyleId));
+ }
+ }
}
}
@@ -466,7 +507,7 @@ IMPL_LINK( SvxHFPage, TurnOnHdl, CheckBox *, pBox )
{
sal_Bool bDelete = sal_True;
- if ( !bDisableQueryBox && pBox && aTurnOnBox.GetSavedValue() == sal_True )
+ if ( !mbDisableQueryBox && pBox && aTurnOnBox.GetSavedValue() == sal_True )
bDelete = ( QueryBox( this, SVX_RES( RID_SVXQBX_DELETE_HEADFOOT ) ).Execute() == RET_YES );
if ( bDelete )
@@ -529,80 +570,169 @@ IMPL_LINK_INLINE_END( SvxHFPage, BorderModify, MetricField *, EMPTYARG )
IMPL_LINK( SvxHFPage, BackgroundHdl, Button *, EMPTYARG )
{
- if ( !pBBSet )
+ if(!pBBSet)
{
// nur die n"otigen Items f"uer Umrandung und Hintergrund benutzen
- sal_uInt16 nBrush = GetWhich( SID_ATTR_BRUSH );
- sal_uInt16 nOuter = GetWhich( SID_ATTR_BORDER_OUTER );
- sal_uInt16 nInner = GetWhich( SID_ATTR_BORDER_INNER, sal_False );
- sal_uInt16 nShadow = GetWhich( SID_ATTR_BORDER_SHADOW );
-
- // einen leeren Set erzeugenc
- pBBSet = new SfxItemSet( *GetItemSet().GetPool(), nBrush, nBrush,
- nOuter, nOuter, nInner, nInner,
- nShadow, nShadow, 0 );
+ const sal_uInt16 nOuter(GetWhich(SID_ATTR_BORDER_OUTER));
+ const sal_uInt16 nInner(GetWhich(SID_ATTR_BORDER_INNER, sal_False));
+ const sal_uInt16 nShadow(GetWhich(SID_ATTR_BORDER_SHADOW));
+
+ if(mbEnableDrawingLayerFillStyles)
+ {
+ pBBSet = new SfxItemSet(
+ *GetItemSet().GetPool(),
+ XATTR_FILL_FIRST, XATTR_FILL_LAST, // DrawingLayer FillStyle definitions
+ SID_COLOR_TABLE, SID_BITMAP_LIST, // XPropertyLists for Color, Gradient, Hatch and Graphic fills
+ nOuter, nOuter,
+ nInner, nInner,
+ nShadow, nShadow,
+ 0, 0);
+
+ //UUUU copy items for XPropertyList entries from the DrawModel so that
+ // the Area TabPage can access them
+ static const sal_uInt16 nCopyFlags[] = {
+ SID_COLOR_TABLE,
+ SID_GRADIENT_LIST,
+ SID_HATCH_LIST,
+ SID_BITMAP_LIST,
+ 0
+ };
+
+ for(sal_uInt16 a(0); nCopyFlags[a]; a++)
+ {
+ const SfxPoolItem* pItem = GetItemSet().GetItem(nCopyFlags[a]);
+
+ if(pItem)
+ {
+ pBBSet->Put(*pItem);
+ }
+ else
+ {
+ OSL_ENSURE(false, "XPropertyList missing (!)");
+ }
+ }
+ }
+ else
+ {
+ const sal_uInt16 nBrush(GetWhich(SID_ATTR_BRUSH));
+
+ pBBSet = new SfxItemSet(
+ *GetItemSet().GetPool(),
+ nBrush, nBrush,
+ nOuter, nOuter,
+ nInner, nInner,
+ nShadow, nShadow,
+ 0, 0);
+ }
+
const SfxPoolItem* pItem;
- if ( SFX_ITEM_SET ==
- GetItemSet().GetItemState( GetWhich( nId ), sal_False, &pItem ) )
- // wenn es schon einen gesetzen Set gibt, dann diesen benutzen
- pBBSet->Put( ( (SvxSetItem*)pItem)->GetItemSet() );
+ if(SFX_ITEM_SET == GetItemSet().GetItemState(GetWhich(nId), sal_False, &pItem))
+ {
+ // If a SfxItemSet from the SetItem for SID_ATTR_PAGE_HEADERSET or
+ // SID_ATTR_PAGE_FOOTERSET exists, use it's content
+ pBBSet->Put(((SvxSetItem*)pItem)->GetItemSet());
+ }
+ else
+ {
+ if(mbEnableDrawingLayerFillStyles)
+ {
+ //UUUU The style for header/footer is not yet created, need to reset
+ // XFillStyleItem to XFILL_NONE which is the same as in the style
+ // initialization. This needs to be done since the pool default for
+ // XFillStyleItem is XFILL_SOLID
+ pBBSet->Put(XFillStyleItem(XFILL_NONE));
+ }
+ }
- if ( SFX_ITEM_SET ==
- GetItemSet().GetItemState( nInner, sal_False, &pItem ) )
+ if(SFX_ITEM_SET == GetItemSet().GetItemState(nInner, sal_False, &pItem))
+ {
// das gesetze InfoItem wird immer ben"otigt
- pBBSet->Put( *pItem );
+ pBBSet->Put(*pItem);
+ }
}
- //CHINA001 SvxBorderBackgroundDlg* pDlg =
-//CHINA001 new SvxBorderBackgroundDlg( this, *pBBSet, bEnableBackgroundSelector );
SvxAbstractDialogFactory* pFact = SvxAbstractDialogFactory::Create();
+
if(pFact)
{
- SfxAbstractTabDialog* pDlg = pFact->CreateSvxBorderBackgroundDlg( this, *pBBSet, bEnableBackgroundSelector );
- DBG_ASSERT(pDlg, "Dialogdiet fail!");//CHINA001
- if ( pDlg->Execute() == RET_OK && pDlg->GetOutputItemSet() )
+ //UUUU
+ SfxAbstractTabDialog* pDlg = pFact->CreateSvxBorderBackgroundDlg(
+ this,
+ *pBBSet,
+ mbEnableBackgroundSelector,
+ mbEnableDrawingLayerFillStyles);
+
+ DBG_ASSERT(pDlg,"Dialogdiet fail!");//CHINA001
+ if(RET_OK == pDlg->Execute() && pDlg->GetOutputItemSet())
{
- SfxItemIter aIter( *pDlg->GetOutputItemSet() );
+ SfxItemIter aIter(*pDlg->GetOutputItemSet());
const SfxPoolItem* pItem = aIter.FirstItem();
- while ( pItem )
+ while(pItem)
{
- if ( !IsInvalidItem( pItem ) )
- pBBSet->Put( *pItem );
+ if(!IsInvalidItem(pItem))
+ {
+ pBBSet->Put(*pItem);
+ }
+
pItem = aIter.NextItem();
}
//----------------------------------------------------------------
-
- sal_uInt16 nWhich = GetWhich( SID_ATTR_BRUSH );
-
- if ( pBBSet->GetItemState( nWhich ) == SFX_ITEM_SET )
{
- const SvxBrushItem& rItem = (const SvxBrushItem&)pBBSet->Get( nWhich );
- if ( nId == SID_ATTR_PAGE_HEADERSET )
- aBspWin.SetHdColor( rItem.GetColor() );
+ drawinglayer::attribute::SdrAllFillAttributesHelperPtr aFillAttributes;
+
+ if(mbEnableDrawingLayerFillStyles)
+ {
+ //UUUU create FillAttributes directly from DrawingLayer FillStyle entries
+ aFillAttributes.reset(new drawinglayer::attribute::SdrAllFillAttributesHelper(*pBBSet));
+ }
else
- aBspWin.SetFtColor( rItem.GetColor() );
+ {
+ const sal_uInt16 nWhich = GetWhich(SID_ATTR_BRUSH);
+
+ if(pBBSet->GetItemState(nWhich) == SFX_ITEM_SET)
+ {
+ //UUUU create FillAttributes from SvxBrushItem
+ const SvxBrushItem& rItem = static_cast< const SvxBrushItem& >(pBBSet->Get(nWhich));
+ SfxItemSet aTempSet(*pBBSet->GetPool(), XATTR_FILL_FIRST, XATTR_FILL_LAST);
+
+ setSvxBrushItemAsFillAttributesToTargetSet(rItem, aTempSet);
+ aFillAttributes.reset(new drawinglayer::attribute::SdrAllFillAttributesHelper(aTempSet));
+ }
+ }
+
+ if(SID_ATTR_PAGE_HEADERSET == nId)
+ {
+ //aBspWin.SetHdColor(rItem.GetColor());
+ aBspWin.setHeaderFillAttributes(aFillAttributes);
+ }
+ else
+ {
+ //aBspWin.SetFtColor(rItem.GetColor());
+ aBspWin.setFooterFillAttributes(aFillAttributes);
+ }
}
//----------------------------------------------------------------
-
- nWhich = GetWhich( SID_ATTR_BORDER_OUTER );
-
- if ( pBBSet->GetItemState( nWhich ) == SFX_ITEM_SET )
{
- const SvxBoxItem& rItem = (const SvxBoxItem&)pBBSet->Get( nWhich );
+ const sal_uInt16 nWhich = GetWhich(SID_ATTR_BORDER_OUTER);
- if ( nId == SID_ATTR_PAGE_HEADERSET )
- aBspWin.SetHdBorder( rItem );
- else
- aBspWin.SetFtBorder( rItem );
+ if(pBBSet->GetItemState(nWhich) == SFX_ITEM_SET)
+ {
+ const SvxBoxItem& rItem = (const SvxBoxItem&)pBBSet->Get(nWhich);
+
+ if(nId == SID_ATTR_PAGE_HEADERSET)
+ aBspWin.SetHdBorder(rItem);
+ else
+ aBspWin.SetFtBorder(rItem);
+ }
}
UpdateExample();
}
- delete pDlg;
+ delete pDlg;
}
return 0;
}
@@ -638,87 +768,122 @@ void SvxHFPage::UpdateExample()
void SvxHFPage::ResetBackground_Impl( const SfxItemSet& rSet )
{
- sal_uInt16 nWhich = GetWhich( SID_ATTR_PAGE_HEADERSET );
+ sal_uInt16 nWhich(GetWhich(SID_ATTR_PAGE_HEADERSET));
- if ( rSet.GetItemState( nWhich, sal_False ) == SFX_ITEM_SET )
+ if(SFX_ITEM_SET == rSet.GetItemState(nWhich, sal_False))
{
- const SvxSetItem& rSetItem =
- (const SvxSetItem&)rSet.Get( nWhich, sal_False );
+ const SvxSetItem& rSetItem = static_cast< const SvxSetItem& >(rSet.Get(nWhich, sal_False));
const SfxItemSet& rTmpSet = rSetItem.GetItemSet();
- const SfxBoolItem& rOn =
- (const SfxBoolItem&)rTmpSet.Get( GetWhich( SID_ATTR_PAGE_ON ) );
+ const SfxBoolItem& rOn = static_cast< const SfxBoolItem& >(rTmpSet.Get(GetWhich(SID_ATTR_PAGE_ON)));
- if ( rOn.GetValue() )
+ if(rOn.GetValue())
{
- nWhich = GetWhich( SID_ATTR_BRUSH );
+ drawinglayer::attribute::SdrAllFillAttributesHelperPtr aHeaderFillAttributes;
- if ( rTmpSet.GetItemState( nWhich ) == SFX_ITEM_SET )
+ if(mbEnableDrawingLayerFillStyles)
{
- const SvxBrushItem& rItem = (const SvxBrushItem&)rTmpSet.Get( nWhich );
- aBspWin.SetHdColor( rItem.GetColor() );
+ //UUUU create FillAttributes directly from DrawingLayer FillStyle entries
+ aHeaderFillAttributes.reset(new drawinglayer::attribute::SdrAllFillAttributesHelper(rTmpSet));
}
- nWhich = GetWhich( SID_ATTR_BORDER_OUTER );
+ else
+ {
+ nWhich = GetWhich(SID_ATTR_BRUSH);
+
+ if(SFX_ITEM_SET == rTmpSet.GetItemState(nWhich))
+ {
+ //UUUU create FillAttributes from SvxBrushItem
+ const SvxBrushItem& rItem = static_cast< const SvxBrushItem& >(rTmpSet.Get(nWhich));
+ SfxItemSet aTempSet(*rTmpSet.GetPool(), XATTR_FILL_FIRST, XATTR_FILL_LAST);
+
+ setSvxBrushItemAsFillAttributesToTargetSet(rItem, aTempSet);
+ aHeaderFillAttributes.reset(new drawinglayer::attribute::SdrAllFillAttributesHelper(aTempSet));
+ }
+ }
+
+ aBspWin.setHeaderFillAttributes(aHeaderFillAttributes);
+ nWhich = GetWhich(SID_ATTR_BORDER_OUTER);
- if ( rTmpSet.GetItemState( nWhich ) == SFX_ITEM_SET )
+ if(rTmpSet.GetItemState(nWhich) == SFX_ITEM_SET)
{
const SvxBoxItem& rItem =
- (const SvxBoxItem&)rTmpSet.Get( nWhich );
- aBspWin.SetHdBorder( rItem );
+ (const SvxBoxItem&)rTmpSet.Get(nWhich);
+ aBspWin.SetHdBorder(rItem);
}
}
}
- nWhich = GetWhich( SID_ATTR_PAGE_FOOTERSET );
+ nWhich = GetWhich(SID_ATTR_PAGE_FOOTERSET);
- if ( rSet.GetItemState( nWhich, sal_False ) == SFX_ITEM_SET )
+ if(SFX_ITEM_SET == rSet.GetItemState(nWhich, sal_False))
{
- const SvxSetItem& rSetItem =
- (const SvxSetItem&)rSet.Get( nWhich, sal_False );
+ const SvxSetItem& rSetItem = static_cast< const SvxSetItem& >(rSet.Get(nWhich, sal_False));
const SfxItemSet& rTmpSet = rSetItem.GetItemSet();
- const SfxBoolItem& rOn =
- (const SfxBoolItem&)rTmpSet.Get( GetWhich( SID_ATTR_PAGE_ON ) );
+ const SfxBoolItem& rOn = static_cast< const SfxBoolItem& >(rTmpSet.Get(GetWhich(SID_ATTR_PAGE_ON)));
- if ( rOn.GetValue() )
+ if(rOn.GetValue())
{
- nWhich = GetWhich( SID_ATTR_BRUSH );
+ drawinglayer::attribute::SdrAllFillAttributesHelperPtr aFooterFillAttributes;
- if ( rTmpSet.GetItemState( nWhich ) == SFX_ITEM_SET )
+ if(mbEnableDrawingLayerFillStyles)
{
- const SvxBrushItem& rItem = (const SvxBrushItem&)rTmpSet.Get( nWhich );
- aBspWin.SetFtColor( rItem.GetColor() );
+ //UUUU create FillAttributes directly from DrawingLayer FillStyle entries
+ aFooterFillAttributes.reset(new drawinglayer::attribute::SdrAllFillAttributesHelper(rTmpSet));
}
- nWhich = GetWhich( SID_ATTR_BORDER_OUTER );
+ else
+ {
+ nWhich = GetWhich(SID_ATTR_BRUSH);
+
+ if(SFX_ITEM_SET == rTmpSet.GetItemState(nWhich))
+ {
+ //UUUU create FillAttributes from SvxBrushItem
+ const SvxBrushItem& rItem = static_cast< const SvxBrushItem& >(rTmpSet.Get(nWhich));
+ SfxItemSet aTempSet(*rTmpSet.GetPool(), XATTR_FILL_FIRST, XATTR_FILL_LAST);
+
+ setSvxBrushItemAsFillAttributesToTargetSet(rItem, aTempSet);
+ aFooterFillAttributes.reset(new drawinglayer::attribute::SdrAllFillAttributesHelper(aTempSet));
+ }
+ }
+
+ aBspWin.setFooterFillAttributes(aFooterFillAttributes);
+ nWhich = GetWhich(SID_ATTR_BORDER_OUTER);
- if ( rTmpSet.GetItemState( nWhich ) == SFX_ITEM_SET )
+ if(rTmpSet.GetItemState(nWhich) == SFX_ITEM_SET)
{
- const SvxBoxItem& rItem =
- (const SvxBoxItem&)rTmpSet.Get( nWhich );
- aBspWin.SetFtBorder( rItem );
+ const SvxBoxItem& rItem = static_cast< const SvxBoxItem& >(rTmpSet.Get(nWhich));
+ aBspWin.SetFtBorder(rItem);
}
}
}
- nWhich = GetWhich( SID_ATTR_BRUSH );
- if ( rSet.GetItemState( nWhich ) >= SFX_ITEM_AVAILABLE )
+ drawinglayer::attribute::SdrAllFillAttributesHelperPtr aPageFillAttributes;
+
+ if(mbEnableDrawingLayerFillStyles)
+ {
+ //UUUU create FillAttributes directly from DrawingLayer FillStyle entries
+ aPageFillAttributes.reset(new drawinglayer::attribute::SdrAllFillAttributesHelper(rSet));
+ }
+ else
{
- const SvxBrushItem& rItem = (const SvxBrushItem&)rSet.Get( nWhich );
- aBspWin.SetColor( rItem.GetColor() );
- const Graphic* pGrf = rItem.GetGraphic();
+ nWhich = GetWhich(SID_ATTR_BRUSH);
- if ( pGrf )
+ if(rSet.GetItemState(nWhich) >= SFX_ITEM_AVAILABLE)
{
- Bitmap aBitmap = pGrf->GetBitmap();
- aBspWin.SetBitmap( &aBitmap );
+ //UUUU create FillAttributes from SvxBrushItem
+ const SvxBrushItem& rItem = static_cast< const SvxBrushItem& >(rSet.Get(nWhich));
+ SfxItemSet aTempSet(*rSet.GetPool(), XATTR_FILL_FIRST, XATTR_FILL_LAST);
+
+ setSvxBrushItemAsFillAttributesToTargetSet(rItem, aTempSet);
+ aPageFillAttributes.reset(new drawinglayer::attribute::SdrAllFillAttributesHelper(aTempSet));
}
- else
- aBspWin.SetBitmap( NULL );
}
- nWhich = GetWhich( SID_ATTR_BORDER_OUTER );
- if ( rSet.GetItemState( nWhich ) >= SFX_ITEM_AVAILABLE )
+ aBspWin.setPageFillAttributes(aPageFillAttributes);
+ nWhich = GetWhich(SID_ATTR_BORDER_OUTER);
+
+ if(rSet.GetItemState(nWhich) >= SFX_ITEM_AVAILABLE)
{
- const SvxBoxItem& rItem = (const SvxBoxItem&)rSet.Get( nWhich );
- aBspWin.SetBorder( rItem );
+ const SvxBoxItem& rItem = static_cast< const SvxBoxItem& >(rSet.Get(nWhich));
+ aBspWin.SetBorder(rItem);
}
}
@@ -973,6 +1138,7 @@ void lcl_Move(Window& rWin, sal_Int32 nDiff)
aPos.Y() -= nDiff;
rWin.SetPosPixel(aPos);
}
+
void SvxHFPage::EnableDynamicSpacing()
{
aDynSpacingCB.Show();
@@ -991,3 +1157,17 @@ void SvxHFPage::EnableDynamicSpacing()
lcl_Move(*aMoveWindows[nIdx++], nOffset);
}
+void SvxHFPage::PageCreated(SfxAllItemSet aSet)
+{
+ //UUUU
+ SFX_ITEMSET_ARG (&aSet, pSupportDrawingLayerFillStyleItem, SfxBoolItem, SID_DRAWINGLAYER_FILLSTYLES);
+
+ if(pSupportDrawingLayerFillStyleItem)
+ {
+ const bool bNew(pSupportDrawingLayerFillStyleItem->GetValue());
+
+ EnableDrawingLayerFillStyles(bNew);
+ }
+}
+
+//eof
diff --git a/svx/source/dialog/pagectrl.cxx b/svx/source/dialog/pagectrl.cxx
index 9a6be7a907a9..745d05c5412a 100644
--- a/svx/source/dialog/pagectrl.cxx
+++ b/svx/source/dialog/pagectrl.cxx
@@ -19,45 +19,20 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_svx.hxx"
-// include ---------------------------------------------------------------
-
-
#include <vcl/bitmap.hxx>
#include <editeng/frmdiritem.hxx>
#include <svx/pageitem.hxx>
#include <svx/pagectrl.hxx>
#include <editeng/boxitem.hxx>
-
#include <algorithm>
-
-// struct PageWindow_Impl ------------------------------------------------
-
-struct PageWindow_Impl
-{
- SvxBoxItem* pBorder;
- Bitmap aBitmap;
- bool bBitmap;
- sal_Bool bResetBackground;
- sal_Bool bFrameDirection;
- sal_Int32 nFrameDirection;
-
-
- PageWindow_Impl() :
- pBorder(0),
- bBitmap(sal_False),
- bResetBackground(sal_False),
- bFrameDirection(sal_False),
- nFrameDirection(0) {}
-
- void EnableFrameDirection(sal_Bool bEnable){bFrameDirection = bEnable;}
- void SetFrameDirection(sal_Int32 nDirection){nFrameDirection = nDirection;}
-
-};
+#include <basegfx/matrix/b2dhommatrix.hxx>
+#include <drawinglayer/geometry/viewinformation2d.hxx>
+#include <drawinglayer/processor2d/processor2dtools.hxx>
+#include <drawinglayer/primitive2d/polygonprimitive2d.hxx>
+#include <basegfx/polygon/b2dpolygontools.hxx>
// STATIC DATA -----------------------------------------------------------
@@ -66,44 +41,57 @@ struct PageWindow_Impl
// class SvxPageWindow ---------------------------------------------------
-SvxPageWindow::SvxPageWindow( Window* pParent, const ResId& rId ) :
-
- Window( pParent, rId ),
-
- nTop ( 0 ),
- nBottom ( 0 ),
- nLeft ( 0 ),
- nRight ( 0 ),
- aColor ( COL_TRANSPARENT ),
- nHdLeft ( 0 ),
- nHdRight ( 0 ),
- nHdDist ( 0 ),
- nHdHeight ( 0 ),
- aHdColor ( COL_TRANSPARENT ),
- pHdBorder ( 0 ),
- nFtLeft ( 0 ),
- nFtRight ( 0 ),
- nFtDist ( 0 ),
- nFtHeight ( 0 ),
- aFtColor ( COL_TRANSPARENT ),
- pFtBorder ( 0 ),
- bFooter ( sal_False ),
- bHeader ( sal_False ),
- bTable ( sal_False ),
- bHorz ( sal_False ),
- bVert ( sal_False ),
- eUsage ( SVX_PAGE_ALL )
+SvxPageWindow::SvxPageWindow(Window* pParent,const ResId& rId)
+: Window(pParent,rId),
+ aWinSize(),
+ aSize(),
+
+ nTop(0),
+ nBottom(0),
+ nLeft(0),
+ nRight(0),
+
+ //UUUU
+ pBorder(0),
+ bResetBackground(sal_False),
+ bFrameDirection(sal_False),
+ nFrameDirection(0),
+
+ nHdLeft(0),
+ nHdRight(0),
+ nHdDist(0),
+ nHdHeight(0),
+
+ pHdBorder(0),
+ nFtLeft(0),
+ nFtRight(0),
+ nFtDist(0),
+ nFtHeight(0),
+
+ pFtBorder(0),
+
+ maHeaderFillAttributes(),
+ maFooterFillAttributes(),
+ maPageFillAttributes(),
+
+ bFooter(sal_False),
+ bHeader(sal_False),
+ bTable(sal_False),
+ bHorz(sal_False),
+ bVert(sal_False),
+ eUsage(SVX_PAGE_ALL),
+
+ aLeftText(),
+ aRightText()
{
- pImpl = new PageWindow_Impl;
-
// defaultmaessing in Twips rechnen
- SetMapMode( MapMode( MAP_TWIP ) );
+ SetMapMode(MapMode(MAP_TWIP));
aWinSize = GetOutputSizePixel();
aWinSize.Height() -= 4;
aWinSize.Width() -= 4;
- aWinSize = PixelToLogic( aWinSize );
+ aWinSize = PixelToLogic(aWinSize);
SetBackground();
}
@@ -111,67 +99,66 @@ SvxPageWindow::SvxPageWindow( Window* pParent, const ResId& rId ) :
SvxPageWindow::~SvxPageWindow()
{
- delete pImpl;
delete pHdBorder;
delete pFtBorder;
}
// -----------------------------------------------------------------------
-void __EXPORT SvxPageWindow::Paint( const Rectangle& )
+void __EXPORT SvxPageWindow::Paint(const Rectangle&)
{
- Fraction aXScale( aWinSize.Width(), std::max( (long) (aSize.Width() * 2 + aSize.Width() / 8), 1L ) );
- Fraction aYScale( aWinSize.Height(), std::max( aSize.Height(), 1L ) );
- MapMode aMapMode( GetMapMode() );
+ Fraction aXScale(aWinSize.Width(),std::max((long)(aSize.Width() * 2 + aSize.Width() / 8),1L));
+ Fraction aYScale(aWinSize.Height(),std::max(aSize.Height(),1L));
+ MapMode aMapMode(GetMapMode());
- if ( aYScale < aXScale )
+ if(aYScale < aXScale)
{
- aMapMode.SetScaleX( aYScale );
- aMapMode.SetScaleY( aYScale );
+ aMapMode.SetScaleX(aYScale);
+ aMapMode.SetScaleY(aYScale);
}
else
{
- aMapMode.SetScaleX( aXScale );
- aMapMode.SetScaleY( aXScale );
+ aMapMode.SetScaleX(aXScale);
+ aMapMode.SetScaleY(aXScale);
}
- SetMapMode( aMapMode );
- Size aSz( PixelToLogic( GetSizePixel() ) );
- long nYPos = ( aSz.Height() - aSize.Height() ) / 2;
+ SetMapMode(aMapMode);
+ Size aSz(PixelToLogic(GetSizePixel()));
+ long nYPos = (aSz.Height() - aSize.Height()) / 2;
- if ( eUsage == SVX_PAGE_ALL )
+ if(eUsage == SVX_PAGE_ALL)
{
// alle Seiten gleich -> eine Seite malen
- if ( aSize.Width() > aSize.Height() )
+ if(aSize.Width() > aSize.Height())
{
// Querformat in gleicher Gr"osse zeichnen
Fraction aX = aMapMode.GetScaleX();
Fraction aY = aMapMode.GetScaleY();
- Fraction a2( 1.5 );
+ Fraction a2(1.5);
aX *= a2;
aY *= a2;
- aMapMode.SetScaleX( aX );
- aMapMode.SetScaleY( aY );
- SetMapMode( aMapMode );
- aSz = PixelToLogic( GetSizePixel() );
- nYPos = ( aSz.Height() - aSize.Height() ) / 2;
- long nXPos = ( aSz.Width() - aSize.Width() ) / 2;
- DrawPage( Point( nXPos, nYPos ), sal_True, sal_True );
+ aMapMode.SetScaleX(aX);
+ aMapMode.SetScaleY(aY);
+ SetMapMode(aMapMode);
+ aSz = PixelToLogic(GetSizePixel());
+ nYPos = (aSz.Height() - aSize.Height()) / 2;
+ long nXPos = (aSz.Width() - aSize.Width()) / 2;
+ DrawPage(Point(nXPos,nYPos),sal_True,sal_True);
}
else
// Hochformat
- DrawPage( Point( ( aSz.Width() - aSize.Width() ) / 2, nYPos ), sal_True, sal_True );
+ DrawPage(Point((aSz.Width() - aSize.Width()) / 2,nYPos),sal_True,sal_True);
}
else
{
// Linke und rechte Seite unterschiedlich -> ggf. zwei Seiten malen
- DrawPage( Point( 0, nYPos ), sal_False, (sal_Bool)( eUsage & SVX_PAGE_LEFT ) );
- DrawPage( Point( aSize.Width() + aSize.Width() / 8, nYPos ), sal_True,
- (sal_Bool)( eUsage & SVX_PAGE_RIGHT ) );
+ DrawPage(Point(0,nYPos),sal_False,(sal_Bool)(eUsage & SVX_PAGE_LEFT));
+ DrawPage(Point(aSize.Width() + aSize.Width() / 8,nYPos),sal_True,
+ (sal_Bool)(eUsage & SVX_PAGE_RIGHT));
}
}
// -----------------------------------------------------------------------
-void SvxPageWindow::DrawPage( const Point& rOrg, const sal_Bool bSecond, const sal_Bool bEnabled )
+void SvxPageWindow::DrawPage(const Point& rOrg,const sal_Bool bSecond,const sal_Bool bEnabled)
{
const StyleSettings& rStyleSettings = GetSettings().GetStyleSettings();
const Color& rFieldColor = rStyleSettings.GetFieldColor();
@@ -180,37 +167,37 @@ void SvxPageWindow::DrawPage( const Point& rOrg, const sal_Bool bSecond, const s
const Color& rDlgColor = rStyleSettings.GetDialogColor();
// background
- if(!bSecond || pImpl->bResetBackground)
+ if(!bSecond || bResetBackground)
{
- SetLineColor( Color(COL_TRANSPARENT) );
- SetFillColor( rDlgColor );
+ SetLineColor(Color(COL_TRANSPARENT));
+ SetFillColor(rDlgColor);
Size winSize(GetOutputSize());
- DrawRect( Rectangle( Point(0,0), winSize ) );
+ DrawRect(Rectangle(Point(0,0),winSize));
- if ( pImpl->bResetBackground )
- pImpl->bResetBackground = sal_False;
+ if(bResetBackground)
+ bResetBackground = sal_False;
}
- SetLineColor( rFieldTextColor );
+ SetLineColor(rFieldTextColor);
// Schatten
Size aTempSize = aSize;
// Seite
- if ( !bEnabled )
+ if(!bEnabled)
{
- SetFillColor( rDisableColor );
- DrawRect( Rectangle( rOrg, aTempSize ) );
+ SetFillColor(rDisableColor);
+ DrawRect(Rectangle(rOrg,aTempSize));
return;
}
- SetFillColor( rFieldColor );
- DrawRect( Rectangle( rOrg, aTempSize ) );
+ SetFillColor(rFieldColor);
+ DrawRect(Rectangle(rOrg,aTempSize));
// Border Top Bottom Left Right
- Point aBegin( rOrg );
- Point aEnd( rOrg );
+ Point aBegin(rOrg);
+ Point aEnd(rOrg);
long nL = nLeft;
long nR = nRight;
- if ( eUsage == SVX_PAGE_MIRROR && !bSecond )
+ if(eUsage == SVX_PAGE_MIRROR && !bSecond)
{
// f"ur gespiegelt drehen
nL = nRight;
@@ -219,91 +206,94 @@ void SvxPageWindow::DrawPage( const Point& rOrg, const sal_Bool bSecond, const s
Rectangle aRect;
- aRect.Left() = rOrg.X() + nL;
+ aRect.Left() = rOrg.X() + nL;
aRect.Right() = rOrg.X() + aTempSize.Width() - nR;
- aRect.Top() = rOrg.Y() + nTop;
- aRect.Bottom()= rOrg.Y() + aTempSize.Height() - nBottom;
+ aRect.Top() = rOrg.Y() + nTop;
+ aRect.Bottom() = rOrg.Y() + aTempSize.Height() - nBottom;
- Rectangle aHdRect( aRect );
- Rectangle aFtRect( aRect );
+ Rectangle aHdRect(aRect);
+ Rectangle aFtRect(aRect);
- if ( bHeader )
+ if(bHeader || bFooter)
{
- // ggf. Header anzeigen
- aHdRect.Left() += nHdLeft;
- aHdRect.Right() -= nHdRight;
- aHdRect.Bottom() = aRect.Top() + nHdHeight;
- aRect.Top() += nHdHeight + nHdDist;
- SetFillColor( aHdColor );
- DrawRect( aHdRect );
- }
+ //UUUU Header and/or footer used
+ const Color aLineColor(GetLineColor());
- if ( bFooter )
- {
- // ggf. Footer anzeigen
- aFtRect.Left() += nFtLeft;
- aFtRect.Right() -= nFtRight;
- aFtRect.Top() = aRect.Bottom() - nFtHeight;
- aRect.Bottom() -= nFtHeight + nFtDist;
- SetFillColor( aFtColor );
- DrawRect( aFtRect );
- }
+ //UUUU draw PageFill first and on the whole page, no outline
+ SetLineColor();
+ drawFillAttributes(maPageFillAttributes, aRect, aRect);
+ SetLineColor(aLineColor);
- // Body malen
- SetFillColor( aColor );
- if ( pImpl->bBitmap )
- {
- DrawRect( aRect );
- Point aBmpPnt = aRect.TopLeft();
- Size aBmpSiz = aRect.GetSize();
- long nDeltaX = aBmpSiz.Width() / 15;
- long nDeltaY = aBmpSiz.Height() / 15;
- aBmpPnt.X() += nDeltaX;
- aBmpPnt.Y() += nDeltaY;
- aBmpSiz.Width() -= nDeltaX * 2;
- aBmpSiz.Height() -= nDeltaY * 2;
- DrawBitmap( aBmpPnt, aBmpSiz, pImpl->aBitmap );
+ if(bHeader)
+ {
+ // ggf. Header anzeigen
+ aHdRect.Left() += nHdLeft;
+ aHdRect.Right() -= nHdRight;
+ aHdRect.Bottom() = aRect.Top() + nHdHeight;
+ aRect.Top() += nHdHeight + nHdDist;
+
+ // draw header over PageFill, plus outline
+ drawFillAttributes(maHeaderFillAttributes, aHdRect, aHdRect);
+ }
+
+ if(bFooter)
+ {
+ // ggf. Footer anzeigen
+ aFtRect.Left() += nFtLeft;
+ aFtRect.Right() -= nFtRight;
+ aFtRect.Top() = aRect.Bottom() - nFtHeight;
+ aRect.Bottom() -= nFtHeight + nFtDist;
+
+ // draw footer over PageFill, plus outline
+ drawFillAttributes(maFooterFillAttributes, aFtRect, aFtRect);
+ }
+
+ // draw page's reduced outline, only outline
+ drawFillAttributes(drawinglayer::attribute::SdrAllFillAttributesHelperPtr(), aRect, aRect);
}
else
- DrawRect( aRect );
+ {
+ //UUUU draw PageFill and outline
+ drawFillAttributes(maPageFillAttributes, aRect, aRect);
+ }
- if(pImpl->bFrameDirection && !bTable)
+ if(bFrameDirection && !bTable)
{
- //pImpl->nFrameDirection
+ //pImpl->nFrameDirection
Point aPos;
Font aFont(GetFont());
const Size aSaveSize = aFont.GetSize();
- Size aDrawSize( 0, aRect.GetHeight() / 6);
+ Size aDrawSize(0,aRect.GetHeight() / 6);
aFont.SetSize(aDrawSize);
SetFont(aFont);
String sText(String::CreateFromAscii("ABC"));
- Point aMove(1, GetTextHeight());
+ Point aMove(1,GetTextHeight());
sal_Unicode cArrow = 0x2193;
long nAWidth = GetTextWidth(String(sText.GetChar(0)));
- switch(pImpl->nFrameDirection)
+ switch(nFrameDirection)
{
- case FRMDIR_HORI_LEFT_TOP:
- aPos = aRect.TopLeft();
- aPos.X() += PixelToLogic(Point(1,1)).X();
- aMove.Y() = 0;
- cArrow = 0x2192;
+ case FRMDIR_HORI_LEFT_TOP:
+ aPos = aRect.TopLeft();
+ aPos.X() += PixelToLogic(Point(1,1)).X();
+ aMove.Y() = 0;
+ cArrow = 0x2192;
break;
- case FRMDIR_HORI_RIGHT_TOP:
- aPos = aRect.TopRight();
- aPos.X() -= nAWidth;
- aMove.Y() = 0;
- aMove.X() *= -1;
- cArrow = 0x2190;
+ case FRMDIR_HORI_RIGHT_TOP:
+ aPos = aRect.TopRight();
+ aPos.X() -= nAWidth;
+ aMove.Y() = 0;
+ aMove.X() *= -1;
+ cArrow = 0x2190;
break;
- case FRMDIR_VERT_TOP_LEFT:
- aPos = aRect.TopLeft();
- aPos.X() += PixelToLogic(Point(1,1)).X();
- aMove.X() = 0;
+ case FRMDIR_VERT_TOP_LEFT:
+ aPos = aRect.TopLeft();
+ aPos.X() += PixelToLogic(Point(1,1)).X();
+ aMove.X() = 0;
break;
- case FRMDIR_VERT_TOP_RIGHT:
- aPos = aRect.TopRight();
- aPos.X() -= nAWidth;
- aMove.X() = 0;
+ case FRMDIR_VERT_TOP_RIGHT:
+ aPos = aRect.TopRight();
+ aPos.X() -= nAWidth;
+ aMove.X() = 0;
break;
}
sText.Append(cArrow);
@@ -315,13 +305,13 @@ void SvxPageWindow::DrawPage( const Point& rOrg, const sal_Bool bSecond, const s
sal_Bool bHorizontal = 0 == aMove.Y();
if(!bHorizontal)
{
- nHDiff = (nAWidth - nCharWidth)/2;
+ nHDiff = (nAWidth - nCharWidth) / 2;
aPos.X() += nHDiff;
}
- DrawText(aPos, sDraw);
+ DrawText(aPos,sDraw);
if(bHorizontal)
{
- aPos.X() += aMove.X() < 0 ? - nCharWidth : nCharWidth;
+ aPos.X() += aMove.X() < 0 ? -nCharWidth : nCharWidth;
}
else
{
@@ -333,85 +323,140 @@ void SvxPageWindow::DrawPage( const Point& rOrg, const sal_Bool bSecond, const s
SetFont(aFont);
}
- if ( bTable )
+ if(bTable)
{
// Tabelle malen, ggf. zentrieren
- SetLineColor( Color(COL_LIGHTGRAY) );
+ SetLineColor(Color(COL_LIGHTGRAY));
- long nW = aRect.GetWidth(), nH = aRect.GetHeight();
- long nTW = CELL_WIDTH * 3, nTH = CELL_HEIGHT * 3;
+ long nW = aRect.GetWidth(),nH = aRect.GetHeight();
+ long nTW = CELL_WIDTH * 3,nTH = CELL_HEIGHT * 3;
long _nLeft = bHorz ? aRect.Left() + ((nW - nTW) / 2) : aRect.Left();
long _nTop = bVert ? aRect.Top() + ((nH - nTH) / 2) : aRect.Top();
- Rectangle aCellRect( Point( _nLeft, _nTop ), Size( CELL_WIDTH, CELL_HEIGHT ) );
+ Rectangle aCellRect(Point(_nLeft,_nTop),Size(CELL_WIDTH,CELL_HEIGHT));
- for ( sal_uInt16 i = 0; i < 3; ++i )
+ for(sal_uInt16 i = 0; i < 3; ++i)
{
aCellRect.Left() = _nLeft;
aCellRect.Right() = _nLeft + CELL_WIDTH;
- if ( i > 0 )
- aCellRect.Move( 0, CELL_HEIGHT );
+ if(i > 0)
+ aCellRect.Move(0,CELL_HEIGHT);
- for ( sal_uInt16 j = 0; j < 3; ++j )
+ for(sal_uInt16 j = 0; j < 3; ++j)
{
- if ( j > 0 )
- aCellRect.Move( CELL_WIDTH, 0 );
- DrawRect( aCellRect );
+ if(j > 0)
+ aCellRect.Move(CELL_WIDTH,0);
+ DrawRect(aCellRect);
}
}
}
}
-// -----------------------------------------------------------------------
-
-void SvxPageWindow::SetBorder( const SvxBoxItem& rNew )
+//UUUU
+void SvxPageWindow::drawFillAttributes(
+ const drawinglayer::attribute::SdrAllFillAttributesHelperPtr& rFillAttributes,
+ const Rectangle& rPaintRange,
+ const Rectangle& rDefineRange)
{
- delete pImpl->pBorder;
- pImpl->pBorder = new SvxBoxItem( rNew );
+ const basegfx::B2DRange aPaintRange(
+ rPaintRange.Left(),
+ rPaintRange.Top(),
+ rPaintRange.Right(),
+ rPaintRange.Bottom());
+
+ if(!aPaintRange.isEmpty() &&
+ !basegfx::fTools::equalZero(aPaintRange.getWidth()) &&
+ !basegfx::fTools::equalZero(aPaintRange.getHeight()))
+ {
+ const basegfx::B2DRange aDefineRange(
+ rDefineRange.Left(),
+ rDefineRange.Top(),
+ rDefineRange.Right(),
+ rDefineRange.Bottom());
+
+ // prepare primitive sequence
+ drawinglayer::primitive2d::Primitive2DSequence aSequence;
+
+ // create fill geometry if there is something to fill
+ if(rFillAttributes.get() && rFillAttributes->isUsed())
+ {
+ aSequence = rFillAttributes->getPrimitive2DSequence(
+ aPaintRange,
+ aDefineRange);
+ }
+
+ // create line geometry if a LineColor is set at the target device
+ if(IsLineColor())
+ {
+ const drawinglayer::primitive2d::Primitive2DReference xOutline(
+ new drawinglayer::primitive2d::PolygonHairlinePrimitive2D(
+ basegfx::tools::createPolygonFromRect(aPaintRange),
+ GetLineColor().getBColor()));
+
+ drawinglayer::primitive2d::appendPrimitive2DReferenceToPrimitive2DSequence(
+ aSequence,
+ xOutline);
+ }
+
+ // draw that if we have something to draw
+ if(aSequence.getLength())
+ {
+ const drawinglayer::geometry::ViewInformation2D aViewInformation2D(
+ basegfx::B2DHomMatrix(),
+ GetViewTransformation(),
+ aPaintRange,
+ 0,
+ 0.0,
+ com::sun::star::uno::Sequence< com::sun::star::beans::PropertyValue >());
+ drawinglayer::processor2d::BaseProcessor2D* pProcessor = drawinglayer::processor2d::createProcessor2DFromOutputDevice(
+ *this,
+ aViewInformation2D);
+
+ if(pProcessor)
+ {
+ pProcessor->process(aSequence);
+
+ delete pProcessor;
+ }
+ }
+ }
}
// -----------------------------------------------------------------------
-void SvxPageWindow::SetBitmap( Bitmap* pBmp )
+void SvxPageWindow::SetBorder(const SvxBoxItem& rNew)
{
- if ( pBmp )
- {
- pImpl->aBitmap = *pBmp;
- pImpl->bBitmap = sal_True;
- }
- else
- pImpl->bBitmap = sal_False;
+ delete pBorder;
+ pBorder = new SvxBoxItem(rNew);
}
// -----------------------------------------------------------------------
-void SvxPageWindow::SetHdBorder( const SvxBoxItem& rNew )
+void SvxPageWindow::SetHdBorder(const SvxBoxItem& rNew)
{
delete pHdBorder;
- pHdBorder = new SvxBoxItem( rNew );
+ pHdBorder = new SvxBoxItem(rNew);
}
// -----------------------------------------------------------------------
-void SvxPageWindow::SetFtBorder( const SvxBoxItem& rNew )
+void SvxPageWindow::SetFtBorder(const SvxBoxItem& rNew)
{
delete pFtBorder;
- pFtBorder = new SvxBoxItem( rNew );
+ pFtBorder = new SvxBoxItem(rNew);
}
-/* -----------------------------13.06.2002 16:16------------------------------
- ---------------------------------------------------------------------------*/
-void SvxPageWindow::EnableFrameDirection(sal_Bool bEnable)
+void SvxPageWindow::EnableFrameDirection(sal_Bool bEnable)
{
- pImpl->EnableFrameDirection(bEnable);
+ bFrameDirection = bEnable;
}
-/* -----------------------------13.06.2002 16:16------------------------------
- ---------------------------------------------------------------------------*/
-void SvxPageWindow::SetFrameDirection(sal_Int32 nFrameDirection)
+void SvxPageWindow::SetFrameDirection(sal_Int32 nDirection)
{
- pImpl->SetFrameDirection(nFrameDirection);
+ nFrameDirection = nDirection;
}
void SvxPageWindow::ResetBackground()
{
- pImpl->bResetBackground = sal_True;
+ bResetBackground = sal_True;
}
+
+//eof
diff --git a/svx/source/dialog/pfiledlg.cxx b/svx/source/dialog/pfiledlg.cxx
index b41a590a7e26..4b6ddd1d386a 100644
--- a/svx/source/dialog/pfiledlg.cxx
+++ b/svx/source/dialog/pfiledlg.cxx
@@ -204,7 +204,7 @@ SvxPluginFileDlg::~SvxPluginFileDlg()
/*************************************************************************
|*
|* Plugins available for the the MIME-Typ in nKind
-|* (whith nKind = SID_INSERT_SOUND for MIME-Type audio
+|* (with nKind = SID_INSERT_SOUND for MIME-Type audio
|* SID_INSERT_VIDEO for MIME-Type video
|*
\************************************************************************/
diff --git a/svx/source/engine3d/helperminimaldepth3d.cxx b/svx/source/engine3d/helperminimaldepth3d.cxx
index fa53e514f3d6..3687ea612db0 100644
--- a/svx/source/engine3d/helperminimaldepth3d.cxx
+++ b/svx/source/engine3d/helperminimaldepth3d.cxx
@@ -194,7 +194,7 @@ double getMinimalDepthInViewCoordinates(const E3dCompoundObject& rObject)
aViewInfo3D.getViewTime(),
aViewInfo3D.getExtendedInformationSequence());
- // create extractor helper, proccess geometry and get return value
+ // create extractor helper, process geometry and get return value
drawinglayer::processor3d::MinimalDephInViewExtractor aExtractor(aNewViewInformation3D);
aExtractor.process(aPrimitives);
fRetval = aExtractor.getMinimalDepth();
diff --git a/svx/source/fmcomp/fmgridcl.cxx b/svx/source/fmcomp/fmgridcl.cxx
index e651eebc1d52..557c9479f2c7 100644
--- a/svx/source/fmcomp/fmgridcl.cxx
+++ b/svx/source/fmcomp/fmgridcl.cxx
@@ -502,7 +502,7 @@ IMPL_LINK( FmGridHeader, OnAsyncExecuteDrop, void*, /*NOTINTERESTEDIN*/ )
}
catch(Exception&)
{
- DBG_ERROR("FmGridHeader::ExecuteDrop: Exception occured!");
+ DBG_ERROR("FmGridHeader::ExecuteDrop: Exception occurred!");
}
sal_Int32 nPreferedType = -1;
@@ -1896,7 +1896,7 @@ Sequence< Any> FmGridControl::getSelectionBookmarks()
// The next problem caused by the same behaviuor (SeekCursor causes a propertyChanged) : when adjusting rows we implicitly
// change our selection. So a "FirstSelected(); SeekCursor(); NextSelected();" may produce unpredictable results.
- // That's why we _first_ collect the indicies of the selected rows and _then_ their bookmarks.
+ // That's why we _first_ collect the indices of the selected rows and _then_ their bookmarks.
long nIdx = FirstSelectedRow();
while (nIdx >= 0)
{
@@ -1904,7 +1904,7 @@ Sequence< Any> FmGridControl::getSelectionBookmarks()
pBookmarks[i++] <<= (sal_Int32)nIdx;
nIdx = NextSelectedRow();
}
- DBG_ASSERT(i == nSelectedRows, "FmGridControl::DeleteSelectedRows : could not collect the row indicies !");
+ DBG_ASSERT(i == nSelectedRows, "FmGridControl::DeleteSelectedRows : could not collect the row indices !");
for (i=0; i<nSelectedRows; ++i)
{
@@ -2124,7 +2124,7 @@ void FmGridControl::KeyInput( const KeyEvent& rKEvt )
}
catch(const Exception&)
{
- OSL_ENSURE(0,"exception occured while deleting a column");
+ OSL_ENSURE(0,"exception occurred while deleting a column");
}
}
}
diff --git a/svx/source/fmcomp/fmgridif.cxx b/svx/source/fmcomp/fmgridif.cxx
index 2943fdbeea51..c1d3da92b479 100644
--- a/svx/source/fmcomp/fmgridif.cxx
+++ b/svx/source/fmcomp/fmgridif.cxx
@@ -1506,7 +1506,7 @@ void FmXGridPeer::propertyChange(const PropertyChangeEvent& evt) throw( RuntimeE
sal_Int32 nWidth = 0;
if (evt.NewValue.getValueType().getTypeClass() == TypeClass_VOID)
nWidth = pGrid->GetDefaultColumnWidth(pGrid->GetColumnTitle(nId));
- // GetDefaultColumnWidth already considerd the zoom factor
+ // GetDefaultColumnWidth already considered the zoom factor
else
{
sal_Int32 nTest = 0;
@@ -2551,7 +2551,7 @@ Reference< ::com::sun::star::frame::XDispatch > FmXGridPeer::queryDispatch(cons
{
m_bInterceptingDispatch = sal_True;
// safety against recursion : as we are master of the first chain element and slave of the last one we would
- // have an infinite loop without this if no dispatcher can fullfill the rewuest)
+ // have an infinite loop without this if no dispatcher can fulfill the rewuest)
xResult = m_xFirstDispatchInterceptor->queryDispatch(aURL, aTargetFrameName, nSearchFlags);
m_bInterceptingDispatch = sal_False;
}
diff --git a/svx/source/fmcomp/gridcell.cxx b/svx/source/fmcomp/gridcell.cxx
index 69a125e827c5..7a364e1b00c2 100644
--- a/svx/source/fmcomp/gridcell.cxx
+++ b/svx/source/fmcomp/gridcell.cxx
@@ -1598,7 +1598,7 @@ void DbFormattedField::updateFromModel( Reference< XPropertySet > _rxModel )
::rtl::OUString sText;
Any aValue = _rxModel->getPropertyValue( FM_PROP_EFFECTIVE_VALUE );
if ( aValue >>= sText )
- { // our effective value is transfered as string
+ { // our effective value is transferred as string
pFormattedWindow->SetTextFormatted( sText );
pFormattedWindow->SetSelection( Selection( SELECTION_MAX, SELECTION_MIN ) );
}
@@ -1837,7 +1837,7 @@ String DbPatternField::GetFormatText(const Reference< ::com::sun::star::sdb::XCo
}
else
OSL_ENSURE( rpFormatter->getColumn() == _rxField, "DbPatternField::GetFormatText: my value formatter is working for another field ...!" );
- // re-creating the value formatter here everytime would be quite expensive ...
+ // re-creating the value formatter here every time would be quite expensive ...
String sText;
if ( rpFormatter.get() )
diff --git a/svx/source/fmcomp/gridctrl.cxx b/svx/source/fmcomp/gridctrl.cxx
index 0a07f987496d..72ce80fa3778 100644
--- a/svx/source/fmcomp/gridctrl.cxx
+++ b/svx/source/fmcomp/gridctrl.cxx
@@ -359,7 +359,7 @@ void DbGridControl::NavigationBar::PositionDataSource(sal_Int32 nRecord)
{
if (m_bPositioning)
return;
- // the MoveToPosition may cause a LoseFocus which would lead to a second MoveToPosition, so protect agains this
+ // the MoveToPosition may cause a LoseFocus which would lead to a second MoveToPosition, so protect against this
// recursion
// 68167 - 13.08.99 - FS
m_bPositioning = sal_True;
@@ -1304,7 +1304,7 @@ sal_uInt16 DbGridControl::SetOptions(sal_uInt16 nOpt)
}
else
nNewMode &= ~BROWSER_HIDECURSOR;
- // should not be neccessary if EnablePermanentCursor is used to change the cursor behaviour, but to be sure ...
+ // should not be necessary if EnablePermanentCursor is used to change the cursor behaviour, but to be sure ...
if (nNewMode != m_nMode)
{
@@ -1630,7 +1630,7 @@ void DbGridControl::setDataSource(const Reference< XRowSet >& _xCursor, sal_uInt
// there are rows so go to the selected current column
if (nRecordCount)
GoToRowColumnId(0, GetColumnId(nCurPos));
- // else stop the editing if neccessary
+ // else stop the editing if necessary
else if (IsEditing())
DeactivateCell();
@@ -1796,7 +1796,7 @@ void DbGridControl::ColumnMoved(sal_uInt16 nId)
// +---+---+---+---+---+---+
//
// Now, all is consistent again.
- // (except of the hidden column : The cycling of the cols occured on the model, not on the view. maybe
+ // (except of the hidden column : The cycling of the cols occurred on the model, not on the view. maybe
// the user expected the latter but there really is no good argument against our method ;) ...)
//
// And no, this large explanation isn't just because I wanted to play a board game or something like
@@ -2275,7 +2275,7 @@ void DbGridControl::AdjustDataSource(sal_Bool bFull)
if (bFull)
m_xCurrentRow = NULL;
// if we are on the same row only repaint
- // but this is only possible for rows which are not inserted, in that case the comparision result
+ // but this is only possible for rows which are not inserted, in that case the comparison result
// may not be correct
else
if ( m_xCurrentRow.Is()
@@ -3363,7 +3363,7 @@ sal_Bool DbGridControl::SaveRow()
// if we are appending we still sit on the insert row
// we don't move just clear the flags not to move on the current row
m_xCurrentRow->SetState(m_pDataCursor, sal_False);
- TRACE_RANGE_MESSAGE1("explicit SetState after a successfull update, new state : %s", ROWSTATUS(m_xCurrentRow));
+ TRACE_RANGE_MESSAGE1("explicit SetState after a successful update, new state : %s", ROWSTATUS(m_xCurrentRow));
m_xCurrentRow->SetNew(sal_False);
// adjust the seekcursor if it is on the same position as the datacursor
diff --git a/svx/source/form/dbtoolsclient.cxx b/svx/source/form/dbtoolsclient.cxx
index aac45b06fdc2..8815689dc85e 100644
--- a/svx/source/form/dbtoolsclient.cxx
+++ b/svx/source/form/dbtoolsclient.cxx
@@ -76,7 +76,7 @@ namespace svxform
if ( pDBTFactory )
{
m_xDataAccessFactory = pDBTFactory;
- // by definition, the factory was aquired once
+ // by definition, the factory was acquired once
m_xDataAccessFactory->release();
}
}
diff --git a/svx/source/form/filtnav.cxx b/svx/source/form/filtnav.cxx
index 26d69d399598..55a3f8abba5a 100644
--- a/svx/source/form/filtnav.cxx
+++ b/svx/source/form/filtnav.cxx
@@ -1349,7 +1349,7 @@ sal_Int8 FmFilterNavigator::AcceptDrop( const AcceptDropEvent& rEvt )
bNeedTrigger = sal_True;
}
else
- { // is it an entry whith children, and not yet expanded?
+ { // is it an entry with children, and not yet expanded?
SvLBoxEntry* pDropppedOn = GetEntry(aDropPos);
if (pDropppedOn && (GetChildCount(pDropppedOn) > 0) && !IsExpanded(pDropppedOn))
{
diff --git a/svx/source/form/fmPropBrw.cxx b/svx/source/form/fmPropBrw.cxx
index 5eb81acff6a1..26097275ba2d 100644
--- a/svx/source/form/fmPropBrw.cxx
+++ b/svx/source/form/fmPropBrw.cxx
@@ -226,7 +226,7 @@ FmPropBrw::FmPropBrw( const Reference< XMultiServiceFactory >& _xORB, SfxBinding
{
// create an intermediate window, which is to be the container window of the frame
// Do *not* use |this| as container window for the frame, this would result in undefined
- // responsiblity for this window (as soon as we initialize a frame with a window, the frame
+ // responsibility for this window (as soon as we initialize a frame with a window, the frame
// is responsible for it's life time, but |this| is controlled by the belonging SfxChildWindow)
// #i34249# - 2004-09-27 - fs@openoffice.org
Window* pContainerWindow = new Window( this );
@@ -241,7 +241,7 @@ FmPropBrw::FmPropBrw( const Reference< XMultiServiceFactory >& _xORB, SfxBinding
xSupp ( _pBindings->GetDispatcher()->GetFrame()->GetFrame().GetFrameInterface(), ::com::sun::star::uno::UNO_QUERY );
// if ( xSupp.is() )
// xSupp->getFrames()->append( m_xMeAsFrame );
- // Don't append frame to frame hierachy to prevent UI_DEACTIVATE messages
+ // Don't append frame to frame hierarchy to prevent UI_DEACTIVATE messages
// #i31834# - 2004-07-27 - cd@openoffice.org
}
}
@@ -708,7 +708,7 @@ void FmPropBrw::StateChanged(sal_uInt16 nSID, SfxItemState eState, const SfxPool
}
catch (Exception&)
{
- DBG_ERROR("FmPropBrw::StateChanged: Exception occured!");
+ DBG_ERROR("FmPropBrw::StateChanged: Exception occurred!");
}
m_bInStateChange = false;
}
diff --git a/svx/source/form/fmobj.cxx b/svx/source/form/fmobj.cxx
index c87abc14c0ba..1aab6abf3c05 100644
--- a/svx/source/form/fmobj.cxx
+++ b/svx/source/form/fmobj.cxx
@@ -678,7 +678,7 @@ bool FmFormObj::EndCreate( SdrDragStat& rStat, SdrCreateCmd eCmd )
Reference< XIndexContainer > xFormToInsertInto;
if ( !xParentForm.is() )
- { // model is not yet part of a form component hierachy
+ { // model is not yet part of a form component hierarchy
xParentForm.set( rPage.GetImpl().findPlaceInFormComponentHierarchy( xContent ), UNO_SET_THROW );
xFormToInsertInto.set( xParentForm, UNO_QUERY_THROW );
}
diff --git a/svx/source/form/fmshimp.cxx b/svx/source/form/fmshimp.cxx
index f72806ba27e5..bbb3e62ed7b4 100644
--- a/svx/source/form/fmshimp.cxx
+++ b/svx/source/form/fmshimp.cxx
@@ -1719,7 +1719,7 @@ void FmXFormShell::SetY2KState(sal_uInt16 n)
}
catch(Exception&)
{
- DBG_ERROR("FmXFormShell::SetY2KState: Exception occured!");
+ DBG_ERROR("FmXFormShell::SetY2KState: Exception occurred!");
}
}
@@ -1760,7 +1760,7 @@ void FmXFormShell::SetY2KState(sal_uInt16 n)
}
catch(Exception&)
{
- DBG_ERROR("FmXFormShell::SetY2KState: Exception occured!");
+ DBG_ERROR("FmXFormShell::SetY2KState: Exception occurred!");
}
}
@@ -3014,7 +3014,7 @@ void FmXFormShell::startFiltering()
Reference< XControlContainer> xContainer;
if (getActiveController() == m_xExternalViewController)
{
- DBG_ASSERT(m_xExtViewTriggerController.is(), "FmXFormShell::startFiltering : inconsistent : active external controller, but noone triggered this !");
+ DBG_ASSERT(m_xExtViewTriggerController.is(), "FmXFormShell::startFiltering : inconsistent : active external controller, but no one triggered this !");
xContainer = m_xExtViewTriggerController->getContainer();
}
else
@@ -3091,7 +3091,7 @@ void FmXFormShell::stopFiltering(sal_Bool bSave)
Reference< XControlContainer> xContainer;
if (getActiveController() == m_xExternalViewController)
{
- DBG_ASSERT(m_xExtViewTriggerController.is(), "FmXFormShell::stopFiltering : inconsistent : active external controller, but noone triggered this !");
+ DBG_ASSERT(m_xExtViewTriggerController.is(), "FmXFormShell::stopFiltering : inconsistent : active external controller, but no one triggered this !");
xContainer = m_xExtViewTriggerController->getContainer();
}
else
@@ -3156,7 +3156,7 @@ void FmXFormShell::stopFiltering(sal_Bool bSave)
}
catch(Exception&)
{
- DBG_ERROR("FmXFormShell::stopFiltering: Exception occured!");
+ DBG_ERROR("FmXFormShell::stopFiltering: Exception occurred!");
}
if (!isRowSetAlive(xFormSet))
@@ -3227,7 +3227,7 @@ void FmXFormShell::clearFilter()
Reference< XControlContainer> xContainer;
if (getActiveController() == m_xExternalViewController)
{
- DBG_ASSERT(m_xExtViewTriggerController.is(), "FmXFormShell::clearFilter : inconsistent : active external controller, but noone triggered this !");
+ DBG_ASSERT(m_xExtViewTriggerController.is(), "FmXFormShell::clearFilter : inconsistent : active external controller, but no one triggered this !");
xContainer = m_xExtViewTriggerController->getContainer();
}
else
diff --git a/svx/source/form/fmsrcimp.cxx b/svx/source/form/fmsrcimp.cxx
index 0c5b2b060bdf..49ade47330f4 100644
--- a/svx/source/form/fmsrcimp.cxx
+++ b/svx/source/form/fmsrcimp.cxx
@@ -896,7 +896,7 @@ void FmSearchEngine::Init(const ::rtl::OUString& sVisibleFields)
}
catch(Exception&)
{
- DBG_ERROR("Exception occured!");
+ DBG_ERROR("Exception occurred!");
}
}
diff --git a/svx/source/form/fmvwimp.cxx b/svx/source/form/fmvwimp.cxx
index 67d0a06465ff..f886000dda14 100644
--- a/svx/source/form/fmvwimp.cxx
+++ b/svx/source/form/fmvwimp.cxx
@@ -1507,7 +1507,7 @@ bool FmXFormView::createControlLabelPair( OutputDevice& _rOutDev, sal_Int32 _nXO
)
return false;
- // insert the control model(s) into the form component hierachy
+ // insert the control model(s) into the form component hierarchy
if ( _rpLabel )
lcl_insertIntoFormComponentHierarchy_throw( *m_pView, *_rpLabel, _rxDataSource, _rDataSourceName, _rCommand, _nCommandType );
lcl_insertIntoFormComponentHierarchy_throw( *m_pView, *_rpControl, _rxDataSource, _rDataSourceName, _rCommand, _nCommandType );
diff --git a/svx/source/form/formcontroller.cxx b/svx/source/form/formcontroller.cxx
index c3e7029bcf2e..177cfc57cd97 100644
--- a/svx/source/form/formcontroller.cxx
+++ b/svx/source/form/formcontroller.cxx
@@ -1057,7 +1057,7 @@ void SAL_CALL FormController::removeDisjunctiveTerm( ::sal_Int32 _Term ) throw (
FmFilterRows::iterator pos = m_aFilterRows.begin() + _Term;
m_aFilterRows.erase( pos );
- // adjust m_nCurrentFilterPosition if the removed row preceeded it
+ // adjust m_nCurrentFilterPosition if the removed row preceded it
if ( _Term < m_nCurrentFilterPosition )
--m_nCurrentFilterPosition;
@@ -3133,7 +3133,7 @@ void FormController::setFilter(::std::vector<FmFieldInfo>& rFieldInfos)
Sequence < PropertyValue> aLevel;
Sequence< Sequence < PropertyValue > > aFilterRows = m_xComposer->getStructuredFilter();
- // ok, we recieve the list of filters as sequence of fieldnames, value
+ // ok, we receive the list of filters as sequence of fieldnames, value
// now we have to transform the fieldname into UI names, that could be a label of the field or
// a aliasname or the fieldname itself
diff --git a/svx/source/form/formdispatchinterceptor.cxx b/svx/source/form/formdispatchinterceptor.cxx
index 38be635b3c53..e8623c07dc3a 100644
--- a/svx/source/form/formdispatchinterceptor.cxx
+++ b/svx/source/form/formdispatchinterceptor.cxx
@@ -78,7 +78,7 @@ namespace svxform
{
_rxToIntercept->registerDispatchProviderInterceptor((XDispatchProviderInterceptor*)this);
// this should make us the top-level dispatch-provider for the component, via a call to our
- // setDispatchProvider we should have got an fallback for requests we (i.e. our master) cannot fullfill
+ // setDispatchProvider we should have got an fallback for requests we (i.e. our master) cannot fulfill
Reference< XComponent> xInterceptedComponent(_rxToIntercept, UNO_QUERY);
if (xInterceptedComponent.is())
{
diff --git a/svx/source/form/navigatortree.cxx b/svx/source/form/navigatortree.cxx
index 720bbfe4207f..7269e9c2b6ea 100644
--- a/svx/source/form/navigatortree.cxx
+++ b/svx/source/form/navigatortree.cxx
@@ -1898,7 +1898,7 @@ namespace svxform
m_arrCurrentSelection.Remove( i - 1, 1 );
}
// In case there is no shape for the current entry, we keep the entry in m_arrCurrentSelection,
- // since then we can definately remove it.
+ // since then we can definitely remove it.
// #103597#
}
}
diff --git a/svx/source/gallery2/galtheme.cxx b/svx/source/gallery2/galtheme.cxx
index 5d3a5c30443a..cc0a3447cb5e 100644
--- a/svx/source/gallery2/galtheme.cxx
+++ b/svx/source/gallery2/galtheme.cxx
@@ -435,7 +435,7 @@ sal_Bool GalleryTheme::InsertObject( const SgaObject& rObj, sal_uIntPtr nInsertP
{
GalleryObject aNewEntry;
- // update title of new object if neccessary
+ // update title of new object if necessary
if( !rObj.GetTitle().Len() )
{
SgaObject* pOldObj = ImplReadSgaObject( pFoundEntry );
diff --git a/svx/source/inc/docrecovery.hxx b/svx/source/inc/docrecovery.hxx
index 3125f9e1090a..3bf8ca7b5c8e 100644
--- a/svx/source/inc/docrecovery.hxx
+++ b/svx/source/inc/docrecovery.hxx
@@ -127,9 +127,9 @@ enum EDocStates
/* FINAL STATES */
- /// the Auto/Emergency saved document isnt useable any longer
+ /// the Auto/Emergency saved document isn't useable any longer
E_DAMAGED = 64,
- /// the Auto/Emergency saved document isnt realy up-to-date (some changes can be missing)
+ /// the Auto/Emergency saved document isn't really up-to-date (some changes can be missing)
E_INCOMPLETE = 128,
/// the Auto/Emergency saved document was processed successfully
E_SUCCEDED = 512
@@ -487,13 +487,13 @@ class SaveDialog : public IExtendedTabPage
//---------------------------------------
/** @short create all child controls of this dialog.
- @descr The dialog isnt shown nor it starts any
+ @descr The dialog isn't shown nor it starts any
action by itself!
@param pParent
can point to a parent window.
If its set to 0, the defmodal-dialog-parent
- is used automaticly.
+ is used automatically.
@param pCore
provides access to the recovery core service
@@ -544,13 +544,13 @@ class SaveProgressDialog : public ModalDialog
//---------------------------------------
/** @short create all child controls of this dialog.
- @descr The dialog isnt shown nor it starts any
+ @descr The dialog isn't shown nor it starts any
action by itself!
@param pParent
can point to a parent window.
If its set to 0, the defmodal-dialog-parent
- is used automaticly.
+ is used automatically.
@param pCore
used to start emegrency save.
diff --git a/svx/source/inc/fmshimp.hxx b/svx/source/inc/fmshimp.hxx
index 9f2d487d9852..391915da3ed4 100644
--- a/svx/source/inc/fmshimp.hxx
+++ b/svx/source/inc/fmshimp.hxx
@@ -477,7 +477,7 @@ public:
// if the form belongs to the controller (extern) displaying a grid, the according internal form will
// be displayed, _xForm else
- // check if the current control of the active controler has the focus
+ // check if the current control of the active controller has the focus
bool HasControlFocus() const;
private:
diff --git a/svx/source/inc/fmtextcontrolshell.hxx b/svx/source/inc/fmtextcontrolshell.hxx
index 5d5cd7b58ca0..4ee43867350c 100644
--- a/svx/source/inc/fmtextcontrolshell.hxx
+++ b/svx/source/inc/fmtextcontrolshell.hxx
@@ -93,7 +93,7 @@ namespace svx
// without this define, m_xActiveControl remembers the *last* active control, even
// if it, in the meantime, already lost the focus
bool m_bActiveControl;
- // so we need an additional boolean flag telling whether the active cotrol
+ // so we need an additional boolean flag telling whether the active control
// is really focused
#endif
bool m_bActiveControlIsReadOnly;
diff --git a/svx/source/sdr/attribute/sdrallfillattributeshelper.cxx b/svx/source/sdr/attribute/sdrallfillattributeshelper.cxx
new file mode 100755
index 000000000000..1814b3eeb4db
--- /dev/null
+++ b/svx/source/sdr/attribute/sdrallfillattributeshelper.cxx
@@ -0,0 +1,275 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_svx.hxx"
+
+#include <svx/sdr/attribute/sdrallfillattributeshelper.hxx>
+#include <svx/sdr/primitive2d/sdrattributecreator.hxx>
+#include <svx/sdr/primitive2d/sdrdecompositiontools.hxx>
+#include <basegfx/polygon/b2dpolygontools.hxx>
+#include <basegfx/matrix/b2dhommatrix.hxx>
+#include <basegfx/polygon/b2dpolygon.hxx>
+#include <drawinglayer/attribute/fillhatchattribute.hxx>
+#include <drawinglayer/attribute/sdrfillgraphicattribute.hxx>
+#include <svx/xfillit0.hxx>
+#include <vcl/graph.hxx>
+
+//////////////////////////////////////////////////////////////////////////////
+
+namespace drawinglayer
+{
+ namespace attribute
+ {
+ void SdrAllFillAttributesHelper::createPrimitive2DSequence(
+ const basegfx::B2DRange& rPaintRange,
+ const basegfx::B2DRange& rDefineRange)
+ {
+ // reset and remember new target range for object geometry
+ maLastPaintRange = rPaintRange;
+ maLastDefineRange = rDefineRange;
+
+ if(isUsed())
+ {
+ maPrimitives.realloc(1);
+ maPrimitives[0] = drawinglayer::primitive2d::createPolyPolygonFillPrimitive(
+ basegfx::B2DPolyPolygon(
+ basegfx::tools::createPolygonFromRect(
+ maLastPaintRange)),
+ maLastDefineRange,
+ maFillAttribute.get() ? *maFillAttribute.get() : drawinglayer::attribute::SdrFillAttribute(),
+ maFillGradientAttribute.get() ? *maFillGradientAttribute.get() : drawinglayer::attribute::FillGradientAttribute());
+ }
+ }
+
+ SdrAllFillAttributesHelper::SdrAllFillAttributesHelper()
+ : maLastPaintRange(),
+ maLastDefineRange(),
+ maFillAttribute(),
+ maFillGradientAttribute(),
+ maPrimitives()
+ {
+ }
+
+ SdrAllFillAttributesHelper::SdrAllFillAttributesHelper(const Color& rColor)
+ : maLastPaintRange(),
+ maLastDefineRange(),
+ maFillAttribute(),
+ maFillGradientAttribute(),
+ maPrimitives()
+ {
+ maFillAttribute.reset(
+ new drawinglayer::attribute::SdrFillAttribute(
+ 0.0,
+ Color(rColor.GetRGBColor()).getBColor(),
+ drawinglayer::attribute::FillGradientAttribute(),
+ drawinglayer::attribute::FillHatchAttribute(),
+ drawinglayer::attribute::SdrFillGraphicAttribute()));
+ }
+
+ SdrAllFillAttributesHelper::SdrAllFillAttributesHelper(const SfxItemSet& rSet)
+ : maLastPaintRange(),
+ maLastDefineRange(),
+ maFillAttribute(
+ new drawinglayer::attribute::SdrFillAttribute(
+ drawinglayer::primitive2d::createNewSdrFillAttribute(rSet))),
+ maFillGradientAttribute(
+ new drawinglayer::attribute::FillGradientAttribute(
+ drawinglayer::primitive2d::createNewTransparenceGradientAttribute(rSet))),
+ maPrimitives()
+ {
+ }
+
+ SdrAllFillAttributesHelper::~SdrAllFillAttributesHelper()
+ {
+ }
+
+ bool SdrAllFillAttributesHelper::isUsed() const
+ {
+ // only depends on fill, FillGradientAttribute alone defines no fill
+ return maFillAttribute.get() && !maFillAttribute->isDefault();
+ }
+
+ bool SdrAllFillAttributesHelper::isTransparent() const
+ {
+ if(hasSdrFillAttribute() && 0.0 != maFillAttribute->getTransparence())
+ {
+ return true;
+ }
+
+ if(hasFillGradientAttribute() && !maFillGradientAttribute->isDefault())
+ {
+ return true;
+ }
+
+ if(hasSdrFillAttribute())
+ {
+ const Graphic& rGraphic = getFillAttribute().getFillGraphic().getFillGraphic();
+
+ return rGraphic.IsSupportedGraphic() && rGraphic.IsTransparent();
+ }
+
+ return false;
+ }
+
+ const drawinglayer::attribute::SdrFillAttribute& SdrAllFillAttributesHelper::getFillAttribute() const
+ {
+ if(!maFillAttribute.get())
+ {
+ const_cast< SdrAllFillAttributesHelper* >(this)->maFillAttribute.reset(new drawinglayer::attribute::SdrFillAttribute());
+ }
+
+ return *maFillAttribute.get();
+ }
+
+ const drawinglayer::attribute::FillGradientAttribute& SdrAllFillAttributesHelper::getFillGradientAttribute() const
+ {
+ if(!maFillGradientAttribute.get())
+ {
+ const_cast< SdrAllFillAttributesHelper* >(this)->maFillGradientAttribute.reset(new drawinglayer::attribute::FillGradientAttribute());
+ }
+
+ return *maFillGradientAttribute.get();
+ }
+
+ const drawinglayer::primitive2d::Primitive2DSequence& SdrAllFillAttributesHelper::getPrimitive2DSequence(
+ const basegfx::B2DRange& rPaintRange,
+ const basegfx::B2DRange& rDefineRange) const
+ {
+ if(maPrimitives.getLength() && (maLastPaintRange != rPaintRange || maLastDefineRange != rDefineRange))
+ {
+ const_cast< SdrAllFillAttributesHelper* >(this)->maPrimitives.realloc(0);
+ }
+
+ if(!maPrimitives.getLength())
+ {
+ const_cast< SdrAllFillAttributesHelper* >(this)->createPrimitive2DSequence(rPaintRange, rDefineRange);
+ }
+
+ return maPrimitives;
+ }
+
+ basegfx::BColor SdrAllFillAttributesHelper::getAverageColor(const basegfx::BColor& rFallback) const
+ {
+ basegfx::BColor aRetval(rFallback);
+
+ if(maFillAttribute.get() && !maFillAttribute->isDefault())
+ {
+ const drawinglayer::attribute::FillGradientAttribute& rFillGradientAttribute = maFillAttribute->getGradient();
+ const drawinglayer::attribute::FillHatchAttribute& rFillHatchAttribute = maFillAttribute->getHatch();
+ const drawinglayer::attribute::SdrFillGraphicAttribute& rSdrFillGraphicAttribute = maFillAttribute->getFillGraphic();
+ const drawinglayer::attribute::FillGradientAttribute& rFillTransparenceGradientAttribute = getFillGradientAttribute();
+ double fTransparence(maFillAttribute->getTransparence());
+
+ if(!rFillTransparenceGradientAttribute.isDefault())
+ {
+ const double fTransA = rFillTransparenceGradientAttribute.getStartColor().luminance();
+ const double fTransB = rFillTransparenceGradientAttribute.getEndColor().luminance();
+
+ fTransparence = (fTransA + fTransB) * 0.5;
+ }
+
+ if(!rFillGradientAttribute.isDefault())
+ {
+ // gradient fill
+ const basegfx::BColor& rStart = rFillGradientAttribute.getStartColor();
+ const basegfx::BColor& rEnd = rFillGradientAttribute.getEndColor();
+
+ aRetval = basegfx::interpolate(rStart, rEnd, 0.5);
+ }
+ else if(!rFillHatchAttribute.isDefault())
+ {
+ // hatch fill
+ const basegfx::BColor& rColor = rFillHatchAttribute.getColor();
+
+ if(rFillHatchAttribute.isFillBackground())
+ {
+ const basegfx::BColor& rBackgroundColor = maFillAttribute->getColor();
+
+ // mix colors 50%/50%
+ aRetval = basegfx::interpolate(rColor, rBackgroundColor, 0.5);
+ }
+ else
+ {
+ // mix color with fallback color
+ aRetval = basegfx::interpolate(rColor, rFallback, 0.5);
+ }
+ }
+ else if(!rSdrFillGraphicAttribute.isDefault())
+ {
+ // graphic fill
+
+ // not used yet by purpose (see SwPageFrm::GetDrawBackgrdColor()),
+ // use fallback (already set)
+ }
+ else
+ {
+ // color fill
+ aRetval = maFillAttribute->getColor();
+ }
+
+ if(!basegfx::fTools::equalZero(fTransparence))
+ {
+ // blend into transparency
+ aRetval = basegfx::interpolate(aRetval, rFallback, fTransparence);
+ }
+ }
+
+ return aRetval.clamp();
+ }
+
+ bool SdrAllFillAttributesHelper::needCompleteRepaint() const
+ {
+ if(!isUsed() || !hasSdrFillAttribute())
+ {
+ // not used or no fill
+ return false;
+ }
+
+ const drawinglayer::attribute::SdrFillAttribute& rSdrFillAttribute = getFillAttribute();
+
+ if(!rSdrFillAttribute.getHatch().isDefault())
+ {
+ // hatch is always top-left aligned, needs no full refreshes
+ return false;
+ }
+
+ if(!rSdrFillAttribute.getGradient().isDefault())
+ {
+ // gradients always scale with the object
+ return true;
+ }
+
+ if(!rSdrFillAttribute.getFillGraphic().isDefault())
+ {
+ // some graphic constellations may not need this, but since most do
+ // (stretch to fill, all but top-left aligned, ...) claim to do by default
+ return true;
+ }
+
+ // color fill
+ return false;
+ }
+ } // end of namespace attribute
+} // end of namespace drawinglayer
+
+//////////////////////////////////////////////////////////////////////////////
+// eof
diff --git a/svx/source/sdr/contact/displayinfo.cxx b/svx/source/sdr/contact/displayinfo.cxx
index fdd2a6cb0be2..51289719680d 100644
--- a/svx/source/sdr/contact/displayinfo.cxx
+++ b/svx/source/sdr/contact/displayinfo.cxx
@@ -53,7 +53,7 @@ namespace sdr
{
}
- // Access to LayerInfos (which layers to proccess)
+ // Access to LayerInfos (which layers to process)
void DisplayInfo::SetProcessLayers(const SetOfByte& rSet)
{
maProcessLayers = rSet;
diff --git a/svx/source/sdr/contact/viewobjectcontactofpageobj.cxx b/svx/source/sdr/contact/viewobjectcontactofpageobj.cxx
index 2705fa80c8f4..38b2e286f696 100644
--- a/svx/source/sdr/contact/viewobjectcontactofpageobj.cxx
+++ b/svx/source/sdr/contact/viewobjectcontactofpageobj.cxx
@@ -265,7 +265,7 @@ namespace sdr
// set recursion flag
bInCreatePrimitive2D = true;
- // init extractor, guarantee existance, set page there
+ // init extractor, guarantee existence, set page there
mpExtractor->SetStartPage(pPage);
// #i105548# also need to copy the VOCRedirector for sub-content creation
diff --git a/svx/source/sdr/event/eventhandler.cxx b/svx/source/sdr/event/eventhandler.cxx
index f4cc5af898db..030e113be963 100644
--- a/svx/source/sdr/event/eventhandler.cxx
+++ b/svx/source/sdr/event/eventhandler.cxx
@@ -25,7 +25,7 @@
#include "precompiled_svx.hxx"
#include <svx/sdr/event/eventhandler.hxx>
-// for SOLARIS compiler include of algorithm part of _STL is necesary to
+// for SOLARIS compiler include of algorithm part of _STL is necessary to
// get access to basic algos like ::std::find
#include <algorithm>
#include <tools/debug.hxx>
diff --git a/svx/source/sdr/overlay/overlayobjectlist.cxx b/svx/source/sdr/overlay/overlayobjectlist.cxx
index 1f8dcca670f2..0f5d4d947707 100644
--- a/svx/source/sdr/overlay/overlayobjectlist.cxx
+++ b/svx/source/sdr/overlay/overlayobjectlist.cxx
@@ -29,7 +29,7 @@
#include <vcl/outdev.hxx>
#include <basegfx/matrix/b2dhommatrix.hxx>
-// for SOLARIS compiler include of algorithm part of _STL is necesary to
+// for SOLARIS compiler include of algorithm part of _STL is necessary to
// get access to basic algos like ::std::find
#include <algorithm>
diff --git a/svx/source/sdr/primitive2d/sdrdecompositiontools.cxx b/svx/source/sdr/primitive2d/sdrdecompositiontools.cxx
index dfc53f1cd253..af1c03d97d75 100644
--- a/svx/source/sdr/primitive2d/sdrdecompositiontools.cxx
+++ b/svx/source/sdr/primitive2d/sdrdecompositiontools.cxx
@@ -135,7 +135,11 @@ namespace drawinglayer
// create FillGradientPrimitive2D for transparence and add to new sequence
// fillGradientPrimitive is enough here (compared to PolyPolygonGradientPrimitive2D) since float transparence will be masked anyways
const basegfx::B2DRange aRange(basegfx::tools::getRange(rPolyPolygon));
- const Primitive2DReference xRefB(new FillGradientPrimitive2D(aRange, rFillGradient));
+ const Primitive2DReference xRefB(
+ new FillGradientPrimitive2D(
+ aRange,
+ rDefinitionRange,
+ rFillGradient));
const Primitive2DSequence aAlpha(&xRefB, 1L);
// create TransparencePrimitive2D using alpha and content
diff --git a/svx/source/sdr/primitive2d/sdrole2primitive2d.cxx b/svx/source/sdr/primitive2d/sdrole2primitive2d.cxx
index ec60ed0cbf31..97cbac3bd999 100644
--- a/svx/source/sdr/primitive2d/sdrole2primitive2d.cxx
+++ b/svx/source/sdr/primitive2d/sdrole2primitive2d.cxx
@@ -55,7 +55,7 @@ namespace drawinglayer
// to take care of getSdrLFSTAttribute() later, the same as in SdrGrafPrimitive2D::create2DDecomposition
// should happen. For the moment we only need the OLE itself
// Added complete primitive preparation using getSdrLFSTAttribute() now. To not do stuff which is not needed now, it
- // may be supressed by using a static bool. The paint version only supported text.
+ // may be suppressed by using a static bool. The paint version only supported text.
static bool bBehaveCompatibleToPaintVersion(false);
Primitive2DSequence aRetval;
@@ -131,7 +131,7 @@ namespace drawinglayer
// add graphic content
appendPrimitive2DSequenceToPrimitive2DSequence(aRetval, getOLEContent());
- // add text, no need to supress to stay compatible since text was
+ // add text, no need to suppress to stay compatible since text was
// always supported by the old paints, too
if(!getSdrLFSTAttribute().getText().isDefault())
{
diff --git a/svx/source/sidebar/line/LineWidthControl.cxx b/svx/source/sidebar/line/LineWidthControl.cxx
index 77e582b1aea1..b2a6e2281ad6 100644
--- a/svx/source/sidebar/line/LineWidthControl.cxx
+++ b/svx/source/sidebar/line/LineWidthControl.cxx
@@ -52,8 +52,8 @@ LineWidthControl::LineWidthControl (
mstrPT(SVX_RES(STR_PT)),
mnCustomWidth(0),
mbCustom(false),
- mbColseByEdit(false),
- mnTmpCusomWidth(0),
+ mbCloseByEdit(false),
+ mnTmpCustomWidth(0),
mbVSFocus(true),
maIMGCus(SVX_RES(IMG_WIDTH_CUSTOM)),
maIMGCusGray(SVX_RES(IMG_WIDTH_CUSTOM_GRAY))
@@ -208,7 +208,7 @@ void LineWidthControl::SetWidthSelect( long lValue, bool bValuable, SfxMapUnit e
{
mbVSFocus = true;
maVSWidth.SetSelItem(0);
- mbColseByEdit = false;
+ mbCloseByEdit = false;
meMapUnit = eMapUnit;
SvtViewOptions aWinOpt( E_WINDOW, SIDEBAR_LINE_WIDTH_GLOBAL_VALUE );
if ( aWinOpt.Exists() )
@@ -287,8 +287,8 @@ IMPL_LINK(LineWidthControl, VSSelectHdl, void *, pControl)
mpBindings->GetDispatcher()->Execute(SID_ATTR_LINE_WIDTH, SFX_CALLMODE_RECORD, &aWidthItem, 0L);
mrLinePropertyPanel.SetWidthIcon(iPos);
mrLinePropertyPanel.SetWidth(nVal);
- mbColseByEdit = false;
- mnTmpCusomWidth = 0;
+ mbCloseByEdit = false;
+ mnTmpCustomWidth = 0;
}
else if(iPos == 9)
{//last custom
@@ -300,8 +300,8 @@ IMPL_LINK(LineWidthControl, VSSelectHdl, void *, pControl)
XLineWidthItem aWidthItem( nVal );
mpBindings->GetDispatcher()->Execute(SID_ATTR_LINE_WIDTH, SFX_CALLMODE_RECORD, &aWidthItem, 0L);
mrLinePropertyPanel.SetWidth(nVal);
- mbColseByEdit = false;
- mnTmpCusomWidth = 0;
+ mbCloseByEdit = false;
+ mnTmpCustomWidth = 0;
}
else
{
@@ -338,13 +338,13 @@ IMPL_LINK(LineWidthControl, MFModifyHdl, void *, pControl)
XLineWidthItem aWidthItem(nNewWidth);
mpBindings->GetDispatcher()->Execute(SID_ATTR_LINE_WIDTH, SFX_CALLMODE_RECORD, &aWidthItem, 0L);
- mbColseByEdit = true;
- mnTmpCusomWidth = nTmp;
+ mbCloseByEdit = true;
+ mnTmpCustomWidth = nTmp;
/*for(sal_uInt16 i = 0; i < 8; i++)
{
if(nTmp == (sal_Int32)maVSWidth.GetItemData(i))
{
- mbColseByEdit = false;
+ mbCloseByEdit = false;
break;
}
}*/
@@ -358,7 +358,7 @@ IMPL_LINK(LineWidthControl, MFModifyHdl, void *, pControl)
bool LineWidthControl::IsCloseByEdit()
{
- return mbColseByEdit;
+ return mbCloseByEdit;
}
@@ -366,7 +366,7 @@ bool LineWidthControl::IsCloseByEdit()
long LineWidthControl::GetTmpCustomWidth()
{
- return mnTmpCusomWidth;
+ return mnTmpCustomWidth;
}
diff --git a/svx/source/sidebar/line/LineWidthControl.hxx b/svx/source/sidebar/line/LineWidthControl.hxx
index 88b614714c0a..9e43b8748be8 100644
--- a/svx/source/sidebar/line/LineWidthControl.hxx
+++ b/svx/source/sidebar/line/LineWidthControl.hxx
@@ -58,8 +58,8 @@ private:
XubString mstrPT; //
long mnCustomWidth;
bool mbCustom;
- bool mbColseByEdit;
- long mnTmpCusomWidth;
+ bool mbCloseByEdit;
+ long mnTmpCustomWidth;
bool mbVSFocus;
Image maIMGCus;
diff --git a/svx/source/sidebar/paragraph/ParaPropertyPanel.hxx b/svx/source/sidebar/paragraph/ParaPropertyPanel.hxx
index f581909e55a9..4ffa6bf9abb4 100755
--- a/svx/source/sidebar/paragraph/ParaPropertyPanel.hxx
+++ b/svx/source/sidebar/paragraph/ParaPropertyPanel.hxx
@@ -178,7 +178,7 @@ private:
SfxMapUnit m_eULSpaceUnit;
/****************************************************************
**
- ** Controll Items
+ ** Control Items
**
*****************************************************************/
diff --git a/svx/source/sidebar/possize/PosSizePropertyPanel.cxx b/svx/source/sidebar/possize/PosSizePropertyPanel.cxx
index e6901e2a9c61..9f22f2dd2978 100644
--- a/svx/source/sidebar/possize/PosSizePropertyPanel.cxx
+++ b/svx/source/sidebar/possize/PosSizePropertyPanel.cxx
@@ -90,7 +90,10 @@ PosSizePropertyPanel::PosSizePropertyPanel(
mlRotY(0),
maUIScale(),
mePoolUnit(),
- meDlgUnit(),
+
+ // #124409# init with fallback default
+ meDlgUnit(FUNIT_INCH),
+
maTransfPosXControl(SID_ATTR_TRANSFORM_POS_X, *pBindings, *this),
maTransfPosYControl(SID_ATTR_TRANSFORM_POS_Y, *pBindings, *this),
maTransfWidthControl(SID_ATTR_TRANSFORM_WIDTH, *pBindings, *this),
@@ -309,11 +312,15 @@ void PosSizePropertyPanel::Initialize()
}
mePoolUnit = maTransfWidthControl.GetCoreMetric();
- meDlgUnit = GetModuleFieldUnit();
- SetFieldUnit( *mpMtrPosX, meDlgUnit, true );
- SetFieldUnit( *mpMtrPosY, meDlgUnit, true );
- SetFieldUnit( *mpMtrWidth, meDlgUnit, true );
- SetFieldUnit( *mpMtrHeight, meDlgUnit, true );
+
+ // #124409# no need to do this, the mpBindings->Update( SID_ATTR_METRIC )
+ // call in the constructor will trigger MetricState and will get the correct unit
+ //
+ // meDlgUnit = GetModuleFieldUnit();
+ // SetFieldUnit( *mpMtrPosX, meDlgUnit, true );
+ // SetFieldUnit( *mpMtrPosY, meDlgUnit, true );
+ // SetFieldUnit( *mpMtrWidth, meDlgUnit, true );
+ // SetFieldUnit( *mpMtrHeight, meDlgUnit, true );
}
@@ -784,7 +791,13 @@ void PosSizePropertyPanel::NotifyItemUpdate(
// Pool unit and dialog unit may have changed, make sure that we
// have the current values.
mePoolUnit = maTransfWidthControl.GetCoreMetric();
- meDlgUnit = GetModuleFieldUnit();
+
+ // #124409# do not change; GetModuleFieldUnit uses SfxModule::GetCurrentFieldUnit()
+ // which uses GetActiveModule() and if no items are set there (which is the case e.g.
+ // for writer), will just return the system fallback of FUNIT_INCH which is wrong.
+ // Anyways, with multiple open views the static call GetActiveModule is ambigious
+ //
+ // meDlgUnit = GetModuleFieldUnit();
switch (nSID)
{
@@ -1185,6 +1198,9 @@ void PosSizePropertyPanel::MetricState( SfxItemState eState, const SfxPoolItem*
bool bWidthBlank = false;
bool bHeightBlank = false;
String sNull = String::CreateFromAscii("");
+
+ // #124409# use the given Item to get the correct UI unit and initialize it
+ // and the Fields using it
meDlgUnit = GetCurrentUnit(eState,pState);
if( mpMtrPosX->GetText() == sNull )
diff --git a/svx/source/sidebar/tools/ColorControl.cxx b/svx/source/sidebar/tools/ColorControl.cxx
index 6dc193ce0f70..359b34356d8e 100644
--- a/svx/source/sidebar/tools/ColorControl.cxx
+++ b/svx/source/sidebar/tools/ColorControl.cxx
@@ -167,18 +167,20 @@ void ColorControl::GetFocus (void)
-void ColorControl::SetCurColorSelect (Color aCol, bool bAvailable)
+void ColorControl::SetCurColorSelect(Color aCol,bool bAvailable)
{
-// FillColors();
- short nCol = GetItemId_Imp( maVSColor, aCol );
- if(! bAvailable)
+ //UUUU When transparent use transparent entry (entry 0)
+ const bool bIsTransparent(0xff == aCol.GetTransparency());
+ short nCol = bIsTransparent ? 0 : GetItemId_Imp(maVSColor,aCol);
+
+ if(!bAvailable)
{
maVSColor.SetNoSelection();
return;
}
//if not found
- if( nCol == -1)
+ if(nCol == -1)
{
maVSColor.SetNoSelection();
}
diff --git a/svx/source/svdraw/svdedtv2.cxx b/svx/source/svdraw/svdedtv2.cxx
index 8d51eba6bfa7..2cdbdc3671cc 100644
--- a/svx/source/svdraw/svdedtv2.cxx
+++ b/svx/source/svdraw/svdedtv2.cxx
@@ -1243,7 +1243,7 @@ void SdrEditView::MergeMarkedObjects(SdrMergeMode eMode)
nInsPos = pObj->GetNavigationPosition() + 1;
pInsOL = pObj->getParentOfSdrObject();
- // #i76891# use single iter from SJ here whcih works on SdrObjects and takes
+ // #i76891# use single iter from SJ here which works on SdrObjects and takes
// groups into account by itself
SdrObjListIter aIter(*pObj, IM_DEEPWITHGROUPS);
diff --git a/svx/source/svdraw/svdedxv.cxx b/svx/source/svdraw/svdedxv.cxx
index 68f94acadbcf..38ee709c7155 100644
--- a/svx/source/svdraw/svdedxv.cxx
+++ b/svx/source/svdraw/svdedxv.cxx
@@ -322,7 +322,7 @@ void SdrObjEditView::LazyReactOnObjectChanges()
// which makes the Handles visible. Changes at TakeTextRange()
// seem to have resulted in a case where no refresh is executed.
// Before that, a refresh must have been always executed
- // (else this error would have happend earlier), thus i
+ // (else this error would have happened earlier), thus i
// even think here a refresh should be done always.
// Since follow-up problems cannot even be guessed I only
// add this one more case to the if below.
diff --git a/svx/source/svdraw/svdfmtf.cxx b/svx/source/svdraw/svdfmtf.cxx
index 4382077d7e6c..c35d075a9e15 100644
--- a/svx/source/svdraw/svdfmtf.cxx
+++ b/svx/source/svdraw/svdfmtf.cxx
@@ -178,7 +178,10 @@ void ImpSdrGDIMetaFileImport::DoLoopActions(GDIMetaFile& rMtf, SvdProgressInfo*
case META_PUSH_ACTION : DoAction((MetaPushAction &)*pAct); break;
case META_POP_ACTION : DoAction((MetaPopAction &)*pAct); break;
case META_HATCH_ACTION : DoAction((MetaHatchAction &)*pAct); break;
- case META_COMMENT_ACTION : DoAction((MetaCommentAction &)*pAct, &rMtf); break;
+
+ // #i125211# MetaCommentAction may change index, thus hand it over
+ case META_COMMENT_ACTION : DoAction((MetaCommentAction&)*pAct, rMtf, a);
+ break;
// missing actions added
case META_TEXTRECT_ACTION : DoAction((MetaTextRectAction&)*pAct); break;
@@ -1280,9 +1283,8 @@ void ImpSdrGDIMetaFileImport::DoAction( MetaHatchAction& rAct )
SdrPathObj* pPath = new SdrPathObj(
mrModel,
aSource);
- SfxItemSet aHatchAttr(pPath->GetObjectItemPool(),
- XATTR_FILLSTYLE, XATTR_FILLSTYLE,
- XATTR_FILLHATCH, XATTR_FILLHATCH, 0, 0 );
+ // #i125211# Use the ranges from the SdrObject to create a new empty SfxItemSet
+ SfxItemSet aHatchAttr(pPath->GetObjectItemPool(), pPath->GetMergedItemSet().GetRanges());
XHatchStyle eStyle;
switch(rHatch.GetStyle())
@@ -1332,13 +1334,14 @@ void ImpSdrGDIMetaFileImport::DoAction(MetaMapModeAction& rAct)
////////////////////////////////////////////////////////////////////////////////////////////////////
-void ImpSdrGDIMetaFileImport::DoAction( MetaCommentAction& rAct, GDIMetaFile* pMtf )
+void ImpSdrGDIMetaFileImport::DoAction( MetaCommentAction& rAct, GDIMetaFile& rMtf, sal_uLong& a) // GDIMetaFile* pMtf )
{
ByteString aSkipComment;
- if( rAct.GetComment().CompareIgnoreCaseToAscii( "XGRAD_SEQ_BEGIN" ) == COMPARE_EQUAL )
+ if( a < rMtf.GetActionCount() && rAct.GetComment().CompareIgnoreCaseToAscii( "XGRAD_SEQ_BEGIN" ) == COMPARE_EQUAL )
{
- MetaGradientExAction* pAct = (MetaGradientExAction*) pMtf->NextAction();
+ // #i125211# Check if next action is a MetaGradientExAction
+ MetaGradientExAction* pAct = dynamic_cast< MetaGradientExAction* >(rMtf.GetAction(a + 1));
if( pAct && pAct->GetType() == META_GRADIENTEX_ACTION )
{
@@ -1354,9 +1357,8 @@ void ImpSdrGDIMetaFileImport::DoAction( MetaCommentAction& rAct, GDIMetaFile* pM
SdrPathObj* pPath = new SdrPathObj(
mrModel,
aSource);
- SfxItemSet aGradAttr(pPath->GetObjectItemPool(),
- XATTR_FILLSTYLE, XATTR_FILLSTYLE,
- XATTR_FILLGRADIENT, XATTR_FILLGRADIENT, 0, 0 );
+ // #i125211# Use the ranges from the SdrObject to create a new empty SfxItemSet
+ SfxItemSet aGradAttr(pPath->GetObjectItemPool(), pPath->GetMergedItemSet().GetRanges());
XGradient aXGradient;
aXGradient.SetGradientStyle((XGradientStyle)rGrad.GetStyle());
@@ -1394,13 +1396,14 @@ void ImpSdrGDIMetaFileImport::DoAction( MetaCommentAction& rAct, GDIMetaFile* pM
if(aSkipComment.Len())
{
- MetaAction* pSkipAct = pMtf->NextAction();
+ // #i125211# forward until closing MetaCommentAction
+ MetaAction* pSkipAct = rMtf.GetAction(++a);
while( pSkipAct
&& ((pSkipAct->GetType() != META_COMMENT_ACTION )
|| (((MetaCommentAction*)pSkipAct)->GetComment().CompareIgnoreCaseToAscii(aSkipComment.GetBuffer()) != COMPARE_EQUAL)))
{
- pSkipAct = pMtf->NextAction();
+ pSkipAct = rMtf.GetAction(++a);
}
}
}
@@ -1574,7 +1577,8 @@ void ImpSdrGDIMetaFileImport::DoAction(MetaGradientAction& rAct)
mrModel,
maCurrent * aObjectTransform);
- SfxItemSet aGradientAttr(mrModel.GetItemPool(), XATTR_FILLSTYLE, XATTR_FILLSTYLE, XATTR_FILLGRADIENT, XATTR_FILLGRADIENT, 0, 0);
+ // #i125211# Use the ranges from the SdrObject to create a new empty SfxItemSet
+ SfxItemSet aGradientAttr(mrModel.GetItemPool(), pRect->GetMergedItemSet().GetRanges());
const Gradient& rGradient = rAct.GetGradient();
const XGradientStyle aXGradientStyle(getXGradientStyleFromGradientStyle(rGradient.GetStyle()));
const XFillGradientItem aXFillGradientItem(
@@ -1592,7 +1596,7 @@ void ImpSdrGDIMetaFileImport::DoAction(MetaGradientAction& rAct)
rGradient.GetSteps()));
SetAttributes(pRect);
- aGradientAttr.Put(XFillStyleItem(XFILL_HATCH));
+ aGradientAttr.Put(XFillStyleItem(XFILL_GRADIENT)); // #i125211#
aGradientAttr.Put(aXFillGradientItem);
pRect->SetMergedItemSet(aGradientAttr);
@@ -1654,10 +1658,11 @@ void ImpSdrGDIMetaFileImport::DoAction(MetaGradientExAction& rAct)
if(!mbLastObjWasPolyWithoutLine || !CheckLastPolyLineAndFillMerge(aSource))
{
+ // #i125211# Use the ranges from the SdrObject to create a new empty SfxItemSet
SdrPathObj* pPath = new SdrPathObj(
mrModel,
aSource);
- SfxItemSet aGradientAttr(mrModel.GetItemPool(), XATTR_FILLSTYLE, XATTR_FILLSTYLE, XATTR_FILLGRADIENT, XATTR_FILLGRADIENT, 0, 0);
+ SfxItemSet aGradientAttr(mrModel.GetItemPool(), pPath->GetMergedItemSet().GetRanges());
const Gradient& rGradient = rAct.GetGradient();
const XGradientStyle aXGradientStyle(getXGradientStyleFromGradientStyle(rGradient.GetStyle()));
const XFillGradientItem aXFillGradientItem(
@@ -1675,7 +1680,7 @@ void ImpSdrGDIMetaFileImport::DoAction(MetaGradientExAction& rAct)
rGradient.GetSteps()));
SetAttributes(pPath);
- aGradientAttr.Put(XFillStyleItem(XFILL_HATCH));
+ aGradientAttr.Put(XFillStyleItem(XFILL_GRADIENT)); // #i125211#
aGradientAttr.Put(aXFillGradientItem);
pPath->SetMergedItemSet(aGradientAttr);
diff --git a/svx/source/svdraw/svdfmtf.hxx b/svx/source/svdraw/svdfmtf.hxx
index 2999b3c26b1a..e67230f84c3d 100644
--- a/svx/source/svdraw/svdfmtf.hxx
+++ b/svx/source/svdraw/svdfmtf.hxx
@@ -116,7 +116,10 @@ protected:
void DoAction(MetaMoveClipRegionAction & rAct) { rAct.Execute(&maVD); checkClip(); }
void DoAction(MetaISectRectClipRegionAction& rAct) { rAct.Execute(&maVD); checkClip(); }
void DoAction(MetaISectRegionClipRegionAction& rAct) { rAct.Execute(&maVD); checkClip(); }
- void DoAction(MetaCommentAction& rAct, GDIMetaFile* pMtf);
+
+ // #i125211# The MetaCommentAction needs to advance (if used), thus
+ // give current metafile and index which may be changed
+ void DoAction(MetaCommentAction& rAct, GDIMetaFile& rMtf, sal_uLong& a);
// missing actions added
void DoAction(MetaTextRectAction& rAct);
diff --git a/svx/source/svdraw/svdhdl.cxx b/svx/source/svdraw/svdhdl.cxx
index e78c841c941c..0ff2f3638574 100644
--- a/svx/source/svdraw/svdhdl.cxx
+++ b/svx/source/svdraw/svdhdl.cxx
@@ -261,7 +261,7 @@ const BitmapEx& SdrHdlBitmapSet::GetBitmapEx(BitmapMarkerKind eKindOfMarker, sal
}
}
- // cannot happen since all pathes return something; return Rect_7x7 as default (see switch)
+ // cannot happen since all paths return something; return Rect_7x7 as default (see switch)
return maRealMarkers[0];
}
@@ -2402,7 +2402,7 @@ void SdrCropViewHdl::CreateB2dIAObject(::sdr::overlay::OverlayManager& rOverlayM
aCropped.getMinY());
aCroppedTransform = maObjectTransform * aCroppedTransform;
- // prepare graphic primitive (tranformed)
+ // prepare graphic primitive (transformed)
const drawinglayer::primitive2d::Primitive2DReference aGraphic(
new drawinglayer::primitive2d::GraphicPrimitive2D(
aCroppedTransform,
diff --git a/svx/source/svdraw/svdograf.cxx b/svx/source/svdraw/svdograf.cxx
index 62c9988fc832..b3a43d3aed2a 100644
--- a/svx/source/svdraw/svdograf.cxx
+++ b/svx/source/svdraw/svdograf.cxx
@@ -150,7 +150,7 @@ const Graphic ImpLoadLinkedGraphic( const String aFileName, const String aFilter
// handing it over means that any GraphicFormat that internallv needs a path as base
// to interpret included links may fail.
// Alternatively the path may be set at the result after this call when it is known
- // that it is a SVG graphic, but only because noone yet tried to interpret it.
+ // that it is a SVG graphic, but only because no one yet tried to interpret it.
pGF->ImportGraphic( aGraphic, aFileName, *pInStrm, nFilter, NULL, 0, &aFilterData );
}
return aGraphic;
@@ -1391,9 +1391,11 @@ IMPL_LINK( SdrGrafObj, ImpSwapHdl, GraphicObject*, pO )
{
pFilterData = new com::sun::star::uno::Sequence< com::sun::star::beans::PropertyValue >( 3 );
- com::sun::star::awt::Size aPreviewSizeHint( 64, 64 );
- sal_Bool bAllowPartialStreamRead = sal_True;
- sal_Bool bCreateNativeLink = sal_False;
+ const com::sun::star::awt::Size aPreviewSizeHint( 64, 64 );
+ const sal_Bool bAllowPartialStreamRead = sal_True;
+ // create <GfxLink> instance also for previews in order to avoid that its corresponding
+ // data is cleared in the graphic cache entry in case that the preview data equals the complete graphic data
+ const sal_Bool bCreateNativeLink = sal_True;
(*pFilterData)[ 0 ].Name = String( RTL_CONSTASCII_USTRINGPARAM( "PreviewSizeHint" ) );
(*pFilterData)[ 0 ].Value <<= aPreviewSizeHint;
(*pFilterData)[ 1 ].Name = String( RTL_CONSTASCII_USTRINGPARAM( "AllowPartialStreamRead" ) );
diff --git a/svx/source/svdraw/svdoole2.cxx b/svx/source/svdraw/svdoole2.cxx
index f83ae05ac683..a76db4d6c229 100644
--- a/svx/source/svdraw/svdoole2.cxx
+++ b/svx/source/svdraw/svdoole2.cxx
@@ -309,7 +309,7 @@ void SAL_CALL SdrLightEmbeddedClient_Impl::saveObject()
if ( !mpObj )
throw embed::ObjectSaveVetoException();
- // the common persistance is supported by objects and links
+ // the common persistence is supported by objects and links
xPersist = uno::Reference< embed::XCommonEmbedPersist >( mpObj->GetObjRef(), uno::UNO_QUERY_THROW );
xModifiable = uno::Reference< util::XModifiable >( mpObj->GetParentXModel(), uno::UNO_QUERY );
}
@@ -1311,7 +1311,7 @@ void SdrOle2Obj::Disconnect_Impl()
// TODO/LATER: here we must assume that the destruction of the model is enough to make clear that we will not
// remove the object from the container, even if the DrawingObject itself is not destroyed (unfortunately this
// There is no real need to do the following removing of the object from the container
- // in case the model has correct persistance, but in case of problems such a removing
+ // in case the model has correct persistence, but in case of problems such a removing
// would make the behaviour of the office more stable
comphelper::EmbeddedObjectContainer* pContainer = xObjRef.GetContainer();
diff --git a/svx/source/svdraw/svdpage.cxx b/svx/source/svdraw/svdpage.cxx
index 74ef8940068b..c8c6bc13cd4e 100644
--- a/svx/source/svdraw/svdpage.cxx
+++ b/svx/source/svdraw/svdpage.cxx
@@ -613,7 +613,7 @@ void SdrObjList::InsertObjectIntoContainer(SdrObject& rObject, const sal_uInt32
else
{
maList.insert(maList.begin()+nInsertPosition, &rObject);
- EnsureValidNavigationPositions();
+ EnsureValidNavigationPositions(nInsertPosition);
}
}
diff --git a/svx/source/svdraw/svdstr.src b/svx/source/svdraw/svdstr.src
index f920bdc39e0f..e66d8d3dca6f 100644
--- a/svx/source/svdraw/svdstr.src
+++ b/svx/source/svdraw/svdstr.src
@@ -957,7 +957,7 @@ String STR_DragMethDistort
};
String STR_DragMethCrop
{
- Text [ en-US ] = "Crop %O" ;
+ Text [ en-US ] = "Crop %1" ;
};
String STR_DragRectEckRad
diff --git a/svx/source/svdraw/svdundo.cxx b/svx/source/svdraw/svdundo.cxx
index c311c9795a42..bbd7ae1c7555 100644
--- a/svx/source/svdraw/svdundo.cxx
+++ b/svx/source/svdraw/svdundo.cxx
@@ -47,6 +47,9 @@
#include <svx/svdograf.hxx>
#include <svx/sdr/contact/viewcontactofgraphic.hxx>
+// #124389#
+#include <svx/svdotable.hxx>
+
////////////////////////////////////////////////////////////////////////////////////////////////////
sal_Bool SdrUndoAction::CanRepeat(SfxRepeatTarget& rView) const
@@ -469,7 +472,7 @@ void SdrUndoAttrObj::Undo()
// #105122# Since ClearItem sets back everything to normal
// it also sets fit-to-size text to non-fit-to-size text and
// switches on autogrowheight (the default). That may lead to
- // loosing the geometry size info for the object when it is
+ // losing the geometry size info for the object when it is
// re-layouted from AdjustTextFrameWidthAndHeight(). This makes
// rescuing the size of the object necessary.
const basegfx::B2DRange aSnapRange(sdr::legacy::GetSnapRange(mrSdrObject));
@@ -1207,11 +1210,20 @@ void SdrUndoObjSetText::AfterSetText()
void SdrUndoObjSetText::Undo()
{
+ // only works with SdrTextObj
+ SdrTextObj* pTarget = dynamic_cast< SdrTextObj* >(&mrSdrObject);
+
+ if(!pTarget)
+ {
+ OSL_ENSURE(false, "SdrUndoObjSetText::Undo with SdrObject not based on SdrTextObj (!)");
+ return;
+ }
+
// #94278# Trigger PageChangeCall
ImpShowPageOfThisObject();
// alten Text sichern fuer Redo
- if (!mbNewTextAvailable)
+ if(!mbNewTextAvailable)
{
AfterSetText();
}
@@ -1224,15 +1236,21 @@ void SdrUndoObjSetText::Undo()
pText1 = new OutlinerParaObject(*pText1);
}
- SdrText* pText = static_cast< SdrTextObj*>( &mrSdrObject )->getText(mnText);
+ SdrText* pText = pTarget->getText(mnText);
- if( pText )
+ if(pText)
{
- pText->SetOutlinerParaObject(pText1);
+ pTarget->SetOutlinerParaObjectForText(pText1, pText);
}
- mrSdrObject.SetEmptyPresObj( mbEmptyPresObj );
- mrSdrObject.ActionChanged();
+ pTarget->SetEmptyPresObj(mbEmptyPresObj);
+ pTarget->ActionChanged();
+
+ // #124389# if it's a table, als oneed to relayout TextFrame
+ if(0 != dynamic_cast< sdr::table::SdrTableObj* >(pTarget))
+ {
+ pTarget->AdjustTextFrameWidthAndHeight();
+ }
// #122410# SetOutlinerParaObject at SdrText does not trigger a
// BroadcastObjectChange, but it is needed to make evtl. SlideSorters
@@ -1242,6 +1260,15 @@ void SdrUndoObjSetText::Undo()
void SdrUndoObjSetText::Redo()
{
+ // only works with SdrTextObj
+ SdrTextObj* pTarget = dynamic_cast< SdrTextObj* >(&mrSdrObject);
+
+ if(!pTarget)
+ {
+ OSL_ENSURE(false, "SdrUndoObjSetText::Redo with SdrObject not based on SdrTextObj (!)");
+ return;
+ }
+
// Text fuer Undo kopieren, denn SetOutlinerParaObject() ist Eigentumsuebereignung
OutlinerParaObject* pText1 = mpNewText;
@@ -1250,16 +1277,22 @@ void SdrUndoObjSetText::Redo()
pText1 = new OutlinerParaObject(*pText1);
}
- SdrText* pText = static_cast< SdrTextObj*>( &mrSdrObject )->getText(mnText);
+ SdrText* pText = pTarget->getText(mnText);
- if( pText )
+ if(pText)
{
- static_cast< SdrTextObj* >( &mrSdrObject )->SetOutlinerParaObjectForText( pText1, pText );
+ pTarget->SetOutlinerParaObjectForText(pText1, pText);
}
- mrSdrObject.ActionChanged();
+ pTarget->ActionChanged();
+
+ // #124389# if it's a table, als oneed to relayout TextFrame
+ if(0 != dynamic_cast< sdr::table::SdrTableObj* >(pTarget))
+ {
+ pTarget->AdjustTextFrameWidthAndHeight();
+ }
- // #122410# NbcSetOutlinerParaObjectForText at SdrTextObj does not trigger a
+ // #122410# SetOutlinerParaObjectForText at SdrTextObj does not trigger a
// BroadcastObjectChange, but it is needed to make evtl. SlideSorters
// update their preview.
const SdrObjectChangeBroadcaster aSdrObjectChangeBroadcaster(mrSdrObject);
diff --git a/svx/source/svdraw/svdxcgv.cxx b/svx/source/svdraw/svdxcgv.cxx
index 21aad6536980..4519590cc5f1 100644
--- a/svx/source/svdraw/svdxcgv.cxx
+++ b/svx/source/svdraw/svdxcgv.cxx
@@ -635,7 +635,7 @@ BitmapEx SdrExchangeView::GetMarkedObjBitmapEx(bool bNoVDevIfOneBmpMarked) const
if(pSdrGrafObj)
{
- // #122753# To ensure existance of graphic content, force swap in
+ // #122753# To ensure existence of graphic content, force swap in
pSdrGrafObj->ForceSwapIn();
}
@@ -717,7 +717,7 @@ GDIMetaFile SdrExchangeView::GetMarkedObjMetaFile(bool bNoVDevIfOneMtfMarked) co
aMtf.SetPrefMapMode( aMap );
// removed PrefSize extension. It is principially wrong to set a reduced size at
- // the created MetaFile. The mentioned errors occurr at output time since the integer
+ // the created MetaFile. The mentioned errors occur at output time since the integer
// MapModes from VCL lead to errors. It is now corrected in the VCLRenderer for
// primitives (and may later be done in breaking up a MetaFile to primitives)
aMtf.SetPrefSize(aBoundSize);
diff --git a/svx/source/table/celltypes.hxx b/svx/source/table/celltypes.hxx
index 8361d33084c0..3daeea3759d1 100644
--- a/svx/source/table/celltypes.hxx
+++ b/svx/source/table/celltypes.hxx
@@ -80,7 +80,7 @@ public:
}
/* iterates in the configured direction and returns true if rValue
- now contains a valid positon in the range of this iterator */
+ now contains a valid position in the range of this iterator */
bool next( T& rValue )
{
if( maIter == maEnd )
diff --git a/svx/source/table/tablelayouter.hxx b/svx/source/table/tablelayouter.hxx
index 6f432a822de4..b103d8974b91 100644
--- a/svx/source/table/tablelayouter.hxx
+++ b/svx/source/table/tablelayouter.hxx
@@ -72,7 +72,7 @@ public:
if bFitWidth or bFitHeight is set, the layouter tries to scale
the rows and/or columns to the given area. The result my be bigger
- to fullfill constrains.
+ to fulfill constrains.
if bFitWidth or bFitHeight is set, the model is changed.
*/
diff --git a/svx/source/table/tableundo.cxx b/svx/source/table/tableundo.cxx
index 42aebdf24666..cca0a7bf8e4e 100644
--- a/svx/source/table/tableundo.cxx
+++ b/svx/source/table/tableundo.cxx
@@ -145,8 +145,13 @@ void CellUndo::setDataToCell( const Data& rData )
mxCell->mnRowSpan = rData.mnRowSpan;
mxCell->mnColSpan = rData.mnColSpan;
- if( mxObjRef.is() )
+ if(mxObjRef.is())
+ {
+ // #120201# ActionChanged is not enough, we need to trigger TableLayouter::UpdateBorderLayout()
+ // and this is done best using ReformatText() for table objects
mxObjRef->ActionChanged();
+ mxObjRef->ReformatText();
+ }
}
void CellUndo::getDataFromCell( Data& rData )
diff --git a/svx/source/tbxctrls/SvxColorValueSet.cxx b/svx/source/tbxctrls/SvxColorValueSet.cxx
index e90836c79d26..73d9f4b8e628 100755
--- a/svx/source/tbxctrls/SvxColorValueSet.cxx
+++ b/svx/source/tbxctrls/SvxColorValueSet.cxx
@@ -118,7 +118,7 @@ Size SvxColorValueSet::layoutToGivenHeight(sal_uInt32 nHeight, sal_uInt32 nEntry
const Size aItemSize(getEntryEdgeLength(), getEntryEdgeLength());
const WinBits aWinBits(GetStyle() & ~WB_VSCROLL);
- // get size whith all fields disabled
+ // get size with all fields disabled
const WinBits aWinBitsNoScrollNoFields(GetStyle() & ~(WB_VSCROLL|WB_NAMEFIELD|WB_NONEFIELD));
SetStyle(aWinBitsNoScrollNoFields);
const Size aSizeNoScrollNoFields(CalcWindowSizePixel(aItemSize, static_cast< sal_uInt16 >(getColumnCount())));
diff --git a/svx/source/tbxctrls/fillctrl.cxx b/svx/source/tbxctrls/fillctrl.cxx
index 354797036a79..5c98d3835d1a 100644
--- a/svx/source/tbxctrls/fillctrl.cxx
+++ b/svx/source/tbxctrls/fillctrl.cxx
@@ -19,24 +19,17 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_svx.hxx"
-// include ---------------------------------------------------------------
-
#include <string> // HACK: prevent conflict between STLPORT and Workshop headers
#include <sfx2/app.hxx>
#include <sfx2/dispatch.hxx>
#include <sfx2/objsh.hxx>
#include <sfx2/viewsh.hxx>
#include <rtl/ustring.hxx>
-
#include <svx/dialogs.hrc>
-#define DELAY_TIMEOUT 300
-
#define TMP_STR_BEGIN '['
#define TMP_STR_END ']'
@@ -62,19 +55,21 @@ SFX_IMPL_TOOLBOX_CONTROL( SvxFillToolBoxControl, XFillStyleItem );
|*
\************************************************************************/
-SvxFillToolBoxControl::SvxFillToolBoxControl( sal_uInt16 nSlotId, sal_uInt16 nId, ToolBox& rTbx ) :
- SfxToolBoxControl( nSlotId, nId, rTbx ),
-
- pStyleItem ( NULL ),
- pColorItem ( NULL ),
- pGradientItem ( NULL ),
- pHatchItem ( NULL ),
- pBitmapItem ( NULL ),
- pFillControl ( NULL ),
- pFillTypeLB ( NULL ),
- pFillAttrLB ( NULL ),
- bUpdate ( sal_False ),
- eLastXFS ( XFILL_NONE )
+SvxFillToolBoxControl::SvxFillToolBoxControl(
+ sal_uInt16 nSlotId,
+ sal_uInt16 nId,
+ ToolBox& rTbx )
+: SfxToolBoxControl( nSlotId, nId, rTbx ),
+ mpStyleItem(0),
+ mpColorItem(0),
+ mpGradientItem(0),
+ mpHatchItem(0),
+ mpBitmapItem(0),
+ mpFillControl(0),
+ mpFillTypeLB(0),
+ mpFillAttrLB(0),
+ meLastXFS(XFILL_NONE),
+ mbUpdate(false)
{
addStatusListener( rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( ".uno:FillColor" )));
addStatusListener( rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( ".uno:FillGradient" )));
@@ -90,134 +85,146 @@ SvxFillToolBoxControl::SvxFillToolBoxControl( sal_uInt16 nSlotId, sal_uInt16 nId
SvxFillToolBoxControl::~SvxFillToolBoxControl()
{
- delete pStyleItem;
- delete pColorItem;
- delete pGradientItem;
- delete pHatchItem;
- delete pBitmapItem;
+ delete mpStyleItem;
+ delete mpColorItem;
+ delete mpGradientItem;
+ delete mpHatchItem;
+ delete mpBitmapItem;
}
//========================================================================
void SvxFillToolBoxControl::StateChanged(
-
- sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState )
-
+ sal_uInt16 nSID,
+ SfxItemState eState,
+ const SfxPoolItem* pState)
{
- bool bEnableControls = sal_False;
+ bool bEnableControls(false);
- if( eState == SFX_ITEM_DISABLED )
+ if(eState == SFX_ITEM_DISABLED)
{
- if( nSID == SID_ATTR_FILL_STYLE )
+ // slot disable state
+ if(nSID == SID_ATTR_FILL_STYLE)
{
- pFillTypeLB->Disable();
- pFillTypeLB->SetNoSelection();
+ mpFillTypeLB->Disable();
+ mpFillTypeLB->SetNoSelection();
}
- pFillAttrLB->Disable();
- pFillAttrLB->SetNoSelection();
+
+ mpFillAttrLB->Disable();
+ mpFillAttrLB->SetNoSelection();
}
- else
+ else if(SFX_ITEM_AVAILABLE == eState)
{
- if ( SFX_ITEM_AVAILABLE == eState )
+ // slot available state
+ if(nSID == SID_ATTR_FILL_STYLE)
{
- if( nSID == SID_ATTR_FILL_STYLE )
- {
- delete pStyleItem;
- pStyleItem = (XFillStyleItem*) pState->Clone();
- pFillTypeLB->Enable();
- }
- else if( pStyleItem )
+ delete mpStyleItem;
+ mpStyleItem = static_cast< XFillStyleItem* >(pState->Clone());
+ mpFillTypeLB->Enable();
+ }
+ else if(mpStyleItem)
+ {
+ const XFillStyle eXFS(static_cast< XFillStyle >(mpStyleItem->GetValue()));
+
+ if(nSID == SID_ATTR_FILL_COLOR)
{
- XFillStyle eXFS = (XFillStyle)pStyleItem->GetValue();
+ delete mpColorItem;
+ mpColorItem = static_cast< XFillColorItem* >(pState->Clone());
- if( nSID == SID_ATTR_FILL_COLOR )
+ if(eXFS == XFILL_SOLID)
{
- delete pColorItem;
- pColorItem = (XFillColorItem*) pState->Clone();
-
- if( eXFS == XFILL_SOLID )
- bEnableControls = sal_True;
+ bEnableControls = true;
}
- else if( nSID == SID_ATTR_FILL_GRADIENT )
- {
- delete pGradientItem;
- pGradientItem = (XFillGradientItem*) pState->Clone();
+ }
+ else if(nSID == SID_ATTR_FILL_GRADIENT)
+ {
+ delete mpGradientItem;
+ mpGradientItem = static_cast< XFillGradientItem* >(pState->Clone());
- if( eXFS == XFILL_GRADIENT )
- bEnableControls = sal_True;
- }
- else if( nSID == SID_ATTR_FILL_HATCH )
+ if(eXFS == XFILL_GRADIENT)
{
- delete pHatchItem;
- pHatchItem = (XFillHatchItem*) pState->Clone();
-
- if( eXFS == XFILL_HATCH )
- bEnableControls = sal_True;
+ bEnableControls = true;
}
- else if( nSID == SID_ATTR_FILL_BITMAP )
- {
- delete pBitmapItem;
- pBitmapItem = (XFillBitmapItem*) pState->Clone();
+ }
+ else if(nSID == SID_ATTR_FILL_HATCH)
+ {
+ delete mpHatchItem;
+ mpHatchItem = static_cast< XFillHatchItem* >(pState->Clone());
- if( eXFS == XFILL_BITMAP )
- bEnableControls = sal_True;
+ if(eXFS == XFILL_HATCH)
+ {
+ bEnableControls = true;
}
}
-
- if( pStyleItem )
+ else if(nSID == SID_ATTR_FILL_BITMAP)
{
- // ensure that the correct entry is selected in pFillTypeLB. It
- // might have been changed by nSID == SID_ATTR_FILL_STYLE, but
- // it might also be in an in-between state when user had started to
- // change fillstyle, but not yet changed fillvalue for new style
- // and when nSID == SID_ATTR_FILL_COLOR/SID_ATTR_FILL_GRADIENT/
- // SID_ATTR_FILL_HATCH/SID_ATTR_FILL_BITMAP value change is triggered
- eLastXFS = pFillTypeLB->GetSelectEntryPos();
- XFillStyle eXFS = (XFillStyle)pStyleItem->GetValue();
-
- if(eLastXFS != eXFS)
+ delete mpBitmapItem;
+ mpBitmapItem = static_cast< XFillBitmapItem* >(pState->Clone());
+
+ if(eXFS == XFILL_BITMAP)
{
- bUpdate = sal_True;
- pFillTypeLB->SelectEntryPos( sal::static_int_cast< sal_uInt16 >( eXFS ) );
+ bEnableControls = true;
}
-
- pFillAttrLB->Enable();
}
+ }
+
+ if(mpStyleItem)
+ {
+ // ensure that the correct entry is selected in mpFillTypeLB
+ XFillStyle eXFS(static_cast< XFillStyle >(mpStyleItem->GetValue()));
+ const bool bFillTypeChangedByUser(mpFillControl->mbFillTypeChanged);
- if( bEnableControls )
+ if(bFillTypeChangedByUser)
{
- //pFillTypeLB->Enable();
- pFillAttrLB->Enable();
+ meLastXFS = static_cast< XFillStyle >(mpFillControl->mnLastFillTypeControlSelectEntryPos);
+ mpFillControl->mbFillTypeChanged = false;
+ }
- bUpdate = sal_True;
+ if(meLastXFS != eXFS)
+ {
+ mbUpdate = true;
+ mpFillTypeLB->SelectEntryPos(sal::static_int_cast<sal_uInt16>(eXFS));
}
- Update( pState );
+ mpFillAttrLB->Enable();
+ }
+
+ if(bEnableControls)
+ {
+ mpFillAttrLB->Enable();
+ mbUpdate = true;
+ }
+
+ Update(pState);
+ }
+ else
+ {
+ // slot empty or ambigous
+ if(nSID == SID_ATTR_FILL_STYLE)
+ {
+ mpFillTypeLB->SetNoSelection();
+ mpFillAttrLB->Disable();
+ mpFillAttrLB->SetNoSelection();
+ delete mpStyleItem;
+ mpStyleItem = 0;
+ mbUpdate = false;
}
else
{
- // leerer oder uneindeutiger Status
- if( nSID == SID_ATTR_FILL_STYLE )
+ XFillStyle eXFS(XFILL_NONE);
+
+ if(mpStyleItem)
{
- pFillTypeLB->SetNoSelection();
- pFillAttrLB->Disable();
- pFillAttrLB->SetNoSelection();
- bUpdate = sal_False;
+ eXFS = static_cast< XFillStyle >(mpStyleItem->GetValue());
}
- else
+
+ if(!mpStyleItem ||
+ (nSID == SID_ATTR_FILL_COLOR && eXFS == XFILL_SOLID) ||
+ (nSID == SID_ATTR_FILL_GRADIENT && eXFS == XFILL_GRADIENT) ||
+ (nSID == SID_ATTR_FILL_HATCH && eXFS == XFILL_HATCH) ||
+ (nSID == SID_ATTR_FILL_BITMAP && eXFS == XFILL_BITMAP))
{
- XFillStyle eXFS = XFILL_NONE;
- if( pStyleItem )
- eXFS = (XFillStyle)pStyleItem->GetValue();
- if( !pStyleItem ||
- ( nSID == SID_ATTR_FILL_COLOR && eXFS == XFILL_SOLID ) ||
- ( nSID == SID_ATTR_FILL_GRADIENT && eXFS == XFILL_GRADIENT ) ||
- ( nSID == SID_ATTR_FILL_HATCH && eXFS == XFILL_HATCH ) ||
- ( nSID == SID_ATTR_FILL_BITMAP && eXFS == XFILL_BITMAP ) )
- {
- pFillAttrLB->SetNoSelection();
- //bUpdate = sal_False;
- }
+ mpFillAttrLB->SetNoSelection();
}
}
}
@@ -225,271 +232,321 @@ void SvxFillToolBoxControl::StateChanged(
//========================================================================
-void SvxFillToolBoxControl::Update( const SfxPoolItem* pState )
+void SvxFillToolBoxControl::Update(const SfxPoolItem* pState)
{
- if ( pStyleItem && pState && bUpdate )
+ if(mpStyleItem && pState && mbUpdate)
{
- bUpdate = sal_False;
-
- XFillStyle eXFS = (XFillStyle)pStyleItem->GetValue();
+ mbUpdate = false;
+ const XFillStyle eXFS(static_cast< XFillStyle >(mpStyleItem->GetValue()));
// Pruefen, ob Fuellstil schon vorher aktiv war
- //if( eTmpXFS != eXFS )
- if( (XFillStyle) eLastXFS != eXFS )
- pFillControl->SelectFillTypeHdl( NULL );
- //eLastXFS = eXFS;
+ if(meLastXFS != eXFS)
+ {
+ // update mnLastFillTypeControlSelectEntryPos and fill style list
+ mpFillControl->updateLastFillTypeControlSelectEntryPos();
+ mpFillControl->InitializeFillStyleAccordingToGivenFillType(eXFS);
+ meLastXFS = eXFS;
+ }
- switch( eXFS )
+ switch(eXFS)
{
case XFILL_NONE:
- break;
+ {
+ break;
+ }
case XFILL_SOLID:
{
- if ( pColorItem )
+ if(mpColorItem)
{
- String aString( pColorItem->GetName() );
- ::Color aColor = pColorItem->GetColorValue();
+ String aString(mpColorItem->GetName());
+ ::Color aColor = mpColorItem->GetColorValue();
- pFillAttrLB->SelectEntry( aString );
+ mpFillAttrLB->SelectEntry(aString);
- if ( pFillAttrLB->GetSelectEntryPos() == LISTBOX_ENTRY_NOTFOUND ||
- pFillAttrLB->GetSelectEntryColor() != aColor )
- pFillAttrLB->SelectEntry( aColor );
+ if(mpFillAttrLB->GetSelectEntryPos() == LISTBOX_ENTRY_NOTFOUND || mpFillAttrLB->GetSelectEntryColor() != aColor)
+ {
+ mpFillAttrLB->SelectEntry(aColor);
+ }
- // NEU
// Pruefen, ob Eintrag nicht in der Liste ist
- if( pFillAttrLB->GetSelectEntryPos() ==
- LISTBOX_ENTRY_NOTFOUND ||
- pFillAttrLB->GetSelectEntryColor() != aColor )
+ if(mpFillAttrLB->GetSelectEntryPos() == LISTBOX_ENTRY_NOTFOUND || mpFillAttrLB->GetSelectEntryColor() != aColor)
{
- sal_uInt16 nCount = pFillAttrLB->GetEntryCount();
+ sal_uInt16 nCount = mpFillAttrLB->GetEntryCount();
String aTmpStr;
- if( nCount > 0 )
+ if(nCount > 0)
{
//Letzter Eintrag wird auf temporaere Farbe geprueft
- aTmpStr = pFillAttrLB->GetEntry( nCount - 1 );
- if( aTmpStr.GetChar(0) == TMP_STR_BEGIN &&
- aTmpStr.GetChar(aTmpStr.Len()-1) == TMP_STR_END )
+ aTmpStr = mpFillAttrLB->GetEntry(nCount - 1);
+
+ if(aTmpStr.GetChar(0) == TMP_STR_BEGIN && aTmpStr.GetChar(aTmpStr.Len() - 1) == TMP_STR_END)
{
- pFillAttrLB->RemoveEntry( nCount - 1 );
+ mpFillAttrLB->RemoveEntry(nCount - 1);
}
}
+
aTmpStr = TMP_STR_BEGIN;
aTmpStr += aString;
aTmpStr += TMP_STR_END;
- //pFillAttrLB->SetUpdateMode( sal_False );
- sal_uInt16 nPos = pFillAttrLB->InsertEntry( aColor, aTmpStr );
- //pFillAttrLB->SetUpdateMode( sal_True );
- pFillAttrLB->SelectEntryPos( nPos );
+ sal_uInt16 nPos = mpFillAttrLB->InsertEntry(aColor,aTmpStr);
+ mpFillAttrLB->SelectEntryPos(nPos);
}
- // NEU
}
else
- pFillAttrLB->SetNoSelection();
+ {
+ mpFillAttrLB->SetNoSelection();
+ }
+ break;
}
- break;
case XFILL_GRADIENT:
{
- if ( pGradientItem )
+ if(mpGradientItem)
{
- String aString( pGradientItem->GetName() );
- pFillAttrLB->SelectEntry( aString );
- // NEU
+ String aString(mpGradientItem->GetName());
+ mpFillAttrLB->SelectEntry(aString);
+
// Pruefen, ob Eintrag nicht in der Liste ist
- if( pFillAttrLB->GetSelectEntry() != aString )
+ if(mpFillAttrLB->GetSelectEntry() != aString)
{
- sal_uInt16 nCount = pFillAttrLB->GetEntryCount();
+ sal_uInt16 nCount = mpFillAttrLB->GetEntryCount();
String aTmpStr;
- if( nCount > 0 )
+
+ if(nCount > 0)
{
//Letzter Eintrag wird auf temporaeren Eintrag geprueft
- aTmpStr = pFillAttrLB->GetEntry( nCount - 1 );
- if( aTmpStr.GetChar(0) == TMP_STR_BEGIN &&
- aTmpStr.GetChar(aTmpStr.Len()-1) == TMP_STR_END )
+ aTmpStr = mpFillAttrLB->GetEntry(nCount - 1);
+
+ if(aTmpStr.GetChar(0) == TMP_STR_BEGIN && aTmpStr.GetChar(aTmpStr.Len() - 1) == TMP_STR_END)
{
- pFillAttrLB->RemoveEntry( nCount - 1 );
+ mpFillAttrLB->RemoveEntry(nCount - 1);
}
}
+
aTmpStr = TMP_STR_BEGIN;
aTmpStr += aString;
aTmpStr += TMP_STR_END;
- XGradientEntry* pEntry = new XGradientEntry( pGradientItem->GetGradientValue(), aTmpStr );
+ XGradientEntry* pEntry = new XGradientEntry(mpGradientItem->GetGradientValue(),aTmpStr);
XGradientListSharedPtr aGradientList(XPropertyListFactory::CreateSharedXGradientList(String::CreateFromAscii("TmpList")));
aGradientList->Insert(pEntry);
aGradientList->SetDirty(false);
- const Bitmap aBmp = aGradientList->GetUiBitmap( 0 );
+ const Bitmap aBmp = aGradientList->GetUiBitmap(0);
- if( !aBmp.IsEmpty() )
+ if(!aBmp.IsEmpty())
{
- ( (ListBox*)pFillAttrLB )->InsertEntry( pEntry->GetName(), aBmp );
- pFillAttrLB->SelectEntryPos( pFillAttrLB->GetEntryCount() - 1 );
+ ((ListBox*)mpFillAttrLB)->InsertEntry(pEntry->GetName(),aBmp);
+ mpFillAttrLB->SelectEntryPos(mpFillAttrLB->GetEntryCount() - 1);
}
}
- // NEU
}
else
- pFillAttrLB->SetNoSelection();
+ {
+ mpFillAttrLB->SetNoSelection();
+ }
+ break;
}
- break;
case XFILL_HATCH:
{
- if ( pHatchItem )
+ if(mpHatchItem)
{
- String aString( pHatchItem->GetName() );
- pFillAttrLB->SelectEntry( aString );
- // NEU
+ String aString(mpHatchItem->GetName());
+ mpFillAttrLB->SelectEntry(aString);
+
// Pruefen, ob Eintrag nicht in der Liste ist
- if( pFillAttrLB->GetSelectEntry() != aString )
+ if(mpFillAttrLB->GetSelectEntry() != aString)
{
- sal_uInt16 nCount = pFillAttrLB->GetEntryCount();
+ sal_uInt16 nCount = mpFillAttrLB->GetEntryCount();
String aTmpStr;
- if( nCount > 0 )
+ if(nCount > 0)
{
//Letzter Eintrag wird auf temporaeren Eintrag geprueft
- aTmpStr = pFillAttrLB->GetEntry( nCount - 1 );
- if( aTmpStr.GetChar(0) == TMP_STR_BEGIN &&
- aTmpStr.GetChar(aTmpStr.Len()-1) == TMP_STR_END )
+ aTmpStr = mpFillAttrLB->GetEntry(nCount - 1);
+ if(aTmpStr.GetChar(0) == TMP_STR_BEGIN &&
+ aTmpStr.GetChar(aTmpStr.Len() - 1) == TMP_STR_END)
{
- pFillAttrLB->RemoveEntry( nCount - 1 );
+ mpFillAttrLB->RemoveEntry(nCount - 1);
}
}
+
aTmpStr = TMP_STR_BEGIN;
aTmpStr += aString;
aTmpStr += TMP_STR_END;
- XHatchEntry* pEntry = new XHatchEntry( pHatchItem->GetHatchValue(), aTmpStr );
+ XHatchEntry* pEntry = new XHatchEntry(mpHatchItem->GetHatchValue(),aTmpStr);
XHatchListSharedPtr aHatchList(XPropertyListFactory::CreateSharedXHatchList(String::CreateFromAscii("TmpList")));
- aHatchList->Insert( pEntry );
- aHatchList->SetDirty( sal_False );
- const Bitmap aBmp = aHatchList->GetUiBitmap( 0 );
+ aHatchList->Insert(pEntry);
+ aHatchList->SetDirty(sal_False);
+ const Bitmap aBmp = aHatchList->GetUiBitmap(0);
- if( !aBmp.IsEmpty() )
+ if(!aBmp.IsEmpty())
{
- ( (ListBox*)pFillAttrLB )->InsertEntry( pEntry->GetName(), aBmp );
- pFillAttrLB->SelectEntryPos( pFillAttrLB->GetEntryCount() - 1 );
+ ((ListBox*)mpFillAttrLB)->InsertEntry(pEntry->GetName(),aBmp);
+ mpFillAttrLB->SelectEntryPos(mpFillAttrLB->GetEntryCount() - 1);
}
}
- // NEU
}
else
- pFillAttrLB->SetNoSelection();
+ {
+ mpFillAttrLB->SetNoSelection();
+ }
+ break;
}
- break;
case XFILL_BITMAP:
{
- if ( pBitmapItem )
- // &&
- // SfxObjectShell::Current() &&
- // SfxObjectShell::Current()->GetItem( SID_BITMAP_LIST ) )
+ if(mpBitmapItem)
{
- String aString( pBitmapItem->GetName() );
- // Bitmap aBitmap( pBitmapItem->GetValue() );
+ String aString(mpBitmapItem->GetName());
+ mpFillAttrLB->SelectEntry(aString);
- // SvxBitmapListItem aItem( *(const SvxBitmapListItem*)(
- // SfxObjectShell::Current()->GetItem( SID_BITMAP_LIST ) ) );
- pFillAttrLB->SelectEntry( aString );
- // NEU
// Pruefen, ob Eintrag nicht in der Liste ist
- if( pFillAttrLB->GetSelectEntry() != aString )
+ if(mpFillAttrLB->GetSelectEntry() != aString)
{
- sal_uInt16 nCount = pFillAttrLB->GetEntryCount();
+ sal_uInt16 nCount = mpFillAttrLB->GetEntryCount();
String aTmpStr;
- if( nCount > 0 )
+
+ if(nCount > 0)
{
//Letzter Eintrag wird auf temporaeren Eintrag geprueft
- aTmpStr = pFillAttrLB->GetEntry( nCount - 1 );
- if( aTmpStr.GetChar(0) == TMP_STR_BEGIN &&
- aTmpStr.GetChar(aTmpStr.Len()-1) == TMP_STR_END )
+ aTmpStr = mpFillAttrLB->GetEntry(nCount - 1);
+
+ if(aTmpStr.GetChar(0) == TMP_STR_BEGIN && aTmpStr.GetChar(aTmpStr.Len() - 1) == TMP_STR_END)
{
- pFillAttrLB->RemoveEntry( nCount - 1 );
+ mpFillAttrLB->RemoveEntry(nCount - 1);
}
}
+
aTmpStr = TMP_STR_BEGIN;
aTmpStr += aString;
aTmpStr += TMP_STR_END;
XBitmapListSharedPtr aNew(XPropertyListFactory::CreateSharedXBitmapList(String::CreateFromAscii("TmpList")));
- aNew->Insert(new XBitmapEntry(pBitmapItem->GetGraphicObject(), aTmpStr));
+ aNew->Insert(new XBitmapEntry(mpBitmapItem->GetGraphicObject(),aTmpStr));
aNew->SetDirty(false);
- pFillAttrLB->Fill( aNew );
- pFillAttrLB->SelectEntryPos( pFillAttrLB->GetEntryCount() - 1 );
+ mpFillAttrLB->Fill(aNew);
+ mpFillAttrLB->SelectEntryPos(mpFillAttrLB->GetEntryCount() - 1);
}
- // NEU
}
else
- pFillAttrLB->SetNoSelection();
+ {
+ mpFillAttrLB->SetNoSelection();
+ }
+ break;
}
- break;
default:
- DBG_ERROR( "Nicht unterstuetzter Flaechentyp" );
- break;
+ {
+ DBG_ERROR("Nicht unterstuetzter Flaechentyp");
+ break;
+ }
}
+
+ // update mnLastFillAttrControlSelectEntryPos
+ mpFillControl->updateLastFillAttrControlSelectEntryPos();
}
- if( pState && pStyleItem )
+ if(pState && mpStyleItem)
{
- XFillStyle eXFS = (XFillStyle) pStyleItem->GetValue();
+ XFillStyle eXFS = static_cast< XFillStyle >(mpStyleItem->GetValue());
// Die Listen haben sich geaendert ?
- if( dynamic_cast< const SvxColorTableItem* >(pState) && eXFS == XFILL_SOLID )
- {
- ::Color aTmpColor( pFillAttrLB->GetSelectEntryColor() );
- pFillAttrLB->Clear();
- pFillAttrLB->Fill( ( (SvxColorTableItem*)pState )->GetColorTable() );
- pFillAttrLB->SelectEntry( aTmpColor );
- }
- if( dynamic_cast< const SvxGradientListItem* >(pState) && eXFS == XFILL_GRADIENT )
- {
- String aString( pFillAttrLB->GetSelectEntry() );
- pFillAttrLB->Clear();
- pFillAttrLB->Fill( ( (SvxGradientListItem*)pState )->GetGradientList() );
- pFillAttrLB->SelectEntry( aString );
- }
- if( dynamic_cast< const SvxHatchListItem* >(pState) && eXFS == XFILL_HATCH )
+ switch(eXFS)
{
- String aString( pFillAttrLB->GetSelectEntry() );
- pFillAttrLB->Clear();
- pFillAttrLB->Fill( ( (SvxHatchListItem*)pState )->GetHatchList() );
- pFillAttrLB->SelectEntry( aString );
- }
- if( dynamic_cast< const SvxBitmapListItem* >(pState) && eXFS == XFILL_BITMAP )
- {
- String aString( pFillAttrLB->GetSelectEntry() );
- pFillAttrLB->Clear();
- pFillAttrLB->Fill( ( (SvxBitmapListItem*)pState )->GetBitmapList() );
- pFillAttrLB->SelectEntry( aString );
+ case XFILL_SOLID:
+ {
+ const SvxColorTableItem* pItem = dynamic_cast< const SvxColorTableItem* >(pState);
+
+ if(pItem)
+ {
+ ::Color aTmpColor(mpFillAttrLB->GetSelectEntryColor());
+ mpFillAttrLB->Clear();
+ mpFillAttrLB->Fill(pItem->GetColorTable());
+ mpFillAttrLB->SelectEntry(aTmpColor);
+ }
+ break;
+ }
+ case XFILL_GRADIENT:
+ {
+ const SvxGradientListItem* pItem = dynamic_cast< const SvxGradientListItem* >(pState);
+
+ if(pItem)
+ {
+ String aString(mpFillAttrLB->GetSelectEntry());
+ mpFillAttrLB->Clear();
+ mpFillAttrLB->Fill(pItem->GetGradientList());
+ mpFillAttrLB->SelectEntry(aString);
+ }
+ break;
+ }
+ case XFILL_HATCH:
+ {
+ const SvxHatchListItem* pItem = dynamic_cast< const SvxHatchListItem* >(pState);
+
+ if(pItem)
+ {
+ String aString(mpFillAttrLB->GetSelectEntry());
+ mpFillAttrLB->Clear();
+ mpFillAttrLB->Fill(pItem->GetHatchList());
+ mpFillAttrLB->SelectEntry(aString);
+ }
+ break;
+ }
+ case XFILL_BITMAP:
+ {
+ const SvxBitmapListItem* pItem = dynamic_cast< const SvxBitmapListItem* >(pState);
+
+ if(pItem)
+ {
+ String aString(mpFillAttrLB->GetSelectEntry());
+ mpFillAttrLB->Clear();
+ mpFillAttrLB->Fill(pItem->GetBitmapList());
+ mpFillAttrLB->SelectEntry(aString);
+ }
+ break;
+ }
+ default: // XFILL_NONE
+ {
+ break;
+ }
}
}
}
//========================================================================
-Window* SvxFillToolBoxControl::CreateItemWindow( Window *pParent )
+Window* SvxFillToolBoxControl::CreateItemWindow(Window *pParent)
{
- if ( GetSlotId() == SID_ATTR_FILL_STYLE )
+ if(GetSlotId() == SID_ATTR_FILL_STYLE)
{
- pFillControl = new FillControl( pParent );
+ mpFillControl = new FillControl(pParent);
// Damit dem FillControl das SvxFillToolBoxControl bekannt ist
// (und um kompatibel zu bleiben)
- pFillControl->SetData( this );
+ mpFillControl->SetData(this);
+
+ mpFillAttrLB = (SvxFillAttrBox*)mpFillControl->mpLbFillAttr;
+ mpFillTypeLB = (SvxFillTypeBox*)mpFillControl->mpLbFillType;
- pFillAttrLB = (SvxFillAttrBox*)pFillControl->pLbFillAttr;
- pFillTypeLB = (SvxFillTypeBox*)pFillControl->pLbFillType;
+ mpFillAttrLB->SetUniqueId(HID_FILL_ATTR_LISTBOX);
+ mpFillTypeLB->SetUniqueId(HID_FILL_TYPE_LISTBOX);
- pFillAttrLB->SetUniqueId( HID_FILL_ATTR_LISTBOX );
- pFillTypeLB->SetUniqueId( HID_FILL_TYPE_LISTBOX );
+ if(!mpStyleItem)
+ {
+ // for Writer and Calc it's not the same instance of
+ // SvxFillToolBoxControl which gets used after deselecting
+ // and selecting a DrawObject, thhus a useful initialization is
+ // needed to get the FillType and the FillStyle List inited
+ // correctly. This in combination with meLastXFS inited to
+ // XFILL_NONE do the trick
+ mpStyleItem = new XFillStyleItem(XFILL_SOLID);
+ }
- return pFillControl;
+ return mpFillControl;
}
return NULL;
}
@@ -500,283 +557,337 @@ Window* SvxFillToolBoxControl::CreateItemWindow( Window *pParent )
|*
\************************************************************************/
-FillControl::FillControl( Window* pParent, WinBits nStyle ) :
- Window( pParent, nStyle | WB_DIALOGCONTROL ),
- pLbFillType(new SvxFillTypeBox( this )),
- aLogicalFillSize(40,80),
- aLogicalAttrSize(50,80)
+FillControl::FillControl(Window* pParent,WinBits nStyle)
+: Window(pParent,nStyle | WB_DIALOGCONTROL),
+ mpLbFillType(new SvxFillTypeBox(this)),
+ mpLbFillAttr(new SvxFillAttrBox(this)),
+ maLogicalFillSize(40,80),
+ maLogicalAttrSize(50,80),
+ mnLastFillTypeControlSelectEntryPos(mpLbFillType->GetSelectEntryPos()),
+ mnLastFillAttrControlSelectEntryPos(mpLbFillAttr->GetSelectEntryPos()),
+ mbFillTypeChanged(false)
{
- pLbFillAttr = new SvxFillAttrBox( this );
- Size aTypeSize(LogicToPixel(aLogicalFillSize, MAP_APPFONT));
- Size aAttrSize(LogicToPixel(aLogicalAttrSize, MAP_APPFONT));
- pLbFillType->SetSizePixel(aTypeSize);
- pLbFillAttr->SetSizePixel(aAttrSize);
+ Size aTypeSize(LogicToPixel(maLogicalFillSize,MAP_APPFONT));
+ Size aAttrSize(LogicToPixel(maLogicalAttrSize,MAP_APPFONT));
+ mpLbFillType->SetSizePixel(aTypeSize);
+ mpLbFillAttr->SetSizePixel(aAttrSize);
+
//to get the base height
- aTypeSize = pLbFillType->GetSizePixel();
- aAttrSize = pLbFillAttr->GetSizePixel();
- Point aAttrPnt = pLbFillAttr->GetPosPixel();
+ aTypeSize = mpLbFillType->GetSizePixel();
+ aAttrSize = mpLbFillAttr->GetSizePixel();
+ Point aAttrPnt = mpLbFillAttr->GetPosPixel();
SetSizePixel(
- Size( aAttrPnt.X() + aAttrSize.Width(),
- Max( aAttrSize.Height(), aTypeSize.Height() ) ) );
+ Size(aAttrPnt.X() + aAttrSize.Width(),
+ Max(aAttrSize.Height(),aTypeSize.Height())));
- pLbFillType->SetSelectHdl( LINK( this, FillControl, SelectFillTypeHdl ) );
- pLbFillAttr->SetSelectHdl( LINK( this, FillControl, SelectFillAttrHdl ) );
-
- aDelayTimer.SetTimeout( DELAY_TIMEOUT );
- aDelayTimer.SetTimeoutHdl( LINK( this, FillControl, DelayHdl ) );
- aDelayTimer.Start();
+ mpLbFillType->SetSelectHdl(LINK(this,FillControl,SelectFillTypeHdl));
+ mpLbFillAttr->SetSelectHdl(LINK(this,FillControl,SelectFillAttrHdl));
}
//------------------------------------------------------------------------
FillControl::~FillControl()
{
- delete pLbFillType;
- delete pLbFillAttr;
-}
-
-//------------------------------------------------------------------------
-
-IMPL_LINK_INLINE_START( FillControl, DelayHdl, Timer *, EMPTYARG )
-{
- SelectFillTypeHdl( NULL );
- ( (SvxFillToolBoxControl*)GetData() )->updateStatus( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( ".uno:FillStyle" )));
-// ( (SvxFillToolBoxControl*)GetData() )->GetBindings().Invalidate( SID_ATTR_FILL_STYLE );
- return 0;
+ delete mpLbFillType;
+ delete mpLbFillAttr;
}
-IMPL_LINK_INLINE_END( FillControl, DelayHdl, Timer *, pTimer )
//------------------------------------------------------------------------
-IMPL_LINK( FillControl, SelectFillTypeHdl, ListBox *, pBox )
+void FillControl::InitializeFillStyleAccordingToGivenFillType(XFillStyle aFillStyle)
{
- XFillStyle eXFS = (XFillStyle)pLbFillType->GetSelectEntryPos();
-
- // Spaeter sollte eine Optimierung derart erfolgen, dass die
- // Listen, bzw. Tables nur dann geloescht und wieder aufgebaut
- // werden, wenn sich die Listen, bzw. Tables tatsaechlich geaendert
- // haben (in den LBs natuerlich).
+ SfxObjectShell* pSh = SfxObjectShell::Current();
+ bool bDone(false);
- if ( ( pBox && !pBox->IsTravelSelect() ) || !pBox )
+ if(pSh)
{
- // Damit wir in folgendem Fall einen Status anzeigen koennen:
- // Ein Typ wurde ausgewaehlt aber kein Attribut.
- // Die Selektion hat genau die gleichen Attribute wie die vorherige.
-// SvxFillToolBoxControl* pControlerItem = (SvxFillToolBoxControl*)GetData();
-// if( pControlerItem )
-// pControlerItem->ClearCache();
-
- pLbFillAttr->Clear();
- SfxObjectShell* pSh = SfxObjectShell::Current();
+ // clear in all cases, else we would risk a mix of FillStyles in the Style list
+ mpLbFillAttr->Clear();
- switch( eXFS )
+ switch(aFillStyle)
{
- case XFILL_NONE:
- {
- pLbFillType->Selected();
- SelectFillAttrHdl( pBox );
- pLbFillAttr->Disable();
- }
- break;
-
case XFILL_SOLID:
{
- if ( pSh && pSh->GetItem( SID_COLOR_TABLE ) )
+ if(pSh->GetItem(SID_COLOR_TABLE))
{
- SvxColorTableItem aItem( *(const SvxColorTableItem*)(
- pSh->GetItem( SID_COLOR_TABLE ) ) );
- pLbFillAttr->Enable();
- pLbFillAttr->Fill( aItem.GetColorTable() );
+ const SvxColorTableItem* pItem = static_cast< const SvxColorTableItem* >(pSh->GetItem(SID_COLOR_TABLE));
+ mpLbFillAttr->Enable();
+ mpLbFillAttr->Fill(pItem->GetColorTable());
+ bDone = true;
}
- else
- pLbFillAttr->Disable();
+ break;
}
- break;
case XFILL_GRADIENT:
{
- if ( pSh && pSh->GetItem( SID_GRADIENT_LIST ) )
+ if(pSh->GetItem(SID_GRADIENT_LIST))
{
- SvxGradientListItem aItem( *(const SvxGradientListItem*)(
- pSh->GetItem( SID_GRADIENT_LIST ) ) );
- pLbFillAttr->Enable();
- pLbFillAttr->Fill( aItem.GetGradientList() );
+ const SvxGradientListItem* pItem = static_cast< const SvxGradientListItem* >(pSh->GetItem(SID_GRADIENT_LIST));
+ mpLbFillAttr->Enable();
+ mpLbFillAttr->Fill(pItem->GetGradientList());
+ bDone = true;
}
- else
- pLbFillAttr->Disable();
+ break;
}
- break;
case XFILL_HATCH:
{
- if ( pSh && pSh->GetItem( SID_HATCH_LIST ) )
+ if(pSh->GetItem(SID_HATCH_LIST))
{
- SvxHatchListItem aItem( *(const SvxHatchListItem*)(
- pSh->GetItem( SID_HATCH_LIST ) ) );
- pLbFillAttr->Enable();
- pLbFillAttr->Fill( aItem.GetHatchList() );
+ const SvxHatchListItem* pItem = static_cast< const SvxHatchListItem* >(pSh->GetItem(SID_HATCH_LIST));
+ mpLbFillAttr->Enable();
+ mpLbFillAttr->Fill(pItem->GetHatchList());
+ bDone = true;
}
- else
- pLbFillAttr->Disable();
+ break;
}
- break;
case XFILL_BITMAP:
{
- if ( pSh && pSh->GetItem( SID_BITMAP_LIST ) )
+ if(pSh->GetItem(SID_BITMAP_LIST))
{
- SvxBitmapListItem aItem( *(const SvxBitmapListItem*)(
- pSh->GetItem( SID_BITMAP_LIST ) ) );
- pLbFillAttr->Enable();
- pLbFillAttr->Fill( aItem.GetBitmapList() );
+ const SvxBitmapListItem* pItem = static_cast< const SvxBitmapListItem* >(pSh->GetItem(SID_BITMAP_LIST));
+ mpLbFillAttr->Enable();
+ mpLbFillAttr->Fill(pItem->GetBitmapList());
+ bDone = true;
}
- else
- pLbFillAttr->Disable();
+ break;
+ }
+ default: // XFILL_NONE
+ {
+ // accept disable (no styles for XFILL_NONE)
+ break;
}
- break;
}
+ }
- if( eXFS != XFILL_NONE ) // Wurde schon erledigt
- {
- if ( pBox )
- pLbFillType->Selected();
+ if(!bDone)
+ {
+ mpLbFillAttr->Disable();
+ }
+}
- // release focus
- if ( pBox && pLbFillType->IsRelease() )
- {
- SfxViewShell* pViewShell = SfxViewShell::Current();
- if( pViewShell && pViewShell->GetWindow() )
- pViewShell->GetWindow()->GrabFocus();
- }
+void FillControl::updateLastFillTypeControlSelectEntryPos()
+{
+ mnLastFillTypeControlSelectEntryPos = mpLbFillType->GetSelectEntryPos();
+}
+
+IMPL_LINK(FillControl,SelectFillTypeHdl,ListBox *,pBox)
+{
+ if(!pBox) // only work with real calls from ListBox, do not accept direct calls with zeros here
+ {
+ return 0;
+ }
+
+ const bool bAction(
+ !mpLbFillType->IsTravelSelect() // keep TravelSelect, this means keyboard up/down in the list
+ && mpLbFillType->GetSelectEntryCount()
+ && mpLbFillType->GetSelectEntryPos() != mnLastFillTypeControlSelectEntryPos);
+
+ updateLastFillTypeControlSelectEntryPos();
+ XFillStyle eXFS = static_cast< XFillStyle >(mpLbFillType->GetSelectEntryPos());
+
+ if(bAction && XFILL_NONE != eXFS)
+ {
+ mbFillTypeChanged = true;
+ }
+
+ // update list of FillStyles in any case
+ InitializeFillStyleAccordingToGivenFillType(eXFS);
+
+ // for XFILL_NONE do no longer call SelectFillAttrHdl (as done before),
+ // trigger needed actions directly. This is the only action this handler
+ // can trigger directly as the user action is finished in this case
+ if(XFILL_NONE == eXFS && bAction)
+ {
+ // for XFILL_NONE do no longer call SelectFillAttrHdl,
+ // trigger needed actions directly
+ Any a;
+ Sequence< PropertyValue > aArgsFillStyle(1);
+ XFillStyleItem aXFillStyleItem(eXFS);
+
+ aArgsFillStyle[0].Name = ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("FillStyle"));
+ aXFillStyleItem.QueryValue(a);
+ aArgsFillStyle[0].Value = a;
+ ((SvxFillToolBoxControl*)GetData())->Dispatch(::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM(".uno:FillStyle")), aArgsFillStyle);
+ }
+
+ mpLbFillType->Selected();
+
+ // release focus. Needed to get focus automatically back to EditView
+ if(mpLbFillType->IsRelease())
+ {
+ SfxViewShell* pViewShell = SfxViewShell::Current();
+
+ if(pViewShell && pViewShell->GetWindow())
+ {
+ pViewShell->GetWindow()->GrabFocus();
}
}
+
return 0;
}
//------------------------------------------------------------------------
-IMPL_LINK( FillControl, SelectFillAttrHdl, ListBox *, pBox )
+void FillControl::updateLastFillAttrControlSelectEntryPos()
+{
+ mnLastFillAttrControlSelectEntryPos = mpLbFillAttr->GetSelectEntryPos();
+}
+
+IMPL_LINK(FillControl, SelectFillAttrHdl, ListBox *, pBox)
{
- XFillStyle eXFS = (XFillStyle)pLbFillType->GetSelectEntryPos();
- XFillStyleItem aXFillStyleItem( eXFS );
- sal_Bool bAction = pBox && !pLbFillAttr->IsTravelSelect();
+ if(!pBox) // only work with real calls from ListBox, do not accept direct calls with zeros here
+ {
+ return 0;
+ }
- SfxObjectShell* pSh = SfxObjectShell::Current();
- if ( bAction )
+ const bool bAction(
+ !mpLbFillAttr->IsTravelSelect() // keep TravelSelect, this means keyboard up/down in the list
+ && mpLbFillAttr->GetSelectEntryCount()
+ && mpLbFillAttr->GetSelectEntryPos() != mnLastFillAttrControlSelectEntryPos);
+
+ updateLastFillAttrControlSelectEntryPos();
+
+ if(bAction)
{
- Any a;
- Sequence< PropertyValue > aArgs( 1 );
+ SfxObjectShell* pSh = SfxObjectShell::Current();
- // First set the style
- aArgs[0].Name = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "FillStyle" ));
- aXFillStyleItem.QueryValue( a );
- aArgs[0].Value = a;
- ((SvxFillToolBoxControl*)GetData())->Dispatch(
- ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( ".uno:FillStyle" )), aArgs );
+ // Need to prepare the PropertyValue for the FillStyle dispatch action early,
+ // else the call for FillType to Dispatch(".uno:FillStyle") will already destroy the current state
+ // of selection in mpLbFillAttr again by calls to StateChanged which *will* set to no
+ // selection again (e.g. when two objects, same fill style, but different fill attributes)
+ Any a;
+ Sequence< PropertyValue > aArgsFillAttr(1);
+ ::rtl::OUString aFillAttrCommand;
+ XFillStyle eXFS(static_cast< XFillStyle >(mpLbFillType->GetSelectEntryPos()));
- switch( eXFS )
+ switch(eXFS)
{
case XFILL_NONE:
{
+ // handled in SelectFillTypeHdl, nothing to do here
+ break;
}
- break;
case XFILL_SOLID:
{
- // NEU
//Eintrag wird auf temporaere Farbe geprueft
- String aTmpStr = pLbFillAttr->GetSelectEntry();
- if( aTmpStr.GetChar(0) == TMP_STR_BEGIN && aTmpStr.GetChar(aTmpStr.Len()-1) == TMP_STR_END )
+ String aTmpStr = mpLbFillAttr->GetSelectEntry();
+
+ if(aTmpStr.GetChar(0) == TMP_STR_BEGIN && aTmpStr.GetChar(aTmpStr.Len() - 1) == TMP_STR_END)
{
- aTmpStr.Erase( aTmpStr.Len()-1, 1 );
- aTmpStr.Erase( 0, 1 );
+ aTmpStr.Erase(aTmpStr.Len() - 1,1);
+ aTmpStr.Erase(0,1);
}
- XFillColorItem aXFillColorItem( aTmpStr, pLbFillAttr->GetSelectEntryColor() );
-
- aArgs[0].Name = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "FillColor" ));
- aXFillColorItem.QueryValue( a );
- aArgs[0].Value = a;
- ((SvxFillToolBoxControl*)GetData())->Dispatch( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( ".uno:FillColor" )),
- aArgs );
+ XFillColorItem aXFillColorItem(aTmpStr,mpLbFillAttr->GetSelectEntryColor());
+ aArgsFillAttr[0].Name = ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("FillColor"));
+ aXFillColorItem.QueryValue(a);
+ aArgsFillAttr[0].Value = a;
+ aFillAttrCommand = ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM(".uno:FillColor"));
+ break;
}
- break;
case XFILL_GRADIENT:
{
- sal_uInt16 nPos = pLbFillAttr->GetSelectEntryPos();
+ sal_uInt16 nPos = mpLbFillAttr->GetSelectEntryPos();
- if ( nPos != LISTBOX_ENTRY_NOTFOUND && pSh && pSh->GetItem( SID_GRADIENT_LIST ) )
+ if(nPos != LISTBOX_ENTRY_NOTFOUND && pSh && pSh->GetItem(SID_GRADIENT_LIST))
{
- SvxGradientListItem aItem(
- *(const SvxGradientListItem*)( pSh->GetItem( SID_GRADIENT_LIST ) ) );
+ const SvxGradientListItem* pItem = static_cast< const SvxGradientListItem* >(pSh->GetItem(SID_GRADIENT_LIST));
- if ( nPos < aItem.GetGradientList()->Count() ) // kein temp. Eintrag ?
+ if(nPos < pItem->GetGradientList()->Count()) // kein temp. Eintrag ?
{
- XGradient aGradient = aItem.GetGradientList()->GetGradient( nPos )->GetGradient();
- XFillGradientItem aXFillGradientItem( pLbFillAttr->GetSelectEntry(), aGradient );
-
- aArgs[0].Name = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "FillGradient" ));
- aXFillGradientItem.QueryValue( a );
- aArgs[0].Value = a;
- ((SvxFillToolBoxControl*)GetData())->Dispatch( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( ".uno:FillGradient" )),
- aArgs );
+ XGradient aGradient = pItem->GetGradientList()->GetGradient(nPos)->GetGradient();
+ XFillGradientItem aXFillGradientItem(mpLbFillAttr->GetSelectEntry(),aGradient);
+ aArgsFillAttr[0].Name = ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("FillGradient"));
+ aXFillGradientItem.QueryValue(a);
+ aArgsFillAttr[0].Value = a;
+ aFillAttrCommand = ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM(".uno:FillGradient"));
}
}
+ break;
}
- break;
case XFILL_HATCH:
{
- sal_uInt16 nPos = pLbFillAttr->GetSelectEntryPos();
+ sal_uInt16 nPos = mpLbFillAttr->GetSelectEntryPos();
- if ( nPos != LISTBOX_ENTRY_NOTFOUND && pSh && pSh->GetItem( SID_HATCH_LIST ) )
+ if(nPos != LISTBOX_ENTRY_NOTFOUND && pSh && pSh->GetItem(SID_HATCH_LIST))
{
- SvxHatchListItem aItem( *(const SvxHatchListItem*)( pSh->GetItem( SID_HATCH_LIST ) ) );
+ const SvxHatchListItem* pItem = static_cast< const SvxHatchListItem* >(pSh->GetItem(SID_HATCH_LIST));
- if ( nPos < aItem.GetHatchList()->Count() ) // kein temp. Eintrag ?
+ if(nPos < pItem->GetHatchList()->Count()) // kein temp. Eintrag ?
{
- XHatch aHatch = aItem.GetHatchList()->GetHatch( nPos )->GetHatch();
- XFillHatchItem aXFillHatchItem( pLbFillAttr->GetSelectEntry(), aHatch );
-
- aArgs[0].Name = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "FillHatch" ));
- aXFillHatchItem.QueryValue( a );
- aArgs[0].Value = a;
- ((SvxFillToolBoxControl*)GetData())->Dispatch( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( ".uno:FillHatch" )),
- aArgs );
+ XHatch aHatch = pItem->GetHatchList()->GetHatch(nPos)->GetHatch();
+ XFillHatchItem aXFillHatchItem(mpLbFillAttr->GetSelectEntry(),aHatch);
+
+ aArgsFillAttr[0].Name = ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("FillHatch"));
+ aXFillHatchItem.QueryValue(a);
+ aArgsFillAttr[0].Value = a;
+ aFillAttrCommand = ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM(".uno:FillHatch"));
}
}
+ break;
}
- break;
case XFILL_BITMAP:
{
- sal_uInt16 nPos = pLbFillAttr->GetSelectEntryPos();
+ sal_uInt16 nPos = mpLbFillAttr->GetSelectEntryPos();
- if ( nPos != LISTBOX_ENTRY_NOTFOUND && pSh && pSh->GetItem( SID_BITMAP_LIST ) )
+ if(nPos != LISTBOX_ENTRY_NOTFOUND && pSh && pSh->GetItem(SID_BITMAP_LIST))
{
- SvxBitmapListItem aItem(
- *(const SvxBitmapListItem*)( pSh->GetItem( SID_BITMAP_LIST ) ) );
+ const SvxBitmapListItem* pItem = static_cast< const SvxBitmapListItem* >(pSh->GetItem(SID_BITMAP_LIST));
- if ( nPos < aItem.GetBitmapList()->Count() ) // kein temp. Eintrag ?
+ if(nPos < pItem->GetBitmapList()->Count()) // kein temp. Eintrag ?
{
- const XBitmapEntry* pXBitmapEntry = aItem.GetBitmapList()->GetBitmap(nPos);
- const XFillBitmapItem aXFillBitmapItem(pLbFillAttr->GetSelectEntry(), pXBitmapEntry->GetGraphicObject());
+ const XBitmapEntry* pXBitmapEntry = pItem->GetBitmapList()->GetBitmap(nPos);
+ const XFillBitmapItem aXFillBitmapItem(mpLbFillAttr->GetSelectEntry(),pXBitmapEntry->GetGraphicObject());
- aArgs[0].Name = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "FillBitmap" ));
- aXFillBitmapItem.QueryValue( a );
- aArgs[0].Value = a;
- ((SvxFillToolBoxControl*)GetData())->Dispatch(::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM(".uno:FillBitmap")), aArgs);
+ aArgsFillAttr[0].Name = ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("FillBitmap"));
+ aXFillBitmapItem.QueryValue(a);
+ aArgsFillAttr[0].Value = a;
+ aFillAttrCommand = ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM(".uno:FillBitmap"));
}
}
+ break;
}
- break;
}
- // release focus
- if ( pLbFillAttr->IsRelease() && pBox )
+ // this is the place where evtl. a new slot action may be introduced to avoid the
+ // two undo entries. Reason for this is that indeed two actions are executed, the fill style
+ // and the fill attribute change. The sidebar already handles both separately, so
+ // changing the fill style already changes the object and adds a default fill attribute for
+ // the newly choosen fill style.
+ // This control uses the older user's two-step action to select a fill style and a fill attribute. In
+ // this case a lot of things may go wrong (e.g. the user stops that action and does something
+ // different), thus the solution of the sidebar should be preferred from my POV in the future
+
+ // first set the fill style if changed
+ if(mbFillTypeChanged)
+ {
+ Sequence< PropertyValue > aArgsFillStyle(1);
+ XFillStyleItem aXFillStyleItem(eXFS);
+
+ aArgsFillStyle[0].Name = ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("FillStyle"));
+ aXFillStyleItem.QueryValue(a);
+ aArgsFillStyle[0].Value = a;
+ ((SvxFillToolBoxControl*)GetData())->Dispatch(::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM(".uno:FillStyle")), aArgsFillStyle);
+ mbFillTypeChanged = false;
+ }
+
+ // second set fill attribute when a change was detected and prepared
+ if(aFillAttrCommand.getLength())
+ {
+ ((SvxFillToolBoxControl*)GetData())->Dispatch(aFillAttrCommand, aArgsFillAttr);
+ }
+
+ // release focus. Needed to get focus automatically back to EditView
+ if(mpLbFillAttr->IsRelease() && pBox)
{
SfxViewShell* pViewShell = SfxViewShell::Current();
- if( pViewShell && pViewShell->GetWindow() )
+
+ if(pViewShell && pViewShell->GetWindow())
{
pViewShell->GetWindow()->GrabFocus();
}
@@ -795,31 +906,33 @@ void FillControl::Resize()
long nH = 180;
long nSep = 0; // war vorher 4
- pLbFillType->SetSizePixel( Size( nW * 2 - nSep, nH ) );
- pLbFillAttr->SetPosSizePixel( Point( nW * 2 + nSep, 0 ), Size( nW * 3 - nSep, nH ) );
+ mpLbFillType->SetSizePixel(Size(nW * 2 - nSep,nH));
+ mpLbFillAttr->SetPosSizePixel(Point(nW * 2 + nSep,0),Size(nW * 3 - nSep,nH));
}
-/* -----------------------------08.03.2002 15:04------------------------------
- ---------------------------------------------------------------------------*/
+//------------------------------------------------------------------------
-void FillControl::DataChanged( const DataChangedEvent& rDCEvt )
+void FillControl::DataChanged(const DataChangedEvent& rDCEvt)
{
- if ( (rDCEvt.GetType() == DATACHANGED_SETTINGS) &&
- (rDCEvt.GetFlags() & SETTINGS_STYLE) )
+ if((rDCEvt.GetType() == DATACHANGED_SETTINGS) &&
+ (rDCEvt.GetFlags() & SETTINGS_STYLE))
{
- Size aTypeSize(LogicToPixel(aLogicalFillSize, MAP_APPFONT));
- Size aAttrSize(LogicToPixel(aLogicalAttrSize, MAP_APPFONT));
- pLbFillType->SetSizePixel(aTypeSize);
- pLbFillAttr->SetSizePixel(aAttrSize);
+ Size aTypeSize(LogicToPixel(maLogicalFillSize,MAP_APPFONT));
+ Size aAttrSize(LogicToPixel(maLogicalAttrSize,MAP_APPFONT));
+ mpLbFillType->SetSizePixel(aTypeSize);
+ mpLbFillAttr->SetSizePixel(aAttrSize);
+
//to get the base height
- aTypeSize = pLbFillType->GetSizePixel();
- aAttrSize = pLbFillAttr->GetSizePixel();
- Point aAttrPnt = pLbFillAttr->GetPosPixel();
+ aTypeSize = mpLbFillType->GetSizePixel();
+ aAttrSize = mpLbFillAttr->GetSizePixel();
+ Point aAttrPnt = mpLbFillAttr->GetPosPixel();
SetSizePixel(
- Size( aAttrPnt.X() + aAttrSize.Width(),
- Max( aAttrSize.Height(), aTypeSize.Height() ) ) );
+ Size(aAttrPnt.X() + aAttrSize.Width(),
+ Max(aAttrSize.Height(),aTypeSize.Height())));
}
- Window::DataChanged( rDCEvt );
+ Window::DataChanged(rDCEvt);
}
+//------------------------------------------------------------------------
+//eof
diff --git a/svx/source/tbxctrls/tbxcolorupdate.cxx b/svx/source/tbxctrls/tbxcolorupdate.cxx
index d909b4387485..21257d9956b2 100644
--- a/svx/source/tbxctrls/tbxcolorupdate.cxx
+++ b/svx/source/tbxctrls/tbxcolorupdate.cxx
@@ -109,7 +109,19 @@ namespace svx
else
pBmpAcc->SetLineColor( Color( COL_BLACK ) );
- pBmpAcc->SetFillColor( maCurColor = aColor );
+ // use not only COL_TRANSPARENT for detection of transparence,
+ // but the method/way which is designed to do that
+ const bool bIsTransparent(0xff == aColor.GetTransparency());
+ maCurColor = aColor;
+
+ if(bIsTransparent)
+ {
+ pBmpAcc->SetFillColor();
+ }
+ else
+ {
+ pBmpAcc->SetFillColor(maCurColor);
+ }
if( TBX_UPDATER_MODE_CHAR_COLOR_NEW == mnDrawMode || TBX_UPDATER_MODE_NONE == mnDrawMode )
{
@@ -146,7 +158,7 @@ namespace svx
if( pMskAcc )
{
- if( COL_TRANSPARENT == aColor.GetColor() )
+ if( bIsTransparent )
{
pMskAcc->SetLineColor( COL_BLACK );
pMskAcc->SetFillColor( COL_WHITE );
diff --git a/svx/source/unodialogs/textconversiondlgs/chinese_translationdialog.cxx b/svx/source/unodialogs/textconversiondlgs/chinese_translationdialog.cxx
index 20a12ae41efd..a5982bfbfc50 100644
--- a/svx/source/unodialogs/textconversiondlgs/chinese_translationdialog.cxx
+++ b/svx/source/unodialogs/textconversiondlgs/chinese_translationdialog.cxx
@@ -85,7 +85,7 @@ ChineseTranslationDialog::ChineseTranslationDialog( Window* pParent )
if( aAny >>= bValue )
m_aCB_Use_Variants.Check( bValue );
- // #117820# (search for other occurences!)
+ // #117820# (search for other occurrences!)
// disable and hide that checkbox until it is decided if it is needed or not.
// If it is to be removed later the respective code needs to be removed as
// well, otherwise we just have to remove the next lines again.
@@ -127,7 +127,7 @@ void ChineseTranslationDialog::getSettings( sal_Bool& rbDirectionToSimplified
void ChineseTranslationDialog::impl_UpdateVariantsCheckBox()
{
-// #117820# (search for other occurences!)
+// #117820# (search for other occurrences!)
// m_aCB_Use_Variants.Enable( m_aRB_To_Traditional.IsChecked() );
}
@@ -139,7 +139,7 @@ IMPL_LINK( ChineseTranslationDialog, DirectionHdl, void*, EMPTYARG )
IMPL_LINK( ChineseTranslationDialog, CommonTermsHdl, void*, EMPTYARG )
{
-// #117820# (search for other occurences!)
+// #117820# (search for other occurrences!)
// if( m_aCB_Translate_Commonterms.IsChecked() && m_aRB_To_Traditional.IsChecked() )
// m_aCB_Use_Variants.Check( true );
return 0;
diff --git a/svx/source/unodraw/unobrushitemhelper.cxx b/svx/source/unodraw/unobrushitemhelper.cxx
new file mode 100644
index 000000000000..ff83649a4078
--- /dev/null
+++ b/svx/source/unodraw/unobrushitemhelper.cxx
@@ -0,0 +1,342 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_svx.hxx"
+
+#include <svx/unobrushitemhelper.hxx>
+#include <svx/xfillit0.hxx>
+#include <svx/xbtmpit.hxx>
+#include <svx/xgrscit.hxx>
+#include <svx/xflbmtit.hxx>
+#include <svx/xflbmpit.hxx>
+#include <svx/xflbmsxy.hxx>
+#include <svx/xflbmsxy.hxx>
+#include <svx/xflftrit.hxx>
+#include <svx/xsflclit.hxx>
+#include <svx/xflbmsli.hxx>
+#include <svx/xflbtoxy.hxx>
+#include <svx/xflbstit.hxx>
+#include <svx/xflboxy.hxx>
+#include <svx/xflbckit.hxx>
+#include <svx/xflclit.hxx>
+#include <svx/xfltrit.hxx>
+#include <svx/xflhtit.hxx>
+#include <svx/unoshape.hxx>
+
+//UUUU
+void setSvxBrushItemAsFillAttributesToTargetSet(const SvxBrushItem& rBrush, SfxItemSet& rToSet)
+{
+ // Clear all items from the DrawingLayer FillStyle range (if we have any). All
+ // items that need to be set will be set as hard attributes
+ for(sal_uInt16 a(XATTR_FILL_FIRST); rToSet.Count() && a < XATTR_FILL_LAST; a++)
+ {
+ rToSet.ClearItem(a);
+ }
+
+ const sal_uInt8 nTransparency(rBrush.GetColor().GetTransparency());
+
+ if(0xff != nTransparency)
+ {
+ // we have a color fill
+ const Color aColor(rBrush.GetColor().GetRGBColor());
+
+ rToSet.Put(XFillStyleItem(XFILL_SOLID));
+ rToSet.Put(XFillColorItem(String(), aColor));
+
+ // #125189# nTransparency is in range [0..254], convert to [0..100] which is used in
+ // XFillTransparenceItem (caution with the range which is in an *item-specific* range)
+ rToSet.Put(XFillTransparenceItem((((sal_Int32)nTransparency * 100) + 127) / 254));
+ }
+ else if(GPOS_NONE != rBrush.GetGraphicPos())
+ {
+ // we have a graphic fill, set fill style
+ rToSet.Put(XFillStyleItem(XFILL_BITMAP));
+
+ // set graphic (if available)
+ const Graphic* pGraphic = rBrush.GetGraphic();
+
+ if(pGraphic)
+ {
+ rToSet.Put(XFillBitmapItem(String(), *pGraphic));
+ }
+ else
+ {
+ OSL_ENSURE(false, "Could not get Graphic from SvxBrushItem (!)");
+ }
+
+ if(GPOS_AREA == rBrush.GetGraphicPos())
+ {
+ // stretch, also means no tile (both items are defaulted to true)
+ rToSet.Put(XFillBmpStretchItem(true));
+ rToSet.Put(XFillBmpTileItem(false));
+
+ // default for strech is also top-left, but this will not be visible
+ rToSet.Put(XFillBmpPosItem(RP_LT));
+ }
+ else if(GPOS_TILED == rBrush.GetGraphicPos())
+ {
+ // tiled, also means no stretch (both items are defaulted to true)
+ rToSet.Put(XFillBmpStretchItem(false));
+ rToSet.Put(XFillBmpTileItem(true));
+
+ // default for tiled is top-left
+ rToSet.Put(XFillBmpPosItem(RP_LT));
+ }
+ else
+ {
+ // everything else means no tile and no stretch
+ rToSet.Put(XFillBmpStretchItem(false));
+ rToSet.Put(XFillBmpTileItem(false));
+
+ RECT_POINT aRectPoint(RP_MM);
+
+ switch(rBrush.GetGraphicPos())
+ {
+ case GPOS_LT: aRectPoint = RP_LT; break;
+ case GPOS_MT: aRectPoint = RP_MT; break;
+ case GPOS_RT: aRectPoint = RP_RT; break;
+ case GPOS_LM: aRectPoint = RP_LM; break;
+ case GPOS_MM: aRectPoint = RP_MM; break;
+ case GPOS_RM: aRectPoint = RP_RM; break;
+ case GPOS_LB: aRectPoint = RP_LB; break;
+ case GPOS_MB: aRectPoint = RP_MB; break;
+ case GPOS_RB: aRectPoint = RP_RB; break;
+ default: break; // GPOS_NONE, GPOS_AREA and GPOS_TILED already handled
+ }
+
+ rToSet.Put(XFillBmpPosItem(aRectPoint));
+ }
+
+ // check for graphic's transparency
+ const sal_Int8 nGraphicTransparency(rBrush.getGraphicTransparency());
+
+ if(0 != nGraphicTransparency)
+ {
+ // nGraphicTransparency is in range [0..100]
+ rToSet.Put(XFillTransparenceItem(nGraphicTransparency));
+ }
+ }
+ else
+ {
+ // GPOS_NONE == rBrush.GetGraphicPos() && 0xff == rBrush.GetColor().GetTransparency(),
+ // still need to rescue the color used. There are sequences used on the UNO API at
+ // import time (OLE. e.g. chart) which first set RGB color (MID_BACK_COLOR_R_G_B,
+ // color stays transparent) and then set transparency (MID_BACK_COLOR_TRANSPARENCY)
+ // to zero later. When not saving the color, it will be lost.
+ // Also need to set the FillStyle to NONE to express the 0xff transparency flag; this
+ // is needed when e.g. first transparency is set to 0xff and then a Graphic gets set.
+ // When not changing the FillStyle, the next getSvxBrushItemFromSourceSet *will* return
+ // to XFILL_SOLID with the rescued color.
+ const Color aColor(rBrush.GetColor().GetRGBColor());
+
+ rToSet.Put(XFillStyleItem(XFILL_NONE));
+ rToSet.Put(XFillColorItem(String(), aColor));
+ }
+}
+
+//UUUU
+sal_uInt16 getTransparenceForSvxBrushItem(const SfxItemSet& rSourceSet, sal_Bool bSearchInParents)
+{
+ sal_uInt16 nFillTransparence(static_cast< const XFillTransparenceItem& >(rSourceSet.Get(XATTR_FILLTRANSPARENCE, bSearchInParents)).GetValue());
+ const SfxPoolItem* pGradientItem = 0;
+
+ if(SFX_ITEM_SET == rSourceSet.GetItemState(XATTR_FILLFLOATTRANSPARENCE, bSearchInParents, &pGradientItem)
+ && static_cast< const XFillFloatTransparenceItem* >(pGradientItem)->IsEnabled())
+ {
+ const XGradient& rGradient = static_cast< const XFillFloatTransparenceItem* >(pGradientItem)->GetGradientValue();
+ const sal_uInt16 nStartLuminance(rGradient.GetStartColor().GetLuminance());
+ const sal_uInt16 nEndLuminance(rGradient.GetEndColor().GetLuminance());
+
+ // luminance is [0..255], transparence needs to be in [0..100].Maximum is 51200, thus sal_uInt16 is okay to use
+ nFillTransparence = static_cast< sal_uInt16 >(((nStartLuminance + nEndLuminance) * 100) / 512);
+ }
+
+ return nFillTransparence;
+}
+
+//UUUU
+SvxBrushItem getSvxBrushItemForSolid(const SfxItemSet& rSourceSet, sal_Bool bSearchInParents, sal_uInt16 nBackgroundID)
+{
+ Color aFillColor(static_cast< const XFillColorItem& >(rSourceSet.Get(XATTR_FILLCOLOR, bSearchInParents)).GetColorValue());
+
+ // get evtl. mixed transparence
+ const sal_uInt16 nFillTransparence(getTransparenceForSvxBrushItem(rSourceSet, bSearchInParents));
+
+ if(0 != nFillTransparence)
+ {
+ // #i125189# nFillTransparence is in range [0..100] and needs to be in [0..254] unsigned
+ // It is necessary to use the maximum of 0xfe for transparence for the SvxBrushItem
+ // since the oxff value is used for special purposes (like no fill and derive from parent)
+ const sal_uInt8 aTargetTrans(std::min(sal_uInt8(0xfe), static_cast< sal_uInt8 >((nFillTransparence * 254) / 100)));
+
+ aFillColor.SetTransparency(aTargetTrans);
+ }
+
+ return SvxBrushItem(aFillColor, nBackgroundID);
+}
+
+//UUUU
+SvxBrushItem getSvxBrushItemFromSourceSet(const SfxItemSet& rSourceSet, sal_uInt16 nBackgroundID, sal_Bool bSearchInParents)
+{
+ const XFillStyleItem* pXFillStyleItem(static_cast< const XFillStyleItem* >(rSourceSet.GetItem(XATTR_FILLSTYLE, bSearchInParents)));
+
+ if(!pXFillStyleItem || XFILL_NONE == pXFillStyleItem->GetValue())
+ {
+ // no fill, still need to rescue the evtl. set RGB color, but use as transparent color (we have XFILL_NONE)
+ Color aFillColor(static_cast< const XFillColorItem& >(rSourceSet.Get(XATTR_FILLCOLOR, bSearchInParents)).GetColorValue());
+ aFillColor.SetTransparency(0xff);
+
+ return SvxBrushItem(aFillColor, nBackgroundID);
+ }
+
+ SvxBrushItem aRetval(nBackgroundID);
+
+ switch(pXFillStyleItem->GetValue())
+ {
+ case XFILL_NONE:
+ {
+ // already handled above, can not happen again
+ break;
+ }
+ case XFILL_SOLID:
+ {
+ // create SvxBrushItem with fill color
+ aRetval = getSvxBrushItemForSolid(rSourceSet, bSearchInParents, nBackgroundID);
+ break;
+ }
+ case XFILL_GRADIENT:
+ {
+ // cannot be directly supported, but do the best possible
+ const XGradient aXGradient(static_cast< const XFillGradientItem& >(rSourceSet.Get(XATTR_FILLGRADIENT)).GetGradientValue());
+ const basegfx::BColor aStartColor(aXGradient.GetStartColor().getBColor() * (aXGradient.GetStartIntens() * 0.01));
+ const basegfx::BColor aEndColor(aXGradient.GetEndColor().getBColor() * (aXGradient.GetEndIntens() * 0.01));
+
+ // use half/half mixed color from gradient start and end
+ Color aMixedColor((aStartColor + aEndColor) * 0.5);
+
+ // get evtl. mixed transparence
+ const sal_uInt16 nFillTransparence(getTransparenceForSvxBrushItem(rSourceSet, bSearchInParents));
+
+ if(0 != nFillTransparence)
+ {
+ // #i125189# nFillTransparence is in range [0..100] and needs to be in [0..254] unsigned
+ // It is necessary to use the maximum of 0xfe for transparence for the SvxBrushItem
+ // since the oxff value is used for special purposes (like no fill and derive from parent)
+ const sal_uInt8 aTargetTrans(std::min(sal_uInt8(0xfe), static_cast< sal_uInt8 >((nFillTransparence * 254) / 100)));
+
+ aMixedColor.SetTransparency(aTargetTrans);
+ }
+
+ aRetval = SvxBrushItem(aMixedColor, nBackgroundID);
+ break;
+ }
+ case XFILL_HATCH:
+ {
+ // cannot be directly supported, but do the best possible
+ const XHatch& rHatch(static_cast< const XFillHatchItem& >(rSourceSet.Get(XATTR_FILLHATCH)).GetHatchValue());
+ const bool bFillBackground(static_cast< const XFillBackgroundItem& >(rSourceSet.Get(XATTR_FILLBACKGROUND)).GetValue());
+
+ if(bFillBackground)
+ {
+ // hatch is background-filled, use FillColor as if XFILL_SOLID
+ aRetval = getSvxBrushItemForSolid(rSourceSet, bSearchInParents, nBackgroundID);
+ }
+ else
+ {
+ // hatch is not background-filled and using hatch color would be too dark; compensate
+ // somewhat by making it more transparent
+ Color aHatchColor(rHatch.GetColor());
+
+ // get evtl. mixed transparence
+ sal_uInt16 nFillTransparence(getTransparenceForSvxBrushItem(rSourceSet, bSearchInParents));
+
+ // take half orig transparence, add half transparent, clamp result
+ nFillTransparence = basegfx::clamp((sal_uInt16)((nFillTransparence / 2) + 50), (sal_uInt16)0, (sal_uInt16)255);
+
+ // #i125189# nFillTransparence is in range [0..100] and needs to be in [0..254] unsigned
+ // It is necessary to use the maximum of 0xfe for transparence for the SvxBrushItem
+ // since the oxff value is used for special purposes (like no fill and derive from parent)
+ const sal_uInt8 aTargetTrans(std::min(sal_uInt8(0xfe), static_cast< sal_uInt8 >((nFillTransparence * 254) / 100)));
+
+ aHatchColor.SetTransparency(aTargetTrans);
+ aRetval = SvxBrushItem(aHatchColor, nBackgroundID);
+ }
+
+ break;
+ }
+ case XFILL_BITMAP:
+ {
+ // create SvxBrushItem with bitmap info and flags
+ const XFillBitmapItem& rBmpItm = static_cast< const XFillBitmapItem& >(rSourceSet.Get(XATTR_FILLBITMAP, bSearchInParents));
+ const Graphic aGraphic(rBmpItm.GetGraphicObject().GetGraphic());
+
+ // continue idependent of evtl. GRAPHIC_NONE as aGraphic.GetType(), we still need to rescue positions
+ SvxGraphicPosition aSvxGraphicPosition(GPOS_NONE);
+ const XFillBmpStretchItem& rStretchItem = static_cast< const XFillBmpStretchItem& >(rSourceSet.Get(XATTR_FILLBMP_STRETCH, bSearchInParents));
+ const XFillBmpTileItem& rTileItem = static_cast< const XFillBmpTileItem& >(rSourceSet.Get(XATTR_FILLBMP_TILE, bSearchInParents));
+
+ if(rTileItem.GetValue())
+ {
+ aSvxGraphicPosition = GPOS_TILED;
+ }
+ else if(rStretchItem.GetValue())
+ {
+ aSvxGraphicPosition = GPOS_AREA;
+ }
+ else
+ {
+ const XFillBmpPosItem& rPosItem = static_cast< const XFillBmpPosItem& >(rSourceSet.Get(XATTR_FILLBMP_POS, bSearchInParents));
+
+ switch(rPosItem.GetValue())
+ {
+ case RP_LT: aSvxGraphicPosition = GPOS_LT; break;
+ case RP_MT: aSvxGraphicPosition = GPOS_MT; break;
+ case RP_RT: aSvxGraphicPosition = GPOS_RT; break;
+ case RP_LM: aSvxGraphicPosition = GPOS_LM; break;
+ case RP_MM: aSvxGraphicPosition = GPOS_MM; break;
+ case RP_RM: aSvxGraphicPosition = GPOS_RM; break;
+ case RP_LB: aSvxGraphicPosition = GPOS_LB; break;
+ case RP_MB: aSvxGraphicPosition = GPOS_MB; break;
+ case RP_RB: aSvxGraphicPosition = GPOS_RB; break;
+ }
+ }
+
+ // create with given graphic and position
+ aRetval = SvxBrushItem(aGraphic, aSvxGraphicPosition, nBackgroundID);
+
+ // get evtl. mixed transparence
+ const sal_uInt16 nFillTransparence(getTransparenceForSvxBrushItem(rSourceSet, bSearchInParents));
+
+ if(0 != nFillTransparence)
+ {
+ // #i125189# nFillTransparence is in range [0..100] and needs to be in [0..100] signed
+ aRetval.setGraphicTransparency(static_cast< sal_Int8 >(nFillTransparence));
+ }
+
+ break;
+ }
+ }
+
+ return aRetval;
+}
+
+//eof
diff --git a/svx/source/unodraw/unopage.cxx b/svx/source/unodraw/unopage.cxx
index 03e4801f5be2..51ebdb715207 100644
--- a/svx/source/unodraw/unopage.cxx
+++ b/svx/source/unodraw/unopage.cxx
@@ -222,7 +222,7 @@ void SvxDrawPage::dispose()
::com::sun::star::document::EventObject aEvt;
aEvt.Source = xSource;
// inform all listeners to release this object
- // The listener container are automaticly cleared
+ // The listener container are automatically cleared
mrBHelper.aLC.disposeAndClear( aEvt );
// notify subclasses to do their dispose
disposing();
diff --git a/svx/source/unodraw/unoshcol.cxx b/svx/source/unodraw/unoshcol.cxx
index 3378c78c0e89..0bfaa64c2a07 100644
--- a/svx/source/unodraw/unoshcol.cxx
+++ b/svx/source/unodraw/unoshcol.cxx
@@ -129,7 +129,7 @@ void SvxShapeCollection::dispose()
document::EventObject aEvt;
aEvt.Source = xSource;
// inform all listeners to release this object
- // The listener container are automaticly cleared
+ // The listener container are automatically cleared
mrBHelper.aLC.disposeAndClear( aEvt );
// notify subclasses to do their dispose
disposing();
diff --git a/svx/source/xml/xmleohlp.cxx b/svx/source/xml/xmleohlp.cxx
index b16249e5d51f..98d253fb28a6 100644
--- a/svx/source/xml/xmleohlp.cxx
+++ b/svx/source/xml/xmleohlp.cxx
@@ -415,7 +415,7 @@ sal_Bool SvXMLEmbeddedObjectHelper::ImplReadObject(
if( xDocStor != xCntnrStor || pTemp || bDuplicate )
{
- // TODO/LATER: make this alltogether a method in the EmbeddedObjectContainer
+ // TODO/LATER: make this altogether a method in the EmbeddedObjectContainer
// create a unique name for the duplicate object
if( bDuplicate )
diff --git a/sw/Library_sw.mk b/sw/Library_sw.mk
index 06394ebde3c0..ebda1cb86ffb 100644
--- a/sw/Library_sw.mk
+++ b/sw/Library_sw.mk
@@ -281,7 +281,6 @@ $(eval $(call gb_Library_add_exception_objects,sw,\
sw/source/core/layout/anchoreddrawobject \
sw/source/core/layout/anchoredobject \
sw/source/core/layout/atrfrm \
- sw/source/core/layout/fillattributes \
sw/source/core/layout/calcmove \
sw/source/core/layout/colfrm \
sw/source/core/layout/dbg_lay \
@@ -450,7 +449,6 @@ $(eval $(call gb_Library_add_exception_objects,sw,\
sw/source/core/unocore/unoport \
sw/source/core/unocore/unoportenum \
sw/source/core/unocore/unoprnms \
- sw/source/core/unocore/unobrushitemhelper \
sw/source/core/unocore/unoredline \
sw/source/core/unocore/unoredlines \
sw/source/core/unocore/unorefmk \
diff --git a/sw/inc/IDocumentDrawModelAccess.hxx b/sw/inc/IDocumentDrawModelAccess.hxx
index 902f3be5f950..bad329c9cf50 100644
--- a/sw/inc/IDocumentDrawModelAccess.hxx
+++ b/sw/inc/IDocumentDrawModelAccess.hxx
@@ -26,7 +26,7 @@
#include <svx/svdtypes.hxx>
-class FmFormModel;
+class SwDrawModel;
class SdrPageView;
/** IDocumentDrawModelAccess
@@ -37,10 +37,10 @@ public:
/** Draw Model and id accessors
*/
- virtual const FmFormModel* GetDrawModel() const = 0;
- virtual FmFormModel* GetDrawModel() = 0;
- virtual FmFormModel* _MakeDrawModel() = 0;
- virtual FmFormModel* GetOrCreateDrawModel() = 0;
+ virtual const SwDrawModel* GetDrawModel() const = 0;
+ virtual SwDrawModel* GetDrawModel() = 0;
+ virtual SwDrawModel* _MakeDrawModel() = 0;
+ virtual SwDrawModel* GetOrCreateDrawModel() = 0;
virtual SdrLayerID GetHeavenId() const = 0;
virtual SdrLayerID GetHellId() const = 0;
virtual SdrLayerID GetControlsId() const = 0;
diff --git a/sw/inc/IDocumentMarkAccess.hxx b/sw/inc/IDocumentMarkAccess.hxx
index 005799982626..a16a861c311a 100644
--- a/sw/inc/IDocumentMarkAccess.hxx
+++ b/sw/inc/IDocumentMarkAccess.hxx
@@ -250,11 +250,6 @@ class IDocumentMarkAccess
virtual ::sw::mark::IFieldmark* getFieldmarkBefore(const SwPosition& pos) const =0;
virtual ::sw::mark::IFieldmark* getFieldmarkAfter(const SwPosition& pos) const =0;
- // Marks exclusive annotation marks
- virtual const_iterator_t getCommonMarksBegin() const = 0;
- virtual const_iterator_t getCommonMarksEnd() const = 0;
- virtual sal_Int32 getCommonMarksCount() const = 0;
-
// Annotation Marks
virtual const_iterator_t getAnnotationMarksBegin() const = 0;
virtual const_iterator_t getAnnotationMarksEnd() const = 0;
diff --git a/sw/inc/IInterface.hxx b/sw/inc/IInterface.hxx
index 780dfae21861..6b3bf52aed3e 100644
--- a/sw/inc/IInterface.hxx
+++ b/sw/inc/IInterface.hxx
@@ -32,7 +32,7 @@
{
public:
- /** Aquire a reference to an instance. A caller shall release
+ /** Acquire a reference to an instance. A caller shall release
the instance by calling 'release' when it is no longer needed.
'acquire' and 'release' calls need to be balanced.
@@ -42,7 +42,7 @@
virtual sal_Int32 acquire() = 0;
/** Releases a reference to an instance. A caller has to call
- 'release' when a before aquired reference to an instance
+ 'release' when a before acquired reference to an instance
is no longer needed. 'acquire' and 'release' calls need to
be balanced.
diff --git a/sw/inc/SwNumberTree.hxx b/sw/inc/SwNumberTree.hxx
index 61aa457dbe0c..2f81cf42caf1 100644
--- a/sw/inc/SwNumberTree.hxx
+++ b/sw/inc/SwNumberTree.hxx
@@ -457,7 +457,7 @@ protected:
mutable SwNumberTree::tSwNumTreeNumber mnNumber;
// --> OD 2008-11-26 #158694#
- // boolean indicating, that a node of a not counted parent node is continueing
+ // boolean indicating, that a node of a not counted parent node is continuing
// the numbering of parent's previous node sub tree.
// Example:
// 1. kshdkjfs
@@ -508,7 +508,7 @@ protected:
/**
Invalidates a child.
- Calls SetLastValid for the preceeding sibling of the child and
+ Calls SetLastValid for the preceding sibling of the child and
notifies all invalid children.
@param pChild the child to invalidate
@@ -544,7 +544,7 @@ protected:
@param aItLastValid iterator pointing to the new last valid child
@param bValidating - true always set the last valid node to
aItLastValid
- - false only set if aItLastValid is preceeding
+ - false only set if aItLastValid is preceding
the current last valid node
*/
void SetLastValid(tSwNumberTreeChildren::const_iterator aItLastValid,
diff --git a/sw/inc/accmap.hxx b/sw/inc/accmap.hxx
index be5911f78972..9f468d8339d0 100644
--- a/sw/inc/accmap.hxx
+++ b/sw/inc/accmap.hxx
@@ -128,7 +128,7 @@ class SwAccessibleMap : public ::accessibility::IAccessibleViewForwarder,
//mpSelectedFrmMap contains the old selected objects.
SwAccessibleContextMap_Impl *mpSeletedFrmMap;
- //IvalidateShapeInParaSelection() method is reponsible for the updating the selected states of the objects.
+ //IvalidateShapeInParaSelection() method is responsible for the updating the selected states of the objects.
void InvalidateShapeInParaSelection();
void _InvalidateRelationSet( const SwFrm* pFrm, sal_Bool bFrom );
diff --git a/sw/inc/cmdid.h b/sw/inc/cmdid.h
index 593d353a955d..e9ffd3f787f7 100644
--- a/sw/inc/cmdid.h
+++ b/sw/inc/cmdid.h
@@ -815,24 +815,6 @@ Achtung: Ab sofort sind in diesem File keine C++-Kommentare (//) mehr
#define FN_UNO_FOOTER (FN_EXTRA2 + 38)
#define FN_UNO_FOOTER_LEFT (FN_EXTRA2 + 39)
#define FN_UNO_FOOTER_RIGHT (FN_EXTRA2 + 40)
-#define FN_UNO_HEADER_BACKGROUND (FN_EXTRA2 + 41)
-#define FN_UNO_HEADER_BOX (FN_EXTRA2 + 42)
-#define FN_UNO_HEADER_LR_SPACE (FN_EXTRA2 + 43)
-#define FN_UNO_HEADER_SHADOW (FN_EXTRA2 + 44)
-#define FN_UNO_FOOTER_BACKGROUND (FN_EXTRA2 + 45)
-#define FN_UNO_FOOTER_BOX (FN_EXTRA2 + 46)
-#define FN_UNO_FOOTER_LR_SPACE (FN_EXTRA2 + 47)
-#define FN_UNO_FOOTER_SHADOW (FN_EXTRA2 + 48)
-#define FN_UNO_HEADER_BODY_DISTANCE (FN_EXTRA2 + 49)
-#define FN_UNO_HEADER_IS_DYNAMIC_DISTANCE (FN_EXTRA2 + 50)
-#define FN_UNO_FOOTER_BODY_DISTANCE (FN_EXTRA2 + 51)
-#define FN_UNO_FOOTER_IS_DYNAMIC_DISTANCE (FN_EXTRA2 + 52)
-#define FN_UNO_HEADER_SHARE_CONTENT (FN_EXTRA2 + 53)
-#define FN_UNO_FOOTER_SHARE_CONTENT (FN_EXTRA2 + 54)
-#define FN_UNO_HEADER_HEIGHT (FN_EXTRA2 + 55)
-#define FN_UNO_FOOTER_HEIGHT (FN_EXTRA2 + 56)
-#define FN_UNO_HEADER_ON (FN_EXTRA2 + 57)
-#define FN_UNO_FOOTER_ON (FN_EXTRA2 + 58)
#define FN_UNO_FOLLOW_STYLE (FN_EXTRA2 + 59)
#define FN_API_CALL (FN_EXTRA2 + 60)
@@ -871,8 +853,6 @@ Achtung: Ab sofort sind in diesem File keine C++-Kommentare (//) mehr
#define FN_NEW_GLOSSARY (FN_EXTRA2 + 90)
#define FN_SET_ACT_GLOSSARY (FN_EXTRA2 + 91)
-#define FN_UNO_HEADER_EAT_SPACING (FN_EXTRA2 + 92)
-#define FN_UNO_FOOTER_EAT_SPACING (FN_EXTRA2 + 93)
#define FN_UNO_CHARFMT_SEQUENCE (FN_EXTRA2 + 94)
#define FN_UNO_CLSID (FN_EXTRA2 + 95)
#define FN_UNO_MODEL (FN_EXTRA2 + 96)
diff --git a/sw/inc/doc.hxx b/sw/inc/doc.hxx
index 0e67b0df4f74..77efddaf7de7 100644
--- a/sw/inc/doc.hxx
+++ b/sw/inc/doc.hxx
@@ -103,7 +103,7 @@ class Outliner;
class OutputDevice;
class Point;
class SbxArray;
-class SdrModel;
+class SwDrawModel;
class SdrObject;
class SdrUndoAction;
class VirtualDevice;
@@ -327,7 +327,7 @@ class SW_DLLPUBLIC SwDoc :
ViewShell *pCurrentView; // SwDoc should get a new member pCurrentView//swmod 071225
boost::shared_ptr<SwRootFrm> pLayoutPtr;
- FmFormModel* pDrawModel; // StarView Drawing
+ SwDrawModel* pDrawModel; // StarView Drawing
SwDocUpdtFld *pUpdtFlds; // Struktur zum Field-Update
SwFldTypes *pFldTypes; // Feldtypen
@@ -957,8 +957,8 @@ public:
/** IDocumentDrawModelAccess
*/
- virtual const FmFormModel* GetDrawModel() const;
- virtual FmFormModel* GetDrawModel();
+ virtual const SwDrawModel* GetDrawModel() const;
+ virtual SwDrawModel* GetDrawModel();
virtual SdrLayerID GetHeavenId() const;
virtual SdrLayerID GetHellId() const;
virtual SdrLayerID GetControlsId() const;
@@ -969,8 +969,8 @@ public:
virtual bool IsVisibleLayerId( const SdrLayerID& _nLayerId ) const;
virtual SdrLayerID GetVisibleLayerIdByInvisibleOne( const SdrLayerID& _nInvisibleLayerId );
virtual SdrLayerID GetInvisibleLayerIdByVisibleOne( const SdrLayerID& _nVisibleLayerId );
- virtual FmFormModel* _MakeDrawModel();
- virtual FmFormModel* GetOrCreateDrawModel();
+ virtual SwDrawModel* _MakeDrawModel();
+ virtual SwDrawModel* GetOrCreateDrawModel();
/** IDocumentLayoutAccess
*/
@@ -1310,7 +1310,7 @@ public:
sal_Bool bBroadcast = sal_False);
void DelTxtFmtColl(sal_uInt16 nFmt, sal_Bool bBroadcast = sal_False);
void DelTxtFmtColl( SwTxtFmtColl* pColl, sal_Bool bBroadcast = sal_False );
- // --> OD 2007-11-06 #i62675#
+
// Add 4th optional parameter <bResetListAttrs>.
// 'side effect' of <SetTxtFmtColl> with <bReset = true> is that the hard
// attributes of the affected text nodes are cleared, except the break
@@ -1318,10 +1318,12 @@ public:
// The new parameter <bResetListAttrs> indicates, if the list attributes
// (list style, restart at and restart with) are cleared as well in case
// that <bReset = true> and the paragraph style has a list style attribute set.
- sal_Bool SetTxtFmtColl( const SwPaM &rRg, SwTxtFmtColl *pFmt,
- bool bReset = true,
- bool bResetListAttrs = false );
- // <--
+ sal_Bool SetTxtFmtColl(
+ const SwPaM &rRg,
+ SwTxtFmtColl *pFmt,
+ const bool bReset = true,
+ const bool bResetListAttrs = false );
+
SwTxtFmtColl* FindTxtFmtCollByName( const String& rName ) const
{ return (SwTxtFmtColl*)FindFmtByName( (SvPtrarr&)*pTxtFmtCollTbl, rName ); }
diff --git a/sw/inc/docsh.hxx b/sw/inc/docsh.hxx
index ecb5841b4882..eed3aeb9dcc0 100644
--- a/sw/inc/docsh.hxx
+++ b/sw/inc/docsh.hxx
@@ -55,30 +55,37 @@ class IDocumentDeviceAccess;
class IDocumentSettingAccess;
class IDocumentTimerAccess;
class IDocumentChartDataProviderAccess;
+class SwDocShell;
+class SwDrawModel;
+// initialize DrawModel (in form of a SwDrawModel) and DocShell (in form of a SwDocShell)
+// as needed, one or both parameters may be zero
+void SW_DLLPRIVATE InitDrawModelAndDocShell(SwDocShell* pSwDocShell, SwDrawModel* pSwDrawModel);
class SW_DLLPUBLIC SwDocShell: public SfxObjectShell, public SfxListener
{
- SwDoc* pDoc; // Document
- rtl::Reference< SfxStyleSheetBasePool > mxBasePool; // Durchreiche fuer Formate
- FontList* pFontList; // aktuelle FontListe
+ SwDoc* mpDoc; // Document
+
+ rtl::Reference< SfxStyleSheetBasePool > mxBasePool; // Durchreiche fuer Formate
+
+ FontList* mpFontList; // aktuelle FontListe
+ bool mbInUpdateFontList; //prevent nested calls of UpdateFontList
// Nix geht ohne die WrtShell (historische Gruende)
// RuekwaertsPointer auf die View (historische Gruende)
// Dieser gilt solange bis im Activate ein neuer gesetzt wird
// oder dieser im Dtor der View geloescht wird
//
- SwView* pView;
- SwWrtShell* pWrtShell;
+ SwView* mpView;
+ SwWrtShell* mpWrtShell;
- Timer aFinishedTimer; // Timer fuers ueberpriefen der
- // Grafik-Links. Sind alle da,
- // dann ist Doc voll. geladen
+ Timer aFinishedTimer; // Timer fuers ueberpriefen der
+ // Grafik-Links. Sind alle da,
+ // dann ist Doc voll. geladen
+
+ comphelper::EmbeddedObjectContainer* mpOLEChildList;
+ sal_Int16 mnUpdateDocMode; // contains the com::sun::star::document::UpdateDocMode
- //SvPersistRef xOLEChildList; // fuers RemoveOLEObjects
- comphelper::EmbeddedObjectContainer* pOLEChildList;
- sal_Int16 nUpdateDocMode; // contains the com::sun::star::document::UpdateDocMode
- bool bInUpdateFontList; //prevent nested calls of UpdateFontList
// Methoden fuer den Zugriff aufs Doc
SW_DLLPRIVATE void AddLink();
SW_DLLPRIVATE void RemoveLink();
@@ -90,8 +97,8 @@ class SW_DLLPUBLIC SwDocShell: public SfxObjectShell, public SfxListener
SW_DLLPRIVATE virtual sal_Bool InitNew( const ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage >& xStorage );
SW_DLLPRIVATE virtual sal_Bool Load( SfxMedium& rMedium );
SW_DLLPRIVATE virtual sal_Bool LoadFrom( SfxMedium& rMedium );
- SW_DLLPRIVATE virtual sal_Bool ConvertFrom( SfxMedium &rMedium );
- SW_DLLPRIVATE virtual sal_Bool ConvertTo( SfxMedium &rMedium );
+ SW_DLLPRIVATE virtual sal_Bool ConvertFrom( SfxMedium &rMedium );
+ SW_DLLPRIVATE virtual sal_Bool ConvertTo( SfxMedium &rMedium );
SW_DLLPRIVATE virtual sal_Bool SaveAs( SfxMedium& rMedium );
SW_DLLPRIVATE virtual sal_Bool SaveCompleted( const ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage >& xStorage );
@@ -132,7 +139,6 @@ class SW_DLLPUBLIC SwDocShell: public SfxObjectShell, public SfxListener
SW_DLLPRIVATE sal_uInt16 MakeByExample(const String &rName,
sal_uInt16 nFamily, sal_uInt16 nMask, SwWrtShell* pShell = 0);
- SW_DLLPRIVATE void InitDraw();
SW_DLLPRIVATE void SubInitNew(); // fuer InitNew und HtmlSourceModus
SW_DLLPRIVATE void RemoveOLEObjects();
@@ -149,6 +155,10 @@ protected:
/// override to update text fields
virtual void DoFlushDocInfo();
+ // override <SfxObjectShell>'s method which is called in <SfxObjectShell::ImportFrom(..)>.
+ // <SfxObjectShell::ImportFrom(..)> is used by current import of Microsoft Word documents in OOXML file format.
+ virtual void BeforeLoading( SfxMedium&, const ::rtl::OUString &, const ::rtl::OUString & );
+
public:
using SotObject::GetInterface;
@@ -190,8 +200,8 @@ public:
void StateStyleSheet(SfxItemSet&, SwWrtShell* pSh = 0 );
// Doc rausreichen aber VORSICHT
- inline SwDoc* GetDoc() { return pDoc; }
- inline const SwDoc* GetDoc() const { return pDoc; }
+ inline SwDoc* GetDoc() { return mpDoc; }
+ inline const SwDoc* GetDoc() const { return mpDoc; }
IDocumentDeviceAccess* getIDocumentDeviceAccess();
const IDocumentSettingAccess* getIDocumentSettingAccess() const;
IDocumentChartDataProviderAccess* getIDocumentChartDataProviderAccess();
@@ -224,12 +234,12 @@ public:
// View setzen fuer Aktionen ueber Shell
void SetView(SwView* pVw);
- const SwView *GetView() const { return pView; }
- SwView *GetView() { return pView; }
+ const SwView *GetView() const { return mpView; }
+ SwView *GetView() { return mpView; }
// Zugriff auf die zur SwView gehoerige SwWrtShell
- SwWrtShell *GetWrtShell() { return pWrtShell; }
- const SwWrtShell *GetWrtShell() const { return pWrtShell; }
+ SwWrtShell *GetWrtShell() { return mpWrtShell; }
+ const SwWrtShell *GetWrtShell() const { return mpWrtShell; }
// fuer die Core - die kennt die DocShell aber keine WrtShell!
SwFEShell *GetFEShell();
@@ -282,7 +292,7 @@ public:
// Doc aus Html-Source neu laden
void ReloadFromHtml( const String& rStreamName, SwSrcView* pSrcView );
- sal_Int16 GetUpdateDocMode() const {return nUpdateDocMode;}
+ sal_Int16 GetUpdateDocMode() const {return mnUpdateDocMode;}
void ToggleBrowserMode(sal_Bool bOn, SwView* pView);
diff --git a/sw/inc/dpage.hxx b/sw/inc/dpage.hxx
index 617f49c85198..5c4767d95518 100644
--- a/sw/inc/dpage.hxx
+++ b/sw/inc/dpage.hxx
@@ -29,7 +29,7 @@
#include <svx/svdobj.hxx>
class SdrPageGridFrameList;
-class SwDrawDocument;
+class SwDrawModel;
class SwDoc;
class SwDPage : public FmFormPage
@@ -46,7 +46,7 @@ public:
/// create a copy, evtl. with a different target model (if given)
virtual SdrPage* CloneSdrPage(SdrModel* pTargetModel = 0) const;
- SwDPage(SwDrawDocument& rNewModel, bool bMasterPage = false);
+ SwDPage(SwDrawModel& rNewModel, bool bMasterPage = false);
~SwDPage();
virtual SdrObject* ReplaceObjectInSdrObjList( SdrObject& rNewObj, sal_uInt32 nObjNum );
diff --git a/sw/inc/drawdoc.hxx b/sw/inc/drawdoc.hxx
index 876054b0b7ed..a012eca1575f 100644
--- a/sw/inc/drawdoc.hxx
+++ b/sw/inc/drawdoc.hxx
@@ -32,12 +32,12 @@ class SwDocShell;
//==================================================================
-class SwDrawDocument : public FmFormModel
+class SwDrawModel : public FmFormModel
{
SwDoc* pDoc;
public:
- SwDrawDocument( SwDoc* pDoc );
- ~SwDrawDocument();
+ SwDrawModel( SwDoc* pDoc );
+ ~SwDrawModel();
const SwDoc& GetDoc() const { return *pDoc; }
SwDoc& GetDoc() { return *pDoc; }
diff --git a/sw/inc/editsh.hxx b/sw/inc/editsh.hxx
index bbb2b8f4d8c2..2396391c0994 100644
--- a/sw/inc/editsh.hxx
+++ b/sw/inc/editsh.hxx
@@ -303,11 +303,11 @@ public:
sal_uInt16 GetTxtFmtCollCount() const;
SwTxtFmtColl& GetTxtFmtColl( sal_uInt16 nTxtFmtColl) const;
SwTxtFmtColl* GetCurTxtFmtColl() const;
- // --> OD 2007-11-06 #i62675#
+
// Add 2nd optional parameter <bResetListAttrs> - see also <SwDoc::SetTxtFmtColl(..)>
void SetTxtFmtColl( SwTxtFmtColl*,
- bool bResetListAttrs = false );
- // <--
+ const bool bResetListAttrs = false );
+
SwTxtFmtColl *MakeTxtFmtColl(const String &rFmtCollName,
SwTxtFmtColl *pDerivedFrom = 0);
void FillByEx(SwTxtFmtColl*, sal_Bool bReset = sal_False);
diff --git a/sw/inc/fmtcol.hxx b/sw/inc/fmtcol.hxx
index ed9b1ce93d6a..b73ab8978cc1 100644
--- a/sw/inc/fmtcol.hxx
+++ b/sw/inc/fmtcol.hxx
@@ -69,29 +69,31 @@ protected:
SwTxtFmtColl *pNextTxtFmtColl;
- SwTxtFmtColl( SwAttrPool& rPool, const sal_Char* pFmtCollName,
- SwTxtFmtColl* pDerFrom = 0,
- sal_uInt16 nFmtWh = RES_TXTFMTCOLL )
- : SwFmtColl( rPool, pFmtCollName, aTxtFmtCollSetRange,
- pDerFrom, nFmtWh ),
- // --> OD 2007-01-24 #i73790#
- mbStayAssignedToListLevelOfOutlineStyle( false ),
- // <--
- //nOutlineLevel( NO_NUMBERING ) //<-#outline level,removed by zhaojianwei
- mbAssignedToOutlineStyle(false) //<-#outline level,added by zhaojianwei
- { pNextTxtFmtColl = this; }
-
- SwTxtFmtColl( SwAttrPool& rPool, const String &rFmtCollName,
- SwTxtFmtColl* pDerFrom = 0,
- sal_uInt16 nFmtWh = RES_TXTFMTCOLL )
- : SwFmtColl( rPool, rFmtCollName, aTxtFmtCollSetRange,
- pDerFrom, nFmtWh ),
- // --> OD 2007-01-24 #i73790#
- mbStayAssignedToListLevelOfOutlineStyle( false ),
- // <--
- //nOutlineLevel( NO_NUMBERING ) //<-#outline level,removed by zhaojianwei
- mbAssignedToOutlineStyle(false) //<-#outline level,added by zhaojianwei
- { pNextTxtFmtColl = this; }
+ SwTxtFmtColl(
+ SwAttrPool& rPool,
+ const sal_Char* pFmtCollName,
+ SwTxtFmtColl* pDerFrom = 0,
+ sal_uInt16 nFmtWh = RES_TXTFMTCOLL )
+ : SwFmtColl( rPool, pFmtCollName, aTxtFmtCollSetRange
+ , pDerFrom, nFmtWh )
+ , mbStayAssignedToListLevelOfOutlineStyle( false )
+ , mbAssignedToOutlineStyle( false )
+ {
+ pNextTxtFmtColl = this;
+ }
+
+ SwTxtFmtColl(
+ SwAttrPool& rPool,
+ const String &rFmtCollName,
+ SwTxtFmtColl* pDerFrom = 0,
+ sal_uInt16 nFmtWh = RES_TXTFMTCOLL )
+ : SwFmtColl( rPool, rFmtCollName, aTxtFmtCollSetRange
+ , pDerFrom, nFmtWh )
+ , mbStayAssignedToListLevelOfOutlineStyle( false )
+ , mbAssignedToOutlineStyle( false )
+ {
+ pNextTxtFmtColl = this;
+ }
// zum "abfischen" von UL-/LR-/FontHeight Aenderungen
virtual void Modify( const SfxPoolItem*, const SfxPoolItem* );
@@ -103,29 +105,30 @@ public:
sal_Bool IsAtDocNodeSet() const;
- // --> OD 2006-11-22 #i71574#
- //<-#outline level,zhaojianwei
void SetAttrOutlineLevel( int );
- int GetAttrOutlineLevel() const;
- int GetAssignedOutlineStyleLevel() const;
+ int GetAttrOutlineLevel() const;
+
+ // Return the list level of the Outline Style - the List Style for the outline numbering -
+ // to which the Paragraph Style is assigned.
+ int GetAssignedOutlineStyleLevel() const;
+
inline bool IsAssignedToListLevelOfOutlineStyle() const
{
return mbAssignedToOutlineStyle;
}
+
+ // If a Paragraph Style is assigned to list level N of the Outline Style,
+ // then its outline level - AttrOutlineLevel - is set to N+1
void AssignToListLevelOfOutlineStyle(const int nAssignedListLevel);
- void DeleteAssignmentToListLevelOfOutlineStyle();
- //<-end
- // <--
- // --> OD 2008-03-04 #refactorlists#
+ void DeleteAssignmentToListLevelOfOutlineStyle( const bool bResetOutlineLevel = true );
+
// override to recognize changes on the <SwNumRuleItem> and register/unregister
// the paragragh style at the corresponding <SwNumRule> instance
virtual sal_Bool SetFmtAttr( const SfxPoolItem& rAttr );
virtual sal_Bool SetFmtAttr( const SfxItemSet& rSet );
virtual sal_Bool ResetFmtAttr( sal_uInt16 nWhich1, sal_uInt16 nWhich2 = 0 );
- // <--
- // --> OD 2007-01-24 #i73790#
// override <ResetAllFmtAttr()> to stay assigned to list level of outline style
virtual sal_uInt16 ResetAllFmtAttr();
diff --git a/sw/inc/format.hxx b/sw/inc/format.hxx
index 52e51962e8e5..0227479debd4 100644
--- a/sw/inc/format.hxx
+++ b/sw/inc/format.hxx
@@ -19,7 +19,6 @@
*
*************************************************************/
-
#ifndef _FORMAT_HXX
#define _FORMAT_HXX
@@ -29,8 +28,7 @@
#include <swatrset.hxx> // fuer SfxItemPool/-Set, Attr forward decl.
#include <calbck.hxx> // fuer SwModify
#include <hintids.hxx>
-//UUUU
-#include <fillattributes.hxx>
+#include <boost/shared_ptr.hpp>
class IDocumentSettingAccess;
class IDocumentDrawModelAccess;
@@ -40,6 +38,11 @@ class IDocumentFieldsAccess;
class IDocumentChartDataProviderAccess;
class SwDoc;
+namespace drawinglayer { namespace attribute {
+ class SdrAllFillAttributesHelper;
+ typedef boost::shared_ptr< SdrAllFillAttributesHelper > SdrAllFillAttributesHelperPtr;
+}}
+
class SW_DLLPUBLIC SwFmt : public SwModify
{
String aFmtName;
@@ -241,7 +244,7 @@ public:
inline const SvxBoxItem &GetBox( sal_Bool = sal_True ) const;
inline const SvxFmtKeepItem &GetKeep( sal_Bool = sal_True ) const;
- //UUUU
+ //UUUU Get SvxBrushItem for Background fill (partially for backwards compatibility)
const SvxBrushItem& GetBackground( sal_Bool = sal_True ) const;
inline const SvxShadowItem &GetShadow( sal_Bool = sal_True ) const;
@@ -328,18 +331,12 @@ public:
*/
virtual sal_Bool IsShadowTransparent() const;
- //UUUU
- virtual FillAttributesPtr getFillAttributes() const;
+ //UUUU Access to DrawingLayer FillAttributes in a preprocessed form for primitive usage
+ virtual drawinglayer::attribute::SdrAllFillAttributesHelperPtr getSdrAllFillAttributesHelper() const;
};
// --------------- inline Implementierungen ------------------------
-//UUUUinline const SfxPoolItem& SwFmt::GetFmtAttr( sal_uInt16 nWhich,
-//UUUU sal_Bool bInParents ) const
-//UUUU{
-//UUUU return aSet.Get( nWhich, bInParents );
-//UUUU}
-
inline void SwFmt::SetName( const sal_Char* pNewName,
sal_Bool bBroadcast )
{
@@ -347,12 +344,6 @@ inline void SwFmt::SetName( const sal_Char* pNewName,
SetName( aTmp, bBroadcast );
}
-//UUUUinline SfxItemState SwFmt::GetItemState( sal_uInt16 nWhich, sal_Bool bSrchInParent,
-//UUUU const SfxPoolItem **ppItem ) const
-//UUUU{
-//UUUU return aSet.GetItemState( nWhich, bSrchInParent, ppItem );
-//UUUU}
-
#undef inline
#endif // _FORMAT_HXX
diff --git a/sw/inc/frmatr.hxx b/sw/inc/frmatr.hxx
index f9facc75c324..8ad974b15739 100644
--- a/sw/inc/frmatr.hxx
+++ b/sw/inc/frmatr.hxx
@@ -81,8 +81,6 @@ inline const SvxBoxItem &SwFmt::GetBox(sal_Bool bInP) const
{ return aSet.GetBox(bInP); }
inline const SvxFmtKeepItem &SwFmt::GetKeep(sal_Bool bInP) const
{ return aSet.GetKeep(bInP); }
-//UUUUinline const SvxBrushItem &SwFmt::GetBackground(sal_Bool bInP) const
-//UUUU { return aSet.GetBackground(bInP); }
inline const SvxShadowItem &SwFmt::GetShadow(sal_Bool bInP) const
{ return aSet.GetShadow(bInP); }
inline const SvxFmtBreakItem &SwFmt::GetBreak(sal_Bool bInP) const
diff --git a/sw/inc/frmfmt.hxx b/sw/inc/frmfmt.hxx
index 3c87727d9dc2..e7a36599bb7d 100644
--- a/sw/inc/frmfmt.hxx
+++ b/sw/inc/frmfmt.hxx
@@ -47,8 +47,8 @@ class SW_DLLPUBLIC SwFrmFmt: public SwFmt
::com::sun::star::uno::WeakReference<
::com::sun::star::uno::XInterface> m_wXObject;
- //UUUU
- FillAttributesPtr maFillAttributes;
+ //UUUU DrawingLayer FillAttributes in a preprocessed form for primitive usage
+ drawinglayer::attribute::SdrAllFillAttributesHelperPtr maFillAttributes;
protected:
SwFrmFmt* pCaptionFmt;
@@ -145,8 +145,8 @@ public:
DECL_FIXEDMEMPOOL_NEWDEL_DLL(SwFrmFmt)
void RegisterToFormat( SwFmt& rFmt );
- //UUUU
- virtual FillAttributesPtr getFillAttributes() const;
+ //UUUU Access to DrawingLayer FillAttributes in a preprocessed form for primitive usage
+ virtual drawinglayer::attribute::SdrAllFillAttributesHelperPtr getSdrAllFillAttributesHelper() const;
};
//Das FlyFrame-Format ------------------------------
diff --git a/sw/inc/hintids.hxx b/sw/inc/hintids.hxx
index dcecdc0db75b..abefc16fa3d1 100644
--- a/sw/inc/hintids.hxx
+++ b/sw/inc/hintids.hxx
@@ -19,12 +19,12 @@
*
*************************************************************/
-
#ifndef _HINTIDS_HXX
#define _HINTIDS_HXX
#include <tools/solar.h> // fuer __FAR_DATA
#include <sal/types.h> // for sal_Unicode
+#include <svx/xdef.hxx>
#include "swdllapi.h"
// fuer SwTxtHints ohne Endindex wird folgendes Zeichen eingefuegt:
@@ -405,11 +405,16 @@ inline bool isPARATR(const sal_uInt16 nWhich)
}
inline bool isPARATR_LIST(const sal_uInt16 nWhich)
{
- return (RES_PARATR_LIST_BEGIN <= nWhich) && (RES_PARATR_LIST_END > nWhich); }
+ return (RES_PARATR_LIST_BEGIN <= nWhich) && (RES_PARATR_LIST_END > nWhich);
+}
inline bool isFRMATR(const sal_uInt16 nWhich)
{
return (RES_FRMATR_BEGIN <= nWhich) && (RES_FRMATR_END > nWhich);
}
+inline bool isDrawingLayerAttribute(const sal_uInt16 nWhich) //UUUU
+{
+ return (XATTR_FILL_FIRST <= nWhich) && (XATTR_FILL_LAST >= nWhich);
+}
inline bool isGRFATR(const sal_uInt16 nWhich)
{
return (RES_GRFATR_BEGIN <= nWhich) && (RES_GRFATR_END > nWhich);
diff --git a/sw/inc/hints.hxx b/sw/inc/hints.hxx
index 918b97a582e4..4d56b86b22d7 100644
--- a/sw/inc/hints.hxx
+++ b/sw/inc/hints.hxx
@@ -107,13 +107,33 @@ public:
SwDelTxt( xub_StrLen nS, xub_StrLen nL );
};
-class SwUpdateAttr: public SwMsgPoolItem
+class SwUpdateAttr : public SwMsgPoolItem
{
-public:
+private:
xub_StrLen nStart;
xub_StrLen nEnd;
sal_uInt16 nWhichAttr;
- SwUpdateAttr( xub_StrLen nS, xub_StrLen nE, sal_uInt16 nW );
+
+public:
+ SwUpdateAttr(
+ xub_StrLen nS,
+ xub_StrLen nE,
+ sal_uInt16 nW);
+
+ xub_StrLen getStart() const
+ {
+ return nStart;
+ }
+
+ xub_StrLen getEnd() const
+ {
+ return nEnd;
+ }
+
+ sal_uInt16 getWhichAttr() const
+ {
+ return nWhichAttr;
+ }
};
diff --git a/sw/inc/ndgrf.hxx b/sw/inc/ndgrf.hxx
index f9ee8acab24e..b191cf3aac9c 100644
--- a/sw/inc/ndgrf.hxx
+++ b/sw/inc/ndgrf.hxx
@@ -25,22 +25,17 @@
#include <sfx2/lnkbase.hxx>
#include <svtools/grfmgr.hxx>
#include <ndnotxt.hxx>
-// --> OD, MAV 2005-08-17 #i53025#
#include <com/sun/star/embed/XStorage.hpp>
-// <--
-// --> OD 2007-03-28 #i73788#
#include <boost/shared_ptr.hpp>
#include <boost/weak_ptr.hpp>
class SwAsyncRetrieveInputStreamThreadConsumer;
-// <--
class SwGrfFmtColl;
class SwDoc;
class GraphicAttr;
class SvStorage;
-// --------------------
-// SwGrfNode
-// --------------------
+
+
class SW_DLLPUBLIC SwGrfNode: public SwNoTxtNode
{
friend class SwNodes;
@@ -49,28 +44,19 @@ class SW_DLLPUBLIC SwGrfNode: public SwNoTxtNode
GraphicObject* mpReplacementGraphic;
::sfx2::SvBaseLinkRef refLink; // falls Grafik nur als Link, dann Pointer gesetzt
Size nGrfSize;
-// String aStrmName; // SW3: Name des Storage-Streams fuer Embedded
- String aNewStrmName; // SW3/XML: new stream name (either SW3 stream
- // name or package url)
- String aLowResGrf; // HTML: LowRes Grafik (Ersatzdarstellung bis
- // die normale (HighRes) geladen ist.
- sal_Bool bTransparentFlagValid :1;
- sal_Bool bInSwapIn :1;
-
- sal_Bool bGrafikArrived :1;
- sal_Bool bChgTwipSize :1;
- sal_Bool bChgTwipSizeFromPixel :1;
- sal_Bool bLoadLowResGrf :1;
- sal_Bool bFrameInPaint :1; //Um Start-/EndActions im Paint (ueber
- //SwapIn zu verhindern.
- sal_Bool bScaleImageMap :1; //Image-Map in SetTwipSize skalieren
-
- // --> OD 2007-01-19 #i73788#
+ sal_Bool bInSwapIn :1;
+
+ sal_Bool bGrafikArrived :1;
+ sal_Bool bChgTwipSize :1;
+ sal_Bool bChgTwipSizeFromPixel :1;
+ sal_Bool bLoadLowResGrf :1;
+ sal_Bool bFrameInPaint :1; // Um Start-/EndActions im Paint (ueber SwapIn zu verhindern.
+ sal_Bool bScaleImageMap :1; // Image-Map in SetTwipSize skalieren
+
boost::shared_ptr< SwAsyncRetrieveInputStreamThreadConsumer > mpThreadConsumer;
bool mbLinkedInputStreamReady;
com::sun::star::uno::Reference<com::sun::star::io::XInputStream> mxInputStream;
sal_Bool mbIsStreamReadOnly;
- // <--
SwGrfNode( const SwNodeIndex& rWhere,
const String& rGrfName, const String& rFltName,
@@ -89,14 +75,7 @@ class SW_DLLPUBLIC SwGrfNode: public SwNoTxtNode
void InsertLink( const String& rGrfName, const String& rFltName );
sal_Bool ImportGraphic( SvStream& rStrm );
- sal_Bool HasStreamName() const { return maGrfObj.HasUserData(); }
- // --> OD 2005-05-04 #i48434# - adjust return type and rename method to
- // indicate that its an private one.
- // --> OD 2005-08-17 #i53025#
- // embedded graphic stream couldn't be inside a 3.1 - 5.2 storage any more.
- // Thus, return value isn't needed any more.
void _GetStreamStorageNames( String& rStrmName, String& rStgName ) const;
- // <--
void DelStreamName();
DECL_LINK( SwapGraphic, GraphicObject* );
@@ -142,6 +121,10 @@ class SW_DLLPUBLIC SwGrfNode: public SwNoTxtNode
::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage > _GetDocSubstorageOrRoot(
const String& aStgName ) const;
+ /// allow reaction on change of content of GraphicObject, so always call
+ /// when GraphicObject content changes
+ void onGraphicChanged();
+
public:
virtual ~SwGrfNode();
const Graphic& GetGrf() const { return maGrfObj.GetGraphic(); }
@@ -157,10 +140,6 @@ public:
void StartGraphicAnimation(OutputDevice* pOut, const Point& rPt, const Size& rSz, long nExtraData = 0, const GraphicAttr* pAttr = NULL, sal_uLong nFlags = GRFMGR_DRAW_STANDARD, OutputDevice* pFirstFrameOutDev = NULL) { maGrfObj.StartAnimation(pOut, rPt, rSz, nExtraData, pAttr, nFlags, pFirstFrameOutDev); }
void StopGraphicAnimation(OutputDevice* pOut = NULL, long nExtraData = 0) { maGrfObj.StopAnimation(pOut, nExtraData); }
- /// allow reaction on change of content of GraphicObject, so always call
- /// when GraphicObject content changes
- void onGraphicChanged();
-
virtual Size GetTwipSize() const;
#ifndef _FESHVIEW_ONLY_INLINE_NEEDED
void SetTwipSize( const Size& rSz );
@@ -194,11 +173,16 @@ public:
sal_Bool bModify = sal_True );
// Laden der Grafik unmittelbar vor der Anzeige
short SwapIn( sal_Bool bWaitForData = sal_False );
- // Entfernen der Grafik, um Speicher freizugeben
+ // Entfernen der Grafik, um Speicher freizugeben
short SwapOut();
- // Zugriff auf den Storage-Streamnamen
- void SetStreamName( const String& r ) { maGrfObj.SetUserData( r ); }
- void SetNewStreamName( const String& r ) { aNewStrmName = r; }
+
+ sal_Bool HasEmbeddedStreamName() const { return maGrfObj.HasUserData(); }
+ // applying new stream name for embedded graphic - needed as saving the document might change this stream name
+ void ApplyNewEmbeddedStreamName( const String& r )
+ {
+ maGrfObj.SetUserData( r );
+ }
+
// is this node selected by any shell?
sal_Bool IsSelected() const;
#endif
@@ -224,7 +208,6 @@ public:
GraphicAttr& GetGraphicAttr( GraphicAttr&, const SwFrm* pFrm ) const;
#endif
- // --> OD 2007-01-18 #i73788#
boost::weak_ptr< SwAsyncRetrieveInputStreamThreadConsumer > GetThreadConsumer();
bool IsLinkedInputStreamReady() const;
void TriggerAsyncRetrieveInputStream();
@@ -232,10 +215,7 @@ public:
com::sun::star::uno::Reference<com::sun::star::io::XInputStream> xInputStream,
const sal_Bool bIsStreamReadOnly );
void UpdateLinkWithInputStream();
- // <--
- // --> OD 2008-07-21 #i90395#
bool IsAsyncRetrieveInputStreamPossible() const;
- // <--
};
diff --git a/sw/inc/ndnotxt.hxx b/sw/inc/ndnotxt.hxx
index 12f77b52ef83..a64277a56846 100644
--- a/sw/inc/ndnotxt.hxx
+++ b/sw/inc/ndnotxt.hxx
@@ -41,7 +41,7 @@ class SW_DLLPUBLIC SwNoTxtNode : public SwCntntNode
PolyPolygon *pContour; // Polygon fuer Konturumlauf
sal_Bool bAutomaticContour : 1; // automatic contour polygon, not manipulated
sal_Bool bContourMapModeValid : 1; // contour map mode is not the graphics's
- // prefered map mode, but either
+ // preferred map mode, but either
// MM100 or or pixel
sal_Bool bPixelContour : 1; // contour map mode is invalid and pixel.
diff --git a/sw/inc/ndtxt.hxx b/sw/inc/ndtxt.hxx
index 8e516ebdc4fa..48c684018f53 100644
--- a/sw/inc/ndtxt.hxx
+++ b/sw/inc/ndtxt.hxx
@@ -125,6 +125,9 @@ class SW_DLLPUBLIC SwTxtNode: public SwCntntNode, public ::sfx2::Metadatable
::com::sun::star::uno::WeakReference<
::com::sun::star::text::XTextContent> m_wXParagraph;
+ //UUUU DrawingLayer FillAttributes in a preprocessed form for primitive usage
+ drawinglayer::attribute::SdrAllFillAttributesHelperPtr maFillAttributes;
+
SW_DLLPRIVATE SwTxtNode( const SwNodeIndex &rWhere, SwTxtFmtColl *pTxtColl,
const SfxItemSet* pAutoAttr = 0 );
@@ -597,7 +600,7 @@ public:
@return outline level or NO_NUMBERING if there is no outline level
*/
- int GetAttrOutlineLevel() const;//#OutlineLevel,added by zhaojianwei
+ int GetAttrOutlineLevel() const;
/**
Sets the out line level *at* a text node.
@@ -612,14 +615,12 @@ public:
NOTE: This is subject to change, see GetOutlineLevel.
*/
- //void SetOutlineLevel(int nLevel);
- void SetAttrOutlineLevel(int nLevel);//#OutlineLevel,added by zhaojianwei
+ void SetAttrOutlineLevel(int nLevel);
- // --> OD 2008-11-19 #i70748#
bool IsEmptyListStyleDueToSetOutlineLevelAttr();
void SetEmptyListStyleDueToSetOutlineLevelAttr();
void ResetEmptyListStyleDueToResetOutlineLevelAttr();
- // <--
+
/**
Returns the width of leading tabs/blanks in this paragraph.
@@ -826,6 +827,9 @@ public:
::com::sun::star::rdf::XMetadatable > MakeUnoObject();
DECL_FIXEDMEMPOOL_NEWDEL(SwTxtNode)
+
+ //UUUU Access to DrawingLayer FillAttributes in a preprocessed form for primitive usage
+ virtual drawinglayer::attribute::SdrAllFillAttributesHelperPtr getSdrAllFillAttributesHelper() const;
};
//-----------------------------------------------------------------------------
diff --git a/sw/inc/node.hxx b/sw/inc/node.hxx
index 6872a2ce8b5d..e99bdf53f788 100644
--- a/sw/inc/node.hxx
+++ b/sw/inc/node.hxx
@@ -81,6 +81,12 @@ class IDocumentContentOperations;
class IDocumentListItems;
class SwOLENodes;
+//UUUU
+namespace drawinglayer { namespace attribute {
+ class SdrAllFillAttributesHelper;
+ typedef boost::shared_ptr< SdrAllFillAttributesHelper > SdrAllFillAttributesHelperPtr;
+}}
+
// --------------------
// class SwNode
// --------------------
@@ -506,6 +512,9 @@ public:
static SwOLENodes* CreateOLENodesArray( const SwFmtColl& rColl, bool bOnlyWithInvalidSize );
+ //UUUU Access to DrawingLayer FillAttributes in a preprocessed form for primitive usage
+ virtual drawinglayer::attribute::SdrAllFillAttributesHelperPtr getSdrAllFillAttributesHelper() const;
+
private:
// privater Constructor, weil nie kopiert werden darf !!
SwCntntNode( const SwCntntNode & rNode );
diff --git a/sw/inc/pagepreviewlayout.hxx b/sw/inc/pagepreviewlayout.hxx
index 434d4fec66f3..39652bd79d36 100644
--- a/sw/inc/pagepreviewlayout.hxx
+++ b/sw/inc/pagepreviewlayout.hxx
@@ -481,7 +481,7 @@ public:
@param _orNewStartPos
output parameter - new start position in document preview
- @return boolean - indicating, that move was sucessful.
+ @return boolean - indicating, that move was successful.
*/
bool CalcStartValuesForSelectedPageMove( const sal_Int16 _nHoriMove,
const sal_Int16 _nVertMove,
diff --git a/sw/inc/swatrset.hxx b/sw/inc/swatrset.hxx
index f650f0b7d89c..a4c04510ceac 100644
--- a/sw/inc/swatrset.hxx
+++ b/sw/inc/swatrset.hxx
@@ -141,8 +141,10 @@ class SwTblBoxValue;
class SwAttrPool : public SfxItemPool
{
private:
- ///UUUU helpers to add/rmove DrawingLayer ItemPool, used in constructor
- /// and destructor; still isolated to evtl. allow other use later
+ //UUUU helpers to add/rmove DrawingLayer ItemPool, used in constructor
+ // and destructor; still isolated to evtl. allow other use later, but
+ // used bz default now to have it instantly as needed for DrawingLayer
+ // FillStyle support
void createAndAddSecondaryPools();
void removeAndDeleteSecondaryPools();
diff --git a/sw/inc/swunohelper.hxx b/sw/inc/swunohelper.hxx
index 7c760a0fd861..c13140c88889 100644
--- a/sw/inc/swunohelper.hxx
+++ b/sw/inc/swunohelper.hxx
@@ -37,6 +37,9 @@ class String;
class SvStrings;
class SvPtrarr;
+//UUUU
+class SfxItemSet;
+
namespace SWUnoHelper {
// calls over the compherl the getEnumAsInt32 function and handle the
@@ -72,6 +75,12 @@ SW_DLLPUBLIC sal_Bool UCB_IsFile( const String& rURL );
// is the URL a existing directory?
sal_Bool UCB_IsDirectory( const String& rURL );
+
+///UUUU helper to check if fill style is set to color or bitmap
+/// and thus formally used SvxBrushItem parts need to be mapped
+/// for backwards compatibility
+bool needToMapFillItemsToSvxBrushItemTypes(const SfxItemSet& rSet);
+
}
#endif
diff --git a/sw/inc/tox.hxx b/sw/inc/tox.hxx
index 07237e3f338e..f727deb02059 100644
--- a/sw/inc/tox.hxx
+++ b/sw/inc/tox.hxx
@@ -380,10 +380,8 @@ public:
void SetPattern(sal_uInt16 nLevel, const String& rStr);
const SwFormTokens& GetPattern(sal_uInt16 nLevel) const;
- // fill tab stop positions from template to pattern
- // #i21237#
- void AdjustTabStops(SwDoc& rDoc,
- sal_Bool bInsertNewTabStops = sal_False);
+ // fill tab stop positions from template to pattern- #i21237#
+ void AdjustTabStops( SwDoc& rDoc );
inline TOXTypes GetTOXType() const;
inline sal_uInt16 GetFormMax() const;
@@ -599,9 +597,14 @@ public:
const String& GetSortAlgorithm()const {return sSortAlgorithm;}
void SetSortAlgorithm(const String& rSet) {sSortAlgorithm = rSet;}
+
// #i21237#
- void AdjustTabStops(SwDoc & rDoc, sal_Bool bDefaultRightTabStop);
- SwTOXBase& operator=(const SwTOXBase& rSource);
+ inline void AdjustTabStops( SwDoc & rDoc )
+ {
+ aForm.AdjustTabStops( rDoc );
+ }
+
+ SwTOXBase& operator=(const SwTOXBase& rSource);
void RegisterToTOXType( SwTOXType& rMark );
};
@@ -752,11 +755,6 @@ inline const String& SwTOXBase::GetTypeName() const
inline const SwForm& SwTOXBase::GetTOXForm() const
{ return aForm; }
-inline void SwTOXBase::AdjustTabStops(SwDoc & rDoc, sal_Bool bDefaultRightTabStop)
-{
- aForm.AdjustTabStops(rDoc, bDefaultRightTabStop);
-}
-
inline void SwTOXBase::SetCreate(sal_uInt16 nCreate)
{ nCreateType = nCreate; }
diff --git a/sw/inc/txtannotationfld.hxx b/sw/inc/txtannotationfld.hxx
index f7cd9b87c927..2a8d9db049a6 100755
--- a/sw/inc/txtannotationfld.hxx
+++ b/sw/inc/txtannotationfld.hxx
@@ -33,7 +33,8 @@ class SwTxtAnnotationFld : public SwTxtFld
public:
SwTxtAnnotationFld(
SwFmtFld & rAttr,
- xub_StrLen const nStart );
+ xub_StrLen const nStart,
+ const bool bIsClipboardDoc );
virtual ~SwTxtAnnotationFld();
diff --git a/sw/inc/txtfld.hxx b/sw/inc/txtfld.hxx
index f31dd0705bc0..48b7eb4382c2 100644
--- a/sw/inc/txtfld.hxx
+++ b/sw/inc/txtfld.hxx
@@ -27,6 +27,8 @@
#include <tools/string.hxx>
#include <pam.hxx>
+#include <boost/shared_ptr.hpp>
+
class SwTxtNode;
// ATT_FLD ***********************************
@@ -39,18 +41,14 @@ class SwTxtFld : public SwTxtAttr
public:
SwTxtFld(
SwFmtFld & rAttr,
- xub_StrLen const nStart );
+ xub_StrLen const nStart,
+ const bool bIsClipboardDoc );
virtual ~SwTxtFld();
void CopyTxtFld( SwTxtFld *pDest ) const;
- void ExpandTxtFld() const;
- inline void ExpandAlways()
- {
- m_aExpand += ' '; // changing current value to assure that <ExpandTxtFld()> changes the value.
- ExpandTxtFld();
- }
+ void ExpandTxtFld( const bool bForceNotify = false ) const;
// get and set TxtNode pointer
inline SwTxtNode* GetpTxtNode() const
@@ -72,6 +70,13 @@ public:
// enable notification that field content has changed and needs reformatting
virtual void NotifyContentChange( SwFmtFld& rFmtFld );
+ // deletes the given field via removing the corresponding text selection from the document's content
+ static void DeleteTxtFld( const SwTxtFld& rTxtFld );
+
+ // return text selection for the given field
+ static void GetPamForTxtFld( const SwTxtFld& rTxtFld,
+ boost::shared_ptr< SwPaM >& rPamForTxtFld );
+
};
class SwTxtInputFld : public SwTxtFld
@@ -80,7 +85,8 @@ public:
SwTxtInputFld(
SwFmtFld & rAttr,
xub_StrLen const nStart,
- xub_StrLen const nEnd );
+ xub_StrLen const nEnd,
+ const bool bIsClipboardDoc );
virtual ~SwTxtInputFld();
diff --git a/sw/inc/unoframe.hxx b/sw/inc/unoframe.hxx
index 1f74cbf8f44a..47d16cb68880 100644
--- a/sw/inc/unoframe.hxx
+++ b/sw/inc/unoframe.hxx
@@ -76,11 +76,6 @@ class SwXFrame : public cppu::WeakImplHelper6
SwPaM* m_pCopySource;
- ///UUUU helper to check if fill style is set to color or bitmap
- /// and thus formally used SvxBrushItem parts need to be mapped
- /// for backwards compatibility
- bool needToMapFillItemsToSvxBrushItemTypes() const;
-
protected:
com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet > mxStyleData;
com::sun::star::uno::Reference< ::com::sun::star::container::XNameAccess > mxStyleFamily;
diff --git a/sw/inc/unoprnms.hxx b/sw/inc/unoprnms.hxx
index ec38cf2d86ba..483a55c7e071 100644
--- a/sw/inc/unoprnms.hxx
+++ b/sw/inc/unoprnms.hxx
@@ -814,7 +814,61 @@ enum SwPropNameIds
/* 0768 */ UNO_NAME_SW_FILLTRANSPARENCEGRADIENTNAME,
/* 0769 */ UNO_NAME_SW_FILLCOLOR_2,
-/* 0770 */ SW_PROPNAME_END
+/* 0770 */ UNO_NAME_HEADER_FILLBMP_LOGICAL_SIZE,
+/* 0771 */ UNO_NAME_HEADER_FILLBMP_OFFSET_X,
+/* 0772 */ UNO_NAME_HEADER_FILLBMP_OFFSET_Y,
+/* 0773 */ UNO_NAME_HEADER_FILLBMP_POSITION_OFFSET_X,
+/* 0774 */ UNO_NAME_HEADER_FILLBMP_POSITION_OFFSET_Y,
+/* 0775 */ UNO_NAME_HEADER_FILLBMP_RECTANGLE_POINT,
+/* 0776 */ UNO_NAME_HEADER_FILLBMP_SIZE_X,
+/* 0777 */ UNO_NAME_HEADER_FILLBMP_SIZE_Y,
+/* 0778 */ UNO_NAME_HEADER_FILLBMP_STRETCH,
+/* 0779 */ UNO_NAME_HEADER_FILLBMP_TILE,
+/* 0780 */ UNO_NAME_HEADER_FILLBMP_MODE,
+/* 0781 */ UNO_NAME_HEADER_FILLCOLOR,
+/* 0782 */ UNO_NAME_HEADER_FILLBACKGROUND,
+/* 0783 */ UNO_NAME_HEADER_FILLBITMAP,
+/* 0784 */ UNO_NAME_HEADER_FILLBITMAPNAME,
+/* 0785 */ UNO_NAME_HEADER_FILLBITMAPURL,
+/* 0786 */ UNO_NAME_HEADER_FILLGRADIENTSTEPCOUNT,
+/* 0787 */ UNO_NAME_HEADER_FILLGRADIENT,
+/* 0788 */ UNO_NAME_HEADER_FILLGRADIENTNAME,
+/* 0789 */ UNO_NAME_HEADER_FILLHATCH,
+/* 0790 */ UNO_NAME_HEADER_FILLHATCHNAME,
+/* 0791 */ UNO_NAME_HEADER_FILLSTYLE,
+/* 0792 */ UNO_NAME_HEADER_FILL_TRANSPARENCE,
+/* 0793 */ UNO_NAME_HEADER_FILLTRANSPARENCEGRADIENT,
+/* 0794 */ UNO_NAME_HEADER_FILLTRANSPARENCEGRADIENTNAME,
+/* 0795 */ UNO_NAME_HEADER_FILLCOLOR_2,
+
+/* 0776 */ UNO_NAME_FOOTER_FILLBMP_LOGICAL_SIZE,
+/* 0777 */ UNO_NAME_FOOTER_FILLBMP_OFFSET_X,
+/* 0778 */ UNO_NAME_FOOTER_FILLBMP_OFFSET_Y,
+/* 0779 */ UNO_NAME_FOOTER_FILLBMP_POSITION_OFFSET_X,
+/* 0780 */ UNO_NAME_FOOTER_FILLBMP_POSITION_OFFSET_Y,
+/* 0781 */ UNO_NAME_FOOTER_FILLBMP_RECTANGLE_POINT,
+/* 0782 */ UNO_NAME_FOOTER_FILLBMP_SIZE_X,
+/* 0783 */ UNO_NAME_FOOTER_FILLBMP_SIZE_Y,
+/* 0784 */ UNO_NAME_FOOTER_FILLBMP_STRETCH,
+/* 0785 */ UNO_NAME_FOOTER_FILLBMP_TILE,
+/* 0786 */ UNO_NAME_FOOTER_FILLBMP_MODE,
+/* 0787 */ UNO_NAME_FOOTER_FILLCOLOR,
+/* 0788 */ UNO_NAME_FOOTER_FILLBACKGROUND,
+/* 0789 */ UNO_NAME_FOOTER_FILLBITMAP,
+/* 0790 */ UNO_NAME_FOOTER_FILLBITMAPNAME,
+/* 0791 */ UNO_NAME_FOOTER_FILLBITMAPURL,
+/* 0792 */ UNO_NAME_FOOTER_FILLGRADIENTSTEPCOUNT,
+/* 0793 */ UNO_NAME_FOOTER_FILLGRADIENT,
+/* 0794 */ UNO_NAME_FOOTER_FILLGRADIENTNAME,
+/* 0795 */ UNO_NAME_FOOTER_FILLHATCH,
+/* 0796 */ UNO_NAME_FOOTER_FILLHATCHNAME,
+/* 0797 */ UNO_NAME_FOOTER_FILLSTYLE,
+/* 0798 */ UNO_NAME_FOOTER_FILL_TRANSPARENCE,
+/* 0799 */ UNO_NAME_FOOTER_FILLTRANSPARENCEGRADIENT,
+/* 0800 */ UNO_NAME_FOOTER_FILLTRANSPARENCEGRADIENTNAME,
+/* 0801 */ UNO_NAME_FOOTER_FILLCOLOR_2,
+
+/* 0802 */ SW_PROPNAME_END
};
diff --git a/sw/inc/unostyle.hxx b/sw/inc/unostyle.hxx
index 0d5f560b56a6..60362655d25a 100644
--- a/sw/inc/unostyle.hxx
+++ b/sw/inc/unostyle.hxx
@@ -389,6 +389,7 @@ public:
virtual sal_Bool SAL_CALL SAL_CALL hasElements( ) throw(::com::sun::star::uno::RuntimeException);
};
+
class SwXAutoStylesEnumerator : public cppu::WeakImplHelper1< ::com::sun::star::container::XEnumeration >,
public SwClient
{
@@ -416,8 +417,10 @@ class SwXAutoStyle : public cppu::WeakImplHelper3
>,
public SwClient
{
- SfxItemSet_Pointer_t pSet;
- IStyleAccess::SwAutoStyleFamily eFamily;
+private:
+ SfxItemSet_Pointer_t mpSet;
+ IStyleAccess::SwAutoStyleFamily meFamily;
+ SwDoc& mrDoc;
::com::sun::star::uno::Sequence< ::com::sun::star::uno::Any > SAL_CALL GetPropertyValues_Impl( const ::com::sun::star::uno::Sequence< ::rtl::OUString >& aPropertyNames ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
diff --git a/sw/inc/unotbl.hxx b/sw/inc/unotbl.hxx
index 2e248bfd9644..0aa82c9f86ef 100644
--- a/sw/inc/unotbl.hxx
+++ b/sw/inc/unotbl.hxx
@@ -58,11 +58,12 @@ class SwTableCursor;
class SwTableBoxFmt;
class SwChartDataProvider;
class SwFrmFmt;
+class SwXCell;
+void lcl_setString( SwXCell&, const rtl::OUString &rTxt, sal_Bool bKeepNumberFmt = sal_True );
-/* -----------------------------22.09.00 11:10--------------------------------
+// ---------------------------------------------------------------------------
- ---------------------------------------------------------------------------*/
class SwChartEventListenerContainer : public SwEventListenerContainer
{
public:
@@ -87,7 +88,7 @@ class SwXCell : public SwXCellBaseClass,
public SwClient
{
friend void lcl_setString( SwXCell &rCell, const rtl::OUString &rTxt,
- sal_Bool bKeepNumberFmt = sal_False );
+ sal_Bool bKeepNumberFmt );
friend double lcl_getValue( SwXCell &rCell );
friend void lcl_setValue( SwXCell &rCell, double nVal );
diff --git a/sw/inc/viewsh.hxx b/sw/inc/viewsh.hxx
index 8693d18dd897..0a59f41e8e44 100644
--- a/sw/inc/viewsh.hxx
+++ b/sw/inc/viewsh.hxx
@@ -109,9 +109,8 @@ class SW_DLLPUBLIC ViewShell : public Ring
// OD 12.12.2002 #103492# - for setting visible area for page preview paint
friend class SwPagePreviewLayout;
- //Umsetzen der SwVisArea, damit vor dem Drucken sauber formatiert
- //werden kann.
- friend void SetSwVisArea( ViewShell *pSh, const SwRect &, sal_Bool bPDFExport = sal_False );
+ // setting the SwVisArea is used to get a clean formatting before printing
+ friend void SetSwVisArea( ViewShell*, const SwRect& /*, sal_Bool bPDFExport = sal_False */ );
// --> PB 2007-05-30 #146850#
static BitmapEx* pReplaceBmp; // replaced display of still loaded images
diff --git a/sw/sdi/_frmsh.sdi b/sw/sdi/_frmsh.sdi
index 3715e653492f..e729a60fc8fd 100644
--- a/sw/sdi/_frmsh.sdi
+++ b/sw/sdi/_frmsh.sdi
@@ -26,6 +26,7 @@ interface BaseTextFrame
Automation = FALSE;
]
{
+ //UUUU
SID_ATTR_FILL_STYLE
[
Export = FALSE;
@@ -34,6 +35,7 @@ interface BaseTextFrame
DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR";
]
+ //UUUU
SID_ATTR_FILL_COLOR
[
Export = FALSE;
@@ -42,6 +44,7 @@ interface BaseTextFrame
DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR";
]
+ //UUUU
SID_ATTR_FILL_GRADIENT
[
Export = FALSE;
@@ -50,6 +53,7 @@ interface BaseTextFrame
DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR";
]
+ //UUUU
SID_ATTR_FILL_HATCH
[
Export = FALSE;
@@ -58,6 +62,7 @@ interface BaseTextFrame
DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR";
]
+ //UUUU
SID_ATTR_FILL_BITMAP
[
Export = FALSE;
@@ -66,6 +71,7 @@ interface BaseTextFrame
DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR";
]
+ //UUUU
SID_ATTR_FILL_TRANSPARENCE
[
Export = FALSE;
@@ -74,6 +80,7 @@ interface BaseTextFrame
DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR";
]
+ //UUUU
SID_ATTR_FILL_FLOATTRANSPARENCE
[
Export = FALSE;
@@ -82,26 +89,31 @@ interface BaseTextFrame
DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR";
]
+ //UUUU
SID_COLOR_TABLE
[
StateMethod = GetDrawAttrStateTextFrame;
]
+ //UUUU
SID_GRADIENT_LIST
[
StateMethod = GetDrawAttrStateTextFrame;
]
+ //UUUU
SID_HATCH_LIST
[
StateMethod = GetDrawAttrStateTextFrame;
]
+ //UUUU
SID_BITMAP_LIST
[
StateMethod = GetDrawAttrStateTextFrame;
]
+ //UUUU
SID_ATTRIBUTES_AREA
[
ExecMethod = ExecDrawDlgTextFrame;
diff --git a/sw/source/core/access/acccell.cxx b/sw/source/core/access/acccell.cxx
index d6ba535503b5..105aeb7b6933 100644
--- a/sw/source/core/access/acccell.cxx
+++ b/sw/source/core/access/acccell.cxx
@@ -115,17 +115,21 @@ SwAccessibleCell::SwAccessibleCell( SwAccessibleMap *pInitMap,
: SwAccessibleContext( pInitMap, AccessibleRole::TABLE_CELL, pCellFrm )
, aSelectionHelper( *this )
, bIsSelected( sal_False )
+ , m_xTableReference( NULL )
+ , m_pAccTable( NULL )
{
- vos::OGuard aGuard(Application::GetSolarMutex());
+ vos::OGuard aGuard( Application::GetSolarMutex() );
OUString sBoxName( pCellFrm->GetTabBox()->GetName() );
SetName( sBoxName );
bIsSelected = IsSelected();
- //Need not assign the pointer of accessible table object to m_pAccTable,
- //for it already done in SwAccessibleCell::GetTable(); Former codes:
- //m_pAccTable= GetTable();
- GetTable();
+ m_xTableReference = getAccessibleParent();
+#if OSL_DEBUG_LEVEL > 1
+ uno::Reference< XAccessibleContext > xContextTable( m_xTableReference, uno::UNO_QUERY );
+ OSL_ASSERT( xContextTable.is() && xContextTable->getAccessibleRole() == AccessibleRole::TABLE );
+#endif
+ m_pAccTable = static_cast< SwAccessibleTable * >( m_xTableReference.get() );
}
sal_Bool SwAccessibleCell::_InvalidateMyCursorPos()
@@ -140,7 +144,7 @@ sal_Bool SwAccessibleCell::_InvalidateMyCursorPos()
if( bNew )
{
// remember that object as the one that has the caret. This is
- // neccessary to notify that object if the cursor leaves it.
+ // necessary to notify that object if the cursor leaves it.
::vos::ORef < SwAccessibleContext > xThis( this );
GetMap()->SetCursorContext( xThis );
}
@@ -557,20 +561,3 @@ void SwAccessibleCell::deselectAccessibleChild(
aSelectionHelper.deselectAccessibleChild(nSelectedChildIndex);
}
-SwAccessibleTable *SwAccessibleCell::GetTable()
-{
- if (!m_pAccTable)
- {
- if (!xTableReference.is())
- {
- xTableReference = getAccessibleParent();
- #ifdef OSL_DEBUG_LEVEL
- uno::Reference<XAccessibleContext> xContextTable(xTableReference, uno::UNO_QUERY);
- OSL_ASSERT(xContextTable.is() && xContextTable->getAccessibleRole() == AccessibleRole::TABLE);
- #endif
- //SwAccessibleTable aTable = *(static_cast<SwAccessibleTable *>(xTable.get()));
- }
- m_pAccTable = static_cast<SwAccessibleTable *>(xTableReference.get());
- }
- return m_pAccTable;
-}
diff --git a/sw/source/core/access/acccell.hxx b/sw/source/core/access/acccell.hxx
index 50152d2b5fcc..5c31b338c487 100644
--- a/sw/source/core/access/acccell.hxx
+++ b/sw/source/core/access/acccell.hxx
@@ -47,6 +47,9 @@ class SwAccessibleCell : public SwAccessibleContext,
SwAccessibleSelectionHelper aSelectionHelper;
sal_Bool bIsSelected; // protected by base class mutex
+ ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > m_xTableReference;
+ SwAccessibleTable *m_pAccTable;
+
sal_Bool IsSelected();
sal_Bool _InvalidateMyCursorPos();
@@ -55,7 +58,7 @@ class SwAccessibleCell : public SwAccessibleContext,
protected:
// Set states for getAccessibleStateSet.
- // This drived class additionaly sets SELECTABLE(1) and SELECTED(+)
+ // This drived class additionally sets SELECTABLE(1) and SELECTED(+)
virtual void GetStates( ::utl::AccessibleStateSetHelper& rStateSet );
virtual void _InvalidateCursorPos();
@@ -171,9 +174,6 @@ public:
throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
::com::sun::star::uno::RuntimeException );
- SwAccessibleTable *GetTable();
- ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > xTableReference;
- SwAccessibleTable *m_pAccTable;
};
diff --git a/sw/source/core/access/accframebase.cxx b/sw/source/core/access/accframebase.cxx
index bac5215b51e2..8d512fce7d2c 100644
--- a/sw/source/core/access/accframebase.cxx
+++ b/sw/source/core/access/accframebase.cxx
@@ -177,7 +177,7 @@ void SwAccessibleFrameBase::_InvalidateCursorPos()
if( bNewSelected )
{
// remember that object as the one that has the caret. This is
- // neccessary to notify that object if the cursor leaves it.
+ // necessary to notify that object if the cursor leaves it.
::vos::ORef < SwAccessibleContext > xThis( this );
GetMap()->SetCursorContext( xThis );
}
diff --git a/sw/source/core/access/accframebase.hxx b/sw/source/core/access/accframebase.hxx
index be882c005495..fd3630bf0119 100644
--- a/sw/source/core/access/accframebase.hxx
+++ b/sw/source/core/access/accframebase.hxx
@@ -43,7 +43,7 @@ class SwAccessibleFrameBase : public SwAccessibleContext,
protected:
// Set states for getAccessibleStateSet.
- // This drived class additionaly sets SELECTABLE(1), SELECTED(+),
+ // This drived class additionally sets SELECTABLE(1), SELECTED(+),
// FOCUSABLE(1) and FOCUSED(+)
virtual void GetStates( ::utl::AccessibleStateSetHelper& rStateSet );
SwFlyFrm* getFlyFrm() const;
diff --git a/sw/source/core/access/accmap.cxx b/sw/source/core/access/accmap.cxx
index a038ba43edb7..f4c34746de34 100644
--- a/sw/source/core/access/accmap.cxx
+++ b/sw/source/core/access/accmap.cxx
@@ -19,19 +19,15 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sw.hxx"
-
#include <vos/ref.hxx>
#include <cppuhelper/weakref.hxx>
#include <vcl/window.hxx>
#include <svx/svdmodel.hxx>
#include <svx/unomod.hxx>
#include <tools/debug.hxx>
-
#include <map>
#include <list>
#include <vector>
@@ -61,15 +57,9 @@
#include <IDocumentDrawModelAccess.hxx>
#include <svx/ShapeTypeHandler.hxx>
#include <vcl/svapp.hxx>
-#ifndef _SVX_ACCESSIBILITY_SHAPE_TYPE_HANDLER_HXX
#include <svx/ShapeTypeHandler.hxx>
-#endif
-#ifndef _SVX_ACCESSIBILITY_SVX_SHAPE_TYPES_HXX
#include <svx/SvxShapeTypes.hxx>
-#endif
-#ifndef _SVDPAGE_HXX
#include <svx/svdpage.hxx>
-#endif
#include <com/sun/star/accessibility/AccessibleRelationType.hpp>
#include <com/sun/star/accessibility/AccessibleEventId.hpp>
#include <com/sun/star/accessibility/AccessibleStateType.hpp>
@@ -85,6 +75,7 @@
#include <prevwpage.hxx>
#include <svx/fmmodel.hxx>
#include <switerator.hxx>
+#include <drawdoc.hxx>
using namespace ::com::sun::star;
using namespace ::com::sun::star::accessibility;
@@ -679,7 +670,7 @@ class SwAccPreviewData
rectangle; needed to determine the visible part of the logic page rectangle.
@param _rPrevwWinSize
- input paramter - constant reference to the preview window size in TWIP;
+ input parameter - constant reference to the preview window size in TWIP;
needed to determine the visible part of the logic page rectangle
*/
void AdjustLogicPgRectToVisibleArea( SwRect& _iorLogicPgSwRect,
@@ -1062,7 +1053,7 @@ void SwAccessibleMap::AppendEvent( const SwAccessibleEvent_Impl& rEvent )
break;
case SwAccessibleEvent_Impl::DISPOSE:
// DISPOSE events overwrite all others. They are not stored
- // but executed immediatly to avoid broadcasting of
+ // but executed immediately to avoid broadcasting of
// defunctional objects. So what needs to be done here is to
// remove all events for the frame in question.
bAppendEvent = sal_False;
@@ -2018,7 +2009,7 @@ uno::Reference< XAccessible> SwAccessibleMap::GetContext( const SwFrm *pFrm,
// focused state then. Sending the focus changes event
// after that seems to be strange. However, we cannot
// send a focus event fo the new context now, because
- // noone except us knows it. In any case, we remeber
+ // no one except us knows it. In any case, we remember
// the new context as the one that has the focus
// currently.
diff --git a/sw/source/core/access/accpage.cxx b/sw/source/core/access/accpage.cxx
index 912bfb45f1a0..69cf8008e991 100644
--- a/sw/source/core/access/accpage.cxx
+++ b/sw/source/core/access/accpage.cxx
@@ -90,7 +90,7 @@ void SwAccessiblePage::_InvalidateCursorPos()
if( bNewSelected )
{
// remember that object as the one that has the caret. This is
- // neccessary to notify that object if the cursor leaves it.
+ // necessary to notify that object if the cursor leaves it.
::vos::ORef < SwAccessibleContext > xThis( this );
GetMap()->SetCursorContext( xThis );
}
diff --git a/sw/source/core/access/accpage.hxx b/sw/source/core/access/accpage.hxx
index c4845ba57c2a..39ed1493cc0c 100644
--- a/sw/source/core/access/accpage.hxx
+++ b/sw/source/core/access/accpage.hxx
@@ -49,7 +49,7 @@ protected:
SwRect GetBounds( /* const SwFrm *pFrm =0 */ );
// Set states for getAccessibleStateSet.
- // This drived class additionaly sets
+ // This drived class additionally sets
// FOCUSABLE(1) and FOCUSED(+)
virtual void GetStates( ::utl::AccessibleStateSetHelper& rStateSet );
diff --git a/sw/source/core/access/accpara.cxx b/sw/source/core/access/accpara.cxx
index fea6b93e1716..2edba5f6530d 100644
--- a/sw/source/core/access/accpara.cxx
+++ b/sw/source/core/access/accpara.cxx
@@ -502,7 +502,7 @@ void SwAccessibleParagraph::_InvalidateCursorPos()
if( -1 != nNew )
{
// remember that object as the one that has the caret. This is
- // neccessary to notify that object if the cursor leaves it.
+ // necessary to notify that object if the cursor leaves it.
::vos::ORef < SwAccessibleContext > xThis( this );
GetMap()->SetCursorContext( xThis );
}
@@ -845,7 +845,7 @@ sal_Bool SwAccessibleParagraph::GetWordBoundary(
rBound.endPos = nEndPos;
}
}
- // add the " " into the word boundry
+ // add the " " into the word boundary
else
{
rBound = pBreakIt->xBreak->getWordBoundary(rText, nPos, aLocale, nWordType, sal_True );
@@ -1208,7 +1208,7 @@ bool lcl_GetBackgroundColor( Color & rColor,
SwRect aDummyRect;
//UUUU
- FillAttributesPtr aFillAttributes;
+ drawinglayer::attribute::SdrAllFillAttributesHelperPtr aFillAttributes;
if ( pFrm &&
pFrm->GetBackgroundBrush( aFillAttributes, pBackgrdBrush, pSectionTOXColor, aDummyRect, false ) )
@@ -1916,7 +1916,7 @@ uno::Sequence<PropertyValue> SwAccessibleParagraph::getCharacterAttributes(
for( i = 0; i < nLength; i++ )
pIndices[i] = i;
sort( &pIndices[0], &pIndices[nLength], IndexCompare(pPairs) );
- // create sorted sequences accoring to index array
+ // create sorted sequences according to index array
uno::Sequence<PropertyValue> aNewValues( nLength );
PropertyValue* pNewValues = aNewValues.getArray();
for( i = 0; i < nLength; i++ )
@@ -3243,7 +3243,7 @@ sal_Bool SwAccessibleParagraph::setAttributes(
pIndices[i] = i;
sort( &pIndices[0], &pIndices[nLength], IndexCompare(pPairs) );
- // create sorted sequences accoring to index array
+ // create sorted sequences according to index array
uno::Sequence< ::rtl::OUString > aNames( nLength );
::rtl::OUString* pNames = aNames.getArray();
uno::Sequence< uno::Any > aValues( nLength );
diff --git a/sw/source/core/access/accpara.hxx b/sw/source/core/access/accpara.hxx
index fcafae708531..24026e01ad73 100644
--- a/sw/source/core/access/accpara.hxx
+++ b/sw/source/core/access/accpara.hxx
@@ -202,7 +202,7 @@ protected:
/// remove the current portion data
void ClearPortionData();
- /// get portion data; update if necesary
+ /// get portion data; update if necessary
SwAccessiblePortionData& GetPortionData()
throw( com::sun::star::uno::RuntimeException )
{
diff --git a/sw/source/core/attr/cellatr.cxx b/sw/source/core/attr/cellatr.cxx
index 958954331282..9acb0b7e5445 100644
--- a/sw/source/core/attr/cellatr.cxx
+++ b/sw/source/core/attr/cellatr.cxx
@@ -194,8 +194,10 @@ void SwTblBoxFormula::ChangeState( const SfxPoolItem* pItem )
{
// und dann in der externen Darstellung
aCopy.PtrToBoxNm( &pTblNd->GetTable() );
- pUpdtFld->pHistory->Add( &aCopy, &aCopy,
- pNd->FindTableBoxStartNode()->GetIndex() );
+ pUpdtFld->pHistory->Add(
+ &aCopy,
+ &aCopy,
+ pNd->FindTableBoxStartNode()->GetIndex());
}
}
else
diff --git a/sw/source/core/attr/format.cxx b/sw/source/core/attr/format.cxx
index 42708db95cbf..80219bcf8735 100644
--- a/sw/source/core/attr/format.cxx
+++ b/sw/source/core/attr/format.cxx
@@ -30,8 +30,12 @@
#include <paratr.hxx> // fuer SwParaFmt - SwHyphenBug
#include <swcache.hxx>
#include <fmtcolfunc.hxx>
+
//UUUU
-#include <unobrushitemhelper.hxx>
+#include <svx/sdr/attribute/sdrallfillattributeshelper.hxx>
+#include <svx/unobrushitemhelper.hxx>
+#include <svx/xdef.hxx>
+#include <frmatr.hxx>
/*************************************************************************
|* SwFmt::SwFmt
@@ -434,7 +438,7 @@ sal_Bool SwFmt::SetDerivedFrom(SwFmt *pDerFrom)
const SfxPoolItem& SwFmt::GetFmtAttr( sal_uInt16 nWhich, sal_Bool bInParents ) const
{
- if(RES_BACKGROUND == nWhich && RES_FLYFRMFMT == Which())
+ if(RES_BACKGROUND == nWhich && (RES_FLYFRMFMT == Which() || RES_FRMFMT == Which()))
{
//UUUU FALLBACKBREAKHERE should not be used; instead use [XATTR_FILL_FIRST .. XATTR_FILL_LAST]
OSL_ENSURE(false, "Do no longer use SvxBrushItem, instead use [XATTR_FILL_FIRST .. XATTR_FILL_LAST] FillAttributes (simple fallback is in place and used)");
@@ -443,7 +447,7 @@ const SfxPoolItem& SwFmt::GetFmtAttr( sal_uInt16 nWhich, sal_Bool bInParents ) c
// fill the local static SvxBrushItem from the current ItemSet so that
// the fill attributes [XATTR_FILL_FIRST .. XATTR_FILL_LAST] are used
// as good as possible to create a fallback representation and return that
- aSvxBrushItem = getSvxBrushItemFromSourceSet(aSet, bInParents);
+ aSvxBrushItem = getSvxBrushItemFromSourceSet(aSet, RES_BACKGROUND, bInParents);
return aSvxBrushItem;
}
@@ -454,11 +458,11 @@ const SfxPoolItem& SwFmt::GetFmtAttr( sal_uInt16 nWhich, sal_Bool bInParents ) c
SfxItemState SwFmt::GetItemState( sal_uInt16 nWhich, sal_Bool bSrchInParent, const SfxPoolItem **ppItem ) const
{
- if(RES_BACKGROUND == nWhich && RES_FLYFRMFMT == Which())
+ if(RES_BACKGROUND == nWhich && (RES_FLYFRMFMT == Which() || RES_FRMFMT == Which()))
{
//UUUU FALLBACKBREAKHERE should not be used; instead use [XATTR_FILL_FIRST .. XATTR_FILL_LAST]
OSL_ENSURE(false, "Do no longer use SvxBrushItem, instead use [XATTR_FILL_FIRST .. XATTR_FILL_LAST] FillAttributes (simple fallback is in place and used)");
- const FillAttributesPtr aFill = getFillAttributes();
+ const drawinglayer::attribute::SdrAllFillAttributesHelperPtr aFill = getSdrAllFillAttributesHelper();
// check if the new fill attributes are used
if(aFill.get() && aFill->isUsed())
@@ -468,15 +472,17 @@ SfxItemState SwFmt::GetItemState( sal_uInt16 nWhich, sal_Bool bSrchInParent, con
// to and return as state that it is set
static SvxBrushItem aSvxBrushItem(RES_BACKGROUND);
- aSvxBrushItem = getSvxBrushItemFromSourceSet(aSet, bSrchInParent);
- *ppItem = &aSvxBrushItem;
+ aSvxBrushItem = getSvxBrushItemFromSourceSet(aSet, RES_BACKGROUND, bSrchInParent);
+ if( ppItem )
+ *ppItem = &aSvxBrushItem;
return SFX_ITEM_SET;
}
// if not, reset pointer and return SFX_ITEM_DEFAULT to signal that
// the item is not set
- *ppItem = 0;
+ if( ppItem )
+ *ppItem = NULL;
return SFX_ITEM_DEFAULT;
}
@@ -496,7 +502,7 @@ sal_Bool SwFmt::SetFmtAttr(const SfxPoolItem& rAttr )
sal_Bool bRet = sal_False;
//UUUU
- if(RES_BACKGROUND == rAttr.Which() && RES_FLYFRMFMT == Which())
+ if(RES_BACKGROUND == rAttr.Which() && (RES_FLYFRMFMT == Which() || RES_FRMFMT == Which()))
{
//UUUU FALLBACKBREAKHERE should not be used; instead use [XATTR_FILL_FIRST .. XATTR_FILL_LAST]
OSL_ENSURE(false, "Do no longer use SvxBrushItem, instead use [XATTR_FILL_FIRST .. XATTR_FILL_LAST] FillAttributes (simple fallback is in place and used)");
@@ -544,12 +550,10 @@ sal_Bool SwFmt::SetFmtAttr(const SfxPoolItem& rAttr )
{
if( 0 != ( bRet = (0 != aSet.Put( rAttr ))) )
aSet.SetModifyAtAttr( this );
- // --> OD 2006-11-22 #i71574#
if ( nFmtWhich == RES_TXTFMTCOLL && rAttr.Which() == RES_PARATR_NUMRULE )
{
TxtFmtCollFunc::CheckTxtFmtCollForDeletionOfAssignmentToOutlineStyle( this );
}
- // <--
}
else
{
@@ -586,16 +590,27 @@ sal_Bool SwFmt::SetFmtAttr( const SfxItemSet& rSet )
sal_Bool bRet = sal_False;
- //UUUU
- if(RES_FLYFRMFMT == Which())
+ //UUUU Use local copy to be able to apply needed changes, e.g. call
+ // CheckForUniqueItemForLineFillNameOrIndex which is needed for NameOrIndex stuff
+ SfxItemSet aTempSet(rSet);
+
+ //UUUU Need to check for unique item for DrawingLayer items of type NameOrIndex
+ // and evtl. correct that item to ensure unique names for that type. This call may
+ // modify/correct entries inside of the given SfxItemSet
+ if(GetDoc())
+ {
+ GetDoc()->CheckForUniqueItemForLineFillNameOrIndex(aTempSet);
+ }
+
+ //UUUU FlyFrame PageStyle
+ if(RES_FLYFRMFMT == Which() || RES_FRMFMT == Which())
{
const SfxPoolItem* pSource = 0;
- if(SFX_ITEM_SET == rSet.GetItemState(RES_BACKGROUND, sal_False, &pSource))
+ if(SFX_ITEM_SET == aTempSet.GetItemState(RES_BACKGROUND, sal_False, &pSource))
{
//UUUU FALLBACKBREAKHERE should not be used; instead use [XATTR_FILL_FIRST .. XATTR_FILL_LAST]
OSL_ENSURE(false, "Do no longer use SvxBrushItem, instead use [XATTR_FILL_FIRST .. XATTR_FILL_LAST] FillAttributes (simple fallback is in place and used)");
- SfxItemSet aTempSet(rSet);
// copy all items to be set anyways to a local ItemSet with is also prepared for the new
// fill attribute ranges [XATTR_FILL_FIRST .. XATTR_FILL_LAST]. Add the attributes
@@ -639,20 +654,18 @@ sal_Bool SwFmt::SetFmtAttr( const SfxItemSet& rSet )
( RES_GRFFMTCOLL == nFmtWhich ||
RES_TXTFMTCOLL == nFmtWhich ) ) )
{
- if( 0 != ( bRet = (0 != aSet.Put( rSet ))) )
+ if( 0 != ( bRet = (0 != aSet.Put( aTempSet ))) )
aSet.SetModifyAtAttr( this );
- // --> OD 2006-11-22 #i71574#
if ( nFmtWhich == RES_TXTFMTCOLL )
{
TxtFmtCollFunc::CheckTxtFmtCollForDeletionOfAssignmentToOutlineStyle( this );
}
- // <--
}
else
{
SwAttrSet aOld( *aSet.GetPool(), aSet.GetRanges() ),
aNew( *aSet.GetPool(), aSet.GetRanges() );
- bRet = 0 != aSet.Put_BC( rSet, &aOld, &aNew );
+ bRet = 0 != aSet.Put_BC( aTempSet, &aOld, &aNew );
if( bRet )
{
// einige Sonderbehandlungen fuer Attribute
@@ -830,7 +843,8 @@ IDocumentChartDataProviderAccess* SwFmt::getIDocumentChartDataProviderAccess() {
//UUUU
const SvxBrushItem& SwFmt::GetBackground(sal_Bool bInP) const
{
- if(RES_FLYFRMFMT == Which())
+ //UUUU FlyFrame PageStyle
+ if(RES_FLYFRMFMT == Which() || RES_FRMFMT == Which())
{
//UUUU FALLBACKBREAKHERE should not be used; instead use [XATTR_FILL_FIRST .. XATTR_FILL_LAST]
OSL_ENSURE(false, "Do no longer use SvxBrushItem, instead use [XATTR_FILL_FIRST .. XATTR_FILL_LAST] FillAttributes (simple fallback is in place and used)");
@@ -839,7 +853,7 @@ const SvxBrushItem& SwFmt::GetBackground(sal_Bool bInP) const
// fill the local static SvxBrushItem from the current ItemSet so that
// the fill attributes [XATTR_FILL_FIRST .. XATTR_FILL_LAST] are used
// as good as possible to create a fallback representation and return that
- aSvxBrushItem = getSvxBrushItemFromSourceSet(aSet, bInP);
+ aSvxBrushItem = getSvxBrushItemFromSourceSet(aSet, RES_BACKGROUND, bInP);
return aSvxBrushItem;
}
@@ -848,12 +862,9 @@ const SvxBrushItem& SwFmt::GetBackground(sal_Bool bInP) const
}
//UUUU
-FillAttributesPtr SwFmt::getFillAttributes() const
+drawinglayer::attribute::SdrAllFillAttributesHelperPtr SwFmt::getSdrAllFillAttributesHelper() const
{
- // FALLBACKBREAKHERE return empty pointer
- OSL_ENSURE(false, "getFillAttributes() call only valid for RES_FLYFRMFMT currently (!)");
-
- return FillAttributesPtr();
+ return drawinglayer::attribute::SdrAllFillAttributesHelperPtr();
}
// eof
diff --git a/sw/source/core/attr/hints.cxx b/sw/source/core/attr/hints.cxx
index 6967e8ee6e32..2d460e2f97d2 100644
--- a/sw/source/core/attr/hints.cxx
+++ b/sw/source/core/attr/hints.cxx
@@ -64,12 +64,16 @@ SwDelTxt::SwDelTxt( xub_StrLen nS, xub_StrLen nL )
-SwUpdateAttr::SwUpdateAttr( xub_StrLen nS, xub_StrLen nE, sal_uInt16 nW )
- : SwMsgPoolItem( RES_UPDATE_ATTR ),
- nStart( nS ),
- nEnd( nE ),
- nWhichAttr( nW )
-{}
+SwUpdateAttr::SwUpdateAttr(
+ xub_StrLen nS,
+ xub_StrLen nE,
+ sal_uInt16 nW)
+: SwMsgPoolItem(RES_UPDATE_ATTR),
+ nStart(nS),
+ nEnd(nE),
+ nWhichAttr(nW)
+{
+}
// SwRefMarkFldUpdate wird verschickt, wenn sich die ReferenzMarkierungen
diff --git a/sw/source/core/attr/swatrset.cxx b/sw/source/core/attr/swatrset.cxx
index 6586d8a36873..6f478f264b9e 100644
--- a/sw/source/core/attr/swatrset.cxx
+++ b/sw/source/core/attr/swatrset.cxx
@@ -45,6 +45,7 @@
#include <svx/svdpool.hxx>
#include <svx/sxenditm.hxx>
#include <editeng/editeng.hxx>
+#include <editeng/editeng.hxx>
SwAttrPool::SwAttrPool( SwDoc* pD )
: SfxItemPool( String::CreateFromAscii(
diff --git a/sw/source/core/bastyp/init.cxx b/sw/source/core/bastyp/init.cxx
index 066d0e8d0581..c6d7c710f0bc 100644
--- a/sw/source/core/bastyp/init.cxx
+++ b/sw/source/core/bastyp/init.cxx
@@ -65,6 +65,7 @@
#ifndef _SVX_DIALOGS_HRC
#include <svx/dialogs.hrc>
#endif
+#include <svx/xdef.hxx>
#include <editeng/swafopt.hxx>
#include <editeng/svxacorr.hxx>
#include <unotools/charclass.hxx>
@@ -181,6 +182,10 @@ sal_uInt16 __FAR_DATA aTxtNodeSetRange[] = {
RES_PARATR_LIST_BEGIN, RES_PARATR_LIST_END-1,
// <--
RES_UNKNOWNATR_BEGIN, RES_UNKNOWNATR_END-1,
+
+ //UUUU FillAttribute support (paragraph FillStyle)
+ XATTR_FILL_FIRST, XATTR_FILL_LAST,
+
0
};
@@ -235,7 +240,7 @@ sal_uInt16 __FAR_DATA aFrmFmtSetRange[] = {
RES_FRMATR_BEGIN, RES_FRMATR_END-1,
RES_UNKNOWNATR_BEGIN, RES_UNKNOWNATR_END-1,
- //UUUU FillAttribute support
+ //UUUU FillAttribute support (TextFrame, OLE, Writer GraphicObject)
XATTR_FILL_FIRST, XATTR_FILL_LAST,
0
diff --git a/sw/source/core/bastyp/swrect.cxx b/sw/source/core/bastyp/swrect.cxx
index 785d2def1728..5d8ad8997330 100644
--- a/sw/source/core/bastyp/swrect.cxx
+++ b/sw/source/core/bastyp/swrect.cxx
@@ -244,7 +244,7 @@ void SwRect::Justify()
}
-// Similiar to the inline methods, but we need the function pointers
+// Similar to the inline methods, but we need the function pointers
void SwRect::_Width( const long nNew ) { m_Size.setWidth(nNew); }
void SwRect::_Height( const long nNew ) { m_Size.setHeight(nNew); }
diff --git a/sw/source/core/crsr/crsrsh.cxx b/sw/source/core/crsr/crsrsh.cxx
index cbf51e9cd46d..96298c3ad0ff 100644
--- a/sw/source/core/crsr/crsrsh.cxx
+++ b/sw/source/core/crsr/crsrsh.cxx
@@ -3269,7 +3269,7 @@ bool lcl_PosOk(const SwPosition & aPos)
/**
Checks if a PaM is valid. For a PaM to be valid its point must be
- valid. Additionaly if the PaM has a mark this has to be valid, too.
+ valid. Additionally if the PaM has a mark this has to be valid, too.
@param aPam the PaM to check
*/
diff --git a/sw/source/core/crsr/crstrvl.cxx b/sw/source/core/crsr/crstrvl.cxx
index 34f06860285b..9a0eece804cc 100644
--- a/sw/source/core/crsr/crstrvl.cxx
+++ b/sw/source/core/crsr/crstrvl.cxx
@@ -723,7 +723,7 @@ sal_Bool SwCrsrShell::MoveFldType(
SwFmtFld* pFmtFld = new SwFmtFld( SwDateTimeField(
(SwDateTimeFieldType*)pDoc->GetSysFldType( RES_DATETIMEFLD ) ) );
- pTxtFld = new SwTxtFld( *pFmtFld, rPos.nContent.GetIndex() );
+ pTxtFld = new SwTxtFld( *pFmtFld, rPos.nContent.GetIndex(), pDoc->IsClipBoard() );
pTxtFld->ChgTxtNode( pTNd );
}
diff --git a/sw/source/core/crsr/findtxt.cxx b/sw/source/core/crsr/findtxt.cxx
index f4db117d9bd4..3324462736cf 100644
--- a/sw/source/core/crsr/findtxt.cxx
+++ b/sw/source/core/crsr/findtxt.cxx
@@ -283,7 +283,7 @@ sal_uInt8 SwPaM::Find( const SearchOptions& rSearchOpt, sal_Bool bSearchInNotes
nStart = rCntntIdx.GetIndex();
/* #i80135# */
- // if there are SwPostItFields inside our current node text, we split the text into seperate pieces
+ // if there are SwPostItFields inside our current node text, we split the text into separate pieces
// and search for text inside the pieces as well as inside the fields
const SwpHints *pHts = ((SwTxtNode*)pNode)->GetpSwpHints();
diff --git a/sw/source/core/crsr/trvltbl.cxx b/sw/source/core/crsr/trvltbl.cxx
index 055ec1fcce71..8934deedc682 100644
--- a/sw/source/core/crsr/trvltbl.cxx
+++ b/sw/source/core/crsr/trvltbl.cxx
@@ -296,7 +296,7 @@ sal_Bool SwCrsrShell::SelTblBox()
// if we're in a table, create a table cursor, and select the cell
// that the current cursor's point resides in
- // search for start node of our table box. If not found, exit realy
+ // search for start node of our table box. If not found, exit really
const SwStartNode* pStartNode =
pCurCrsr->GetPoint()->nNode.GetNode().FindTableBoxStartNode();
diff --git a/sw/source/core/crsr/viscrs.cxx b/sw/source/core/crsr/viscrs.cxx
index 97e3e62d464d..6825e0619c5e 100644
--- a/sw/source/core/crsr/viscrs.cxx
+++ b/sw/source/core/crsr/viscrs.cxx
@@ -815,13 +815,15 @@ void SwShellCrsr::SetMark()
void SwShellCrsr::FillRects()
{
// die neuen Rechtecke berechnen
- if( HasMark() &&
- GetPoint()->nNode.GetNode().IsCntntNode() &&
- GetPoint()->nNode.GetNode().GetCntntNode()->getLayoutFrm( GetShell()->GetLayout() ) &&
- (GetMark()->nNode == GetPoint()->nNode ||
- (GetMark()->nNode.GetNode().IsCntntNode() &&
- GetMark()->nNode.GetNode().GetCntntNode()->getLayoutFrm( GetShell()->GetLayout() ) ) ))
- GetShell()->GetLayout()->CalcFrmRects( *this, GetShell()->IsTableMode() ); //swmod 071107//swmod 071225
+ if ( HasMark()
+ && GetPoint()->nNode.GetNode().IsCntntNode()
+ && GetPoint()->nNode.GetNode().GetCntntNode()->getLayoutFrm( GetShell()->GetLayout() )
+ && ( GetMark()->nNode == GetPoint()->nNode
+ || ( GetMark()->nNode.GetNode().IsCntntNode()
+ && GetMark()->nNode.GetNode().GetCntntNode()->getLayoutFrm( GetShell()->GetLayout() ) ) ) )
+ {
+ GetShell()->GetLayout()->CalcFrmRects( *this );
+ }
}
diff --git a/sw/source/core/doc/doc.cxx b/sw/source/core/doc/doc.cxx
index aefd4a07c723..510a1194de8c 100644
--- a/sw/source/core/doc/doc.cxx
+++ b/sw/source/core/doc/doc.cxx
@@ -19,15 +19,12 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sw.hxx"
#include <doc.hxx>
#include <UndoManager.hxx>
#include <hintids.hxx>
-
#include <tools/shl.hxx>
#include <tools/globname.hxx>
#include <svx/svxids.hrc>
@@ -57,7 +54,6 @@
#include <editeng/pbinitem.hxx>
#include <unotools/charclass.hxx>
#include <unotools/localedatawrapper.hxx>
-
#include <swatrset.hxx>
#include <swmodule.hxx>
#include <fmtpdsc.hxx>
@@ -115,25 +111,16 @@
#include <shellres.hxx>
#include <txtfrm.hxx>
#include <attrhint.hxx>
-
#include <wdocsh.hxx> // SwWebDocShell
#include <prtopt.hxx> // SwPrintOptions
-
#include <vector>
#include <map>
-
#include <osl/diagnose.h>
#include <osl/interlck.h>
#include <vbahelper/vbaaccesshelper.hxx>
-
#include "switerator.hxx"
-
-/* @@@MAINTAINABILITY-HORROR@@@
- Probably unwanted dependency on SwDocShell
-*/
-// --> OD 2005-08-29 #125370#
#include <layouter.hxx>
-// <--
+#include <drawdoc.hxx>
#include <svx/fmmodel.hxx>
using namespace ::com::sun::star;
@@ -966,38 +953,42 @@ SwFlyFrmFmt* SwDoc::_InsNoTxtNode( const SwPosition& rPos, SwNoTxtNode* pNode,
return pFmt;
}
-SwFlyFrmFmt* SwDoc::Insert( const SwPaM &rRg,
- const String& rGrfName,
- const String& rFltName,
- const Graphic* pGraphic,
- const SfxItemSet* pFlyAttrSet,
- const SfxItemSet* pGrfAttrSet,
- SwFrmFmt* pFrmFmt )
+
+SwFlyFrmFmt* SwDoc::Insert(
+ const SwPaM &rRg,
+ const String& rGrfName,
+ const String& rFltName,
+ const Graphic* pGraphic,
+ const SfxItemSet* pFlyAttrSet,
+ const SfxItemSet* pGrfAttrSet,
+ SwFrmFmt* pFrmFmt )
{
- if( !pFrmFmt )
+ if ( !pFrmFmt )
pFrmFmt = GetFrmFmtFromPool( RES_POOLFRM_GRAPHIC );
SwGrfNode* pSwGrfNode = GetNodes().MakeGrfNode(
- SwNodeIndex( GetNodes().GetEndOfAutotext() ),
- rGrfName, rFltName, pGraphic,
- pDfltGrfFmtColl );
- SwFlyFrmFmt* pSwFlyFrmFmt = _InsNoTxtNode( *rRg.GetPoint(), pSwGrfNode,
- pFlyAttrSet, pGrfAttrSet, pFrmFmt );
- pSwGrfNode->onGraphicChanged();
+ SwNodeIndex( GetNodes().GetEndOfAutotext() ),
+ rGrfName, rFltName, pGraphic,
+ pDfltGrfFmtColl );
+ SwFlyFrmFmt* pSwFlyFrmFmt =
+ _InsNoTxtNode( *rRg.GetPoint(), pSwGrfNode, pFlyAttrSet, pGrfAttrSet, pFrmFmt );
return pSwFlyFrmFmt;
}
-SwFlyFrmFmt* SwDoc::Insert( const SwPaM &rRg, const GraphicObject& rGrfObj,
- const SfxItemSet* pFlyAttrSet,
- const SfxItemSet* pGrfAttrSet,
- SwFrmFmt* pFrmFmt )
+
+
+SwFlyFrmFmt* SwDoc::Insert(
+ const SwPaM &rRg,
+ const GraphicObject& rGrfObj,
+ const SfxItemSet* pFlyAttrSet,
+ const SfxItemSet* pGrfAttrSet,
+ SwFrmFmt* pFrmFmt )
{
- if( !pFrmFmt )
+ if ( !pFrmFmt )
pFrmFmt = GetFrmFmtFromPool( RES_POOLFRM_GRAPHIC );
SwGrfNode* pSwGrfNode = GetNodes().MakeGrfNode(
- SwNodeIndex( GetNodes().GetEndOfAutotext() ),
- rGrfObj, pDfltGrfFmtColl );
+ SwNodeIndex( GetNodes().GetEndOfAutotext() ),
+ rGrfObj, pDfltGrfFmtColl );
SwFlyFrmFmt* pSwFlyFrmFmt = _InsNoTxtNode( *rRg.GetPoint(), pSwGrfNode,
- pFlyAttrSet, pGrfAttrSet, pFrmFmt );
- pSwGrfNode->onGraphicChanged();
+ pFlyAttrSet, pGrfAttrSet, pFrmFmt );
return pSwFlyFrmFmt;
}
diff --git a/sw/source/core/doc/docbm.cxx b/sw/source/core/doc/docbm.cxx
index 95cc3e57f1c5..4ab36760aa36 100644
--- a/sw/source/core/doc/docbm.cxx
+++ b/sw/source/core/doc/docbm.cxx
@@ -358,7 +358,6 @@ namespace sw { namespace mark
, m_vBookmarks()
, m_vFieldmarks()
, m_vAnnotationMarks()
- , m_vCommonMarks()
, m_pDoc(&rDoc)
{ }
@@ -444,13 +443,11 @@ namespace sw { namespace mark
case IDocumentMarkAccess::BOOKMARK:
case IDocumentMarkAccess::CROSSREF_NUMITEM_BOOKMARK:
case IDocumentMarkAccess::CROSSREF_HEADING_BOOKMARK:
- lcl_InsertMarkSorted(m_vCommonMarks, pMark);
// if(dynamic_cast<IBookmark*>)
lcl_InsertMarkSorted(m_vBookmarks, pMark);
break;
case IDocumentMarkAccess::TEXT_FIELDMARK:
case IDocumentMarkAccess::CHECKBOX_FIELDMARK:
- lcl_InsertMarkSorted(m_vCommonMarks, pMark);
// if(dynamic_cast<IFieldmark*>
lcl_InsertMarkSorted(m_vFieldmarks, pMark);
break;
@@ -460,7 +457,6 @@ namespace sw { namespace mark
case IDocumentMarkAccess::NAVIGATOR_REMINDER:
case IDocumentMarkAccess::DDE_BOOKMARK:
case IDocumentMarkAccess::UNO_BOOKMARK:
- lcl_InsertMarkSorted(m_vCommonMarks, pMark);
// no special array for these
break;
}
@@ -830,16 +826,6 @@ namespace sw { namespace mark
{
OSL_ENSURE( false, "<MarkManager::deleteMark(..)> - Bookmark not found in Bookmark container.");
}
-
- ppBookmark = lcl_FindMark(m_vCommonMarks, *ppMark);
- if ( ppBookmark != m_vCommonMarks.end() )
- {
- m_vCommonMarks.erase(ppBookmark);
- }
- else
- {
- OSL_ENSURE( false, "<MarkManager::deleteMark(..)> - Bookmark not found in common mark container.");
- }
}
break;
@@ -862,15 +848,6 @@ namespace sw { namespace mark
pTextFieldmark->ReleaseDoc(m_pDoc);
}
- ppFieldmark = lcl_FindMark(m_vCommonMarks, *ppMark);
- if ( ppFieldmark != m_vCommonMarks.end() )
- {
- m_vCommonMarks.erase(ppFieldmark);
- }
- else
- {
- OSL_ENSURE( false, "<MarkManager::deleteMark(..)> - Fieldmark not found in common mark container.");
- }
}
break;
@@ -891,17 +868,7 @@ namespace sw { namespace mark
case IDocumentMarkAccess::NAVIGATOR_REMINDER:
case IDocumentMarkAccess::DDE_BOOKMARK:
case IDocumentMarkAccess::UNO_BOOKMARK:
- {
- IDocumentMarkAccess::iterator_t ppOtherMark = lcl_FindMark(m_vCommonMarks, *ppMark);
- if ( ppOtherMark != m_vCommonMarks.end() )
- {
- m_vCommonMarks.erase(ppOtherMark);
- }
- else
- {
- OSL_ENSURE( false, "<MarkManager::deleteMark(..)> - Navigator Reminder, DDE Mark or Uno Makr not found in common mark container.");
- }
- }
+ // no special marks container
break;
}
DdeBookmark* const pDdeBookmark = dynamic_cast<DdeBookmark*>(ppMark->get());
@@ -947,8 +914,6 @@ namespace sw { namespace mark
m_vFieldmarks.clear();
m_vBookmarks.clear();
- m_vCommonMarks.clear();
-
m_vAnnotationMarks.clear();
#ifdef DEBUG
@@ -1006,22 +971,6 @@ namespace sw { namespace mark
{ return dynamic_cast<IFieldmark*>(lcl_getMarkBefore(m_vFieldmarks, rPos)); }
- IDocumentMarkAccess::const_iterator_t MarkManager::getCommonMarksBegin() const
- {
- return m_vCommonMarks.begin();
- }
-
- IDocumentMarkAccess::const_iterator_t MarkManager::getCommonMarksEnd() const
- {
- return m_vCommonMarks.end();
- }
-
- sal_Int32 MarkManager::getCommonMarksCount() const
- {
- return m_vCommonMarks.size();
- }
-
-
IDocumentMarkAccess::const_iterator_t MarkManager::getAnnotationMarksBegin() const
{
return m_vAnnotationMarks.begin();
@@ -1072,7 +1021,6 @@ namespace sw { namespace mark
void MarkManager::sortSubsetMarks()
{
- sort(m_vCommonMarks.begin(), m_vCommonMarks.end(), &lcl_MarkOrderingByStart);
sort(m_vBookmarks.begin(), m_vBookmarks.end(), &lcl_MarkOrderingByStart);
sort(m_vFieldmarks.begin(), m_vFieldmarks.end(), &lcl_MarkOrderingByStart);
sort(m_vAnnotationMarks.begin(), m_vAnnotationMarks.end(), &lcl_MarkOrderingByStart);
diff --git a/sw/source/core/doc/docdde.cxx b/sw/source/core/doc/docdde.cxx
index fcab094a5a5a..85b81cb51eb1 100644
--- a/sw/source/core/doc/docdde.cxx
+++ b/sw/source/core/doc/docdde.cxx
@@ -62,8 +62,8 @@ namespace
{
//Iterating over all bookmarks, checking DdeBookmarks
const ::rtl::OUString sNameLc = bCaseSensitive ? rName : GetAppCharClass().lower(rName);
- for(IDocumentMarkAccess::const_iterator_t ppMark = rMarkAccess.getCommonMarksBegin();
- ppMark != rMarkAccess.getCommonMarksEnd();
+ for(IDocumentMarkAccess::const_iterator_t ppMark = rMarkAccess.getAllMarksBegin();
+ ppMark != rMarkAccess.getAllMarksEnd();
ppMark++)
{
if ( IDocumentMarkAccess::GetType( *(ppMark->get()) ) == IDocumentMarkAccess::DDE_BOOKMARK)
@@ -162,7 +162,7 @@ sal_Bool lcl_FindTable( const SwFrmFmtPtr& rpTableFmt, void* pArgs )
bool SwDoc::GetData( const String& rItem, const String& rMimeType,
uno::Any & rValue ) const
{
- //search for bookmarks and sections case senstive at first. If nothing is found then try again case insensitive
+ //search for bookmarks and sections case sensitive at first. If nothing is found then try again case insensitive
bool bCaseSensitive = true;
while( true )
{
@@ -201,7 +201,7 @@ bool SwDoc::GetData( const String& rItem, const String& rMimeType,
bool SwDoc::SetData( const String& rItem, const String& rMimeType,
const uno::Any & rValue )
{
- //search for bookmarks and sections case senstive at first. If nothing is found then try again case insensitive
+ //search for bookmarks and sections case sensitive at first. If nothing is found then try again case insensitive
bool bCaseSensitive = true;
while( true )
{
@@ -240,7 +240,7 @@ bool SwDoc::SetData( const String& rItem, const String& rMimeType,
{
SwServerObject* pObj = NULL;
- //search for bookmarks and sections case senstive at first. If nothing is found then try again case insensitive
+ //search for bookmarks and sections case sensitive at first. If nothing is found then try again case insensitive
bool bCaseSensitive = true;
while( true )
{
@@ -380,7 +380,7 @@ sal_Bool SwDoc::SelectServerObj( const String& rStr, SwPaM*& rpPam,
return sal_False;
}
- //search for bookmarks and sections case senstive at first. If nothing is found then try again case insensitive
+ //search for bookmarks and sections case sensitive at first. If nothing is found then try again case insensitive
bool bCaseSensitive = true;
while( true )
{
diff --git a/sw/source/core/doc/docdesc.cxx b/sw/source/core/doc/docdesc.cxx
index d6d915958339..50c859253b97 100644
--- a/sw/source/core/doc/docdesc.cxx
+++ b/sw/source/core/doc/docdesc.cxx
@@ -19,8 +19,6 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sw.hxx"
@@ -74,7 +72,7 @@
#include <SwUndoPageDesc.hxx>
#include <pagedeschint.hxx>
#include <tgrditem.hxx>
-#include <svx/fmmodel.hxx>
+#include <drawdoc.hxx>
using namespace com::sun::star;
@@ -154,37 +152,72 @@ void lcl_DescSetAttr( const SwFrmFmt &rSource, SwFrmFmt &rDest,
// funktioniert nicht richtig, wenn man unterschiedliche WhichRanges hat.
/////////////// !!!!!!!!!!!!!!!!
//Die interressanten Attribute uebernehmen.
- sal_uInt16 __READONLY_DATA aIdArr[] = { RES_FRM_SIZE, RES_UL_SPACE,
- RES_BACKGROUND, RES_SHADOW,
- RES_COL, RES_COL,
- RES_FRAMEDIR, RES_FRAMEDIR,
- RES_TEXTGRID, RES_TEXTGRID,
- // --> FME 2005-04-18 #i45539#
- RES_HEADER_FOOTER_EAT_SPACING,
- RES_HEADER_FOOTER_EAT_SPACING,
- // <--
- RES_UNKNOWNATR_CONTAINER,
- RES_UNKNOWNATR_CONTAINER,
- 0 };
+ sal_uInt16 __READONLY_DATA aIdArr[] = {
+ RES_FRM_SIZE, RES_UL_SPACE, // [83..86
+ RES_BACKGROUND, RES_SHADOW, // [99..101
+ RES_COL, RES_COL, // [103
+ RES_TEXTGRID, RES_TEXTGRID, // [109
+ RES_FRAMEDIR, RES_FRAMEDIR, // [114
+ RES_HEADER_FOOTER_EAT_SPACING, RES_HEADER_FOOTER_EAT_SPACING, // [115
+ RES_UNKNOWNATR_CONTAINER, RES_UNKNOWNATR_CONTAINER, // [143
+
+ //UUUU take over DrawingLayer FillStyles
+ XATTR_FILL_FIRST, XATTR_FILL_LAST, // [1014
+
+ 0};
const SfxPoolItem* pItem;
for( sal_uInt16 n = 0; aIdArr[ n ]; n += 2 )
{
for( sal_uInt16 nId = aIdArr[ n ]; nId <= aIdArr[ n+1]; ++nId )
{
- // --> FME 2005-04-18 #i45539#
// bPage == true:
// All in aIdArr except from RES_HEADER_FOOTER_EAT_SPACING
// bPage == false:
// All in aIdArr except from RES_COL and RES_PAPER_BIN:
- // <--
- if( ( bPage && RES_HEADER_FOOTER_EAT_SPACING != nId ) ||
- ( !bPage && RES_COL != nId && RES_PAPER_BIN != nId ))
+ bool bExecuteId(true);
+
+ if(bPage)
+ {
+ // When Page
+ switch(nId)
+ {
+ // All in aIdArr except from RES_HEADER_FOOTER_EAT_SPACING
+ case RES_HEADER_FOOTER_EAT_SPACING:
+ //UUUU take out SvxBrushItem; it's the result of the fallback
+ // at SwFmt::GetItemState and not really in state SFX_ITEM_SET
+ case RES_BACKGROUND:
+ bExecuteId = false;
+ break;
+ default:
+ break;
+ }
+ }
+ else
{
- if( SFX_ITEM_SET == rSource.GetItemState( nId, sal_False, &pItem ))
- rDest.SetFmtAttr( *pItem );
+ // When not Page
+ switch(nId)
+ {
+ // When not Page: All in aIdArr except from RES_COL and RES_PAPER_BIN:
+ case RES_COL:
+ case RES_PAPER_BIN:
+ bExecuteId = false;
+ break;
+ default:
+ break;
+ }
+ }
+
+ if(bExecuteId)
+ {
+ if(SFX_ITEM_SET == rSource.GetItemState(nId,sal_False,&pItem))
+ {
+ rDest.SetFmtAttr(*pItem);
+ }
else
- rDest.ResetFmtAttr( nId );
+ {
+ rDest.ResetFmtAttr(nId);
+ }
}
}
}
diff --git a/sw/source/core/doc/docdraw.cxx b/sw/source/core/doc/docdraw.cxx
index 9965e5e80e25..2d173bbc7221 100644
--- a/sw/source/core/doc/docdraw.cxx
+++ b/sw/source/core/doc/docdraw.cxx
@@ -604,42 +604,13 @@ void SwDoc::InitDrawModel()
if ( pDrawModel )
ReleaseDrawModel();
-//UUUU
-// //DrawPool und EditEnginePool anlegen, diese gehoeren uns und werden
-// //dem Drawing nur mitgegeben. Im ReleaseDrawModel werden die Pools wieder
-// //zerstoert.
-// // 17.2.99: for Bug 73110 - for loading the drawing items. This must
-// // be loaded without RefCounts!
-// SfxItemPool *pSdrPool = new SdrItemPool( &GetAttrPool() );
-// // #75371# change DefaultItems for the SdrEdgeObj distance items
-// // to TWIPS.
-// if(pSdrPool)
-// {
-// const long nDefEdgeDist = ((500 * 72) / 127); // 1/100th mm in twips
-// pSdrPool->SetPoolDefaultItem(SdrEdgeNode1HorzDistItem(nDefEdgeDist));
-// pSdrPool->SetPoolDefaultItem(SdrEdgeNode1VertDistItem(nDefEdgeDist));
-// pSdrPool->SetPoolDefaultItem(SdrEdgeNode2HorzDistItem(nDefEdgeDist));
-// pSdrPool->SetPoolDefaultItem(SdrEdgeNode2VertDistItem(nDefEdgeDist));
-//
-// // #i33700#
-// // Set shadow distance defaults as PoolDefaultItems. Details see bug.
-// pSdrPool->SetPoolDefaultItem(SdrShadowXDistItem((300 * 72) / 127));
-// pSdrPool->SetPoolDefaultItem(SdrShadowYDistItem((300 * 72) / 127));
-// }
-// SfxItemPool *pEEgPool = EditEngine::CreatePool( sal_False );
-// pSdrPool->SetSecondaryPool( pEEgPool );
-// if ( !GetAttrPool().GetFrozenIdRanges () )
-// GetAttrPool().FreezeIdRanges();
-// else
-// pSdrPool->FreezeIdRanges();
-
// SJ: #95129# set FontHeight pool defaults without changing static SdrEngineDefaults
GetAttrPool().SetPoolDefaultItem(SvxFontHeightItem( 240, 100, EE_CHAR_FONTHEIGHT ));
RTL_LOGFILE_CONTEXT_TRACE( aLog, "before create DrawDocument" );
//Das SdrModel gehoert dem Dokument, wir haben immer zwei Layer und eine
//Seite.
- pDrawModel = new SwDrawDocument( this );
+ pDrawModel = new SwDrawModel( this );
pDrawModel->EnableUndo( GetIDocumentUndoRedo().DoesUndo() );
@@ -852,27 +823,14 @@ void SwDoc::ReleaseDrawModel()
if ( pDrawModel )
{
//!!Den code im sw3io fuer Einfuegen Dokument mitpflegen!!
-
delete pDrawModel; pDrawModel = 0;
-//UUUU
-// SfxItemPool *pSdrPool = GetAttrPool().GetSecondaryPool();
-//
-// ASSERT( pSdrPool, "missing Pool" );
-// SfxItemPool *pEEgPool = pSdrPool->GetSecondaryPool();
-// ASSERT( !pEEgPool->GetSecondaryPool(), "i don't accept additional pools");
-// pSdrPool->Delete(); //Erst die Items vernichten lassen,
-// //dann erst die Verkettung loesen
-// GetAttrPool().SetSecondaryPool( 0 ); //Der ist ein muss!
-// pSdrPool->SetSecondaryPool( 0 ); //Der ist sicherer
-// SfxItemPool::Free(pSdrPool);
-// SfxItemPool::Free(pEEgPool);
}
}
/*************************************************************************/
-FmFormModel* SwDoc::_MakeDrawModel()
+SwDrawModel* SwDoc::_MakeDrawModel()
{
ASSERT( !pDrawModel, "_MakeDrawModel: Why?" );
InitDrawModel();
@@ -1002,15 +960,15 @@ IMPL_LINK(SwDoc, CalcFieldValueHdl, EditFieldInfo*, pInfo)
/* TFFDI: The functions formerly declared 'inline'
*/
-const FmFormModel* SwDoc::GetDrawModel() const { return pDrawModel; }
-FmFormModel* SwDoc::GetDrawModel() { return pDrawModel; }
+const SwDrawModel* SwDoc::GetDrawModel() const { return pDrawModel; }
+SwDrawModel* SwDoc::GetDrawModel() { return pDrawModel; }
SdrLayerID SwDoc::GetHeavenId() const { return nHeaven; }
SdrLayerID SwDoc::GetHellId() const { return nHell; }
SdrLayerID SwDoc::GetControlsId() const { return nControls; }
SdrLayerID SwDoc::GetInvisibleHeavenId() const { return nInvisibleHeaven; }
SdrLayerID SwDoc::GetInvisibleHellId() const { return nInvisibleHell; }
SdrLayerID SwDoc::GetInvisibleControlsId() const { return nInvisibleControls; }
-FmFormModel* SwDoc::GetOrCreateDrawModel() { return GetDrawModel() ? GetDrawModel() : _MakeDrawModel(); }
+SwDrawModel* SwDoc::GetOrCreateDrawModel() { return GetDrawModel() ? GetDrawModel() : _MakeDrawModel(); }
// --> OD 2006-03-14 #i62875#
namespace docfunc
diff --git a/sw/source/core/doc/docedt.cxx b/sw/source/core/doc/docedt.cxx
index b3de17928223..b51541272df7 100644
--- a/sw/source/core/doc/docedt.cxx
+++ b/sw/source/core/doc/docedt.cxx
@@ -849,7 +849,11 @@ bool SwDoc::Overwrite( const SwPaM &rRg, const String &rStr )
? pNode->GetpSwpHints()->Count() : 0;
if( nOldAttrCnt != nNewAttrCnt )
{
- SwUpdateAttr aHint( 0, 0, 0 );
+ SwUpdateAttr aHint(
+ 0,
+ 0,
+ 0);
+
pNode->ModifyBroadcast( 0, &aHint, &ImpCheck);
}
diff --git a/sw/source/core/doc/docfld.cxx b/sw/source/core/doc/docfld.cxx
index 0dde12813783..93c15dcf2a63 100644
--- a/sw/source/core/doc/docfld.cxx
+++ b/sw/source/core/doc/docfld.cxx
@@ -2002,7 +2002,7 @@ void SwDoc::ChangeDBFields( const SvStringsDtor& rOldNames,
}
if (bExpand)
- pTxtFld->ExpandAlways();
+ pTxtFld->ExpandTxtFld( true );
}
SetModified();
}
diff --git a/sw/source/core/doc/docfly.cxx b/sw/source/core/doc/docfly.cxx
index d400711548de..bd1d77eaf085 100644
--- a/sw/source/core/doc/docfly.cxx
+++ b/sw/source/core/doc/docfly.cxx
@@ -19,8 +19,6 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sw.hxx"
@@ -34,11 +32,14 @@
#include <svx/xlnstit.hxx>
#include <svx/xlnedit.hxx>
#include <svx/xflhtit.hxx>
+#include <svx/xlndsit.hxx>
+#include <svx/xlnstit.hxx>
+#include <svx/xlnedit.hxx>
+#include <svx/xflhtit.hxx>
#include <fmtfsize.hxx>
#include <fmtornt.hxx>
#include <fmtsrnd.hxx>
#include <dcontact.hxx>
-
#include <ndgrf.hxx>
#include <doc.hxx>
#include <IDocumentUndoRedo.hxx>
@@ -66,15 +67,12 @@
#include <dflyobj.hxx>
#include <undoflystrattr.hxx>
#include <switerator.hxx>
-
-//UUUU
#include <svx/xbtmpit.hxx>
#include <svx/xflftrit.hxx>
-#include <svx/fmmodel.hxx>
+#include <drawdoc.hxx>
extern sal_uInt16 GetHtmlMode( const SwDocShell* );
-
using namespace ::com::sun::star;
sal_uInt16 SwDoc::GetFlyCount( FlyCntType eType ) const
@@ -438,7 +436,7 @@ lcl_SetFlyFrmAttr(SwDoc & rDoc,
void SwDoc::CheckForUniqueItemForLineFillNameOrIndex(SfxItemSet& rSet)
{
- SdrModel* pDrawModel = GetOrCreateDrawModel();
+ SwDrawModel* pDrawModel = GetOrCreateDrawModel();
SfxItemIter aIter(rSet);
for(const SfxPoolItem* pItem = aIter.FirstItem(); pItem; pItem = aIter.NextItem())
@@ -505,13 +503,7 @@ sal_Bool SwDoc::SetFlyFrmAttr( SwFrmFmt& rFlyFmt, SfxItemSet& rSet )
pSaveUndo.reset( new SwUndoFmtAttrHelper( rFlyFmt ) );
}
- //UUUU Need to check for unique item for DrawingLayer items of type NameOrIndex
- // and evtl. correct that item to ensure unique names for that type. This call may
- // modify/correct entries inside of the given SfxItemSet
- CheckForUniqueItemForLineFillNameOrIndex(rSet);
-
- bool const bRet =
- lcl_SetFlyFrmAttr(*this, &SwDoc::SetFlyFrmAnchor, rFlyFmt, rSet);
+ bool const bRet = lcl_SetFlyFrmAttr(*this, &SwDoc::SetFlyFrmAnchor, rFlyFmt, rSet);
if ( pSaveUndo.get() )
{
diff --git a/sw/source/core/doc/docfmt.cxx b/sw/source/core/doc/docfmt.cxx
index afd3b34827db..f6ba46ac7fe5 100644
--- a/sw/source/core/doc/docfmt.cxx
+++ b/sw/source/core/doc/docfmt.cxx
@@ -116,14 +116,10 @@ struct ParaRstFmt
const SfxItemSet* pDelSet;
sal_uInt16 nWhich;
bool bReset;
- // --> OD 2007-11-06 #i62575#
bool bResetListAttrs;
- // <--
bool bResetAll;
bool bInclRefToxMark;
- bool bKeepOutlineLevelAttr; //#outline level,add by zhaojianwei
-
ParaRstFmt( const SwPosition* pStt, const SwPosition* pEnd,
SwHistory* pHst, sal_uInt16 nWhch = 0, const SfxItemSet* pSet = 0 )
: pFmtColl(0),
@@ -132,14 +128,12 @@ struct ParaRstFmt
pEndNd(pEnd),
pDelSet(pSet),
nWhich(nWhch),
- // --> OD 2007-11-06 #i62675#
bReset( false ),
bResetListAttrs( false ),
- // <--
bResetAll( true ),
- bInclRefToxMark( false ),
- bKeepOutlineLevelAttr( false ) //#outline level,add by zhaojianwei
- {}
+ bInclRefToxMark( false )
+ {
+ }
ParaRstFmt( SwHistory* pHst )
: pFmtColl(0),
@@ -148,14 +142,12 @@ struct ParaRstFmt
pEndNd(0),
pDelSet(0),
nWhich(0),
- // --> OD 2007-11-06 #i62675#
bReset( false ),
bResetListAttrs( false ),
- // <--
bResetAll( true ),
- bInclRefToxMark( false ),
- bKeepOutlineLevelAttr( false ) //#outline level,add by zhaojianwei
- {}
+ bInclRefToxMark( false )
+ {
+ }
};
/* in pArgs steht die ChrFmtTablle vom Dokument
@@ -197,8 +189,8 @@ sal_Bool lcl_RstTxtAttr( const SwNodePtr& rpNd, void* pArgs )
sal_Bool lcl_RstAttr( const SwNodePtr& rpNd, void* pArgs )
{
- ParaRstFmt* pPara = (ParaRstFmt*)pArgs;
- SwCntntNode* pNode = (SwCntntNode*)rpNd->GetCntntNode();
+ const ParaRstFmt* pPara = (ParaRstFmt*) pArgs;
+ SwCntntNode* pNode = (SwCntntNode*) rpNd->GetCntntNode();
if( pNode && pNode->HasSwAttrSet() )
{
const sal_Bool bLocked = pNode->IsModifyLocked();
@@ -206,31 +198,24 @@ sal_Bool lcl_RstAttr( const SwNodePtr& rpNd, void* pArgs )
SwDoc* pDoc = pNode->GetDoc();
- // --> OD 2008-04-14 #refactorlists#
- // remove unused attribute RES_LR_SPACE
- // add list attributes
- SfxItemSet aSet( pDoc->GetAttrPool(),
- RES_PAGEDESC, RES_BREAK,
- RES_PARATR_NUMRULE, RES_PARATR_NUMRULE,
- RES_PARATR_OUTLINELEVEL,RES_PARATR_OUTLINELEVEL,//#outline level,removed by zhaojianwei
- RES_PARATR_LIST_BEGIN, RES_PARATR_LIST_END - 1,
- 0 );
- const SfxItemSet* pSet = pNode->GetpSwAttrSet();
-
- // --> OD 2008-04-15 #refactorlists#
-// std::vector<sal_uInt16> aClearWhichIds;
+ SfxItemSet aSavedAttrsSet(
+ pDoc->GetAttrPool(),
+ RES_PAGEDESC, RES_BREAK,
+ RES_PARATR_NUMRULE, RES_PARATR_NUMRULE,
+ RES_PARATR_LIST_BEGIN, RES_PARATR_LIST_END - 1,
+ 0 );
+ const SfxItemSet* pAttrSetOfNode = pNode->GetpSwAttrSet();
+
SvUShorts aClearWhichIds;
- // <--
- // --> OD 2008-04-15 #refactorlists#
// restoring all paragraph list attributes
{
SfxItemSet aListAttrSet( pDoc->GetAttrPool(),
RES_PARATR_LIST_BEGIN, RES_PARATR_LIST_END - 1,
0 );
- aListAttrSet.Set( *pSet );
+ aListAttrSet.Set( *pAttrSetOfNode );
if ( aListAttrSet.Count() )
{
- aSet.Put( aListAttrSet );
+ aSavedAttrsSet.Put( aListAttrSet );
SfxItemIter aIter( aListAttrSet );
const SfxPoolItem* pItem = aIter.GetCurItem();
while( pItem )
@@ -240,94 +225,72 @@ sal_Bool lcl_RstAttr( const SwNodePtr& rpNd, void* pArgs )
}
}
}
- // <--
const SfxPoolItem* pItem;
- // sal_uInt16 __READONLY_DATA aSavIds[ 3 ] = { RES_PAGEDESC, RES_BREAK, //#outline level,removed by zhaojianwei
- // RES_PARATR_NUMRULE };
- //for( sal_uInt16 n = 0; n < 3; ++n )
- sal_uInt16 __READONLY_DATA aSavIds[ 4 ] = { RES_PAGEDESC, RES_BREAK, //->add by zhaojianwei
- RES_PARATR_NUMRULE,
- RES_PARATR_OUTLINELEVEL };
- for( sal_uInt16 n = 0; n < 4; ++n ) //<-end,zhaojianwei
- {
- if( SFX_ITEM_SET == pSet->GetItemState( aSavIds[ n ], sal_False, &pItem ))
+ sal_uInt16 __READONLY_DATA aSavIds[3] =
+ { RES_PAGEDESC, RES_BREAK, RES_PARATR_NUMRULE };
+ for ( sal_uInt16 n = 0; n < 3; ++n )
+ {
+ if ( SFX_ITEM_SET == pAttrSetOfNode->GetItemState( aSavIds[n], sal_False, &pItem ) )
{
bool bSave = false;
- switch( aSavIds[ n ] )
+ switch (aSavIds[n])
{
- case RES_PAGEDESC:
- bSave = 0 != ((SwFmtPageDesc*)pItem)->GetPageDesc();
+ case RES_PAGEDESC:
+ bSave = 0 != ( (SwFmtPageDesc*) pItem )->GetPageDesc();
break;
- case RES_BREAK:
- bSave = SVX_BREAK_NONE != ((SvxFmtBreakItem*)pItem)->GetBreak();
+ case RES_BREAK:
+ bSave = SVX_BREAK_NONE != ( (SvxFmtBreakItem*) pItem )->GetBreak();
break;
- case RES_PARATR_NUMRULE:
- {
- bSave = 0 != ((SwNumRuleItem*)pItem)->GetValue().Len();
- }
+ case RES_PARATR_NUMRULE:
+ bSave = 0 != ( (SwNumRuleItem*) pItem )->GetValue().Len();
break;
- case RES_PARATR_OUTLINELEVEL: //#outline level,add by zhaojianwei
- {
- bSave = pPara && pPara->bKeepOutlineLevelAttr;
- }
- break; //<-end,zhaojianwei
}
- if( bSave )
+ if ( bSave )
{
- aSet.Put( *pItem );
- // --> OD 2008-04-15 #refactorlists#
-// aClearWhichIds.push_back( aSavIds[n] );
+ aSavedAttrsSet.Put( *pItem );
aClearWhichIds.Insert( aSavIds[n], aClearWhichIds.Count() );
}
}
}
- // --> OD 2008-04-14 #refactorlists#
// do not clear items directly from item set and only clear to be kept
// attributes, if no deletion item set is found.
-// pNode->ClearItemsFromAttrSet( aClearWhichIds );
const bool bKeepAttributes =
!pPara || !pPara->pDelSet || pPara->pDelSet->Count() == 0;
if ( bKeepAttributes )
{
pNode->ResetAttr( aClearWhichIds );
}
- // <--
if( !bLocked )
pNode->UnlockModify();
- if( pPara )
+ if ( pPara )
{
SwRegHistory aRegH( pNode, *pNode, pPara->pHistory );
- if( pPara->pDelSet && pPara->pDelSet->Count() )
+ if ( pPara->pDelSet && pPara->pDelSet->Count() )
{
- // --> OD 2008-04-15 #refactorlists#
ASSERT( !bKeepAttributes,
"<lcl_RstAttr(..)> - certain attributes are kept, but not needed. -> please inform OD" );
- // <--
SfxItemIter aIter( *pPara->pDelSet );
pItem = aIter.FirstItem();
- while( sal_True )
+ while ( sal_True )
{
- // --> OD 2008-04-14 #refactorlists#
- //
if ( ( pItem->Which() != RES_PAGEDESC &&
pItem->Which() != RES_BREAK &&
pItem->Which() != RES_PARATR_NUMRULE ) ||
- ( aSet.GetItemState( pItem->Which(), sal_False ) != SFX_ITEM_SET ) )
+ ( aSavedAttrsSet.GetItemState( pItem->Which(), sal_False ) != SFX_ITEM_SET ) )
{
pNode->ResetAttr( pItem->Which() );
}
- // <--
- if( aIter.IsAtEnd() )
+ if ( aIter.IsAtEnd() )
break;
pItem = aIter.NextItem();
}
}
- else if( pPara->bResetAll )
+ else if ( pPara->bResetAll )
pNode->ResetAllAttr();
else
pNode->ResetAttr( RES_PARATR_BEGIN, POOLATTR_END - 1 );
@@ -335,22 +298,21 @@ sal_Bool lcl_RstAttr( const SwNodePtr& rpNd, void* pArgs )
else
pNode->ResetAllAttr();
- // --> OD 2008-04-15 #refactorlists#
// only restore saved attributes, if needed
- if ( bKeepAttributes && aSet.Count() )
- // <--
+ if ( bKeepAttributes && aSavedAttrsSet.Count() )
{
pNode->LockModify();
- pNode->SetAttr( aSet );
+ pNode->SetAttr( aSavedAttrsSet );
- if( !bLocked )
+ if ( !bLocked )
pNode->UnlockModify();
}
}
return sal_True;
}
+
void SwDoc::RstTxtAttrs(const SwPaM &rRg, sal_Bool bInclRefToxMark )
{
SwHistory* pHst = 0;
@@ -590,7 +552,8 @@ static bool lcl_InsAttr(
|| isPARATR_LIST(nWhich)
|| isFRMATR(nWhich)
|| isGRFATR(nWhich)
- || isUNKNOWNATR(nWhich) )
+ || isUNKNOWNATR(nWhich)
+ || isDrawingLayerAttribute(nWhich) ) //UUUU
{
pOtherSet = &rChgSet;
bOtherAttr = true;
@@ -617,6 +580,10 @@ static bool lcl_InsAttr(
RES_FRMATR_BEGIN, RES_FRMATR_END-1,
RES_GRFATR_BEGIN, RES_GRFATR_END-1,
RES_UNKNOWNATR_BEGIN, RES_UNKNOWNATR_END-1,
+
+ //UUUU FillAttribute support
+ XATTR_FILL_FIRST, XATTR_FILL_LAST,
+
0 );
pTmpCharItemSet->Put( rChgSet );
@@ -921,7 +888,14 @@ static bool lcl_InsAttr(
if( pOtherSet && pOtherSet->Count() )
{
SwRegHistory aRegH( pNode, *pNode, pHistory );
- bRet = pNode->SetAttr( *pOtherSet ) || bRet;
+
+ //UUUU Need to check for unique item for DrawingLayer items of type NameOrIndex
+ // and evtl. correct that item to ensure unique names for that type. This call may
+ // modify/correct entries inside of the given SfxItemSet
+ SfxItemSet aTempLocalCopy(*pOtherSet);
+
+ pDoc->CheckForUniqueItemForLineFillNameOrIndex(aTempLocalCopy);
+ bRet = pNode->SetAttr(aTempLocalCopy) || bRet;
}
DELETECHARSETS
@@ -1309,7 +1283,7 @@ void SwDoc::SetDefault( const SfxItemSet& rSet )
{
aCallMod.Add( pDfltGrfFmtColl );
}
- else if (isFRMATR(nWhich))
+ else if (isFRMATR(nWhich) || isDrawingLayerAttribute(nWhich) ) //UUUU
{
aCallMod.Add( pDfltGrfFmtColl );
aCallMod.Add( pDfltTxtFmtColl );
@@ -1734,23 +1708,17 @@ void SwDoc::DelTxtFmtColl( SwTxtFmtColl *pColl, sal_Bool bBroadcast )
sal_Bool lcl_SetTxtFmtColl( const SwNodePtr& rpNode, void* pArgs )
{
- // ParaSetFmtColl * pPara = (ParaSetFmtColl*)pArgs;
- SwCntntNode* pCNd = (SwCntntNode*)rpNode->GetTxtNode();
- if( pCNd )
+ SwCntntNode* pCNd = (SwCntntNode*) rpNode->GetTxtNode();
+ if ( pCNd )
{
- ParaRstFmt* pPara = (ParaRstFmt*)pArgs;
+ ParaRstFmt* pPara = (ParaRstFmt*) pArgs;
- SwTxtFmtColl* pFmt = static_cast<SwTxtFmtColl*>(pPara->pFmtColl);
+ SwTxtFmtColl* pFmt = static_cast< SwTxtFmtColl* >( pPara->pFmtColl );
if ( pPara->bReset )
{
- if( pFmt->GetAttrOutlineLevel() == 0 && pPara )
- pPara->bKeepOutlineLevelAttr = true;
-
lcl_RstAttr( pCNd, pPara );
- // --> OD 2007-11-06 #i62675#
- // --> OD 2008-04-15 #refactorlists#
// check, if paragraph style has changed
if ( pPara->bResetListAttrs &&
pFmt != pCNd->GetFmtColl() &&
@@ -1778,7 +1746,6 @@ sal_Bool lcl_SetTxtFmtColl( const SwNodePtr& rpNode, void* pArgs )
if ( bChangeOfListStyleAtParagraph )
{
- // --> OD 2008-04-08 #refactorlists#
std::auto_ptr< SwRegHistory > pRegH;
if ( pPara->pHistory )
{
@@ -1794,9 +1761,7 @@ sal_Bool lcl_SetTxtFmtColl( const SwNodePtr& rpNode, void* pArgs )
pCNd->ResetAttr( RES_PARATR_LIST_ISCOUNTED );
pCNd->ResetAttr( RES_PARATR_LIST_ID );
}
- // <--
}
- // <--
}
// erst in die History aufnehmen, damit ggfs. alte Daten
@@ -1812,10 +1777,12 @@ sal_Bool lcl_SetTxtFmtColl( const SwNodePtr& rpNode, void* pArgs )
return sal_True;
}
-sal_Bool SwDoc::SetTxtFmtColl( const SwPaM &rRg,
- SwTxtFmtColl *pFmt,
- bool bReset,
- bool bResetListAttrs )
+
+sal_Bool SwDoc::SetTxtFmtColl(
+ const SwPaM &rRg,
+ SwTxtFmtColl *pFmt,
+ const bool bReset,
+ const bool bResetListAttrs )
{
SwDataChanged aTmp( rRg, 0 );
const SwPosition *pStt = rRg.Start(), *pEnd = rRg.End();
@@ -1824,11 +1791,9 @@ sal_Bool SwDoc::SetTxtFmtColl( const SwPaM &rRg,
if (GetIDocumentUndoRedo().DoesUndo())
{
- // --> OD 2008-04-15 #refactorlists#
SwUndoFmtColl* pUndo = new SwUndoFmtColl( rRg, pFmt,
bReset,
bResetListAttrs );
- // <--
pHst = pUndo->GetHistory();
GetIDocumentUndoRedo().AppendUndo(pUndo);
}
@@ -1836,17 +1801,18 @@ sal_Bool SwDoc::SetTxtFmtColl( const SwPaM &rRg,
ParaRstFmt aPara( pStt, pEnd, pHst );
aPara.pFmtColl = pFmt;
aPara.bReset = bReset;
- // --> OD 2007-11-06 #i62675#
aPara.bResetListAttrs = bResetListAttrs;
- // <--
GetNodes().ForEach( pStt->nNode.GetIndex(), pEnd->nNode.GetIndex()+1,
lcl_SetTxtFmtColl, &aPara );
- if( !aPara.nWhich )
+ if ( !aPara.nWhich )
bRet = sal_False; // keinen gueltigen Node gefunden
- if( bRet )
+ if ( bRet )
+ {
SetModified();
+ }
+
return bRet;
}
@@ -1942,11 +1908,9 @@ SwTxtFmtColl* SwDoc::CopyTxtColl( const SwTxtFmtColl& rColl )
pNewColl->CopyAttrs( rColl, sal_True );
// setze noch den Outline-Level
- //if( NO_NUMBERING != rColl.GetOutlineLevel() ) //#outline level,zhaojianwei
- // pNewColl->SetOutlineLevel( rColl.GetOutlineLevel() );
- if(rColl.IsAssignedToListLevelOfOutlineStyle())
- pNewColl->AssignToListLevelOfOutlineStyle(rColl.GetAssignedOutlineStyleLevel());//<-end,zhaojianwei
- //<-end
+ if ( rColl.IsAssignedToListLevelOfOutlineStyle() )
+ pNewColl->AssignToListLevelOfOutlineStyle( rColl.GetAssignedOutlineStyleLevel() );
+
pNewColl->SetPoolFmtId( rColl.GetPoolFmtId() );
pNewColl->SetPoolHelpId( rColl.GetPoolHelpId() );
@@ -2099,11 +2063,8 @@ void SwDoc::CopyFmtArr( const SvPtrarr& rSourceArr,
rDestArr, pSrcColl->GetNextTxtFmtColl().GetName() ) );
// setze noch den Outline-Level
- //if( NO_NUMBERING != pSrcColl->GetOutlineLevel() ) //#outline level,zhaojianwei
- // pDstColl->SetOutlineLevel( pSrcColl->GetOutlineLevel() );
if(pSrcColl->IsAssignedToListLevelOfOutlineStyle())
- pDstColl->AssignToListLevelOfOutlineStyle(pSrcColl->GetAssignedOutlineStyleLevel());//<-end,zhaojianwei
- //<-end
+ pDstColl->AssignToListLevelOfOutlineStyle(pSrcColl->GetAssignedOutlineStyleLevel());
//FEATURE::CONDCOLL
if( RES_CONDTXTFMTCOLL == pSrc->Which() )
diff --git a/sw/source/core/doc/docglbl.cxx b/sw/source/core/doc/docglbl.cxx
index 1d2cd54117b6..e7392512d3df 100644
--- a/sw/source/core/doc/docglbl.cxx
+++ b/sw/source/core/doc/docglbl.cxx
@@ -125,8 +125,7 @@ sal_Bool SwDoc::SplitDoc( sal_uInt16 eDocType, const String& rPath,
{
// wenn keine OutlineNumerierung ist, dann benutze eigenes Array
// und sammel die Nodes zusammen.
- //if( NO_NUMBERING == pSplitColl->GetOutlineLevel() )//#outline level,zhaojianwei
- if( pSplitColl->GetAttrOutlineLevel() == 0 )//<-end,zhaojianwei, 0814
+ if( pSplitColl->GetAttrOutlineLevel() == 0 )
{
pOutlNds = new SwOutlineNodes( 8, 8 );
SwIterator<SwTxtNode,SwFmtColl> aIter( *pSplitColl );
diff --git a/sw/source/core/doc/doclay.cxx b/sw/source/core/doc/doclay.cxx
index 436fb8046fe2..efecbce72822 100644
--- a/sw/source/core/doc/doclay.cxx
+++ b/sw/source/core/doc/doclay.cxx
@@ -19,8 +19,6 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sw.hxx"
@@ -45,7 +43,6 @@
#include <svx/fmpage.hxx>
#include <editeng/frmdiritem.hxx>
#include <svx/svdlegacy.hxx>
-
#include <swmodule.hxx>
#include <modcfg.hxx>
#include <com/sun/star/beans/XPropertySet.hpp>
@@ -97,15 +94,10 @@
#include <pagedesc.hxx>
#include <PostItMgr.hxx>
#include <comcore.hrc> // STR-ResId's
-
-// #i11176#
#include <unoframe.hxx>
-// OD 2004-05-24 #i28701#
#include <sortedobjs.hxx>
-
-// --> OD 2004-07-26 #i32089#
#include <vector>
-// <--
+#include <drawdoc.hxx>
#include <svx/fmmodel.hxx>
using namespace ::com::sun::star;
diff --git a/sw/source/core/doc/docnew.cxx b/sw/source/core/doc/docnew.cxx
index ab3bd935203c..d0847fc2659d 100644
--- a/sw/source/core/doc/docnew.cxx
+++ b/sw/source/core/doc/docnew.cxx
@@ -119,6 +119,8 @@
#include <sfx2/Metadatable.hxx>
#include <fmtmeta.hxx> // MetaFieldManager
+//UUUU
+#include <svx/xfillit0.hxx>
using namespace ::com::sun::star;
using namespace ::com::sun::star::document;
@@ -303,6 +305,21 @@ SwDoc::SwDoc()
{
RTL_LOGFILE_CONTEXT_AUTHOR( aLog, "SW", "JP93722", "SwDoc::SwDoc" );
+ //UUUU The DrawingLayer ItemPool which is used as 2nd pool for Writer documents' pool
+ // has a default for the XFillStyleItem of XFILL_SOLID and the color for it is the default
+ // fill color (blue7 or similar). This is a problem, in Writer we want the default fill
+ // style to be XFILL_NONE. This cannot simply be done by changing it in the 2nd pool at the
+ // pool defaults when the DrawingLayer ItemPool is used for Writer, that would lead to
+ // countless problems like DrawObjects initial fill and others.
+ // It is also hard to find all places where the initial ItemSets for Writer (including
+ // style hierarchies) are created and to always set (but only at the root) the FillStyle
+ // to NONE fixed; that will add that attribute to the file format. It will be hard to reset
+ // attribbute sets (which is done at import and using UI). Also not a good solution.
+ // Luckily Writer uses pDfltTxtFmtColl as default parent for all paragraphs and similar, thus
+ // it is possible to set this attribute here. It will be not reset when importing.
+ pDfltTxtFmtColl->SetFmtAttr(XFillStyleItem(XFILL_NONE));
+ pDfltFrmFmt->SetFmtAttr(XFillStyleItem(XFILL_NONE));
+
mbGlossDoc =
mbModified =
mbDtor =
@@ -752,27 +769,25 @@ SfxPrinter& SwDoc::CreatePrinter_() const
void SwDoc::SetDocShell( SwDocShell* pDSh )
{
- if( pDocShell != pDSh )
+ if(pDocShell != pDSh)
{
if (pDocShell)
{
pDocShell->SetUndoManager(0);
}
+
pDocShell = pDSh;
+
if (pDocShell)
{
pDocShell->SetUndoManager(& GetUndoManager());
}
- pLinkMgr->SetPersist( pDocShell );
- //JP 27.08.98: Bug 55570 - DocShell Pointer auch am DrawModel setzen
- if( pDrawModel )
- {
- ((SwDrawDocument*)pDrawModel)->SetObjectShell( pDocShell );
- pDrawModel->SetPersist( pDocShell );
- ASSERT( pDrawModel->GetPersist() == GetPersist(),
- "draw model's persist is out of sync" );
- }
+ pLinkMgr->SetPersist(pDocShell);
+
+ // set DocShell pointer also on DrawModel
+ InitDrawModelAndDocShell(pDocShell, GetDrawModel());
+ OSL_ENSURE(!pDrawModel || pDrawModel->GetPersist() == GetPersist(), "draw model's persist is out of sync");
}
}
diff --git a/sw/source/core/doc/docnum.cxx b/sw/source/core/doc/docnum.cxx
index 55fe518ef346..a685be9c9fdf 100644
--- a/sw/source/core/doc/docnum.cxx
+++ b/sw/source/core/doc/docnum.cxx
@@ -334,7 +334,7 @@ sal_Bool SwDoc::OutlineUpDown( const SwPaM& rPam, short nOffset )
}
/* If moving of the outline levels is applicable, i.e. for all
- outline levels occuring in the document there has to be a valid
+ outline levels occurring in the document there has to be a valid
target outline level implied by aMoveArr. */
bool bMoveApplicable = true;
for (n = nSttPos; n < nEndPos; n++)
@@ -467,7 +467,7 @@ sal_Bool SwDoc::MoveOutlinePara( const SwPaM& rPam, short nOffset )
// If the given range ends at an outlined text node we have to decide if it has to be a part of
// the moving range or not. Normally it will be a sub outline of our chapter
// and has to be moved, too. But if the chapter ends with a table(or a section end),
- // the next text node will be choosen and this could be the next outline of the same level.
+ // the next text node will be chosen and this could be the next outline of the same level.
// The criteria has to be the outline level: sub level => incorporate, same/higher level => no.
if( GetNodes().GetOutLineNds().Seek_Entry( pEndSrch, &nTmpPos ) )
{
@@ -492,8 +492,8 @@ sal_Bool SwDoc::MoveOutlinePara( const SwPaM& rPam, short nOffset )
// The following code corrects the range to handle sections (start/end nodes)
// The range will be extended if the least node before the range is a start node
// which ends inside the range => The complete section will be moved.
- // The range will be shrinked if the last position is a start node.
- // The range will be shrinked if the last node is an end node which starts before the range.
+ // The range will be shrunk if the last position is a start node.
+ // The range will be shrunk if the last node is an end node which starts before the range.
aSttRg--;
while( aSttRg.GetNode().IsStartNode() )
{
diff --git a/sw/source/core/doc/docredln.cxx b/sw/source/core/doc/docredln.cxx
index fb3574317bcf..6a0f3924348a 100644
--- a/sw/source/core/doc/docredln.cxx
+++ b/sw/source/core/doc/docredln.cxx
@@ -3273,16 +3273,23 @@ void SwRedline::InvalidateRange() // das Layout anstossen
nTmp = nSttCnt; nSttCnt = nEndCnt; nEndCnt = (sal_uInt16)nTmp;
}
- SwUpdateAttr aHt( 0, 0, RES_FMT_CHG );
SwNodes& rNds = GetDoc()->GetNodes();
- SwNode* pNd;
- for( sal_uLong n = nSttNd; n <= nEndNd; ++n )
- if( ND_TEXTNODE == ( pNd = rNds[ n ] )->GetNodeType() )
+
+ for(sal_uLong n(nSttNd); n <= nEndNd; ++n)
+ {
+ SwNode* pNode = rNds[n];
+
+ if(pNode && ND_TEXTNODE == pNode->GetNodeType())
{
- aHt.nStart = n == nSttNd ? nSttCnt : 0;
- aHt.nEnd = n == nEndNd ? nEndCnt : ((SwTxtNode*)pNd)->GetTxt().Len();
- ((SwTxtNode*)pNd)->ModifyNotification( &aHt, &aHt );
+ SwTxtNode* pNd = static_cast< SwTxtNode* >(pNode);
+ SwUpdateAttr aHt(
+ n == nSttNd ? nSttCnt : 0,
+ n == nEndNd ? nEndCnt : pNd->GetTxt().Len(),
+ RES_FMT_CHG);
+
+ pNd->ModifyNotification(&aHt, &aHt);
}
+ }
}
/*************************************************************************
diff --git a/sw/source/core/doc/doctxm.cxx b/sw/source/core/doc/doctxm.cxx
index 7da4265f1fb0..ab0e19a8ee80 100644
--- a/sw/source/core/doc/doctxm.cxx
+++ b/sw/source/core/doc/doctxm.cxx
@@ -546,7 +546,7 @@ sal_Bool SwDoc::DeleteTOX( const SwTOXBase& rTOXBase, sal_Bool bDelNodes )
delete to. This is done by first searching forward from the
end of the TOX' section. If no content node is found behind
the TOX one is searched before it. If this is not
- successfull, too, insert new text node behind the end of
+ successful, too, insert new text node behind the end of
the TOX' section. The cursors from the TOX' section will be
moved to the content node found or the new text node. */
@@ -1532,24 +1532,24 @@ void SwTOXBaseSection::UpdateCntnt( SwTOXElement eMyType,
TOX_OBJECTS != SwTOXBase::GetType() )
{
const SwTxtNode* pOutlNd = ::lcl_FindChapterNode( *pCNd,
- MAXLEVEL - 1 );
- if( pOutlNd )
+ MAXLEVEL - 1 );
+ if ( pOutlNd )
{
- //sal_uInt16 nTmp = pOutlNd->GetTxtColl()->GetOutlineLevel();//#outline level,zhaojianwei
- //if( nTmp < NO_NUMBERING )
- // nSetLevel = nTmp + 1;
- if( pOutlNd->GetTxtColl()->IsAssignedToListLevelOfOutlineStyle())
- nSetLevel = pOutlNd->GetTxtColl()->GetAttrOutlineLevel() ;//<-end,zhaojianwei
+ if ( pOutlNd->GetTxtColl()->IsAssignedToListLevelOfOutlineStyle() )
+ {
+ nSetLevel = pOutlNd->GetTxtColl()->GetAttrOutlineLevel();
+ }
}
}
- if( pCNd->getLayoutFrm( pDoc->GetCurrentLayout() ) && ( !IsFromChapter() ||
- ::lcl_FindChapterNode( *pCNd, 0 ) == pOwnChapterNode ))
+ if ( pCNd->getLayoutFrm( pDoc->GetCurrentLayout() ) && ( !IsFromChapter() ||
+ ::lcl_FindChapterNode( *pCNd, 0 ) == pOwnChapterNode ) )
{
- SwTOXPara * pNew = new SwTOXPara( *pCNd, eMyType,
- ( USHRT_MAX != nSetLevel )
- ? static_cast<sal_uInt16>(nSetLevel)
- : FORM_ALPHA_DELIMITTER );
+ SwTOXPara * pNew =
+ new SwTOXPara(
+ *pCNd,
+ eMyType,
+ ( USHRT_MAX != nSetLevel ) ? static_cast< sal_uInt16 >( nSetLevel ) : FORM_ALPHA_DELIMITTER );
InsertSorted( pNew );
}
}
@@ -1581,30 +1581,27 @@ void SwTOXBaseSection::UpdateTable( const SwTxtNode* pOwnChapterNode )
SwNodeIndex aCntntIdx( *pTblNd, 1 );
SwCntntNode* pCNd;
- while( 0 != ( pCNd = rNds.GoNext( &aCntntIdx ) ) &&
- aCntntIdx.GetIndex() < pTblNd->EndOfSectionIndex() )
+ while (0 != ( pCNd = rNds.GoNext( &aCntntIdx ) ) &&
+ aCntntIdx.GetIndex() < pTblNd->EndOfSectionIndex())
{
- if( pCNd->getLayoutFrm( pDoc->GetCurrentLayout() ) && (!IsFromChapter() ||
- ::lcl_FindChapterNode( *pCNd, 0 ) == pOwnChapterNode ))
+ if ( pCNd->getLayoutFrm( pDoc->GetCurrentLayout() )
+ && ( !IsFromChapter()
+ || ::lcl_FindChapterNode( *pCNd, 0 ) == pOwnChapterNode ) )
{
SwTOXTable * pNew = new SwTOXTable( *pCNd );
- if( IsLevelFromChapter() && TOX_TABLES != SwTOXBase::GetType())
+ if ( IsLevelFromChapter() && TOX_TABLES != SwTOXBase::GetType() )
{
- const SwTxtNode* pOutlNd =
- ::lcl_FindChapterNode( *pCNd, MAXLEVEL - 1 );
- if( pOutlNd )
+ const SwTxtNode* pOutlNd = ::lcl_FindChapterNode( *pCNd, MAXLEVEL - 1 );
+ if ( pOutlNd )
{
- //sal_uInt16 nTmp = pOutlNd->GetTxtColl()->GetOutlineLevel();//#outline level,zhaojianwei
- //if( nTmp < NO_NUMBERING )
- // pNew->SetLevel( nTmp + 1 );
- if( pOutlNd->GetTxtColl()->IsAssignedToListLevelOfOutlineStyle())
+ if ( pOutlNd->GetTxtColl()->IsAssignedToListLevelOfOutlineStyle() )
{
const int nTmp = pOutlNd->GetTxtColl()->GetAttrOutlineLevel();
- pNew->SetLevel( static_cast<sal_uInt16>(nTmp) );//<-end ,zhaojianwei
+ pNew->SetLevel( static_cast< sal_uInt16 >( nTmp ) );
}
}
}
- InsertSorted(pNew);
+ InsertSorted( pNew );
break;
}
}
diff --git a/sw/source/core/doc/fmtcol.cxx b/sw/source/core/doc/fmtcol.cxx
index 3f37cde57c76..a523b5614ed4 100644
--- a/sw/source/core/doc/fmtcol.cxx
+++ b/sw/source/core/doc/fmtcol.cxx
@@ -60,17 +60,14 @@ namespace TxtFmtCollFunc
return;
}
- // --> OD 2007-01-24 #i73790#
- // if ( pTxtFmtColl->AssignedToListLevelOfOutlineStyle() )
- if ( !pTxtFmtColl->StayAssignedToListLevelOfOutlineStyle() &&
- pTxtFmtColl->IsAssignedToListLevelOfOutlineStyle() )
- // <--
+ if ( !pTxtFmtColl->StayAssignedToListLevelOfOutlineStyle()
+ && pTxtFmtColl->IsAssignedToListLevelOfOutlineStyle() )
{
- if ( !pNewNumRuleItem )
+ if ( pNewNumRuleItem == NULL )
{
pTxtFmtColl->GetItemState( RES_PARATR_NUMRULE, sal_False, (const SfxPoolItem**)&pNewNumRuleItem );
}
- if ( pNewNumRuleItem )
+ if ( pNewNumRuleItem != NULL )
{
String sNumRuleName = pNewNumRuleItem->GetValue();
if ( sNumRuleName.Len() == 0 ||
@@ -82,7 +79,7 @@ namespace TxtFmtCollFunc
}
}
}
- // <--
+
SwNumRule* GetNumRule( SwTxtFmtColl& rTxtFmtColl )
{
@@ -207,7 +204,6 @@ void SwTxtFmtColl::Modify( const SfxPoolItem* pOld, const SfxPoolItem* pNew )
case RES_CHRATR_CTL_FONTSIZE:
aFontSizeArr[2] = (SvxFontHeightItem*)pNew;
break;
- // --> OD 2006-10-17 #i70223#
case RES_PARATR_NUMRULE:
{
if ( bAssignedToListLevelOfOutlineStyle )
@@ -215,17 +211,16 @@ void SwTxtFmtColl::Modify( const SfxPoolItem* pOld, const SfxPoolItem* pNew )
pNewNumRuleItem = (SwNumRuleItem*)pNew;
}
}
+ break;
default:
break;
}
- // --> OD 2006-10-17 #i70223#
- if ( bAssignedToListLevelOfOutlineStyle && pNewNumRuleItem )
+ if ( bAssignedToListLevelOfOutlineStyle
+ && pNewNumRuleItem != NULL )
{
- TxtFmtCollFunc::CheckTxtFmtCollForDeletionOfAssignmentToOutlineStyle(
- this, pNewNumRuleItem );
+ TxtFmtCollFunc::CheckTxtFmtCollForDeletionOfAssignmentToOutlineStyle( this, pNewNumRuleItem );
}
- // <--
int bWeiter = sal_True;
@@ -411,28 +406,24 @@ sal_Bool SwTxtFmtColl::ResetFmtAttr( sal_uInt16 nWhich1, sal_uInt16 nWhich2 )
}
// <--
-// --> OD 2007-01-24 #i73790#
+
sal_uInt16 SwTxtFmtColl::ResetAllFmtAttr()
{
const bool bOldState( mbStayAssignedToListLevelOfOutlineStyle );
mbStayAssignedToListLevelOfOutlineStyle = true;
- // --> OD 2008-12-16 #i70748#
// Outline level is no longer a member, it is a attribute now.
// Thus, it needs to be restored, if the paragraph style is assigned
// to the outline style
const int nAssignedOutlineStyleLevel = IsAssignedToListLevelOfOutlineStyle()
? GetAssignedOutlineStyleLevel()
: -1;
- // <--
sal_uInt16 nRet = SwFmtColl::ResetAllFmtAttr();
- // --> OD 2008-12-16 #i70748#
if ( nAssignedOutlineStyleLevel != -1 )
{
AssignToListLevelOfOutlineStyle( nAssignedOutlineStyleLevel );
}
- // <--
mbStayAssignedToListLevelOfOutlineStyle = bOldState;
@@ -649,7 +640,9 @@ void SwConditionTxtFmtColl::SetConditions( const SwFmtCollConditions& rCndClls )
aCondColls.Insert( pNew, n );
}
}
-//#outline level, zhaojianwei
+//FEATURE::CONDCOLL
+
+
void SwTxtFmtColl::SetAttrOutlineLevel( int nLevel)
{
ASSERT( 0 <= nLevel && nLevel <= MAXLEVEL ,"SwTxtFmtColl: Level Out Of Range" );
@@ -657,24 +650,26 @@ void SwTxtFmtColl::SetAttrOutlineLevel( int nLevel)
static_cast<sal_uInt16>(nLevel) ) );
}
+
int SwTxtFmtColl::GetAttrOutlineLevel() const
{
- return ((const SfxUInt16Item &)GetFmtAttr(RES_PARATR_OUTLINELEVEL)).GetValue();
+ return ( (const SfxUInt16Item &) GetFmtAttr( RES_PARATR_OUTLINELEVEL ) ).GetValue();
}
+
int SwTxtFmtColl::GetAssignedOutlineStyleLevel() const
{
ASSERT( IsAssignedToListLevelOfOutlineStyle(),
- "<SwTxtFmtColl::GetAssignedOutlineStyleLevel()> - misuse of method");
+ "<SwTxtFmtColl::GetAssignedOutlineStyleLevel()> - misuse of method" );
return GetAttrOutlineLevel() - 1;
}
+
void SwTxtFmtColl::AssignToListLevelOfOutlineStyle(const int nAssignedListLevel)
{
mbAssignedToOutlineStyle = true;
- SetAttrOutlineLevel(nAssignedListLevel+1);
+ SetAttrOutlineLevel( nAssignedListLevel + 1 );
- // --> OD 2009-03-18 #i100277#
SwIterator<SwTxtFmtColl,SwFmtColl> aIter( *this );
SwTxtFmtColl* pDerivedTxtFmtColl = aIter.First();
while ( pDerivedTxtFmtColl != 0 )
@@ -694,14 +689,16 @@ void SwTxtFmtColl::AssignToListLevelOfOutlineStyle(const int nAssignedListLevel)
pDerivedTxtFmtColl = aIter.Next();
}
- // <--
}
-void SwTxtFmtColl::DeleteAssignmentToListLevelOfOutlineStyle()
+
+void SwTxtFmtColl::DeleteAssignmentToListLevelOfOutlineStyle(
+ const bool bResetOutlineLevel )
{
mbAssignedToOutlineStyle = false;
- ResetFmtAttr(RES_PARATR_OUTLINELEVEL);
+ if ( bResetOutlineLevel )
+ {
+ ResetFmtAttr( RES_PARATR_OUTLINELEVEL );
+ }
}
-//<-end,zhaojianwei
-//FEATURE::CONDCOLL
diff --git a/sw/source/core/doc/notxtfrm.cxx b/sw/source/core/doc/notxtfrm.cxx
index 00632e02e93f..717e9f60f790 100644
--- a/sw/source/core/doc/notxtfrm.cxx
+++ b/sw/source/core/doc/notxtfrm.cxx
@@ -77,6 +77,8 @@
#include <drawinglayer/processor2d/processor2dtools.hxx>
#include <basegfx/matrix/b2dhommatrixtools.hxx>
#include <drawinglayer/primitive2d/graphicprimitive2d.hxx>
+#include <vcl/pdfextoutdevdata.hxx>
+#include <svtools/filter.hxx>
using namespace com::sun::star;
@@ -236,7 +238,7 @@ void lcl_ClearArea( const SwFrm &rFrm,
const SvxBrushItem *pItem; const Color *pCol; SwRect aOrigRect;
//UUUU
- FillAttributesPtr aFillAttributes;
+ drawinglayer::attribute::SdrAllFillAttributesHelperPtr aFillAttributes;
if ( rFrm.GetBackgroundBrush( aFillAttributes, pItem, pCol, aOrigRect, sal_False ) )
{
@@ -909,7 +911,7 @@ void SwNoTxtFrm::PaintPicture( OutputDevice* pOut, const SwRect &rGrfArea ) cons
{
//#i78025# charts own borders are not completely visible
//the above pixel correction is not correct - at least not for charts
- //so a different pixel correction is choosen here
+ //so a different pixel correction is chosen here
//this might be a good idea for all other OLE objects also,
//but as I cannot oversee the consequences I fix it only for charts for now
lcl_correctlyAlignRect( aAlignedGrfArea, rGrfArea, pOut );
@@ -1005,19 +1007,63 @@ void SwNoTxtFrm::PaintPicture( OutputDevice* pOut, const SwRect &rGrfArea ) cons
basegfx::tools::createScaleTranslateB2DHomMatrix(
aTargetRange.getRange(),
aTargetRange.getMinimum()));
- drawinglayer::primitive2d::Primitive2DSequence aContent;
+ drawinglayer::primitive2d::Primitive2DSequence aContent(1);
+ bool bDone(false);
+
+ // #i125171# The mechanism to get lossless jpegs into pdf is based on having the original
+ // file data (not the bitmap data) at the Graphic in the GfxLink (which has *nothing* to
+ // do with the graphic being linked). This works well for DrawingLayer GraphicObjects (linked
+ // and unlinked) but fails for linked Writer GraphicObjects. These have the URL in the
+ // GraphicObject, but no GfxLink with the original file data when it's a linked graphic.
+ // Since this blows up PDF size by a factor of 10 (the graphics get embedded as pixel maps
+ // then) it is okay to add this workarund: In the needed case, load the graphic in a way to
+ // get the GfxLink in the needed form and use that Graphic temporarily. Do this only when
+ // - we have PDF export
+ // - the GraphicObject is linked
+ // - the Graphic has no GfxLink
+ // - LosslessCompression is activated
+ // - it's indeed a jpeg graphic (could be checked by the url ending, but is more reliable to check later)
+ // In all other cases (normal repaint, print, etc...) use the available Graphic with the
+ // already loaded pixel graphic as before this change.
+ if(pOut->GetExtOutDevData() && rGrfObj.HasLink() && !rGrfObj.GetGraphic().IsLink())
+ {
+ const vcl::PDFExtOutDevData* pPDFExt = dynamic_cast< const vcl::PDFExtOutDevData* >(pOut->GetExtOutDevData());
+
+ if(pPDFExt && pPDFExt->GetIsLosslessCompression())
+ {
+ Graphic aTempGraphic;
+ INetURLObject aURL(rGrfObj.GetLink());
+
+ if(GRFILTER_OK == GraphicFilter::GetGraphicFilter()->ImportGraphic(aTempGraphic, aURL))
+ {
+ if(aTempGraphic.IsLink() && GFX_LINK_TYPE_NATIVE_JPG == aTempGraphic.GetLink().GetType())
+ {
+ aContent[0] = new drawinglayer::primitive2d::GraphicPrimitive2D(
+ aTargetTransform,
+ aTempGraphic,
+ aGrfAttr);
+ bDone = true;
+ }
+ }
+ }
+ }
- aContent.realloc(1);
- aContent[0] = new drawinglayer::primitive2d::GraphicPrimitive2D(
- aTargetTransform,
- rGrfObj.GetGraphic(),
- aGrfAttr);
+ if(!bDone)
+ {
+ aContent[0] = new drawinglayer::primitive2d::GraphicPrimitive2D(
+ aTargetTransform,
+ rGrfObj.GetGraphic(),
+ aGrfAttr);
+ }
paintUsingPrimitivesHelper(
*pOut,
aContent,
aTargetRange,
aTargetRange);
+
+ // need to reset the timer manually (was in original paints at GraphicManager)
+ rGrfObj.restartSwapOutTimer();
}
}
else
diff --git a/sw/source/core/doc/poolfmt.cxx b/sw/source/core/doc/poolfmt.cxx
index b8028e3f38c7..21ab23623967 100644
--- a/sw/source/core/doc/poolfmt.cxx
+++ b/sw/source/core/doc/poolfmt.cxx
@@ -27,6 +27,7 @@
#include <hintids.hxx>
#include <i18npool/mslangid.hxx>
#include <unotools/localedatawrapper.hxx>
+#include <svx/xdef.hxx>
#include <editeng/paperinf.hxx>
#include <editeng/wghtitem.hxx>
#include <editeng/fontitem.hxx>
@@ -69,6 +70,8 @@
#include <GetMetricVal.hxx>
#include <numrule.hxx>
+//UUUU
+#include <svx/xfillit0.hxx>
using namespace ::com::sun::star;
@@ -402,6 +405,7 @@ SwTxtFmtColl* SwDoc::GetTxtCollFromPool( sal_uInt16 nId, bool bRegardLanguage )
aSet.Put(aScriptSpace);
}
}
+
break;
case RES_POOLCOLL_TEXT: // Textkoerper
diff --git a/sw/source/core/doc/visiturl.cxx b/sw/source/core/doc/visiturl.cxx
index 65314c6f3228..2aeec71876cb 100644
--- a/sw/source/core/doc/visiturl.cxx
+++ b/sw/source/core/doc/visiturl.cxx
@@ -83,12 +83,14 @@ void SwURLStateChanged::Notify( SfxBroadcaster& , const SfxHint& rHint )
bUnLockView = !pESh->IsViewLocked();
pESh->LockView( sal_True );
}
- const_cast<SwTxtINetFmt*>(pTxtAttr)->SetVisitedValid( false );
+ const_cast<SwTxtINetFmt*>(pTxtAttr)->SetVisitedValid(false);
const SwTxtAttr* pAttr = pTxtAttr;
- SwUpdateAttr aUpdateAttr( *pAttr->GetStart(),
- *pAttr->End(),
- RES_FMT_CHG );
- ((SwTxtNode*)pTxtNd)->ModifyNotification( &aUpdateAttr, &aUpdateAttr );
+ SwUpdateAttr aUpdateAttr(
+ *pAttr->GetStart(),
+ *pAttr->End(),
+ RES_FMT_CHG);
+
+ const_cast< SwTxtNode* >(pTxtNd)->ModifyNotification(&aUpdateAttr, &aUpdateAttr);
}
if( bAction )
diff --git a/sw/source/core/docnode/ndnotxt.cxx b/sw/source/core/docnode/ndnotxt.cxx
index aaf3785b8a33..424d3aaa3fea 100644
--- a/sw/source/core/docnode/ndnotxt.cxx
+++ b/sw/source/core/docnode/ndnotxt.cxx
@@ -282,7 +282,6 @@ Graphic SwNoTxtNode::GetGraphic() const
return aRet;
}
-// --> OD 2009-07-14 #i73249#
void SwNoTxtNode::SetTitle( const String& rTitle, bool bBroadcast )
{
// Title attribute of <SdrObject> replaces own AlternateText attribute
diff --git a/sw/source/core/docnode/node.cxx b/sw/source/core/docnode/node.cxx
index c128dd10f7b9..b174e82cb59c 100644
--- a/sw/source/core/docnode/node.cxx
+++ b/sw/source/core/docnode/node.cxx
@@ -1117,7 +1117,7 @@ void SwCntntNode::Modify( const SfxPoolItem* pOldValue, const SfxPoolItem* pNewV
case RES_UPDATE_ATTR:
if( GetNodes().IsDocNodes() && IsTxtNode() )
{
- const sal_uInt16 nTmp = ((SwUpdateAttr*)pNewValue)->nWhichAttr;
+ const sal_uInt16 nTmp = ((SwUpdateAttr*)pNewValue)->getWhichAttr();
if ( RES_ATTRSET_CHG == nTmp )
{
// anybody wants to do some optimization here?
@@ -2090,6 +2090,12 @@ SwOLENodes* SwCntntNode::CreateOLENodesArray( const SwFmtColl& rColl, bool bOnly
return pNodes;
}
+//UUUU
+drawinglayer::attribute::SdrAllFillAttributesHelperPtr SwCntntNode::getSdrAllFillAttributesHelper() const
+{
+ return drawinglayer::attribute::SdrAllFillAttributesHelperPtr();
+}
+
//FEATURE::CONDCOLL
// Metoden aus Node.hxx - erst hier ist der TxtNode bekannt !!
// os: nur fuer ICC, da der zum optimieren zu dumm ist
diff --git a/sw/source/core/docnode/section.cxx b/sw/source/core/docnode/section.cxx
index 5689afdefd6f..f1d282066605 100644
--- a/sw/source/core/docnode/section.cxx
+++ b/sw/source/core/docnode/section.cxx
@@ -1260,7 +1260,7 @@ void lcl_UpdateLinksInSect( SwBaseLink& rUpdLnk, SwSectionNode& rSectNd )
// Der Return-Wert gibt an, was mit der Shell zu geschehen hat:
// 0 - Fehler, konnte DocShell nicht finden
// 1 - DocShell ist ein existieren Document
-// 2 - DocShell wurde neu angelegt, muss also wieder geschlossen werden ( will be assigned to xLockRef additionaly )
+// 2 - DocShell wurde neu angelegt, muss also wieder geschlossen werden ( will be assigned to xLockRef additionally )
int lcl_FindDocShell( SfxObjectShellRef& xDocSh,
SfxObjectShellLock& xLockRef,
diff --git a/sw/source/core/draw/dcontact.cxx b/sw/source/core/draw/dcontact.cxx
index c9897b43892d..d8a4b8d9ab31 100644
--- a/sw/source/core/draw/dcontact.cxx
+++ b/sw/source/core/draw/dcontact.cxx
@@ -19,8 +19,6 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sw.hxx"
#include "hintids.hxx"
@@ -74,10 +72,10 @@
#include <svx/svdetc.hxx>
#include <switerator.hxx>
#include <algorithm>
+#include <drawdoc.hxx>
using namespace ::com::sun::star;
-
void setContextWritingMode( SdrObject* pObj, SwFrm* pAnchor )
{
if( pObj && pAnchor )
@@ -1214,7 +1212,7 @@ void SwDrawContact::HandleChanged(
SdrHintKind eHint)
{
// OD 2004-06-01 #i26791# - no event handling, if existing <ViewShell>
- // is in contruction
+ // is in construction
SwDoc* pDoc = GetFmt()->GetDoc();
if ( pDoc->GetCurrentViewShell() &&
pDoc->GetCurrentViewShell()->IsInConstructor() )
diff --git a/sw/source/core/draw/dpage.cxx b/sw/source/core/draw/dpage.cxx
index 8ec1a493119d..976ae9fdce77 100644
--- a/sw/source/core/draw/dpage.cxx
+++ b/sw/source/core/draw/dpage.cxx
@@ -19,8 +19,6 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sw.hxx"
#include <basic/basmgr.hxx>
@@ -32,9 +30,7 @@
#include <fmturl.hxx>
#include <frmfmt.hxx>
#include <doc.hxx>
-#ifndef _DOCSH_HXX
#include <docsh.hxx>
-#endif
#include <shellres.hxx>
#include <viewimp.hxx>
#include <pagefrm.hxx>
@@ -46,21 +42,20 @@
#include <dpage.hxx>
#include <dcontact.hxx>
#include <dflyobj.hxx>
-#ifndef _DOCSH_HXX
#include <docsh.hxx>
-#endif
#include <usrfld.hxx>
#include <flyfrm.hxx>
#include <ndnotxt.hxx>
#include <grfatr.hxx>
#include <com/sun/star/drawing/XDrawPageSupplier.hpp>
#include <dview.hxx>
+#include <drawdoc.hxx>
using namespace ::com::sun::star::uno;
using namespace ::com::sun::star::drawing;
using namespace ::com::sun::star::frame;
-SwDPage::SwDPage(SwDrawDocument& rNewModel, bool bMasterPage) :
+SwDPage::SwDPage(SwDrawModel& rNewModel, bool bMasterPage) :
FmFormPage(rNewModel, 0, bMasterPage),
pGridLst( 0 ),
rDoc(rNewModel.GetDoc())
@@ -95,10 +90,10 @@ void SwDPage::copyDataFromSdrPage(const SdrPage& rSource)
SdrPage* SwDPage::CloneSdrPage(SdrModel* pTargetModel) const
{
- SwDrawDocument* pSwDrawDocument = static_cast< SwDrawDocument* >(pTargetModel ? pTargetModel : &getSdrModelFromSdrPage());
- OSL_ENSURE(dynamic_cast< SwDrawDocument* >(pSwDrawDocument), "Wrong SdrModel type in SwDPage clone (!)");
+ SwDrawModel* pSwDrawModel = static_cast< SwDrawModel* >(pTargetModel ? pTargetModel : &getSdrModelFromSdrPage());
+ OSL_ENSURE(dynamic_cast< SwDrawModel* >(pSwDrawModel), "Wrong SdrModel type in SwDPage clone (!)");
SwDPage* pClone = new SwDPage(
- *pSwDrawDocument,
+ *pSwDrawModel,
IsMasterPage());
OSL_ENSURE(pClone, "CloneSdrPage error (!)");
pClone->copyDataFromSdrPage(*this);
@@ -153,7 +148,7 @@ void InsertGridFrame( SdrPageGridFrameList *pLst, const SwFrm *pPg )
const SdrPageGridFrameList* SwDPage::GetGridFrameList(
const SdrView& rSdrView, const Rectangle *pRect ) const
{
- ViewShell *pSh = ((SwDrawDocument&)getSdrModelFromSdrPage()).GetDoc().GetCurrentViewShell(); //swmod 071108//swmod 071225
+ ViewShell *pSh = static_cast< SwDrawModel& >(getSdrModelFromSdrPage()).GetDoc().GetCurrentViewShell(); //swmod 071108//swmod 071225
if ( pSh )
{
while ( pSh->Imp()->GetDrawView() != &rSdrView )
diff --git a/sw/source/core/draw/drawdoc.cxx b/sw/source/core/draw/drawdoc.cxx
index 97be74795925..c32e0d7abbdd 100644
--- a/sw/source/core/draw/drawdoc.cxx
+++ b/sw/source/core/draw/drawdoc.cxx
@@ -62,37 +62,16 @@ const String GetPalettePath()
return aPathOpt.GetPalettePath();
}
-SwDrawDocument::SwDrawDocument( SwDoc* pD ) :
- FmFormModel( ::GetPalettePath(), &pD->GetAttrPool(), pD->GetDocShell() ),
+SwDrawModel::SwDrawModel( SwDoc* pD )
+: FmFormModel( ::GetPalettePath(), &pD->GetAttrPool(), pD->GetDocShell() ),
pDoc( pD )
{
SetExchangeObjectUnit( MAP_TWIP );
SetSwapGraphics( true );
- SwDocShell* pDocSh = pDoc->GetDocShell();
- if ( pDocSh )
- {
- SetObjectShell( pDocSh );
- SvxColorTableItem* pColItem = ( SvxColorTableItem* )
- ( pDocSh->GetItem( SID_COLOR_TABLE ) );
- XColorListSharedPtr aXCol = pColItem ?
- pColItem->GetColorTable() :
- XColorList::GetStdColorList();
- SetColorTableAtSdrModel( aXCol );
-
- if ( !pColItem )
- pDocSh->PutItem( SvxColorTableItem( aXCol, SID_COLOR_TABLE ) );
-
- pDocSh->PutItem( SvxGradientListItem( GetGradientListFromSdrModel(), SID_GRADIENT_LIST ));
- pDocSh->PutItem( SvxHatchListItem( GetHatchListFromSdrModel(), SID_HATCH_LIST ) );
- pDocSh->PutItem( SvxBitmapListItem( GetBitmapListFromSdrModel(), SID_BITMAP_LIST ) );
- pDocSh->PutItem( SvxDashListItem( GetDashListFromSdrModel(), SID_DASH_LIST ) );
- pDocSh->PutItem( SvxLineEndListItem( GetLineEndListFromSdrModel(), SID_LINEEND_LIST ) );
- pDocSh->PutItem( SfxUInt16Item(SID_ATTR_LINEEND_WIDTH_DEFAULT, 111) );
- SetObjectShell( pDocSh );
- }
- else
- SetColorTableAtSdrModel( XColorList::GetStdColorList() );
+ // use common InitDrawModelAndDocShell which will set the associations as needed,
+ // including SvxColorTableItem with WhichID SID_COLOR_TABLE
+ InitDrawModelAndDocShell(pDoc ? pDoc->GetDocShell() : 0, this);
// copy all the default values to the SdrModel
SfxItemPool* pSdrPool = pD->GetAttrPool().GetSecondaryPool();
@@ -137,7 +116,7 @@ SwDrawDocument::SwDrawDocument( SwDoc* pD ) :
\************************************************************************/
-SwDrawDocument::~SwDrawDocument()
+SwDrawModel::~SwDrawModel()
{
Broadcast(SdrBaseHint(HINT_MODELCLEARED));
@@ -155,7 +134,7 @@ SwDrawDocument::~SwDrawDocument()
\************************************************************************/
-SdrPage* SwDrawDocument::AllocPage(bool bMasterPage)
+SdrPage* SwDrawModel::AllocPage(bool bMasterPage)
{
SwDPage* pPage = new SwDPage(*this, 0 != bMasterPage);
pPage->SetName( String::CreateFromAscii(
@@ -164,7 +143,7 @@ SdrPage* SwDrawDocument::AllocPage(bool bMasterPage)
}
-SvStream* SwDrawDocument::GetDocumentStream( SdrDocumentStreamInfo& rInfo ) const
+SvStream* SwDrawModel::GetDocumentStream( SdrDocumentStreamInfo& rInfo ) const
{
SvStream* pRet = NULL;
uno::Reference < embed::XStorage > xRoot( pDoc->GetDocStorage() );
@@ -204,14 +183,14 @@ SvStream* SwDrawDocument::GetDocumentStream( SdrDocumentStreamInfo& rInfo ) cons
return pRet;
}
-SdrLayerID SwDrawDocument::GetControlExportLayerId( const SdrObject & ) const
+SdrLayerID SwDrawModel::GetControlExportLayerId( const SdrObject & ) const
{
//fuer Versionen < 5.0, es gab nur Hell und Heaven
return (SdrLayerID)pDoc->GetHeavenId();
}
// --> OD 2006-03-01 #b6382898#
-uno::Reference< uno::XInterface > SwDrawDocument::createUnoModel()
+uno::Reference< uno::XInterface > SwDrawModel::createUnoModel()
{
uno::Reference< uno::XInterface > xModel;
@@ -225,14 +204,13 @@ uno::Reference< uno::XInterface > SwDrawDocument::createUnoModel()
}
catch( uno::RuntimeException& )
{
- ASSERT( false,
- "<SwDrawDocument::createUnoModel()> - could *not* retrieve model at <SwDocShell>" );
+ ASSERT( false, "<SwDrawModel::createUnoModel()> - could *not* retrieve model at <SwDocShell>" );
}
return xModel;
}
-bool SwDrawDocument::IsWriter() const
+bool SwDrawModel::IsWriter() const
{
return true;
}
diff --git a/sw/source/core/edit/edfcol.cxx b/sw/source/core/edit/edfcol.cxx
index 85af11af58af..df23a38a5eda 100644
--- a/sw/source/core/edit/edfcol.cxx
+++ b/sw/source/core/edit/edfcol.cxx
@@ -66,7 +66,7 @@ SwTxtFmtColl& SwEditShell::GetTxtFmtColl( sal_uInt16 nFmtColl) const
// --> OD 2007-11-06 #i62675#
void SwEditShell::SetTxtFmtColl( SwTxtFmtColl *pFmt,
- bool bResetListAttrs )
+ const bool bResetListAttrs )
{
SwTxtFmtColl *pLocal = pFmt? pFmt: (*GetDoc()->GetTxtFmtColls())[0];
StartAllAction();
diff --git a/sw/source/core/edit/edlingu.cxx b/sw/source/core/edit/edlingu.cxx
index c390287e46b4..dfbad1422ffd 100644
--- a/sw/source/core/edit/edlingu.cxx
+++ b/sw/source/core/edit/edlingu.cxx
@@ -1678,7 +1678,7 @@ bool SwSpellIter::SpellSentence(::svx::SpellPortions& rPortions, bool bIsGrammar
SetCurrX( new SwPosition( *pCrsr->GetMark() ));
//if an error has been found go back to the text
- //preceeding the error
+ //preceding the error
if(xSpellRet.is())
{
*pCrsr->GetPoint() = aSaveStartPos;
diff --git a/sw/source/core/fields/authfld.cxx b/sw/source/core/fields/authfld.cxx
index bc63d52afb2e..593e53424548 100644
--- a/sw/source/core/fields/authfld.cxx
+++ b/sw/source/core/fields/authfld.cxx
@@ -352,7 +352,7 @@ sal_uInt16 SwAuthorityFieldType::GetSequencePos(long nHandle)
SwTOXSortTabBase* pOld = aSortArr[i];
if(*pOld == *pNew)
{
- //only the first occurence in the document
+ //only the first occurrence in the document
//has to be in the array
if(*pOld < *pNew)
DELETEZ(pNew);
diff --git a/sw/source/core/frmedt/feshview.cxx b/sw/source/core/frmedt/feshview.cxx
index 3817c64a3a3c..f04b960fe632 100644
--- a/sw/source/core/frmedt/feshview.cxx
+++ b/sw/source/core/frmedt/feshview.cxx
@@ -19,15 +19,11 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sw.hxx"
#include <com/sun/star/embed/EmbedMisc.hpp>
-
#include "hintids.hxx"
-
#include <svx/sdrobjectfilter.hxx>
#include <svx/svditer.hxx>
#include <svx/svdobj.hxx>
@@ -88,6 +84,7 @@
#include <svx/fmmodel.hxx>
#include <svx/svdview.hxx>
#include <switerator.hxx>
+#include <drawdoc.hxx>
#include <svx/obj3d.hxx>
#define SCROLLVAL 75
diff --git a/sw/source/core/graphic/ndgrf.cxx b/sw/source/core/graphic/ndgrf.cxx
index 05a50b7960f6..4cbee095f376 100644
--- a/sw/source/core/graphic/ndgrf.cxx
+++ b/sw/source/core/graphic/ndgrf.cxx
@@ -19,8 +19,6 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sw.hxx"
#include <hintids.hxx>
@@ -60,96 +58,123 @@
#include <retrieveinputstreamconsumer.hxx>
#include <drawinglayer/processor2d/objectinfoextractor2d.hxx>
#include <drawinglayer/primitive2d/objectinfoprimitive2d.hxx>
-
+#include <unotools/cacheoptions.hxx>
using namespace com::sun::star;
+#define SWAPGRAPHIC_TIMEOUT 5000
+
+// For comments see same method used in svx
+sal_uInt32 getCacheTimeInMs()
+{
+ static bool bSetAtAll(true);
+
+ if(bSetAtAll)
+ {
+ static bool bSetToPreferenceTime(true);
+
+ if(bSetToPreferenceTime)
+ {
+ const SvtCacheOptions aCacheOptions;
+ const sal_Int32 nSeconds(aCacheOptions.GetGraphicManagerObjectReleaseTime());
+
+ return nSeconds * 1000 / 12;
+ }
+ else
+ {
+ return SWAPGRAPHIC_TIMEOUT;
+ }
+ }
+
+ return 0;
+}
+
// --------------------
// SwGrfNode
// --------------------
SwGrfNode::SwGrfNode(
- const SwNodeIndex & rWhere,
- const String& rGrfName, const String& rFltName,
- const Graphic* pGraphic,
- SwGrfFmtColl *pGrfColl,
- SwAttrSet* pAutoAttr ) :
- SwNoTxtNode( rWhere, ND_GRFNODE, pGrfColl, pAutoAttr ),
- maGrfObj(),
- mpReplacementGraphic(0),
- // --> OD 2007-01-23 #i73788#
- mbLinkedInputStreamReady( false ),
- mbIsStreamReadOnly( sal_False )
- // <--
+ const SwNodeIndex & rWhere,
+ const String& rGrfName,
+ const String& rFltName,
+ const Graphic* pGraphic,
+ SwGrfFmtColl *pGrfColl,
+ SwAttrSet* pAutoAttr )
+ : SwNoTxtNode( rWhere, ND_GRFNODE, pGrfColl, pAutoAttr ),
+ maGrfObj(),
+ mpReplacementGraphic( 0 ),
+ mbLinkedInputStreamReady( false ),
+ mbIsStreamReadOnly( sal_False )
{
- maGrfObj.SetSwapStreamHdl( LINK( this, SwGrfNode, SwapGraphic ) );
- bInSwapIn = bChgTwipSize = bChgTwipSizeFromPixel = bLoadLowResGrf =
- bFrameInPaint = bScaleImageMap = sal_False;
+ maGrfObj.SetSwapStreamHdl( LINK( this, SwGrfNode, SwapGraphic ), getCacheTimeInMs() );
+ bInSwapIn = bChgTwipSize = bChgTwipSizeFromPixel = bLoadLowResGrf = bFrameInPaint = bScaleImageMap = sal_False;
bGrafikArrived = sal_True;
- ReRead(rGrfName,rFltName, pGraphic, 0, sal_False);
+ ReRead( rGrfName, rFltName, pGraphic, 0, sal_False );
}
-SwGrfNode::SwGrfNode( const SwNodeIndex & rWhere,
- const GraphicObject& rGrfObj,
- SwGrfFmtColl *pGrfColl, SwAttrSet* pAutoAttr ) :
- SwNoTxtNode( rWhere, ND_GRFNODE, pGrfColl, pAutoAttr ),
- maGrfObj(rGrfObj),
- mpReplacementGraphic(0),
- // --> OD 2007-01-23 #i73788#
- mbLinkedInputStreamReady( false ),
- mbIsStreamReadOnly( sal_False )
- // <--
+SwGrfNode::SwGrfNode(
+ const SwNodeIndex & rWhere,
+ const GraphicObject& rGrfObj,
+ SwGrfFmtColl *pGrfColl,
+ SwAttrSet* pAutoAttr )
+ : SwNoTxtNode( rWhere, ND_GRFNODE, pGrfColl, pAutoAttr ),
+ maGrfObj( rGrfObj ),
+ mpReplacementGraphic( 0 ),
+ mbLinkedInputStreamReady( false ),
+ mbIsStreamReadOnly( sal_False )
{
maGrfObj = rGrfObj;
- maGrfObj.SetSwapStreamHdl( LINK( this, SwGrfNode, SwapGraphic ) );
- if( rGrfObj.HasUserData() && rGrfObj.IsSwappedOut() )
+ maGrfObj.SetSwapStreamHdl( LINK( this, SwGrfNode, SwapGraphic ), getCacheTimeInMs() );
+ if ( rGrfObj.HasUserData() && rGrfObj.IsSwappedOut() )
maGrfObj.SetSwapState();
- bInSwapIn = bChgTwipSize = bChgTwipSizeFromPixel= bLoadLowResGrf =
- bFrameInPaint = bScaleImageMap = sal_False;
+ bInSwapIn = bChgTwipSize = bChgTwipSizeFromPixel = bLoadLowResGrf = bFrameInPaint = bScaleImageMap = sal_False;
bGrafikArrived = sal_True;
}
// Konstruktor fuer den SW/G-Reader. Dieser ctor wird verwendet,
// wenn eine gelinkte Grafik gelesen wird. Sie liest diese NICHT ein.
-
-SwGrfNode::SwGrfNode( const SwNodeIndex & rWhere,
- const String& rGrfName, const String& rFltName,
- SwGrfFmtColl *pGrfColl,
- SwAttrSet* pAutoAttr ) :
- SwNoTxtNode( rWhere, ND_GRFNODE, pGrfColl, pAutoAttr ),
- maGrfObj(),
- mpReplacementGraphic(0),
- // --> OD 2007-01-23 #i73788#
- mbLinkedInputStreamReady( false ),
- mbIsStreamReadOnly( sal_False )
- // <--
+SwGrfNode::SwGrfNode(
+ const SwNodeIndex & rWhere,
+ const String& rGrfName,
+ const String& rFltName,
+ SwGrfFmtColl *pGrfColl,
+ SwAttrSet* pAutoAttr )
+ :
+ SwNoTxtNode( rWhere, ND_GRFNODE, pGrfColl, pAutoAttr ),
+ maGrfObj(),
+ mpReplacementGraphic( 0 ),
+ mbLinkedInputStreamReady( false ),
+ mbIsStreamReadOnly( sal_False )
{
- maGrfObj.SetSwapStreamHdl( LINK( this, SwGrfNode, SwapGraphic ) );
+ maGrfObj.SetSwapStreamHdl( LINK( this, SwGrfNode, SwapGraphic ), getCacheTimeInMs() );
- Graphic aGrf; aGrf.SetDefaultType();
+ Graphic aGrf;
+ aGrf.SetDefaultType();
maGrfObj.SetGraphic( aGrf, rGrfName );
bInSwapIn = bChgTwipSize = bChgTwipSizeFromPixel = bLoadLowResGrf =
- bFrameInPaint = bScaleImageMap = sal_False;
+ bFrameInPaint = bScaleImageMap = sal_False;
bGrafikArrived = sal_True;
InsertLink( rGrfName, rFltName );
- if( IsLinkedFile() )
+ if ( IsLinkedFile() )
{
INetURLObject aUrl( rGrfName );
- if( INET_PROT_FILE == aUrl.GetProtocol() &&
- FStatHelper::IsDocument( aUrl.GetMainURL( INetURLObject::NO_DECODE ) ))
+ if ( INET_PROT_FILE == aUrl.GetProtocol() &&
+ FStatHelper::IsDocument( aUrl.GetMainURL( INetURLObject::NO_DECODE ) ) )
{
// File vorhanden, Verbindung herstellen ohne ein Update
- ((SwBaseLink*)&refLink)->Connect();
+ ( (SwBaseLink*) &refLink )->Connect();
}
}
}
sal_Bool SwGrfNode::ReRead(
- const String& rGrfName, const String& rFltName,
- const Graphic* pGraphic, const GraphicObject* pGrfObj,
+ const String& rGrfName,
+ const String& rFltName,
+ const Graphic* pGraphic,
+ const GraphicObject* pGrfObj,
sal_Bool bNewGrf )
{
sal_Bool bReadGrf = sal_False, bSetTwipSize = sal_True;
@@ -157,22 +182,22 @@ sal_Bool SwGrfNode::ReRead(
mpReplacementGraphic = 0;
ASSERT( pGraphic || pGrfObj || rGrfName.Len(),
- "GraphicNode without a name, Graphic or GraphicObject" );
+ "GraphicNode without a name, Graphic or GraphicObject" );
// ReadRead mit Namen
- if( refLink.Is() )
+ if ( refLink.Is() )
{
ASSERT( !bInSwapIn, "ReRead: stehe noch im SwapIn" );
- if( rGrfName.Len() )
+ if ( rGrfName.Len() )
{
// Besonderheit: steht im FltNamen DDE, handelt es sich um eine
// DDE-gelinkte Grafik
String sCmd( rGrfName );
- if( rFltName.Len() )
+ if ( rFltName.Len() )
{
sal_uInt16 nNewType;
- if( rFltName.EqualsAscii( "DDE" ))
+ if ( rFltName.EqualsAscii( "DDE" ) )
nNewType = OBJECT_CLIENT_DDE;
else
{
@@ -180,10 +205,10 @@ sal_Bool SwGrfNode::ReRead(
nNewType = OBJECT_CLIENT_GRF;
}
- if( nNewType != refLink->GetObjType() )
+ if ( nNewType != refLink->GetObjType() )
{
refLink->Disconnect();
- ((SwBaseLink*)&refLink)->SetObjType( nNewType );
+ ( (SwBaseLink*) &refLink )->SetObjType( nNewType );
}
}
@@ -195,16 +220,16 @@ sal_Bool SwGrfNode::ReRead(
refLink.Clear();
}
- if( pGraphic )
+ if ( pGraphic )
{
maGrfObj.SetGraphic( *pGraphic, rGrfName );
onGraphicChanged();
bReadGrf = sal_True;
}
- else if( pGrfObj )
+ else if ( pGrfObj )
{
maGrfObj = *pGrfObj;
- if( pGrfObj->HasUserData() && pGrfObj->IsSwappedOut() )
+ if ( pGrfObj->HasUserData() && pGrfObj->IsSwappedOut() )
maGrfObj.SetSwapState();
maGrfObj.SetLink( rGrfName );
onGraphicChanged();
@@ -215,112 +240,100 @@ sal_Bool SwGrfNode::ReRead(
// MIB 25.02.97: Daten der alten Grafik zuruecksetzen, damit
// die korrekte Ersatz-Darstellung erscheint, wenn die
// der neue Link nicht geladen werden konnte.
- Graphic aGrf; aGrf.SetDefaultType();
+ Graphic aGrf;
+ aGrf.SetDefaultType();
maGrfObj.SetGraphic( aGrf, rGrfName );
- if( refLink.Is() )
+ if ( refLink.Is() )
{
- if( getLayoutFrm( GetDoc()->GetCurrentLayout() ) )
+ if ( getLayoutFrm( GetDoc()->GetCurrentLayout() ) )
{
SwMsgPoolItem aMsgHint( RES_GRF_REREAD_AND_INCACHE );
ModifyNotification( &aMsgHint, &aMsgHint );
}
- // --> OD 2006-11-03 #i59688#
- // do not load linked graphic, if it isn't a new linked graphic.
-// else {
else if ( bNewGrf )
- // <--
{
//TODO refLink->setInputStream(getInputStream());
- ((SwBaseLink*)&refLink)->SwapIn();
+ ( (SwBaseLink*) &refLink )->SwapIn();
}
}
onGraphicChanged();
bSetTwipSize = sal_False;
}
}
- else if( pGraphic && !rGrfName.Len() )
+ else if ( pGraphic && !rGrfName.Len() )
{
// MIB 27.02.2001: Old stream must be deleted before the new one is set.
- if( HasStreamName() )
+ if ( HasEmbeddedStreamName() )
DelStreamName();
maGrfObj.SetGraphic( *pGraphic );
onGraphicChanged();
bReadGrf = sal_True;
}
- else if( pGrfObj && !rGrfName.Len() )
+ else if ( pGrfObj && !rGrfName.Len() )
{
// MIB 27.02.2001: Old stream must be deleted before the new one is set.
- if( HasStreamName() )
+ if ( HasEmbeddedStreamName() )
DelStreamName();
maGrfObj = *pGrfObj;
onGraphicChanged();
- if( pGrfObj->HasUserData() && pGrfObj->IsSwappedOut() )
+ if ( pGrfObj->HasUserData() && pGrfObj->IsSwappedOut() )
maGrfObj.SetSwapState();
bReadGrf = sal_True;
}
- // Import einer Grafik:
- // Ist die Grafik bereits geladen?
- else if( !bNewGrf && GRAPHIC_NONE != maGrfObj.GetType() )
+ else if ( !bNewGrf && GRAPHIC_NONE != maGrfObj.GetType() )
return sal_True;
else
{
- if( HasStreamName() )
+ if ( HasEmbeddedStreamName() )
DelStreamName();
// einen neuen Grafik-Link anlegen
InsertLink( rGrfName, rFltName );
- if( GetNodes().IsDocNodes() )
+ if ( GetNodes().IsDocNodes() )
{
- if( pGraphic )
+ if ( pGraphic )
{
maGrfObj.SetGraphic( *pGraphic, rGrfName );
onGraphicChanged();
bReadGrf = sal_True;
// Verbindung herstellen ohne ein Update; Grafik haben wir!
- ((SwBaseLink*)&refLink)->Connect();
+ ( (SwBaseLink*) &refLink )->Connect();
}
- else if( pGrfObj )
+ else if ( pGrfObj )
{
maGrfObj = *pGrfObj;
maGrfObj.SetLink( rGrfName );
onGraphicChanged();
bReadGrf = sal_True;
// Verbindung herstellen ohne ein Update; Grafik haben wir!
- ((SwBaseLink*)&refLink)->Connect();
+ ( (SwBaseLink*) &refLink )->Connect();
}
else
{
- // MIB 25.02.97: Daten der alten Grafik zuruecksetzen, damit
- // die korrekte Ersatz-Darstellung erscheint, wenn die
- // der neue Kink nicht geladen werden konnte.
- Graphic aGrf; aGrf.SetDefaultType();
+ Graphic aGrf;
+ aGrf.SetDefaultType();
maGrfObj.SetGraphic( aGrf, rGrfName );
onGraphicChanged();
- // --> OD 2006-11-03 #i59688#
- // do not load linked graphic, if it isn't a new linked graphic.
-// //TODO refLink->setInputStream(getInputStream());
-// ((SwBaseLink*)&refLink)->SwapIn();
if ( bNewGrf )
{
- ((SwBaseLink*)&refLink)->SwapIn();
+ ( (SwBaseLink*) &refLink )->SwapIn();
}
- // <--
}
}
}
// Bug 39281: Size nicht sofort loeschen - Events auf ImageMaps
// sollten nicht beim Austauschen nicht ins "leere greifen"
- if( bSetTwipSize )
+ if ( bSetTwipSize )
SetTwipSize( ::GetGraphicSizeTwip( maGrfObj.GetGraphic(), 0 ) );
// erzeuge noch einen Update auf die Frames
- if( bReadGrf && bNewGrf )
+ if ( bReadGrf && bNewGrf )
{
SwMsgPoolItem aMsgHint( RES_UPDATE_ATTR );
ModifyNotification( &aMsgHint, &aMsgHint );
@@ -329,18 +342,15 @@ sal_Bool SwGrfNode::ReRead(
return bReadGrf;
}
-
SwGrfNode::~SwGrfNode()
{
delete mpReplacementGraphic;
mpReplacementGraphic = 0;
- // --> OD 2007-03-30 #i73788#
mpThreadConsumer.reset();
- // <--
SwDoc* pDoc = GetDoc();
- if( refLink.Is() )
+ if ( refLink.Is() )
{
ASSERT( !bInSwapIn, "DTOR: stehe noch im SwapIn" );
pDoc->GetLinkManager().Remove( refLink );
@@ -348,7 +358,7 @@ SwGrfNode::~SwGrfNode()
}
else
{
- // --> OD 2005-01-19 #i40014# - A graphic node, which are in linked
+ // #i40014# - A graphic node, which are in linked
// section, whose link is another section is the document, doesn't
// have to remove the stream from the storage.
// Because it's hard to detect this case here and it would only fix
@@ -359,11 +369,10 @@ SwGrfNode::~SwGrfNode()
// inside one document have to be implemented.
// if( !pDoc->IsInDtor() && HasStreamName() )
// DelStreamName();
- // <--
}
//#39289# Die Frames muessen hier bereits geloescht weil der DTor der
//Frms die Grafik noch fuer StopAnimation braucht.
- if( GetDepends() )
+ if ( GetDepends() )
DelFrms();
}
@@ -373,29 +382,31 @@ void SwGrfNode::onGraphicChanged()
// try to access SwFlyFrmFmt; since title/desc/name are set there, there is no
// use to continue if it is not yet set. If not yet set, call onGraphicChanged()
// when it is set.
- SwFlyFrmFmt* pFlyFmt = dynamic_cast< SwFlyFrmFmt* >(GetFlyFmt());
+ SwFlyFrmFmt* pFlyFmt = dynamic_cast< SwFlyFrmFmt* >( GetFlyFmt() );
- if(pFlyFmt)
+ if ( pFlyFmt != NULL )
{
+ const bool bWasSwappedOut = ( GetGrfObj().IsSwappedOut() == sal_True );
+
String aName;
String aTitle;
String aDesc;
const SvgDataPtr& rSvgDataPtr = GetGrf().getSvgData();
- if(rSvgDataPtr.get())
+ if ( rSvgDataPtr.get() )
{
- const drawinglayer::primitive2d::Primitive2DSequence aSequence(rSvgDataPtr->getPrimitive2DSequence());
+ const drawinglayer::primitive2d::Primitive2DSequence aSequence( rSvgDataPtr->getPrimitive2DSequence() );
- if(aSequence.hasElements())
+ if ( aSequence.hasElements() )
{
drawinglayer::geometry::ViewInformation2D aViewInformation2D;
- drawinglayer::processor2d::ObjectInfoPrimitiveExtractor2D aProcessor(aViewInformation2D);
+ drawinglayer::processor2d::ObjectInfoPrimitiveExtractor2D aProcessor( aViewInformation2D );
- aProcessor.process(aSequence);
+ aProcessor.process( aSequence );
const drawinglayer::primitive2d::ObjectInfoPrimitive2D* pResult = aProcessor.getResult();
- if(pResult)
+ if ( pResult )
{
aName = pResult->getName();
aTitle = pResult->getTitle();
@@ -404,95 +415,99 @@ void SwGrfNode::onGraphicChanged()
}
}
- // do not use this currently; it seems that this name has to be unique in
- // the writer model and is already set to some default
- //if(aName.Len() && pFlyFmt)
- //{
- // pFlyFmt->SetName(aName);
- //}
+ if ( aTitle.Len() > 0 )
+ {
+ SetTitle( aTitle );
+ }
+ else if ( aName.Len() > 0 )
+ {
+ SetTitle( aName );
+ }
- if(aTitle.Len())
+ if ( aDesc.Len() > 0 )
{
- SetTitle(aTitle);
+ SetDescription( aDesc );
}
- if(aDesc.Len())
+ if ( bWasSwappedOut )
{
- SetDescription(aDesc);
+ SwapOut();
}
}
}
-void SwGrfNode::SetGraphic(const Graphic& rGraphic, const String& rLink)
+void SwGrfNode::SetGraphic(
+ const Graphic& rGraphic,
+ const String& rLink )
{
- maGrfObj.SetGraphic(rGraphic, rLink);
+ maGrfObj.SetGraphic( rGraphic, rLink );
onGraphicChanged();
}
const GraphicObject* SwGrfNode::GetReplacementGrfObj() const
{
- if(!mpReplacementGraphic)
+ if ( !mpReplacementGraphic )
{
const SvgDataPtr& rSvgDataPtr = GetGrfObj().GetGraphic().getSvgData();
- if(rSvgDataPtr.get())
+ if ( rSvgDataPtr.get() )
{
- const_cast< SwGrfNode* >(this)->mpReplacementGraphic = new GraphicObject(rSvgDataPtr->getReplacement());
+ const_cast< SwGrfNode* >( this )->mpReplacementGraphic = new GraphicObject( rSvgDataPtr->getReplacement() );
}
}
return mpReplacementGraphic;
}
-SwCntntNode *SwGrfNode::SplitCntntNode( const SwPosition & )
+SwCntntNode *SwGrfNode::SplitCntntNode(
+ const SwPosition & )
{
return this;
}
-
-SwGrfNode * SwNodes::MakeGrfNode( const SwNodeIndex & rWhere,
- const String& rGrfName,
- const String& rFltName,
- const Graphic* pGraphic,
- SwGrfFmtColl* pGrfColl,
- SwAttrSet* pAutoAttr,
- sal_Bool bDelayed )
+SwGrfNode * SwNodes::MakeGrfNode(
+ const SwNodeIndex & rWhere,
+ const String& rGrfName,
+ const String& rFltName,
+ const Graphic* pGraphic,
+ SwGrfFmtColl* pGrfColl,
+ SwAttrSet* pAutoAttr,
+ sal_Bool bDelayed )
{
ASSERT( pGrfColl, "MakeGrfNode: Formatpointer ist 0." );
SwGrfNode *pNode;
// Delayed erzeugen nur aus dem SW/G-Reader
- if( bDelayed )
+ if ( bDelayed )
pNode = new SwGrfNode( rWhere, rGrfName,
- rFltName, pGrfColl, pAutoAttr );
+ rFltName, pGrfColl, pAutoAttr );
else
pNode = new SwGrfNode( rWhere, rGrfName,
- rFltName, pGraphic, pGrfColl, pAutoAttr );
+ rFltName, pGraphic, pGrfColl, pAutoAttr );
return pNode;
}
-SwGrfNode * SwNodes::MakeGrfNode( const SwNodeIndex & rWhere,
- const GraphicObject& rGrfObj,
- SwGrfFmtColl* pGrfColl,
- SwAttrSet* pAutoAttr )
+SwGrfNode * SwNodes::MakeGrfNode(
+ const SwNodeIndex & rWhere,
+ const GraphicObject& rGrfObj,
+ SwGrfFmtColl* pGrfColl,
+ SwAttrSet* pAutoAttr )
{
ASSERT( pGrfColl, "MakeGrfNode: Formatpointer ist 0." );
return new SwGrfNode( rWhere, rGrfObj, pGrfColl, pAutoAttr );
}
-
Size SwGrfNode::GetTwipSize() const
{
return nGrfSize;
}
-
-
-sal_Bool SwGrfNode::ImportGraphic( SvStream& rStrm )
+sal_Bool SwGrfNode::ImportGraphic(
+ SvStream& rStrm )
{
Graphic aGraphic;
- const String aURL(maGrfObj.GetUserData());
+ const String aURL( maGrfObj.GetUserData() );
- if(!GraphicFilter::GetGraphicFilter()->ImportGraphic(aGraphic, aURL, rStrm))
+ if ( !GraphicFilter::GetGraphicFilter()->ImportGraphic( aGraphic, aURL, rStrm ) )
{
delete mpReplacementGraphic;
mpReplacementGraphic = 0;
@@ -511,25 +526,26 @@ sal_Bool SwGrfNode::ImportGraphic( SvStream& rStrm )
// 0 : nicht geladen
// 1 : Einlesen erfolgreich
-short SwGrfNode::SwapIn( sal_Bool bWaitForData )
+short SwGrfNode::SwapIn(
+ sal_Bool bWaitForData )
{
- if( bInSwapIn ) // nicht rekuriv!!
+ if ( bInSwapIn ) // nicht rekuriv!!
return !maGrfObj.IsSwappedOut();
short nRet = 0;
bInSwapIn = sal_True;
- SwBaseLink* pLink = (SwBaseLink*)(::sfx2::SvBaseLink*) refLink;
+ SwBaseLink* pLink = (SwBaseLink*) (::sfx2::SvBaseLink*) refLink;
- if( pLink )
+ if ( pLink )
{
- if( GRAPHIC_NONE == maGrfObj.GetType() ||
- GRAPHIC_DEFAULT == maGrfObj.GetType() )
+ if ( GRAPHIC_NONE == maGrfObj.GetType() ||
+ GRAPHIC_DEFAULT == maGrfObj.GetType() )
{
// noch nicht geladener Link
//TODO pLink->setInputStream(getInputStream());
- if( pLink->SwapIn( bWaitForData ) )
+ if ( pLink->SwapIn( bWaitForData ) )
nRet = -1;
- else if( GRAPHIC_DEFAULT == maGrfObj.GetType() )
+ else if ( GRAPHIC_DEFAULT == maGrfObj.GetType() )
{
// keine default Bitmap mehr, also neu Painten!
delete mpReplacementGraphic;
@@ -541,7 +557,8 @@ short SwGrfNode::SwapIn( sal_Bool bWaitForData )
ModifyNotification( &aMsgHint, &aMsgHint );
}
}
- else if( maGrfObj.IsSwappedOut() ) {
+ else if ( maGrfObj.IsSwappedOut() )
+ {
// nachzuladender Link
//TODO pLink->setInputStream(getInputStream());
nRet = pLink->SwapIn( bWaitForData ) ? 1 : 0;
@@ -549,24 +566,19 @@ short SwGrfNode::SwapIn( sal_Bool bWaitForData )
else
nRet = 1;
}
- else if( maGrfObj.IsSwappedOut() )
+ else if ( maGrfObj.IsSwappedOut() )
{
// Die Grafik ist im Storage oder im TempFile drin
- if( !HasStreamName() )
- nRet = (short)maGrfObj.SwapIn();
+ if ( !HasEmbeddedStreamName() )
+ nRet = (short) maGrfObj.SwapIn();
else
{
- // --> OD 2005-05-04 #i48434# - usage of new method <_GetStreamForEmbedGrf(..)>
try
{
- // --> OD, MAV 2005-08-17 #i53025# - needed correction of new
- // method <_GetStreamForEmbedGrf(..)>
-// bool bGraphic(false);
-// SvStream* pStrm = _GetStreamForEmbedGrf( bGraphic );
String aStrmName, aPicStgName;
_GetStreamStorageNames( aStrmName, aPicStgName );
- uno::Reference < embed::XStorage > refPics = _GetDocSubstorageOrRoot( aPicStgName );
+ uno::Reference< embed::XStorage > refPics = _GetDocSubstorageOrRoot( aPicStgName );
SvStream* pStrm = _GetStreamForEmbedGrf( refPics, aStrmName );
if ( pStrm )
{
@@ -574,18 +586,14 @@ short SwGrfNode::SwapIn( sal_Bool bWaitForData )
nRet = 1;
delete pStrm;
}
- // <--
}
catch ( uno::Exception& )
{
- // --> OD 2005-04-25 #i48434#
ASSERT( false, "<SwGrfNode::SwapIn(..)> - unhandled exception!" );
- // <--
}
- // <--
}
- if( 1 == nRet )
+ if ( 1 == nRet )
{
SwMsgPoolItem aMsg( RES_GRAPHIC_SWAPIN );
ModifyNotification( &aMsg, &aMsg );
@@ -595,30 +603,30 @@ short SwGrfNode::SwapIn( sal_Bool bWaitForData )
nRet = 1;
DBG_ASSERTWARNING( nRet, "Grafik kann nicht eingeswapt werden" );
- if( nRet )
+ if ( nRet )
{
- if( !nGrfSize.Width() && !nGrfSize.Height() )
+ if ( !nGrfSize.Width() && !nGrfSize.Height() )
SetTwipSize( ::GetGraphicSizeTwip( maGrfObj.GetGraphic(), 0 ) );
}
bInSwapIn = sal_False;
return nRet;
}
-
short SwGrfNode::SwapOut()
{
- if( maGrfObj.GetType() != GRAPHIC_DEFAULT &&
- maGrfObj.GetType() != GRAPHIC_NONE &&
- !maGrfObj.IsSwappedOut() && !bInSwapIn )
+ if ( maGrfObj.GetType() != GRAPHIC_DEFAULT
+ && maGrfObj.GetType() != GRAPHIC_NONE
+ && !maGrfObj.IsSwappedOut()
+ && !bInSwapIn )
{
- if( !refLink.Is() )
+ if ( !refLink.Is() )
{
// Das Swapping brauchen wir nur fuer Embedded Pictures
// Die Grafik wird in eine TempFile geschrieben, wenn
// sie frisch eingefuegt war, d.h. wenn es noch keinen
// Streamnamen im Storage gibt.
- if( !HasStreamName() )
- if( !maGrfObj.SwapOut() )
+ if ( !HasEmbeddedStreamName() )
+ if ( !maGrfObj.SwapOut() )
return 0;
}
// Geschriebene Grafiken oder Links werden jetzt weggeschmissen
@@ -627,26 +635,27 @@ short SwGrfNode::SwapOut()
return 1;
}
-
-sal_Bool SwGrfNode::GetFileFilterNms( String* pFileNm, String* pFilterNm ) const
-{
+sal_Bool SwGrfNode::GetFileFilterNms(
+ String* pFileNm,
+ String* pFilterNm ) const
+ {
sal_Bool bRet = sal_False;
- if( refLink.Is() && refLink->GetLinkManager() )
+ if ( refLink.Is() && refLink->GetLinkManager() )
{
sal_uInt16 nType = refLink->GetObjType();
- if( OBJECT_CLIENT_GRF == nType )
+ if ( OBJECT_CLIENT_GRF == nType )
bRet = refLink->GetLinkManager()->GetDisplayNames(
- refLink, 0, pFileNm, 0, pFilterNm );
- else if( OBJECT_CLIENT_DDE == nType && pFileNm && pFilterNm )
+ refLink, 0, pFileNm, 0, pFilterNm );
+ else if ( OBJECT_CLIENT_DDE == nType && pFileNm && pFilterNm )
{
String sApp, sTopic, sItem;
- if( refLink->GetLinkManager()->GetDisplayNames(
- refLink, &sApp, &sTopic, &sItem ) )
+ if ( refLink->GetLinkManager()->GetDisplayNames(
+ refLink, &sApp, &sTopic, &sItem ) )
{
( *pFileNm = sApp ) += sfx2::cTokenSeperator;
( *pFileNm += sTopic ) += sfx2::cTokenSeperator;
*pFileNm += sItem;
- pFilterNm->AssignAscii( RTL_CONSTASCII_STRINGPARAM( "DDE" ));
+ pFilterNm->AssignAscii( RTL_CONSTASCII_STRINGPARAM( "DDE" ) );
bRet = sal_True;
}
}
@@ -654,13 +663,12 @@ sal_Bool SwGrfNode::GetFileFilterNms( String* pFileNm, String* pFilterNm ) const
return bRet;
}
-
// Eine Grafik Undo-faehig machen. Falls sie sich bereits in
// einem Storage befindet, muss sie geladen werden.
sal_Bool SwGrfNode::SavePersistentData()
{
- if( refLink.Is() )
+ if ( refLink.Is() )
{
ASSERT( !bInSwapIn, "SavePersistentData: stehe noch im SwapIn" );
GetDoc()->GetLinkManager().Remove( refLink );
@@ -668,10 +676,10 @@ sal_Bool SwGrfNode::SavePersistentData()
}
// Erst mal reinswappen, falls sie im Storage ist
- if( HasStreamName() && !SwapIn() )
+ if ( HasEmbeddedStreamName() && !SwapIn() )
return sal_False;
- // --> OD 2005-04-19 #i44367#
+ // #i44367#
// Do not delete graphic file in storage, because the graphic file could
// be referenced by other graphic nodes.
// Because it's hard to detect this case here and it would only fix
@@ -683,36 +691,35 @@ sal_Bool SwGrfNode::SavePersistentData()
// Important note: see also fix for #i40014#
// if( HasStreamName() )
// DelStreamName();
- // <--
// Und in TempFile rausswappen
return (sal_Bool) SwapOut();
}
-
sal_Bool SwGrfNode::RestorePersistentData()
{
- if( refLink.Is() )
+ if ( refLink.Is() )
{
IDocumentLinksAdministration* pIDLA = getIDocumentLinksAdministration();
refLink->SetVisible( pIDLA->IsVisibleLinks() );
pIDLA->GetLinkManager().InsertDDELink( refLink );
- if( getIDocumentLayoutAccess()->GetCurrentLayout() ) //swmod 080218
+ if ( getIDocumentLayoutAccess()->GetCurrentLayout() )
refLink->Update();
}
return sal_True;
}
-
-void SwGrfNode::InsertLink( const String& rGrfName, const String& rFltName )
+void SwGrfNode::InsertLink(
+ const String& rGrfName,
+ const String& rFltName )
{
refLink = new SwBaseLink( sfx2::LINKUPDATE_ONCALL, FORMAT_GDIMETAFILE, this );
IDocumentLinksAdministration* pIDLA = getIDocumentLinksAdministration();
- if( GetNodes().IsDocNodes() )
+ if ( GetNodes().IsDocNodes() )
{
refLink->SetVisible( pIDLA->IsVisibleLinks() );
- if( rFltName.EqualsAscii( "DDE" ))
+ if ( rFltName.EqualsAscii( "DDE" ) )
{
sal_uInt16 nTmp = 0;
String sApp, sTopic, sItem;
@@ -720,7 +727,7 @@ void SwGrfNode::InsertLink( const String& rGrfName, const String& rFltName )
sTopic = rGrfName.GetToken( 0, sfx2::cTokenSeperator, nTmp );
sItem = rGrfName.Copy( nTmp );
pIDLA->GetLinkManager().InsertDDELink( refLink,
- sApp, sTopic, sItem );
+ sApp, sTopic, sItem );
}
else
{
@@ -729,26 +736,24 @@ void SwGrfNode::InsertLink( const String& rGrfName, const String& rFltName )
refLink->SetContentType( SOT_FORMATSTR_ID_SVXB );
pIDLA->GetLinkManager().InsertFileLink( *refLink,
- OBJECT_CLIENT_GRF, rGrfName,
- (!bSync && rFltName.Len() ? &rFltName : 0) );
+ OBJECT_CLIENT_GRF, rGrfName,
+ ( !bSync && rFltName.Len() ? &rFltName : 0 ) );
}
}
maGrfObj.SetLink( rGrfName );
}
-
void SwGrfNode::ReleaseLink()
{
- if( refLink.Is() )
+ if ( refLink.Is() )
{
- // #15508# remember some stuff from the linked graphic
- const String aFileName(maGrfObj.GetLink());
- const Graphic aLocalGraphic(maGrfObj.GetGraphic());
- const bool bHasOriginalData(aLocalGraphic.IsLink());
+ const String aFileName( maGrfObj.GetLink() );
+ const Graphic aLocalGraphic( maGrfObj.GetGraphic() );
+ const bool bHasOriginalData( aLocalGraphic.IsLink() );
{
bInSwapIn = sal_True;
- SwBaseLink* pLink = (SwBaseLink*)(::sfx2::SvBaseLink*) refLink;
+ SwBaseLink* pLink = (SwBaseLink*) (::sfx2::SvBaseLink*) refLink;
//TODO pLink->setInputStream(getInputStream());
pLink->SwapIn( sal_True, sal_True );
bInSwapIn = sal_False;
@@ -766,14 +771,14 @@ void SwGrfNode::ReleaseLink()
// SvXMLGraphicHelper::ImplInsertGraphicURL which is used at export use that type
// and use the original graphic at export for the ODF, without evtl. recoding
// of trhe bitmap graphic data to something without loss (e.g. PNG) but bigger
- if(bHasOriginalData)
+ if ( bHasOriginalData )
{
// #15508# if we have the original data at the Graphic, let it survive
// by using that Graphic again, this time at a GraphicObject without link.
// This happens e.g. when inserting a linked graphic and breaking the link
- maGrfObj.SetGraphic(aLocalGraphic);
+ maGrfObj.SetGraphic( aLocalGraphic );
}
- else if(aFileName.Len())
+ else if ( aFileName.Len() )
{
// #15508# we have no original data, but a file name. This happens e.g.
// when inserting a linked graphic and save, reload document. Try to access
@@ -782,21 +787,21 @@ void SwGrfNode::ReleaseLink()
int nRes = GRFILTER_OK;
GraphicFilter* pFlt = GraphicFilter::GetGraphicFilter();
Graphic aNew;
- nRes = GraphicFilter::LoadGraphic( aFileName, String(), aNew, pFlt);
+ nRes = GraphicFilter::LoadGraphic( aFileName, String(), aNew, pFlt );
- if(GRFILTER_OK == nRes)
+ if ( GRFILTER_OK == nRes )
{
- maGrfObj.SetGraphic(aNew);
+ maGrfObj.SetGraphic( aNew );
}
}
}
}
-
-void SwGrfNode::SetTwipSize( const Size& rSz )
+void SwGrfNode::SetTwipSize(
+ const Size& rSz )
{
nGrfSize = rSz;
- if( IsScaleImageMap() && nGrfSize.Width() && nGrfSize.Height() )
+ if ( IsScaleImageMap() && nGrfSize.Width() && nGrfSize.Height() )
{
// Image-Map an Grafik-Groesse anpassen
ScaleImageMap();
@@ -808,13 +813,13 @@ void SwGrfNode::SetTwipSize( const Size& rSz )
void SwGrfNode::ScaleImageMap()
{
- if( !nGrfSize.Width() || !nGrfSize.Height() )
+ if ( !nGrfSize.Width() || !nGrfSize.Height() )
return;
// dann die Image-Map skalieren
SwFrmFmt* pFmt = GetFlyFmt();
- if( !pFmt )
+ if ( !pFmt )
return;
SwFmtURL aURL( pFmt->GetURL() );
@@ -828,62 +833,61 @@ void SwGrfNode::ScaleImageMap()
const SwFmtFrmSize& rFrmSize = pFmt->GetFrmSize();
const SvxBoxItem& rBox = pFmt->GetBox();
- if( !rFrmSize.GetWidthPercent() )
+ if ( !rFrmSize.GetWidthPercent() )
{
SwTwips nWidth = rFrmSize.GetWidth();
- nWidth -= rBox.CalcLineSpace(BOX_LINE_LEFT) +
- rBox.CalcLineSpace(BOX_LINE_RIGHT);
+ nWidth -= rBox.CalcLineSpace( BOX_LINE_LEFT ) +
+ rBox.CalcLineSpace( BOX_LINE_RIGHT );
ASSERT( nWidth>0, "Gibt es 0 twip breite Grafiken!?" );
- if( nGrfSize.Width() != nWidth )
+ if ( nGrfSize.Width() != nWidth )
{
aScaleX = Fraction( nGrfSize.Width(), nWidth );
bScale = sal_True;
}
}
- if( !rFrmSize.GetHeightPercent() )
+ if ( !rFrmSize.GetHeightPercent() )
{
SwTwips nHeight = rFrmSize.GetHeight();
- nHeight -= rBox.CalcLineSpace(BOX_LINE_TOP) +
- rBox.CalcLineSpace(BOX_LINE_BOTTOM);
+ nHeight -= rBox.CalcLineSpace( BOX_LINE_TOP ) +
+ rBox.CalcLineSpace( BOX_LINE_BOTTOM );
ASSERT( nHeight>0, "Gibt es 0 twip hohe Grafiken!?" );
- if( nGrfSize.Height() != nHeight )
+ if ( nGrfSize.Height() != nHeight )
{
aScaleY = Fraction( nGrfSize.Height(), nHeight );
bScale = sal_True;
}
}
- if( bScale )
+ if ( bScale )
{
aURL.GetMap()->Scale( aScaleX, aScaleY );
pFmt->SetFmtAttr( aURL );
}
}
-
void SwGrfNode::DelStreamName()
{
- if( HasStreamName() )
+ if ( HasEmbeddedStreamName() )
{
// Dann die Grafik im Storage loeschen
- uno::Reference < embed::XStorage > xDocStg = GetDoc()->GetDocStorage();
- if( xDocStg.is() )
+ uno::Reference< embed::XStorage > xDocStg = GetDoc()->GetDocStorage();
+ if ( xDocStg.is() )
{
try
{
String aPicStgName, aStrmName;
_GetStreamStorageNames( aStrmName, aPicStgName );
- uno::Reference < embed::XStorage > refPics = xDocStg;
+ uno::Reference< embed::XStorage > refPics = xDocStg;
if ( aPicStgName.Len() )
refPics = xDocStg->openStorageElement( aPicStgName, embed::ElementModes::READWRITE );
refPics->removeElement( aStrmName );
- uno::Reference < embed::XTransactedObject > xTrans( refPics, uno::UNO_QUERY );
+ uno::Reference< embed::XTransactedObject > xTrans( refPics, uno::UNO_QUERY );
if ( xTrans.is() )
xTrans->commit();
}
@@ -901,19 +905,20 @@ void SwGrfNode::DelStreamName()
/** helper method to get a substorage of the document storage for readonly access.
- OD, MAV 2005-08-17 #i53025#
- A substorage with the specified name will be opened readonly. If the provided
- name is empty the root storage will be returned.
-*/
-uno::Reference< embed::XStorage > SwGrfNode::_GetDocSubstorageOrRoot( const String& aStgName ) const
-{
- uno::Reference < embed::XStorage > refStor =
- const_cast<SwGrfNode*>(this)->GetDoc()->GetDocStorage();
+ #i53025#
+ A substorage with the specified name will be opened readonly. If the provided
+ name is empty the root storage will be returned.
+ */
+uno::Reference< embed::XStorage > SwGrfNode::_GetDocSubstorageOrRoot(
+ const String& aStgName ) const
+ {
+ uno::Reference< embed::XStorage > refStor =
+ const_cast< SwGrfNode* >( this )->GetDoc()->GetDocStorage();
ASSERT( refStor.is(), "Kein Storage am Doc" );
if ( aStgName.Len() )
{
- if( refStor.is() )
+ if ( refStor.is() )
return refStor->openStorageElement( aStgName, embed::ElementModes::READ );
}
@@ -922,29 +927,29 @@ uno::Reference< embed::XStorage > SwGrfNode::_GetDocSubstorageOrRoot( const Stri
/** helper method to determine stream for the embedded graphic.
- OD 2005-05-04 #i48434#
- Important note: caller of this method has to handle the thrown exceptions
- OD, MAV 2005-08-17 #i53025#
- Storage, which should contain the stream of the embedded graphic, is
- provided via parameter. Otherwise the returned stream will be closed
- after the the method returns, because its parent stream is closed and deleted.
- Proposed name of embedded graphic stream is also provided by parameter.
+ #i48434#
+ Important note: caller of this method has to handle the thrown exceptions
+ #i53025#
+ Storage, which should contain the stream of the embedded graphic, is
+ provided via parameter. Otherwise the returned stream will be closed
+ after the the method returns, because its parent stream is closed and deleted.
+ Proposed name of embedded graphic stream is also provided by parameter.
- @author OD
-*/
+ @author OD
+ */
SvStream* SwGrfNode::_GetStreamForEmbedGrf(
- const uno::Reference< embed::XStorage >& _refPics,
- String& _aStrmName ) const
-{
+ const uno::Reference< embed::XStorage >& _refPics,
+ String& _aStrmName ) const
+ {
SvStream* pStrm( 0L );
- if( _refPics.is() && _aStrmName.Len() )
+ if ( _refPics.is() && _aStrmName.Len() )
{
// If stream doesn't exist in the storage, try access the graphic file by
// re-generating its name.
// A save action can have changed the filename of the embedded graphic,
// because a changed unique ID of the graphic is calculated.
- // --> OD 2006-01-30 #b6364738#
+ // #b6364738#
// recursive calls of <GetUniqueID()> have to be avoided.
// Thus, use local static boolean to assure this.
static bool bInRegenerateStrmName( false );
@@ -963,13 +968,12 @@ SvStream* SwGrfNode::_GetStreamForEmbedGrf(
}
bInRegenerateStrmName = false;
}
- // <--
// assure that graphic file exist in the storage.
if ( _refPics->hasByName( _aStrmName ) &&
_refPics->isStreamElement( _aStrmName ) )
{
- uno::Reference < io::XStream > refStrm = _refPics->openStreamElement( _aStrmName, embed::ElementModes::READ );
+ uno::Reference< io::XStream > refStrm = _refPics->openStreamElement( _aStrmName, embed::ElementModes::READ );
pStrm = utl::UcbStreamHelper::CreateStream( refStrm );
}
else
@@ -982,104 +986,96 @@ SvStream* SwGrfNode::_GetStreamForEmbedGrf(
}
-// --> OD 2005-08-17 #i53025# - stream couldn't be in a 3.1 - 5.2 storage any more.
-// Thus, removing corresponding code.
-void SwGrfNode::_GetStreamStorageNames( String& rStrmName,
- String& rStorName ) const
-{
+void SwGrfNode::_GetStreamStorageNames(
+ String& rStrmName,
+ String& rStorName ) const
+ {
rStorName.Erase();
rStrmName.Erase();
String aUserData( maGrfObj.GetUserData() );
- if( !aUserData.Len() )
+ if ( !aUserData.Len() )
return;
String aProt( RTL_CONSTASCII_STRINGPARAM( "vnd.sun.star.Package:" ) );
- if( 0 == aUserData.CompareTo( aProt, aProt.Len() ) )
+ if ( 0 == aUserData.CompareTo( aProt, aProt.Len() ) )
{
// 6.0 (XML) Package
xub_StrLen nPos = aUserData.Search( '/' );
- if( STRING_NOTFOUND == nPos )
+ if ( STRING_NOTFOUND == nPos )
{
rStrmName = aUserData.Copy( aProt.Len() );
}
else
{
xub_StrLen nPathStart = aProt.Len();
- if( 0 == aUserData.CompareToAscii( "./", 2 ) )
+ if ( 0 == aUserData.CompareToAscii( "./", 2 ) )
nPathStart += 2;
- rStorName = aUserData.Copy( nPathStart, nPos-nPathStart );
- rStrmName = aUserData.Copy( nPos+1 );
+ rStorName = aUserData.Copy( nPathStart, nPos - nPathStart );
+ rStrmName = aUserData.Copy( nPos + 1 );
}
}
else
{
ASSERT( false,
- "<SwGrfNode::_GetStreamStorageNames(..)> - unknown graphic URL type. Code for handling 3.1 - 5.2 storages has been deleted by issue i53025." );
+ "<SwGrfNode::_GetStreamStorageNames(..)> - unknown graphic URL type. Code for handling 3.1 - 5.2 storages has been deleted by issue i53025." );
}
ASSERT( STRING_NOTFOUND == rStrmName.Search( '/' ),
- "invalid graphic stream name" );
+ "invalid graphic stream name" );
}
-// <--
-SwCntntNode* SwGrfNode::MakeCopy( SwDoc* pDoc, const SwNodeIndex& rIdx ) const
-{
+
+SwCntntNode* SwGrfNode::MakeCopy(
+ SwDoc* pDoc,
+ const SwNodeIndex& rIdx ) const
+ {
// kopiere die Formate in das andere Dokument:
SwGrfFmtColl* pColl = pDoc->CopyGrfColl( *GetGrfColl() );
Graphic aTmpGrf;
- SwBaseLink* pLink = (SwBaseLink*)(::sfx2::SvBaseLink*) refLink;
- if( !pLink && HasStreamName() )
+ SwBaseLink* pLink = (SwBaseLink*) (::sfx2::SvBaseLink*) refLink;
+ if ( !pLink && HasEmbeddedStreamName() )
{
- // --> OD 2005-05-04 #i48434# - usage of new method <_GetStreamForEmbedGrf(..)>
try
{
- // --> OD, MAV 2005-08-17 #i53025# - needed correction of new
- // method <_GetStreamForEmbedGrf(..)>
-// bool bGraphic(false);
-// SvStream* pStrm = _GetStreamForEmbedGrf( bGraphic );
String aStrmName, aPicStgName;
_GetStreamStorageNames( aStrmName, aPicStgName );
- uno::Reference < embed::XStorage > refPics = _GetDocSubstorageOrRoot( aPicStgName );
+ uno::Reference< embed::XStorage > refPics = _GetDocSubstorageOrRoot( aPicStgName );
SvStream* pStrm = _GetStreamForEmbedGrf( refPics, aStrmName );
if ( pStrm )
{
- const String aURL(maGrfObj.GetUserData());
- GraphicFilter::GetGraphicFilter()->ImportGraphic(aTmpGrf, aURL, *pStrm);
+ const String aURL( maGrfObj.GetUserData() );
+ GraphicFilter::GetGraphicFilter()->ImportGraphic( aTmpGrf, aURL, *pStrm );
delete pStrm;
}
- // <--
}
catch ( uno::Exception& )
{
- // --> OD 2005-04-25 #i48434#
ASSERT( false, "<SwGrfNode::MakeCopy(..)> - unhandled exception!" );
- // <--
}
- // <--
}
else
{
- if( maGrfObj.IsSwappedOut() )
- const_cast<SwGrfNode*>(this)->SwapIn();
+ if ( maGrfObj.IsSwappedOut() )
+ const_cast< SwGrfNode* >( this )->SwapIn();
aTmpGrf = maGrfObj.GetGraphic();
}
const sfx2::LinkManager& rMgr = getIDocumentLinksAdministration()->GetLinkManager();
String sFile, sFilter;
- if( IsLinkedFile() )
+ if ( IsLinkedFile() )
rMgr.GetDisplayNames( refLink, 0, &sFile, 0, &sFilter );
- else if( IsLinkedDDE() )
+ else if ( IsLinkedDDE() )
{
String sTmp1, sTmp2;
rMgr.GetDisplayNames( refLink, &sTmp1, &sTmp2, &sFilter );
sfx2::MakeLnkName( sFile, &sTmp1, sTmp2, sFilter );
- sFilter.AssignAscii( RTL_CONSTASCII_STRINGPARAM( "DDE" ));
+ sFilter.AssignAscii( RTL_CONSTASCII_STRINGPARAM( "DDE" ) );
}
SwGrfNode* pGrfNd = pDoc->GetNodes().MakeGrfNode( rIdx, sFile, sFilter,
- &aTmpGrf, pColl,
- (SwAttrSet*)GetpSwAttrSet() );
+ &aTmpGrf, pColl,
+ (SwAttrSet*) GetpSwAttrSet() );
pGrfNd->SetTitle( GetTitle() );
pGrfNd->SetDescription( GetDescription() );
pGrfNd->SetContour( HasContour(), HasAutomaticContour() );
@@ -1093,19 +1089,19 @@ IMPL_LINK( SwGrfNode, SwapGraphic, GraphicObject*, pGrfObj )
// #101174#: Keep graphic while in swap in. That's at least important
// when breaking links, because in this situation a reschedule call and
// a DataChanged call lead to a paint of the graphic.
- if( pGrfObj->IsInSwapOut() && (IsSelected() || bInSwapIn) )
+ if ( pGrfObj->IsInSwapOut() && ( IsSelected() || bInSwapIn ) )
pRet = GRFMGR_AUTOSWAPSTREAM_NONE;
- else if( refLink.Is() )
+ else if ( refLink.Is() )
{
- if( pGrfObj->IsInSwapIn() )
+ if ( pGrfObj->IsInSwapIn() )
{
// then make it by your self
- if( !bInSwapIn )
+ if ( !bInSwapIn )
{
sal_Bool bIsModifyLocked = IsModifyLocked();
LockModify();
SwapIn( sal_False );
- if( !bIsModifyLocked )
+ if ( !bIsModifyLocked )
UnlockModify();
}
pRet = GRFMGR_AUTOSWAPSTREAM_NONE;
@@ -1117,22 +1113,17 @@ IMPL_LINK( SwGrfNode, SwapGraphic, GraphicObject*, pGrfObj )
{
pRet = GRFMGR_AUTOSWAPSTREAM_TEMP;
- if( HasStreamName() )
+ if ( HasEmbeddedStreamName() )
{
- // --> OD 2005-05-04 #i48434# - usage of new method <_GetStreamForEmbedGrf(..)>
try
{
- // --> OD, MAV 2005-08-17 #i53025# - needed correction of new
- // method <_GetStreamForEmbedGrf(..)>
-// bool bGraphic(false);
-// SvStream* pStrm = _GetStreamForEmbedGrf( bGraphic );
String aStrmName, aPicStgName;
_GetStreamStorageNames( aStrmName, aPicStgName );
- uno::Reference < embed::XStorage > refPics = _GetDocSubstorageOrRoot( aPicStgName );
+ uno::Reference< embed::XStorage > refPics = _GetDocSubstorageOrRoot( aPicStgName );
SvStream* pStrm = _GetStreamForEmbedGrf( refPics, aStrmName );
if ( pStrm )
{
- if( pGrfObj->IsInSwapOut() )
+ if ( pGrfObj->IsInSwapOut() )
{
pRet = GRFMGR_AUTOSWAPSTREAM_LINK;
}
@@ -1143,39 +1134,35 @@ IMPL_LINK( SwGrfNode, SwapGraphic, GraphicObject*, pGrfObj )
}
delete pStrm;
}
- // <--
}
catch ( uno::Exception& )
{
- // --> OD 2005-04-25 #i48434#
ASSERT( false, "<SwapGraphic> - unhandled exception!" );
- // <--
}
- // <--
}
}
- return (long)pRet;
+ return (long) pRet;
}
-
// alle QuickDraw-Bitmaps eines speziellen Docs loeschen
-void DelAllGrfCacheEntries( SwDoc* pDoc )
+void DelAllGrfCacheEntries(
+ SwDoc* pDoc )
{
- if( pDoc )
+ if ( pDoc )
{
// alle Graphic-Links mit dem Namen aus dem Cache loeschen
const sfx2::LinkManager& rLnkMgr = pDoc->GetLinkManager();
const ::sfx2::SvBaseLinks& rLnks = rLnkMgr.GetLinks();
SwGrfNode* pGrfNd;
String sFileNm;
- for( sal_uInt16 n = rLnks.Count(); n; )
+ for ( sal_uInt16 n = rLnks.Count(); n; )
{
- ::sfx2::SvBaseLink* pLnk = &(*rLnks[ --n ]);
- if( pLnk && OBJECT_CLIENT_GRF == pLnk->GetObjType() &&
- rLnkMgr.GetDisplayNames( pLnk, 0, &sFileNm ) &&
- dynamic_cast< SwBaseLink* >(pLnk) && 0 != ( pGrfNd =
- ((SwBaseLink*)pLnk)->GetCntntNode()->GetGrfNode()) )
+ ::sfx2::SvBaseLink* pLnk = &( *rLnks[--n] );
+ if ( pLnk && OBJECT_CLIENT_GRF == pLnk->GetObjType()
+ && rLnkMgr.GetDisplayNames( pLnk, 0, &sFileNm )
+ && 0 != dynamic_cast< SwBaseLink* >(pLnk)
+ && 0 != (pGrfNd = static_cast< SwBaseLink* >(pLnk)->GetCntntNode()->GetGrfNode()))
{
pGrfNd->ReleaseGraphicFromCache();
}
@@ -1184,42 +1171,55 @@ void DelAllGrfCacheEntries( SwDoc* pDoc )
}
// returns the with our graphic attributes filled Graphic-Attr-Structure
-GraphicAttr& SwGrfNode::GetGraphicAttr( GraphicAttr& rGA,
- const SwFrm* pFrm ) const
-{
+GraphicAttr& SwGrfNode::GetGraphicAttr(
+ GraphicAttr& rGA,
+ const SwFrm* pFrm ) const
+ {
const SwAttrSet& rSet = GetSwAttrSet();
- rGA.SetDrawMode( (GraphicDrawMode)rSet.GetDrawModeGrf().GetValue() );
+ rGA.SetDrawMode( (GraphicDrawMode) rSet.GetDrawModeGrf().GetValue() );
const SwMirrorGrf & rMirror = rSet.GetMirrorGrf();
sal_uLong nMirror = BMP_MIRROR_NONE;
- if( rMirror.IsGrfToggle() && pFrm && !pFrm->FindPageFrm()->OnRightPage() )
+ if ( rMirror.IsGrfToggle() && pFrm && !pFrm->FindPageFrm()->OnRightPage() )
{
- switch( rMirror.GetValue() )
+ switch (rMirror.GetValue())
{
- case RES_MIRROR_GRAPH_DONT: nMirror = BMP_MIRROR_HORZ; break;
- case RES_MIRROR_GRAPH_VERT: nMirror = BMP_MIRROR_NONE; break;
- case RES_MIRROR_GRAPH_HOR: nMirror = BMP_MIRROR_HORZ|BMP_MIRROR_VERT;
- break;
- default: nMirror = BMP_MIRROR_VERT; break;
+ case RES_MIRROR_GRAPH_DONT:
+ nMirror = BMP_MIRROR_HORZ;
+ break;
+ case RES_MIRROR_GRAPH_VERT:
+ nMirror = BMP_MIRROR_NONE;
+ break;
+ case RES_MIRROR_GRAPH_HOR:
+ nMirror = BMP_MIRROR_HORZ | BMP_MIRROR_VERT;
+ break;
+ default:
+ nMirror = BMP_MIRROR_VERT;
+ break;
}
}
else
- switch( rMirror.GetValue() )
+ switch (rMirror.GetValue())
{
- case RES_MIRROR_GRAPH_BOTH: nMirror = BMP_MIRROR_HORZ|BMP_MIRROR_VERT;
- break;
- case RES_MIRROR_GRAPH_VERT: nMirror = BMP_MIRROR_HORZ; break;
- case RES_MIRROR_GRAPH_HOR: nMirror = BMP_MIRROR_VERT; break;
+ case RES_MIRROR_GRAPH_BOTH:
+ nMirror = BMP_MIRROR_HORZ | BMP_MIRROR_VERT;
+ break;
+ case RES_MIRROR_GRAPH_VERT:
+ nMirror = BMP_MIRROR_HORZ;
+ break;
+ case RES_MIRROR_GRAPH_HOR:
+ nMirror = BMP_MIRROR_VERT;
+ break;
}
rGA.SetMirrorFlags( nMirror );
const SwCropGrf& rCrop = rSet.GetCropGrf();
rGA.SetCrop( TWIP_TO_MM100( rCrop.GetLeft() ),
- TWIP_TO_MM100( rCrop.GetTop() ),
- TWIP_TO_MM100( rCrop.GetRight() ),
- TWIP_TO_MM100( rCrop.GetBottom() ));
+ TWIP_TO_MM100( rCrop.GetTop() ),
+ TWIP_TO_MM100( rCrop.GetRight() ),
+ TWIP_TO_MM100( rCrop.GetBottom() ) );
const SwRotationGrf& rRotation = rSet.GetRotationGrf();
rGA.SetRotation( rRotation.GetValue() );
@@ -1234,7 +1234,7 @@ GraphicAttr& SwGrfNode::GetGraphicAttr( GraphicAttr& rGA,
const sal_uInt16 nTrans = rSet.GetTransparencyGrf().GetValue();
rGA.SetTransparency( (sal_uInt8) FRound(
- Min( nTrans, (sal_uInt16) 100 ) * 2.55 ) );
+ Min( nTrans, (sal_uInt16) 100 ) * 2.55 ) );
return rGA;
}
@@ -1242,35 +1242,34 @@ GraphicAttr& SwGrfNode::GetGraphicAttr( GraphicAttr& rGA,
sal_Bool SwGrfNode::IsTransparent() const
{
sal_Bool bRet = maGrfObj.IsTransparent();
- if( !bRet ) // ask the attribut
+ if ( !bRet ) // ask the attribut
bRet = 0 != GetSwAttrSet().GetTransparencyGrf().GetValue();
return bRet;
}
-
sal_Bool SwGrfNode::IsSelected() const
{
sal_Bool bRet = sal_False;
const SwEditShell* pESh = GetDoc()->GetEditShell();
- if( pESh )
+ if ( pESh )
{
const SwNode* pN = this;
const ViewShell* pV = pESh;
- do {
- if( dynamic_cast< const SwEditShell* >(pV) && pN == &((SwCrsrShell*)pV)
- ->GetCrsr()->GetPoint()->nNode.GetNode() )
+ do
+ {
+ if(dynamic_cast< const SwEditShell* >(pV)
+ && pN == &((SwCrsrShell*)pV)->GetCrsr()->GetPoint()->nNode.GetNode())
{
bRet = sal_True;
break;
}
}
- while( pESh != ( pV = (ViewShell*)pV->GetNext() ));
+ while (pESh != ( pV = (ViewShell*) pV->GetNext() ));
}
return bRet;
}
-// --> OD 2006-12-22 #i73788#
boost::weak_ptr< SwAsyncRetrieveInputStreamThreadConsumer > SwGrfNode::GetThreadConsumer()
{
return mpThreadConsumer;
@@ -1281,7 +1280,7 @@ void SwGrfNode::TriggerAsyncRetrieveInputStream()
if ( !IsLinkedFile() )
{
ASSERT( false,
- "<SwGrfNode::TriggerAsyncLoad()> - Method is misused. Method call is only valid for graphic nodes, which refer a linked graphic file" );
+ "<SwGrfNode::TriggerAsyncLoad()> - Method is misused. Method call is only valid for graphic nodes, which refer a linked graphic file" );
return;
}
@@ -1302,7 +1301,7 @@ bool SwGrfNode::IsLinkedInputStreamReady() const
}
void SwGrfNode::ApplyInputStream(
- com::sun::star::uno::Reference<com::sun::star::io::XInputStream> xInputStream,
+ com::sun::star::uno::Reference< com::sun::star::io::XInputStream > xInputStream,
const sal_Bool bIsStreamReadOnly )
{
if ( IsLinkedFile() )
@@ -1320,27 +1319,22 @@ void SwGrfNode::ApplyInputStream(
void SwGrfNode::UpdateLinkWithInputStream()
{
- // --> OD #i85105#
// do not work on link, if a <SwapIn> has been triggered.
if ( !bInSwapIn && IsLinkedFile() )
- // <--
{
GetLink()->setStreamToLoadFrom( mxInputStream, mbIsStreamReadOnly );
GetLink()->Update();
SwMsgPoolItem aMsgHint( RES_GRAPHIC_ARRIVED );
ModifyNotification( &aMsgHint, &aMsgHint );
- // --> OD 2008-06-18 #i88291#
mxInputStream.clear();
GetLink()->clearStreamToLoadFrom();
- // <--
mbLinkedInputStreamReady = false;
mpThreadConsumer.reset();
}
}
-// <--
-// --> OD 2008-07-21 #i90395#
+
bool SwGrfNode::IsAsyncRetrieveInputStreamPossible() const
{
bool bRet = false;
@@ -1358,4 +1352,3 @@ bool SwGrfNode::IsAsyncRetrieveInputStreamPossible() const
return bRet;
}
-// <--
diff --git a/sw/source/core/inc/MarkManager.hxx b/sw/source/core/inc/MarkManager.hxx
index 086ab323e698..7455b51db715 100644
--- a/sw/source/core/inc/MarkManager.hxx
+++ b/sw/source/core/inc/MarkManager.hxx
@@ -84,11 +84,6 @@ namespace sw { namespace mark
virtual ::sw::mark::IFieldmark* getFieldmarkBefore(const SwPosition& rPos) const;
virtual ::sw::mark::IFieldmark* getFieldmarkAfter(const SwPosition& rPos) const;
- // Marks exclusive annotation marks
- virtual const_iterator_t getCommonMarksBegin() const;
- virtual const_iterator_t getCommonMarksEnd() const;
- virtual sal_Int32 getCommonMarksCount() const;
-
// Annotation Marks
virtual const_iterator_t getAnnotationMarksBegin() const;
virtual const_iterator_t getAnnotationMarksEnd() const;
diff --git a/sw/source/core/inc/anchoredobjectposition.hxx b/sw/source/core/inc/anchoredobjectposition.hxx
index c922b221d856..978c1e4cdc14 100644
--- a/sw/source/core/inc/anchoredobjectposition.hxx
+++ b/sw/source/core/inc/anchoredobjectposition.hxx
@@ -283,7 +283,7 @@ namespace objectpositioning
@author OD
@param _rPageAlignLayFrm
- input paramter - layout frame, which determines the 'page area'
+ input parameter - layout frame, which determines the 'page area'
the object has to be horizontal positioned in.
@param _nProposedRelPosX
@@ -332,7 +332,7 @@ namespace objectpositioning
is oriented at.
@param _rPageAlignLayFrm
- input paramter - layout frame, which determines the 'page area'
+ input parameter - layout frame, which determines the 'page area'
the object has to be horizontal positioned in.
@param _eRelOrient
diff --git a/sw/source/core/inc/frame.hxx b/sw/source/core/inc/frame.hxx
index f675a201591d..74f521917209 100644
--- a/sw/source/core/inc/frame.hxx
+++ b/sw/source/core/inc/frame.hxx
@@ -59,8 +59,6 @@ class SwFmt;
class SwPrintData;
class SwSortedObjs;
class SwAnchoredObject;
-//UUUU
-class FillAttributes;
//Jeder FrmTyp findet sich hier in einem Bit wieder.
//Die Bits muessen so gesetzt werden, dass mit einer Maskierung festgestellt
@@ -142,6 +140,8 @@ typedef void (SwFrm:: *SwFrmMakePos)( const SwFrm*, const SwFrm*, sal_Bool );
typedef long (*SwOperator)( long, long );
typedef void (SwFrm:: *SwFrmSet)( long, long );
+SwFrm* SaveCntnt( SwLayoutFrm*, SwFrm* pStart = NULL );
+
struct SwRectFnCollection
{
SwRectGet fnGetTop;
@@ -271,6 +271,12 @@ enum MakePageType
//typedef SdrObject* SdrObjectPtr;
//SV_DECL_PTRARR(SwDrawObjs,SdrObjectPtr,1,1);
+//UUUU
+namespace drawinglayer { namespace attribute {
+ class SdrAllFillAttributesHelper;
+ typedef boost::shared_ptr< SdrAllFillAttributesHelper > SdrAllFillAttributesHelperPtr;
+}}
+
class SwFrm: public SwClient, public SfxBroadcaster
{
//Der verkappte Frm
@@ -279,8 +285,8 @@ class SwFrm: public SwClient, public SfxBroadcaster
friend class SwLooping; // LoopControlling (layouter.cxx)
//Hebt die Lower waehrend eines Spaltenumbaus auf.
- friend SwFrm *SaveCntnt( SwLayoutFrm *, SwFrm* pStart = NULL );
- friend void RestoreCntnt( SwFrm *, SwLayoutFrm *, SwFrm *pSibling, bool bGrow );
+ friend SwFrm *SaveCntnt( SwLayoutFrm*, SwFrm* pStart );
+ friend void RestoreCntnt( SwFrm *, SwLayoutFrm *, SwFrm *pSibling, bool bGrow );
#if OSL_DEBUG_LEVEL > 1
//entfernt leere SwSectionFrms aus einer Kette
@@ -572,7 +578,7 @@ public:
void Retouche( const SwPageFrm *pPage, const SwRect &rRect ) const;
sal_Bool GetBackgroundBrush(
- boost::shared_ptr< FillAttributes >& rFillAttributes,
+ drawinglayer::attribute::SdrAllFillAttributesHelperPtr& rFillAttributes,
const SvxBrushItem*& rpBrush,
const Color*& rpColor,
SwRect &rOrigRect,
@@ -963,6 +969,9 @@ public:
bool KnowsFormat( const SwFmt& rFmt ) const;
void RegisterToFormat( SwFmt& rFmt );
void ValidateThisAndAllLowers( const sal_uInt16 nStage );
+
+ //UUUU
+ drawinglayer::attribute::SdrAllFillAttributesHelperPtr getSdrAllFillAttributesHelper() const;
};
inline sal_Bool SwFrm::IsInDocBody() const
diff --git a/sw/source/core/inc/frmtool.hxx b/sw/source/core/inc/frmtool.hxx
index 666b8081894c..0d49e79a9373 100644
--- a/sw/source/core/inc/frmtool.hxx
+++ b/sw/source/core/inc/frmtool.hxx
@@ -70,7 +70,7 @@ void MA_FASTCALL DrawGraphic(
const sal_uInt8 nGrfNum = GRFNUM_NO,
const sal_Bool bConsiderBackgroundTransparency = sal_False );
bool MA_FASTCALL DrawFillAttributes(
- const boost::shared_ptr< FillAttributes >& rFillAttributes,
+ const drawinglayer::attribute::SdrAllFillAttributesHelperPtr& rFillAttributes,
const SwRect& rOriginalLayoutRect,
const SwRect& rPaintRect,
OutputDevice& rOut);
diff --git a/sw/source/core/inc/pagefrm.hxx b/sw/source/core/inc/pagefrm.hxx
index 287670453e86..3b00e7148ab0 100644
--- a/sw/source/core/inc/pagefrm.hxx
+++ b/sw/source/core/inc/pagefrm.hxx
@@ -317,7 +317,7 @@ public:
@return reference to an instance of class Color
*/
- const Color& GetDrawBackgrdColor() const;
+ const Color GetDrawBackgrdColor() const;
/** paint margin area of a page
diff --git a/sw/source/core/inc/rolbck.hxx b/sw/source/core/inc/rolbck.hxx
index fdbd37979496..1ea5e095ff75 100644
--- a/sw/source/core/inc/rolbck.hxx
+++ b/sw/source/core/inc/rolbck.hxx
@@ -373,9 +373,11 @@ public:
bool TmpRollback( SwDoc* pDoc, sal_uInt16 nStart, bool ToFirst = true );
// --> OD 2008-02-27 #refactorlists# - removed <rDoc>
- void Add( const SfxPoolItem* pOldValue, const SfxPoolItem* pNewValue,
- sal_uLong nNodeIdx );
- // <--
+ void Add(
+ const SfxPoolItem* pOldValue,
+ const SfxPoolItem* pNewValue,
+ sal_uLong nNodeIdx);
+
void Add( SwTxtAttr* pTxtHt, sal_uLong nNodeIdx, bool bNewAttr = true );
void Add( SwFmtColl*, sal_uLong nNodeIdx, sal_uInt8 nWhichNd );
void Add( const ::sw::mark::IMark&, bool bSavePos, bool bSaveOtherPos );
diff --git a/sw/source/core/inc/rootfrm.hxx b/sw/source/core/inc/rootfrm.hxx
index 073bc99a9d6b..07bddbd8b493 100644
--- a/sw/source/core/inc/rootfrm.hxx
+++ b/sw/source/core/inc/rootfrm.hxx
@@ -268,9 +268,7 @@ public:
// next page border
const SwPageFrm* GetPageAtPos( const Point& rPt, const Size* pSize = 0, bool bExtend = false ) const;
- void CalcFrmRects(
- SwShellCrsr&,
- const sal_Bool bIsTblSel );
+ void CalcFrmRects( SwShellCrsr& );
// Calculates the cells included from the current selection
// false: There was no result because of an invalid layout
diff --git a/sw/source/core/layout/anchoreddrawobject.cxx b/sw/source/core/layout/anchoreddrawobject.cxx
index bd989365512f..0f87e14cf27c 100644
--- a/sw/source/core/layout/anchoreddrawobject.cxx
+++ b/sw/source/core/layout/anchoreddrawobject.cxx
@@ -202,7 +202,7 @@ bool SwObjPosOscillationControl::OscillationDetected()
{
if ( *(pNewObjPos) == *(*aObjPosIter) )
{
- // position already occured -> oscillation
+ // position already occurred -> oscillation
bOscillationDetected = true;
delete pNewObjPos;
break;
diff --git a/sw/source/core/layout/atrfrm.cxx b/sw/source/core/layout/atrfrm.cxx
index 6bd42a366ff4..3b5cdbd087dd 100644
--- a/sw/source/core/layout/atrfrm.cxx
+++ b/sw/source/core/layout/atrfrm.cxx
@@ -109,7 +109,7 @@
#include <pagedeschint.hxx>
//UUUU
-#include <fillattributes.hxx>
+#include <svx/sdr/attribute/sdrallfillattributeshelper.hxx>
#include <svx/xfillit0.hxx>
using namespace ::com::sun::star;
@@ -2496,23 +2496,6 @@ SwFrmFmt::SwFrmFmt(
maFillAttributes(),
pCaptionFmt(0)
{
- //UUUU
- if(RES_FLYFRMFMT == nFmtWhich)
- {
- // when its a SwFlyFrmFmt do not do this, this setting
- // will be derived from the parent style. In the future this
- // may be needed for more formats; all which use the
- // XATTR_FILL_FIRST, XATTR_FILL_LAST range as fill attributes
-#ifdef DBG_UTIL
- bool bBla = true; // allow setting a breakpoint here in debug mode
-#endif
- }
- else
- {
- // set FillStyle to none; this is necessary since the pool default is
- // to fill objects by color (blue8)
- SetFmtAttr(XFillStyleItem(XFILL_NONE));
- }
}
SwFrmFmt::SwFrmFmt(
@@ -2526,23 +2509,6 @@ SwFrmFmt::SwFrmFmt(
maFillAttributes(),
pCaptionFmt(0)
{
- //UUUU
- if(RES_FLYFRMFMT == nFmtWhich)
- {
- // when its a SwFlyFrmFmt do not do this, this setting
- // will be derived from the parent style. In the future this
- // may be needed for more formats; all which use the
- // XATTR_FILL_FIRST, XATTR_FILL_LAST range as fill attributes
-#ifdef DBG_UTIL
- bool bBla = true; // allow setting a breakpoint here in debug mode
-#endif
- }
- else
- {
- // set FillStyle to none; this is necessary since the pool default is
- // to fill objects by color (blue8)
- SetFmtAttr(XFillStyleItem(XFILL_NONE));
- }
}
void SwFrmFmt::Modify( const SfxPoolItem* pOld, const SfxPoolItem* pNew )
@@ -2560,7 +2526,7 @@ void SwFrmFmt::Modify( const SfxPoolItem* pOld, const SfxPoolItem* pNew )
RES_FOOTER, sal_False, (const SfxPoolItem**)&pF );
//UUUU reset fill information
- if(RES_FLYFRMFMT == Which() && maFillAttributes.get())
+ if(maFillAttributes.get() && (RES_FLYFRMFMT == Which() || RES_FRMFMT == Which()))
{
SfxItemIter aIter(*((SwAttrSetChg*)pNew)->GetChgSet());
bool bReset(false);
@@ -2576,10 +2542,10 @@ void SwFrmFmt::Modify( const SfxPoolItem* pOld, const SfxPoolItem* pNew )
}
}
}
- else if(RES_FMT_CHG == nWhich) //UUUU
+ else if(RES_FMT_CHG == nWhich)
{
//UUUU reset fill information on format change (e.g. style changed)
- if(RES_FLYFRMFMT == Which() && maFillAttributes.get())
+ if(maFillAttributes.get() && (RES_FLYFRMFMT == Which() || RES_FRMFMT == Which()))
{
maFillAttributes.reset();
}
@@ -3122,9 +3088,9 @@ const String SwFlyFrmFmt::GetObjDescription() const
sal_Bool SwFlyFrmFmt::IsBackgroundTransparent() const
{
//UUUU
- if(RES_FLYFRMFMT == Which() && getFillAttributes())
+ if((RES_FLYFRMFMT == Which() || RES_FRMFMT == Which()) && getSdrAllFillAttributesHelper())
{
- return getFillAttributes()->isTransparent();
+ return getSdrAllFillAttributesHelper()->isTransparent();
}
/// NOTE: If background color is "no fill"/"auto fill" (COL_TRANSPARENT)
@@ -3166,9 +3132,9 @@ sal_Bool SwFlyFrmFmt::IsBackgroundTransparent() const
sal_Bool SwFlyFrmFmt::IsBackgroundBrushInherited() const
{
//UUUU
- if(RES_FLYFRMFMT == Which() && getFillAttributes())
+ if((RES_FLYFRMFMT == Which() || RES_FRMFMT == Which()) && getSdrAllFillAttributesHelper())
{
- return !getFillAttributes()->isUsed();
+ return !getSdrAllFillAttributesHelper()->isUsed();
}
else if ( (GetBackground().GetColor() == COL_TRANSPARENT) &&
!(GetBackground().GetGraphicObject()) )
@@ -3410,20 +3376,20 @@ SwFrmFmt* SwFrmFmt::GetCaptionFmt() const
}
//UUUU
-FillAttributesPtr SwFrmFmt::getFillAttributes() const
+drawinglayer::attribute::SdrAllFillAttributesHelperPtr SwFrmFmt::getSdrAllFillAttributesHelper() const
{
- if(RES_FLYFRMFMT == Which())
+ if(RES_FLYFRMFMT == Which() || RES_FRMFMT == Which())
{
// create FillAttributes on demand
if(!maFillAttributes.get())
{
- const_cast< SwFrmFmt* >(this)->maFillAttributes.reset(new FillAttributes(GetAttrSet()));
+ const_cast< SwFrmFmt* >(this)->maFillAttributes.reset(new drawinglayer::attribute::SdrAllFillAttributesHelper(GetAttrSet()));
}
}
else
{
// FALLBACKBREAKHERE assert wrong usage
- OSL_ENSURE(false, "getFillAttributes() call only valid for RES_FLYFRMFMT currently (!)");
+ OSL_ENSURE(false, "getSdrAllFillAttributesHelper() call only valid for RES_FLYFRMFMT and RES_FRMFMT (!)");
}
return maFillAttributes;
diff --git a/sw/source/core/layout/findfrm.cxx b/sw/source/core/layout/findfrm.cxx
index 175e6a9ba6b8..e213e1cca9cf 100644
--- a/sw/source/core/layout/findfrm.cxx
+++ b/sw/source/core/layout/findfrm.cxx
@@ -658,6 +658,19 @@ const SwAttrSet* SwFrm::GetAttrSet() const
return &((const SwLayoutFrm*)this)->GetFmt()->GetAttrSet();
}
+//UUUU
+drawinglayer::attribute::SdrAllFillAttributesHelperPtr SwFrm::getSdrAllFillAttributesHelper() const
+{
+ if(IsCntntFrm())
+ {
+ return static_cast< const SwCntntFrm* >(this)->GetNode()->getSdrAllFillAttributesHelper();
+ }
+ else
+ {
+ return static_cast< const SwLayoutFrm* >(this)->GetFmt()->getSdrAllFillAttributesHelper();
+ }
+}
+
/*************************************************************************
|*
|* SwFrm::_FindNext(), _FindPrev(), InvalidateNextPos()
diff --git a/sw/source/core/layout/fly.cxx b/sw/source/core/layout/fly.cxx
index 8881eb6c4990..8d8785448108 100644
--- a/sw/source/core/layout/fly.cxx
+++ b/sw/source/core/layout/fly.cxx
@@ -19,10 +19,9 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sw.hxx"
+
#include "hintids.hxx"
#include <svl/itemiter.hxx>
#include <svtools/imap.hxx>
@@ -86,10 +85,10 @@
#include <vcl/salbtype.hxx> // FRound
#include <svx/fmmodel.hxx>
#include "switerator.hxx"
+#include <drawdoc.hxx>
using namespace ::com::sun::star;
-
/*************************************************************************
|*
|* SwFlyFrm::SwFlyFrm()
@@ -101,10 +100,7 @@ using namespace ::com::sun::star;
SwFlyFrm::SwFlyFrm( SwFlyFrmFmt *pFmt, SwFrm* pSib, SwFrm *pAnch ) :
SwLayoutFrm( pFmt, pSib ),
- // OD 2004-03-22 #i26791#
SwAnchoredObject(),
- // OD 2004-05-27 #i26791# - moved to <SwAnchoredObject>
-// aRelPos(),
pPrevLink( 0 ),
pNextLink( 0 ),
bInCnt( sal_False ),
@@ -117,20 +113,15 @@ SwFlyFrm::SwFlyFrm( SwFlyFrmFmt *pFmt, SwFrm* pSib, SwFrm *pAnch ) :
nType = FRMC_FLY;
bInvalid = bNotifyBack = sal_True;
- bLocked = bMinHeight =
- bHeightClipped = bWidthClipped = bFormatHeightOnly = sal_False;
+ bLocked = bMinHeight = bHeightClipped = bWidthClipped = bFormatHeightOnly = sal_False;
//Grosseneinstellung, Fixe groesse ist immer die Breite
const SwFmtFrmSize &rFrmSize = pFmt->GetFrmSize();
- sal_Bool bVert = sal_False;
- sal_uInt16 nDir =
- ((SvxFrameDirectionItem&)pFmt->GetFmtAttr( RES_FRAMEDIR )).GetValue();
+ sal_uInt16 nDir = ((SvxFrameDirectionItem&)pFmt->GetFmtAttr( RES_FRAMEDIR )).GetValue();
if( FRMDIR_ENVIRONMENT == nDir )
{
bDerivedVert = 1;
bDerivedR2L = 1;
- if( pAnch && pAnch->IsVertical() )
- bVert = sal_True;
}
else
{
@@ -163,7 +154,6 @@ SwFlyFrm::SwFlyFrm( SwFlyFrmFmt *pFmt, SwFrm* pSib, SwFrm *pAnch ) :
}
}
- bVert = bVertical;
bInvalidR2L = 0;
if( FRMDIR_HORI_RIGHT_TOP == nDir )
bRightToLeft = 1;
@@ -180,25 +170,20 @@ SwFlyFrm::SwFlyFrm( SwFlyFrmFmt *pFmt, SwFrm* pSib, SwFrm *pAnch ) :
else if ( rFrmSize.GetHeightSizeType() == ATT_FIX_SIZE )
bFixSize = sal_True;
- // OD 2004-02-12 #110582#-2 - insert columns, if necessary
+ // insert columns, if necessary
InsertColumns();
- //Erst das Init, dann den Inhalt, denn zum Inhalt koennen widerum
- //Objekte/Rahmen gehoeren die dann angemeldet werden.
+ // initialize before inserting content as the content might contain other objects which need to be registered
InitDrawObj( sal_False );
- // OD 2004-01-19 #110582#
Chain( pAnch );
- // OD 2004-01-19 #110582#
InsertCnt();
- //Und erstmal in den Wald stellen die Kiste, damit bei neuen Dokument nicht
- //unnoetig viel formatiert wird.
+ // apply dummy position which is far-away in order to avoid needless formattings
Frm().Pos().X() = Frm().Pos().Y() = WEIT_WECH;
}
-// OD 2004-01-19 #110582#
void SwFlyFrm::Chain( SwFrm* _pAnch )
{
// Connect to chain neighboors.
@@ -230,7 +215,6 @@ void SwFlyFrm::Chain( SwFrm* _pAnch )
}
}
-// OD 2004-01-19 #110582#
void SwFlyFrm::InsertCnt()
{
if ( !GetPrevLink() )
@@ -251,20 +235,17 @@ void SwFlyFrm::InsertCnt()
}
}
- // OD 2004-02-12 #110582#-2
- void SwFlyFrm::InsertColumns()
- {
- // --> OD 2009-08-12 #i97379#
+void SwFlyFrm::InsertColumns()
+{
// Check, if column are allowed.
// Columns are not allowed for fly frames, which represent graphics or embedded objects.
const SwFmtCntnt& rCntnt = GetFmt()->GetCntnt();
ASSERT( rCntnt.GetCntntIdx(), "<SwFlyFrm::InsertColumns()> - no content prepared." );
- SwNodeIndex aFirstCntnt( *(rCntnt.GetCntntIdx()), 1 );
+ SwNodeIndex aFirstCntnt( *( rCntnt.GetCntntIdx() ), 1 );
if ( aFirstCntnt.GetNode().IsNoTxtNode() )
{
return;
}
- // <--
const SwFmtCol &rCol = GetFmt()->GetCol();
if ( rCol.GetNumCols() > 1 )
@@ -278,7 +259,7 @@ void SwFlyFrm::InsertCnt()
//Old-Wert hereingereicht wird.
ChgColumns( aOld, rCol );
}
- }
+}
/*************************************************************************
|*
@@ -462,8 +443,7 @@ void SwFlyFrm::InitDrawObj( sal_Bool bNotify )
if ( !pContact )
{
// --> OD 2005-08-08 #i52858# - method name changed
- pContact = new SwFlyDrawContact( (SwFlyFrmFmt*)GetFmt(),
- *pIDDMA->GetOrCreateDrawModel() );
+ pContact = new SwFlyDrawContact( (SwFlyFrmFmt*)GetFmt(), *pIDDMA->GetOrCreateDrawModel() );
// <--
}
ASSERT( pContact, "InitDrawObj failed" );
diff --git a/sw/source/core/layout/flycnt.cxx b/sw/source/core/layout/flycnt.cxx
index ae7c9dce15d3..089074261106 100644
--- a/sw/source/core/layout/flycnt.cxx
+++ b/sw/source/core/layout/flycnt.cxx
@@ -338,7 +338,7 @@ bool SwOszControl::ChkOsz()
{
if ( *(pNewObjPos) == *(*aObjPosIter) )
{
- // position already occured -> oscillation
+ // position already occurred -> oscillation
bOscillationDetected = true;
delete pNewObjPos;
break;
diff --git a/sw/source/core/layout/flylay.cxx b/sw/source/core/layout/flylay.cxx
index 9cc7390f9855..f78b7faa56b6 100644
--- a/sw/source/core/layout/flylay.cxx
+++ b/sw/source/core/layout/flylay.cxx
@@ -1147,7 +1147,7 @@ sal_Bool CalcClipRect( const SdrObject *pSdrObj, SwRect &rRect, sal_Bool bMove )
: pClipFrm->Frm();
// --> OD 2004-10-14 #i26945# - consider that a table, during
// its format, can exceed its upper printing area bottom.
- // Thus, enlarge the clip rectangle, if such a case occured
+ // Thus, enlarge the clip rectangle, if such a case occurred
if ( pFly->GetAnchorFrm()->IsInTab() )
{
const SwTabFrm* pTabFrm = const_cast<SwFlyFrm*>(pFly)
diff --git a/sw/source/core/layout/frmtool.cxx b/sw/source/core/layout/frmtool.cxx
index 576876cd07fe..62bd0e592559 100644
--- a/sw/source/core/layout/frmtool.cxx
+++ b/sw/source/core/layout/frmtool.cxx
@@ -19,10 +19,9 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sw.hxx"
+
#include <hintids.hxx>
#include <tools/bigint.hxx>
#include <svx/svdmodel.hxx>
@@ -36,7 +35,6 @@
#include <sfx2/printer.hxx>
#include <editeng/lspcitem.hxx>
#include <svx/svdlegacy.hxx>
-
#include <fmtornt.hxx>
#include <fmtanchr.hxx>
#include <fmthdft.hxx>
@@ -83,6 +81,8 @@
// <--
#include <svx/fmmodel.hxx>
#include <switerator.hxx>
+#include <svx/sdr/attribute/sdrallfillattributeshelper.hxx>
+#include <drawdoc.hxx>
// ftnfrm.cxx:
void lcl_RemoveFtns( SwFtnBossFrm* pBoss, sal_Bool bPageOnly, sal_Bool bEndNotes );
@@ -229,9 +229,23 @@ SwFrmNotify::~SwFrmNotify()
(aPrt.*fnRect->fnGetHeight)()!=(pFrm->Prt().*fnRect->fnGetHeight)();
if ( bPrtWidth || bPrtHeight )
{
- const SvxGraphicPosition ePos = pFrm->GetAttrSet()->GetBackground().GetGraphicPos();
- if ( GPOS_NONE != ePos && GPOS_TILED != ePos )
- pFrm->SetCompletePaint();
+ //UUUU
+ drawinglayer::attribute::SdrAllFillAttributesHelperPtr aFillAttributes(pFrm->getSdrAllFillAttributesHelper());
+
+ if(aFillAttributes.get() && aFillAttributes->isUsed())
+ {
+ //UUUU use SetCompletePaint if needed
+ if(aFillAttributes->needCompleteRepaint())
+ {
+ pFrm->SetCompletePaint();
+ }
+ }
+ else
+ {
+ const SvxGraphicPosition ePos = pFrm->GetAttrSet()->GetBackground().GetGraphicPos();
+ if(GPOS_NONE != ePos && GPOS_TILED != ePos)
+ pFrm->SetCompletePaint();
+ }
}
else
{
@@ -920,7 +934,7 @@ SwCntntNotify::~SwCntntNotify()
// The layout is calculated _before_ calling PrtOLENotify,
// and the OLE objects are not invalidated during import.
// Therefore I added the condition !IsUpdateExpFld,
- // have a look at the occurence of CalcLayout in
+ // have a look at the occurrence of CalcLayout in
// uiview/view.cxx.
if ( !pNd->IsOLESizeInvalid() &&
!pSh->GetDoc()->IsUpdateExpFld() )
diff --git a/sw/source/core/layout/newfrm.cxx b/sw/source/core/layout/newfrm.cxx
index 3a0d5dd9454d..68d99da87b5e 100644
--- a/sw/source/core/layout/newfrm.cxx
+++ b/sw/source/core/layout/newfrm.cxx
@@ -19,10 +19,9 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sw.hxx"
+
#include <svx/svdmodel.hxx>
#include <svx/svdpage.hxx>
#include <fmtfordr.hxx>
@@ -52,6 +51,7 @@
#include <hints.hxx>
#include <viewopt.hxx>
#include <svx/fmmodel.hxx>
+#include <drawdoc.hxx>
SwLayVout *SwRootFrm::pVout = 0;
sal_Bool SwRootFrm::bInPaint = sal_False;
@@ -513,7 +513,7 @@ void SwRootFrm::Init( SwFrmFmt* pFmt )
pLayoutAccess->SetCurrentViewShell( this->GetCurrShell() ); //Fuer das Erzeugen der Flys durch MakeFrms() //swmod 071108//swmod 071225
bCallbackActionEnabled = sal_False; //vor Verlassen auf sal_True setzen!
- SdrModel *pMd = pFmt->getIDocumentDrawModelAccess()->GetDrawModel();
+ SwDrawModel* pMd = pFmt->getIDocumentDrawModelAccess()->GetDrawModel();
if ( pMd )
{
pDrawPage = pMd->GetPage( 0 );
diff --git a/sw/source/core/layout/objectformatterlayfrm.hxx b/sw/source/core/layout/objectformatterlayfrm.hxx
index 66f13d449aae..6745b4244cff 100644
--- a/sw/source/core/layout/objectformatterlayfrm.hxx
+++ b/sw/source/core/layout/objectformatterlayfrm.hxx
@@ -50,7 +50,7 @@ class SwObjectFormatterLayFrm : public SwObjectFormatter
@author OD
@return boolean
- indicates, if format was successfull
+ indicates, if format was successful
*/
bool _AdditionalFormatObjsOnPage();
diff --git a/sw/source/core/layout/paintfrm.cxx b/sw/source/core/layout/paintfrm.cxx
index 2224bd65d643..31f200b06d3c 100644
--- a/sw/source/core/layout/paintfrm.cxx
+++ b/sw/source/core/layout/paintfrm.cxx
@@ -19,8 +19,6 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sw.hxx"
@@ -83,21 +81,18 @@
#include <svx/svdogrp.hxx>
#include <sortedobjs.hxx>
#include <EnhancedPDFExportHelper.hxx>
-// <--
-// --> OD #i76669#
#include <svx/sdr/contact/viewobjectcontactredirector.hxx>
#include <svx/sdr/contact/viewobjectcontact.hxx>
#include <svx/sdr/contact/viewcontact.hxx>
-// <--
-
#include <ndole.hxx>
#include <svx/charthelper.hxx>
#include <PostItMgr.hxx>
#include <tools/color.hxx>
#include <vcl/svapp.hxx>
-
-//UUUU
+#include <svx/sdr/attribute/sdrallfillattributeshelper.hxx>
#include <drawinglayer/processor2d/processor2dtools.hxx>
+#include <ndtxt.hxx>
+#include <drawdoc.hxx>
#define COL_NOTES_SIDEPANE RGB_COLORDATA(230,230,230)
#define COL_NOTES_SIDEPANE_BORDER RGB_COLORDATA(200,200,200)
@@ -310,8 +305,7 @@ void SwCalcPixStatics( OutputDevice *pOut )
//Zum Sichern der statics, damit das Paint (quasi) reentrant wird.
class SwSavePaintStatics
{
- sal_Bool bSFlyMetafile,
- bSPageOnly;
+ sal_Bool bSFlyMetafile; // not used: bSPageOnly;
ViewShell *pSGlobalShell;
OutputDevice *pSFlyMetafileOut;
SwFlyFrm *pSRetoucheFly,
@@ -1424,7 +1418,7 @@ void MA_FASTCALL lcl_ExtendLeftAndRight( SwRect& _rRect,
// if ( pFly->IsBackgroundTransparent() )
// {
// // Background <pFly> is transparent drawn. Thus normally, its region
-// // have not to be substracted from given region.
+// // have not to be subtracted from given region.
// // But, if method is called for a fly frame and
// // <pFly> is a direct lower of this fly frame and
// // <pFly> inherites its transparent background brush from its parent,
@@ -1641,7 +1635,7 @@ void lcl_DrawGraphic( const SvxBrushItem& rBrush, OutputDevice *pOut,
} // end of method <lcl_DrawGraphic>
bool MA_FASTCALL DrawFillAttributes(
- const FillAttributesPtr& rFillAttributes,
+ const drawinglayer::attribute::SdrAllFillAttributesHelperPtr& rFillAttributes,
const SwRect& rOriginalLayoutRect,
const SwRect& rPaintRect,
OutputDevice& rOut)
@@ -1651,7 +1645,7 @@ bool MA_FASTCALL DrawFillAttributes(
if(bUseNew && rFillAttributes.get() && rFillAttributes->isUsed())
{
- const basegfx::B2DRange aPaintRange(
+ basegfx::B2DRange aPaintRange(
rPaintRect.Left(),
rPaintRect.Top(),
rPaintRect.Right(),
@@ -1661,6 +1655,14 @@ bool MA_FASTCALL DrawFillAttributes(
!basegfx::fTools::equalZero(aPaintRange.getWidth()) &&
!basegfx::fTools::equalZero(aPaintRange.getHeight()))
{
+ //UUUU need to expand for correct AAed and non-AAed visualization as primitive; move
+ // bounds to half-(logical)pixel bounds and add a width/height of one pixel that is missing
+ // from SwRect/Rectangle integer handling
+ const basegfx::B2DVector aSingleUnit(rOut.GetInverseViewTransformation() * basegfx::B2DVector(0.5, 0.5));
+
+ aPaintRange.expand(aPaintRange.getMinimum() - (aSingleUnit * 0.5));
+ aPaintRange.expand(aPaintRange.getMaximum() + (aSingleUnit * 1.5));
+
const basegfx::B2DRange aDefineRange(
rOriginalLayoutRect.Left(),
rOriginalLayoutRect.Top(),
@@ -1984,7 +1986,7 @@ void MA_FASTCALL DrawGraphic(
{
if ( !bGrfIsTransparent )
{
- /// substract area of background graphic from draw area
+ /// subtract area of background graphic from draw area
/// OD 08.10.2002 #103898# - consider only that part of the
/// graphic area that is overlapping with draw area.
SwRect aTmpGrf = aGrf;
@@ -3005,7 +3007,7 @@ SwRootFrm::Paint(SwRect const& rRect, SwPrintData const*const pPrintData) const
/// OD 29.08.2002 #102450#
/// determine background color of page for <PaintLayer> method
/// calls, paint <hell> or <heaven>
- const Color aPageBackgrdColor = pPage->GetDrawBackgrdColor();
+ const Color aPageBackgrdColor(pPage->GetDrawBackgrdColor());
pPage->PaintBaBo( aPaintRect, pPage, sal_True );
@@ -3421,7 +3423,7 @@ sal_Bool SwFlyFrm::IsBackgroundTransparent() const
SwRect aDummyRect;
//UUUU
- FillAttributesPtr aFillAttributes;
+ drawinglayer::attribute::SdrAllFillAttributesHelperPtr aFillAttributes;
if ( GetBackgroundBrush( aFillAttributes, pBackgrdBrush, pSectionTOXColor, aDummyRect, false) )
{
@@ -3671,14 +3673,15 @@ void SwFlyFrm::Paint(SwRect const& rRect, SwPrintData const*const) const
{
const SwFrmFmt* pSwFrmFmt = dynamic_cast< const SwFrmFmt* >(GetFmt());
- if(pSwFrmFmt && RES_FLYFRMFMT == pSwFrmFmt->Which())
+ if(pSwFrmFmt && (RES_FLYFRMFMT == pSwFrmFmt->Which() || RES_FRMFMT == pSwFrmFmt->Which()))
{
//UUUU check for transparency
- const FillAttributesPtr aFillAttributes(pSwFrmFmt->getFillAttributes());
+ const drawinglayer::attribute::SdrAllFillAttributesHelperPtr aFillAttributes(pSwFrmFmt->getSdrAllFillAttributesHelper());
- if(aFillAttributes.get())
+ // check if the new fill attributes are used
+ if(aFillAttributes.get() && aFillAttributes->isUsed())
{
- bPaintCompleteBack = aFillAttributes->isTransparent();
+ bPaintCompleteBack = true;
}
}
else
@@ -4105,7 +4108,7 @@ void SwFrm::PaintShadow( const SwRect& rRect, SwRect& rOutRect,
// OD 30.09.2002 #103636# - no SwAlign of shadow rectangle
// no alignment necessary, because (1) <rRect> is already aligned
// and because (2) paint of border and background will occur later.
- // Thus, (1) assures that no conflicts with neighbour object will occure
+ // Thus, (1) assures that no conflicts with neighbour object will occur
// and (2) assures that border and background is not affected by the
// shadow paint.
/*
@@ -4130,7 +4133,7 @@ void SwFrm::PaintShadow( const SwRect& rRect, SwRect& rOutRect,
void SwFrm::PaintBorderLine( const SwRect& rRect,
const SwRect& rOutRect,
- const SwPageFrm *pPage,
+ const SwPageFrm* /*pPage*/,
const Color *pColor ) const
{
if ( !rOutRect.IsOver( rRect ) )
@@ -4188,20 +4191,20 @@ void MA_FASTCALL lcl_SubTopBottom( SwRect& _iorRect,
( !bCnt || _rAttrs.GetTopLine( _rFrm ) )
)
{
- // substract distance between outer and inner line.
+ // subtract distance between outer and inner line.
SwTwips nDist = ::lcl_MinHeightDist( _rBox.GetTop()->GetDistance() );
// OD 19.05.2003 #109667# - non-overlapping border rectangles:
// adjust x-/y-position, if inner top line is a hair line (width = 1)
sal_Bool bIsInnerTopLineHairline = sal_False;
if ( !_bPrtOutputDev )
{
- // additionally substract width of top outer line
+ // additionally subtract width of top outer line
// --> left/right inner/outer line doesn't overlap top outer line.
nDist += ::lcl_AlignHeight( _rBox.GetTop()->GetOutWidth() );
}
else
{
- // OD 29.04.2003 #107169# - additionally substract width of top inner line
+ // OD 29.04.2003 #107169# - additionally subtract width of top inner line
// --> left/right inner/outer line doesn't overlap top inner line.
nDist += ::lcl_AlignHeight( _rBox.GetTop()->GetInWidth() );
bIsInnerTopLineHairline = _rBox.GetTop()->GetInWidth() == 1;
@@ -4238,20 +4241,20 @@ void MA_FASTCALL lcl_SubTopBottom( SwRect& _iorRect,
( !bCnt || _rAttrs.GetBottomLine( _rFrm ) )
)
{
- // substract distance between outer and inner line.
+ // subtract distance between outer and inner line.
SwTwips nDist = ::lcl_MinHeightDist( _rBox.GetBottom()->GetDistance() );
// OD 19.05.2003 #109667# - non-overlapping border rectangles:
// adjust x-/y-position, if inner bottom line is a hair line (width = 1)
sal_Bool bIsInnerBottomLineHairline = sal_False;
if ( !_bPrtOutputDev )
{
- // additionally substract width of bottom outer line
+ // additionally subtract width of bottom outer line
// --> left/right inner/outer line doesn't overlap bottom outer line.
nDist += ::lcl_AlignHeight( _rBox.GetBottom()->GetOutWidth() );
}
else
{
- // OD 29.04.2003 #107169# - additionally substract width of bottom inner line
+ // OD 29.04.2003 #107169# - additionally subtract width of bottom inner line
// --> left/right inner/outer line doesn't overlap bottom inner line.
nDist += ::lcl_AlignHeight( _rBox.GetBottom()->GetInWidth() );
bIsInnerBottomLineHairline = _rBox.GetBottom()->GetInWidth() == 1;
@@ -4357,7 +4360,7 @@ void lcl_PaintLeftRightLine( const sal_Bool _bLeft,
// OD 06.05.2003 #107169# - adjustments for printer output device
if ( bPrtOutputDev )
{
- // substract width of outer top line.
+ // subtract width of outer top line.
if ( rBox.GetTop() && (!bCnt || _rAttrs.GetTopLine( _rFrm )) )
{
long nDist = ::lcl_AlignHeight( rBox.GetTop()->GetOutWidth() );
@@ -4388,7 +4391,7 @@ void lcl_PaintLeftRightLine( const sal_Bool _bLeft,
}
}
}
- // substract width of outer bottom line.
+ // subtract width of outer bottom line.
if ( rBox.GetBottom() && (!bCnt || _rAttrs.GetBottomLine( _rFrm )) )
{
long nDist = ::lcl_AlignHeight( rBox.GetBottom()->GetOutWidth());
@@ -5391,48 +5394,26 @@ void SwPageFrm::PaintGrid( OutputDevice* pOut, SwRect &rRect ) const
void SwPageFrm::PaintMarginArea( const SwRect& _rOutputRect,
ViewShell* _pViewShell ) const
{
- if ( _pViewShell->GetWin() &&
- !_pViewShell->GetViewOptions()->getBrowseMode() )
+ if ( _pViewShell->GetWin() && !_pViewShell->GetViewOptions()->getBrowseMode() )
{
- SwRect aPgPrtRect( Prt() );
- aPgPrtRect.Pos() += Frm().Pos();
- if ( !aPgPrtRect.IsInside( _rOutputRect ) )
+ //UUUU Simplified paint with DrawingLayer FillStyle
+ SwRect aPgRect = Frm();
+ aPgRect._Intersection( _rOutputRect );
+
+ if(!aPgRect.IsEmpty())
{
- SwRect aPgRect = Frm();
- aPgRect._Intersection( _rOutputRect );
- SwRegionRects aPgRegion( aPgRect );
- aPgRegion -= aPgPrtRect;
- const SwPageFrm* pPage = static_cast<const SwPageFrm*>(this);
- //if ( pPage->GetSortedObjs() )
- // ::lcl_SubtractFlys( this, pPage, aPgRect, aPgRegion );
- if ( aPgRegion.Count() )
+ OutputDevice *pOut = _pViewShell->GetOut();
+
+ if(pOut->GetFillColor() != aGlobalRetoucheColor)
{
- OutputDevice *pOut = _pViewShell->GetOut();
- if ( pOut->GetFillColor() != aGlobalRetoucheColor )
- pOut->SetFillColor( aGlobalRetoucheColor );
- for ( sal_uInt16 i = 0; i < aPgRegion.Count(); ++i )
- {
- if ( 1 < aPgRegion.Count() )
- {
- ::SwAlignRect( aPgRegion[i], pGlobalShell );
- if( !aPgRegion[i].HasArea() )
- continue;
- }
- pOut->DrawRect(aPgRegion[i].SVRect());
- }
+ pOut->SetFillColor(aGlobalRetoucheColor);
}
+
+ pOut->DrawRect(aPgRect.SVRect());
}
}
}
-// ----------------------------------------------------------------------
-//
-// const SwPageFrm::mnBorderPxWidth, const SwPageFrm::mnShadowPxWidth
-// SwPageFrm::GetBorderRect (..), SwPageFrm::GetRightShadowRect(..),
-// SwPageFrm::GetBottomShadowRect(..),
-// SwPageFrm::PaintBorderAndShadow(..),
-// SwPageFrm::GetBorderAndShadowBoundRect(..)
-//
// OD 12.02.2003 for #i9719# and #105645#
// ----------------------------------------------------------------------
@@ -5835,7 +5816,7 @@ void SwFrm::PaintBackground( const SwRect &rRect, const SwPageFrm *pPage,
sal_Bool bLowMode = sal_True;
//UUUU
- FillAttributesPtr aFillAttributes;
+ drawinglayer::attribute::SdrAllFillAttributesHelperPtr aFillAttributes;
sal_Bool bBack = GetBackgroundBrush( aFillAttributes, pItem, pCol, aOrigBackRect, bLowerMode );
@@ -5868,14 +5849,14 @@ void SwFrm::PaintBackground( const SwRect &rRect, const SwPageFrm *pPage,
pTmpBackBrush = new SvxBrushItem( Color( COL_WHITE ), RES_BACKGROUND );
//UUU
- aFillAttributes.reset(new FillAttributes(Color( COL_WHITE )));
+ aFillAttributes.reset(new drawinglayer::attribute::SdrAllFillAttributesHelper(Color( COL_WHITE )));
}
else
{
pTmpBackBrush = new SvxBrushItem( aGlobalRetoucheColor, RES_BACKGROUND);
//UUU
- aFillAttributes.reset(new FillAttributes(aGlobalRetoucheColor));
+ aFillAttributes.reset(new drawinglayer::attribute::SdrAllFillAttributesHelper(aGlobalRetoucheColor));
}
pItem = pTmpBackBrush;
@@ -5926,7 +5907,7 @@ void SwFrm::PaintBackground( const SwRect &rRect, const SwPageFrm *pPage,
pItem = pNewItem;
//UUUU
- aFillAttributes.reset(new FillAttributes(*pCol));
+ aFillAttributes.reset(new drawinglayer::attribute::SdrAllFillAttributesHelper(*pCol));
}
//if ( pPage->GetSortedObjs() )
@@ -5942,9 +5923,29 @@ void SwFrm::PaintBackground( const SwRect &rRect, const SwPageFrm *pPage,
const sal_Bool bConsiderBackgroundTransparency = IsFlyFrm();
bool bDone(false);
- if(pOut && aFillAttributes.get() && aFillAttributes->isUsed())
+ // #i125189# We are also done when the new DrawingLayer FillAttributes are used
+ // or the FillStyle is set (different from XFILL_NONE)
+ if(pOut && aFillAttributes.get())
{
- bDone = DrawFillAttributes(aFillAttributes, aOrigBackRect, aRect, *pOut);
+ if(aFillAttributes->isUsed())
+ {
+ // check if really something is painted
+ bDone = DrawFillAttributes(aFillAttributes, aOrigBackRect, aRect, *pOut);
+ }
+
+ if(!bDone)
+ {
+ // if not, still a FillStyle could be set but the transparency is at 100%,
+ // thus need to check the model data itself for FillStyle (do not rely on
+ // SdrAllFillAttributesHelper since it already contains optimized information,
+ // e.g. transparency leads to no fill)
+ const XFillStyle eFillStyle(static_cast< const XFillStyleItem& >(GetAttrSet()->Get(XATTR_FILLSTYLE)).GetValue());
+
+ if(XFILL_NONE != eFillStyle)
+ {
+ bDone = true;
+ }
+ }
}
if(!bDone)
@@ -6510,31 +6511,39 @@ void SwLayoutFrm::RefreshExtraData( const SwRect &rRect ) const
@return Color
*/
-const Color& SwPageFrm::GetDrawBackgrdColor() const
+const Color SwPageFrm::GetDrawBackgrdColor() const
{
const SvxBrushItem* pBrushItem;
const Color* pDummyColor;
SwRect aDummyRect;
//UUUU
- FillAttributesPtr aFillAttributes;
+ drawinglayer::attribute::SdrAllFillAttributesHelperPtr aFillAttributes;
if ( GetBackgroundBrush( aFillAttributes, pBrushItem, pDummyColor, aDummyRect, true) )
{
- const Graphic* pGraphic = pBrushItem->GetGraphic();
-
- if(pGraphic)
+ if(aFillAttributes.get() && aFillAttributes->isUsed()) //UUUU
{
- // #29105# when a graphic is set, it may be possible to calculate a single
- // color which looks good in all places of the graphic. Since it is
- // planned to have text edit on the overlay one day and the fallback
- // to aGlobalRetoucheColor returns something useful, just use that
- // for now.
+ // let SdrAllFillAttributesHelper do the average color calculation
+ return Color(aFillAttributes->getAverageColor(aGlobalRetoucheColor.getBColor()));
}
- else
+ else if(pBrushItem)
{
- // not a graphic, use (hopefully) initialized color
- return pBrushItem->GetColor();
+ const Graphic* pGraphic = pBrushItem->GetGraphic();
+
+ if(pGraphic)
+ {
+ // #29105# when a graphic is set, it may be possible to calculate a single
+ // color which looks good in all places of the graphic. Since it is
+ // planned to have text edit on the overlay one day and the fallback
+ // to aGlobalRetoucheColor returns something useful, just use that
+ // for now.
+ }
+ else
+ {
+ // not a graphic, use (hopefully) initialized color
+ return pBrushItem->GetColor();
+ }
}
}
@@ -6618,7 +6627,7 @@ void SwFrm::Retouche( const SwPageFrm * pPage, const SwRect &rRect ) const
SwRect aRetouchePart( rRetouche );
if ( aRetouchePart.HasArea() )
{
- const Color aPageBackgrdColor = pPage->GetDrawBackgrdColor();
+ const Color aPageBackgrdColor(pPage->GetDrawBackgrdColor());
const IDocumentDrawModelAccess* pIDDMA = pSh->getIDocumentDrawModelAccess();
// --> OD #i76669#
SwViewObjectContactRedirector aSwRedirector( *pSh );
@@ -6690,7 +6699,7 @@ void SwFrm::Retouche( const SwPageFrm * pPage, const SwRect &rRect ) const
@return true, if a background brush for the frame is found
*/
sal_Bool SwFrm::GetBackgroundBrush(
- FillAttributesPtr& rFillAttributes,
+ drawinglayer::attribute::SdrAllFillAttributesHelperPtr& rFillAttributes,
const SvxBrushItem* & rpBrush,
const Color*& rpCol,
SwRect &rOrigRect,
@@ -6706,18 +6715,7 @@ sal_Bool SwFrm::GetBackgroundBrush(
return sal_False;
//UUUU
- const SwLayoutFrm* pSwLayoutFrm = dynamic_cast< const SwLayoutFrm* >(pFrm);
-
- if(pSwLayoutFrm)
- {
- const SwFrmFmt* pSwFrmFmt = dynamic_cast< const SwFrmFmt* >(pSwLayoutFrm->GetFmt());
-
- if(pSwFrmFmt && RES_FLYFRMFMT == pSwFrmFmt->Which())
- {
- rFillAttributes = pSwFrmFmt->getFillAttributes();
- }
- }
-
+ rFillAttributes = pFrm->getSdrAllFillAttributesHelper();
const SvxBrushItem &rBack = pFrm->GetAttrSet()->GetBackground();
if( pFrm->IsSctFrm() )
@@ -6756,13 +6754,41 @@ sal_Bool SwFrm::GetBackgroundBrush(
/// considered for fly frames
const sal_Bool bConsiderBackgroundTransparency = pFrm->IsFlyFrm();
+ // #i125189# Do not base the decision for using the parent's fill style for this
+ // frame when the new DrawingLayer FillAttributes are used on the SdrAllFillAttributesHelper
+ // information. There the data is already optimized to no fill in the case that the
+ // transparence is at 100% while no fill is the criteria for derivation
+ bool bNewDrawingLayerFillStyleIsUsedAndNotNoFill(false);
+
+ if(rFillAttributes.get())
+ {
+ // the new DrawingLayer FillStyle is used
+ if(rFillAttributes->isUsed())
+ {
+ // it's not XFILL_NONE
+ bNewDrawingLayerFillStyleIsUsedAndNotNoFill = true;
+ }
+ else
+ {
+ // maybe optimized already when 100% transparency is used somewhere, need to test
+ // XFillStyleItem directly from the model data
+ const XFillStyle eFillStyle(static_cast< const XFillStyleItem& >(pFrm->GetAttrSet()->Get(XATTR_FILLSTYLE)).GetValue());
+
+ if(XFILL_NONE != eFillStyle)
+ {
+ bNewDrawingLayerFillStyleIsUsedAndNotNoFill = true;
+ }
+ }
+ }
+
/// OD 20.08.2002 #99657#
/// add condition:
/// If <bConsiderBackgroundTransparency> is set - see above -,
/// return brush of frame <pFrm>, if its color is *not* "no fill"/"auto fill"
if (
- // done when FillAttributesare set
- (rFillAttributes.get() && rFillAttributes->isUsed()) ||
+ // #i125189# Done when the new DrawingLayer FillAttributes are used and
+ // not XFILL_NONE (see above)
+ bNewDrawingLayerFillStyleIsUsedAndNotNoFill ||
// done when SvxBrushItem is used
!rBack.GetColor().GetTransparency() || rBack.GetGraphicPos() != GPOS_NONE ||
@@ -6905,7 +6931,7 @@ Graphic SwFlyFrmFmt::MakeGraphic( ImageMap* pMap )
// OD 09.12.2002 #103045# - determine page, fly frame is on
const SwPageFrm* pFlyPage = pFly->FindPageFrm();
- const Color aPageBackgrdColor = pFlyPage->GetDrawBackgrdColor();
+ const Color aPageBackgrdColor(pFlyPage->GetDrawBackgrdColor());
const IDocumentDrawModelAccess* pIDDMA = pSh->getIDocumentDrawModelAccess();
// --> OD #i76669#
SwViewObjectContactRedirector aSwRedirector( *pSh );
@@ -6951,7 +6977,7 @@ Graphic SwFlyFrmFmt::MakeGraphic( ImageMap* pMap )
Graphic SwDrawFrmFmt::MakeGraphic( ImageMap* )
{
Graphic aRet;
- SdrModel *pMod = getIDocumentDrawModelAccess()->GetDrawModel();
+ SwDrawModel* pMod = getIDocumentDrawModelAccess()->GetDrawModel();
if ( pMod )
{
SdrObject *pObj = FindSdrObject();
@@ -6964,4 +6990,4 @@ Graphic SwDrawFrmFmt::MakeGraphic( ImageMap* )
return aRet;
}
-
+//eof
diff --git a/sw/source/core/layout/tabfrm.cxx b/sw/source/core/layout/tabfrm.cxx
index a4d0b35067b9..c60263e11fd0 100644
--- a/sw/source/core/layout/tabfrm.cxx
+++ b/sw/source/core/layout/tabfrm.cxx
@@ -1909,7 +1909,7 @@ void SwTabFrm::MakeAll()
LockJoin(); //Ich lass mich nicht unterwegs vernichten.
SwLayNotify aNotify( this ); //uebernimmt im DTor die Benachrichtigung
// If pos is invalid, we have to call a SetInvaKeep at aNotify.
- // Otherwise the keep atribute would not work in front of a table.
+ // Otherwise the keep attribute would not work in front of a table.
const sal_Bool bOldValidPos = GetValidPosFlag();
//Wenn mein direkter Nachbar gleichzeitig mein Follow ist
@@ -2528,7 +2528,7 @@ void SwTabFrm::MakeAll()
}
// --> FME 2004-06-09 #i29771# Two tries to split the table:
- // If an error occured during splitting. We start a second
+ // If an error occurred during splitting. We start a second
// try, this time without splitting of table rows.
if ( bSplitError )
{
@@ -2537,7 +2537,7 @@ void SwTabFrm::MakeAll()
}
// --> FME 2005-02-10 #119477#
- // If splitting the table was successfull or not,
+ // If splitting the table was successful or not,
// we do not want to have 'empty' follow tables.
if ( GetFollow() && !GetFollow()->GetFirstNonHeadlineRow() )
Join();
diff --git a/sw/source/core/layout/trvlfrm.cxx b/sw/source/core/layout/trvlfrm.cxx
index a6f8abe57a28..a79b78577594 100644
--- a/sw/source/core/layout/trvlfrm.cxx
+++ b/sw/source/core/layout/trvlfrm.cxx
@@ -308,7 +308,7 @@ sal_Bool SwRootFrm::GetCrsrOfst( SwPosition *pPos, Point &rPoint,
Point aOldPoint = rPoint;
// PAGES01
- // search for page containing rPoint. The borders around the pages are considerd
+ // search for page containing rPoint. The borders around the pages are considered
const SwPageFrm* pPage = GetPageAtPos( rPoint, 0, true );
// --> OD 2008-12-23 #i95626#
@@ -1984,9 +1984,6 @@ bool SwRootFrm::MakeTblCrsrs( SwTableCursor& rTblCrsr )
* Ende nach links erweitern, bis Frame-Start Rect berechnen
* und bei mehr als 2 Frames von allen dazwischen liegenden
* Frames die PrtArea dazu.
- * 4. Wenn es sich um eine Tabellenselektion handelt wird fuer jeden
- * PaM im Ring der CellFrm besorgt, dessen PrtArea wird zu den
- * Rechtecken addiert.
*
* Grosser Umbau wg. der FlyFrm; denn diese muessen ausgespart werden.
* Ausnahmen: - Der Fly in dem die Selektion stattfindet (wenn sie in einem Fly
@@ -2008,8 +2005,7 @@ inline void Sub( SwRegionRects& rRegion, const SwRect& rRect )
}
void SwRootFrm::CalcFrmRects(
- SwShellCrsr &rCrsr,
- const sal_Bool bIsTblMode )
+ SwShellCrsr &rCrsr )
{
SwPosition *pStartPos = rCrsr.Start(),
*pEndPos = rCrsr.GetPoint() == pStartPos ? rCrsr.GetMark() : rCrsr.GetPoint();
@@ -2053,523 +2049,513 @@ void SwRootFrm::CalcFrmRects(
}
}
- //Fall 4: Tabellenselection
- if( bIsTblMode )
- {
- const SwFrm *pCell = pStartFrm->GetUpper();
- while ( !pCell->IsCellFrm() )
- pCell = pCell->GetUpper();
- SwRect aTmp( pCell->Prt() );
- aTmp.Pos() += pCell->Frm().Pos();
- aRegion.ChangeOrigin( aTmp );
- aRegion.Remove( 0, aRegion.Count() );
- aRegion.Insert( aTmp, 0 );
- }
- else
- {
- // falls eine nicht erlaubte Selection besteht, dann korrigiere das
- // nicht erlaubt ist Header/Footer/TableHeadline ueber 2 Seiten
- do { // middle check loop
- const SwLayoutFrm* pSttLFrm = pStartFrm->GetUpper();
- const sal_uInt16 cHdFtTblHd = FRM_HEADER | FRM_FOOTER | FRM_TAB;
- while( pSttLFrm &&
- ! (cHdFtTblHd & pSttLFrm->GetType() ))
- pSttLFrm = pSttLFrm->GetUpper();
- if( !pSttLFrm )
- break;
- const SwLayoutFrm* pEndLFrm = pEndFrm->GetUpper();
- while( pEndLFrm &&
- ! (cHdFtTblHd & pEndLFrm->GetType() ))
- pEndLFrm = pEndLFrm->GetUpper();
- if( !pEndLFrm )
- break;
+ // falls eine nicht erlaubte Selection besteht, dann korrigiere das
+ // nicht erlaubt ist Header/Footer/TableHeadline ueber 2 Seiten
+ do
+ { // middle check loop
+ const SwLayoutFrm* pSttLFrm = pStartFrm->GetUpper();
+ const sal_uInt16 cHdFtTblHd = FRM_HEADER | FRM_FOOTER | FRM_TAB;
+ while ( pSttLFrm
+ && !( cHdFtTblHd & pSttLFrm->GetType() ) )
+ {
+ pSttLFrm = pSttLFrm->GetUpper();
+ }
+ if ( !pSttLFrm )
+ break;
+ const SwLayoutFrm* pEndLFrm = pEndFrm->GetUpper();
+ while ( pEndLFrm
+ && !( cHdFtTblHd & pEndLFrm->GetType() ) )
+ {
+ pEndLFrm = pEndLFrm->GetUpper();
+ }
+ if ( !pEndLFrm )
+ break;
- ASSERT( pEndLFrm->GetType() == pSttLFrm->GetType(),
- "Selection ueber unterschiedliche Inhalte" );
- switch( pSttLFrm->GetType() )
- {
- case FRM_HEADER:
+ ASSERT( pEndLFrm->GetType() == pSttLFrm->GetType(),
+ "Selection ueber unterschiedliche Inhalte" );
+ switch (pSttLFrm->GetType())
+ {
+ case FRM_HEADER:
case FRM_FOOTER:
- // auf unterschiedlichen Seiten ??
- // dann immer auf die Start-Seite
- if( pEndLFrm->FindPageFrm() != pSttLFrm->FindPageFrm() )
- {
- // End- auf den Start-CntntFrame setzen
- if( pStartPos == rCrsr.GetPoint() )
- pEndFrm = pStartFrm;
- else
- pStartFrm = pEndFrm;
- }
- break;
- case FRM_TAB:
- // auf unterschiedlichen Seiten ??
- // existiert
- // dann teste auf Tabelle-Headline
- {
- const SwTabFrm* pTabFrm = (SwTabFrm*)pSttLFrm;
- if( ( pTabFrm->GetFollow() ||
- ((SwTabFrm*)pEndLFrm)->GetFollow() ) &&
- pTabFrm->GetTable()->GetRowsToRepeat() > 0 &&
- pTabFrm->GetLower() != ((SwTabFrm*)pEndLFrm)->GetLower() &&
- ( lcl_IsInRepeatedHeadline( pStartFrm ) ||
- lcl_IsInRepeatedHeadline( pEndFrm ) ) )
- {
- // End- auf den Start-CntntFrame setzen
- if( pStartPos == rCrsr.GetPoint() )
- pEndFrm = pStartFrm;
- else
- pStartFrm = pEndFrm;
- }
- }
- break;
+ // auf unterschiedlichen Seiten ??
+ // dann immer auf die Start-Seite
+ if ( pEndLFrm->FindPageFrm() != pSttLFrm->FindPageFrm() )
+ {
+ // End- auf den Start-CntntFrame setzen
+ if ( pStartPos == rCrsr.GetPoint() )
+ pEndFrm = pStartFrm;
+ else
+ pStartFrm = pEndFrm;
}
- } while( sal_False );
-
- SwCrsrMoveState aTmpState( MV_NONE );
- aTmpState.b2Lines = sal_True;
- aTmpState.bNoScroll = sal_True;
- aTmpState.nCursorBidiLevel = pStartFrm->IsRightToLeft() ? 1 : 0;
-
- //CntntRects zu Start- und EndFrms.
- SwRect aStRect, aEndRect;
- pStartFrm->GetCharRect( aStRect, *pStartPos, &aTmpState );
- Sw2LinesPos *pSt2Pos = aTmpState.p2Lines;
- aTmpState.p2Lines = NULL;
- aTmpState.nCursorBidiLevel = pEndFrm->IsRightToLeft() ? 1 : 0;
-
- pEndFrm->GetCharRect ( aEndRect, *pEndPos, &aTmpState );
- Sw2LinesPos *pEnd2Pos = aTmpState.p2Lines;
-
- SwRect aStFrm ( pStartFrm->UnionFrm( sal_True ) );
- aStFrm.Intersection( pStartFrm->PaintArea() );
- SwRect aEndFrm( pStartFrm == pEndFrm ? aStFrm : pEndFrm->UnionFrm( sal_True ) );
- if( pStartFrm != pEndFrm )
+ break;
+ case FRM_TAB:
+ // auf unterschiedlichen Seiten ??
+ // existiert
+ // dann teste auf Tabelle-Headline
{
- aEndFrm.Intersection( pEndFrm->PaintArea() );
+ const SwTabFrm* pTabFrm = (SwTabFrm*) pSttLFrm;
+ if ( ( pTabFrm->GetFollow()
+ || ( (SwTabFrm*) pEndLFrm )->GetFollow() )
+ && pTabFrm->GetTable()->GetRowsToRepeat() > 0
+ && pTabFrm->GetLower() != ( (SwTabFrm*) pEndLFrm )->GetLower()
+ && ( lcl_IsInRepeatedHeadline( pStartFrm )
+ || lcl_IsInRepeatedHeadline( pEndFrm ) ) )
+ {
+ // End- auf den Start-CntntFrame setzen
+ if ( pStartPos == rCrsr.GetPoint() )
+ pEndFrm = pStartFrm;
+ else
+ pStartFrm = pEndFrm;
+ }
}
- SWRECTFN( pStartFrm )
- const sal_Bool bR2L = pStartFrm->IsRightToLeft();
- const sal_Bool bEndR2L = pEndFrm->IsRightToLeft();
-
- // If there's no doubleline portion involved or start and end are both
- // in the same doubleline portion, all works fine, but otherwise
- // we need the following...
- if( pSt2Pos != pEnd2Pos && ( !pSt2Pos || !pEnd2Pos ||
- pSt2Pos->aPortion != pEnd2Pos->aPortion ) )
+ break;
+ }
+ } while ( sal_False);
+
+ SwCrsrMoveState aTmpState( MV_NONE );
+ aTmpState.b2Lines = sal_True;
+ aTmpState.bNoScroll = sal_True;
+ aTmpState.nCursorBidiLevel = pStartFrm->IsRightToLeft() ? 1 : 0;
+
+ //CntntRects zu Start- und EndFrms.
+ SwRect aStRect, aEndRect;
+ pStartFrm->GetCharRect( aStRect, *pStartPos, &aTmpState );
+ Sw2LinesPos *pSt2Pos = aTmpState.p2Lines;
+ aTmpState.p2Lines = NULL;
+ aTmpState.nCursorBidiLevel = pEndFrm->IsRightToLeft() ? 1 : 0;
+
+ pEndFrm->GetCharRect( aEndRect, *pEndPos, &aTmpState );
+ Sw2LinesPos *pEnd2Pos = aTmpState.p2Lines;
+
+ SwRect aStFrm( pStartFrm->UnionFrm( sal_True ) );
+ aStFrm.Intersection( pStartFrm->PaintArea() );
+ SwRect aEndFrm( pStartFrm == pEndFrm ? aStFrm : pEndFrm->UnionFrm( sal_True ) );
+ if ( pStartFrm != pEndFrm )
+ {
+ aEndFrm.Intersection( pEndFrm->PaintArea() );
+ }
+ SWRECTFN( pStartFrm )
+ const sal_Bool bR2L = pStartFrm->IsRightToLeft();
+ const sal_Bool bEndR2L = pEndFrm->IsRightToLeft();
+
+ // If there's no doubleline portion involved or start and end are both
+ // in the same doubleline portion, all works fine, but otherwise
+ // we need the following...
+ if ( pSt2Pos != pEnd2Pos
+ && ( !pSt2Pos || !pEnd2Pos || pSt2Pos->aPortion != pEnd2Pos->aPortion ) )
+ {
+ // If we have a start(end) position inside a doubleline portion
+ // the surrounded part of the doubleline portion is subtracted
+ // from the region and the aStRect(aEndRect) is set to the
+ // end(start) of the doubleline portion.
+ if ( pSt2Pos )
{
- // If we have a start(end) position inside a doubleline portion
- // the surrounded part of the doubleline portion is subtracted
- // from the region and the aStRect(aEndRect) is set to the
- // end(start) of the doubleline portion.
- if( pSt2Pos )
- {
- SwRect aTmp( aStRect );
+ SwRect aTmp( aStRect );
- // BiDi-Portions are swimming against the current.
- const sal_Bool bPorR2L = ( MT_BIDI == pSt2Pos->nMultiType ) ?
- ! bR2L :
- bR2L;
+ // BiDi-Portions are swimming against the current.
+ const sal_Bool bPorR2L = ( MT_BIDI == pSt2Pos->nMultiType ) ?
+ !bR2L :
+ bR2L;
- if( MT_BIDI == pSt2Pos->nMultiType &&
- (pSt2Pos->aPortion2.*fnRect->fnGetWidth)() )
- {
- // nested bidi portion
- long nRightAbs = (pSt2Pos->aPortion.*fnRect->fnGetRight)();
- nRightAbs -= (pSt2Pos->aPortion2.*fnRect->fnGetLeft)();
- long nLeftAbs = nRightAbs - (pSt2Pos->aPortion2.*fnRect->fnGetWidth)();
+ if ( MT_BIDI == pSt2Pos->nMultiType
+ && ( pSt2Pos->aPortion2.*fnRect->fnGetWidth )() )
+ {
+ // nested bidi portion
+ long nRightAbs = ( pSt2Pos->aPortion.*fnRect->fnGetRight )();
+ nRightAbs -= ( pSt2Pos->aPortion2.*fnRect->fnGetLeft )();
+ long nLeftAbs = nRightAbs - ( pSt2Pos->aPortion2.*fnRect->fnGetWidth )();
- (aTmp.*fnRect->fnSetRight)( nRightAbs );
+ ( aTmp.*fnRect->fnSetRight )( nRightAbs );
- if ( ! pEnd2Pos || pEnd2Pos->aPortion != pSt2Pos->aPortion )
- {
- SwRect aTmp2( pSt2Pos->aPortion );
- (aTmp2.*fnRect->fnSetRight)( nLeftAbs );
- aTmp2.Intersection( aEndFrm );
- Sub( aRegion, aTmp2 );
- }
- }
- else
+ if ( !pEnd2Pos || pEnd2Pos->aPortion != pSt2Pos->aPortion )
{
- if( bPorR2L )
- (aTmp.*fnRect->fnSetLeft)(
- (pSt2Pos->aPortion.*fnRect->fnGetLeft)() );
- else
- (aTmp.*fnRect->fnSetRight)(
- (pSt2Pos->aPortion.*fnRect->fnGetRight)() );
+ SwRect aTmp2( pSt2Pos->aPortion );
+ ( aTmp2.*fnRect->fnSetRight )( nLeftAbs );
+ aTmp2.Intersection( aEndFrm );
+ Sub( aRegion, aTmp2 );
}
+ }
+ else
+ {
+ if ( bPorR2L )
+ ( aTmp.*fnRect->fnSetLeft )(
+ ( pSt2Pos->aPortion.*fnRect->fnGetLeft )() );
+ else
+ ( aTmp.*fnRect->fnSetRight )(
+ ( pSt2Pos->aPortion.*fnRect->fnGetRight )() );
+ }
+
+ if ( MT_ROT_90 == pSt2Pos->nMultiType
+ || ( pSt2Pos->aPortion.*fnRect->fnGetTop )() == ( aTmp.*fnRect->fnGetTop )() )
+ {
+ ( aTmp.*fnRect->fnSetTop )(
+ ( pSt2Pos->aLine.*fnRect->fnGetTop )() );
+ }
+
+ aTmp.Intersection( aStFrm );
+ Sub( aRegion, aTmp );
- if( MT_ROT_90 == pSt2Pos->nMultiType ||
- (pSt2Pos->aPortion.*fnRect->fnGetTop)() ==
- (aTmp.*fnRect->fnGetTop)() )
+ SwTwips nTmp = ( pSt2Pos->aLine.*fnRect->fnGetBottom )();
+ if ( MT_ROT_90 != pSt2Pos->nMultiType
+ && ( aStRect.*fnRect->fnBottomDist )( nTmp ) > 0 )
+ {
+ ( aTmp.*fnRect->fnSetTop )( ( aTmp.*fnRect->fnGetBottom )() );
+ ( aTmp.*fnRect->fnSetBottom )( nTmp );
+ if ( ( aStRect.*fnRect->fnBottomDist )( ( pSt2Pos->aPortion.*fnRect->fnGetBottom )() ) > 0 )
{
- (aTmp.*fnRect->fnSetTop)(
- (pSt2Pos->aLine.*fnRect->fnGetTop)() );
+ if ( bPorR2L )
+ ( aTmp.*fnRect->fnSetRight )(
+ ( pSt2Pos->aPortion.*fnRect->fnGetRight )() );
+ else
+ ( aTmp.*fnRect->fnSetLeft )(
+ ( pSt2Pos->aPortion.*fnRect->fnGetLeft )() );
}
-
aTmp.Intersection( aStFrm );
Sub( aRegion, aTmp );
+ }
- SwTwips nTmp = (pSt2Pos->aLine.*fnRect->fnGetBottom)();
- if( MT_ROT_90 != pSt2Pos->nMultiType &&
- (aStRect.*fnRect->fnBottomDist)( nTmp ) > 0 )
- {
- (aTmp.*fnRect->fnSetTop)( (aTmp.*fnRect->fnGetBottom)() );
- (aTmp.*fnRect->fnSetBottom)( nTmp );
- if( (aStRect.*fnRect->fnBottomDist)(
- (pSt2Pos->aPortion.*fnRect->fnGetBottom)() ) > 0 )
- {
- if( bPorR2L )
- (aTmp.*fnRect->fnSetRight)(
- (pSt2Pos->aPortion.*fnRect->fnGetRight)() );
- else
- (aTmp.*fnRect->fnSetLeft)(
- (pSt2Pos->aPortion.*fnRect->fnGetLeft)() );
- }
- aTmp.Intersection( aStFrm );
- Sub( aRegion, aTmp );
- }
+ aStRect = pSt2Pos->aLine;
+ ( aStRect.*fnRect->fnSetLeft )( bR2L ?
+ ( pSt2Pos->aPortion.*fnRect->fnGetLeft )() :
+ ( pSt2Pos->aPortion.*fnRect->fnGetRight )() );
+ ( aStRect.*fnRect->fnSetWidth )( 1 );
+ }
- aStRect = pSt2Pos->aLine;
- (aStRect.*fnRect->fnSetLeft)( bR2L ?
- (pSt2Pos->aPortion.*fnRect->fnGetLeft)() :
- (pSt2Pos->aPortion.*fnRect->fnGetRight)() );
- (aStRect.*fnRect->fnSetWidth)( 1 );
- }
+ if ( pEnd2Pos )
+ {
+ SWRECTFNX( pEndFrm )
+ SwRect aTmp( aEndRect );
- if( pEnd2Pos )
+ // BiDi-Portions are swimming against the current.
+ const sal_Bool bPorR2L = ( MT_BIDI == pEnd2Pos->nMultiType ) ?
+ !bEndR2L :
+ bEndR2L;
+
+ if ( MT_BIDI == pEnd2Pos->nMultiType
+ && ( pEnd2Pos->aPortion2.*fnRectX->fnGetWidth )() )
{
- SWRECTFNX( pEndFrm )
- SwRect aTmp( aEndRect );
+ // nested bidi portion
+ long nRightAbs = ( pEnd2Pos->aPortion.*fnRectX->fnGetRight )();
+ nRightAbs = nRightAbs - ( pEnd2Pos->aPortion2.*fnRectX->fnGetLeft )();
+ long nLeftAbs = nRightAbs - ( pEnd2Pos->aPortion2.*fnRectX->fnGetWidth )();
- // BiDi-Portions are swimming against the current.
- const sal_Bool bPorR2L = ( MT_BIDI == pEnd2Pos->nMultiType ) ?
- ! bEndR2L :
- bEndR2L;
+ ( aTmp.*fnRectX->fnSetLeft )( nLeftAbs );
- if( MT_BIDI == pEnd2Pos->nMultiType &&
- (pEnd2Pos->aPortion2.*fnRectX->fnGetWidth)() )
+ if ( !pSt2Pos || pSt2Pos->aPortion != pEnd2Pos->aPortion )
{
- // nested bidi portion
- long nRightAbs = (pEnd2Pos->aPortion.*fnRectX->fnGetRight)();
- nRightAbs = nRightAbs - (pEnd2Pos->aPortion2.*fnRectX->fnGetLeft)();
- long nLeftAbs = nRightAbs - (pEnd2Pos->aPortion2.*fnRectX->fnGetWidth)();
-
- (aTmp.*fnRectX->fnSetLeft)( nLeftAbs );
-
- if ( ! pSt2Pos || pSt2Pos->aPortion != pEnd2Pos->aPortion )
- {
- SwRect aTmp2( pEnd2Pos->aPortion );
- (aTmp2.*fnRectX->fnSetLeft)( nRightAbs );
- aTmp2.Intersection( aEndFrm );
- Sub( aRegion, aTmp2 );
- }
+ SwRect aTmp2( pEnd2Pos->aPortion );
+ ( aTmp2.*fnRectX->fnSetLeft )( nRightAbs );
+ aTmp2.Intersection( aEndFrm );
+ Sub( aRegion, aTmp2 );
}
+ }
+ else
+ {
+ if ( bPorR2L )
+ ( aTmp.*fnRectX->fnSetRight )(
+ ( pEnd2Pos->aPortion.*fnRectX->fnGetRight )() );
else
- {
- if ( bPorR2L )
- (aTmp.*fnRectX->fnSetRight)(
- (pEnd2Pos->aPortion.*fnRectX->fnGetRight)() );
- else
- (aTmp.*fnRectX->fnSetLeft)(
- (pEnd2Pos->aPortion.*fnRectX->fnGetLeft)() );
- }
+ ( aTmp.*fnRectX->fnSetLeft )(
+ ( pEnd2Pos->aPortion.*fnRectX->fnGetLeft )() );
+ }
- if( MT_ROT_90 == pEnd2Pos->nMultiType ||
- (pEnd2Pos->aPortion.*fnRectX->fnGetBottom)() ==
- (aEndRect.*fnRectX->fnGetBottom)() )
- {
- (aTmp.*fnRectX->fnSetBottom)(
- (pEnd2Pos->aLine.*fnRectX->fnGetBottom)() );
- }
+ if ( MT_ROT_90 == pEnd2Pos->nMultiType
+ || ( pEnd2Pos->aPortion.*fnRectX->fnGetBottom )() == ( aEndRect.*fnRectX->fnGetBottom )() )
+ {
+ ( aTmp.*fnRectX->fnSetBottom )(
+ ( pEnd2Pos->aLine.*fnRectX->fnGetBottom )() );
+ }
- aTmp.Intersection( aEndFrm );
- Sub( aRegion, aTmp );
+ aTmp.Intersection( aEndFrm );
+ Sub( aRegion, aTmp );
- // The next statement means neither ruby nor rotate(90):
- if( !( MT_RUBY & pEnd2Pos->nMultiType ) )
+ // The next statement means neither ruby nor rotate(90):
+ if ( !( MT_RUBY & pEnd2Pos->nMultiType ) )
+ {
+ SwTwips nTmp = ( pEnd2Pos->aLine.*fnRectX->fnGetTop )();
+ if ( ( aEndRect.*fnRectX->fnGetTop )() != nTmp )
{
- SwTwips nTmp = (pEnd2Pos->aLine.*fnRectX->fnGetTop)();
- if( (aEndRect.*fnRectX->fnGetTop)() != nTmp )
+ ( aTmp.*fnRectX->fnSetBottom )(
+ ( aTmp.*fnRectX->fnGetTop )() );
+ ( aTmp.*fnRectX->fnSetTop )( nTmp );
+ if ( ( aEndRect.*fnRectX->fnGetTop )() !=
+ ( pEnd2Pos->aPortion.*fnRectX->fnGetTop )() )
{
- (aTmp.*fnRectX->fnSetBottom)(
- (aTmp.*fnRectX->fnGetTop)() );
- (aTmp.*fnRectX->fnSetTop)( nTmp );
- if( (aEndRect.*fnRectX->fnGetTop)() !=
- (pEnd2Pos->aPortion.*fnRectX->fnGetTop)() )
- {
- if( bPorR2L )
- (aTmp.*fnRectX->fnSetLeft)(
- (pEnd2Pos->aPortion.*fnRectX->fnGetLeft)() );
- else
- (aTmp.*fnRectX->fnSetRight)(
- (pEnd2Pos->aPortion.*fnRectX->fnGetRight)() );
- }
- aTmp.Intersection( aEndFrm );
- Sub( aRegion, aTmp );
+ if ( bPorR2L )
+ ( aTmp.*fnRectX->fnSetLeft )(
+ ( pEnd2Pos->aPortion.*fnRectX->fnGetLeft )() );
+ else
+ ( aTmp.*fnRectX->fnSetRight )(
+ ( pEnd2Pos->aPortion.*fnRectX->fnGetRight )() );
}
+ aTmp.Intersection( aEndFrm );
+ Sub( aRegion, aTmp );
}
-
- aEndRect = pEnd2Pos->aLine;
- (aEndRect.*fnRectX->fnSetLeft)( bEndR2L ?
- (pEnd2Pos->aPortion.*fnRectX->fnGetRight)() :
- (pEnd2Pos->aPortion.*fnRectX->fnGetLeft)() );
- (aEndRect.*fnRectX->fnSetWidth)( 1 );
- }
- }
- else if( pSt2Pos && pEnd2Pos &&
- MT_BIDI == pSt2Pos->nMultiType &&
- MT_BIDI == pEnd2Pos->nMultiType &&
- pSt2Pos->aPortion == pEnd2Pos->aPortion &&
- pSt2Pos->aPortion2 != pEnd2Pos->aPortion2 )
- {
- // This is the ugly special case, where the selection starts and
- // ends in the same bidi portion but one start or end is inside a
- // nested bidi portion.
-
- if ( (pSt2Pos->aPortion2.*fnRect->fnGetWidth)() )
- {
- SwRect aTmp( aStRect );
- long nRightAbs = (pSt2Pos->aPortion.*fnRect->fnGetRight)();
- nRightAbs -= (pSt2Pos->aPortion2.*fnRect->fnGetLeft)();
- long nLeftAbs = nRightAbs - (pSt2Pos->aPortion2.*fnRect->fnGetWidth)();
-
- (aTmp.*fnRect->fnSetRight)( nRightAbs );
- aTmp.Intersection( aStFrm );
- Sub( aRegion, aTmp );
-
- aStRect = pSt2Pos->aLine;
- (aStRect.*fnRect->fnSetLeft)( bR2L ? nRightAbs : nLeftAbs );
- (aStRect.*fnRect->fnSetWidth)( 1 );
}
- SWRECTFNX( pEndFrm )
- if ( (pEnd2Pos->aPortion2.*fnRectX->fnGetWidth)() )
- {
- SwRect aTmp( aEndRect );
- long nRightAbs = (pEnd2Pos->aPortion.*fnRectX->fnGetRight)();
- nRightAbs -= (pEnd2Pos->aPortion2.*fnRectX->fnGetLeft)();
- long nLeftAbs = nRightAbs - (pEnd2Pos->aPortion2.*fnRectX->fnGetWidth)();
+ aEndRect = pEnd2Pos->aLine;
+ ( aEndRect.*fnRectX->fnSetLeft )( bEndR2L ?
+ ( pEnd2Pos->aPortion.*fnRectX->fnGetRight )() :
+ ( pEnd2Pos->aPortion.*fnRectX->fnGetLeft )() );
+ ( aEndRect.*fnRectX->fnSetWidth )( 1 );
+ }
+ }
+ else if ( pSt2Pos && pEnd2Pos
+ && MT_BIDI == pSt2Pos->nMultiType
+ && MT_BIDI == pEnd2Pos->nMultiType
+ && pSt2Pos->aPortion == pEnd2Pos->aPortion
+ && pSt2Pos->aPortion2 != pEnd2Pos->aPortion2 )
+ {
+ // This is the ugly special case, where the selection starts and
+ // ends in the same bidi portion but one start or end is inside a
+ // nested bidi portion.
- (aTmp.*fnRectX->fnSetLeft)( nLeftAbs );
- aTmp.Intersection( aEndFrm );
- Sub( aRegion, aTmp );
+ if ( ( pSt2Pos->aPortion2.*fnRect->fnGetWidth )() )
+ {
+ SwRect aTmp( aStRect );
+ long nRightAbs = ( pSt2Pos->aPortion.*fnRect->fnGetRight )();
+ nRightAbs -= ( pSt2Pos->aPortion2.*fnRect->fnGetLeft )();
+ long nLeftAbs = nRightAbs - ( pSt2Pos->aPortion2.*fnRect->fnGetWidth )();
+
+ ( aTmp.*fnRect->fnSetRight )( nRightAbs );
+ aTmp.Intersection( aStFrm );
+ Sub( aRegion, aTmp );
+
+ aStRect = pSt2Pos->aLine;
+ ( aStRect.*fnRect->fnSetLeft )( bR2L ? nRightAbs : nLeftAbs );
+ ( aStRect.*fnRect->fnSetWidth )( 1 );
+ }
- aEndRect = pEnd2Pos->aLine;
- (aEndRect.*fnRectX->fnSetLeft)( bEndR2L ? nLeftAbs : nRightAbs );
- (aEndRect.*fnRectX->fnSetWidth)( 1 );
- }
+ SWRECTFNX( pEndFrm )
+ if ( ( pEnd2Pos->aPortion2.*fnRectX->fnGetWidth )() )
+ {
+ SwRect aTmp( aEndRect );
+ long nRightAbs = ( pEnd2Pos->aPortion.*fnRectX->fnGetRight )();
+ nRightAbs -= ( pEnd2Pos->aPortion2.*fnRectX->fnGetLeft )();
+ long nLeftAbs = nRightAbs - ( pEnd2Pos->aPortion2.*fnRectX->fnGetWidth )();
+
+ ( aTmp.*fnRectX->fnSetLeft )( nLeftAbs );
+ aTmp.Intersection( aEndFrm );
+ Sub( aRegion, aTmp );
+
+ aEndRect = pEnd2Pos->aLine;
+ ( aEndRect.*fnRectX->fnSetLeft )( bEndR2L ? nLeftAbs : nRightAbs );
+ ( aEndRect.*fnRectX->fnSetWidth )( 1 );
}
+ }
- // The charrect may be outside the paintarea (for cursortravelling)
- // but the selection has to be restricted to the paintarea
- if( aStRect.Left() < aStFrm.Left() )
- aStRect.Left( aStFrm.Left() );
- else if( aStRect.Left() > aStFrm.Right() )
- aStRect.Left( aStFrm.Right() );
- SwTwips nTmp = aStRect.Right();
- if( nTmp < aStFrm.Left() )
- aStRect.Right( aStFrm.Left() );
- else if( nTmp > aStFrm.Right() )
- aStRect.Right( aStFrm.Right() );
- if( aEndRect.Left() < aEndFrm.Left() )
- aEndRect.Left( aEndFrm.Left() );
- else if( aEndRect.Left() > aEndFrm.Right() )
- aEndRect.Left( aEndFrm.Right() );
- nTmp = aEndRect.Right();
- if( nTmp < aEndFrm.Left() )
- aEndRect.Right( aEndFrm.Left() );
- else if( nTmp > aEndFrm.Right() )
- aEndRect.Right( aEndFrm.Right() );
-
- if( pStartFrm == pEndFrm )
+ // The charrect may be outside the paintarea (for cursortravelling)
+ // but the selection has to be restricted to the paintarea
+ if ( aStRect.Left() < aStFrm.Left() )
+ aStRect.Left( aStFrm.Left() );
+ else if ( aStRect.Left() > aStFrm.Right() )
+ aStRect.Left( aStFrm.Right() );
+ SwTwips nTmp = aStRect.Right();
+ if ( nTmp < aStFrm.Left() )
+ aStRect.Right( aStFrm.Left() );
+ else if ( nTmp > aStFrm.Right() )
+ aStRect.Right( aStFrm.Right() );
+ if ( aEndRect.Left() < aEndFrm.Left() )
+ aEndRect.Left( aEndFrm.Left() );
+ else if ( aEndRect.Left() > aEndFrm.Right() )
+ aEndRect.Left( aEndFrm.Right() );
+ nTmp = aEndRect.Right();
+ if ( nTmp < aEndFrm.Left() )
+ aEndRect.Right( aEndFrm.Left() );
+ else if ( nTmp > aEndFrm.Right() )
+ aEndRect.Right( aEndFrm.Right() );
+
+ if ( pStartFrm == pEndFrm )
+ {
+ sal_Bool bSameRotatedOrBidi = pSt2Pos && pEnd2Pos
+ && ( MT_BIDI & pSt2Pos->nMultiType )
+ && pSt2Pos->aPortion == pEnd2Pos->aPortion;
+ //case 1: (Same frame and same row)
+ if ( bSameRotatedOrBidi
+ || ( aStRect.*fnRect->fnGetTop )() == ( aEndRect.*fnRect->fnGetTop )() )
{
- sal_Bool bSameRotatedOrBidi = pSt2Pos && pEnd2Pos &&
- ( MT_BIDI & pSt2Pos->nMultiType ) &&
- pSt2Pos->aPortion == pEnd2Pos->aPortion;
- //case 1: (Same frame and same row)
- if( bSameRotatedOrBidi ||
- (aStRect.*fnRect->fnGetTop)() == (aEndRect.*fnRect->fnGetTop)() )
+ Point aTmpSt( aStRect.Pos() );
+ Point aTmpEnd( aEndRect.Right(), aEndRect.Bottom() );
+ if ( bSameRotatedOrBidi || bR2L )
{
- Point aTmpSt( aStRect.Pos() );
- Point aTmpEnd( aEndRect.Right(), aEndRect.Bottom() );
- if( bSameRotatedOrBidi || bR2L )
+ if ( aTmpSt.Y() > aTmpEnd.Y() )
{
- if( aTmpSt.Y() > aTmpEnd.Y() )
- {
- long nTmpY = aTmpEnd.Y();
- aTmpEnd.Y() = aTmpSt.Y();
- aTmpSt.Y() = nTmpY;
- }
- if( aTmpSt.X() > aTmpEnd.X() )
- {
- long nTmpX = aTmpEnd.X();
- aTmpEnd.X() = aTmpSt.X();
- aTmpSt.X() = nTmpX;
- }
+ long nTmpY = aTmpEnd.Y();
+ aTmpEnd.Y() = aTmpSt.Y();
+ aTmpSt.Y() = nTmpY;
}
-
- SwRect aTmp = SwRect( aTmpSt, aTmpEnd );
- // Bug 34888: falls Inhalt selektiert ist, der keinen Platz
- // einnimmt (z.B. PostIts,RefMarks, TOXMarks),
- // dann mindestens die Breite des Crsr setzen.
- if( 1 == (aTmp.*fnRect->fnGetWidth)() &&
- pStartPos->nContent.GetIndex() !=
- pEndPos->nContent.GetIndex() )
+ if ( aTmpSt.X() > aTmpEnd.X() )
{
- OutputDevice* pOut = pSh->GetOut();
- long nCrsrWidth = pOut->GetSettings().GetStyleSettings().
- GetCursorSize();
- (aTmp.*fnRect->fnSetWidth)( pOut->PixelToLogic(
- Size( nCrsrWidth, 0 ) ).Width() );
+ long nTmpX = aTmpEnd.X();
+ aTmpEnd.X() = aTmpSt.X();
+ aTmpSt.X() = nTmpX;
}
- aTmp.Intersection( aStFrm );
- Sub( aRegion, aTmp );
}
- //case 2: (Same frame, but not the same line)
- else
- {
- SwTwips lLeft, lRight;
- if( pSt2Pos && pEnd2Pos && pSt2Pos->aPortion == pEnd2Pos->aPortion )
- {
- lLeft = (pSt2Pos->aPortion.*fnRect->fnGetLeft)();
- lRight = (pSt2Pos->aPortion.*fnRect->fnGetRight)();
- }
- else
- {
- lLeft = (pStartFrm->Frm().*fnRect->fnGetLeft)() +
- (pStartFrm->Prt().*fnRect->fnGetLeft)();
- lRight = (pStartFrm->Frm().*fnRect->fnGetLeft)() +
- (pStartFrm->Prt().*fnRect->fnGetRight)();
- }
- if( lLeft < (aStFrm.*fnRect->fnGetLeft)() )
- lLeft = (aStFrm.*fnRect->fnGetLeft)();
- if( lRight > (aStFrm.*fnRect->fnGetRight)() )
- lRight = (aStFrm.*fnRect->fnGetRight)();
- SwRect aSubRect( aStRect );
- //First line
- if( bR2L )
- (aSubRect.*fnRect->fnSetLeft)( lLeft );
- else
- (aSubRect.*fnRect->fnSetRight)( lRight );
- Sub( aRegion, aSubRect );
- //If there's at least a twips between start- and endline,
- //so the whole area between will be added.
- SwTwips aTmpBottom = (aStRect.*fnRect->fnGetBottom)();
- SwTwips aTmpTop = (aEndRect.*fnRect->fnGetTop)();
- if( aTmpBottom != aTmpTop )
- {
- (aSubRect.*fnRect->fnSetLeft)( lLeft );
- (aSubRect.*fnRect->fnSetRight)( lRight );
- (aSubRect.*fnRect->fnSetTop)( aTmpBottom );
- (aSubRect.*fnRect->fnSetBottom)( aTmpTop );
- Sub( aRegion, aSubRect );
- }
- //and the last line
- aSubRect = aEndRect;
- if( bR2L )
- (aSubRect.*fnRect->fnSetRight)( lRight );
- else
- (aSubRect.*fnRect->fnSetLeft)( lLeft );
- Sub( aRegion, aSubRect );
+ SwRect aTmp = SwRect( aTmpSt, aTmpEnd );
+ // Bug 34888: falls Inhalt selektiert ist, der keinen Platz
+ // einnimmt (z.B. PostIts,RefMarks, TOXMarks),
+ // dann mindestens die Breite des Crsr setzen.
+ if ( 1 == ( aTmp.*fnRect->fnGetWidth )() &&
+ pStartPos->nContent.GetIndex() !=
+ pEndPos->nContent.GetIndex() )
+ {
+ OutputDevice* pOut = pSh->GetOut();
+ long nCrsrWidth = pOut->GetSettings().GetStyleSettings().
+ GetCursorSize();
+ ( aTmp.*fnRect->fnSetWidth )( pOut->PixelToLogic(
+ Size( nCrsrWidth, 0 ) ).Width() );
}
+ aTmp.Intersection( aStFrm );
+ Sub( aRegion, aTmp );
}
- //case 3: (Different frames, maybe with ohther frames between
+ //case 2: (Same frame, but not the same line)
else
{
- //The startframe first...
+ SwTwips lLeft, lRight;
+ if ( pSt2Pos && pEnd2Pos && pSt2Pos->aPortion == pEnd2Pos->aPortion )
+ {
+ lLeft = ( pSt2Pos->aPortion.*fnRect->fnGetLeft )();
+ lRight = ( pSt2Pos->aPortion.*fnRect->fnGetRight )();
+ }
+ else
+ {
+ lLeft = ( pStartFrm->Frm().*fnRect->fnGetLeft )() +
+ ( pStartFrm->Prt().*fnRect->fnGetLeft )();
+ lRight = ( pStartFrm->Frm().*fnRect->fnGetLeft )() +
+ ( pStartFrm->Prt().*fnRect->fnGetRight )();
+ }
+ if ( lLeft < ( aStFrm.*fnRect->fnGetLeft )() )
+ lLeft = ( aStFrm.*fnRect->fnGetLeft )();
+ if ( lRight > ( aStFrm.*fnRect->fnGetRight )() )
+ lRight = ( aStFrm.*fnRect->fnGetRight )();
SwRect aSubRect( aStRect );
- if( bR2L )
- (aSubRect.*fnRect->fnSetLeft)( (aStFrm.*fnRect->fnGetLeft)());
+ //First line
+ if ( bR2L )
+ ( aSubRect.*fnRect->fnSetLeft )( lLeft );
else
- (aSubRect.*fnRect->fnSetRight)( (aStFrm.*fnRect->fnGetRight)());
+ ( aSubRect.*fnRect->fnSetRight )( lRight );
Sub( aRegion, aSubRect );
- SwTwips nTmpTwips = (aStRect.*fnRect->fnGetBottom)();
- if( (aStFrm.*fnRect->fnGetBottom)() != nTmpTwips )
+
+ //If there's at least a twips between start- and endline,
+ //so the whole area between will be added.
+ SwTwips aTmpBottom = ( aStRect.*fnRect->fnGetBottom )();
+ SwTwips aTmpTop = ( aEndRect.*fnRect->fnGetTop )();
+ if ( aTmpBottom != aTmpTop )
{
- aSubRect = aStFrm;
- (aSubRect.*fnRect->fnSetTop)( nTmpTwips );
+ ( aSubRect.*fnRect->fnSetLeft )( lLeft );
+ ( aSubRect.*fnRect->fnSetRight )( lRight );
+ ( aSubRect.*fnRect->fnSetTop )( aTmpBottom );
+ ( aSubRect.*fnRect->fnSetBottom )( aTmpTop );
Sub( aRegion, aSubRect );
}
+ //and the last line
+ aSubRect = aEndRect;
+ if ( bR2L )
+ ( aSubRect.*fnRect->fnSetRight )( lRight );
+ else
+ ( aSubRect.*fnRect->fnSetLeft )( lLeft );
+ Sub( aRegion, aSubRect );
+ }
+ }
+ //case 3: (Different frames, maybe with ohther frames between
+ else
+ {
+ //The startframe first...
+ SwRect aSubRect( aStRect );
+ if ( bR2L )
+ ( aSubRect.*fnRect->fnSetLeft )( ( aStFrm.*fnRect->fnGetLeft )() );
+ else
+ ( aSubRect.*fnRect->fnSetRight )( ( aStFrm.*fnRect->fnGetRight )() );
+ Sub( aRegion, aSubRect );
+ SwTwips nTmpTwips = ( aStRect.*fnRect->fnGetBottom )();
+ if ( ( aStFrm.*fnRect->fnGetBottom )() != nTmpTwips )
+ {
+ aSubRect = aStFrm;
+ ( aSubRect.*fnRect->fnSetTop )( nTmpTwips );
+ Sub( aRegion, aSubRect );
+ }
- //Now the frames between, if there are any
- sal_Bool bBody = pStartFrm->IsInDocBody();
- const SwTableBox* pCellBox = pStartFrm->GetUpper()->IsCellFrm() ?
- ((SwCellFrm*)pStartFrm->GetUpper())->GetTabBox() : 0;
- const SwCntntFrm *pCntnt = pStartFrm->GetNextCntntFrm();
- SwRect aPrvRect;
-
- ASSERT( pCntnt,
- "<SwRootFrm::CalcFrmRects(..)> - no content frame. This is a serious defect -> please inform OD" );
- while ( pCntnt && pCntnt != pEndFrm )
+ //Now the frames between, if there are any
+ sal_Bool bBody = pStartFrm->IsInDocBody();
+ const SwTableBox* pCellBox = pStartFrm->GetUpper()->IsCellFrm() ?
+ ( (SwCellFrm*) pStartFrm->GetUpper() )->GetTabBox() :
+ 0;
+ const SwCntntFrm *pCntnt = pStartFrm->GetNextCntntFrm();
+ SwRect aPrvRect;
+
+ ASSERT( pCntnt,
+ "<SwRootFrm::CalcFrmRects(..)> - no content frame. This is a serious defect -> please inform OD" );
+ while (pCntnt && pCntnt != pEndFrm)
+ {
+ if ( pCntnt->IsInFly() )
{
- if ( pCntnt->IsInFly() )
- {
- const SwAnchoredObject* pObj = pCntnt->FindFlyFrm();
- aSortObjs.Insert( *(const_cast<SwAnchoredObject*>(pObj)) );
- }
+ const SwAnchoredObject* pObj = pCntnt->FindFlyFrm();
+ aSortObjs.Insert( *( const_cast< SwAnchoredObject* >( pObj ) ) );
+ }
- // Consider only frames which have the same IsInDocBody value like pStartFrm
- // If pStartFrm is inside a SwCellFrm, consider only frames which are inside the
- // same cell frame (or its follow cell)
- const SwTableBox* pTmpCellBox = pCntnt->GetUpper()->IsCellFrm() ?
- ((SwCellFrm*)pCntnt->GetUpper())->GetTabBox() : 0;
- if ( bBody == pCntnt->IsInDocBody() &&
- ( !pCellBox || pCellBox == pTmpCellBox ) )
+ // Consider only frames which have the same IsInDocBody value like pStartFrm
+ // If pStartFrm is inside a SwCellFrm, consider only frames which are inside the
+ // same cell frame (or its follow cell)
+ const SwTableBox* pTmpCellBox = pCntnt->GetUpper()->IsCellFrm() ?
+ ( (SwCellFrm*) pCntnt->GetUpper() )->GetTabBox() :
+ 0;
+ if ( bBody == pCntnt->IsInDocBody() &&
+ ( !pCellBox || pCellBox == pTmpCellBox ) )
+ {
+ SwRect aCRect( pCntnt->UnionFrm( sal_True ) );
+ aCRect.Intersection( pCntnt->PaintArea() );
+ if ( aCRect.IsOver( aRegion.GetOrigin() ) )
{
- SwRect aCRect( pCntnt->UnionFrm( sal_True ) );
- aCRect.Intersection( pCntnt->PaintArea() );
- if( aCRect.IsOver( aRegion.GetOrigin() ))
+ SwRect aTmp( aPrvRect );
+ aTmp.Union( aCRect );
+ if ( ( aPrvRect.Height() * aPrvRect.Width() +
+ aCRect.Height() * aCRect.Width() )
+ ==
+ ( aTmp.Height() * aTmp.Width() ) )
{
- SwRect aTmp( aPrvRect );
- aTmp.Union( aCRect );
- if ( (aPrvRect.Height() * aPrvRect.Width() +
- aCRect.Height() * aCRect.Width()) ==
- (aTmp.Height() * aTmp.Width()) )
- {
- aPrvRect.Union( aCRect );
- }
- else
- {
- if ( aPrvRect.HasArea() )
- Sub( aRegion, aPrvRect );
- aPrvRect = aCRect;
- }
+ aPrvRect.Union( aCRect );
+ }
+ else
+ {
+ if ( aPrvRect.HasArea() )
+ Sub( aRegion, aPrvRect );
+ aPrvRect = aCRect;
}
}
- pCntnt = pCntnt->GetNextCntntFrm();
- ASSERT( pCntnt,
- "<SwRootFrm::CalcFrmRects(..)> - no content frame. This is a serious defect -> please inform OD" );
}
- if ( aPrvRect.HasArea() )
- Sub( aRegion, aPrvRect );
-
- //At least the endframe...
- bVert = pEndFrm->IsVertical();
- bRev = pEndFrm->IsReverse();
- //Badaa: 2008-04-18 * Support for Classical Mongolian Script (SCMS) joint with Jiayanmin
- fnRect = bVert ? ( bRev ? fnRectVL2R : ( pEndFrm->IsVertLR() ? fnRectVertL2R : fnRectVert ) ) :
- ( bRev ? fnRectB2T : fnRectHori );
- nTmpTwips = (aEndRect.*fnRect->fnGetTop)();
- if( (aEndFrm.*fnRect->fnGetTop)() != nTmpTwips )
- {
- aSubRect = aEndFrm;
- (aSubRect.*fnRect->fnSetBottom)( nTmpTwips );
- Sub( aRegion, aSubRect );
- }
- aSubRect = aEndRect;
- if( bEndR2L )
- (aSubRect.*fnRect->fnSetRight)((aEndFrm.*fnRect->fnGetRight)());
- else
- (aSubRect.*fnRect->fnSetLeft)( (aEndFrm.*fnRect->fnGetLeft)() );
+ pCntnt = pCntnt->GetNextCntntFrm();
+ ASSERT( pCntnt,
+ "<SwRootFrm::CalcFrmRects(..)> - no content frame. This is a serious defect -> please inform OD" );
+ }
+ if ( aPrvRect.HasArea() )
+ Sub( aRegion, aPrvRect );
+
+ //At least the endframe...
+ bVert = pEndFrm->IsVertical();
+ bRev = pEndFrm->IsReverse();
+ //Badaa: 2008-04-18 * Support for Classical Mongolian Script (SCMS) joint with Jiayanmin
+ fnRect = bVert ? ( bRev ? fnRectVL2R : ( pEndFrm->IsVertLR() ? fnRectVertL2R : fnRectVert ) ) :
+ ( bRev ? fnRectB2T : fnRectHori );
+ nTmpTwips = ( aEndRect.*fnRect->fnGetTop )();
+ if ( ( aEndFrm.*fnRect->fnGetTop )() != nTmpTwips )
+ {
+ aSubRect = aEndFrm;
+ ( aSubRect.*fnRect->fnSetBottom )( nTmpTwips );
Sub( aRegion, aSubRect );
}
-
- aRegion.Invert();
- delete pSt2Pos;
- delete pEnd2Pos;
+ aSubRect = aEndRect;
+ if ( bEndR2L )
+ ( aSubRect.*fnRect->fnSetRight )( ( aEndFrm.*fnRect->fnGetRight )() );
+ else
+ ( aSubRect.*fnRect->fnSetLeft )( ( aEndFrm.*fnRect->fnGetLeft )() );
+ Sub( aRegion, aSubRect );
}
+ aRegion.Invert();
+ delete pSt2Pos;
+ delete pEnd2Pos;
+
//Flys mit Durchlauf ausstanzen. Nicht ausgestanzt werden Flys:
//- die Lower des StartFrm/EndFrm sind (FlyInCnt und alle Flys die wiederum
// darin sitzen)
diff --git a/sw/source/core/layout/wsfrm.cxx b/sw/source/core/layout/wsfrm.cxx
index ea5576427099..ae8a2056f37e 100644
--- a/sw/source/core/layout/wsfrm.cxx
+++ b/sw/source/core/layout/wsfrm.cxx
@@ -70,8 +70,8 @@
#include <cellfrm.hxx>
#include <dbg_lay.hxx>
#include <editeng/frmdiritem.hxx>
-// OD 2004-05-24 #i28701#
#include <sortedobjs.hxx>
+#include <svx/xdef.hxx>
using namespace ::com::sun::star;
@@ -2885,7 +2885,7 @@ void SwLayoutFrm::ChgLowersProp( const Size& rOldSize )
}
else
{
- // variable size of body|section frame has shrinked. Thus,
+ // variable size of body|section frame has shrunk. Thus,
// invalidate all lowers not matching the new body|section size
// and the dedicated new last lower.
if( bVert )
diff --git a/sw/source/core/ole/ndole.cxx b/sw/source/core/ole/ndole.cxx
index 8466034d65ed..2e917fbf55a2 100644
--- a/sw/source/core/ole/ndole.cxx
+++ b/sw/source/core/ole/ndole.cxx
@@ -907,7 +907,7 @@ sal_Bool SwOLEObj::UnloadObject( uno::Reference< embed::XEmbeddedObject > xObj,
if ( xPers.is() )
xPers->storeOwn();
else {
- DBG_ERROR("Modified object without persistance in cache!");
+ DBG_ERROR("Modified object without persistence in cache!");
}
}
diff --git a/sw/source/core/table/swnewtable.cxx b/sw/source/core/table/swnewtable.cxx
index fcf37213bb53..57e2dc371bf4 100644
--- a/sw/source/core/table/swnewtable.cxx
+++ b/sw/source/core/table/swnewtable.cxx
@@ -837,7 +837,7 @@ bool SwTable::PrepareMerge( const SwPaM& rPam, SwSelBoxes& rBoxes,
// box, the left and right border does not need to be changed.
// The right and bottom border instead has to be derived from the right-
// bottom box of the selection. If this is a overlapped cell,
- // the appropiate master box.
+ // the appropriate master box.
SwTableBox* pLastBox = 0; // the right-bottom (master) cell
SwDoc* pDoc = GetFrmFmt()->GetDoc();
SwPosition aInsPos( *pMergeBox->GetSttNd()->EndOfSectionNode() );
diff --git a/sw/source/core/text/atrstck.cxx b/sw/source/core/text/atrstck.cxx
index c3973a95a953..26d5edec6177 100644
--- a/sw/source/core/text/atrstck.cxx
+++ b/sw/source/core/text/atrstck.cxx
@@ -214,7 +214,7 @@ sal_Bool IsItemIncluded( const sal_uInt16 nWhich, const SwTxtAttr *pAttr )
* depending on its 'visited' state. There are actually two cases, which
* should override the colors from the character attribute:
* 1. We never take the 'visited' color during printing/pdf export/preview
- * 2. The user has choosen to override these colors in the view options
+ * 2. The user has chosen to override these colors in the view options
*************************************************************************/
bool lcl_ChgHyperLinkColor( const SwTxtAttr& rAttr,
diff --git a/sw/source/core/text/guess.cxx b/sw/source/core/text/guess.cxx
index 714374bb0313..185e5299b283 100644
--- a/sw/source/core/text/guess.cxx
+++ b/sw/source/core/text/guess.cxx
@@ -378,7 +378,7 @@ sal_Bool SwTxtGuess::Guess( const SwTxtPortion& rPor, SwTxtFormatInfo &rInf,
// if we are formatting multi portions we want to allow line breaks
// at the border between single line and multi line portion
- // we have to be carefull with footnote portions, they always come in
+ // we have to be careful with footnote portions, they always come in
// with an index 0
if ( nBreakPos < rInf.GetLineStart() && rInf.IsFirstMulti() &&
! rInf.IsFtnInside() )
diff --git a/sw/source/core/text/inftxt.cxx b/sw/source/core/text/inftxt.cxx
index 7b28257d0639..d964c6a7d71d 100644
--- a/sw/source/core/text/inftxt.cxx
+++ b/sw/source/core/text/inftxt.cxx
@@ -464,7 +464,7 @@ SwPosSize SwTxtSizeInfo::GetTxtSize() const
const SwScriptInfo& rSI =
( (SwParaPortion*)GetParaPortion() )->GetScriptInfo();
- // in some cases, compression is not allowed or surpressed for
+ // in some cases, compression is not allowed or suppressed for
// performance reasons
sal_uInt16 nComp =( SW_CJK == GetFont()->GetActual() &&
rSI.CountCompChg() &&
@@ -610,7 +610,7 @@ sal_Bool lcl_IsDarkBackground( const SwTxtPaintInfo& rInf )
SwRect aOrigBackRect;
//UUUU
- FillAttributesPtr aFillAttributes;
+ drawinglayer::attribute::SdrAllFillAttributesHelperPtr aFillAttributes;
/// OD 21.08.2002
/// consider, that [GetBackgroundBrush(...)] can set <pCol>
@@ -690,7 +690,7 @@ void SwTxtPaintInfo::_DrawText( const XubString &rText, const SwLinePortion &rPo
if ( ! rPor.InFldGrp() )
pSI = &GetParaPortion()->GetScriptInfo();
- // in some cases, kana compression is not allowed or surpressed for
+ // in some cases, kana compression is not allowed or suppressed for
// performance reasons
sal_uInt16 nComp = 0;
if ( ! IsMulti() )
@@ -1177,7 +1177,7 @@ void SwTxtPaintInfo::DrawCheckBox( const SwFieldFormPortion &rPor, bool checked)
*************************************************************************/
void SwTxtPaintInfo::DrawBackground( const SwLinePortion &rPor ) const
{
- ASSERT( OnWin(), "SwTxtPaintInfo::DrawBackground: printer polution ?" );
+ ASSERT( OnWin(), "SwTxtPaintInfo::DrawBackground: printer pollution ?" );
SwRect aIntersect;
CalcRect( rPor, 0, &aIntersect );
diff --git a/sw/source/core/text/itratr.cxx b/sw/source/core/text/itratr.cxx
index 7c2dee8c4e70..b8fd8bccf021 100644
--- a/sw/source/core/text/itratr.cxx
+++ b/sw/source/core/text/itratr.cxx
@@ -817,7 +817,7 @@ void SwTxtNode::GetMinMaxSize( sal_uLong nIndex, sal_uLong& rMin, sal_uLong &rMa
* SwTxtNode::GetScalingOfSelectedText()
*
* Calculates the width of the text part specified by nStt and nEnd,
- * the height of the line containing nStt is devided by this width,
+ * the height of the line containing nStt is divided by this width,
* indicating the scaling factor, if the text part is rotated.
* Having CH_BREAKs in the text part, this method returns the scaling
* factor for the longest of the text parts separated by the CH_BREAKs.
diff --git a/sw/source/core/text/itrform2.cxx b/sw/source/core/text/itrform2.cxx
index eb1871f5fd8c..8d13282e5d72 100644
--- a/sw/source/core/text/itrform2.cxx
+++ b/sw/source/core/text/itrform2.cxx
@@ -215,7 +215,7 @@ SwLinePortion *SwTxtFormatter::UnderFlow( SwTxtFormatInfo &rInf )
pTmpPrev->Move( rInf );
rInf.SetLast( pTmpPrev );
pTmpPrev = pTmpPrev->GetPortion();
- ASSERT( pTmpPrev, "UnderFlow: Loosing control!" );
+ ASSERT( pTmpPrev, "UnderFlow: Losing control!" );
};
}
pPor = pPor->GetPortion();
diff --git a/sw/source/core/text/itrform2.hxx b/sw/source/core/text/itrform2.hxx
index 1ea43236d5cb..7cc6e38d51f3 100644
--- a/sw/source/core/text/itrform2.hxx
+++ b/sw/source/core/text/itrform2.hxx
@@ -81,7 +81,7 @@ class SwTxtFormatter : public SwTxtPainter
// wird von SwTxtFormatter wegen UpdatePos ueberladen
void CalcAdjustLine( SwLineLayout *pCurr );
- // consideres line spacing attributes
+ // considers line spacing attributes
void CalcRealHeight( sal_Bool bNewLine = sal_False );
// uebertraegt die Daten nach rInf
diff --git a/sw/source/core/text/porfld.cxx b/sw/source/core/text/porfld.cxx
index c7f82cf751f2..5616551a1eab 100644
--- a/sw/source/core/text/porfld.cxx
+++ b/sw/source/core/text/porfld.cxx
@@ -437,7 +437,7 @@ void SwFldPortion::Paint( const SwTxtPaintInfo &rInf ) const
{
SwFontSave aSave( rInf, pFnt );
- ASSERT( GetLen() <= 1, "SwFldPortion::Paint: rest-portion polution?" );
+ ASSERT( GetLen() <= 1, "SwFldPortion::Paint: rest-portion pollution?" );
if( Width() && ( !bPlaceHolder || rInf.GetOpt().IsShowPlaceHolderFields() ) )
{
// Dies ist eine freizuegige Auslegung der Hintergrundbelegung ...
@@ -1144,7 +1144,7 @@ SwCombinedPortion::SwCombinedPortion( const XubString &rTxt )
void SwCombinedPortion::Paint( const SwTxtPaintInfo &rInf ) const
{
- ASSERT( GetLen() <= 1, "SwFldPortion::Paint: rest-portion polution?" );
+ ASSERT( GetLen() <= 1, "SwFldPortion::Paint: rest-portion pollution?" );
if( Width() )
{
rInf.DrawBackBrush( *this );
diff --git a/sw/source/core/text/pormulti.cxx b/sw/source/core/text/pormulti.cxx
index 24eadeb4254a..9dbd2f2f07ba 100644
--- a/sw/source/core/text/pormulti.cxx
+++ b/sw/source/core/text/pormulti.cxx
@@ -1063,7 +1063,7 @@ SwMultiCreator* SwTxtSizeInfo::GetMultiCreator( xub_StrLen &rPos,
{
// If bOn is sal_False and the next attribute starts later than rPos
// the winner attribute is interrupted at rPos.
- // If the start of the next atribute is behind the end of
+ // If the start of the next attribute is behind the end of
// the last attribute on the aEnd-stack, this is the endposition
// on the stack is the end of the 2-line portion.
if( !bOn || aEnd.back() < *pTmp->GetStart() )
diff --git a/sw/source/core/text/txtdrop.cxx b/sw/source/core/text/txtdrop.cxx
index 02aa72613997..e1f0ca0280ab 100644
--- a/sw/source/core/text/txtdrop.cxx
+++ b/sw/source/core/text/txtdrop.cxx
@@ -814,7 +814,7 @@ void SwDropCapCache::CalcFontSize( SwDropPortion* pDrop, SwTxtFormatInfo &rInf )
sal_Bool bGrow = ( pDrop->GetLen() != 0 );
- // for growing controll
+ // for growing control
long nMax = KSHRT_MAX;
long nMin = nFactor / 2;
#if OSL_DEBUG_LEVEL > 1
diff --git a/sw/source/core/text/txtfly.cxx b/sw/source/core/text/txtfly.cxx
index c47a6319f797..7a6f6b193c30 100644
--- a/sw/source/core/text/txtfly.cxx
+++ b/sw/source/core/text/txtfly.cxx
@@ -1679,7 +1679,7 @@ SwContourCache::~SwContourCache()
void SwContourCache::ClrObject( MSHORT nPos )
{
- ASSERT( pTextRanger[ nPos ], "ClrObject: Allready cleared. Good Bye!" );
+ ASSERT( pTextRanger[ nPos ], "ClrObject: Already cleared. Good Bye!" );
nPntCnt -= pTextRanger[ nPos ]->GetPointCount();
delete pTextRanger[ nPos ];
--nObjCnt;
diff --git a/sw/source/core/text/txtfrm.cxx b/sw/source/core/text/txtfrm.cxx
index dc38db89b4fc..0fbe3b9e0b4b 100644
--- a/sw/source/core/text/txtfrm.cxx
+++ b/sw/source/core/text/txtfrm.cxx
@@ -1037,8 +1037,8 @@ void SwTxtFrm::Modify( const SfxPoolItem* pOld, const SfxPoolItem *pNew )
break;
case RES_UPDATE_ATTR:
{
- nPos = ((SwUpdateAttr*)pNew)->nStart;
- nLen = ((SwUpdateAttr*)pNew)->nEnd - nPos;
+ nPos = ((SwUpdateAttr*)pNew)->getStart();
+ nLen = ((SwUpdateAttr*)pNew)->getEnd() - nPos;
if( IsIdxInside( nPos, nLen ) )
{
// Es muss in jedem Fall neu formatiert werden,
@@ -1051,7 +1051,7 @@ void SwTxtFrm::Modify( const SfxPoolItem* pOld, const SfxPoolItem *pNew )
nLen = 1;
_InvalidateRange( SwCharRange( nPos, nLen) );
- MSHORT nTmp = ((SwUpdateAttr*)pNew)->nWhichAttr;
+ MSHORT nTmp = ((SwUpdateAttr*)pNew)->getWhichAttr();
if( ! nTmp || RES_TXTATR_CHARFMT == nTmp || RES_TXTATR_AUTOFMT == nTmp ||
RES_FMT_CHG == nTmp || RES_ATTRSET_CHG == nTmp )
diff --git a/sw/source/core/tox/tox.cxx b/sw/source/core/tox/tox.cxx
index 8945688013b5..f5db22ee04c2 100644
--- a/sw/source/core/tox/tox.cxx
+++ b/sw/source/core/tox/tox.cxx
@@ -426,78 +426,54 @@ bool operator == (const SwFormToken & rToken, FormTokenType eType)
}
//-----------------------------------------------------------------------------
-void SwForm::AdjustTabStops(SwDoc& rDoc, sal_Bool bInsertNewTapStops) // #i21237#
+void SwForm::AdjustTabStops( SwDoc& rDoc ) // #i21237#
{
- for(sal_uInt16 nLevel = 1; nLevel < GetFormMax(); nLevel++)
+ const sal_uInt16 nFormMaxLevel = GetFormMax();
+ for ( sal_uInt16 nLevel = 1; nLevel < nFormMaxLevel; ++nLevel )
{
- const String& sTemplateName = GetTemplate(nLevel);
-
- SwTxtFmtColl* pColl = rDoc.FindTxtFmtCollByName( sTemplateName );
- if( !pColl )
+ SwTxtFmtColl* pColl = rDoc.FindTxtFmtCollByName( GetTemplate(nLevel) );
+ if( pColl == NULL )
{
- sal_uInt16 nId = SwStyleNameMapper::GetPoolIdFromUIName
- ( sTemplateName, nsSwGetPoolIdFromName::GET_POOLID_TXTCOLL ); // #i21237#
- if( USHRT_MAX != nId )
- pColl = rDoc.GetTxtCollFromPool( nId );
+ // Paragraph Style for this level has not been created.
+ // --> No need to propagate default values
+ continue;
}
- const SvxTabStopItem* pTabStops = 0;
- sal_uInt16 nTabCount = 0;
- if( pColl &&
- 0 != ( pTabStops = &pColl->GetTabStops(sal_False) ) &&
- 0 != ( nTabCount = pTabStops->Count() ) )
+ const SvxTabStopItem* pTabStops = pColl != NULL ? &pColl->GetTabStops(sal_False) : 0;
+ const sal_uInt16 nTabCount = pTabStops != NULL ? pTabStops->Count() : 0;
+ if( pTabStops != NULL
+ && nTabCount != 0 )
{
- // #i21237#
SwFormTokens aCurrentPattern = GetPattern(nLevel);
SwFormTokens::iterator aIt = aCurrentPattern.begin();
- sal_Bool bChanged = sal_False;
-
+ bool bChanged = false;
for(sal_uInt16 nTab = 0; nTab < nTabCount; ++nTab)
{
const SvxTabStop& rTab = (*pTabStops)[nTab];
- // --> FME 2004-12-16 #i29178#
- // For Word import, we do not want to replace exising tokens,
- // we insert new tabstop tokens without a tabstop character:
- if ( bInsertNewTapStops )
+ if ( rTab.GetAdjustment() == SVX_TAB_ADJUST_DEFAULT )
+ continue; // ignore the default tab stop
+
+ aIt = find_if( aIt, aCurrentPattern.end(), SwFormTokenEqualToFormTokenType(TOKEN_TAB_STOP) );
+ if ( aIt != aCurrentPattern.end() )
{
- if ( SVX_TAB_ADJUST_DEFAULT != rTab.GetAdjustment() )
- {
- bChanged = sal_True;
- SwFormToken aToken(TOKEN_TAB_STOP);
- aToken.bWithTab = sal_False;
- aToken.nTabStopPosition = rTab.GetTabPos();
- aToken.eTabAlign = rTab.GetAdjustment();
- aToken.cTabFillChar = rTab.GetFill();
- aCurrentPattern.push_back(aToken);
- }
+ bChanged = true;
+ aIt->nTabStopPosition = rTab.GetTabPos();
+ aIt->eTabAlign =
+ ( nTab == nTabCount - 1
+ && rTab.GetAdjustment() == SVX_TAB_ADJUST_RIGHT )
+ ? SVX_TAB_ADJUST_END
+ : rTab.GetAdjustment();
+ aIt->cTabFillChar = rTab.GetFill();
+ ++aIt;
}
- // <--
else
- {
- aIt = find_if(aIt, aCurrentPattern.end(),
- SwFormTokenEqualToFormTokenType
- (TOKEN_TAB_STOP));
- if ( aIt != aCurrentPattern.end() )
- {
- bChanged = sal_True;
- aIt->nTabStopPosition = rTab.GetTabPos();
- aIt->eTabAlign = nTab == nTabCount - 1 &&
- SVX_TAB_ADJUST_RIGHT == rTab.GetAdjustment() ?
- SVX_TAB_ADJUST_END :
- rTab.GetAdjustment();
- aIt->cTabFillChar = rTab.GetFill();
- ++aIt;
- }
- else
- break; // no more tokens to replace
- }
+ break; // no more tokens to replace
}
- // <--
- if(bChanged)
- SetPattern(nLevel, aCurrentPattern); // #i21237#
+ if ( bChanged )
+ SetPattern( nLevel, aCurrentPattern );
}
}
}
diff --git a/sw/source/core/txtnode/atrfld.cxx b/sw/source/core/txtnode/atrfld.cxx
index 2c35683be3b8..75d2a3e837f0 100644
--- a/sw/source/core/txtnode/atrfld.cxx
+++ b/sw/source/core/txtnode/atrfld.cxx
@@ -215,71 +215,76 @@ void SwFmtFld::SwClientNotify( const SwModify&, const SfxHint& rHint )
void SwFmtFld::Modify( const SfxPoolItem* pOld, const SfxPoolItem* pNew )
{
- if( !mpTxtFld )
+ if ( mpTxtFld == NULL )
return;
- // don't do anything, especially not expand!
- if( pNew && pNew->Which() == RES_OBJECTDYING )
+ if( pNew != NULL
+ && pNew->Which() == RES_OBJECTDYING )
+ {
+ // don't do anything, especially not expand!
return;
+ }
- SwTxtNode* pTxtNd = (SwTxtNode*)&mpTxtFld->GetTxtNode();
+ SwTxtNode* pTxtNd = (SwTxtNode*) &mpTxtFld->GetTxtNode();
ASSERT( pTxtNd, "wo ist denn mein Node?" );
- if( pNew )
+ if ( pNew )
{
- switch( pNew->Which() )
+ switch (pNew->Which())
{
case RES_TXTATR_FLDCHG:
- // "Farbe hat sich geaendert !"
- // this, this fuer "nur Painten"
- pTxtNd->ModifyNotification( this, this );
- return;
+ // "Farbe hat sich geaendert !"
+ // this, this fuer "nur Painten"
+ pTxtNd->ModifyNotification( this, this );
+ return;
+
case RES_REFMARKFLD_UPDATE:
- // GetReferenz-Felder aktualisieren
- if( RES_GETREFFLD == GetField()->GetTyp()->Which() )
- {
- // --> OD 2007-09-06 #i81002#
-// ((SwGetRefField*)GetFld())->UpdateField();
- dynamic_cast<SwGetRefField*>(GetField())->UpdateField( mpTxtFld );
- // <--
- }
- break;
+ // GetReferenz-Felder aktualisieren
+ if ( RES_GETREFFLD == GetField()->GetTyp()->Which() )
+ {
+ dynamic_cast<SwGetRefField*>(GetField())->UpdateField( mpTxtFld );
+ }
+ break;
+
case RES_DOCPOS_UPDATE:
- // Je nach DocPos aktualisieren (SwTxtFrm::Modify())
- pTxtNd->ModifyNotification( pNew, this );
- return;
+ // Je nach DocPos aktualisieren (SwTxtFrm::Modify())
+ pTxtNd->ModifyNotification( pNew, this );
+ return;
case RES_ATTRSET_CHG:
- case RES_FMT_CHG:
- pTxtNd->ModifyNotification( pOld, pNew );
- return;
- default:
- break;
+ case RES_FMT_CHG:
+ pTxtNd->ModifyNotification( pOld, pNew );
+ return;
+
+ default:
+ break;
}
}
switch (GetField()->GetTyp()->Which())
{
- case RES_HIDDENPARAFLD:
- if( !pOld || RES_HIDDENPARA_PRINT != pOld->Which() )
- break;
- case RES_DBSETNUMBERFLD:
- case RES_DBNUMSETFLD:
- case RES_DBNEXTSETFLD:
- case RES_DBNAMEFLD:
- pTxtNd->ModifyNotification( 0, pNew);
- return;
+ case RES_HIDDENPARAFLD:
+ if ( !pOld || RES_HIDDENPARA_PRINT != pOld->Which() )
+ break;
+ case RES_DBSETNUMBERFLD:
+ case RES_DBNUMSETFLD:
+ case RES_DBNEXTSETFLD:
+ case RES_DBNAMEFLD:
+ pTxtNd->ModifyNotification( 0, pNew );
+ return;
}
- if( RES_USERFLD == GetField()->GetTyp()->Which() )
+ if ( RES_USERFLD == GetField()->GetTyp()->Which() )
{
- SwUserFieldType* pType = (SwUserFieldType*)GetField()->GetTyp();
- if(!pType->IsValid())
+ SwUserFieldType* pType = (SwUserFieldType*) GetField()->GetTyp();
+ if ( !pType->IsValid() )
{
SwCalc aCalc( *pTxtNd->GetDoc() );
pType->GetValue( aCalc );
}
}
- mpTxtFld->ExpandTxtFld();
+
+ const bool bForceNotify = (pOld == NULL) && (pNew == NULL);
+ mpTxtFld->ExpandTxtFld( bForceNotify );
}
sal_Bool SwFmtFld::GetInfo( SfxPoolItem& rInfo ) const
@@ -313,9 +318,10 @@ sal_Bool SwFmtFld::IsProtect() const
SwTxtFld::SwTxtFld(
SwFmtFld & rAttr,
- xub_StrLen const nStartPos )
+ xub_StrLen const nStartPos,
+ const bool bIsClipboardDoc )
: SwTxtAttr( rAttr, nStartPos )
- , m_aExpand( rAttr.GetField()->ExpandField(true) )
+ , m_aExpand( rAttr.GetField()->ExpandField( bIsClipboardDoc ) )
, m_pTxtNode( NULL )
{
rAttr.SetTxtFld( *this );
@@ -338,14 +344,15 @@ bool SwTxtFld::IsFldInDoc() const
&& GetpTxtNode()->GetNodes().IsDocNodes();
}
-void SwTxtFld::ExpandTxtFld() const
+void SwTxtFld::ExpandTxtFld( const bool bForceNotify ) const
{
ASSERT( m_pTxtNode, "SwTxtFld: where is my TxtNode?" );
const SwField* pFld = GetFmtFld().GetField();
const XubString aNewExpand( pFld->ExpandField(m_pTxtNode->GetDoc()->IsClipBoard()) );
- if( aNewExpand == m_aExpand )
+ if ( !bForceNotify &&
+ aNewExpand == m_aExpand )
{
// Bei Seitennummernfeldern
const sal_uInt16 nWhich = pFld->GetTyp()->Which();
@@ -446,13 +453,51 @@ void SwTxtFld::NotifyContentChange(SwFmtFld& rFmtFld)
}
+/*static*/
+void SwTxtFld::GetPamForTxtFld(
+ const SwTxtFld& rTxtFld,
+ boost::shared_ptr< SwPaM >& rPamForTxtFld )
+{
+ if ( rTxtFld.GetpTxtNode() == NULL )
+ {
+ ASSERT( false, "<SwTxtFld::GetPamForField> - missing <SwTxtNode>" );
+ return;
+ }
+
+ const SwTxtNode& rTxtNode = rTxtFld.GetTxtNode();
+
+ rPamForTxtFld.reset( new SwPaM( rTxtNode,
+ ( (rTxtFld.End() != NULL) ? *(rTxtFld.End()) : ( *(rTxtFld.GetStart()) + 1 ) ),
+ rTxtNode,
+ *(rTxtFld.GetStart()) ) );
+
+}
+
+
+/*static*/
+void SwTxtFld::DeleteTxtFld( const SwTxtFld& rTxtFld )
+{
+ if ( rTxtFld.GetpTxtNode() != NULL )
+ {
+ boost::shared_ptr< SwPaM > pPamForTxtFld;
+ GetPamForTxtFld( rTxtFld, pPamForTxtFld );
+ if ( pPamForTxtFld.get() != NULL )
+ {
+ rTxtFld.GetTxtNode().GetDoc()->DeleteAndJoin( *pPamForTxtFld );
+ }
+ }
+}
+
+
+
// input field in-place editing
SwTxtInputFld::SwTxtInputFld(
SwFmtFld & rAttr,
xub_StrLen const nStart,
- xub_StrLen const nEnd )
+ xub_StrLen const nEnd,
+ const bool bIsClipboardDoc )
- : SwTxtFld( rAttr, nStart )
+ : SwTxtFld( rAttr, nStart, bIsClipboardDoc )
, m_nEnd( nEnd )
, m_bLockNotifyContentChange( false )
{
@@ -553,8 +598,9 @@ void SwTxtInputFld::UpdateTextNodeContent( const String& rNewContent )
// text annotation field
SwTxtAnnotationFld::SwTxtAnnotationFld(
SwFmtFld & rAttr,
- xub_StrLen const nStart )
- : SwTxtFld( rAttr, nStart )
+ xub_StrLen const nStart,
+ const bool bIsClipboardDoc )
+ : SwTxtFld( rAttr, nStart, bIsClipboardDoc )
{
}
diff --git a/sw/source/core/txtnode/fntcache.cxx b/sw/source/core/txtnode/fntcache.cxx
index 4ef7f67be490..69a118f2eca7 100644
--- a/sw/source/core/txtnode/fntcache.cxx
+++ b/sw/source/core/txtnode/fntcache.cxx
@@ -2671,7 +2671,7 @@ sal_Bool SwDrawTextInfo::ApplyAutoColor( Font* pFont )
SwRect aOrigBackRect;
//UUUU
- FillAttributesPtr aFillAttributes;
+ drawinglayer::attribute::SdrAllFillAttributesHelperPtr aFillAttributes;
/// OD 21.08.2002
/// consider, that [GetBackgroundBrush(...)] can set <pCol>
@@ -2701,13 +2701,13 @@ sal_Bool SwDrawTextInfo::ApplyAutoColor( Font* pFont )
if( GetShell() && GetShell()->GetWin() )
{
- // here we determine the prefered window text color for painting
+ // here we determine the preferred window text color for painting
const SwViewOption* pViewOption = GetShell()->GetViewOptions();
if(pViewOption->IsPagePreview() &&
!SW_MOD()->GetAccessibilityOptions().GetIsForPagePreviews())
nNewColor = COL_BLACK;
else
- // we take the font color from the appearence page
+ // we take the font color from the appearance page
nNewColor = SwViewOption::GetFontColor().GetColor();
}
diff --git a/sw/source/core/txtnode/ndtxt.cxx b/sw/source/core/txtnode/ndtxt.cxx
index 7b58c0ec6745..3622e4c02086 100644
--- a/sw/source/core/txtnode/ndtxt.cxx
+++ b/sw/source/core/txtnode/ndtxt.cxx
@@ -91,6 +91,9 @@
#include <switerator.hxx>
#include <attrhint.hxx>
+//UUUU
+#include <svx/sdr/attribute/sdrallfillattributeshelper.hxx>
+#include <svl/itemiter.hxx>
using namespace ::com::sun::star;
@@ -202,21 +205,23 @@ SwTxtNode *SwNodes::MakeTxtNode( const SwNodeIndex & rWhere,
// SwTxtNode
// --------------------
-SwTxtNode::SwTxtNode( const SwNodeIndex &rWhere,
- SwTxtFmtColl *pTxtColl,
- const SfxItemSet* pAutoAttr )
- : SwCntntNode( rWhere, ND_TEXTNODE, pTxtColl ),
- m_pSwpHints( 0 ),
- mpNodeNum( 0 ),
- m_bLastOutlineState( false ),
- m_bNotifiable( false ),
- // --> OD 2008-11-19 #i70748#
- mbEmptyListStyleSetDueToSetOutlineLevelAttr( false ),
- // <--
- // --> OD 2008-05-06 #refactorlists#
- mbInSetOrResetAttr( false ),
- mpList( 0 )
- // <--
+SwTxtNode::SwTxtNode( const SwNodeIndex &rWhere, SwTxtFmtColl *pTxtColl, const SfxItemSet* pAutoAttr )
+: SwCntntNode( rWhere, ND_TEXTNODE, pTxtColl ),
+ m_pSwpHints( 0 ),
+ mpNodeNum( 0 ),
+ m_Text(),
+ m_pParaIdleData_Impl(0),
+ m_bContainsHiddenChars(false),
+ m_bHiddenCharsHidePara(false),
+ m_bRecalcHiddenCharFlags(false),
+ m_bLastOutlineState( false ),
+ m_bNotifiable( false ),
+ mbEmptyListStyleSetDueToSetOutlineLevelAttr( false ),
+ mbInSetOrResetAttr( false ),
+ mpList( 0 ),
+ m_pNumStringCache(),
+ m_wXParagraph(),
+ maFillAttributes()
{
InitSwParaStatistics( true );
@@ -1072,6 +1077,8 @@ void SwTxtNode::Update(
// Bookmarks must never grow to either side, when editing (directly) to the left or right (#i29942#)!
// And a bookmark with same start and end must remain to the left of the inserted text (used in XML import).
{
+ bool bAtLeastOneBookmarkMoved = false;
+ bool bAtLeastOneExpandedBookmarkAtInsertionPosition = false;
const IDocumentMarkAccess* const pMarkAccess = getIDocumentMarkAccess();
for ( IDocumentMarkAccess::const_iterator_t ppMark = pMarkAccess->getAllMarksBegin();
ppMark != pMarkAccess->getAllMarksEnd();
@@ -1079,14 +1086,28 @@ void SwTxtNode::Update(
{
const ::sw::mark::IMark* const pMark = ppMark->get();
const SwPosition* pEnd = &pMark->GetMarkEnd();
- SwIndex & rIdx = const_cast<SwIndex&>(pEnd->nContent);
+ SwIndex & rEndIdx = const_cast<SwIndex&>(pEnd->nContent);
if( this == &pEnd->nNode.GetNode() &&
- rPos.GetIndex() == rIdx.GetIndex() )
+ rPos.GetIndex() == rEndIdx.GetIndex() )
{
- rIdx.Assign( &aTmpIdxReg, rIdx.GetIndex() );
- bSortMarks = true;
+ rEndIdx.Assign( &aTmpIdxReg, rEndIdx.GetIndex() );
+ bAtLeastOneBookmarkMoved = true;
+ }
+ else if ( !bAtLeastOneExpandedBookmarkAtInsertionPosition )
+ {
+ if ( pMark->IsExpanded() )
+ {
+ const SwPosition* pStart = &pMark->GetMarkStart();
+ if ( this == &pStart->nNode.GetNode()
+ && rPos.GetIndex() == pStart->nContent.GetIndex() )
+ {
+ bAtLeastOneExpandedBookmarkAtInsertionPosition = true;
+ }
+ }
}
}
+
+ bSortMarks = bAtLeastOneBookmarkMoved && bAtLeastOneExpandedBookmarkAtInsertionPosition;
}
}
@@ -1542,7 +1563,11 @@ void SwTxtNode::CopyAttr( SwTxtNode *pDest, const xub_StrLen nTxtStartIdx,
if( this != pDest )
{
// Frames benachrichtigen, sonst verschwinden die Ftn-Nummern
- SwUpdateAttr aHint( nOldPos, nOldPos, 0 );
+ SwUpdateAttr aHint(
+ nOldPos,
+ nOldPos,
+ 0);
+
pDest->ModifyNotification( 0, &aHint );
}
}
@@ -2463,7 +2488,11 @@ void SwTxtNode::GCAttr()
if(bChanged)
{
//TxtFrm's reagieren auf aHint, andere auf aNew
- SwUpdateAttr aHint( nMin, nMax, 0 );
+ SwUpdateAttr aHint(
+ nMin,
+ nMax,
+ 0);
+
NotifyClients( 0, &aHint );
SwFmtChg aNew( GetTxtColl() );
NotifyClients( 0, &aNew );
@@ -3646,6 +3675,28 @@ void SwTxtNode::Modify( const SfxPoolItem* pOldValue, const SfxPoolItem* pNewVal
(SwTxtFmtColl*)((SwFmtChg*)pNewValue)->pChangedFmt );
}
+ //UUUU reset fill information
+ if(maFillAttributes.get())
+ {
+ sal_uInt16 nWhich = pNewValue ? pNewValue->Which() : 0;
+ bool bReset(RES_FMT_CHG == nWhich); // ..on format change (e.g. style changed)
+
+ if(!bReset && RES_ATTRSET_CHG == nWhich) // ..on ItemChange from DrawingLayer FillAttributes
+ {
+ SfxItemIter aIter(*((SwAttrSetChg*)pNewValue)->GetChgSet());
+
+ for(const SfxPoolItem* pItem = aIter.FirstItem(); pItem && !bReset; pItem = aIter.NextItem())
+ {
+ bReset = !IsInvalidItem(pItem) && pItem->Which() >= XATTR_FILL_FIRST && pItem->Which() <= XATTR_FILL_LAST;
+ }
+ }
+
+ if(bReset)
+ {
+ maFillAttributes.reset();
+ }
+ }
+
// --> OD 2008-03-27 #refactorlists#
if ( !mbInSetOrResetAttr )
{
@@ -3695,6 +3746,12 @@ SwFmtColl* SwTxtNode::ChgFmtColl( SwFmtColl *pNewColl )
HandleModifyAtTxtNode( *this, &aTmp1, &aTmp2 );
}
// <--
+
+ //UUUU reset fill information on parent style change
+ if(maFillAttributes.get())
+ {
+ maFillAttributes.reset();
+ }
}
// nur wenn im normalen Nodes-Array
@@ -4619,6 +4676,7 @@ namespace {
// --> OD 2008-11-19 #i70748#
if ( mbOutlineLevelSet )
{
+ mrTxtNode.GetNodes().UpdateOutlineNode( mrTxtNode );
if ( mrTxtNode.GetAttrOutlineLevel() == 0 )
{
mrTxtNode.ResetEmptyListStyleDueToResetOutlineLevelAttr();
@@ -5056,3 +5114,16 @@ bool SwTxtNode::HasPageNumberField()
}
//Bug 120881(End)
+//UUUU
+drawinglayer::attribute::SdrAllFillAttributesHelperPtr SwTxtNode::getSdrAllFillAttributesHelper() const
+{
+ // create SdrAllFillAttributesHelper on demand
+ if(!maFillAttributes.get())
+ {
+ const_cast< SwTxtNode* >(this)->maFillAttributes.reset(new drawinglayer::attribute::SdrAllFillAttributesHelper(GetSwAttrSet()));
+ }
+
+ return maFillAttributes;
+}
+
+// eof
diff --git a/sw/source/core/txtnode/thints.cxx b/sw/source/core/txtnode/thints.cxx
index 3a9a4ebcba77..19fe3e5314d3 100644
--- a/sw/source/core/txtnode/thints.cxx
+++ b/sw/source/core/txtnode/thints.cxx
@@ -1049,12 +1049,14 @@ SwTxtAttr* MakeTxtAttr(
break;
case RES_TXTATR_FIELD:
- pNew = new SwTxtFld( static_cast<SwFmtFld &>(rNew), nStt );
+ pNew =
+ new SwTxtFld( static_cast<SwFmtFld &>(rNew), nStt, rDoc.IsClipBoard() );
break;
case RES_TXTATR_ANNOTATION:
{
- pNew = new SwTxtAnnotationFld( static_cast<SwFmtFld &>(rNew), nStt );
+ pNew =
+ new SwTxtAnnotationFld( static_cast<SwFmtFld &>(rNew), nStt, rDoc.IsClipBoard() );
if ( bIsCopy == COPY )
{
// On copy of the annotation field do not keep the annotated text range by removing
@@ -1067,7 +1069,8 @@ SwTxtAttr* MakeTxtAttr(
break;
case RES_TXTATR_INPUTFIELD:
- pNew = new SwTxtInputFld( static_cast<SwFmtFld &>(rNew), nStt, nEnd );
+ pNew =
+ new SwTxtInputFld( static_cast<SwFmtFld &>(rNew), nStt, nEnd, rDoc.IsClipBoard() );
break;
case RES_TXTATR_FLYCNT:
@@ -1253,7 +1256,7 @@ SwTxtAttr* SwTxtNode::InsertItem(
{
const bool bSuccess( InsertHint( pNew, nMode ) );
// N.B.: also check that the hint is actually in the hints array,
- // because hints of certain types may be merged after succesful
+ // because hints of certain types may be merged after successful
// insertion, and thus destroyed!
if (!bSuccess || ( USHRT_MAX == m_pSwpHints->GetPos( pNew ) ))
{
@@ -1677,7 +1680,10 @@ void SwTxtNode::DeleteAttribute( SwTxtAttr * const pAttr )
{
// create MsgHint before start/end become invalid
SwUpdateAttr aHint(
- *pAttr->GetStart(), *pAttr->GetEnd(), pAttr->Which() );
+ *pAttr->GetStart(),
+ *pAttr->GetEnd(),
+ pAttr->Which());
+
m_pSwpHints->Delete( pAttr );
SwTxtAttr::Destroy( pAttr, GetDoc()->GetAttrPool() );
NotifyClients( 0, &aHint );
@@ -1752,7 +1758,11 @@ void SwTxtNode::DeleteAttributes(
// Start und End weg.
// Das CalcVisibleFlag bei HiddenParaFields entfaellt,
// da dies das Feld im Dtor selbst erledigt.
- SwUpdateAttr aHint( nStart, *pEndIdx, nWhich );
+ SwUpdateAttr aHint(
+ nStart,
+ *pEndIdx,
+ nWhich);
+
m_pSwpHints->DeleteAtPos( nPos ); // gefunden, loeschen,
SwTxtAttr::Destroy( pTxtHt, GetDoc()->GetAttrPool() );
NotifyClients( 0, &aHint );
@@ -1780,10 +1790,10 @@ void SwTxtNode::DelSoftHyph( const xub_StrLen nStt, const xub_StrLen nEnd )
}
//Modify here for #119405, by easyfan, 2012-05-24
-//In MS Word, the font underline setting of the paragraph end position wont affect the formatting of numbering, so we ignore it
+//In MS Word, the font underline setting of the paragraph end position wont affect the formatting of numbering, escapement, etc, so we ignore them
bool lcl_IsIgnoredCharFmtForNumbering(const sal_uInt16 nWhich)
{
- return (nWhich == RES_CHRATR_UNDERLINE);
+ return (nWhich == RES_CHRATR_UNDERLINE || nWhich == RES_CHRATR_ESCAPEMENT);
}
//In MS Word, following properties of the paragraph end position wont affect the formatting of bullets, so we ignore them:
@@ -1792,7 +1802,7 @@ bool lcl_IsIgnoredCharFmtForNumbering(const sal_uInt16 nWhich)
//Font Bold of Wertern, CJK and CTL;
bool lcl_IsIgnoredCharFmtForBullets(const sal_uInt16 nWhich)
{
- return (nWhich == RES_CHRATR_UNDERLINE || nWhich == RES_CHRATR_POSTURE || nWhich == RES_CHRATR_WEIGHT
+ return (nWhich == RES_CHRATR_UNDERLINE || nWhich == RES_CHRATR_POSTURE || nWhich == RES_CHRATR_WEIGHT
|| nWhich == RES_CHRATR_CJK_POSTURE || nWhich == RES_CHRATR_CJK_WEIGHT
|| nWhich == RES_CHRATR_CTL_POSTURE || nWhich == RES_CHRATR_CTL_WEIGHT);
}
@@ -2195,7 +2205,7 @@ sal_Bool SwTxtNode::GetAttr( SfxItemSet& rSet, xub_StrLen nStt, xub_StrLen nEnd,
{
const sal_uInt16 nHintWhich = pItem->Which();
ASSERT(!isUNKNOWNATR(nHintWhich),
- "SwTxtNode::GetAttr(): unkonwn attribute?");
+ "SwTxtNode::GetAttr(): unknown attribute?");
if ( !pAttrArr.get() )
{
@@ -3043,11 +3053,16 @@ bool SwpHints::TryInsertHint(
CHECK;
#endif
// ... und die Abhaengigen benachrichtigen
- if ( rNode.GetDepends() )
+ if(rNode.GetDepends())
{
- SwUpdateAttr aHint( nHtStart, nHtStart, nWhich );
- rNode.ModifyNotification( 0, &aHint );
+ SwUpdateAttr aHint(
+ nHtStart,
+ nHtStart,
+ nWhich);
+
+ rNode.ModifyNotification(0,&aHint);
}
+
return true;
}
@@ -3127,7 +3142,12 @@ bool SwpHints::TryInsertHint(
// ... und die Abhaengigen benachrichtigen
if ( rNode.GetDepends() )
{
- SwUpdateAttr aHint( nHtStart, nHtStart == nHintEnd ? nHintEnd + 1 : nHintEnd, nWhich );
+ SwUpdateAttr aHint(
+ // rNode.GetDoc()->GetAttrPool(),
+ nHtStart,
+ nHtStart == nHintEnd ? nHintEnd + 1 : nHintEnd,
+ nWhich);
+
rNode.ModifyNotification( 0, &aHint );
}
diff --git a/sw/source/core/txtnode/txtatr2.cxx b/sw/source/core/txtnode/txtatr2.cxx
index 9424eac43478..e3101ac2231c 100644
--- a/sw/source/core/txtnode/txtatr2.cxx
+++ b/sw/source/core/txtnode/txtatr2.cxx
@@ -68,7 +68,11 @@ void SwTxtCharFmt::ModifyNotification( const SfxPoolItem* pOld, const SfxPoolIte
if ( m_pTxtNode )
{
- SwUpdateAttr aUpdateAttr( *GetStart(), *GetEnd(), nWhich );
+ SwUpdateAttr aUpdateAttr(
+ *GetStart(),
+ *GetEnd(),
+ nWhich);
+
m_pTxtNode->ModifyNotification( &aUpdateAttr, &aUpdateAttr );
}
}
@@ -186,7 +190,11 @@ void SwTxtINetFmt::Modify( const SfxPoolItem* pOld, const SfxPoolItem* pNew )
if ( m_pTxtNode )
{
- SwUpdateAttr aUpdateAttr( *GetStart(), *GetEnd(), nWhich );
+ SwUpdateAttr aUpdateAttr(
+ *GetStart(),
+ *GetEnd(),
+ nWhich);
+
m_pTxtNode->ModifyNotification( &aUpdateAttr, &aUpdateAttr );
}
}
@@ -235,7 +243,11 @@ void SwTxtRuby::Modify( const SfxPoolItem* pOld, const SfxPoolItem *pNew )
if ( m_pTxtNode )
{
- SwUpdateAttr aUpdateAttr( *GetStart(), *GetEnd(), nWhich );
+ SwUpdateAttr aUpdateAttr(
+ *GetStart(),
+ *GetEnd(),
+ nWhich);
+
m_pTxtNode->ModifyNotification( &aUpdateAttr, &aUpdateAttr );
}
}
diff --git a/sw/source/core/txtnode/txtedt.cxx b/sw/source/core/txtnode/txtedt.cxx
index c256b6222a7c..8e77ac6c5156 100644
--- a/sw/source/core/txtnode/txtedt.cxx
+++ b/sw/source/core/txtnode/txtedt.cxx
@@ -640,19 +640,26 @@ void SwTxtNode::RstTxtAttr(
}
}
}
- ++i;
}
+
+ ++i;
}
TryDeleteSwpHints();
+
if (bChanged)
{
if ( HasHints() )
{
m_pSwpHints->Resort();
}
+
//TxtFrm's reagieren auf aHint, andere auf aNew
- SwUpdateAttr aHint( nMin, nMax, 0 );
+ SwUpdateAttr aHint(
+ nMin,
+ nMax,
+ 0);
+
NotifyClients( 0, &aHint );
SwFmtChg aNew( GetFmtColl() );
NotifyClients( 0, &aNew );
@@ -1983,17 +1990,17 @@ void SwTxtNode::CountWords( SwDocStat& rStat,
// Asian languages count words as characters
if ( nCurrScript == ::com::sun::star::i18n::ScriptType::ASIAN )
{
- // substract white spaces
+ // subtract white spaces
sal_Int32 nSpaceCount = 0;
sal_Int32 nSpacePos = 0;
- // substract normal white spaces
+ // subtract normal white spaces
nSpacePos = -1;
while ( ( nSpacePos = aScriptText.indexOf( ' ', nSpacePos + 1 ) ) != -1 )
{
nSpaceCount++;
}
- // substract Asian full-width white spaces
+ // subtract Asian full-width white spaces
nSpacePos = -1;
while ( ( nSpacePos = aScriptText.indexOf( 12288, nSpacePos + 1 ) ) != -1 )
{
diff --git a/sw/source/core/undo/docundo.cxx b/sw/source/core/undo/docundo.cxx
index bd49052290b4..a197624c3595 100644
--- a/sw/source/core/undo/docundo.cxx
+++ b/sw/source/core/undo/docundo.cxx
@@ -19,8 +19,6 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sw.hxx"
@@ -41,16 +39,13 @@
#include <editsh.hxx>
#include <unobaseclass.hxx>
#include <limits>
-
-#include <limits>
+#include <drawdoc.hxx>
using namespace ::com::sun::star;
-
// the undo array should never grow beyond this limit:
#define UNDO_ACTION_LIMIT (USHRT_MAX - 1000)
-
// UndoManager ///////////////////////////////////////////////////////////
namespace sw {
@@ -95,7 +90,7 @@ void UndoManager::DoUndo(bool const bDoUndo)
{
EnableUndo(bDoUndo);
- SdrModel *const pSdrModel = m_rDrawModelAccess.GetDrawModel();
+ SwDrawModel*const pSdrModel = m_rDrawModelAccess.GetDrawModel();
if( pSdrModel )
{
pSdrModel->EnableUndo(bDoUndo);
diff --git a/sw/source/core/undo/rolbck.cxx b/sw/source/core/undo/rolbck.cxx
index 72af00f16993..4045e7d5debe 100644
--- a/sw/source/core/undo/rolbck.cxx
+++ b/sw/source/core/undo/rolbck.cxx
@@ -1039,20 +1039,31 @@ SwHistory::~SwHistory()
|*
*************************************************************************/
-void SwHistory::Add( const SfxPoolItem* pOldValue, const SfxPoolItem* pNewValue,
- sal_uLong nNodeIdx )
+void SwHistory::Add(
+ const SfxPoolItem* pOldValue,
+ const SfxPoolItem* pNewValue,
+ sal_uLong nNodeIdx)
{
ASSERT( !m_nEndDiff, "History was not deleted after REDO" );
+ const sal_uInt16 nWhich(pNewValue->Which());
- sal_uInt16 nWhich = pNewValue->Which();
- if( (nWhich >= POOLATTR_END)
- || (nWhich == RES_TXTATR_FIELD)
- || (nWhich == RES_TXTATR_ANNOTATION) )
+ // excluded values
+ if(nWhich == RES_TXTATR_FIELD || nWhich == RES_TXTATR_ANNOTATION)
+ {
return;
+ }
// no default Attribute?
- SwHistoryHint * pHt;
- if ( pOldValue && pOldValue != GetDfltAttr( pOldValue->Which() ) )
+ SwHistoryHint* pHt = 0;
+
+ //UUUU To be able to include the DrawingLayer FillItems something more
+ // general has to be done to check if an Item is default than to check
+ // if it's pointzer equals that in Writer's global PoolDefaults (held in
+ // aAttrTab and used to fill the pool defaults in Writer - looks as if
+ // Writer is *older* than the SfxItemPool ?). I checked the possibility to
+ // get the SfxItemPool here (works), but decided to use the SfxPoolItem's
+ // global tooling aka IsDefaultItem(const SfxPoolItem*) for now
+ if(pOldValue && !IsDefaultItem(pOldValue))
{
pHt = new SwHistorySetFmt( pOldValue, nNodeIdx );
}
@@ -1060,7 +1071,8 @@ void SwHistory::Add( const SfxPoolItem* pOldValue, const SfxPoolItem* pNewValue,
{
pHt = new SwHistoryResetFmt( pNewValue, nNodeIdx );
}
- m_SwpHstry.Insert( pHt, Count() );
+
+ m_SwpHstry.Insert(pHt, Count());
}
@@ -1275,21 +1287,34 @@ sal_uInt16 SwHistory::SetTmpEnd( sal_uInt16 nNewTmpEnd )
return nOld;
}
-void SwHistory::CopyFmtAttr( const SfxItemSet& rSet, sal_uLong nNodeIdx )
+void SwHistory::CopyFmtAttr(
+ const SfxItemSet& rSet,
+ sal_uLong nNodeIdx)
{
- if( rSet.Count() )
+ if(rSet.Count())
{
- SfxItemIter aIter( rSet );
- do {
- if( (SfxPoolItem*)-1 != aIter.GetCurItem() )
+ SfxItemIter aIter(rSet);
+
+ do
+ {
+ if(!IsInvalidItem(aIter.GetCurItem()))
{
const SfxPoolItem* pNew = aIter.GetCurItem();
- Add( pNew, pNew, nNodeIdx );
+
+ Add(
+ pNew,
+ pNew,
+ nNodeIdx);
}
- if( aIter.IsAtEnd() )
+
+ if(aIter.IsAtEnd())
+ {
break;
+ }
+
aIter.NextItem();
- } while( sal_True );
+
+ } while(true);
}
}
@@ -1380,31 +1405,38 @@ SwRegHistory::SwRegHistory( const SwNode& rNd, SwHistory* pHst )
void SwRegHistory::Modify( const SfxPoolItem* pOld, const SfxPoolItem* pNew )
{
- // --> OD 2010-10-05 #i114861#
- // Do not handle a "noop" modify
- // - e.g. <SwTxtNode::NumRuleChgd()> uses such a "noop" modify
-// if ( m_pHistory && ( pOld || pNew ) )
- if ( m_pHistory && ( pOld || pNew ) &&
- pOld != pNew )
- // <--
+ if ( m_pHistory && ( pOld || pNew ) && pOld != pNew )
{
if ( pNew->Which() < POOLATTR_END )
{
- m_pHistory->Add( pOld, pNew, m_nNodeIndex );
+ if(RES_UPDATE_ATTR == pNew->Which())
+ {
+ // const SfxItemPool& rPool = static_cast< const SwUpdateAttr* >(pNew)->GetSfxItemPool();
+
+ m_pHistory->Add(
+ // rPool,
+ pOld,
+ pNew,
+ m_nNodeIndex);
+ }
+ else
+ {
+ OSL_ENSURE(false, "Unexpected update attribute (!)");
+ }
}
else if ( RES_ATTRSET_CHG == pNew->Which() )
{
SwHistoryHint* pNewHstr;
- const SfxItemSet& rSet =
- *static_cast<const SwAttrSetChg*>(pOld)->GetChgSet();
+ const SfxItemSet& rSet = *static_cast< const SwAttrSetChg* >(pOld)->GetChgSet();
+
if ( 1 < rSet.Count() )
{
- pNewHstr =
- new SwHistorySetAttrSet( rSet, m_nNodeIndex, m_WhichIdSet );
+ pNewHstr = new SwHistorySetAttrSet( rSet, m_nNodeIndex, m_WhichIdSet );
}
else
{
const SfxPoolItem* pItem = SfxItemIter( rSet ).FirstItem();
+
if ( m_WhichIdSet.Seek_Entry( pItem->Which() ) )
{
pNewHstr = new SwHistorySetFmt( pItem, m_nNodeIndex );
@@ -1414,6 +1446,7 @@ void SwRegHistory::Modify( const SfxPoolItem* pOld, const SfxPoolItem* pNew )
pNewHstr = new SwHistoryResetFmt( pItem, m_nNodeIndex );
}
}
+
m_pHistory->m_SwpHstry.Insert( pNewHstr, m_pHistory->Count() );
}
}
diff --git a/sw/source/core/undo/unattr.cxx b/sw/source/core/undo/unattr.cxx
index 5a4fd7d090a6..ded3fd70354d 100644
--- a/sw/source/core/undo/unattr.cxx
+++ b/sw/source/core/undo/unattr.cxx
@@ -19,22 +19,16 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sw.hxx"
#define _SVSTDARR_USHORTS
#define _SVSTDARR_USHORTSSORT
#include <UndoAttribute.hxx>
-
#include <svl/itemiter.hxx>
-
#include <editeng/tstpitem.hxx>
-
#include <svx/svdmodel.hxx>
#include <svx/svdpage.hxx>
-
#include <hintids.hxx>
#include <fmtflcnt.hxx>
#include <txtftn.hxx>
@@ -65,6 +59,7 @@
#include <svx/svdlegacy.hxx>
#include <svx/fmmodel.hxx>
#include <switerator.hxx>
+#include <drawdoc.hxx>
// -----------------------------------------------------
@@ -202,7 +197,7 @@ void SwUndoFmtAttr::UndoImpl(::sw::UndoRedoContext & rContext)
if ( !m_pOldSet.get() || !m_pFmt || !IsFmtInDoc( &rContext.GetDoc() ))
return;
- // --> OD 2004-10-26 #i35443# - If anchor attribute has been successfull
+ // --> OD 2004-10-26 #i35443# - If anchor attribute has been successful
// restored, all other attributes are also restored.
// Thus, keep track of its restoration
bool bAnchorAttrRestored( false );
@@ -211,7 +206,7 @@ void SwUndoFmtAttr::UndoImpl(::sw::UndoRedoContext & rContext)
bAnchorAttrRestored = RestoreFlyAnchor(rContext);
if ( bAnchorAttrRestored )
{
- // Anchor attribute successfull restored.
+ // Anchor attribute successful restored.
// Thus, keep anchor position for redo
SaveFlyAnchor();
}
diff --git a/sw/source/core/undo/unfmco.cxx b/sw/source/core/undo/unfmco.cxx
index 8baddb07fd47..478a1980b1e9 100644
--- a/sw/source/core/undo/unfmco.cxx
+++ b/sw/source/core/undo/unfmco.cxx
@@ -94,14 +94,13 @@ void SwUndoFmtColl::DoSetFmtColl(SwDoc & rDoc, SwPaM & rPaM)
sal_uInt16 const nPos = rDoc.GetTxtFmtColls()->GetPos(
(SwTxtFmtColl*)pFmtColl );
// does the format still exist?
- if( USHRT_MAX != nPos )
+ if ( USHRT_MAX != nPos )
{
- // --> OD 2008-04-15 #refactorlists#
- rDoc.SetTxtFmtColl(rPaM,
- (SwTxtFmtColl*)pFmtColl,
- mbReset,
- mbResetListAttrs );
- // <--
+ rDoc.SetTxtFmtColl(
+ rPaM,
+ (SwTxtFmtColl*) pFmtColl,
+ mbReset,
+ mbResetListAttrs );
}
}
diff --git a/sw/source/core/undo/untbl.cxx b/sw/source/core/undo/untbl.cxx
index 44772872db5f..0e710657ed14 100644
--- a/sw/source/core/undo/untbl.cxx
+++ b/sw/source/core/undo/untbl.cxx
@@ -1737,7 +1737,7 @@ void SwUndoTblNdsChg::SaveNewBoxes( const SwTableNode& rTblNd,
// then pBox received nodes from elsewhere.
// If bNodesMoved is set for pBox the undo must move the
// boxes back, otherwise it must delete them.
- // The bNodesMoved flag is stored in a seperate array
+ // The bNodesMoved flag is stored in a separate array
// which mirrors Ptrs.pNewSttNds, i.e. Ptrs.pNewSttNds[i]
// and aMvBoxes[i] belong together.
sal_Bool bNodesMoved =
diff --git a/sw/source/core/unocore/XMLRangeHelper.cxx b/sw/source/core/unocore/XMLRangeHelper.cxx
index 8e50525e8186..d4cb11dcb66b 100644
--- a/sw/source/core/unocore/XMLRangeHelper.cxx
+++ b/sw/source/core/unocore/XMLRangeHelper.cxx
@@ -347,7 +347,7 @@ CellRange getCellRangeFromXMLString( const OUString & rXMLString )
nStartPos, nEndPos - 1,
aResult ))
{
- // if an error occured, bail out
+ // if an error occurred, bail out
return CellRange();
}
}
diff --git a/sw/source/core/unocore/swunohelper.cxx b/sw/source/core/unocore/swunohelper.cxx
index 6d1711adff13..cf59ea79e4cc 100644
--- a/sw/source/core/unocore/swunohelper.cxx
+++ b/sw/source/core/unocore/swunohelper.cxx
@@ -19,8 +19,6 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sw.hxx"
@@ -31,9 +29,7 @@
#include <com/sun/star/ucb/XContentProvider.hpp>
#include <com/sun/star/ucb/XCommandEnvironment.hpp>
#include <com/sun/star/ucb/TransferInfo.hpp>
-#ifndef _COM_SUN_STAR_UCB_NAMECLASH_HDL_
#include <com/sun/star/ucb/NameClash.hdl>
-#endif
#include <com/sun/star/sdbc/XResultSet.hpp>
#include <com/sun/star/sdbc/XRow.hpp>
#include <com/sun/star/lang/XMultiServiceFactory.hpp>
@@ -50,7 +46,12 @@
#include <swunodef.hxx>
#include <errhdl.hxx>
-namespace SWUnoHelper {
+//UUUU
+#include <svx/xfillit0.hxx>
+#include <svl/itemset.hxx>
+
+namespace SWUnoHelper
+{
sal_Int32 GetEnumAsInt32( const UNO_NMSPC::Any& rVal )
{
@@ -284,4 +285,34 @@ sal_Bool UCB_GetFileListOfFolder( const String& rURL, SvStrings& rList,
return bOk;
}
+//UUUU
+bool needToMapFillItemsToSvxBrushItemTypes(const SfxItemSet& rSet)
+{
+ const XFillStyleItem* pXFillStyleItem(static_cast< const XFillStyleItem* >(rSet.GetItem(XATTR_FILLSTYLE, false)));
+
+ if(!pXFillStyleItem)
+ {
+ return false;
+ }
+
+ // here different FillStyles can be excluded for export; it will depend on the
+ // quality these fallbacks can reach. That again is done in getSvxBrushItemFromSourceSet,
+ // take a look there how the superset of DrawObject FillStyles is mapped to SvxBrushItem.
+ // For now, take them all - except XFILL_NONE
+
+ if(XFILL_NONE != pXFillStyleItem->GetValue())
+ {
+ return true;
+ }
+
+ // if(XFILL_SOLID == pXFillStyleItem->GetValue() || XFILL_BITMAP == pXFillStyleItem->GetValue())
+ // {
+ // return true;
+ // }
+
+ return false;
+}
+
}
+
+// eof
diff --git a/sw/source/core/unocore/unochart.cxx b/sw/source/core/unocore/unochart.cxx
index 696ed773b67a..36d7f14eb397 100644
--- a/sw/source/core/unocore/unochart.cxx
+++ b/sw/source/core/unocore/unochart.cxx
@@ -697,12 +697,12 @@ uno::Reference< chart2::data::XDataSource > SwChartDataProvider::Impl_createData
//Therefore we need to shift the range one row up
SwRangeDescriptor aDesc;
if (aRangeRepresentation.getLength() == 0)
- return xRes; // we cant handle this thus returning an empty references
+ return xRes; // we can't handle this thus returning an empty references
aRangeRepresentation = aRangeRepresentation.copy( 1 ); // get rid of '.' to have only the cell range left
FillRangeDescriptor( aDesc, aRangeRepresentation );
aDesc.Normalize();
if (aDesc.nTop <= 0) // no chance to shift the range one row up?
- return xRes; // we cant handle this thus returning an empty references
+ return xRes; // we can't handle this thus returning an empty references
aDesc.nTop -= 1;
aDesc.nBottom -= 1;
@@ -743,7 +743,7 @@ uno::Reference< chart2::data::XDataSource > SwChartDataProvider::Impl_createData
{
SwTable* pTable = SwTable::FindTable( pTblFmt );
if(pTable->IsTblComplex())
- return xRes; // we cant handle this thus returning an empty references
+ return xRes; // we can't handle this thus returning an empty references
else
{
// get a character map in the size of the table to mark
@@ -833,7 +833,7 @@ uno::Reference< chart2::data::XDataSource > SwChartDataProvider::Impl_createData
}
aDataLen[oi] = nL;
- // check that there is no other seperate sequence of data
+ // check that there is no other separate sequence of data
// to be found because that is not supported
while (ii < iiEnd)
{
diff --git a/sw/source/core/unocore/unodraw.cxx b/sw/source/core/unocore/unodraw.cxx
index bd0f03a33480..a087d17cef84 100644
--- a/sw/source/core/unocore/unodraw.cxx
+++ b/sw/source/core/unocore/unodraw.cxx
@@ -19,14 +19,11 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sw.hxx"
#include <swtypes.hxx>
#include <cmdid.h>
-
#include <unomid.h>
#include <unodraw.hxx>
#include <unocoll.hxx>
@@ -87,6 +84,7 @@
#include <svx/svdlegacy.hxx>
#include <svx/fmmodel.hxx>
#include <switerator.hxx>
+#include <drawdoc.hxx>
using ::rtl::OUString;
using namespace ::com::sun::star;
@@ -874,7 +872,7 @@ SwFmDrawPage* SwXDrawPage::GetSvxPage()
{
vos::OGuard aGuard(Application::GetSolarMutex());
// --> OD 2005-08-08 #i52858# - method name changed
- SdrModel* pModel = pDoc->GetOrCreateDrawModel();
+ SwDrawModel* pModel = pDoc->GetOrCreateDrawModel();
// <--
SdrPage* pPage = pModel->GetPage( 0 );
diff --git a/sw/source/core/unocore/unofield.cxx b/sw/source/core/unocore/unofield.cxx
index c476763d1bcd..550f11d6cb6a 100644
--- a/sw/source/core/unocore/unofield.cxx
+++ b/sw/source/core/unocore/unofield.cxx
@@ -539,18 +539,29 @@ void SwXFieldMaster::setPropertyValue( const OUString& rPropertyName,
}
}
}
- if( bSetValue )
+ if ( bSetValue )
{
// nothing special to be done here for the properties
// UNO_NAME_DATA_BASE_NAME and UNO_NAME_DATA_BASE_URL.
// We just call PutValue (empty string is allowed).
// Thus the last property set will be used as Data Source.
- sal_uInt16 nMId = GetFieldTypeMId( rPropertyName, *pType );
- if( USHRT_MAX != nMId )
- pType->PutValue( rValue, nMId );
+ const sal_uInt16 nMemberValueId = GetFieldTypeMId( rPropertyName, *pType );
+ if ( USHRT_MAX != nMemberValueId )
+ {
+ pType->PutValue( rValue, nMemberValueId );
+ if ( pType->Which() == RES_USERFLD )
+ {
+ // trigger update of User field in order to get depending Input Fields updated.
+ pType->UpdateFlds();
+ }
+ }
else
- throw beans::UnknownPropertyException(OUString ( RTL_CONSTASCII_USTRINGPARAM ( "Unknown property: " ) ) + rPropertyName, static_cast < cppu::OWeakObject * > ( this ) );
+ {
+ throw beans::UnknownPropertyException(
+ OUString( RTL_CONSTASCII_USTRINGPARAM( "Unknown property: " ) ) + rPropertyName,
+ static_cast< cppu::OWeakObject * >( this ) );
+ }
}
}
else if(!pType && m_pDoc &&
@@ -898,37 +909,34 @@ void SwXFieldMaster::removeVetoableChangeListener(const OUString& /*PropertyName
void SwXFieldMaster::dispose(void) throw( uno::RuntimeException )
{
- vos::OGuard aGuard(Application::GetSolarMutex());
- SwFieldType* pFldType = GetFldType(sal_True);
- if(pFldType)
+ vos::OGuard aGuard( Application::GetSolarMutex() );
+
+ SwFieldType* pFldType = GetFldType( sal_True );
+ if ( pFldType != NULL )
{
sal_uInt16 nTypeIdx = USHRT_MAX;
const SwFldTypes* pTypes = GetDoc()->GetFldTypes();
- for( sal_uInt16 i = 0; i < pTypes->Count(); i++ )
+ for ( sal_uInt16 i = 0; i < pTypes->Count(); i++ )
{
- if((*pTypes)[i] == pFldType)
+ if ( ( *pTypes )[i] == pFldType )
nTypeIdx = i;
}
// zuerst alle Felder loeschen
- SwIterator<SwFmtFld,SwFieldType> aIter( *pFldType );
+ SwIterator< SwFmtFld, SwFieldType > aIter( *pFldType );
SwFmtFld* pFld = aIter.First();
- while(pFld)
+ while ( pFld != NULL )
{
- // Feld im Undo?
- SwTxtFld *pTxtFld = pFld->GetTxtFld();
- if(pTxtFld && pTxtFld->GetTxtNode().GetNodes().IsDocNodes() )
+ SwTxtFld* pTxtFld = pFld->GetTxtFld();
+ if ( pTxtFld != NULL
+ && pTxtFld->GetTxtNode().GetNodes().IsDocNodes() )
{
- SwTxtNode& rTxtNode = (SwTxtNode&)*pTxtFld->GetpTxtNode();
- SwPaM aPam(rTxtNode, *pTxtFld->GetStart());
- aPam.SetMark();
- aPam.Move();
- GetDoc()->DeleteAndJoin(aPam);
+ SwTxtFld::DeleteTxtFld( *pTxtFld );
}
pFld = aIter.Next();
}
// dann den FieldType loeschen
- GetDoc()->RemoveFldType(nTypeIdx);
+ GetDoc()->RemoveFldType( nTypeIdx );
}
else
throw uno::RuntimeException();
@@ -1877,38 +1885,41 @@ void SwXTextField::attach( const uno::Reference< text::XTextRange > & xTextRange
uno::Reference< text::XTextRange > SwXTextField::getAnchor(void) throw( uno::RuntimeException )
{
- vos::OGuard aGuard(Application::GetSolarMutex());
- uno::Reference< text::XTextRange > aRef;
- SwField* pField = (SwField*)GetField();
- if(pField)
+ vos::OGuard aGuard( Application::GetSolarMutex() );
+
+ uno::Reference< text::XTextRange > aRef;
+
+ SwField* pField = (SwField*) GetField();
+ if ( pField != NULL )
{
const SwTxtFld* pTxtFld = m_pFmtFld->GetTxtFld();
- if(!pTxtFld)
+ if ( !pTxtFld )
throw uno::RuntimeException();
- const SwTxtNode& rTxtNode = pTxtFld->GetTxtNode();
-
- SwPaM aPam(rTxtNode, *pTxtFld->GetStart() + 1, rTxtNode, *pTxtFld->GetStart());
- aRef = SwXTextRange::CreateXTextRange(
- *m_pDoc, *aPam.GetPoint(), aPam.GetMark());
+ boost::shared_ptr< SwPaM > pPamForTxtFld;
+ SwTxtFld::GetPamForTxtFld( *pTxtFld, pPamForTxtFld );
+ if ( pPamForTxtFld.get() != NULL )
+ {
+ aRef = SwXTextRange::CreateXTextRange( *m_pDoc,
+ *(pPamForTxtFld->GetPoint()),
+ pPamForTxtFld->GetMark() );
+ }
}
return aRef;
}
+
void SwXTextField::dispose(void) throw( uno::RuntimeException )
{
- vos::OGuard aGuard(Application::GetSolarMutex());
- SwField* pField = (SwField*)GetField();
- if(pField)
+ vos::OGuard aGuard( Application::GetSolarMutex() );
+ SwField* pField = (SwField*) GetField();
+ if ( pField != NULL )
{
- UnoActionContext aContext(GetDoc());
- const SwTxtFld* pTxtFld = m_pFmtFld->GetTxtFld();
- SwTxtNode& rTxtNode = (SwTxtNode&)*pTxtFld->GetpTxtNode();
- SwPaM aPam(rTxtNode, *pTxtFld->GetStart());
- aPam.SetMark();
- aPam.Move();
- GetDoc()->DeleteAndJoin(aPam);
+ UnoActionContext aContext( GetDoc() );
+
+ ASSERT( m_pFmtFld->GetTxtFld(), "<SwXTextField::dispose()> - missing <SwTxtFld> --> crash" );
+ SwTxtFld::DeleteTxtFld( *( m_pFmtFld->GetTxtFld() ) );
}
if ( m_pTextObject )
@@ -1969,19 +1980,19 @@ void SwXTextField::setPropertyValue(const OUString& rPropertyName, const uno::An
if ( pEntry->nFlags & beans::PropertyAttribute::READONLY)
throw beans::PropertyVetoException ( OUString ( RTL_CONSTASCII_USTRINGPARAM ( "Property is read-only: " ) ) + rPropertyName, static_cast < cppu::OWeakObject * > ( this ) );
- if(pField)
+ if ( pField )
{
// Sonderbehandlung Serienbrieffeld
sal_uInt16 nWhich = pField->Which();
- if( RES_DBFLD == nWhich &&
- (rPropertyName.equalsAsciiL( SW_PROP_NAME(UNO_NAME_DATA_BASE_NAME)) ||
- rPropertyName.equalsAsciiL( SW_PROP_NAME(UNO_NAME_DATA_BASE_URL))||
- rPropertyName.equalsAsciiL( SW_PROP_NAME(UNO_NAME_DATA_TABLE_NAME))||
- rPropertyName.equalsAsciiL( SW_PROP_NAME(UNO_NAME_DATA_COLUMN_NAME))))
+ if ( RES_DBFLD == nWhich
+ && ( rPropertyName.equalsAsciiL( SW_PROP_NAME( UNO_NAME_DATA_BASE_NAME ) )
+ || rPropertyName.equalsAsciiL( SW_PROP_NAME( UNO_NAME_DATA_BASE_URL ) )
+ || rPropertyName.equalsAsciiL( SW_PROP_NAME( UNO_NAME_DATA_TABLE_NAME ) )
+ || rPropertyName.equalsAsciiL( SW_PROP_NAME( UNO_NAME_DATA_COLUMN_NAME ) ) ) )
{
// hier muss ein neuer Feldtyp angelegt werden und
// das Feld an den neuen Typ umgehaengt werden
- DBG_WARNING("not implemented");
+ DBG_WARNING( "not implemented" );
}
else
{
@@ -2001,30 +2012,30 @@ void SwXTextField::setPropertyValue(const OUString& rPropertyName, const uno::An
}
pField->PutValue( rValue, pEntry->nWID );
- //#i100374# notify SwPostIt about new field content
- if (RES_POSTITFLD== nWhich && m_pFmtFld)
- {
- const_cast<SwFmtFld*>(m_pFmtFld)->Broadcast(SwFmtFldHint( 0, SWFMTFLD_CHANGED ));
- }
+ //#i100374# notify SwPostIt about new field content
+ if ( RES_POSTITFLD == nWhich && m_pFmtFld )
+ {
+ const_cast< SwFmtFld* >( m_pFmtFld )->Broadcast( SwFmtFldHint( 0, SWFMTFLD_CHANGED ) );
+ }
//#114571# changes of the expanded string have to be notified
//#to the SwTxtFld
- if(RES_DBFLD == nWhich && m_pFmtFld->GetTxtFld())
+ if ( RES_DBFLD == nWhich && m_pFmtFld->GetTxtFld() )
{
m_pFmtFld->GetTxtFld()->ExpandTxtFld();
}
- //#i100374# changing a document field should set the modify flag
- SwDoc* pDoc = GetDoc();
- if (pDoc)
- pDoc->SetModified();
+ //#i100374# changing a document field should set the modify flag
+ SwDoc* pDoc = GetDoc();
+ if ( pDoc )
+ pDoc->SetModified();
}
- else if(m_pProps)
+ else if ( m_pProps )
{
String* pStr = 0;
sal_Bool* pBool = 0;
- switch(pEntry->nWID)
+ switch (pEntry->nWID)
{
case FIELD_PROP_PAR1:
pStr = &m_pProps->sPar1;
@@ -2045,54 +2056,54 @@ void SwXTextField::setPropertyValue(const OUString& rPropertyName, const uno::An
case FIELD_PROP_SUBTYPE:
m_pProps->nSubType = SWUnoHelper::GetEnumAsInt32( rValue );
break;
- case FIELD_PROP_BYTE1 :
+ case FIELD_PROP_BYTE1:
rValue >>= m_pProps->nByte1;
break;
- case FIELD_PROP_BOOL1 :
+ case FIELD_PROP_BOOL1:
pBool = &m_pProps->bBool1;
break;
- case FIELD_PROP_BOOL2 :
+ case FIELD_PROP_BOOL2:
pBool = &m_pProps->bBool2;
break;
- case FIELD_PROP_BOOL3 :
+ case FIELD_PROP_BOOL3:
pBool = &m_pProps->bBool3;
break;
case FIELD_PROP_BOOL4:
pBool = &m_pProps->bBool4;
- break;
- case FIELD_PROP_DATE :
- {
- if(rValue.getValueType() != ::getCppuType(static_cast<const util::Date*>(0)))
+ break;
+ case FIELD_PROP_DATE:
+ {
+ if ( rValue.getValueType() != ::getCppuType( static_cast< const util::Date* >( 0 ) ) )
throw lang::IllegalArgumentException();
- util::Date aTemp = *(const util::Date*)rValue.getValue();
- m_pProps->aDate = Date(aTemp.Day, aTemp.Month, aTemp.Year);
+ util::Date aTemp = *(const util::Date*) rValue.getValue();
+ m_pProps->aDate = Date( aTemp.Day, aTemp.Month, aTemp.Year );
}
- break;
+ break;
case FIELD_PROP_USHORT1:
- case FIELD_PROP_USHORT2:
+ case FIELD_PROP_USHORT2:
{
- sal_Int16 nVal = 0;
- rValue >>= nVal;
- if( FIELD_PROP_USHORT1 == pEntry->nWID)
- m_pProps->nUSHORT1 = nVal;
- else
- m_pProps->nUSHORT2 = nVal;
- }
+ sal_Int16 nVal = 0;
+ rValue >>= nVal;
+ if ( FIELD_PROP_USHORT1 == pEntry->nWID )
+ m_pProps->nUSHORT1 = nVal;
+ else
+ m_pProps->nUSHORT2 = nVal;
+ }
break;
case FIELD_PROP_SHORT1:
rValue >>= m_pProps->nSHORT1;
break;
case FIELD_PROP_DOUBLE:
- if(rValue.getValueType() != ::getCppuType(static_cast<const double*>(0)))
+ if ( rValue.getValueType() != ::getCppuType( static_cast< const double* >( 0 ) ) )
throw lang::IllegalArgumentException();
- m_pProps->fDouble = *(double*)rValue.getValue();
+ m_pProps->fDouble = *(double*) rValue.getValue();
break;
- case FIELD_PROP_DATE_TIME :
- if(!m_pProps->pDateTime)
+ case FIELD_PROP_DATE_TIME:
+ if ( !m_pProps->pDateTime )
m_pProps->pDateTime = new util::DateTime;
- rValue >>= (*m_pProps->pDateTime);
+ rValue >>= ( *m_pProps->pDateTime );
break;
case FIELD_PROP_PROP_SEQ:
rValue >>= m_pProps->aPropSeq;
@@ -2101,12 +2112,12 @@ void SwXTextField::setPropertyValue(const OUString& rPropertyName, const uno::An
rValue >>= m_pProps->aStrings;
break;
}
- if( pStr )
+ if ( pStr )
::GetString( rValue, *pStr );
- else if( pBool )
+ else if ( pBool )
{
- if( rValue.getValueType() == getCppuBooleanType() )
- *pBool = *(sal_Bool*)rValue.getValue();
+ if ( rValue.getValueType() == getCppuBooleanType() )
+ *pBool = *(sal_Bool*) rValue.getValue();
else
throw lang::IllegalArgumentException();
}
@@ -2369,10 +2380,8 @@ void SwXTextField::update( ) throw (uno::RuntimeException)
}
break;
}
- // --> FME 2004-10-06 #116480#
// Text formatting has to be triggered.
- const_cast<SwFmtFld*>(m_pFmtFld)->ModifyNotification( 0, 0 );
- // <--
+ const_cast< SwFmtFld* >( m_pFmtFld )->ModifyNotification( 0, 0 );
}
else
m_bCallUpdate = sal_True;
diff --git a/sw/source/core/unocore/unoframe.cxx b/sw/source/core/unocore/unoframe.cxx
index 47cb131d7243..ab3ae3bf65bc 100644
--- a/sw/source/core/unocore/unoframe.cxx
+++ b/sw/source/core/unocore/unoframe.cxx
@@ -36,10 +36,8 @@
#include <svx/xflhtit.hxx>
#include <svx/xfltrit.hxx>
#include <editeng/memberids.hrc>
-
#include <swtypes.hxx>
#include <cmdid.h>
-
#include <memory>
#include <hints.hxx>
#include <doc.hxx>
@@ -105,10 +103,8 @@
#include <vos/mutex.hxx>
#include <vcl/svapp.hxx>
#include <sfx2/printer.hxx>
-//Begin Bug 119922
#include <sfx2/docfile.hxx>
#include <sfx2/docfilt.hxx>
-//End Bug 119922
#include <SwStyleNameMapper.hxx>
#include <xmloff/xmlcnitm.hxx>
#include <poolfmt.hxx>
@@ -121,9 +117,7 @@
#include <toolkit/helper/vclunohelper.hxx>
#include <svx/fmmodel.hxx>
#include <switerator.hxx>
-
-//UUUU
-#include <unobrushitemhelper.hxx>
+#include <svx/unobrushitemhelper.hxx>
#include <svx/xfillit0.hxx>
#include <svx/xbtmpit.hxx>
#include <svx/xgrscit.hxx>
@@ -139,6 +133,8 @@
#include <svx/xflboxy.hxx>
#include <svx/xflbckit.hxx>
#include <svx/unoshape.hxx>
+#include <swunohelper.hxx>
+#include <drawdoc.hxx>
// from fefly1.cxx
extern sal_Bool lcl_ChkAndSetNewAnchor( SwEditShell& rEditShell, const SwFlyFrm& rFly, SfxItemSet& rSet );
@@ -153,9 +149,6 @@ using ::com::sun::star::style::XStyleFamiliesSupplier;
const sal_Char __FAR_DATA sPackageProtocol[] = "vnd.sun.star.Package:";
const sal_Char __FAR_DATA sGraphicObjectProtocol[] = "vnd.sun.star.GraphicObject:";
-//UUUU
-#define OWN_ATTR_FILLBMP_MODE (OWN_ATTR_VALUE_START+45)
-
/****************************************************************************
Rahmenbeschreibung
****************************************************************************/
@@ -204,6 +197,13 @@ sal_Bool BaseFrameProperties_Impl::FillBaseProperties(SfxItemSet& rToSet,
const sal_Bool bOasis /*sal_False*/ )
//End Bug 119922
{
+ //UUUU assert when the target SfxItemSet has no parent. It *should* have the pDfltFrmFmt
+ // from SwDoc set as parent (or similar) to have the necessary XFILL_NONE in the ItemSet
+ if(!rToSet.GetParent())
+ {
+ OSL_ENSURE(false, "OOps, target SfxItemSet *should* have a parent which contains XFILL_NONE as XFillStyleItem (!)");
+ }
+
sal_Bool bRet = sal_True;
//Anker kommt auf jeden Fall in den Set
SwFmtAnchor aAnchor ( static_cast < const SwFmtAnchor & > ( rFromSet.Get ( RES_ANCHOR ) ) );
@@ -298,7 +298,10 @@ sal_Bool BaseFrameProperties_Impl::FillBaseProperties(SfxItemSet& rToSet,
// in the obvious order some attributes may be wrong since they are set by the 1st set, but not
// redefined as needed by the 2nd set when they are default (and thus no tset) in the 2nd set. If
// it is necessary for any reason to set both (it should not) a in-between step will be needed
- // that resets the items for FillAttributes in rToSet to default
+ // that resets the items for FillAttributes in rToSet to default.
+ // Note: There are other mechanisms in XMLOFF to pre-sort this relationship already, but this version
+ // was used initially, is tested and works. Keep it to be able to react when another feed adds attributes
+ // from both sets.
if(bSvxBrushItemPropertiesUsed && !bXFillStyleItemUsed)
{
//UUUU create a temporary SvxBrushItem, fill the attributes to it and use it to set
@@ -910,43 +913,50 @@ inline void lcl_FillCol ( SfxItemSet &rToSet, const :: SfxItemSet &rFromSet, con
rToSet.Put(aCol);
}
}
-sal_Bool SwFrameProperties_Impl::AnyToItemSet(SwDoc *pDoc, SfxItemSet& rSet, SfxItemSet&, sal_Bool& rSizeFound)
+sal_Bool SwFrameProperties_Impl::AnyToItemSet(
+ SwDoc *pDoc,
+ SfxItemSet& rSet,
+ SfxItemSet&,
+ sal_Bool& rSizeFound )
{
- //Properties fuer alle Frames
- const ::uno::Any *pStyleName;
- SwDocStyleSheet* pStyle = NULL;
- sal_Bool bRet;
+ sal_Bool bRet = sal_False;
- if ( GetProperty ( FN_UNO_FRAME_STYLE_NAME, 0, pStyleName ) )
+ SwDocStyleSheet* pStyle = NULL;
+ const ::uno::Any *pStyleName;
+ if ( GetProperty( FN_UNO_FRAME_STYLE_NAME, 0, pStyleName ) )
{
- OUString sStyle;
- *pStyleName >>= sStyle;
- pStyle = (SwDocStyleSheet*)pDoc->GetDocShell()->GetStyleSheetPool()->Find(sStyle,
- SFX_STYLE_FAMILY_FRAME);
+ OUString sTmpStylename;
+ *pStyleName >>= sTmpStylename;
+ String sStylename;
+ SwStyleNameMapper::FillUIName( String(sTmpStylename), sStylename, nsSwGetPoolIdFromName::GET_POOLID_FRMFMT, sal_True );
+ pStyle =
+ (SwDocStyleSheet*) pDoc->GetDocShell()->GetStyleSheetPool()->Find( sStylename, SFX_STYLE_FAMILY_FRAME );
}
const ::uno::Any* pColumns = NULL;
- GetProperty (RES_COL, MID_COLUMNS, pColumns);
- if ( pStyle )
+ GetProperty( RES_COL, MID_COLUMNS, pColumns );
+ if ( pStyle != NULL )
{
rtl::Reference< SwDocStyleSheet > xStyle( new SwDocStyleSheet( *pStyle ) );
- const :: SfxItemSet *pItemSet = &xStyle->GetItemSet();
- bRet = FillBaseProperties( rSet, *pItemSet, rSizeFound );
- lcl_FillCol ( rSet, *pItemSet, pColumns );
+ const ::SfxItemSet *pItemSet = &xStyle->GetItemSet();
+ bRet = FillBaseProperties( rSet, *pItemSet, rSizeFound );
+ lcl_FillCol( rSet, *pItemSet, pColumns );
}
else
{
- const :: SfxItemSet *pItemSet = &pDoc->GetFrmFmtFromPool( RES_POOLFRM_FRAME )->GetAttrSet();
- bRet = FillBaseProperties( rSet, *pItemSet, rSizeFound );
- lcl_FillCol ( rSet, *pItemSet, pColumns );
+ const ::SfxItemSet *pItemSet = &pDoc->GetFrmFmtFromPool( RES_POOLFRM_FRAME )->GetAttrSet();
+ bRet = FillBaseProperties( rSet, *pItemSet, rSizeFound );
+ lcl_FillCol( rSet, *pItemSet, pColumns );
}
+
const ::uno::Any* pEdit;
- if(GetProperty(RES_EDIT_IN_READONLY, 0, pEdit))
+ if ( GetProperty( RES_EDIT_IN_READONLY, 0, pEdit ) )
{
- SfxBoolItem aBool(RES_EDIT_IN_READONLY);
- ((SfxPoolItem&)aBool).PutValue(*pEdit, 0);
- rSet.Put(aBool);
+ SfxBoolItem aBool( RES_EDIT_IN_READONLY );
+ ( (SfxPoolItem&) aBool ).PutValue( *pEdit, 0 );
+ rSet.Put( aBool );
}
+
return bRet;
}
/****************************************************************************
@@ -982,23 +992,24 @@ inline void lcl_FillMirror ( SfxItemSet &rToSet, const :: SfxItemSet &rFromSet,
}
}
-sal_Bool SwGraphicProperties_Impl::AnyToItemSet(
- SwDoc* pDoc,
- SfxItemSet& rFrmSet,
- SfxItemSet& rGrSet,
- sal_Bool& rSizeFound)
+sal_Bool SwGraphicProperties_Impl::AnyToItemSet(
+ SwDoc* pDoc,
+ SfxItemSet& rFrmSet,
+ SfxItemSet& rGrSet,
+ sal_Bool& rSizeFound )
{
- //Properties fuer alle Frames
- sal_Bool bRet;
- const ::uno::Any *pStyleName;
- SwDocStyleSheet* pStyle = NULL;
+ sal_Bool bRet = sal_False;
- if ( GetProperty ( FN_UNO_FRAME_STYLE_NAME, 0, pStyleName ) )
+ SwDocStyleSheet* pStyle = NULL;
+ const ::uno::Any *pStyleName;
+ if ( GetProperty( FN_UNO_FRAME_STYLE_NAME, 0, pStyleName ) )
{
- OUString sStyle;
- *pStyleName >>= sStyle;
- pStyle = (SwDocStyleSheet*)pDoc->GetDocShell()->GetStyleSheetPool()->Find(sStyle,
- SFX_STYLE_FAMILY_FRAME);
+ OUString sTmpStylename;
+ *pStyleName >>= sTmpStylename;
+ String sStylename;
+ SwStyleNameMapper::FillUIName( String(sTmpStylename), sStylename, nsSwGetPoolIdFromName::GET_POOLID_FRMFMT, sal_True );
+ pStyle =
+ (SwDocStyleSheet*) pDoc->GetDocShell()->GetStyleSheetPool()->Find( sStylename, SFX_STYLE_FAMILY_FRAME );
}
const ::uno::Any* pHEvenMirror = 0;
@@ -1008,24 +1019,22 @@ sal_Bool SwGraphicProperties_Impl::AnyToItemSet(
GetProperty(RES_GRFATR_MIRRORGRF, MID_MIRROR_HORZ_ODD_PAGES, pHOddMirror);
GetProperty(RES_GRFATR_MIRRORGRF, MID_MIRROR_VERT, pVMirror);
- if ( pStyle )
+ if ( pStyle != NULL )
{
rtl::Reference< SwDocStyleSheet > xStyle( new SwDocStyleSheet(*pStyle) );
const :: SfxItemSet *pItemSet = &xStyle->GetItemSet();
- //Begin Bug 119922
sal_Bool bOasis = sal_False;
{
const SfxMedium* pMedium = pDoc->GetDocShell()->GetMedium();
- const SfxFilter * pFilter = pMedium
- ? pMedium->GetFilter()
- : NULL;
- if ( pMedium && pFilter )
+ const SfxFilter * pFilter = pMedium != NULL
+ ? pMedium->GetFilter()
+ : NULL;
+ if ( pFilter != NULL )
{
bOasis = pFilter->GetVersion() > SOFFICE_FILEFORMAT_60;
}
}
bRet = FillBaseProperties( rFrmSet, *pItemSet, rSizeFound, bOasis );
- //End Bug 119922
lcl_FillMirror ( rGrSet, *pItemSet, pHEvenMirror, pHOddMirror, pVMirror, bRet );
}
else
@@ -1035,8 +1044,7 @@ sal_Bool SwGraphicProperties_Impl::AnyToItemSet(
lcl_FillMirror ( rGrSet, *pItemSet, pHEvenMirror, pHOddMirror, pVMirror, bRet );
}
-
- static const :: sal_uInt16 nIDs[] =
+ static const ::sal_uInt16 nIDs[] =
{
RES_GRFATR_CROPGRF,
RES_GRFATR_ROTATION,
@@ -1052,14 +1060,14 @@ sal_Bool SwGraphicProperties_Impl::AnyToItemSet(
0
};
const ::uno::Any* pAny;
- for(sal_Int16 nIndex = 0; nIDs[nIndex]; nIndex++)
+ for ( sal_Int16 nIndex = 0; nIDs[nIndex]; nIndex++ )
{
- sal_uInt8 nMId = RES_GRFATR_CROPGRF == nIDs[nIndex] ? CONVERT_TWIPS : 0;
- if(GetProperty(nIDs[nIndex], nMId, pAny ))
+ const sal_uInt8 nMId = RES_GRFATR_CROPGRF == nIDs[nIndex] ? CONVERT_TWIPS : 0;
+ if ( GetProperty( nIDs[nIndex], nMId, pAny ) )
{
SfxPoolItem* pItem = ::GetDfltAttr( nIDs[nIndex] )->Clone();
- bRet &= pItem->PutValue(*pAny, nMId );
- rGrSet.Put(*pItem);
+ bRet &= pItem->PutValue( *pAny, nMId );
+ rGrSet.Put( *pItem );
delete pItem;
}
}
@@ -1067,6 +1075,7 @@ sal_Bool SwGraphicProperties_Impl::AnyToItemSet(
return bRet;
}
+
class SwOLEProperties_Impl : public SwFrameProperties_Impl
{
public:
@@ -1077,17 +1086,22 @@ public:
virtual sal_Bool AnyToItemSet( SwDoc* pDoc, SfxItemSet& rFrmSet, SfxItemSet& rSet, sal_Bool& rSizeFound);
};
-sal_Bool SwOLEProperties_Impl::AnyToItemSet(
- SwDoc* pDoc, SfxItemSet& rFrmSet, SfxItemSet& rSet, sal_Bool& rSizeFound)
+
+sal_Bool SwOLEProperties_Impl::AnyToItemSet(
+ SwDoc* pDoc,
+ SfxItemSet& rFrmSet,
+ SfxItemSet& rSet,
+ sal_Bool& rSizeFound )
{
const ::uno::Any* pTemp;
- if(!GetProperty(FN_UNO_CLSID, 0, pTemp) && !GetProperty(FN_UNO_STREAM_NAME, 0, pTemp) )
+ if ( !GetProperty( FN_UNO_CLSID, 0, pTemp ) && !GetProperty( FN_UNO_STREAM_NAME, 0, pTemp ) )
return sal_False;
- SwFrameProperties_Impl::AnyToItemSet( pDoc, rFrmSet, rSet, rSizeFound);
- //
+ SwFrameProperties_Impl::AnyToItemSet( pDoc, rFrmSet, rSet, rSizeFound );
+
return sal_True;
}
+
/******************************************************************
* SwXFrame
******************************************************************/
@@ -1282,7 +1296,7 @@ SdrObject *SwXFrame::GetOrCreateSdrObject( SwFlyFrmFmt *pFmt )
{
SwDoc *pDoc = pFmt->GetDoc();
// --> OD 2005-08-08 #i52858# - method name changed
- SdrModel *pDrawModel = pDoc->GetOrCreateDrawModel();
+ SwDrawModel* pDrawModel = pDoc->GetOrCreateDrawModel();
// <--
SwFlyDrawContact* pContactObject = new SwFlyDrawContact( pFmt, *pDrawModel );
pObject = pContactObject->GetMaster();
@@ -1674,7 +1688,7 @@ void SwXFrame::setPropertyValue(const :: OUString& rPropertyName, const :: uno::
{
SdrObject* pObject =
GetOrCreateSdrObject( (SwFlyFrmFmt*)pFmt );
- SdrModel *pDrawModel = pDoc->GetDrawModel();
+ SwDrawModel* pDrawModel = pDoc->GetDrawModel();
pDrawModel->GetPage(0)->
SetNavigationPosition(pObject->GetNavigationPosition(), nZOrder);
}
@@ -1727,7 +1741,7 @@ void SwXFrame::setPropertyValue(const :: OUString& rPropertyName, const :: uno::
if(RES_BACKGROUND == pEntry->nWID)
{
const SwAttrSet& rSet = pFmt->GetAttrSet();
- const SvxBrushItem aOriginalBrushItem(getSvxBrushItemFromSourceSet(rSet));
+ const SvxBrushItem aOriginalBrushItem(getSvxBrushItemFromSourceSet(rSet, RES_BACKGROUND));
SvxBrushItem aChangedBrushItem(aOriginalBrushItem);
aChangedBrushItem.PutValue(aValue, nMemberId);
@@ -1763,6 +1777,64 @@ void SwXFrame::setPropertyValue(const :: OUString& rPropertyName, const :: uno::
bDone = true;
}
+ switch(nMemberId)
+ {
+ case MID_NAME:
+ {
+ //UUUU when named items get set, replace these with the NameOrIndex items
+ // which exist already in the pool
+ switch(pEntry->nWID)
+ {
+ case XATTR_FILLGRADIENT:
+ case XATTR_FILLHATCH:
+ case XATTR_FILLBITMAP:
+ case XATTR_FILLFLOATTRANSPARENCE:
+ {
+ OUString aTempName;
+
+ if(!(aValue >>= aTempName ))
+ {
+ throw lang::IllegalArgumentException();
+ }
+
+ bDone = SvxShape::SetFillAttribute(pEntry->nWID, aTempName, aSet);
+ break;
+ }
+ default:
+ {
+ break;
+ }
+ }
+ break;
+ }
+ case MID_GRAFURL:
+ {
+ //UUUU Bitmap also has the MID_GRAFURL mode where a Bitmap URL is used
+ switch(pEntry->nWID)
+ {
+ case XATTR_FILLBITMAP:
+ {
+ const Graphic aNullGraphic;
+ XFillBitmapItem aXFillBitmapItem(aSet.GetPool(), aNullGraphic);
+
+ aXFillBitmapItem.PutValue(aValue, nMemberId);
+ aSet.Put(aXFillBitmapItem);
+ bDone = true;
+ break;
+ }
+ default:
+ {
+ break;
+ }
+ }
+ break;
+ }
+ default:
+ {
+ break;
+ }
+ }
+
if(!bDone)
{
m_pPropSet->setPropertyValue(*pEntry, aValue, aSet);
@@ -1830,7 +1902,9 @@ void SwXFrame::setPropertyValue(const :: OUString& rPropertyName, const :: uno::
throw lang::IllegalArgumentException();
}
else
+ {
pFmt->SetFmtAttr(aSet);
+ }
}
}
else if(IsDescriptor())
@@ -1941,26 +2015,25 @@ uno::Any SwXFrame::getPropertyValue(const OUString& rPropertyName)
{
String sGrfName;
const SwNodeIndex* pIdx = pFmt->GetCntnt().GetCntntIdx();
- if(pIdx)
+ if ( pIdx )
{
- SwNodeIndex aIdx(*pIdx, 1);
-// SwNoTxtNode* pNoTxt = aIdx.GetNode().GetNoTxtNode();
+ SwNodeIndex aIdx( *pIdx, 1 );
SwGrfNode* pGrfNode = aIdx.GetNode().GetGrfNode();
- if(!pGrfNode)
+ if ( !pGrfNode )
throw uno::RuntimeException();
- if( pGrfNode->IsGrfLink() )
+ if ( pGrfNode->IsGrfLink() )
{
- pFmt->GetDoc()->GetGrfNms( *(SwFlyFrmFmt*)pFmt, &sGrfName, 0 );
+ pFmt->GetDoc()->GetGrfNms( *(SwFlyFrmFmt*) pFmt, &sGrfName, 0 );
}
else
{
- String sPrefix( RTL_CONSTASCII_STRINGPARAM(sGraphicObjectProtocol) );
+ String sPrefix( RTL_CONSTASCII_STRINGPARAM( sGraphicObjectProtocol ) );
String sId( pGrfNode->GetGrfObj().GetUniqueID(),
- RTL_TEXTENCODING_ASCII_US );
- (sGrfName = sPrefix) += sId;
+ RTL_TEXTENCODING_ASCII_US );
+ ( sGrfName = sPrefix ) += sId;
}
}
- aAny <<= OUString(sGrfName);
+ aAny <<= OUString( sGrfName );
}
else if( FN_UNO_REPLACEMENT_GRAPHIC_U_R_L == pEntry->nWID)
{
@@ -2157,7 +2230,7 @@ uno::Any SwXFrame::getPropertyValue(const OUString& rPropertyName)
if(RES_BACKGROUND == pEntry->nWID)
{
//UUUU
- const SvxBrushItem aOriginalBrushItem(getSvxBrushItemFromSourceSet(rSet));
+ const SvxBrushItem aOriginalBrushItem(getSvxBrushItemFromSourceSet(rSet, RES_BACKGROUND));
if(!aOriginalBrushItem.QueryValue(aAny, nMemberId))
{
@@ -2291,42 +2364,6 @@ beans::PropertyState SwXFrame::getPropertyState( const OUString& rPropertyName )
return aStates.getConstArray()[0];
}
-//UUUU
-bool SwXFrame::needToMapFillItemsToSvxBrushItemTypes() const
-{
- SwFrmFmt* pFmt = GetFrmFmt();
-
- if(!pFmt)
- {
- return false;
- }
-
- const SwAttrSet& rFmtSet = pFmt->GetAttrSet();
- const XFillStyleItem* pXFillStyleItem(static_cast< const XFillStyleItem* >(rFmtSet.GetItem(XATTR_FILLSTYLE, false)));
-
- if(!pXFillStyleItem)
- {
- return false;
- }
-
- //UUUU here different FillStyles can be excluded for export; it will depend on the
- // quality these fallbacks can reach. That again is done in getSvxBrushItemFromSourceSet,
- // take a look there how the superset of DrawObject FillStyles is mapped to SvxBrushItem.
- // For now, take them all - except XFILL_NONE
-
- if(XFILL_NONE != pXFillStyleItem->GetValue())
- {
- return true;
- }
-
- //if(XFILL_SOLID == pXFillStyleItem->GetValue() || XFILL_BITMAP == pXFillStyleItem->GetValue())
- //{
- // return true;
- //}
-
- return false;
-}
-
uno::Sequence< beans::PropertyState > SwXFrame::getPropertyStates(
const uno::Sequence< OUString >& aPropertyNames )
throw(beans::UnknownPropertyException, uno::RuntimeException)
@@ -2372,7 +2409,7 @@ uno::Sequence< beans::PropertyState > SwXFrame::getPropertyStates(
// as beans::PropertyState_DIRECT_VALUE to let users of this property call
// getPropertyValue where the member properties will be mapped from the
// fill attributes to the according SvxBrushItem entries
- else if(RES_BACKGROUND == pEntry->nWID && needToMapFillItemsToSvxBrushItemTypes())
+ else if(RES_BACKGROUND == pEntry->nWID && SWUnoHelper::needToMapFillItemsToSvxBrushItemTypes(rFmtSet))
{
pStates[i] = beans::PropertyState_DIRECT_VALUE;
}
@@ -2682,6 +2719,10 @@ void SwXFrame::attachToRange(const uno::Reference< text::XTextRange > & xTextRan
SfxItemSet aGrSet(pDoc->GetAttrPool(), aGrAttrRange );
SfxItemSet aFrmSet(pDoc->GetAttrPool(), aFrmAttrRange );
+
+ //UUUU set correct parent to get the XFILL_NONE FillStyle as needed
+ aFrmSet.SetParent(&pDoc->GetDfltFrmFmt()->GetAttrSet());
+
//jetzt muessen die passenden Items in den Set
sal_Bool bSizeFound;
if(!pProps->AnyToItemSet( pDoc, aFrmSet, aGrSet, bSizeFound))
diff --git a/sw/source/core/unocore/unomap.cxx b/sw/source/core/unocore/unomap.cxx
index 85ca8e7419af..1d2c108d84f6 100644
--- a/sw/source/core/unocore/unomap.cxx
+++ b/sw/source/core/unocore/unomap.cxx
@@ -297,6 +297,9 @@ SwUnoPropertyMapProvider::~SwUnoPropertyMapProvider()
// OD 18.09.2003 #i18732# - add property
// OD 2004-05-05 #i28701# - add property 'WrapInfluenceOnObjPos'
// OD 2009-07-13 #i73249# - add properties 'Title' and 'Description'
+//UUUU all users of COMMON_FRAME_PROPERTIES add the new XATTR_FILL_FIRST, XATTR_FILL_LAST FillStyle,
+// thus it may be possible to remove the RES_BACKGROUND entries from SvxBrushItem completely (this includes
+// all using UNO_NAME_BACK_* slots) in the future
#define COMMON_FRAME_PROPERTIES \
{ SW_PROP_NMID(UNO_NAME_ANCHOR_PAGE_NO), RES_ANCHOR, CPPU_E2T(CPPUTYPE_INT16), PROPERTY_NONE, MID_ANCHOR_PAGENUM }, \
{ SW_PROP_NMID(UNO_NAME_ANCHOR_TYPE), RES_ANCHOR, CPPU_E2T(CPPUTYPE_TXTCNTANCHOR), PROPERTY_NONE, MID_ANCHOR_ANCHORTYPE}, \
@@ -582,6 +585,14 @@ const SfxItemPropertyMapEntry* SwUnoPropertyMapProvider::GetPropertyMapEntries(s
COMMON_TEXT_CONTENT_PROPERTIES
{ SW_PROP_NMID(UNO_NAME_CHAR_STYLE_NAME), RES_TXTATR_CHARFMT, CPPU_E2T(CPPUTYPE_OUSTRING), PropertyAttribute::MAYBEVOID, 0},\
{ SW_PROP_NMID(UNO_NAME_CHAR_STYLE_NAMES), FN_UNO_CHARFMT_SEQUENCE, CPPU_E2T(CPPUTYPE_OUSTRINGS), PropertyAttribute::MAYBEVOID, 0},\
+
+ //UUUU added FillProperties for SW, same as FILL_PROPERTIES in svx
+ // but need own defines in Writer due to later association of strings
+ // and uno types (see loop at end of this method and definition of SW_PROP_NMID)
+ // This entry is for adding that properties to style import/export
+ //UUUU Added for paragraph backgrounds, this is for paragraph itself
+ FILL_PROPERTIES_SW
+
{0,0,0,0,0,0}
};
aMapEntriesArr[nPropertyId] = aParagraphMap_Impl;
@@ -609,6 +620,14 @@ const SfxItemPropertyMapEntry* SwUnoPropertyMapProvider::GetPropertyMapEntries(s
TABSTOPS_MAP_ENTRY
COMMON_TEXT_CONTENT_PROPERTIES
{ SW_PROP_NMID(UNO_NAME_PARA_AUTO_STYLE_NAME), RES_AUTO_STYLE, CPPU_E2T(CPPUTYPE_OUSTRING), PropertyAttribute::MAYBEVOID, 0},
+
+ //UUUU added FillProperties for SW, same as FILL_PROPERTIES in svx
+ // but need own defines in Writer due to later association of strings
+ // and uno types (see loop at end of this method and definition of SW_PROP_NMID)
+ // This entry is for adding that properties to style import/export
+ //UUUU Added for paragraph backgrounds, this is for Paragraph AutoStyles
+ FILL_PROPERTIES_SW
+
{0,0,0,0,0,0}
};
aMapEntriesArr[nPropertyId] = aAutoParaStyleMap;
@@ -724,6 +743,14 @@ const SfxItemPropertyMapEntry* SwUnoPropertyMapProvider::GetPropertyMapEntries(s
static SfxItemPropertyMapEntry aParaStyleMap [] =
{
COMMON_PARA_STYLE_PROPERTIES
+
+ //UUUU added FillProperties for SW, same as FILL_PROPERTIES in svx
+ // but need own defines in Writer due to later association of strings
+ // and uno types (see loop at end of this method and definition of SW_PROP_NMID)
+ // This entry is for adding that properties to style import/export
+ //UUUU Added for paragraph backgrounds, this is for Paragraph Styles
+ FILL_PROPERTIES_SW
+
{0,0,0,0,0,0}
};
aMapEntriesArr[nPropertyId] = aParaStyleMap;
@@ -735,6 +762,14 @@ const SfxItemPropertyMapEntry* SwUnoPropertyMapProvider::GetPropertyMapEntries(s
{
COMMON_PARA_STYLE_PROPERTIES
{ SW_PROP_NMID(UNO_NAME_PARA_STYLE_CONDITIONS), FN_UNO_PARA_STYLE_CONDITIONS, CPPU_E2T(CPPUTYPE_SEQNAMEDVALUE), PropertyAttribute::MAYBEVOID, 0},
+
+ //UUUU added FillProperties for SW, same as FILL_PROPERTIES in svx
+ // but need own defines in Writer due to later association of strings
+ // and uno types (see loop at end of this method and definition of SW_PROP_NMID)
+ // This entry is for adding that properties to style import/export
+ //UUUU Added for paragraph backgrounds, this is for Paragraph Styles
+ FILL_PROPERTIES_SW
+
{0,0,0,0,0,0}
};
aMapEntriesArr[nPropertyId] = aParaStyleMap;
@@ -818,9 +853,10 @@ const SfxItemPropertyMapEntry* SwUnoPropertyMapProvider::GetPropertyMapEntries(s
{ SW_PROP_NMID(UNO_NAME_WRAP_INFLUENCE_ON_POSITION), RES_WRAP_INFLUENCE_ON_OBJPOS, CPPU_E2T(CPPUTYPE_INT8), PROPERTY_NONE, MID_WRAP_INFLUENCE},
{ SW_PROP_NMID(UNO_NAME_WRITING_MODE), RES_FRAMEDIR, CPPU_E2T(CPPUTYPE_INT16), PROPERTY_NONE, 0 },
- //UUUU adf FillProperties for SW, same as FILL_PROPERTIES in svx
+ //UUUU added FillProperties for SW, same as FILL_PROPERTIES in svx
// but need own defines in Writer due to later association of strings
- // and uno types (see loop at end of this metjhod and definition of SW_PROP_NMID)
+ // and uno types (see loop at end of this method and definition of SW_PROP_NMID)
+ // This entry is for adding that properties to style import/export
FILL_PROPERTIES_SW
{0,0,0,0,0,0}
@@ -851,56 +887,59 @@ const SfxItemPropertyMapEntry* SwUnoPropertyMapProvider::GetPropertyMapEntries(s
{ SW_PROP_NMID(UNO_NAME_BOTTOM_BORDER_DISTANCE), RES_BOX, CPPU_E2T(CPPUTYPE_INT32), 0, BOTTOM_BORDER_DISTANCE|CONVERT_TWIPS },
{ SW_PROP_NMID(UNO_NAME_SHADOW_FORMAT), RES_SHADOW, CPPU_E2T(CPPUTYPE_SHADOWFMT), PROPERTY_NONE, CONVERT_TWIPS},
- { SW_PROP_NMID(UNO_NAME_HEADER_BACK_COLOR), FN_UNO_HEADER_BACKGROUND, CPPU_E2T(CPPUTYPE_INT32), PROPERTY_NONE ,MID_BACK_COLOR },
- // { SW_PROP_NMID(UNO_NAME_HEADER_GRAPHIC), FN_UNO_HEADER_BACKGROUND, &, PROPERTY_NONE, MID_GRAPHIC
- { SW_PROP_NMID(UNO_NAME_HEADER_GRAPHIC_URL), FN_UNO_HEADER_BACKGROUND, CPPU_E2T(CPPUTYPE_OUSTRING), PROPERTY_NONE ,MID_GRAPHIC_URL },
- { SW_PROP_NMID(UNO_NAME_HEADER_GRAPHIC_FILTER), FN_UNO_HEADER_BACKGROUND, CPPU_E2T(CPPUTYPE_OUSTRING), PROPERTY_NONE ,MID_GRAPHIC_FILTER },
- { SW_PROP_NMID(UNO_NAME_HEADER_GRAPHIC_LOCATION), FN_UNO_HEADER_BACKGROUND, CPPU_E2T(CPPUTYPE_GRAPHICLOC), PROPERTY_NONE ,MID_GRAPHIC_POSITION},
- { SW_PROP_NMID(UNO_NAME_HEADER_LEFT_MARGIN), FN_UNO_HEADER_LR_SPACE, CPPU_E2T(CPPUTYPE_INT32), PROPERTY_NONE, MID_L_MARGIN|CONVERT_TWIPS},
- { SW_PROP_NMID(UNO_NAME_HEADER_RIGHT_MARGIN), FN_UNO_HEADER_LR_SPACE, CPPU_E2T(CPPUTYPE_INT32), PROPERTY_NONE, MID_R_MARGIN|CONVERT_TWIPS},
- { SW_PROP_NMID(UNO_NAME_HEADER_BACK_TRANSPARENT), FN_UNO_HEADER_BACKGROUND, CPPU_E2T(CPPUTYPE_BOOLEAN), PROPERTY_NONE ,MID_GRAPHIC_TRANSPARENT },
- { SW_PROP_NMID(UNO_NAME_HEADER_LEFT_BORDER), FN_UNO_HEADER_BOX, CPPU_E2T(CPPUTYPE_BORDERLINE), 0, LEFT_BORDER |CONVERT_TWIPS },
- { SW_PROP_NMID(UNO_NAME_HEADER_RIGHT_BORDER), FN_UNO_HEADER_BOX, CPPU_E2T(CPPUTYPE_BORDERLINE), 0, RIGHT_BORDER |CONVERT_TWIPS },
- { SW_PROP_NMID(UNO_NAME_HEADER_TOP_BORDER), FN_UNO_HEADER_BOX, CPPU_E2T(CPPUTYPE_BORDERLINE), 0, TOP_BORDER |CONVERT_TWIPS },
- { SW_PROP_NMID(UNO_NAME_HEADER_BOTTOM_BORDER), FN_UNO_HEADER_BOX, CPPU_E2T(CPPUTYPE_BORDERLINE), 0, BOTTOM_BORDER|CONVERT_TWIPS },
- { SW_PROP_NMID(UNO_NAME_HEADER_BORDER_DISTANCE), FN_UNO_HEADER_BOX, CPPU_E2T(CPPUTYPE_INT32), PropertyAttribute::MAYBEVOID, BORDER_DISTANCE|CONVERT_TWIPS },
- { SW_PROP_NMID(UNO_NAME_HEADER_LEFT_BORDER_DISTANCE), FN_UNO_HEADER_BOX, CPPU_E2T(CPPUTYPE_INT32), 0, LEFT_BORDER_DISTANCE |CONVERT_TWIPS },
- { SW_PROP_NMID(UNO_NAME_HEADER_RIGHT_BORDER_DISTANCE), FN_UNO_HEADER_BOX, CPPU_E2T(CPPUTYPE_INT32), 0, RIGHT_BORDER_DISTANCE |CONVERT_TWIPS },
- { SW_PROP_NMID(UNO_NAME_HEADER_TOP_BORDER_DISTANCE), FN_UNO_HEADER_BOX, CPPU_E2T(CPPUTYPE_INT32), 0, TOP_BORDER_DISTANCE |CONVERT_TWIPS },
- { SW_PROP_NMID(UNO_NAME_HEADER_BOTTOM_BORDER_DISTANCE), FN_UNO_HEADER_BOX, CPPU_E2T(CPPUTYPE_INT32), 0, BOTTOM_BORDER_DISTANCE|CONVERT_TWIPS },
- { SW_PROP_NMID(UNO_NAME_HEADER_SHADOW_FORMAT), FN_UNO_HEADER_SHADOW, CPPU_E2T(CPPUTYPE_SHADOWFMT), PROPERTY_NONE, CONVERT_TWIPS},
- { SW_PROP_NMID(UNO_NAME_HEADER_BODY_DISTANCE), FN_UNO_HEADER_BODY_DISTANCE,CPPU_E2T(CPPUTYPE_INT32), PROPERTY_NONE ,MID_LO_MARGIN|CONVERT_TWIPS },
- { SW_PROP_NMID(UNO_NAME_HEADER_IS_DYNAMIC_HEIGHT), FN_UNO_HEADER_IS_DYNAMIC_DISTANCE,CPPU_E2T(CPPUTYPE_BOOLEAN), PROPERTY_NONE ,0 },
- { SW_PROP_NMID(UNO_NAME_HEADER_IS_SHARED), FN_UNO_HEADER_SHARE_CONTENT,CPPU_E2T(CPPUTYPE_BOOLEAN), PROPERTY_NONE ,0 },
- { SW_PROP_NMID(UNO_NAME_HEADER_HEIGHT), FN_UNO_HEADER_HEIGHT, CPPU_E2T(CPPUTYPE_INT32), PROPERTY_NONE ,MID_SIZE_HEIGHT|CONVERT_TWIPS },
- { SW_PROP_NMID(UNO_NAME_HEADER_IS_ON), FN_UNO_HEADER_ON, CPPU_E2T(CPPUTYPE_BOOLEAN), PROPERTY_NONE ,0 },
- { SW_PROP_NMID(UNO_NAME_HEADER_DYNAMIC_SPACING), FN_UNO_HEADER_EAT_SPACING, CPPU_E2T(CPPUTYPE_BOOLEAN), PropertyAttribute::MAYBEVOID ,0 },
-
- { SW_PROP_NMID(UNO_NAME_FOOTER_BACK_COLOR), FN_UNO_FOOTER_BACKGROUND, CPPU_E2T(CPPUTYPE_INT32), PROPERTY_NONE ,MID_BACK_COLOR },
- // { SW_PROP_NMID(UNO_NAME_FOOTER_GRAPHIC), FN_UNO_FOOTER_BACKGROUND, &, PROPERTY_NONE, MID_GRAPHIC
- { SW_PROP_NMID(UNO_NAME_FOOTER_GRAPHIC_URL), FN_UNO_FOOTER_BACKGROUND, CPPU_E2T(CPPUTYPE_OUSTRING), PROPERTY_NONE ,MID_GRAPHIC_URL },
- { SW_PROP_NMID(UNO_NAME_FOOTER_GRAPHIC_FILTER), FN_UNO_FOOTER_BACKGROUND, CPPU_E2T(CPPUTYPE_OUSTRING), PROPERTY_NONE ,MID_GRAPHIC_FILTER },
- { SW_PROP_NMID(UNO_NAME_FOOTER_GRAPHIC_LOCATION), FN_UNO_FOOTER_BACKGROUND, CPPU_E2T(CPPUTYPE_GRAPHICLOC), PROPERTY_NONE ,MID_GRAPHIC_POSITION},
- { SW_PROP_NMID(UNO_NAME_FOOTER_LEFT_MARGIN), FN_UNO_FOOTER_LR_SPACE, CPPU_E2T(CPPUTYPE_INT32), PROPERTY_NONE, MID_L_MARGIN|CONVERT_TWIPS},
- { SW_PROP_NMID(UNO_NAME_FOOTER_RIGHT_MARGIN), FN_UNO_FOOTER_LR_SPACE, CPPU_E2T(CPPUTYPE_INT32), PROPERTY_NONE, MID_R_MARGIN|CONVERT_TWIPS},
- { SW_PROP_NMID(UNO_NAME_FOOTER_BACK_TRANSPARENT), FN_UNO_FOOTER_BACKGROUND, CPPU_E2T(CPPUTYPE_BOOLEAN), PROPERTY_NONE ,MID_GRAPHIC_TRANSPARENT },
- { SW_PROP_NMID(UNO_NAME_FOOTER_LEFT_BORDER), FN_UNO_FOOTER_BOX, CPPU_E2T(CPPUTYPE_BORDERLINE), 0, LEFT_BORDER |CONVERT_TWIPS },
- { SW_PROP_NMID(UNO_NAME_FOOTER_RIGHT_BORDER), FN_UNO_FOOTER_BOX, CPPU_E2T(CPPUTYPE_BORDERLINE), 0, RIGHT_BORDER |CONVERT_TWIPS },
- { SW_PROP_NMID(UNO_NAME_FOOTER_TOP_BORDER), FN_UNO_FOOTER_BOX, CPPU_E2T(CPPUTYPE_BORDERLINE), 0, TOP_BORDER |CONVERT_TWIPS },
- { SW_PROP_NMID(UNO_NAME_FOOTER_BOTTOM_BORDER), FN_UNO_FOOTER_BOX, CPPU_E2T(CPPUTYPE_BORDERLINE), 0, BOTTOM_BORDER|CONVERT_TWIPS },
- { SW_PROP_NMID(UNO_NAME_FOOTER_BORDER_DISTANCE), FN_UNO_FOOTER_BOX, CPPU_E2T(CPPUTYPE_INT32), PropertyAttribute::MAYBEVOID, BORDER_DISTANCE|CONVERT_TWIPS },
- { SW_PROP_NMID(UNO_NAME_FOOTER_LEFT_BORDER_DISTANCE), FN_UNO_FOOTER_BOX, CPPU_E2T(CPPUTYPE_INT32), 0, LEFT_BORDER_DISTANCE |CONVERT_TWIPS },
- { SW_PROP_NMID(UNO_NAME_FOOTER_RIGHT_BORDER_DISTANCE), FN_UNO_FOOTER_BOX, CPPU_E2T(CPPUTYPE_INT32), 0, RIGHT_BORDER_DISTANCE |CONVERT_TWIPS },
- { SW_PROP_NMID(UNO_NAME_FOOTER_TOP_BORDER_DISTANCE), FN_UNO_FOOTER_BOX, CPPU_E2T(CPPUTYPE_INT32), 0, TOP_BORDER_DISTANCE |CONVERT_TWIPS },
- { SW_PROP_NMID(UNO_NAME_FOOTER_BOTTOM_BORDER_DISTANCE), FN_UNO_FOOTER_BOX, CPPU_E2T(CPPUTYPE_INT32), 0, BOTTOM_BORDER_DISTANCE|CONVERT_TWIPS },
- { SW_PROP_NMID(UNO_NAME_FOOTER_SHADOW_FORMAT), FN_UNO_FOOTER_SHADOW, CPPU_E2T(CPPUTYPE_SHADOWFMT), PROPERTY_NONE, CONVERT_TWIPS},
- { SW_PROP_NMID(UNO_NAME_FOOTER_BODY_DISTANCE), FN_UNO_FOOTER_BODY_DISTANCE,CPPU_E2T(CPPUTYPE_INT32), PROPERTY_NONE ,MID_UP_MARGIN|CONVERT_TWIPS },
- { SW_PROP_NMID(UNO_NAME_FOOTER_IS_DYNAMIC_HEIGHT), FN_UNO_FOOTER_IS_DYNAMIC_DISTANCE,CPPU_E2T(CPPUTYPE_BOOLEAN), PROPERTY_NONE ,0 },
- { SW_PROP_NMID(UNO_NAME_FOOTER_IS_SHARED), FN_UNO_FOOTER_SHARE_CONTENT,CPPU_E2T(CPPUTYPE_BOOLEAN), PROPERTY_NONE ,0 },
- { SW_PROP_NMID(UNO_NAME_FOOTER_HEIGHT), FN_UNO_FOOTER_HEIGHT, CPPU_E2T(CPPUTYPE_INT32), PROPERTY_NONE ,MID_SIZE_HEIGHT|CONVERT_TWIPS },
- { SW_PROP_NMID(UNO_NAME_FOOTER_IS_ON), FN_UNO_FOOTER_ON, CPPU_E2T(CPPUTYPE_BOOLEAN), PROPERTY_NONE ,0 },
- { SW_PROP_NMID(UNO_NAME_FOOTER_DYNAMIC_SPACING), FN_UNO_FOOTER_EAT_SPACING, CPPU_E2T(CPPUTYPE_BOOLEAN), PropertyAttribute::MAYBEVOID ,0 },
-
+ //UUU use real WhichIDs for Header, no longer use extra-defined WhichIDs which make handling harder as needed.
+ // The implementation will decide if these are part of Header/Footer or PageStyle depending on the SlotName,
+ // more precisely on the first characters. Thus it is necessary that these are 'Header' for the Header slots
+ { SW_PROP_NMID(UNO_NAME_HEADER_BACK_COLOR), RES_BACKGROUND, CPPU_E2T(CPPUTYPE_INT32), PROPERTY_NONE ,MID_BACK_COLOR },
+ // { SW_PROP_NMID(UNO_NAME_HEADER_GRAPHIC), RES_BACKGROUND, &, PROPERTY_NONE, MID_GRAPHIC
+ { SW_PROP_NMID(UNO_NAME_HEADER_GRAPHIC_URL), RES_BACKGROUND, CPPU_E2T(CPPUTYPE_OUSTRING), PROPERTY_NONE ,MID_GRAPHIC_URL },
+ { SW_PROP_NMID(UNO_NAME_HEADER_GRAPHIC_FILTER), RES_BACKGROUND, CPPU_E2T(CPPUTYPE_OUSTRING), PROPERTY_NONE ,MID_GRAPHIC_FILTER },
+ { SW_PROP_NMID(UNO_NAME_HEADER_GRAPHIC_LOCATION), RES_BACKGROUND, CPPU_E2T(CPPUTYPE_GRAPHICLOC), PROPERTY_NONE ,MID_GRAPHIC_POSITION},
+ { SW_PROP_NMID(UNO_NAME_HEADER_LEFT_MARGIN), RES_LR_SPACE, CPPU_E2T(CPPUTYPE_INT32), PROPERTY_NONE, MID_L_MARGIN|CONVERT_TWIPS},
+ { SW_PROP_NMID(UNO_NAME_HEADER_RIGHT_MARGIN), RES_LR_SPACE, CPPU_E2T(CPPUTYPE_INT32), PROPERTY_NONE, MID_R_MARGIN|CONVERT_TWIPS},
+ { SW_PROP_NMID(UNO_NAME_HEADER_BACK_TRANSPARENT), RES_BACKGROUND, CPPU_E2T(CPPUTYPE_BOOLEAN), PROPERTY_NONE ,MID_GRAPHIC_TRANSPARENT },
+ { SW_PROP_NMID(UNO_NAME_HEADER_LEFT_BORDER), RES_BOX, CPPU_E2T(CPPUTYPE_BORDERLINE), 0, LEFT_BORDER |CONVERT_TWIPS },
+ { SW_PROP_NMID(UNO_NAME_HEADER_RIGHT_BORDER), RES_BOX, CPPU_E2T(CPPUTYPE_BORDERLINE), 0, RIGHT_BORDER |CONVERT_TWIPS },
+ { SW_PROP_NMID(UNO_NAME_HEADER_TOP_BORDER), RES_BOX, CPPU_E2T(CPPUTYPE_BORDERLINE), 0, TOP_BORDER |CONVERT_TWIPS },
+ { SW_PROP_NMID(UNO_NAME_HEADER_BOTTOM_BORDER), RES_BOX, CPPU_E2T(CPPUTYPE_BORDERLINE), 0, BOTTOM_BORDER|CONVERT_TWIPS },
+ { SW_PROP_NMID(UNO_NAME_HEADER_BORDER_DISTANCE), RES_BOX, CPPU_E2T(CPPUTYPE_INT32), PropertyAttribute::MAYBEVOID, BORDER_DISTANCE|CONVERT_TWIPS },
+ { SW_PROP_NMID(UNO_NAME_HEADER_LEFT_BORDER_DISTANCE), RES_BOX, CPPU_E2T(CPPUTYPE_INT32), 0, LEFT_BORDER_DISTANCE |CONVERT_TWIPS },
+ { SW_PROP_NMID(UNO_NAME_HEADER_RIGHT_BORDER_DISTANCE), RES_BOX, CPPU_E2T(CPPUTYPE_INT32), 0, RIGHT_BORDER_DISTANCE |CONVERT_TWIPS },
+ { SW_PROP_NMID(UNO_NAME_HEADER_TOP_BORDER_DISTANCE), RES_BOX, CPPU_E2T(CPPUTYPE_INT32), 0, TOP_BORDER_DISTANCE |CONVERT_TWIPS },
+ { SW_PROP_NMID(UNO_NAME_HEADER_BOTTOM_BORDER_DISTANCE), RES_BOX, CPPU_E2T(CPPUTYPE_INT32), 0, BOTTOM_BORDER_DISTANCE|CONVERT_TWIPS },
+ { SW_PROP_NMID(UNO_NAME_HEADER_SHADOW_FORMAT), RES_SHADOW, CPPU_E2T(CPPUTYPE_SHADOWFMT), PROPERTY_NONE, CONVERT_TWIPS},
+ { SW_PROP_NMID(UNO_NAME_HEADER_BODY_DISTANCE), RES_UL_SPACE, CPPU_E2T(CPPUTYPE_INT32), PROPERTY_NONE ,MID_LO_MARGIN|CONVERT_TWIPS },
+ { SW_PROP_NMID(UNO_NAME_HEADER_IS_DYNAMIC_HEIGHT), SID_ATTR_PAGE_DYNAMIC, CPPU_E2T(CPPUTYPE_BOOLEAN), PROPERTY_NONE ,0 },
+ { SW_PROP_NMID(UNO_NAME_HEADER_IS_SHARED), SID_ATTR_PAGE_SHARED, CPPU_E2T(CPPUTYPE_BOOLEAN), PROPERTY_NONE ,0 },
+ { SW_PROP_NMID(UNO_NAME_HEADER_HEIGHT), SID_ATTR_PAGE_SIZE, CPPU_E2T(CPPUTYPE_INT32), PROPERTY_NONE ,MID_SIZE_HEIGHT|CONVERT_TWIPS },
+ { SW_PROP_NMID(UNO_NAME_HEADER_IS_ON), SID_ATTR_PAGE_ON, CPPU_E2T(CPPUTYPE_BOOLEAN), PROPERTY_NONE ,0 },
+ { SW_PROP_NMID(UNO_NAME_HEADER_DYNAMIC_SPACING), RES_HEADER_FOOTER_EAT_SPACING, CPPU_E2T(CPPUTYPE_BOOLEAN), PropertyAttribute::MAYBEVOID ,0 },
+
+ //UUU use real WhichIDs for Footer, see Header (above) for more infos
+ { SW_PROP_NMID(UNO_NAME_FOOTER_BACK_COLOR), RES_BACKGROUND, CPPU_E2T(CPPUTYPE_INT32), PROPERTY_NONE ,MID_BACK_COLOR },
+ // { SW_PROP_NMID(UNO_NAME_FOOTER_GRAPHIC), RES_BACKGROUND, &, PROPERTY_NONE, MID_GRAPHIC
+ { SW_PROP_NMID(UNO_NAME_FOOTER_GRAPHIC_URL), RES_BACKGROUND, CPPU_E2T(CPPUTYPE_OUSTRING), PROPERTY_NONE ,MID_GRAPHIC_URL },
+ { SW_PROP_NMID(UNO_NAME_FOOTER_GRAPHIC_FILTER), RES_BACKGROUND, CPPU_E2T(CPPUTYPE_OUSTRING), PROPERTY_NONE ,MID_GRAPHIC_FILTER },
+ { SW_PROP_NMID(UNO_NAME_FOOTER_GRAPHIC_LOCATION), RES_BACKGROUND, CPPU_E2T(CPPUTYPE_GRAPHICLOC), PROPERTY_NONE ,MID_GRAPHIC_POSITION},
+ { SW_PROP_NMID(UNO_NAME_FOOTER_LEFT_MARGIN), RES_LR_SPACE, CPPU_E2T(CPPUTYPE_INT32), PROPERTY_NONE, MID_L_MARGIN|CONVERT_TWIPS},
+ { SW_PROP_NMID(UNO_NAME_FOOTER_RIGHT_MARGIN), RES_LR_SPACE, CPPU_E2T(CPPUTYPE_INT32), PROPERTY_NONE, MID_R_MARGIN|CONVERT_TWIPS},
+ { SW_PROP_NMID(UNO_NAME_FOOTER_BACK_TRANSPARENT), RES_BACKGROUND, CPPU_E2T(CPPUTYPE_BOOLEAN), PROPERTY_NONE ,MID_GRAPHIC_TRANSPARENT },
+ { SW_PROP_NMID(UNO_NAME_FOOTER_LEFT_BORDER), RES_BOX, CPPU_E2T(CPPUTYPE_BORDERLINE), 0, LEFT_BORDER |CONVERT_TWIPS },
+ { SW_PROP_NMID(UNO_NAME_FOOTER_RIGHT_BORDER), RES_BOX, CPPU_E2T(CPPUTYPE_BORDERLINE), 0, RIGHT_BORDER |CONVERT_TWIPS },
+ { SW_PROP_NMID(UNO_NAME_FOOTER_TOP_BORDER), RES_BOX, CPPU_E2T(CPPUTYPE_BORDERLINE), 0, TOP_BORDER |CONVERT_TWIPS },
+ { SW_PROP_NMID(UNO_NAME_FOOTER_BOTTOM_BORDER), RES_BOX, CPPU_E2T(CPPUTYPE_BORDERLINE), 0, BOTTOM_BORDER|CONVERT_TWIPS },
+ { SW_PROP_NMID(UNO_NAME_FOOTER_BORDER_DISTANCE), RES_BOX, CPPU_E2T(CPPUTYPE_INT32), PropertyAttribute::MAYBEVOID, BORDER_DISTANCE|CONVERT_TWIPS },
+ { SW_PROP_NMID(UNO_NAME_FOOTER_LEFT_BORDER_DISTANCE), RES_BOX, CPPU_E2T(CPPUTYPE_INT32), 0, LEFT_BORDER_DISTANCE |CONVERT_TWIPS },
+ { SW_PROP_NMID(UNO_NAME_FOOTER_RIGHT_BORDER_DISTANCE), RES_BOX, CPPU_E2T(CPPUTYPE_INT32), 0, RIGHT_BORDER_DISTANCE |CONVERT_TWIPS },
+ { SW_PROP_NMID(UNO_NAME_FOOTER_TOP_BORDER_DISTANCE), RES_BOX, CPPU_E2T(CPPUTYPE_INT32), 0, TOP_BORDER_DISTANCE |CONVERT_TWIPS },
+ { SW_PROP_NMID(UNO_NAME_FOOTER_BOTTOM_BORDER_DISTANCE), RES_BOX, CPPU_E2T(CPPUTYPE_INT32), 0, BOTTOM_BORDER_DISTANCE|CONVERT_TWIPS },
+ { SW_PROP_NMID(UNO_NAME_FOOTER_SHADOW_FORMAT), RES_SHADOW, CPPU_E2T(CPPUTYPE_SHADOWFMT), PROPERTY_NONE, CONVERT_TWIPS},
+ { SW_PROP_NMID(UNO_NAME_FOOTER_BODY_DISTANCE), RES_UL_SPACE, CPPU_E2T(CPPUTYPE_INT32), PROPERTY_NONE ,MID_UP_MARGIN|CONVERT_TWIPS },
+ { SW_PROP_NMID(UNO_NAME_FOOTER_IS_DYNAMIC_HEIGHT), SID_ATTR_PAGE_DYNAMIC, CPPU_E2T(CPPUTYPE_BOOLEAN), PROPERTY_NONE ,0 },
+ { SW_PROP_NMID(UNO_NAME_FOOTER_IS_SHARED), SID_ATTR_PAGE_SHARED, CPPU_E2T(CPPUTYPE_BOOLEAN), PROPERTY_NONE ,0 },
+ { SW_PROP_NMID(UNO_NAME_FOOTER_HEIGHT), SID_ATTR_PAGE_SIZE, CPPU_E2T(CPPUTYPE_INT32), PROPERTY_NONE ,MID_SIZE_HEIGHT|CONVERT_TWIPS },
+ { SW_PROP_NMID(UNO_NAME_FOOTER_IS_ON), SID_ATTR_PAGE_ON, CPPU_E2T(CPPUTYPE_BOOLEAN), PROPERTY_NONE ,0 },
+ { SW_PROP_NMID(UNO_NAME_FOOTER_DYNAMIC_SPACING), RES_HEADER_FOOTER_EAT_SPACING, CPPU_E2T(CPPUTYPE_BOOLEAN), PropertyAttribute::MAYBEVOID ,0 },
{ SW_PROP_NMID(UNO_NAME_IS_LANDSCAPE), SID_ATTR_PAGE, CPPU_E2T(CPPUTYPE_BOOLEAN), PROPERTY_NONE ,MID_PAGE_ORIENTATION },
{ SW_PROP_NMID(UNO_NAME_NUMBERING_TYPE), SID_ATTR_PAGE, CPPU_E2T(CPPUTYPE_INT16), PROPERTY_NONE , MID_PAGE_NUMTYPE },
@@ -932,7 +971,8 @@ const SfxItemPropertyMapEntry* SwUnoPropertyMapProvider::GetPropertyMapEntries(s
{ SW_PROP_NMID(UNO_NAME_FOOTNOTE_LINE_TEXT_DISTANCE), FN_PARAM_FTN_INFO, CPPU_E2T(CPPUTYPE_INT32), PROPERTY_NONE , MID_LINE_TEXT_DIST |CONVERT_TWIPS },
{ SW_PROP_NMID(UNO_NAME_FOOTNOTE_LINE_DISTANCE), FN_PARAM_FTN_INFO, CPPU_E2T(CPPUTYPE_INT32), PROPERTY_NONE , MID_LINE_FOOTNOTE_DIST|CONVERT_TWIPS},
{ SW_PROP_NMID(UNO_NAME_WRITING_MODE), RES_FRAMEDIR, CPPU_E2T(CPPUTYPE_INT16), PROPERTY_NONE, 0 },
- // writing grid
+
+ // writing grid
{ SW_PROP_NMID(UNO_NAME_GRID_COLOR), RES_TEXTGRID, CPPU_E2T(CPPUTYPE_INT32), PROPERTY_NONE, MID_GRID_COLOR},
{ SW_PROP_NMID(UNO_NAME_GRID_LINES), RES_TEXTGRID, CPPU_E2T(CPPUTYPE_INT16), PROPERTY_NONE, MID_GRID_LINES},
{ SW_PROP_NMID(UNO_NAME_GRID_BASE_HEIGHT), RES_TEXTGRID, CPPU_E2T(CPPUTYPE_INT32), PROPERTY_NONE, MID_GRID_BASEHEIGHT|CONVERT_TWIPS},
@@ -944,6 +984,72 @@ const SfxItemPropertyMapEntry* SwUnoPropertyMapProvider::GetPropertyMapEntries(s
{ SW_PROP_NMID(UNO_NAME_GRID_BASE_WIDTH), RES_TEXTGRID, CPPU_E2T(CPPUTYPE_INT32), PROPERTY_NONE, MID_GRID_BASEWIDTH|CONVERT_TWIPS},
{ SW_PROP_NMID(UNO_NAME_GRID_SNAP_TO_CHARS), RES_TEXTGRID, CPPU_E2T(CPPUTYPE_BOOLEAN), PROPERTY_NONE, MID_GRID_SNAPTOCHARS},
{ SW_PROP_NMID(UNO_NAME_GRID_STANDARD_PAGE_MODE), RES_TEXTGRID, CPPU_E2T(CPPUTYPE_BOOLEAN), PROPERTY_NONE, MID_GRID_STANDARD_MODE},
+
+ //UUUU added FillProperties for SW, same as FILL_PROPERTIES in svx
+ // but need own defines in Writer due to later association of strings
+ // and uno types (see loop at end of this method and definition of SW_PROP_NMID)
+ // This entry is for adding that properties to style import/export
+ FILL_PROPERTIES_SW
+
+ //UUUU Added DrawingLayer FillStyle Properties for Header. These need an own unique name,
+ // but reuse the same WhichIDs as the regular fill. The implementation will decide to which
+ // group of fill properties it belongs based on the start of the name (was already done in
+ // the implementation partially), thus all SlotNames *have* to start with 'Header'
+ { SW_PROP_NMID(UNO_NAME_HEADER_FILLBMP_LOGICAL_SIZE), XATTR_FILLBMP_SIZELOG, CPPU_E2T(CPPUTYPE_BOOLEAN) , 0, 0},
+ { SW_PROP_NMID(UNO_NAME_HEADER_FILLBMP_OFFSET_X), XATTR_FILLBMP_TILEOFFSETX, CPPU_E2T(CPPUTYPE_INT32) , 0, 0},
+ { SW_PROP_NMID(UNO_NAME_HEADER_FILLBMP_OFFSET_Y), XATTR_FILLBMP_TILEOFFSETY, CPPU_E2T(CPPUTYPE_INT32) , 0, 0},
+ { SW_PROP_NMID(UNO_NAME_HEADER_FILLBMP_POSITION_OFFSET_X), XATTR_FILLBMP_POSOFFSETX, CPPU_E2T(CPPUTYPE_INT32) , 0, 0},
+ { SW_PROP_NMID(UNO_NAME_HEADER_FILLBMP_POSITION_OFFSET_Y), XATTR_FILLBMP_POSOFFSETY, CPPU_E2T(CPPUTYPE_INT32) , 0, 0},
+ { SW_PROP_NMID(UNO_NAME_HEADER_FILLBMP_RECTANGLE_POINT), XATTR_FILLBMP_POS, CPPU_E2T(CPPUTYPE_RECTANGLEPOINT) , 0, 0},
+ { SW_PROP_NMID(UNO_NAME_HEADER_FILLBMP_SIZE_X), XATTR_FILLBMP_SIZEX, CPPU_E2T(CPPUTYPE_INT32) , 0, SFX_METRIC_ITEM},
+ { SW_PROP_NMID(UNO_NAME_HEADER_FILLBMP_SIZE_Y), XATTR_FILLBMP_SIZEY, CPPU_E2T(CPPUTYPE_INT32) , 0, SFX_METRIC_ITEM},
+ { SW_PROP_NMID(UNO_NAME_HEADER_FILLBMP_STRETCH), XATTR_FILLBMP_STRETCH, CPPU_E2T(CPPUTYPE_BOOLEAN) , 0, 0},
+ { SW_PROP_NMID(UNO_NAME_HEADER_FILLBMP_TILE), XATTR_FILLBMP_TILE, CPPU_E2T(CPPUTYPE_BOOLEAN) , 0, 0},
+ { SW_PROP_NMID(UNO_NAME_HEADER_FILLBMP_MODE), OWN_ATTR_FILLBMP_MODE, CPPU_E2T(CPPUTYPE_BITMAPMODE), 0, 0},
+ { SW_PROP_NMID(UNO_NAME_HEADER_FILLCOLOR), XATTR_FILLCOLOR, CPPU_E2T(CPPUTYPE_INT32), 0, 0},
+ { SW_PROP_NMID(UNO_NAME_HEADER_FILLBACKGROUND), XATTR_FILLBACKGROUND, CPPU_E2T(CPPUTYPE_BOOLEAN), 0, 0},
+ { SW_PROP_NMID(UNO_NAME_HEADER_FILLBITMAP), XATTR_FILLBITMAP, CPPU_E2T(CPPUTYPE_REFBITMAP), 0, MID_BITMAP},
+ { SW_PROP_NMID(UNO_NAME_HEADER_FILLBITMAPNAME), XATTR_FILLBITMAP, CPPU_E2T(CPPUTYPE_OUSTRING), 0, MID_NAME },
+ { SW_PROP_NMID(UNO_NAME_HEADER_FILLBITMAPURL), XATTR_FILLBITMAP, CPPU_E2T(CPPUTYPE_OUSTRING), 0, MID_GRAFURL },
+ { SW_PROP_NMID(UNO_NAME_HEADER_FILLGRADIENTSTEPCOUNT), XATTR_GRADIENTSTEPCOUNT, CPPU_E2T(CPPUTYPE_INT16), 0, 0},
+ { SW_PROP_NMID(UNO_NAME_HEADER_FILLGRADIENT), XATTR_FILLGRADIENT, CPPU_E2T(CPPUTYPE_GRADIENT), 0, MID_FILLGRADIENT},
+ { SW_PROP_NMID(UNO_NAME_HEADER_FILLGRADIENTNAME), XATTR_FILLGRADIENT, CPPU_E2T(CPPUTYPE_OUSTRING), 0, MID_NAME },
+ { SW_PROP_NMID(UNO_NAME_HEADER_FILLHATCH), XATTR_FILLHATCH, CPPU_E2T(CPPUTYPE_HATCH), 0, MID_FILLHATCH},
+ { SW_PROP_NMID(UNO_NAME_HEADER_FILLHATCHNAME), XATTR_FILLHATCH, CPPU_E2T(CPPUTYPE_OUSTRING), 0, MID_NAME },
+ { SW_PROP_NMID(UNO_NAME_HEADER_FILLSTYLE), XATTR_FILLSTYLE, CPPU_E2T(CPPUTYPE_FILLSTYLE), 0, 0},
+ { SW_PROP_NMID(UNO_NAME_HEADER_FILL_TRANSPARENCE), XATTR_FILLTRANSPARENCE, CPPU_E2T(CPPUTYPE_INT16), 0, 0},
+ { SW_PROP_NMID(UNO_NAME_HEADER_FILLTRANSPARENCEGRADIENT), XATTR_FILLFLOATTRANSPARENCE, CPPU_E2T(CPPUTYPE_GRADIENT), 0, MID_FILLGRADIENT},
+ { SW_PROP_NMID(UNO_NAME_HEADER_FILLTRANSPARENCEGRADIENTNAME), XATTR_FILLFLOATTRANSPARENCE, CPPU_E2T(CPPUTYPE_OUSTRING), 0, MID_NAME },
+ { SW_PROP_NMID(UNO_NAME_HEADER_FILLCOLOR_2), XATTR_SECONDARYFILLCOLOR, CPPU_E2T(CPPUTYPE_INT32), 0, 0},
+
+ //UUUU Added DrawingLayer FillStyle Properties for Footer, similar as for Header (see there)
+ { SW_PROP_NMID(UNO_NAME_FOOTER_FILLBMP_LOGICAL_SIZE), XATTR_FILLBMP_SIZELOG, CPPU_E2T(CPPUTYPE_BOOLEAN) , 0, 0},
+ { SW_PROP_NMID(UNO_NAME_FOOTER_FILLBMP_OFFSET_X), XATTR_FILLBMP_TILEOFFSETX, CPPU_E2T(CPPUTYPE_INT32) , 0, 0},
+ { SW_PROP_NMID(UNO_NAME_FOOTER_FILLBMP_OFFSET_Y), XATTR_FILLBMP_TILEOFFSETY, CPPU_E2T(CPPUTYPE_INT32) , 0, 0},
+ { SW_PROP_NMID(UNO_NAME_FOOTER_FILLBMP_POSITION_OFFSET_X), XATTR_FILLBMP_POSOFFSETX, CPPU_E2T(CPPUTYPE_INT32) , 0, 0},
+ { SW_PROP_NMID(UNO_NAME_FOOTER_FILLBMP_POSITION_OFFSET_Y), XATTR_FILLBMP_POSOFFSETY, CPPU_E2T(CPPUTYPE_INT32) , 0, 0},
+ { SW_PROP_NMID(UNO_NAME_FOOTER_FILLBMP_RECTANGLE_POINT), XATTR_FILLBMP_POS, CPPU_E2T(CPPUTYPE_RECTANGLEPOINT) , 0, 0},
+ { SW_PROP_NMID(UNO_NAME_FOOTER_FILLBMP_SIZE_X), XATTR_FILLBMP_SIZEX, CPPU_E2T(CPPUTYPE_INT32) , 0, SFX_METRIC_ITEM},
+ { SW_PROP_NMID(UNO_NAME_FOOTER_FILLBMP_SIZE_Y), XATTR_FILLBMP_SIZEY, CPPU_E2T(CPPUTYPE_INT32) , 0, SFX_METRIC_ITEM},
+ { SW_PROP_NMID(UNO_NAME_FOOTER_FILLBMP_STRETCH), XATTR_FILLBMP_STRETCH, CPPU_E2T(CPPUTYPE_BOOLEAN) , 0, 0},
+ { SW_PROP_NMID(UNO_NAME_FOOTER_FILLBMP_TILE), XATTR_FILLBMP_TILE, CPPU_E2T(CPPUTYPE_BOOLEAN) , 0, 0},
+ { SW_PROP_NMID(UNO_NAME_FOOTER_FILLBMP_MODE), OWN_ATTR_FILLBMP_MODE, CPPU_E2T(CPPUTYPE_BITMAPMODE), 0, 0},
+ { SW_PROP_NMID(UNO_NAME_FOOTER_FILLCOLOR), XATTR_FILLCOLOR, CPPU_E2T(CPPUTYPE_INT32), 0, 0},
+ { SW_PROP_NMID(UNO_NAME_FOOTER_FILLBACKGROUND), XATTR_FILLBACKGROUND, CPPU_E2T(CPPUTYPE_BOOLEAN), 0, 0},
+ { SW_PROP_NMID(UNO_NAME_FOOTER_FILLBITMAP), XATTR_FILLBITMAP, CPPU_E2T(CPPUTYPE_REFBITMAP), 0, MID_BITMAP},
+ { SW_PROP_NMID(UNO_NAME_FOOTER_FILLBITMAPNAME), XATTR_FILLBITMAP, CPPU_E2T(CPPUTYPE_OUSTRING), 0, MID_NAME },
+ { SW_PROP_NMID(UNO_NAME_FOOTER_FILLBITMAPURL), XATTR_FILLBITMAP, CPPU_E2T(CPPUTYPE_OUSTRING), 0, MID_GRAFURL },
+ { SW_PROP_NMID(UNO_NAME_FOOTER_FILLGRADIENTSTEPCOUNT), XATTR_GRADIENTSTEPCOUNT, CPPU_E2T(CPPUTYPE_INT16), 0, 0},
+ { SW_PROP_NMID(UNO_NAME_FOOTER_FILLGRADIENT), XATTR_FILLGRADIENT, CPPU_E2T(CPPUTYPE_GRADIENT), 0, MID_FILLGRADIENT},
+ { SW_PROP_NMID(UNO_NAME_FOOTER_FILLGRADIENTNAME), XATTR_FILLGRADIENT, CPPU_E2T(CPPUTYPE_OUSTRING), 0, MID_NAME },
+ { SW_PROP_NMID(UNO_NAME_FOOTER_FILLHATCH), XATTR_FILLHATCH, CPPU_E2T(CPPUTYPE_HATCH), 0, MID_FILLHATCH},
+ { SW_PROP_NMID(UNO_NAME_FOOTER_FILLHATCHNAME), XATTR_FILLHATCH, CPPU_E2T(CPPUTYPE_OUSTRING), 0, MID_NAME },
+ { SW_PROP_NMID(UNO_NAME_FOOTER_FILLSTYLE), XATTR_FILLSTYLE, CPPU_E2T(CPPUTYPE_FILLSTYLE), 0, 0},
+ { SW_PROP_NMID(UNO_NAME_FOOTER_FILL_TRANSPARENCE), XATTR_FILLTRANSPARENCE, CPPU_E2T(CPPUTYPE_INT16), 0, 0},
+ { SW_PROP_NMID(UNO_NAME_FOOTER_FILLTRANSPARENCEGRADIENT), XATTR_FILLFLOATTRANSPARENCE, CPPU_E2T(CPPUTYPE_GRADIENT), 0, MID_FILLGRADIENT},
+ { SW_PROP_NMID(UNO_NAME_FOOTER_FILLTRANSPARENCEGRADIENTNAME), XATTR_FILLFLOATTRANSPARENCE, CPPU_E2T(CPPUTYPE_OUSTRING), 0, MID_NAME },
+ { SW_PROP_NMID(UNO_NAME_FOOTER_FILLCOLOR_2), XATTR_SECONDARYFILLCOLOR, CPPU_E2T(CPPUTYPE_INT32), 0, 0},
+
{0,0,0,0,0,0}
};
aMapEntriesArr[nPropertyId] = aPageStyleMap;
@@ -1174,9 +1280,10 @@ const SfxItemPropertyMapEntry* SwUnoPropertyMapProvider::GetPropertyMapEntries(s
{ SW_PROP_NMID(UNO_NAME_WIDTH_TYPE), RES_FRM_SIZE, CPPU_E2T(CPPUTYPE_INT16) , PROPERTY_NONE, MID_FRMSIZE_WIDTH_TYPE },
{ SW_PROP_NMID(UNO_NAME_WRITING_MODE), RES_FRAMEDIR, CPPU_E2T(CPPUTYPE_INT16), PROPERTY_NONE, 0 },
- //UUUU adf FillProperties for SW, same as FILL_PROPERTIES in svx
+ //UUUU added FillProperties for SW, same as FILL_PROPERTIES in svx
// but need own defines in Writer due to later association of strings
- // and uno types (see loop at end of this metjhod and definition of SW_PROP_NMID)
+ // and uno types (see loop at end of this method and definition of SW_PROP_NMID)
+ // This entry is for adding that properties to FlyFrame import/export
FILL_PROPERTIES_SW
{0,0,0,0,0,0}
@@ -1187,7 +1294,10 @@ const SfxItemPropertyMapEntry* SwUnoPropertyMapProvider::GetPropertyMapEntries(s
case PROPERTY_MAP_TEXT_GRAPHIC:
{
static SfxItemPropertyMapEntry aGraphicPropertyMap_Impl[] =
- {
+ { //UUUU
+ // evtl. completely remove SvxBrushItem stuff ()
+ // add support for XATTR_FILL_FIRST, XATTR_FILL_LAST
+ // COMMON_FRAME_PROPERTIES currently hosts the RES_BACKGROUND entries from SvxBrushItem
COMMON_FRAME_PROPERTIES
{ SW_PROP_NMID(UNO_NAME_SURROUND_CONTOUR), RES_SURROUND, CPPU_E2T(CPPUTYPE_BOOLEAN), PROPERTY_NONE, MID_SURROUND_CONTOUR },
{ SW_PROP_NMID(UNO_NAME_CONTOUR_OUTSIDE), RES_SURROUND, CPPU_E2T(CPPUTYPE_BOOLEAN), PROPERTY_NONE, MID_SURROUND_CONTOUROUTSIDE },
@@ -1214,6 +1324,13 @@ const SfxItemPropertyMapEntry* SwUnoPropertyMapProvider::GetPropertyMapEntries(s
{ SW_PROP_NMID(UNO_NAME_GRAPHIC_IS_INVERTED), RES_GRFATR_INVERT, CPPU_E2T(CPPUTYPE_BOOLEAN), 0, 0},
{ SW_PROP_NMID(UNO_NAME_TRANSPARENCY), RES_GRFATR_TRANSPARENCY, CPPU_E2T(CPPUTYPE_INT16), 0, 0},
{ SW_PROP_NMID(UNO_NAME_GRAPHIC_COLOR_MODE), RES_GRFATR_DRAWMODE, CPPU_E2T(CPPUTYPE_COLORMODE), 0, 0},
+
+ //UUUU added FillProperties for SW, same as FILL_PROPERTIES in svx
+ // but need own defines in Writer due to later association of strings
+ // and uno types (see loop at end of this method and definition of SW_PROP_NMID)
+ // This entry is for adding that properties to Writer GraphicObject import/export
+ FILL_PROPERTIES_SW
+
{0,0,0,0,0,0}
};
aMapEntriesArr[nPropertyId] = aGraphicPropertyMap_Impl;
@@ -1222,7 +1339,10 @@ const SfxItemPropertyMapEntry* SwUnoPropertyMapProvider::GetPropertyMapEntries(s
case PROPERTY_MAP_EMBEDDED_OBJECT:
{
static SfxItemPropertyMapEntry aEmbeddedPropertyMap_Impl[] =
- {
+ { //UUUU
+ // evtl. completely remove SvxBrushItem stuff ()
+ // add support for XATTR_FILL_FIRST, XATTR_FILL_LAST
+ // COMMON_FRAME_PROPERTIES currently hosts the RES_BACKGROUND entries from SvxBrushItem
COMMON_FRAME_PROPERTIES
{ SW_PROP_NMID(UNO_NAME_SURROUND_CONTOUR), RES_SURROUND, CPPU_E2T(CPPUTYPE_BOOLEAN), PROPERTY_NONE, MID_SURROUND_CONTOUR },
{ SW_PROP_NMID(UNO_NAME_CONTOUR_OUTSIDE), RES_SURROUND, CPPU_E2T(CPPUTYPE_BOOLEAN), PROPERTY_NONE, MID_SURROUND_CONTOUROUTSIDE},
@@ -1237,6 +1357,13 @@ const SfxItemPropertyMapEntry* SwUnoPropertyMapProvider::GetPropertyMapEntries(s
{ SW_PROP_NMID(UNO_NAME_COMPONENT),FN_UNO_COMPONENT, CPPU_E2T(CPPUTYPE_REFCOMPONENT), PropertyAttribute::READONLY, 0},
{ SW_PROP_NMID(UNO_NAME_EMBEDDED_OBJECT),FN_EMBEDDED_OBJECT, CPPU_E2T(CPPUTPYE_REFEMBEDDEDOBJECT), PropertyAttribute::READONLY, 0},
// { SW_PROP_NMID(UNO_NAME_ALTERNATIVE_TEXT), FN_UNO_ALTERNATIVE_TEXT,CPPU_E2T(CPPUTYPE_OUSTRING), PROPERTY_NONE , 0 },
+
+ //UUUU added FillProperties for SW, same as FILL_PROPERTIES in svx
+ // but need own defines in Writer due to later association of strings
+ // and uno types (see loop at end of this method and definition of SW_PROP_NMID)
+ // This entry is for adding that properties to OLE/EmbeddedObject import/export
+ FILL_PROPERTIES_SW
+
{0,0,0,0,0,0}
};
aMapEntriesArr[nPropertyId] = aEmbeddedPropertyMap_Impl;
diff --git a/sw/source/core/unocore/unoparagraph.cxx b/sw/source/core/unocore/unoparagraph.cxx
index c7968ce65fa6..9df686af04b7 100644
--- a/sw/source/core/unocore/unoparagraph.cxx
+++ b/sw/source/core/unocore/unoparagraph.cxx
@@ -19,8 +19,6 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sw.hxx"
@@ -52,11 +50,17 @@
#include <com/sun/star/text/WrapTextMode.hpp>
#include <com/sun/star/text/TextContentAnchorType.hpp>
+//UUUU
+#include <swunohelper.hxx>
+#include <svx/unobrushitemhelper.hxx>
+#include <editeng/unoipset.hxx>
+#include <svx/xflbstit.hxx>
+#include <svx/xflbmtit.hxx>
+#include <com/sun/star/drawing/BitmapMode.hpp>
using namespace ::com::sun::star;
using ::rtl::OUString;
-
/* -----------------------------01.12.00 18:09--------------------------------
---------------------------------------------------------------------------*/
@@ -174,6 +178,13 @@ public:
throw (beans::UnknownPropertyException, lang::WrappedTargetException,
uno::RuntimeException);
+ //UUUU
+ void GetSinglePropertyValue_Impl(
+ const SfxItemPropertySimpleEntry& rEntry,
+ const SfxItemSet& rSet,
+ uno::Any& rAny ) const
+ throw(uno::RuntimeException);
+
uno::Sequence< beans::GetDirectPropertyTolerantResult >
GetPropertyValuesTolerant_Impl(
const uno::Sequence< ::rtl::OUString >& rPropertyNames,
@@ -481,6 +492,99 @@ throw (beans::PropertyVetoException, lang::IllegalArgumentException,
/* -----------------------------02.04.01 11:43--------------------------------
---------------------------------------------------------------------------*/
+
+//UUUU Support for DrawingLayer FillStyles for GetPropertyValue() usages
+void SwXParagraph::Impl::GetSinglePropertyValue_Impl(
+ const SfxItemPropertySimpleEntry& rEntry,
+ const SfxItemSet& rSet,
+ uno::Any& rAny ) const
+throw(uno::RuntimeException)
+{
+ bool bDone(false);
+
+ switch(rEntry.nWID)
+ {
+ case RES_BACKGROUND:
+ {
+ const SvxBrushItem aOriginalBrushItem(getSvxBrushItemFromSourceSet(rSet, RES_BACKGROUND));
+ const sal_uInt8 nMemberId(rEntry.nMemberId & (~SFX_METRIC_ITEM));
+
+ if(!aOriginalBrushItem.QueryValue(rAny, nMemberId))
+ {
+ OSL_ENSURE(false, "Error getting attribute from RES_BACKGROUND (!)");
+ }
+
+ bDone = true;
+ break;
+ }
+ case OWN_ATTR_FILLBMP_MODE:
+ {
+ const XFillBmpStretchItem* pStretchItem = dynamic_cast< const XFillBmpStretchItem* >(&rSet.Get(XATTR_FILLBMP_STRETCH));
+ const XFillBmpTileItem* pTileItem = dynamic_cast< const XFillBmpTileItem* >(&rSet.Get(XATTR_FILLBMP_TILE));
+
+ if( pTileItem && pTileItem->GetValue() )
+ {
+ rAny <<= drawing::BitmapMode_REPEAT;
+ }
+ else if( pStretchItem && pStretchItem->GetValue() )
+ {
+ rAny <<= drawing::BitmapMode_STRETCH;
+ }
+ else
+ {
+ rAny <<= drawing::BitmapMode_NO_REPEAT;
+ }
+
+ bDone = true;
+ break;
+ }
+ default: break;
+ }
+
+ if(!bDone)
+ {
+ // fallback to standard get value implementation used before this helper was created
+ m_rPropSet.getPropertyValue(rEntry, rSet, rAny);
+
+ if(rEntry.pType && *(rEntry.pType) == ::getCppuType((const sal_Int16*)0) && *(rEntry.pType) != rAny.getValueType())
+ {
+ // since the sfx uInt16 item now exports a sal_Int32, we may have to fix this here
+ sal_Int32 nValue(0);
+
+ rAny >>= nValue;
+ rAny <<= static_cast< sal_Int16 >(nValue);
+ }
+
+ //UUUU check for needed metric translation
+ if(rEntry.nMemberId & SFX_METRIC_ITEM)
+ {
+ bool bDoIt(true);
+
+ if(XATTR_FILLBMP_SIZEX == rEntry.nWID || XATTR_FILLBMP_SIZEY == rEntry.nWID)
+ {
+ // exception: If these ItemTypes are used, do not convert when these are negative
+ // since this means they are intended as percent values
+ sal_Int32 nValue = 0;
+
+ if(rAny >>= nValue)
+ {
+ bDoIt = nValue > 0;
+ }
+ }
+
+ if(bDoIt)
+ {
+ const SfxMapUnit eMapUnit(rSet.GetPool()->GetMetric(rEntry.nWID));
+
+ if(eMapUnit != SFX_MAPUNIT_100TH_MM)
+ {
+ SvxUnoConvertToMM(eMapUnit, rAny);
+ }
+ }
+ }
+ }
+}
+
uno::Sequence< uno::Any > SwXParagraph::Impl::GetPropertyValues_Impl(
const uno::Sequence< OUString > & rPropertyNames )
throw (beans::UnknownPropertyException, lang::WrappedTargetException,
@@ -514,8 +618,8 @@ throw (beans::UnknownPropertyException, lang::WrappedTargetException,
*pEntry, aPam, &(pValues[nProp]), eTemp, &rTxtNode );
if (!bDone)
{
- m_rPropSet.getPropertyValue(
- *pEntry, rAttrSet, pValues[nProp]);
+ //UUUU
+ GetSinglePropertyValue_Impl(*pEntry, rAttrSet, pValues[nProp]);
}
}
}
@@ -797,8 +901,8 @@ throw (uno::RuntimeException)
// if not found try the real paragraph attributes...
if (!bDone)
{
- m_rPropSet.getPropertyValue(
- *pEntry, rValueAttrSet, aValue );
+ //UUUU
+ GetSinglePropertyValue_Impl(*pEntry, rValueAttrSet, aValue);
}
}
@@ -931,61 +1035,107 @@ throw (beans::UnknownPropertyException, lang::WrappedTargetException,
//-----------------------------------------------------------------------------
beans::PropertyState lcl_SwXParagraph_getPropertyState(
-// SwUnoCrsr& rUnoCrsr,
- const SwTxtNode& rTxtNode,
- const SwAttrSet** ppSet,
- const SfxItemPropertySimpleEntry& rEntry,
- sal_Bool &rAttrSetFetched )
-throw (beans::UnknownPropertyException)
+ // SwUnoCrsr& rUnoCrsr,
+ const SwTxtNode& rTxtNode,
+ const SwAttrSet** ppSet,
+ const SfxItemPropertySimpleEntry& rEntry,
+ sal_Bool &rAttrSetFetched)
+ throw (beans::UnknownPropertyException)
{
- beans::PropertyState eRet = beans::PropertyState_DEFAULT_VALUE;
+ beans::PropertyState eRet(beans::PropertyState_DEFAULT_VALUE);
- if(!(*ppSet) && !rAttrSetFetched )
+ if(!(*ppSet) && !rAttrSetFetched)
{
(*ppSet) = rTxtNode.GetpSwAttrSet();
rAttrSetFetched = sal_True;
}
- SwPosition aPos( rTxtNode );
- SwPaM aPam( aPos );
- switch( rEntry.nWID )
+
+ SwPosition aPos(rTxtNode);
+ SwPaM aPam(aPos);
+ bool bDone(false);
+
+ switch(rEntry.nWID)
{
- case FN_UNO_NUM_RULES:
- // if numbering is set, return it; else do nothing
- SwUnoCursorHelper::getNumberingProperty( aPam, eRet, NULL );
- break;
- case FN_UNO_ANCHOR_TYPES:
- break;
- case RES_ANCHOR:
- if ( MID_SURROUND_SURROUNDTYPE != rEntry.nMemberId )
- goto lcl_SwXParagraph_getPropertyStateDEFAULT;
- break;
- case RES_SURROUND:
- if ( MID_ANCHOR_ANCHORTYPE != rEntry.nMemberId )
- goto lcl_SwXParagraph_getPropertyStateDEFAULT;
- break;
- case FN_UNO_PARA_STYLE:
- case FN_UNO_PARA_CONDITIONAL_STYLE_NAME:
+ case FN_UNO_NUM_RULES:
{
- SwFmtColl* pFmt = SwUnoCursorHelper::GetCurTxtFmtColl(
- aPam, rEntry.nWID == FN_UNO_PARA_CONDITIONAL_STYLE_NAME);
- eRet = pFmt ? beans::PropertyState_DIRECT_VALUE
- : beans::PropertyState_AMBIGUOUS_VALUE;
+ // if numbering is set, return it; else do nothing
+ SwUnoCursorHelper::getNumberingProperty(aPam,eRet,NULL);
+ bDone = true;
+ break;
}
- break;
- case FN_UNO_PAGE_STYLE:
+ case FN_UNO_ANCHOR_TYPES:
+ {
+ bDone = true;
+ break;
+ }
+ case RES_ANCHOR:
+ {
+ bDone = (MID_SURROUND_SURROUNDTYPE == rEntry.nMemberId);
+ break;
+ }
+ case RES_SURROUND:
+ {
+ bDone = (MID_ANCHOR_ANCHORTYPE == rEntry.nMemberId);
+ break;
+ }
+ case FN_UNO_PARA_STYLE:
+ case FN_UNO_PARA_CONDITIONAL_STYLE_NAME:
+ {
+ SwFmtColl* pFmt = SwUnoCursorHelper::GetCurTxtFmtColl(aPam,rEntry.nWID == FN_UNO_PARA_CONDITIONAL_STYLE_NAME);
+ eRet = pFmt ? beans::PropertyState_DIRECT_VALUE : beans::PropertyState_AMBIGUOUS_VALUE;
+ bDone = true;
+ break;
+ }
+ case FN_UNO_PAGE_STYLE:
{
String sVal;
- SwUnoCursorHelper::GetCurPageStyle( aPam, sVal );
- eRet = sVal.Len() ? beans::PropertyState_DIRECT_VALUE
- : beans::PropertyState_AMBIGUOUS_VALUE;
+ SwUnoCursorHelper::GetCurPageStyle(aPam,sVal);
+ eRet = sVal.Len() ? beans::PropertyState_DIRECT_VALUE : beans::PropertyState_AMBIGUOUS_VALUE;
+ bDone = true;
+ break;
}
- break;
- lcl_SwXParagraph_getPropertyStateDEFAULT:
- default:
- if((*ppSet) && SFX_ITEM_SET == (*ppSet)->GetItemState(rEntry.nWID, sal_False))
+
+ //UUUU DrawingLayer PropertyStyle support
+ case OWN_ATTR_FILLBMP_MODE:
+ {
+ if(*ppSet)
+ {
+ if(SFX_ITEM_SET == (*ppSet)->GetItemState(XATTR_FILLBMP_STRETCH, false)
+ || SFX_ITEM_SET == (*ppSet)->GetItemState(XATTR_FILLBMP_TILE, false))
+ {
+ eRet = beans::PropertyState_DIRECT_VALUE;
+ }
+ else
+ {
+ eRet = beans::PropertyState_AMBIGUOUS_VALUE;
+ }
+
+ bDone = true;
+ }
+ break;
+ }
+ case RES_BACKGROUND:
+ {
+ if(*ppSet)
+ {
+ if(SWUnoHelper::needToMapFillItemsToSvxBrushItemTypes(**ppSet))
+ {
+ eRet = beans::PropertyState_DIRECT_VALUE;
+ bDone = true;
+ }
+ }
+ break;
+ }
+ }
+
+ if(!bDone)
+ {
+ if((*ppSet) && SFX_ITEM_SET == (*ppSet)->GetItemState(rEntry.nWID,sal_False))
+ {
eRet = beans::PropertyState_DIRECT_VALUE;
- break;
+ }
}
+
return eRet;
}
@@ -1102,10 +1252,24 @@ throw (beans::UnknownPropertyException, uno::RuntimeException)
static_cast<cppu::OWeakObject *>(this));
}
- if (pEntry->nWID < RES_FRMATR_END)
+ const bool bBelowFrmAtrEnd(pEntry->nWID < RES_FRMATR_END);
+ const bool bDrawingLayerRange(XATTR_FILL_FIRST <= pEntry->nWID && XATTR_FILL_LAST >= pEntry->nWID);
+
+ if(bBelowFrmAtrEnd || bDrawingLayerRange)
{
SvUShortsSort aWhichIds;
- aWhichIds.Insert(pEntry->nWID);
+
+ //UUUU For FillBitmapMode two IDs have to be reset (!)
+ if(OWN_ATTR_FILLBMP_MODE == pEntry->nWID)
+ {
+ aWhichIds.Insert(XATTR_FILLBMP_STRETCH);
+ aWhichIds.Insert(XATTR_FILLBMP_TILE);
+ }
+ else
+ {
+ aWhichIds.Insert(pEntry->nWID);
+ }
+
if (pEntry->nWID < RES_PARATR_BEGIN)
{
aCursor.GetDoc()->ResetAttrs(aCursor, sal_True, &aWhichIds);
@@ -1116,20 +1280,24 @@ throw (beans::UnknownPropertyException, uno::RuntimeException)
// to paragraph boundaries
SwPosition aStart( *aCursor.Start() );
SwPosition aEnd ( *aCursor.End() );
- ::std::auto_ptr<SwUnoCrsr> pTemp(
- aCursor.GetDoc()->CreateUnoCrsr(aStart, sal_False) );
+ ::std::auto_ptr<SwUnoCrsr> pTemp( aCursor.GetDoc()->CreateUnoCrsr(aStart, sal_False) );
+
if(!SwUnoCursorHelper::IsStartOfPara(*pTemp))
{
pTemp->MovePara(fnParaCurr, fnParaStart);
}
+
pTemp->SetMark();
*pTemp->GetPoint() = aEnd;
//pTemp->Exchange();
+
SwUnoCursorHelper::SelectPam(*pTemp, true);
+
if (!SwUnoCursorHelper::IsEndOfPara(*pTemp))
{
pTemp->MovePara(fnParaCurr, fnParaEnd);
}
+
pTemp->GetDoc()->ResetAttrs(*pTemp, sal_True, &aWhichIds);
}
}
@@ -1167,10 +1335,13 @@ throw (beans::UnknownPropertyException, lang::WrappedTargetException,
static_cast<cppu::OWeakObject *>(this));
}
- if (pEntry->nWID < RES_FRMATR_END)
+ const bool bBelowFrmAtrEnd(pEntry->nWID < RES_FRMATR_END);
+ const bool bDrawingLayerRange(XATTR_FILL_FIRST <= pEntry->nWID && XATTR_FILL_LAST >= pEntry->nWID);
+
+ if(bBelowFrmAtrEnd || bDrawingLayerRange)
{
- const SfxPoolItem& rDefItem =
- rTxtNode.GetDoc()->GetAttrPool().GetDefaultItem(pEntry->nWID);
+ const SfxPoolItem& rDefItem = rTxtNode.GetDoc()->GetAttrPool().GetDefaultItem(pEntry->nWID);
+
rDefItem.QueryValue(aRet, pEntry->nMemberId);
}
diff --git a/sw/source/core/unocore/unoprnms.cxx b/sw/source/core/unocore/unoprnms.cxx
index c74c0ba61572..024981084c01 100644
--- a/sw/source/core/unocore/unoprnms.cxx
+++ b/sw/source/core/unocore/unoprnms.cxx
@@ -781,32 +781,87 @@ const SwPropNameTab aPropNameTab = {
/* 0743 UNO_NAME_INITIALS */ {MAP_CHAR_LEN("Initials")},
//UUUU names for FillAttributes from SVX; use already existing string defines from editengine
-/* 0744 UNO_NAME_FILLBMP_LOGICAL_SIZE */ {MAP_CHAR_LEN(UNO_NAME_FILLBMP_LOGICAL_SIZE)},
-/* 0745 UNO_NAME_FILLBMP_OFFSET_X */ {MAP_CHAR_LEN(UNO_NAME_FILLBMP_OFFSET_X)},
-/* 0746 UNO_NAME_FILLBMP_OFFSET_Y */ {MAP_CHAR_LEN(UNO_NAME_FILLBMP_OFFSET_Y)},
-/* 0747 UNO_NAME_FILLBMP_POSITION_OFFSET_X */ {MAP_CHAR_LEN(UNO_NAME_FILLBMP_POSITION_OFFSET_X)},
-/* 0748 UNO_NAME_FILLBMP_POSITION_OFFSET_Y */ {MAP_CHAR_LEN(UNO_NAME_FILLBMP_POSITION_OFFSET_Y)},
-/* 0749 UNO_NAME_FILLBMP_RECTANGLE_POINT */ {MAP_CHAR_LEN(UNO_NAME_FILLBMP_RECTANGLE_POINT)},
-/* 0750 UNO_NAME_FILLBMP_SIZE_X */ {MAP_CHAR_LEN(UNO_NAME_FILLBMP_SIZE_X)},
-/* 0751 UNO_NAME_FILLBMP_SIZE_Y */ {MAP_CHAR_LEN(UNO_NAME_FILLBMP_SIZE_Y)},
-/* 0752 UNO_NAME_FILLBMP_STRETCH */ {MAP_CHAR_LEN(UNO_NAME_FILLBMP_STRETCH)},
-/* 0753 UNO_NAME_FILLBMP_TILE */ {MAP_CHAR_LEN(UNO_NAME_FILLBMP_TILE)},
-/* 0754 UNO_NAME_FILLBMP_MODE */ {MAP_CHAR_LEN(UNO_NAME_FILLBMP_MODE)},
-/* 0755 UNO_NAME_FILLCOLOR */ {MAP_CHAR_LEN(UNO_NAME_FILLCOLOR)},
-/* 0756 UNO_NAME_FILLBACKGROUND */ {MAP_CHAR_LEN(UNO_NAME_FILLBACKGROUND)},
-/* 0757 UNO_NAME_FILLBITMAP */ {MAP_CHAR_LEN(UNO_NAME_FILLBITMAP)},
-/* 0758 UNO_NAME_FILLBITMAPNAME */ {MAP_CHAR_LEN(UNO_NAME_FILLBITMAPNAME)},
-/* 0759 UNO_NAME_FILLBITMAPURL */ {MAP_CHAR_LEN(UNO_NAME_FILLBITMAPURL)},
-/* 0760 UNO_NAME_FILLGRADIENTSTEPCOUNT */ {MAP_CHAR_LEN(UNO_NAME_FILLGRADIENTSTEPCOUNT)},
-/* 0761 UNO_NAME_FILLGRADIENT */ {MAP_CHAR_LEN(UNO_NAME_FILLGRADIENT)},
-/* 0762 UNO_NAME_FILLGRADIENTNAME */ {MAP_CHAR_LEN(UNO_NAME_FILLGRADIENTNAME)},
-/* 0763 UNO_NAME_FILLHATCH */ {MAP_CHAR_LEN(UNO_NAME_FILLHATCH)},
-/* 0764 UNO_NAME_FILLHATCHNAME */ {MAP_CHAR_LEN(UNO_NAME_FILLHATCHNAME)},
-/* 0765 UNO_NAME_FILLSTYLE */ {MAP_CHAR_LEN(UNO_NAME_FILLSTYLE)},
-/* 0766 UNO_NAME_FILL_TRANSPARENCE */ {MAP_CHAR_LEN(UNO_NAME_FILL_TRANSPARENCE)},
-/* 0767 UNO_NAME_FILLTRANSPARENCEGRADIENT */ {MAP_CHAR_LEN(UNO_NAME_FILLTRANSPARENCEGRADIENT)},
-/* 0768 UNO_NAME_FILLTRANSPARENCEGRADIENTNAME */ {MAP_CHAR_LEN(UNO_NAME_FILLTRANSPARENCEGRADIENTNAME)},
-/* 0769 UNO_NAME_FILLCOLOR_2 */ {MAP_CHAR_LEN(UNO_NAME_FILLCOLOR_2)}
+/* 0744 UNO_NAME_SW_FILLBMP_LOGICAL_SIZE */ {MAP_CHAR_LEN(UNO_NAME_FILLBMP_LOGICAL_SIZE)},
+/* 0745 UNO_NAME_SW_FILLBMP_OFFSET_X */ {MAP_CHAR_LEN(UNO_NAME_FILLBMP_OFFSET_X)},
+/* 0746 UNO_NAME_SW_FILLBMP_OFFSET_Y */ {MAP_CHAR_LEN(UNO_NAME_FILLBMP_OFFSET_Y)},
+/* 0747 UNO_NAME_SW_FILLBMP_POSITION_OFFSET_X */ {MAP_CHAR_LEN(UNO_NAME_FILLBMP_POSITION_OFFSET_X)},
+/* 0748 UNO_NAME_SW_FILLBMP_POSITION_OFFSET_Y */ {MAP_CHAR_LEN(UNO_NAME_FILLBMP_POSITION_OFFSET_Y)},
+/* 0749 UNO_NAME_SW_FILLBMP_RECTANGLE_POINT */ {MAP_CHAR_LEN(UNO_NAME_FILLBMP_RECTANGLE_POINT)},
+/* 0750 UNO_NAME_SW_FILLBMP_SIZE_X */ {MAP_CHAR_LEN(UNO_NAME_FILLBMP_SIZE_X)},
+/* 0751 UNO_NAME_SW_FILLBMP_SIZE_Y */ {MAP_CHAR_LEN(UNO_NAME_FILLBMP_SIZE_Y)},
+/* 0752 UNO_NAME_SW_FILLBMP_STRETCH */ {MAP_CHAR_LEN(UNO_NAME_FILLBMP_STRETCH)},
+/* 0753 UNO_NAME_SW_FILLBMP_TILE */ {MAP_CHAR_LEN(UNO_NAME_FILLBMP_TILE)},
+/* 0754 UNO_NAME_SW_FILLBMP_MODE */ {MAP_CHAR_LEN(UNO_NAME_FILLBMP_MODE)},
+/* 0755 UNO_NAME_SW_FILLCOLOR */ {MAP_CHAR_LEN(UNO_NAME_FILLCOLOR)},
+/* 0756 UNO_NAME_SW_FILLBACKGROUND */ {MAP_CHAR_LEN(UNO_NAME_FILLBACKGROUND)},
+/* 0757 UNO_NAME_SW_FILLBITMAP */ {MAP_CHAR_LEN(UNO_NAME_FILLBITMAP)},
+/* 0758 UNO_NAME_SW_FILLBITMAPNAME */ {MAP_CHAR_LEN(UNO_NAME_FILLBITMAPNAME)},
+/* 0759 UNO_NAME_SW_FILLBITMAPURL */ {MAP_CHAR_LEN(UNO_NAME_FILLBITMAPURL)},
+/* 0760 UNO_NAME_SW_FILLGRADIENTSTEPCOUNT */ {MAP_CHAR_LEN(UNO_NAME_FILLGRADIENTSTEPCOUNT)},
+/* 0761 UNO_NAME_SW_FILLGRADIENT */ {MAP_CHAR_LEN(UNO_NAME_FILLGRADIENT)},
+/* 0762 UNO_NAME_SW_FILLGRADIENTNAME */ {MAP_CHAR_LEN(UNO_NAME_FILLGRADIENTNAME)},
+/* 0763 UNO_NAME_SW_FILLHATCH */ {MAP_CHAR_LEN(UNO_NAME_FILLHATCH)},
+/* 0764 UNO_NAME_SW_FILLHATCHNAME */ {MAP_CHAR_LEN(UNO_NAME_FILLHATCHNAME)},
+/* 0765 UNO_NAME_SW_FILLSTYLE */ {MAP_CHAR_LEN(UNO_NAME_FILLSTYLE)},
+/* 0766 UNO_NAME_SW_FILL_TRANSPARENCE */ {MAP_CHAR_LEN(UNO_NAME_FILL_TRANSPARENCE)},
+/* 0767 UNO_NAME_SW_FILLTRANSPARENCEGRADIENT */ {MAP_CHAR_LEN(UNO_NAME_FILLTRANSPARENCEGRADIENT)},
+/* 0768 UNO_NAME_SW_FILLTRANSPARENCEGRADIENTNAME */ {MAP_CHAR_LEN(UNO_NAME_FILLTRANSPARENCEGRADIENTNAME)},
+/* 0769 UNO_NAME_SW_FILLCOLOR_2 */ {MAP_CHAR_LEN(UNO_NAME_FILLCOLOR_2)},
+
+/* 0770 UNO_NAME_HEADER_FILLBMP_LOGICAL_SIZE */ {MAP_CHAR_LEN("Header" UNO_NAME_FILLBMP_LOGICAL_SIZE)},
+/* 0771 UNO_NAME_HEADER_FILLBMP_OFFSET_X */ {MAP_CHAR_LEN("Header" UNO_NAME_FILLBMP_OFFSET_X)},
+/* 0772 UNO_NAME_HEADER_FILLBMP_OFFSET_Y */ {MAP_CHAR_LEN("Header" UNO_NAME_FILLBMP_OFFSET_Y)},
+/* 0773 UNO_NAME_HEADER_FILLBMP_POSITION_OFFSET_X */ {MAP_CHAR_LEN("Header" UNO_NAME_FILLBMP_POSITION_OFFSET_X)},
+/* 0774 UNO_NAME_HEADER_FILLBMP_POSITION_OFFSET_Y */ {MAP_CHAR_LEN("Header" UNO_NAME_FILLBMP_POSITION_OFFSET_Y)},
+/* 0775 UNO_NAME_HEADER_FILLBMP_RECTANGLE_POINT */ {MAP_CHAR_LEN("Header" UNO_NAME_FILLBMP_RECTANGLE_POINT)},
+/* 0776 UNO_NAME_HEADER_FILLBMP_SIZE_X */ {MAP_CHAR_LEN("Header" UNO_NAME_FILLBMP_SIZE_X)},
+/* 0777 UNO_NAME_HEADER_FILLBMP_SIZE_Y */ {MAP_CHAR_LEN("Header" UNO_NAME_FILLBMP_SIZE_Y)},
+/* 0778 UNO_NAME_HEADER_FILLBMP_STRETCH */ {MAP_CHAR_LEN("Header" UNO_NAME_FILLBMP_STRETCH)},
+/* 0779 UNO_NAME_HEADER_FILLBMP_TILE */ {MAP_CHAR_LEN("Header" UNO_NAME_FILLBMP_TILE)},
+/* 0780 UNO_NAME_HEADER_FILLBMP_MODE */ {MAP_CHAR_LEN("Header" UNO_NAME_FILLBMP_MODE)},
+/* 0781 UNO_NAME_HEADER_FILLCOLOR */ {MAP_CHAR_LEN("Header" UNO_NAME_FILLCOLOR)},
+/* 0782 UNO_NAME_HEADER_FILLBACKGROUND */ {MAP_CHAR_LEN("Header" UNO_NAME_FILLBACKGROUND)},
+/* 0783 UNO_NAME_HEADER_FILLBITMAP */ {MAP_CHAR_LEN("Header" UNO_NAME_FILLBITMAP)},
+/* 0784 UNO_NAME_HEADER_FILLBITMAPNAME */ {MAP_CHAR_LEN("Header" UNO_NAME_FILLBITMAPNAME)},
+/* 0785 UNO_NAME_HEADER_FILLBITMAPURL */ {MAP_CHAR_LEN("Header" UNO_NAME_FILLBITMAPURL)},
+/* 0786 UNO_NAME_HEADER_FILLGRADIENTSTEPCOUNT */ {MAP_CHAR_LEN("Header" UNO_NAME_FILLGRADIENTSTEPCOUNT)},
+/* 0787 UNO_NAME_HEADER_FILLGRADIENT */ {MAP_CHAR_LEN("Header" UNO_NAME_FILLGRADIENT)},
+/* 0788 UNO_NAME_HEADER_FILLGRADIENTNAME */ {MAP_CHAR_LEN("Header" UNO_NAME_FILLGRADIENTNAME)},
+/* 0789 UNO_NAME_HEADER_FILLHATCH */ {MAP_CHAR_LEN("Header" UNO_NAME_FILLHATCH)},
+/* 0790 UNO_NAME_HEADER_FILLHATCHNAME */ {MAP_CHAR_LEN("Header" UNO_NAME_FILLHATCHNAME)},
+/* 0791 UNO_NAME_HEADER_FILLSTYLE */ {MAP_CHAR_LEN("Header" UNO_NAME_FILLSTYLE)},
+/* 0792 UNO_NAME_HEADER_FILL_TRANSPARENCE */ {MAP_CHAR_LEN("Header" UNO_NAME_FILL_TRANSPARENCE)},
+/* 0793 UNO_NAME_HEADER_FILLTRANSPARENCEGRADIENT */ {MAP_CHAR_LEN("Header" UNO_NAME_FILLTRANSPARENCEGRADIENT)},
+/* 0794 UNO_NAME_HEADER_FILLTRANSPARENCEGRADIENTNAME */ {MAP_CHAR_LEN("Header" UNO_NAME_FILLTRANSPARENCEGRADIENTNAME)},
+/* 0795 UNO_NAME_HEADER_FILLCOLOR_2 */ {MAP_CHAR_LEN("Header" UNO_NAME_FILLCOLOR_2)},
+
+/* 0776 UNO_NAME_FOOTER_FILLBMP_LOGICAL_SIZE */ {MAP_CHAR_LEN("Footer" UNO_NAME_FILLBMP_LOGICAL_SIZE)},
+/* 0777 UNO_NAME_FOOTER_FILLBMP_OFFSET_X */ {MAP_CHAR_LEN("Footer" UNO_NAME_FILLBMP_OFFSET_X)},
+/* 0778 UNO_NAME_FOOTER_FILLBMP_OFFSET_Y */ {MAP_CHAR_LEN("Footer" UNO_NAME_FILLBMP_OFFSET_Y)},
+/* 0779 UNO_NAME_FOOTER_FILLBMP_POSITION_OFFSET_X */ {MAP_CHAR_LEN("Footer" UNO_NAME_FILLBMP_POSITION_OFFSET_X)},
+/* 0780 UNO_NAME_FOOTER_FILLBMP_POSITION_OFFSET_Y */ {MAP_CHAR_LEN("Footer" UNO_NAME_FILLBMP_POSITION_OFFSET_Y)},
+/* 0781 UNO_NAME_FOOTER_FILLBMP_RECTANGLE_POINT */ {MAP_CHAR_LEN("Footer" UNO_NAME_FILLBMP_RECTANGLE_POINT)},
+/* 0782 UNO_NAME_FOOTER_FILLBMP_SIZE_X */ {MAP_CHAR_LEN("Footer" UNO_NAME_FILLBMP_SIZE_X)},
+/* 0783 UNO_NAME_FOOTER_FILLBMP_SIZE_Y */ {MAP_CHAR_LEN("Footer" UNO_NAME_FILLBMP_SIZE_Y)},
+/* 0784 UNO_NAME_FOOTER_FILLBMP_STRETCH */ {MAP_CHAR_LEN("Footer" UNO_NAME_FILLBMP_STRETCH)},
+/* 0785 UNO_NAME_FOOTER_FILLBMP_TILE */ {MAP_CHAR_LEN("Footer" UNO_NAME_FILLBMP_TILE)},
+/* 0786 UNO_NAME_FOOTER_FILLBMP_MODE */ {MAP_CHAR_LEN("Footer" UNO_NAME_FILLBMP_MODE)},
+/* 0787 UNO_NAME_FOOTER_FILLCOLOR */ {MAP_CHAR_LEN("Footer" UNO_NAME_FILLCOLOR)},
+/* 0788 UNO_NAME_FOOTER_FILLBACKGROUND */ {MAP_CHAR_LEN("Footer" UNO_NAME_FILLBACKGROUND)},
+/* 0789 UNO_NAME_FOOTER_FILLBITMAP */ {MAP_CHAR_LEN("Footer" UNO_NAME_FILLBITMAP)},
+/* 0790 UNO_NAME_FOOTER_FILLBITMAPNAME */ {MAP_CHAR_LEN("Footer" UNO_NAME_FILLBITMAPNAME)},
+/* 0791 UNO_NAME_FOOTER_FILLBITMAPURL */ {MAP_CHAR_LEN("Footer" UNO_NAME_FILLBITMAPURL)},
+/* 0792 UNO_NAME_FOOTER_FILLGRADIENTSTEPCOUNT */ {MAP_CHAR_LEN("Footer" UNO_NAME_FILLGRADIENTSTEPCOUNT)},
+/* 0793 UNO_NAME_FOOTER_FILLGRADIENT */ {MAP_CHAR_LEN("Footer" UNO_NAME_FILLGRADIENT)},
+/* 0794 UNO_NAME_FOOTER_FILLGRADIENTNAME */ {MAP_CHAR_LEN("Footer" UNO_NAME_FILLGRADIENTNAME)},
+/* 0795 UNO_NAME_FOOTER_FILLHATCH */ {MAP_CHAR_LEN("Footer" UNO_NAME_FILLHATCH)},
+/* 0796 UNO_NAME_FOOTER_FILLHATCHNAME */ {MAP_CHAR_LEN("Footer" UNO_NAME_FILLHATCHNAME)},
+/* 0797 UNO_NAME_FOOTER_FILLSTYLE */ {MAP_CHAR_LEN("Footer" UNO_NAME_FILLSTYLE)},
+/* 0798 UNO_NAME_FOOTER_FILL_TRANSPARENCE */ {MAP_CHAR_LEN("Footer" UNO_NAME_FILL_TRANSPARENCE)},
+/* 0799 UNO_NAME_FOOTER_FILLTRANSPARENCEGRADIENT */ {MAP_CHAR_LEN("Footer" UNO_NAME_FILLTRANSPARENCEGRADIENT)},
+/* 0800 UNO_NAME_FOOTER_FILLTRANSPARENCEGRADIENTNAME */ {MAP_CHAR_LEN("Footer" UNO_NAME_FILLTRANSPARENCEGRADIENTNAME)},
+/* 0801 UNO_NAME_FOOTER_FILLCOLOR_2 */ {MAP_CHAR_LEN("Footer" UNO_NAME_FILLCOLOR_2)}
+
};
const SwPropNameLen& SwGetPropName( sal_uInt16 nId )
diff --git a/sw/source/core/unocore/unosett.cxx b/sw/source/core/unocore/unosett.cxx
index df0a4a10872d..ca2ceeb8c990 100644
--- a/sw/source/core/unocore/unosett.cxx
+++ b/sw/source/core/unocore/unosett.cxx
@@ -2167,29 +2167,24 @@ void SwXNumberingRules::SetNumberingRuleByIndex(
OUString uTmp;
pData->aVal >>= uTmp;
String sStyleName;
- SwStyleNameMapper::FillUIName(uTmp, sStyleName, nsSwGetPoolIdFromName::GET_POOLID_TXTCOLL, sal_True );
+ SwStyleNameMapper::FillUIName( uTmp, sStyleName, nsSwGetPoolIdFromName::GET_POOLID_TXTCOLL, sal_True );
const SwTxtFmtColls* pColls = pDocShell->GetDoc()->GetTxtFmtColls();
const sal_uInt16 nCount = pColls->Count();
- for(sal_uInt16 k = 0; k < nCount; ++k)
+ for ( sal_uInt16 k = 0; k < nCount; ++k )
{
- SwTxtFmtColl &rTxtColl = *((*pColls)[k]);
- if(rTxtColl.IsDefault())
+ SwTxtFmtColl &rTxtColl = *( ( *pColls )[k] );
+ if ( rTxtColl.IsDefault() )
continue;
- //if(rTxtColl.GetOutlineLevel() == nIndex && //#outline level,removed by zhaojianwei
- // rTxtColl.GetName() != sStyleName)
- // rTxtColl..SetOutlineLevel(NO_NUMBERING);
- //else if(rTxtColl.GetName() == sStyleName)
- // rTxtColl.SetOutlineLevel(sal_Int8(nIndex));
- if ( rTxtColl.IsAssignedToListLevelOfOutlineStyle() && //add by zhaojianwei
- rTxtColl.GetAssignedOutlineStyleLevel() == nIndex &&
- rTxtColl.GetName() != sStyleName )
+ if ( rTxtColl.IsAssignedToListLevelOfOutlineStyle()
+ && rTxtColl.GetAssignedOutlineStyleLevel() == nIndex
+ && rTxtColl.GetName() != sStyleName )
{
rTxtColl.DeleteAssignmentToListLevelOfOutlineStyle();
}
else if ( rTxtColl.GetName() == sStyleName )
{
rTxtColl.AssignToListLevelOfOutlineStyle( nIndex );
- } //<-end,,zhaojianwei,
+ }
}
}
break;
diff --git a/sw/source/core/unocore/unostyle.cxx b/sw/source/core/unocore/unostyle.cxx
index e6eb8cce0fe3..45bc45b75cec 100644
--- a/sw/source/core/unocore/unostyle.cxx
+++ b/sw/source/core/unocore/unostyle.cxx
@@ -19,8 +19,6 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sw.hxx"
@@ -76,12 +74,14 @@
#include <numrule.hxx>
//UUUU
-#include <unobrushitemhelper.hxx>
+#include <svx/unobrushitemhelper.hxx>
#include <editeng/unoipset.hxx>
#include <editeng/memberids.hrc>
#include <svx/unoshape.hxx>
#include <svx/xflbstit.hxx>
#include <svx/xflbmtit.hxx>
+#include <swunohelper.hxx>
+#include <svx/xbtmpit.hxx>
#include <boost/shared_ptr.hpp>
@@ -124,47 +124,6 @@ using ::rtl::OUString;
*
******************************************************************************/
-//convert FN_... to RES_ in header and footer itemset
-sal_uInt16 lcl_ConvertFNToRES(sal_uInt16 nFNId)
-{
- sal_uInt16 nRes = USHRT_MAX;
- switch(nFNId)
- {
- case FN_UNO_FOOTER_ON:
- case FN_UNO_HEADER_ON:
- break;
- case FN_UNO_FOOTER_BACKGROUND:
- case FN_UNO_HEADER_BACKGROUND: nRes = RES_BACKGROUND;
- break;
- case FN_UNO_FOOTER_BOX:
- case FN_UNO_HEADER_BOX: nRes = RES_BOX;
- break;
- case FN_UNO_FOOTER_LR_SPACE:
- case FN_UNO_HEADER_LR_SPACE: nRes = RES_LR_SPACE;
- break;
- case FN_UNO_FOOTER_SHADOW:
- case FN_UNO_HEADER_SHADOW: nRes = RES_SHADOW;
- break;
- case FN_UNO_FOOTER_BODY_DISTANCE:
- case FN_UNO_HEADER_BODY_DISTANCE: nRes = RES_UL_SPACE;
- break;
- case FN_UNO_FOOTER_IS_DYNAMIC_DISTANCE:
- case FN_UNO_HEADER_IS_DYNAMIC_DISTANCE: nRes = SID_ATTR_PAGE_DYNAMIC;
- break;
- case FN_UNO_FOOTER_SHARE_CONTENT:
- case FN_UNO_HEADER_SHARE_CONTENT: nRes = SID_ATTR_PAGE_SHARED;
- break;
- case FN_UNO_FOOTER_HEIGHT:
- case FN_UNO_HEADER_HEIGHT: nRes = SID_ATTR_PAGE_SIZE;
- break;
- case FN_UNO_FOOTER_EAT_SPACING:
- case FN_UNO_HEADER_EAT_SPACING: nRes = RES_HEADER_FOOTER_EAT_SPACING;
- break;
- }
- return nRes;
-
-}
-
SwGetPoolIdFromName lcl_GetSwEnumFromSfxEnum ( SfxStyleFamily eFamily )
{
switch ( eFamily )
@@ -1737,99 +1696,138 @@ void SwXStyle::ApplyDescriptorProperties()
/*-- 18.04.01 13:07:27---------------------------------------------------
-----------------------------------------------------------------------*/
-struct SwStyleBase_Impl
+class SwStyleBase_Impl
{
- SwDoc& rDoc;
+private:
+ SwDoc& mrDoc;
+ const SwPageDesc* mpOldPageDesc;
+ rtl::Reference< SwDocStyleSheet > mxNewBase;
+ SfxItemSet* mpItemSet;
+ const String& mrStyleName;
+ sal_uInt16 mnPDescPos;
+ const SwAttrSet* mpParentStyle;
- const SwPageDesc* pOldPageDesc;
+public:
+ SwStyleBase_Impl(
+ SwDoc& rSwDoc,
+ const String& rName,
+ const SwAttrSet* pParentStyle)
+ : mrDoc(rSwDoc),
+ mpOldPageDesc(0),
+ mxNewBase(),
+ mpItemSet(0),
+ mrStyleName(rName),
+ mnPDescPos(0xffff),
+ mpParentStyle(pParentStyle)
+ {
+ }
- rtl::Reference< SwDocStyleSheet > mxNewBase;
- SfxItemSet* pItemSet;
+ ~SwStyleBase_Impl()
+ {
+ delete mpItemSet;
+ }
- const String& rStyleName;
- sal_uInt16 nPDescPos;
+ rtl::Reference< SwDocStyleSheet >& getNewBase()
+ {
+ return mxNewBase;
+ }
- SwStyleBase_Impl(SwDoc& rSwDoc, const String& rName) :
- rDoc(rSwDoc),
- pOldPageDesc(0),
- pItemSet(0),
- rStyleName(rName),
- nPDescPos(0xffff)
- {}
+ void setNewBase(SwDocStyleSheet* pNew)
+ {
+ mxNewBase = pNew;
+ }
- ~SwStyleBase_Impl(){ delete pItemSet; }
+ sal_Bool HasItemSet()
+ {
+ return mxNewBase.is();
+ }
+
+ SfxItemSet* replaceItemSet(SfxItemSet* pNew)
+ {
+ SfxItemSet* pRetval = mpItemSet;
+ mpItemSet = pNew;
+ return pRetval;
+ }
- sal_Bool HasItemSet() {return mxNewBase.is();}
SfxItemSet& GetItemSet()
+ {
+ DBG_ASSERT(mxNewBase.is(), "no SwDocStyleSheet available");
+
+ if(!mpItemSet)
{
- DBG_ASSERT(mxNewBase.is(), "no SwDocStyleSheet available");
- if(!pItemSet)
- pItemSet = new SfxItemSet(mxNewBase->GetItemSet());
- return *pItemSet;
+ mpItemSet = new SfxItemSet(mxNewBase->GetItemSet());
+
+ //UUUU set parent style to have the correct XFillStyle setting as XFILL_NONE
+ if(!mpItemSet->GetParent() && mpParentStyle)
+ {
+ mpItemSet->SetParent(mpParentStyle);
+ }
}
- const SwPageDesc& GetOldPageDesc();
+ return *mpItemSet;
+ }
+
+ const SwPageDesc& GetOldPageDesc();
};
/* -----------------------------25.04.01 12:44--------------------------------
---------------------------------------------------------------------------*/
const SwPageDesc& SwStyleBase_Impl::GetOldPageDesc()
{
- if(!pOldPageDesc)
+ if(!mpOldPageDesc)
{
sal_uInt16 i;
- sal_uInt16 nPDescCount = rDoc.GetPageDescCnt();
+ sal_uInt16 nPDescCount = mrDoc.GetPageDescCnt();
for(i = 0; i < nPDescCount; i++)
{
const SwPageDesc& rDesc =
- const_cast<const SwDoc &>(rDoc).GetPageDesc( i );
- if(rDesc.GetName() == rStyleName)
+ const_cast<const SwDoc &>(mrDoc).GetPageDesc( i );
+ if(rDesc.GetName() == mrStyleName)
{
- pOldPageDesc = & rDesc;
- nPDescPos = i;
+ mpOldPageDesc = & rDesc;
+ mnPDescPos = i;
break;
}
}
- if(!pOldPageDesc)
+ if(!mpOldPageDesc)
{
for(i = RC_POOLPAGEDESC_BEGIN; i <= STR_POOLPAGE_LANDSCAPE; ++i)
{
const String aFmtName(SW_RES(i));
- if(aFmtName == rStyleName)
+ if(aFmtName == mrStyleName)
{
- pOldPageDesc = rDoc.GetPageDescFromPool( static_cast< sal_uInt16 >(RES_POOLPAGE_BEGIN + i - RC_POOLPAGEDESC_BEGIN) );
+ mpOldPageDesc = mrDoc.GetPageDescFromPool( static_cast< sal_uInt16 >(RES_POOLPAGE_BEGIN + i - RC_POOLPAGEDESC_BEGIN) );
break;
}
}
for(i = 0; i < nPDescCount + 1; i++)
{
const SwPageDesc& rDesc =
- const_cast<const SwDoc &>(rDoc).GetPageDesc( i );
- if(rDesc.GetName() == rStyleName)
+ const_cast<const SwDoc &>(mrDoc).GetPageDesc( i );
+ if(rDesc.GetName() == mrStyleName)
{
- nPDescPos = i;
+ mnPDescPos = i;
break;
}
}
}
}
- return *pOldPageDesc;
+ return *mpOldPageDesc;
}
/* -----------------------------19.04.01 09:44--------------------------------
---------------------------------------------------------------------------*/
-void lcl_SetStyleProperty(const SfxItemPropertySimpleEntry& rEntry,
- const SfxItemPropertySet& rPropSet,
- const uno::Any& rValue,
- SwStyleBase_Impl& rBase,
- SfxStyleSheetBasePool* pBasePool,
- SwDoc* pDoc,
- SfxStyleFamily eFamily)
- throw(beans::PropertyVetoException, lang::IllegalArgumentException,
- lang::WrappedTargetException, uno::RuntimeException)
-
+void lcl_SetStyleProperty(
+ const SfxItemPropertySimpleEntry& rEntry,
+ const SfxItemPropertySet& rPropSet,
+ const uno::Any& rValue,
+ SwStyleBase_Impl& rBase,
+ SfxStyleSheetBasePool* pBasePool,
+ SwDoc* pDoc,
+ SfxStyleFamily eFamily)
+throw(beans::PropertyVetoException, lang::IllegalArgumentException, lang::WrappedTargetException, uno::RuntimeException)
{
//UUUU adapted switch logic to a more readable state; removed goto's and made
// execution of standard setting of proerty in ItemSet dependent of this variable
@@ -1870,18 +1868,18 @@ void lcl_SetStyleProperty(const SfxItemPropertySimpleEntry& rEntry,
switch(rEntry.nWID)
{
- case XATTR_FILLBITMAP:
case XATTR_FILLGRADIENT:
case XATTR_FILLHATCH:
+ case XATTR_FILLBITMAP:
case XATTR_FILLFLOATTRANSPARENCE:
// not yet needed; activate when LineStyle support may be added
// case XATTR_LINESTART:
// case XATTR_LINEEND:
// case XATTR_LINEDASH:
{
- //UUUU add set commands for FillName items
if(MID_NAME == nMemberId)
{
+ //UUUU add set commands for FillName items
OUString aTempName;
SfxItemSet& rStyleSet = rBase.GetItemSet();
@@ -1893,6 +1891,20 @@ void lcl_SetStyleProperty(const SfxItemPropertySimpleEntry& rEntry,
SvxShape::SetFillAttribute(rEntry.nWID, aTempName, rStyleSet);
bDone = true;
}
+ else if(MID_GRAFURL == nMemberId)
+ {
+ if(XATTR_FILLBITMAP == rEntry.nWID)
+ {
+ //UUUU Bitmap also has the MID_GRAFURL mode where a Bitmap URL is used
+ const Graphic aNullGraphic;
+ SfxItemSet& rStyleSet = rBase.GetItemSet();
+ XFillBitmapItem aXFillBitmapItem(rStyleSet.GetPool(), aNullGraphic);
+
+ aXFillBitmapItem.PutValue(aValue, nMemberId);
+ rStyleSet.Put(aXFillBitmapItem);
+ bDone = true;
+ }
+ }
break;
}
@@ -1900,7 +1912,7 @@ void lcl_SetStyleProperty(const SfxItemPropertySimpleEntry& rEntry,
{
//UUUU
SfxItemSet& rStyleSet = rBase.GetItemSet();
- const SvxBrushItem aOriginalBrushItem(getSvxBrushItemFromSourceSet(rStyleSet));
+ const SvxBrushItem aOriginalBrushItem(getSvxBrushItemFromSourceSet(rStyleSet, RES_BACKGROUND));
SvxBrushItem aChangedBrushItem(aOriginalBrushItem);
aChangedBrushItem.PutValue(aValue, nMemberId);
@@ -2053,7 +2065,7 @@ void lcl_SetStyleProperty(const SfxItemPropertySimpleEntry& rEntry,
aSetRule.Set( i, &aFmt );
}
}
- rBase.mxNewBase->SetNumRule(aSetRule);
+ rBase.getNewBase()->SetNumRule(aSetRule);
}
}
else
@@ -2062,34 +2074,25 @@ void lcl_SetStyleProperty(const SfxItemPropertySimpleEntry& rEntry,
bDone = true;
break;
}
- // case FN_UNO_DEFAULT_OUTLINE_LEVEL: //#outline level,removed by zahojianwei
- //{
- // sal_Int8 nLevel = 0;
- // if( aValue >>= nLevel )
- // rBase.mxNewBase->GetCollection()->SetOutlineLevel( nLevel );
- // else
- // rBase.mxNewBase->GetCollection()->SetOutlineLevel( NO_NUMBERING );
- //
- // bDone = true;
- // break;
- //}
- case RES_PARATR_OUTLINELEVEL: //add by zahojianwei
+
+ case RES_PARATR_OUTLINELEVEL:
{
sal_Int16 nLevel = 0;
aValue >>= nLevel;
if( 0 <= nLevel && nLevel <= MAXLEVEL)
- rBase.mxNewBase->GetCollection()->SetAttrOutlineLevel( nLevel );
+ rBase.getNewBase()->GetCollection()->SetAttrOutlineLevel( nLevel );
bDone = true;
- break; //<-end,zhaojianwei
+ break;
}
+
case FN_UNO_FOLLOW_STYLE:
{
OUString sTmp;
aValue >>= sTmp;
String aString;
SwStyleNameMapper::FillUIName(sTmp, aString, lcl_GetSwEnumFromSfxEnum ( eFamily ), sal_True ) ;
- rBase.mxNewBase->SetFollow( aString );
+ rBase.getNewBase()->SetFollow( aString );
bDone = true;
break;
@@ -2151,9 +2154,9 @@ void lcl_SetStyleProperty(const SfxItemPropertySimpleEntry& rEntry,
{
sal_Bool bAuto = *(sal_Bool*)aValue.getValue();
if(SFX_STYLE_FAMILY_PARA == eFamily)
- rBase.mxNewBase->GetCollection()->SetAutoUpdateFmt(bAuto);
+ rBase.getNewBase()->GetCollection()->SetAutoUpdateFmt(bAuto);
else if(SFX_STYLE_FAMILY_FRAME == eFamily)
- rBase.mxNewBase->GetFrmFmt()->SetAutoUpdateFmt(bAuto);
+ rBase.getNewBase()->GetFrmFmt()->SetAutoUpdateFmt(bAuto);
bDone = true;
break;
@@ -2214,7 +2217,7 @@ void lcl_SetStyleProperty(const SfxItemPropertySimpleEntry& rEntry,
}
case FN_UNO_CATEGORY:
{
- if(!rBase.mxNewBase->IsUserDefined())
+ if(!rBase.getNewBase()->IsUserDefined())
throw lang::IllegalArgumentException();
short nSet = 0;
aValue >>= nSet;
@@ -2243,7 +2246,7 @@ void lcl_SetStyleProperty(const SfxItemPropertySimpleEntry& rEntry,
default: throw lang::IllegalArgumentException();
}
- rBase.mxNewBase->SetMask( nId|SFXSTYLEBIT_USERDEF );
+ rBase.getNewBase()->SetMask( nId|SFXSTYLEBIT_USERDEF );
bDone = true;
break;
}
@@ -2345,9 +2348,9 @@ void lcl_SetStyleProperty(const SfxItemPropertySimpleEntry& rEntry,
// --> OD 2006-10-18 #i70223#
if ( SFX_STYLE_FAMILY_PARA == eFamily &&
rEntry.nWID == RES_PARATR_NUMRULE &&
- rBase.mxNewBase.is() && rBase.mxNewBase->GetCollection() &&
- //rBase.mxNewBase->GetCollection()->GetOutlineLevel() < MAXLEVEL /* assigned to list level of outline style */) //#outline level,removed by zhaojianwei
- rBase.mxNewBase->GetCollection()->IsAssignedToListLevelOfOutlineStyle() ) ////<-end,add by zhaojianwei
+ rBase.getNewBase().is() && rBase.getNewBase()->GetCollection() &&
+ //rBase.getNewBase()->GetCollection()->GetOutlineLevel() < MAXLEVEL /* assigned to list level of outline style */) //#outline level,removed by zhaojianwei
+ rBase.getNewBase()->GetCollection()->IsAssignedToListLevelOfOutlineStyle() ) ////<-end,add by zhaojianwei
{
OUString sNewNumberingRuleName;
aValue >>= sNewNumberingRuleName;
@@ -2355,8 +2358,8 @@ void lcl_SetStyleProperty(const SfxItemPropertySimpleEntry& rEntry,
if ( sNewNumberingRuleName.getLength() == 0 || sTmp != pDoc->GetOutlineNumRule()->GetName() )
{
// delete assignment to list level of outline style.
- //rBase.mxNewBase->GetCollection()->SetOutlineLevel( NO_NUMBERING ); //#outline level,removed by zhaojianwei
- rBase.mxNewBase->GetCollection()->DeleteAssignmentToListLevelOfOutlineStyle(); //<-end,adde by zhaojianwei
+ //rBase.getNewBase()->GetCollection()->SetOutlineLevel( NO_NUMBERING ); //#outline level,removed by zhaojianwei
+ rBase.getNewBase()->GetCollection()->DeleteAssignmentToListLevelOfOutlineStyle(); //<-end,adde by zhaojianwei
}
}
}
@@ -2367,31 +2370,34 @@ void lcl_SetStyleProperty(const SfxItemPropertySimpleEntry& rEntry,
void SAL_CALL SwXStyle::SetPropertyValues_Impl(
const uno::Sequence< OUString >& rPropertyNames,
const uno::Sequence< uno::Any >& rValues )
- throw( beans::UnknownPropertyException, beans::PropertyVetoException, lang::IllegalArgumentException,
- lang::WrappedTargetException, uno::RuntimeException)
+throw( beans::UnknownPropertyException, beans::PropertyVetoException, lang::IllegalArgumentException, lang::WrappedTargetException, uno::RuntimeException)
{
if ( !m_pDoc )
throw uno::RuntimeException();
+
sal_Int8 nPropSetId = PROPERTY_MAP_CHAR_STYLE;
+
switch(eFamily)
{
case SFX_STYLE_FAMILY_PARA : nPropSetId = bIsConditional ? PROPERTY_MAP_CONDITIONAL_PARA_STYLE : PROPERTY_MAP_PARA_STYLE; break;
case SFX_STYLE_FAMILY_FRAME : nPropSetId = PROPERTY_MAP_FRAME_STYLE ;break;
case SFX_STYLE_FAMILY_PAGE : nPropSetId = PROPERTY_MAP_PAGE_STYLE ;break;
case SFX_STYLE_FAMILY_PSEUDO: nPropSetId = PROPERTY_MAP_NUM_STYLE ;break;
- default:
- ;
+ default: ;
}
+
const SfxItemPropertySet* pPropSet = aSwMapProvider.GetPropertySet(nPropSetId);
const SfxItemPropertyMap *pMap = pPropSet->getPropertyMap();
if(rPropertyNames.getLength() != rValues.getLength())
+ {
throw lang::IllegalArgumentException();
+ }
const OUString* pNames = rPropertyNames.getConstArray();
const uno::Any* pValues = rValues.getConstArray();
+ SwStyleBase_Impl aBaseImpl(*m_pDoc, sStyleName, &GetDoc()->GetDfltTxtFmtColl()->GetAttrSet()); //UUUU add pDfltTxtFmtColl as parent
- SwStyleBase_Impl aBaseImpl(*m_pDoc, sStyleName);
if(pBasePool)
{
sal_uInt16 nSaveMask = pBasePool->GetSearchMask();
@@ -2399,43 +2405,50 @@ void SAL_CALL SwXStyle::SetPropertyValues_Impl(
SfxStyleSheetBase* pBase = pBasePool->Find(sStyleName);
pBasePool->SetSearchMask(eFamily, nSaveMask );
DBG_ASSERT(pBase, "where is the style?" );
+
if(pBase)
- aBaseImpl.mxNewBase = new SwDocStyleSheet(*(SwDocStyleSheet*)pBase);
+ aBaseImpl.setNewBase(new SwDocStyleSheet(*(SwDocStyleSheet*)pBase));
else
throw uno::RuntimeException();
}
for(sal_Int16 nProp = 0; nProp < rPropertyNames.getLength(); nProp++)
{
- const SfxItemPropertySimpleEntry* pEntry = pMap->getByName( pNames[nProp]);
+ const SfxItemPropertySimpleEntry* pEntry = pMap->getByName(pNames[nProp]);
if(!pEntry ||
(!bIsConditional && pNames[nProp].equalsAsciiL(SW_PROP_NAME(UNO_NAME_PARA_STYLE_CONDITIONS))))
throw beans::UnknownPropertyException(OUString ( RTL_CONSTASCII_USTRINGPARAM ( "Unknown property: " ) ) + pNames[nProp], static_cast < cppu::OWeakObject * > ( this ) );
if ( pEntry->nFlags & beans::PropertyAttribute::READONLY)
throw beans::PropertyVetoException ( OUString ( RTL_CONSTASCII_USTRINGPARAM ( "Property is read-only: " ) ) + pNames[nProp], static_cast < cppu::OWeakObject * > ( this ) );
- if(aBaseImpl.mxNewBase.is())
+
+ if(aBaseImpl.getNewBase().is())
{
- lcl_SetStyleProperty(*pEntry, *pPropSet, pValues[nProp], aBaseImpl,
- pBasePool, m_pDoc, eFamily);
+ lcl_SetStyleProperty(*pEntry, *pPropSet, pValues[nProp], aBaseImpl, pBasePool, m_pDoc, eFamily);
}
else if(bIsDescriptor)
{
if(!pPropImpl->SetProperty(pNames[nProp], pValues[nProp]))
+ {
throw lang::IllegalArgumentException();
+ }
}
else
+ {
throw uno::RuntimeException();
+ }
}
+
if(aBaseImpl.HasItemSet())
- aBaseImpl.mxNewBase->SetItemSet(aBaseImpl.GetItemSet());
+ {
+ aBaseImpl.getNewBase()->SetItemSet(aBaseImpl.GetItemSet());
+ }
}
void SwXStyle::setPropertyValues(
const uno::Sequence< OUString >& rPropertyNames,
const uno::Sequence< uno::Any >& rValues )
- throw(beans::PropertyVetoException, lang::IllegalArgumentException,
- lang::WrappedTargetException, uno::RuntimeException)
+throw(beans::PropertyVetoException, lang::IllegalArgumentException, lang::WrappedTargetException, uno::RuntimeException)
{
vos::OGuard aGuard(Application::GetSolarMutex());
@@ -2455,12 +2468,14 @@ void SwXStyle::setPropertyValues(
}
-uno::Any lcl_GetStyleProperty(const SfxItemPropertySimpleEntry& rEntry,
- const SfxItemPropertySet& rPropSet,
- SwStyleBase_Impl& rBase,
- SfxStyleSheetBase* pBase,
- SfxStyleFamily eFamily,
- SwDoc *pDoc) throw(uno::RuntimeException)
+uno::Any lcl_GetStyleProperty(
+ const SfxItemPropertySimpleEntry& rEntry,
+ const SfxItemPropertySet& rPropSet,
+ SwStyleBase_Impl& rBase,
+ SfxStyleSheetBase* pBase,
+ SfxStyleFamily eFamily,
+ SwDoc *pDoc)
+throw(uno::RuntimeException)
{
uno::Any aRet;
@@ -2480,9 +2495,9 @@ uno::Any lcl_GetStyleProperty(const SfxItemPropertySimpleEntry& rEntry,
}
else if(pBase)
{
- if(!rBase.mxNewBase.is())
+ if(!rBase.getNewBase().is())
{
- rBase.mxNewBase = new SwDocStyleSheet( *(SwDocStyleSheet*)pBase );
+ rBase.setNewBase(new SwDocStyleSheet( *(SwDocStyleSheet*)pBase ));
}
//UUUU
@@ -2516,7 +2531,7 @@ uno::Any lcl_GetStyleProperty(const SfxItemPropertySimpleEntry& rEntry,
}
case FN_UNO_NUM_RULES: //Sonderbehandlung fuer das SvxNumRuleItem:
{
- const SwNumRule* pRule = rBase.mxNewBase->GetNumRule();
+ const SwNumRule* pRule = rBase.getNewBase()->GetNumRule();
DBG_ASSERT(pRule, "Wo ist die NumRule?");
uno::Reference< container::XIndexReplace > xRules = new SwXNumberingRules(*pRule);
@@ -2528,7 +2543,7 @@ uno::Any lcl_GetStyleProperty(const SfxItemPropertySimpleEntry& rEntry,
//case FN_UNO_DEFAULT_OUTLINE_LEVEL: //#outline level,removed by zahojianwei
//{
// DBG_ASSERT( SFX_STYLE_FAMILY_PARA == eFamily, "only paras" );
- // sal_uInt8 nLevel = rBase.mxNewBase->GetCollection()->GetOutlineLevel();
+ // sal_uInt8 nLevel = rBase.getNewBase()->GetCollection()->GetOutlineLevel();
// if( nLevel != NO_NUMBERING )
// aRet <<= static_cast<sal_Int8>( nLevel );
// bDone = true;
@@ -2537,7 +2552,7 @@ uno::Any lcl_GetStyleProperty(const SfxItemPropertySimpleEntry& rEntry,
case RES_PARATR_OUTLINELEVEL: //add by zahojianwei
{
DBG_ASSERT( SFX_STYLE_FAMILY_PARA == eFamily, "only paras" );
- int nLevel = rBase.mxNewBase->GetCollection()->GetAttrOutlineLevel();
+ int nLevel = rBase.getNewBase()->GetCollection()->GetAttrOutlineLevel();
aRet <<= static_cast<sal_Int16>( nLevel );
bDone = true;
@@ -2547,7 +2562,7 @@ uno::Any lcl_GetStyleProperty(const SfxItemPropertySimpleEntry& rEntry,
{
String aString;
- SwStyleNameMapper::FillProgName(rBase.mxNewBase->GetFollow(), aString, lcl_GetSwEnumFromSfxEnum ( eFamily ), sal_True);
+ SwStyleNameMapper::FillProgName(rBase.getNewBase()->GetFollow(), aString, lcl_GetSwEnumFromSfxEnum ( eFamily ), sal_True);
aRet <<= OUString( aString );
bDone = true;
break;
@@ -2578,9 +2593,9 @@ uno::Any lcl_GetStyleProperty(const SfxItemPropertySimpleEntry& rEntry,
{
sal_Bool bAuto = sal_False;
if(SFX_STYLE_FAMILY_PARA == eFamily)
- bAuto = rBase.mxNewBase->GetCollection()->IsAutoUpdateFmt();
+ bAuto = rBase.getNewBase()->GetCollection()->IsAutoUpdateFmt();
else if(SFX_STYLE_FAMILY_FRAME == eFamily)
- bAuto = rBase.mxNewBase->GetFrmFmt()->IsAutoUpdateFmt();
+ bAuto = rBase.getNewBase()->GetFrmFmt()->IsAutoUpdateFmt();
aRet.setValue(&bAuto, ::getBooleanCppuType());
bDone = true;
@@ -2588,7 +2603,7 @@ uno::Any lcl_GetStyleProperty(const SfxItemPropertySimpleEntry& rEntry,
}
case FN_UNO_DISPLAY_NAME:
{
- OUString sName(rBase.mxNewBase->GetDisplayName());
+ OUString sName(rBase.getNewBase()->GetDisplayName());
aRet <<= sName;
bDone = true;
@@ -2629,7 +2644,7 @@ uno::Any lcl_GetStyleProperty(const SfxItemPropertySimpleEntry& rEntry,
}
case FN_UNO_CATEGORY:
{
- sal_uInt16 nPoolId = rBase.mxNewBase->GetCollection()->GetPoolFmtId();
+ sal_uInt16 nPoolId = rBase.getNewBase()->GetCollection()->GetPoolFmtId();
short nRet = -1;
switch ( COLL_GET_RANGE_BITS & nPoolId )
@@ -2660,7 +2675,7 @@ uno::Any lcl_GetStyleProperty(const SfxItemPropertySimpleEntry& rEntry,
}
case SID_SWREGISTER_COLLECTION:
{
- const SwPageDesc *pPageDesc = rBase.mxNewBase->GetPageDesc();
+ const SwPageDesc *pPageDesc = rBase.getNewBase()->GetPageDesc();
const SwTxtFmtColl* pCol = 0;
String aString;
if( pPageDesc )
@@ -2677,7 +2692,7 @@ uno::Any lcl_GetStyleProperty(const SfxItemPropertySimpleEntry& rEntry,
{
//UUUU
const SfxItemSet& rSet = rBase.GetItemSet();
- const SvxBrushItem aOriginalBrushItem(getSvxBrushItemFromSourceSet(rSet));
+ const SvxBrushItem aOriginalBrushItem(getSvxBrushItemFromSourceSet(rSet, RES_BACKGROUND));
if(!aOriginalBrushItem.QueryValue(aRet, nMemberId))
{
@@ -2772,35 +2787,38 @@ uno::Any lcl_GetStyleProperty(const SfxItemPropertySimpleEntry& rEntry,
---------------------------------------------------------------------------*/
uno::Sequence< uno::Any > SAL_CALL SwXStyle::GetPropertyValues_Impl(
- const uno::Sequence< OUString > & rPropertyNames )
- throw( beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException )
+ const uno::Sequence< OUString > & rPropertyNames )
+throw( beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException )
{
if ( !m_pDoc )
throw uno::RuntimeException();
+
sal_Int8 nPropSetId = PROPERTY_MAP_CHAR_STYLE;
+
switch(eFamily)
{
case SFX_STYLE_FAMILY_PARA : nPropSetId = bIsConditional ? PROPERTY_MAP_CONDITIONAL_PARA_STYLE : PROPERTY_MAP_PARA_STYLE; break;
case SFX_STYLE_FAMILY_FRAME : nPropSetId = PROPERTY_MAP_FRAME_STYLE ;break;
case SFX_STYLE_FAMILY_PAGE : nPropSetId = PROPERTY_MAP_PAGE_STYLE ;break;
case SFX_STYLE_FAMILY_PSEUDO: nPropSetId = PROPERTY_MAP_NUM_STYLE ;break;
- default:
- ;
+ default: ;
}
+
const SfxItemPropertySet* pPropSet = aSwMapProvider.GetPropertySet(nPropSetId);
const SfxItemPropertyMap *pMap = pPropSet->getPropertyMap();
-
const OUString* pNames = rPropertyNames.getConstArray();
uno::Sequence< uno::Any > aRet(rPropertyNames.getLength());
uno::Any* pRet = aRet.getArray();
- SwStyleBase_Impl aBase(*m_pDoc, sStyleName);
+ SwStyleBase_Impl aBase(*m_pDoc, sStyleName, &GetDoc()->GetDfltTxtFmtColl()->GetAttrSet()); //UUUU add pDfltTxtFmtColl as parent
SfxStyleSheetBase* pBase = 0;
+
for(sal_Int32 nProp = 0; nProp < rPropertyNames.getLength(); nProp++)
{
const SfxItemPropertySimpleEntry* pEntry = pMap->getByName( pNames[nProp]);
if(!pEntry ||
(!bIsConditional && pNames[nProp].equalsAsciiL(SW_PROP_NAME(UNO_NAME_PARA_STYLE_CONDITIONS))))
throw beans::UnknownPropertyException(OUString ( RTL_CONSTASCII_USTRINGPARAM ( "Unknown property: " ) ) + pNames[nProp], static_cast < cppu::OWeakObject * > ( this ) );
+
if(pBasePool)
{
if(!pBase)
@@ -2810,6 +2828,7 @@ uno::Sequence< uno::Any > SAL_CALL SwXStyle::GetPropertyValues_Impl(
pBase = pBasePool->Find(sStyleName);
pBasePool->SetSearchMask(eFamily, nSaveMask );
}
+
pRet[nProp] = lcl_GetStyleProperty(*pEntry, *pPropSet, aBase, pBase, eFamily, GetDoc() );
}
else if(bIsDescriptor)
@@ -2869,7 +2888,8 @@ uno::Sequence< uno::Any > SAL_CALL SwXStyle::GetPropertyValues_Impl(
---------------------------------------------------------------------------*/
uno::Sequence< uno::Any > SwXStyle::getPropertyValues(
- const uno::Sequence< OUString >& rPropertyNames ) throw(uno::RuntimeException)
+ const uno::Sequence< OUString >& rPropertyNames )
+throw(uno::RuntimeException)
{
vos::OGuard aGuard(Application::GetSolarMutex());
uno::Sequence< uno::Any > aValues;
@@ -2895,7 +2915,7 @@ uno::Sequence< uno::Any > SwXStyle::getPropertyValues(
void SwXStyle::addPropertiesChangeListener(
const uno::Sequence< OUString >& /*aPropertyNames*/,
const uno::Reference< beans::XPropertiesChangeListener >& /*xListener*/ )
- throw(uno::RuntimeException)
+throw(uno::RuntimeException)
{
}
/*-- 18.04.01 13:07:30---------------------------------------------------
@@ -2903,7 +2923,7 @@ void SwXStyle::addPropertiesChangeListener(
-----------------------------------------------------------------------*/
void SwXStyle::removePropertiesChangeListener(
const uno::Reference< beans::XPropertiesChangeListener >& /*xListener*/ )
- throw(uno::RuntimeException)
+throw(uno::RuntimeException)
{
}
/*-- 18.04.01 13:07:30---------------------------------------------------
@@ -2912,29 +2932,29 @@ void SwXStyle::removePropertiesChangeListener(
void SwXStyle::firePropertiesChangeEvent(
const uno::Sequence< OUString >& /*aPropertyNames*/,
const uno::Reference< beans::XPropertiesChangeListener >& /*xListener*/ )
- throw(uno::RuntimeException)
+throw(uno::RuntimeException)
{
}
/*-- 17.12.98 08:26:53---------------------------------------------------
-----------------------------------------------------------------------*/
-void SwXStyle::setPropertyValue(const OUString& rPropertyName, const uno::Any& rValue)
- throw( beans::UnknownPropertyException,
- beans::PropertyVetoException,
- lang::IllegalArgumentException,
- lang::WrappedTargetException,
- uno::RuntimeException)
+void SwXStyle::setPropertyValue(
+ const OUString& rPropertyName,
+ const uno::Any& rValue)
+throw( beans::UnknownPropertyException, beans::PropertyVetoException, lang::IllegalArgumentException, lang::WrappedTargetException, uno::RuntimeException)
{
vos::OGuard aGuard(Application::GetSolarMutex());
const uno::Sequence<OUString> aProperties(&rPropertyName, 1);
const uno::Sequence<uno::Any> aValues(&rValue, 1);
+
SetPropertyValues_Impl( aProperties, aValues );
}
/*-- 17.12.98 08:26:53---------------------------------------------------
-----------------------------------------------------------------------*/
-uno::Any SwXStyle::getPropertyValue(const OUString& rPropertyName)
- throw( beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException )
+uno::Any SwXStyle::getPropertyValue(
+ const OUString& rPropertyName)
+throw( beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException )
{
vos::OGuard aGuard(Application::GetSolarMutex());
const uno::Sequence<OUString> aProperties(&rPropertyName, 1);
@@ -2944,36 +2964,40 @@ uno::Any SwXStyle::getPropertyValue(const OUString& rPropertyName)
/*-- 17.12.98 08:26:53---------------------------------------------------
-----------------------------------------------------------------------*/
-void SwXStyle::addPropertyChangeListener(const OUString& /*rPropertyName*/,
+void SwXStyle::addPropertyChangeListener(
+ const OUString& /*rPropertyName*/,
const uno::Reference< beans::XPropertyChangeListener > & /*xListener*/)
- throw( beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException )
+throw( beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException )
{
DBG_WARNING("not implemented");
}
/*-- 17.12.98 08:26:54---------------------------------------------------
-----------------------------------------------------------------------*/
-void SwXStyle::removePropertyChangeListener(const OUString& /*rPropertyName*/,
+void SwXStyle::removePropertyChangeListener(
+ const OUString& /*rPropertyName*/,
const uno::Reference< beans::XPropertyChangeListener > & /*xListener*/)
- throw( beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException )
+throw( beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException )
{
DBG_WARNING("not implemented");
}
/*-- 17.12.98 08:26:54---------------------------------------------------
-----------------------------------------------------------------------*/
-void SwXStyle::addVetoableChangeListener(const OUString& /*rPropertyName*/,
+void SwXStyle::addVetoableChangeListener(
+ const OUString& /*rPropertyName*/,
const uno::Reference< beans::XVetoableChangeListener > & /*xListener*/)
- throw( beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException )
+throw( beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException )
{
DBG_WARNING("not implemented");
}
/*-- 17.12.98 08:26:54---------------------------------------------------
-----------------------------------------------------------------------*/
-void SwXStyle::removeVetoableChangeListener(const OUString& /*rPropertyName*/,
+void SwXStyle::removeVetoableChangeListener(
+ const OUString& /*rPropertyName*/,
const uno::Reference< beans::XVetoableChangeListener > & /*xListener*/)
- throw( beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException )
+throw( beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException )
{
DBG_WARNING("not implemented");
}
@@ -2981,11 +3005,11 @@ void SwXStyle::removeVetoableChangeListener(const OUString& /*rPropertyName*/,
/*-- 08.03.99 10:50:26---------------------------------------------------
-----------------------------------------------------------------------*/
-beans::PropertyState SwXStyle::getPropertyState(const OUString& rPropertyName)
- throw( beans::UnknownPropertyException, uno::RuntimeException )
+beans::PropertyState SwXStyle::getPropertyState(
+ const OUString& rPropertyName)
+throw( beans::UnknownPropertyException, uno::RuntimeException )
{
vos::OGuard aGuard(Application::GetSolarMutex());
-
uno::Sequence< OUString > aNames(1);
OUString* pNames = aNames.getArray();
pNames[0] = rPropertyName;
@@ -2995,13 +3019,15 @@ beans::PropertyState SwXStyle::getPropertyState(const OUString& rPropertyName)
/*-- 08.03.99 10:50:27---------------------------------------------------
-----------------------------------------------------------------------*/
+
uno::Sequence< beans::PropertyState > SwXStyle::getPropertyStates(
const uno::Sequence< OUString >& rPropertyNames)
- throw( beans::UnknownPropertyException, uno::RuntimeException )
+throw( beans::UnknownPropertyException, uno::RuntimeException )
{
vos::OGuard aGuard(Application::GetSolarMutex());
uno::Sequence< beans::PropertyState > aRet(rPropertyNames.getLength());
beans::PropertyState* pStates = aRet.getArray();
+
if(pBasePool)
{
pBasePool->SetSearchMask(eFamily );
@@ -3013,75 +3039,110 @@ uno::Sequence< beans::PropertyState > SwXStyle::getPropertyStates(
const OUString* pNames = rPropertyNames.getConstArray();
rtl::Reference< SwDocStyleSheet > xStyle( new SwDocStyleSheet( *(SwDocStyleSheet*)pBase ) );
sal_Int8 nPropSetId = PROPERTY_MAP_CHAR_STYLE;
+
switch(eFamily)
{
case SFX_STYLE_FAMILY_PARA : nPropSetId = bIsConditional ? PROPERTY_MAP_CONDITIONAL_PARA_STYLE : PROPERTY_MAP_PARA_STYLE; break;
case SFX_STYLE_FAMILY_FRAME : nPropSetId = PROPERTY_MAP_FRAME_STYLE ;break;
case SFX_STYLE_FAMILY_PAGE : nPropSetId = PROPERTY_MAP_PAGE_STYLE; break;
case SFX_STYLE_FAMILY_PSEUDO: nPropSetId = PROPERTY_MAP_NUM_STYLE ;break;
- default:
- ;
+ default: ;
}
+
const SfxItemPropertySet* pPropSet = aSwMapProvider.GetPropertySet(nPropSetId);
const SfxItemPropertyMap *pMap = pPropSet->getPropertyMap();
+ const SfxItemSet& rSet = xStyle->GetItemSet();
- SfxItemSet aSet = xStyle->GetItemSet();
for(sal_Int32 i = 0; i < rPropertyNames.getLength(); i++)
{
const String& rPropName = pNames[i];
const SfxItemPropertySimpleEntry* pEntry = pMap->getByName( rPropName);
+ bool bDone(false);
+
if(!pEntry)
+ {
throw beans::UnknownPropertyException(OUString ( RTL_CONSTASCII_USTRINGPARAM ( "Unknown property: " ) ) + rPropName, static_cast < cppu::OWeakObject * > ( this ) );
- if( FN_UNO_NUM_RULES == pEntry->nWID ||
- FN_UNO_FOLLOW_STYLE == pEntry->nWID )
+ }
+
+ if( FN_UNO_NUM_RULES == pEntry->nWID || FN_UNO_FOLLOW_STYLE == pEntry->nWID )
{
+ // handle NumRules first, done
pStates[i] = beans::PropertyState_DIRECT_VALUE;
+ bDone = true;
}
- // else if( FN_UNO_DEFAULT_OUTLINE_LEVEL == pEntry->nWID ) //#outline level,removed by zahojianwei
- // {
- // pStates[i] =
- // ( xStyle->GetCollection()->GetOutlineLevel()
- // == NO_NUMBERING )
- // ? beans::PropertyState_DEFAULT_VALUE
- // : beans::PropertyState_DIRECT_VALUE;
- // } //<-end,zhaojianwei
- else if(SFX_STYLE_FAMILY_PAGE == eFamily &&
- (rPropName.EqualsAscii("Header", 0, 6)
- || rPropName.EqualsAscii("Footer", 0, 6)))
+
+ // allow to retarget the SfxItemSet working on, default correctly. Only
+ // use pSourceSet below this point (except in header/footer processing)
+ const SfxItemSet* pSourceSet = &rSet;
+
+ if(!bDone)
{
- sal_uInt16 nResId = lcl_ConvertFNToRES(pEntry->nWID);
- sal_Bool bFooter = rPropName.EqualsAscii("Footer", 0, 6);
- const SvxSetItem* pSetItem;
- if(SFX_ITEM_SET == aSet.GetItemState(
- bFooter ? SID_ATTR_PAGE_FOOTERSET : SID_ATTR_PAGE_HEADERSET,
- sal_False, (const SfxPoolItem**)&pSetItem))
+ // check for Header/Footer entry
+ const bool bHeader(SFX_STYLE_FAMILY_PAGE == eFamily && rPropName.EqualsAscii("Header", 0, 6));
+ const bool bFooter(SFX_STYLE_FAMILY_PAGE == eFamily && rPropName.EqualsAscii("Footer", 0, 6));
+
+ if(bHeader || bFooter)
{
- const SfxItemSet& rSet = pSetItem->GetItemSet();
- SfxItemState eState = rSet.GetItemState(nResId, sal_False);
- if(SFX_ITEM_SET == eState)
- pStates[i] = beans::PropertyState_DIRECT_VALUE;
+ const SvxSetItem* pSetItem;
+
+ if(SFX_ITEM_SET == rSet.GetItemState(
+ bFooter ? SID_ATTR_PAGE_FOOTERSET : SID_ATTR_PAGE_HEADERSET,
+ sal_False,
+ (const SfxPoolItem**)&pSetItem))
+ {
+ // retarget the SfxItemSet to the HeaderFooter SfxSetItem's SfxItenSet
+ pSourceSet = &pSetItem->GetItemSet();
+ }
else
- pStates[i] = beans::PropertyState_DEFAULT_VALUE;
+ {
+ // if no SetItem, value is ambigous and we are done
+ pStates[i] = beans::PropertyState_AMBIGUOUS_VALUE;
+ bDone = true;
+ }
+ }
+ }
+
+ if(!bDone && OWN_ATTR_FILLBMP_MODE == pEntry->nWID)
+ {
+ //UUUU
+ if(SFX_ITEM_SET == pSourceSet->GetItemState(XATTR_FILLBMP_STRETCH, false)
+ || SFX_ITEM_SET == pSourceSet->GetItemState(XATTR_FILLBMP_TILE, false))
+ {
+ pStates[i] = beans::PropertyState_DIRECT_VALUE;
}
else
+ {
pStates[i] = beans::PropertyState_AMBIGUOUS_VALUE;
+ }
+
+ bDone = true;
}
- else
+
+ //UUUU for FlyFrames we need to mark all properties from type RES_BACKGROUND
+ // as beans::PropertyState_DIRECT_VALUE to let users of this property call
+ // getPropertyValue where the member properties will be mapped from the
+ // fill attributes to the according SvxBrushItem entries
+ if(!bDone && RES_BACKGROUND == pEntry->nWID
+ && SWUnoHelper::needToMapFillItemsToSvxBrushItemTypes(*pSourceSet))
{
- pStates[i] = pPropSet->getPropertyState(*pEntry, aSet);
- if( SFX_STYLE_FAMILY_PAGE == eFamily &&
- SID_ATTR_PAGE_SIZE == pEntry->nWID &&
- beans::PropertyState_DIRECT_VALUE == pStates[i] )
+ pStates[i] = beans::PropertyState_DIRECT_VALUE;
+ bDone = true;
+ }
+
+ if(!bDone)
+ {
+ pStates[i] = pPropSet->getPropertyState(*pEntry, *pSourceSet);
+
+ if(SFX_STYLE_FAMILY_PAGE == eFamily && SID_ATTR_PAGE_SIZE == pEntry->nWID && beans::PropertyState_DIRECT_VALUE == pStates[i])
{
- const SvxSizeItem& rSize =
- static_cast < const SvxSizeItem& >(
- aSet.Get(SID_ATTR_PAGE_SIZE) );
+ const SvxSizeItem& rSize = static_cast <const SvxSizeItem&>( rSet.Get(SID_ATTR_PAGE_SIZE));
sal_uInt8 nMemberId = pEntry->nMemberId & 0x7f;
- if( ( LONG_MAX == rSize.GetSize().Width() &&
- (MID_SIZE_WIDTH == nMemberId ||
- MID_SIZE_SIZE == nMemberId ) ) ||
- ( LONG_MAX == rSize.GetSize().Height() &&
- MID_SIZE_HEIGHT == nMemberId ) )
+
+ if((LONG_MAX == rSize.GetSize().Width() &&
+ (MID_SIZE_WIDTH == nMemberId ||
+ MID_SIZE_SIZE == nMemberId)) ||
+ (LONG_MAX == rSize.GetSize().Height() &&
+ MID_SIZE_HEIGHT == nMemberId))
{
pStates[i] = beans::PropertyState_DEFAULT_VALUE;
}
@@ -3090,24 +3151,31 @@ uno::Sequence< beans::PropertyState > SwXStyle::getPropertyStates(
}
}
else
+ {
throw uno::RuntimeException();
+ }
}
else
+ {
throw uno::RuntimeException();
+ }
+
return aRet;
}
/*-- 08.03.99 10:50:27---------------------------------------------------
-----------------------------------------------------------------------*/
-void SwXStyle::setPropertyToDefault(const OUString& rPropertyName)
- throw( beans::UnknownPropertyException, uno::RuntimeException )
+void SwXStyle::setPropertyToDefault(
+ const OUString& rPropertyName)
+throw( beans::UnknownPropertyException, uno::RuntimeException )
{
- const uno::Sequence < OUString > aSequence ( &rPropertyName, 1 );
- setPropertiesToDefault ( aSequence );
+ const uno::Sequence < OUString > aSequence(&rPropertyName,1);
+ setPropertiesToDefault(aSequence);
}
-void SAL_CALL SwXStyle::setPropertiesToDefault( const uno::Sequence< OUString >& aPropertyNames )
- throw (beans::UnknownPropertyException, uno::RuntimeException)
+void SAL_CALL SwXStyle::setPropertiesToDefault(
+ const uno::Sequence< OUString >& aPropertyNames )
+throw (beans::UnknownPropertyException, uno::RuntimeException)
{
vos::OGuard aGuard(Application::GetSolarMutex());
SwFmt *pTargetFmt = 0;
@@ -3120,75 +3188,112 @@ void SAL_CALL SwXStyle::setPropertiesToDefault( const uno::Sequence< OUString >&
if(pBase)
{
- rtl::Reference< SwDocStyleSheet > xStyle( new SwDocStyleSheet( *(SwDocStyleSheet*)pBase ) );
+ rtl::Reference< SwDocStyleSheet > xStyle(new SwDocStyleSheet(*(SwDocStyleSheet*)pBase));
switch(eFamily)
{
- case SFX_STYLE_FAMILY_CHAR: pTargetFmt = xStyle->GetCharFmt(); break;
- case SFX_STYLE_FAMILY_PARA: pTargetFmt = xStyle->GetCollection(); break;
- case SFX_STYLE_FAMILY_FRAME: pTargetFmt = xStyle->GetFrmFmt(); break;
+ case SFX_STYLE_FAMILY_CHAR:
+ pTargetFmt = xStyle->GetCharFmt();
+ break;
+
+ case SFX_STYLE_FAMILY_PARA:
+ pTargetFmt = xStyle->GetCollection();
+ break;
+
+ case SFX_STYLE_FAMILY_FRAME:
+ pTargetFmt = xStyle->GetFrmFmt();
+ break;
+
case SFX_STYLE_FAMILY_PAGE:
+ {
+ sal_uInt16 nPgDscPos = USHRT_MAX;
+ SwPageDesc *pDesc = m_pDoc->FindPageDescByName(xStyle->GetPageDesc()->GetName(),&nPgDscPos);
+
+ if(pDesc)
{
- sal_uInt16 nPgDscPos = USHRT_MAX;
- SwPageDesc *pDesc = m_pDoc->FindPageDescByName( xStyle->GetPageDesc()->GetName(), &nPgDscPos );
- if( pDesc )
- pTargetFmt = &pDesc->GetMaster();
+ pTargetFmt = &pDesc->GetMaster();
}
break;
+ }
case SFX_STYLE_FAMILY_PSEUDO:
break;
- default:
- ;
+ default: ;
}
}
}
+
sal_Int8 nPropSetId = PROPERTY_MAP_CHAR_STYLE;
+
switch(eFamily)
{
- case SFX_STYLE_FAMILY_PARA : nPropSetId = bIsConditional ? PROPERTY_MAP_CONDITIONAL_PARA_STYLE : PROPERTY_MAP_PARA_STYLE; break;
- case SFX_STYLE_FAMILY_FRAME : nPropSetId = PROPERTY_MAP_FRAME_STYLE; break;
- case SFX_STYLE_FAMILY_PAGE : nPropSetId = PROPERTY_MAP_PAGE_STYLE; break;
+ case SFX_STYLE_FAMILY_PARA: nPropSetId = bIsConditional ? PROPERTY_MAP_CONDITIONAL_PARA_STYLE : PROPERTY_MAP_PARA_STYLE; break;
+ case SFX_STYLE_FAMILY_FRAME: nPropSetId = PROPERTY_MAP_FRAME_STYLE; break;
+ case SFX_STYLE_FAMILY_PAGE: nPropSetId = PROPERTY_MAP_PAGE_STYLE; break;
case SFX_STYLE_FAMILY_PSEUDO: nPropSetId = PROPERTY_MAP_NUM_STYLE; break;
- default:
- ;
+ default: ;
}
+
const SfxItemPropertySet* pPropSet = aSwMapProvider.GetPropertySet(nPropSetId);
const SfxItemPropertyMap *pMap = pPropSet->getPropertyMap();
-
const OUString* pNames = aPropertyNames.getConstArray();
- if ( pTargetFmt )
+ if(pTargetFmt)
{
- for( sal_Int32 nProp = 0, nEnd = aPropertyNames.getLength(); nProp < nEnd; nProp++ )
+ for(sal_Int32 nProp = 0,nEnd = aPropertyNames.getLength(); nProp < nEnd; nProp++)
{
- const SfxItemPropertySimpleEntry* pEntry = pMap->getByName( pNames[nProp] );
- if( !pEntry )
- throw beans::UnknownPropertyException ( OUString ( RTL_CONSTASCII_USTRINGPARAM ( "Property is unknown: " ) ) + pNames[nProp], static_cast < cppu::OWeakObject * > ( this ) );
- if ( pEntry->nWID == FN_UNO_FOLLOW_STYLE || pEntry->nWID == FN_UNO_NUM_RULES )
- throw uno::RuntimeException ( OUString ( RTL_CONSTASCII_USTRINGPARAM ( "Cannot reset: " ) ) + pNames[nProp], static_cast < cppu::OWeakObject * > ( this ) );
- if ( pEntry->nFlags & beans::PropertyAttribute::READONLY )
- throw uno::RuntimeException( OUString ( RTL_CONSTASCII_USTRINGPARAM ( "setPropertiesToDefault: property is read-only: " ) ) + pNames[nProp], static_cast < cppu::OWeakObject * > ( this ) );
-
- //if( pEntry->nWID == FN_UNO_DEFAULT_OUTLINE_LEVEL ) //#outline level, removed by zhaojianwei
- // static_cast<SwTxtFmtColl*>(pTargetFmt)->SetOutlineLevel( NO_NUMBERING );
- //else
- // pTargetFmt->ResetFmtAttr( pEntry->nWID );
- if( pEntry->nWID == RES_PARATR_OUTLINELEVEL ) //add by zhaojianwei
+ const SfxItemPropertySimpleEntry* pEntry = pMap->getByName(pNames[nProp]);
+
+ if(!pEntry)
+ {
+ throw beans::UnknownPropertyException(OUString(RTL_CONSTASCII_USTRINGPARAM("Property is unknown: ")) + pNames[nProp],static_cast <cppu::OWeakObject *> (this));
+ }
+
+ if(pEntry->nWID == FN_UNO_FOLLOW_STYLE || pEntry->nWID == FN_UNO_NUM_RULES)
+ {
+ throw uno::RuntimeException(OUString(RTL_CONSTASCII_USTRINGPARAM("Cannot reset: ")) + pNames[nProp],static_cast <cppu::OWeakObject *> (this));
+ }
+
+ if(pEntry->nFlags & beans::PropertyAttribute::READONLY)
+ {
+ throw uno::RuntimeException(OUString(RTL_CONSTASCII_USTRINGPARAM("setPropertiesToDefault: property is read-only: ")) + pNames[nProp],static_cast <cppu::OWeakObject *> (this));
+ }
+
+ if(pEntry->nWID == RES_PARATR_OUTLINELEVEL)
+ {
static_cast<SwTxtFmtColl*>(pTargetFmt)->DeleteAssignmentToListLevelOfOutlineStyle();
+ }
else
- pTargetFmt->ResetFmtAttr( pEntry->nWID ); //<-end,zhaojianwei
+ {
+ pTargetFmt->ResetFmtAttr(pEntry->nWID);
+ }
+
+ if(OWN_ATTR_FILLBMP_MODE == pEntry->nWID)
+ {
+ //UUUU
+ SwDoc* pDoc = pTargetFmt->GetDoc();
+ SfxItemSet aSet(pDoc->GetAttrPool(), XATTR_FILL_FIRST, XATTR_FILL_LAST);
+ aSet.SetParent(&pTargetFmt->GetAttrSet());
+
+ aSet.ClearItem(XATTR_FILLBMP_STRETCH);
+ aSet.ClearItem(XATTR_FILLBMP_TILE);
+
+ pTargetFmt->SetFmtAttr(aSet);
+ }
}
}
- else if ( bIsDescriptor )
+ else if(bIsDescriptor)
{
- for( sal_Int32 nProp = 0, nEnd = aPropertyNames.getLength(); nProp < nEnd; nProp++ )
- pPropImpl->ClearProperty ( pNames[ nProp ] );
+ for(sal_Int32 nProp = 0,nEnd = aPropertyNames.getLength(); nProp < nEnd; nProp++)
+ {
+ pPropImpl->ClearProperty(pNames[nProp]);
+ }
}
}
-void SAL_CALL SwXStyle::setAllPropertiesToDefault( )
- throw (uno::RuntimeException)
+void SAL_CALL SwXStyle::setAllPropertiesToDefault()
+throw (uno::RuntimeException)
{
vos::OGuard aGuard(Application::GetSolarMutex());
+
if(pBasePool)
{
pBasePool->SetSearchMask(eFamily);
@@ -3198,78 +3303,82 @@ void SAL_CALL SwXStyle::setAllPropertiesToDefault( )
if(pBase)
{
rtl::Reference< SwDocStyleSheet > xStyle( new SwDocStyleSheet( *(SwDocStyleSheet*)pBase ) );
-
SwFmt *pTargetFmt = 0;
sal_uInt16 nPgDscPos = USHRT_MAX;
- switch( eFamily )
+
+ switch(eFamily)
{
- case SFX_STYLE_FAMILY_CHAR :
- pTargetFmt = xStyle->GetCharFmt();
- break;
- case SFX_STYLE_FAMILY_PARA :
+ case SFX_STYLE_FAMILY_CHAR:
+ pTargetFmt = xStyle->GetCharFmt();
+ break;
+
+ case SFX_STYLE_FAMILY_PARA:
{
pTargetFmt = xStyle->GetCollection();
- // --> OD 2007-07-25 #132402# - make code robust
- if ( xStyle->GetCollection() )
+
+ if(xStyle->GetCollection())
{
- // xStyle->GetCollection()->SetOutlineLevel( NO_NUMBERING ); //#outline level,removed by zhaojianwei
+ // xStyle->GetCollection()->SetOutlineLevel( NO_NUMBERING ); //#outline level,removed by zhaojianwei
xStyle->GetCollection()->DeleteAssignmentToListLevelOfOutlineStyle(); //<-end,add by zhaojianwei
}
- // <--
+ break;
}
- break;
- case SFX_STYLE_FAMILY_FRAME:
- pTargetFmt = xStyle->GetFrmFmt();
- break;
- case SFX_STYLE_FAMILY_PAGE:
+
+ case SFX_STYLE_FAMILY_FRAME:
+ pTargetFmt = xStyle->GetFrmFmt();
+ break;
+
+ case SFX_STYLE_FAMILY_PAGE:
{
- SwPageDesc *pDesc = m_pDoc->FindPageDescByName( xStyle->GetPageDesc()->GetName(), &nPgDscPos );
- if( pDesc )
+ SwPageDesc *pDesc = m_pDoc->FindPageDescByName(xStyle->GetPageDesc()->GetName(),&nPgDscPos);
+
+ if(pDesc)
{
pTargetFmt = &pDesc->GetMaster();
- pDesc->SetUseOn ( nsUseOnPage::PD_ALL );
+ pDesc->SetUseOn(nsUseOnPage::PD_ALL);
}
+ break;
}
- break;
- case SFX_STYLE_FAMILY_PSEUDO:
- break;
- default:
- ;
+ case SFX_STYLE_FAMILY_PSEUDO:
+ break;
+
+ default: ;
}
- if( pTargetFmt )
+
+ if(pTargetFmt)
{
- if( USHRT_MAX != nPgDscPos )
+ if(USHRT_MAX != nPgDscPos)
{
SwPageDesc& rPageDesc = m_pDoc->_GetPageDesc(nPgDscPos);
rPageDesc.ResetAllMasterAttr();
SvxLRSpaceItem aLR(RES_LR_SPACE);
- sal_Int32 nSize = GetMetricVal ( CM_1) * 2;
- aLR.SetLeft ( nSize );
- aLR.SetLeft ( nSize );
- SvxULSpaceItem aUL( RES_UL_SPACE );
- aUL.SetUpper ( static_cast < sal_uInt16 > ( nSize ) );
- aUL.SetLower ( static_cast < sal_uInt16 > ( nSize ) );
- pTargetFmt->SetFmtAttr( aLR );
- pTargetFmt->SetFmtAttr( aUL );
-
- SwPageDesc* pStdPgDsc = m_pDoc->GetPageDescFromPool( RES_POOLPAGE_STANDARD );
- SwFmtFrmSize aFrmSz( ATT_FIX_SIZE );
- if( RES_POOLPAGE_STANDARD == rPageDesc.GetPoolFmtId() )
+ sal_Int32 nSize = GetMetricVal(CM_1) * 2;
+ aLR.SetLeft(nSize);
+ aLR.SetLeft(nSize);
+ SvxULSpaceItem aUL(RES_UL_SPACE);
+ aUL.SetUpper(static_cast <sal_uInt16> (nSize));
+ aUL.SetLower(static_cast <sal_uInt16> (nSize));
+ pTargetFmt->SetFmtAttr(aLR);
+ pTargetFmt->SetFmtAttr(aUL);
+ SwPageDesc* pStdPgDsc = m_pDoc->GetPageDescFromPool(RES_POOLPAGE_STANDARD);
+ SwFmtFrmSize aFrmSz(ATT_FIX_SIZE);
+
+ if(RES_POOLPAGE_STANDARD == rPageDesc.GetPoolFmtId())
{
- if( m_pDoc->getPrinter( false ) )
+ if(m_pDoc->getPrinter(false))
{
- const Size aPhysSize( SvxPaperInfo::GetPaperSize(
- static_cast<Printer*>( m_pDoc->getPrinter( false ) )) );
- aFrmSz.SetSize( aPhysSize );
+ const Size aPhysSize(SvxPaperInfo::GetPaperSize(
+ static_cast<Printer*>(m_pDoc->getPrinter(false))));
+ aFrmSz.SetSize(aPhysSize);
}
else
{
// --> OD 2008-07-25 #i91928#
-// aFrmSz.SetWidth( LONG_MAX );
-// aFrmSz.SetHeight( LONG_MAX );
- aFrmSz.SetSize( SvxPaperInfo::GetDefaultPaperSize() );
+ // aFrmSz.SetWidth( LONG_MAX );
+ // aFrmSz.SetHeight( LONG_MAX );
+ aFrmSz.SetSize(SvxPaperInfo::GetDefaultPaperSize());
// <--
}
@@ -3278,13 +3387,15 @@ void SAL_CALL SwXStyle::setAllPropertiesToDefault( )
{
aFrmSz = pStdPgDsc->GetMaster().GetFrmSize();
}
- if( pStdPgDsc->GetLandscape() )
+
+ if(pStdPgDsc->GetLandscape())
{
SwTwips nTmp = aFrmSz.GetHeight();
- aFrmSz.SetHeight( aFrmSz.GetWidth() );
- aFrmSz.SetWidth( nTmp );
+ aFrmSz.SetHeight(aFrmSz.GetWidth());
+ aFrmSz.SetWidth(nTmp);
}
- pTargetFmt->SetFmtAttr( aFrmSz );
+
+ pTargetFmt->SetFmtAttr(aFrmSz);
}
else
{
@@ -3293,86 +3404,106 @@ void SAL_CALL SwXStyle::setAllPropertiesToDefault( )
// <--
}
- if( USHRT_MAX != nPgDscPos )
- m_pDoc->ChgPageDesc( nPgDscPos,
- const_cast<const SwDoc *>(m_pDoc)
- ->GetPageDesc(nPgDscPos) );
+ if(USHRT_MAX != nPgDscPos)
+ {
+ m_pDoc->ChgPageDesc(nPgDscPos, const_cast<const SwDoc *>(m_pDoc)->GetPageDesc(nPgDscPos));
+ }
}
}
else
+ {
throw uno::RuntimeException();
+ }
}
- else if ( bIsDescriptor )
+ else if(bIsDescriptor)
+ {
pPropImpl->ClearAllProperties();
+ }
else
+ {
throw uno::RuntimeException();
+ }
}
-uno::Sequence< uno::Any > SAL_CALL SwXStyle::getPropertyDefaults( const uno::Sequence< OUString >& aPropertyNames )
- throw (beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException)
+uno::Sequence< uno::Any > SAL_CALL SwXStyle::getPropertyDefaults(
+ const uno::Sequence< OUString >& aPropertyNames )
+throw (beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException)
{
vos::OGuard aGuard(Application::GetSolarMutex());
sal_Int32 nCount = aPropertyNames.getLength();
- uno::Sequence < uno::Any > aRet ( nCount );
- if ( nCount )
+ uno::Sequence < uno::Any > aRet(nCount);
+
+ if(nCount)
{
- if( pBasePool)
+ if(pBasePool)
{
pBasePool->SetSearchMask(eFamily);
SfxStyleSheetBase* pBase = pBasePool->Find(sStyleName);
- DBG_ASSERT(pBase, "Doesn't seem to be a style!");
+ DBG_ASSERT(pBase,"Doesn't seem to be a style!");
if(pBase)
{
- rtl::Reference< SwDocStyleSheet > xStyle( new SwDocStyleSheet( *(SwDocStyleSheet*)pBase ) );
+ rtl::Reference< SwDocStyleSheet > xStyle(new SwDocStyleSheet(*(SwDocStyleSheet*)pBase));
sal_Int8 nPropSetId = PROPERTY_MAP_CHAR_STYLE;
+
switch(eFamily)
{
- case SFX_STYLE_FAMILY_PARA : nPropSetId = bIsConditional ? PROPERTY_MAP_CONDITIONAL_PARA_STYLE : PROPERTY_MAP_PARA_STYLE; break;
- case SFX_STYLE_FAMILY_FRAME : nPropSetId = PROPERTY_MAP_FRAME_STYLE; break;
- case SFX_STYLE_FAMILY_PAGE : nPropSetId = PROPERTY_MAP_PAGE_STYLE; break;
+ case SFX_STYLE_FAMILY_PARA: nPropSetId = bIsConditional ? PROPERTY_MAP_CONDITIONAL_PARA_STYLE : PROPERTY_MAP_PARA_STYLE; break;
+ case SFX_STYLE_FAMILY_FRAME: nPropSetId = PROPERTY_MAP_FRAME_STYLE; break;
+ case SFX_STYLE_FAMILY_PAGE: nPropSetId = PROPERTY_MAP_PAGE_STYLE; break;
case SFX_STYLE_FAMILY_PSEUDO: nPropSetId = PROPERTY_MAP_NUM_STYLE; break;
- default:
- ;
+ default: ;
}
+
const SfxItemPropertySet* pPropSet = aSwMapProvider.GetPropertySet(nPropSetId);
const SfxItemPropertyMap* pMap = pPropSet->getPropertyMap();
-
- const SfxItemSet &rSet = xStyle->GetItemSet(), *pParentSet = rSet.GetParent();
+ const SfxItemSet &rSet = xStyle->GetItemSet(),*pParentSet = rSet.GetParent();
const OUString *pNames = aPropertyNames.getConstArray();
uno::Any *pRet = aRet.getArray();
- for ( sal_Int32 i = 0 ; i < nCount; i++)
+
+ for(sal_Int32 i = 0; i < nCount; i++)
{
- const SfxItemPropertySimpleEntry* pEntry = pMap->getByName( pNames[i] );
- if ( !pEntry )
- throw beans::UnknownPropertyException ( OUString ( RTL_CONSTASCII_USTRINGPARAM ( "Unknown property: " ) ) + pNames[i], static_cast < cppu::OWeakObject * > ( this ) );
+ const SfxItemPropertySimpleEntry* pEntry = pMap->getByName(pNames[i]);
- if( pParentSet )
- aSwMapProvider.GetPropertySet(nPropSetId)->getPropertyValue(pNames[i], *pParentSet, pRet[i]);
- else if( pEntry->nWID != rSet.GetPool()->GetSlotId(pEntry->nWID) )
+ if(!pEntry)
+ {
+ throw beans::UnknownPropertyException(OUString(RTL_CONSTASCII_USTRINGPARAM("Unknown property: ")) + pNames[i],static_cast <cppu::OWeakObject *> (this));
+ }
+
+ if(pParentSet)
+ {
+ aSwMapProvider.GetPropertySet(nPropSetId)->getPropertyValue(pNames[i],*pParentSet,pRet[i]);
+ }
+ else if(pEntry->nWID != rSet.GetPool()->GetSlotId(pEntry->nWID))
{
const SfxPoolItem& rItem = rSet.GetPool()->GetDefaultItem(pEntry->nWID);
+
rItem.QueryValue(pRet[i], pEntry->nMemberId);
}
}
}
else
+ {
throw uno::RuntimeException();
+ }
}
else
+ {
throw uno::RuntimeException();
+ }
}
return aRet;
}
/*-- 08.03.99 10:50:27---------------------------------------------------
-----------------------------------------------------------------------*/
-uno::Any SwXStyle::getPropertyDefault(const OUString& rPropertyName)
- throw( beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException )
+uno::Any SwXStyle::getPropertyDefault(
+ const OUString& rPropertyName)
+throw( beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException )
{
- const uno::Sequence < OUString > aSequence ( &rPropertyName, 1 );
- return getPropertyDefaults ( aSequence ).getConstArray()[0];
+ const uno::Sequence < OUString > aSequence(&rPropertyName,1);
+ return getPropertyDefaults(aSequence).getConstArray()[0];
}
/* -----------------21.01.99 13:08-------------------
*
@@ -3418,19 +3549,19 @@ void SwXStyle::Invalidate()
/*-- 17.12.98 08:43:35---------------------------------------------------
-----------------------------------------------------------------------*/
-SwXPageStyle::SwXPageStyle(SfxStyleSheetBasePool& rPool,
- SwDocShell* pDocSh, SfxStyleFamily eFam,
- const String& rStyleName)://, const SfxItemPropertyMap* _pMap) :
- SwXStyle(rPool, eFam, pDocSh->GetDoc(), rStyleName),//, _pMap),
+SwXPageStyle::SwXPageStyle(
+ SfxStyleSheetBasePool& rPool,
+ SwDocShell* pDocSh, SfxStyleFamily eFam,
+ const String& rStyleName)
+: SwXStyle(rPool, eFam, pDocSh->GetDoc(), rStyleName),
pDocShell(pDocSh)
{
-
}
/* -----------------23.08.99 15:52-------------------
--------------------------------------------------*/
-SwXPageStyle::SwXPageStyle(SwDocShell* pDocSh) :
- SwXStyle(pDocSh->GetDoc(), SFX_STYLE_FAMILY_PAGE),
+SwXPageStyle::SwXPageStyle(SwDocShell* pDocSh)
+: SwXStyle(pDocSh->GetDoc(), SFX_STYLE_FAMILY_PAGE),
pDocShell(pDocSh)
{
}
@@ -3448,8 +3579,7 @@ SwXPageStyle::~SwXPageStyle()
void SAL_CALL SwXPageStyle::SetPropertyValues_Impl(
const uno::Sequence< OUString >& rPropertyNames,
const uno::Sequence< uno::Any >& rValues )
- throw( beans::UnknownPropertyException, beans::PropertyVetoException, lang::IllegalArgumentException,
- lang::WrappedTargetException, uno::RuntimeException)
+throw( beans::UnknownPropertyException, beans::PropertyVetoException, lang::IllegalArgumentException, lang::WrappedTargetException, uno::RuntimeException)
{
if(!GetDoc())
throw uno::RuntimeException();
@@ -3461,7 +3591,8 @@ void SAL_CALL SwXPageStyle::SetPropertyValues_Impl(
const uno::Any* pValues = rValues.getConstArray();
const SfxItemPropertySet* pPropSet = aSwMapProvider.GetPropertySet(PROPERTY_MAP_PAGE_STYLE);
const SfxItemPropertyMap* pMap = pPropSet->getPropertyMap();
- SwStyleBase_Impl aBaseImpl(*GetDoc(), GetStyleName());
+ SwStyleBase_Impl aBaseImpl(*GetDoc(), GetStyleName(), &GetDoc()->GetDfltFrmFmt()->GetAttrSet()); //UUUU add pDfltFrmFmt as parent
+
if(GetBasePool())
{
sal_uInt16 nSaveMask = GetBasePool()->GetSearchMask();
@@ -3469,155 +3600,199 @@ void SAL_CALL SwXPageStyle::SetPropertyValues_Impl(
SfxStyleSheetBase* pBase = GetBasePool()->Find(GetStyleName());
GetBasePool()->SetSearchMask(GetFamily(), nSaveMask );
DBG_ASSERT(pBase, "where is the style?" );
+
if(pBase)
- aBaseImpl.mxNewBase = new SwDocStyleSheet(*(SwDocStyleSheet*)pBase);
+ {
+ aBaseImpl.setNewBase(new SwDocStyleSheet(*(SwDocStyleSheet*)pBase));
+ }
else
+ {
throw uno::RuntimeException();
+ }
}
for(sal_Int16 nProp = 0; nProp < rPropertyNames.getLength(); nProp++)
{
- const SfxItemPropertySimpleEntry* pEntry = pMap->getByName( pNames[nProp] );
+ const String& rPropName = pNames[nProp];
+ const SfxItemPropertySimpleEntry* pEntry = pMap->getByName( rPropName );
+
if (!pEntry)
- throw beans::UnknownPropertyException(OUString ( RTL_CONSTASCII_USTRINGPARAM ( "Unknown property: " ) ) + pNames[nProp], static_cast < cppu::OWeakObject * > ( this ) );
+ {
+ throw beans::UnknownPropertyException(OUString ( RTL_CONSTASCII_USTRINGPARAM ( "Unknown property: " ) ) + rPropName, static_cast < cppu::OWeakObject * > ( this ) );
+ }
+
if ( pEntry->nFlags & beans::PropertyAttribute::READONLY)
- throw beans::PropertyVetoException ( OUString ( RTL_CONSTASCII_USTRINGPARAM ( "Property is read-only: " ) ) + pNames[nProp], static_cast < cppu::OWeakObject * > ( this ) );
+ {
+ throw beans::PropertyVetoException ( OUString ( RTL_CONSTASCII_USTRINGPARAM ( "Property is read-only: " ) ) + rPropName, static_cast < cppu::OWeakObject * > ( this ) );
+ }
if(GetBasePool())
{
switch(pEntry->nWID)
{
- case FN_UNO_HEADER_ON:
- case FN_UNO_HEADER_BACKGROUND:
- case FN_UNO_HEADER_BOX:
- case FN_UNO_HEADER_LR_SPACE:
- case FN_UNO_HEADER_SHADOW:
- case FN_UNO_HEADER_BODY_DISTANCE:
- case FN_UNO_HEADER_IS_DYNAMIC_DISTANCE:
- case FN_UNO_HEADER_SHARE_CONTENT:
- case FN_UNO_HEADER_HEIGHT:
- case FN_UNO_HEADER_EAT_SPACING:
-
- case FN_UNO_FOOTER_ON:
- case FN_UNO_FOOTER_BACKGROUND:
- case FN_UNO_FOOTER_BOX:
- case FN_UNO_FOOTER_LR_SPACE:
- case FN_UNO_FOOTER_SHADOW:
- case FN_UNO_FOOTER_BODY_DISTANCE:
- case FN_UNO_FOOTER_IS_DYNAMIC_DISTANCE:
- case FN_UNO_FOOTER_SHARE_CONTENT:
- case FN_UNO_FOOTER_HEIGHT:
- case FN_UNO_FOOTER_EAT_SPACING:
+ case SID_ATTR_PAGE_ON:
+ case RES_BACKGROUND:
+ case RES_BOX:
+ case RES_LR_SPACE:
+ case RES_SHADOW:
+ case RES_UL_SPACE:
+ case SID_ATTR_PAGE_DYNAMIC:
+ case SID_ATTR_PAGE_SHARED:
+ case SID_ATTR_PAGE_SIZE:
+ case RES_HEADER_FOOTER_EAT_SPACING:
{
- sal_Bool bSetItem = sal_False;
- sal_Bool bFooter = sal_False;
- sal_uInt16 nItemType = TYPE_BOOL;
- sal_uInt16 nRes = 0;
- switch(pEntry->nWID)
- {
- case FN_UNO_FOOTER_ON: bFooter = sal_True;
- //kein break;
- case FN_UNO_HEADER_ON: nRes = SID_ATTR_PAGE_ON;
- break;
- case FN_UNO_FOOTER_BACKGROUND: bFooter = sal_True;
- // kein break;
- case FN_UNO_HEADER_BACKGROUND: nRes = RES_BACKGROUND; nItemType = TYPE_BRUSH;
- break;
- case FN_UNO_FOOTER_BOX: bFooter = sal_True;
- // kein break;
- case FN_UNO_HEADER_BOX: nRes = RES_BOX; nItemType = TYPE_BOX;
- break;
- case FN_UNO_FOOTER_LR_SPACE: bFooter = sal_True;
- // kein break;
- case FN_UNO_HEADER_LR_SPACE: nRes = RES_LR_SPACE;nItemType = TYPE_LRSPACE;
- break;
- case FN_UNO_FOOTER_SHADOW: bFooter = sal_True;
- // kein break;
- case FN_UNO_HEADER_SHADOW: nRes = RES_SHADOW;nItemType = TYPE_SHADOW;
- break;
- case FN_UNO_FOOTER_BODY_DISTANCE: bFooter = sal_True;
- // kein break;
- case FN_UNO_HEADER_BODY_DISTANCE: nRes = RES_UL_SPACE;nItemType = TYPE_ULSPACE;
- break;
- case FN_UNO_FOOTER_IS_DYNAMIC_DISTANCE: bFooter = sal_True;
- // kein break;
- case FN_UNO_HEADER_IS_DYNAMIC_DISTANCE: nRes = SID_ATTR_PAGE_DYNAMIC;
- break;
- case FN_UNO_FOOTER_SHARE_CONTENT: bFooter = sal_True;
- // kein break;
- case FN_UNO_HEADER_SHARE_CONTENT: nRes = SID_ATTR_PAGE_SHARED;
- break;
- case FN_UNO_FOOTER_HEIGHT: bFooter = sal_True;
- // kein break;
- case FN_UNO_HEADER_HEIGHT: nRes = SID_ATTR_PAGE_SIZE;nItemType = TYPE_SIZE;
- break;
- case FN_UNO_FOOTER_EAT_SPACING: bFooter = sal_True;
- // kein break;
- case FN_UNO_HEADER_EAT_SPACING: nRes = RES_HEADER_FOOTER_EAT_SPACING;nItemType = TYPE_SIZE;
- break;
- }
- const SvxSetItem* pSetItem;
- if(SFX_ITEM_SET == aBaseImpl.GetItemSet().GetItemState(
- bFooter ? SID_ATTR_PAGE_FOOTERSET : SID_ATTR_PAGE_HEADERSET,
- sal_False, (const SfxPoolItem**)&pSetItem))
+ // these entries are used in Header, Footer and (partially) in the PageStyle itself.
+ // Check for Header/Footer entry
+ const bool bHeader(rPropName.EqualsAscii("Header", 0, 6));
+ const bool bFooter(rPropName.EqualsAscii("Footer", 0, 6));
+
+ if(bHeader || bFooter)
{
- SvxSetItem* pNewSetItem = (SvxSetItem*)pSetItem->Clone();
- SfxItemSet& rSetSet = pNewSetItem->GetItemSet();
- const SfxPoolItem* pItem = 0;
- SfxPoolItem* pNewItem = 0;
- rSetSet.GetItemState(nRes, sal_True, &pItem);
- if(!pItem && nRes != rSetSet.GetPool()->GetSlotId(nRes))
- pItem = &rSetSet.GetPool()->GetDefaultItem(nRes);
- if(pItem)
+ // it is a Header/Footer entry, access the SvxSetItem containing it's information
+ const SvxSetItem* pSetItem = 0;
+
+ if(SFX_ITEM_SET == aBaseImpl.GetItemSet().GetItemState(bFooter ? SID_ATTR_PAGE_FOOTERSET : SID_ATTR_PAGE_HEADERSET, sal_False, (const SfxPoolItem**)&pSetItem))
{
- pNewItem = pItem->Clone();
+ // create a new SvxSetItem and get it's ItemSet as new target
+ SvxSetItem* pNewSetItem = static_cast< SvxSetItem* >(pSetItem->Clone());
+ SfxItemSet& rSetSet = pNewSetItem->GetItemSet();
+
+ // set parent to ItemSet to ensure XFILL_NONE as XFillStyleItem
+ rSetSet.SetParent(&GetDoc()->GetDfltFrmFmt()->GetAttrSet());
+
+ // replace the used SfxItemSet at the SwStyleBase_Impl temporarily and use the
+ // default method to set the property
+ SfxItemSet* pRememberItemSet = aBaseImpl.replaceItemSet(&rSetSet);
+ lcl_SetStyleProperty(*pEntry, *pPropSet, pValues[nProp], aBaseImpl, GetBasePool(), GetDoc(), GetFamily());
+ aBaseImpl.replaceItemSet(pRememberItemSet);
+
+ // reset paret at ItemSet from SetItem
+ rSetSet.SetParent(0);
+
+ // set the new SvxSetItem at the real target and delete it
+ aBaseImpl.GetItemSet().Put(*pNewSetItem);
+ delete pNewSetItem;
}
- else
+ else if(pEntry->nWID == SID_ATTR_PAGE_ON)
{
- switch(nItemType)
+ sal_Bool bVal = *(sal_Bool*)pValues[nProp].getValue();
+
+ if(bVal)
{
- case TYPE_BOOL: pNewItem = new SfxBoolItem(nRes); break;
- case TYPE_SIZE: pNewItem = new SvxSizeItem(nRes); break;
- case TYPE_BRUSH: pNewItem = new SvxBrushItem(nRes); break;
- case TYPE_ULSPACE: pNewItem = new SvxULSpaceItem(nRes); break;
- case TYPE_SHADOW : pNewItem = new SvxShadowItem(nRes); break;
- case TYPE_LRSPACE: pNewItem = new SvxLRSpaceItem(nRes); break;
- case TYPE_BOX: pNewItem = new SvxBoxItem(nRes); break;
+ // Header/footer gets switched on, create defauts and the needed SfxSetItem
+ SfxItemSet aTempSet(*aBaseImpl.GetItemSet().GetPool(),
+ RES_FRMATR_BEGIN,RES_FRMATR_END - 1, // [82
+
+ //UUUU FillAttribute support
+ XATTR_FILL_FIRST, XATTR_FILL_LAST, // [1014
+
+ SID_ATTR_BORDER_INNER,SID_ATTR_BORDER_INNER, // [10023
+ SID_ATTR_PAGE_SIZE,SID_ATTR_PAGE_SIZE, // [10051
+ SID_ATTR_PAGE_ON,SID_ATTR_PAGE_SHARED, // [10060
+ 0);
+
+ //UUUU set correct parent to get the XFILL_NONE FillStyle as needed
+ aTempSet.SetParent(&GetDoc()->GetDfltFrmFmt()->GetAttrSet());
+
+ aTempSet.Put(SfxBoolItem(SID_ATTR_PAGE_ON, sal_True));
+ aTempSet.Put(SvxSizeItem(SID_ATTR_PAGE_SIZE, Size(MM50, MM50)));
+ aTempSet.Put(SvxLRSpaceItem(RES_LR_SPACE));
+ aTempSet.Put(SvxULSpaceItem(RES_UL_SPACE));
+ aTempSet.Put(SfxBoolItem(SID_ATTR_PAGE_SHARED, sal_True));
+ aTempSet.Put(SfxBoolItem(SID_ATTR_PAGE_DYNAMIC, sal_True));
+
+ SvxSetItem aNewSetItem(bFooter ? SID_ATTR_PAGE_FOOTERSET : SID_ATTR_PAGE_HEADERSET, aTempSet);
+ aBaseImpl.GetItemSet().Put(aNewSetItem);
}
}
- bSetItem = pNewItem->PutValue(pValues[nProp], pEntry->nMemberId);
- rSetSet.Put(*pNewItem);
- aBaseImpl.GetItemSet().Put(*pNewSetItem);
- delete pNewItem;
- delete pNewSetItem;
}
- else if(SID_ATTR_PAGE_ON == nRes )
+ else
{
- sal_Bool bVal = *(sal_Bool*)pValues[nProp].getValue();
- if(bVal)
+ switch(pEntry->nWID)
{
- SfxItemSet aTempSet(*aBaseImpl.GetItemSet().GetPool(),
- RES_BACKGROUND, RES_SHADOW,
- RES_LR_SPACE, RES_UL_SPACE,
- nRes, nRes,
- SID_ATTR_PAGE_SIZE, SID_ATTR_PAGE_SIZE,
- SID_ATTR_PAGE_DYNAMIC, SID_ATTR_PAGE_DYNAMIC,
- SID_ATTR_PAGE_SHARED, SID_ATTR_PAGE_SHARED,
- 0 );
- aTempSet.Put(SfxBoolItem(nRes, sal_True));
- aTempSet.Put(SvxSizeItem(SID_ATTR_PAGE_SIZE, Size(MM50, MM50)));
- aTempSet.Put(SvxLRSpaceItem(RES_LR_SPACE));
- aTempSet.Put(SvxULSpaceItem(RES_UL_SPACE));
- aTempSet.Put(SfxBoolItem(SID_ATTR_PAGE_SHARED, sal_True));
- aTempSet.Put(SfxBoolItem(SID_ATTR_PAGE_DYNAMIC, sal_True));
-
- SvxSetItem aNewSetItem( bFooter ? SID_ATTR_PAGE_FOOTERSET : SID_ATTR_PAGE_HEADERSET,
- aTempSet);
- aBaseImpl.GetItemSet().Put(aNewSetItem);
+ case SID_ATTR_PAGE_DYNAMIC:
+ case SID_ATTR_PAGE_SHARED:
+ case SID_ATTR_PAGE_ON:
+ case RES_HEADER_FOOTER_EAT_SPACING:
+ {
+ // these slots are exclusive to Header/Footer, thus this is an error
+ throw beans::UnknownPropertyException(OUString ( RTL_CONSTASCII_USTRINGPARAM ( "Unknown property: " ) ) + rPropName, static_cast < cppu::OWeakObject * > ( this ) );
+ break;
+ }
+ default:
+ {
+ // part of PageStyle, fallback to default
+ lcl_SetStyleProperty(*pEntry, *pPropSet, pValues[nProp], aBaseImpl, GetBasePool(), GetDoc(), GetFamily());
+ }
}
}
+
+ break;
}
- break;
+
+ case XATTR_FILLBMP_SIZELOG:
+ case XATTR_FILLBMP_TILEOFFSETX:
+ case XATTR_FILLBMP_TILEOFFSETY:
+ case XATTR_FILLBMP_POSOFFSETX:
+ case XATTR_FILLBMP_POSOFFSETY:
+ case XATTR_FILLBMP_POS:
+ case XATTR_FILLBMP_SIZEX:
+ case XATTR_FILLBMP_SIZEY:
+ case XATTR_FILLBMP_STRETCH:
+ case XATTR_FILLBMP_TILE:
+ case OWN_ATTR_FILLBMP_MODE:
+ case XATTR_FILLCOLOR:
+ case XATTR_FILLBACKGROUND:
+ case XATTR_FILLBITMAP:
+ case XATTR_GRADIENTSTEPCOUNT:
+ case XATTR_FILLGRADIENT:
+ case XATTR_FILLHATCH:
+ case XATTR_FILLSTYLE:
+ case XATTR_FILLTRANSPARENCE:
+ case XATTR_FILLFLOATTRANSPARENCE:
+ case XATTR_SECONDARYFILLCOLOR:
+ {
+ // This DrawingLayer FillStyle attributes can be part of Header, Footer and PageStyle
+ // itself, so decide what to do using the name
+ const bool bHeader(rPropName.EqualsAscii("Header", 0, 6));
+ const bool bFooter(rPropName.EqualsAscii("Footer", 0, 6));
+
+ if(bHeader || bFooter)
+ {
+ const SvxSetItem* pSetItem = 0;
+
+ if(SFX_ITEM_SET == aBaseImpl.GetItemSet().GetItemState(bFooter ? SID_ATTR_PAGE_FOOTERSET : SID_ATTR_PAGE_HEADERSET, sal_False, (const SfxPoolItem**)&pSetItem))
+ {
+ // create a new SvxSetItem and get it's ItemSet as new target
+ SvxSetItem* pNewSetItem = static_cast< SvxSetItem* >(pSetItem->Clone());
+ SfxItemSet& rSetSet = pNewSetItem->GetItemSet();
+
+ // set parent to ItemSet to ensure XFILL_NONE as XFillStyleItem
+ rSetSet.SetParent(&GetDoc()->GetDfltFrmFmt()->GetAttrSet());
+
+ // replace the used SfxItemSet at the SwStyleBase_Impl temporarily and use the
+ // default method to set the property
+ SfxItemSet* pRememberItemSet = aBaseImpl.replaceItemSet(&rSetSet);
+ lcl_SetStyleProperty(*pEntry, *pPropSet, pValues[nProp], aBaseImpl, GetBasePool(), GetDoc(), GetFamily());
+ aBaseImpl.replaceItemSet(pRememberItemSet);
+
+ // reset paret at ItemSet from SetItem
+ rSetSet.SetParent(0);
+
+ // set the new SvxSetItem at the real target and delete it
+ aBaseImpl.GetItemSet().Put(*pNewSetItem);
+ delete pNewSetItem;
+ }
+ }
+ else
+ {
+ // part of PageStyle, fallback to default
+ lcl_SetStyleProperty(*pEntry, *pPropSet, pValues[nProp], aBaseImpl, GetBasePool(), GetDoc(), GetFamily());
+ }
+
+ break;
+ }
+
case FN_PARAM_FTN_INFO :
{
const SfxPoolItem& rItem = aBaseImpl.GetItemSet().Get(FN_PARAM_FTN_INFO);
@@ -3627,45 +3802,58 @@ void SAL_CALL SwXPageStyle::SetPropertyValues_Impl(
delete pNewFtnItem;
if(!bPut)
throw lang::IllegalArgumentException();
+
+ break;
}
- break;
+
case FN_UNO_HEADER :
case FN_UNO_HEADER_LEFT :
case FN_UNO_HEADER_RIGHT :
case FN_UNO_FOOTER :
case FN_UNO_FOOTER_LEFT :
case FN_UNO_FOOTER_RIGHT :
+ {
throw lang::IllegalArgumentException();
- //break;
+ break;
+ }
+
default:
- lcl_SetStyleProperty(*pEntry, *pPropSet, pValues[nProp], aBaseImpl,
- GetBasePool(), GetDoc(), GetFamily());
+ {
+ //UUUU
+ lcl_SetStyleProperty(*pEntry, *pPropSet, pValues[nProp], aBaseImpl, GetBasePool(), GetDoc(), GetFamily());
+ break;
+ }
}
}
else if(IsDescriptor())
{
- if(!GetPropImpl()->SetProperty(pNames[nProp], pValues[nProp]))
+ if(!GetPropImpl()->SetProperty(rPropName, pValues[nProp]))
throw lang::IllegalArgumentException();
}
else
+ {
throw uno::RuntimeException();
+ }
}
+
if(aBaseImpl.HasItemSet())
{
::sw::UndoGuard const undoGuard(GetDoc()->GetIDocumentUndoRedo());
+
if (undoGuard.UndoWasEnabled())
{
// Fix i64460: as long as Undo of page styles with header/footer causes trouble...
GetDoc()->GetIDocumentUndoRedo().DelAllUndoObj();
}
- aBaseImpl.mxNewBase->SetItemSet(aBaseImpl.GetItemSet());
+
+ aBaseImpl.getNewBase()->SetItemSet(aBaseImpl.GetItemSet());
}
}
void SwXPageStyle::setPropertyValues(
const uno::Sequence< OUString >& rPropertyNames,
const uno::Sequence< uno::Any >& rValues )
- throw(beans::PropertyVetoException, lang::IllegalArgumentException, lang::WrappedTargetException, uno::RuntimeException)
+throw(beans::PropertyVetoException, lang::IllegalArgumentException, lang::WrappedTargetException, uno::RuntimeException)
{
vos::OGuard aGuard(Application::GetSolarMutex());
@@ -3686,9 +3874,10 @@ void SwXPageStyle::setPropertyValues(
/* -----------------------------04.11.03 13:50--------------------------------
---------------------------------------------------------------------------*/
-static uno::Reference<text::XText>
-lcl_makeHeaderFooter(
- const sal_uInt16 nRes, const bool bHeader, SwFrmFmt const*const pFrmFmt)
+static uno::Reference<text::XText> lcl_makeHeaderFooter(
+ const sal_uInt16 nRes,
+ const bool bHeader,
+ SwFrmFmt const*const pFrmFmt)
{
if (!pFrmFmt) { return 0; }
@@ -3710,8 +3899,8 @@ lcl_makeHeaderFooter(
}
uno::Sequence< uno::Any > SAL_CALL SwXPageStyle::GetPropertyValues_Impl(
- const uno::Sequence< OUString >& rPropertyNames )
- throw( beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException )
+const uno::Sequence< OUString >& rPropertyNames )
+throw( beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException )
{
if(!GetDoc())
throw uno::RuntimeException();
@@ -3719,17 +3908,21 @@ uno::Sequence< uno::Any > SAL_CALL SwXPageStyle::GetPropertyValues_Impl(
sal_Int32 nLength = rPropertyNames.getLength();
const OUString* pNames = rPropertyNames.getConstArray();
uno::Sequence< uno::Any > aRet ( nLength );
-
uno::Any* pRet = aRet.getArray();
const SfxItemPropertySet* pPropSet = aSwMapProvider.GetPropertySet(PROPERTY_MAP_PAGE_STYLE);
const SfxItemPropertyMap* pMap = pPropSet->getPropertyMap();
- SwStyleBase_Impl aBase(*GetDoc(), GetStyleName());
+ SwStyleBase_Impl aBase(*GetDoc(), GetStyleName(), &GetDoc()->GetDfltFrmFmt()->GetAttrSet()); //UUUU add pDfltFrmFmt as parent
SfxStyleSheetBase* pBase = 0;
+
for(sal_Int32 nProp = 0; nProp < nLength; nProp++)
{
- const SfxItemPropertySimpleEntry* pEntry = pMap->getByName( pNames[nProp] );
+ const String& rPropName = pNames[nProp];
+ const SfxItemPropertySimpleEntry* pEntry = pMap->getByName( rPropName );
+
if (!pEntry)
- throw beans::UnknownPropertyException(OUString ( RTL_CONSTASCII_USTRINGPARAM ( "Unknown property: " ) ) + pNames[nProp], static_cast < cppu::OWeakObject * > ( this ) );
+ {
+ throw beans::UnknownPropertyException(OUString ( RTL_CONSTASCII_USTRINGPARAM ( "Unknown property: " ) ) + rPropName, static_cast < cppu::OWeakObject * > ( this ) );
+ }
if(GetBasePool())
{
@@ -3740,130 +3933,150 @@ uno::Sequence< uno::Any > SAL_CALL SwXPageStyle::GetPropertyValues_Impl(
pBase = GetBasePool()->Find(GetStyleName());
GetBasePool()->SetSearchMask(GetFamily(), nSaveMask );
}
+
sal_uInt16 nRes = 0;
- bool bHeader = false;
sal_Bool bAll = sal_False, bLeft = sal_False, bRight = sal_False;
+ const sal_uInt8 nMemberId(pEntry->nMemberId & (~SFX_METRIC_ITEM));
+
switch(pEntry->nWID)
{
- case FN_UNO_HEADER_ON:
- case FN_UNO_HEADER_BACKGROUND:
- case FN_UNO_HEADER_BOX:
- case FN_UNO_HEADER_LR_SPACE:
- case FN_UNO_HEADER_SHADOW:
- case FN_UNO_HEADER_BODY_DISTANCE:
- case FN_UNO_HEADER_IS_DYNAMIC_DISTANCE:
- case FN_UNO_HEADER_SHARE_CONTENT:
- case FN_UNO_HEADER_HEIGHT:
- case FN_UNO_HEADER_EAT_SPACING:
-
- case FN_UNO_FOOTER_ON:
- case FN_UNO_FOOTER_BACKGROUND:
- case FN_UNO_FOOTER_BOX:
- case FN_UNO_FOOTER_LR_SPACE:
- case FN_UNO_FOOTER_SHADOW:
- case FN_UNO_FOOTER_BODY_DISTANCE:
- case FN_UNO_FOOTER_IS_DYNAMIC_DISTANCE:
- case FN_UNO_FOOTER_SHARE_CONTENT:
- case FN_UNO_FOOTER_HEIGHT:
- case FN_UNO_FOOTER_EAT_SPACING:
+ case SID_ATTR_PAGE_ON:
+ case RES_BACKGROUND:
+ case RES_BOX:
+ case RES_LR_SPACE:
+ case RES_SHADOW:
+ case RES_UL_SPACE:
+ case SID_ATTR_PAGE_DYNAMIC:
+ case SID_ATTR_PAGE_SHARED:
+ case SID_ATTR_PAGE_SIZE:
+ case RES_HEADER_FOOTER_EAT_SPACING:
{
- SfxStyleSheetBasePool* pBasePool2 = ((SwXPageStyle*)this)->GetBasePool();
- pBasePool2->SetSearchMask(GetFamily());
- SfxStyleSheetBase* pBase2 = pBasePool2->Find(GetStyleName());
- if(pBase2)
+ // These slots are used for Header, Footer and (partially) for PageStyle directly.
+ // Check for Header/Footer entry
+ const bool bHeader(rPropName.EqualsAscii("Header", 0, 6));
+ const bool bFooter(rPropName.EqualsAscii("Footer", 0, 6));
+
+ if(bHeader || bFooter)
{
+ // slot is a Header/Footer slot
rtl::Reference< SwDocStyleSheet > xStyle( new SwDocStyleSheet( *(SwDocStyleSheet*)pBase ) );
const SfxItemSet& rSet = xStyle->GetItemSet();
- sal_Bool bFooter = sal_False;
+ const SvxSetItem* pSetItem;
+
+ if(SFX_ITEM_SET == rSet.GetItemState(bFooter ? SID_ATTR_PAGE_FOOTERSET : SID_ATTR_PAGE_HEADERSET, sal_False, (const SfxPoolItem**)&pSetItem))
+ {
+ // get from SfxItemSet of the corresponding SfxSetItem
+ const SfxItemSet& rSetSet = pSetItem->GetItemSet();
+ SfxItemSet* pRememberItemSet = aBase.replaceItemSet(&const_cast< SfxItemSet& >(rSetSet));
+ pRet[nProp] = lcl_GetStyleProperty(*pEntry, *pPropSet, aBase, pBase, GetFamily(), GetDoc() );
+ aBase.replaceItemSet(pRememberItemSet);
+ }
+ else if(pEntry->nWID == SID_ATTR_PAGE_ON)
+ {
+ // header/footer is not available, thus off. Default is sal_False, though
+ sal_Bool bRet = sal_False;
+ pRet[nProp].setValue(&bRet, ::getCppuBooleanType());
+ }
+ }
+ else
+ {
switch(pEntry->nWID)
{
- case FN_UNO_FOOTER_ON:
- bFooter = sal_True;
- // kein break!
- case FN_UNO_HEADER_ON:
+ case SID_ATTR_PAGE_DYNAMIC:
+ case SID_ATTR_PAGE_SHARED:
+ case SID_ATTR_PAGE_ON:
+ case RES_HEADER_FOOTER_EAT_SPACING:
+ {
+ // these slots are exclusive to Header/Footer, thus this is an error
+ throw beans::UnknownPropertyException(OUString ( RTL_CONSTASCII_USTRINGPARAM ( "Unknown property: " ) ) + rPropName, static_cast < cppu::OWeakObject * > ( this ) );
+ break;
+ }
+ default:
{
- //falls das SetItem nicht da ist, dann ist der Wert sal_False
- sal_Bool bRet = sal_False;
- pRet[nProp].setValue(&bRet, ::getCppuBooleanType());
- nRes = SID_ATTR_PAGE_ON;
+ // part of PageStyle, fallback to default
+ pRet[nProp] = lcl_GetStyleProperty(*pEntry, *pPropSet, aBase, pBase, GetFamily(), GetDoc() );
}
- break;
- case FN_UNO_FOOTER_BACKGROUND: bFooter = sal_True;
- // kein break;
- case FN_UNO_HEADER_BACKGROUND: nRes = RES_BACKGROUND;
- break;
- case FN_UNO_FOOTER_BOX: bFooter = sal_True;
- // kein break;
- case FN_UNO_HEADER_BOX: nRes = RES_BOX;
- break;
- case FN_UNO_FOOTER_LR_SPACE: bFooter = sal_True;
- // kein break;
- case FN_UNO_HEADER_LR_SPACE: nRes = RES_LR_SPACE;
- break;
- case FN_UNO_FOOTER_SHADOW: bFooter = sal_True;
- // kein break;
- case FN_UNO_HEADER_SHADOW: nRes = RES_SHADOW;
- break;
- case FN_UNO_FOOTER_BODY_DISTANCE: bFooter = sal_True;
- // kein break;
- case FN_UNO_HEADER_BODY_DISTANCE: nRes = RES_UL_SPACE;
- break;
- case FN_UNO_FOOTER_IS_DYNAMIC_DISTANCE: bFooter = sal_True;
- // kein break;
- case FN_UNO_HEADER_IS_DYNAMIC_DISTANCE: nRes = SID_ATTR_PAGE_DYNAMIC;
- break;
- case FN_UNO_FOOTER_SHARE_CONTENT: bFooter = sal_True;
- // kein break;
- case FN_UNO_HEADER_SHARE_CONTENT: nRes = SID_ATTR_PAGE_SHARED;
- break;
- case FN_UNO_FOOTER_HEIGHT: bFooter = sal_True;
- // kein break;
- case FN_UNO_HEADER_HEIGHT: nRes = SID_ATTR_PAGE_SIZE;
- break;
- case FN_UNO_FOOTER_EAT_SPACING: bFooter = sal_True;
- // kein break;
- case FN_UNO_HEADER_EAT_SPACING: nRes = RES_HEADER_FOOTER_EAT_SPACING;
- break;
}
+ }
+
+ break;
+ }
+
+ case XATTR_FILLBMP_SIZELOG:
+ case XATTR_FILLBMP_TILEOFFSETX:
+ case XATTR_FILLBMP_TILEOFFSETY:
+ case XATTR_FILLBMP_POSOFFSETX:
+ case XATTR_FILLBMP_POSOFFSETY:
+ case XATTR_FILLBMP_POS:
+ case XATTR_FILLBMP_SIZEX:
+ case XATTR_FILLBMP_SIZEY:
+ case XATTR_FILLBMP_STRETCH:
+ case XATTR_FILLBMP_TILE:
+ case OWN_ATTR_FILLBMP_MODE:
+ case XATTR_FILLCOLOR:
+ case XATTR_FILLBACKGROUND:
+ case XATTR_FILLBITMAP:
+ case XATTR_GRADIENTSTEPCOUNT:
+ case XATTR_FILLGRADIENT:
+ case XATTR_FILLHATCH:
+ case XATTR_FILLSTYLE:
+ case XATTR_FILLTRANSPARENCE:
+ case XATTR_FILLFLOATTRANSPARENCE:
+ case XATTR_SECONDARYFILLCOLOR:
+ {
+ // This DrawingLayer FillStyle attributes can be part of Header, Footer and PageStyle
+ // itself, so decide what to do using the name
+ const bool bHeader(rPropName.EqualsAscii("Header", 0, 6));
+ const bool bFooter(rPropName.EqualsAscii("Footer", 0, 6));
+
+ if(bHeader || bFooter)
+ {
+ rtl::Reference< SwDocStyleSheet > xStyle( new SwDocStyleSheet( *(SwDocStyleSheet*)pBase ) );
+ const SfxItemSet& rSet = xStyle->GetItemSet();
const SvxSetItem* pSetItem;
- if(SFX_ITEM_SET == rSet.GetItemState(
- bFooter ? SID_ATTR_PAGE_FOOTERSET : SID_ATTR_PAGE_HEADERSET,
- sal_False, (const SfxPoolItem**)&pSetItem))
+
+ if(SFX_ITEM_SET == rSet.GetItemState(bFooter ? SID_ATTR_PAGE_FOOTERSET : SID_ATTR_PAGE_HEADERSET, sal_False, (const SfxPoolItem**)&pSetItem))
{
- const SfxItemSet& rTmpSet = pSetItem->GetItemSet();
- const SfxPoolItem* pItem = 0;
- rTmpSet.GetItemState(nRes, sal_True, &pItem);
- if(!pItem && nRes != rTmpSet.GetPool()->GetSlotId(nRes))
- pItem = &rTmpSet.GetPool()->GetDefaultItem(nRes);
- if(pItem)
- pItem->QueryValue(pRet[nProp], pEntry->nMemberId);
+ // set at SfxItemSet of the corresponding SfxSetItem
+ const SfxItemSet& rSetSet = pSetItem->GetItemSet();
+ SfxItemSet* pRememberItemSet = aBase.replaceItemSet(&const_cast< SfxItemSet& >(rSetSet));
+ pRet[nProp] = lcl_GetStyleProperty(*pEntry, *pPropSet, aBase, pBase, GetFamily(), GetDoc() );
+ aBase.replaceItemSet(pRememberItemSet);
}
}
+ else
+ {
+ // part of PageStyle, fallback to default
+ pRet[nProp] = lcl_GetStyleProperty(*pEntry, *pPropSet, aBase, pBase, GetFamily(), GetDoc() );
+ }
+
+ break;
}
- break;
- case FN_UNO_HEADER :
- bAll = sal_True; goto Header;
- case FN_UNO_HEADER_LEFT :
- bLeft = sal_True; goto Header;
- case FN_UNO_HEADER_RIGHT :
- bRight = sal_True; goto Header;
-Header:
- bHeader = true;
- nRes = RES_HEADER; goto MakeObject;
- case FN_UNO_FOOTER :
- bAll = sal_True; goto Footer;
- case FN_UNO_FOOTER_LEFT :
- bLeft = sal_True; goto Footer;
- case FN_UNO_FOOTER_RIGHT :
- bRight = sal_True;
-Footer:
- nRes = RES_FOOTER;
-MakeObject:
+
+ case FN_UNO_HEADER:
+ case FN_UNO_HEADER_LEFT:
+ case FN_UNO_HEADER_RIGHT:
+ case FN_UNO_FOOTER:
+ case FN_UNO_FOOTER_LEFT:
+ case FN_UNO_FOOTER_RIGHT:
{
+ //UUUU cleanups for readability (undos removed, rearranged)
+ bool bHeader(false);
+
+ switch(pEntry->nWID)
+ {
+ case FN_UNO_HEADER: bHeader = true; nRes = RES_HEADER; bAll = sal_True; break;
+ case FN_UNO_HEADER_LEFT: bHeader = true; nRes = RES_HEADER; bLeft = sal_True; break;
+ case FN_UNO_HEADER_RIGHT: bHeader = true; nRes = RES_HEADER; bRight = sal_True; break;
+ case FN_UNO_FOOTER: bHeader = false; nRes = RES_FOOTER; bAll = sal_True; break;
+ case FN_UNO_FOOTER_LEFT: bHeader = false; nRes = RES_FOOTER; bLeft = sal_True; break;
+ case FN_UNO_FOOTER_RIGHT: bHeader = false; nRes = RES_FOOTER; bRight = sal_True; break;
+ default: break;
+ }
+
const SwPageDesc& rDesc = aBase.GetOldPageDesc();
const SwFrmFmt* pFrmFmt = 0;
- sal_Bool bShare = (bHeader && rDesc.IsHeaderShared())||
- (!bHeader && rDesc.IsFooterShared());
+ sal_Bool bShare = (bHeader && rDesc.IsHeaderShared()) || (!bHeader && rDesc.IsFooterShared());
// TextLeft returns the left content if there is one,
// Text and TextRight return the master content.
// TextRight does the same as Text and is for
@@ -3882,32 +4095,47 @@ MakeObject:
{
pRet[nProp] <<= xRet;
}
+
+ break;
}
- break;
+
case FN_PARAM_FTN_INFO :
{
rtl::Reference< SwDocStyleSheet > xStyle( new SwDocStyleSheet( *(SwDocStyleSheet*)pBase ) );
const SfxItemSet& rSet = xStyle->GetItemSet();
const SfxPoolItem& rItem = rSet.Get(FN_PARAM_FTN_INFO);
- rItem.QueryValue(pRet[nProp], pEntry->nMemberId);
+ rItem.QueryValue(pRet[nProp], nMemberId);
+ break;
}
- break;
+
default:
- pRet[nProp] = lcl_GetStyleProperty(*pEntry, *pPropSet, aBase, pBase, GetFamily(), GetDoc() );
+ {
+ //UUUU
+ pRet[nProp] = lcl_GetStyleProperty(*pEntry, *pPropSet, aBase, pBase, GetFamily(), GetDoc() );
+ break;
+ }
}
}
else if(IsDescriptor())
{
uno::Any* pAny = 0;
- GetPropImpl()->GetProperty(pNames[nProp], pAny);
+ GetPropImpl()->GetProperty(rPropName, pAny);
+
if ( !pAny )
- GetPropImpl()->GetProperty ( pNames[nProp], mxStyleData, pRet[ nProp ] );
+ {
+ GetPropImpl()->GetProperty ( rPropName, mxStyleData, pRet[ nProp ] );
+ }
else
+ {
pRet[nProp] = *pAny;
+ }
}
else
+ {
throw uno::RuntimeException();
+ }
}
+
return aRet;
}
/* -----------------------------18.04.01 13:50--------------------------------
@@ -3915,7 +4143,7 @@ MakeObject:
---------------------------------------------------------------------------*/
uno::Sequence< uno::Any > SwXPageStyle::getPropertyValues(
const uno::Sequence< OUString >& rPropertyNames )
- throw(uno::RuntimeException)
+throw(uno::RuntimeException)
{
vos::OGuard aGuard(Application::GetSolarMutex());
uno::Sequence< uno::Any > aValues;
@@ -3939,26 +4167,27 @@ uno::Sequence< uno::Any > SwXPageStyle::getPropertyValues(
/*-- 17.12.98 08:43:36---------------------------------------------------
-----------------------------------------------------------------------*/
-uno::Any SwXPageStyle::getPropertyValue(const OUString& rPropertyName) throw(
- beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException)
+uno::Any SwXPageStyle::getPropertyValue(
+ const OUString& rPropertyName)
+throw(beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException)
{
vos::OGuard aGuard(Application::GetSolarMutex());
const uno::Sequence<OUString> aProperties(&rPropertyName, 1);
+
return GetPropertyValues_Impl(aProperties).getConstArray()[0];
}
/*-- 17.12.98 08:43:36---------------------------------------------------
-----------------------------------------------------------------------*/
-void SwXPageStyle::setPropertyValue(const OUString& rPropertyName, const uno::Any& rValue)
- throw( beans::UnknownPropertyException,
- beans::PropertyVetoException,
- lang::IllegalArgumentException,
- lang::WrappedTargetException,
- uno::RuntimeException)
+void SwXPageStyle::setPropertyValue(
+ const OUString& rPropertyName,
+ const uno::Any& rValue)
+throw( beans::UnknownPropertyException, beans::PropertyVetoException, lang::IllegalArgumentException, lang::WrappedTargetException, uno::RuntimeException)
{
vos::OGuard aGuard(Application::GetSolarMutex());
const uno::Sequence<OUString> aProperties(&rPropertyName, 1);
const uno::Sequence<uno::Any> aValues(&rValue, 1);
+
SetPropertyValues_Impl( aProperties, aValues );
}
@@ -4156,57 +4385,220 @@ void SwXAutoStyleFamily::Modify( const SfxPoolItem* pOld, const SfxPoolItem *pNe
-----------------------------------------------------------------------*/
uno::Reference< style::XAutoStyle > SwXAutoStyleFamily::insertStyle(
const uno::Sequence< beans::PropertyValue >& Values )
- throw (uno::RuntimeException)
+throw (uno::RuntimeException)
{
if( !pDocShell )
+ {
throw uno::RuntimeException();
+ }
+
const sal_uInt16* pRange = 0;
const SfxItemPropertySet* pPropSet = 0;
+
switch( eFamily )
{
case IStyleAccess::AUTO_STYLE_CHAR:
{
pRange = aCharAutoFmtSetRange;
pPropSet = aSwMapProvider.GetPropertySet(PROPERTY_MAP_CHAR_AUTO_STYLE);
+ break;
}
- break;
case IStyleAccess::AUTO_STYLE_RUBY:
{
pRange = 0;//aTxtNodeSetRange;
pPropSet = aSwMapProvider.GetPropertySet(PROPERTY_MAP_RUBY_AUTO_STYLE);
+ break;
}
- break;
case IStyleAccess::AUTO_STYLE_PARA:
{
- pRange = aTxtNodeSetRange;
+ pRange = aTxtNodeSetRange; //UUUU checked, already added support for [XATTR_FILL_FIRST, XATTR_FILL_LAST]
pPropSet = aSwMapProvider.GetPropertySet(PROPERTY_MAP_PARA_AUTO_STYLE);
+ break;
}
- break;
- default:
- ;
+ default: break;
}
+
SwAttrSet aSet( pDocShell->GetDoc()->GetAttrPool(), pRange );
const beans::PropertyValue* pSeq = Values.getConstArray();
sal_Int32 nLen = Values.getLength();
- for( sal_Int32 i = 0; i < nLen; ++i )
+ const bool bTakeCareOfDrawingLayerFillStyle(IStyleAccess::AUTO_STYLE_PARA == eFamily);
+
+ if(!bTakeCareOfDrawingLayerFillStyle)
{
- try
- {
- pPropSet->setPropertyValue( pSeq[i].Name, pSeq[i].Value, aSet );
- }
- catch (beans::UnknownPropertyException &)
+ for( sal_Int32 i = 0; i < nLen; ++i )
{
- ASSERT( false, "Unknown property" );
+ try
+ {
+ pPropSet->setPropertyValue( pSeq[i].Name, pSeq[i].Value, aSet );
+ }
+ catch (beans::UnknownPropertyException &)
+ {
+ ASSERT( false, "Unknown property" );
+ }
+ catch (lang::IllegalArgumentException &)
+ {
+ ASSERT( false, "Illegal argument" );
+ }
}
- catch (lang::IllegalArgumentException &)
+ }
+ else
+ {
+ //UUUU set parent to ItemSet to ensure XFILL_NONE as XFillStyleItem
+ // to make cases in RES_BACKGROUND work correct; target *is* a style
+ // where this is the case
+ aSet.SetParent(&pDocShell->GetDoc()->GetDfltTxtFmtColl()->GetAttrSet());
+
+ //UUUU here the used DrawingLayer FillStyles are imported when family is
+ // equal to IStyleAccess::AUTO_STYLE_PARA, thus we will need to serve the
+ // used slots functionality here to do this correctly
+ const SfxItemPropertyMap *pMap = pPropSet->getPropertyMap();
+
+ for( sal_Int32 i = 0; i < nLen; ++i )
{
- ASSERT( false, "Illegal argument" );
+ const OUString& rPropName = pSeq[i].Name;
+ uno::Any aValue(pSeq[i].Value);
+ const SfxItemPropertySimpleEntry* pEntry = pMap->getByName(rPropName);
+
+ if(!pEntry)
+ {
+ throw beans::UnknownPropertyException(OUString ( RTL_CONSTASCII_USTRINGPARAM ( "Unknown property: " ) ) + rPropName, static_cast < cppu::OWeakObject * > ( this ) );
+ }
+
+ const sal_uInt8 nMemberId(pEntry->nMemberId & (~SFX_METRIC_ITEM));
+ bool bDone(false);
+
+ // check for needed metric translation
+ if(pEntry->nMemberId & SFX_METRIC_ITEM)
+ {
+ bool bDoIt(true);
+
+ if(XATTR_FILLBMP_SIZEX == pEntry->nWID || XATTR_FILLBMP_SIZEY == pEntry->nWID)
+ {
+ // exception: If these ItemTypes are used, do not convert when these are negative
+ // since this means they are intended as percent values
+ sal_Int32 nValue = 0;
+
+ if(aValue >>= nValue)
+ {
+ bDoIt = nValue > 0;
+ }
+ }
+
+ if(bDoIt)
+ {
+ const SfxItemPool& rPool = pDocShell->GetDoc()->GetAttrPool();
+ const SfxMapUnit eMapUnit(rPool.GetMetric(pEntry->nWID));
+
+ if(eMapUnit != SFX_MAPUNIT_100TH_MM)
+ {
+ SvxUnoConvertFromMM(eMapUnit, aValue);
+ }
+ }
+ }
+
+ switch(pEntry->nWID)
+ {
+ case XATTR_FILLGRADIENT:
+ case XATTR_FILLHATCH:
+ case XATTR_FILLBITMAP:
+ case XATTR_FILLFLOATTRANSPARENCE:
+ // not yet needed; activate when LineStyle support may be added
+ // case XATTR_LINESTART:
+ // case XATTR_LINEEND:
+ // case XATTR_LINEDASH:
+ {
+ if(MID_NAME == nMemberId)
+ {
+ //UUUU add set commands for FillName items
+ OUString aTempName;
+
+ if(!(aValue >>= aTempName))
+ {
+ throw lang::IllegalArgumentException();
+ }
+
+ SvxShape::SetFillAttribute(pEntry->nWID, aTempName, aSet);
+ bDone = true;
+ }
+ else if(MID_GRAFURL == nMemberId)
+ {
+ if(XATTR_FILLBITMAP == pEntry->nWID)
+ {
+ //UUUU Bitmap also has the MID_GRAFURL mode where a Bitmap URL is used
+ const Graphic aNullGraphic;
+ XFillBitmapItem aXFillBitmapItem(aSet.GetPool(), aNullGraphic);
+
+ aXFillBitmapItem.PutValue(aValue, nMemberId);
+ aSet.Put(aXFillBitmapItem);
+ bDone = true;
+ }
+ }
+
+ break;
+ }
+ case RES_BACKGROUND:
+ {
+ //UUUU
+ const SvxBrushItem aOriginalBrushItem(getSvxBrushItemFromSourceSet(aSet, RES_BACKGROUND));
+ SvxBrushItem aChangedBrushItem(aOriginalBrushItem);
+
+ aChangedBrushItem.PutValue(aValue, nMemberId);
+
+ if(!(aChangedBrushItem == aOriginalBrushItem))
+ {
+ setSvxBrushItemAsFillAttributesToTargetSet(aChangedBrushItem, aSet);
+ }
+
+ bDone = true;
+ break;
+ }
+ case OWN_ATTR_FILLBMP_MODE:
+ {
+ //UUUU
+ drawing::BitmapMode eMode;
+
+ if(!(aValue >>= eMode))
+ {
+ sal_Int32 nMode = 0;
+
+ if(!(aValue >>= nMode))
+ {
+ throw lang::IllegalArgumentException();
+ }
+
+ eMode = (drawing::BitmapMode)nMode;
+ }
+
+ aSet.Put(XFillBmpStretchItem(drawing::BitmapMode_STRETCH == eMode));
+ aSet.Put(XFillBmpTileItem(drawing::BitmapMode_REPEAT == eMode));
+
+ bDone = true;
+ break;
+ }
+ default: break;
+ }
+
+ if(!bDone)
+ {
+ pPropSet->setPropertyValue( rPropName, aValue, aSet );
+ }
}
+
+ //UUUU clear parent again
+ aSet.SetParent(0);
}
+ //UUUU need to ensure uniqueness of evtl. added NameOrIndex items
+ // currently in principle only needed when bTakeCareOfDrawingLayerFillStyle,
+ // but does not hurt and is easily forgotten later eventually, so keep it
+ // as common case
+ pDocShell->GetDoc()->CheckForUniqueItemForLineFillNameOrIndex(aSet);
+
+ // AutomaticStyle creation
SfxItemSet_Pointer_t pSet = pDocShell->GetDoc()->GetIStyleAccess().cacheAutomaticStyle( aSet, eFamily );
uno::Reference<style::XAutoStyle> xRet = new SwXAutoStyle(pDocShell->GetDoc(), pSet, eFamily);
+
return xRet;
}
/*-- 31.05.2006 11:24:02---------------------------------------------------
@@ -4328,38 +4720,48 @@ uno::Any SwXAutoStylesEnumerator::nextElement( )
}
return aRet;
}
-/*-- 19.05.2006 11:24:09---------------------------------------------------
- -----------------------------------------------------------------------*/
-SwXAutoStyle::SwXAutoStyle( SwDoc* pDoc, SfxItemSet_Pointer_t pInitSet, IStyleAccess::SwAutoStyleFamily eFam )
-: pSet( pInitSet ), eFamily( eFam )
+//////////////////////////////////////////////////////////////////////////////
+//UUUU SwXAutoStyle with the family IStyleAccess::AUTO_STYLE_PARA (or
+// PROPERTY_MAP_PARA_AUTO_STYLE) now uses DrawingLayer FillStyles to allow
+// unified paragraph background fill, thus the UNO API implementation has to
+// support the needed slots for these. This seems to be used only for reading
+// (no setPropertyValue implementation here), so maybe specialized for saving
+// the Writer Doc to ODF
+
+SwXAutoStyle::SwXAutoStyle(
+ SwDoc* pDoc,
+ SfxItemSet_Pointer_t pInitSet,
+ IStyleAccess::SwAutoStyleFamily eFam)
+: mpSet(pInitSet),
+ meFamily(eFam),
+ mrDoc(*pDoc)
{
// Register ourselves as a listener to the document (via the page descriptor)
- pDoc->GetPageDescFromPool(RES_POOLPAGE_STANDARD)->Add(this);
+ mrDoc.GetPageDescFromPool(RES_POOLPAGE_STANDARD)->Add(this);
}
-/*-- 19.05.2006 11:24:09---------------------------------------------------
-
- -----------------------------------------------------------------------*/
SwXAutoStyle::~SwXAutoStyle()
{
}
-void SwXAutoStyle::Modify( const SfxPoolItem* pOld, const SfxPoolItem *pNew)
+void SwXAutoStyle::Modify(
+ const SfxPoolItem* pOld,
+ const SfxPoolItem *pNew)
{
ClientModify(this, pOld, pNew);
+
if(!GetRegisteredIn())
- pSet.reset();
+ {
+ mpSet.reset();
+ }
}
-/*-- 19.05.2006 11:24:09---------------------------------------------------
-
- -----------------------------------------------------------------------*/
-uno::Reference< beans::XPropertySetInfo > SwXAutoStyle::getPropertySetInfo( )
- throw (uno::RuntimeException)
+uno::Reference< beans::XPropertySetInfo > SwXAutoStyle::getPropertySetInfo()
+throw (uno::RuntimeException)
{
uno::Reference< beans::XPropertySetInfo > xRet;
- switch( eFamily )
+ switch( meFamily )
{
case IStyleAccess::AUTO_STYLE_CHAR:
{
@@ -4401,140 +4803,202 @@ uno::Reference< beans::XPropertySetInfo > SwXAutoStyle::getPropertySetInfo( )
return xRet;
}
-/*-- 19.05.2006 11:24:09---------------------------------------------------
-
- -----------------------------------------------------------------------*/
-void SwXAutoStyle::setPropertyValue( const OUString& /*rPropertyName*/, const uno::Any& /*rValue*/ )
- throw( beans::UnknownPropertyException,
- beans::PropertyVetoException,
- lang::IllegalArgumentException,
- lang::WrappedTargetException,
- uno::RuntimeException)
+void SwXAutoStyle::setPropertyValue(
+ const OUString& /*rPropertyName*/,
+ const uno::Any& /*rValue*/ )
+throw( beans::UnknownPropertyException, beans::PropertyVetoException, lang::IllegalArgumentException, lang::WrappedTargetException, uno::RuntimeException)
{
}
-/*-- 19.05.2006 11:24:09---------------------------------------------------
-
- -----------------------------------------------------------------------*/
-uno::Any SwXAutoStyle::getPropertyValue( const OUString& rPropertyName )
- throw( beans::UnknownPropertyException,
- lang::WrappedTargetException,
- uno::RuntimeException )
+uno::Any SwXAutoStyle::getPropertyValue(
+ const OUString& rPropertyName )
+throw( beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException )
{
vos::OGuard aGuard(Application::GetSolarMutex());
const uno::Sequence<OUString> aProperties(&rPropertyName, 1);
+
return GetPropertyValues_Impl(aProperties).getConstArray()[0];
}
-/*-- 19.05.2006 11:24:09---------------------------------------------------
-
- -----------------------------------------------------------------------*/
-void SwXAutoStyle::addPropertyChangeListener( const OUString& /*aPropertyName*/,
- const uno::Reference< beans::XPropertyChangeListener >& /*xListener*/ )
- throw( beans::UnknownPropertyException,
- lang::WrappedTargetException,
- uno::RuntimeException )
+void SwXAutoStyle::addPropertyChangeListener(
+ const OUString& /*aPropertyName*/,
+ const uno::Reference< beans::XPropertyChangeListener >& /*xListener*/ )
+throw( beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException )
{
}
-/*-- 19.05.2006 11:24:09---------------------------------------------------
-
- -----------------------------------------------------------------------*/
-void SwXAutoStyle::removePropertyChangeListener( const OUString& /*aPropertyName*/,
- const uno::Reference< beans::XPropertyChangeListener >& /*aListener*/ )
- throw( beans::UnknownPropertyException,
- lang::WrappedTargetException,
- uno::RuntimeException )
+void SwXAutoStyle::removePropertyChangeListener(
+ const OUString& /*aPropertyName*/,
+ const uno::Reference< beans::XPropertyChangeListener >& /*aListener*/ )
+throw( beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException )
{
}
-/*-- 19.05.2006 11:24:09---------------------------------------------------
-
- -----------------------------------------------------------------------*/
-void SwXAutoStyle::addVetoableChangeListener( const OUString& /*PropertyName*/,
- const uno::Reference< beans::XVetoableChangeListener >& /*aListener*/ )
- throw( beans::UnknownPropertyException,
- lang::WrappedTargetException,
- uno::RuntimeException )
+void SwXAutoStyle::addVetoableChangeListener(
+ const OUString& /*PropertyName*/,
+ const uno::Reference< beans::XVetoableChangeListener >& /*aListener*/ )
+throw( beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException )
{
}
-/*-- 19.05.2006 11:24:09---------------------------------------------------
-
- -----------------------------------------------------------------------*/
-void SwXAutoStyle::removeVetoableChangeListener( const OUString& /*PropertyName*/,
- const uno::Reference< beans::XVetoableChangeListener >& /*aListener*/ )
- throw( beans::UnknownPropertyException,
- lang::WrappedTargetException,
- uno::RuntimeException )
+void SwXAutoStyle::removeVetoableChangeListener(
+ const OUString& /*PropertyName*/,
+ const uno::Reference< beans::XVetoableChangeListener >& /*aListener*/ )
+throw( beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException )
{
}
-/*-- 19.05.2006 11:24:09---------------------------------------------------
-
- -----------------------------------------------------------------------*/
void SwXAutoStyle::setPropertyValues(
- const uno::Sequence< ::rtl::OUString >& /*aPropertyNames*/,
- const uno::Sequence< uno::Any >& /*aValues*/ )
- throw (beans::PropertyVetoException, lang::IllegalArgumentException,
- lang::WrappedTargetException, uno::RuntimeException)
+ const uno::Sequence< ::rtl::OUString >& /*aPropertyNames*/,
+ const uno::Sequence< uno::Any >& /*aValues*/ )
+throw (beans::PropertyVetoException, lang::IllegalArgumentException, lang::WrappedTargetException, uno::RuntimeException)
{
}
-/*-- 19.05.2006 11:24:09---------------------------------------------------
-
- -----------------------------------------------------------------------*/
uno::Sequence< uno::Any > SwXAutoStyle::GetPropertyValues_Impl(
- const uno::Sequence< OUString > & rPropertyNames )
- throw( beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException )
+ const uno::Sequence< OUString > & rPropertyNames )
+throw( beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException )
{
- if( !pSet.get() )
+ if( !mpSet.get() )
+ {
throw uno::RuntimeException();
- // query_item
+ }
+ // query_item
sal_Int8 nPropSetId = PROPERTY_MAP_CHAR_AUTO_STYLE;
- switch(eFamily)
+
+ switch(meFamily)
{
case IStyleAccess::AUTO_STYLE_CHAR : nPropSetId = PROPERTY_MAP_CHAR_AUTO_STYLE; break;
case IStyleAccess::AUTO_STYLE_RUBY : nPropSetId = PROPERTY_MAP_RUBY_AUTO_STYLE; break;
case IStyleAccess::AUTO_STYLE_PARA : nPropSetId = PROPERTY_MAP_PARA_AUTO_STYLE; break;
- default:
- ;
+ default: ;
}
const SfxItemPropertySet* pPropSet = aSwMapProvider.GetPropertySet(nPropSetId);
const SfxItemPropertyMap *pMap = pPropSet->getPropertyMap();
const OUString* pNames = rPropertyNames.getConstArray();
-
- sal_Int32 nLen = rPropertyNames.getLength();
+ const sal_Int32 nLen(rPropertyNames.getLength());
uno::Sequence< uno::Any > aRet( nLen );
uno::Any* pValues = aRet.getArray();
-
- SfxItemSet& rSet = *pSet.get();
+ const bool bTakeCareOfDrawingLayerFillStyle(IStyleAccess::AUTO_STYLE_PARA == meFamily);
for( sal_Int32 i = 0; i < nLen; ++i )
{
- const String& rPropName = pNames[i];
+ const OUString& rPropName = pNames[i];
const SfxItemPropertySimpleEntry* pEntry = pMap->getByName(rPropName);
+
if(!pEntry)
+ {
throw beans::UnknownPropertyException(OUString ( RTL_CONSTASCII_USTRINGPARAM ( "Unknown property: " ) ) + rPropName, static_cast < cppu::OWeakObject * > ( this ) );
- else if ( RES_TXTATR_AUTOFMT == pEntry->nWID || RES_AUTO_STYLE == pEntry->nWID )
+ }
+
+ uno::Any aTarget;
+ bool bDone(false);
+
+ if ( RES_TXTATR_AUTOFMT == pEntry->nWID || RES_AUTO_STYLE == pEntry->nWID )
{
- OUString sName(StylePool::nameOf( pSet ));
- pValues[i] <<= sName;
+ OUString sName(StylePool::nameOf( mpSet ));
+ aTarget <<= sName;
+ bDone = true;
}
- else
- pPropSet->getPropertyValue( *pEntry, rSet, pValues[i] );
+ else if(bTakeCareOfDrawingLayerFillStyle)
+ {
+ //UUUU add support for DrawingLayer FillStyle slots
+ switch(pEntry->nWID)
+ {
+ case RES_BACKGROUND:
+ {
+ const SvxBrushItem aOriginalBrushItem(getSvxBrushItemFromSourceSet(*mpSet, RES_BACKGROUND));
+ const sal_uInt8 nMemberId(pEntry->nMemberId & (~SFX_METRIC_ITEM));
+
+ if(!aOriginalBrushItem.QueryValue(aTarget, nMemberId))
+ {
+ OSL_ENSURE(false, "Error getting attribute from RES_BACKGROUND (!)");
+ }
+
+ bDone = true;
+ break;
+ }
+ case OWN_ATTR_FILLBMP_MODE:
+ {
+ const XFillBmpStretchItem* pStretchItem = dynamic_cast< const XFillBmpStretchItem* >(&mpSet->Get(XATTR_FILLBMP_STRETCH));
+ const XFillBmpTileItem* pTileItem = dynamic_cast< const XFillBmpTileItem* >(&mpSet->Get(XATTR_FILLBMP_TILE));
+
+ if( pTileItem && pTileItem->GetValue() )
+ {
+ aTarget <<= drawing::BitmapMode_REPEAT;
+ }
+ else if( pStretchItem && pStretchItem->GetValue() )
+ {
+ aTarget <<= drawing::BitmapMode_STRETCH;
+ }
+ else
+ {
+ aTarget <<= drawing::BitmapMode_NO_REPEAT;
+ }
+
+ bDone = true;
+ break;
+ }
+ }
+ }
+
+ if(!bDone)
+ {
+ pPropSet->getPropertyValue( *pEntry, *mpSet, aTarget );
+ }
+
+ if(bTakeCareOfDrawingLayerFillStyle)
+ {
+ if(pEntry->pType && *(pEntry->pType) == ::getCppuType((const sal_Int16*)0) && *(pEntry->pType) != aTarget.getValueType())
+ {
+ // since the sfx uint16 item now exports a sal_Int32, we may have to fix this here
+ sal_Int32 nValue = 0;
+ aTarget >>= nValue;
+ aTarget <<= (sal_Int16)nValue;
+ }
+
+ // check for needed metric translation
+ if(pEntry->nMemberId & SFX_METRIC_ITEM)
+ {
+ bool bDoIt(true);
+
+ if(XATTR_FILLBMP_SIZEX == pEntry->nWID || XATTR_FILLBMP_SIZEY == pEntry->nWID)
+ {
+ // exception: If these ItemTypes are used, do not convert when these are negative
+ // since this means they are intended as percent values
+ sal_Int32 nValue = 0;
+
+ if(aTarget >>= nValue)
+ {
+ bDoIt = nValue > 0;
+ }
+ }
+
+ if(bDoIt)
+ {
+ const SfxItemPool& rPool = mrDoc.GetAttrPool();
+ const SfxMapUnit eMapUnit(rPool.GetMetric(pEntry->nWID));
+
+ if(eMapUnit != SFX_MAPUNIT_100TH_MM)
+ {
+ SvxUnoConvertToMM(eMapUnit, aTarget);
+ }
+ }
+ }
+ }
+
+ // add value
+ pValues[i] = aTarget;
}
+
return aRet;
}
-/*-- 19.05.2006 11:24:09---------------------------------------------------
-
- -----------------------------------------------------------------------*/
uno::Sequence< uno::Any > SwXAutoStyle::getPropertyValues (
- const uno::Sequence< ::rtl::OUString >& rPropertyNames )
- throw (uno::RuntimeException)
+ const uno::Sequence< ::rtl::OUString >& rPropertyNames )
+throw (uno::RuntimeException)
{
vos::OGuard aGuard(Application::GetSolarMutex());
uno::Sequence< uno::Any > aValues;
@@ -4556,41 +5020,29 @@ uno::Sequence< uno::Any > SwXAutoStyle::getPropertyValues (
return aValues;
}
-/*-- 19.05.2006 11:24:10---------------------------------------------------
-
- -----------------------------------------------------------------------*/
void SwXAutoStyle::addPropertiesChangeListener(
- const uno::Sequence< ::rtl::OUString >& /*aPropertyNames*/,
- const uno::Reference< beans::XPropertiesChangeListener >& /*xListener*/ )
- throw (uno::RuntimeException)
+ const uno::Sequence< ::rtl::OUString >& /*aPropertyNames*/,
+ const uno::Reference< beans::XPropertiesChangeListener >& /*xListener*/ )
+throw (uno::RuntimeException)
{
}
-/*-- 19.05.2006 11:24:10---------------------------------------------------
-
- -----------------------------------------------------------------------*/
void SwXAutoStyle::removePropertiesChangeListener(
- const uno::Reference< beans::XPropertiesChangeListener >& /*xListener*/ )
- throw (uno::RuntimeException)
+ const uno::Reference< beans::XPropertiesChangeListener >& /*xListener*/ )
+throw (uno::RuntimeException)
{
}
-/*-- 19.05.2006 11:24:11---------------------------------------------------
-
- -----------------------------------------------------------------------*/
void SwXAutoStyle::firePropertiesChangeEvent(
- const uno::Sequence< ::rtl::OUString >& /*aPropertyNames*/,
- const uno::Reference< beans::XPropertiesChangeListener >& /*xListener*/ )
- throw (uno::RuntimeException)
+ const uno::Sequence< ::rtl::OUString >& /*aPropertyNames*/,
+ const uno::Reference< beans::XPropertiesChangeListener >& /*xListener*/ )
+throw (uno::RuntimeException)
{
}
-/*-- 19.05.2006 11:24:11---------------------------------------------------
-
- -----------------------------------------------------------------------*/
-beans::PropertyState SwXAutoStyle::getPropertyState( const OUString& rPropertyName )
- throw( beans::UnknownPropertyException,
- uno::RuntimeException)
+beans::PropertyState SwXAutoStyle::getPropertyState(
+ const OUString& rPropertyName )
+throw( beans::UnknownPropertyException, uno::RuntimeException)
{
vos::OGuard aGuard(Application::GetSolarMutex());
@@ -4601,106 +5053,179 @@ beans::PropertyState SwXAutoStyle::getPropertyState( const OUString& rPropertyNa
return aStates.getConstArray()[0];
}
-/*-- 19.05.2006 11:24:11---------------------------------------------------
-
- -----------------------------------------------------------------------*/
-void SwXAutoStyle::setPropertyToDefault( const OUString& /*PropertyName*/ )
- throw( beans::UnknownPropertyException,
- uno::RuntimeException )
+void SwXAutoStyle::setPropertyToDefault(
+ const OUString& /*PropertyName*/ )
+throw( beans::UnknownPropertyException, uno::RuntimeException )
{
}
-/*-- 19.05.2006 11:24:11---------------------------------------------------
-
- -----------------------------------------------------------------------*/
-uno::Any SwXAutoStyle::getPropertyDefault( const OUString& rPropertyName )
- throw( beans::UnknownPropertyException,
- lang::WrappedTargetException,
- uno::RuntimeException)
+uno::Any SwXAutoStyle::getPropertyDefault(
+ const OUString& rPropertyName )
+throw( beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException)
{
const uno::Sequence < OUString > aSequence ( &rPropertyName, 1 );
+
return getPropertyDefaults ( aSequence ).getConstArray()[0];
}
-/*-- 19.05.2006 11:24:12---------------------------------------------------
-
- -----------------------------------------------------------------------*/
uno::Sequence< beans::PropertyState > SwXAutoStyle::getPropertyStates(
- const uno::Sequence< ::rtl::OUString >& rPropertyNames )
- throw (beans::UnknownPropertyException, uno::RuntimeException)
+ const uno::Sequence< ::rtl::OUString >& rPropertyNames )
+throw (beans::UnknownPropertyException, uno::RuntimeException)
{
- if( !pSet.get() )
+ if( !mpSet.get() )
+ {
throw uno::RuntimeException();
+ }
+
vos::OGuard aGuard(Application::GetSolarMutex());
uno::Sequence< beans::PropertyState > aRet(rPropertyNames.getLength());
beans::PropertyState* pStates = aRet.getArray();
const OUString* pNames = rPropertyNames.getConstArray();
-
sal_Int8 nPropSetId = PROPERTY_MAP_CHAR_AUTO_STYLE;
- switch(eFamily)
+
+ switch(meFamily)
{
case IStyleAccess::AUTO_STYLE_CHAR : nPropSetId = PROPERTY_MAP_CHAR_AUTO_STYLE; break;
case IStyleAccess::AUTO_STYLE_RUBY : nPropSetId = PROPERTY_MAP_RUBY_AUTO_STYLE; break;
case IStyleAccess::AUTO_STYLE_PARA : nPropSetId = PROPERTY_MAP_PARA_AUTO_STYLE; break;
- default:
- ;
+ default: ;
}
const SfxItemPropertySet* pPropSet = aSwMapProvider.GetPropertySet(nPropSetId);
const SfxItemPropertyMap *pMap = pPropSet->getPropertyMap();
- SfxItemSet& rSet = *pSet.get();
+ const bool bTakeCareOfDrawingLayerFillStyle(IStyleAccess::AUTO_STYLE_PARA == meFamily);
+
for(sal_Int32 i = 0; i < rPropertyNames.getLength(); i++)
{
- const String& rPropName = pNames[i];
+ const OUString& rPropName = pNames[i];
const SfxItemPropertySimpleEntry* pEntry = pMap->getByName(rPropName);
+
if(!pEntry)
+ {
throw beans::UnknownPropertyException(OUString ( RTL_CONSTASCII_USTRINGPARAM ( "Unknown property: " ) ) + rPropName, static_cast < cppu::OWeakObject * > ( this ) );
- pStates[i] = pPropSet->getPropertyState(*pEntry, rSet );
+ }
+
+ bool bDone(false);
+
+ if(bTakeCareOfDrawingLayerFillStyle)
+ {
+ //UUUU DrawingLayer PropertyStyle support
+ switch(pEntry->nWID)
+ {
+ case OWN_ATTR_FILLBMP_MODE:
+ {
+ if(SFX_ITEM_SET == mpSet->GetItemState(XATTR_FILLBMP_STRETCH, false)
+ || SFX_ITEM_SET == mpSet->GetItemState(XATTR_FILLBMP_TILE, false))
+ {
+ pStates[i] = beans::PropertyState_DIRECT_VALUE;
+ }
+ else
+ {
+ pStates[i] = beans::PropertyState_AMBIGUOUS_VALUE;
+ }
+
+ bDone = true;
+ break;
+ }
+ case RES_BACKGROUND:
+ {
+ if(SWUnoHelper::needToMapFillItemsToSvxBrushItemTypes(*mpSet))
+ {
+ pStates[i] = beans::PropertyState_DIRECT_VALUE;
+ bDone = true;
+ }
+
+ break;
+ }
+ }
+ }
+
+ if(!bDone)
+ {
+ pStates[i] = pPropSet->getPropertyState(*pEntry, *mpSet );
+ }
}
+
return aRet;
}
-/*-- 19.05.2006 11:24:12---------------------------------------------------
-
- -----------------------------------------------------------------------*/
void SwXAutoStyle::setAllPropertiesToDefault( )
- throw (uno::RuntimeException)
+throw (uno::RuntimeException)
{
}
-/*-- 19.05.2006 11:24:13---------------------------------------------------
-
- -----------------------------------------------------------------------*/
void SwXAutoStyle::setPropertiesToDefault(
- const uno::Sequence< ::rtl::OUString >& /*aPropertyNames*/ )
- throw (beans::UnknownPropertyException, uno::RuntimeException)
+ const uno::Sequence< ::rtl::OUString >& rPropertyNames )
+throw (beans::UnknownPropertyException, uno::RuntimeException)
{
-}
+ if( !mpSet.get() )
+ {
+ throw uno::RuntimeException();
+ }
-/*-- 19.05.2006 11:24:14---------------------------------------------------
+ const bool bTakeCareOfDrawingLayerFillStyle(IStyleAccess::AUTO_STYLE_PARA == meFamily);
+
+ if(!bTakeCareOfDrawingLayerFillStyle)
+ {
+ return;
+ }
+
+ //UUUU support DrawingLayer FillStyle slots from here on
+ vos::OGuard aGuard(Application::GetSolarMutex());
+ const OUString* pNames = rPropertyNames.getConstArray();
+ sal_Int8 nPropSetId = PROPERTY_MAP_CHAR_AUTO_STYLE;
+
+ switch(meFamily)
+ {
+ case IStyleAccess::AUTO_STYLE_CHAR : nPropSetId = PROPERTY_MAP_CHAR_AUTO_STYLE; break;
+ case IStyleAccess::AUTO_STYLE_RUBY : nPropSetId = PROPERTY_MAP_RUBY_AUTO_STYLE; break;
+ case IStyleAccess::AUTO_STYLE_PARA : nPropSetId = PROPERTY_MAP_PARA_AUTO_STYLE; break;
+ default: ;
+ }
+
+ const SfxItemPropertySet* pPropSet = aSwMapProvider.GetPropertySet(nPropSetId);
+ const SfxItemPropertyMap *pMap = pPropSet->getPropertyMap();
+
+ for(sal_Int32 i = 0; i < rPropertyNames.getLength(); i++)
+ {
+ const OUString& rPropName = pNames[i];
+ const SfxItemPropertySimpleEntry* pEntry = pMap->getByName(rPropName);
+
+ if(!pEntry)
+ {
+ throw beans::UnknownPropertyException(OUString ( RTL_CONSTASCII_USTRINGPARAM ( "Unknown property: " ) ) + rPropName, static_cast < cppu::OWeakObject * > ( this ) );
+ }
+
+ switch(pEntry->nWID)
+ {
+ case OWN_ATTR_FILLBMP_MODE:
+ {
+ mpSet->ClearItem(XATTR_FILLBMP_STRETCH);
+ mpSet->ClearItem(XATTR_FILLBMP_TILE);
+ }
+ }
+ }
+}
- -----------------------------------------------------------------------*/
uno::Sequence< uno::Any > SwXAutoStyle::getPropertyDefaults(
- const uno::Sequence< ::rtl::OUString >& /*aPropertyNames*/ )
- throw (beans::UnknownPropertyException, lang::WrappedTargetException,
- uno::RuntimeException)
+ const uno::Sequence< ::rtl::OUString >& /*aPropertyNames*/ )
+throw (beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException)
{
uno::Sequence< uno::Any > aRet(0);
+
return aRet;
}
-/*-- 19.05.2006 11:24:14---------------------------------------------------
-
- -----------------------------------------------------------------------*/
-uno::Sequence< beans::PropertyValue > SwXAutoStyle::getProperties() throw (uno::RuntimeException)
+uno::Sequence< beans::PropertyValue > SwXAutoStyle::getProperties()
+throw (uno::RuntimeException)
{
- if( !pSet.get() )
+ if( !mpSet.get() )
throw uno::RuntimeException();
vos::OGuard aGuard(Application::GetSolarMutex());
std::vector< beans::PropertyValue > aPropertyVector;
sal_Int8 nPropSetId = 0;
- switch(eFamily)
+ switch(meFamily)
{
case IStyleAccess::AUTO_STYLE_CHAR : nPropSetId = PROPERTY_MAP_CHAR_AUTO_STYLE; break;
case IStyleAccess::AUTO_STYLE_RUBY : nPropSetId = PROPERTY_MAP_RUBY_AUTO_STYLE; break;
@@ -4729,7 +5254,7 @@ uno::Sequence< beans::PropertyValue > SwXAutoStyle::getProperties() throw (uno::
// ++aIt;
// }
- SfxItemSet& rSet = *pSet.get();
+ SfxItemSet& rSet = *mpSet.get();
SfxItemIter aIter(rSet);
const SfxPoolItem* pItem = aIter.FirstItem();
@@ -4787,3 +5312,6 @@ uno::Sequence< beans::PropertyValue > SwXAutoStyle::getProperties() throw (uno::
return aRet;
}
+
+//////////////////////////////////////////////////////////////////////////////
+//eof
diff --git a/sw/source/core/unocore/unotext.cxx b/sw/source/core/unocore/unotext.cxx
index 2d2d1fd32852..38be49a908e9 100644
--- a/sw/source/core/unocore/unotext.cxx
+++ b/sw/source/core/unocore/unotext.cxx
@@ -1685,7 +1685,7 @@ throw (lang::IllegalArgumentException, uno::RuntimeException)
{
// todo: if the start/end is in a table then insert a paragraph
// before/after, move the start/end nodes, then convert and
- // remove the addtional paragraphs in the end
+ // remove the additional paragraphs in the end
if (pStartStartNode->GetStartNodeType() == SwTableBoxStartNode)
{
SwTableNode *const pSartTableNode(pStartStartNode->FindTableNode());
diff --git a/sw/source/core/view/vdraw.cxx b/sw/source/core/view/vdraw.cxx
index ac80cf40d4df..c3aecf8fcbeb 100644
--- a/sw/source/core/view/vdraw.cxx
+++ b/sw/source/core/view/vdraw.cxx
@@ -19,12 +19,9 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sw.hxx"
-
#include <svx/fmmodel.hxx>
#include <svx/svdpage.hxx>
#include <tools/shl.hxx>
@@ -34,15 +31,10 @@
#include <fmtanchr.hxx>
#include <frmfmt.hxx>
#include <svx/svdlegacy.hxx>
-
-/// OD 29.08.2002 #102450#
-/// include <svx/svdoutl.hxx>
#include <svx/svdoutl.hxx>
-
#ifdef DBG_UTIL
#include <svx/fmglob.hxx>
#endif
-
#include "fesh.hxx"
#include "pagefrm.hxx"
#include "rootfrm.hxx"
@@ -54,9 +46,8 @@
#include "dview.hxx"
#include "flyfrm.hxx"
#include <vcl/svapp.hxx>
-
#include <IDocumentDrawModelAccess.hxx>
-
+#include <drawdoc.hxx>
/*************************************************************************
|*
@@ -148,7 +139,7 @@ void SwViewImp::UnlockPaint()
|*
|*************************************************************************/
// OD 29.08.2002 #102450#
-// add 3rd paramter <const Color* pPageBackgrdColor> for setting this
+// add 3rd parameter <const Color* pPageBackgrdColor> for setting this
// color as the background color at the outliner of the draw view.
// OD 09.12.2002 #103045# - add 4th parameter for the horizontal text direction
// of the page in order to set the default horizontal text direction at the
diff --git a/sw/source/core/view/viewimp.cxx b/sw/source/core/view/viewimp.cxx
index 8e7dd6ecce69..0f01cea6d052 100644
--- a/sw/source/core/view/viewimp.cxx
+++ b/sw/source/core/view/viewimp.cxx
@@ -19,12 +19,9 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sw.hxx"
-
#include "crsrsh.hxx"
#include "rootfrm.hxx"
#include "pagefrm.hxx"
@@ -41,10 +38,7 @@
#include <swmodule.hxx>
#include <svx/svdpage.hxx>
#include <accmap.hxx>
-
-// OD 12.12.2002 #103492#
#include <pagepreviewlayout.hxx>
-
#include <comcore.hrc>
#include <svx/svdundo.hxx>
#include <IDocumentLayoutAccess.hxx>
@@ -52,6 +46,7 @@
#include <IDocumentDeviceAccess.hxx>
#include <IDocumentSettingAccess.hxx>
#include <svx/fmmodel.hxx>
+#include <drawdoc.hxx>
/*************************************************************************
|*
diff --git a/sw/source/core/view/viewsh.cxx b/sw/source/core/view/viewsh.cxx
index 4d7f95609d45..42560481d74b 100644
--- a/sw/source/core/view/viewsh.cxx
+++ b/sw/source/core/view/viewsh.cxx
@@ -72,6 +72,7 @@
#include <svx/sdrpaintwindow.hxx>
#include <svx/fmmodel.hxx>
#include <vcl/dibtools.hxx>
+#include <drawdoc.hxx>
sal_Bool ViewShell::bLstAct = sal_False;
ShellResource *ViewShell::pShellRes = 0;
@@ -852,7 +853,7 @@ void ViewShell::SetAddExtLeading( bool bNew )
{
SwWait aWait( *GetDoc()->GetDocShell(), true );
pIDSA->set(IDocumentSettingAccess::ADD_EXT_LEADING, bNew );
- SdrModel* pTmpDrawModel = getIDocumentDrawModelAccess()->GetDrawModel();
+ SwDrawModel* pTmpDrawModel = getIDocumentDrawModelAccess()->GetDrawModel();
if ( pTmpDrawModel )
pTmpDrawModel->SetAddExtLeading( bNew );
const sal_uInt8 nInv = INV_PRTAREA | INV_SIZE | INV_TABLE | INV_SECTION;
@@ -986,7 +987,7 @@ void ViewShell::Reformat()
void ViewShell::ChgNumberDigits()
{
- SdrModel* pTmpDrawModel = getIDocumentDrawModelAccess()->GetDrawModel();
+ SwDrawModel* pTmpDrawModel = getIDocumentDrawModelAccess()->GetDrawModel();
if ( pTmpDrawModel )
pTmpDrawModel->ReformatAllTextObjects();
Reformat();
diff --git a/sw/source/core/view/vnew.cxx b/sw/source/core/view/vnew.cxx
index 58547fc7b3f8..ae945c5fc374 100644
--- a/sw/source/core/view/vnew.cxx
+++ b/sw/source/core/view/vnew.cxx
@@ -199,7 +199,7 @@ ViewShell::ViewShell( SwDoc& rDocument, Window *pWindow,
RTL_LOGFILE_CONTEXT_AUTHOR( aLog, "SW", "JP93722", "ViewShell::SwViewShell" );
// OD 2004-06-01 #i26791# - in order to suppress event handling in
- // <SwDrawContact::Notify> during contruction of <ViewShell> instance
+ // <SwDrawContact::Changed> during construction of <ViewShell> instance
mbInConstructor = true;
bPaintInProgress = bViewLocked = bInEndAction = bFrameView =
@@ -278,7 +278,7 @@ ViewShell::ViewShell( ViewShell& rShell, Window *pWindow,
RTL_LOGFILE_CONTEXT_AUTHOR( aLog, "SW", "JP93722", "ViewShell::SwViewShell" );
// OD 2004-06-01 #i26791# - in order to suppress event handling in
- // <SwDrawContact::Notify> during contruction of <ViewShell> instance
+ // <SwDrawContact::Changed> during construction of <ViewShell> instance
mbInConstructor = true;
bPaintWorks = bEnableSmooth = sal_True;
diff --git a/sw/source/core/view/vprint.cxx b/sw/source/core/view/vprint.cxx
index 70843edf803f..b2b69b1e6e6b 100644
--- a/sw/source/core/view/vprint.cxx
+++ b/sw/source/core/view/vprint.cxx
@@ -190,14 +190,9 @@ void SwPaintQueue::Remove( ViewShell *pSh )
}
}
-/******************************************************************************
- * Methode : void SetSwVisArea( ViewShell *pSh, Point aPrtOffset, ...
- * Beschreibung:
- * Erstellt : OK 04.11.94 16:27
- * Aenderung :
- ******************************************************************************/
+// ******************************************************************************
-void SetSwVisArea( ViewShell *pSh, const SwRect &rRect, sal_Bool /*bPDFExport*/ )
+void SetSwVisArea( ViewShell *pSh, const SwRect &rRect /*, sal_Bool bPDFExport*/ )
{
ASSERT( !pSh->GetWin(), "Drucken mit Window?" );
pSh->aVisArea = rRect;
diff --git a/sw/source/filter/ascii/parasc.cxx b/sw/source/filter/ascii/parasc.cxx
index b5f7fc283b8d..1c506f186ec8 100644
--- a/sw/source/filter/ascii/parasc.cxx
+++ b/sw/source/filter/ascii/parasc.cxx
@@ -206,7 +206,7 @@ sal_uLong SwASCIIParser::CallParser()
{
// Using the pool defaults for the font causes significant
// trouble for the HTML filter, because it is not able
- // to export the pool defaults (or to be more precice:
+ // to export the pool defaults (or to be more precise:
// the HTML filter is not able to detect whether a pool
// default has changed or not. Even a comparison with the
// HTMLi template does not work, because the defaults are
diff --git a/sw/source/filter/basflt/fltini.cxx b/sw/source/filter/basflt/fltini.cxx
index c205002aa4f2..f20152ebc69f 100644
--- a/sw/source/filter/basflt/fltini.cxx
+++ b/sw/source/filter/basflt/fltini.cxx
@@ -575,7 +575,7 @@ void SwRelNumRuleSpaces::SetNumLSpace( SwTxtNode& rNd, const SwNumRule& rRule )
nParaLeft -= nLeft;
else
//#83154#, Don't think any of the older #80856# bugfix code is
- //relevent anymore.
+ //relevant anymore.
nParaLeft = rLR.GetTxtLeft()+rLR.GetTxtFirstLineOfst();
aLR.SetTxtLeft( nParaLeft );
}
diff --git a/sw/source/filter/html/htmlatr.cxx b/sw/source/filter/html/htmlatr.cxx
index 18ef2465cdc6..d53fd631aa92 100644
--- a/sw/source/filter/html/htmlatr.cxx
+++ b/sw/source/filter/html/htmlatr.cxx
@@ -2014,7 +2014,7 @@ void HTMLEndPosLst::Insert( const SfxPoolItem& rItem,
}
// the hint starts before the next script change and ends behind
- // it, so we can insert a hint upto the next script change and
+ // it, so we can insert a hint up to the next script change and
// continue with the rest of the hint.
if( bDependsOnAnyScript || nScript == aScriptLst[i] )
InsertNoScript( rItem, nPos, nChgPos, rFmtInfos, bParaAttrs );
diff --git a/sw/source/filter/html/htmldraw.cxx b/sw/source/filter/html/htmldraw.cxx
index 388d48ce863d..de2b622e5dee 100644
--- a/sw/source/filter/html/htmldraw.cxx
+++ b/sw/source/filter/html/htmldraw.cxx
@@ -59,6 +59,7 @@
#include <svx/svdlegacy.hxx>
#include <svx/fmmodel.hxx>
#include <svx/sdrobjectfactory.hxx>
+#include <drawdoc.hxx>
using namespace ::com::sun::star;
@@ -396,7 +397,7 @@ void SwHTMLParser::NewMarquee( HTMLTable *pCurTable )
// Ein DrawTxtobj anlegen
// --> OD 2005-08-08 #i52858# - method name changed
- SdrModel* pModel = pDoc->GetOrCreateDrawModel();
+ SwDrawModel* pModel = pDoc->GetOrCreateDrawModel();
// <--
SdrPage* pPg = pModel->GetPage( 0 );
pMarquee = SdrObjFactory::MakeNewObject( *pModel, SdrObjectCreationInfo(OBJ_TEXT, SdrInventor));
diff --git a/sw/source/filter/html/htmlgrin.cxx b/sw/source/filter/html/htmlgrin.cxx
index 74fe5b37ac8c..5ea1c18b39c7 100644
--- a/sw/source/filter/html/htmlgrin.cxx
+++ b/sw/source/filter/html/htmlgrin.cxx
@@ -1297,7 +1297,7 @@ sal_Bool SwHTMLParser::HasCurrentParaBookmarks( sal_Bool bIgnoreStack ) const
if( !bHasMarks )
{
- // second step: when we didnt find a bookmark, check if there is one set already
+ // second step: when we didn't find a bookmark, check if there is one set already
IDocumentMarkAccess* const pMarkAccess = pDoc->getIDocumentMarkAccess();
for(IDocumentMarkAccess::const_iterator_t ppMark = pMarkAccess->getAllMarksBegin();
ppMark != pMarkAccess->getAllMarksEnd();
diff --git a/sw/source/filter/html/wrthtml.cxx b/sw/source/filter/html/wrthtml.cxx
index 7ee3f08c5fa1..6292eb3948dd 100644
--- a/sw/source/filter/html/wrthtml.cxx
+++ b/sw/source/filter/html/wrthtml.cxx
@@ -604,7 +604,7 @@ void lcl_html_OutSectionStartTag( SwHTMLWriter& rHTMLWrt,
(((sOut += ' ') += OOO_STRING_SVTOOLS_HTML_O_cols) += '=')
+= ByteString::CreateFromInt32( pCol->GetNumCols() );
- // minumum gutter width
+ // minimum gutter width
sal_uInt16 nGutter = pCol->GetGutterWidth( sal_True );
if( nGutter!=USHRT_MAX )
{
@@ -678,7 +678,7 @@ static Writer& OutHTML_Section( Writer& rWrt, const SwSectionNode& rSectNd )
if( lcl_html_IsMultiColEnd( rHTMLWrt, nSectEndIdx-1 ) )
bEndTag = sal_False;
- //.is there a columned section arround this one?
+ //.is there a columned section around this one?
const SwStartNode *pSttNd = rSectNd.StartOfSectionNode();
if( pSttNd )
{
@@ -700,7 +700,7 @@ static Writer& OutHTML_Section( Writer& rWrt, const SwSectionNode& rSectNd )
}
// The surrounding section must be closed before the current one is
- // opended, except that it start immediatly before the current one or
+ // opended, except that it start immediately before the current one or
// another end immediately before the current one
if( pSurrCol && nSectSttIdx - pSurrSectNd->GetIndex() > 1 &&
!lcl_html_IsMultiColEnd( rHTMLWrt, nSectSttIdx-1 ) )
diff --git a/sw/source/filter/inc/msfilter.hxx b/sw/source/filter/inc/msfilter.hxx
index 007e77f72694..91687f9f9685 100644
--- a/sw/source/filter/inc/msfilter.hxx
+++ b/sw/source/filter/inc/msfilter.hxx
@@ -199,7 +199,7 @@ namespace sw
alternative name for one of them..
And it needs to report to the importer if the style being mapped to
- was already in existance, for the cut and paste/insert file mode we
+ was already in existence, for the cut and paste/insert file mode we
should not modify the returned style if it is already in use as it
is does not belong to us to change.
@@ -259,7 +259,7 @@ namespace sw
alternative name for one of them..
And it needs to report to the importer if the style being mapped to
- was already in existance, for the cut and paste/insert file mode we
+ was already in existence, for the cut and paste/insert file mode we
should not modify the returned style if it is already in use as it
is does not belong to us to change.
@@ -495,7 +495,7 @@ namespace sw
Word generally requires characters which share the same direction,
the same script, and occasionally (depending on the format) the
- same charset to be exported in independant chunks.
+ same charset to be exported in independent chunks.
So this function finds these ranges and returns a STL container
of CharRuns
@@ -512,7 +512,7 @@ namespace sw
RTF format, not necessary for a unicode aware format like WW8+
@return STL container of CharRuns which describe the shared
- direction, script and optionally script of the contigious sequences
+ direction, script and optionally script of the contiguous sequences
of characters
@author
diff --git a/sw/source/filter/inc/wwstyles.hxx b/sw/source/filter/inc/wwstyles.hxx
index 95f82db1d6f2..699c5a01a2fe 100644
--- a/sw/source/filter/inc/wwstyles.hxx
+++ b/sw/source/filter/inc/wwstyles.hxx
@@ -143,7 +143,7 @@ namespace ww
/** Find the WinWord sti index of an english style name.
- When importing a RTF document we would like to treat styles as similiar
+ When importing a RTF document we would like to treat styles as similar
to how word does as possible, to this end word will treat some styles
with special names as inbuilt styles, and some as user defined styles.
@@ -169,7 +169,7 @@ namespace ww
/** Find the WinWord sti index of an old <= Word2 stc (style code)
When importing a Word 2 document we would like to treat styles as
- similiar to how word 8 does as possible, to this end word will treat
+ similar to how word 8 does as possible, to this end word will treat
some styles with special codes as inbuilt styles, and some as user
defined styles.
diff --git a/sw/source/filter/rtf/rtffly.cxx b/sw/source/filter/rtf/rtffly.cxx
index 07530fc2f3ba..ff9840caac18 100644
--- a/sw/source/filter/rtf/rtffly.cxx
+++ b/sw/source/filter/rtf/rtffly.cxx
@@ -19,10 +19,9 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sw.hxx"
+
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil -*- */
#include <hintids.hxx>
#include <tools/list.hxx>
@@ -61,18 +60,14 @@
#include <deque>
#include <map>
#include <utility>
-// --> OD 2004-06-30 #i27767#
#include <fmtwrapinfluenceonobjpos.hxx>
-// <--
#include <editeng/brshitem.hxx>
#include <fmtfollowtextflow.hxx>
-// --> OD, FLR 2006-02-16 #131205#
#include "dcontact.hxx"
-// <--
+#include <drawdoc.hxx>
#include <svx/svdpage.hxx>
#include <svx/fmmodel.hxx>
-
using namespace ::com::sun::star;
#define ANCHOR(p) ((SwFmtAnchor*)p)
@@ -322,7 +317,7 @@ void SwRTFParser::SetFlysInDoc()
{
// Take care for table nodes
pNd = pNd->GetNodes()[ pNd->GetIndex() - 2 ]->GetTableNode();
- if( pNd ) // if the table starts imediately before aRg -> expand aRg
+ if( pNd ) // if the table starts immediately before aRg -> expand aRg
aRg.aStart = *pNd;
if( bMakeEmptySection )
@@ -407,7 +402,7 @@ void SwRTFParser::SetFlysInDoc()
// THIS >>>>>
// if the section only contains one Node and this has a
- // border or backgorund, then put it to the frame
+ // border or background, then put it to the frame
// Not in our own RTF-Format!
// <<<<< DOES NOT MAKE SENSE TO ME (flr)
// #102781#. Added support for transparent frames.
@@ -541,7 +536,7 @@ void SwRTFParser::SetFlysInDoc()
aFlyArr.Remove(0, aFlyArr.Count());
}
-// clips the text box to the min or max position if it is outside our min or max boundry
+// clips the text box to the min or max position if it is outside our min or max boundary
long SwRTFParser::GetSafePos(long nPos)
{
if(nPos > SHRT_MAX)
@@ -1281,8 +1276,6 @@ void SwRTFParser::InsPicture( const String& rGrfNm, const Graphic* pGrf,
if( pFlySave->nEndNd == rIdx )
pFlySave->nEndNd = rIdx.GetIndex() - 1;
}
-
- pGrfNd->onGraphicChanged();
}
}
else
diff --git a/sw/source/filter/rtf/swparrtf.cxx b/sw/source/filter/rtf/swparrtf.cxx
index 539626a74717..bbdf0de7b92e 100644
--- a/sw/source/filter/rtf/swparrtf.cxx
+++ b/sw/source/filter/rtf/swparrtf.cxx
@@ -19,15 +19,12 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sw.hxx"
+
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil -*- */
#include <hintids.hxx>
-
#include <stack>
-
#include <tools/errinf.hxx>
#include <tools/stream.hxx>
#include <svl/itemiter.hxx>
@@ -82,14 +79,11 @@
#include <statstr.hrc> // ResId fuer Statusleiste
#include <SwStyleNameMapper.hxx>
#include <tblsel.hxx> // SwSelBoxes
-
#include <docsh.hxx>
#include <fmtlsplt.hxx> // SwLayoutSplit
#include <editeng/keepitem.hxx>
#include <svx/svdopath.hxx>
#include <svx/svdorect.hxx>
-
-
#include <fmtsrnd.hxx>
#include <fmtfollowtextflow.hxx>
#include <svx/svdmodel.hxx>
@@ -101,21 +95,18 @@
#include <svx/svdoutl.hxx>
#include <editeng/outlobj.hxx>
#include <editeng/paperinf.hxx>
-
#include <tools/stream.hxx>
#include <basegfx/polygon/b2dpolygon.hxx>
#include <basegfx/polygon/b2dpolypolygon.hxx>
#include <basegfx/range/b2drange.hxx>
#include <vcl/salbtype.hxx> // FRound
-
#include <com/sun/star/document/XDocumentPropertiesSupplier.hpp>
#include <svx/svdlegacy.hxx>
#include <svx/fmmodel.hxx>
-
+#include <drawdoc.hxx>
using namespace ::com::sun::star;
-
// einige Hilfs-Funktionen
// char
inline const SvxFontHeightItem& GetSize(const SfxItemSet& rSet,sal_Bool bInP=sal_True)
@@ -1034,7 +1025,7 @@ void rtfSections::InsertSegments(bool bNewDoc)
aSectPaM.GetCntntNode(), 0);
SwSectionFmt *pRet = InsertSection(aSectPaM, *aIter);
- //The last section if continous is always unbalanced
+ //The last section if continuous is always unbalanced
if (aNext == aEnd && pRet)
pRet->SetFmtAttr(SwFmtNoBalancedColumns(true));
}
@@ -1334,7 +1325,7 @@ void SwRTFParser::InsertShpObject(SdrObject* pStroke, int _nZOrder)
aFlySet.Put(SvxOpaqueItem(RES_OPAQUE,false));
pDoc->GetOrCreateDrawModel();
- SdrModel* pDrawModel = pDoc->GetDrawModel();
+ SwDrawModel* pDrawModel = pDoc->GetDrawModel();
SdrPage* pDrawPg = pDrawModel->GetPage(0);
pDrawPg->InsertObjectToSdrObjList(*pStroke);
pDrawPg->SetNavigationPosition(pStroke->GetNavigationPosition(), _nZOrder);
@@ -3930,11 +3921,10 @@ SwTxtFmtColl* SwRTFParser::MakeColl(const String& rName, sal_uInt16 nPos,
if( !nPos )
{
pColl = pDoc->GetTxtCollFromPool( RES_POOLCOLL_STANDARD, false );
- //pColl->SetOutlineLevel( nOutlineLevel ); //#outline level,removed by zhaojianwei
- if(nOutlineLevel < MAXLEVEL ) //->add by zhaojianwei
+ if ( nOutlineLevel < MAXLEVEL )
pColl->AssignToListLevelOfOutlineStyle( nOutlineLevel );
else
- pColl->DeleteAssignmentToListLevelOfOutlineStyle(); //<-end,zhaojianwei
+ pColl->DeleteAssignmentToListLevelOfOutlineStyle();
return pColl;
}
diff --git a/sw/source/filter/ww8/docxattributeoutput.cxx b/sw/source/filter/ww8/docxattributeoutput.cxx
index 5a1a80b76f92..a31b1459faef 100644
--- a/sw/source/filter/ww8/docxattributeoutput.cxx
+++ b/sw/source/filter/ww8/docxattributeoutput.cxx
@@ -1149,7 +1149,7 @@ void DocxAttributeOutput::TableCellProperties( ww8::WW8TableNodeInfoInner::Point
TableBackgrounds( pTableTextNodeInfoInner );
- // Cell prefered width
+ // Cell preferred width
SwTwips nWidth = GetGridCols( pTableTextNodeInfoInner )[ pTableTextNodeInfoInner->getCell() ];
m_pSerializer->singleElementNS( XML_w, XML_tcW,
FSNS( XML_w, XML_w ), OString::valueOf( sal_Int32( nWidth ) ).getStr( ),
@@ -1293,7 +1293,7 @@ void DocxAttributeOutput::TableDefinition( ww8::WW8TableNodeInfoInner::Pointer_t
// Create the SwWriteTable instance to use col spans (and maybe other infos)
GetTablePageSize( pTableTextNodeInfoInner, nPageSize, bRelBoxSize );
- // Output the table prefered width
+ // Output the table preferred width
if ( nPageSize != 0 )
m_pSerializer->singleElementNS( XML_w, XML_tblW,
FSNS( XML_w, XML_w ), OString::valueOf( sal_Int32( nPageSize ) ).getStr( ),
@@ -1696,7 +1696,7 @@ void DocxAttributeOutput::OutputFlyFrame_Impl( const sw::Frame &rFrame, const Po
bool bSwapInPage = false;
if ( !pSdrObj->GetPage() )
{
- if ( SdrModel* pModel = m_rExport.pDoc->GetDrawModel() )
+ if ( SwDrawModel* pModel = m_rExport.pDoc->GetDrawModel() )
{
if ( SdrPage *pPage = pModel->GetPage( 0 ) )
{
diff --git a/sw/source/filter/ww8/dump/msvbasic.cxx b/sw/source/filter/ww8/dump/msvbasic.cxx
index a4167beb9dc5..20f7462c3e9e 100644
--- a/sw/source/filter/ww8/dump/msvbasic.cxx
+++ b/sw/source/filter/ww8/dump/msvbasic.cxx
@@ -204,7 +204,7 @@ int VBA_Impl::ReadVBAProject(const SvStorageRef &rxVBAStorage)
//most begin with */G , and sometimes with
//*/C. Those with G always have a trailer of 12 bytes, those
//with C come in pairs, the first with no trailer, and the
- //second with one of 12 bytes. The following code attemts
+ //second with one of 12 bytes. The following code attempts
//to read these strings and ends when it reaches a sequence of
//bytes which fails a test to be a valid string. So this
//while loop here is the particular piece of code which is
diff --git a/sw/source/filter/ww8/dump/ww8scan.cxx b/sw/source/filter/ww8/dump/ww8scan.cxx
index f8370983fc77..72716d4b2e07 100644
--- a/sw/source/filter/ww8/dump/ww8scan.cxx
+++ b/sw/source/filter/ww8/dump/ww8scan.cxx
@@ -4554,7 +4554,7 @@ void WW8PLCFMan::AdvSprm(short nIdx, bool bStart)
settings its end to the current start, then store the starting
position of the current range to clipstart. The pPcd sprms
will end as normal (albeit earlier than originally expected),
- and the existance of a clipstart will force the pPcd iterater
+ and the existence of a clipstart will force the pPcd iterater
to reread the current set of sprms instead of advancing to its
next set. Then the clipstart will be set as the starting
position which will force them to be applied directly after
@@ -4586,7 +4586,7 @@ void WW8PLCFMan::AdvNoSprm(short nIdx, bool bStart)
{
/*
For the case of a piece table we slave the piece table attribute iterator
- to the piece table and access it through that only. They are two seperate
+ to the piece table and access it through that only. They are two separate
structures, but act together as one logical one. The attributes only go
to the next entry when the piece changes
*/
@@ -5793,7 +5793,7 @@ WW8Fonts::WW8Fonts( SvStream& rSt, WW8Fib& rFib )
break;
nMax++;
nLeft -= nNextSiz;
- if( nLeft < 1 ) // can we read the given ammount of bytes ?
+ if( nLeft < 1 ) // can we read the given amount of bytes ?
break;
// increase p by nNextSiz Bytes
p = (WW8_FFN *)( ( (sal_uInt8*)p ) + nNextSiz );
@@ -5922,9 +5922,9 @@ WW8PLCF_HdFt::WW8PLCF_HdFt( SvStream* pSt, WW8Fib& rFib, WW8Dop& rDop )
footnote *and endnote!!* seperator,continuation seperator, and
continuation notice entry, the documentation does not mention the
endnote seperators, the documentation also gets the index numbers
- backwards when specifiying which bits to test. The bottom six bits
+ backwards when specifying which bits to test. The bottom six bits
of this value must be tested and skipped over. Each section's
- grpfIhdt is then tested for the existence of the appropiate headers
+ grpfIhdt is then tested for the existence of the appropriate headers
and footers, at the end of each section the nIdxOffset must be updated
to point to the beginning of the next section's group of headers and
footers in this PLCF, UpdateIndex does that task.
@@ -6574,7 +6574,7 @@ sal_uInt16 wwSprmParser::GetSprmTailLen(sal_uInt16 nId, const sal_uInt8* pSprm)
nL = SVBT16ToShort( &pSprm[1 + mnDelta] ) + aSprm.nLen - 1;
break;
default:
- ASSERT(!this, "Unknown sprm varient");
+ ASSERT(!this, "Unknown sprm variant");
break;
}
break;
diff --git a/sw/source/filter/ww8/dump/ww8scan.hxx b/sw/source/filter/ww8/dump/ww8scan.hxx
index a7261c1aeedb..6c1b0ec5de92 100644
--- a/sw/source/filter/ww8/dump/ww8scan.hxx
+++ b/sw/source/filter/ww8/dump/ww8scan.hxx
@@ -1314,15 +1314,15 @@ public:
sal_uInt16 fWriteReservation : 1;
sal_uInt16 fLockRev : 1; // when 1, the current revision marking state is locked
sal_uInt16 fEmbedFonts : 1; // when 1, document contains embedded True Type fonts
- // compatability options
+ // compatibility options
sal_uInt16 copts_fNoTabForInd : 1; // when 1, donïżœt add automatic tab stops for hanging indent
sal_uInt16 copts_fNoSpaceRaiseLower : 1; // when 1, donïżœt add extra space for raised or lowered characters
- sal_uInt16 copts_fSupressSpbfAfterPgBrk : 1; // when 1, supress the paragraph Space Before and Space After options after a page break
+ sal_uInt16 copts_fSupressSpbfAfterPgBrk : 1; // when 1, suppress the paragraph Space Before and Space After options after a page break
sal_uInt16 copts_fWrapTrailSpaces : 1; // when 1, wrap trailing spaces at the end of a line to the next line
sal_uInt16 copts_fMapPrintTextColor : 1; // when 1, print colors as black on non-color printers
sal_uInt16 copts_fNoColumnBalance : 1; // when 1, donïżœt balance columns for Continuous Section starts
sal_uInt16 copts_fConvMailMergeEsc : 1;
- sal_uInt16 copts_fSupressTopSpacing : 1; // when 1, supress extra line spacing at top of page
+ sal_uInt16 copts_fSupressTopSpacing : 1; // when 1, suppress extra line spacing at top of page
sal_uInt16 copts_fOrigWordTableRules : 1; // when 1, combine table borders like Word 5.x for the Macintosh
sal_uInt16 copts_fTransparentMetafiles : 1; // when 1, donïżœt blank area between metafile pictures
sal_uInt16 copts_fShowBreaksInFrames : 1; // when 1, show hard page or column breaks in frames
@@ -1372,7 +1372,7 @@ public:
/*
bei nFib >= 103 gehts weiter:
*/
- sal_uInt32 fNoTabForInd :1; // see above in compatability options
+ sal_uInt32 fNoTabForInd :1; // see above in compatibility options
sal_uInt32 fNoSpaceRaiseLower :1; // see above
sal_uInt32 fSupressSpbfAfterPageBreak :1; // see above
sal_uInt32 fWrapTrailSpaces :1; // see above
diff --git a/sw/source/filter/ww8/dump/ww8struc.hxx b/sw/source/filter/ww8/dump/ww8struc.hxx
index 06bf9e1dc8dc..25082ef9875c 100644
--- a/sw/source/filter/ww8/dump/ww8struc.hxx
+++ b/sw/source/filter/ww8/dump/ww8struc.hxx
@@ -776,7 +776,7 @@ eigentlich muessten wir das jetzt in etwa *so* praezisieren:
};
*/
-// AnnoTation Refernce Descriptor (ATRD)
+// AnnoTation References Descriptor (ATRD)
struct WW8_ATRD // fuer die 8-Version
{
SVBT16 xstUsrInitl[ 10 ]; // pascal-style String holding initials
diff --git a/sw/source/filter/ww8/needed_cast.hxx b/sw/source/filter/ww8/needed_cast.hxx
index 90c7d77cebf0..5d16e4d4d532 100644
--- a/sw/source/filter/ww8/needed_cast.hxx
+++ b/sw/source/filter/ww8/needed_cast.hxx
@@ -44,7 +44,7 @@ namespace ww
/*
needed_cast is the same as static_cast except that there will be a compile
time assert when NDEBUG is not defined and the in and out types are the
- same. i.e. needed_cast catches unneccessary casts
+ same. i.e. needed_cast catches unnecessary casts
*/
template<typename Ret, typename Param> Ret needed_cast(Param in)
{
diff --git a/sw/source/filter/ww8/rtfattributeoutput.cxx b/sw/source/filter/ww8/rtfattributeoutput.cxx
index 9f4dd360387c..05f9e05b7d7f 100644
--- a/sw/source/filter/ww8/rtfattributeoutput.cxx
+++ b/sw/source/filter/ww8/rtfattributeoutput.cxx
@@ -19,7 +19,8 @@
*
*************************************************************/
-
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_sw.hxx"
#include "rtfattributeoutput.hxx"
#include "rtfexport.hxx"
@@ -34,14 +35,10 @@
#include "fmtruby.hxx"
#include "charfmt.hxx"
#include "breakit.hxx"
-
#include <i18npool/mslangid.hxx>
-
#include <hintids.hxx>
-
#include <svl/poolitem.hxx>
#include <svtools/rtfkeywd.hxx>
-
#include <editeng/fontitem.hxx>
#include <editeng/tstpitem.hxx>
#include <editeng/adjitem.hxx>
@@ -86,7 +83,6 @@
#include <svx/fmglob.hxx>
#include <svx/svdouno.hxx>
#include <filter/msfilter/msoleexp.hxx>
-
#include <docufld.hxx>
#include <flddropdown.hxx>
#include <format.hxx>
@@ -116,23 +112,19 @@
#include <ndole.hxx>
#include <lineinfo.hxx>
#include <rtf.hxx>
-
#include <rtl/strbuf.hxx>
#include <rtl/ustrbuf.hxx>
#include <rtl/ustring.hxx>
-
#include <tools/color.hxx>
-
#include <vcl/cvtgrf.hxx>
-
#include <com/sun/star/i18n/ScriptType.hdl>
#include <com/sun/star/drawing/XShape.hpp>
#include <com/sun/star/frame/XModel.hpp>
#include <com/sun/star/chart2/XChartDocument.hpp>
#include <com/sun/star/beans/XPropertySet.hpp>
#include <com/sun/star/container/XNamed.hpp>
-
#include <osl/diagnose.h>
+#include <drawdoc.hxx>
using rtl::OString;
using rtl::OStringBuffer;
@@ -418,7 +410,7 @@ void RtfAttributeOutput::RTLAndCJKState( bool bIsRTL, sal_uInt16 nScript )
OSL_TRACE("%s", OSL_THIS_FUNC);
/*
You would have thought that
- m_rExport.Strm() << (bIsRTL ? OOO_STRING_SVTOOLS_RTF_RTLCH : OOO_STRING_SVTOOLS_RTF_LTRCH); would be sufficent here ,
+ m_rExport.Strm() << (bIsRTL ? OOO_STRING_SVTOOLS_RTF_RTLCH : OOO_STRING_SVTOOLS_RTF_LTRCH); would be sufficient here ,
but looks like word needs to see the other directional token to be
satisified that all is kosher, otherwise it seems in ver 2003 to go and
semi-randomlyly stick strike through about the place. Perhaps
@@ -1730,14 +1722,14 @@ void RtfAttributeOutput::OutputFlyFrame_Impl( const sw::Frame& rFrame, const Poi
if ( pSdrObj )
{
//bool bSwapInPage = false;
- //if ( !pSdrObj->getSdrPageFromSdrObject() )
+ //if ( !pSdrObj->GetPage() )
//{
- // if ( SdrModel* pModel = m_rExport.pDoc->GetDrawModel() )
+ // if ( SwDrawModel* pModel = m_rExport.pDoc->GetDrawModel() )
// {
// if ( SdrPage *pPage = pModel->GetPage( 0 ) )
// {
// bSwapInPage = true;
- // //const_cast< SdrObject* >( pSdrObj )->SetPage( pPage );
+ // const_cast< SdrObject* >( pSdrObj )->SetPage( pPage );
// }
// }
//}
diff --git a/sw/source/filter/ww8/rtfsdrexport.cxx b/sw/source/filter/ww8/rtfsdrexport.cxx
index e4c0f2ec3643..91fe7010af5c 100644
--- a/sw/source/filter/ww8/rtfsdrexport.cxx
+++ b/sw/source/filter/ww8/rtfsdrexport.cxx
@@ -486,7 +486,7 @@ sal_Int32 RtfSdrExport::StartShape()
/*
#i13885#
When the object is actively being edited, that text is not set into
- the objects normal text object, but lives in a seperate object.
+ the objects normal text object, but lives in a separate object.
*/
if (pTxtObj->IsTextEditActive())
{
diff --git a/sw/source/filter/ww8/staticassert.hxx b/sw/source/filter/ww8/staticassert.hxx
index f5ed3fc0d466..ae793111be01 100644
--- a/sw/source/filter/ww8/staticassert.hxx
+++ b/sw/source/filter/ww8/staticassert.hxx
@@ -45,7 +45,7 @@ namespace ww
}
/*
- Similiar to assert, StaticAssert is only in operation when NDEBUG is not
+ Similar to assert, StaticAssert is only in operation when NDEBUG is not
defined. It will test its first argument at compile time and on failure
report the error message of the second argument, which must be a valid c++
classname. i.e. no spaces, punctuation or reserved keywords.
diff --git a/sw/source/filter/ww8/writerhelper.hxx b/sw/source/filter/ww8/writerhelper.hxx
index f96567ae768c..aa10ef059e9e 100644
--- a/sw/source/filter/ww8/writerhelper.hxx
+++ b/sw/source/filter/ww8/writerhelper.hxx
@@ -636,7 +636,7 @@ namespace sw
e.g. Page Anchored elements will not be. For the winword export we
need them to have something to be anchored to. So this method
returns all the floating elements in a document as a STL container
- of sw::Frames which are guaranteed to have an appropiate anchor.
+ of sw::Frames which are guaranteed to have an appropriate anchor.
@param rDoc
The SwDoc document to get the styles from
@@ -786,7 +786,7 @@ namespace sw
Word has the simple concept of a drawing object either in the
foreground and in the background. We have an additional complexity
- that form components live in a seperate layer, which seems
+ that form components live in a separate layer, which seems
unnecessarily complicated. So in the winword filter we set the
object's layer through this class with either SendObjectToHell for
the bottom layer and SendObjectToHeaven for the top and we don't
diff --git a/sw/source/filter/ww8/writerwordglue.cxx b/sw/source/filter/ww8/writerwordglue.cxx
index 3b34697ce3e1..0f04d9c761ba 100644
--- a/sw/source/filter/ww8/writerwordglue.cxx
+++ b/sw/source/filter/ww8/writerwordglue.cxx
@@ -67,7 +67,7 @@ namespace myImplHelpers
/*
#98506#
The normal case for reexporting word docs is to have dynamic spacing,
- as this is word's only setting, and the reason for the existance of the
+ as this is word's only setting, and the reason for the existence of the
dynamic spacing features. If we have dynamic spacing active then we can
add its spacing to the value height of the h/f and get the wanted total
size for word.
@@ -116,7 +116,7 @@ namespace myImplHelpers
/*
SwTxtFmtColl and SwCharFmt are quite distinct types and how they are
gotten is also distinct, but the algorithm to match word's eqivalents into
- them is the same, so we put the different stuff into two seperate helper
+ them is the same, so we put the different stuff into two separate helper
implementations and a core template that uses the helpers that uses the
same algorithm to do the work. We'll make the helpers specializations of a
non existing template so I can let the compiler figure out the right one
@@ -615,7 +615,7 @@ namespace sw
if (bSplitOnCharSet)
{
- //Split unicode text into plausable 8bit ranges for export to
+ //Split unicode text into plausible 8bit ranges for export to
//older non unicode aware format
xub_StrLen nLen = rTxt.Len();
xub_StrLen nPos = 0;
diff --git a/sw/source/filter/ww8/wrtw8esh.cxx b/sw/source/filter/ww8/wrtw8esh.cxx
index 47c21884c4da..814b20a367f9 100644
--- a/sw/source/filter/ww8/wrtw8esh.cxx
+++ b/sw/source/filter/ww8/wrtw8esh.cxx
@@ -19,16 +19,12 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sw.hxx"
+
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil -*- */
#include <com/sun/star/embed/Aspects.hpp>
-
-
#include <hintids.hxx>
-
#define _SVSTDARR_ULONGSSORT
#define _SVSTDARR_USHORTS
#include <svl/svstdarr.hxx>
@@ -56,27 +52,21 @@
#include <editeng/editeng.hxx>
#ifndef _SVX_FLDITEM_HXX
//miserable hack to get around #98519#
-
#include <editeng/flditem.hxx>
#endif
-
#include <comphelper/seqstream.hxx>
#include <unotools/ucbstreamhelper.hxx>
#include <svtools/filter.hxx>
#include <svx/fmglob.hxx>
#include <svx/svdouno.hxx>
#include <svx/unoapi.hxx>
-
-// #i71538#
#include <svx/svdview.hxx>
#include <fmtcnct.hxx>
#include <fmtanchr.hxx>
#include <fmtsrnd.hxx>
#include <fmtornt.hxx>
#include <fmtfsize.hxx>
-// --> OD 2005-01-06 #i30669#
#include <fmtfollowtextflow.hxx>
-// <--
#include <dcontact.hxx>
#include <frmfmt.hxx>
#include <fmtcntnt.hxx>
@@ -98,9 +88,7 @@
#include "writerwordglue.hxx"
#include "wrtww8.hxx"
#include "escher.hxx"
-// --> OD 2007-07-24 #148096#
#include <ndtxt.hxx>
-// <--
#include "WW8FFData.hxx"
#include <svx/svdlegacy.hxx>
#include <svx/fmmodel.hxx>
@@ -112,6 +100,7 @@
#include "sfx2/sfxsids.hrc"
#include <svl/urihelper.hxx>
#include <unotools/saveopt.hxx>
+#include <drawdoc.hxx>
using namespace com::sun::star;
using namespace sw::util;
@@ -867,7 +856,7 @@ void PlcDrawObj::WritePlc( WW8Export& rWrt ) const
SwTwips nLeft = aRect.Left() + nThick;
SwTwips nRight = aRect.Right() - nThick;
- //Nasty swap for bidi if neccessary
+ //Nasty swap for bidi if necessary
rWrt.MiserableRTLFrmFmtHack(nLeft, nRight, rFrmFmt);
//xaLeft/yaTop/xaRight/yaBottom - rel. to anchor
@@ -1070,7 +1059,7 @@ sal_uInt32 WW8Export::GetSdrOrdNum( const SwFrmFmt& rFmt ) const
SwFrmFmt* pFmt = (SwFrmFmt*)&rFmt;
nOrdNum = pDoc->GetSpzFrmFmts()->GetPos( pFmt );
- const SdrModel* pModel = pDoc->GetDrawModel();
+ const SwDrawModel* pModel = pDoc->GetDrawModel();
if( pModel )
nOrdNum += pModel->GetPage( 0 )->GetObjCount();
}
@@ -1421,7 +1410,7 @@ void WW8Export::WriteSdrTextObj(const SdrObject& rObj, sal_uInt8 nTyp)
/*
#i13885#
When the object is actively being edited, that text is not set into
- the objects normal text object, but lives in a seperate object.
+ the objects normal text object, but lives in a separate object.
*/
if (pTxtObj->IsTextEditActive())
{
@@ -2260,7 +2249,7 @@ sal_Int32 SwEscherEx::WriteFlyFrameAttr(const SwFrmFmt& rFmt, MSO_SPT eShapeType
void SwBasicEscherEx::Init()
{
MapUnit eMap = MAP_TWIP;
- if (SdrModel *pModel = rWrt.pDoc->GetDrawModel())
+ if (SwDrawModel* pModel = rWrt.pDoc->GetDrawModel())
{
// PPT arbeitet nur mit Einheiten zu 576DPI
// WW hingegen verwendet twips, dh. 1440DPI.
@@ -2383,7 +2372,7 @@ SwEscherEx::SwEscherEx(SvStream* pStrm, WW8Export& rWW8Wrt)
bool bSwapInPage = false;
if (!pSdrObj->getSdrPageFromSdrObject())
{
- if (SdrModel* pModel = rWrt.pDoc->GetDrawModel())
+ if (SwDrawModel* pModel = rWrt.pDoc->GetDrawModel())
{
if (SdrPage *pPage = pModel->GetPage(0))
{
diff --git a/sw/source/filter/ww8/wrtw8nds.cxx b/sw/source/filter/ww8/wrtw8nds.cxx
index 280327310a0f..3d7fb2593911 100644
--- a/sw/source/filter/ww8/wrtw8nds.cxx
+++ b/sw/source/filter/ww8/wrtw8nds.cxx
@@ -525,7 +525,7 @@ void WW8SwAttrIter::OutAttr( xub_StrLen nSwPos )
}
/*
- For #i24291# we need to explictly remove any properties from the
+ For #i24291# we need to explicitly remove any properties from the
aExportSet which a SwCharFmt would override, we can't rely on word doing
this for us like writer does
*/
@@ -1678,10 +1678,15 @@ bool MSWordExportBase::GetBookmarks(
IDocumentMarkAccess* const pMarkAccess = pDoc->getIDocumentMarkAccess();
sal_uLong nNd = rNd.GetIndex( );
- const sal_Int32 nMarks = pMarkAccess->getCommonMarksCount();
+ const sal_Int32 nMarks = pMarkAccess->getAllMarksCount();
for ( sal_Int32 i = 0; i < nMarks; i++ )
{
- IMark* pMark = ( pMarkAccess->getCommonMarksBegin() + i )->get();
+ IMark* pMark = ( pMarkAccess->getAllMarksBegin() + i )->get();
+
+ if ( IDocumentMarkAccess::GetType( *(pMark) ) == IDocumentMarkAccess::ANNOTATIONMARK )
+ {
+ continue;
+ }
// Only keep the bookmarks starting or ending in this node
if ( pMark->GetMarkStart().nNode == nNd ||
diff --git a/sw/source/filter/ww8/wrtw8sty.cxx b/sw/source/filter/ww8/wrtw8sty.cxx
index 7e2febdd18a1..7e1faa2a263b 100644
--- a/sw/source/filter/ww8/wrtw8sty.cxx
+++ b/sw/source/filter/ww8/wrtw8sty.cxx
@@ -402,7 +402,7 @@ void MSWordStyles::SetStyleDefaults( const SwFmt& rFmt, bool bPap )
{
//If we are a character property then see if it is one of the
//western/asian ones that must be collapsed together for export to
- //word. If so default to the western varient.
+ //word. If so default to the western variant.
if ( bPap || m_rExport.CollapseScriptsforWordOk(
i18n::ScriptType::LATIN, n) )
{
@@ -1582,7 +1582,7 @@ void MSWordExportBase::SectionProperties( const WW8_SepInfo& rSepInfo, WW8_PdAtt
AttrOutput().OutputStyleItemSet( aSet, true, bOutPgDscSet );
// <--
- //Cannot export as normal page framedir, as continous sections
+ //Cannot export as normal page framedir, as continuous sections
//cannot contain any grid settings like proper sections
AttrOutput().SectionBiDi( FRMDIR_HORI_RIGHT_TOP == TrueFrameDirection( *rSepInfo.pSectionFmt ) );
diff --git a/sw/source/filter/ww8/wrtww8.cxx b/sw/source/filter/ww8/wrtww8.cxx
index 1946c1924481..5ce03c9d2ee2 100644
--- a/sw/source/filter/ww8/wrtww8.cxx
+++ b/sw/source/filter/ww8/wrtww8.cxx
@@ -19,31 +19,23 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sw.hxx"
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil -*- */
#include <iostream>
-
#include <com/sun/star/embed/ElementModes.hpp>
#include <com/sun/star/embed/XStorage.hpp>
#include <unotools/ucbstreamhelper.hxx>
-
#include <algorithm>
-
#include <map>
#include <set>
-
#include <hintids.hxx>
#include <string.h> // memcpy()
#include <osl/endian.h>
#include <docsh.hxx>
-
#define _SVSTDARR_BOOLS
#include <svl/svstdarr.hxx>
-
#include <unotools/fltrcfg.hxx>
#include <vcl/salbtype.hxx>
#include <sot/storage.hxx>
@@ -97,19 +89,14 @@
#include <comphelper/extract.hxx>
#include <comphelper/stlunosequence.hxx>
#include <writerfilter/doctok/sprmids.hxx>
-
#include "writerhelper.hxx"
#include "writerwordglue.hxx"
#include "ww8attributeoutput.hxx"
-
#include <IDocumentMarkAccess.hxx>
#include <xmloff/odffields.hxx>
-
#include <com/sun/star/document/XDocumentPropertiesSupplier.hpp>
#include <com/sun/star/document/XDocumentProperties.hpp>
-
#include "dbgoutsw.hxx"
-
#include <sfx2/docfile.hxx>
#include <sfx2/request.hxx>
#include <sfx2/frame.hxx>
@@ -123,9 +110,8 @@
#include <editeng/charrotateitem.hxx>
#include "WW8FibData.hxx"
#include "numrule.hxx"
-
#include <boost/scoped_ptr.hpp>
-
+#include <drawdoc.hxx>
using namespace sw::util;
using namespace sw::types;
@@ -349,7 +335,7 @@ static void WriteDop( WW8Export& rWrt )
{
WW8Dop& rDop = *rWrt.pDop;
- // i#78951#, store the value of unknown compatability options
+ // i#78951#, store the value of unknown compatibility options
rDop.SetCompatabilityOptions( rWrt.pDoc->Getn32DummyCompatabilityOptions1());
rDop.SetCompatabilityOptions2( rWrt.pDoc->Getn32DummyCompatabilityOptions2());
@@ -2868,7 +2854,7 @@ void WW8Export::WriteFkpPlcUsw()
if (pEscher || pDoc->ContainsMSVBasic())
{
/*
- #82587# Everytime MS 2000 creates an escher stream there is always
+ #82587# Every time MS 2000 creates an escher stream there is always
an ObjectPool dir (even if empty). It turns out that if a copy of
MS 2000 is used to open a document that contains escher graphics
exported from StarOffice without this empty dir then *if* that
@@ -2884,7 +2870,7 @@ void WW8Export::WriteFkpPlcUsw()
some magic. cmc
*/
/*
- #10570# Similiarly having msvbasic storage seems to also trigger
+ #10570# Similarly having msvbasic storage seems to also trigger
creating this stream
*/
GetWriter().GetStorage().OpenSotStorage(CREATE_CONST_ASC(SL::aObjectPool),
diff --git a/sw/source/filter/ww8/wrtww8.hxx b/sw/source/filter/ww8/wrtww8.hxx
index a62146fc17a3..a545e7cf0e75 100644
--- a/sw/source/filter/ww8/wrtww8.hxx
+++ b/sw/source/filter/ww8/wrtww8.hxx
@@ -1106,7 +1106,7 @@ public:
SwTwips CurrentPageWidth(SwTwips &rLeft, SwTwips &rRight) const;
- /// Nasty swap for bidi if neccessary
+ /// Nasty swap for bidi if necessary
bool MiserableRTLFrmFmtHack(SwTwips &rLeft, SwTwips &rRight,
const sw::Frame &rFrmFmt);
diff --git a/sw/source/filter/ww8/wrtww8gr.cxx b/sw/source/filter/ww8/wrtww8gr.cxx
index d33cf4cc2932..5063a768e0b8 100644
--- a/sw/source/filter/ww8/wrtww8gr.cxx
+++ b/sw/source/filter/ww8/wrtww8gr.cxx
@@ -19,29 +19,21 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sw.hxx"
-/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil -*- */
-
#if OSL_DEBUG_LEVEL > 0
# include <cstdio>
#endif
-
#include <com/sun/star/embed/XEmbedPersist.hpp>
#include <com/sun/star/embed/Aspects.hpp>
#include <rtl/math.hxx>
#include <svtools/filter.hxx>
#include <svl/itemiter.hxx>
#include "svl/urihelper.hxx"
-
#include <svtools/embedhlp.hxx>
-
#include <vcl/virdev.hxx>
#include <vcl/svapp.hxx>
-
#include <hintids.hxx>
#include <editeng/boxitem.hxx>
#include <editeng/shaditem.hxx>
@@ -51,7 +43,6 @@
#include <editeng/ulspitem.hxx>
#include <editeng/fhgtitem.hxx>
#include <svx/svdoole2.hxx>
-
#include <unotools/ucbstreamhelper.hxx>
#include <fmtanchr.hxx>
#include <ndgrf.hxx>
@@ -61,10 +52,8 @@
#include <ndtxt.hxx>
#include <fmtfsize.hxx>
#include <fmtornt.hxx>
-
#include <writerfilter/doctok/sprmids.hxx>
#include <svx/fmmodel.hxx>
-
#include <doc.hxx>
#include "writerhelper.hxx"
#include "writerwordglue.hxx"
@@ -72,14 +61,12 @@
#include "wrtww8.hxx"
#include "ww8par.hxx"
#include "escher.hxx"
-//Added for i120568
#include "ww8attributeoutput.hxx"
#include "fmturl.hxx"
-//End
#include "docsh.hxx"
#include <cstdio>
-
#include <stdio.h>
+#include <drawdoc.hxx>
using namespace ::com::sun::star;
using namespace nsFieldFlags;
@@ -125,7 +112,7 @@ bool WW8Export::TestOleNeedsGraphic(const SwAttrSet& rSet,
switch (pItem->Which())
{
/*
- For an inline object these properties are irrelevent because they
+ For an inline object these properties are irrelevant because they
will be the same as the defaults that msword applies in their
absence, so if that is all that there is for these inline objects
then if there turns out to be enough information in the object
diff --git a/sw/source/filter/ww8/ww8atr.cxx b/sw/source/filter/ww8/ww8atr.cxx
index d93e0fd2fb4b..2e9c99a75ab1 100644
--- a/sw/source/filter/ww8/ww8atr.cxx
+++ b/sw/source/filter/ww8/ww8atr.cxx
@@ -1128,7 +1128,7 @@ void WW8AttributeOutput::CharFontCJK( const SvxFontItem& rFont )
void WW8AttributeOutput::CharWeightCTL( const SvxWeightItem& rWeight )
{
- //Can only export in 8+, in 7- export as normal varient and expect that
+ //Can only export in 8+, in 7- export as normal variant and expect that
//upperlevel code has blocked exporting clobbering attributes
if (m_rWW8Export.bWrtWW8)
{
@@ -1142,7 +1142,7 @@ void WW8AttributeOutput::CharWeightCTL( const SvxWeightItem& rWeight )
void WW8AttributeOutput::CharPostureCTL( const SvxPostureItem& rPosture )
{
- // Can only export in 8+, in 7- export as normal varient and expect that
+ // Can only export in 8+, in 7- export as normal variant and expect that
// upperlevel code has blocked exporting clobbering attributes
if (m_rWW8Export.bWrtWW8)
{
@@ -3325,7 +3325,7 @@ void WW8AttributeOutput::CharTwoLines( const SvxTwoLinesItem& rTwoLines )
sal_Unicode cEnd = rTwoLines.GetEndBracket();
/*
- As per usual we have problems. We can have seperate left and right brackets
+ As per usual we have problems. We can have separate left and right brackets
in OOo, it doesn't appear that you can in word. Also in word there appear
to only be a limited number of possibilities, we can use pretty much
anything.
diff --git a/sw/source/filter/ww8/ww8graf.cxx b/sw/source/filter/ww8/ww8graf.cxx
index 1689cd552748..6ea7c12ab433 100644
--- a/sw/source/filter/ww8/ww8graf.cxx
+++ b/sw/source/filter/ww8/ww8graf.cxx
@@ -19,10 +19,9 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sw.hxx"
+
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil -*- */
#include <svl/urihelper.hxx>
#include <hintids.hxx>
@@ -89,7 +88,6 @@
#include <fmtinfmt.hxx>
#include <editeng/eeitem.hxx>
#include <editeng/flditem.hxx>
-// OD 30.09.2003 #i18732#
#include <fmtfollowtextflow.hxx>
#include "writerhelper.hxx"
#include "writerwordglue.hxx"
@@ -98,13 +96,12 @@
#include <editeng/editobj.hxx>
#include <svx/svdlegacy.hxx>
#include <svx/fmmodel.hxx>
-
#include <math.h>
-
#include <fmturl.hxx>
#include <svx/hlnkitem.hxx>
#include <svl/whiter.hxx>
#include "ww8par2.hxx"
+#include <drawdoc.hxx>
using namespace ::com::sun::star;
using namespace sw::types;
@@ -637,7 +634,7 @@ void SwWW8ImplReader::InsertAttrsAsDrawingAttrs(long nStartCp, long nEndCp,
Save and create new plcxman for this drawing object, of the type that
will include the para end mark inside a paragraph property range, as
drawing boxes have real paragraph marks as part of their text, while
- normal writer has seperate nodes for each paragraph and so has no actual
+ normal writer has separate nodes for each paragraph and so has no actual
paragraph mark as part of the paragraph text.
*/
WW8ReaderSave aSave(this);
@@ -1914,7 +1911,7 @@ void SwWW8ImplReader::MatchSdrItemsIntoFlySet( SdrObject* pSdrObj,
bool bBrushItemOk = false;
sal_uInt8 nTrans = 0;
- //Seperate transparency
+ //Separate transparency
eState = rOldSet.GetItemState(XATTR_FILLTRANSPARENCE, true, &pItem);
if (eState == SFX_ITEM_SET)
{
@@ -2104,7 +2101,7 @@ void SwWW8ImplReader::MapWrapIntoFlyFmt(SvxMSDffImportRec* pRecord,
So given that the size of the values remains pretty much the
same despite the size of the graphic, we can tell that the
- polygon is measured in units that are independant of the
+ polygon is measured in units that are independent of the
graphic. But why does the left corner move a different value
to the left each time, and why does the bottom move upwards
each time, when the right and top remain at the same value ?
@@ -2146,7 +2143,7 @@ void SwWW8ImplReader::MapWrapIntoFlyFmt(SvxMSDffImportRec* pRecord,
aPoly.Scale(aMapPolyX, aMapPolyY);
// --> OD 2005-05-19 #i47277# - contour is already in unit of the
- // graphic prefered unit. Thus, call method <SetContour(..)>
+ // graphic preferred unit. Thus, call method <SetContour(..)>
pNd->SetContour(&aPoly);
// <--
}
diff --git a/sw/source/filter/ww8/ww8graf.hxx b/sw/source/filter/ww8/ww8graf.hxx
index dec60c9bc74e..792893c0f7ab 100644
--- a/sw/source/filter/ww8/ww8graf.hxx
+++ b/sw/source/filter/ww8/ww8graf.hxx
@@ -84,8 +84,8 @@ public:
const SvxMSDffShapeOrders *pShapeOrders);
void InsertTextLayerObject(SdrObject* pObject);
/*
- cmc: We should have have seperate ZOrder classes for 95- and 97+ and
- instantiate the appropiate one at run time.
+ cmc: We should have have separate ZOrder classes for 95- and 97+ and
+ instantiate the appropriate one at run time.
*/
void InsertDrawingObject(SdrObject* pObj, short nWwHeight);
// --> OD 2004-12-13 #117915# - new parameter <_bInHeaderFooter>, indicating
diff --git a/sw/source/filter/ww8/ww8graf2.cxx b/sw/source/filter/ww8/ww8graf2.cxx
index 2c6b8131fbbc..ad0990f88734 100644
--- a/sw/source/filter/ww8/ww8graf2.cxx
+++ b/sw/source/filter/ww8/ww8graf2.cxx
@@ -572,7 +572,7 @@ SwFrmFmt* SwWW8ImplReader::ImportGraf(SdrTextObj* pTextObj,
##835##
Disable use of main stream as fallback stream for inline direct
blips as it is known that they are directly after the record
- header, testing for existance in main stream may lead to an
+ header, testing for existence in main stream may lead to an
incorrect fallback graphic being found if other escher graphics
have been inserted in the document
*/
diff --git a/sw/source/filter/ww8/ww8par.cxx b/sw/source/filter/ww8/ww8par.cxx
index de3f0fe89604..d159cd4bbb69 100644
--- a/sw/source/filter/ww8/ww8par.cxx
+++ b/sw/source/filter/ww8/ww8par.cxx
@@ -1701,7 +1701,7 @@ void SwWW8ImplReader::ImportDop()
// COMPATIBILITY FLAGS START
//
- // #i78951# - remember the unknown compatability options
+ // #i78951# - remember the unknown compatibility options
// so as to export them out
rDoc.Setn32DummyCompatabilityOptions1( pWDop->GetCompatabilityOptions());
rDoc.Setn32DummyCompatabilityOptions2( pWDop->GetCompatabilityOptions2());
@@ -3051,7 +3051,7 @@ bool SwWW8ImplReader::HandlePageBreakChar()
/*
If its a 0x0c without a paragraph end before it, act like a
paragraph end, but nevertheless, numbering (and perhaps other
- similiar constructs) do not exist on the para.
+ similar constructs) do not exist on the para.
*/
//xushanchuan add for issue106569
if (!bWasParaEnd && IsTemp)
@@ -3740,8 +3740,9 @@ SwWW8ImplReader::SwWW8ImplReader(sal_uInt8 nVersionPara, SvStorage* pStorage,
, nIdctHint(0)
, bBidi(false)
, bReadTable(false)
- , mbLoadingTOCCache(false)
- , mbLoadingTOCHyperlink(false)
+ , mbLoadingTOXCache(false)
+ , mnEmbeddedTOXLevel(0)
+ , mbLoadingTOXHyperlink(false)
, mpPosAfterTOC(0)
, mbCareFirstParaEndInToc(false)
, mbCareLastParaEndInToc(false)
@@ -3807,7 +3808,6 @@ SwWW8ImplReader::SwWW8ImplReader(sal_uInt8 nVersionPara, SvStorage* pStorage,
mpDrawEditEngine = 0;
pWWZOrder = 0;
pFormImpl = 0;
- mpChosenOutlineNumRule = 0;
pNumFldType = 0;
nFldNum = 0;
@@ -4124,10 +4124,10 @@ void wwSectionManager::InsertSegments()
//End getting the bounds of this section, quite a job eh ?
SwSectionFmt *pRet = InsertSection(aSectPaM, *aIter);
- //The last section if continous is always unbalanced
+ //The last section if continuous is always unbalanced
if (pRet)
{
- //Set the columns to be UnBalanced if that compatability option
+ //Set the columns to be UnBalanced if that compatibility option
//is set
if (mrReader.pWDop->fNoColumnBalance)
pRet->SetFmtAttr(SwFmtNoBalancedColumns(true));
@@ -4464,7 +4464,7 @@ sal_uLong SwWW8ImplReader::CoreLoad(WW8Glossary *pGloss, const SwPosition &rPos)
pStyles->PostProcessStyles();
if (pCollA)
- SetOutLineStyles();
+ SetOutlineStyles();
pSBase = new WW8ScannerBase(pStrm,pTableStream,pDataStream,pWwFib);
@@ -4571,13 +4571,13 @@ sal_uLong SwWW8ImplReader::CoreLoad(WW8Glossary *pGloss, const SwPosition &rPos)
}
else //ordinary case
{
- //Modify here for #119405, by easyfan, 2012-05-24
- mbOnLoadingMain = true;
- //End of modification, by easyfan
- ReadText(0, pWwFib->ccpText, MAN_MAINTEXT);
- //Modify here for #119405, by easyfan, 2012-05-24
- mbOnLoadingMain = false;
- //End of modification, by easyfan
+ //Modify here for #119405, by easyfan, 2012-05-24
+ mbOnLoadingMain = true;
+ //End of modification, by easyfan
+ ReadText( 0, pWwFib->ccpText, MAN_MAINTEXT );
+ //Modify here for #119405, by easyfan, 2012-05-24
+ mbOnLoadingMain = false;
+ //End of modification, by easyfan
}
::SetProgressState(nProgress, mpDocShell); // Update
@@ -5201,178 +5201,137 @@ public:
}
};
-void SwWW8ImplReader::SetOutLineStyles()
+
+void SwWW8ImplReader::SetOutlineStyles()
{
- /*
- #i3674# - Load new document and insert document cases.
- */
- SwNumRule aOutlineRule(*rDoc.GetOutlineNumRule());
- // #i53044,i53213#
- // <mpChosenOutlineNumRule> has to be set to point to local variable
- // <aOutlineRule>, because its used below to be compared this <&aOutlineRule>.
- // But at the end of the method <mpChosenOutlineNumRule> has to be set to
- // <rDoc.GetOutlineNumRule()>, because <aOutlineRule> will be destroyed.
- mpChosenOutlineNumRule = &aOutlineRule;
-
- sw::ParaStyles aOutLined(sw::util::GetParaStyles(rDoc));
- // #i98791# - sorting algorithm adjusted
- sw::util::SortByAssignedOutlineStyleListLevel(aOutLined);
-
- typedef sw::ParaStyleIter myParaStyleIter;
- /*
- If we are inserted into a document then don't clobber existing existing
- levels.
- */
- sal_uInt16 nFlagsStyleOutlLevel = 0;
- if (!mbNewDoc)
+
+ // If we are inserted into a document then don't clobber existing outline levels.
+ sal_uInt16 nOutlineStyleListLevelWithAssignment = 0;
+ if ( !mbNewDoc )
{
- // #i70748# - backward iteration needed due to the outline level attribute
+ sw::ParaStyles aOutLined( sw::util::GetParaStyles( rDoc ) );
+ sw::util::SortByAssignedOutlineStyleListLevel( aOutLined );
sw::ParaStyles::reverse_iterator aEnd = aOutLined.rend();
- for ( sw::ParaStyles::reverse_iterator aIter = aOutLined.rbegin(); aIter < aEnd; ++aIter)
+ for ( sw::ParaStyles::reverse_iterator aIter = aOutLined.rbegin(); aIter < aEnd; ++aIter )
{
- if ((*aIter)->IsAssignedToListLevelOfOutlineStyle())
- nFlagsStyleOutlLevel |= 1 << (*aIter)->GetAssignedOutlineStyleLevel();
+ if ( ( *aIter )->IsAssignedToListLevelOfOutlineStyle() )
+ nOutlineStyleListLevelWithAssignment |= 1 << ( *aIter )->GetAssignedOutlineStyleLevel();
else
break;
}
}
- else
+
+ // Check applied WW8 list styles at WW8 Built-In Heading Styles
+ // - Choose the list style which occurs most often as the one which provides
+ // the list level properties for the Outline Style.
+ // - Populate temporary list of WW8 Built-In Heading Styles for further iteration
+ std::vector< SwWW8StyInf* > aWW8BuiltInHeadingStyles;
+ const SwNumRule* pChosenWW8ListStyle = NULL;
{
- /*
- Only import *one* of the possible multiple outline numbering rules, so
- pick the one that affects most styles. If we're not importing a new
- document, we got to stick with what is already there.
- */
- // use index in text format collection
- // array <pCollA> as key of the outline numbering map <aRuleMap>
- // instead of the memory pointer of the outline numbering rule
- // to assure that, if two outline numbering rule affect the same
- // count of text formats, always the same outline numbering rule is chosen.
- std::map<sal_uInt16, int>aRuleMap;
- typedef std::map<sal_uInt16, int>::iterator myIter;
- for (sal_uInt16 nI = 0; nI < nColls; ++nI)
+ std::map< const SwNumRule*, int > aWW8ListStyleCounts;
+ for ( sal_uInt16 nI = 0; nI < nColls; ++nI )
{
- SwWW8StyInf& rSI = pCollA[ nI ];
- if (
- (MAXLEVEL > rSI.nOutlineLevel) && rSI.pOutlineNumrule &&
- rSI.pFmt
- )
+ SwWW8StyInf& rSI = pCollA[nI];
+
+ if ( !rSI.IsWW8BuiltInHeadingStyle()
+ || !rSI.HasWW8OutlineLevel() )
{
- myIter aIter = aRuleMap.find(nI);
- if (aIter == aRuleMap.end())
+ continue;
+ }
+
+ aWW8BuiltInHeadingStyles.push_back( &rSI );
+
+ const SwNumRule* pWW8ListStyle = rSI.GetOutlineNumrule();
+ if ( pWW8ListStyle != NULL )
+ {
+ std::map< const SwNumRule*, int >::iterator aCountIter =
+ aWW8ListStyleCounts.find( pWW8ListStyle );
+ if ( aCountIter == aWW8ListStyleCounts.end() )
{
- aRuleMap[nI] = 1;
+ aWW8ListStyleCounts[pWW8ListStyle] = 1;
}
else
- ++(aIter->second);
+ {
+ ++(aCountIter->second);
+ }
}
}
- int nMax = 0;
- myIter aEnd2 = aRuleMap.end();
- for (myIter aIter = aRuleMap.begin(); aIter != aEnd2; ++aIter++)
+ int nCurrentMaxCount = 0;
+ std::map< const SwNumRule*, int >::iterator aCountIterEnd =
+ aWW8ListStyleCounts.end();
+ for ( std::map< const SwNumRule*, int >::iterator aIter = aWW8ListStyleCounts.begin();
+ aIter != aCountIterEnd;
+ ++aIter )
{
- if (aIter->second > nMax)
+ if ( aIter->second > nCurrentMaxCount )
{
- nMax = aIter->second;
- mpChosenOutlineNumRule = pCollA[ aIter->first ].pOutlineNumrule;
+ nCurrentMaxCount = aIter->second;
+ pChosenWW8ListStyle = aIter->first;
}
}
+ }
- ASSERT(mpChosenOutlineNumRule, "Impossible");
- if (mpChosenOutlineNumRule)
- aOutlineRule = *mpChosenOutlineNumRule;
-
- if (mpChosenOutlineNumRule != &aOutlineRule)
+ // - set list level properties of Outline Style - ODF's list style applied by default to headings
+ // - assign corresponding Heading Paragraph Styles to the Outline Style
+ // - If a heading Paragraph Styles is not applying the WW8 list style which had been chosen as
+ // the one which provides the list level properties for the Outline Style, its assignment to
+ // the Outline Style is removed. A potential applied WW8 list style is assigned directly and
+ // its default outline level is applied.
+ SwNumRule aOutlineRule( *rDoc.GetOutlineNumRule() );
+ bool bAppliedChangedOutlineStyle = false;
+ std::vector< SwWW8StyInf* >::iterator aStylesIterEnd =
+ aWW8BuiltInHeadingStyles.end();
+ for ( std::vector< SwWW8StyInf* >::iterator aStyleIter = aWW8BuiltInHeadingStyles.begin();
+ aStyleIter != aStylesIterEnd;
+ ++aStyleIter )
+ {
+ SwWW8StyInf* pStyleInf = (*aStyleIter);
+
+ const sal_uInt16 nOutlineStyleListLevelOfWW8BuiltInHeadingStyle = 1 << pStyleInf->mnWW8OutlineLevel;
+ if ( nOutlineStyleListLevelOfWW8BuiltInHeadingStyle & nOutlineStyleListLevelWithAssignment )
{
- // #i70748# - backward iteration needed due to the outline level attribute
- sw::ParaStyles::reverse_iterator aEnd = aOutLined.rend();
- for ( sw::ParaStyles::reverse_iterator aIter = aOutLined.rbegin(); aIter < aEnd; ++aIter)
- {
- if((*aIter)->IsAssignedToListLevelOfOutlineStyle())
- (*aIter)->DeleteAssignmentToListLevelOfOutlineStyle();
-
- else
- break;
- }
+ continue;
}
- }
- sal_uInt16 nOldFlags = nFlagsStyleOutlLevel;
+ if ( pChosenWW8ListStyle != NULL
+ && pStyleInf->mnWW8OutlineLevel == pStyleInf->nListLevel )
+ {
+ const SwNumFmt& rRule = pChosenWW8ListStyle->Get( pStyleInf->mnWW8OutlineLevel );
+ aOutlineRule.Set( pStyleInf->mnWW8OutlineLevel, rRule );
+ bAppliedChangedOutlineStyle = true;
+ }
- for (sal_uInt16 nI = 0; nI < nColls; ++nI)
- {
- SwWW8StyInf& rSI = pCollA[nI];
+ // in case that there are more styles on this level ignore them
+ nOutlineStyleListLevelWithAssignment |= nOutlineStyleListLevelOfWW8BuiltInHeadingStyle;
- if (rSI.IsOutlineNumbered())
+ SwTxtFmtColl* pTxtFmtColl = static_cast<SwTxtFmtColl*>(pStyleInf->pFmt);
+ if ( pStyleInf->GetOutlineNumrule() != pChosenWW8ListStyle
+ || ( pStyleInf->nListLevel < WW8ListManager::nMaxLevel
+ && pStyleInf->mnWW8OutlineLevel != pStyleInf->nListLevel ) )
{
- sal_uInt16 nAktFlags = 1 << rSI.nOutlineLevel;
- if (
- (nAktFlags & nFlagsStyleOutlLevel) ||
- (rSI.pOutlineNumrule != mpChosenOutlineNumRule)
- )
+ // WW8 Built-In Heading Style does not apply the chosen one.
+ // --> delete assignment to OutlineStyle, but keep its current outline level
+ pTxtFmtColl->DeleteAssignmentToListLevelOfOutlineStyle( false );
+ // Apply existing WW8 list style a normal list style at the Paragraph Style
+ if ( pStyleInf->GetOutlineNumrule() != NULL )
{
- /*
- If our spot is already taken by something we can't replace
- then don't insert and remove our outline level.
- */
- rSI.pFmt->SetFmtAttr(
- SwNumRuleItem( rSI.pOutlineNumrule->GetName() ) );
- //((SwTxtFmtColl*)rSI.pFmt)->SetOutlineLevel(NO_NUMBERING);
- ((SwTxtFmtColl*)rSI.pFmt)->DeleteAssignmentToListLevelOfOutlineStyle();//#outline level,zhaojianwei
- }
- else
- {
- /*
- If there is a style already set for this outline
- numbering level and its not a style set by us already
- then we can remove it outline numbering.
- (its one of the default headings in a new document
- so we can clobber it)
- Of course if we are being inserted into a document that
- already has some set we can't do this, thats covered by
- the list of level in nFlagsStyleOutlLevel to ignore.
- */
- outlineeq aCmp(rSI.nOutlineLevel);
- myParaStyleIter aResult = std::find_if(aOutLined.begin(),
- aOutLined.end(), aCmp);
-
- myParaStyleIter aEnd = aOutLined.end();
- while (aResult != aEnd && aCmp(*aResult))
- {
- //(*aResult)->SetOutlineLevel(NO_NUMBERING);//#outline level,zhaojianwei
- (*aResult)->DeleteAssignmentToListLevelOfOutlineStyle();
- ++aResult;
- }
-
- /*
- #i1886#
- I believe that when a list is registered onto a winword
- style which is an outline numbering style (i.e.
- nOutlineLevel is set) that the style of numbering is for
- the level is indexed by the *list* level that was
- registered on that style, and not the outlinenumbering
- level, which is probably a logical sequencing, and not a
- physical mapping into the list style reged on that outline
- style.
- */
- sal_uInt8 nFromLevel = rSI.nListLevel;
- sal_uInt8 nToLevel = rSI.nOutlineLevel;
- const SwNumFmt& rRule=rSI.pOutlineNumrule->Get(nFromLevel);
- aOutlineRule.Set(nToLevel, rRule);
- // Set my outline level
- //((SwTxtFmtColl*)rSI.pFmt)->SetOutlineLevel(nToLevel);//#outline level,zhaojianwei
- ((SwTxtFmtColl*)rSI.pFmt)->AssignToListLevelOfOutlineStyle(nToLevel); //<-end,zhaojianwei
- // If there are more styles on this level ignore them
- nFlagsStyleOutlLevel |= nAktFlags;
+ pTxtFmtColl->SetFmtAttr( SwNumRuleItem( pStyleInf->GetOutlineNumrule()->GetName() ) );
}
+ // apply default outline level of WW8 Built-in Heading Style
+ const sal_uInt8 nOutlineLevel =
+ SwWW8StyInf::WW8OutlineLevelToOutlinelevel( pStyleInf->mnWW8OutlineLevel );
+ pTxtFmtColl->SetFmtAttr( SfxUInt16Item( RES_PARATR_OUTLINELEVEL, nOutlineLevel ) );
+ }
+ else
+ {
+ pTxtFmtColl->AssignToListLevelOfOutlineStyle( pStyleInf->mnWW8OutlineLevel );
}
}
- if (nOldFlags != nFlagsStyleOutlLevel)
- rDoc.SetOutlineNumRule(aOutlineRule);
- if ( mpChosenOutlineNumRule == &aOutlineRule )
+
+ if ( bAppliedChangedOutlineStyle )
{
- mpChosenOutlineNumRule = rDoc.GetOutlineNumRule();
+ rDoc.SetOutlineNumRule(aOutlineRule);
}
}
diff --git a/sw/source/filter/ww8/ww8par.hxx b/sw/source/filter/ww8/ww8par.hxx
index 3f1eec42d77b..fb2ea3b58bf6 100644
--- a/sw/source/filter/ww8/ww8par.hxx
+++ b/sw/source/filter/ww8/ww8par.hxx
@@ -301,7 +301,12 @@ public:
void NewAttr(const SwPosition& rPos, const SfxPoolItem& rAttr);
- virtual void SetAttr(const SwPosition& rPos, sal_uInt16 nAttrId=0, sal_Bool bTstEnde=sal_True, long nHand=LONG_MAX, sal_Bool consumedByField=sal_False);
+ virtual void SetAttr(
+ const SwPosition& rPos,
+ sal_uInt16 nAttrId = 0,
+ sal_Bool bTstEnde = sal_True,
+ long nHand = LONG_MAX,
+ sal_Bool consumedByField = sal_False );
void SetToggleAttr(sal_uInt8 nId, bool bOn)
{
@@ -886,8 +891,8 @@ struct ApoTestResults
struct ANLDRuleMap
{
- SwNumRule* mpOutlineNumRule; // WinWord 6 numbering, varient 1
- SwNumRule* mpNumberingNumRule; // WinWord 6 numbering, varient 2
+ SwNumRule* mpOutlineNumRule; // WinWord 6 numbering, variant 1
+ SwNumRule* mpNumberingNumRule; // WinWord 6 numbering, variant 2
SwNumRule* GetNumRule(sal_uInt8 nNumType);
void SetNumRule(SwNumRule*, sal_uInt8 nNumType);
ANLDRuleMap() : mpOutlineNumRule(0), mpNumberingNumRule(0) {}
@@ -1032,14 +1037,6 @@ private:
std::stack<rtl_TextEncoding> maFontSrcCharSets;
std::stack<rtl_TextEncoding> maFontSrcCJKCharSets;
- /*
- Winword numbering gets imported as SwNumRules, there is a problem that
- winword can have multiple outline numberings, only one gets chosen as
- the writer outline numbering rule. The one that gets chosen is set here
- as mpChosenOutlineNumRule
- */
- SwNumRule *mpChosenOutlineNumRule;
-
SwMSConvertControls *pFormImpl; // Control-Implementierung
SwFlyFrmFmt* pFlyFmtOfJustInsertedGraphic;
@@ -1216,10 +1213,12 @@ private:
boost::shared_ptr<SwPaM> mpTableEndPaM;
WW8PLCFx_Cp_FKP* pFirstTablePap;
- // Indicate that currently on loading a TOC, managed by Read_F_TOX() and End_Field()
- bool mbLoadingTOCCache;
- // Indicate that current on loading a hyperlink, which is inside a TOC; Managed by Read_F_Hyperlink() and End_Field()
- bool mbLoadingTOCHyperlink;
+ // Indicate that currently on loading a TOX, managed by Read_F_TOX() and End_Field()
+ bool mbLoadingTOXCache;
+ int mnEmbeddedTOXLevel;
+
+ // Indicate that current on loading a hyperlink, which is inside a TOX; Managed by Read_F_Hyperlink() and End_Field()
+ bool mbLoadingTOXHyperlink;
// a document position recorded the after-position of TOC section, managed by Read_F_TOX() and End_Field()
SwPaM* mpPosAfterTOC;
@@ -1289,12 +1288,10 @@ private:
void ImportTox( int nFldId, String aStr );
void EndSprm( sal_uInt16 nId );
- // --> OD 2010-05-06 #i103711#
- // --> OD 2010-05-11 #i105414#
+
void NewAttr( const SfxPoolItem& rAttr,
const bool bFirstLineOfStSet = false,
const bool bLeftIndentSet = false );
- // <--
bool GetFontParams(sal_uInt16, FontFamily&, String&, FontPitch&,
rtl_TextEncoding&);
@@ -1500,8 +1497,11 @@ private:
// Ver8-Listen
- void RegisterNumFmtOnTxtNode(sal_uInt16 nActLFO, sal_uInt8 nActLevel,
- bool bSetAttr = true);
+ void RegisterNumFmtOnTxtNode(
+ sal_uInt16 nActLFO,
+ sal_uInt8 nActLevel,
+ const bool bSetAttr = true );
+
void RegisterNumFmtOnStyle(sal_uInt16 nStyle);
void SetStylesList(sal_uInt16 nStyle, sal_uInt16 nActLFO,
sal_uInt8 nActLevel);
@@ -1537,7 +1537,7 @@ private:
SwTwips MoveOutsideFly(SwFrmFmt *pFlyFmt, const SwPosition &rPos,
bool bTableJoin = true);
- void SetOutLineStyles();
+ void SetOutlineStyles();
bool SetSpacing(SwPaM &rMyPam, int nSpace, bool bIsUpper);
bool SetUpperSpacing(SwPaM &pMyPam, int nSpace);
@@ -1700,7 +1700,6 @@ public: // eigentlich private, geht aber leider nur public
eF_ResT Read_F_NoteReference( WW8FieldDesc* pF, String& rStr );
eF_ResT Read_F_Tox( WW8FieldDesc* pF, String& rStr );
- bool AddExtraOutlinesAsExtraStyles(SwTOXBase& rBase);
eF_ResT Read_F_Symbol( WW8FieldDesc*, String& rStr );
eF_ResT Read_F_Embedd( WW8FieldDesc*, String& rStr );
eF_ResT Read_F_FormTextBox( WW8FieldDesc* pF, String& rStr);
diff --git a/sw/source/filter/ww8/ww8par2.cxx b/sw/source/filter/ww8/ww8par2.cxx
index c25ec260c2a3..419a8ef51ee0 100644
--- a/sw/source/filter/ww8/ww8par2.cxx
+++ b/sw/source/filter/ww8/ww8par2.cxx
@@ -402,7 +402,7 @@ sal_uInt16 SwWW8ImplReader::End_Ftn()
bFtnEdn = bOld;
ASSERT(sChar.Len()==1 && ((rDesc.mbAutoNum == (sChar.GetChar(0) == 2))),
- "footnote autonumbering must be 0x02, and everthing else must not be");
+ "footnote autonumbering must be 0x02, and everything else must not be");
// If no automatic numbering use the following char from the main text
// as the footnote number
@@ -540,7 +540,7 @@ ApoTestResults SwWW8ImplReader::TestApo(int nCellLevel, bool bTableRowEnd,
/*
#i1140#
If I have a table and apply a style to one of its frames that should cause
- a paragraph that its applied to it to only exist as a seperate floating
+ a paragraph that its applied to it to only exist as a separate floating
frame, then the behavour depends on which cell that it has been applied
to. If its the first cell of a row then the whole table row jumps into the
new frame, if its not then then the paragraph attributes are applied
@@ -636,28 +636,35 @@ ApoTestResults SwWW8ImplReader::TestApo(int nCellLevel, bool bTableRowEnd,
// Hilfroutinen fuer Kapitelnummerierung und Aufzaehlung / Gliederung
//---------------------------------------------------------------------
-static void SetBaseAnlv(SwNumFmt &rNum, WW8_ANLV &rAV, sal_uInt8 nSwLevel )
+static void SetBaseAnlv(
+ SwNumFmt &rNum,
+ WW8_ANLV &rAV,
+ sal_uInt8 nSwLevel )
{
- static SvxExtNumType eNumA[8] = { SVX_NUM_ARABIC, SVX_NUM_ROMAN_UPPER, SVX_NUM_ROMAN_LOWER,
- SVX_NUM_CHARS_UPPER_LETTER_N, SVX_NUM_CHARS_LOWER_LETTER_N, SVX_NUM_ARABIC,
- SVX_NUM_ARABIC, SVX_NUM_ARABIC };
+ static SvxExtNumType eNumA[8] =
+ { SVX_NUM_ARABIC, SVX_NUM_ROMAN_UPPER, SVX_NUM_ROMAN_LOWER,
+ SVX_NUM_CHARS_UPPER_LETTER_N, SVX_NUM_CHARS_LOWER_LETTER_N,
+ SVX_NUM_ARABIC, SVX_NUM_ARABIC, SVX_NUM_ARABIC };
- static SvxAdjust eAdjA[4] = { SVX_ADJUST_LEFT,
- SVX_ADJUST_RIGHT, SVX_ADJUST_LEFT, SVX_ADJUST_LEFT };
-// eigentlich folgende 2, aber Writer-UI bietet es nicht an
-// SVX_ADJUST_CENTER, SVX_ADJUST_BLOCKLINE };
+ static SvxAdjust eAdjA[4] =
+ { SVX_ADJUST_LEFT, SVX_ADJUST_RIGHT, SVX_ADJUST_LEFT, SVX_ADJUST_LEFT };
+
+ rNum.SetNumberingType(
+ static_cast< sal_Int16 >(( SVBT8ToByte( rAV.nfc ) < 8 )
+ ? eNumA[SVBT8ToByte( rAV.nfc ) ]
+ : SVX_NUM_NUMBER_NONE) );
- rNum.SetNumberingType( static_cast< sal_Int16 >(( SVBT8ToByte( rAV.nfc ) < 8 ) ?
- eNumA[SVBT8ToByte( rAV.nfc ) ] : SVX_NUM_NUMBER_NONE) );
if ((SVBT8ToByte(rAV.aBits1 ) & 0x4) >> 2)
+ {
rNum.SetIncludeUpperLevels(nSwLevel + 1);
+ }
rNum.SetStart( SVBT16ToShort( rAV.iStartAt ) );
-// rNum.eNumAdjust = eAdjA[rAV.jc];
+
rNum.SetNumAdjust( eAdjA[SVBT8ToByte( rAV.aBits1 ) & 0x3] );
rNum.SetCharTextDistance( SVBT16ToShort( rAV.dxaSpace ) );
- sal_Int16 nIndent = Abs((sal_Int16)SVBT16ToShort( rAV.dxaIndent ));
- if( SVBT8ToByte( rAV.aBits1 ) & 0x08 ) //fHang
+ sal_Int16 nIndent = Abs( (sal_Int16) SVBT16ToShort( rAV.dxaIndent ) );
+ if ( SVBT8ToByte( rAV.aBits1 ) & 0x08 ) //fHang
{
rNum.SetFirstLineOffset( -nIndent );
rNum.SetLSpace( nIndent );
@@ -833,8 +840,7 @@ void SwWW8ImplReader::Read_ANLevelNo( sal_uInt16, const sal_uInt8* pData, short
{
nSwNumLevel = *pData - 1;
if (!bNoAttrImport)
- //((SwTxtFmtColl*)pAktColl)->SetOutlineLevel( nSwNumLevel ); //#outline level,zhaojianwei
- ((SwTxtFmtColl*)pAktColl)->AssignToListLevelOfOutlineStyle( nSwNumLevel ); //<-end,zhaojianwei
+ ( (SwTxtFmtColl*) pAktColl )->AssignToListLevelOfOutlineStyle( nSwNumLevel );
// Bei WW-NoNumbering koennte auch NO_NUMBERING gesetzt
// werden. ( Bei normaler Nummerierung muss NO_NUM gesetzt
// werden: NO_NUM : Nummerierungs-Pause,
@@ -878,11 +884,9 @@ void SwWW8ImplReader::Read_ANLevelDesc( sal_uInt16, const sal_uInt8* pData, shor
pAktColl->SetFmtAttr( SwNumRuleItem() );
String aName(CREATE_CONST_ASC( "Outline" ));
- // --> OD 2008-02-11 #newlistlevelattrs#
SwNumRule aNR( rDoc.GetUniqueNumRuleName( &aName ),
SvxNumberFormat::LABEL_WIDTH_AND_POSITION,
OUTLINE_RULE );
- // <--
aNR = *rDoc.GetOutlineNumRule();
SetAnld(&aNR, (WW8_ANLD*)pData, nSwNumLevel, true);
@@ -2088,7 +2092,7 @@ WW8TabDesc::WW8TabDesc(SwWW8ImplReader* pIoClass, WW8_CP nStartCp) :
ApoTestResults aApo = pIo->TestApo(pIo->nInTable + 1, false, pTabPos);
/*
- ##513##, #79474# If this is not sufficent, then we should look at
+ ##513##, #79474# If this is not sufficient, then we should look at
sprmPD{y|x}aAbs as our indicator that the following set of rows is not
part of this table, but instead is an absolutely positioned table
outside of this one
@@ -2266,7 +2270,7 @@ void WW8TabDesc::CalcDefaults()
}
}
/*
- Similiar to graphics and other elements word does not totally
+ Similar to graphics and other elements word does not totally
factor the width of the border into its calculations of size, we
do so we must adjust out widths and other dimensions to fit. It
appears that what occurs is that the last cell's right margin if
@@ -2336,7 +2340,7 @@ void WW8TabDesc::CalcDefaults()
#96345#
If the last cell was "false" then there is no valid cell following it,
so the default mapping forward wont't work. So map it (and
- contigious invalid cells backwards to the last valid cell instead.
+ contiguous invalid cells backwards to the last valid cell instead.
*/
if (i && pR->bExist[i-1] == false)
{
@@ -4036,7 +4040,10 @@ bool WW8RStyle::PrepareStyle(SwWW8StyInf &rSI, ww::sti eSti, sal_uInt16 nThisSty
rSI.eCJKFontSrcCharSet = pj->eCJKFontSrcCharSet;
rSI.n81Flags = pj->n81Flags;
rSI.n81BiDiFlags = pj->n81BiDiFlags;
- rSI.nOutlineLevel = pj->nOutlineLevel;
+ if ( !rSI.IsWW8BuiltInHeadingStyle() )
+ {
+ rSI.mnWW8OutlineLevel = pj->mnWW8OutlineLevel;
+ }
rSI.bParaAutoBefore = pj->bParaAutoBefore;
rSI.bParaAutoAfter = pj->bParaAutoAfter;
diff --git a/sw/source/filter/ww8/ww8par2.hxx b/sw/source/filter/ww8/ww8par2.hxx
index afdc94032fc0..81c500eef733 100644
--- a/sw/source/filter/ww8/ww8par2.hxx
+++ b/sw/source/filter/ww8/ww8par2.hxx
@@ -129,6 +129,8 @@ class SwWW8StyInf
{
String sWWStyleName;
sal_uInt16 nWWStyleId;
+
+
public:
rtl_TextEncoding eLTRFontSrcCharSet; // rtl_TextEncoding fuer den Font
rtl_TextEncoding eRTLFontSrcCharSet; // rtl_TextEncoding fuer den Font
@@ -141,7 +143,15 @@ public:
sal_uInt16 nFollow;
sal_uInt16 nLFOIndex;
sal_uInt8 nListLevel;
- sal_uInt8 nOutlineLevel; // falls Gliederungs-Style
+
+ // WW8 outline level is zero-based:
+ // 0: outline level 1
+ // 1: outline level 2
+ // ...
+ // 8: outline level 9
+ // 9: body text
+ sal_uInt8 mnWW8OutlineLevel;
+
sal_uInt16 n81Flags; // Fuer Bold, Italic, ...
sal_uInt16 n81BiDiFlags; // Fuer Bold, Italic, ...
SvxLRSpaceItem maWordLR;
@@ -155,7 +165,7 @@ public:
//been explicitly set, it's set to the value
//of pFmt->GetItemState(RES_LR_SPACE, false)
//if it was possible to get the ItemState
- //for L of the LR space independantly
+ //for L of the LR space independently
bool bParaAutoBefore; // For Auto spacing before a paragraph
bool bParaAutoAfter; // For Auto Spacing after a paragraph
@@ -173,7 +183,7 @@ public:
nFollow( 0 ),
nLFOIndex( USHRT_MAX ),
nListLevel(WW8ListManager::nMaxLevel),
- nOutlineLevel( MAXLEVEL ),
+ mnWW8OutlineLevel( MAXLEVEL ),
n81Flags( 0 ),
n81BiDiFlags(0),
maWordLR( RES_LR_SPACE ),
@@ -198,26 +208,68 @@ public:
{
sWWStyleName = rName;
nWWStyleId = nId;
+
+ // apply default WW8 outline level to WW8 Built-in Heading styles
+ if ( IsWW8BuiltInHeadingStyle() )
+ {
+ mnWW8OutlineLevel = nWWStyleId - 1;
+ }
}
- sal_uInt16 GetWWStyleId() const { return nWWStyleId; }
+
const String& GetOrgWWName() const
{
return sWWStyleName;
}
- bool IsOutline() const
+
+ bool HasWW8OutlineLevel() const
{
- return (pFmt && (MAXLEVEL > nOutlineLevel));
+ return ( pFmt != NULL && (MAXLEVEL > mnWW8OutlineLevel) );
}
+
bool IsOutlineNumbered() const
{
- return pOutlineNumrule && IsOutline();
+ return pOutlineNumrule != NULL && HasWW8OutlineLevel();
}
+
const SwNumRule* GetOutlineNumrule() const
{
return pOutlineNumrule;
}
+
CharSet GetCharSet() const;
CharSet GetCJKCharSet() const;
+
+ inline sal_uInt16 GetWWStyleId() const
+ {
+ return nWWStyleId;
+ }
+
+ inline bool IsWW8BuiltInHeadingStyle()
+ {
+ return GetWWStyleId() >= 1 && GetWWStyleId() <= 9;
+ }
+
+ inline bool IsWW8BuiltInDefaultStyle()
+ {
+ return GetWWStyleId() == 0;
+ }
+
+ static sal_uInt8 WW8OutlineLevelToOutlinelevel( const sal_uInt8 nWW8OutlineLevel )
+ {
+ if ( nWW8OutlineLevel < MAXLEVEL )
+ {
+ if ( nWW8OutlineLevel == 9 )
+ {
+ return 0; // no outline level --> body text
+ }
+ else
+ {
+ return nWW8OutlineLevel + 1; // outline level 1..9
+ }
+ }
+
+ return 0;
+ }
};
class WW8RStyle: public WW8Style
diff --git a/sw/source/filter/ww8/ww8par3.cxx b/sw/source/filter/ww8/ww8par3.cxx
index 8f417a4a52c1..2040c2e1adea 100644
--- a/sw/source/filter/ww8/ww8par3.cxx
+++ b/sw/source/filter/ww8/ww8par3.cxx
@@ -530,10 +530,14 @@ void lcl_CopyGreaterEight(String &rDest, String &rSrc,
}
}
-bool WW8ListManager::ReadLVL(SwNumFmt& rNumFmt, SfxItemSet*& rpItemSet,
- sal_uInt16 nLevelStyle, bool bSetStartNo,
- std::deque<bool> &rNotReallyThere, sal_uInt16 nLevel,
- ww::bytes &rParaSprms)
+bool WW8ListManager::ReadLVL(
+ SwNumFmt& rNumFmt,
+ SfxItemSet*& rpItemSet,
+ sal_uInt16 nLevelStyle,
+ bool bSetStartNo,
+ std::deque< bool > &rNotReallyThere,
+ sal_uInt16 nLevel,
+ ww::bytes &rParaSprms )
{
sal_uInt8 aBits1;
sal_uInt16 nStartNo = 0; // Start-Nr. fuer den Writer
@@ -1219,7 +1223,7 @@ WW8ListManager::WW8ListManager(
i.e. create a simple list in 2000 and open it in 97 and 97 will
claim (correctly) that it is an outline list. We can set our
- continous flag in these lists to store this information.
+ continuous flag in these lists to store this information.
*/
SwNumRule* pMyNumRule = CreateNextRule(
aLST.bSimpleList || (aBits1 & 0x10));
@@ -1639,7 +1643,7 @@ SwNumRule* WW8ListManager::GetNumRuleForActivation(sal_uInt16 nLFOPosition,
#i1869#
If this list has had its bits set in word 2000 to pretend that it is a
simple list from the point of view of the user, then it is almost
- certainly a simple continous list, and we will try to keep it like that.
+ certainly a simple continuous list, and we will try to keep it like that.
Otherwise when we save again it will be shown as the true outline list
that it is, confusing the user that just wanted what they thought was a
simple list. On the otherhand it is possible that some of the other levels
@@ -1738,46 +1742,28 @@ bool SwWW8ImplReader::SetTxtFmtCollAndListLevel(
bool bRes = true;
if( rStyleInfo.pFmt && rStyleInfo.bColl )
{
- bRes = rDoc.SetTxtFmtColl(rRg, (SwTxtFmtColl*)rStyleInfo.pFmt)
- ? true : false;
+ bRes = rDoc.SetTxtFmtColl(rRg, (SwTxtFmtColl*)rStyleInfo.pFmt) ? true : false;
SwTxtNode* pTxtNode = pPaM->GetNode()->GetTxtNode();
- ASSERT( pTxtNode, "No Text-Node at PaM-Position" );
- // --> OD 2006-10-19 #134160# - make code robust
- if ( !pTxtNode )
+ ASSERT( pTxtNode != NULL, "No Text-Node at PaM-Position" );
+ if ( pTxtNode == NULL )
{
+ // make code robust
return bRes;
}
- // <--
-
- SwNumRule * pNumRule = pTxtNode->GetNumRule(); // #i27610#
- if( !IsInvalidOrToBeMergedTabCell() &&
- ! (pNumRule && pNumRule->IsOutlineRule()) ) // #i27610#
- pTxtNode->ResetAttr( RES_PARATR_NUMRULE );
+ const SwNumRule * pNumRule = pTxtNode->GetNumRule(); // #i27610#
- if( !rStyleInfo.pOutlineNumrule )
+ if( !IsInvalidOrToBeMergedTabCell()
+ && ! (pNumRule && pNumRule->IsOutlineRule()) ) // #i27610#
{
- if (
- (USHRT_MAX > rStyleInfo.nLFOIndex) &&
- (WW8ListManager::nMaxLevel > rStyleInfo.nListLevel)
- )
- {
- RegisterNumFmtOnTxtNode(rStyleInfo.nLFOIndex,
- rStyleInfo.nListLevel, false);
- }
+ pTxtNode->ResetAttr( RES_PARATR_NUMRULE );
}
- else
+
+ if ( USHRT_MAX > rStyleInfo.nLFOIndex
+ && WW8ListManager::nMaxLevel > rStyleInfo.nListLevel )
{
- // --> OD 2005-11-07 #127520#
- // Use outline level set at the style info <rStyleInfo> instead of
- // the outline level at the text format, because the WW8 document
- // could contain more than one outline numbering rule and the one
- // of the text format isn't the one, which a chosen as the Writer
- // outline rule.
-// pTxtNode->
-// SetLevel(((SwTxtFmtColl*) rStyleInfo.pFmt)->GetOutlineLevel());
- pTxtNode->SetAttrListLevel( rStyleInfo.nOutlineLevel );
- // <--
+ const bool bApplyListStyle = false;
+ RegisterNumFmtOnTxtNode( rStyleInfo.nLFOIndex, rStyleInfo.nListLevel, bApplyListStyle );
}
}
return bRes;
@@ -1865,25 +1851,27 @@ void SwWW8ImplReader::RegisterNumFmtOnStyle( sal_uInt16 nStyle )
// Phase 2: aktualisieren der StyleDef nach einlesen aller Listen
SwNumRule* pNmRule = 0;
- sal_uInt16 nLFO = rStyleInf.nLFOIndex;
- sal_uInt8 nLevel = rStyleInf.nListLevel;
+ const sal_uInt16 nLFO = rStyleInf.nLFOIndex;
+ const sal_uInt8 nLevel = rStyleInf.nListLevel;
if (
(USHRT_MAX > nLFO) &&
(WW8ListManager::nMaxLevel > nLevel)
)
{
std::vector<sal_uInt8> aParaSprms;
- pNmRule = pLstManager->GetNumRuleForActivation(nLFO, nLevel,
- aParaSprms);
+ pNmRule =
+ pLstManager->GetNumRuleForActivation( nLFO, nLevel, aParaSprms );
- if (pNmRule)
+ if ( pNmRule != NULL )
{
- if( MAXLEVEL > rStyleInf.nOutlineLevel )
+ if ( rStyleInf.IsWW8BuiltInHeadingStyle()
+ && rStyleInf.HasWW8OutlineLevel() )
+ {
rStyleInf.pOutlineNumrule = pNmRule;
+ }
else
{
- rStyleInf.pFmt->SetFmtAttr(
- SwNumRuleItem( pNmRule->GetName() ) );
+ rStyleInf.pFmt->SetFmtAttr( SwNumRuleItem( pNmRule->GetName() ) );
rStyleInf.bHasStyNumRule = true;
}
}
@@ -1897,7 +1885,7 @@ void SwWW8ImplReader::RegisterNumFmtOnStyle( sal_uInt16 nStyle )
void SwWW8ImplReader::RegisterNumFmtOnTxtNode(
sal_uInt16 nActLFO,
sal_uInt8 nActLevel,
- bool bSetAttr)
+ const bool bSetAttr)
{
// beachte: die Methode haengt die NumRule an den Text Node, falls
// bSetAttr (dann muessen natuerlich vorher die Listen gelesen sein)
@@ -1910,44 +1898,18 @@ void SwWW8ImplReader::RegisterNumFmtOnTxtNode(
SwTxtNode* pTxtNd = pPaM->GetNode()->GetTxtNode();
ASSERT(pTxtNd, "Kein Text-Node an PaM-Position");
- const SwNumRule* pRule = bSetAttr ?
- pLstManager->GetNumRuleForActivation( nActLFO, nActLevel,
- aParaSprms, pTxtNd) : 0;
+ const SwNumRule* pRule =
+ bSetAttr
+ ? pLstManager->GetNumRuleForActivation( nActLFO, nActLevel, aParaSprms, pTxtNd)
+ : 0;
- if (pRule || !bSetAttr)
+ if ( pRule != NULL || !bSetAttr)
{
- //#i24136# old is the same as new, and its the outline numbering,
- //then we don't set the numrule again, and we just take the num node
- //(the actual outline numbering gets set in SetOutlineNum)
- using namespace sw::util;
- bool bUnchangedOutlineNumbering = false;
- /*
- If the node is outline numbered, and the new numbering to apply
- is the one that was chosen to be the outline numbering then all
- is unchanged
- */
- // --> OD 2005-11-04 #???# - correct condition according to the
- // above given comment.
- if ( pTxtNd->GetNumRule() == rDoc.GetOutlineNumRule() &&
- pRule == mpChosenOutlineNumRule )
- // <--
+ if ( bSetAttr
+ && pTxtNd->GetNumRule() != pRule
+ && pTxtNd->GetNumRule() != rDoc.GetOutlineNumRule() )
{
- bUnchangedOutlineNumbering = true;
- }
- if (!bUnchangedOutlineNumbering)
- {
- //If its normal numbering, see if its the same as it already
- //was, if its not, and we have been asked to set it, then set
- //it to the new one
- if (bSetAttr)
- {
- const SwNumRule *pNormal = pTxtNd->GetNumRule();
- if (pNormal != pRule)
- {
- pTxtNd->SetAttr
- (SwNumRuleItem(pRule->GetName()));
- }
- }
+ pTxtNd->SetAttr( SwNumRuleItem( pRule->GetName() ) );
}
pTxtNd->SetAttrListLevel(nActLevel);
@@ -1960,16 +1922,16 @@ void SwWW8ImplReader::RegisterNumFmtOnTxtNode(
// Direct application of the list level formatting no longer
// needed for list levels of mode LABEL_ALIGNMENT
bool bApplyListLevelIndentDirectlyAtPara( true );
- if ( pTxtNd->GetNumRule() && nActLevel < MAXLEVEL )
{
- const SwNumFmt& rFmt = pTxtNd->GetNumRule()->Get( nActLevel );
- if ( rFmt.GetPositionAndSpaceMode() ==
- SvxNumberFormat::LABEL_ALIGNMENT )
+ if ( pTxtNd->GetNumRule() && nActLevel < MAXLEVEL )
{
- bApplyListLevelIndentDirectlyAtPara = false;
+ const SwNumFmt& rFmt = pTxtNd->GetNumRule()->Get( nActLevel );
+ if ( rFmt.GetPositionAndSpaceMode() == SvxNumberFormat::LABEL_ALIGNMENT )
+ {
+ bApplyListLevelIndentDirectlyAtPara = false;
+ }
}
}
-
if ( bApplyListLevelIndentDirectlyAtPara )
{
SfxItemSet aListIndent(rDoc.GetAttrPool(), RES_LR_SPACE,
diff --git a/sw/source/filter/ww8/ww8par4.cxx b/sw/source/filter/ww8/ww8par4.cxx
index 0ec81accf785..3b97661761ca 100644
--- a/sw/source/filter/ww8/ww8par4.cxx
+++ b/sw/source/filter/ww8/ww8par4.cxx
@@ -19,11 +19,9 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sw.hxx"
-/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil -*- */
+
#include <doc.hxx>
#include "writerhelper.hxx"
#include <com/sun/star/embed/XClassifiedObject.hpp>
@@ -54,10 +52,10 @@
#include <svtools/filter.hxx>
#include <svx/svdlegacy.hxx>
#include <svx/fmmodel.hxx>
-
#include "ww8scan.hxx"
#include "ww8par.hxx"
#include "ww8par2.hxx" // WWFlyPara::BoxUpWidth()
+#include <drawdoc.hxx>
struct OLE_MFP
{
@@ -516,7 +514,7 @@ void SwWW8ImplReader::Read_CRevisionMark(RedlineType_t eType,
#101578#
It is possible to have a number of date stamps for the created time
of the change, (possibly a word bug) so we must use the "get a full
- list" varient of HasCharSprm and take the last one as the true one.
+ list" variant of HasCharSprm and take the last one as the true one.
*/
std::vector<const sal_uInt8 *> aResult;
bool bIns = (nsRedlineType_t::REDLINE_INSERT == eType);
diff --git a/sw/source/filter/ww8/ww8par5.cxx b/sw/source/filter/ww8/ww8par5.cxx
index cad23eb55cb2..2afa4f1adcfe 100644
--- a/sw/source/filter/ww8/ww8par5.cxx
+++ b/sw/source/filter/ww8/ww8par5.cxx
@@ -406,7 +406,7 @@ long SwWW8ImplReader::Read_Book(WW8PLCFManResult*)
}
//e.g. inserting bookmark around field result, so we need to put
- //it around the entire writer field, as we don't have the seperation
+ //it around the entire writer field, as we don't have the separation
//of field and field result of word, see #i16941#
SwPosition aStart(*pPaM->GetPoint());
if (!maFieldStack.empty())
@@ -706,41 +706,48 @@ sal_uInt16 SwWW8ImplReader::End_Field()
}
}
break;
- // Doing corresponding status management for TOC field, index field, hyperlink field and page reference field
+ // Doing corresponding status management for TOX field, index field, hyperlink field and page reference field
case 13://TOX
case 8://index
- if (mbLoadingTOCCache)
+ if ( mbLoadingTOXCache )
{
- maTOXEndCps.insert(nCP);
- mbLoadingTOCCache = false;
- if ( pPaM->End() &&
- pPaM->End()->nNode.GetNode().GetTxtNode() &&
- pPaM->End()->nNode.GetNode().GetTxtNode()->Len() == 0 )
+ if ( mnEmbeddedTOXLevel > 0 )
{
- JoinNode(*pPaM);
+ --mnEmbeddedTOXLevel;
}
else
{
+ maTOXEndCps.insert( nCP );
+ mbLoadingTOXCache = false;
+ if ( pPaM->End()
+ && pPaM->End()->nNode.GetNode().GetTxtNode()
+ && pPaM->End()->nNode.GetNode().GetTxtNode()->Len() == 0 )
+ {
+ JoinNode( *pPaM );
+ }
+ else
+ {
mbCareLastParaEndInToc = true;
- }
+ }
- if (mpPosAfterTOC)
- {
- *pPaM = *mpPosAfterTOC;
- delete mpPosAfterTOC;
- mpPosAfterTOC = 0;
+ if ( mpPosAfterTOC )
+ {
+ *pPaM = *mpPosAfterTOC;
+ delete mpPosAfterTOC;
+ mpPosAfterTOC = 0;
+ }
}
}
break;
case 37://REF
- if (mbLoadingTOCCache && !mbLoadingTOCHyperlink)
+ if (mbLoadingTOXCache && !mbLoadingTOXHyperlink)
{
pCtrlStck->SetAttr(*pPaM->GetPoint(),RES_TXTATR_INETFMT);
}
break;
case 88:
- if (mbLoadingTOCHyperlink)
- mbLoadingTOCHyperlink = false;
+ if (mbLoadingTOXHyperlink)
+ mbLoadingTOXHyperlink = false;
pCtrlStck->SetAttr(*pPaM->GetPoint(),RES_TXTATR_INETFMT);
break;
case 36:
@@ -1271,7 +1278,7 @@ bookmarks were set with SET or ASK. (See SwWW8FltRefStack)
The other piece of the puzzle is that refs that point to the "location" of the
bookmark will in word actually point to the last location where the bookmark
-was set with SET or ASK, not the actual bookmark. This is only noticable when
+was set with SET or ASK, not the actual bookmark. This is only noticeable when
a document sets the bookmark more than once. This is because word places the
true bookmark at the location of the last set, but the refs will display the
position of the first set before the ref.
@@ -1298,7 +1305,7 @@ the field, which gives the same effect and meaning, to do so we must
get any bookmarks in the field range, and begin them immediately before
the set/ask field, and end them directly afterwards. MapBookmarkVariables
returns an identifier of the bookmark attribute to close after inserting
-the appropiate set/ask field.
+the appropriate set/ask field.
*/
long SwWW8ImplReader::MapBookmarkVariables(const WW8FieldDesc* pF,
String &rOrigName, const String &rData)
@@ -2170,13 +2177,13 @@ eF_ResT SwWW8ImplReader::Read_F_PgRef( WW8FieldDesc*, String& rStr )
const String sName(GetMappedBookmark(sOrigName));
- // loading page reference field in TOC
- if (mbLoadingTOCCache )
+ // loading page reference field in TOX
+ if (mbLoadingTOXCache )
{
// insert page ref representation as plain text --> return FLD_TEXT
// if there is no hyperlink settings for current toc and referenced bookmark is available,
// assign link to current ref area
- if ( !mbLoadingTOCHyperlink && sName.Len() > 0 )
+ if ( !mbLoadingTOXHyperlink && sName.Len() > 0 )
{
// #120879# add cross reference bookmark name prefix, if it matches internal TOC bookmark naming convention
String sBookmarkName;
@@ -2861,38 +2868,6 @@ void lcl_toxMatchACSwitch( SwWW8ImplReader& /*rReader*/,
}
}
-//For all outline styles that are not in the outline numbering add them here as
-//custom extra styles
-bool SwWW8ImplReader::AddExtraOutlinesAsExtraStyles(SwTOXBase& rBase)
-{
- bool bExtras = false;
- //This is the case if the winword outline numbering is set while the
- //writer one is not
- for (sal_uInt16 nI = 0; nI < nColls; ++nI)
- {
- SwWW8StyInf& rSI = pCollA[nI];
- if (rSI.IsOutline())
- {
- const SwTxtFmtColl *pFmt = (const SwTxtFmtColl*)(rSI.pFmt);
- sal_uInt16 nStyleLevel = rSI.nOutlineLevel;
- sal_uInt16 nMaxLevel = rBase.GetLevel();
- if (
- //nStyleLevel != pFmt->GetOutlineLevel() && //#outline level,zhaojianwei
- nStyleLevel != (pFmt->GetAttrOutlineLevel()-1) && //<-end,zhaojianwei
- nStyleLevel < nMaxLevel
- )
- {
- String sStyles(rBase.GetStyleNames(rSI.nOutlineLevel));
- if( sStyles.Len())
- sStyles += TOX_STYLE_DELIMITER;
- sStyles += pFmt->GetName();
- rBase.SetStyleNames(sStyles, rSI.nOutlineLevel);
- bExtras = true;
- }
- }
- }
- return bExtras;
-}
static void EnsureMaxLevelForTemplates(SwTOXBase& rBase)
{
@@ -3024,7 +2999,16 @@ sal_uInt16 lcl_GetMaxValidWordTOCLevel(const SwForm &rForm)
eF_ResT SwWW8ImplReader::Read_F_Tox( WW8FieldDesc* pF, String& rStr )
{
- mbLoadingTOCCache = true;
+ if ( !mbLoadingTOXCache )
+ {
+ mbLoadingTOXCache = true;
+ }
+ else
+ {
+ // Embedded TOX --> continue reading its content, but no further TOX field
+ ++mnEmbeddedTOXLevel;
+ return FLD_TEXT;
+ }
if (pF->nLRes < 3)
return FLD_TEXT; // ignore (#i25440#)
@@ -3369,18 +3353,14 @@ eF_ResT SwWW8ImplReader::Read_F_Tox( WW8FieldDesc* pF, String& rStr )
{
case TOX_CONTENT:
{
- //If we would be created from outlines, either explictly or by default
+ //If we would be created from outlines, either explicitly or by default
//then see if we need extra styles added to the outlines
sal_uInt16 eEffectivelyFrom = eCreateFrom ? eCreateFrom : nsSwTOXElement::TOX_OUTLINELEVEL;
if (eEffectivelyFrom & nsSwTOXElement::TOX_OUTLINELEVEL)
{
- if (AddExtraOutlinesAsExtraStyles(*pBase))
- eCreateFrom |= (nsSwTOXElement::TOX_TEMPLATE | nsSwTOXElement::TOX_OUTLINELEVEL);
-
- // --> FME 2004-12-16 #i19683# Insert a text token " " between the
- // number and entry token. In an ideal world we could handle the
- // tab stop between the number and the entry correctly, but I
- // currently have no clue how to obtain the tab stop position.
+ // #i19683# Insert a text token " " between the number and entry token.
+ // In an ideal world we could handle the tab stop between the number and
+ // the entry correctly, but I currently have no clue how to obtain the tab stop position.
// It is _not_ set at the paragraph style.
SwForm* pForm = 0;
for (sal_uInt16 nI = 0; nI < nColls; ++nI)
@@ -3388,7 +3368,7 @@ eF_ResT SwWW8ImplReader::Read_F_Tox( WW8FieldDesc* pF, String& rStr )
const SwWW8StyInf& rSI = pCollA[nI];
if (rSI.IsOutlineNumbered())
{
- sal_uInt16 nStyleLevel = rSI.nOutlineLevel;
+ sal_uInt16 nStyleLevel = rSI.mnWW8OutlineLevel;
const SwNumFmt& rFmt = rSI.GetOutlineNumrule()->Get( nStyleLevel );
if ( SVX_NUM_NUMBER_NONE != rFmt.GetNumberingType() )
{
@@ -3446,16 +3426,11 @@ eF_ResT SwWW8ImplReader::Read_F_Tox( WW8FieldDesc* pF, String& rStr )
for(sal_uInt16 nLevel = 1; nLevel <= nEnd; ++nLevel)
{
SwFormTokens aPattern = aOldForm.GetPattern(nLevel);
-
- SwFormTokens::iterator new_end=remove_if(aPattern.begin(), aPattern.end(),
- SwFormTokenEqualToFormTokenType(TOKEN_ENTRY_NO));
-
- aPattern.erase (new_end, aPattern.end() ); // #124710#: table index imported with wrong page number format
-
- aForm.SetPattern(nLevel, aPattern);
-
- aForm.SetTemplate( nLevel,
- aOldForm.GetTemplate(nLevel));
+ SwFormTokens::iterator new_end =
+ remove_if(aPattern.begin(), aPattern.end(), SwFormTokenEqualToFormTokenType(TOKEN_ENTRY_NO));
+ aPattern.erase(new_end, aPattern.end() ); // #124710#: table index imported with wrong page number format
+ aForm.SetPattern( nLevel, aPattern );
+ aForm.SetTemplate( nLevel, aOldForm.GetTemplate(nLevel) );
}
// <- #i21237#
@@ -3475,17 +3450,10 @@ eF_ResT SwWW8ImplReader::Read_F_Tox( WW8FieldDesc* pF, String& rStr )
break;
} // ToxBase fertig
- // no Update of TOC anymore as its actual content is imported and kept.
- //rDoc.SetUpdateTOX(true);
-
- // #i21237#
- // propagate tab stops from paragraph styles used in TOX to
- // patterns of the TOX
- pBase->AdjustTabStops(rDoc, sal_True);
-
- //#i10028# inserting a toc implicltly acts like a parabreak
- //in word and writer
+ // #i21237# - propagate tab stops from paragraph styles used in TOX to patterns of the TOX
+ pBase->AdjustTabStops( rDoc );
+ //#i10028# inserting a toc implicltly acts like a parabreak in word and writer
if ( pPaM->End() &&
pPaM->End()->nNode.GetNode().GetTxtNode() &&
pPaM->End()->nNode.GetNode().GetTxtNode()->Len() != 0 )
@@ -3622,9 +3590,9 @@ eF_ResT SwWW8ImplReader::Read_F_Hyperlink( WW8FieldDesc* /*pF*/, String& rStr )
pReffedStck->aReferencedTOCBookmarks.insert( sMark );
}
- if (mbLoadingTOCCache)
+ if (mbLoadingTOXCache)
{
- mbLoadingTOCHyperlink = true;//on loading a TOC field nested hyperlink field
+ mbLoadingTOXHyperlink = true;//on loading a TOX field nested hyperlink field
}
}
break;
@@ -3651,8 +3619,8 @@ eF_ResT SwWW8ImplReader::Read_F_Hyperlink( WW8FieldDesc* /*pF*/, String& rStr )
( sURL += INET_MARK_TOKEN ) += sMark;
SwFmtINetFmt aURL( sURL, sTarget );
- // If on loading TOC field, change the default style into the "index link"
- if (mbLoadingTOCCache)
+ // If on loading TOX field, change the default style into the "index link"
+ if (mbLoadingTOXCache)
{
String sLinkStyle = String::CreateFromAscii("Index Link");
sal_uInt16 nPoolId =
diff --git a/sw/source/filter/ww8/ww8par6.cxx b/sw/source/filter/ww8/ww8par6.cxx
index 2329ea99ea49..36751a7cb300 100644
--- a/sw/source/filter/ww8/ww8par6.cxx
+++ b/sw/source/filter/ww8/ww8par6.cxx
@@ -277,8 +277,9 @@ void SwWW8ImplReader::SetDocumentGrid(SwFrmFmt &rFmt, const wwSection &rSection)
sal_uInt32 nCharWidth=240;
for (sal_uInt16 nI = 0; nI < pStyles->GetCount(); ++nI)
{
- if (pCollA[nI].bValid && pCollA[nI].pFmt &&
- pCollA[nI].GetWWStyleId() == 0)
+ if (pCollA[nI].bValid
+ && pCollA[nI].pFmt != NULL
+ && pCollA[nI].IsWW8BuiltInDefaultStyle())
{
nCharWidth = ItemGet<SvxFontHeightItem>(*(pCollA[nI].pFmt),
RES_CHRATR_CJK_FONTSIZE).GetHeight();
@@ -921,7 +922,14 @@ void wwSectionManager::CreateSep(const long nTxtPos, bool /*bMustHaveBreak*/)
// sprmSFBiDi
aNewSection.maSep.fBiDi = eVer >= ww::eWW8 ? ReadBSprm(pSep, 0x3228, 0) : 0;
+ // Reading section property sprmSCcolumns - one less than the number of columns in the section.
+ // It must be less than MAX_NO_OF_SEP_COLUMNS according the WW8 specification.
aNewSection.maSep.ccolM1 = ReadSprm(pSep, pIds[3], 0 );
+ if ( aNewSection.maSep.ccolM1 >= MAX_NO_OF_SEP_COLUMNS )
+ {
+ // fallback to one column
+ aNewSection.maSep.ccolM1 = 0;
+ }
//sprmSDxaColumns - Default-Abstand 1.25 cm
aNewSection.maSep.dxaColumns = ReadUSprm( pSep, pIds[4], 708 );
@@ -932,34 +940,36 @@ void wwSectionManager::CreateSep(const long nTxtPos, bool /*bMustHaveBreak*/)
if (eVer >= ww::eWW6)
{
// sprmSFEvenlySpaced
- aNewSection.maSep.fEvenlySpaced =
- ReadBSprm(pSep, (eVer <= ww::eWW7 ? 138 : 0x3005), 1) ? true : false;
+ aNewSection.maSep.fEvenlySpaced = ReadBSprm( pSep, ( eVer <= ww::eWW7 ? 138 : 0x3005 ), 1 ) ? true : false;
- if (aNewSection.maSep.ccolM1 > 0 && !aNewSection.maSep.fEvenlySpaced)
+ if ( aNewSection.maSep.ccolM1 > 0 && !aNewSection.maSep.fEvenlySpaced )
{
- aNewSection.maSep.rgdxaColumnWidthSpacing[0] = 0;
- int nCols = aNewSection.maSep.ccolM1 + 1;
- int nIdx = 0;
- for (int i = 0; i < nCols; ++i)
+ int nColumnDataIdx = 0;
+ aNewSection.maSep.rgdxaColumnWidthSpacing[nColumnDataIdx] = 0;
+
+ const sal_uInt16 nColumnWidthSprmId = ( eVer <= ww::eWW7 ? 136 : 0xF203 );
+ const sal_uInt16 nColumnSpacingSprmId = ( eVer <= ww::eWW7 ? 137 : 0xF204 );
+ const sal_uInt8 nColumnCount = static_cast< sal_uInt8 >(aNewSection.maSep.ccolM1 + 1);
+ for ( sal_uInt8 nColumn = 0; nColumn < nColumnCount; ++nColumn )
{
//sprmSDxaColWidth
- const sal_uInt8* pSW = pSep->HasSprm( (eVer <= ww::eWW7 ? 136 : 0xF203), sal_uInt8( i ) );
+ const sal_uInt8* pSW = pSep->HasSprm( nColumnWidthSprmId, nColumn );
- ASSERT( pSW, "+Sprm 136 (bzw. 0xF203) (ColWidth) fehlt" );
- sal_uInt16 nWidth = pSW ? SVBT16ToShort(pSW + 1) : 1440;
+ ASSERT( pSW != NULL, "+Sprm 136 (bzw. 0xF203) (ColWidth) fehlt" );
+ sal_uInt16 nWidth = pSW != NULL ? SVBT16ToShort( pSW + 1 ) : 1440;
- aNewSection.maSep.rgdxaColumnWidthSpacing[++nIdx] = nWidth;
+ aNewSection.maSep.rgdxaColumnWidthSpacing[++nColumnDataIdx] = nWidth;
- if (i < nCols-1)
+ if ( nColumn < nColumnCount - 1 )
{
//sprmSDxaColSpacing
- const sal_uInt8* pSD = pSep->HasSprm( (eVer <= ww::eWW7 ? 137 : 0xF204), sal_uInt8( i ) );
+ const sal_uInt8* pSD = pSep->HasSprm( nColumnSpacingSprmId, nColumn );
ASSERT( pSD, "+Sprm 137 (bzw. 0xF204) (Colspacing) fehlt" );
- if( pSD )
+ if ( pSD )
{
- nWidth = SVBT16ToShort(pSD + 1);
- aNewSection.maSep.rgdxaColumnWidthSpacing[++nIdx] = nWidth;
+ nWidth = SVBT16ToShort( pSD + 1 );
+ aNewSection.maSep.rgdxaColumnWidthSpacing[++nColumnDataIdx] = nWidth;
}
}
}
@@ -1569,7 +1579,7 @@ bool SwWW8ImplReader::SetBorder(SvxBoxItem& rBox, const WW8_BRC* pbrc,
nSetBorders has a bit set for each location that a sprm set a
border, so with a sprm set, but no border, then disable the
- appropiate border
+ appropriate border
*/
rBox.SetLine( 0, aIdArr[ i+1 ] );
}
@@ -1946,7 +1956,7 @@ WW8SwFlyPara::WW8SwFlyPara( SwPaM& rPaM,
/*
#95905#, #83307# seems to have gone away now, so reenable parallel
wrapping support for frames in headers/footers. I don't know if we truly
- have an explictly specified behaviour for these circumstances.
+ have an explicitly specified behaviour for these circumstances.
*/
nHeight = rWW.nSp45;
@@ -2600,12 +2610,12 @@ void SwWW8ImplReader::StopApo()
stack of attributes normally only places them into the document when
the current insertion point has passed them by. Otherwise the end
point of the attribute gets pushed along with the insertion point. The
- insertion point is moved and the properties commited during
+ insertion point is moved and the properties committed during
MoveOutsideFly. We also may want to remove the final paragraph in the
frame, but we need to wait until the properties for that frame text
- have been commited otherwise they will be lost. So we first get a
+ have been committed otherwise they will be lost. So we first get a
handle to the last the filter inserted. After the attributes are
- commited, if that paragraph exists we join it with the para after it
+ committed, if that paragraph exists we join it with the para after it
that comes with the frame by default so that as normal we don't end up
with one more paragraph than we wanted.
*/
@@ -2854,20 +2864,34 @@ void SwWW8ImplReader::Read_PicLoc(sal_uInt16 , const sal_uInt8* pData, short nLe
}
}
+
void SwWW8ImplReader::Read_POutLvl(sal_uInt16, const sal_uInt8* pData, short nLen )
{
- if (pAktColl && (0 < nLen))
+ if ( nLen < 0 )
{
- if (SwWW8StyInf* pSI = GetStyle(nAktColl))
+ pCtrlStck->SetAttr( *pPaM->GetPoint(), RES_PARATR_OUTLINELEVEL );
+ return;
+ }
+
+ if ( pAktColl != NULL )
+ {
+ SwWW8StyInf* pSI = GetStyle( nAktColl );
+ if ( pSI != NULL )
{
- pSI->nOutlineLevel = static_cast< sal_uInt8 >(
- ( (1 <= pSI->GetWWStyleId()) && (9 >= pSI->GetWWStyleId()) )
- ? pSI->GetWWStyleId()-1
- : (pData ? *pData : 0) );
+ pSI->mnWW8OutlineLevel =
+ static_cast< sal_uInt8 >( ( pData ? *pData : 0 ) );
+ NewAttr( SfxUInt16Item( RES_PARATR_OUTLINELEVEL, SwWW8StyInf::WW8OutlineLevelToOutlinelevel( pSI->mnWW8OutlineLevel ) ) );
}
}
+ else if ( pPaM != NULL )
+ {
+ const sal_uInt8 nOutlineLevel =
+ SwWW8StyInf::WW8OutlineLevelToOutlinelevel( static_cast< sal_uInt8 >( ( pData ? *pData : 0 ) ) );
+ NewAttr( SfxUInt16Item( RES_PARATR_OUTLINELEVEL, nOutlineLevel ) );
+ }
}
+
void SwWW8ImplReader::Read_Symbol(sal_uInt16, const sal_uInt8* pData, short nLen )
{
if( !bIgnoreText )
@@ -2940,7 +2964,7 @@ void SwWW8ImplReader::Read_BoldUsw( sal_uInt16 nId, const sal_uInt8* pData, shor
nI = nContigiousWestern; // The out of sequence western id
else
{
- // The contigious western ids
+ // The contiguous western ids
if (eVersion <= ww::eWW2)
nI = static_cast< sal_uInt8 >(nId - 60);
else if (eVersion < ww::eWW8)
@@ -3431,7 +3455,7 @@ void SwWW8ImplReader::Read_DoubleLine_Rotate( sal_uInt16, const sal_uInt8* pData
void SwWW8ImplReader::Read_TxtColor( sal_uInt16, const sal_uInt8* pData, short nLen )
{
- //Has newer colour varient, ignore this old varient
+ //Has newer colour variant, ignore this old variant
if (!bVer67 && pPlcxMan && pPlcxMan->GetChpPLCF()->HasSprm(0x6870))
return;
@@ -3900,11 +3924,11 @@ void SwWW8ImplReader::Read_CColl( sal_uInt16, const sal_uInt8* pData, short nLen
|| pCollA[nId].bColl ) // oder Para-Style ?
return; // dann ignorieren
- // if current on loading a TOC field, and current trying to apply a hyperlink character style,
- // just ignore. For the hyperlinks inside TOC in MS Word is not same with a common hyperlink
+ // if current on loading a TOX field, and current trying to apply a hyperlink character style,
+ // just ignore. For the hyperlinks inside TOX in MS Word is not same with a common hyperlink
// Character styles: without underline and blue font color. And such type style will be applied in others
// processes.
- if (mbLoadingTOCCache && pCollA[nId].GetWWStyleId() == ww::stiHyperlink)
+ if (mbLoadingTOXCache && pCollA[nId].GetWWStyleId() == ww::stiHyperlink)
{
return;
}
@@ -3937,7 +3961,7 @@ void SwWW8ImplReader::Read_FontKern( sal_uInt16, const sal_uInt8* , short nLen )
void SwWW8ImplReader::Read_CharShadow( sal_uInt16, const sal_uInt8* pData, short nLen )
{
- //Has newer colour varient, ignore this old varient
+ //Has newer colour variant, ignore this old variant
if (!bVer67 && pPlcxMan && pPlcxMan->GetChpPLCF()->HasSprm(0xCA71))
return;
diff --git a/sw/source/filter/ww8/ww8scan.cxx b/sw/source/filter/ww8/ww8scan.cxx
index 12052d8bf316..72c77f0273a3 100644
--- a/sw/source/filter/ww8/ww8scan.cxx
+++ b/sw/source/filter/ww8/ww8scan.cxx
@@ -5001,7 +5001,7 @@ void WW8PLCFMan::AdvSprm(short nIdx, bool bStart)
settings its end to the current start, then store the starting
position of the current range to clipstart. The pPcd sprms
will end as normal (albeit earlier than originally expected),
- and the existance of a clipstart will force the pPcd iterater
+ and the existence of a clipstart will force the pPcd iterater
to reread the current set of sprms instead of advancing to its
next set. Then the clipstart will be set as the starting
position which will force them to be applied directly after
@@ -5033,7 +5033,7 @@ void WW8PLCFMan::AdvNoSprm(short nIdx, bool bStart)
{
/*
For the case of a piece table we slave the piece table attribute iterator
- to the piece table and access it through that only. They are two seperate
+ to the piece table and access it through that only. They are two separate
structures, but act together as one logical one. The attributes only go
to the next entry when the piece changes
*/
@@ -6457,7 +6457,7 @@ WW8Fonts::WW8Fonts( SvStream& rSt, WW8Fib& rFib )
break;
nMax++;
nLeft -= nNextSiz;
- if( nLeft < 1 ) // can we read the given ammount of bytes ?
+ if( nLeft < 1 ) // can we read the given amount of bytes ?
break;
// increase p by nNextSiz Bytes
p = (WW8_FFN *)( ( (sal_uInt8*)p ) + nNextSiz );
@@ -6626,9 +6626,9 @@ WW8PLCF_HdFt::WW8PLCF_HdFt( SvStream* pSt, WW8Fib& rFib, WW8Dop& rDop )
footnote *and endnote!!* seperator,continuation seperator, and
continuation notice entry, the documentation does not mention the
endnote seperators, the documentation also gets the index numbers
- backwards when specifiying which bits to test. The bottom six bits
+ backwards when specifying which bits to test. The bottom six bits
of this value must be tested and skipped over. Each section's
- grpfIhdt is then tested for the existence of the appropiate headers
+ grpfIhdt is then tested for the existence of the appropriate headers
and footers, at the end of each section the nIdxOffset must be updated
to point to the beginning of the next section's group of headers and
footers in this PLCF, UpdateIndex does that task.
@@ -7461,7 +7461,7 @@ sal_uInt16 wwSprmParser::GetSprmTailLen(sal_uInt16 nId, const sal_uInt8* pSprm)
nL = static_cast< sal_uInt16 >(SVBT16ToShort( &pSprm[1 + mnDelta] ) + aSprm.nLen - 1);
break;
default:
- ASSERT(!this, "Unknown sprm varient");
+ ASSERT(!this, "Unknown sprm variant");
break;
}
break;
diff --git a/sw/source/filter/ww8/ww8scan.hxx b/sw/source/filter/ww8/ww8scan.hxx
index 2ca49778aa62..23538d34e910 100644
--- a/sw/source/filter/ww8/ww8scan.hxx
+++ b/sw/source/filter/ww8/ww8scan.hxx
@@ -73,7 +73,7 @@ namespace SL
}
/**
- winword strings are typically Belt and Braces strings preceeded with a
+ winword strings are typically Belt and Braces strings preceded with a
pascal style count, and ending with a c style 0 terminator. 16bit chars
and count for ww8+ and 8bit chars and count for ww7-. The count and 0
can be checked for integrity to catch errors (e.g. lotus created documents)
@@ -483,7 +483,7 @@ public:
sal_uInt8* mpData;
sal_uInt16 mnLen;
- sal_uInt16 mnIStd; // only for Fkp.Papx (actualy Style-Nr)
+ sal_uInt16 mnIStd; // only for Fkp.Papx (actually Style-Nr)
bool mbMustDelete;
explicit Entry(WW8_FC nFC) : mnFC(nFC), mpData(0), mnLen(0),
@@ -1564,15 +1564,15 @@ public:
sal_uInt16 fWriteReservation : 1;
sal_uInt16 fLockRev : 1; // when 1, the current revision marking state is locked
sal_uInt16 fEmbedFonts : 1; // when 1, document contains embedded True Type fonts
- // compatability options
+ // compatibility options
sal_uInt16 copts_fNoTabForInd : 1; // when 1, donïżœt add automatic tab stops for hanging indent
sal_uInt16 copts_fNoSpaceRaiseLower : 1; // when 1, donïżœt add extra space for raised or lowered characters
- sal_uInt16 copts_fSupressSpbfAfterPgBrk : 1; // when 1, supress the paragraph Space Before and Space After options after a page break
+ sal_uInt16 copts_fSupressSpbfAfterPgBrk : 1; // when 1, suppress the paragraph Space Before and Space After options after a page break
sal_uInt16 copts_fWrapTrailSpaces : 1; // when 1, wrap trailing spaces at the end of a line to the next line
sal_uInt16 copts_fMapPrintTextColor : 1; // when 1, print colors as black on non-color printers
sal_uInt16 copts_fNoColumnBalance : 1; // when 1, donïżœt balance columns for Continuous Section starts
sal_uInt16 copts_fConvMailMergeEsc : 1;
- sal_uInt16 copts_fSupressTopSpacing : 1; // when 1, supress extra line spacing at top of page
+ sal_uInt16 copts_fSupressTopSpacing : 1; // when 1, suppress extra line spacing at top of page
sal_uInt16 copts_fOrigWordTableRules : 1; // when 1, combine table borders like Word 5.x for the Macintosh
sal_uInt16 copts_fTransparentMetafiles : 1; // when 1, donïżœt blank area between metafile pictures
sal_uInt16 copts_fShowBreaksInFrames : 1; // when 1, show hard page or column breaks in frames
@@ -1625,7 +1625,7 @@ public:
/*
bei nFib >= 103 gehts weiter:
*/
- sal_uInt32 fNoTabForInd :1; // see above in compatability options
+ sal_uInt32 fNoTabForInd :1; // see above in compatibility options
sal_uInt32 fNoSpaceRaiseLower :1; // see above
sal_uInt32 fSupressSpbfAfterPageBreak :1; // see above
sal_uInt32 fWrapTrailSpaces :1; // see above
diff --git a/sw/source/filter/ww8/ww8struc.hxx b/sw/source/filter/ww8/ww8struc.hxx
index 7591e04ea758..602396521609 100644
--- a/sw/source/filter/ww8/ww8struc.hxx
+++ b/sw/source/filter/ww8/ww8struc.hxx
@@ -818,7 +818,7 @@ struct WW8_PCD
// properties of the piece.
};
-// AnnoTation Refernce Descriptor (ATRD)
+// AnnoTation References Descriptor (ATRD)
struct WW8_ATRD // fuer die 8-Version
{
SVBT16 xstUsrInitl[ 10 ]; // pascal-style String holding initials
@@ -968,6 +968,9 @@ struct WW8_WKB
# pragma pack()
#endif
+// Maximum number of columns according the WW8 specification
+static const sal_uInt8 MAX_NO_OF_SEP_COLUMNS = 44;
+
struct SEPr
{
SEPr();
@@ -1027,7 +1030,7 @@ struct SEPr
sal_uInt32 dzaGutter;
sal_uInt32 dyaHdrTop;
sal_uInt32 dyaHdrBottom;
- sal_Int16 ccolM1;
+ sal_Int16 ccolM1; // have to be less than MAX_NO_OF_SEP_COLUMNS according the WW8 specification
sal_Int8 fEvenlySpaced;
sal_Int8 reserved3;
sal_uInt8 fBiDi;
@@ -1035,7 +1038,13 @@ struct SEPr
sal_uInt8 fRTLGutter;
sal_uInt8 fRTLAlignment;
sal_Int32 dxaColumns;
- sal_Int32 rgdxaColumnWidthSpacing[89];
+
+ // Fixed array - two entries for each SEP column to store width of column and spacing to next column.
+ // At odd index values [1,3,5,...] the column widths are stored.
+ // At even index values [2,4,6,...] the spacings to the next columns are stored.
+ // Value at index 0 is initialized with 0 and used for easier interation on the array
+ sal_Int32 rgdxaColumnWidthSpacing[MAX_NO_OF_SEP_COLUMNS*2 + 1];
+
sal_Int32 dxaColumnWidth;
sal_uInt8 dmOrientFirst;
sal_uInt8 fLayout;
diff --git a/sw/source/filter/xml/swxml.cxx b/sw/source/filter/xml/swxml.cxx
index d9dba00051e0..86bc243962b9 100644
--- a/sw/source/filter/xml/swxml.cxx
+++ b/sw/source/filter/xml/swxml.cxx
@@ -19,14 +19,9 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sw.hxx"
-
-
-
#define _SVSTDARR_STRINGS
#include <rsc/rscsfx.hxx>
#include <tools/urlobj.hxx>
@@ -57,7 +52,6 @@
#include <svx/xmleohlp.hxx>
#include <comphelper/genericpropertyset.hxx>
#include <rtl/logfile.hxx>
-
#include <sfx2/frame.hxx>
#include <unotools/ucbstreamhelper.hxx>
#include <swerror.h>
@@ -69,34 +63,22 @@
#include <swmodule.hxx>
#include <SwXMLSectionList.hxx>
#include <svx/svdlegacy.hxx>
-
#include <statstr.hrc>
-
-// --> OD 2005-09-06 #i44177#
#include <SwStyleNameMapper.hxx>
#include <poolfmt.hxx>
#include <numrule.hxx>
#include <paratr.hxx>
-// <--
-
-// --> OD 2006-02-22 #b6382898#
#include <svx/svdmodel.hxx>
#include <svx/svdpage.hxx>
#include <svx/svditer.hxx>
#include <svx/svdoole2.hxx>
#include <svx/svdograf.hxx>
-// <--
-
-// --> OD 2008-12-17 #i70748#
#include <sfx2/docfilt.hxx>
-// <--
-
#include <istyleaccess.hxx>
#define LOGFILE_AUTHOR "mb93740"
-
#include <sfx2/DocumentMetadataAccess.hxx>
#include <svx/fmmodel.hxx>
-
+#include <drawdoc.hxx>
using namespace ::com::sun::star;
using namespace ::com::sun::star::uno;
@@ -338,7 +320,7 @@ sal_Int32 ReadThroughComponent(
if (!bContainsStream )
{
// stream name not found! Then try the compatibility name.
- // if no stream can be opened, return immediatly with OK signal
+ // if no stream can be opened, return immediately with OK signal
// do we even have an alternative name?
if ( NULL == pCompatibilityStreamName )
@@ -406,7 +388,7 @@ sal_Int32 ReadThroughComponent(
return ERR_SWG_READ_ERROR;
}
-// --> OD 2005-09-06 #i44177#
+
void lcl_AdjustOutlineStylesForOOo( SwDoc& _rDoc )
{
// array containing the names of the default outline styles ('Heading 1',
@@ -465,18 +447,15 @@ void lcl_AdjustOutlineStylesForOOo( SwDoc& _rDoc )
const SwNumRule* pOutlineRule = _rDoc.GetOutlineNumRule();
for ( sal_uInt8 i = 0; i < MAXLEVEL; ++i )
{
- // --> OD 2007-01-11 #i73361#
+ // #i73361#
// Do not change assignment of already created default outline style
// to a certain outline level.
-// if ( aCreatedDefaultOutlineStyles[ i ] != 0 && !aOutlineLevelAssigned[ i ] )
if ( !aOutlineLevelAssigned[ i ] &&
aCreatedDefaultOutlineStyles[ i ] != 0 &&
! aCreatedDefaultOutlineStyles[ i ]->IsAssignedToListLevelOfOutlineStyle() )
- // <--
{
// apply outline level at created default outline style
- //aCreatedDefaultOutlineStyles[ i ]->SetOutlineLevel( i );
- aCreatedDefaultOutlineStyles[ i ]->AssignToListLevelOfOutlineStyle(i);//#outline level added by zhaojianwei
+ aCreatedDefaultOutlineStyles[i]->AssignToListLevelOfOutlineStyle( i ); //#outline level added by zhaojianwei
// apply outline numbering rule, if none is set.
const SfxPoolItem& rItem =
@@ -490,9 +469,8 @@ void lcl_AdjustOutlineStylesForOOo( SwDoc& _rDoc )
}
}
-// <--
-// --> OD 2006-02-22 #b6382898#
+
void lcl_ConvertSdrOle2ObjsToSdrGrafObjs( SwDoc& _rDoc )
{
if ( _rDoc.GetDrawModel() &&
@@ -535,7 +513,6 @@ void lcl_ConvertSdrOle2ObjsToSdrGrafObjs( SwDoc& _rDoc )
}
}
}
-// <--
sal_uLong XMLReader::Read( SwDoc &rDoc, const String& rBaseURL, SwPaM &rPaM, const String & rName )
diff --git a/sw/source/filter/xml/xmlexp.cxx b/sw/source/filter/xml/xmlexp.cxx
index 037d69384cd3..0fcc51c4979a 100644
--- a/sw/source/filter/xml/xmlexp.cxx
+++ b/sw/source/filter/xml/xmlexp.cxx
@@ -19,8 +19,6 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sw.hxx"
@@ -59,12 +57,10 @@
#include <editeng/unolingu.hxx>
#include <editeng/forbiddencharacterstable.hxx>
#include <ForbiddenCharactersEnum.hxx>
-
-// for locking SolarMutex: svapp + mutex
#include <vcl/svapp.hxx>
#include <vos/mutex.hxx>
-
#include <pausethreadstarting.hxx>
+#include <drawdoc.hxx>
using ::rtl::OUString;
using namespace ::com::sun::star;
@@ -322,6 +318,15 @@ sal_uInt32 SwXMLExport::exportDoc( enum XMLTokenEnum eClass )
}
}
+ // TTTT: Not needed for aw080, always updated
+ // if((getExportFlags() & (EXPORT_MASTERSTYLES | EXPORT_CONTENT)) != 0)
+ // {
+ // //Auf die Korrektheit der OrdNums sind wir schon angewiesen.
+ // SwDrawModel* pModel = pDoc->GetDrawModel();
+ // if(pModel)
+ // pModel->GetPage(0)->RecalcObjOrdNums();
+ // }
+
// adjust document class (eClass)
if (pDoc->get(IDocumentSettingAccess::GLOBAL_DOCUMENT))
{
diff --git a/sw/source/filter/xml/xmlimp.cxx b/sw/source/filter/xml/xmlimp.cxx
index b104923237e4..07a7f61a8bb9 100644
--- a/sw/source/filter/xml/xmlimp.cxx
+++ b/sw/source/filter/xml/xmlimp.cxx
@@ -19,8 +19,6 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sw.hxx"
@@ -61,15 +59,13 @@
#include <tools/diagnose_ex.h>
#include <hash_set>
#include <stringhash.hxx>
-
-// for locking SolarMutex: svapp + mutex
#include <vcl/svapp.hxx>
#include <vos/mutex.hxx>
#include <unotxdoc.hxx> // for initXForms()
-
#include <xmloff/xmlmetai.hxx>
#include <xmloff/xformsimport.hxx>
#include <svx/fmmodel.hxx>
+#include <drawdoc.hxx>
using ::rtl::OUString;
@@ -744,7 +740,7 @@ void SwXMLImport::startDocument( void )
// <--
// SJ: #i49801# locking the modell to disable repaints
- SdrModel* pDrawModel = pDoc->GetDrawModel();
+ SwDrawModel* pDrawModel = pDoc->GetDrawModel();
if ( pDrawModel )
pDrawModel->setLock( sal_True );
@@ -950,7 +946,7 @@ void SwXMLImport::endDocument( void )
// SJ: #i49801# -> now permitting repaints
if ( pDoc )
{
- SdrModel* pDrawModel = pDoc->GetDrawModel();
+ SwDrawModel* pDrawModel = pDoc->GetDrawModel();
if ( pDrawModel )
pDrawModel->setLock( sal_False );
}
@@ -1407,7 +1403,7 @@ void SwXMLImport::SetConfigurationSettings(const Sequence < PropertyValue > & aC
// SO8. Unfortunately, only part of it and by using the same compatibility option
// like in SO8. Therefore documents generated with SO7pp4, containing
// numbered paragraphs with first line indent differ between SO7pp4 and
- // SO8. In order to fix this for SO8pp1, I introduce a new compatiblity
+ // SO8. In order to fix this for SO8pp1, I introduce a new compatibility
// flag 'bIgnoreFirstLineIndentInNumbering'. This flag has to be set for all
// documents < SO8, but not for SO8. So if the property is not present, the
// flag will be set to 'true'. SO8 documents surely have the
diff --git a/sw/source/filter/xml/xmlitmap.hxx b/sw/source/filter/xml/xmlitmap.hxx
index 843f8723cf0c..4bc737e11345 100644
--- a/sw/source/filter/xml/xmlitmap.hxx
+++ b/sw/source/filter/xml/xmlitmap.hxx
@@ -48,14 +48,14 @@ namespace rtl { class OUString; }
struct SvXMLItemMapEntry
{
- sal_uInt16 nNameSpace; // declares the Namespace in wich this item
+ sal_uInt16 nNameSpace; // declares the Namespace in which this item
// exists
enum ::xmloff::token::XMLTokenEnum eLocalName;
// the local name for the item inside
// the Namespace (as an XMLTokenEnum)
sal_uInt16 nWhichId; // the WichId to identify the item
// in the pool
- sal_uInt32 nMemberId; // the memberid specifies wich part
+ sal_uInt32 nMemberId; // the memberid specifies which part
// of the item should be imported or
// exported with this Namespace
// and localName
diff --git a/sw/source/filter/xml/xmltbli.cxx b/sw/source/filter/xml/xmltbli.cxx
index 504a34886730..8b4c1d785bf3 100644
--- a/sw/source/filter/xml/xmltbli.cxx
+++ b/sw/source/filter/xml/xmltbli.cxx
@@ -2525,7 +2525,7 @@ void SwXMLTableContext::_MakeTable( SwTableBox *pBox )
sal_Int32 nExtraRel = nRelWidth - (nRelCols * nMinRelColWidth);
// The absolute space that may be distributed in addition to
- // minumum widthed columns.
+ // minimum widthed columns.
sal_Int32 nMinAbs = nRelCols * MINLAY;
sal_Int32 nExtraAbs =
nAbsForRelWidth > nMinAbs ? nAbsForRelWidth - nMinAbs : (sal_Int32)0L;
diff --git a/sw/source/filter/xml/xmltexte.cxx b/sw/source/filter/xml/xmltexte.cxx
index 84c980f1d92d..edc81d7383e4 100644
--- a/sw/source/filter/xml/xmltexte.cxx
+++ b/sw/source/filter/xml/xmltexte.cxx
@@ -211,31 +211,33 @@ SwXMLTextParagraphExport::~SwXMLTextParagraphExport()
}
void SwXMLTextParagraphExport::setTextEmbeddedGraphicURL(
- const Reference < XPropertySet >& rPropSet,
- OUString& rURL) const
-{
- if( !rURL.getLength() )
+ const Reference< XPropertySet >& rPropSet,
+ OUString& rURL ) const
+ {
+ if ( !rURL.getLength() )
return;
SwGrfNode *pGrfNd = GetNoTxtNode( rPropSet )->GetGrfNode();
- if( !pGrfNd->IsGrfLink() )
+ if ( !pGrfNd->IsGrfLink() )
{
- String aNewURL( RTL_CONSTASCII_STRINGPARAM("vnd.sun.star.Package:") );
- aNewURL += String(rURL);
- pGrfNd->SetNewStreamName( aNewURL );
+ // Apply new embedded stream name, only if graphic node already has one.
+ // - The saving of recovery information triggers this method, but for a newly created
+ // document the new embedded stream name shall not be applied.
+ // - The saving of a newly created document to own format (ODF) triggers this method,
+ // but the embedded stream name is not needed as its original inserted data is still in use.
+ if ( pGrfNd->HasEmbeddedStreamName() )
+ {
+ String aNewURL( RTL_CONSTASCII_STRINGPARAM( "vnd.sun.star.Package:" ) );
+ aNewURL += String( rURL );
+ pGrfNd->ApplyNewEmbeddedStreamName( aNewURL );
+ }
// #i15411# save-as will swap all graphics in; we need to swap
// them out again, to prevent excessive memory use
pGrfNd->SwapOut();
}
}
-/*
-static void lcl_addParam ( SvXMLExport &rExport, const SvCommand &rCommand )
-{
- rExport.AddAttribute( XML_NAMESPACE_DRAW, XML_NAME, rCommand.GetCommand() );
- rExport.AddAttribute( XML_NAMESPACE_DRAW, XML_VALUE, rCommand.GetArgument() );
- SvXMLElementExport aElem( rExport, XML_NAMESPACE_DRAW, XML_PARAM, sal_False, sal_True );
-}*/
+
static void lcl_addURL ( SvXMLExport &rExport, const String &rURL,
sal_Bool bToRel = sal_True )
diff --git a/sw/source/ui/app/docsh.cxx b/sw/source/ui/app/docsh.cxx
index 39b6b06d7b07..80baf675bf44 100644
--- a/sw/source/ui/app/docsh.cxx
+++ b/sw/source/ui/app/docsh.cxx
@@ -172,7 +172,7 @@ Reader* SwDocShell::StartConvertFrom(SfxMedium& rMedium, SwReader** ppRdr,
*ppRdr = pPaM ? new SwReader( rMedium, aFileName, *pPaM ) :
pCrsrShell ?
new SwReader( rMedium, aFileName, *pCrsrShell->GetCrsr() )
- : new SwReader( rMedium, aFileName, pDoc );
+ : new SwReader( rMedium, aFileName, mpDoc );
}
else
return 0;
@@ -206,7 +206,7 @@ Reader* SwDocShell::StartConvertFrom(SfxMedium& rMedium, SwReader** ppRdr,
// #i30171# set the UpdateDocMode at the SwDocShell
SFX_ITEMSET_ARG( rMedium.GetItemSet(), pUpdateDocItem, SfxUInt16Item, SID_UPDATEDOCMODE );
- nUpdateDocMode = pUpdateDocItem ? pUpdateDocItem->GetValue() : document::UpdateDocMode::NO_UPDATE;
+ mnUpdateDocMode = pUpdateDocItem ? pUpdateDocItem->GetValue() : document::UpdateDocMode::NO_UPDATE;
if( pFlt->GetDefaultTemplate().Len() )
pRead->SetTemplateName( pFlt->GetDefaultTemplate() );
@@ -250,26 +250,26 @@ sal_Bool SwDocShell::ConvertFrom( SfxMedium& rMedium )
pRdr->GetDoc()->set(IDocumentSettingAccess::HTML_MODE, dynamic_cast< SwWebDocShell* >(this));
- /* #106748# Restore the pool default if reading a saved document. */
- pDoc->RemoveAllFmtLanguageDependencies();
+ // Restore the pool default if reading a saved document.
+ mpDoc->RemoveAllFmtLanguageDependencies();
sal_uLong nErr = pRdr->Read( *pRead );
// Evtl. ein altes Doc weg
- if ( pDoc != pRdr->GetDoc() )
+ if ( mpDoc != pRdr->GetDoc() )
{
- if( pDoc )
+ if( mpDoc )
RemoveLink();
- pDoc = pRdr->GetDoc();
+ mpDoc = pRdr->GetDoc();
AddLink();
if ( !mxBasePool.is() )
- mxBasePool = new SwDocStyleSheetPool( *pDoc, SFX_CREATE_MODE_ORGANIZER == GetCreateMode() );
+ mxBasePool = new SwDocStyleSheetPool( *mpDoc, SFX_CREATE_MODE_ORGANIZER == GetCreateMode() );
}
UpdateFontList();
- InitDraw();
+ InitDrawModelAndDocShell(this, mpDoc ? mpDoc->GetDrawModel() : 0);
delete pRdr;
@@ -278,22 +278,27 @@ sal_Bool SwDocShell::ConvertFrom( SfxMedium& rMedium )
SetError( nErr, ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( OSL_LOG_PREFIX ) ) );
sal_Bool bOk = !IsError( nErr );
- // --> OD 2006-11-07 #i59688#
-// // StartFinishedLoading rufen. Nicht bei asynchronen Filtern!
-// // Diese muessen das selbst rufen!
-// if( bOk && !pDoc->IsInLoadAsynchron() )
-// StartLoadFinishedTimer();
- if ( bOk && !pDoc->IsInLoadAsynchron() )
+ if ( bOk && !mpDoc->IsInLoadAsynchron() )
{
LoadingFinished();
}
- // <--
pRead->setSotStorageRef(pStg); // #i45333# save sot storage ref in case of recursive calls
return bOk;
}
+
+void SwDocShell::BeforeLoading( SfxMedium&, const ::rtl::OUString &, const ::rtl::OUString & )
+{
+ if ( mpDoc == NULL )
+ {
+ return;
+ }
+
+ mpDoc->RemoveAllFmtLanguageDependencies();
+}
+
/*--------------------------------------------------------------------
Beschreibung: Sichern des Default-Formats, Stg vorhanden
--------------------------------------------------------------------*/
@@ -303,18 +308,18 @@ sal_Bool SwDocShell::Save()
{
RTL_LOGFILE_CONTEXT_AUTHOR( aLog, "SW", "JP93722", "SwDocShell::Save" );
//#i3370# remove quick help to prevent saving of autocorrection suggestions
- if(pView)
- pView->GetEditWin().StopQuickHelp();
+ if(mpView)
+ mpView->GetEditWin().StopQuickHelp();
SwWait aWait( *this, true );
CalcLayoutForOLEObjects(); // format for OLE objets
// --> OD 2006-03-17 #i62875#
// reset compatibility flag <DoNotCaptureDrawObjsOnPage>, if possible
- if ( pWrtShell && pDoc &&
- pDoc->get(IDocumentSettingAccess::DO_NOT_CAPTURE_DRAW_OBJS_ON_PAGE) &&
- docfunc::AllDrawObjsOnPage( *pDoc ) )
+ if ( mpWrtShell && mpDoc &&
+ mpDoc->get(IDocumentSettingAccess::DO_NOT_CAPTURE_DRAW_OBJS_ON_PAGE) &&
+ docfunc::AllDrawObjsOnPage( *mpDoc ) )
{
- pDoc->set(IDocumentSettingAccess::DO_NOT_CAPTURE_DRAW_OBJS_ON_PAGE, false);
+ mpDoc->set(IDocumentSettingAccess::DO_NOT_CAPTURE_DRAW_OBJS_ON_PAGE, false);
}
// <--
@@ -332,7 +337,7 @@ sal_Bool SwDocShell::Save()
WriterRef xWrt;
::GetXMLWriter( aEmptyStr, GetMedium()->GetBaseURL( true ), xWrt );
xWrt->SetOrganizerMode( sal_True );
- SwWriter aWrt( *GetMedium(), *pDoc );
+ SwWriter aWrt( *GetMedium(), *mpDoc );
nErr = aWrt.Write( xWrt );
xWrt->SetOrganizerMode( sal_False );
}
@@ -347,35 +352,35 @@ sal_Bool SwDocShell::Save()
case SFX_CREATE_MODE_PREVIEW:
default:
{
- if( pDoc->ContainsMSVBasic() )
+ if( mpDoc->ContainsMSVBasic() )
{
//TODO/MBA: it looks as that this code can be removed!
//SvxImportMSVBasic aTmp( *this, pIo->GetStorage() );
//aTmp.SaveOrDelMSVBAStorage( sal_False, aEmptyStr );
if( SvtFilterOptions::Get()->IsLoadWordBasicStorage() )
nVBWarning = GetSaveWarningOfMSVBAStorage( (SfxObjectShell&) (*this) );
- pDoc->SetContainsMSVBasic( sal_False );
+ mpDoc->SetContainsMSVBasic( sal_False );
}
// TabellenBox Edit beenden!
- if( pWrtShell )
- pWrtShell->EndAllTblBoxEdit();
+ if( mpWrtShell )
+ mpWrtShell->EndAllTblBoxEdit();
WriterRef xWrt;
::GetXMLWriter( aEmptyStr, GetMedium()->GetBaseURL( true ), xWrt );
sal_Bool bLockedView(sal_False);
- if ( pWrtShell )
+ if ( mpWrtShell )
{
- bLockedView = pWrtShell->IsViewLocked();
- pWrtShell->LockView( sal_True ); //lock visible section
+ bLockedView = mpWrtShell->IsViewLocked();
+ mpWrtShell->LockView( sal_True ); //lock visible section
}
- SwWriter aWrt( *GetMedium(), *pDoc );
+ SwWriter aWrt( *GetMedium(), *mpDoc );
nErr = aWrt.Write( xWrt );
- if ( pWrtShell )
- pWrtShell->LockView( bLockedView );
+ if ( mpWrtShell )
+ mpWrtShell->LockView( bLockedView );
}
break;
}
@@ -383,7 +388,7 @@ sal_Bool SwDocShell::Save()
}
SetError( nErr ? nErr : nVBWarning, ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( OSL_LOG_PREFIX ) ) );
- SfxViewFrame* pFrm = pWrtShell ? pWrtShell->GetView().GetViewFrame() : 0;
+ SfxViewFrame* pFrm = mpWrtShell ? mpWrtShell->GetView().GetViewFrame() : 0;
if( pFrm )
{
pFrm->GetBindings().SetState( SfxStringItem( SID_DOC_MODIFIED, ' ' ));
@@ -400,7 +405,7 @@ sal_Bool SwDocShell::SaveAs( SfxMedium& rMedium )
{
RTL_LOGFILE_CONTEXT_AUTHOR( aLog, "SW", "JP93722", "SwDocShell::SaveAs" );
- pDoc->setDocAccTitle(String());
+ mpDoc->setDocAccTitle(String());
SfxViewFrame* pFrame1 = SfxViewFrame::GetFirst( this );
if (pFrame1)
{
@@ -416,19 +421,19 @@ sal_Bool SwDocShell::SaveAs( SfxMedium& rMedium )
}
SwWait aWait( *this, true );
//#i3370# remove quick help to prevent saving of autocorrection suggestions
- if(pView)
- pView->GetEditWin().StopQuickHelp();
+ if(mpView)
+ mpView->GetEditWin().StopQuickHelp();
//#i91811# mod if we have an active margin window, write back the text
- if ( pView &&
- pView->GetPostItMgr() &&
- pView->GetPostItMgr()->HasActiveSidebarWin() )
+ if ( mpView &&
+ mpView->GetPostItMgr() &&
+ mpView->GetPostItMgr()->HasActiveSidebarWin() )
{
- pView->GetPostItMgr()->UpdateDataOnActiveSidebarWin();
+ mpView->GetPostItMgr()->UpdateDataOnActiveSidebarWin();
}
- if( pDoc->get(IDocumentSettingAccess::GLOBAL_DOCUMENT) &&
- !pDoc->get(IDocumentSettingAccess::GLOBAL_DOCUMENT_SAVE_LINKS) )
+ if( mpDoc->get(IDocumentSettingAccess::GLOBAL_DOCUMENT) &&
+ !mpDoc->get(IDocumentSettingAccess::GLOBAL_DOCUMENT_SAVE_LINKS) )
RemoveOLEObjects();
{
@@ -455,11 +460,11 @@ sal_Bool SwDocShell::SaveAs( SfxMedium& rMedium )
CalcLayoutForOLEObjects(); // format for OLE objets
// --> OD 2006-03-17 #i62875#
// reset compatibility flag <DoNotCaptureDrawObjsOnPage>, if possible
- if ( pWrtShell && pDoc &&
- pDoc->get(IDocumentSettingAccess::DO_NOT_CAPTURE_DRAW_OBJS_ON_PAGE) &&
- docfunc::AllDrawObjsOnPage( *pDoc ) )
+ if ( mpWrtShell && mpDoc &&
+ mpDoc->get(IDocumentSettingAccess::DO_NOT_CAPTURE_DRAW_OBJS_ON_PAGE) &&
+ docfunc::AllDrawObjsOnPage( *mpDoc ) )
{
- pDoc->set(IDocumentSettingAccess::DO_NOT_CAPTURE_DRAW_OBJS_ON_PAGE, false);
+ mpDoc->set(IDocumentSettingAccess::DO_NOT_CAPTURE_DRAW_OBJS_ON_PAGE, false);
}
// <--
@@ -485,26 +490,26 @@ sal_Bool SwDocShell::SaveAs( SfxMedium& rMedium )
xDocSh->DoClose();
}
- if( pDoc->ContainsMSVBasic() )
+ if( mpDoc->ContainsMSVBasic() )
{
//TODO/MBA: it looks as that this code can be removed!
//SvxImportMSVBasic aTmp( *this, pIo->GetStorage() );
//aTmp.SaveOrDelMSVBAStorage( sal_False, aEmptyStr );
if( SvtFilterOptions::Get()->IsLoadWordBasicStorage() )
nVBWarning = GetSaveWarningOfMSVBAStorage( (SfxObjectShell&) *this );
- pDoc->SetContainsMSVBasic( sal_False );
+ mpDoc->SetContainsMSVBasic( sal_False );
}
// TabellenBox Edit beenden!
- if( pWrtShell )
- pWrtShell->EndAllTblBoxEdit();
+ if( mpWrtShell )
+ mpWrtShell->EndAllTblBoxEdit();
// Modified-Flag merken und erhalten ohne den Link zu Callen
// (fuer OLE; nach Anweisung von MM)
- sal_Bool bIsModified = pDoc->IsModified();
- pDoc->GetIDocumentUndoRedo().LockUndoNoModifiedPosition();
- Link aOldOLELnk( pDoc->GetOle2Link() );
- pDoc->SetOle2Link( Link() );
+ sal_Bool bIsModified = mpDoc->IsModified();
+ mpDoc->GetIDocumentUndoRedo().LockUndoNoModifiedPosition();
+ Link aOldOLELnk( mpDoc->GetOle2Link() );
+ mpDoc->SetOle2Link( Link() );
// SfxProgress unterdruecken, wenn man Embedded ist
SW_MOD()->SetEmbeddedLoadSave(
@@ -514,24 +519,24 @@ sal_Bool SwDocShell::SaveAs( SfxMedium& rMedium )
::GetXMLWriter( aEmptyStr, rMedium.GetBaseURL( true ), xWrt );
sal_Bool bLockedView(sal_False);
- if ( pWrtShell )
+ if ( mpWrtShell )
{
- bLockedView = pWrtShell->IsViewLocked();
- pWrtShell->LockView( sal_True ); //lock visible section
+ bLockedView = mpWrtShell->IsViewLocked();
+ mpWrtShell->LockView( sal_True ); //lock visible section
}
- SwWriter aWrt( rMedium, *pDoc );
+ SwWriter aWrt( rMedium, *mpDoc );
nErr = aWrt.Write( xWrt );
- if ( pWrtShell )
- pWrtShell->LockView( bLockedView );
+ if ( mpWrtShell )
+ mpWrtShell->LockView( bLockedView );
if( bIsModified )
{
- pDoc->SetModified();
- pDoc->GetIDocumentUndoRedo().UnLockUndoNoModifiedPosition();
+ mpDoc->SetModified();
+ mpDoc->GetIDocumentUndoRedo().UnLockUndoNoModifiedPosition();
}
- pDoc->SetOle2Link( aOldOLELnk );
+ mpDoc->SetOle2Link( aOldOLELnk );
SW_MOD()->SetEmbeddedLoadSave( sal_False );
}
@@ -568,20 +573,20 @@ sal_Bool SwDocShell::ConvertTo( SfxMedium& rMedium )
}
//#i3370# remove quick help to prevent saving of autocorrection suggestions
- if(pView)
- pView->GetEditWin().StopQuickHelp();
+ if(mpView)
+ mpView->GetEditWin().StopQuickHelp();
//#i91811# mod if we have an active margin window, write back the text
- if ( pView &&
- pView->GetPostItMgr() &&
- pView->GetPostItMgr()->HasActiveSidebarWin() )
+ if ( mpView &&
+ mpView->GetPostItMgr() &&
+ mpView->GetPostItMgr()->HasActiveSidebarWin() )
{
- pView->GetPostItMgr()->UpdateDataOnActiveSidebarWin();
+ mpView->GetPostItMgr()->UpdateDataOnActiveSidebarWin();
}
sal_uLong nVBWarning = 0;
- if( pDoc->ContainsMSVBasic() )
+ if( mpDoc->ContainsMSVBasic() )
{
sal_Bool bSave = pFlt->GetUserData().EqualsAscii( "CWW8" )
&& SvtFilterOptions::Get()->IsLoadWordBasicStorage();
@@ -594,14 +599,14 @@ sal_Bool SwDocShell::ConvertTo( SfxMedium& rMedium )
{
nVBWarning = SaveOrDelMSVBAStorage( (SfxObjectShell&) *this, *xStg, bSave, String::CreateFromAscii("Macros") );
xStg->Commit();
- pDoc->SetContainsMSVBasic( sal_True );
+ mpDoc->SetContainsMSVBasic( sal_True );
}
}
}
// TabellenBox Edit beenden!
- if( pWrtShell )
- pWrtShell->EndAllTblBoxEdit();
+ if( mpWrtShell )
+ mpWrtShell->EndAllTblBoxEdit();
if( pFlt->GetUserData().EqualsAscii( "HTML") )
{
@@ -631,17 +636,17 @@ sal_Bool SwDocShell::ConvertTo( SfxMedium& rMedium )
}
// --> FME 2007-5-7 #i76360# Update document statistics
- SwDocStat aDocStat( pDoc->GetDocStat() );;
- pDoc->UpdateDocStat( aDocStat );
+ SwDocStat aDocStat( mpDoc->GetDocStat() );;
+ mpDoc->UpdateDocStat( aDocStat );
// <--
CalcLayoutForOLEObjects(); // format for OLE objets
// --> OD 2006-03-17 #i62875#
// reset compatibility flag <DoNotCaptureDrawObjsOnPage>, if possible
- if ( pWrtShell && pDoc &&
- pDoc->get(IDocumentSettingAccess::DO_NOT_CAPTURE_DRAW_OBJS_ON_PAGE) &&
- docfunc::AllDrawObjsOnPage( *pDoc ) )
+ if ( mpWrtShell && mpDoc &&
+ mpDoc->get(IDocumentSettingAccess::DO_NOT_CAPTURE_DRAW_OBJS_ON_PAGE) &&
+ docfunc::AllDrawObjsOnPage( *mpDoc ) )
{
- pDoc->set(IDocumentSettingAccess::DO_NOT_CAPTURE_DRAW_OBJS_ON_PAGE, false);
+ mpDoc->set(IDocumentSettingAccess::DO_NOT_CAPTURE_DRAW_OBJS_ON_PAGE, false);
}
// <--
@@ -715,7 +720,7 @@ sal_Bool SwDocShell::ConvertTo( SfxMedium& rMedium )
}
if( pFlt->GetUserData().EqualsAscii( FILTER_TEXT_DLG ) &&
- ( pWrtShell || !::lcl_GetSourceView( this ) ))
+ ( mpWrtShell || !::lcl_GetSourceView( this ) ))
{
SwAsciiOptions aOpt;
String sItemOpt;
@@ -742,25 +747,25 @@ sal_Bool SwDocShell::ConvertTo( SfxMedium& rMedium )
String aFileName( rMedium.GetName() );
//Keine View also das ganze Dokument!
- if ( pWrtShell )
+ if ( mpWrtShell )
{
SwWait aWait( *this, true );
// --> OD 2009-12-31 #i106906#
- const sal_Bool bFormerLockView = pWrtShell->IsViewLocked();
- pWrtShell->LockView( sal_True );
+ const sal_Bool bFormerLockView = mpWrtShell->IsViewLocked();
+ mpWrtShell->LockView( sal_True );
// <--
- pWrtShell->StartAllAction();
- pWrtShell->Push();
- SwWriter aWrt( rMedium, *pWrtShell, sal_True );
+ mpWrtShell->StartAllAction();
+ mpWrtShell->Push();
+ SwWriter aWrt( rMedium, *mpWrtShell, sal_True );
nErrno = aWrt.Write( xWriter, &aFileName );
//JP 16.05.97: falls der SFX uns die View waehrend des speicherns
// entzieht
- if( pWrtShell )
+ if( mpWrtShell )
{
- pWrtShell->Pop(sal_False);
- pWrtShell->EndAllAction();
+ mpWrtShell->Pop(sal_False);
+ mpWrtShell->EndAllAction();
// --> OD 2009-12-31 #i106906#
- pWrtShell->LockView( bFormerLockView );
+ mpWrtShell->LockView( bFormerLockView );
// <--
}
}
@@ -775,7 +780,7 @@ sal_Bool SwDocShell::ConvertTo( SfxMedium& rMedium )
}
else
{
- SwWriter aWrt( rMedium, *pDoc );
+ SwWriter aWrt( rMedium, *mpDoc );
nErrno = aWrt.Write( xWriter, &aFileName );
}
}
@@ -806,21 +811,21 @@ sal_Bool SwDocShell::SaveCompleted( const uno::Reference < embed::XStorage >& xS
{
// erst hier entscheiden, ob das Speichern geklappt hat oder nicht
if( IsModified() )
- pDoc->SetModified();
+ mpDoc->SetModified();
else
- pDoc->ResetModified();
+ mpDoc->ResetModified();
}
- if( pOLEChildList )
+ if( mpOLEChildList )
{
sal_Bool bResetModified = IsEnableSetModified();
if( bResetModified )
EnableSetModified( sal_False );
- uno::Sequence < rtl::OUString > aNames = pOLEChildList->GetObjectNames();
+ uno::Sequence < rtl::OUString > aNames = mpOLEChildList->GetObjectNames();
for( sal_Int32 n = aNames.getLength(); n; n-- )
{
- if ( !pOLEChildList->MoveEmbeddedObject( aNames[n-1], GetEmbeddedObjectContainer() ) )
+ if ( !mpOLEChildList->MoveEmbeddedObject( aNames[n-1], GetEmbeddedObjectContainer() ) )
{
DBG_ERROR( "Copying of objects didn't work!" );
}
@@ -830,7 +835,7 @@ sal_Bool SwDocShell::SaveCompleted( const uno::Reference < embed::XStorage >& xS
//pPersist->Move( &aRef, aRef->GetStorageName() );
}
- DELETEZ( pOLEChildList );
+ DELETEZ( mpOLEChildList );
if( bResetModified )
EnableSetModified( sal_True );
}
@@ -868,10 +873,10 @@ void SwDocShell::Draw( OutputDevice* pDev, const JobSetup& rSetup,
JobSetup *pOrig = 0;
if ( rSetup.GetPrinterName().Len() && ASPECT_THUMBNAIL != nAspect )
{
- pOrig = const_cast<JobSetup*>(pDoc->getJobsetup());
+ pOrig = const_cast<JobSetup*>(mpDoc->getJobsetup());
if( pOrig ) // dann kopieren wir uns den
pOrig = new JobSetup( *pOrig );
- pDoc->setJobsetup( rSetup );
+ mpDoc->setJobsetup( rSetup );
}
Rectangle aRect( nAspect == ASPECT_THUMBNAIL ?
@@ -883,12 +888,12 @@ void SwDocShell::Draw( OutputDevice* pDev, const JobSetup& rSetup,
pDev->SetBackground();
sal_Bool bWeb = 0 != dynamic_cast< SwWebDocShell* >( this);
SwPrintData aOpts;
- ViewShell::PrtOle2( pDoc, SW_MOD()->GetUsrPref(bWeb), aOpts, pDev, aRect );
+ ViewShell::PrtOle2( mpDoc, SW_MOD()->GetUsrPref(bWeb), aOpts, pDev, aRect );
pDev->Pop();
if( pOrig )
{
- pDoc->setJobsetup( *pOrig );
+ mpDoc->setJobsetup( *pOrig );
delete pOrig;
}
if ( bResetModified )
@@ -899,9 +904,9 @@ void SwDocShell::Draw( OutputDevice* pDev, const JobSetup& rSetup,
void SwDocShell::SetVisArea( const Rectangle &rRect )
{
Rectangle aRect( rRect );
- if ( pView )
+ if ( mpView )
{
- Size aSz( pView->GetDocSz() );
+ Size aSz( mpView->GetDocSz() );
aSz.Width() += DOCUMENTBORDER; aSz.Height() += DOCUMENTBORDER;
long nMoveX = 0, nMoveY = 0;
if ( aRect.Right() > aSz.Width() )
@@ -914,7 +919,7 @@ void SwDocShell::SetVisArea( const Rectangle &rRect )
aRect.Move( nMoveX, nMoveY );
//Ruft das SfxInPlaceObject::SetVisArea()!
- pView->SetVisArea( aRect, sal_True );
+ mpView->SetVisArea( aRect, sal_True );
}
else
SfxObjectShell::SetVisArea( aRect );
@@ -926,8 +931,8 @@ Rectangle SwDocShell::GetVisArea( sal_uInt16 nAspect ) const
if ( nAspect == ASPECT_THUMBNAIL )
{
//PreView: VisArea auf die erste Seite einstellen.
- SwNodeIndex aIdx( pDoc->GetNodes().GetEndOfExtras(), 1 );
- SwCntntNode* pNd = pDoc->GetNodes().GoNext( &aIdx );
+ SwNodeIndex aIdx( mpDoc->GetNodes().GetEndOfExtras(), 1 );
+ SwCntntNode* pNd = mpDoc->GetNodes().GoNext( &aIdx );
const SwRect aPageRect = pNd->FindPageFrmRect( sal_False, 0, sal_False );
return aPageRect.SVRect();
@@ -937,12 +942,12 @@ Rectangle SwDocShell::GetVisArea( sal_uInt16 nAspect ) const
Printer *SwDocShell::GetDocumentPrinter()
{
- return pDoc->getPrinter( false );
+ return mpDoc->getPrinter( false );
}
OutputDevice* SwDocShell::GetDocumentRefDev()
{
- return pDoc->getReferenceDevice( false );
+ return mpDoc->getReferenceDevice( false );
}
void SwDocShell::OnDocumentPrinterChanged( Printer * pNewPrinter )
@@ -1001,12 +1006,12 @@ sal_uInt16 SwDocShell::GetHiddenInformationState( sal_uInt16 nStates )
void SwDocShell::GetState(SfxItemSet& rSet)
{
- SfxWhichIter aIter(rSet);
- sal_uInt16 nWhich = aIter.FirstWhich();
+ SfxWhichIter aIter( rSet );
+ sal_uInt16 nWhich = aIter.FirstWhich();
while (nWhich)
{
- switch (nWhich)
+ switch ( nWhich )
{
case SID_PRINTPREVIEW:
{
@@ -1014,16 +1019,16 @@ void SwDocShell::GetState(SfxItemSet& rSet)
// Disable "multiple layout"
if ( !bDisable )
{
- SfxViewFrame *pTmpFrm = SfxViewFrame::GetFirst(this);
+ SfxViewFrame *pTmpFrm = SfxViewFrame::GetFirst( this );
while (pTmpFrm) // Preview suchen
{
if ( dynamic_cast< SwView* >(pTmpFrm->GetViewShell()) &&
- ((SwView*)pTmpFrm->GetViewShell())->GetWrtShell().GetViewOptions()->getBrowseMode() )
+ ( (SwView*) pTmpFrm->GetViewShell() )->GetWrtShell().GetViewOptions()->getBrowseMode() )
{
bDisable = sal_True;
break;
}
- pTmpFrm = pTmpFrm->GetNext(*pTmpFrm, this);
+ pTmpFrm = pTmpFrm->GetNext( *pTmpFrm, this );
}
}
// End of disabled "multiple layout"
@@ -1031,49 +1036,53 @@ void SwDocShell::GetState(SfxItemSet& rSet)
rSet.DisableItem( SID_PRINTPREVIEW );
else
{
- SfxBoolItem aBool( SID_PRINTPREVIEW, false);
- if( dynamic_cast< SwPagePreView* >( SfxViewShell::Current()) )
- aBool.SetValue( true );
+ SfxBoolItem aBool( SID_PRINTPREVIEW, sal_False );
+ if ( dynamic_cast< SwPagePreView* >( SfxViewShell::Current()) )
+ aBool.SetValue( sal_True );
rSet.Put( aBool );
}
}
break;
+
case SID_SOURCEVIEW:
{
- SfxViewShell* pCurrView = GetView() ? (SfxViewShell*)GetView()
- : SfxViewShell::Current();
+ SfxViewShell* pCurrView = GetView() ? (SfxViewShell*) GetView()
+ :
+ SfxViewShell::Current();
sal_Bool bSourceView = 0 != dynamic_cast< SwSrcView* >( pCurrView);
- rSet.Put(SfxBoolItem(SID_SOURCEVIEW, bSourceView));
+ rSet.Put( SfxBoolItem( SID_SOURCEVIEW, bSourceView ) );
}
break;
+
case SID_HTML_MODE:
- rSet.Put(SfxUInt16Item(SID_HTML_MODE, ::GetHtmlMode(this)));
- break;
+ rSet.Put( SfxUInt16Item( SID_HTML_MODE, ::GetHtmlMode( this ) ) );
+ break;
case FN_ABSTRACT_STARIMPRESS:
case FN_OUTLINE_TO_IMPRESS:
- {
- SvtModuleOptions aMOpt;
- if ( !aMOpt.IsImpress() )
- rSet.DisableItem( nWhich );
- }
- /* no break here */
+ {
+ SvtModuleOptions aMOpt;
+ if ( !aMOpt.IsImpress() )
+ rSet.DisableItem( nWhich );
+ }
+ /* no break here */
case FN_ABSTRACT_NEWDOC:
case FN_OUTLINE_TO_CLIPBOARD:
- {
- if ( !GetDoc()->GetNodes().GetOutLineNds().Count() )
- rSet.DisableItem( nWhich );
- }
- break;
+ {
+ if ( !GetDoc()->GetNodes().GetOutLineNds().Count() )
+ rSet.DisableItem( nWhich );
+ }
+ break;
+
case SID_BROWSER_MODE:
case FN_PRINT_LAYOUT:
- {
- sal_Bool bState = GetDoc()->get(IDocumentSettingAccess::BROWSE_MODE);
- if(FN_PRINT_LAYOUT == nWhich)
- bState = !bState;
- rSet.Put( SfxBoolItem( nWhich, bState));
- }
- break;
+ {
+ sal_Bool bState = GetDoc()->get( IDocumentSettingAccess::BROWSE_MODE );
+ if ( FN_PRINT_LAYOUT == nWhich )
+ bState = !bState;
+ rSet.Put( SfxBoolItem( nWhich, bState ) );
+ }
+ break;
case FN_NEW_GLOBAL_DOC:
if ( dynamic_cast< SwGlobalDocShell* >(this) )
@@ -1081,29 +1090,32 @@ void SwDocShell::GetState(SfxItemSet& rSet)
break;
case FN_NEW_HTML_DOC:
- if( dynamic_cast< SwWebDocShell* >(this) )
+ if ( dynamic_cast< SwWebDocShell* >(this) )
rSet.DisableItem( nWhich );
break;
case SID_ATTR_YEAR2000:
- {
- const SvNumberFormatter* pFmtr = pDoc->GetNumberFormatter(sal_False);
- rSet.Put( SfxUInt16Item( nWhich,
- static_cast< sal_uInt16 >(
- pFmtr ? pFmtr->GetYear2000()
- : ::utl::MiscCfg().GetYear2000() )));
- }
- break;
+ {
+ const SvNumberFormatter* pFmtr = mpDoc->GetNumberFormatter( sal_False );
+ rSet.Put( SfxUInt16Item( nWhich,
+ static_cast< sal_uInt16 >(
+ pFmtr ? pFmtr->GetYear2000()
+ :
+ ::utl::MiscCfg().GetYear2000() ) ) );
+ }
+ break;
+
case SID_ATTR_CHAR_FONTLIST:
{
- rSet.Put( SvxFontListItem( pFontList, SID_ATTR_CHAR_FONTLIST ) );
+ rSet.Put( SvxFontListItem( mpFontList, SID_ATTR_CHAR_FONTLIST ) );
}
break;
+
case SID_MAIL_PREPAREEXPORT:
{
//check if linked content or possibly hidden content is available
//pDoc->UpdateFlds( NULL, false );
- sfx2::LinkManager& rLnkMgr = pDoc->GetLinkManager();
+ sfx2::LinkManager& rLnkMgr = mpDoc->GetLinkManager();
const ::sfx2::SvBaseLinks& rLnks = rLnkMgr.GetLinks();
sal_Bool bRet = sal_False;
if( rLnks.Count() )
@@ -1111,13 +1123,14 @@ void SwDocShell::GetState(SfxItemSet& rSet)
else
{
//sections with hidden flag, hidden character attribute, hidden paragraph/text or conditional text fields
- bRet = pDoc->HasInvisibleContent();
+ bRet = mpDoc->HasInvisibleContent();
}
rSet.Put( SfxBoolItem( nWhich, bRet ) );
}
break;
- default: DBG_ASSERT(!this,"Hier darfst Du nicht hinein!");
+ default:
+ DBG_ASSERT( !this, "Hier darfst Du nicht hinein!" );
}
nWhich = aIter.NextWhich();
@@ -1153,20 +1166,20 @@ SfxStyleSheetBasePool* SwDocShell::GetStyleSheetPool()
void SwDocShell::SetView(SwView* pVw)
{
- if(0 != (pView = pVw))
+ if(0 != (mpView = pVw))
{
- pWrtShell = &pView->GetWrtShell();
+ mpWrtShell = &mpView->GetWrtShell();
}
else
{
- pWrtShell = 0;
+ mpWrtShell = 0;
}
}
void SwDocShell::PrepareReload()
{
- ::DelAllGrfCacheEntries( pDoc );
+ ::DelAllGrfCacheEntries( mpDoc );
}
// linked graphics are now loaded on demand.
@@ -1179,7 +1192,7 @@ void SwDocShell::LoadingFinished()
// enables the document modification again.
// Thus, manuell modify the document, if its modified and its links are updated
// before <FinishedLoading(..)> is called.
- const bool bHasDocToStayModified( pDoc->IsModified() && pDoc->LinksUpdated() );
+ const bool bHasDocToStayModified( mpDoc->IsModified() && mpDoc->LinksUpdated() );
FinishedLoading( SFX_LOADED_ALL );
SfxViewFrame* pVFrame = SfxViewFrame::GetFirst(this);
if(pVFrame)
@@ -1189,9 +1202,9 @@ void SwDocShell::LoadingFinished()
((SwSrcView*)pShell)->Load(this);
}
- if ( bHasDocToStayModified && !pDoc->IsModified() )
+ if ( bHasDocToStayModified && !mpDoc->IsModified() )
{
- pDoc->SetModified();
+ mpDoc->SetModified();
}
}
@@ -1200,29 +1213,29 @@ void SwDocShell::CancelTransfers()
{
// alle Links vom LinkManager Canceln
aFinishedTimer.Stop();
- pDoc->GetLinkManager().CancelTransfers();
+ mpDoc->GetLinkManager().CancelTransfers();
SfxObjectShell::CancelTransfers();
}
SwFEShell* SwDocShell::GetFEShell()
{
- return pWrtShell;
+ return mpWrtShell;
}
void SwDocShell::RemoveOLEObjects()
{
- SwIterator<SwCntntNode,SwFmtColl> aIter( *pDoc->GetDfltGrfFmtColl() );
+ SwIterator<SwCntntNode,SwFmtColl> aIter( *mpDoc->GetDfltGrfFmtColl() );
for( SwCntntNode* pNd = aIter.First(); pNd; pNd = aIter.Next() )
{
SwOLENode* pOLENd = pNd->GetOLENode();
if( pOLENd && ( pOLENd->IsOLEObjectDeleted() ||
pOLENd->IsInGlobalDocSection() ) )
{
- if( !pOLEChildList )
- pOLEChildList = new comphelper::EmbeddedObjectContainer;
+ if( !mpOLEChildList )
+ mpOLEChildList = new comphelper::EmbeddedObjectContainer;
::rtl::OUString aObjName = pOLENd->GetOLEObj().GetCurrentPersistName();
- GetEmbeddedObjectContainer().MoveEmbeddedObject( aObjName, *pOLEChildList );
+ GetEmbeddedObjectContainer().MoveEmbeddedObject( aObjName, *mpOLEChildList );
}
}
}
@@ -1236,16 +1249,16 @@ void SwDocShell::RemoveOLEObjects()
// saved, but of course only id there are OLE objects with bOLESizeInvalid set.
void SwDocShell::CalcLayoutForOLEObjects()
{
- if( !pWrtShell )
+ if( !mpWrtShell )
return;
- SwIterator<SwCntntNode,SwFmtColl> aIter( *pDoc->GetDfltGrfFmtColl() );
+ SwIterator<SwCntntNode,SwFmtColl> aIter( *mpDoc->GetDfltGrfFmtColl() );
for( SwCntntNode* pNd = aIter.First(); pNd; pNd = aIter.Next() )
{
SwOLENode* pOLENd = pNd->GetOLENode();
if( pOLENd && pOLENd->IsOLESizeInvalid() )
{
- pWrtShell->CalcLayout();
+ mpWrtShell->CalcLayout();
break;
}
}
@@ -1281,34 +1294,36 @@ uno::Reference< frame::XController >
---------------------------------------------------------------------------*/
void SwDocShell::setDocAccTitle( const String& rTitle )
{
- if (pDoc )
+ if ( mpDoc )
{
- pDoc->setDocAccTitle( rTitle );
+ mpDoc->setDocAccTitle( rTitle );
}
}
const String SwDocShell::getDocAccTitle() const
{
String sRet;
- if (pDoc)
+ if ( mpDoc )
{
- sRet = pDoc->getDocAccTitle();
+ sRet = mpDoc->getDocAccTitle();
}
return sRet;
}
-void SwDocShell::setDocReadOnly( sal_Bool bReadOnly)
+void SwDocShell::setDocReadOnly(
+ sal_Bool bReadOnly )
{
- if (pDoc )
+ if ( mpDoc )
{
- pDoc->setDocReadOnly( bReadOnly );
+ mpDoc->setDocReadOnly( bReadOnly );
}
}
+
sal_Bool SwDocShell::getDocReadOnly() const
{
- if (pDoc)
+ if ( mpDoc )
{
- return pDoc->getDocReadOnly();
+ return mpDoc->getDocReadOnly();
}
return sal_False;
@@ -1352,27 +1367,27 @@ rtl::OUString SwDocShell::GetEventName( sal_Int32 nIndex )
const ::sfx2::IXmlIdRegistry* SwDocShell::GetXmlIdRegistry() const
{
- return pDoc ? &pDoc->GetXmlIdRegistry() : 0;
+ return mpDoc ? &mpDoc->GetXmlIdRegistry() : 0;
}
bool SwDocShell::IsChangeRecording() const
{
- return (pWrtShell->GetRedlineMode() & nsRedlineMode_t::REDLINE_ON) != 0;
+ return (mpWrtShell->GetRedlineMode() & nsRedlineMode_t::REDLINE_ON) != 0;
}
bool SwDocShell::HasChangeRecordProtection() const
{
- return pWrtShell->getIDocumentRedlineAccess()->GetRedlinePassword().getLength() > 0;
+ return mpWrtShell->getIDocumentRedlineAccess()->GetRedlinePassword().getLength() > 0;
}
void SwDocShell::SetChangeRecording( bool bActivate )
{
sal_uInt16 nOn = bActivate ? nsRedlineMode_t::REDLINE_ON : 0;
- sal_uInt16 nMode = pWrtShell->GetRedlineMode();
- pWrtShell->SetRedlineModeAndCheckInsMode( (nMode & ~nsRedlineMode_t::REDLINE_ON) | nOn);
+ sal_uInt16 nMode = mpWrtShell->GetRedlineMode();
+ mpWrtShell->SetRedlineModeAndCheckInsMode( (nMode & ~nsRedlineMode_t::REDLINE_ON) | nOn);
}
@@ -1382,7 +1397,7 @@ bool SwDocShell::SetProtectionPassword( const String &rNewPassword )
const SfxItemSet* pArgs = &aSet;
const SfxPoolItem* pItem = NULL;
- IDocumentRedlineAccess* pIDRA = pWrtShell->getIDocumentRedlineAccess();
+ IDocumentRedlineAccess* pIDRA = mpWrtShell->getIDocumentRedlineAccess();
Sequence< sal_Int8 > aPasswd = pIDRA->GetRedlinePassword();
if (pArgs && SFX_ITEM_SET == pArgs->GetItemState( FN_REDLINE_PROTECT, sal_False, &pItem )
&& ((SfxBoolItem*)pItem)->GetValue() == (aPasswd.getLength() > 0))
@@ -1418,7 +1433,7 @@ bool SwDocShell::GetProtectionHash( /*out*/ ::com::sun::star::uno::Sequence< sal
const SfxItemSet* pArgs = &aSet;
const SfxPoolItem* pItem = NULL;
- IDocumentRedlineAccess* pIDRA = pWrtShell->getIDocumentRedlineAccess();
+ IDocumentRedlineAccess* pIDRA = mpWrtShell->getIDocumentRedlineAccess();
Sequence< sal_Int8 > aPasswdHash( pIDRA->GetRedlinePassword() );
if (pArgs && SFX_ITEM_SET == pArgs->GetItemState( FN_REDLINE_PROTECT, sal_False, &pItem )
&& ((SfxBoolItem*)pItem)->GetValue() == (aPasswdHash.getLength() != 0))
diff --git a/sw/source/ui/app/docsh2.cxx b/sw/source/ui/app/docsh2.cxx
index ce7b00c98dfe..611a9469a763 100644
--- a/sw/source/ui/app/docsh2.cxx
+++ b/sw/source/ui/app/docsh2.cxx
@@ -196,21 +196,21 @@ void SwDocShell::ToggleBrowserMode(sal_Bool bSet, SwView* _pView )
/// update text fields on document properties changes
void SwDocShell::DoFlushDocInfo()
{
- if ( !pDoc ) return;
+ if ( !mpDoc ) return;
bool bUnlockView(true);
- if ( pWrtShell ) {
- bUnlockView = !pWrtShell->IsViewLocked();
- pWrtShell->LockView( sal_True ); // lock visible section
- pWrtShell->StartAllAction();
+ if ( mpWrtShell ) {
+ bUnlockView = !mpWrtShell->IsViewLocked();
+ mpWrtShell->LockView( sal_True ); // lock visible section
+ mpWrtShell->StartAllAction();
}
- pDoc->DocInfoChgd();
+ mpDoc->DocInfoChgd();
- if ( pWrtShell ) {
- pWrtShell->EndAllAction();
+ if ( mpWrtShell ) {
+ mpWrtShell->EndAllAction();
if ( bUnlockView ) {
- pWrtShell->LockView( sal_False );
+ mpWrtShell->LockView( sal_False );
}
}
}
@@ -244,13 +244,13 @@ void lcl_processCompatibleSfxHint( const uno::Reference< script::vba::XVBAEventP
void SwDocShell::Notify( SfxBroadcaster&, const SfxHint& rHint )
{
- if( !pDoc )
+ if( !mpDoc )
{
return ;
}
#ifdef FUTURE_VBA
- uno::Reference< script::vba::XVBAEventProcessor > xVbaEvents = pDoc->GetVbaEventProcessor();
+ uno::Reference< script::vba::XVBAEventProcessor > xVbaEvents = mpDoc->GetVbaEventProcessor();
if( xVbaEvents.is() )
lcl_processCompatibleSfxHint( xVbaEvents, rHint );
#endif
@@ -271,16 +271,16 @@ void SwDocShell::Notify( SfxBroadcaster&, const SfxHint& rHint )
if( nAction )
{
sal_Bool bUnlockView = sal_True; //initializing prevents warning
- if( pWrtShell )
+ if( mpWrtShell )
{
- bUnlockView = !pWrtShell->IsViewLocked();
- pWrtShell->LockView( sal_True ); //lock visible section
- pWrtShell->StartAllAction();
+ bUnlockView = !mpWrtShell->IsViewLocked();
+ mpWrtShell->LockView( sal_True ); //lock visible section
+ mpWrtShell->StartAllAction();
}
switch( nAction )
{
case 2:
- pDoc->GetSysFldType( RES_FILENAMEFLD )->UpdateFlds();
+ mpDoc->GetSysFldType( RES_FILENAMEFLD )->UpdateFlds();
break;
// own action for event LOADFINISHED in order to avoid a modified document.
@@ -291,23 +291,23 @@ void SwDocShell::Notify( SfxBroadcaster&, const SfxHint& rHint )
const bool bResetModified = IsEnableSetModified();
if ( bResetModified )
EnableSetModified( sal_False );
- const bool bIsDocModified = pDoc->IsModified();
+ const bool bIsDocModified = mpDoc->IsModified();
- pDoc->DocInfoChgd( );
+ mpDoc->DocInfoChgd( );
if ( !bIsDocModified )
- pDoc->ResetModified();
+ mpDoc->ResetModified();
if ( bResetModified )
EnableSetModified( sal_True );
}
break;
}
- if( pWrtShell )
+ if( mpWrtShell )
{
- pWrtShell->EndAllAction();
+ mpWrtShell->EndAllAction();
if( bUnlockView )
- pWrtShell->LockView( sal_False );
+ mpWrtShell->LockView( sal_False );
}
}
}
@@ -324,9 +324,9 @@ sal_uInt16 SwDocShell::PrepareClose( sal_Bool bUI, sal_Bool bForBrowsing )
EndListening( *this );
#ifdef FUTURE_VBA
- if( pDoc && IsInPrepareClose() )
+ if( mpDoc && IsInPrepareClose() )
{
- uno::Reference< script::vba::XVBAEventProcessor > xVbaEvents = pDoc->GetVbaEventProcessor();
+ uno::Reference< script::vba::XVBAEventProcessor > xVbaEvents = mpDoc->GetVbaEventProcessor();
if( xVbaEvents.is() )
{
using namespace com::sun::star::script::vba::VBAEventId;
@@ -385,7 +385,7 @@ sal_Bool SwDocShell::Insert( SfxObjectShell &rSource,
// dflt. PageDesc und StandardZeichenvorlage nie loeschen !!!
if( ( SFX_STYLE_FAMILY_PAGE == eOldFamily &&
- const_cast<const SwDoc *>(pDoc)->GetPageDesc(0).GetName() ==
+ const_cast<const SwDoc *>(mpDoc)->GetPageDesc(0).GetName() ==
rOldName ) ||
( SFX_STYLE_FAMILY_CHAR == eOldFamily &&
rOldName == *SwStyleNameMapper::GetTextUINameArray()[ RES_POOLCOLL_STANDARD -
@@ -396,7 +396,7 @@ sal_Bool SwDocShell::Insert( SfxObjectShell &rSource,
sal_uInt16 nMySrchMask = pMyPool->GetSearchMask();
SfxStyleSheetBase* pExist;
- if( ::FindPhyStyle( *pDoc, rOldName, eOldFamily ) )
+ if( ::FindPhyStyle( *mpDoc, rOldName, eOldFamily ) )
{
// Bug 20365: nur uebernehmen, wenn das gewuenscht ist!
if( ERRCODE_BUTTON_OK != ErrorHandler::HandleError(
@@ -436,7 +436,7 @@ sal_Bool SwDocShell::Insert( SfxObjectShell &rSource,
// gesondert behandeln!!
SwPageDesc* pDestDsc = (SwPageDesc*)xNewSheet->GetPageDesc();
SwPageDesc* pCpyDsc = (SwPageDesc*)((SwDocStyleSheet*)pHisSheet)->GetPageDesc();
- pDoc->CopyPageDesc( *pCpyDsc, *pDestDsc );
+ mpDoc->CopyPageDesc( *pCpyDsc, *pDestDsc );
}
else
// die neue Vorlage mit den Attributen fuellen
@@ -536,7 +536,7 @@ sal_Bool SwDocShell::Insert( SfxObjectShell &rSource,
pMyPool->SetSearchMask( eMyOldFamily, nMySrchMask );
// Model geaendert
- ASSERT(pDoc, "Doc fehlt");
+ ASSERT(mpDoc, "Doc fehlt");
GetDoc()->SetModified();
bRet = sal_True;
@@ -584,7 +584,7 @@ sal_Bool SwDocShell::Remove(sal_uInt16 nIdx1, // siehe Insert
// dflt. PageDesc und StandardZeichenvorlage nie loeschen !!!
if( ( SFX_STYLE_FAMILY_PAGE == eFamily &&
- const_cast<const SwDoc *>(pDoc)->GetPageDesc(0).GetName()
+ const_cast<const SwDoc *>(mpDoc)->GetPageDesc(0).GetName()
== aName ) ||
( SFX_STYLE_FAMILY_CHAR == eFamily &&
aName == *SwStyleNameMapper::GetTextUINameArray()[ RES_POOLCOLL_STANDARD -
@@ -626,7 +626,7 @@ sal_Bool SwDocShell::Remove(sal_uInt16 nIdx1, // siehe Insert
// Model geaendert
- ASSERT(pDoc, "Doc fehlt");
+ ASSERT(mpDoc, "Doc fehlt");
GetDoc()->SetModified();
return bRet;
@@ -1030,7 +1030,7 @@ void SwDocShell::Execute(SfxRequest& rReq)
xDocSh->DoInitNew( 0 );
sal_Bool bImpress = FN_ABSTRACT_STARIMPRESS == nWhich;
- pDoc->Summary( pSmryDoc, nLevel, nPara, bImpress );
+ mpDoc->Summary( pSmryDoc, nLevel, nPara, bImpress );
if( bImpress )
{
WriterRef xWrt;
@@ -1174,24 +1174,24 @@ void SwDocShell::Execute(SfxRequest& rReq)
case SID_MAIL_PREPAREEXPORT:
{
//pWrtShell is not set in page preview
- if(pWrtShell)
- pWrtShell->StartAllAction();
- pDoc->UpdateFlds( NULL, false );
- pDoc->EmbedAllLinks();
- pDoc->RemoveInvisibleContent();
- if(pWrtShell)
- pWrtShell->EndAllAction();
+ if(mpWrtShell)
+ mpWrtShell->StartAllAction();
+ mpDoc->UpdateFlds( NULL, false );
+ mpDoc->EmbedAllLinks();
+ mpDoc->RemoveInvisibleContent();
+ if(mpWrtShell)
+ mpWrtShell->EndAllAction();
}
break;
case SID_MAIL_EXPORT_FINISHED:
{
- if(pWrtShell)
- pWrtShell->StartAllAction();
+ if(mpWrtShell)
+ mpWrtShell->StartAllAction();
//try to undo the removal of invisible content
- pDoc->RestoreInvisibleContent();
- if(pWrtShell)
- pWrtShell->EndAllAction();
+ mpDoc->RestoreInvisibleContent();
+ if(mpWrtShell)
+ mpWrtShell->EndAllAction();
}
break;
case FN_NEW_HTML_DOC:
@@ -1332,7 +1332,7 @@ void SwDocShell::Execute(SfxRequest& rReq)
/////////////////////////////////////////////////////////////////////
bool bOutline[MAXLEVEL] = {false};
- const SwOutlineNodes& rOutlNds = pDoc->GetNodes().GetOutLineNds();
+ const SwOutlineNodes& rOutlNds = mpDoc->GetNodes().GetOutLineNds();
if( rOutlNds.Count() )
{
int nLevel;
@@ -1344,7 +1344,7 @@ void SwDocShell::Execute(SfxRequest& rReq)
}
}
- const sal_uInt16 nStyleCount = pDoc->GetTxtFmtColls()->Count();
+ const sal_uInt16 nStyleCount = mpDoc->GetTxtFmtColls()->Count();
Sequence<OUString> aListBoxEntries( MAXLEVEL + nStyleCount);
OUString* pEntries = aListBoxEntries.getArray();
sal_Int32 nIdx = 0 ;
@@ -1360,7 +1360,7 @@ void SwDocShell::Execute(SfxRequest& rReq)
for(sal_uInt16 i = 0; i < nStyleCount; ++i)
{
SwTxtFmtColl &rTxtColl =
- *pDoc->GetTxtFmtColls()->GetObject( i );
+ *mpDoc->GetTxtFmtColls()->GetObject( i );
if( !rTxtColl.IsDefault() && rTxtColl.IsAtDocNodeSet() )
{
pEntries[nIdx++] = sStyle + rTxtColl.GetName();
@@ -1442,17 +1442,17 @@ void SwDocShell::Execute(SfxRequest& rReq)
if ( bCreateByOutlineLevel ) //add by zhaojianwei
{
bDone = bCreateHtml //#outline level,removed by zhaojianwei
- ? pDoc->GenerateHTMLDoc( aFileName, nTemplateOutlineLevel )
- : pDoc->GenerateGlobalDoc( aFileName, nTemplateOutlineLevel );
+ ? mpDoc->GenerateHTMLDoc( aFileName, nTemplateOutlineLevel )
+ : mpDoc->GenerateGlobalDoc( aFileName, nTemplateOutlineLevel );
}
else
{
const SwTxtFmtColl* pSplitColl = 0;
if ( aTemplateName.Len() )
- pSplitColl = pDoc->FindTxtFmtCollByName(aTemplateName);
+ pSplitColl = mpDoc->FindTxtFmtCollByName(aTemplateName);
bDone = bCreateHtml //#outline level,removed by zhaojianwei
- ? pDoc->GenerateHTMLDoc( aFileName, pSplitColl )
- : pDoc->GenerateGlobalDoc( aFileName, pSplitColl );
+ ? mpDoc->GenerateHTMLDoc( aFileName, pSplitColl )
+ : mpDoc->GenerateGlobalDoc( aFileName, pSplitColl );
}
//<-end,zhaojianwei
if( bDone )
@@ -1514,7 +1514,7 @@ void SwDocShell::Execute(SfxRequest& rReq)
pViewShell = pVFrame ? pVFrame->GetViewShell() : 0;
pCurrView = dynamic_cast<SwView*>( pViewShell );
}
- pDoc->GetNumberFormatter(sal_True)->SetYear2000(nYear2K);
+ mpDoc->GetNumberFormatter(sal_True)->SetYear2000(nYear2K);
}
break;
@@ -1530,7 +1530,7 @@ void SwDocShell::Execute(SfxRequest& rReq)
long SwDocShell::DdeGetData( const String& rItem, const String& rMimeType,
uno::Any & rValue )
{
- return pDoc->GetData( rItem, rMimeType, rValue );
+ return mpDoc->GetData( rItem, rMimeType, rValue );
}
@@ -1541,7 +1541,7 @@ long SwDocShell::DdeGetData( const String& rItem, const String& rMimeType,
long SwDocShell::DdeSetData( const String& rItem, const String& rMimeType,
const uno::Any & rValue )
{
- return pDoc->SetData( rItem, rMimeType, rValue );
+ return mpDoc->SetData( rItem, rMimeType, rValue );
}
@@ -1551,7 +1551,7 @@ long SwDocShell::DdeSetData( const String& rItem, const String& rMimeType,
::sfx2::SvLinkSource* SwDocShell::DdeCreateLinkSource( const String& rItem )
{
- return pDoc->CreateLinkSource( rItem );
+ return mpDoc->CreateLinkSource( rItem );
}
/*--------------------------------------------------------------------
@@ -1592,20 +1592,20 @@ void SwDocShell::SetModified( sal_Bool bSet )
SfxObjectShell::SetModified( bSet );
if( IsEnableSetModified())
{
- if (!pDoc->IsInCallModified() )
+ if (!mpDoc->IsInCallModified() )
{
EnableSetModified( sal_False );
if( bSet )
{
- sal_Bool bOld = pDoc->IsModified();
- pDoc->SetModified();
+ sal_Bool bOld = mpDoc->IsModified();
+ mpDoc->SetModified();
if( !bOld )
{
- pDoc->GetIDocumentUndoRedo().SetUndoNoResetModified();
+ mpDoc->GetIDocumentUndoRedo().SetUndoNoResetModified();
}
}
else
- pDoc->ResetModified();
+ mpDoc->ResetModified();
EnableSetModified( sal_True );
}
@@ -1698,7 +1698,7 @@ void SwDocShell::ReloadFromHtml( const String& rStreamName, SwSrcView* pSrcView
"Loschen des Basics hat nicht geklappt" );
}
}
- sal_Bool bWasBrowseMode = pDoc->get(IDocumentSettingAccess::BROWSE_MODE);
+ sal_Bool bWasBrowseMode = mpDoc->get(IDocumentSettingAccess::BROWSE_MODE);
RemoveLink();
//jetzt muss auch das UNO-Model ueber das neue Doc informiert werden #51535#
@@ -1709,7 +1709,7 @@ void SwDocShell::ReloadFromHtml( const String& rStreamName, SwSrcView* pSrcView
AddLink();
//#116402# update font list when new document is created
UpdateFontList();
- pDoc->set(IDocumentSettingAccess::BROWSE_MODE, bWasBrowseMode);
+ mpDoc->set(IDocumentSettingAccess::BROWSE_MODE, bWasBrowseMode);
pSrcView->SetPool(&GetPool());
@@ -1730,7 +1730,7 @@ void SwDocShell::ReloadFromHtml( const String& rStreamName, SwSrcView* pSrcView
// the base URL has to be set to the filename of the document <rMedname>
// and not to the base URL of the temporary file <aMed> in order to get
// the URLs of the linked graphics correctly resolved.
- SwReloadFromHtmlReader aReader( aMed, rMedname, pDoc );
+ SwReloadFromHtmlReader aReader( aMed, rMedname, mpDoc );
// <--
aReader.Read( *ReadHTML );
@@ -1753,7 +1753,7 @@ void SwDocShell::ReloadFromHtml( const String& rStreamName, SwSrcView* pSrcView
if(bModified && !IsReadOnly())
SetModified();
else
- pDoc->ResetModified();
+ mpDoc->ResetModified();
}
sal_uLong SwDocShell::LoadStylesFromFile( const String& rURL,
@@ -1819,13 +1819,13 @@ sal_uLong SwDocShell::LoadStylesFromFile( const String& rURL,
// insert the styles!
if( bUnoCall )
{
- SwNodeIndex aIdx( pDoc->GetNodes().GetEndOfContent(), -1 );
+ SwNodeIndex aIdx( mpDoc->GetNodes().GetEndOfContent(), -1 );
pPam = new SwPaM( aIdx );
pReader = new SwReader( aMed, rURL, *pPam );
}
else
{
- pReader = new SwReader( aMed, rURL, *pWrtShell->GetCrsr() );
+ pReader = new SwReader( aMed, rURL, *mpWrtShell->GetCrsr() );
}
pRead->GetReaderOpt().SetTxtFmts( rOpt.IsTxtFmts() );
@@ -1836,14 +1836,14 @@ sal_uLong SwDocShell::LoadStylesFromFile( const String& rURL,
if( bUnoCall )
{
- UnoActionContext aAction( pDoc );
+ UnoActionContext aAction( mpDoc );
nErr = pReader->Read( *pRead );
}
else
{
- pWrtShell->StartAllAction();
+ mpWrtShell->StartAllAction();
nErr = pReader->Read( *pRead );
- pWrtShell->EndAllAction();
+ mpWrtShell->EndAllAction();
}
delete pPam;
delete pReader;
diff --git a/sw/source/ui/app/docshdrw.cxx b/sw/source/ui/app/docshdrw.cxx
index a3764be9a45a..2f1093d7ded7 100644
--- a/sw/source/ui/app/docshdrw.cxx
+++ b/sw/source/ui/app/docshdrw.cxx
@@ -19,36 +19,20 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sw.hxx"
-
#include <hintids.hxx>
-
-#ifndef _SVX_SVXIDS_HRC //autogen
#include <svx/svxids.hrc>
-#endif
-
-
-
-
-
-
-
-
#include <svl/stritem.hxx>
#include <svx/drawitem.hxx>
#include <svx/svdmodel.hxx>
#include <svx/svdoutl.hxx>
#include <svx/xtable.hxx>
-
-#ifndef _DOCSH_HXX
#include <docsh.hxx>
-#endif
#include <doc.hxx>
#include <svx/fmmodel.hxx>
+#include <drawdoc.hxx>
using namespace ::com::sun::star;
@@ -56,26 +40,58 @@ using namespace ::com::sun::star;
Beschreibung: Document laden
--------------------------------------------------------------------*/
-
-void SwDocShell::InitDraw()
+void InitDrawModelAndDocShell(SwDocShell* pSwDocShell, SwDrawModel* pSwDrawDocument)
{
- SdrModel *pDrDoc = pDoc->GetDrawModel();
- if( pDrDoc )
+ if(pSwDrawDocument)
{
- // Listen, bzw. Tables im ItemSet der DocShell anlegen
- PutItem( SvxGradientListItem( pDrDoc->GetGradientListFromSdrModel(), SID_GRADIENT_LIST ) );
- PutItem( SvxHatchListItem( pDrDoc->GetHatchListFromSdrModel(), SID_HATCH_LIST ) );
- PutItem( SvxBitmapListItem( pDrDoc->GetBitmapListFromSdrModel(), SID_BITMAP_LIST ) );
- PutItem( SvxDashListItem( pDrDoc->GetDashListFromSdrModel(), SID_DASH_LIST ) );
- PutItem( SvxLineEndListItem( pDrDoc->GetLineEndListFromSdrModel(), SID_LINEEND_LIST ) );
-
- Outliner& rOutliner = pDrDoc->GetDrawOutliner();
- uno::Reference<linguistic2::XHyphenator> xHyphenator( ::GetHyphenator() );
- rOutliner.SetHyphenator( xHyphenator );
+ if(pSwDocShell == pSwDrawDocument->GetObjectShell())
+ {
+ // association already done, nothing to do
+ }
+ else
+ {
+ // set object shell (mainly for FormControl stuff), maybe zero
+ pSwDrawDocument->SetObjectShell(pSwDocShell);
+
+ // set persist, maybe zero
+ pSwDrawDocument->SetPersist(pSwDocShell);
+
+ // get and decide on the color table to use
+ if(pSwDocShell)
+ {
+ const SvxColorTableItem* pColItemFromDocShell = static_cast< const SvxColorTableItem* >(pSwDocShell->GetItem(SID_COLOR_TABLE));
+
+ if(pColItemFromDocShell)
+ {
+ // the DocShell has a ColorTable, use it also in DrawingLayer
+ pSwDrawDocument->SetColorTableAtSdrModel(pColItemFromDocShell->GetColorTable());
+ }
+ else
+ {
+ // Use the ColorTable which is used at the DrawingLayer's SdrModel
+ pSwDocShell->PutItem(SvxColorTableItem(pSwDrawDocument->GetColorTableFromSdrModel(), SID_COLOR_TABLE));
+ }
+
+ // add other tables in SfxItemSet of the DocShell
+ pSwDocShell->PutItem(SvxGradientListItem(pSwDrawDocument->GetGradientListFromSdrModel(), SID_GRADIENT_LIST));
+ pSwDocShell->PutItem(SvxHatchListItem(pSwDrawDocument->GetHatchListFromSdrModel(), SID_HATCH_LIST));
+ pSwDocShell->PutItem(SvxBitmapListItem(pSwDrawDocument->GetBitmapListFromSdrModel(), SID_BITMAP_LIST));
+ pSwDocShell->PutItem(SvxDashListItem(pSwDrawDocument->GetDashListFromSdrModel(), SID_DASH_LIST));
+ pSwDocShell->PutItem(SvxLineEndListItem(pSwDrawDocument->GetLineEndListFromSdrModel(), SID_LINEEND_LIST));
+ }
+
+ // init hyphenator for DrawingLayer outliner
+ uno::Reference<linguistic2::XHyphenator> xHyphenator(::GetHyphenator());
+ Outliner& rOutliner = pSwDrawDocument->GetDrawOutliner();
+
+ rOutliner.SetHyphenator(xHyphenator);
+ }
+ }
+ else if(pSwDocShell)
+ {
+ // fallback: add the default color list to have one when someone requests it from the DocShell
+ pSwDocShell->PutItem(SvxColorTableItem(XColorList::GetStdColorList(), SID_COLOR_TABLE));
}
- else
- PutItem( SvxColorTableItem( XColorList::GetStdColorList(), SID_COLOR_TABLE ));
}
-
-
+//eof
diff --git a/sw/source/ui/app/docshini.cxx b/sw/source/ui/app/docshini.cxx
index 9591bc7bb9cf..3cdd059f7854 100644
--- a/sw/source/ui/app/docshini.cxx
+++ b/sw/source/ui/app/docshini.cxx
@@ -137,7 +137,7 @@ sal_Bool SwDocShell::InitNew( const uno::Reference < embed::XStorage >& xStor )
RES_PARATR_TABSTOP));
*/
if ( GetCreateMode() == SFX_CREATE_MODE_EMBEDDED )
- SwTransferable::InitOle( this, *pDoc );
+ SwTransferable::InitOle( this, *mpDoc );
// set forbidden characters if necessary
SvxAsianConfig aAsian;
@@ -150,20 +150,20 @@ sal_Bool SwDocShell::InitNew( const uno::Reference < embed::XStorage >& xStor )
ForbiddenCharacters aForbidden;
aAsian.GetStartEndChars( pLocales[i], aForbidden.beginLine, aForbidden.endLine);
LanguageType eLang = SvxLocaleToLanguage(pLocales[i]);
- pDoc->setForbiddenCharacters( eLang, aForbidden);
+ mpDoc->setForbiddenCharacters( eLang, aForbidden);
}
}
- pDoc->set(IDocumentSettingAccess::KERN_ASIAN_PUNCTUATION,
+ mpDoc->set(IDocumentSettingAccess::KERN_ASIAN_PUNCTUATION,
!aAsian.IsKerningWesternTextOnly());
- pDoc->setCharacterCompressionType(static_cast<SwCharCompressType>(aAsian.GetCharDistanceCompression()));
- pDoc->setPrintData(*SW_MOD()->GetPrtOptions(bWeb));
+ mpDoc->setCharacterCompressionType(static_cast<SwCharCompressType>(aAsian.GetCharDistanceCompression()));
+ mpDoc->setPrintData(*SW_MOD()->GetPrtOptions(bWeb));
SubInitNew();
// fuer alle
SwStdFontConfig* pStdFont = SW_MOD()->GetStdFontConfig();
- SfxPrinter* pPrt = pDoc->getPrinter( false );
+ SfxPrinter* pPrt = mpDoc->getPrinter( false );
String sEntry;
sal_uInt16 aFontWhich[] =
@@ -201,7 +201,7 @@ sal_Bool SwDocShell::InitNew( const uno::Reference < embed::XStorage >& xStor )
sal_uInt16 nFontWhich = aFontWhich[i];
sal_uInt16 nFontId = aFontIds[i];
SvxFontItem* pFontItem = 0;
- const SvxLanguageItem& rLang = (const SvxLanguageItem&)pDoc->GetDefault( aLangTypes[i] );
+ const SvxLanguageItem& rLang = (const SvxLanguageItem&)mpDoc->GetDefault( aLangTypes[i] );
LanguageType eLanguage = rLang.GetLanguage();
if(!pStdFont->IsFontDefault(nFontId))
{
@@ -238,20 +238,20 @@ sal_Bool SwDocShell::InitNew( const uno::Reference < embed::XStorage >& xStor )
pFontItem = new SvxFontItem(aLangDefFont.GetFamily(), aLangDefFont.GetName(),
aEmptyStr, aLangDefFont.GetPitch(), aLangDefFont.GetCharSet(), nFontWhich);
}
- pDoc->SetDefault(*pFontItem);
+ mpDoc->SetDefault(*pFontItem);
if( !bHTMLTemplSet )
{
- SwTxtFmtColl *pColl = pDoc->GetTxtCollFromPool(RES_POOLCOLL_STANDARD);
+ SwTxtFmtColl *pColl = mpDoc->GetTxtCollFromPool(RES_POOLCOLL_STANDARD);
pColl->ResetFmtAttr(nFontWhich);
}
delete pFontItem;
sal_Int32 nFontHeight = pStdFont->GetFontHeight( FONT_STANDARD, i, eLanguage );
if(nFontHeight <= 0)
nFontHeight = pStdFont->GetDefaultHeightFor( nFontId, eLanguage );
- pDoc->SetDefault(SvxFontHeightItem( nFontHeight, 100, aFontHeightWhich[i] ));
+ mpDoc->SetDefault(SvxFontHeightItem( nFontHeight, 100, aFontHeightWhich[i] ));
if( !bHTMLTemplSet )
{
- SwTxtFmtColl *pColl = pDoc->GetTxtCollFromPool(RES_POOLCOLL_STANDARD);
+ SwTxtFmtColl *pColl = mpDoc->GetTxtCollFromPool(RES_POOLCOLL_STANDARD);
pColl->ResetFmtAttr(aFontHeightWhich[i]);
}
@@ -274,20 +274,20 @@ sal_Bool SwDocShell::InitNew( const uno::Reference < embed::XStorage >& xStor )
sal_uInt16 nFontWhich = RES_CHRATR_FONT;
sal_uInt16 nFontHeightWhich = RES_CHRATR_FONTSIZE;
- LanguageType eLanguage = static_cast<const SvxLanguageItem&>(pDoc->GetDefault( RES_CHRATR_LANGUAGE )).GetLanguage();
+ LanguageType eLanguage = static_cast<const SvxLanguageItem&>(mpDoc->GetDefault( RES_CHRATR_LANGUAGE )).GetLanguage();
for(sal_uInt8 nIdx = 0; nIdx < 24; nIdx += 2)
{
if(nIdx == 8)
{
nFontWhich = RES_CHRATR_CJK_FONT;
nFontHeightWhich = RES_CHRATR_CJK_FONTSIZE;
- eLanguage = static_cast<const SvxLanguageItem&>(pDoc->GetDefault( RES_CHRATR_CJK_LANGUAGE )).GetLanguage();
+ eLanguage = static_cast<const SvxLanguageItem&>(mpDoc->GetDefault( RES_CHRATR_CJK_LANGUAGE )).GetLanguage();
}
else if(nIdx == 16)
{
nFontWhich = RES_CHRATR_CTL_FONT;
nFontHeightWhich = RES_CHRATR_CTL_FONTSIZE;
- eLanguage = static_cast<const SvxLanguageItem&>(pDoc->GetDefault( RES_CHRATR_CTL_LANGUAGE )).GetLanguage();
+ eLanguage = static_cast<const SvxLanguageItem&>(mpDoc->GetDefault( RES_CHRATR_CTL_LANGUAGE )).GetLanguage();
}
SwTxtFmtColl *pColl = 0;
if(!pStdFont->IsFontDefault(aFontIdPoolId[nIdx]))
@@ -298,7 +298,7 @@ sal_Bool SwDocShell::InitNew( const uno::Reference < embed::XStorage >& xStor )
if( pPrt )
aFont = pPrt->GetFontMetric( aFont );
- pColl = pDoc->GetTxtCollFromPool(aFontIdPoolId[nIdx + 1]);
+ pColl = mpDoc->GetTxtCollFromPool(aFontIdPoolId[nIdx + 1]);
if( !bHTMLTemplSet ||
SFX_ITEM_SET != pColl->GetAttrSet().GetItemState(
nFontWhich, sal_False ) )
@@ -311,7 +311,7 @@ sal_Bool SwDocShell::InitNew( const uno::Reference < embed::XStorage >& xStor )
if(nFontHeight <= 0)
nFontHeight = pStdFont->GetDefaultHeightFor( aFontIdPoolId[nIdx], eLanguage );
if(!pColl)
- pColl = pDoc->GetTxtCollFromPool(aFontIdPoolId[nIdx + 1]);
+ pColl = mpDoc->GetTxtCollFromPool(aFontIdPoolId[nIdx + 1]);
SvxFontHeightItem aFontHeight( (const SvxFontHeightItem&)pColl->GetFmtAttr( nFontHeightWhich, sal_True ));
if(aFontHeight.GetHeight() != sal::static_int_cast<sal_uInt32, sal_Int32>(nFontHeight))
{
@@ -323,7 +323,7 @@ sal_Bool SwDocShell::InitNew( const uno::Reference < embed::XStorage >& xStor )
// the default for documents created via 'File/New' should be 'on'
// (old documents, where this property was not yet implemented, will get the
// value 'false' in the SwDoc c-tor)
- pDoc->set( IDocumentSettingAccess::MATH_BASELINE_ALIGNMENT,
+ mpDoc->set( IDocumentSettingAccess::MATH_BASELINE_ALIGNMENT,
SW_MOD()->GetUsrPref( bWeb )->IsAlignMathObjectsToBaseline() );
}
@@ -331,26 +331,26 @@ sal_Bool SwDocShell::InitNew( const uno::Reference < embed::XStorage >& xStor )
the default adjusment is to the right. */
if( !bHTMLTemplSet &&
FRMDIR_HORI_RIGHT_TOP == GetDefaultFrameDirection(GetAppLanguage()) )
- pDoc->SetDefault( SvxAdjustItem(SVX_ADJUST_RIGHT, RES_PARATR_ADJUST ) );
+ mpDoc->SetDefault( SvxAdjustItem(SVX_ADJUST_RIGHT, RES_PARATR_ADJUST ) );
// OD 09.10.2003 #i18732# - set dynamic pool default for
// item RES_FOLLOW_TEXT_FLOW to sal_False for *new document*.
// Thus, redo this change in method <SwDoc::RemoveAllFmtLanguageDependencies()>,
// which is called from <SwDocShell::ConvertFrom(..)> in order to restore
// the static pool default.
- pDoc->SetDefault( SwFmtFollowTextFlow( sal_False ) );
+ mpDoc->SetDefault( SwFmtFollowTextFlow( sal_False ) );
// --> collapsing borders FME 2005-05-27 #i29550#
- pDoc->SetDefault( SfxBoolItem( RES_COLLAPSING_BORDERS, sal_True ) );
+ mpDoc->SetDefault( SfxBoolItem( RES_COLLAPSING_BORDERS, sal_True ) );
// <-- collapsing
//#i16874# AutoKerning as default for new documents
- pDoc->SetDefault( SvxAutoKernItem( sal_True, RES_CHRATR_AUTOKERN ) );
+ mpDoc->SetDefault( SvxAutoKernItem( sal_True, RES_CHRATR_AUTOKERN ) );
// --> OD 2005-02-10 #i42080# - Due to the several calls of method <SetDefault(..)>
// at the document instance, the document is modified. Thus, reset this
// status here. Note: In method <SubInitNew()> this is also done.
- pDoc->ResetModified();
+ mpDoc->ResetModified();
// <--
return bRet;
@@ -363,13 +363,13 @@ sal_Bool SwDocShell::InitNew( const uno::Reference < embed::XStorage >& xStor )
SwDocShell::SwDocShell( SfxObjectCreateMode eMode ) :
SfxObjectShell ( eMode ),
- pDoc(0),
- pFontList(0),
- pView( 0 ),
- pWrtShell( 0 ),
- pOLEChildList( 0 ),
- nUpdateDocMode(document::UpdateDocMode::ACCORDING_TO_CONFIG),
- bInUpdateFontList(false)
+ mpDoc(0),
+ mpFontList(0),
+ mpView( 0 ),
+ mpWrtShell( 0 ),
+ mpOLEChildList( 0 ),
+ mnUpdateDocMode(document::UpdateDocMode::ACCORDING_TO_CONFIG),
+ mbInUpdateFontList(false)
{
RTL_LOGFILE_CONTEXT_AUTHOR( aLog, "SW", "JP93722", "SwDocShell::SwDocShell" );
Init_Impl();
@@ -382,13 +382,13 @@ SwDocShell::SwDocShell( SfxObjectCreateMode eMode ) :
SwDocShell::SwDocShell( const sal_uInt64 i_nSfxCreationFlags ) :
SfxObjectShell ( i_nSfxCreationFlags ),
- pDoc(0),
- pFontList(0),
- pView( 0 ),
- pWrtShell( 0 ),
- pOLEChildList( 0 ),
- nUpdateDocMode(document::UpdateDocMode::ACCORDING_TO_CONFIG),
- bInUpdateFontList(false)
+ mpDoc(0),
+ mpFontList(0),
+ mpView( 0 ),
+ mpWrtShell( 0 ),
+ mpOLEChildList( 0 ),
+ mnUpdateDocMode(document::UpdateDocMode::ACCORDING_TO_CONFIG),
+ mbInUpdateFontList(false)
{
RTL_LOGFILE_CONTEXT_AUTHOR( aLog, "SW", "JP93722", "SwDocShell::SwDocShell" );
Init_Impl();
@@ -401,13 +401,13 @@ SwDocShell::SwDocShell( const sal_uInt64 i_nSfxCreationFlags ) :
SwDocShell::SwDocShell( SwDoc *pD, SfxObjectCreateMode eMode ):
SfxObjectShell ( eMode ),
- pDoc(pD),
- pFontList(0),
- pView( 0 ),
- pWrtShell( 0 ),
- pOLEChildList( 0 ),
- nUpdateDocMode(document::UpdateDocMode::ACCORDING_TO_CONFIG),
- bInUpdateFontList(false)
+ mpDoc(pD),
+ mpFontList(0),
+ mpView( 0 ),
+ mpWrtShell( 0 ),
+ mpOLEChildList( 0 ),
+ mnUpdateDocMode(document::UpdateDocMode::ACCORDING_TO_CONFIG),
+ mbInUpdateFontList(false)
{
RTL_LOGFILE_CONTEXT_AUTHOR( aLog, "SW", "JP93722", "SwDocShell::SwDocShell" );
Init_Impl();
@@ -421,22 +421,22 @@ SwDocShell::SwDocShell( SwDoc *pD, SfxObjectCreateMode eMode ):
SwDocShell::~SwDocShell()
{
// disable chart related objects now because in ~SwDoc it may be to late for this
- if( pDoc )
+ if( mpDoc )
{
- pDoc->GetChartControllerHelper().Disconnect();
- SwChartDataProvider *pPCD = pDoc->GetChartDataProvider();
+ mpDoc->GetChartControllerHelper().Disconnect();
+ SwChartDataProvider *pPCD = mpDoc->GetChartDataProvider();
if (pPCD)
pPCD->dispose();
}
RemoveLink();
- delete pFontList;
+ delete mpFontList;
// wir als BroadCaster werden auch unser eigener Listener
// (fuer DocInfo/FileNamen/....)
EndListening( *this );
- delete pOLEChildList;
+ delete mpOLEChildList;
}
/* -----------------------------10.09.2001 15:59------------------------------
@@ -461,23 +461,23 @@ void SwDocShell::Init_Impl()
void SwDocShell::AddLink()
{
- if( !pDoc )
+ if( !mpDoc )
{
SwDocFac aFactory;
- pDoc = aFactory.GetDoc();
- pDoc->acquire();
- pDoc->set(IDocumentSettingAccess::HTML_MODE, dynamic_cast< SwWebDocShell* >(this) );
+ mpDoc = aFactory.GetDoc();
+ mpDoc->acquire();
+ mpDoc->set(IDocumentSettingAccess::HTML_MODE, dynamic_cast< SwWebDocShell* >(this) );
}
else
- pDoc->acquire();
- pDoc->SetDocShell( this ); // am Doc den DocShell-Pointer setzen
+ mpDoc->acquire();
+ mpDoc->SetDocShell( this ); // am Doc den DocShell-Pointer setzen
uno::Reference< text::XTextDocument > xDoc(GetBaseModel(), uno::UNO_QUERY);
((SwXTextDocument*)xDoc.get())->Reactivate(this);
- SetPool(&pDoc->GetAttrPool());
+ SetPool(&mpDoc->GetAttrPool());
// am besten erst wenn eine sdbcx::View erzeugt wird !!!
- pDoc->SetOle2Link(LINK(this, SwDocShell, Ole2ModifiedHdl));
+ mpDoc->SetOle2Link(LINK(this, SwDocShell, Ole2ModifiedHdl));
}
/*--------------------------------------------------------------------
@@ -487,17 +487,17 @@ void SwDocShell::AddLink()
void SwDocShell::UpdateFontList()
{
- if(!bInUpdateFontList)
+ if(!mbInUpdateFontList)
{
- bInUpdateFontList = true;
- ASSERT(pDoc, "Kein Doc keine FontList");
- if( pDoc )
+ mbInUpdateFontList = true;
+ ASSERT(mpDoc, "Kein Doc keine FontList");
+ if( mpDoc )
{
- delete pFontList;
- pFontList = new FontList( pDoc->getReferenceDevice( true ) );
- PutItem( SvxFontListItem( pFontList, SID_ATTR_CHAR_FONTLIST ) );
+ delete mpFontList;
+ mpFontList = new FontList( mpDoc->getReferenceDevice( true ) );
+ PutItem( SvxFontListItem( mpFontList, SID_ATTR_CHAR_FONTLIST ) );
}
- bInUpdateFontList = false;
+ mbInUpdateFontList = false;
}
}
@@ -512,19 +512,19 @@ void SwDocShell::RemoveLink()
uno::Reference< text::XTextDocument > xDoc(GetBaseModel(), uno::UNO_QUERY);
((SwXTextDocument*)xDoc.get())->Invalidate();
aFinishedTimer.Stop();
- if(pDoc)
+ if(mpDoc)
{
if( mxBasePool.is() )
{
static_cast<SwDocStyleSheetPool*>(mxBasePool.get())->dispose();
mxBasePool.clear();
}
- sal_Int8 nRefCt = static_cast< sal_Int8 >(pDoc->release());
- pDoc->SetOle2Link(Link());
- pDoc->SetDocShell( 0 );
+ sal_Int8 nRefCt = static_cast< sal_Int8 >(mpDoc->release());
+ mpDoc->SetOle2Link(Link());
+ mpDoc->SetDocShell( 0 );
if( !nRefCt )
- delete pDoc;
- pDoc = 0; // wir haben das Doc nicht mehr !!
+ delete mpDoc;
+ mpDoc = 0; // wir haben das Doc nicht mehr !!
}
}
void SwDocShell::InvalidateModel()
@@ -552,7 +552,7 @@ sal_Bool SwDocShell::Load( SfxMedium& rMedium )
if( SfxObjectShell::Load( rMedium ))
{
RTL_LOGFILE_CONTEXT_TRACE( aLog, "after SfxInPlaceObject::Load" );
- if( pDoc ) // fuer Letzte Version !!
+ if( mpDoc ) // fuer Letzte Version !!
RemoveLink(); // das existierende Loslassen
AddLink(); // Link setzen und Daten updaten !!
@@ -560,11 +560,11 @@ sal_Bool SwDocShell::Load( SfxMedium& rMedium )
// Das Laden
// fuer MD
ASSERT( !mxBasePool.is(), "wer hat seinen Pool nicht zerstoert?" );
- mxBasePool = new SwDocStyleSheetPool( *pDoc, SFX_CREATE_MODE_ORGANIZER == GetCreateMode() );
+ mxBasePool = new SwDocStyleSheetPool( *mpDoc, SFX_CREATE_MODE_ORGANIZER == GetCreateMode() );
if(GetCreateMode() != SFX_CREATE_MODE_ORGANIZER)
{
SFX_ITEMSET_ARG( rMedium.GetItemSet(), pUpdateDocItem, SfxUInt16Item, SID_UPDATEDOCMODE );
- nUpdateDocMode = pUpdateDocItem ? pUpdateDocItem->GetValue() : document::UpdateDocMode::NO_UPDATE;
+ mnUpdateDocMode = pUpdateDocItem ? pUpdateDocItem->GetValue() : document::UpdateDocMode::NO_UPDATE;
}
SwWait aWait( *this, true );
@@ -580,7 +580,7 @@ sal_Bool SwDocShell::Load( SfxMedium& rMedium )
if( ReadXML )
{
ReadXML->SetOrganizerMode( sal_True );
- SwReader aRdr( rMedium, aEmptyStr, pDoc );
+ SwReader aRdr( rMedium, aEmptyStr, mpDoc );
nErr = aRdr.Read( *ReadXML );
ReadXML->SetOrganizerMode( sal_False );
}
@@ -591,7 +591,7 @@ sal_Bool SwDocShell::Load( SfxMedium& rMedium )
case SFX_CREATE_MODE_EMBEDDED:
{
// fuer MWERKS (Mac-Compiler): kann nicht selbststaendig casten
- SwTransferable::InitOle( this, *pDoc );
+ SwTransferable::InitOle( this, *mpDoc );
}
// SfxProgress unterdruecken, wenn man Embedded ist
SW_MOD()->SetEmbeddedLoadSave( sal_True );
@@ -605,7 +605,7 @@ sal_Bool SwDocShell::Load( SfxMedium& rMedium )
{
// die DocInfo vom Doc am DocShell-Medium setzen
RTL_LOGFILE_CONTEXT_TRACE( aLog, "before ReadDocInfo" );
- SwReader aRdr( rMedium, aEmptyStr, pDoc );
+ SwReader aRdr( rMedium, aEmptyStr, mpDoc );
RTL_LOGFILE_CONTEXT_TRACE( aLog, "before Read" );
nErr = aRdr.Read( *pReader );
RTL_LOGFILE_CONTEXT_TRACE( aLog, "after Read" );
@@ -615,13 +615,13 @@ sal_Bool SwDocShell::Load( SfxMedium& rMedium )
// by this formats.
if( dynamic_cast< SwWebDocShell* >(this) )
{
- if( !pDoc->get(IDocumentSettingAccess::HTML_MODE) )
- pDoc->set(IDocumentSettingAccess::HTML_MODE, true);
+ if( !mpDoc->get(IDocumentSettingAccess::HTML_MODE) )
+ mpDoc->set(IDocumentSettingAccess::HTML_MODE, true);
}
if( dynamic_cast< SwGlobalDocShell* >(this) )
{
- if( !pDoc->get(IDocumentSettingAccess::GLOBAL_DOCUMENT) )
- pDoc->set(IDocumentSettingAccess::GLOBAL_DOCUMENT, true);
+ if( !mpDoc->get(IDocumentSettingAccess::GLOBAL_DOCUMENT) )
+ mpDoc->set(IDocumentSettingAccess::GLOBAL_DOCUMENT, true);
}
}
#ifdef DBG_UTIL
@@ -637,7 +637,7 @@ sal_Bool SwDocShell::Load( SfxMedium& rMedium )
}
UpdateFontList();
- InitDraw();
+ InitDrawModelAndDocShell(this, mpDoc ? mpDoc->GetDrawModel() : 0);
SetError( nErr, ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( OSL_LOG_PREFIX ) ) );
bRet = !IsError( nErr );
@@ -647,7 +647,7 @@ sal_Bool SwDocShell::Load( SfxMedium& rMedium )
// if( bRet && !pDoc->IsInLoadAsynchron() &&
// GetCreateMode() == SFX_CREATE_MODE_STANDARD )
// StartLoadFinishedTimer();
- if ( bRet && !pDoc->IsInLoadAsynchron() &&
+ if ( bRet && !mpDoc->IsInLoadAsynchron() &&
GetCreateMode() == SFX_CREATE_MODE_STANDARD )
{
LoadingFinished();
@@ -670,7 +670,7 @@ sal_Bool SwDocShell::LoadFrom( SfxMedium& rMedium )
{
RTL_LOGFILE_CONTEXT_AUTHOR( aLog, "SW", "JP93722", "SwDocShell::LoadFrom" );
sal_Bool bRet = sal_False;
- if( pDoc )
+ if( mpDoc )
RemoveLink();
AddLink(); // Link setzen und Daten updaten !!
@@ -687,11 +687,11 @@ sal_Bool SwDocShell::LoadFrom( SfxMedium& rMedium )
SwWait aWait( *this, true );
{
ASSERT( !mxBasePool.is(), "wer hat seinen Pool nicht zerstoert?" );
- mxBasePool = new SwDocStyleSheetPool( *pDoc, SFX_CREATE_MODE_ORGANIZER == GetCreateMode() );
+ mxBasePool = new SwDocStyleSheetPool( *mpDoc, SFX_CREATE_MODE_ORGANIZER == GetCreateMode() );
if( ReadXML )
{
ReadXML->SetOrganizerMode( sal_True );
- SwReader aRdr( rMedium, aEmptyStr, pDoc );
+ SwReader aRdr( rMedium, aEmptyStr, mpDoc );
nErr = aRdr.Read( *ReadXML );
ReadXML->SetOrganizerMode( sal_False );
}
@@ -726,7 +726,7 @@ sal_Bool SwDocShell::LoadFrom( SfxMedium& rMedium )
} while( sal_False );
SfxObjectShell::LoadFrom( rMedium );
- pDoc->ResetModified();
+ mpDoc->ResetModified();
return bRet;
}
@@ -734,12 +734,12 @@ sal_Bool SwDocShell::LoadFrom( SfxMedium& rMedium )
void SwDocShell::SubInitNew()
{
ASSERT( !mxBasePool.is(), "wer hat seinen Pool nicht zerstoert?" );
- mxBasePool = new SwDocStyleSheetPool( *pDoc, SFX_CREATE_MODE_ORGANIZER == GetCreateMode() );
+ mxBasePool = new SwDocStyleSheetPool( *mpDoc, SFX_CREATE_MODE_ORGANIZER == GetCreateMode() );
UpdateFontList();
- InitDraw();
+ InitDrawModelAndDocShell(this, mpDoc ? mpDoc->GetDrawModel() : 0);
- pDoc->setLinkUpdateMode( GLOBALSETTING );
- pDoc->setFieldUpdateFlags( AUTOUPD_GLOBALSETTING );
+ mpDoc->setLinkUpdateMode( GLOBALSETTING );
+ mpDoc->setFieldUpdateFlags( AUTOUPD_GLOBALSETTING );
const bool bWeb(dynamic_cast< SwWebDocShell* >(this));
@@ -755,7 +755,7 @@ void SwDocShell::SubInitNew()
nRange[ (sizeof(nRange)/sizeof(nRange[0])) - 3 ] = RES_PARATR_TABSTOP;
nRange[ (sizeof(nRange)/sizeof(nRange[0])) - 2 ] = RES_PARATR_HYPHENZONE;
}
- SfxItemSet aDfltSet( pDoc->GetAttrPool(), nRange );
+ SfxItemSet aDfltSet( mpDoc->GetAttrPool(), nRange );
//! get lingu options without loading lingu DLL
SvtLinguOptions aLinguOpt;
@@ -771,7 +771,7 @@ void SwDocShell::SubInitNew()
if(!bWeb)
{
- SvxHyphenZoneItem aHyp( (SvxHyphenZoneItem&) pDoc->GetDefault(
+ SvxHyphenZoneItem aHyp( (SvxHyphenZoneItem&) mpDoc->GetDefault(
RES_PARATR_HYPHENZONE) );
aHyp.GetMinLead() = static_cast< sal_uInt8 >(aLinguOpt.nHyphMinLeading);
aHyp.GetMinTrail() = static_cast< sal_uInt8 >(aLinguOpt.nHyphMinTrailing);
@@ -785,21 +785,21 @@ void SwDocShell::SubInitNew()
}
aDfltSet.Put( SvxColorItem( Color( COL_AUTO ), RES_CHRATR_COLOR ) );
- pDoc->SetDefault( aDfltSet );
+ mpDoc->SetDefault( aDfltSet );
//default page mode for text grid
if(!bWeb)
{
sal_Bool bSquaredPageMode = SW_MOD()->GetUsrPref(sal_False)->IsSquaredPageMode();
- pDoc->SetDefaultPageMode( bSquaredPageMode );
+ mpDoc->SetDefaultPageMode( bSquaredPageMode );
}
- pDoc->ResetModified();
+ mpDoc->ResetModified();
}
/*
* Document Interface Access
*/
-IDocumentDeviceAccess* SwDocShell::getIDocumentDeviceAccess() { return pDoc; }
-const IDocumentSettingAccess* SwDocShell::getIDocumentSettingAccess() const { return pDoc; }
-IDocumentChartDataProviderAccess* SwDocShell::getIDocumentChartDataProviderAccess() { return pDoc; }
+IDocumentDeviceAccess* SwDocShell::getIDocumentDeviceAccess() { return mpDoc; }
+const IDocumentSettingAccess* SwDocShell::getIDocumentSettingAccess() const { return mpDoc; }
+IDocumentChartDataProviderAccess* SwDocShell::getIDocumentChartDataProviderAccess() { return mpDoc; }
diff --git a/sw/source/ui/app/docst.cxx b/sw/source/ui/app/docst.cxx
index b4ff235e7f8e..f01db878d514 100644
--- a/sw/source/ui/app/docst.cxx
+++ b/sw/source/ui/app/docst.cxx
@@ -19,15 +19,12 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sw.hxx"
#include <com/sun/star/style/XStyleFamiliesSupplier.hpp>
#include <com/sun/star/beans/XPropertySet.hpp>
#include <com/sun/star/container/XNameAccess.hpp>
-
#include <hintids.hxx>
#include <sfx2/app.hxx>
#include <svl/whiter.hxx>
@@ -43,6 +40,7 @@
#include <svl/languageoptions.hxx>
#include <editeng/eeitem.hxx>
#include <svx/htmlmode.hxx>
+#include <svx/xdef.hxx>
#include <swmodule.hxx>
#include <wdocsh.hxx>
#include <fmtfsize.hxx>
@@ -52,7 +50,8 @@
#include <SwRewriter.hxx>
#include <numrule.hxx>
#include <swundo.hxx>
-
+#include <svx/svdmodel.hxx>
+#include <svx/drawitem.hxx>
#include "view.hxx"
#include "wrtsh.hxx"
#include "docsh.hxx"
@@ -74,15 +73,12 @@
#include "swevent.hxx"
#include "edtwin.hxx"
#include "unochart.hxx"
-
#include "app.hrc"
#include <fmtui.hrc>
#include "swabstdlg.hxx"
-// --> OD 2008-03-27 #refactorlists#
#include <list.hxx>
-// <--
-
#include <paratr.hxx> //#outline level,add by zhaojianwei
+#include <drawdoc.hxx>
using namespace ::com::sun::star;
@@ -163,7 +159,7 @@ void SwDocShell::StateStyleSheet(SfxItemSet& rSet, SwWrtShell* pSh)
SfxTemplateItem aItem(nWhich, aName);
sal_uInt16 nMask = 0;
- if( pDoc->get(IDocumentSettingAccess::HTML_MODE) )
+ if( mpDoc->get(IDocumentSettingAccess::HTML_MODE) )
nMask = SWSTYLEBIT_HTML;
else
{
@@ -189,7 +185,7 @@ void SwDocShell::StateStyleSheet(SfxItemSet& rSet, SwWrtShell* pSh)
case SID_STYLE_FAMILY3:
- if( pDoc->get(IDocumentSettingAccess::HTML_MODE) )
+ if( mpDoc->get(IDocumentSettingAccess::HTML_MODE) )
rSet.DisableItem( nWhich );
else
{
@@ -205,7 +201,7 @@ void SwDocShell::StateStyleSheet(SfxItemSet& rSet, SwWrtShell* pSh)
case SID_STYLE_FAMILY4:
{
SvxHtmlOptions* pHtmlOpt = SvxHtmlOptions::Get();
- if( pDoc->get(IDocumentSettingAccess::HTML_MODE) && !pHtmlOpt->IsPrintLayoutExtension())
+ if( mpDoc->get(IDocumentSettingAccess::HTML_MODE) && !pHtmlOpt->IsPrintLayoutExtension())
rSet.DisableItem( nWhich );
else
{
@@ -431,14 +427,14 @@ void SwDocShell::ExecStyleSheet( SfxRequest& rReq )
break;
case SFX_STYLE_FAMILY_FRAME:
{
- SwFrmFmt* pFrm = pWrtShell->GetCurFrmFmt();
+ SwFrmFmt* pFrm = mpWrtShell->GetCurFrmFmt();
if( pFrm )
aParam = pFrm->GetName();
}
break;
case SFX_STYLE_FAMILY_CHAR:
{
- SwCharFmt* pChar = pWrtShell->GetCurCharFmt();
+ SwCharFmt* pChar = mpWrtShell->GetCurCharFmt();
if( pChar )
aParam = pChar->GetName();
}
@@ -508,10 +504,6 @@ void SwDocShell::ExecStyleSheet( SfxRequest& rReq )
Beschreibung: Edit
--------------------------------------------------------------------*/
-//UUUU
-//#include <svx/svdmodel.hxx>
-//#include <svx/drawitem.hxx>
-
sal_uInt16 SwDocShell::Edit(
const String &rName,
const String &rParent,
@@ -526,7 +518,7 @@ sal_uInt16 SwDocShell::Edit(
SfxStyleSheetBase *pStyle = 0;
sal_uInt16 nRet = nMask;
- sal_Bool bModified = pDoc->IsModified();
+ sal_Bool bModified = mpDoc->IsModified();
if( bNew )
{
@@ -545,17 +537,16 @@ sal_uInt16 SwDocShell::Edit(
{
if(rParent.Len())
{
- SwTxtFmtColl* pColl = pWrtShell->FindTxtFmtCollByName( rParent );
+ SwTxtFmtColl* pColl = mpWrtShell->FindTxtFmtCollByName( rParent );
if(!pColl)
{
sal_uInt16 nId = SwStyleNameMapper::GetPoolIdFromUIName(rParent, nsSwGetPoolIdFromName::GET_POOLID_TXTCOLL);
if(USHRT_MAX != nId)
- pColl = pWrtShell->GetTxtCollFromPool( nId );
+ pColl = mpWrtShell->GetTxtCollFromPool( nId );
}
pDStyle->GetCollection()->SetDerivedFrom( pColl );
pDStyle->PresetParent( rParent );
- //#outline level,add by zhaojianwei
/*When a new paragraph style is created based on a "to outline style
assigned" paragraph style, the outline level attribute and the list
style attribute of the new paragraph style have to be set to 0
@@ -566,12 +557,11 @@ sal_uInt16 SwDocShell::Edit(
pDStyle->GetCollection()->SetFmtAttr( aItem );
pDStyle->GetCollection()->SetAttrOutlineLevel( 0 );
}
- //<-end,zhaojianwei
}
else
{
- SwTxtFmtColl* pColl = pWrtShell->GetCurTxtFmtColl();
+ SwTxtFmtColl* pColl = mpWrtShell->GetCurTxtFmtColl();
pDStyle->GetCollection()->SetDerivedFrom( pColl );
if( pColl )
pDStyle->PresetParent( pColl->GetName() );
@@ -582,12 +572,12 @@ sal_uInt16 SwDocShell::Edit(
{
if(rParent.Len())
{
- SwCharFmt* pCFmt = pWrtShell->FindCharFmtByName( rParent );
+ SwCharFmt* pCFmt = mpWrtShell->FindCharFmtByName( rParent );
if(!pCFmt)
{
sal_uInt16 nId = SwStyleNameMapper::GetPoolIdFromUIName(rParent, nsSwGetPoolIdFromName::GET_POOLID_CHRFMT);
if(USHRT_MAX != nId)
- pCFmt = pWrtShell->GetCharFmtFromPool( nId );
+ pCFmt = mpWrtShell->GetCharFmtFromPool( nId );
}
pDStyle->GetCharFmt()->SetDerivedFrom( pCFmt );
@@ -595,7 +585,7 @@ sal_uInt16 SwDocShell::Edit(
}
else
{
- SwCharFmt* pCFmt = pWrtShell->GetCurCharFmt();
+ SwCharFmt* pCFmt = mpWrtShell->GetCurCharFmt();
pDStyle->GetCharFmt()->SetDerivedFrom( pCFmt );
if( pCFmt )
pDStyle->PresetParent( pCFmt->GetName() );
@@ -606,12 +596,12 @@ sal_uInt16 SwDocShell::Edit(
{
if(rParent.Len())
{
- SwFrmFmt* pFFmt = pWrtShell->GetDoc()->FindFrmFmtByName( rParent );
+ SwFrmFmt* pFFmt = mpWrtShell->GetDoc()->FindFrmFmtByName( rParent );
if(!pFFmt)
{
sal_uInt16 nId = SwStyleNameMapper::GetPoolIdFromUIName(rParent, nsSwGetPoolIdFromName::GET_POOLID_FRMFMT);
if(USHRT_MAX != nId)
- pFFmt = pWrtShell->GetFrmFmtFromPool( nId );
+ pFFmt = mpWrtShell->GetFrmFmtFromPool( nId );
}
pDStyle->GetFrmFmt()->SetDerivedFrom( pFFmt );
pDStyle->PresetParent( rParent );
@@ -667,29 +657,29 @@ sal_uInt16 SwDocShell::Edit(
rSet.Put( aTmpBrush );
}
}
- if (!bBasic)
+
+ if(SFX_STYLE_FAMILY_PAGE == nFamily || SFX_STYLE_FAMILY_PARA == nFamily)
{
- //UUUU
- //if(SFX_STYLE_FAMILY_FRAME == nFamily)
- //{
- // //UUUU create needed items for XPropertyList entries from the DrawModel so that
- // // the Area TabPage can access them
- // SfxItemSet& rSet = xTmp->GetItemSet();
- // const SdrModel* pDrawModel = GetDoc()->GetDrawModel();
- //
- // rSet.Put(SvxColorTableItem(pDrawModel->GetColorTableFromSdrModel(), SID_COLOR_TABLE));
- // rSet.Put(SvxGradientListItem(pDrawModel->GetGradientListFromSdrModel(), SID_GRADIENT_LIST));
- // rSet.Put(SvxHatchListItem(pDrawModel->GetHatchListFromSdrModel(), SID_HATCH_LIST));
- // rSet.Put(SvxBitmapListItem(pDrawModel->GetBitmapListFromSdrModel(), SID_BITMAP_LIST));
- //}
+ //UUUU create needed items for XPropertyList entries from the DrawModel so that
+ // the Area TabPage can access them
+ SfxItemSet& rSet = xTmp->GetItemSet();
+ const SwDrawModel* pDrawModel = GetDoc()->GetDrawModel();
+
+ rSet.Put(SvxColorTableItem(pDrawModel->GetColorTableFromSdrModel(), SID_COLOR_TABLE));
+ rSet.Put(SvxGradientListItem(pDrawModel->GetGradientListFromSdrModel(), SID_GRADIENT_LIST));
+ rSet.Put(SvxHatchListItem(pDrawModel->GetHatchListFromSdrModel(), SID_HATCH_LIST));
+ rSet.Put(SvxBitmapListItem(pDrawModel->GetBitmapListFromSdrModel(), SID_BITMAP_LIST));
+ }
+ if (!bBasic)
+ {
// vor dem Dialog wird der HtmlMode an der DocShell versenkt
sal_uInt16 nHtmlMode = ::GetHtmlMode(this);
// In HTML mode, we do not always have a printer. In order to show
// the correct page size in the Format - Page dialog, we have to
// get one here.
- SwWrtShell* pCurrShell = ( pActShell ? pActShell : pWrtShell );
+ SwWrtShell* pCurrShell = ( pActShell ? pActShell : mpWrtShell );
if( ( HTMLMODE_ON & nHtmlMode ) &&
!pCurrShell->getIDocumentDeviceAccess()->getPrinter( false ) )
pCurrShell->InitPrt( pCurrShell->getIDocumentDeviceAccess()->getPrinter( true ) );
@@ -701,7 +691,7 @@ sal_uInt16 SwDocShell::Edit(
DBG_ASSERT(pFact, "Dialogdiet fail!");
SfxAbstractTabDialog* pDlg = pFact->CreateTemplateDialog( DLG_TEMPLATE_BASE,
0, *(xTmp.get()), nFamily, nSlot,
- pActShell ? pActShell : pWrtShell, bNew);
+ pActShell ? pActShell : mpWrtShell, bNew);
DBG_ASSERT(pDlg, "Dialogdiet fail!");
if(RET_OK == pDlg->Execute())
{
@@ -735,7 +725,7 @@ sal_uInt16 SwDocShell::Edit(
SID_IMAGE_ORIENTATION,
SID_ATTR_CHAR_FONT,
FN_INSERT_CTRL, FN_INSERT_OBJ_CTRL, 0};
- pView->GetViewFrame()->GetBindings().Invalidate(aInval);
+ mpView->GetViewFrame()->GetBindings().Invalidate(aInval);
}
SfxItemSet aTmpSet( *pDlg->GetOutputItemSet() );
if( SFX_STYLE_FAMILY_CHAR == nFamily )
@@ -751,24 +741,31 @@ sal_uInt16 SwDocShell::Edit(
aTmpSet.ClearItem( RES_BACKGROUND );
}
- //UUUU
- if(bNew && SFX_STYLE_FAMILY_FRAME == nFamily)
- {
- // clear FillStyle so that it works as a derived attribute
- aTmpSet.ClearItem(XATTR_FILLSTYLE);
- }
-
xTmp->SetItemSet( aTmpSet );
if( SFX_STYLE_FAMILY_PAGE == nFamily && SvtLanguageOptions().IsCTLFontEnabled() )
{
const SfxPoolItem *pItem = NULL;
if( aTmpSet.GetItemState( GetPool().GetTrueWhich( SID_ATTR_FRAMEDIRECTION, sal_False ) , sal_True, &pItem ) == SFX_ITEM_SET )
- SwChartHelper::DoUpdateAllCharts( pDoc );
+ SwChartHelper::DoUpdateAllCharts( mpDoc );
}
}
+
+ //UUUU
+ if(bNew)
+ {
+ if(SFX_STYLE_FAMILY_FRAME == nFamily || SFX_STYLE_FAMILY_PARA == nFamily)
+ {
+ // clear FillStyle so that it works as a derived attribute
+ SfxItemSet aTmpSet(*pDlg->GetOutputItemSet());
+
+ aTmpSet.ClearItem(XATTR_FILLSTYLE);
+ xTmp->SetItemSet(aTmpSet);
+ }
+ }
+
if(SFX_STYLE_FAMILY_PAGE == nFamily)
- pView->InvalidateRulerPos();
+ mpView->InvalidateRulerPos();
if( bNew )
mxBasePool->Broadcast( SfxStyleSheetHint( SFX_STYLESHEET_CREATED, *xTmp.get() ) );
@@ -779,10 +776,10 @@ sal_uInt16 SwDocShell::Edit(
// Kopf-/Fusszeilen entfernt werden. Sonst kommts zu GPFs!!!
delete pDlg;
- pDoc->SetModified();
+ mpDoc->SetModified();
if( !bModified ) // Bug 57028
{
- pDoc->GetIDocumentUndoRedo().SetUndoNoResetModified();
+ mpDoc->GetIDocumentUndoRedo().SetUndoNoResetModified();
}
GetWrtShell()->EndAllAction();
@@ -794,11 +791,11 @@ sal_uInt16 SwDocShell::Edit(
// #116530#
//pBasePool->Erase( &aTmp );
GetWrtShell()->Undo(1);
- pDoc->GetIDocumentUndoRedo().ClearRedo();
+ mpDoc->GetIDocumentUndoRedo().ClearRedo();
}
if( !bModified )
- pDoc->ResetModified();
+ mpDoc->ResetModified();
delete pDlg;
}
}
@@ -839,15 +836,15 @@ sal_uInt16 SwDocShell::Edit(
xTmp->SetItemSet( aTmpSet );
}
if(SFX_STYLE_FAMILY_PAGE == nFamily)
- pView->InvalidateRulerPos();
+ mpView->InvalidateRulerPos();
if( bNew )
mxBasePool->Broadcast( SfxStyleSheetHint( SFX_STYLESHEET_CREATED, *xTmp.get() ) );
- pDoc->SetModified();
+ mpDoc->SetModified();
if( !bModified ) // Bug 57028
{
- pDoc->GetIDocumentUndoRedo().SetUndoNoResetModified();
+ mpDoc->GetIDocumentUndoRedo().SetUndoNoResetModified();
}
GetWrtShell()->EndAllAction();
}
@@ -910,11 +907,8 @@ sal_uInt16 SwDocShell::ApplyStyles(
}
case SFX_STYLE_FAMILY_PARA:
{
- // --> OD 2007-11-06 #i62675#
- // clear also list attributes at affected text nodes, if paragraph
- // style has the list style attribute set.
+ // clear also list attributes at affected text nodes, if paragraph style has the list style attribute set.
pSh->SetTxtFmtColl( pStyle->GetCollection(), true );
- // <--
break;
}
case SFX_STYLE_FAMILY_FRAME:
@@ -931,14 +925,9 @@ sal_uInt16 SwDocShell::ApplyStyles(
case SFX_STYLE_FAMILY_PSEUDO:
{
- // --> OD 2008-02-08 #newlistlevelattrs#
- // reset indent attribute on applying list style
- // --> OD 2008-03-17 #refactorlists#
- // continue list of list style
const SwNumRule* pNumRule = pStyle->GetNumRule();
const String sListIdForStyle = pNumRule->GetDefaultListId();
pSh->SetCurNumRule( *pNumRule, false, sListIdForStyle, true );
- // <--
break;
}
@@ -960,7 +949,7 @@ sal_uInt16 SwDocShell::DoWaterCan(const String &rName, sal_uInt16 nFamily)
{
ASSERT(GetWrtShell(), "Keine Shell, keine Styles");
- SwEditWin& rEdtWin = pView->GetEditWin();
+ SwEditWin& rEdtWin = mpView->GetEditWin();
SwApplyTemplate* pApply = rEdtWin.GetApplyTemplate();
sal_Bool bWaterCan = !(pApply && pApply->eType != 0);
if( !rName.Len() )
@@ -1002,7 +991,7 @@ sal_uInt16 SwDocShell::DoWaterCan(const String &rName, sal_uInt16 nFamily)
aTemplate.eType = 0;
// Template anwenden
- pView->GetEditWin().SetApplyTemplate(aTemplate);
+ mpView->GetEditWin().SetApplyTemplate(aTemplate);
return nFamily;
}
@@ -1296,22 +1285,22 @@ void SwDocShell::_LoadStyles( SfxObjectShell& rSource, sal_Bool bPreserveCurrent
// der Vorlage erhalten, einmal alle FixFelder der
// Source aktualisieren
if(!bPreserveCurrentDocument)
- ((SwDocShell&)rSource).pDoc->SetFixFields(false, NULL);
- if( pWrtShell )
+ ((SwDocShell&)rSource).mpDoc->SetFixFields(false, NULL);
+ if( mpWrtShell )
{
- pWrtShell->StartAllAction();
- pDoc->ReplaceStyles( *((SwDocShell&)rSource).pDoc );
- pWrtShell->EndAllAction();
+ mpWrtShell->StartAllAction();
+ mpDoc->ReplaceStyles( *((SwDocShell&)rSource).mpDoc );
+ mpWrtShell->EndAllAction();
}
else
{
- sal_Bool bModified = pDoc->IsModified();
- pDoc->ReplaceStyles( *((SwDocShell&)rSource).pDoc );
- if( !bModified && pDoc->IsModified() && !pView )
+ sal_Bool bModified = mpDoc->IsModified();
+ mpDoc->ReplaceStyles( *((SwDocShell&)rSource).mpDoc );
+ if( !bModified && mpDoc->IsModified() && !mpView )
{
// die View wird spaeter angelegt, ueberschreibt aber das
// Modify-Flag. Per Undo ist sowieso nichts mehr zu machen
- pDoc->GetIDocumentUndoRedo().SetUndoNoResetModified();
+ mpDoc->GetIDocumentUndoRedo().SetUndoNoResetModified();
}
}
}
diff --git a/sw/source/ui/app/docstyle.cxx b/sw/source/ui/app/docstyle.cxx
index 5566b8c6e8aa..4551b214e7d0 100644
--- a/sw/source/ui/app/docstyle.cxx
+++ b/sw/source/ui/app/docstyle.cxx
@@ -19,23 +19,19 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sw.hxx"
#define _SVSTDARR_USHORTS
-
#include <svl/smplhint.hxx>
#include <hintids.hxx>
#include <svl/itemiter.hxx>
#include <svl/eitem.hxx>
+#include <svx/xdef.hxx>
#include <unotools/syslocale.hxx>
#include <editeng/boxitem.hxx>
#include <editeng/numitem.hxx>
-// --> OD 2008-02-13 #newlistlevelattrs#
#include <editeng/lrspitem.hxx>
-// <--
#include <fmtcol.hxx>
#include <uitool.hxx>
#include <swmodule.hxx>
@@ -65,6 +61,11 @@
#include <svx/svxids.hrc>
#include <SwRewriter.hxx>
#include <svx/fmmodel.hxx>
+#include <svx/xfillit0.hxx>
+#include <svx/xflftrit.hxx>
+#include <svx/svdmodel.hxx>
+#include <svx/drawitem.hxx>
+#include <drawdoc.hxx>
// MD 06.02.95: Die Formatnamen in der Liste aller Namen haben als
// erstes Zeichen die Familie:
@@ -663,6 +664,11 @@ String SwDocStyleSheet::GetDescription(SfxMapUnit eUnit)
sal_Bool bHasCJKFontPrefix = sal_False;
SvtCJKOptions aCJKOptions;
+ //UUUU Get currently used FillStyle and remember, also need the XFillFloatTransparenceItem
+ // to decide if gradient transparence is used
+ const XFillStyle eFillStyle(static_cast< const XFillStyleItem& >(pSet->Get(XATTR_FILLSTYLE)).GetValue());
+ const bool bUseFloatTransparence(static_cast< const XFillFloatTransparenceItem& >(pSet->Get(XATTR_FILLFLOATTRANSPARENCE)).IsEnabled());
+
while ( pItem )
{
if(!IsInvalidItem(pItem))
@@ -689,6 +695,44 @@ String SwDocStyleSheet::GetDescription(SfxMapUnit eUnit)
sal_Bool bIsDefault = sal_False;
switch ( pItem->Which() )
{
+ //UUUU
+ case XATTR_FILLCOLOR:
+ {
+ // only use active FillStyle information
+ bIsDefault = (XFILL_SOLID == eFillStyle);
+ break;
+ }
+ case XATTR_FILLGRADIENT:
+ {
+ // only use active FillStyle information
+ bIsDefault = (XFILL_GRADIENT == eFillStyle);
+ break;
+ }
+ case XATTR_FILLHATCH:
+ {
+ // only use active FillStyle information
+ bIsDefault = (XFILL_HATCH == eFillStyle);
+ break;
+ }
+ case XATTR_FILLBITMAP:
+ {
+ // only use active FillStyle information
+ bIsDefault = (XFILL_BITMAP == eFillStyle);
+ break;
+ }
+ case XATTR_FILLTRANSPARENCE:
+ {
+ // only active when not FloatTransparence
+ bIsDefault = !bUseFloatTransparence;
+ break;
+ }
+ case XATTR_FILLFLOATTRANSPARENCE:
+ {
+ // only active when FloatTransparence
+ bIsDefault = bUseFloatTransparence;
+ break;
+ }
+
case SID_ATTR_PARA_PAGENUM:
sPageNum = aItemPresentation;
break;
@@ -1023,10 +1067,6 @@ sal_Bool SwDocStyleSheet::SetFollow( const String& rStr)
Beschreibung: ueber Name und Family, Mask den ItemSet rausholen
--------------------------------------------------------------------*/
-//UUUU
-#include <svx/svdmodel.hxx>
-#include <svx/drawitem.hxx>
-
SfxItemSet& SwDocStyleSheet::GetItemSet()
{
if(!bPhysical)
@@ -1072,7 +1112,7 @@ SfxItemSet& SwDocStyleSheet::GetItemSet()
//UUUU create needed items for XPropertyList entries from the DrawModel so that
// the Area TabPage can access them
- const SdrModel* pDrawModel = rDoc.GetDrawModel();
+ const SwDrawModel* pDrawModel = rDoc.GetDrawModel();
aCoreSet.Put(SvxColorTableItem(pDrawModel->GetColorTableFromSdrModel(), SID_COLOR_TABLE));
aCoreSet.Put(SvxGradientListItem(pDrawModel->GetGradientListFromSdrModel(), SID_GRADIENT_LIST));
@@ -1084,6 +1124,12 @@ SfxItemSet& SwDocStyleSheet::GetItemSet()
case SFX_STYLE_FAMILY_PAGE :
{
+ //UUUU set correct parent to get the XFILL_NONE FillStyle as needed
+ if(!aCoreSet.GetParent())
+ {
+ aCoreSet.SetParent(&rDoc.GetDfltFrmFmt()->GetAttrSet());
+ }
+
ASSERT(pDesc, "Kein PageDescriptor");
::PageDescToItemSet(*((SwPageDesc*)pDesc), aCoreSet);
}
@@ -1222,11 +1268,10 @@ void SwDocStyleSheet::SetItemSet( const SfxItemSet& rSet,
if( pColl != &pColl->GetNextTxtFmtColl() )
pCColl->SetNextTxtFmtColl( pColl->GetNextTxtFmtColl() );
- //pCColl->SetOutlineLevel( pColl->GetOutlineLevel() );//#outline level,zhaojianwei
if( pColl->IsAssignedToListLevelOfOutlineStyle())
pCColl->AssignToListLevelOfOutlineStyle(pColl->GetAssignedOutlineStyleLevel());
else
- pCColl->DeleteAssignmentToListLevelOfOutlineStyle();//<--end,zhaojianwei
+ pCColl->DeleteAssignmentToListLevelOfOutlineStyle();
diff --git a/sw/source/ui/chrdlg/paradlg.src b/sw/source/ui/chrdlg/paradlg.src
index fa7f710134f8..b71c2fa1e316 100644
--- a/sw/source/ui/chrdlg/paradlg.src
+++ b/sw/source/ui/chrdlg/paradlg.src
@@ -24,6 +24,8 @@
#include "globals.hrc"
#include "chrdlg.hrc"
#include "paradlg.hrc"
+#include <svx/dialogs.hrc>
+
#define HelpText "error - hier keine HelpTexte HelpText"
// #define DLG_PARA 256
TabDialog DLG_PARA
@@ -85,12 +87,28 @@ TabDialog DLG_PARA
Text [ en-US ] = "Borders" ;
PageResID = TP_BORDER ;
};
+
+ //UUUU new Area and Transparence TabPages
+ PageItem
+ {
+ Identifier = RID_SVXPAGE_AREA;
+ PageResID = RID_SVXPAGE_AREA;
+ Text [ en-US ] = "Area" ;
+ };
PageItem
{
- Identifier = TP_BACKGROUND ;
- Text [ en-US ] = "Background" ;
- PageResID = TP_BACKGROUND ;
+ Identifier = RID_SVXPAGE_TRANSPARENCE;
+ PageResID = RID_SVXPAGE_TRANSPARENCE;
+ Text [ en-US ] = "Transparency" ;
};
+
+ //UUUU Remove?
+ //PageItem
+ //{
+ // Identifier = TP_BACKGROUND ;
+ // Text [ en-US ] = "Background" ;
+ // PageResID = TP_BACKGROUND ;
+ //};
};
};
};
diff --git a/sw/source/ui/chrdlg/pardlg.cxx b/sw/source/ui/chrdlg/pardlg.cxx
index 8f548fbdb561..3836f495d240 100644
--- a/sw/source/ui/chrdlg/pardlg.cxx
+++ b/sw/source/ui/chrdlg/pardlg.cxx
@@ -150,13 +150,20 @@ SwParaDlg::SwParaDlg(Window *pParent,
}
if(!bHtmlMode || (nHtmlMode & (HTMLMODE_SOME_STYLES|HTMLMODE_FULL_STYLES)))
{
- DBG_ASSERT(pFact->GetTabPageCreatorFunc( RID_SVXPAGE_BACKGROUND ), "GetTabPageCreatorFunc fail!");
- DBG_ASSERT(pFact->GetTabPageRangesFunc( RID_SVXPAGE_BACKGROUND ), "GetTabPageRangesFunc fail!");
- AddTabPage(TP_BACKGROUND, pFact->GetTabPageCreatorFunc( RID_SVXPAGE_BACKGROUND ), pFact->GetTabPageRangesFunc( RID_SVXPAGE_BACKGROUND ) );
+ //UUUU remove?
+ //DBG_ASSERT(pFact->GetTabPageCreatorFunc( RID_SVXPAGE_BACKGROUND ), "GetTabPageCreatorFunc fail!");
+ //DBG_ASSERT(pFact->GetTabPageRangesFunc( RID_SVXPAGE_BACKGROUND ), "GetTabPageRangesFunc fail!");
+ //AddTabPage(TP_BACKGROUND, pFact->GetTabPageCreatorFunc( RID_SVXPAGE_BACKGROUND ), pFact->GetTabPageRangesFunc( RID_SVXPAGE_BACKGROUND ) );
+
+ //UUUU add Area and Transparence TabPages
+ AddTabPage(RID_SVXPAGE_AREA);
+ AddTabPage(RID_SVXPAGE_TRANSPARENCE);
}
else
{
- RemoveTabPage(TP_BACKGROUND);
+ //UUUU RemoveTabPage(TP_BACKGROUND);
+ RemoveTabPage(RID_SVXPAGE_AREA);
+ RemoveTabPage(RID_SVXPAGE_TRANSPARENCE);
}
if(!bHtmlMode || (nHtmlMode & HTMLMODE_PARA_BORDER))
{
@@ -178,88 +185,123 @@ __EXPORT SwParaDlg::~SwParaDlg()
}
-void __EXPORT SwParaDlg::PageCreated(sal_uInt16 nId, SfxTabPage& rPage)
+void __EXPORT SwParaDlg::PageCreated(sal_uInt16 nId,SfxTabPage& rPage)
{
SwWrtShell& rSh = rView.GetWrtShell();
SfxAllItemSet aSet(*(GetInputSetImpl()->GetPool()));
- // Bei Tabellenumrandung kann im Writer kein Schatten eingestellt werden
- if (nId == TP_BORDER)
+ switch(nId)
{
- aSet.Put (SfxUInt16Item(SID_SWMODE_TYPE,SW_BORDER_MODE_PARA));
- rPage.PageCreated(aSet);
- }
- else if( nId == TP_PARA_STD )
- {
- aSet.Put(SfxUInt16Item(SID_SVXSTDPARAGRAPHTABPAGE_PAGEWIDTH,
- static_cast< sal_uInt16 >(rSh.GetAnyCurRect(RECT_PAGE_PRT).Width()) ));
-
- if (!bDrawParaDlg)
+ case TP_BORDER:
{
- aSet.Put(SfxUInt32Item(SID_SVXSTDPARAGRAPHTABPAGE_FLAGSET,0x000E));
- aSet.Put(SfxUInt32Item(SID_SVXSTDPARAGRAPHTABPAGE_ABSLINEDIST, MM50/10));
-
+ // Bei Tabellenumrandung kann im Writer kein Schatten eingestellt werden
+ aSet.Put(SfxUInt16Item(SID_SWMODE_TYPE,SW_BORDER_MODE_PARA));
+ rPage.PageCreated(aSet);
+ break;
}
- rPage.PageCreated(aSet);
- }
- else if( TP_PARA_ALIGN == nId)
- {
- if (!bDrawParaDlg)
+ case TP_PARA_STD:
{
- aSet.Put(SfxBoolItem(SID_SVXPARAALIGNTABPAGE_ENABLEJUSTIFYEXT,sal_True));
+ aSet.Put(SfxUInt16Item(SID_SVXSTDPARAGRAPHTABPAGE_PAGEWIDTH,
+ static_cast<sal_uInt16>(rSh.GetAnyCurRect(RECT_PAGE_PRT).Width())));
+
+ if(!bDrawParaDlg)
+ {
+ aSet.Put(SfxUInt32Item(SID_SVXSTDPARAGRAPHTABPAGE_FLAGSET,0x000E));
+ aSet.Put(SfxUInt32Item(SID_SVXSTDPARAGRAPHTABPAGE_ABSLINEDIST,MM50 / 10));
+
+ }
rPage.PageCreated(aSet);
+ break;
}
- }
- else if( TP_PARA_EXT == nId )
- {
- // Seitenumbruch nur, wenn der Cursor im Body-Bereich und nicht in
- // einer Tabelle steht
- const sal_uInt16 eType = rSh.GetFrmType(0,sal_True);
- if( !(FRMTYPE_BODY & eType) ||
- rSh.GetSelectionType() & nsSelectionType::SEL_TBL )
+ case TP_PARA_ALIGN:
{
- aSet.Put(SfxBoolItem(SID_DISABLE_SVXEXTPARAGRAPHTABPAGE_PAGEBREAK,sal_True));
- rPage.PageCreated(aSet);
+ if(!bDrawParaDlg)
+ {
+ aSet.Put(SfxBoolItem(SID_SVXPARAALIGNTABPAGE_ENABLEJUSTIFYEXT,sal_True));
+ rPage.PageCreated(aSet);
+ }
+ break;
}
- }
- else if( TP_DROPCAPS == nId )
- {
- ((SwDropCapsPage&)rPage).SetFormat(sal_False);
- }
- else if( TP_BACKGROUND == nId )
- {
- if(!( nHtmlMode & HTMLMODE_ON ) ||
- nHtmlMode & HTMLMODE_SOME_STYLES)
+ case TP_PARA_EXT:
{
- aSet.Put (SfxUInt32Item(SID_FLAG_TYPE, SVX_SHOW_SELECTOR));
- rPage.PageCreated(aSet);
+ // Seitenumbruch nur, wenn der Cursor im Body-Bereich und nicht in
+ // einer Tabelle steht
+ const sal_uInt16 eType = rSh.GetFrmType(0,sal_True);
+ if(!(FRMTYPE_BODY & eType) ||
+ rSh.GetSelectionType() & nsSelectionType::SEL_TBL)
+ {
+ aSet.Put(SfxBoolItem(SID_DISABLE_SVXEXTPARAGRAPHTABPAGE_PAGEBREAK,sal_True));
+ rPage.PageCreated(aSet);
+ }
+ break;
}
- }
- else if( TP_NUMPARA == nId)
- {
- //-->#outline level,added by zhaojianwei
- SwTxtFmtColl* pTmpColl = rSh.GetCurTxtFmtColl();
- if( pTmpColl && pTmpColl->IsAssignedToListLevelOfOutlineStyle() )
+ case TP_DROPCAPS:
+ {
+ ((SwDropCapsPage&)rPage).SetFormat(sal_False);
+ break;
+ }
+ case TP_BACKGROUND:
{
- ((SwParagraphNumTabPage&)rPage).DisableOutline() ;
- }//<-end
-
- ((SwParagraphNumTabPage&)rPage).EnableNewStart();
- ListBox & rBox = ((SwParagraphNumTabPage&)rPage).GetStyleBox();
- SfxStyleSheetBasePool* pPool = rView.GetDocShell()->GetStyleSheetPool();
- pPool->SetSearchMask(SFX_STYLE_FAMILY_PSEUDO, SFXSTYLEBIT_ALL);
- const SfxStyleSheetBase* pBase = pPool->First();
- SvStringsSortDtor aNames;
- while(pBase)
+ if(!(nHtmlMode & HTMLMODE_ON) ||
+ nHtmlMode & HTMLMODE_SOME_STYLES)
+ {
+ aSet.Put(SfxUInt32Item(SID_FLAG_TYPE,SVX_SHOW_SELECTOR));
+ rPage.PageCreated(aSet);
+ }
+ break;
+ }
+ case TP_NUMPARA:
{
- aNames.Insert(new String(pBase->GetName()));
- pBase = pPool->Next();
+ //-->#outline level,added by zhaojianwei
+ SwTxtFmtColl* pTmpColl = rSh.GetCurTxtFmtColl();
+ if(pTmpColl && pTmpColl->IsAssignedToListLevelOfOutlineStyle())
+ {
+ ((SwParagraphNumTabPage&)rPage).DisableOutline();
+ }//<-end
+
+ ((SwParagraphNumTabPage&)rPage).EnableNewStart();
+ ListBox & rBox = ((SwParagraphNumTabPage&)rPage).GetStyleBox();
+ SfxStyleSheetBasePool* pPool = rView.GetDocShell()->GetStyleSheetPool();
+ pPool->SetSearchMask(SFX_STYLE_FAMILY_PSEUDO,SFXSTYLEBIT_ALL);
+ const SfxStyleSheetBase* pBase = pPool->First();
+ SvStringsSortDtor aNames;
+ while(pBase)
+ {
+ aNames.Insert(new String(pBase->GetName()));
+ pBase = pPool->Next();
+ }
+ for(sal_uInt16 i = 0; i < aNames.Count(); i++)
+ rBox.InsertEntry(*aNames.GetObject(i));
+ break;
}
- for(sal_uInt16 i = 0; i < aNames.Count(); i++)
- rBox.InsertEntry(*aNames.GetObject(i));
- }
-}
+ //UUUU inits for Area and Transparency TabPages
+ // The selection attribute lists (XPropertyList derivates, e.g. XColorList for
+ // the color table) need to be added as items (e.g. SvxColorTableItem) to make
+ // these pages find the needed attributes for fill style suggestions.
+ // These are added in SwDocStyleSheet::GetItemSet() for the SFX_STYLE_FAMILY_PARA on
+ // demand, but could also be directly added from the DrawModel.
+ case RID_SVXPAGE_AREA:
+ {
+ SfxItemSet aNew(*aSet.GetPool(),
+ SID_COLOR_TABLE, SID_BITMAP_LIST,
+ SID_OFFER_IMPORT, SID_OFFER_IMPORT, 0, 0);
+
+ aNew.Put(*GetInputSetImpl());
+ // add flag for direct graphic content selection
+ aNew.Put(SfxBoolItem(SID_OFFER_IMPORT, true));
+
+ rPage.PageCreated(aNew);
+ break;
+ }
+ case RID_SVXPAGE_TRANSPARENCE:
+ {
+ rPage.PageCreated(*GetInputSetImpl());
+ break;
+ }
+ }
+}
+// eof
diff --git a/sw/source/ui/dbui/dbinsdlg.cxx b/sw/source/ui/dbui/dbinsdlg.cxx
index 7b3dd1cc0df3..e6002d6d46c9 100644
--- a/sw/source/ui/dbui/dbinsdlg.cxx
+++ b/sw/source/ui/dbui/dbinsdlg.cxx
@@ -1809,7 +1809,7 @@ void SwInsertDBColAutoPilot::Load()
rtl::OUString sColumn;
pSubProps[0] >>= sColumn;
- //check for existance of the loaded column name
+ //check for existence of the loaded column name
sal_Bool bFound = sal_False;
for(sal_Int32 nRealColumn = 0; nRealColumn < aDBColumns.Count(); nRealColumn++)
{
diff --git a/sw/source/ui/dbui/maildispatcher.cxx b/sw/source/ui/dbui/maildispatcher.cxx
index e9061b9ff06b..7a7f23a81f50 100644
--- a/sw/source/ui/dbui/maildispatcher.cxx
+++ b/sw/source/ui/dbui/maildispatcher.cxx
@@ -112,7 +112,7 @@ MailDispatcher::MailDispatcher(uno::Reference<mail::XSmtpService> mailserver) :
throw uno::RuntimeException();
// wait until the mail dispatcher thread is really alive
- // and has aquired a reference to this instance of the
+ // and has acquired a reference to this instance of the
// class
mail_dispatcher_active_.wait();
}
@@ -242,7 +242,7 @@ void MailDispatcher::sendMailMessageNotifyListener(uno::Reference<mail::XMailMes
void MailDispatcher::run()
{
- // aquire a self reference in order to avoid race
+ // acquire a self reference in order to avoid race
// conditions. The last client of this class must
// call shutdown before releasing his last reference
// to this class in order to shutdown this thread
diff --git a/sw/source/ui/dbui/swdbtoolsclient.cxx b/sw/source/ui/dbui/swdbtoolsclient.cxx
index 9035985a2c7f..6248f9618815 100644
--- a/sw/source/ui/dbui/swdbtoolsclient.cxx
+++ b/sw/source/ui/dbui/swdbtoolsclient.cxx
@@ -159,7 +159,7 @@ void SwDbtoolsClient::getFactory()
if (pDBTFactory)
{
m_xDataAccessFactory = pDBTFactory;
- // by definition, the factory was aquired once
+ // by definition, the factory was acquired once
m_xDataAccessFactory->release();
}
}
diff --git a/sw/source/ui/dialog/SwSpellDialogChildWindow.cxx b/sw/source/ui/dialog/SwSpellDialogChildWindow.cxx
index a8a53adcf94e..85e1e15eee04 100644
--- a/sw/source/ui/dialog/SwSpellDialogChildWindow.cxx
+++ b/sw/source/ui/dialog/SwSpellDialogChildWindow.cxx
@@ -19,8 +19,6 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sw.hxx"
@@ -56,6 +54,7 @@
#include <cmdid.h>
#include <svx/svdlegacy.hxx>
#include <svx/fmmodel.hxx>
+#include <drawdoc.hxx>
using namespace ::com::sun::star;
using namespace ::com::sun::star::uno;
diff --git a/sw/source/ui/dochdl/swdtflvr.cxx b/sw/source/ui/dochdl/swdtflvr.cxx
index 754a6121bc8c..0e30896ff90d 100644
--- a/sw/source/ui/dochdl/swdtflvr.cxx
+++ b/sw/source/ui/dochdl/swdtflvr.cxx
@@ -3865,7 +3865,7 @@ void SwTrnsfrDdeLink::Disconnect( sal_Bool bRemoveDataAdvise )
sal_Bool bIsModified = pDoc->IsModified();
IDocumentMarkAccess* const pMarkAccess = pDoc->getIDocumentMarkAccess();
- // check, if DdeBookmark is already in its desctruction
+ // check, if DdeBookmark is already in its destruction
IDocumentMarkAccess::const_iterator_t ppMark = pMarkAccess->findMark(sName);
if ( ppMark != pMarkAccess->getAllMarksEnd() )
{
diff --git a/sw/source/ui/docvw/PostItMgr.cxx b/sw/source/ui/docvw/PostItMgr.cxx
index 1c38eacbfc69..a1ed2e1bdf20 100644
--- a/sw/source/ui/docvw/PostItMgr.cxx
+++ b/sw/source/ui/docvw/PostItMgr.cxx
@@ -127,7 +127,7 @@ SwPostItMgr::SwPostItMgr(SwView* pView)
SW_MOD()->GetRedlineAuthor();
// collect all PostIts and redline comments that exist after loading the document
- // don't check for existance for any of them, don't focus them
+ // don't check for existence for any of them, don't focus them
AddPostIts(false,false);
/* this code can be used once we want redline comments in the Sidebar
AddRedlineComments(false,false);
@@ -620,9 +620,9 @@ void SwPostItMgr::LayoutPostIts()
mbLayouting = true;
//loop over all pages and do the layout
- // - create SwPostIt if neccessary
+ // - create SwPostIt if necessary
// - place SwPostIts on their initial position
- // - calculate neccessary height for all PostIts together
+ // - calculate necessary height for all PostIts together
bool bUpdate = false;
for (unsigned long n=0;n<mPages.size();n++)
{
@@ -866,7 +866,7 @@ bool SwPostItMgr::BorderOverPageBorder(unsigned long aPage) const
void SwPostItMgr::Scroll(const long lScroll,const unsigned long aPage)
{
DBG_ASSERT((lScroll % GetScrollSize() )==0,"SwPostItMgr::Scroll: scrolling by wrong value");
- // do not scroll more than neccessary up or down
+ // do not scroll more than necessary up or down
if ( ((mPages[aPage-1]->lOffset == 0) && (lScroll>0)) || ( BorderOverPageBorder(aPage) && (lScroll<0)) )
return;
@@ -1013,7 +1013,7 @@ bool SwPostItMgr::LayoutByPage(std::list<SwSidebarWin*> &aVisiblePostItList,cons
bool bDone = false;
bool bScrollbars = false;
- // do all neccessary resizings
+ // do all necessary resizings
if (lVisibleHeight < lNeededHeight)
{
// ok, now we have to really resize and adding scrollbars
@@ -1223,7 +1223,7 @@ void SwPostItMgr::RemoveSidebarWin()
}
// copy to new vector, otherwise RemoveItem would operate and delete stuff on mvPostItFlds as well
-// RemoveItem will clean up the core field and visible postit if neccessary
+// RemoveItem will clean up the core field and visible postit if necessary
// we cannot just delete everything as before, as postits could move into change tracking
void SwPostItMgr::Delete(String aAuthor)
{
diff --git a/sw/source/ui/docvw/SidebarWin.cxx b/sw/source/ui/docvw/SidebarWin.cxx
index cdcbcb7bcb1c..3af6c58c8c45 100644
--- a/sw/source/ui/docvw/SidebarWin.cxx
+++ b/sw/source/ui/docvw/SidebarWin.cxx
@@ -579,7 +579,8 @@ void SwSidebarWin::SetPosAndSize()
}
// text range overlay
- if ( mrSidebarItem.maLayoutInfo.mnStartNodeIdx != 0
+ if ( mrMgr.ShowNotes()
+ && mrSidebarItem.maLayoutInfo.mnStartNodeIdx != 0
&& mrSidebarItem.maLayoutInfo.mnStartContent != STRING_NOTFOUND )
{
std::vector< basegfx::B2DRange > aAnnotationTextRanges;
@@ -1447,7 +1448,7 @@ void SwRedComment::MouseButtonDown( const MouseEvent& rMEvt )
void SwRedComment::Delete()
{
SwSidebarWin::Delete();
- // we are not neccessarily on our redline, so let's move there
+ // we are not necessarily on our redline, so let's move there
GotoPos();
DocView()->GetWrtShell().SetRedlineComment(EMPTYSTRING);
DocView()->GetWrtShell().ClearMark();
diff --git a/sw/source/ui/docvw/edtwin.cxx b/sw/source/ui/docvw/edtwin.cxx
index a7d2807fae27..b54ee51ab788 100644
--- a/sw/source/ui/docvw/edtwin.cxx
+++ b/sw/source/ui/docvw/edtwin.cxx
@@ -5485,7 +5485,7 @@ void SwEditWin::SetChainMode( sal_Bool bOn )
uno::Reference< ::com::sun::star::accessibility::XAccessible > SwEditWin::CreateAccessible()
{
vos::OGuard aGuard(Application::GetSolarMutex()); // this should have
- // happend already!!!
+ // happened already!!!
SwWrtShell *pSh = rView.GetWrtShellPtr();
ASSERT( pSh, "no writer shell, no accessible object" );
uno::Reference<
diff --git a/sw/source/ui/envelp/labimg.cxx b/sw/source/ui/envelp/labimg.cxx
index ffb3ff365b3f..694ac9da099a 100644
--- a/sw/source/ui/envelp/labimg.cxx
+++ b/sw/source/ui/envelp/labimg.cxx
@@ -208,7 +208,7 @@ Sequence<rtl::OUString> SwLabCfgItem::GetPropertyNames()
{
static const char* aLabelPropNames[] =
{
- "Medium/Continous", // 0
+ "Medium/Continuous", // 0
"Medium/Brand", // 1
"Medium/Type", // 2
"Format/Column", // 3
@@ -302,7 +302,7 @@ SwLabCfgItem::SwLabCfgItem(sal_Bool bLabel) :
bNoConfigValues = sal_False;
switch(nProperty)
{
- case 0: aItem.bCont = *(sal_Bool*)pValues[nProp].getValue(); break;// "Medium/Continous",
+ case 0: aItem.bCont = *(sal_Bool*)pValues[nProp].getValue(); break;// "Medium/Continuous",
case 1: pValues[nProp] >>= aItem.aMake; break;// "Medium/Brand",
case 2: pValues[nProp] >>= aItem.aType; break;// "Medium/Type",
case 3: pValues[nProp] >>= aItem.nCols; break;// "Format/Column",
@@ -419,7 +419,7 @@ void SwLabCfgItem::Commit()
nProperty += 3;
switch(nProperty)
{
- case 0: pValues[nProp].setValue(&aItem.bCont, rType); break;// "Medium/Continous",
+ case 0: pValues[nProp].setValue(&aItem.bCont, rType); break;// "Medium/Continuous",
case 1: pValues[nProp] <<= aItem.aMake; break;// "Medium/Brand",
case 2: pValues[nProp] <<= aItem.aType; break;// "Medium/Type",
case 3: pValues[nProp] <<= aItem.nCols; break;// "Format/Column",
diff --git a/sw/source/ui/fmtui/tmpdlg.cxx b/sw/source/ui/fmtui/tmpdlg.cxx
index 6d83b9b07b3e..8fba4e5ae446 100644
--- a/sw/source/ui/fmtui/tmpdlg.cxx
+++ b/sw/source/ui/fmtui/tmpdlg.cxx
@@ -199,9 +199,15 @@ SwTemplateDlg::SwTemplateDlg(Window* pParent,
SwParagraphNumTabPage::GetRanges);
AddTabPage(TP_DROPCAPS, SwDropCapsPage::Create,
SwDropCapsPage::GetRanges );
- DBG_ASSERT(pFact->GetTabPageCreatorFunc( RID_SVXPAGE_BACKGROUND ), "GetTabPageCreatorFunc fail!");
- DBG_ASSERT(pFact->GetTabPageRangesFunc( RID_SVXPAGE_BACKGROUND ), "GetTabPageRangesFunc fail!");
- AddTabPage(TP_BACKGROUND, pFact->GetTabPageCreatorFunc( RID_SVXPAGE_BACKGROUND ), pFact->GetTabPageRangesFunc( RID_SVXPAGE_BACKGROUND ) );
+ //UUUU remove?
+ //DBG_ASSERT(pFact->GetTabPageCreatorFunc( RID_SVXPAGE_BACKGROUND ), "GetTabPageCreatorFunc fail!");
+ //DBG_ASSERT(pFact->GetTabPageRangesFunc( RID_SVXPAGE_BACKGROUND ), "GetTabPageRangesFunc fail!");
+ //AddTabPage(TP_BACKGROUND, pFact->GetTabPageCreatorFunc( RID_SVXPAGE_BACKGROUND ), pFact->GetTabPageRangesFunc( RID_SVXPAGE_BACKGROUND ) );
+
+ //UUUU add Area and Transparence TabPages
+ AddTabPage(RID_SVXPAGE_AREA);
+ AddTabPage(RID_SVXPAGE_TRANSPARENCE);
+
DBG_ASSERT(pFact->GetTabPageCreatorFunc( RID_SVXPAGE_BORDER ), "GetTabPageCreatorFunc fail!");
DBG_ASSERT(pFact->GetTabPageRangesFunc( RID_SVXPAGE_BORDER ), "GetTabPageRangesFunc fail!");
AddTabPage(TP_BORDER, pFact->GetTabPageCreatorFunc( RID_SVXPAGE_BORDER ), pFact->GetTabPageRangesFunc( RID_SVXPAGE_BORDER ) );
@@ -248,8 +254,10 @@ SwTemplateDlg::SwTemplateDlg(Window* pParent,
SwFrmAddPage::GetRanges );
AddTabPage(TP_FRM_WRAP, SwWrapTabPage::Create,
SwWrapTabPage::GetRanges );
- DBG_ASSERT(pFact->GetTabPageCreatorFunc( RID_SVXPAGE_BACKGROUND ), "GetTabPageCreatorFunc fail!");
- DBG_ASSERT(pFact->GetTabPageRangesFunc( RID_SVXPAGE_BACKGROUND ), "GetTabPageRangesFunc fail!");
+
+ //UUUU remove?
+ //DBG_ASSERT(pFact->GetTabPageCreatorFunc( RID_SVXPAGE_BACKGROUND ), "GetTabPageCreatorFunc fail!");
+ //DBG_ASSERT(pFact->GetTabPageRangesFunc( RID_SVXPAGE_BACKGROUND ), "GetTabPageRangesFunc fail!");
//UUUU remove?
//AddTabPage(TP_BACKGROUND, pFact->GetTabPageCreatorFunc( RID_SVXPAGE_BACKGROUND ), pFact->GetTabPageRangesFunc( RID_SVXPAGE_BACKGROUND ) );
@@ -272,9 +280,15 @@ SwTemplateDlg::SwTemplateDlg(Window* pParent,
// Seitenvorlagen
case SFX_STYLE_FAMILY_PAGE:
{
- DBG_ASSERT(pFact->GetTabPageCreatorFunc( RID_SVXPAGE_BACKGROUND ), "GetTabPageCreatorFunc fail!");
- DBG_ASSERT(pFact->GetTabPageRangesFunc( RID_SVXPAGE_BACKGROUND ), "GetTabPageRangesFunc fail!");
- AddTabPage(TP_BACKGROUND, pFact->GetTabPageCreatorFunc( RID_SVXPAGE_BACKGROUND ), pFact->GetTabPageRangesFunc( RID_SVXPAGE_BACKGROUND ) );
+ //UUUU remove?
+ //DBG_ASSERT(pFact->GetTabPageCreatorFunc( RID_SVXPAGE_BACKGROUND ), "GetTabPageCreatorFunc fail!");
+ //DBG_ASSERT(pFact->GetTabPageRangesFunc( RID_SVXPAGE_BACKGROUND ), "GetTabPageRangesFunc fail!");
+ //AddTabPage(TP_BACKGROUND, pFact->GetTabPageCreatorFunc( RID_SVXPAGE_BACKGROUND ), pFact->GetTabPageRangesFunc( RID_SVXPAGE_BACKGROUND ) );
+
+ //UUUU add Area and Transparence TabPages
+ AddTabPage(RID_SVXPAGE_AREA);
+ AddTabPage(RID_SVXPAGE_TRANSPARENCE);
+
AddTabPage(TP_HEADER_PAGE, String(SW_RES(STR_PAGE_HEADER)),
SvxHeaderPage::Create,
SvxHeaderPage::GetRanges );
@@ -401,247 +415,296 @@ const SfxItemSet* SwTemplateDlg::GetRefreshedSet()
Beschreibung:
--------------------------------------------------------------------*/
-void SwTemplateDlg::PageCreated( sal_uInt16 nId, SfxTabPage &rPage )
+void SwTemplateDlg::PageCreated(sal_uInt16 nId,SfxTabPage &rPage)
{
//Namen der Vorlagen und Metric setzen
- String sNumCharFmt, sBulletCharFmt;
- SwStyleNameMapper::FillUIName( RES_POOLCHR_NUM_LEVEL, sNumCharFmt);
- SwStyleNameMapper::FillUIName( RES_POOLCHR_BUL_LEVEL, sBulletCharFmt);
+ String sNumCharFmt,sBulletCharFmt;
+ SwStyleNameMapper::FillUIName(RES_POOLCHR_NUM_LEVEL,sNumCharFmt);
+ SwStyleNameMapper::FillUIName(RES_POOLCHR_BUL_LEVEL,sBulletCharFmt);
SfxAllItemSet aSet(*(GetInputSetImpl()->GetPool()));
- switch( nId )
+ switch(nId)
{
case TP_CHAR_STD:
- {
- ASSERT(::GetActiveView(), "keine View aktiv");
-
- SvxFontListItem aFontListItem( *( (SvxFontListItem*)::GetActiveView()->
- GetDocShell()->GetItem( SID_ATTR_CHAR_FONTLIST ) ) );
-
- aSet.Put (SvxFontListItem( aFontListItem.GetFontList(), SID_ATTR_CHAR_FONTLIST));
- sal_uInt32 nFlags = 0;
- if(rPage.GetItemSet().GetParent() && 0 == (nHtmlMode & HTMLMODE_ON ))
- nFlags = SVX_RELATIVE_MODE;
- if( SFX_STYLE_FAMILY_CHAR == nType )
- nFlags = nFlags|SVX_PREVIEW_CHARACTER;
- aSet.Put (SfxUInt32Item(SID_FLAG_TYPE, nFlags));
- rPage.PageCreated(aSet);
- }
+ {
+ ASSERT(::GetActiveView(),"keine View aktiv");
+
+ SvxFontListItem aFontListItem(*((SvxFontListItem*)::GetActiveView()->
+ GetDocShell()->GetItem(SID_ATTR_CHAR_FONTLIST)));
+
+ aSet.Put(SvxFontListItem(aFontListItem.GetFontList(),SID_ATTR_CHAR_FONTLIST));
+ sal_uInt32 nFlags = 0;
+ if(rPage.GetItemSet().GetParent() && 0 == (nHtmlMode & HTMLMODE_ON))
+ nFlags = SVX_RELATIVE_MODE;
+ if(SFX_STYLE_FAMILY_CHAR == nType)
+ nFlags = nFlags | SVX_PREVIEW_CHARACTER;
+ aSet.Put(SfxUInt32Item(SID_FLAG_TYPE,nFlags));
+ rPage.PageCreated(aSet);
break;
+ }
case TP_CHAR_EXT:
- {
+ {
sal_uInt32 nFlags = SVX_ENABLE_FLASH;
- if( SFX_STYLE_FAMILY_CHAR == nType )
- nFlags = nFlags|SVX_PREVIEW_CHARACTER;
- aSet.Put (SfxUInt32Item(SID_FLAG_TYPE, nFlags));
+ if(SFX_STYLE_FAMILY_CHAR == nType)
+ nFlags = nFlags | SVX_PREVIEW_CHARACTER;
+ aSet.Put(SfxUInt32Item(SID_FLAG_TYPE,nFlags));
rPage.PageCreated(aSet);
- }
break;
+ }
case TP_CHAR_POS:
- if( SFX_STYLE_FAMILY_CHAR == nType )
+ {
+ if(SFX_STYLE_FAMILY_CHAR == nType)
{
- aSet.Put (SfxUInt32Item(SID_FLAG_TYPE, SVX_PREVIEW_CHARACTER));
+ aSet.Put(SfxUInt32Item(SID_FLAG_TYPE,SVX_PREVIEW_CHARACTER));
rPage.PageCreated(aSet);
}
- break;
+ break;
+ }
case TP_CHAR_TWOLN:
- if( SFX_STYLE_FAMILY_CHAR == nType )
+ {
+ if(SFX_STYLE_FAMILY_CHAR == nType)
{
- aSet.Put (SfxUInt32Item(SID_FLAG_TYPE, SVX_PREVIEW_CHARACTER));
+ aSet.Put(SfxUInt32Item(SID_FLAG_TYPE,SVX_PREVIEW_CHARACTER));
rPage.PageCreated(aSet);
}
- break;
+ break;
+ }
case TP_PARA_STD:
+ {
+ if(rPage.GetItemSet().GetParent())
{
- if( rPage.GetItemSet().GetParent() )
- {
- aSet.Put(SfxUInt32Item(SID_SVXSTDPARAGRAPHTABPAGE_ABSLINEDIST,MM50/10));
- aSet.Put(SfxUInt32Item(SID_SVXSTDPARAGRAPHTABPAGE_FLAGSET,0x000F));
- rPage.PageCreated(aSet);
- }
-
+ aSet.Put(SfxUInt32Item(SID_SVXSTDPARAGRAPHTABPAGE_ABSLINEDIST,MM50 / 10));
+ aSet.Put(SfxUInt32Item(SID_SVXSTDPARAGRAPHTABPAGE_FLAGSET,0x000F));
+ rPage.PageCreated(aSet);
}
+
break;
+ }
+
case TP_NUMPARA:
+ {
+ //-->#outlinelevel added by zhaojianwei
+ // handle if the current paragraph style is assigned to a list level of outline style,
+ SwTxtFmtColl* pTmpColl = pWrtShell->FindTxtFmtCollByName(GetStyleSheet().GetName());
+ if(pTmpColl && pTmpColl->IsAssignedToListLevelOfOutlineStyle())
{
- //-->#outlinelevel added by zhaojianwei
- // handle if the current paragraph style is assigned to a list level of outline style,
- SwTxtFmtColl* pTmpColl = pWrtShell->FindTxtFmtCollByName( GetStyleSheet().GetName() );
- if( pTmpColl && pTmpColl->IsAssignedToListLevelOfOutlineStyle() )
- {
- ((SwParagraphNumTabPage&)rPage).DisableOutline() ;
- ((SwParagraphNumTabPage&)rPage).DisableNumbering();
- }//<-end
- ListBox & rBox = ((SwParagraphNumTabPage&)rPage).GetStyleBox();
- SfxStyleSheetBasePool* pPool = pWrtShell->GetView().GetDocShell()->GetStyleSheetPool();
- pPool->SetSearchMask(SFX_STYLE_FAMILY_PSEUDO, SFXSTYLEBIT_ALL);
- const SfxStyleSheetBase* pBase = pPool->First();
- SvStringsSortDtor aNames;
- while(pBase)
- {
- aNames.Insert(new String(pBase->GetName()));
- pBase = pPool->Next();
- }
- for(sal_uInt16 i = 0; i < aNames.Count(); i++)
- rBox.InsertEntry(*aNames.GetObject(i));
- }
- break;
- case TP_PARA_ALIGN:
+ ((SwParagraphNumTabPage&)rPage).DisableOutline();
+ ((SwParagraphNumTabPage&)rPage).DisableNumbering();
+ }//<-end
+ ListBox & rBox = ((SwParagraphNumTabPage&)rPage).GetStyleBox();
+ SfxStyleSheetBasePool* pPool = pWrtShell->GetView().GetDocShell()->GetStyleSheetPool();
+ pPool->SetSearchMask(SFX_STYLE_FAMILY_PSEUDO,SFXSTYLEBIT_ALL);
+ const SfxStyleSheetBase* pBase = pPool->First();
+ SvStringsSortDtor aNames;
+ while(pBase)
{
- aSet.Put(SfxBoolItem(SID_SVXPARAALIGNTABPAGE_ENABLEJUSTIFYEXT,sal_True));
- rPage.PageCreated(aSet);
+ aNames.Insert(new String(pBase->GetName()));
+ pBase = pPool->Next();
}
+ for(sal_uInt16 i = 0; i < aNames.Count(); i++)
+ rBox.InsertEntry(*aNames.GetObject(i));
break;
+ }
+
+ case TP_PARA_ALIGN:
+ {
+ aSet.Put(SfxBoolItem(SID_SVXPARAALIGNTABPAGE_ENABLEJUSTIFYEXT,sal_True));
+ rPage.PageCreated(aSet);
+ break;
+ }
case TP_FRM_STD:
- ((SwFrmPage&)rPage).SetNewFrame( sal_True );
- ((SwFrmPage&)rPage).SetFormatUsed( sal_True );
+ {
+ ((SwFrmPage&)rPage).SetNewFrame(sal_True);
+ ((SwFrmPage&)rPage).SetFormatUsed(sal_True);
break;
+ }
case TP_FRM_ADD:
+ {
((SwFrmAddPage&)rPage).SetFormatUsed(sal_True);
((SwFrmAddPage&)rPage).SetNewFrame(sal_True);
break;
+ }
case TP_FRM_WRAP:
- ((SwWrapTabPage&)rPage).SetFormatUsed( sal_True, sal_False );
+ {
+ ((SwWrapTabPage&)rPage).SetFormatUsed(sal_True,sal_False);
break;
+ }
case TP_COLUMN:
- if( nType == SFX_STYLE_FAMILY_FRAME )
+ {
+ if(nType == SFX_STYLE_FAMILY_FRAME)
((SwColumnPage&)rPage).SetFrmMode(sal_True);
- ((SwColumnPage&)rPage).SetFormatUsed( sal_True );
+ ((SwColumnPage&)rPage).SetFormatUsed(sal_True);
break;
+ }
//UUUU do not remove; many other style dialog combinations still use the SfxTabPage
// for the SvxBrushItem (see RID_SVXPAGE_BACKGROUND)
case TP_BACKGROUND:
{
sal_Int32 nFlagType = 0;
- if( SFX_STYLE_FAMILY_PARA == nType )
+ if(SFX_STYLE_FAMILY_PARA == nType)
nFlagType |= SVX_SHOW_PARACTL;
- if( SFX_STYLE_FAMILY_CHAR != nType )
+ if(SFX_STYLE_FAMILY_CHAR != nType)
nFlagType |= SVX_SHOW_SELECTOR;
- if( SFX_STYLE_FAMILY_FRAME == nType )
+ if(SFX_STYLE_FAMILY_FRAME == nType)
nFlagType |= SVX_ENABLE_TRANSPARENCY;
- aSet.Put (SfxUInt32Item(SID_FLAG_TYPE, nFlagType));
+ aSet.Put(SfxUInt32Item(SID_FLAG_TYPE,nFlagType));
rPage.PageCreated(aSet);
+ break;
}
- break;
+
case TP_CONDCOLL:
+ {
((SwCondCollPage&)rPage).SetCollection(
- ((SwDocStyleSheet&)GetStyleSheet()).GetCollection(), bNewStyle );
+ ((SwDocStyleSheet&)GetStyleSheet()).GetCollection(),bNewStyle);
break;
+ }
case TP_PAGE_STD:
- if(0 == (nHtmlMode & HTMLMODE_ON ))
+ {
+ if(0 == (nHtmlMode & HTMLMODE_ON))
{
List aList;
String* pNew = new String;
- SwStyleNameMapper::FillUIName( RES_POOLCOLL_TEXT, *pNew );
- aList.Insert( pNew, (sal_uLong)0 );
- if( pWrtShell )
+ SwStyleNameMapper::FillUIName(RES_POOLCOLL_TEXT,*pNew);
+ aList.Insert(pNew,(sal_uLong)0);
+
+ if(pWrtShell)
{
- SfxStyleSheetBasePool* pStyleSheetPool = pWrtShell->
- GetView().GetDocShell()->GetStyleSheetPool();
+ SfxStyleSheetBasePool* pStyleSheetPool = pWrtShell->GetView().GetDocShell()->GetStyleSheetPool();
pStyleSheetPool->SetSearchMask(SFX_STYLE_FAMILY_PARA);
SfxStyleSheetBase *pFirstStyle = pStyleSheetPool->First();
+
while(pFirstStyle)
{
- aList.Insert( new String(pFirstStyle->GetName()),
- aList.Count());
+ aList.Insert(new String(pFirstStyle->GetName()), aList.Count());
pFirstStyle = pStyleSheetPool->Next();
}
}
- aSet.Put (SfxStringListItem(SID_COLLECT_LIST, &aList));
+
+ //UUUU set DrawingLayer FillStyles active
+ aSet.Put(SfxBoolItem(SID_DRAWINGLAYER_FILLSTYLES, true));
+ aSet.Put(SfxStringListItem(SID_COLLECT_LIST, &aList));
rPage.PageCreated(aSet);
- for( sal_uInt16 i = (sal_uInt16)aList.Count(); i; --i )
+
+ for(sal_uInt16 i = (sal_uInt16)aList.Count(); i; --i)
+ {
delete (String*)aList.Remove(i);
+ }
}
+
break;
+ }
case TP_MACRO_ASSIGN:
{
SfxAllItemSet aNewSet(*aSet.GetPool());
- aNewSet.Put( SwMacroAssignDlg::AddEvents(MACASSGN_ALLFRM) );
- if ( pWrtShell )
- rPage.SetFrame( pWrtShell->GetView().GetViewFrame()->GetFrame().GetFrameInterface() );
+ aNewSet.Put(SwMacroAssignDlg::AddEvents(MACASSGN_ALLFRM));
+ if(pWrtShell)
+ rPage.SetFrame(pWrtShell->GetView().GetViewFrame()->GetFrame().GetFrameInterface());
rPage.PageCreated(aNewSet);
break;
}
case RID_SVXPAGE_PICK_NUM:
- {
+ {
aSet.Put (SfxStringItem(SID_NUM_CHAR_FMT,sNumCharFmt));
aSet.Put (SfxStringItem(SID_BULLET_CHAR_FMT,sBulletCharFmt));
rPage.PageCreated(aSet);
- }
- break;
+ break;
+ }
+
case RID_SVXPAGE_NUM_OPTIONS:
{
-
- aSet.Put (SfxStringItem(SID_NUM_CHAR_FMT,sNumCharFmt));
- aSet.Put (SfxStringItem(SID_BULLET_CHAR_FMT,sBulletCharFmt));
+ aSet.Put(SfxStringItem(SID_NUM_CHAR_FMT,sNumCharFmt));
+ aSet.Put(SfxStringItem(SID_BULLET_CHAR_FMT,sBulletCharFmt));
// Zeichenvorlagen sammeln
ListBox rCharFmtLB(this);
rCharFmtLB.Clear();
- rCharFmtLB.InsertEntry( ViewShell::GetShellRes()->aStrNone );
+ rCharFmtLB.InsertEntry(ViewShell::GetShellRes()->aStrNone);
SwDocShell* pDocShell = ::GetActiveWrtShell()->GetView().GetDocShell();
- ::FillCharStyleListBox(rCharFmtLB, pDocShell);
+ ::FillCharStyleListBox(rCharFmtLB,pDocShell);
List aList;
for(sal_uInt16 j = 0; j < rCharFmtLB.GetEntryCount(); j++)
{
-
- aList.Insert( new XubString(rCharFmtLB.GetEntry(j)), LIST_APPEND );
+ aList.Insert(new XubString(rCharFmtLB.GetEntry(j)),LIST_APPEND);
}
- aSet.Put( SfxStringListItem( SID_CHAR_FMT_LIST_BOX,&aList ) ) ;
+ aSet.Put(SfxStringListItem(SID_CHAR_FMT_LIST_BOX,&aList));
FieldUnit eMetric = ::GetDfltMetric(0 != dynamic_cast< SwWebDocShell* >( pDocShell));
- aSet.Put ( SfxAllEnumItem(SID_METRIC_ITEM, static_cast< sal_uInt16 >(eMetric)));
+ aSet.Put(SfxAllEnumItem(SID_METRIC_ITEM,static_cast<sal_uInt16>(eMetric)));
rPage.PageCreated(aSet);
- for( sal_uInt16 i = (sal_uInt16)aList.Count(); i; --i )
- delete (XubString*)aList.Remove(i);
+ for(sal_uInt16 i = (sal_uInt16)aList.Count(); i; --i)
+ delete (XubString*)aList.Remove(i);
aList.Clear();
+ break;
}
- break;
+
case RID_SVXPAGE_NUM_POSITION:
{
SwDocShell* pDocShell = ::GetActiveWrtShell()->GetView().GetDocShell();
FieldUnit eMetric = ::GetDfltMetric(0 != dynamic_cast< SwWebDocShell* >( pDocShell));
- aSet.Put ( SfxAllEnumItem(SID_METRIC_ITEM, static_cast< sal_uInt16 >(eMetric)));
+ aSet.Put(SfxAllEnumItem(SID_METRIC_ITEM,static_cast<sal_uInt16>(eMetric)));
rPage.PageCreated(aSet);
+ break;
}
- break;
- case RID_SVXPAGE_PICK_BULLET :
+
+ case RID_SVXPAGE_PICK_BULLET:
+ {
+ aSet.Put(SfxStringItem(SID_BULLET_CHAR_FMT,sBulletCharFmt));
+ rPage.PageCreated(aSet);
+ break;
+ }
+
+ case TP_HEADER_PAGE:
+ {
+ if(0 == (nHtmlMode & HTMLMODE_ON))
{
- aSet.Put (SfxStringItem(SID_BULLET_CHAR_FMT,sBulletCharFmt));
- rPage.PageCreated(aSet);
+ static_cast< SvxHeaderPage& >(rPage).EnableDynamicSpacing();
}
- break;
- case TP_HEADER_PAGE:
- if(0 == (nHtmlMode & HTMLMODE_ON ))
- ((SvxHeaderPage&)rPage).EnableDynamicSpacing();
- break;
+
+ //UUUU set DrawingLayer FillStyles active
+ aSet.Put(SfxBoolItem(SID_DRAWINGLAYER_FILLSTYLES, true));
+ rPage.PageCreated(aSet);
+
+ break;
+ }
+
case TP_FOOTER_PAGE:
- if(0 == (nHtmlMode & HTMLMODE_ON ))
- ((SvxFooterPage&)rPage).EnableDynamicSpacing();
- break;
- case TP_BORDER :
- if( SFX_STYLE_FAMILY_PARA == nType )
+ {
+ if(0 == (nHtmlMode & HTMLMODE_ON))
+ {
+ static_cast< SvxFooterPage& >(rPage).EnableDynamicSpacing();
+ }
+
+ //UUUU set DrawingLayer FillStyles active
+ aSet.Put(SfxBoolItem(SID_DRAWINGLAYER_FILLSTYLES, true));
+ rPage.PageCreated(aSet);
+
+ break;
+ }
+
+ case TP_BORDER:
+ {
+ if(SFX_STYLE_FAMILY_PARA == nType)
{
- aSet.Put (SfxUInt16Item(SID_SWMODE_TYPE,SW_BORDER_MODE_PARA));
+ aSet.Put(SfxUInt16Item(SID_SWMODE_TYPE,SW_BORDER_MODE_PARA));
}
- else if( SFX_STYLE_FAMILY_FRAME == nType )
+ else if(SFX_STYLE_FAMILY_FRAME == nType)
{
- aSet.Put (SfxUInt16Item(SID_SWMODE_TYPE,SW_BORDER_MODE_FRAME));
+ aSet.Put(SfxUInt16Item(SID_SWMODE_TYPE,SW_BORDER_MODE_FRAME));
}
rPage.PageCreated(aSet);
-
- break;
+ break;
+ }
//UUUU inits for Area and Transparency TabPages
// The selection attribute lists (XPropertyList derivates, e.g. XColorList for
@@ -651,24 +714,20 @@ void SwTemplateDlg::PageCreated( sal_uInt16 nId, SfxTabPage &rPage )
// demand, but could also be directly added from the DrawModel.
case RID_SVXPAGE_AREA:
{
- SfxItemSet aNew(*aSet.GetPool(),
- SID_COLOR_TABLE, SID_BITMAP_LIST,
- SID_OFFER_IMPORT, SID_OFFER_IMPORT, 0, 0);
-
- aNew.Put(GetStyleSheet().GetItemSet());
+ aSet.Put(GetStyleSheet().GetItemSet());
// add flag for direct graphic content selection
- aNew.Put(SfxBoolItem(SID_OFFER_IMPORT, true));
+ aSet.Put(SfxBoolItem(SID_OFFER_IMPORT, true));
- rPage.PageCreated(aNew);
+ rPage.PageCreated(aSet);
+ break;
}
- break;
case RID_SVXPAGE_TRANSPARENCE:
{
rPage.PageCreated(GetStyleSheet().GetItemSet());
+ break;
}
- break;
}
}
diff --git a/sw/source/ui/fmtui/tmpdlg.src b/sw/source/ui/fmtui/tmpdlg.src
index f9b23a473ec5..383c1149f525 100644
--- a/sw/source/ui/fmtui/tmpdlg.src
+++ b/sw/source/ui/fmtui/tmpdlg.src
@@ -148,12 +148,29 @@ TabDialog DLG_TEMPLATE_2
Text [ en-US ] = "Drop Caps" ;
PageResID = TP_DROPCAPS ;
};
+
+ //UUUU new Area and Transparence TabPages
PageItem
{
- Identifier = TP_BACKGROUND ;
- Text [ en-US ] = "Background" ;
- PageResID = TP_BACKGROUND ;
+ Identifier = RID_SVXPAGE_AREA;
+ PageResID = RID_SVXPAGE_AREA;
+ Text [ en-US ] = "Area" ;
+ };
+ PageItem
+ {
+ Identifier = RID_SVXPAGE_TRANSPARENCE;
+ PageResID = RID_SVXPAGE_TRANSPARENCE;
+ Text [ en-US ] = "Transparency" ;
};
+
+ //UUUU remove?
+ //PageItem
+ //{
+ // Identifier = TP_BACKGROUND ;
+ // Text [ en-US ] = "Background" ;
+ // PageResID = TP_BACKGROUND ;
+ //};
+
PageItem
{
Identifier = TP_BORDER ;
@@ -196,12 +213,28 @@ TabDialog DLG_TEMPLATE_4
Text [ en-US ] = "Page" ;
PageResID = TP_PAGE_STD ;
};*/
+
+ //UUUU new Area and Transparence TabPages
PageItem
{
- Identifier = TP_BACKGROUND ;
- Text [ en-US ] = "Background" ;
- PageResID = TP_BACKGROUND ;
+ Identifier = RID_SVXPAGE_AREA;
+ PageResID = RID_SVXPAGE_AREA;
+ Text [ en-US ] = "Area" ;
};
+ PageItem
+ {
+ Identifier = RID_SVXPAGE_TRANSPARENCE;
+ PageResID = RID_SVXPAGE_TRANSPARENCE;
+ Text [ en-US ] = "Transparency" ;
+ };
+
+ //UUUU remove?
+ //PageItem
+ //{
+ // Identifier = TP_BACKGROUND ;
+ // Text [ en-US ] = "Background" ;
+ // PageResID = TP_BACKGROUND ;
+ //};
/* PageItem
{
Identifier = TP_BORDER ;
diff --git a/sw/source/ui/frmdlg/colex.cxx b/sw/source/ui/frmdlg/colex.cxx
index 81f348c1e28e..4df7a20b648d 100644
--- a/sw/source/ui/frmdlg/colex.cxx
+++ b/sw/source/ui/frmdlg/colex.cxx
@@ -19,19 +19,12 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sw.hxx"
-
-
-
#include "cmdid.h"
#include "hintids.hxx"
#include <algorithm>
-
-
#include <svl/eitem.hxx>
#include <editeng/lrspitem.hxx>
#include <editeng/ulspitem.hxx>
@@ -46,6 +39,9 @@
#include "colex.hxx"
#include "colmgr.hxx"
+//UUUU
+#include <svx/unobrushitemhelper.hxx>
+
/*-----------------------------------------------------------------------
Beschreibung: Uebernahme der aktualisierten Werte aus dem Set
-----------------------------------------------------------------------*/
@@ -128,12 +124,20 @@ void SwPageExample::UpdateExample( const SfxItemSet& rSet )
SetHdLeft( rLR.GetLeft() );
SetHdRight( rLR.GetRight() );
SetHeader( sal_True );
- if ( rHeaderSet.GetItemState( RES_BACKGROUND ) == SFX_ITEM_SET )
+
+ if(SFX_ITEM_SET == rHeaderSet.GetItemState(RES_BACKGROUND))
{
- const SvxBrushItem& rItem =
- (const SvxBrushItem&)rHeaderSet.Get( RES_BACKGROUND );
- SetHdColor( rItem.GetColor() );
+ //UUUU create FillAttributes from SvxBrushItem //SetHdColor(rItem.GetColor());
+ const SvxBrushItem& rItem = static_cast< const SvxBrushItem& >(rHeaderSet.Get(RES_BACKGROUND));
+ SfxItemSet aTempSet(*rHeaderSet.GetPool(), XATTR_FILL_FIRST, XATTR_FILL_LAST);
+
+ setSvxBrushItemAsFillAttributesToTargetSet(rItem, aTempSet);
+ setHeaderFillAttributes(
+ drawinglayer::attribute::SdrAllFillAttributesHelperPtr(
+ new drawinglayer::attribute::SdrAllFillAttributesHelper(
+ aTempSet)));
}
+
if ( rHeaderSet.GetItemState( RES_BOX ) == SFX_ITEM_SET )
{
const SvxBoxItem& rItem =
@@ -167,12 +171,20 @@ void SwPageExample::UpdateExample( const SfxItemSet& rSet )
SetFtLeft( rLR.GetLeft() );
SetFtRight( rLR.GetRight() );
SetFooter( sal_True );
+
if( rFooterSet.GetItemState( RES_BACKGROUND ) == SFX_ITEM_SET )
{
- const SvxBrushItem& rItem =
- (const SvxBrushItem&)rFooterSet.Get( RES_BACKGROUND );
- SetFtColor( rItem.GetColor() );
+ //UUUU create FillAttributes from SvxBrushItem //SetFtColor(rItem.GetColor());
+ const SvxBrushItem& rItem = static_cast< const SvxBrushItem& >(rFooterSet.Get(RES_BACKGROUND));
+ SfxItemSet aTempSet(*rFooterSet.GetPool(), XATTR_FILL_FIRST, XATTR_FILL_LAST);
+
+ setSvxBrushItemAsFillAttributesToTargetSet(rItem, aTempSet);
+ setFooterFillAttributes(
+ drawinglayer::attribute::SdrAllFillAttributesHelperPtr(
+ new drawinglayer::attribute::SdrAllFillAttributesHelper(
+ aTempSet)));
}
+
if( rFooterSet.GetItemState( RES_BOX ) == SFX_ITEM_SET )
{
const SvxBoxItem& rItem =
@@ -183,19 +195,18 @@ void SwPageExample::UpdateExample( const SfxItemSet& rSet )
else
SetFooter( sal_False );
}
- if( SFX_ITEM_SET == rSet.GetItemState( RES_BACKGROUND,
- sal_False, &pItem ) )
- {
- SetColor( ( (const SvxBrushItem*)pItem )->GetColor() );
- const Graphic* pGrf = ( (const SvxBrushItem*)pItem )->GetGraphic();
- if ( pGrf )
- {
- Bitmap aBitmap = pGrf->GetBitmap();
- SetBitmap( &aBitmap );
- }
- else
- SetBitmap( NULL );
+ if(SFX_ITEM_SET == rSet.GetItemState(RES_BACKGROUND, sal_False, &pItem))
+ {
+ //UUUU create FillAttributes from SvxBrushItem
+ const SvxBrushItem& rItem = static_cast< const SvxBrushItem& >(*pItem);
+ SfxItemSet aTempSet(*rSet.GetPool(), XATTR_FILL_FIRST, XATTR_FILL_LAST);
+
+ setSvxBrushItemAsFillAttributesToTargetSet(rItem, aTempSet);
+ setPageFillAttributes(
+ drawinglayer::attribute::SdrAllFillAttributesHelperPtr(
+ new drawinglayer::attribute::SdrAllFillAttributesHelper(
+ aTempSet)));
}
Invalidate();
@@ -233,14 +244,23 @@ void SwColExample::DrawPage( const Point& rOrg,
- GetFtHeight() - GetFtDist();
DrawRect(aRect);
- if(GetColor() == Color(COL_TRANSPARENT))
+ //UUUU
+ const Rectangle aDefineRect(aRect);
+
+ //UUUU
+ const drawinglayer::attribute::SdrAllFillAttributesHelperPtr& rFillAttributes = getPageFillAttributes();
+
+ if(!rFillAttributes.get() || !rFillAttributes->isUsed())
{
+ //UUUU If there is no fill, use fallback color
const StyleSettings& rStyleSettings = GetSettings().GetStyleSettings();
const Color& rFieldColor = rStyleSettings.GetFieldColor();
- SetFillColor( rFieldColor );
+
+ setPageFillAttributes(
+ drawinglayer::attribute::SdrAllFillAttributesHelperPtr(
+ new drawinglayer::attribute::SdrAllFillAttributesHelper(
+ rFieldColor)));
}
- else
- SetFillColor( GetColor() );
// #97495# make sure that the automatic column widht's are always equal
sal_Bool bAutoWidth = pColMgr->IsAutoWidth();
@@ -260,7 +280,10 @@ void SwColExample::DrawPage( const Point& rOrg,
if(!bAutoWidth)
nAutoColWidth = pColMgr->GetColWidth( i );
aRect.Right() = aRect.Left() + nAutoColWidth;
- DrawRect(aRect);
+
+ //UUUU use primitive draw command
+ drawFillAttributes(getPageFillAttributes(), aRect, aDefineRect);
+
if(i < nColumnCount - 1)
aRect.Left() = aRect.Right() + pColMgr->GetGutterWidth(i);
}
diff --git a/sw/source/ui/frmdlg/frmmgr.cxx b/sw/source/ui/frmdlg/frmmgr.cxx
index e1840cc2f732..83e22491d60f 100644
--- a/sw/source/ui/frmdlg/frmmgr.cxx
+++ b/sw/source/ui/frmdlg/frmmgr.cxx
@@ -35,6 +35,7 @@
#include <editeng/ulspitem.hxx>
#include <editeng/shaditem.hxx>
#include <svx/swframevalidation.hxx>
+#include <svx/xdef.hxx>
#include <fmtclds.hxx>
#include "wrtsh.hxx"
#include "view.hxx"
diff --git a/sw/source/ui/frmdlg/frmpage.src b/sw/source/ui/frmdlg/frmpage.src
index 82f0a3967415..abf689ce2aef 100644
--- a/sw/source/ui/frmdlg/frmpage.src
+++ b/sw/source/ui/frmdlg/frmpage.src
@@ -157,14 +157,31 @@ TabDialog DLG_FRM_GRF
PageResID = TP_BORDER ;
Text [ en-US ] = "Borders" ;
};
+
+ //UUUU new Area and Transparence TabPages
PageItem
{
- Identifier = TP_BACKGROUND ;
- PageResID = TP_BACKGROUND ;
- Text [ en-US ] = "Background" ;
+ Identifier = RID_SVXPAGE_AREA;
+ PageResID = RID_SVXPAGE_AREA;
+ Text [ en-US ] = "Area" ;
};
PageItem
{
+ Identifier = RID_SVXPAGE_TRANSPARENCE;
+ PageResID = RID_SVXPAGE_TRANSPARENCE;
+ Text [ en-US ] = "Transparency" ;
+ };
+
+ //UUUU remove?
+ //PageItem
+ //{
+ // Identifier = TP_BACKGROUND ;
+ // PageResID = TP_BACKGROUND ;
+ // Text [ en-US ] = "Background" ;
+ //};
+
+ PageItem
+ {
Identifier = TP_MACRO_ASSIGN ;
Text [ en-US ] = "Macro" ;
};
@@ -212,12 +229,29 @@ TabDialog DLG_FRM_OLE
PageResID = TP_BORDER ;
Text [ en-US ] = "Borders" ;
};
+
+ //UUUU new Area and Transparence TabPages
+ PageItem
+ {
+ Identifier = RID_SVXPAGE_AREA;
+ PageResID = RID_SVXPAGE_AREA;
+ Text [ en-US ] = "Area" ;
+ };
+ PageItem
+ {
+ Identifier = RID_SVXPAGE_TRANSPARENCE;
+ PageResID = RID_SVXPAGE_TRANSPARENCE;
+ Text [ en-US ] = "Transparency" ;
+ };
+
+ //UUUU remove?
PageItem
{
Identifier = TP_BACKGROUND ;
PageResID = TP_BACKGROUND ;
Text [ en-US ] = "Background" ;
};
+
/*
PageItem {
Identifier = TP_COLUMN ;
diff --git a/sw/source/ui/inc/tablemgr.hxx b/sw/source/ui/inc/tablemgr.hxx
index 4ebeea506f42..44e95bccc7df 100644
--- a/sw/source/ui/inc/tablemgr.hxx
+++ b/sw/source/ui/inc/tablemgr.hxx
@@ -76,7 +76,7 @@ public:
// @deprecated
void UpdateChart();
- /// @return the XModel of the newly inserted chart if successfull
+ /// @return the XModel of the newly inserted chart if successful
::com::sun::star::uno::Reference< ::com::sun::star::frame::XModel >
InsertChart( ::com::sun::star::uno::Reference< ::com::sun::star::chart2::data::XDataProvider > &rxDataProvider, sal_Bool bFillWithData, const rtl::OUString &rCellRange, SwFlyFrmFmt** ppFlyFrmFmt = 0 );
};
diff --git a/sw/source/ui/inc/uitool.hxx b/sw/source/ui/inc/uitool.hxx
index 766079ab2f0d..9c2b4851df70 100644
--- a/sw/source/ui/inc/uitool.hxx
+++ b/sw/source/ui/inc/uitool.hxx
@@ -81,7 +81,7 @@ SwTwips GetTableWidth( SwFrmFmt* pFmt, SwTabCols& rCols, sal_uInt16 *pPercent,
String GetAppLangDateTimeString( const DateTime& );
-// search for a command string withing the menu structure and execute it
+// search for a command string within the menu structure and execute it
// at the dispatcher if there is one, if executed return true
bool ExecuteMenuCommand( PopupMenu& rMenu, SfxViewFrame& rViewFrame, sal_uInt16 nId );
diff --git a/sw/source/ui/lingu/olmenu.cxx b/sw/source/ui/lingu/olmenu.cxx
index ce800f3bcefa..855d5f3c5d03 100644
--- a/sw/source/ui/lingu/olmenu.cxx
+++ b/sw/source/ui/lingu/olmenu.cxx
@@ -740,7 +740,7 @@ void SwSpellPopup::Execute( sal_uInt16 nId )
String aTmp( aSuggestions[ nAltIdx ] );
String aOrig( bGrammarResults ? OUString() : xSpellAlt->getWord() );
- // if orginal word has a trailing . (likely the end of a sentence)
+ // if original word has a trailing . (likely the end of a sentence)
// and the replacement text hasn't, then add it to the replacement
if (aTmp.Len() && aOrig.Len() &&
'.' == aOrig.GetChar( aOrig.Len() - 1) && /* !IsAlphaNumeric ??*/
diff --git a/sw/source/ui/lingu/sdrhhcwrap.cxx b/sw/source/ui/lingu/sdrhhcwrap.cxx
index d111cef9f10f..11a48d572444 100644
--- a/sw/source/ui/lingu/sdrhhcwrap.cxx
+++ b/sw/source/ui/lingu/sdrhhcwrap.cxx
@@ -19,10 +19,9 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sw.hxx"
+
#include <hintids.hxx>
#include <svx/svditer.hxx>
#include <svx/svdotext.hxx>
@@ -40,19 +39,16 @@
#include <unotools/localedatawrapper.hxx>
#include <sdrhhcwrap.hxx>
#include <frmfmt.hxx>
-#ifndef _DOCSH_HXX
#include <docsh.hxx> // " " "
-#endif
#include <wrtsh.hxx> // MakeVisible
-#ifndef _VIEW_HXX
#include <view.hxx>
-#endif
#include <dcontact.hxx> // Spelling von DrawObj
#include <doc.hxx> // " " "
#include <docary.hxx>
#include <edtwin.hxx>
#include <svx/svdlegacy.hxx>
#include <svx/fmmodel.hxx>
+#include <drawdoc.hxx>
using namespace ::com::sun::star;
using ::rtl::OUString;
diff --git a/sw/source/ui/misc/glossary.cxx b/sw/source/ui/misc/glossary.cxx
index 10a53cf75ed0..12622bbe1f02 100644
--- a/sw/source/ui/misc/glossary.cxx
+++ b/sw/source/ui/misc/glossary.cxx
@@ -349,7 +349,12 @@ IMPL_LINK( SwGlossaryDlg, GrpSelect, SvTreeListBox *, pBox )
ShowAutoText(*::GetCurrGlosGroup(), aShortNameEdit.GetText());
}
else
+ {
+ aNameED.SetText(aEmptyStr);
+ aShortNameEdit.SetText(aEmptyStr);
+ aInsertBtn.Enable(sal_False);
ShowAutoText(aEmptyStr, aEmptyStr);
+ }
//Controls aktualisieren
NameModify(&aShortNameEdit);
if( SfxRequest::HasMacroRecorder( pSh->GetView().GetViewFrame() ) )
diff --git a/sw/source/ui/shells/basesh.cxx b/sw/source/ui/shells/basesh.cxx
index 17379d8a152f..9ae8e60a0835 100644
--- a/sw/source/ui/shells/basesh.cxx
+++ b/sw/source/ui/shells/basesh.cxx
@@ -19,8 +19,6 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sw.hxx"
@@ -28,7 +26,6 @@
#include <hintids.hxx>
#include <svl/urihelper.hxx>
#include <svl/languageoptions.hxx>
-
#include <svx/svxids.hrc>
#include <sfx2/linkmgr.hxx>
#include <svx/htmlmode.hxx>
@@ -101,7 +98,6 @@
#include <crsskip.hxx>
#include <fmtinfmt.hxx>
#include <doc.hxx>
-
#include "swabstdlg.hxx"
#include "dialog.hrc"
#include "fldui.hrc"
@@ -111,13 +107,14 @@
#include <svx/fmshell.hxx> // for FN_XFORMS_DESIGN_MODE
#include <SwRewriter.hxx>
#include <comcore.hrc>
-
#include <unomid.h>
#include <svx/galleryitem.hxx>
#include <com/sun/star/gallery/GalleryItemType.hpp>
-FlyMode SwBaseShell::eFrameMode = FLY_DRAG_END;
+//UUUU
+#include <svx/unobrushitemhelper.hxx>
+FlyMode SwBaseShell::eFrameMode = FLY_DRAG_END;
//Fuer die Erkennung der Id, die variable von Gallery mit SID_GALLERY_BG_BRUSH
//ankommt.
@@ -2256,28 +2253,10 @@ void SwBaseShell::GetTxtFontCtrlState( SfxItemSet& rSet )
void SwBaseShell::GetBckColState(SfxItemSet &rSet)
{
SwWrtShell &rSh = GetShell();
- SfxWhichIter aIter( rSet );
- sal_uInt16 nWhich = aIter.FirstWhich();
- int nSelType = rSh.GetSelectionType();
-
-// if ( nSelType & nsSelectionType::SEL_GRF ||
- if( nSelType & nsSelectionType::SEL_OLE )
- {
- rSet.DisableItem( SID_BACKGROUND_COLOR );
- return;
- }
-
- if ( nSelType & nsSelectionType::SEL_FRM )
- {
- sal_Bool bParentCntProt = rSh.IsSelObjProtected( FLYPROTECT_CONTENT|FLYPROTECT_PARENT ) != 0;
- if (bParentCntProt)
- {
- rSet.DisableItem( SID_BACKGROUND_COLOR );
- return;
- }
- }
-
- SvxBrushItem aBrushItem( RES_BACKGROUND );
+ SfxWhichIter aIter(rSet);
+ sal_uInt16 nWhich(aIter.FirstWhich());
+ int nSelType(rSh.GetSelectionType());
+ SvxBrushItem aBrushItem(RES_BACKGROUND);
if( nsSelectionType::SEL_TBL_CELLS & nSelType )
{
@@ -2285,54 +2264,41 @@ void SwBaseShell::GetBckColState(SfxItemSet &rSet)
}
else
{
- //UUUU
- if(nSelType & nsSelectionType::SEL_GRF)
- {
- SfxItemSet aCoreSet(GetPool(), RES_BACKGROUND, RES_BACKGROUND);
+ //UUUU Adapt to new DrawingLayer FillStyle; use a parent which has XFILL_NONE set
+ SfxItemSet aCoreSet(GetPool(), XATTR_FILL_FIRST, XATTR_FILL_LAST);
- rSh.GetFlyFrmAttr( aCoreSet );
- aBrushItem = (const SvxBrushItem&)aCoreSet.Get(RES_BACKGROUND);
- }
- else if(nsSelectionType::SEL_FRM & nSelType)
- {
- SfxItemSet aCoreSet(GetPool(), XATTR_FILL_FIRST, XATTR_FILL_LAST);
- const XFillStyleItem& rXFillStyleItem(static_cast< const XFillStyleItem& >(aCoreSet.Get(XATTR_FILLSTYLE)));
+ aCoreSet.SetParent(&GetView().GetDocShell()->GetDoc()->GetDfltFrmFmt()->GetAttrSet());
- if(XFILL_SOLID == rXFillStyleItem.GetValue())
- {
- const Color aFillColor(static_cast< const XFillColorItem& >(aCoreSet.Get(XATTR_FILLCOLOR)).GetColorValue());
-
- aBrushItem.SetColor(aFillColor);
- }
- else
- {
- // keep default in SvxBrushItem which equals no fill
- }
+ if(nSelType & nsSelectionType::SEL_GRF || nsSelectionType::SEL_FRM & nSelType)
+ {
+ rSh.GetFlyFrmAttr(aCoreSet);
}
else
{
- SfxItemSet aCoreSet(GetPool(), RES_BACKGROUND, RES_BACKGROUND);
-
- rSh.GetCurAttr( aCoreSet );
- aBrushItem = (const SvxBrushItem&)aCoreSet.Get(RES_BACKGROUND);
+ rSh.GetCurAttr(aCoreSet);
}
+
+ aBrushItem = getSvxBrushItemFromSourceSet(aCoreSet, RES_BACKGROUND);
}
- while ( nWhich )
+ while(nWhich)
{
switch(nWhich)
{
- case SID_BACKGROUND_COLOR :
+ case SID_BACKGROUND_COLOR:
{
- SvxColorItem aColorItem(aBrushItem.GetColor(), SID_BACKGROUND_COLOR);
- rSet.Put( aColorItem, SID_BACKGROUND_COLOR );
+ SvxColorItem aColorItem(aBrushItem.GetColor(),SID_BACKGROUND_COLOR);
+ rSet.Put(aColorItem,SID_BACKGROUND_COLOR);
+ break;
}
- break;
case SID_ATTR_BRUSH:
case RES_BACKGROUND:
- rSet.Put( aBrushItem, GetPool().GetWhich(nWhich) );
- break;
+ {
+ rSet.Put(aBrushItem,GetPool().GetWhich(nWhich));
+ break;
+ }
}
+
nWhich = aIter.NextWhich();
}
}
@@ -2344,18 +2310,16 @@ void SwBaseShell::GetBckColState(SfxItemSet &rSet)
void SwBaseShell::ExecBckCol(SfxRequest& rReq)
{
SwWrtShell &rSh = GetShell();
- int nSelType = rSh.GetSelectionType();
- if ( nSelType & nsSelectionType::SEL_OLE )
+ int nSelType(rSh.GetSelectionType());
+ const SfxItemSet* pArgs = rReq.GetArgs();
+ sal_uInt16 nSlot(rReq.GetSlot());
+
+ if(!pArgs && nSlot != SID_BACKGROUND_COLOR)
{
return;
}
- const SfxItemSet* pArgs = rReq.GetArgs();
- sal_uInt16 nSlot = rReq.GetSlot();
- if( !pArgs && nSlot != SID_BACKGROUND_COLOR)
- return ;
-
- SvxBrushItem aBrushItem( RES_BACKGROUND );
+ SvxBrushItem aBrushItem(RES_BACKGROUND);
if( nsSelectionType::SEL_TBL_CELLS & nSelType )
{
@@ -2363,129 +2327,98 @@ void SwBaseShell::ExecBckCol(SfxRequest& rReq)
}
else
{
- //UUUU
- if(nSelType & nsSelectionType::SEL_GRF)
- {
- SfxItemSet aCoreSet(GetPool(), RES_BACKGROUND, RES_BACKGROUND);
-
- rSh.GetFlyFrmAttr( aCoreSet );
- aBrushItem = (const SvxBrushItem&)aCoreSet.Get(RES_BACKGROUND);
- }
- else if(nsSelectionType::SEL_FRM & nSelType)
- {
- SfxItemSet aCoreSet(GetPool(), XATTR_FILL_FIRST, XATTR_FILL_LAST);
- const XFillStyleItem& rXFillStyleItem(static_cast< const XFillStyleItem& >(aCoreSet.Get(XATTR_FILLSTYLE)));
+ //UUUU Adapt to new DrawingLayer FillStyle; use a parent which has XFILL_NONE set
+ SfxItemSet aCoreSet(GetPool(), XATTR_FILL_FIRST, XATTR_FILL_LAST);
- if(XFILL_SOLID == rXFillStyleItem.GetValue())
- {
- const Color aFillColor(static_cast< const XFillColorItem& >(aCoreSet.Get(XATTR_FILLCOLOR)).GetColorValue());
+ aCoreSet.SetParent(&GetView().GetDocShell()->GetDoc()->GetDfltFrmFmt()->GetAttrSet());
- aBrushItem.SetColor(aFillColor);
- }
- else
- {
- // keep default in SvxBrushItem which equals no fill
- }
+ if((nsSelectionType::SEL_FRM & nSelType) || (nsSelectionType::SEL_GRF & nSelType))
+ {
+ rSh.GetFlyFrmAttr(aCoreSet);
}
else
{
- SfxItemSet aCoreSet(GetPool(), RES_BACKGROUND, RES_BACKGROUND);
-
- rSh.GetCurAttr( aCoreSet );
- aBrushItem = (const SvxBrushItem&)aCoreSet.Get(RES_BACKGROUND);
+ rSh.GetCurAttr(aCoreSet);
}
- }
-// sal_Bool bMsgOk = sal_False;
+ aBrushItem = getSvxBrushItemFromSourceSet(aCoreSet, RES_BACKGROUND);
+ }
- switch (nSlot)
+ switch(nSlot)
{
- // RES_BACKGROUND (=SID_ATTR_BRUSH) muss ueber zwei IDs
- // gesetzt werden:
case SID_BACKGROUND_COLOR:
- {
- aBrushItem.SetGraphicPos(GPOS_NONE);
+ {
+ aBrushItem.SetGraphicPos(GPOS_NONE);
- //Brush &rBrush = aBrushItem.GetBrush();
- if(pArgs)
- {
- const SvxColorItem& rNewColorItem = (const SvxColorItem&)
- pArgs->Get(SID_BACKGROUND_COLOR);
- const Color& rNewColor = rNewColorItem.GetValue();
- aBrushItem.SetColor( rNewColor );
- GetView().GetViewFrame()->GetBindings().SetState(rNewColorItem);
- }
- else
- {
- aBrushItem.SetColor( COL_TRANSPARENT );
- rReq.AppendItem( SvxColorItem( Color( COL_TRANSPARENT ), nSlot ) );
- }
+ if(pArgs)
+ {
+ const SvxColorItem& rNewColorItem = (const SvxColorItem&)pArgs->Get(SID_BACKGROUND_COLOR);
+ const Color& rNewColor = rNewColorItem.GetValue();
+ aBrushItem.SetColor(rNewColor);
+ GetView().GetViewFrame()->GetBindings().SetState(rNewColorItem);
+ }
+ else
+ {
+ aBrushItem.SetColor(COL_TRANSPARENT);
+ rReq.AppendItem(SvxColorItem(Color(COL_TRANSPARENT),nSlot));
}
break;
+ }
case SID_ATTR_BRUSH:
case RES_BACKGROUND:
{
- const SvxBrushItem& rNewBrushItem = (const SvxBrushItem&)
- pArgs->Get( GetPool().GetWhich(nSlot) );
+ const SvxBrushItem& rNewBrushItem = (const SvxBrushItem&)pArgs->Get(GetPool().GetWhich(nSlot));
aBrushItem = rNewBrushItem;
+ break;
}
- break;
default:
-// bMsgOk = sal_False;
+ {
rReq.Ignore();
- DBG_ERROR( "Unbekannte Message bei ExecuteAttr!" );
+ DBG_ERROR("Unbekannte Message bei ExecuteAttr!");
return;
+ }
}
if( nsSelectionType::SEL_TBL_CELLS & nSelType )
{
rSh.SetBoxBackground( aBrushItem );
}
- //UUUU
- else if(nsSelectionType::SEL_GRF & nSelType)
- {
- SfxItemSet aCoreSet(GetPool(), RES_BACKGROUND, RES_BACKGROUND);
- aCoreSet.Put( aBrushItem );
- // Vorlagen-AutoUpdate
- SwFrmFmt* pFmt = rSh.GetCurFrmFmt();
- if(pFmt && pFmt->IsAutoUpdateFmt())
- rSh.AutoUpdateFrame( pFmt, aCoreSet);
- else
- rSh.SetFlyFrmAttr( aCoreSet );
- }
- else if(nsSelectionType::SEL_FRM & nSelType)
+ else
{
+ //UUUU Adapt to new DrawingLayer FillStyle; use a parent which has XFILL_NONE set
SfxItemSet aCoreSet(GetPool(), XATTR_FILL_FIRST, XATTR_FILL_LAST);
- const XubString aNullStr;
-
- // set FillStyle and color when applying
- aCoreSet.Put(XFillStyleItem(XFILL_SOLID));
- aCoreSet.Put(XFillColorItem(aNullStr, aBrushItem.GetColor()));
- // Vorlagen-AutoUpdate
- SwFrmFmt* pFmt = rSh.GetCurFrmFmt();
+ aCoreSet.SetParent(&GetView().GetDocShell()->GetDoc()->GetDfltFrmFmt()->GetAttrSet());
+ setSvxBrushItemAsFillAttributesToTargetSet(aBrushItem, aCoreSet);
- if(pFmt && pFmt->IsAutoUpdateFmt())
+ if((nsSelectionType::SEL_FRM & nSelType) || (nsSelectionType::SEL_GRF & nSelType))
{
- rSh.AutoUpdateFrame( pFmt, aCoreSet);
+ // Vorlagen-AutoUpdate
+ SwFrmFmt* pFmt = rSh.GetCurFrmFmt();
+
+ if(pFmt && pFmt->IsAutoUpdateFmt())
+ {
+ rSh.AutoUpdateFrame(pFmt, aCoreSet);
+ }
+ else
+ {
+ rSh.SetFlyFrmAttr(aCoreSet);
+ }
}
else
{
- rSh.SetFlyFrmAttr( aCoreSet );
- }
- }
- else
- {
- SwTxtFmtColl* pColl = rSh.GetCurTxtFmtColl();
- if( pColl && pColl->IsAutoUpdateFmt())
- {
- SfxItemSet aSet(GetPool(), RES_BACKGROUND, RES_BACKGROUND );
- aSet.Put(aBrushItem);
- rSh.AutoUpdatePara( pColl, aSet);
+ SwTxtFmtColl* pColl = rSh.GetCurTxtFmtColl();
+
+ if(pColl && pColl->IsAutoUpdateFmt())
+ {
+ rSh.AutoUpdatePara(pColl, aCoreSet);
+ }
+ else
+ {
+ rSh.SetAttrSet(aCoreSet);
+ }
}
- else
- rSh.SetAttrItem( aBrushItem );
}
rReq.Done();
diff --git a/sw/source/ui/shells/drwbassh.cxx b/sw/source/ui/shells/drwbassh.cxx
index 7d183ccd1fcc..bea5ca19c6f7 100644
--- a/sw/source/ui/shells/drwbassh.cxx
+++ b/sw/source/ui/shells/drwbassh.cxx
@@ -19,12 +19,9 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sw.hxx"
-
#include <tools/shl.hxx>
#include <hintids.hxx>
#include <helpid.h>
@@ -57,7 +54,6 @@
#include <svx/svdogrp.hxx>
#include <svx/svdpage.hxx>
#include <svx/svditer.hxx>
-
#include <shells.hrc>
#define SwDrawBaseShell
#include <sfx2/msg.hxx>
@@ -70,9 +66,9 @@
#include <com/sun/star/text/HoriOrientation.hpp>
#include <com/sun/star/text/VertOrientation.hpp>
#include <com/sun/star/text/RelOrientation.hpp>
-
#include <IDocumentDrawModelAccess.hxx>
#include <svx/fmmodel.hxx>
+#include <drawdoc.hxx>
using namespace ::com::sun::star;
@@ -647,7 +643,7 @@ IMPL_LINK( SwDrawBaseShell, CheckGroupShapeNameHdl, AbstractSvxNameDialog*, pNam
else
{
nRet = 1;
- SdrModel* pModel = rSh.getIDocumentDrawModelAccess()->GetDrawModel();
+ SwDrawModel* pModel = rSh.getIDocumentDrawModelAccess()->GetDrawModel();
// --> OD 2006-03-09 #i51726# - all drawing objects can be named now.
// consider also drawing objects inside group objects
// SdrPage* pPage = pModel->GetPage(0);
diff --git a/sw/source/ui/shells/drwtxtex.cxx b/sw/source/ui/shells/drwtxtex.cxx
index 0fbf9789852d..e40201385c3e 100644
--- a/sw/source/ui/shells/drwtxtex.cxx
+++ b/sw/source/ui/shells/drwtxtex.cxx
@@ -654,7 +654,7 @@ void SwDrawTextShell::GetState(SfxItemSet& rSet)
!xThes.is() || nLang == LANGUAGE_NONE || !xThes->hasLocale( aLocale ))
rSet.DisableItem( SID_THES );
- //! avoid puting the same item as SfxBoolItem at the end of this function
+ //! avoid putting the same item as SfxBoolItem at the end of this function
nSlotId = 0;
break;
}
diff --git a/sw/source/ui/shells/frmsh.cxx b/sw/source/ui/shells/frmsh.cxx
index 8621be134bcd..b9f9587b764b 100644
--- a/sw/source/ui/shells/frmsh.cxx
+++ b/sw/source/ui/shells/frmsh.cxx
@@ -76,10 +76,10 @@
#include "swabstdlg.hxx"
#include "misc.hrc"
#include <svx/dialogs.hrc>
-
#include <docsh.hxx>
#include <svx/drawitem.hxx>
#include <svx/fmmodel.hxx>
+#include <drawdoc.hxx>
using namespace ::com::sun::star;
using namespace ::com::sun::star::uno;
@@ -441,18 +441,16 @@ void SwFrameShell::Execute(SfxRequest &rReq)
SID_HTML_MODE, SID_HTML_MODE, // [10414
FN_GET_PRINT_AREA, FN_GET_PRINT_AREA, // [21032
FN_SURROUND, FN_HORI_ORIENT, // [21303
- FN_SET_FRM_NAME, FN_SET_FRM_NAME, // [21306
- FN_KEEP_ASPECT_RATIO, FN_KEEP_ASPECT_RATIO, // [21307
+ FN_SET_FRM_NAME, FN_KEEP_ASPECT_RATIO, // [21306
FN_SET_FRM_ALT_NAME, FN_SET_FRM_ALT_NAME, // [21318
- FN_OLE_IS_MATH, FN_OLE_IS_MATH, // [22314
- FN_MATH_BASELINE_ALIGNMENT, FN_MATH_BASELINE_ALIGNMENT, // [22315
+ FN_OLE_IS_MATH, FN_MATH_BASELINE_ALIGNMENT, // [22314
FN_PARAM_CHAIN_PREVIOUS, FN_PARAM_CHAIN_NEXT, // [22420
0);
//UUUU create needed items for XPropertyList entries from the DrawModel so that
// the Area TabPage can access them
- const SdrModel* pDrawModel = rSh.GetView().GetDocShell()->GetDoc()->GetDrawModel();
+ const SwDrawModel* pDrawModel = rSh.GetView().GetDocShell()->GetDoc()->GetDrawModel();
aSet.Put(SvxColorTableItem(pDrawModel->GetColorTableFromSdrModel(), SID_COLOR_TABLE));
aSet.Put(SvxGradientListItem(pDrawModel->GetGradientListFromSdrModel(), SID_GRADIENT_LIST));
diff --git a/sw/source/ui/shells/grfsh.cxx b/sw/source/ui/shells/grfsh.cxx
index 2ec894b605e4..2ecdeda8360b 100644
--- a/sw/source/ui/shells/grfsh.cxx
+++ b/sw/source/ui/shells/grfsh.cxx
@@ -19,17 +19,10 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sw.hxx"
-
-
-
-#ifndef _CMDID_H
#include <cmdid.h>
-#endif
#include <hintids.hxx>
#include <tools/urlobj.hxx>
#include <vcl/msgbox.hxx>
@@ -38,7 +31,6 @@
#include <svl/urihelper.hxx>
#include <sfx2/docfile.hxx>
#include <sfx2/dispatch.hxx>
-
#include <sfx2/objface.hxx>
#include <editeng/sizeitem.hxx>
#include <editeng/protitem.hxx>
@@ -74,12 +66,14 @@
#include <swwait.hxx>
#include <shells.hrc>
#include <popup.hrc>
-
+#include <doc.hxx>
+#include <docsh.hxx>
+#include <svx/drawitem.hxx>
#define SwGrfShell
#include <sfx2/msg.hxx>
#include "swslots.hxx"
-
#include "swabstdlg.hxx"
+#include <drawdoc.hxx>
#define TOOLBOX_NAME ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "colorbar" ) )
@@ -128,22 +122,41 @@ void SwGrfShell::Execute(SfxRequest &rReq)
const SwViewOption* pVOpt = rSh.GetViewOptions();
SwViewOption aUsrPref( *pVOpt );
- SfxItemSet aSet(GetPool(), RES_FRMATR_BEGIN, RES_FRMATR_END-1,
- RES_GRFATR_MIRRORGRF, RES_GRFATR_CROPGRF,
- SID_ATTR_BORDER_INNER, SID_ATTR_BORDER_INNER,
- SID_ATTR_GRAF_KEEP_ZOOM, SID_ATTR_GRAF_KEEP_ZOOM,
- SID_ATTR_GRAF_FRMSIZE, SID_ATTR_GRAF_FRMSIZE,
- SID_ATTR_GRAF_FRMSIZE_PERCENT, SID_ATTR_GRAF_FRMSIZE_PERCENT,
- SID_ATTR_GRAF_GRAPHIC, SID_ATTR_GRAF_GRAPHIC,
- FN_PARAM_GRF_CONNECT, FN_PARAM_GRF_CONNECT,
- SID_ATTR_PAGE_SIZE, SID_ATTR_PAGE_SIZE,
- FN_GET_PRINT_AREA, FN_GET_PRINT_AREA,
- FN_SET_FRM_NAME, FN_KEEP_ASPECT_RATIO,
- FN_PARAM_GRF_DIALOG, FN_PARAM_GRF_DIALOG,
- SID_DOCFRAME, SID_DOCFRAME,
- SID_HTML_MODE, SID_HTML_MODE,
- FN_SET_FRM_ALT_NAME, FN_SET_FRM_ALT_NAME,
- 0);
+ SfxItemSet aSet(GetPool(), //UUUU sorted by indices
+
+ RES_FRMATR_BEGIN,RES_FRMATR_END - 1, // [ 82
+ RES_GRFATR_MIRRORGRF,RES_GRFATR_CROPGRF, // [ 123
+
+ //UUUU FillAttribute support
+ XATTR_FILL_FIRST, XATTR_FILL_LAST, // [ 1014
+
+ SID_DOCFRAME,SID_DOCFRAME, // [ 5598
+ SID_ATTR_BORDER_INNER,SID_ATTR_BORDER_INNER, // [10023
+ SID_ATTR_PAGE_SIZE,SID_ATTR_PAGE_SIZE, // [10051
+ SID_ATTR_GRAF_KEEP_ZOOM,SID_ATTR_GRAF_KEEP_ZOOM, // [10882
+ SID_ATTR_GRAF_FRMSIZE,SID_ATTR_GRAF_GRAPHIC, // [10884, contains SID_ATTR_GRAF_FRMSIZE_PERCENT
+
+ //UUUU items to hand over XPropertyList things like
+ // XColorList, XHatchList, XGradientList and XBitmapList
+ // to the Area TabPage
+ SID_COLOR_TABLE, SID_BITMAP_LIST, // [10179
+
+ SID_HTML_MODE,SID_HTML_MODE, // [10414
+ FN_GET_PRINT_AREA,FN_GET_PRINT_AREA, // [21032
+ FN_PARAM_GRF_CONNECT,FN_PARAM_GRF_CONNECT, // [21153
+ FN_PARAM_GRF_DIALOG,FN_PARAM_GRF_DIALOG, // [21171
+ FN_SET_FRM_NAME,FN_KEEP_ASPECT_RATIO, // [21306
+ FN_SET_FRM_ALT_NAME,FN_SET_FRM_ALT_NAME, // [21318
+ 0);
+
+ //UUUU create needed items for XPropertyList entries from the DrawModel so that
+ // the Area TabPage can access them
+ const SwDrawModel* pDrawModel = rSh.GetView().GetDocShell()->GetDoc()->GetDrawModel();
+
+ aSet.Put(SvxColorTableItem(pDrawModel->GetColorTableFromSdrModel(), SID_COLOR_TABLE));
+ aSet.Put(SvxGradientListItem(pDrawModel->GetGradientListFromSdrModel(), SID_GRADIENT_LIST));
+ aSet.Put(SvxHatchListItem(pDrawModel->GetHatchListFromSdrModel(), SID_HATCH_LIST));
+ aSet.Put(SvxBitmapListItem(pDrawModel->GetBitmapListFromSdrModel(), SID_BITMAP_LIST));
sal_uInt16 nHtmlMode = ::GetHtmlMode(GetView().GetDocShell());
aSet.Put(SfxUInt16Item(SID_HTML_MODE, nHtmlMode));
diff --git a/sw/source/ui/shells/grfshex.cxx b/sw/source/ui/shells/grfshex.cxx
index 2bd91838b3a2..521c92d552fb 100644
--- a/sw/source/ui/shells/grfshex.cxx
+++ b/sw/source/ui/shells/grfshex.cxx
@@ -19,12 +19,9 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sw.hxx"
-
#include <docary.hxx>
#include <grfsh.hxx>
#include <wrtsh.hxx>
@@ -52,7 +49,6 @@
#include <com/sun/star/ui/dialogs/ExtendedFilePickerElementIds.hpp>
#include <com/sun/star/ui/dialogs/ListboxControlActions.hpp>
#include <poolfmt.hrc>
-
#include <sfx2/request.hxx>
#include <sfx2/viewfrm.hxx>
#include <svl/stritem.hxx>
@@ -60,11 +56,9 @@
#include <vcl/svapp.hxx>
#include <doc.hxx>
#include <svx/fmmodel.hxx>
-
-// -> #111827#
#include <SwRewriter.hxx>
#include <comcore.hrc>
-// <- #111827#
+#include <drawdoc.hxx>
using namespace ::com::sun::star::uno;
using namespace ::com::sun::star::ui::dialogs;
diff --git a/sw/source/ui/shells/textsh1.cxx b/sw/source/ui/shells/textsh1.cxx
index 0ea6c9181b5c..ddf3e1609567 100644
--- a/sw/source/ui/shells/textsh1.cxx
+++ b/sw/source/ui/shells/textsh1.cxx
@@ -19,20 +19,16 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sw.hxx"
#include <com/sun/star/i18n/WordType.hpp>
#include <com/sun/star/ui/dialogs/XExecutableDialog.hpp>
-
#include <comphelper/processfactory.hxx>
#include <svx/dialogs.hrc>
#include <hintids.hxx>
#include <cmdid.h>
#include <helpid.h>
-
#include <i18npool/mslangid.hxx>
#include <svl/languageoptions.hxx>
#include <editeng/langitem.hxx>
@@ -91,7 +87,6 @@
#include <edtwin.hxx>
#include <redlndlg.hxx>
#include "fldmgr.hxx"
-
#include <globals.hrc>
#include <shells.hrc>
#include <app.hrc>
@@ -102,15 +97,12 @@
#include <vcl/svapp.hxx>
#include <sfx2/app.hxx>
#include <breakit.hxx>
-
#include <SwSmartTagMgr.hxx>
-
#include <editeng/acorrcfg.hxx>
#include "swabstdlg.hxx"
#include "misc.hrc"
#include "chrdlg.hrc"
#include <IDocumentStatistics.hxx>
-
#include <sfx2/sfxdlg.hxx>
#include <svl/languageoptions.hxx>
#include <unotools/lingucfg.hxx>
@@ -125,22 +117,16 @@
#include <pam.hxx>
#include <sfx2/objface.hxx>
#include <langhelper.hxx>
-
-#ifndef _NBDTMGFACT_HXX
#include <svx/nbdtmgfact.hxx>
-#endif
-#ifndef _NBDTMG_HXX
#include <svx/nbdtmg.hxx>
-#endif
-
-
+#include <svx/svdmodel.hxx>
+#include <svx/drawitem.hxx>
#include <numrule.hxx>
-
+#include <drawdoc.hxx>
using namespace ::com::sun::star;
using namespace svx::sidebar;
-
void lcl_CharDialog( SwWrtShell &rWrtSh, sal_Bool bUseDialog, sal_uInt16 nSlot,const SfxItemSet *pArgs, SfxRequest *pReq )
{
FieldUnit eMetric = ::GetDfltMetric(0 != dynamic_cast< SwWebView* >( &rWrtSh.GetView()));
@@ -896,27 +882,45 @@ void SwTextShell::Execute(SfxRequest &rReq)
{
FieldUnit eMetric = ::GetDfltMetric(0 != dynamic_cast< SwWebView* >( &GetView()));
SW_MOD()->PutItem(SfxUInt16Item(SID_ATTR_METRIC, static_cast< sal_uInt16 >(eMetric)));
- SfxItemSet aCoreSet( GetPool(),
- RES_PARATR_BEGIN, RES_PARATR_END - 1,
- // --> OD 2008-02-25 #refactorlists#
- RES_PARATR_LIST_BEGIN, RES_PARATR_LIST_END - 1,
- // <--
- RES_FRMATR_BEGIN, RES_FRMATR_END - 1,
- SID_ATTR_TABSTOP_POS, SID_ATTR_TABSTOP_POS,
- SID_ATTR_TABSTOP_DEFAULTS, SID_ATTR_TABSTOP_DEFAULTS,
- SID_ATTR_TABSTOP_OFFSET, SID_ATTR_TABSTOP_OFFSET,
- SID_ATTR_BORDER_INNER, SID_ATTR_BORDER_INNER,
- SID_ATTR_PARA_MODEL, SID_ATTR_PARA_KEEP,
- SID_ATTR_PARA_PAGENUM, SID_ATTR_PARA_PAGENUM,
- SID_HTML_MODE, SID_HTML_MODE,
- FN_PARAM_1, FN_PARAM_1,
- FN_NUMBER_NEWSTART, FN_NUMBER_NEWSTART_AT,
- FN_DROP_TEXT, FN_DROP_CHAR_STYLE_NAME,
+ SfxItemSet aCoreSet( GetPool(), //UUUU sorted by indices, one group of three concatenated
+ RES_PARATR_BEGIN, RES_PARATR_END - 1, // [60
+ RES_PARATR_LIST_BEGIN, RES_PARATR_LIST_END - 1, // [77
+ RES_FRMATR_BEGIN, RES_FRMATR_END - 1, // [82
+
+ //UUUU FillAttribute support
+ XATTR_FILL_FIRST, XATTR_FILL_LAST, // [1014
+
+ // includes SID_ATTR_TABSTOP_POS
+ SID_ATTR_TABSTOP_DEFAULTS, SID_ATTR_TABSTOP_OFFSET, // [10003 .. 10005
+
+ SID_ATTR_BORDER_INNER, SID_ATTR_BORDER_INNER, // [10023
+ SID_ATTR_PARA_MODEL, SID_ATTR_PARA_KEEP, // [10065
+
+ //UUUU items to hand over XPropertyList things like
+ // XColorList, XHatchList, XGradientList and XBitmapList
+ // to the Area TabPage
+ SID_COLOR_TABLE, SID_BITMAP_LIST, // [10179
+
+ SID_HTML_MODE, SID_HTML_MODE, // [10414
+ SID_ATTR_PARA_PAGENUM, SID_ATTR_PARA_PAGENUM, // [10457
+ FN_PARAM_1, FN_PARAM_1, // [21160
+ FN_NUMBER_NEWSTART, FN_NUMBER_NEWSTART_AT, // [21738
+ FN_DROP_TEXT, FN_DROP_CHAR_STYLE_NAME, // [22418
0);
- // --> OD 2008-01-16 #newlistlevelattrs#
+
// get also the list level indent values merged as LR-SPACE item, if needed.
rWrtSh.GetCurAttr( aCoreSet, true );
- // <--
+
+ //UUUU create needed items for XPropertyList entries from the DrawModel so that
+ // the Area TabPage can access them
+ // Do this after GetCurAttr, this resets the ItemSet content again
+ const SwDrawModel* pDrawModel = GetView().GetDocShell()->GetDoc()->GetDrawModel();
+
+ aCoreSet.Put(SvxColorTableItem(pDrawModel->GetColorTableFromSdrModel(), SID_COLOR_TABLE));
+ aCoreSet.Put(SvxGradientListItem(pDrawModel->GetGradientListFromSdrModel(), SID_GRADIENT_LIST));
+ aCoreSet.Put(SvxHatchListItem(pDrawModel->GetHatchListFromSdrModel(), SID_HATCH_LIST));
+ aCoreSet.Put(SvxBitmapListItem(pDrawModel->GetBitmapListFromSdrModel(), SID_BITMAP_LIST));
+
aCoreSet.Put(SfxUInt16Item(SID_HTML_MODE,
::GetHtmlMode(GetView().GetDocShell())));
diff --git a/sw/source/ui/sidebar/WrapPropertyPanel.hxx b/sw/source/ui/sidebar/WrapPropertyPanel.hxx
index 292cb1e22d6b..cac77ade11ce 100644
--- a/sw/source/ui/sidebar/WrapPropertyPanel.hxx
+++ b/sw/source/ui/sidebar/WrapPropertyPanel.hxx
@@ -72,7 +72,7 @@ namespace sw { namespace sidebar {
ImageList aWrapIL;
ImageList aWrapILH;
- //Controler Items==================================
+ //Controller Items==================================
::sfx2::sidebar::ControllerItem maSwNoWrapControl;
::sfx2::sidebar::ControllerItem maSwWrapLeftControl;
::sfx2::sidebar::ControllerItem maSwWrapRightControl;
diff --git a/sw/source/ui/uiview/pview.cxx b/sw/source/ui/uiview/pview.cxx
index 11988add957f..246b5543e8fe 100644
--- a/sw/source/ui/uiview/pview.cxx
+++ b/sw/source/ui/uiview/pview.cxx
@@ -2105,7 +2105,7 @@ uno::Reference< ::com::sun::star::accessibility::XAccessible >
SwPagePreViewWin::CreateAccessible()
{
vos::OGuard aGuard(Application::GetSolarMutex()); // this should have
- // happend already!!!
+ // happened already!!!
DBG_ASSERT( GetViewShell() != NULL, "We need a view shell" );
::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > xAcc = GetAccessible( sal_False );
diff --git a/sw/source/ui/uiview/view.cxx b/sw/source/ui/uiview/view.cxx
index d0e6a373bfd1..646dc91ef60b 100644
--- a/sw/source/ui/uiview/view.cxx
+++ b/sw/source/ui/uiview/view.cxx
@@ -1682,10 +1682,11 @@ void SwView::Notify( SfxBroadcaster& rBC, const SfxHint& rHint )
//#i76332# if document is to be opened in alive-mode then this has to be regarded while switching from readonly-mode to edit-mode
if( !bReadonly )
{
- SwDrawDocument * pDrawDoc = 0;
- if ( 0 != ( pDrawDoc = dynamic_cast< SwDrawDocument * > (GetDocShell()->GetDoc()->GetDrawModel() ) ) )
+ SwDrawModel* pDrawModel = 0;
+
+ if ( 0 != ( pDrawModel = GetDocShell()->GetDoc()->GetDrawModel() ) )
{
- if( !pDrawDoc->GetOpenInDesignMode() )
+ if( !pDrawModel->GetOpenInDesignMode() )
break;// don't touch the design mode
}
}
diff --git a/sw/source/ui/uiview/view2.cxx b/sw/source/ui/uiview/view2.cxx
index dd4eab5a9455..c437d0992030 100644
--- a/sw/source/ui/uiview/view2.cxx
+++ b/sw/source/ui/uiview/view2.cxx
@@ -1013,7 +1013,7 @@ void __EXPORT SwView::Execute(SfxRequest &rReq)
//GetViewFrame()->ShowChildWindow(nSlot, bShow && bInMailMerge);
if((bShow && bInMailMerge) != GetViewFrame()->HasChildWindow(nSlot))
GetViewFrame()->ToggleChildWindow(nSlot);
- //if fields have been succesfully inserted call the "real"
+ //if fields have been successfully inserted call the "real"
//mail merge dialog
SwWrtShell &rSh = GetWrtShell();
if(bInMailMerge && rSh.IsAnyDatabaseFieldInDoc())
diff --git a/sw/source/ui/uiview/viewport.cxx b/sw/source/ui/uiview/viewport.cxx
index 5e6c8128b597..6ec26419a25e 100644
--- a/sw/source/ui/uiview/viewport.cxx
+++ b/sw/source/ui/uiview/viewport.cxx
@@ -714,7 +714,7 @@ IMPL_LINK( SwView, ScrollHdl, SwScrollbar *, pScrollbar )
{
//Hier wieder auskommentieren wenn das mitscrollen nicht gewuenscht ist.
// JP 21.07.00: the end scrollhandler invalidate the FN_STAT_PAGE,
- // so we dont must do it agin.
+ // so we dont must do it again.
EndScrollHdl(pScrollbar);
if ( Help::IsQuickHelpEnabled() &&
@@ -730,7 +730,7 @@ IMPL_LINK( SwView, ScrollHdl, SwScrollbar *, pScrollbar )
if(pWrtShell->GetPageNumber( aPos.Y(), sal_False, nPhNum, nVirtNum, sDisplay ))
{
// JP 21.07.00: the end scrollhandler invalidate the FN_STAT_PAGE,
- // so we dont must do it agin.
+ // so we dont must do it again.
// if(!GetViewFrame()->GetFrame().IsInPlace())
// S F X_BINDINGS().Update(FN_STAT_PAGE);
diff --git a/sw/source/ui/uiview/viewstat.cxx b/sw/source/ui/uiview/viewstat.cxx
index aee1ca50f096..6a86182e04d7 100644
--- a/sw/source/ui/uiview/viewstat.cxx
+++ b/sw/source/ui/uiview/viewstat.cxx
@@ -19,8 +19,6 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sw.hxx"
@@ -30,7 +28,6 @@
#include <svl/aeitem.hxx>
#include <svl/whiter.hxx>
#include <svl/cjkoptions.hxx>
-
#include <sfx2/viewfrm.hxx>
#include <sfx2/objitem.hxx>
#include <svl/imageitm.hxx>
@@ -58,11 +55,12 @@
#include <svl/stritem.hxx>
#include <unotools/moduleoptions.hxx>
#include <svl/visitem.hxx>
-
#include <cmdid.h>
-
#include <IDocumentRedlineAccess.hxx>
+//UUUU
+#include <doc.hxx>
+
using namespace ::com::sun::star;
/*--------------------------------------------------------------------
@@ -144,6 +142,15 @@ void SwView::GetState(SfxItemSet &rSet)
{
const sal_uInt16 nCurIdx = pWrtShell->GetCurPageDesc();
const SwPageDesc& rDesc = pWrtShell->GetPageDesc( nCurIdx );
+
+ //UUUU set correct parent to get the XFILL_NONE FillStyle as needed
+ if(!rSet.GetParent())
+ {
+ const SwFrmFmt& rMaster = rDesc.GetMaster();
+
+ rSet.SetParent(&rMaster.GetDoc()->GetDfltFrmFmt()->GetAttrSet());
+ }
+
::PageDescToItemSet( rDesc, rSet);
}
break;
diff --git a/sw/source/ui/uno/unodefaults.cxx b/sw/source/ui/uno/unodefaults.cxx
index da4913d9acd9..10b5cc96d2e5 100644
--- a/sw/source/ui/uno/unodefaults.cxx
+++ b/sw/source/ui/uno/unodefaults.cxx
@@ -19,17 +19,15 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sw.hxx"
-
#include <unodefaults.hxx>
#include <svx/svdmodel.hxx>
#include <svx/unoprov.hxx>
#include <doc.hxx>
#include <svx/fmmodel.hxx>
+#include <drawdoc.hxx>
/* -----------------------------13.03.01 14:16--------------------------------
diff --git a/sw/source/ui/uno/unodispatch.cxx b/sw/source/ui/uno/unodispatch.cxx
index 732f32ddc5e4..6f2b765d5f54 100644
--- a/sw/source/ui/uno/unodispatch.cxx
+++ b/sw/source/ui/uno/unodispatch.cxx
@@ -60,7 +60,7 @@ SwXDispatchProviderInterceptor::SwXDispatchProviderInterceptor(SwView& rVw) :
m_refCount++;
m_xIntercepted->registerDispatchProviderInterceptor((frame::XDispatchProviderInterceptor*)this);
// this should make us the top-level dispatch-provider for the component, via a call to our
- // setDispatchProvider we should have got an fallback for requests we (i.e. our master) cannot fullfill
+ // setDispatchProvider we should have got an fallback for requests we (i.e. our master) cannot fulfill
uno::Reference< lang::XComponent> xInterceptedComponent(m_xIntercepted, uno::UNO_QUERY);
if (xInterceptedComponent.is())
xInterceptedComponent->addEventListener((lang::XEventListener*)this);
diff --git a/sw/source/ui/uno/unomailmerge.cxx b/sw/source/ui/uno/unomailmerge.cxx
index 77740e822081..bb0d92981621 100644
--- a/sw/source/ui/uno/unomailmerge.cxx
+++ b/sw/source/ui/uno/unomailmerge.cxx
@@ -111,7 +111,7 @@ osl::Mutex & GetMailMergeMutex()
enum CloseResult
{
eSuccess, // successfully closed
- eVetoed, // vetoed, ownership transfered to the vetoing instance
+ eVetoed, // vetoed, ownership transferred to the vetoing instance
eFailed // failed for some unknown reason
};
static CloseResult CloseModelAndDocSh(
@@ -279,7 +279,7 @@ namespace
try
{
sal_Bool bDeliverOwnership = ( 0 == m_nPendingDeleteAttempts );
- // if this is our last attemt, then anybody which vetoes this has to take the consequences
+ // if this is our last attempt, then anybody which vetoes this has to take the consequences
// (means take the ownership)
m_xDocument->close( bDeliverOwnership );
bSuccess = sal_True;
@@ -448,7 +448,7 @@ SwXMailMerge::~SwXMailMerge()
//! because there is no automatism that will do that later.
//! #120086#
if ( eVetoed == CloseModelAndDocSh( xModel, xDocSh ) )
- DBG_WARNING( "owner ship transfered to vetoing object!" );
+ DBG_WARNING( "owner ship transferred to vetoing object!" );
xModel = 0;
xDocSh = 0; // destroy doc shell
diff --git a/sw/source/ui/uno/unotxdoc.cxx b/sw/source/ui/uno/unotxdoc.cxx
index 408d6b1a44f3..9aa3cf421152 100644
--- a/sw/source/ui/uno/unotxdoc.cxx
+++ b/sw/source/ui/uno/unotxdoc.cxx
@@ -1258,7 +1258,7 @@ void SwXTextDocument::printPages(const Sequence< beans::PropertyValue >& xOption
OUString sFileURL;
if ( (rProp.Value >>= sFileURL ) )
{
- // Convert the File URL into a system dependant path, as the SalPrinter expects
+ // Convert the File URL into a system dependent path, as the SalPrinter expects
OUString sSystemPath;
FileBase::getSystemPathFromFileURL ( sFileURL, sSystemPath );
aReq.AppendItem(SfxStringItem( SID_FILE_NAME, sSystemPath ) );
@@ -2093,11 +2093,13 @@ void SwXTextDocument::setPropertyValue(const OUString& rPropertyName,
break;
case WID_DOC_AUTOMATIC_CONTROL_FOCUS:
{
- SwDrawDocument * pDrawDoc;
+ SwDrawModel* pDrawModel = 0;
sal_Bool bAuto = *(sal_Bool*) aValue.getValue();
- if ( 0 != ( pDrawDoc = dynamic_cast< SwDrawDocument * >( pDocShell->GetDoc()->GetDrawModel() ) ) )
- pDrawDoc->SetAutoControlFocus( bAuto );
+ if ( 0 != ( pDrawModel = pDocShell->GetDoc()->GetDrawModel() ) )
+ {
+ pDrawModel->SetAutoControlFocus( bAuto );
+ }
else if (bAuto)
{
// if setting to true, and we don't have an
@@ -2106,19 +2108,21 @@ void SwXTextDocument::setPropertyValue(const OUString& rPropertyName,
// SdrModel and we are leaving the default at false,
// we don't need to make an SdrModel and can do nothing
// --> OD 2005-08-08 #i52858# - method name changed
- pDrawDoc = dynamic_cast< SwDrawDocument * > (pDocShell->GetDoc()->GetOrCreateDrawModel() );
+ pDrawModel = pDocShell->GetDoc()->GetOrCreateDrawModel();
// <--
- pDrawDoc->SetAutoControlFocus ( bAuto );
+ pDrawModel->SetAutoControlFocus ( bAuto );
}
}
break;
case WID_DOC_APPLY_FORM_DESIGN_MODE:
{
- SwDrawDocument * pDrawDoc;
+ SwDrawModel* pDrawModel = 0;
sal_Bool bMode = *(sal_Bool*)aValue.getValue();
- if ( 0 != ( pDrawDoc = dynamic_cast< SwDrawDocument * > (pDocShell->GetDoc()->GetDrawModel() ) ) )
- pDrawDoc->SetOpenInDesignMode( bMode );
+ if ( 0 != ( pDrawModel = pDocShell->GetDoc()->GetDrawModel() ) )
+ {
+ pDrawModel->SetOpenInDesignMode( bMode );
+ }
else if (!bMode)
{
// if setting to false, and we don't have an
@@ -2128,9 +2132,9 @@ void SwXTextDocument::setPropertyValue(const OUString& rPropertyName,
// we don't need to make an SdrModel and can do
// nothing
// --> OD 2005-08-08 #i52858# - method name changed
- pDrawDoc = dynamic_cast< SwDrawDocument * > (pDocShell->GetDoc()->GetOrCreateDrawModel() );
+ pDrawModel = pDocShell->GetDoc()->GetOrCreateDrawModel();
// <--
- pDrawDoc->SetOpenInDesignMode ( bMode );
+ pDrawModel->SetOpenInDesignMode ( bMode );
}
}
break;
@@ -2273,23 +2277,35 @@ Any SwXTextDocument::getPropertyValue(const OUString& rPropertyName)
break;
case WID_DOC_AUTOMATIC_CONTROL_FOCUS:
{
- SwDrawDocument * pDrawDoc;
- sal_Bool bAuto;
- if ( 0 != ( pDrawDoc = dynamic_cast< SwDrawDocument * > (pDocShell->GetDoc()->GetDrawModel() ) ) )
- bAuto = pDrawDoc->GetAutoControlFocus();
+ SwDrawModel* pDrawModel = 0;
+ sal_Bool bAuto(sal_False);
+
+ if ( 0 != ( pDrawModel = pDocShell->GetDoc()->GetDrawModel() ) )
+ {
+ bAuto = pDrawModel->GetAutoControlFocus();
+ }
else
+ {
bAuto = sal_False;
+ }
+
aAny.setValue(&bAuto, ::getBooleanCppuType());
}
break;
case WID_DOC_APPLY_FORM_DESIGN_MODE:
{
- SwDrawDocument * pDrawDoc;
- sal_Bool bMode;
- if ( 0 != ( pDrawDoc = dynamic_cast< SwDrawDocument * > (pDocShell->GetDoc()->GetDrawModel() ) ) )
- bMode = pDrawDoc->GetOpenInDesignMode();
+ SwDrawModel* pDrawModel = 0;
+ sal_Bool bMode(sal_False);
+
+ if ( 0 != ( pDrawModel = pDocShell->GetDoc()->GetDrawModel() ) )
+ {
+ bMode = pDrawModel->GetOpenInDesignMode();
+ }
else
+ {
bMode = sal_True;
+ }
+
aAny.setValue(&bMode, ::getBooleanCppuType());
}
break;
diff --git a/sw/source/ui/utlui/content.cxx b/sw/source/ui/utlui/content.cxx
index abd5759f9c44..913aca6ca15d 100644
--- a/sw/source/ui/utlui/content.cxx
+++ b/sw/source/ui/utlui/content.cxx
@@ -19,8 +19,6 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sw.hxx"
@@ -85,22 +83,16 @@
#include <numrule.hxx>
#include <swundo.hxx>
#include <ndtxt.hxx>
-//#include <ndgrf.hxx>
#include <fmtcntnt.hxx>
#include <PostItMgr.hxx>
-//#include <../../core/inc/flyfrm.hxx>
-//#include <../../core/inc/cntfrm.hxx>
-//#include <ndnotxt.hxx>
-//#include <postit.hxx>
#include <postithelper.hxx>
#include <redline.hxx>
#include <docary.hxx>
-
#include "swabstdlg.hxx"
#include "globals.hrc"
#include <unomid.h>
#include <svx/fmmodel.hxx>
-
+#include <drawdoc.hxx>
#define CTYPE_CNT 0
#define CTYPE_CTT 1
@@ -447,7 +439,7 @@ void SwContentType::Init(sal_Bool* pbInvalidateWindow)
{
sTypeToken = aEmptyStr;
nMemberCount = 0;
- SdrModel* pModel = pWrtShell->getIDocumentDrawModelAccess()->GetDrawModel();
+ SwDrawModel* pModel = pWrtShell->getIDocumentDrawModelAccess()->GetDrawModel();
if(pModel)
{
SdrPage* pPage = pModel->GetPage(0);
@@ -816,7 +808,7 @@ void SwContentType::FillMemberList(sal_Bool* pbLevelOrVisibiblityChanged)
pMember->DeleteAndDestroy(0, pMember->Count());
IDocumentDrawModelAccess* pIDDMA = pWrtShell->getIDocumentDrawModelAccess();
- SdrModel* pModel = pIDDMA->GetDrawModel();
+ SwDrawModel* pModel = pIDDMA->GetDrawModel();
if(pModel)
{
SdrPage* pPage = pModel->GetPage(0);
@@ -956,7 +948,7 @@ String SwContentTree::GetEntryAltText( SvLBoxEntry* pEntry ) const
SdrView* pDrawView = pActiveShell->GetDrawView();
if (pDrawView)
{
- SdrModel* pDrawModel = pActiveShell->GetDoc()->GetDrawModel();
+ SwDrawModel* pDrawModel = pActiveShell->GetDoc()->GetDrawModel();
SdrPage* pPage = pDrawModel->GetPage(0);
const sal_uInt32 nCount = pPage->GetObjCount();
for( sal_uInt32 i=0; i< nCount; i++ )
@@ -1034,7 +1026,7 @@ String SwContentTree::GetEntryLongDescription( SvLBoxEntry* pEntry ) const
SdrView* pDrawView = pActiveShell->GetDrawView();
if (pDrawView)
{
- SdrModel* pDrawModel = pActiveShell->GetDoc()->GetDrawModel();
+ SwDrawModel* pDrawModel = pActiveShell->GetDoc()->GetDrawModel();
SdrPage* pPage = pDrawModel->GetPage(0);
sal_uInt32 nCount = pPage->GetObjCount();
for( sal_uInt32 i=0; i< nCount; i++ )
@@ -1400,7 +1392,7 @@ SdrObject* SwContentTree::GetDrawingObjectsByContent(const SwContent *pCnt)
SdrView* pDrawView = pActiveShell->GetDrawView();
if (pDrawView)
{
- SdrModel* pDrawModel = pActiveShell->GetDoc()->GetDrawModel();
+ SwDrawModel* pDrawModel = pActiveShell->GetDoc()->GetDrawModel();
SdrPage* pPage = pDrawModel->GetPage(0);
sal_uInt32 nCount = pPage->GetObjCount();
@@ -2681,7 +2673,7 @@ void SwContentTree::KeyInput(const KeyEvent& rEvent)
{
pDrawView->SdrEndTextEdit();//Change from "EndTextEdit" to "SdrEndTextEdit" for acc migration
- SdrModel* pDrawModel = pActiveShell->GetDoc()->GetDrawModel();
+ SwDrawModel* pDrawModel = pActiveShell->GetDoc()->GetDrawModel();
SdrPage* pPage = pDrawModel->GetPage(0);
sal_uInt32 nCount = pPage->GetObjCount();
sal_Bool hasObjectMarked = sal_False;
@@ -3381,7 +3373,7 @@ void SwContentTree::GotoContent(SwContent* pCnt)
{
pDrawView->SdrEndTextEdit();
pDrawView->UnmarkAll();
- SdrModel* _pModel = pActiveShell->getIDocumentDrawModelAccess()->GetDrawModel();
+ SwDrawModel* _pModel = pActiveShell->getIDocumentDrawModelAccess()->GetDrawModel();
SdrPage* pPage = _pModel->GetPage(0);
sal_uInt32 nCount = pPage->GetObjCount();
for( sal_uInt32 i=0; i< nCount; i++ )
diff --git a/sw/source/ui/utlui/navipi.cxx b/sw/source/ui/utlui/navipi.cxx
index 869a48a521ae..050e57b3bf27 100644
--- a/sw/source/ui/utlui/navipi.cxx
+++ b/sw/source/ui/utlui/navipi.cxx
@@ -803,6 +803,7 @@ SwNavigationPI::SwNavigationPI( SfxBindings* _pBindings,
aContentToolBox.SetHelpId(HID_NAVIGATOR_TOOLBOX );
aGlobalToolBox.SetHelpId(HID_NAVIGATOR_GLOBAL_TOOLBOX);
aDocListBox.SetHelpId(HID_NAVIGATOR_LISTBOX );
+ aDocListBox.SetDropDownLineCount(9);
nDocLBIniHeight = aDocListBox.GetSizePixel().Height();
nZoomOutInit = nZoomOut = Resource::ReadShortRes();
diff --git a/sw/source/ui/utlui/uitool.cxx b/sw/source/ui/utlui/uitool.cxx
index 78a2d381d097..4db50c999776 100644
--- a/sw/source/ui/utlui/uitool.cxx
+++ b/sw/source/ui/utlui/uitool.cxx
@@ -385,12 +385,19 @@ void PageDescToItemSet( const SwPageDesc& rPageDesc, SfxItemSet& rSet)
// HeaderInfo, Raender, Hintergrund, Umrandung
//
- SfxItemSet aHeaderSet( *rSet.GetPool(),
- SID_ATTR_PAGE_ON, SID_ATTR_PAGE_SHARED,
- SID_ATTR_PAGE_SIZE, SID_ATTR_PAGE_SIZE,
- SID_ATTR_BORDER_INNER, SID_ATTR_BORDER_INNER,
- RES_FRMATR_BEGIN, RES_FRMATR_END-1,
- 0);
+ SfxItemSet aHeaderSet(*rSet.GetPool(),
+ RES_FRMATR_BEGIN,RES_FRMATR_END - 1, // [82
+
+ //UUUU FillAttribute support
+ XATTR_FILL_FIRST, XATTR_FILL_LAST, // [1014
+
+ SID_ATTR_BORDER_INNER,SID_ATTR_BORDER_INNER, // [10023
+ SID_ATTR_PAGE_SIZE,SID_ATTR_PAGE_SIZE, // [10051
+ SID_ATTR_PAGE_ON,SID_ATTR_PAGE_SHARED, // [10060
+ 0, 0);
+
+ //UUUU set correct parent to get the XFILL_NONE FillStyle as needed
+ aHeaderSet.SetParent(&rMaster.GetDoc()->GetDfltFrmFmt()->GetAttrSet());
// dynamische oder feste Hoehe
//
@@ -431,12 +438,19 @@ void PageDescToItemSet( const SwPageDesc& rPageDesc, SfxItemSet& rSet)
// FooterInfo, Raender, Hintergrund, Umrandung
//
- SfxItemSet aFooterSet( *rSet.GetPool(),
- SID_ATTR_PAGE_ON, SID_ATTR_PAGE_SHARED,
- SID_ATTR_PAGE_SIZE, SID_ATTR_PAGE_SIZE,
- SID_ATTR_BORDER_INNER, SID_ATTR_BORDER_INNER,
- RES_FRMATR_BEGIN, RES_FRMATR_END-1,
- 0);
+ SfxItemSet aFooterSet(*rSet.GetPool(),
+ RES_FRMATR_BEGIN,RES_FRMATR_END - 1, // [82
+
+ //UUUU FillAttribute support
+ XATTR_FILL_FIRST, XATTR_FILL_LAST, // [1014
+
+ SID_ATTR_BORDER_INNER,SID_ATTR_BORDER_INNER, // [10023
+ SID_ATTR_PAGE_SIZE,SID_ATTR_PAGE_SIZE, // [10051
+ SID_ATTR_PAGE_ON,SID_ATTR_PAGE_SHARED, // [10060
+ 0, 0);
+
+ //UUUU set correct parent to get the XFILL_NONE FillStyle as needed
+ aFooterSet.SetParent(&rMaster.GetDoc()->GetDfltFrmFmt()->GetAttrSet());
// dynamische oder feste Hoehe
//
diff --git a/sw/source/ui/wrtsh/select.cxx b/sw/source/ui/wrtsh/select.cxx
index 574decb055d0..60be62e7de97 100644
--- a/sw/source/ui/wrtsh/select.cxx
+++ b/sw/source/ui/wrtsh/select.cxx
@@ -65,7 +65,7 @@ static sal_Bool bStartDrag = sal_False;
void SwWrtShell::Invalidate()
{
- // to avoid making the slot volatile, invalidate it everytime if something could have been changed
+ // to avoid making the slot volatile, invalidate it every time if something could have been changed
// this is still much cheaper than asking for the state every 200 ms (and avoid background processing)
GetView().GetViewFrame()->GetBindings().Invalidate( FN_STAT_SELMODE );
}
diff --git a/sw/source/ui/wrtsh/wrtsh2.cxx b/sw/source/ui/wrtsh/wrtsh2.cxx
index 00ccaf63b9af..4ad98e910a1c 100644
--- a/sw/source/ui/wrtsh/wrtsh2.cxx
+++ b/sw/source/ui/wrtsh/wrtsh2.cxx
@@ -100,7 +100,10 @@ void SwWrtShell::Insert( SwField& rFld )
GetTblCrs()->Normalize( sal_False );
const SwPosition rStartPos( *(GetTblCrs()->GetMark()->nNode.GetNode().GetCntntNode()), 0 );
KillPams();
- EndPara();
+ if ( !IsEndOfPara() )
+ {
+ EndPara();
+ }
const SwPosition rEndPos( *GetCurrentShellCursor().GetPoint() );
pAnnotationTextRange = new SwPaM( rStartPos, rEndPos );
}
diff --git a/swext/mediawiki/build.xml b/swext/mediawiki/build.xml
index d056217ebbb3..165105d0cb3a 100644
--- a/swext/mediawiki/build.xml
+++ b/swext/mediawiki/build.xml
@@ -95,7 +95,7 @@
<jar basedir="${classes}" compress="true" jarfile="${dist}/${target}.jar">
<manifest>
<!-- FIXME: Set Class-Path correctly for the system case !-->
- <attribute name="Class-Path" value="commons-codec-1.6.jar commons-lang-2.4.jar commons-httpclient-3.1.jar commons-logging-1.1.1.jar"/>
+ <attribute name="Class-Path" value="commons-codec-1.9.jar commons-lang3-3.3.jar commons-httpclient-3.1.jar commons-logging-1.1.3.jar"/>
<attribute name="RegistrationClassName" value="com.sun.star.wiki.WikiEditorImpl"/>
</manifest>
</jar>
diff --git a/swext/mediawiki/makefile.mk b/swext/mediawiki/makefile.mk
index 42d3456b9ed9..d36ec947be37 100644
--- a/swext/mediawiki/makefile.mk
+++ b/swext/mediawiki/makefile.mk
@@ -29,10 +29,10 @@ TARGET=mediawiki
.INCLUDE : ant.mk
.IF "$(SYSTEM_APACHE_COMMONS)" != "YES"
-COMMONS_CODEC_JAR=$(SOLARVER)$/$(INPATH)$/bin$(UPDMINOREXT)$/commons-codec-1.6.jar
-COMMONS_LANG_JAR=$(SOLARVER)$/$(INPATH)$/bin$(UPDMINOREXT)$/commons-lang-2.4.jar
+COMMONS_CODEC_JAR=$(SOLARVER)$/$(INPATH)$/bin$(UPDMINOREXT)$/commons-codec-1.9.jar
+COMMONS_LANG_JAR=$(SOLARVER)$/$(INPATH)$/bin$(UPDMINOREXT)$/commons-lang3-3.3.jar
COMMONS_HTTPCLIENT_JAR=$(SOLARVER)$/$(INPATH)$/bin$(UPDMINOREXT)$/commons-httpclient-3.1.jar
-COMMONS_LOGGING_JAR=$(SOLARVER)$/$(INPATH)$/bin$(UPDMINOREXT)$/commons-logging-1.1.1.jar
+COMMONS_LOGGING_JAR=$(SOLARVER)$/$(INPATH)$/bin$(UPDMINOREXT)$/commons-logging-1.1.3.jar
.ELSE
COMP=fix_system_commons
.ENDIF
diff --git a/swext/mediawiki/src/registry/schema/org/openoffice/Office/Custom/WikiExtension.xcs b/swext/mediawiki/src/registry/schema/org/openoffice/Office/Custom/WikiExtension.xcs
index 1bdc3188894b..c4ec19d9cc93 100644
--- a/swext/mediawiki/src/registry/schema/org/openoffice/Office/Custom/WikiExtension.xcs
+++ b/swext/mediawiki/src/registry/schema/org/openoffice/Office/Custom/WikiExtension.xcs
@@ -152,13 +152,13 @@
<info><desc>The text asking whether a new wiki page should be created.</desc></info>
</prop>
<prop oor:name="Dlg_SendToMediaWiki_Label1" oor:type="xs:string" oor:localized="true">
- <info><desc>The label reffering to the MediaWiki server selection.</desc></info>
+ <info><desc>The label referring to the MediaWiki server selection.</desc></info>
</prop>
<prop oor:name="Dlg_SendToMediaWiki_Label2" oor:type="xs:string" oor:localized="true">
- <info><desc>The label reffering to the input of wiki article title.</desc></info>
+ <info><desc>The label referring to the input of wiki article title.</desc></info>
</prop>
<prop oor:name="Dlg_SendToMediaWiki_Label3" oor:type="xs:string" oor:localized="true">
- <info><desc>The label reffering to the comments input.</desc></info>
+ <info><desc>The label referring to the comments input.</desc></info>
</prop>
<prop oor:name="Dlg_SendToMediaWiki_MinorCheck" oor:type="xs:string" oor:localized="true">
<info><desc>Text for checkbox specifying whether it is a minor input.</desc></info>
diff --git a/sysui/desktop/debian/control b/sysui/desktop/debian/control
index 90f0c09c7dfa..75f9191b73ce 100644
--- a/sysui/desktop/debian/control
+++ b/sysui/desktop/debian/control
@@ -1,5 +1,6 @@
Description: %productname desktop integration
-Maintainer: Apache Software Foundation
+ This package provides desktop icons and menus for %productname
+Maintainer: Apache Software Foundation <packagers@openoffice.apache.org>
Architecture: all
Provides: openoffice-desktop-integration, openoffice.org-unbundled
Conflicts: openoffice-desktop-integration, openofficeorg-desktop-integration, openoffice.org-debian-menus
diff --git a/sysui/desktop/debian/makefile.mk b/sysui/desktop/debian/makefile.mk
index a0616c8ed7b8..96c630a9585a 100644
--- a/sysui/desktop/debian/makefile.mk
+++ b/sysui/desktop/debian/makefile.mk
@@ -41,7 +41,7 @@ TARGET=debian
.IF "$(PKGFORMAT)"!="$(PKGFORMAT:s/deb//)"
-DEBFILES=$(foreach,i,{$(PRODUCTLIST)} $(PKGDIR)$/$i4.0-$(TARGET)-menus_$(PKGVERSION.$i)-$(PKGREV)_all.deb)
+DEBFILES=$(foreach,i,{$(PRODUCTLIST)} $(PKGDIR)$/$i4.2-$(TARGET)-menus_$(PKGVERSION.$i)-$(PKGREV)_all.deb)
.ENDIF
@@ -56,22 +56,22 @@ ALLTAR : $(DEBFILES)
%/DEBIAN/control : $$(@:f)
@$(MKDIRHIER) $(@:d) $*$/etc $*$/usr/share/applnk/Office $*$/usr/lib/menu
- ln -sf /opt/$(UNIXFILENAME.$(*:f:s/-/ /:1:s/4.0//)) $*$/etc$/
- /bin/sh -c -x "cd $(COMMONMISC)$/$(*:f:s/-/ /:1:s/4.0//) && DESTDIR=$(shell @cd $*; pwd) ICON_PREFIX=$(ICONPREFIX) KDEMAINDIR=/usr GNOMEDIR=/usr create_tree.sh"
- @cat openoffice.org-debian-menus | sed -e 's/%PRODUCTNAME/$(PRODUCTNAME.$(*:f:s/-/ /:1:s/4.0//)) $(PRODUCTVERSION.$(*:f:s/-/ /:1:s/4.0//))/' -e 's/%PREFIX/$(UNIXFILENAME.$(*:f:s/-/ /:1:s/4.0//))/' -e 's/%ICONPREFIX/$(ICONPREFIX.$(*:f:s/-/ /:1:s/4.0//))/' > $*$/usr/lib/menu/$(*:f:s/_/ /:1:s/4.0//)
- echo "Package: $(*:f:s/_/ /:1:s/4.0//)" > $@
- cat $(@:f) | tr -d "\015" | sed "s/%productname/$(PRODUCTNAME.$(*:f:s/-/ /:1:s/4.0//))/" >> $@
- echo "Version: $(PKGVERSION.$(*:f:s/-/ /:1:s/4.0//))-$(PKGREV)" >> $@
+ ln -sf /opt/$(UNIXFILENAME.$(*:f:s/-/ /:1:s/4.2//)) $*$/etc$/
+ /bin/sh -c -x "cd $(COMMONMISC)$/$(*:f:s/-/ /:1:s/4.2//) && DESTDIR=$(shell @cd $*; pwd) ICON_PREFIX=$(ICONPREFIX) KDEMAINDIR=/usr GNOMEDIR=/usr create_tree.sh"
+ @cat openoffice.org-debian-menus | sed -e 's/%PRODUCTNAME/$(PRODUCTNAME.$(*:f:s/-/ /:1:s/4.2//)) $(PRODUCTVERSION.$(*:f:s/-/ /:1:s/4.2//))/' -e 's/%PREFIX/$(UNIXFILENAME.$(*:f:s/-/ /:1:s/4.2//))/' -e 's/%ICONPREFIX/$(ICONPREFIX.$(*:f:s/-/ /:1:s/4.2//))/' > $*$/usr/lib/menu/$(*:f:s/_/ /:1:s/4.2//)
+ echo "Package: $(*:f:s/_/ /:1:s/4.2//)" > $@
+ cat $(@:f) | tr -d "\015" | sed "s/%productname/$(PRODUCTNAME.$(*:f:s/-/ /:1:s/4.2//))/" >> $@
+ echo "Version: $(PKGVERSION.$(*:f:s/-/ /:1:s/4.2//))-$(PKGREV)" >> $@
@du -k -s $* | awk -F ' ' '{ printf "Installed-Size: %s\n", $$1 ; }' >> $@
%/DEBIAN/postinst : $$(@:f)
- @cat $< | tr -d "\015" | sed -e "s/%PREFIX/$(UNIXFILENAME.$(*:f:s/-/ /:1:s/4.0//))/g" > $@
+ @cat $< | tr -d "\015" | sed -e "s/%PREFIX/$(UNIXFILENAME.$(*:f:s/-/ /:1:s/4.2//))/g" > $@
%/DEBIAN/postrm : $$(@:f)
- @cat $< | tr -d "\015" | sed -e "s/%PREFIX/$(UNIXFILENAME.$(*:f:s/-/ /:1:s/4.0//))/g" > $@
+ @cat $< | tr -d "\015" | sed -e "s/%PREFIX/$(UNIXFILENAME.$(*:f:s/-/ /:1:s/4.2//))/g" > $@
%/DEBIAN/prerm : $$(@:f)
- @cat $< | tr -d "\015" | sed -e "s/%PREFIX/$(UNIXFILENAME.$(*:f:s/-/ /:1:s/4.0//))/g" > $@
+ @cat $< | tr -d "\015" | sed -e "s/%PREFIX/$(UNIXFILENAME.$(*:f:s/-/ /:1:s/4.2//))/g" > $@
# --- packaging ---------------------------------------------------
@@ -81,7 +81,7 @@ $(DEBFILES) : makefile.mk control postinst postrm prerm
-$(RM) $(@:d)$(@:f:s/_/ /:1)_*
$(RM) -r $(MISC)$/$(@:b)
dmake $(MISC)$/$(@:b)$/DEBIAN$/{control postinst postrm prerm}
- @chmod -R o-w $(MISC)$/$(@:b)
+ @chmod -R go-w $(MISC)$/$(@:b)
@chmod a+rx $(MISC)$/$(@:b)$/DEBIAN $(MISC)/$(@:b)/DEBIAN/post* $(MISC)/$(@:b)/DEBIAN/pre*
@chmod g-s $(MISC)/$(@:b)/DEBIAN
@mkdir -p $(PKGDIR)
diff --git a/sysui/desktop/productversion.mk b/sysui/desktop/productversion.mk
index 50c9ac83bb66..aad3a556502e 100644
--- a/sysui/desktop/productversion.mk
+++ b/sysui/desktop/productversion.mk
@@ -44,10 +44,10 @@ PKGDIR=$(BIN)
# It has to be equal to PRODUCTNAME:l:s/\s/\_/g - see solenv/bin/modules/installer/setupscript.pm
PRODUCTLIST = openoffice
-# default values to minimize maintainance effort
+# default values to minimize maintenance effort
# CAUTION! $(OOOBASEVERSION) from openoffice.lst NOT available (!)
-PRODUCTVERSION = 4.1
+PRODUCTVERSION = 4.2
# CAUTION! $(BRANDPACKAGEVERSION) from openoffice.lst NOT available (!)
PRODUCTVERSIONSHORT = 4
diff --git a/sysui/desktop/share/brand.pl b/sysui/desktop/share/brand.pl
index 70db1ecd5e64..f73866cbab0c 100644
--- a/sysui/desktop/share/brand.pl
+++ b/sysui/desktop/share/brand.pl
@@ -82,15 +82,15 @@ while (<>) {
# remove possible Windows line-ends
chomp;
- # patch all occurances of openoffice in ICON line with
+ # patch all occurrences of openoffice in ICON line with
# $prefix
s/Icon=/Icon=$iconprefix/;
- # patch all occurances of openoffice in icon_filename
+ # patch all occurrences of openoffice in icon_filename
# line with $prefix
s/icon_filename=/icon_filename=$iconprefix/;
- # patch all occurances of openoffice in EXEC line with
+ # patch all occurrences of openoffice in EXEC line with
# $productfilename
if ( /Exec/ ) {
s/openoffice/$productfilename/;
diff --git a/sysui/desktop/slackware/makefile.mk b/sysui/desktop/slackware/makefile.mk
index f20c50ef4f2e..d707f08dc27e 100644
--- a/sysui/desktop/slackware/makefile.mk
+++ b/sysui/desktop/slackware/makefile.mk
@@ -36,7 +36,7 @@ TARGET=slackware
# --- Files --------------------------------------------------------
-MENUFILES=$(PKGDIR)$/{$(PRODUCTLIST)}4.0-$(TARGET)-menus-$(PKGVERSION)-noarch-$(PKGREV).tgz
+MENUFILES=$(PKGDIR)$/{$(PRODUCTLIST)}4.2-$(TARGET)-menus-$(PKGVERSION)-noarch-$(PKGREV).tgz
# --- Targets -------------------------------------------------------
@@ -55,32 +55,32 @@ $(MISC)/$(TARGET)/usr/share/applications/ :
# FIXME: removal of *-extension.* only to create identical packages to OOF680
%/usr/share/applications :
@$(MKDIRHIER) $@
- /bin/sh -c "cd $(COMMONMISC)$/$(*:b:s/-/ /:1:s/4.0//); DESTDIR=$(shell @cd $*; pwd) GNOMEDIR="" ICON_PREFIX=$(ICONPREFIX.$(*:b:s/-/ /:1:s/4.0//)) KDEMAINDIR=/opt/kde .$/create_tree.sh"
+ /bin/sh -c "cd $(COMMONMISC)$/$(*:b:s/-/ /:1:s/4.2//); DESTDIR=$(shell @cd $*; pwd) GNOMEDIR="" ICON_PREFIX=$(ICONPREFIX.$(*:b:s/-/ /:1:s/4.2//)) KDEMAINDIR=/opt/kde .$/create_tree.sh"
$(RM) $*$/opt$/kde$/share$/icons$/*$/*$/*$/*-extension.png
$(RM) $*$/opt$/kde$/share$/mimelnk$/application$/*-extension.desktop
$(RM) $*$/usr$/share$/applications$/*.desktop
$(RM) $*$/usr$/bin$/soffice
%$/install$/doinst.sh : update-script
- @echo "( cd etc ; rm -rf $(UNIXFILENAME.$(*:b:s/-/ /:1:s/4.0//)) )" > $@
- @echo "( cd etc ; ln -snf /opt/$(UNIXFILENAME.$(*:b:s/-/ /:1:s/4.0//):s/-//) $(UNIXFILENAME.$(*:b:s/-/ /:1:s/4.0//)) )" >> $@
+ @echo "( cd etc ; rm -rf $(UNIXFILENAME.$(*:b:s/-/ /:1:s/4.2//)) )" > $@
+ @echo "( cd etc ; ln -snf /opt/$(UNIXFILENAME.$(*:b:s/-/ /:1:s/4.2//):s/-//) $(UNIXFILENAME.$(*:b:s/-/ /:1:s/4.2//)) )" >> $@
@echo "( cd usr/bin ; rm -rf soffice )" >> $@
- @echo "( cd usr/bin ; ln -sf /etc/$(UNIXFILENAME.$(*:b:s/-/ /:1:s/4.0//))/program/soffice soffice )" >> $@
- @echo -e $(foreach,i,$(shell @cat $(COMMONMISC)$/$(*:b:s/-/ /:1:s/4.0//)/launcherlist) "\n( cd usr/share/applications ; rm -rf $(UNIXFILENAME.$(*:b:s/-/ /:1:s/4.0//))-$i )\n( cd usr/share/applications ; ln -sf /etc/$(UNIXFILENAME.$(*:b:s/-/ /:1:s/4.0//))/share/xdg/$i $(UNIXFILENAME.$(*:b:s/-/ /:1:s/4.0//))-$i )") >> $@
+ @echo "( cd usr/bin ; ln -sf /etc/$(UNIXFILENAME.$(*:b:s/-/ /:1:s/4.2//))/program/soffice soffice )" >> $@
+ @echo -e $(foreach,i,$(shell @cat $(COMMONMISC)$/$(*:b:s/-/ /:1:s/4.2//)/launcherlist) "\n( cd usr/share/applications ; rm -rf $(UNIXFILENAME.$(*:b:s/-/ /:1:s/4.2//))-$i )\n( cd usr/share/applications ; ln -sf /etc/$(UNIXFILENAME.$(*:b:s/-/ /:1:s/4.2//))/share/xdg/$i $(UNIXFILENAME.$(*:b:s/-/ /:1:s/4.2//))-$i )") >> $@
@cat $< >> $@
%$/install$/slack-desc : slack-desc
@$(MKDIRHIER) $(@:d)
- @sed -e "s/PKGNAME/$(*:b:s/-/ /:1:s/4.0//)-$(TARGET)-menus/g" -e "s/PKGVERSION/$(PKGVERSION.$(*:b:s/-/ /:1:s/4.0//))/g" \
- -e "s/LONGPRODUCTNAME/$(PRODUCTNAME.$(*:b:s/-/ /:1:s/4.0//)) $(PRODUCTVERSION.$(*:b:s/-/ /:1:s/4.0//))/g" \
- -e "s/PRODUCTNAME/$(PRODUCTNAME.$(*:b:s/-/ /:1:s/4.0//))/g" \
- -e "s/UNIXFILENAME/$(UNIXFILENAME.$(*:b:s/-/ /:1:s/4.0//))/g" $< > $@
+ @sed -e "s/PKGNAME/$(*:b:s/-/ /:1:s/4.2//)-$(TARGET)-menus/g" -e "s/PKGVERSION/$(PKGVERSION.$(*:b:s/-/ /:1:s/4.2//))/g" \
+ -e "s/LONGPRODUCTNAME/$(PRODUCTNAME.$(*:b:s/-/ /:1:s/4.2//)) $(PRODUCTVERSION.$(*:b:s/-/ /:1:s/4.2//))/g" \
+ -e "s/PRODUCTNAME/$(PRODUCTNAME.$(*:b:s/-/ /:1:s/4.2//))/g" \
+ -e "s/UNIXFILENAME/$(UNIXFILENAME.$(*:b:s/-/ /:1:s/4.2//))/g" $< > $@
# needed to satisfy the slackware package tools - they need
# the entries like this
# ./ <- very important
# directory/file
-# the follwoing does not work (no description found then):
+# the following does not work (no description found then):
# ./
# ./directory/file
# and this doesn't work either (broken file-list, package cannot be removed)
diff --git a/testgraphical/source/CallExternals.pm b/testgraphical/source/CallExternals.pm
index ed80a7d06019..ebaf5ddc7ff3 100644
--- a/testgraphical/source/CallExternals.pm
+++ b/testgraphical/source/CallExternals.pm
@@ -485,7 +485,7 @@ sub ExecSQL($)
($error, @aResult) = callphp(getPHPExecutable(), $sSQLDirect, singleQuote($sSQL));
if ($error)
{
- log_print ("ExecSQL: An Error occured.\n");
+ log_print ("ExecSQL: An Error occurred.\n");
log_print ("PHP: " . getPHPExecutable() . "\n");
log_print ("SQL Statement: " . singleQuote($sSQL) . "\n");
# exit(1);
diff --git a/testgraphical/source/fill_documents_loop.pl b/testgraphical/source/fill_documents_loop.pl
index da8ae07e9fd4..46c057ed5380 100644
--- a/testgraphical/source/fill_documents_loop.pl
+++ b/testgraphical/source/fill_documents_loop.pl
@@ -212,7 +212,7 @@ sub createDBEntriesForEveryDocument($)
my $sStr = shift;
if ($sStr =~ /^MySQL-Error/ )
{
- # we don't do anything if an error occured
+ # we don't do anything if an error occurred
return;
}
diff --git a/testgraphical/ui/java/ConvwatchGUIProject/src/IniFile.java b/testgraphical/ui/java/ConvwatchGUIProject/src/IniFile.java
index 3dde57246c25..e459748756be 100644
--- a/testgraphical/ui/java/ConvwatchGUIProject/src/IniFile.java
+++ b/testgraphical/ui/java/ConvwatchGUIProject/src/IniFile.java
@@ -696,7 +696,7 @@ public class IniFile implements Enumeration
}
/**
- * Helper to count the occurence of Sections
+ * Helper to count the occurrence of Sections
* @return returns the count of '^['.*']$' Elements
*/
public int getElementCount()
diff --git a/testtools/source/bridgetest/bridgetest.cxx b/testtools/source/bridgetest/bridgetest.cxx
index c0cecc981a11..332f15060e54 100644
--- a/testtools/source/bridgetest/bridgetest.cxx
+++ b/testtools/source/bridgetest/bridgetest.cxx
@@ -1221,7 +1221,7 @@ sal_Int32 TestBridgeImpl::run( const Sequence< OUString > & rArgs )
catch (Exception & exc)
{
OString cstr( OUStringToOString( exc.Message, RTL_TEXTENCODING_ASCII_US ) );
- fprintf( stderr, "exception occured: %s\n", cstr.getStr() );
+ fprintf( stderr, "exception occurred: %s\n", cstr.getStr() );
throw;
}
diff --git a/testtools/source/bridgetest/cli/cli_cpp_bridgetest.cxx b/testtools/source/bridgetest/cli/cli_cpp_bridgetest.cxx
index db1a8ace2118..0dd532cac5b2 100644
--- a/testtools/source/bridgetest/cli/cli_cpp_bridgetest.cxx
+++ b/testtools/source/bridgetest/cli/cli_cpp_bridgetest.cxx
@@ -965,7 +965,7 @@ static bool raiseException(XBridgeTest* xLBT )
catch (System::Exception* exc)
{
System::Text::StringBuilder* s = new System::Text::StringBuilder();
- s->Append(S"cli_cpp_bridgetest: unexpected exception occured in XMain::run. Original exception: ");
+ s->Append(S"cli_cpp_bridgetest: unexpected exception occurred in XMain::run. Original exception: ");
s->Append(exc->GetType()->Name);
s->Append(S"\n Message: ");
s->Append(exc->Message);
diff --git a/testtools/source/bridgetest/cli/cli_cs_bridgetest.cs b/testtools/source/bridgetest/cli/cli_cs_bridgetest.cs
index 7468120d7c5a..7591896bed88 100644
--- a/testtools/source/bridgetest/cli/cli_cs_bridgetest.cs
+++ b/testtools/source/bridgetest/cli/cli_cs_bridgetest.cs
@@ -1020,7 +1020,7 @@ static bool raiseException(XBridgeTest xLBT )
catch (System.Exception exc)
{
throw new unoidl.com.sun.star.uno.RuntimeException(
- "cli_cs_bridgetest.cs: unexpected exception occured in XMain::run. Original exception: " +
+ "cli_cs_bridgetest.cs: unexpected exception occurred in XMain::run. Original exception: " +
exc.GetType().Name + "\n Message: " + exc.Message , null);
}
}
diff --git a/testtools/source/bridgetest/cli/cli_vb_bridgetest.vb b/testtools/source/bridgetest/cli/cli_vb_bridgetest.vb
index 3a697ee94c4f..e24281e907d0 100644
--- a/testtools/source/bridgetest/cli/cli_vb_bridgetest.vb
+++ b/testtools/source/bridgetest/cli/cli_vb_bridgetest.vb
@@ -846,7 +846,7 @@ Public Class BridgeTest
Throw
Catch e as System.Exception
Throw New unoidl.com.sun.star.uno.RuntimeException( _
- "cli_vb_bridgetest.vb: unexpected exception occured in XMain::run. " _
+ "cli_vb_bridgetest.vb: unexpected exception occurred in XMain::run. " _
& "Original exception: " + e.GetType().Name + "\n Message: " _
& e.Message , Nothing)
diff --git a/toolkit/doc/layout/notes.txt b/toolkit/doc/layout/notes.txt
index ebe5c55572a1..3e93264c1fc1 100644
--- a/toolkit/doc/layout/notes.txt
+++ b/toolkit/doc/layout/notes.txt
@@ -28,7 +28,7 @@ On-screen:
| [ Ok ]|
+-------------------+
-AWT Window hierarcy:
+AWT Window hierarchy:
Window
+ Label
+ Entry
@@ -37,7 +37,7 @@ AWT Window hierarcy:
ie. unchanged, and backwards compatible - a flat
representation.
-Toolkit Hierachy
+Toolkit Hierarchy
WindowContainer [Bin?]
+ Vbox
diff --git a/toolkit/doc/layout/oldnotes.txt b/toolkit/doc/layout/oldnotes.txt
index 0fd60fb93fd9..178e1d48ab8a 100644
--- a/toolkit/doc/layout/oldnotes.txt
+++ b/toolkit/doc/layout/oldnotes.txt
@@ -118,7 +118,7 @@ Dialog is an UnoControlContainer ...
+ but ... only the UnoControl-Dialog-Model has this ...
- + Wow - even the percieved hierarchy:
+ + Wow - even the perceived hierarchy:
+ 'exportDialogModel'
+ achieved by 'getElementNames'
-> flat set of names ... [urgh]
diff --git a/toolkit/inc/toolkit/controls/geometrycontrolmodel.hxx b/toolkit/inc/toolkit/controls/geometrycontrolmodel.hxx
index 9f5d696baf3e..7e36e4610236 100644
--- a/toolkit/inc/toolkit/controls/geometrycontrolmodel.hxx
+++ b/toolkit/inc/toolkit/controls/geometrycontrolmodel.hxx
@@ -92,7 +92,7 @@ FORWARD_DECLARE_INTERFACE( script, XNameContainer )
/**
@param _rxAggregateInstance
- is the object to be aggregated. Must be aquired excatly once (by the reference object given).<br/>
+ is the object to be aggregated. Must be acquired excatly once (by the reference object given).<br/>
Will be reset to NULL upon leaving
*/
OGeometryControlModel_Base(::com::sun::star::uno::Reference< ::com::sun::star::util::XCloneable >& _rxAggregateInstance);
diff --git a/toolkit/qa/complex/toolkit/accessibility/_XAccessibleComponent.java b/toolkit/qa/complex/toolkit/accessibility/_XAccessibleComponent.java
index a43a3d8090f1..cc0ec2f33dcb 100755
--- a/toolkit/qa/complex/toolkit/accessibility/_XAccessibleComponent.java
+++ b/toolkit/qa/complex/toolkit/accessibility/_XAccessibleComponent.java
@@ -390,7 +390,7 @@ public class _XAccessibleComponent {
/**
* Just calls the method. <p>
*
- * Has <b> OK </b> status if no runtime exceptions occured.
+ * Has <b> OK </b> status if no runtime exceptions occurred.
* @return
*/
public boolean _grabFocus() {
@@ -406,7 +406,7 @@ public class _XAccessibleComponent {
* component which support <code>XAccessibleComponent</code>.
*
* @return The array of children. Empty array returned if
- * such children were not found or some error occured.
+ * such children were not found or some error occurred.
*/
private XAccessibleComponent[] getChildrenComponents() {
XAccessible xAcc = UnoRuntime.queryInterface(XAccessible.class, oObj) ;
@@ -444,7 +444,7 @@ public class _XAccessibleComponent {
* <code>XAccessibleComponent</code>.
*
* @return The parent or <code>null</code> if the component
- * has no parent or some errors occured.
+ * has no parent or some errors occurred.
*/
private XAccessibleComponent getParentComponent() {
XAccessible xAcc = UnoRuntime.queryInterface(XAccessible.class, oObj) ;
diff --git a/toolkit/source/awt/vclxgraphics.cxx b/toolkit/source/awt/vclxgraphics.cxx
index df3a55ab56b8..76e100ed3f6d 100644
--- a/toolkit/source/awt/vclxgraphics.cxx
+++ b/toolkit/source/awt/vclxgraphics.cxx
@@ -87,7 +87,7 @@ void VCLXGraphics::SetOutputDevice( OutputDevice* pOutDev )
void VCLXGraphics::Init( OutputDevice* pOutDev )
{
- DBG_ASSERT( !mpOutputDevice, "VCLXGraphics::Init allready has pOutDev !" );
+ DBG_ASSERT( !mpOutputDevice, "VCLXGraphics::Init already has pOutDev !" );
mpOutputDevice = pOutDev;
initAttrs();
diff --git a/toolkit/source/awt/vclxtabcontrol.cxx b/toolkit/source/awt/vclxtabcontrol.cxx
index b609abaa75bd..68dcb613f60f 100644
--- a/toolkit/source/awt/vclxtabcontrol.cxx
+++ b/toolkit/source/awt/vclxtabcontrol.cxx
@@ -430,7 +430,7 @@ awt::Size SAL_CALL VCLXTabControl::getMinimumSize()
if ( !pTabControl )
return requestedSize;
- // calculate size to accomodate all children
+ // calculate size to accommodate all children
unsigned i = 0;
for ( std::list<Box_Base::ChildData *>::const_iterator it
= maChildren.begin(); it != maChildren.end(); it++, i++ )
diff --git a/toolkit/source/awt/vclxtoolkit.cxx b/toolkit/source/awt/vclxtoolkit.cxx
index 0a2b0db836ed..fb680124ae9f 100644
--- a/toolkit/source/awt/vclxtoolkit.cxx
+++ b/toolkit/source/awt/vclxtoolkit.cxx
@@ -981,7 +981,7 @@ Window* VCLXToolkit::ImplCreateWindow( VCLXWindow** ppNewComp,
::com::sun::star::uno::Any anyHandle = xSystemDepParent->getWindowHandle(processIdSeq, SYSTEM_DEPENDENT_TYPE);
- // use sal_Int64 here to accomodate all int types
+ // use sal_Int64 here to accommodate all int types
// uno::Any shift operator whill upcast if necessary
sal_Int64 nWindowHandle = 0;
sal_Bool bXEmbed = sal_False;
@@ -1193,7 +1193,7 @@ css::uno::Reference< css::awt::XWindowPeer > VCLXToolkit::ImplCreateWindow(
Window* pChildWindow = NULL;
if ( nSystemType == SYSTEM_DEPENDENT_TYPE )
{
- // use sal_Int64 here to accomodate all int types
+ // use sal_Int64 here to accommodate all int types
// uno::Any shift operator whill upcast if necessary
sal_Int64 nWindowHandle = 0;
sal_Bool bXEmbed = sal_False;
diff --git a/toolkit/source/awt/vclxwindow.cxx b/toolkit/source/awt/vclxwindow.cxx
index 3a2d9d8876a9..f12721bdf7cd 100644
--- a/toolkit/source/awt/vclxwindow.cxx
+++ b/toolkit/source/awt/vclxwindow.cxx
@@ -1368,7 +1368,7 @@ void VCLXWindow::ImplGetPropertyIds( std::list< sal_uInt16 > &rIds, bool bWithDe
for( iter = rIds.begin(); iter != rIds.end(); iter++) {
if( *iter == BASEPROPERTY_FONTDESCRIPTOR )
{
- // some properties are not included in the FontDescriptor, but everytime
+ // some properties are not included in the FontDescriptor, but every time
// when we have a FontDescriptor we want to have these properties too.
// => Easier to register the here, istead everywhere where I register the FontDescriptor...
diff --git a/toolkit/source/awt/vclxwindow1.cxx b/toolkit/source/awt/vclxwindow1.cxx
index ef29b3e7ba54..5d047ed638c0 100644
--- a/toolkit/source/awt/vclxwindow1.cxx
+++ b/toolkit/source/awt/vclxwindow1.cxx
@@ -58,7 +58,7 @@ void VCLXWindow::SetSystemParent_Impl( const com::sun::star::uno::Any& rHandle )
throw pException;
}
- // use sal_Int64 here to accomodate all int types
+ // use sal_Int64 here to accommodate all int types
// uno::Any shift operator whill upcast if necessary
sal_Int64 nHandle = 0;
sal_Bool bXEmbed = sal_False;
diff --git a/toolkit/source/awt/vclxwindows.cxx b/toolkit/source/awt/vclxwindows.cxx
index 26a132b58adc..05311f3da8f9 100644
--- a/toolkit/source/awt/vclxwindows.cxx
+++ b/toolkit/source/awt/vclxwindows.cxx
@@ -4074,6 +4074,12 @@ void VCLXComboBox::setProperty( const ::rtl::OUString& PropertyName, const ::com
sal_Int16 n = sal_Int16();
if ( Value >>= n )
pComboBox->EnableAutocomplete( n != 0 );
+ else
+ {
+ sal_Bool b = sal_Bool();
+ if ( Value >>= b )
+ pComboBox->EnableAutocomplete( b );
+ }
}
break;
case BASEPROPERTY_STRINGITEMLIST:
diff --git a/toolkit/source/controls/dialogcontrol.cxx b/toolkit/source/controls/dialogcontrol.cxx
index 5f81ac520a74..08ca54ccdbd1 100644
--- a/toolkit/source/controls/dialogcontrol.cxx
+++ b/toolkit/source/controls/dialogcontrol.cxx
@@ -336,7 +336,7 @@ throw (::com::sun::star::uno::RuntimeException)
OSL_ENSURE( xDialogDevice.is(), "UnoDialogControl::windowResized: no peer, but a windowResized event?" );
// #i87592 In design mode the drawing layer works with sizes with decoration.
- // Therefore we have to substract them before writing back to the properties (model).
+ // Therefore we have to subtract them before writing back to the properties (model).
if ( xDialogDevice.is() && mbDesignMode )
{
DeviceInfo aDeviceInfo( xDialogDevice->getInfo() );
diff --git a/toolkit/source/controls/unocontrol.cxx b/toolkit/source/controls/unocontrol.cxx
index 32aaddec7388..868c302dbb96 100644
--- a/toolkit/source/controls/unocontrol.cxx
+++ b/toolkit/source/controls/unocontrol.cxx
@@ -686,7 +686,7 @@ void UnoControl::ImplModelPropertiesChanged( const Sequence< PropertyChangeEvent
VCLXWindow* pPeer = pVclPeer ? pVclPeer->GetWindowPeer() : NULL;
VclListenerLock aNoVclEventMultiplexing( pPeer );
- // setting peer properties may result in an attemp to acquire the solar mutex, 'cause the peers
+ // setting peer properties may result in an attempt to acquire the solar mutex, 'cause the peers
// usually don't have an own mutex but use the SolarMutex instead.
// To prevent deadlocks resulting from this, we do this without our own mutex locked
// 2000-11-03 - fs@openoffice.org
@@ -1323,7 +1323,7 @@ void UnoControl::createPeer( const Reference< XToolkit >& rxToolkit, const Refer
// this is necessary as our peer may lock the SolarMutex (actually, all currently known peers do), so calling
// into the peer with our own mutex locked may cause deadlocks
// (We _really_ need peers which do not use the SolarMutex. It's really pissing me off that from time to
- // time deadlocks pop up because the low-level components like our peers use a mutex which ususally
+ // time deadlocks pop up because the low-level components like our peers use a mutex which usually
// is locked at the top of the stack (it protects the global message looping). This is always dangerous, and
// can not always be solved by tampering with other mutexes.
// Unfortunately, the VCL used in the peers is not threadsafe, and by definition needs a locked SolarMutex.)
diff --git a/toolkit/source/controls/unocontrolmodel.cxx b/toolkit/source/controls/unocontrolmodel.cxx
index 13dcd5eb5140..99ee8c193f07 100644
--- a/toolkit/source/controls/unocontrolmodel.cxx
+++ b/toolkit/source/controls/unocontrolmodel.cxx
@@ -467,7 +467,7 @@ void UnoControlModel::ImplRegisterProperty( sal_uInt16 nPropId )
if ( nPropId == BASEPROPERTY_FONTDESCRIPTOR )
{
- // some properties are not included in the FontDescriptor, but everytime
+ // some properties are not included in the FontDescriptor, but every time
// when we have a FontDescriptor we want to have these properties too.
// => Easier to register the here, istead everywhere where I register the FontDescriptor...
diff --git a/toolkit/src2xml/source/srcparser.py b/toolkit/src2xml/source/srcparser.py
index 4ce04f537c88..c7f9b0ca5113 100644
--- a/toolkit/src2xml/source/srcparser.py
+++ b/toolkit/src2xml/source/srcparser.py
@@ -326,7 +326,7 @@ handler.
if len(self.tokenBuf) == 0:
pass
elif scope == 0:
- # We are not supposed to have any statment in global scope.
+ # We are not supposed to have any statement in global scope.
# Just ignore this statement.
pass
else:
diff --git a/toolkit/test/accessibility/AccTreeNode.java b/toolkit/test/accessibility/AccTreeNode.java
index 55290167d8d5..8704f6e1c07c 100644
--- a/toolkit/test/accessibility/AccTreeNode.java
+++ b/toolkit/test/accessibility/AccTreeNode.java
@@ -338,7 +338,7 @@ class AccTreeNode
/** Update the specified handlers.
@return
- The returned array containes the indices of the updated children
+ The returned array contains the indices of the updated children
and can be used to create a TreeModelEvent.
*/
public Vector updateChildren (java.lang.Class class1)
diff --git a/toolkit/test/accessibility/AccessibilityTreeModel.java b/toolkit/test/accessibility/AccessibilityTreeModel.java
index f0b58048d2d8..624a6d78c93e 100644
--- a/toolkit/test/accessibility/AccessibilityTreeModel.java
+++ b/toolkit/test/accessibility/AccessibilityTreeModel.java
@@ -426,7 +426,7 @@ public class AccessibilityTreeModel
/**
- * broadcast a tree event in a seperate Thread
+ * broadcast a tree event in a separate Thread
* must override fire method
*/
class EventRunner implements Runnable
diff --git a/toolkit/test/accessibility/Canvas.java b/toolkit/test/accessibility/Canvas.java
index 1241058bd692..e4b69a1c0cf5 100644
--- a/toolkit/test/accessibility/Canvas.java
+++ b/toolkit/test/accessibility/Canvas.java
@@ -228,7 +228,7 @@ class Canvas
mnVOffset,
mnScale*aScreenSize.getWidth(),
mnScale*aScreenSize.getHeight());
- // Fill the screen rectangle and draw a frame arround it to increase its visibility.
+ // Fill the screen rectangle and draw a frame around it to increase its visibility.
g2.setColor (new Color (250,240,230));
g2.fill (aScreen);
g2.setColor (Color.BLACK);
diff --git a/toolkit/test/accessibility/EventQueue.java b/toolkit/test/accessibility/EventQueue.java
index bf2ccf12cc55..aca96b86c72c 100644
--- a/toolkit/test/accessibility/EventQueue.java
+++ b/toolkit/test/accessibility/EventQueue.java
@@ -28,7 +28,7 @@ import java.util.LinkedList;
applications in a thread separate from the AWB main thread.
The queue of event objects, LinkedList<Runnable> The queue object will
- also serve as lock for the consumer/producer type syncronization.
+ also serve as lock for the consumer/producer type synchronization.
*/
class EventQueue
implements Runnable
diff --git a/toolkit/test/accessibility/OfficeConnection.java b/toolkit/test/accessibility/OfficeConnection.java
index 1d304f4997f4..cfeafcb6dc7e 100644
--- a/toolkit/test/accessibility/OfficeConnection.java
+++ b/toolkit/test/accessibility/OfficeConnection.java
@@ -117,7 +117,7 @@ public class OfficeConnection
private XMultiServiceFactory maServiceManager = null;
/** A value of true just indicates that it has been tried to establish a connection,
- not that that has been successfull.
+ not that that has been successful.
*/
private boolean mbInitialized = false;
}
diff --git a/toolkit/test/accessibility/QueuedTopWindowListener.java b/toolkit/test/accessibility/QueuedTopWindowListener.java
index 4d3681ed62c5..8c59b4df8f91 100644
--- a/toolkit/test/accessibility/QueuedTopWindowListener.java
+++ b/toolkit/test/accessibility/QueuedTopWindowListener.java
@@ -83,7 +83,7 @@ class QueuedTopWindowListener
public void windowActivated (final com.sun.star.lang.EventObject aEvent)
throws RuntimeException
{
- System.out.println ("QueuedTopWindowListener: Top window actived: " + aEvent);
+ System.out.println ("QueuedTopWindowListener: Top window activated: " + aEvent);
}
public void windowDeactivated (final com.sun.star.lang.EventObject aEvent)
diff --git a/toolkit/workben/layout/editor.cxx b/toolkit/workben/layout/editor.cxx
index 66e92bd77bd8..b985d40bd4e5 100644
--- a/toolkit/workben/layout/editor.cxx
+++ b/toolkit/workben/layout/editor.cxx
@@ -698,7 +698,7 @@ bool moveWidget( Widget *pWidget, bool up /*or down*/ )
unsigned int childPos = pContainer->getChildPos( pSibling );
if ( pContainer->addChild( pWidget, childPos + (up ? 0 : 1) ) )
- return true; // should always be succesful
+ return true; // should always be successful
}
// go through parents -- try to get prepended to them
else
diff --git a/tools/inc/tools/simplerm.hxx b/tools/inc/tools/simplerm.hxx
index 82304664c509..0af90db666c0 100644
--- a/tools/inc/tools/simplerm.hxx
+++ b/tools/inc/tools/simplerm.hxx
@@ -95,7 +95,7 @@ public:
*/
UniString ReadString( sal_uInt32 nId );
- /** checks whether a certain resource is availble
+ /** checks whether a certain resource is available
@param _resourceType
the type of the resource to check. Currently, only RSC_STRING (strings) and RSC_RESOURCE (blobs)
are supported, for every other type, <FALSE/> will be returned.
diff --git a/tools/inc/tools/solar.h b/tools/inc/tools/solar.h
index 6e99f43c8530..1e06e22a7f3c 100644
--- a/tools/inc/tools/solar.h
+++ b/tools/inc/tools/solar.h
@@ -41,7 +41,7 @@
Should be removed as soon as all code parts have been reviewed
and the correct type is known. Most of the times ULONG is meant
to be a 32-Bit unsigned integer type as sal_uInt32 is often
- used for data exchange or for similiar method args.
+ used for data exchange or for similar method args.
*************************************************************/
typedef sal_uIntPtr sal_uLong; /* Replaces type ULONG */
diff --git a/tools/inc/tools/wintypes.hxx b/tools/inc/tools/wintypes.hxx
index 96bba853e91a..589ba6cb1a21 100644
--- a/tools/inc/tools/wintypes.hxx
+++ b/tools/inc/tools/wintypes.hxx
@@ -144,7 +144,7 @@ typedef sal_Int64 WinBits;
// warning: do not confuse WB_SYSTEMCHILDWINDOW with the SystemChildWindow class
// the SystemChildWindow class was there first and is a very specialized
-// sytem child window type for plugged applications. The SystemChildWindow class
+// system child window type for plugged applications. The SystemChildWindow class
// explicitly should never use the WB_SYSTEMCHILDWINDOW WinBit
// WB_SYSTEMCHILDWINDOW on the other hand is to be used on system windows
diff --git a/tools/source/communi/geninfo.cxx b/tools/source/communi/geninfo.cxx
index a1649008fe19..fd0c9ddee409 100644
--- a/tools/source/communi/geninfo.cxx
+++ b/tools/source/communi/geninfo.cxx
@@ -286,7 +286,7 @@ sal_uIntPtr GenericInformationList::InsertSorted( GenericInformation *pInfo,
if ( Count() == 1 ) {
ByteString sCandidate( *GetObject( 0 ));
if ( sCandidate.ToUpperAscii() == sKey ) {
- // key allready exists in list
+ // key already exists in list
if ( bOverwrite )
Replace( pInfo, sal_uIntPtr(0)); // ### Laut NF scheint hier ein Memory Leak zu sein
return 0;
@@ -306,7 +306,7 @@ sal_uIntPtr GenericInformationList::InsertSorted( GenericInformation *pInfo,
ByteString sCandidate = ByteString( *GetObject( nActPos ));
if ( sCandidate.ToUpperAscii() == sKey ) {
- // key allready exists in list
+ // key already exists in list
if ( bOverwrite )
Replace( pInfo, nActPos ); // ### Laut NF scheint hier ein Memory Leak zu sein
return nActPos;
diff --git a/tools/source/fsys/dirent.cxx b/tools/source/fsys/dirent.cxx
index 2957d1d67d93..1d21a8583436 100644
--- a/tools/source/fsys/dirent.cxx
+++ b/tools/source/fsys/dirent.cxx
@@ -117,7 +117,7 @@ int Sys2SolarError_Impl( int nSysErr )
#endif
}
- DBG_TRACE1( "FSys: unknown system error %d occured", nSysErr );
+ DBG_TRACE1( "FSys: unknown system error %d occurred", nSysErr );
return FSYS_ERR_UNKNOWN;
}
diff --git a/tools/source/fsys/filecopy.cxx b/tools/source/fsys/filecopy.cxx
index 12428a223524..bc0737a449d2 100644
--- a/tools/source/fsys/filecopy.cxx
+++ b/tools/source/fsys/filecopy.cxx
@@ -462,7 +462,7 @@ FSysError FileCopier::ExecuteExact( FSysAction nActions, FSysExact eExact )
DirEntry aAbsTarget = DirEntry( aTarget );
pImp->nActions = nActions;
- // check if both pathes are accessible and source and target are different
+ // check if both paths are accessible and source and target are different
if ( !aAbsTarget.ToAbs() || !aAbsSource.ToAbs() || aAbsTarget == aAbsSource )
return FSYS_ERR_ACCESSDENIED;
diff --git a/tools/source/fsys/os2.cxx b/tools/source/fsys/os2.cxx
index 96bac5088c71..f5b759c6f35b 100644
--- a/tools/source/fsys/os2.cxx
+++ b/tools/source/fsys/os2.cxx
@@ -109,7 +109,7 @@ int ApiRet2ToSolarError_Impl( int nApiRet )
case ERROR_FILENAME_EXCED_RANGE: return ERRCODE_IO_NAMETOOLONG;
}
- DBG_TRACE1( "FSys: unknown apiret error %d occured", nApiRet );
+ DBG_TRACE1( "FSys: unknown apiret error %d occurred", nApiRet );
return FSYS_ERR_UNKNOWN;
}
@@ -709,7 +709,7 @@ const char* TempDirImpl( char *pBuf )
#if 0
void CreateCaseMapImpl()
{
- // build a string starting with code 0 as first character upto 255
+ // build a string starting with code 0 as first character up to 255
char sTemp[256];
USHORT n;
@@ -722,7 +722,7 @@ void CreateCaseMapImpl()
aCountry.codepage = NLS_CODEPAGE; /* Code page */
DosMapCase( 255, &aCountry, sTemp+1 );
- // fill a global buffer starting with code 0 as first character upto 255
+ // fill a global buffer starting with code 0 as first character up to 255
for ( n = 0; n < 256; ++n )
sCaseMap[n] = (char) n;
@@ -730,7 +730,7 @@ void CreateCaseMapImpl()
for ( n = 255; n > 0; --n )
// was this character converted?
if ( sTemp[n] != (char) n )
- // we found a convertion from upper to lower
+ // we found a conversion from upper to lower
sCaseMap[ (unsigned char) sTemp[n] ] = (char) n;
bCaseMap = TRUE;
diff --git a/tools/source/fsys/urlobj.cxx b/tools/source/fsys/urlobj.cxx
index 18061f86dce2..f8859a3c18a8 100644
--- a/tools/source/fsys/urlobj.cxx
+++ b/tools/source/fsys/urlobj.cxx
@@ -4033,7 +4033,7 @@ bool INetURLObject::operator ==(INetURLObject const & rObject) const
{
// If the URL paths of two file URLs only differ in that one has a
// final '/' and the other has not, take the two paths as
- // equivalent (this could be usefull for other schemes, too):
+ // equivalent (this could be useful for other schemes, too):
sal_Int32 nLength = aPath1.getLength();
switch (nLength - aPath2.getLength())
{
diff --git a/tools/source/generic/poly.cxx b/tools/source/generic/poly.cxx
index 7f2772e47a95..4bf00644dba2 100644
--- a/tools/source/generic/poly.cxx
+++ b/tools/source/generic/poly.cxx
@@ -1076,6 +1076,19 @@ void Polygon::AdaptiveSubdivide( Polygon& rResult, const double d ) const
}
*aPointIter++ = mpImplPolygon->mpPointAry[ i++ ];
+
+ if (aPoints.size() >= SAL_MAX_UINT16)
+ {
+ OSL_ENSURE(aPoints.size() < SAL_MAX_UINT16,
+ "Polygon::AdapativeSubdivision created polygon too many points;"
+ " using original polygon instead");
+
+ // The resulting polygon can not hold all the points
+ // that we have created so far. Stop the subdivision
+ // and return a copy of the unmodified polygon.
+ rResult = *this;
+ return;
+ }
}
// fill result polygon
diff --git a/tools/source/generic/poly2.cxx b/tools/source/generic/poly2.cxx
index e9c68ddb8c64..6fd52dbb8351 100644
--- a/tools/source/generic/poly2.cxx
+++ b/tools/source/generic/poly2.cxx
@@ -416,7 +416,7 @@ void PolyPolygon::ImplDoOperation( const PolyPolygon& rPolyPoly, PolyPolygon& rR
case POLY_CLIP_DIFF:
{
- // substract B from A (DIFF)
+ // subtract B from A (DIFF)
aMergePolyPolygonA = basegfx::tools::solvePolygonOperationDiff(aMergePolyPolygonA, aMergePolyPolygonB);
break;
}
diff --git a/tools/source/inet/inetmime.cxx b/tools/source/inet/inetmime.cxx
index 469378813209..9444ec6ec18a 100644
--- a/tools/source/inet/inetmime.cxx
+++ b/tools/source/inet/inetmime.cxx
@@ -3082,7 +3082,7 @@ UniString INetMIME::decodeHeaderFieldBody(HeaderFieldType eType,
// And there appear to exist some broken mailers that only encode single
// letters within words, like "Appel
// =?iso-8859-1?Q?=E0?=t=?iso-8859-1?Q?=E9?=moin", so it seems best to
- // detect encoded words even when not propperly surrounded by white space.
+ // detect encoded words even when not properly surrounded by white space.
//
// Non US-ASCII characters in rBody are treated as ISO-8859-1.
//
diff --git a/tools/source/rc/resmgr.cxx b/tools/source/rc/resmgr.cxx
index 20201cf9a0c3..bbfc031a7a61 100644
--- a/tools/source/rc/resmgr.cxx
+++ b/tools/source/rc/resmgr.cxx
@@ -307,7 +307,7 @@ InternalResMgr* ResMgrContainer::getResMgr( const OUString& rPrefix,
it = m_aResFiles.find( aSearch.makeStringAndClear() );
if( it != m_aResFiles.end() )
{
- // ensure InternalResMgr existance
+ // ensure InternalResMgr existence
if( ! it->second.pResMgr )
{
InternalResMgr* pImp =
@@ -342,7 +342,7 @@ InternalResMgr* ResMgrContainer::getResMgr( const OUString& rPrefix,
{
if( it->first.matchIgnoreAsciiCase( rPrefix ) )
{
- // ensure InternalResMgr existance
+ // ensure InternalResMgr existence
if( ! it->second.pResMgr )
{
InternalResMgr* pImp =
@@ -2016,7 +2016,7 @@ UniString SimpleResMgr::ReadString( sal_uInt32 nId )
// sal_uIntPtr nLen = pResHeader->GetLocalOff() - sizeof(RSHEADER_TYPE);
ResMgr::GetString( sReturn, (const sal_uInt8*)(pResHeader+1) );
- // not neccessary with te current implementation which holds the string table permanently, but to be sure ....
+ // not necessary with te current implementation which holds the string table permanently, but to be sure ....
// note: pFallback cannot be NULL here and is either the fallback or m_pResImpl
pFallback->FreeGlobalRes( pResHeader, pResHandle );
if( m_pResImpl != pFallback )
diff --git a/tools/test/tests.cxx b/tools/test/tests.cxx
index dae54bb673ed..0e715f573cb5 100644
--- a/tools/test/tests.cxx
+++ b/tools/test/tests.cxx
@@ -20,7 +20,6 @@
*************************************************************/
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_tools.hxx"
// autogenerated file with codegen.pl
diff --git a/ucb/qa/complex/tdoc/_XChild.java b/ucb/qa/complex/tdoc/_XChild.java
index 427fbff8a01a..5185b19aa909 100644
--- a/ucb/qa/complex/tdoc/_XChild.java
+++ b/ucb/qa/complex/tdoc/_XChild.java
@@ -86,7 +86,7 @@ public class _XChild {
oObj.setParent(gotten);
}
catch (com.sun.star.lang.NoSupportException ex) {
- log.println("Exception occured during setParent() - " + (supported?"FAILED":"OK"));
+ log.println("Exception occurred during setParent() - " + (supported?"FAILED":"OK"));
if (supported) {
ex.printStackTrace((java.io.PrintWriter)log);
return false;
diff --git a/ucb/qa/complex/tdoc/_XServiceInfo.java b/ucb/qa/complex/tdoc/_XServiceInfo.java
index eb6c787a606b..014c899ed895 100644
--- a/ucb/qa/complex/tdoc/_XServiceInfo.java
+++ b/ucb/qa/complex/tdoc/_XServiceInfo.java
@@ -46,7 +46,7 @@ public class _XServiceInfo {
/**
* Just calls the method.<p>
- * Has <b>OK</b> status if no runtime exceptions occured.
+ * Has <b>OK</b> status if no runtime exceptions occurred.
*/
public boolean _getImplementationName() {
boolean result = true;
@@ -62,7 +62,7 @@ public class _XServiceInfo {
/**
* Just calls the method.<p>
- * Has <b>OK</b> status if no runtime exceptions occured.
+ * Has <b>OK</b> status if no runtime exceptions occurred.
*/
public boolean _getSupportedServiceNames() {
boolean result = true;
diff --git a/ucb/qa/complex/tdoc/_XTypeProvider.java b/ucb/qa/complex/tdoc/_XTypeProvider.java
index c09909d19b02..b4dcc28c94c6 100644
--- a/ucb/qa/complex/tdoc/_XTypeProvider.java
+++ b/ucb/qa/complex/tdoc/_XTypeProvider.java
@@ -47,7 +47,7 @@ public class _XTypeProvider {
/**
* Just calls the method.<p>
- * Has <b>OK</b> status if no runtime exceptions occured.
+ * Has <b>OK</b> status if no runtime exceptions occurred.
*/
public boolean _getImplementationId() {
boolean result = true;
diff --git a/ucb/source/core/ucbcmds.cxx b/ucb/source/core/ucbcmds.cxx
index 1c5ca5934658..fed0515b5479 100644
--- a/ucb/source/core/ucbcmds.cxx
+++ b/ucb/source/core/ucbcmds.cxx
@@ -504,7 +504,7 @@ bool setTitle(
if ( aErrors[ 0 ].hasValue() )
{
- // error occured.
+ // error occurred.
OSL_ENSURE( sal_False, "error setting Title property!" );
return false;
}
diff --git a/ucb/source/ucp/file/filglob.cxx b/ucb/source/ucp/file/filglob.cxx
index eee4311bf50a..32e7a9b33f11 100644
--- a/ucb/source/ucp/file/filglob.cxx
+++ b/ucb/source/ucp/file/filglob.cxx
@@ -386,7 +386,7 @@ namespace fileaccess {
xEnv,
rtl::OUString(
RTL_CONSTASCII_USTRINGPARAM(
- "an error occured during file opening")),
+ "an error occurred during file opening")),
xComProc);
}
else if( errorCode == TASKHANDLING_OPEN_FOR_DIRECTORYLISTING ||
@@ -441,7 +441,7 @@ namespace fileaccess {
xEnv,
rtl::OUString(
RTL_CONSTASCII_USTRINGPARAM(
- "an error occured during opening a directory")),
+ "an error occurred during opening a directory")),
xComProc);
}
else if( errorCode == TASKHANDLING_NOTCONNECTED_FOR_WRITE ||
@@ -458,7 +458,7 @@ namespace fileaccess {
xEnv,
rtl::OUString(
RTL_CONSTASCII_USTRINGPARAM(
- "an error occured writing or reading from a file")),
+ "an error occurred writing or reading from a file")),
xComProc );
}
else if( errorCode == TASKHANDLING_FILEIOERROR_FOR_NO_SPACE )
@@ -524,7 +524,7 @@ namespace fileaccess {
xEnv,
rtl::OUString(
RTL_CONSTASCII_USTRINGPARAM(
- "an error occured during opening a file")),
+ "an error occurred during opening a file")),
xComProc);
}
else if( errorCode == TASKHANDLING_NONAMESET_INSERT_COMMAND ||
@@ -852,7 +852,7 @@ namespace fileaccess {
InteractiveBadTransferURLException(
rtl::OUString(
RTL_CONSTASCII_USTRINGPARAM(
- "bad tranfer url")),
+ "bad transfer url")),
xContext);
cancelCommandExecution( aAny,xEnv );
}
diff --git a/ucb/source/ucp/file/shell.cxx b/ucb/source/ucp/file/shell.cxx
index 904bb7af71b2..7b6b65c0caa9 100644
--- a/ucb/source/ucp/file/shell.cxx
+++ b/ucb/source/ucp/file/shell.cxx
@@ -2333,7 +2333,7 @@ shell::commit( const shell::ContentMap::iterator& it,
}
else
{
- // extremly ugly, but otherwise default construction
+ // extremely ugly, but otherwise default construction
// of aDirItem and aFileStatus2
// before the preciding if
isVolume = osl::FileStatus::Volume == aFileStatus.getFileType();
diff --git a/ucb/source/ucp/ftp/ftpurl.hxx b/ucb/source/ucp/ftp/ftpurl.hxx
index ad0746f0d02f..228cc584b384 100644
--- a/ucb/source/ucp/ftp/ftpurl.hxx
+++ b/ucb/source/ucp/ftp/ftpurl.hxx
@@ -126,7 +126,7 @@ namespace ftp {
throw(curl_exception);
// returns a pointer to an open tempfile,
- // seeked to the beginning of.
+ // sought to the beginning of.
oslFileHandle open() throw(curl_exception);
FTPDirentry direntry() const throw(curl_exception);
diff --git a/ucb/source/ucp/gio/gio_content.cxx b/ucb/source/ucp/gio/gio_content.cxx
index 108e7d7b7650..e955673ed1bc 100644
--- a/ucb/source/ucp/gio/gio_content.cxx
+++ b/ucb/source/ucp/gio/gio_content.cxx
@@ -138,7 +138,7 @@ void SAL_CALL Content::abort( sal_Int32 /*CommandId*/ )
throw( uno::RuntimeException )
{
//TODO
- //stick a map from each CommandId to a new GCancellable and propogate
+ //stick a map from each CommandId to a new GCancellable and propagate
//it throughout the g_file_* calls
}
diff --git a/ucb/source/ucp/odma/odma_content.cxx b/ucb/source/ucp/odma/odma_content.cxx
index 6545c5f5a5c0..cdde9193f0df 100644
--- a/ucb/source/ucp/odma/odma_content.cxx
+++ b/ucb/source/ucp/odma/odma_content.cxx
@@ -393,7 +393,7 @@ uno::Any SAL_CALL Content::execute(
}
catch(uno::Exception&)
{
- OSL_ENSURE(0,"Exception occured while creating the file content!");
+ OSL_ENSURE(0,"Exception occurred while creating the file content!");
}
xDataSink->setInputStream( xIn );
}
diff --git a/ucb/source/ucp/tdoc/tdoc_content.cxx b/ucb/source/ucp/tdoc/tdoc_content.cxx
index a3ea9dc98d58..3ba18a77e72c 100644
--- a/ucb/source/ucp/tdoc/tdoc_content.cxx
+++ b/ucb/source/ucp/tdoc/tdoc_content.cxx
@@ -2278,7 +2278,7 @@ void Content::transfer(
// Unreachable
}
- // Announce transfered content in its new folder.
+ // Announce transferred content in its new folder.
xTarget->inserted();
/////////////////////////////////////////////////////////////////////////
diff --git a/ucb/source/ucp/tdoc/ucptdoc.xml b/ucb/source/ucp/tdoc/ucptdoc.xml
index 33d06da7437a..96f43e886a1f 100644
--- a/ucb/source/ucp/tdoc/ucptdoc.xml
+++ b/ucb/source/ucp/tdoc/ucptdoc.xml
@@ -37,7 +37,7 @@
</name>
<description>
This component implements a Content Provider for the Universal Content Broker.
- It provides access to the hierachical structure of the documents that are active
+ It provides access to the hierarchical structure of the documents that are active
in a running OpenOffice.org process.
</description>
<loader-name>
diff --git a/ucb/source/ucp/webdav/makefile.mk b/ucb/source/ucp/webdav/makefile.mk
index 964583308609..f1380e1fc2ab 100644
--- a/ucb/source/ucp/webdav/makefile.mk
+++ b/ucb/source/ucp/webdav/makefile.mk
@@ -52,7 +52,7 @@ SERFINCDIR=serf
# Extend the list of include paths depending on whether we use locally built
# or system versions of libraries apr, apr-util, serf, libxml
#
-# We have to use CFLAGS for this because PRJINC is too inflexible (it adds /inc to everyting.)
+# We have to use CFLAGS for this because PRJINC is too inflexible (it adds /inc to everything.)
#
.IF "$(SYSTEM_APR)" == "YES"
diff --git a/ucb/source/ucp/webdav/webdavcontent.cxx b/ucb/source/ucp/webdav/webdavcontent.cxx
index df558f0e3462..caed1051e6dd 100644
--- a/ucb/source/ucp/webdav/webdavcontent.cxx
+++ b/ucb/source/ucp/webdav/webdavcontent.cxx
@@ -2892,7 +2892,7 @@ void Content::transfer(
= static_cast< Content * >(
xProvider->queryContent( xTargetId ).get() );
- // Announce transfered content in its new folder.
+ // Announce transferred content in its new folder.
xTarget->inserted();
}
catch ( ucb::IllegalIdentifierException const & )
@@ -3352,6 +3352,23 @@ uno::Any Content::MapDAVException( const DAVException & e, sal_Bool bWrite )
return aException;
}
+// #i124421# force the availability of type_info symbols for exceptions
+// that used to be passed around in uno::Any variables and thrown later
+void ucb_dummyThrower( int i) {
+ switch( i) {
+ case 10: throw ucb::InteractiveNetworkGeneralException();
+ case 11: throw ucb::InteractiveAugmentedIOException();
+ case 12: throw ucb::InteractiveNetworkGeneralException();
+ case 13: throw ucb::InteractiveNetworkWriteException();
+ case 14: throw ucb::InteractiveNetworkReadException();
+ case 15: throw ucb::InteractiveNetworkConnectException();
+ case 16: throw ucb::InteractiveLockingLockedException();
+ case 17: throw ucb::InteractiveLockingNotLockedException();
+ case 18: throw ucb::InteractiveNetworkGeneralException();
+ case 19: throw ucb::InteractiveLockingLockExpiredException();
+ }
+}
+
//=========================================================================
// static
bool Content::shouldAccessNetworkAfterException( const DAVException & e )
diff --git a/ucbhelper/inc/ucbhelper/content.hxx b/ucbhelper/inc/ucbhelper/content.hxx
index 00f78ba3df88..024d9932a59a 100644
--- a/ucbhelper/inc/ucbhelper/content.hxx
+++ b/ucbhelper/inc/ucbhelper/content.hxx
@@ -246,7 +246,7 @@ public:
/**
* This method provides access to the "native" UCB content interface(s).
- * This is usefull in case the convenience methods provided by this
+ * This is useful in case the convenience methods provided by this
* class are insufficient for your needs. You may obtain all interfaces
* supported by the underlying UCB content by calling this method and
* after that doing a queryInterface call.
@@ -842,11 +842,11 @@ public:
* objects (See queryCreatableContentsInfo()).
* @param rPropertyNames is a sequence of names of properties for that
* values are to set at the new content before it will be inserted
- * ( commited ).
+ * ( committed ).
* The order of the names must correspond to the order of the
* property values.
* @param rPropertyValues is a sequence of property values that are to
- * set at the new content before it will be inserted ( commited ).
+ * set at the new content before it will be inserted ( committed ).
* The order of the values must correspond to the order of the
* property names.
* @param rNewContent will be filled by the implementation of this method
@@ -875,11 +875,11 @@ public:
* objects (See queryCreatableContentsInfo()).
* @param nPropertyHandes is a sequence of handles of properties for that
* values are to set at the new content before it will be inserted
- * ( commited ).
+ * ( committed ).
* The order of the handles must correspond to the order of the
* property values.
* @param rPropertyValues is a sequence of property values that are to
- * set at the new content before it will be inserted ( commited ).
+ * set at the new content before it will be inserted ( committed ).
* The order of the values must correspond to the order of the
* property handles.
* @param rNewContent will be filled by the implementation of this method
@@ -909,11 +909,11 @@ public:
* objects (See queryCreatableContentsInfo()).
* @param rPropertyNames is a sequence of names of properties for that
* values are to set at the new content before it will be inserted
- * ( commited ).
+ * ( committed ).
* The order of the names must correspond to the order of the
* property values.
* @param rPropertyValues is a sequence of property values that are to
- * set at the new content before it will be inserted ( commited ).
+ * set at the new content before it will be inserted ( committed ).
* The order of the values must correspond to the order of the
* property names.
* @param rStream is a stream containing the content data for the new
@@ -947,11 +947,11 @@ public:
* objects (See queryCreatableContentsInfo()).
* @param nPropertyHandes is a sequence of handles of properties for that
* values are to set at the new content before it will be inserted
- * ( commited ).
+ * ( committed ).
* The order of the handles must correspond to the order of the
* property values.
* @param rPropertyValues is a sequence of property values that are to
- * set at the new content before it will be inserted ( commited ).
+ * set at the new content before it will be inserted ( committed ).
* The order of the values must correspond to the order of the
* property handles.
* @param rStream is a stream containing the content data for the new
diff --git a/ucbhelper/inc/ucbhelper/interactionrequest.hxx b/ucbhelper/inc/ucbhelper/interactionrequest.hxx
index 7bfb5d37f4d2..12268edb659b 100644
--- a/ucbhelper/inc/ucbhelper/interactionrequest.hxx
+++ b/ucbhelper/inc/ucbhelper/interactionrequest.hxx
@@ -50,7 +50,7 @@ struct InteractionRequest_Impl;
* request contains an exception describing the error and a number of
* interaction continuations describing the possible "answers" for the request.
* After the request was passed to XInteractionHandler::handle(...) the method
- * getSelection() returns the continuation choosen by the interaction handler.
+ * getSelection() returns the continuation chosen by the interaction handler.
*
* The typical usage of this class would be:
*
@@ -125,9 +125,9 @@ public:
/**
* After passing this request to XInteractionHandler::handle, this method
- * returns the continuation that was choosen by the interaction handler.
+ * returns the continuation that was chosen by the interaction handler.
*
- * @return the continuation choosen by an interaction handler or an empty
+ * @return the continuation chosen by an interaction handler or an empty
* reference, if the request was not (yet) handled.
*/
rtl::Reference< InteractionContinuation > getSelection() const;
@@ -181,7 +181,7 @@ public:
/**
* This class implements a standard interaction continuation, namely the
* interface XInteractionAbort. Instances of this class can be passed
- * along with an interaction request to indicate the possiblity to abort
+ * along with an interaction request to indicate the possibility to abort
* the operation that caused the request.
*/
class UCBHELPER_DLLPUBLIC InteractionAbort : public InteractionContinuation,
@@ -218,7 +218,7 @@ public:
/**
* This class implements a standard interaction continuation, namely the
* interface XInteractionRetry. Instances of this class can be passed
- * along with an interaction request to indicate the possiblity to retry
+ * along with an interaction request to indicate the possibility to retry
* the operation that caused the request.
*/
class UCBHELPER_DLLPUBLIC InteractionRetry : public InteractionContinuation,
@@ -255,7 +255,7 @@ public:
/**
* This class implements a standard interaction continuation, namely the
* interface XInteractionApprove. Instances of this class can be passed
- * along with an interaction request to indicate the possiblity to approve
+ * along with an interaction request to indicate the possibility to approve
* the request.
*/
class UCBHELPER_DLLPUBLIC InteractionApprove : public InteractionContinuation,
@@ -292,7 +292,7 @@ public:
/**
* This class implements a standard interaction continuation, namely the
* interface XInteractionDisapprove. Instances of this class can be passed
- * along with an interaction request to indicate the possiblity to disapprove
+ * along with an interaction request to indicate the possibility to disapprove
* the request.
*/
class UCBHELPER_DLLPUBLIC InteractionDisapprove : public InteractionContinuation,
@@ -631,7 +631,7 @@ inline InteractionSupplyAuthentication::InteractionSupplyAuthentication(
/**
* This class implements a standard interaction continuation, namely the
* interface XInteractionSupplyName. Instances of this class can be passed
- * along with an interaction request to indicate the possiblity to
+ * along with an interaction request to indicate the possibility to
* supply a new name.
*/
class InteractionSupplyName : public InteractionContinuation,
@@ -684,7 +684,7 @@ public:
/**
* This class implements a standard interaction continuation, namely the
* interface XInteractionReplaceExistingData. Instances of this class can be
- * passed along with an interaction request to indicate the possiblity to
+ * passed along with an interaction request to indicate the possibility to
* replace existing data.
*/
class InteractionReplaceExistingData :
diff --git a/ucbhelper/inc/ucbhelper/interceptedinteraction.hxx b/ucbhelper/inc/ucbhelper/interceptedinteraction.hxx
index 5f2e9fd953b0..ab6ad740725e 100644
--- a/ucbhelper/inc/ucbhelper/interceptedinteraction.hxx
+++ b/ucbhelper/inc/ucbhelper/interceptedinteraction.hxx
@@ -51,7 +51,7 @@ namespace ucbhelper{
its handle() requests.
@descr This class can be used as:
- - instance if special interactions must be supressed
+ - instance if special interactions must be suppressed
only
- or as base class if interactions must be modified.
*/
@@ -107,7 +107,7 @@ class UCBHELPER_DLLPUBLIC InterceptedInteraction : public ::cppu::WeakImplHelper
//-----------------------------------
/** @short default ctor.
- @descr Such constructed object cant be used realy.
+ @descr Such constructed object can't be used really.
Might it will crash if its used!
Dont forget to initialize all(!) members ...
*/
@@ -149,7 +149,7 @@ class UCBHELPER_DLLPUBLIC InterceptedInteraction : public ::cppu::WeakImplHelper
};
//---------------------------------------
- /** @short represent the different states, which can occure
+ /** @short represent the different states, which can occur
as result of an interception.
@see impl_interceptRequest()
@@ -211,7 +211,7 @@ class UCBHELPER_DLLPUBLIC InterceptedInteraction : public ::cppu::WeakImplHelper
/** @short initialize a new instance with the interaction handler,
which should be intercepted.
- @attention If such interaction handler isnt set here,
+ @attention If such interaction handler isn't set here,
all incoming requests will be aborted ...
if the right continuation is available!
@@ -226,7 +226,7 @@ class UCBHELPER_DLLPUBLIC InterceptedInteraction : public ::cppu::WeakImplHelper
@attention If the interface method handle() will be overwritten by
a derived class, the functionality behind these static list
- cant be used.
+ can't be used.
@param lInterceptions
the list of intercepted requests.
@@ -261,10 +261,10 @@ class UCBHELPER_DLLPUBLIC InterceptedInteraction : public ::cppu::WeakImplHelper
@descr This base implementation checks, if the request could be intercepted
successfully. Then this method intercepted() is called.
The default implementation returns "NOT_INTERCEPTED" everytimes.
- So the method impl_interceptRequest() uses the right continuation automaticly.
+ So the method impl_interceptRequest() uses the right continuation automatically.
If this method was overwritten and something different "NO_INTERCEPTED"
- is returned, the method impl_interceptRequest() will return immediatly with
+ is returned, the method impl_interceptRequest() will return immediately with
the result, which is returned by this intercepted() method.
Then the continuations must be selected inside the intercepted() call!
@@ -281,7 +281,7 @@ class UCBHELPER_DLLPUBLIC InterceptedInteraction : public ::cppu::WeakImplHelper
@return The result of this operation.
Note: If E_NOT_INTERCEPTED is returned the default handling of the base class
- will be used automaticly for this request!
+ will be used automatically for this request!
*/
virtual EInterceptionState intercepted(const InterceptedRequest& rRequest ,
const ::com::sun::star::uno::Reference< ::com::sun::star::task::XInteractionRequest >& xOrgRequest);
@@ -297,13 +297,13 @@ class UCBHELPER_DLLPUBLIC InterceptedInteraction : public ::cppu::WeakImplHelper
@descr If no further class is derived from this one
-> the default implementation is used. Then the
internal list of requests is used to handle different
- interactions automaticly.
+ interactions automatically.
(see impl_interceptRequest())
If this method was overwritten by a derived implementation
-> the new implementation has to do everything by itself.
Of course it can access all members/helpers and work with it.
- But the default implementation isnt used automaticly then.
+ But the default implementation isn't used automatically then.
@param xRequest
the interaction request, which should be intercepted.
@@ -330,7 +330,7 @@ class UCBHELPER_DLLPUBLIC InterceptedInteraction : public ::cppu::WeakImplHelper
searched and selected.
The method return the state of that operation.
- But it doesnt call the intercepted and here set
+ But it doesn't call the intercepted and here set
interaction handler. That has to be done in the outside method.
@param xRequest
diff --git a/ucbhelper/inc/ucbhelper/resultset.hxx b/ucbhelper/inc/ucbhelper/resultset.hxx
index 57f148e50318..aca445ee4805 100644
--- a/ucbhelper/inc/ucbhelper/resultset.hxx
+++ b/ucbhelper/inc/ucbhelper/resultset.hxx
@@ -501,7 +501,7 @@ public:
* all data on demand.
*
* The implementation should call m_pResultSet->rowCountChanged(...)
- * everytime it has inserted a new entry in its logical result array.
+ * every time it has inserted a new entry in its logical result array.
*
* @return the count of objects obtained so far; will always be
* non-negative.
@@ -552,7 +552,7 @@ public:
/**
* This method will be called by the resultset implementation in order
- * check, whether an error has occured while collecting data. The
+ * check, whether an error has occurred while collecting data. The
* implementation of this method must throw an exception in that case.
*
* Note: An exception thrown to indicate an error must always be thrown
@@ -564,7 +564,7 @@ public:
* In case data are obtained synchronously, the ResultSetException can
* be thrown directly.
*
- * @exception ResultSetException thrown, if an error has occured
+ * @exception ResultSetException thrown, if an error has occurred
*/
virtual void validate()
throw( com::sun::star::ucb::ResultSetException ) = 0;
diff --git a/ucbhelper/inc/ucbhelper/resultsethelper.hxx b/ucbhelper/inc/ucbhelper/resultsethelper.hxx
index dd3f5841e74a..30c7b74178b1 100644
--- a/ucbhelper/inc/ucbhelper/resultsethelper.hxx
+++ b/ucbhelper/inc/ucbhelper/resultsethelper.hxx
@@ -135,7 +135,7 @@ public:
* Construtor.
*
* @param rxSMgr is a Service Manager.
- * @param rCommand is the paramter for the open command that produces
+ * @param rCommand is the parameter for the open command that produces
* this resultset.
*/
ResultSetImplHelper(
diff --git a/ucbhelper/inc/ucbhelper/simplecertificatevalidationrequest.hxx b/ucbhelper/inc/ucbhelper/simplecertificatevalidationrequest.hxx
index f8044a76ac27..67793a8ba995 100644
--- a/ucbhelper/inc/ucbhelper/simplecertificatevalidationrequest.hxx
+++ b/ucbhelper/inc/ucbhelper/simplecertificatevalidationrequest.hxx
@@ -61,9 +61,9 @@ public:
/**
* After passing this request to XInteractionHandler::handle, this method
- * returns the continuation that was choosen by the interaction handler.
+ * returns the continuation that was chosen by the interaction handler.
*
- * @return the continuation choosen by an interaction handler or
+ * @return the continuation chosen by an interaction handler or
* CONTINUATION_UNKNOWN, if the request was not (yet) handled.
*/
sal_Int32 getResponse() const;
diff --git a/ucbhelper/inc/ucbhelper/simpleinteractionrequest.hxx b/ucbhelper/inc/ucbhelper/simpleinteractionrequest.hxx
index c7b3f15f11a9..3074d47b9449 100644
--- a/ucbhelper/inc/ucbhelper/simpleinteractionrequest.hxx
+++ b/ucbhelper/inc/ucbhelper/simpleinteractionrequest.hxx
@@ -79,9 +79,9 @@ public:
/**
* After passing this request to XInteractionHandler::handle, this method
- * returns the continuation that was choosen by the interaction handler.
+ * returns the continuation that was chosen by the interaction handler.
*
- * @return the continuation choosen by an interaction handler or
+ * @return the continuation chosen by an interaction handler or
* CONTINUATION_UNKNOWN, if the request was not (yet) handled.
*/
sal_Int32 getResponse() const;
diff --git a/ucbhelper/source/client/content.cxx b/ucbhelper/source/client/content.cxx
index 9318e02744cc..9ee46e5c90ca 100644
--- a/ucbhelper/source/client/content.cxx
+++ b/ucbhelper/source/client/content.cxx
@@ -1597,7 +1597,7 @@ sal_Bool Content::isFolder()
ucbhelper::cancelCommandExecution(
makeAny( UnknownPropertyException(
rtl::OUString::createFromAscii(
- "Unable to retreive value of property 'IsFolder'!" ),
+ "Unable to retrieve value of property 'IsFolder'!" ),
get() ) ),
m_xImpl->getEnvironment() );
@@ -1618,7 +1618,7 @@ sal_Bool Content::isDocument()
ucbhelper::cancelCommandExecution(
makeAny( UnknownPropertyException(
rtl::OUString::createFromAscii(
- "Unable to retreive value of property 'IsDocument'!" ),
+ "Unable to retrieve value of property 'IsDocument'!" ),
get() ) ),
m_xImpl->getEnvironment() );
diff --git a/ucbhelper/source/client/interceptedinteraction.cxx b/ucbhelper/source/client/interceptedinteraction.cxx
index c01d2fd298c8..e5909fdaa013 100644
--- a/ucbhelper/source/client/interceptedinteraction.cxx
+++ b/ucbhelper/source/client/interceptedinteraction.cxx
@@ -125,7 +125,7 @@ void InterceptedInteraction::impl_handleDefault(const ::com::sun::star::uno::Ref
// Runtime error! The defined continuation could not be located
// inside the set of available containuations of the incoming request.
// Whats wrong - the interception list or the request?
- OSL_ENSURE(sal_False, "InterceptedInteraction::handle()\nCould intercept this interaction request - but cant locate the right continuation!");
+ OSL_ENSURE(sal_False, "InterceptedInteraction::handle()\nCould intercept this interaction request - but can't locate the right continuation!");
}
break;
diff --git a/udkapi/com/sun/star/beans/XHierarchicalPropertySet.idl b/udkapi/com/sun/star/beans/XHierarchicalPropertySet.idl
index 376c0ac12d2c..a3891f397400 100644
--- a/udkapi/com/sun/star/beans/XHierarchicalPropertySet.idl
+++ b/udkapi/com/sun/star/beans/XHierarchicalPropertySet.idl
@@ -70,7 +70,7 @@ module com { module sun { module star { module beans {
used to access the elements of the hierarchy,
are formed. </p>
- <p> Commonly a notation similar to filesystem pathes
+ <p> Commonly a notation similar to filesystem paths
(separated by '/' slashes) or nested module names
(separated by dots '.' or '::') is used. </p>
diff --git a/udkapi/com/sun/star/beans/XMultiPropertySet.idl b/udkapi/com/sun/star/beans/XMultiPropertySet.idl
index 22aab6eaeed4..1651ffd97c65 100644
--- a/udkapi/com/sun/star/beans/XMultiPropertySet.idl
+++ b/udkapi/com/sun/star/beans/XMultiPropertySet.idl
@@ -77,7 +77,7 @@ published interface XMultiPropertySet: com::sun::star::uno::XInterface
<p>The values of the properties must change before the bound
events are fired. The values of the constrained properties
should change after the vetoable events are fired and only if no
- exception occured. Unknown properties are ignored. </p>
+ exception occurred. Unknown properties are ignored. </p>
@param aPropertyNames
specifies the names of the properties. All names must be unique.
diff --git a/udkapi/com/sun/star/beans/XPropertiesChangeListener.idl b/udkapi/com/sun/star/beans/XPropertiesChangeListener.idl
index 38d3ed157bcd..ad94397e8644 100644
--- a/udkapi/com/sun/star/beans/XPropertiesChangeListener.idl
+++ b/udkapi/com/sun/star/beans/XPropertiesChangeListener.idl
@@ -48,7 +48,7 @@ published interface XPropertiesChangeListener: com::sun::star::lang::XEventListe
@param aEvent
contains a sequence of <type>PropertyChangeEvent</type> objects
- which describe the event source and the properites wich have
+ which describe the event source and the properites which have
changed.
*/
void propertiesChange( [in] sequence<com::sun::star::beans::PropertyChangeEvent> aEvent );
diff --git a/udkapi/com/sun/star/beans/XTolerantMultiPropertySet.idl b/udkapi/com/sun/star/beans/XTolerantMultiPropertySet.idl
index e87a84e1c46a..3a41b408a739 100644
--- a/udkapi/com/sun/star/beans/XTolerantMultiPropertySet.idl
+++ b/udkapi/com/sun/star/beans/XTolerantMultiPropertySet.idl
@@ -85,7 +85,7 @@ published interface XTolerantMultiPropertySet : com::sun::star::uno::XInterface
the property name with its value.
@returns
- An empty sequence if all properties are successfull set.
+ An empty sequence if all properties are successful set.
Otherwise for every property value that could not successfully
be set an entry of the
diff --git a/udkapi/com/sun/star/connection/XAcceptor.idl b/udkapi/com/sun/star/connection/XAcceptor.idl
index fabda41321f7..eda6e4eb9fcd 100644
--- a/udkapi/com/sun/star/connection/XAcceptor.idl
+++ b/udkapi/com/sun/star/connection/XAcceptor.idl
@@ -47,7 +47,7 @@ published interface XAcceptor: com::sun::star::uno::XInterface
@param sConnectionDescription
contains the kind of the connection plus a
- comma seperated list of attributes,
+ comma separated list of attributes,
e.g., <em>socket,host=localhost,port=2345</em> for a tcpip connection.
@return null reference,
diff --git a/udkapi/com/sun/star/connection/XConnector.idl b/udkapi/com/sun/star/connection/XConnector.idl
index 6736a2bd83b0..c0d382b89e50 100644
--- a/udkapi/com/sun/star/connection/XConnector.idl
+++ b/udkapi/com/sun/star/connection/XConnector.idl
@@ -46,7 +46,7 @@ published interface XConnector: com::sun::star::uno::XInterface
@param sConnectionDescription
contains the kind of the connection plus a
- comma seperated list of attributes,
+ comma separated list of attributes,
e.g., <em>socket,host=locahost,port=2345</em> for a tcpip connection.
@throws ConnectionSetupException
diff --git a/udkapi/com/sun/star/container/XContainerQuery.idl b/udkapi/com/sun/star/container/XContainerQuery.idl
index 1166842c7eb9..2e31c84205b9 100644
--- a/udkapi/com/sun/star/container/XContainerQuery.idl
+++ b/udkapi/com/sun/star/container/XContainerQuery.idl
@@ -54,7 +54,7 @@ published interface XContainerQuery: com::sun::star::uno::XInterface
<p>
Items of this sub set must match used query string. Format of query depends
- from real implementation. Using of "param=value" pairs isn't neccessary.
+ from real implementation. Using of "param=value" pairs isn't necessary.
So it's possible to combine different parameters as one simple command
string.
<p>
@@ -62,7 +62,7 @@ published interface XContainerQuery: com::sun::star::uno::XInterface
@param Query items of sub set must match to this query<br>
example:<br>
(1)<br>
- query as parameter sequence to return all elements wich match
+ query as parameter sequence to return all elements which match
the name pattern and supports a special feature; sort it ascending<br>
"name=*myname_??_;sort=ascending;feature=VISIBLE"<br>
(2)<br>
@@ -86,7 +86,7 @@ published interface XContainerQuery: com::sun::star::uno::XInterface
@param Properties items of sub set must support given properties as minimum<br>
example:<br>
(supported)<br>
- search for items wich match the name pattern and supports the VISIBLE feature<br>
+ search for items which match the name pattern and supports the VISIBLE feature<br>
Parameters[0].Name = "name"<br>
Parameters[0].Value = "*myname_??_"<br>
Parameters[1].Name = "feature"<br>
diff --git a/udkapi/com/sun/star/io/ObjectOutputStream.idl b/udkapi/com/sun/star/io/ObjectOutputStream.idl
index 078368764744..cc3f26a840ba 100644
--- a/udkapi/com/sun/star/io/ObjectOutputStream.idl
+++ b/udkapi/com/sun/star/io/ObjectOutputStream.idl
@@ -46,7 +46,7 @@ module com { module sun { module star { module io {
/** is a stream which allows writing the data of persistent objects.
<p>Implementations of this service must fulfill the specifications of the
- <type>DataOutputStream</type> service; futhermore, the stream needs to be chained to a
+ <type>DataOutputStream</type> service; furthermore, the stream needs to be chained to a
<type>XMarkableStream</type>. Therefore, it also provides the <type>XMarkableStream</type>
interface, but it delegates the calls to the chained object.
The written objects are held until this instance is destroyed.
@@ -60,7 +60,7 @@ module com { module sun { module star { module io {
Object ObjectData // the data of the object
</pre>
- @garantees
+ @guarantees
<ul>
<li>-thread safe </li>
<li>-allow buffer size is 2 ^ 31 -1 </li>
diff --git a/udkapi/com/sun/star/io/XMarkableStream.idl b/udkapi/com/sun/star/io/XMarkableStream.idl
index 02d3f51eb92f..f8637dd5d4fa 100644
--- a/udkapi/com/sun/star/io/XMarkableStream.idl
+++ b/udkapi/com/sun/star/io/XMarkableStream.idl
@@ -50,7 +50,7 @@ published interface XMarkableStream: com::sun::star::uno::XInterface
//-------------------------------------------------------------------------
// DocMerge from xml: method com::sun::star::io::XMarkableStream::createMark
- /** creates a mark of the current postion and returns an identifier to it.
+ /** creates a mark of the current position and returns an identifier to it.
*/
long createMark()
raises( com::sun::star::io::IOException );
diff --git a/udkapi/com/sun/star/io/XTextInputStream.idl b/udkapi/com/sun/star/io/XTextInputStream.idl
index 71197669037b..50295152e484 100644
--- a/udkapi/com/sun/star/io/XTextInputStream.idl
+++ b/udkapi/com/sun/star/io/XTextInputStream.idl
@@ -39,7 +39,7 @@ module com { module sun { module star { module io {
//=============================================================================
/** Interface to read strings from a stream.
- <p>This interfaces allows to read strings seperated by
+ <p>This interfaces allows to read strings separated by
delimiters and to read lines. The character encoding
to be used can be set by <member>setEncoding()</member>.
Default encoding is "utf8".</p>
diff --git a/udkapi/com/sun/star/io/XTextOutputStream.idl b/udkapi/com/sun/star/io/XTextOutputStream.idl
index 6dd5ba9bc09b..528c90e18b76 100644
--- a/udkapi/com/sun/star/io/XTextOutputStream.idl
+++ b/udkapi/com/sun/star/io/XTextOutputStream.idl
@@ -50,7 +50,7 @@ published interface XTextOutputStream: com::sun::star::io::XOutputStream
/** writes a string to the stream using the encoding
defined by <member>setEncoding</member>.
- <p>Line breaks or delimiters that may be neccessary
+ <p>Line breaks or delimiters that may be necessary
to support <member>XTextInputStream::readLine</member>
and <member>XTextInputStream::readString</member>
have to be added manually to the parameter string.</p>
diff --git a/udkapi/com/sun/star/lang/XUnoTunnel.idl b/udkapi/com/sun/star/lang/XUnoTunnel.idl
index b9440d481879..217cdcfaac59 100644
--- a/udkapi/com/sun/star/lang/XUnoTunnel.idl
+++ b/udkapi/com/sun/star/lang/XUnoTunnel.idl
@@ -39,7 +39,7 @@ module com { module sun { module star { module lang {
something else, which is not specified by UNO-IDL.
@attention
- Restrictive useage. Use only, if there is no better possibility left.
+ Restrictive usage. Use only, if there is no better possibility left.
It is definitely a hack.
<p>
diff --git a/udkapi/com/sun/star/reflection/CoreReflection.idl b/udkapi/com/sun/star/reflection/CoreReflection.idl
index 3a444e5b933b..cec553be09cd 100644
--- a/udkapi/com/sun/star/reflection/CoreReflection.idl
+++ b/udkapi/com/sun/star/reflection/CoreReflection.idl
@@ -53,7 +53,7 @@ published service CoreReflection
[optional] interface com::sun::star::lang::XComponent;
};
-/** Accessable singleton to CoreReflection instance.
+/** Accessible singleton to CoreReflection instance.
singleton theCoreReflection
{
service CoreReflection;
diff --git a/udkapi/com/sun/star/reflection/TypeDescriptionManager.idl b/udkapi/com/sun/star/reflection/TypeDescriptionManager.idl
index f895b1d2cdf6..1abb910b7344 100644
--- a/udkapi/com/sun/star/reflection/TypeDescriptionManager.idl
+++ b/udkapi/com/sun/star/reflection/TypeDescriptionManager.idl
@@ -55,7 +55,7 @@
<type scope="com::sun::star::reflection">TypeDescriptionProvider</type>s
and may cache type descriptions.<br>
Using cppuhelper's bootstrapping routines bootstrapping an initial
- component context, there is a singleton accessable via key
+ component context, there is a singleton accessible via key
"/singletons/com.sun.star.reflection.theTypeDescriptionManager".
This singleton object is hooked into the C UNO runtime typelib and
lives until the context is shut down.<br>
diff --git a/udkapi/com/sun/star/reflection/XTypeDescriptionEnumerationAccess.idl b/udkapi/com/sun/star/reflection/XTypeDescriptionEnumerationAccess.idl
index 1ffe33b8deb0..49d20159393d 100644
--- a/udkapi/com/sun/star/reflection/XTypeDescriptionEnumerationAccess.idl
+++ b/udkapi/com/sun/star/reflection/XTypeDescriptionEnumerationAccess.idl
@@ -65,7 +65,7 @@ published interface XTypeDescriptionEnumerationAccess : com::sun::star::uno::XIn
for the search within the underlying type description tree.
@param moduleName
- contains the name of an UNOIDL module. Modules are seperated by a
+ contains the name of an UNOIDL module. Modules are separated by a
single '.' (i.e., "com.sun.star.reflection"). The root of the module
hierarchy is specified with an empty string. Module names are always
absolute, never relative.
@@ -92,7 +92,7 @@ published interface XTypeDescriptionEnumerationAccess : com::sun::star::uno::XIn
@param depth
specifies the depth of search in the underlying tree of type
- descriptions. Clients should be aware of the fact that specifiying
+ descriptions. Clients should be aware of the fact that specifying
<member>TypeDescriptionSearchDepth::INFINITE</member> can lead to
larger delays when constructing or using the
<type>XTypeDescriptionEnumeration</type> instance.
diff --git a/udkapi/com/sun/star/registry/DefaultRegistry.idl b/udkapi/com/sun/star/registry/DefaultRegistry.idl
index e0edc79ce6c0..ce8bbeb6de96 100644
--- a/udkapi/com/sun/star/registry/DefaultRegistry.idl
+++ b/udkapi/com/sun/star/registry/DefaultRegistry.idl
@@ -73,7 +73,7 @@
<dl>
<dt> <b>openKey</b>
</dt>
- <dd> returns a virtual key which is specified in the local or the sytem
+ <dd> returns a virtual key which is specified in the local or the system
registry.
</dd>
<dt> <b>deleteKey</b>
diff --git a/udkapi/com/sun/star/script/ContextInformation.idl b/udkapi/com/sun/star/script/ContextInformation.idl
index e1db60a0e438..82be2fbd9cca 100644
--- a/udkapi/com/sun/star/script/ContextInformation.idl
+++ b/udkapi/com/sun/star/script/ContextInformation.idl
@@ -35,8 +35,8 @@
*/
published struct ContextInformation
{
- /** Full qualified name to adress the module or function associated with the context.
- If the module or function can't be adressed by name, e.g., in case that a runtime
+ /** Full qualified name to address the module or function associated with the context.
+ If the module or function can't be addressed by name, e.g., in case that a runtime
generated eval-module is executed, this string is empty
*/
string Name;
diff --git a/udkapi/com/sun/star/script/Converter.idl b/udkapi/com/sun/star/script/Converter.idl
index a995957c833c..f093caaad32b 100644
--- a/udkapi/com/sun/star/script/Converter.idl
+++ b/udkapi/com/sun/star/script/Converter.idl
@@ -73,7 +73,7 @@
<li>10: only converts if it is the same enumeration type.</li>
<li>11: only converts if the string contains the name of an enumeration type value. Normally you need
core reflection information of the enum type.</li>
- <li>12: only converts if the value of the string is "1", "true" or "0", "false". The comparision
+ <li>12: only converts if the value of the string is "1", "true" or "0", "false". The comparison
is case insensitive.</li>
<li>13: only converts if the length of the string is 1 or 0.</li>
<li>14: only converts if the types are equal or the source type is derived from the destination
diff --git a/udkapi/com/sun/star/script/XInvocation2.idl b/udkapi/com/sun/star/script/XInvocation2.idl
index 8153f9bb0c82..2605afe86cf2 100644
--- a/udkapi/com/sun/star/script/XInvocation2.idl
+++ b/udkapi/com/sun/star/script/XInvocation2.idl
@@ -39,17 +39,17 @@
/**
Extension of XInvocation to provide additional information
- about the methods and properties that are accessable via
+ about the methods and properties that are accessible via
XInvocation.
</p>
*/
published interface XInvocation2: com::sun::star::script::XInvocation
{
- /** returns the names of all methods and properties accessable via XInvocation.
+ /** returns the names of all methods and properties accessible via XInvocation.
*/
sequence< string > getMemberNames();
- /** returns information items for all methods and properties accessable via XInvocation.
+ /** returns information items for all methods and properties accessible via XInvocation.
@see com::sun::star::script::Invocation
*/
diff --git a/udkapi/com/sun/star/script/XLibraryAccess.idl b/udkapi/com/sun/star/script/XLibraryAccess.idl
index f4a7be507d81..912859cb20fd 100644
--- a/udkapi/com/sun/star/script/XLibraryAccess.idl
+++ b/udkapi/com/sun/star/script/XLibraryAccess.idl
@@ -47,7 +47,7 @@ published interface XLibraryAccess: com::sun::star::uno::XInterface
otherwise it returns <FALSE/>.
@param aFunctionName
- the fully qualified name of a funtion.
+ the fully qualified name of a function.
(e.g., "UtilLibrary.ModuleDate.FunctionCurrentDate")
*/
boolean isFunction( [in] string aFunctionName );
diff --git a/udkapi/com/sun/star/script/XStarBasicLibraryInfo.idl b/udkapi/com/sun/star/script/XStarBasicLibraryInfo.idl
index ba2ed79dee74..6dcb9355621c 100644
--- a/udkapi/com/sun/star/script/XStarBasicLibraryInfo.idl
+++ b/udkapi/com/sun/star/script/XStarBasicLibraryInfo.idl
@@ -76,7 +76,7 @@ published interface XStarBasicLibraryInfo: com::sun::star::uno::XInterface
//-------------------------------------------------------------------------
/** returns an
URL describing the location where the library is stored if the library
- is stored seperately (for example not in the main XML file but in a
+ is stored separately (for example not in the main XML file but in a
special library format file), an empty string otherwise.
This information can be useful to optimize the access to the library,
e.g., for loading on demand.
diff --git a/udkapi/com/sun/star/test/XSimpleTest.idl b/udkapi/com/sun/star/test/XSimpleTest.idl
index b5233034860e..fd8cd9d0ebad 100644
--- a/udkapi/com/sun/star/test/XSimpleTest.idl
+++ b/udkapi/com/sun/star/test/XSimpleTest.idl
@@ -91,7 +91,7 @@ published interface XSimpleTest: com::sun::star::uno::XInterface
//-------------------------------------------------------------------------
/**States if one of the last test has failed. This is cumulative.
- @return true if all test have been passed succesfully. false if an error has occured.
+ @return true if all test have been passed successfully. false if an error has occurred.
*/
boolean testPassed();
diff --git a/udkapi/com/sun/star/uri/UriReferenceFactory.idl b/udkapi/com/sun/star/uri/UriReferenceFactory.idl
index 8cf13f175baf..d1f82fbdc346 100644
--- a/udkapi/com/sun/star/uri/UriReferenceFactory.idl
+++ b/udkapi/com/sun/star/uri/UriReferenceFactory.idl
@@ -44,7 +44,7 @@ published interface XUriReferenceFactory;
<type scope="com::sun::star::uri">XUriReference</type>.</p>
<p>Locating a scheme-specific parser works as follows: A scheme consists of
- Latin captial letters
+ Latin capital letters
&ldquo;<code>A</code>&rdquo;&ndash;&ldquo;<code>Z</code>&rdquo;, Latin small
letters &ldquo;<code>a</code>&rdquo;&ndash;&ldquo;<code>z</code>&rdquo;,
digits &ldquo;<code>0</code>&rdquo;&ndash;&ldquo;<code>9</code>&rdquo;,
diff --git a/udkapi/com/sun/star/uri/XUriReferenceFactory.idl b/udkapi/com/sun/star/uri/XUriReferenceFactory.idl
index a9796325ef56..f1e91987c6bd 100644
--- a/udkapi/com/sun/star/uri/XUriReferenceFactory.idl
+++ b/udkapi/com/sun/star/uri/XUriReferenceFactory.idl
@@ -95,7 +95,7 @@ published interface XUriReferenceFactory: com::sun::star::uno::XInterface {
[in] RelativeUriExcessParentSegments excessParentSegments);
/**
- changes an absolute URI refrence to relative form.
+ changes an absolute URI reference to relative form.
@param baseUriReference
the base URI reference.
diff --git a/unodevtools/source/skeletonmaker/skeletoncommon.cxx b/unodevtools/source/skeletonmaker/skeletoncommon.cxx
index be5bb7e859b7..19b0ba9be35e 100644
--- a/unodevtools/source/skeletonmaker/skeletoncommon.cxx
+++ b/unodevtools/source/skeletonmaker/skeletoncommon.cxx
@@ -481,7 +481,7 @@ sal_uInt16 checkAdditionalPropertyFlags(typereg::Reader const & reader,
return flags;
}
-// This function checks if the specified types for paramters and return
+// This function checks if the specified types for parameters and return
// types are allowed add-in types, for more info see the com.sun.star.sheet.AddIn
// service description
bool checkAddinType(TypeManager const & manager,
@@ -552,7 +552,7 @@ void checkAddInTypes(TypeManager const & manager,
msg.append(sType);
msg.append(":");
msg.append(sMethod);
- msg.append("' is invalid. Please check your IDL defintion.");
+ msg.append("' is invalid. Please check your IDL definition.");
throw CannotDumpException(msg.makeStringAndClear());
}
diff --git a/unodevtools/source/skeletonmaker/skeletoncommon.hxx b/unodevtools/source/skeletonmaker/skeletoncommon.hxx
index c58846077efa..340193495986 100644
--- a/unodevtools/source/skeletonmaker/skeletoncommon.hxx
+++ b/unodevtools/source/skeletonmaker/skeletoncommon.hxx
@@ -139,7 +139,7 @@ void checkAddInTypes(TypeManager const & manager,
/**
checks if XComponent have to be supported, if yes it removes it from the
- supported interfaces list becuase it becmoes implmented by the appropriate
+ supported interfaces list because it becmoes implmented by the appropriate
helper
@param manager a type manager
diff --git a/unotools/inc/unotools/accessiblestatesethelper.hxx b/unotools/inc/unotools/accessiblestatesethelper.hxx
index b177a0be95af..88c3e796ced9 100644
--- a/unotools/inc/unotools/accessiblestatesethelper.hxx
+++ b/unotools/inc/unotools/accessiblestatesethelper.hxx
@@ -96,7 +96,7 @@ public:
the constants of <type>AccessibleStateType</type>.
@return
- Returns <TRUE/> if the given state is a memeber of this object's
+ Returns <TRUE/> if the given state is a member of this object's
state set and <FALSE/> otherwise.
*/
virtual sal_Bool SAL_CALL contains (sal_Int16 aState)
diff --git a/unotools/inc/unotools/cacheoptions.hxx b/unotools/inc/unotools/cacheoptions.hxx
index a1b8ec4ebc30..9fe4262a1f13 100644
--- a/unotools/inc/unotools/cacheoptions.hxx
+++ b/unotools/inc/unotools/cacheoptions.hxx
@@ -40,7 +40,7 @@
/*-************************************************************************************************************//**
@short forward declaration to our private date container implementation
@descr We use these class as internal member to support small memory requirements.
- You can create the container if it is neccessary. The class which use these mechanism
+ You can create the container if it is necessary. The class which use these mechanism
is faster and smaller then a complete implementation!
*//*-*************************************************************************************************************/
diff --git a/unotools/inc/unotools/cmdoptions.hxx b/unotools/inc/unotools/cmdoptions.hxx
index bbc188b1efee..c41896340b5e 100644
--- a/unotools/inc/unotools/cmdoptions.hxx
+++ b/unotools/inc/unotools/cmdoptions.hxx
@@ -41,7 +41,7 @@
/*-************************************************************************************************************//**
@descr The method GetList() returns a list of property values.
- Use follow defines to seperate values by names.
+ Use follow defines to separate values by names.
*//*-*************************************************************************************************************/
#define CMDOPTIONS_PROPERTYNAME_URL ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM( "CommandURL" ))
@@ -52,7 +52,7 @@
/*-************************************************************************************************************//**
@short forward declaration to our private date container implementation
@descr We use these class as internal member to support small memory requirements.
- You can create the container if it is neccessary. The class which use these mechanism
+ You can create the container if it is necessary. The class which use these mechanism
is faster and smaller then a complete implementation!
*//*-*************************************************************************************************************/
diff --git a/unotools/inc/unotools/compatibility.hxx b/unotools/inc/unotools/compatibility.hxx
index dc7923c28841..978f269694f3 100644
--- a/unotools/inc/unotools/compatibility.hxx
+++ b/unotools/inc/unotools/compatibility.hxx
@@ -55,7 +55,7 @@ enum CompatibilityOptions
/*-************************************************************************************************************//**
@descr The method GetList() returns a list of property values.
- Use follow defines to seperate values by names.
+ Use follow defines to separate values by names.
*//*-*************************************************************************************************************/
#define COMPATIBILITY_PROPERTYNAME_NAME OUString( RTL_CONSTASCII_USTRINGPARAM( "Name" ) )
#define COMPATIBILITY_PROPERTYNAME_MODULE OUString( RTL_CONSTASCII_USTRINGPARAM( "Module" ) )
@@ -80,7 +80,7 @@ enum CompatibilityOptions
/*-************************************************************************************************************//**
@short forward declaration to our private date container implementation
@descr We use these class as internal member to support small memory requirements.
- You can create the container if it is neccessary. The class which use these mechanism
+ You can create the container if it is necessary. The class which use these mechanism
is faster and smaller then a complete implementation!
*//*-*************************************************************************************************************/
diff --git a/unotools/inc/unotools/confignode.hxx b/unotools/inc/unotools/confignode.hxx
index 7278816e4db0..80a818ae8ab5 100644
--- a/unotools/inc/unotools/confignode.hxx
+++ b/unotools/inc/unotools/confignode.hxx
@@ -169,7 +169,7 @@ namespace utl
The value given is written into the node specified by the given relative path.<br/>
In opposite to <method>getNodeValue</method>, _rName must refer to a leaf in the configuration tree, not an inner
node.
- @return sal_True if and only if the write was successfull.
+ @return sal_True if and only if the write was successful.
*/
sal_Bool setNodeValue(const ::rtl::OUString& _rPath, const ::com::sun::star::uno::Any& _rValue) const throw();
@@ -341,7 +341,7 @@ namespace utl
/** commit all changes made on the subtree the object is the root for<p/>
All changes made on any <type>OConfigurationNode</type> object retrieved (maybe indirect) from this root
object are committed when calling this method.
- @return sal_True if and only if the commit was successfull
+ @return sal_True if and only if the commit was successful
*/
sal_Bool commit() const throw();
diff --git a/unotools/inc/unotools/configpathes.hxx b/unotools/inc/unotools/configpathes.hxx
index 51d9a1c102fe..5a147f7e7b39 100644
--- a/unotools/inc/unotools/configpathes.hxx
+++ b/unotools/inc/unotools/configpathes.hxx
@@ -90,7 +90,7 @@ namespace utl
@param _sNestedPath
A configuration path that maybe points to a descendant of the node
- identified by <var>_sPrefixPath</var>, with both pathes starting
+ identified by <var>_sPrefixPath</var>, with both paths starting
from the same node (or both being absolute).
@param _sPrefixPath
@@ -103,7 +103,7 @@ namespace utl
@returns
<TRUE/>, if <var>_sPrefixPath</var> is a prefix of <var>_sNestedPath</var>;
<FALSE/> otherwise.<BR/>
- If both pathes are equal <TRUE/> is returned.
+ If both paths are equal <TRUE/> is returned.
*/
sal_Bool isPrefixOfConfigurationPath(::rtl::OUString const& _sNestedPath,
@@ -114,7 +114,7 @@ namespace utl
@param _sNestedPath
A configuration path that points to a descendant of the node
- identified by <var>_sPrefixPath</var>, with both pathes starting
+ identified by <var>_sPrefixPath</var>, with both paths starting
from the same node (or both being absolute).
@param _sPrefixPath
diff --git a/unotools/inc/unotools/dynamicmenuoptions.hxx b/unotools/inc/unotools/dynamicmenuoptions.hxx
index 169d4d53c06b..525f1ddae1a4 100644
--- a/unotools/inc/unotools/dynamicmenuoptions.hxx
+++ b/unotools/inc/unotools/dynamicmenuoptions.hxx
@@ -40,7 +40,7 @@
/*-************************************************************************************************************//**
@descr The method GetList() returns a list of property values.
- Use follow defines to seperate values by names.
+ Use follow defines to separate values by names.
*//*-*************************************************************************************************************/
#define DYNAMICMENU_PROPERTYNAME_URL ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("URL" ))
#define DYNAMICMENU_PROPERTYNAME_TITLE ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("Title" ))
@@ -63,7 +63,7 @@ enum EDynamicMenuType
/*-************************************************************************************************************//**
@short forward declaration to our private date container implementation
@descr We use these class as internal member to support small memory requirements.
- You can create the container if it is neccessary. The class which use these mechanism
+ You can create the container if it is necessary. The class which use these mechanism
is faster and smaller then a complete implementation!
*//*-*************************************************************************************************************/
diff --git a/unotools/inc/unotools/extendedsecurityoptions.hxx b/unotools/inc/unotools/extendedsecurityoptions.hxx
index 0981e238d0f8..91be7998c934 100644
--- a/unotools/inc/unotools/extendedsecurityoptions.hxx
+++ b/unotools/inc/unotools/extendedsecurityoptions.hxx
@@ -41,7 +41,7 @@
/*-************************************************************************************************************//**
@short forward declaration to our private date container implementation
@descr We use these class as internal member to support small memory requirements.
- You can create the container if it is neccessary. The class which use these mechanism
+ You can create the container if it is necessary. The class which use these mechanism
is faster and smaller then a complete implementation!
*//*-*************************************************************************************************************/
diff --git a/unotools/inc/unotools/fontcvt.hxx b/unotools/inc/unotools/fontcvt.hxx
index 5e50747dacef..d9ccfcb86d92 100644
--- a/unotools/inc/unotools/fontcvt.hxx
+++ b/unotools/inc/unotools/fontcvt.hxx
@@ -57,9 +57,9 @@ public:
//Starts converting the string at position rIndex. It converts as much of
//the string that can be converted to the same symbol font and returns the
//name of that font. rIndex is modified to the last index that was
- //converted. Typically you call if continously until rIndex ==
- //rString.Len() and handle each section as seperate 8bit strings using
- //seperate fonts. Will return an empty string for a continous section
+ //converted. Typically you call if continuously until rIndex ==
+ //rString.Len() and handle each section as separate 8bit strings using
+ //separate fonts. Will return an empty string for a continuous section
//that has no possible mapping.
virtual String ConvertString(String &rString, xub_StrLen &rIndex) = 0;
virtual ~StarSymbolToMSMultiFont() {}
@@ -68,7 +68,7 @@ public:
//with bPerfect set the converter will only try and convert symbols which have
//perfect mappings to the windows symbols fonts. With it not set, it will
//allow somewhat more dubious transformations that are nevertheless
-//recognizably similiar. Even in this mode there will be characters that fail.
+//recognizably similar. Even in this mode there will be characters that fail.
//The users of this might want to make a distinction between failed characters
//which were inside and those outside the unicode private area.
UNOTOOLS_DLLPUBLIC StarSymbolToMSMultiFont *CreateStarSymbolToMSMultiFont(bool bPerfectOnly=false);
diff --git a/unotools/inc/unotools/fontoptions.hxx b/unotools/inc/unotools/fontoptions.hxx
index 3c507ceaf76e..04b3e221b3ec 100644
--- a/unotools/inc/unotools/fontoptions.hxx
+++ b/unotools/inc/unotools/fontoptions.hxx
@@ -40,7 +40,7 @@
/*-************************************************************************************************************//**
@short forward declaration to our private date container implementation
@descr We use these class as internal member to support small memory requirements.
- You can create the container if it is neccessary. The class which use these mechanism
+ You can create the container if it is necessary. The class which use these mechanism
is faster and smaller then a complete implementation!
*//*-*************************************************************************************************************/
diff --git a/unotools/inc/unotools/historyoptions.hxx b/unotools/inc/unotools/historyoptions.hxx
index 4aee34796259..47f98953a689 100644
--- a/unotools/inc/unotools/historyoptions.hxx
+++ b/unotools/inc/unotools/historyoptions.hxx
@@ -41,7 +41,7 @@
/*-************************************************************************************************************//**
@descr The method GetList() returns a list of property values.
- Use follow defines to seperate values by names.
+ Use follow defines to separate values by names.
*//*-*************************************************************************************************************/
#define HISTORY_PROPERTYNAME_URL ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("URL" ))
@@ -67,7 +67,7 @@ enum EHistoryType
/*-************************************************************************************************************//**
@short forward declaration to our private date container implementation
@descr We use these class as internal member to support small memory requirements.
- You can create the container if it is neccessary. The class which use these mechanism
+ You can create the container if it is necessary. The class which use these mechanism
is faster and smaller then a complete implementation!
*//*-*************************************************************************************************************/
@@ -132,13 +132,13 @@ class UNOTOOLS_DLLPUBLIC SvtHistoryOptions: public utl::detail::Options
@short set/get max size of specified history
@descr Call this methods to get information about max. size of specified list.
These value lay down the max count of items in these history. If a new one
- is add to it the oldest one is deleted automaticly!
+ is add to it the oldest one is deleted automatically!
@seealso -
@param "eHistory" select right history.
@param "nSize" is the new max size of specified list. If new size smaller then the old one
- some oldest entries will be destroyed automaticly!
+ some oldest entries will be destroyed automatically!
@return Current max size of specified list.
@onerror -
@@ -179,7 +179,7 @@ class UNOTOOLS_DLLPUBLIC SvtHistoryOptions: public utl::detail::Options
/*-****************************************************************************************************//**
@short append a new item to specified list
@descr You can append items to a list only - removing isn't allowed for a special item!
- The oldest entry is deleted automaticly if max size arrived or you can call Clear() ...
+ The oldest entry is deleted automatically if max size arrived or you can call Clear() ...
It exist two different overload methods to do this.
One for user which have an complete history item and another one for uncompletly data sets!
diff --git a/unotools/inc/unotools/idhelper.hxx b/unotools/inc/unotools/idhelper.hxx
index 033e4c27462a..c5f104b22065 100644
--- a/unotools/inc/unotools/idhelper.hxx
+++ b/unotools/inc/unotools/idhelper.hxx
@@ -184,7 +184,7 @@ void classname::release() \
::utl::MapType2Id* pMap = static_cast< ::utl::MapType2Id *>(s_pMap); \
\
::cppu::OImplementationId& rId = (*pMap)[_rTypes]; \
- /* this will create an entry for the given type sequence, if neccessary */ \
+ /* this will create an entry for the given type sequence, if necessary */ \
\
return rId.getImplementationId(); \
} \
diff --git a/unotools/inc/unotools/internaloptions.hxx b/unotools/inc/unotools/internaloptions.hxx
index 315d6755f2c8..40d55aa92c8b 100644
--- a/unotools/inc/unotools/internaloptions.hxx
+++ b/unotools/inc/unotools/internaloptions.hxx
@@ -47,7 +47,7 @@
/*-************************************************************************************************************//**
@short forward declaration to our private date container implementation
@descr We use these class as internal member to support small memory requirements.
- You can create the container if it is neccessary. The class which use these mechanism
+ You can create the container if it is necessary. The class which use these mechanism
is faster and smaller then a complete implementation!
*//*-*************************************************************************************************************/
diff --git a/unotools/inc/unotools/localisationoptions.hxx b/unotools/inc/unotools/localisationoptions.hxx
index bc5b03421719..507bb11e1242 100644
--- a/unotools/inc/unotools/localisationoptions.hxx
+++ b/unotools/inc/unotools/localisationoptions.hxx
@@ -39,7 +39,7 @@
/*-************************************************************************************************************//**
@short forward declaration to our private date container implementation
@descr We use these class as internal member to support small memory requirements.
- You can create the container if it is neccessary. The class which use these mechanism
+ You can create the container if it is necessary. The class which use these mechanism
is faster and smaller then a complete implementation!
*//*-*************************************************************************************************************/
diff --git a/unotools/inc/unotools/moduleoptions.hxx b/unotools/inc/unotools/moduleoptions.hxx
index a8027d3a88dc..41ff56b7665c 100644
--- a/unotools/inc/unotools/moduleoptions.hxx
+++ b/unotools/inc/unotools/moduleoptions.hxx
@@ -57,7 +57,7 @@
/*-************************************************************************************************************//**
@short forward declaration to our private date container implementation
@descr We use these class as internal member to support small memory requirements.
- You can create the container if it is neccessary. The class which use these mechanism
+ You can create the container if it is necessary. The class which use these mechanism
is faster and smaller then a complete implementation!
*//*-*************************************************************************************************************/
class SvtModuleOptions_Impl;
@@ -178,7 +178,7 @@ class UNOTOOLS_DLLPUBLIC SvtModuleOptions: public utl::detail::Options
content (but a FrameLoader which is not bound to any application!) ... or
the given properties describe a stream (and we make no deep detection inside here!).
- @attention The module BASIC cant be detected here. Because it does not
+ @attention The module BASIC can't be detected here. Because it does not
has an own URL schema.
@param sURL
@@ -199,7 +199,7 @@ class UNOTOOLS_DLLPUBLIC SvtModuleOptions: public utl::detail::Options
@descr Here we try to use the list of supported service names of the given model
to find out the right application module.
- @attention The module BASIC cant be detected here. Because it does not
+ @attention The module BASIC can't be detected here. Because it does not
support any model/ctrl/view paradigm.
@param xModel
diff --git a/unotools/inc/unotools/printwarningoptions.hxx b/unotools/inc/unotools/printwarningoptions.hxx
index 7f7f0738c334..a7d174253818 100644
--- a/unotools/inc/unotools/printwarningoptions.hxx
+++ b/unotools/inc/unotools/printwarningoptions.hxx
@@ -41,7 +41,7 @@
/*-************************************************************************************************************//**
@short forward declaration to our private date container implementation
@descr We use these class as internal member to support small memory requirements.
- You can create the container if it is neccessary. The class which use these mechanism
+ You can create the container if it is necessary. The class which use these mechanism
is faster and smaller then a complete implementation!
*//*-*************************************************************************************************************/
diff --git a/unotools/inc/unotools/securityoptions.hxx b/unotools/inc/unotools/securityoptions.hxx
index 3921a4cb05d9..2c0a79064913 100644
--- a/unotools/inc/unotools/securityoptions.hxx
+++ b/unotools/inc/unotools/securityoptions.hxx
@@ -41,7 +41,7 @@
/*-************************************************************************************************************//**
@short forward declaration to our private date container implementation
@descr We use these class as internal member to support small memory requirements.
- You can create the container if it is neccessary. The class which use these mechanism
+ You can create the container if it is necessary. The class which use these mechanism
is faster and smaller then a complete implementation!
*//*-*************************************************************************************************************/
diff --git a/unotools/inc/unotools/sharedunocomponent.hxx b/unotools/inc/unotools/sharedunocomponent.hxx
index 404b8b761355..7e332c419a71 100644
--- a/unotools/inc/unotools/sharedunocomponent.hxx
+++ b/unotools/inc/unotools/sharedunocomponent.hxx
@@ -196,7 +196,7 @@ namespace utl
// SharedUNOComponent& operator=( const ::com::sun::star::uno::Reference< INTERFACE >& _rxComponent );
// this operator is not implemented by intention. There is no canonic ownership after this operatoer
- // would hvae been applied: Should the SharedUNOComponent have the ownership of the component,
+ // would have been applied: Should the SharedUNOComponent have the ownership of the component,
// or shouldn't it? Hard to guess, and probably wrong in 50 percent of all cases, anyway. So,
// instead of tempting clients of this class to use such a dangerous operator, we do
// not offer it at all. If you need to assign a Reference< INTERFACE > to your SharedUNOComponent,
diff --git a/unotools/inc/unotools/startoptions.hxx b/unotools/inc/unotools/startoptions.hxx
index fff366df004c..23d00e932389 100644
--- a/unotools/inc/unotools/startoptions.hxx
+++ b/unotools/inc/unotools/startoptions.hxx
@@ -40,7 +40,7 @@
/*-************************************************************************************************************//**
@short forward declaration to our private date container implementation
@descr We use these class as internal member to support small memory requirements.
- You can create the container if it is neccessary. The class which use these mechanism
+ You can create the container if it is necessary. The class which use these mechanism
is faster and smaller then a complete implementation!
*//*-*************************************************************************************************************/
diff --git a/unotools/inc/unotools/tempfile.hxx b/unotools/inc/unotools/tempfile.hxx
index 670b6d16ab19..732ef7134abb 100644
--- a/unotools/inc/unotools/tempfile.hxx
+++ b/unotools/inc/unotools/tempfile.hxx
@@ -43,7 +43,7 @@ struct TempFile_Impl;
the UCB helper classes for streams. For convenience use UcbStreamHelper.
A Tempfile always has a "physical" file name ( a file name in the local computers host notation ) but it has a
"UCB compatible" URL only if a UCP for the local file system exists. This URL may have its own URL scheme
- ( not neccessarily "file://" ! ). The TempFile class methods take this into account, but other simple conversions like
+ ( not necessarily "file://" ! ). The TempFile class methods take this into account, but other simple conversions like
the osl functions do not.
So it is a potential error to convert between the filename and the URL of a TempFile object using functions or methods
outside this class.
diff --git a/unotools/inc/unotools/viewoptions.hxx b/unotools/inc/unotools/viewoptions.hxx
index 00308cf2c439..0fc6fd55855f 100644
--- a/unotools/inc/unotools/viewoptions.hxx
+++ b/unotools/inc/unotools/viewoptions.hxx
@@ -189,14 +189,14 @@ class UNOTOOLS_DLLPUBLIC SvtViewOptions: public utl::detail::Options
/*-****************************************************************************************************//**
@short use it to get information about existing entries in configuration
- @descr The methods to set/get the position or size will create a new entry automaticly if
+ @descr The methods to set/get the position or size will create a new entry automatically if
it not already exist and work with default values!
If this a problem for you - you MUST call these method before and
you must make up your own mind about that.
@seealso -
- @onerror No error should occure.
+ @onerror No error should occur.
*//*-*****************************************************************************************************/
sal_Bool Exists() const;
@@ -220,7 +220,7 @@ class UNOTOOLS_DLLPUBLIC SvtViewOptions: public utl::detail::Options
/*-****************************************************************************************************//**
@short use it to set/get the window state of your view
@descr These value describe position/size and some other states of a window.
- Use it with right vcl methods directly. Normaly it's not neccessary to
+ Use it with right vcl methods directly. Normaly it's not necessary to
parse given string!
@seealso vcl methods
diff --git a/unotools/inc/unotools/workingsetoptions.hxx b/unotools/inc/unotools/workingsetoptions.hxx
index ff724d1802af..07055b69ced1 100644
--- a/unotools/inc/unotools/workingsetoptions.hxx
+++ b/unotools/inc/unotools/workingsetoptions.hxx
@@ -40,7 +40,7 @@
/*-************************************************************************************************************//**
@short forward declaration to our private date container implementation
@descr We use these class as internal member to support small memory requirements.
- You can create the container if it is neccessary. The class which use these mechanism
+ You can create the container if it is necessary. The class which use these mechanism
is faster and smaller then a complete implementation!
*//*-*************************************************************************************************************/
diff --git a/unotools/source/accessibility/accessiblestatesethelper.cxx b/unotools/source/accessibility/accessiblestatesethelper.cxx
index a165940a18fa..fdcb78ee9f79 100644
--- a/unotools/source/accessibility/accessiblestatesethelper.cxx
+++ b/unotools/source/accessibility/accessiblestatesethelper.cxx
@@ -236,7 +236,7 @@ sal_Bool SAL_CALL AccessibleStateSetHelper::isEmpty ()
the constants of <type>AccessibleStateType</type>.
@return
- Returns <TRUE/> if the given state is a memeber of this object's
+ Returns <TRUE/> if the given state is a member of this object's
state set and <FALSE/> otherwise.
*/
sal_Bool SAL_CALL AccessibleStateSetHelper::contains (sal_Int16 aState)
diff --git a/unotools/source/config/cmdoptions.cxx b/unotools/source/config/cmdoptions.cxx
index fa20f5990d0b..43739a7b37ff 100644
--- a/unotools/source/config/cmdoptions.cxx
+++ b/unotools/source/config/cmdoptions.cxx
@@ -118,7 +118,7 @@ class SvtCmdOptions
//---------------------------------------------------------------------------------------------------------
// convert internal list to external format
- // for using it on right menus realy
+ // for using it on right menus really
// Notice: We build a property list with 4 entries and set it on result list then.
// The while-loop starts with pointer on internal member list lSetupEntries, change to
// lUserEntries then and stop after that with NULL!
@@ -272,7 +272,7 @@ SvtCommandOptions_Impl::SvtCommandOptions_Impl()
: ConfigItem( ROOTNODE_CMDOPTIONS )
// Init member then...
{
- // Get names and values of all accessable menu entries and fill internal structures.
+ // Get names and values of all accessible menu entries and fill internal structures.
// See impl_GetPropertyNames() for further informations.
Sequence< OUString > lNames = impl_GetPropertyNames ();
Sequence< Any > lValues = GetProperties ( lNames );
diff --git a/unotools/source/config/compatibility.cxx b/unotools/source/config/compatibility.cxx
index 99d5d138cef5..ae3cdefb36d1 100644
--- a/unotools/source/config/compatibility.cxx
+++ b/unotools/source/config/compatibility.cxx
@@ -383,7 +383,7 @@ SvtCompatibilityOptions_Impl::SvtCompatibilityOptions_Impl()
: ConfigItem( ROOTNODE_OPTIONS )
// Init member then...
{
- // Get names and values of all accessable menu entries and fill internal structures.
+ // Get names and values of all accessible menu entries and fill internal structures.
// See impl_GetPropertyNames() for further informations.
Sequence< OUString > lNodes;
Sequence< OUString > lNames = impl_GetPropertyNames( lNodes );
diff --git a/unotools/source/config/configitem.cxx b/unotools/source/config/configitem.cxx
index 5dbd32877319..953b50449615 100644
--- a/unotools/source/config/configitem.cxx
+++ b/unotools/source/config/configitem.cxx
@@ -496,7 +496,7 @@ Sequence< sal_Bool > ConfigItem::GetReadOnlyStates(const com::sun::star::uno::Se
sal_Int32 nCount = rNames.getLength();
Sequence< sal_Bool > lStates(nCount);
- // We must be shure to return a valid information everytime!
+ // We must be shure to return a valid information every time!
// Set default to non readonly ... similar to the configuration handling of this property.
for ( i=0; i<nCount; ++i)
lStates[i] = sal_False;
@@ -1165,7 +1165,7 @@ sal_Bool ConfigItem::ReplaceSetProperties(
{
// #i37322#: fallback action: replace with <void/>
xCont->replaceByName(pContainerSubNodes[nContSub], Any());
- // fallback successfull: continue looping
+ // fallback successful: continue looping
continue;
}
catch (Exception &)
diff --git a/unotools/source/config/configmgr.cxx b/unotools/source/config/configmgr.cxx
index 5503cd3f000f..f6cbfaecf3d3 100644
--- a/unotools/source/config/configmgr.cxx
+++ b/unotools/source/config/configmgr.cxx
@@ -266,7 +266,7 @@ Reference< XHierarchicalNameAccess> ConfigManager::AcquireTree(utl::ConfigItem&
pArgs[1] <<= aUpdate;
// Initialize item with support for reading/writing more then one locales at same time!
- // It's neccessary for creation of a complete configuration entry without changing office locale
+ // It's necessary for creation of a complete configuration entry without changing office locale
// at runtime.
if((rCfgItem.GetMode() & CONFIG_MODE_ALL_LOCALES) == CONFIG_MODE_ALL_LOCALES)
{
diff --git a/unotools/source/config/dynamicmenuoptions.cxx b/unotools/source/config/dynamicmenuoptions.cxx
index 9a3ab4a09923..a7490a208424 100644
--- a/unotools/source/config/dynamicmenuoptions.cxx
+++ b/unotools/source/config/dynamicmenuoptions.cxx
@@ -122,7 +122,7 @@ class SvtDynMenu
public:
//---------------------------------------------------------------------------------------------------------
// append setup written menu entry
- // Don't touch name of entry. It was defined by setup and must be the same everytime!
+ // Don't touch name of entry. It was defined by setup and must be the same every time!
// Look for double menu entries here too ... may be some seperator items are supeflous ...
void AppendSetupEntry( const SvtDynMenuEntry& rEntry )
{
@@ -163,7 +163,7 @@ class SvtDynMenu
//---------------------------------------------------------------------------------------------------------
// convert internal list to external format
- // for using it on right menus realy
+ // for using it on right menus really
// Notice: We build a property list with 4 entries and set it on result list then.
// The while-loop starts with pointer on internal member list lSetupEntries, change to
// lUserEntries then and stop after that with NULL!
@@ -410,7 +410,7 @@ SvtDynamicMenuOptions_Impl::SvtDynamicMenuOptions_Impl()
: ConfigItem( ROOTNODE_MENUS )
// Init member then...
{
- // Get names and values of all accessable menu entries and fill internal structures.
+ // Get names and values of all accessible menu entries and fill internal structures.
// See impl_GetPropertyNames() for further informations.
sal_uInt32 nNewCount = 0;
sal_uInt32 nWizardCount = 0;
@@ -453,8 +453,8 @@ SvtDynamicMenuOptions_Impl::SvtDynamicMenuOptions_Impl()
OUString sName ;
// We must use these one instance object(!) to get information about installed modules.
- // These information are used to filter menu entries wich need not installed modules ...
- // Such entries shouldnt be available then!
+ // These information are used to filter menu entries which need not installed modules ...
+ // Such entries shouldn't be available then!
// see impl_IsEntrySupported() too
SvtModuleOptions aModuleOptions;
diff --git a/unotools/source/config/eventcfg.cxx b/unotools/source/config/eventcfg.cxx
index ae305fce5f59..52f8260d5693 100644
--- a/unotools/source/config/eventcfg.cxx
+++ b/unotools/source/config/eventcfg.cxx
@@ -331,7 +331,7 @@ sal_Bool SAL_CALL GlobalEventConfig_Impl::hasByName( const OUString& aName ) thr
Type SAL_CALL GlobalEventConfig_Impl::getElementType( ) throw (RuntimeException)
{
- //DF definitly not sure about this??
+ //DF definitely not sure about this??
return ::getCppuType((const Sequence<beans::PropertyValue>*)0);
}
diff --git a/unotools/source/config/fontcfg.cxx b/unotools/source/config/fontcfg.cxx
index d69479834dc8..ad62eccf6dee 100644
--- a/unotools/source/config/fontcfg.cxx
+++ b/unotools/source/config/fontcfg.cxx
@@ -106,7 +106,7 @@ DefaultFontConfiguration::DefaultFontConfiguration()
{
// get service provider
Reference< XMultiServiceFactory > xSMgr( comphelper::getProcessServiceFactory() );
- // create configuration hierachical access name
+ // create configuration hierarchical access name
if( xSMgr.is() )
{
try
@@ -386,7 +386,7 @@ FontSubstConfiguration::FontSubstConfiguration() :
{
// get service provider
Reference< XMultiServiceFactory > xSMgr( comphelper::getProcessServiceFactory() );
- // create configuration hierachical access name
+ // create configuration hierarchical access name
if( xSMgr.is() )
{
try
diff --git a/unotools/source/config/itemholder1.hxx b/unotools/source/config/itemholder1.hxx
index ef1cf3e92ac9..bfa705b6d735 100644
--- a/unotools/source/config/itemholder1.hxx
+++ b/unotools/source/config/itemholder1.hxx
@@ -35,7 +35,7 @@
// namespaces
#ifdef css
-#error "Cant use css as namespace alias."
+#error "Can't use css as namespace alias."
#else
#define css ::com::sun::star
#endif
diff --git a/unotools/source/config/lingucfg.cxx b/unotools/source/config/lingucfg.cxx
index 1ff1b396b401..b6695d3a1e1c 100644
--- a/unotools/source/config/lingucfg.cxx
+++ b/unotools/source/config/lingucfg.cxx
@@ -1134,7 +1134,7 @@ sal_Bool SvtLinguConfig::GetDictionaryEntry(
DBG_ASSERT( aFormatName.getLength(), "Dictionary format name not set" );
DBG_ASSERT( aLocaleNames.getLength(), "No locales set for the dictionary" );
- // if sucessful continue
+ // if successful continue
if (bSuccess)
{
// get file URL's for the locations
diff --git a/unotools/source/config/moduleoptions.cxx b/unotools/source/config/moduleoptions.cxx
index 15dfd656221e..977fdf42ac8a 100644
--- a/unotools/source/config/moduleoptions.cxx
+++ b/unotools/source/config/moduleoptions.cxx
@@ -63,11 +63,11 @@ namespace css = ::com::sun::star;
//_________________________________________________________________________________________________________________
/*-************************************************************************************************************//**
- @descr These values are used to define neccessary keys from our configuration management to support
+ @descr These values are used to define necessary keys from our configuration management to support
all functionality of these implementation.
It's a fast way to make changes if some keys change his name or location!
- Property handle are neccessary to specify right position in return list of configuration
+ Property handle are necessary to specify right position in return list of configuration
for asked values. We ask it with a list of properties to get his values. The returned list
has the same order like our given name list!
e.g.:
@@ -147,7 +147,7 @@ struct FactoryInfo
//---------------------------------------------------------------------------------------------------------
// returns list of properties, which has changed only!
// We use given value of sNodeBase to build full qualified pathes ...
- // Last sign of it must be "/". Beacuse we use it directly, without any additional things!
+ // Last sign of it must be "/". Because we use it directly, without any additional things!
css::uno::Sequence< css::beans::PropertyValue > getChangedProperties( const ::rtl::OUString& sNodeBase )
{
// a) reserve memory for max. count of changed properties
@@ -443,7 +443,7 @@ class SvtModuleOptions_Impl : public ::utl::ConfigItem
/*-************************************************************************************************************//**
@short default ctor
- @descr We open our configuration here and read all neccessary values from it.
+ @descr We open our configuration here and read all necessary values from it.
These values are cached till everyone call Commit(). Then we write changed ones back to cfg.
@seealso baseclass ConfigItem
@@ -460,7 +460,7 @@ SvtModuleOptions_Impl::SvtModuleOptions_Impl(SvtModuleOptions* pOutsideClass)
, m_bReadOnlyStatesWellKnown( sal_False )
, m_pOutsideClass( pOutsideClass )
{
- // First initialize list of factory infos! Otherwise we couldnt gurantee right working of these class.
+ // First initialize list of factory infos! Otherwise we couldnt guarantee right working of these class.
for( sal_Int32 nFactory=0; nFactory<FACTORYCOUNT; ++nFactory )
m_lFactories[nFactory].free();
@@ -470,7 +470,7 @@ SvtModuleOptions_Impl::SvtModuleOptions_Impl(SvtModuleOptions* pOutsideClass)
impl_Read( lFactories );
// Enable notification for changes by using configuration directly.
- // So we can update our internal values immediatly.
+ // So we can update our internal values immediately.
EnableNotification( lFactories );
}
@@ -541,7 +541,7 @@ void SvtModuleOptions_Impl::Notify( const css::uno::Sequence< ::rtl::OUString >&
void SvtModuleOptions_Impl::Commit()
{
// Reserve memory for ALL possible factory properties!
- // Step over all factories and get her realy changed values only.
+ // Step over all factories and get her really changed values only.
// Build list of these ones and use it for commit.
css::uno::Sequence< css::beans::PropertyValue > lCommitProperties( FACTORYCOUNT*PROPERTYCOUNT );
FactoryInfo* pInfo = NULL ;
@@ -862,7 +862,7 @@ void SvtModuleOptions_Impl::SetFactoryDefaultFilter( SvtModuleOptions::EFa
/*-************************************************************************************************************//**
@short return list of key names of ouer configuration management which represent our module tree
@descr You give use a list of current existing set node names .. and we expand it for all
- well known properties which are neccessary for this implementation.
+ well known properties which are necessary for this implementation.
These full expanded list should be used to get values of this properties.
@seealso ctor
diff --git a/unotools/source/config/pathoptions.cxx b/unotools/source/config/pathoptions.cxx
index d019e27788c4..fff54ac0f776 100644
--- a/unotools/source/config/pathoptions.cxx
+++ b/unotools/source/config/pathoptions.cxx
@@ -397,7 +397,7 @@ OUString SvtPathOptions_Impl::SubstVar( const OUString& rVar ) const
// Convert the returned path to system path!
sal_Bool bConvertLocal = sal_False;
- // Search for first occure of "$(...".
+ // Search for first occur of "$(...".
sal_Int32 nPosition = aWorkText.indexOf( SIGN_STARTVARIABLE ); // = first position of "$(" in string
sal_Int32 nLength = 0; // = count of letters from "$(" to ")" in string
@@ -477,7 +477,7 @@ SvtPathOptions_Impl::SvtPathOptions_Impl() :
UNO_QUERY );
if ( !m_xPathSettings.is() )
{
- // #112719#: check for existance
+ // #112719#: check for existence
DBG_ERROR( "SvtPathOptions_Impl::SvtPathOptions_Impl(): #112719# happened again!" );
throw RuntimeException(
::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Service com.sun.star.util.PathSettings cannot be created" )),
diff --git a/unotools/source/config/viewoptions.cxx b/unotools/source/config/viewoptions.cxx
index 5cb1579b1516..fc9854cd81a2 100644
--- a/unotools/source/config/viewoptions.cxx
+++ b/unotools/source/config/viewoptions.cxx
@@ -122,15 +122,15 @@ sal_Int32 SvtViewOptions::m_nRefCount_Windows = 0
/*-************************************************************************************************************//**
@descr declare one configuration item
These struct hold information about one view item. But not all member are used for all entries!
- User must decide which information are usefull and which not. We are a container iztem only and doesnt
+ User must decide which information are useful and which not. We are a container iztem only and doesn't
know anything about the context.
But; we support a feature:
- decision between items with default values (should not realy exist in configuration!)
- and items with real values - changed by user. So user can suppress saving of realy unused items
+ decision between items with default values (should not really exist in configuration!)
+ and items with real values - changed by user. So user can suppress saving of really unused items
to disk - because; defaulted items could be restored on runtime without reading from disk!!!
And if only items with valid information was written to cfg - we mustn't read so much and save time.
So we start with an member m_bDefault=True and reset it to False after first set-call.
- Deficiencies of these solution - we cant allow direct read/write access to our member. We must
+ Deficiencies of these solution - we can't allow direct read/write access to our member. We must
support it by set/get-methods ...
*//*-*************************************************************************************************************/
class IMPL_TViewData
@@ -277,7 +277,7 @@ typedef ::std::hash_map< ::rtl::OUString ,
@descr Implement base data container for view options elements.
Every item support ALL possible configuration informations.
But not every superclass should use them! Because some view types don't
- have it realy.
+ have it really.
@attention We implement a write-througt-cache! We use it for reading - but write all changes directly to
configuration. (changes are made on internal cache too!). So it's easier to distinguish
@@ -377,8 +377,8 @@ SvtViewOptionsBase_Impl::SvtViewOptionsBase_Impl( const ::rtl::OUString& sList )
@short dtor
@descr clean up something
- @attention We implement a write through cache! So we mustn't do it realy. All changes was written to cfg directly.
- Commit isn't neccessary then.
+ @attention We implement a write through cache! So we mustn't do it really. All changes was written to cfg directly.
+ Commit isn't necessary then.
@seealso baseclass ::utl::ConfigItem
@seealso method IsModified()
@@ -394,7 +394,7 @@ SvtViewOptionsBase_Impl::~SvtViewOptionsBase_Impl()
{
// dont flush configuration changes here to m_xRoot.
// That must be done inside every SetXXX() method already !
- // Here its to late - DisposedExceptions from used configuration access can occure otherwise.
+ // Here its to late - DisposedExceptions from used configuration access can occur otherwise.
m_xRoot.clear();
m_xSet.clear();
diff --git a/unotools/source/misc/sharedunocomponent.cxx b/unotools/source/misc/sharedunocomponent.cxx
index ee3503d2e214..69961771b195 100644
--- a/unotools/source/misc/sharedunocomponent.cxx
+++ b/unotools/source/misc/sharedunocomponent.cxx
@@ -202,7 +202,7 @@ namespace utl
// this should be unreachable: As long as we're a CloseListener, we veto the closing. If we're going
// to close the component ourself, then we revoke ourself as listener *before* the close call. So,
- // if this here fires, something went definately wrong.
+ // if this here fires, something went definitely wrong.
DBG_ERROR( "CloseableComponentImpl::notifyClosing: unreachable!" );
}
diff --git a/unoxml/source/dom/element.cxx b/unoxml/source/dom/element.cxx
index 59a967462580..dcbd7a4bdb8a 100644
--- a/unoxml/source/dom/element.cxx
+++ b/unoxml/source/dom/element.cxx
@@ -218,7 +218,7 @@ namespace DOM
/* this is not relly allowed by the DOM spec, but this
implementation has evidently supported it (by special case
handling, so the attribute does not actually become a child)
- so allow it for backward compatiblity */
+ so allow it for backward compatibility */
return true;
default:
return false;
diff --git a/unoxml/source/rdf/librdf_repository.cxx b/unoxml/source/rdf/librdf_repository.cxx
index 68759e2d4f32..a2a5620fc45e 100644
--- a/unoxml/source/rdf/librdf_repository.cxx
+++ b/unoxml/source/rdf/librdf_repository.cxx
@@ -433,7 +433,7 @@ private:
// storage they point into, so we keep the repository alive here
// also, sequence is important: the stream must be destroyed first.
::rtl::Reference< librdf_Repository > m_xRep;
- // needed for synchronizing access to librdf (it doesnt do win32 threading)
+ // needed for synchronizing access to librdf (it doesn't do win32 threading)
::osl::Mutex & m_rMutex;
// the query (in case this is a result of a graph query)
// not that the redland documentation spells this out explicity, but
@@ -541,7 +541,7 @@ private:
// storage they point into, so we keep the repository alive here
// also, sequence is important: the stream must be destroyed first.
::rtl::Reference< librdf_Repository > m_xRep;
- // needed for synchronizing access to librdf (it doesnt do win32 threading)
+ // needed for synchronizing access to librdf (it doesn't do win32 threading)
::osl::Mutex & m_rMutex;
// not that the redland documentation spells this out explicity, but
// queries must be freed only after all the results are completely read
diff --git a/uui/source/fltdlg.cxx b/uui/source/fltdlg.cxx
index 2907d0d2435e..99402379464c 100644
--- a/uui/source/fltdlg.cxx
+++ b/uui/source/fltdlg.cxx
@@ -55,7 +55,7 @@ namespace uui
/*-************************************************************************************************************//**
@short initialize filter dialog with start values
- @descr We set some neccessary informations on these instance for later working and create internal structures.
+ @descr We set some necessary informations on these instance for later working and create internal structures.
After construction user should call "SetFilters()" and "SetURL()" to fill listbox with selectable filter
names and set file name of file, which should be used for selected filter.
@@ -95,7 +95,7 @@ FilterDialog::FilterDialog( Window* pParentWindow ,
*//*-*************************************************************************************************************/
void FilterDialog::SetURL( const String& sURL )
{
- // convert it and use given pure string as fallback if convertion failed
+ // convert it and use given pure string as fallback if conversion failed
m_ftURL.SetText( impl_buildUIFileName(sURL) );
}
@@ -137,8 +137,8 @@ void FilterDialog::ChangeFilters( const FilterNameList* pFilterNames )
@short ask user for his decision
@descr We show the dialog and if user finish it with "OK" - we try to find selected item in internal saved
name list (which you must set in "ChangeFilters()"!). If we return sal_True as result, you can use out
- parameter "pSelectedItem" as pointer into your FilterNameList to get selected item realy ...
- but if we return sal_False ... user hsa cancel the dialog ... you shouldnt do that. pSelectedItem isnt
+ parameter "pSelectedItem" as pointer into your FilterNameList to get selected item really ...
+ but if we return sal_False ... user hsa cancel the dialog ... you shouldn't do that. pSelectedItem isn't
set to any valid value then. We don't change them ...
@seealso method ChangeFilters()
@@ -146,7 +146,7 @@ void FilterDialog::ChangeFilters( const FilterNameList* pFilterNames )
@param "pSelectedItem", returns result of selection as pointer into set list of filter names
(valid for function return sal_True only!)
@return true => pSelectedItem parameter points into name list and represent use decision
- false => use has cancelled dialog (pSelectedItem isnt valid then!)
+ false => use has cancelled dialog (pSelectedItem isn't valid then!)
@onerror We return false ... but don't change pSelectedItem!
@threadsafe no
@@ -209,7 +209,7 @@ class StringCalculator : public ::cppu::WeakImplHelper1< ::com::sun::star::util:
/*-************************************************************************************************************//**
@short try to build short name of given URL to show it n GUI
- @descr We detect type of given URL automaticly and build this short name depend on this type ...
+ @descr We detect type of given URL automatically and build this short name depend on this type ...
If we couldnt make it right we return full given string without any changes ...
@seealso class LocalFileHelper
@@ -231,7 +231,7 @@ String FilterDialog::impl_buildUIFileName( const String& sName )
}
else
{
- // otherwise its realy a url ... build short name by using INetURLObject
+ // otherwise its really a url ... build short name by using INetURLObject
::com::sun::star::uno::Reference< ::com::sun::star::util::XStringWidth > xStringCalculator( new StringCalculator(&m_ftURL) );
if( xStringCalculator.is() == sal_True )
{
diff --git a/uui/source/iahndl-filter.cxx b/uui/source/iahndl-filter.cxx
index 62f8cfd70bb9..c2acb43a6ac9 100644
--- a/uui/source/iahndl-filter.cxx
+++ b/uui/source/iahndl-filter.cxx
@@ -96,7 +96,7 @@ handleNoSuchFilterRequest_(
uno::Reference< document::XInteractionFilterSelect > xFilterTransport;
getContinuations(rContinuations, &xAbort, &xFilterTransport);
- // check neccessary ressources - if they don't exist - abort or
+ // check necessary ressources - if they don't exist - abort or
// break this operation
if (!xAbort.is())
return;
diff --git a/vbahelper/inc/vbahelper/collectionbase.hxx b/vbahelper/inc/vbahelper/collectionbase.hxx
index 5ff7903ce7f4..9886ab1035c9 100644
--- a/vbahelper/inc/vbahelper/collectionbase.hxx
+++ b/vbahelper/inc/vbahelper/collectionbase.hxx
@@ -61,7 +61,7 @@ public:
/** Container elements will be converted to VBA items on demand.
The initial container contains intermediate objects (e.g. UNO
- objects) which will be converted to VBA items everytime the item is
+ objects) which will be converted to VBA items every time the item is
accessed (e.g. item access method, enumeration). Changes in the
initial container are reflected by the collection.
*/
diff --git a/vbahelper/inc/vbahelper/vbaeventshelperbase.hxx b/vbahelper/inc/vbahelper/vbaeventshelperbase.hxx
index 8d090f4d6eef..998c43c9633e 100644
--- a/vbahelper/inc/vbahelper/vbaeventshelperbase.hxx
+++ b/vbahelper/inc/vbahelper/vbaeventshelperbase.hxx
@@ -130,7 +130,7 @@ protected:
const css::uno::Sequence< css::uno::Any >& rArgs ) throw (css::lang::IllegalArgumentException) = 0;
/** Derived classes may do additional postprocessing. Called even if the
- event handler does not exist, or if an error occured during execution. */
+ event handler does not exist, or if an error occurred during execution. */
virtual void implPostProcessEvent(
EventQueue& rEventQueue,
const EventHandlerInfo& rInfo,
diff --git a/vbahelper/source/msforms/vbacontrol.cxx b/vbahelper/source/msforms/vbacontrol.cxx
index ae1019f0ebf1..0ad81d8512c2 100644
--- a/vbahelper/source/msforms/vbacontrol.cxx
+++ b/vbahelper/source/msforms/vbacontrol.cxx
@@ -271,7 +271,7 @@ ScVbaControl::getControlSource() throw (uno::RuntimeException)
{
// #FIXME I *hate* having these upstream differences
// but this is necessary until I manage to upstream other
-// dependant parts
+// dependent parts
#ifdef VBA_OOBUILD_HACK
rtl::OUString sControlSource;
uno::Reference< form::binding::XBindableValue > xBindable( m_xProps, uno::UNO_QUERY );
diff --git a/vbahelper/source/vbahelper/collectionbase.cxx b/vbahelper/source/vbahelper/collectionbase.cxx
index c4f25531fc21..7eeeb6c05f84 100644
--- a/vbahelper/source/vbahelper/collectionbase.cxx
+++ b/vbahelper/source/vbahelper/collectionbase.cxx
@@ -117,7 +117,7 @@ SequenceToContainer::SequenceToContainer( const ::std::vector< uno::Reference< c
uno::Reference< container::XNamed > xNamed = *aIt;
*pElementName = xNamed->getName();
maElements.push_back( uno::Any( xNamed ) );
- // same name may occur multiple times, VBA returns first occurance
+ // same name may occur multiple times, VBA returns first occurrence
if( maElementMap.count( *pElementName ) == 0 )
maElementMap[ *pElementName ] <<= xNamed;
}
@@ -133,7 +133,7 @@ SequenceToContainer::SequenceToContainer( const ::std::vector< beans::NamedValue
{
*pElementName = aIt->Name;
maElements.push_back( aIt->Value );
- // same name may occur multiple times, VBA returns first occurance
+ // same name may occur multiple times, VBA returns first occurrence
if( maElementMap.count( *pElementName ) == 0 )
maElementMap[ *pElementName ] = aIt->Value;
}
diff --git a/vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm b/vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm
index 39ec4461da92..5f30b34cf7fd 100644
--- a/vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm
+++ b/vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm
@@ -227,12 +227,13 @@ using namespace ::rtl;
[ string beginEditing ];
// add default attributes for whole string
Sequence < PropertyValue > defaultAttributes = [ wrapper accessibleTextAttributes ] -> getDefaultAttributes ( emptySequence );
- [ AquaA11yTextAttributesWrapper applyAttributesFrom: defaultAttributes toString: string forRange: [ origRange rangeValue ] storeDefaultsTo: wrapper getDefaultsFrom: nil ];
+ NSRange offsetRange = NSMakeRange ( 0, len );
+ [ AquaA11yTextAttributesWrapper applyAttributesFrom: defaultAttributes toString: string forRange: offsetRange storeDefaultsTo: wrapper getDefaultsFrom: nil ];
// add attributes for attribute run(s)
while ( currentIndex < endIndex ) {
TextSegment textSegment = [ wrapper accessibleText ] -> getTextAtIndex ( currentIndex, AccessibleTextType::ATTRIBUTE_RUN );
int endOfRange = endIndex > textSegment.SegmentEnd ? textSegment.SegmentEnd : endIndex;
- NSRange rangeForAttributeRun = NSMakeRange ( currentIndex, endOfRange - currentIndex );
+ NSRange rangeForAttributeRun = NSMakeRange ( currentIndex-loc, endOfRange - currentIndex );
// add run attributes
Sequence < PropertyValue > attributes = [ wrapper accessibleTextAttributes ] -> getRunAttributes ( currentIndex, emptySequence );
[ AquaA11yTextAttributesWrapper applyAttributesFrom: attributes toString: string forRange: rangeForAttributeRun storeDefaultsTo: nil getDefaultsFrom: wrapper ];
diff --git a/vcl/aqua/source/a11y/aqua11ytextwrapper.mm b/vcl/aqua/source/a11y/aqua11ytextwrapper.mm
index 1320b09fe27a..616bf084e7b4 100644
--- a/vcl/aqua/source/a11y/aqua11ytextwrapper.mm
+++ b/vcl/aqua/source/a11y/aqua11ytextwrapper.mm
@@ -210,7 +210,11 @@ using namespace ::rtl;
+(id)rangeForPositionAttributeForElement:(AquaA11yWrapper *)wrapper forParameter:(id)point {
NSValue * value = nil;
- sal_Int32 index = [ wrapper accessibleText ] -> getIndexAtPoint ( [ AquaA11yUtil nsPointToVclPoint: point ] );
+ Point aPoint( [ AquaA11yUtil nsPointToVclPoint: point ]);
+ const Point screenPos = [ wrapper accessibleComponent ] -> getLocationOnScreen();
+ aPoint.X -= screenPos.X;
+ aPoint.Y -= screenPos.Y;
+ sal_Int32 index = [ wrapper accessibleText ] -> getIndexAtPoint( aPoint );
if ( index > -1 ) {
value = [ AquaA11yTextWrapper rangeForIndexAttributeForElement: wrapper forParameter: [ NSNumber numberWithLong: index ] ];
}
diff --git a/vcl/aqua/source/a11y/documentfocuslistener.cxx b/vcl/aqua/source/a11y/documentfocuslistener.cxx
index 3fbda71a43ed..b15d4f8fccfe 100644
--- a/vcl/aqua/source/a11y/documentfocuslistener.cxx
+++ b/vcl/aqua/source/a11y/documentfocuslistener.cxx
@@ -65,10 +65,10 @@ void SAL_CALL
DocumentFocusListener::notifyEvent( const AccessibleEventObject& aEvent )
throw( RuntimeException )
{
- switch( aEvent.EventId )
- {
- case AccessibleEventId::STATE_CHANGED:
- try
+ try {
+ switch( aEvent.EventId )
+ {
+ case AccessibleEventId::STATE_CHANGED:
{
sal_Int16 nState = AccessibleStateType::INVALID;
aEvent.NewValue >>= nState;
@@ -76,34 +76,35 @@ DocumentFocusListener::notifyEvent( const AccessibleEventObject& aEvent )
if( AccessibleStateType::FOCUSED == nState )
m_aFocusTracker.setFocusedObject( getAccessible(aEvent) );
}
- catch(IndexOutOfBoundsException e)
- {
- OSL_TRACE("Focused object has invalid index in parent");
- }
break;
- case AccessibleEventId::CHILD:
- {
- Reference< XAccessible > xChild;
- if( (aEvent.OldValue >>= xChild) && xChild.is() )
- detachRecursive(xChild);
+ case AccessibleEventId::CHILD:
+ {
+ Reference< XAccessible > xChild;
+ if( (aEvent.OldValue >>= xChild) && xChild.is() )
+ detachRecursive(xChild);
- if( (aEvent.NewValue >>= xChild) && xChild.is() )
- attachRecursive(xChild);
- }
+ if( (aEvent.NewValue >>= xChild) && xChild.is() )
+ attachRecursive(xChild);
+ }
break;
- case AccessibleEventId::INVALIDATE_ALL_CHILDREN:
- {
- Reference< XAccessible > xAccessible( getAccessible(aEvent) );
- detachRecursive(xAccessible);
- attachRecursive(xAccessible);
- }
-
+ case AccessibleEventId::INVALIDATE_ALL_CHILDREN:
+ {
+ Reference< XAccessible > xAccessible( getAccessible(aEvent) );
+ detachRecursive(xAccessible);
+ attachRecursive(xAccessible);
+ }
OSL_TRACE( "Invalidate all children called\n" );
break;
- default:
- break;
+
+ default:
+ break;
+ }
+ }
+ catch(IndexOutOfBoundsException e)
+ {
+ OSL_TRACE("Focused object has invalid index in parent");
}
}
diff --git a/vcl/aqua/source/app/salinst.cxx b/vcl/aqua/source/app/salinst.cxx
index 5bf7944ce591..819b16263b39 100644
--- a/vcl/aqua/source/app/salinst.cxx
+++ b/vcl/aqua/source/app/salinst.cxx
@@ -303,32 +303,29 @@ void InitSalMain()
// Assign to PATH environment variable
if ( aCmdPath.Len() )
{
- aTmpPath = ByteString( "PATH=" );
- aTmpPath += aCmdPath;
+ aTmpPath = aCmdPath;
if ( aPath.Len() )
aTmpPath += ByteString( DirEntry::GetSearchDelimiter(), RTL_TEXTENCODING_ASCII_US );
aTmpPath += aPath;
- putenv( (char*)aTmpPath.GetBuffer() );
+ setenv( "PATH", aTmpPath.GetBuffer(), TRUE );
}
// Assign to STAR_RESOURCEPATH environment variable
if ( aCmdPath.Len() )
{
- aTmpPath = ByteString( "STAR_RESOURCEPATH=" );
- aTmpPath += aCmdPath;
+ aTmpPath = aCmdPath;
if ( aResPath.Len() )
aTmpPath += ByteString( DirEntry::GetSearchDelimiter(), RTL_TEXTENCODING_ASCII_US );
aTmpPath += aResPath;
- putenv( (char*)aTmpPath.GetBuffer() );
+ setenv( "STAR_RESOURCEPATH", aTmpPath.GetBuffer(), TRUE );
}
// Assign to DYLD_LIBRARY_PATH environment variable
if ( aCmdPath.Len() )
{
- aTmpPath = ByteString( "DYLD_LIBRARY_PATH=" );
- aTmpPath += aCmdPath;
+ aTmpPath = aCmdPath;
if ( aLibPath.Len() )
aTmpPath += ByteString( DirEntry::GetSearchDelimiter(), RTL_TEXTENCODING_ASCII_US );
aTmpPath += aLibPath;
- putenv( (char*)aTmpPath.GetBuffer() );
+ setenv( "DYLD_LIBRARY_PATH", aTmpPath.GetBuffer(), TRUE );
}
}
}
diff --git a/vcl/aqua/source/gdi/atsfonts.cxx b/vcl/aqua/source/gdi/atsfonts.cxx
index ce8d993afbd4..7c6960feda84 100644
--- a/vcl/aqua/source/gdi/atsfonts.cxx
+++ b/vcl/aqua/source/gdi/atsfonts.cxx
@@ -393,7 +393,7 @@ static bool GetDevFontAttributes( ATSUFontID nFontID, ImplDevFontAttributes& rDF
continue;
// heuristic to find the most common font name
- // prefering default language names or even better the names matching to the UI language
+ // preferring default language names or even better the names matching to the UI language
int nNameValue = (eFontNameLanguage==eUILangCode) ? 0 : ((eFontNameLanguage==0) ? -10 : -20);
rtl_TextEncoding eEncoding = RTL_TEXTENCODING_UNICODE;
const int nPlatformEncoding = ((int)eFontNamePlatform << 8) + (int)eFontNameScript;
diff --git a/vcl/aqua/source/gdi/ctfonts.cxx b/vcl/aqua/source/gdi/ctfonts.cxx
index d7f3a2daa801..5ff8c057bc90 100644
--- a/vcl/aqua/source/gdi/ctfonts.cxx
+++ b/vcl/aqua/source/gdi/ctfonts.cxx
@@ -140,6 +140,9 @@ CTTextStyle::CTTextStyle( const ImplFontSelectData& rFSD )
CFDictionarySetValue( mpStyleDict, kCTFontAttributeName, pNewCTFont );
CFRelease( pNewCTFont);
+ // allow delayed setting the font color, i.e. after the text layout
+ CFDictionarySetValue( mpStyleDict, kCTForegroundColorFromContextAttributeName, kCFBooleanTrue );
+
// handle emulation of bold styles if requested and the font that doesn't provide them
if( (pReqFont->meWeight > WEIGHT_MEDIUM)
&& (mpFontData->meWeight <= WEIGHT_MEDIUM)
@@ -176,10 +179,13 @@ void CTTextStyle::GetFontMetric( float fDPIY, ImplFontMetricData& rMetric ) cons
CTFontRef aCTFontRef = (CTFontRef)CFDictionaryGetValue( mpStyleDict, kCTFontAttributeName );
const double fPixelSize = (mfFontScale * fDPIY);
- rMetric.mnAscent = lrint( CTFontGetAscent( aCTFontRef ) * fPixelSize);
+ const CGFloat fAscent = CTFontGetAscent( aCTFontRef );
+ const CGFloat fCapHeight = CTFontGetCapHeight( aCTFontRef );
+ rMetric.mnAscent = lrint( fAscent * fPixelSize);
rMetric.mnDescent = lrint( CTFontGetDescent( aCTFontRef ) * fPixelSize);
- rMetric.mnIntLeading = lrint( CTFontGetLeading( aCTFontRef ) * fPixelSize);
- rMetric.mnExtLeading = 0;
+ rMetric.mnExtLeading = lrint( CTFontGetLeading( aCTFontRef ) * fPixelSize);
+ rMetric.mnIntLeading = lrint( (fAscent - fCapHeight) * fPixelSize);
+
// since ImplFontMetricData::mnWidth is only used for stretching/squeezing fonts
// setting this width to the pixel height of the fontsize is good enough
// it also makes the calculation of the stretch factor simple
@@ -279,21 +285,6 @@ bool CTTextStyle::GetGlyphOutline( sal_GlyphId aGlyphId, basegfx::B2DPolyPolygon
return true;
}
-// -----------------------------------------------------------------------
-
-void CTTextStyle::SetTextColor( const RGBAColor& rColor )
-{
-#if (MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_5)
- CGColorRef pCGColor = CGColorCreateGenericRGB( rColor.GetRed(),
- rColor.GetGreen(), rColor.GetBlue(), rColor.GetAlpha() );
-#else // for builds on OSX 10.4 SDK
- const CGColorSpaceRef pCGColorSpace = GetSalData()->mxRGBSpace;
- CGColorRef pCGColor = CGColorCreate( pCGColorSpace, rColor.AsArray() );
-#endif
- CFDictionarySetValue( mpStyleDict, kCTForegroundColorAttributeName, pCGColor );
- CFRelease( pCGColor);
-}
-
// =======================================================================
CTFontData::CTFontData( const ImplDevFontAttributes& rDFA, sal_IntPtr nFontId )
diff --git a/vcl/aqua/source/gdi/ctfonts.hxx b/vcl/aqua/source/gdi/ctfonts.hxx
index 3ad46e9cb057..c8118dd17b56 100644
--- a/vcl/aqua/source/gdi/ctfonts.hxx
+++ b/vcl/aqua/source/gdi/ctfonts.hxx
@@ -39,7 +39,7 @@ public:
virtual bool GetGlyphBoundRect( sal_GlyphId, Rectangle& ) const;
virtual bool GetGlyphOutline( sal_GlyphId, basegfx::B2DPolyPolygon& ) const;
- virtual void SetTextColor( const RGBAColor& );
+ virtual void SetTextColor( const RGBAColor& ) {}
private:
/// CoreText text style object
diff --git a/vcl/aqua/source/gdi/ctlayout.cxx b/vcl/aqua/source/gdi/ctlayout.cxx
index 88b912f74fc0..aac5e77f8d52 100644
--- a/vcl/aqua/source/gdi/ctlayout.cxx
+++ b/vcl/aqua/source/gdi/ctlayout.cxx
@@ -52,9 +52,8 @@ public:
virtual void Simplify( bool bIsBase );
private:
- const CTTextStyle* const mpTextStyle;
-
// CoreText specific objects
+ CFMutableDictionaryRef mpStyleDict;
CFAttributedStringRef mpAttrString;
CTLineRef mpCTLine;
@@ -67,6 +66,9 @@ private:
// in these cases the font scale becomes something bigger than 1.0
float mfFontScale; // TODO: does CoreText have a font size limit?
+ CGFloat mfFontRotation; // text direction angle (in radians)
+ CGFloat mfFontStretch; // <1.0: font gets squeezed, >1.0: font gets stretched
+
// cached details about the resulting layout
// mutable members since these details are all lazy initialized
mutable double mfCachedWidth; // cached value of resulting typographical width
@@ -79,17 +81,19 @@ private:
// =======================================================================
CTLayout::CTLayout( const CTTextStyle* pTextStyle )
-: mpTextStyle( pTextStyle )
+: mpStyleDict( pTextStyle->GetStyleDict() )
, mpAttrString( NULL )
, mpCTLine( NULL )
, mnCharCount( 0 )
, mnTrailingSpaceCount( 0 )
, mfTrailingSpaceWidth( 0.0 )
, mfFontScale( pTextStyle->mfFontScale )
+, mfFontRotation( pTextStyle->mfFontRotation )
+, mfFontStretch( pTextStyle->mfFontStretch )
, mfCachedWidth( -1 )
, mnBaseAdv( 0 )
{
- CFRetain( mpTextStyle->GetStyleDict() );
+ CFRetain( mpStyleDict );
}
// -----------------------------------------------------------------------
@@ -100,13 +104,14 @@ CTLayout::~CTLayout()
CFRelease( mpCTLine );
if( mpAttrString )
CFRelease( mpAttrString );
- CFRelease( mpTextStyle->GetStyleDict() );
+ CFRelease( mpStyleDict );
}
// -----------------------------------------------------------------------
bool CTLayout::LayoutText( ImplLayoutArgs& rArgs )
{
+ // release an eventual older layout
if( mpAttrString )
CFRelease( mpAttrString );
mpAttrString = NULL;
@@ -114,6 +119,7 @@ bool CTLayout::LayoutText( ImplLayoutArgs& rArgs )
CFRelease( mpCTLine );
mpCTLine = NULL;
+ // initialize the new layout
SalLayout::AdjustLayout( rArgs );
mnCharCount = mnEndCharPos - mnMinCharPos;
@@ -121,9 +127,17 @@ bool CTLayout::LayoutText( ImplLayoutArgs& rArgs )
if( mnCharCount <= 0 )
return false;
- // create the CoreText line layout
+ // prepare the string to be layouted by CoreText
CFStringRef aCFText = CFStringCreateWithCharactersNoCopy( NULL, rArgs.mpStr + mnMinCharPos, mnCharCount, kCFAllocatorNull );
- mpAttrString = CFAttributedStringCreate( NULL, aCFText, mpTextStyle->GetStyleDict() );
+ // #i124375# force soft-hyphen visibility to meet the expectations of Writer+EditEngine
+ if( CFStringFind( aCFText, (CFStringRef)@"\u00AD", 0).length > 0 )
+ {
+ NSString* pDashStr = [(NSString*)aCFText stringByReplacingOccurrencesOfString: @"\u00AD" withString: @"-"];
+ aCFText = CFStringCreateCopy( NULL, (CFStringRef)pDashStr );
+ }
+
+ // create the CoreText line layout using the requested text style
+ mpAttrString = CFAttributedStringCreate( NULL, aCFText, mpStyleDict );
mpCTLine = CTLineCreateWithAttributedString( mpAttrString );
CFRelease( aCFText);
@@ -193,7 +207,7 @@ void CTLayout::AdjustLayout( ImplLayoutArgs& rArgs )
CFRelease( mpCTLine );
CFStringRef aCFText = CFStringCreateWithCharactersNoCopy( NULL, rArgs.mpStr + mnMinCharPos,
mnCharCount - mnTrailingSpaceCount, kCFAllocatorNull );
- CFAttributedStringRef pAttrStr = CFAttributedStringCreate( NULL, aCFText, mpTextStyle->GetStyleDict() );
+ CFAttributedStringRef pAttrStr = CFAttributedStringCreate( NULL, aCFText, mpStyleDict );
mpCTLine = CTLineCreateWithAttributedString( pAttrStr );
CFRelease( aCFText);
CFRelease( pAttrStr );
@@ -237,23 +251,21 @@ void CTLayout::DrawText( SalGraphics& rGraphics ) const
CGContextScaleCTM( rAquaGraphics.mrContext, +mfFontScale, -mfFontScale );
CGContextSetShouldAntialias( rAquaGraphics.mrContext, !rAquaGraphics.mbNonAntialiasedText );
- // Draw the text
+ // set the text transformation (e.g. position)
const Point aVclPos = GetDrawPosition( Point(mnBaseAdv,0) );
CGPoint aTextPos = { +aVclPos.X()/mfFontScale, -aVclPos.Y()/mfFontScale };
- if( mpTextStyle->mfFontRotation != 0.0 )
+ if( mfFontRotation != 0.0 )
{
- const CGFloat fRadians = mpTextStyle->mfFontRotation;
- CGContextRotateCTM( rAquaGraphics.mrContext, +fRadians );
+ CGContextRotateCTM( rAquaGraphics.mrContext, +mfFontRotation );
- const CGAffineTransform aInvMatrix = CGAffineTransformMakeRotation( -fRadians );
+ const CGAffineTransform aInvMatrix = CGAffineTransformMakeRotation( -mfFontRotation );
aTextPos = CGPointApplyAffineTransform( aTextPos, aInvMatrix );
}
CGContextSetTextPosition( rAquaGraphics.mrContext, aTextPos.x, aTextPos.y );
- CTLineDraw( mpCTLine, rAquaGraphics.mrContext );
- // request an update of the changed window area
+ // request an update of the to-be-changed window area
if( rAquaGraphics.IsWindowGraphics() )
{
const CGRect aInkRect = CTLineGetImageBounds( mpCTLine, rAquaGraphics.mrContext );
@@ -261,6 +273,12 @@ void CTLayout::DrawText( SalGraphics& rGraphics ) const
rAquaGraphics.RefreshRect( aRefreshRect );
}
+ // set the text color as fill color (see kCTForegroundColorFromContextAttributeName)
+ CGContextSetFillColor( rAquaGraphics.mrContext, rAquaGraphics.maTextColor.AsArray() );
+
+ // draw the text
+ CTLineDraw( mpCTLine, rAquaGraphics.mrContext );
+
// restore the original graphic context transformations
CGContextRestoreGState( rAquaGraphics.mrContext );
}
@@ -345,12 +363,12 @@ int CTLayout::GetNextGlyphs( int nLen, sal_GlyphId* pOutGlyphIds, Point& rPos, i
// convert glyph details for VCL
*(pOutGlyphIds++) = pCGGlyphIdx[ nSubIndex ];
if( pGlyphAdvances )
- *(pGlyphAdvances++) = pCGGlyphAdvs[ nSubIndex ].width;
+ *(pGlyphAdvances++) = mfFontStretch * pCGGlyphAdvs[ nSubIndex ].width;
if( pCharIndexes )
*(pCharIndexes++) = pCGGlyphStrIdx[ nSubIndex] + mnMinCharPos;
if( !nCount++ ) {
const CGPoint& rCurPos = pCGGlyphPos[ nSubIndex ];
- rPos = GetDrawPosition( Point( mfFontScale * rCurPos.x, mfFontScale * rCurPos.y) );
+ rPos = GetDrawPosition( Point( mfFontScale * mfFontStretch * rCurPos.x, mfFontScale * rCurPos.y) );
}
}
nSubIndex = 0; // prepare for the next glyph run
@@ -433,13 +451,35 @@ int CTLayout::GetTextBreak( long nMaxWidth, long nCharExtra, int nFactor ) const
return STRING_LEN;
CTTypesetterRef aCTTypeSetter = CTTypesetterCreateWithAttributedString( mpAttrString );
- const double fCTMaxWidth = (double)nMaxWidth / (nFactor * mfFontScale);
- CFIndex nIndex = CTTypesetterSuggestClusterBreak( aCTTypeSetter, 0, fCTMaxWidth );
- if( nIndex >= mnCharCount )
- return STRING_LEN;
- nIndex += mnMinCharPos;
- return (int)nIndex;
+ CFIndex nBestGuess = (nCharExtra >= 0) ? 0 : mnCharCount;
+ for( int i = 1; i <= mnCharCount; i *= 2 )
+ {
+ // guess the target width considering char-extra expansion/condensation
+ const long nTargetWidth = nMaxWidth - nBestGuess * nCharExtra;
+ const double fCTMaxWidth = nTargetWidth / (nFactor * mfFontScale);
+ // calculate the breaking index for the guessed target width
+ const CFIndex nNewIndex = CTTypesetterSuggestClusterBreak( aCTTypeSetter, 0, fCTMaxWidth );
+ if( nNewIndex >= mnCharCount ) {
+ CFRelease( aCTTypeSetter );
+ return STRING_LEN;
+ }
+ // check if the original extra-width guess was good
+ if( !nCharExtra )
+ nBestGuess = nNewIndex;
+ if( nBestGuess == nNewIndex )
+ break;
+ // prepare another round for a different number of characters
+ CFIndex nNewGuess = (nNewIndex + nBestGuess + 1) / 2;
+ if( nNewGuess == nBestGuess )
+ nNewGuess += (nNewIndex > nBestGuess) ? +1 : -1;
+ nBestGuess = nNewGuess;
+ }
+
+ // suggest the best fitting cluster break as breaking position
+ CFRelease( aCTTypeSetter );
+ const int nIndex = nBestGuess + mnMinCharPos;
+ return nIndex;
}
// -----------------------------------------------------------------------
diff --git a/vcl/aqua/source/gdi/salgdiutils.cxx b/vcl/aqua/source/gdi/salgdiutils.cxx
index a219609e6e9c..ca120d038644 100644
--- a/vcl/aqua/source/gdi/salgdiutils.cxx
+++ b/vcl/aqua/source/gdi/salgdiutils.cxx
@@ -243,10 +243,13 @@ void AquaSalGraphics::RefreshRect(float lX, float lY, float lWidth, float lHeigh
{
// update a little more around the designated rectangle
// this helps with antialiased rendering
+ // Rounding down x and width can accumulate a rounding error of up to 2
+ // The decrementing of x, the rounding error and the antialiasing border
+ // require that the width and the height need to be increased by four
const Rectangle aVclRect(Point(static_cast<long int>(lX-1),
static_cast<long int>(lY-1) ),
- Size( static_cast<long int>(lWidth+2),
- static_cast<long int>(lHeight+2) ) );
+ Size( static_cast<long int>(lWidth+4),
+ static_cast<long int>(lHeight+4) ) );
mpFrame->maInvalidRect.Union( aVclRect );
}
}
diff --git a/vcl/aqua/source/gdi/salnativewidgets.cxx b/vcl/aqua/source/gdi/salnativewidgets.cxx
index f49e56ba7f78..37d23b5f7161 100644
--- a/vcl/aqua/source/gdi/salnativewidgets.cxx
+++ b/vcl/aqua/source/gdi/salnativewidgets.cxx
@@ -533,7 +533,7 @@ sal_Bool AquaSalGraphics::drawNativeControl(ControlType nType,
HIThemeBackgroundDrawInfo aThemeBackgroundInfo;
aThemeBackgroundInfo.version = 0;
aThemeBackgroundInfo.state = getState( nState );
- aThemeBackgroundInfo.kind = kThemeBrushDialogBackgroundInactive;
+ aThemeBackgroundInfo.kind = kThemeBrushDialogBackgroundActive;
// FIXME: without this magical offset there is a 2 pixel black border on the right and bottom
rc.size.width += 2;
rc.size.height += 2;
diff --git a/vcl/aqua/source/gdi/salprn.cxx b/vcl/aqua/source/gdi/salprn.cxx
index 6bb3a057f59a..ae5edf5d7cc5 100644
--- a/vcl/aqua/source/gdi/salprn.cxx
+++ b/vcl/aqua/source/gdi/salprn.cxx
@@ -312,7 +312,7 @@ static bool getUseNativeDialog()
{
// get service provider
uno::Reference< XMultiServiceFactory > xSMgr( unohelper::GetMultiServiceFactory() );
- // create configuration hierachical access name
+ // create configuration hierarchical access name
if( xSMgr.is() )
{
try
diff --git a/vcl/aqua/source/window/salframeview.mm b/vcl/aqua/source/window/salframeview.mm
index e21727ae3af3..4e0bbd14503f 100644
--- a/vcl/aqua/source/window/salframeview.mm
+++ b/vcl/aqua/source/window/salframeview.mm
@@ -20,7 +20,6 @@
*************************************************************/
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_vcl.hxx"
@@ -37,13 +36,6 @@
#define WHEEL_EVENT_FACTOR 1.5
-// for allowing fullscreen support on deployment targets < OSX 10.7
-#if !defined(MAC_OS_X_VERSION_10_7)
- #define NSWindowCollectionBehaviorFullScreenPrimary (1 << 7)
- #define NSWindowCollectionBehaviorFullScreenAuxiliary (1 << 8)
-// #define NSFullScreenWindowMask (1 << 14)
-#endif
-
static sal_uInt16 ImplGetModifierMask( unsigned int nMask )
{
@@ -80,15 +72,15 @@ static sal_uInt16 ImplMapCharCode( sal_Unicode aCode )
KEY_P, KEY_Q, KEY_R, KEY_S, KEY_T, KEY_U, KEY_V, KEY_W,
KEY_X, KEY_Y, KEY_Z, 0, 0, 0, KEY_TILDE, KEY_BACKSPACE
};
-
+
// Note: the mapping 0x7f should by rights be KEY_DELETE
// however if you press "backspace" 0x7f is reported
// whereas for "delete" 0xf728 gets reported
-
+
// Note: the mapping of 0x19 to KEY_TAB is because for unknown reasons
// tab alone is reported as 0x09 (as expected) but shift-tab is
// reported as 0x19 (end of medium)
-
+
static sal_uInt16 aFunctionKeyCodeMap[ 128 ] =
{
KEY_UP, KEY_DOWN, KEY_LEFT, KEY_RIGHT, KEY_F1, KEY_F2, KEY_F3, KEY_F4,
@@ -108,7 +100,7 @@ static sal_uInt16 ImplMapCharCode( sal_Unicode aCode )
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0
};
-
+
sal_uInt16 nKeyCode = 0;
if( aCode < sizeof( aKeyCodeMap) / sizeof( aKeyCodeMap[0] ) )
nKeyCode = aKeyCodeMap[ aCode ];
@@ -179,7 +171,7 @@ static AquaSalFrame* getMouseContainerFrame()
[pNSWindow performSelector:setRestorable withObject:(id)NO];
}
- return pNSWindow;
+ return (SalFrameWindow*)pNSWindow;
}
-(AquaSalFrame*)getSalFrame
@@ -237,7 +229,7 @@ static AquaSalFrame* getMouseContainerFrame()
static const sal_uLong nGuessDocument = SAL_FRAME_STYLE_MOVEABLE|
SAL_FRAME_STYLE_SIZEABLE|
SAL_FRAME_STYLE_CLOSEABLE;
-
+
if( mpFrame->mpMenu )
mpFrame->mpMenu->setMainMenu();
else if( ! mpFrame->mpParent &&
@@ -489,7 +481,7 @@ static AquaSalFrame* getMouseContainerFrame()
}
// helper class similar to a vos::OGuard for the SalYieldMutex
-// the difference is that it only does tryToAcquire instead of aquire
+// the difference is that it only does tryToAcquire instead of acquire
// so dreaded deadlocks like #i93512# are prevented
class TryGuard
{
@@ -547,7 +539,7 @@ private:
pDispatchFrame = s_pMouseFrame;
else
pDispatchFrame = mpFrame;
-
+
/* #i81645# Cocoa reports mouse events while a button is pressed
to the window in which it was first pressed. This is reasonable and fine and
gets one around most cases where on other platforms one uses CaptureMouse or XGrabPointer,
@@ -560,7 +552,7 @@ private:
// is this event actually inside that NSWindow ?
NSPoint aPt = [NSEvent mouseLocation];
NSRect aFrameRect = [pDispatchFrame->getNSWindow() frame];
-
+
if ( ! NSPointInRect( aPt, aFrameRect ) )
{
// no, it is not
@@ -573,7 +565,7 @@ private:
NSWindow* pWindow = [NSApp makeWindowsPerform: @selector(containsMouse) inOrder: YES];
if( pWindow && [pWindow isMemberOfClass: [SalFrameWindow class]] )
pDispatchFrame = [(SalFrameWindow*)pWindow getSalFrame];
-
+
However if a non SalFrameWindow is on screen (like e.g. the file dialog)
it can be hit with the containsMouse selector, which it doesn't support.
Sadly NSApplication:makeWindowsPerform does not check (for performance reasons
@@ -584,7 +576,7 @@ private:
pDispatchFrame = pMouseFrame;
}
}
-
+
if( pDispatchFrame && AquaSalFrame::isAlive( pDispatchFrame ) )
{
pDispatchFrame->mnLastEventTime = static_cast<sal_uLong>( [pEvent timestamp] * 1000.0 );
@@ -592,7 +584,7 @@ private:
NSPoint aPt = [NSEvent mouseLocation];
pDispatchFrame->CocoaToVCL( aPt );
-
+
sal_uInt16 nModMask = ImplGetModifierMask( [pEvent modifierFlags] );
// #i82284# emulate ctrl left
if( nModMask == KEY_MOD3 && nButton == MOUSE_LEFT )
@@ -611,7 +603,7 @@ private:
// --- RTL --- (mirror mouse pos)
if( Application::GetSettings().GetLayoutRTL() )
aEvent.mnX = pDispatchFrame->maGeometry.nWidth-1-aEvent.mnX;
-
+
pDispatchFrame->CallCallback( nEvent, &aEvent );
}
}
@@ -654,7 +646,7 @@ private:
-(void)mouseEntered: (NSEvent*)pEvent
{
s_pMouseFrame = mpFrame;
-
+
// #i107215# the only mouse events we get when inactive are enter/exit
// actually we would like to have all of them, but better none than some
if( [NSApp isActive] )
@@ -722,7 +714,7 @@ private:
- (void)magnifyWithEvent: (NSEvent*)pEvent
{
YIELD_GUARD;
-
+
// TODO: ?? -(float)magnification;
if( AquaSalFrame::isAlive( mpFrame ) )
{
@@ -761,7 +753,7 @@ private:
NSPoint aPt = [NSEvent mouseLocation];
mpFrame->CocoaToVCL( aPt );
-
+
SalWheelMouseEvent aEvent;
aEvent.mnTime = mpFrame->mnLastEventTime;
aEvent.mnX = static_cast<long>(aPt.x) - mpFrame->maGeometry.nX;
@@ -769,11 +761,11 @@ private:
aEvent.mnCode = ImplGetModifierMask( mpFrame->mnLastModifierFlags );
aEvent.mnCode |= KEY_MOD1; // we want zooming, no scrolling
aEvent.mbDeltaIsPixel = TRUE;
-
+
// --- RTL --- (mirror mouse pos)
if( Application::GetSettings().GetLayoutRTL() )
aEvent.mnX = mpFrame->maGeometry.nWidth-1-aEvent.mnX;
-
+
aEvent.mnDelta = nDeltaZ;
aEvent.mnNotchDelta = (nDeltaZ >= 0) ? +1 : -1;
if( aEvent.mnDelta == 0 )
@@ -796,15 +788,15 @@ private:
- (void)swipeWithEvent: (NSEvent*)pEvent
{
YIELD_GUARD;
-
+
if( AquaSalFrame::isAlive( mpFrame ) )
{
mpFrame->mnLastEventTime = static_cast<sal_uLong>( [pEvent timestamp] * 1000.0 );
mpFrame->mnLastModifierFlags = [pEvent modifierFlags];
-
+
// merge pending scroll wheel events
- float dX = 0.0;
- float dY = 0.0;
+ CGFloat dX = 0.0;
+ CGFloat dY = 0.0;
for(;;)
{
dX += [pEvent deltaX];
@@ -815,25 +807,25 @@ private:
break;
pEvent = pNextEvent;
}
-
+
NSPoint aPt = [NSEvent mouseLocation];
mpFrame->CocoaToVCL( aPt );
-
+
SalWheelMouseEvent aEvent;
aEvent.mnTime = mpFrame->mnLastEventTime;
aEvent.mnX = static_cast<long>(aPt.x) - mpFrame->maGeometry.nX;
aEvent.mnY = static_cast<long>(aPt.y) - mpFrame->maGeometry.nY;
aEvent.mnCode = ImplGetModifierMask( mpFrame->mnLastModifierFlags );
aEvent.mbDeltaIsPixel = TRUE;
-
+
// --- RTL --- (mirror mouse pos)
if( Application::GetSettings().GetLayoutRTL() )
aEvent.mnX = mpFrame->maGeometry.nWidth-1-aEvent.mnX;
-
+
if( dX != 0.0 )
{
aEvent.mnDelta = static_cast<long>(floor(dX));
- aEvent.mnNotchDelta = dX < 0 ? -1 : 1;
+ aEvent.mnNotchDelta = (dX < 0) ? -1 : +1;
if( aEvent.mnDelta == 0 )
aEvent.mnDelta = aEvent.mnNotchDelta;
aEvent.mbHorz = TRUE;
@@ -843,7 +835,7 @@ private:
if( dY != 0.0 && AquaSalFrame::isAlive( mpFrame ))
{
aEvent.mnDelta = static_cast<long>(floor(dY));
- aEvent.mnNotchDelta = dY < 0 ? -1 : 1;
+ aEvent.mnNotchDelta = (dY < 0) ? -1 : +1;
if( aEvent.mnDelta == 0 )
aEvent.mnDelta = aEvent.mnNotchDelta;
aEvent.mbHorz = FALSE;
@@ -856,15 +848,15 @@ private:
-(void)scrollWheel: (NSEvent*)pEvent
{
YIELD_GUARD;
-
+
if( AquaSalFrame::isAlive( mpFrame ) )
{
mpFrame->mnLastEventTime = static_cast<sal_uLong>( [pEvent timestamp] * 1000.0 );
mpFrame->mnLastModifierFlags = [pEvent modifierFlags];
// merge pending scroll wheel events
- float dX = 0.0;
- float dY = 0.0;
+ CGFloat dX = 0.0;
+ CGFloat dY = 0.0;
for(;;)
{
dX += [pEvent deltaX];
@@ -893,11 +885,11 @@ private:
if( dX != 0.0 )
{
aEvent.mnDelta = static_cast<long>(floor(dX));
- aEvent.mnNotchDelta = dX < 0 ? -1 : 1;
+ aEvent.mnNotchDelta = (dX < 0) ? -1 : +1;
if( aEvent.mnDelta == 0 )
aEvent.mnDelta = aEvent.mnNotchDelta;
aEvent.mbHorz = TRUE;
- aEvent.mnScrollLines = dY > 0 ? dX/WHEEL_EVENT_FACTOR : -dX/WHEEL_EVENT_FACTOR;
+ aEvent.mnScrollLines = fabs(dX) / WHEEL_EVENT_FACTOR;
if( aEvent.mnScrollLines == 0 )
aEvent.mnScrollLines = 1;
@@ -906,12 +898,12 @@ private:
if( dY != 0.0 && AquaSalFrame::isAlive( mpFrame ) )
{
aEvent.mnDelta = static_cast<long>(floor(dY));
- aEvent.mnNotchDelta = dY < 0 ? -1 : 1;
+ aEvent.mnNotchDelta = (dY < 0) ? -1 : +1;
if( aEvent.mnDelta == 0 )
aEvent.mnDelta = aEvent.mnNotchDelta;
aEvent.mbHorz = FALSE;
- aEvent.mnScrollLines = dY > 0 ? dY/WHEEL_EVENT_FACTOR : -dY/WHEEL_EVENT_FACTOR;
- if( aEvent.mnScrollLines < 1 )
+ aEvent.mnScrollLines = fabs(dY) / WHEEL_EVENT_FACTOR;
+ if( aEvent.mnScrollLines == 0 )
aEvent.mnScrollLines = 1;
mpFrame->CallCallback( SALEVENT_WHEELMOUSE, &aEvent );
@@ -923,7 +915,7 @@ private:
-(void)keyDown: (NSEvent*)pEvent
{
YIELD_GUARD;
-
+
if( AquaSalFrame::isAlive( mpFrame ) )
{
mpLastEvent = pEvent;
@@ -933,7 +925,7 @@ private:
mpFrame->mnLastEventTime = static_cast<sal_uLong>( [pEvent timestamp] * 1000.0 );
mpFrame->mnLastModifierFlags = [pEvent modifierFlags];
-
+
if( ! [self handleKeyDownException: pEvent] )
{
NSArray* pArray = [NSArray arrayWithObject: pEvent];
@@ -963,7 +955,7 @@ private:
}
unichar keyChar = [pUnmodifiedString characterAtIndex: 0];
sal_uInt16 nKeyCode = ImplMapCharCode( keyChar );
-
+
// Caution: should the table grow to more than 5 or 6 entries,
// we must consider moving it to a kind of hash map
const unsigned int nExceptions = sizeof( aExceptionalKeys ) / sizeof( aExceptionalKeys[0] );
@@ -985,7 +977,7 @@ private:
-(void)flagsChanged: (NSEvent*)pEvent
{
YIELD_GUARD;
-
+
if( AquaSalFrame::isAlive( mpFrame ) )
{
mpFrame->mnLastEventTime = static_cast<sal_uLong>( [pEvent timestamp] * 1000.0 );
@@ -996,7 +988,7 @@ private:
-(void)insertText:(id)aString
{
YIELD_GUARD;
-
+
if( AquaSalFrame::isAlive( mpFrame ) )
{
NSString* pInsert = nil;
@@ -1004,14 +996,14 @@ private:
pInsert = [aString string];
else
pInsert = aString;
-
+
int nLen = 0;
if( pInsert && ( nLen = [pInsert length] ) > 0 )
{
OUString aInsertString( GetOUString( pInsert ) );
// aCharCode initializer is safe since aInsertString will at least contain '\0'
sal_Unicode aCharCode = *aInsertString.getStr();
-
+
if( nLen == 1 &&
aCharCode < 0x80 &&
aCharCode > 0x1f &&
@@ -1023,7 +1015,7 @@ private:
// #i99567#
// find out the unmodified key code
-
+
// sanity check
if( mpLastEvent && ( [mpLastEvent type] == NSKeyDown || [mpLastEvent type] == NSKeyUp ) )
{
@@ -1443,7 +1435,7 @@ private:
mpLastSuperEvent = mpLastEvent;
[NSApp performSelector:@selector(sendSuperEvent:) withObject: mpLastEvent];
mpLastSuperEvent = pLastSuperEvent;
-
+
std::map< NSEvent*, bool >::iterator it = GetSalData()->maKeyEventAnswer.find( mpLastEvent );
if( it != GetSalData()->maKeyEventAnswer.end() )
it->second = true;
@@ -1466,7 +1458,7 @@ private:
-(BOOL)sendKeyToFrameDirect: (sal_uInt16)nKeyCode character: (sal_Unicode)aChar modifiers: (unsigned int)nMod
{
YIELD_GUARD;
-
+
long nRet = 0;
if( AquaSalFrame::isAlive( mpFrame ) )
{
@@ -1551,7 +1543,7 @@ private:
// and b) why we should have a marked range at this point.
if( ! mbInKeyInput )
return NSMakeRange( 0, 0 );
-
+
return [self hasMarkedText] ? mMarkedRange : NSMakeRange( NSNotFound, 0 );
}
@@ -1589,7 +1581,7 @@ private:
{
unsigned int nUnderlineValue;
NSRange effectiveRange;
-
+
effectiveRange = NSMakeRange(i, 1);
nUnderlineValue = [[aString attribute:NSUnderlineStyleAttributeName atIndex:i effectiveRange:&effectiveRange] unsignedIntValue];
diff --git a/vcl/inc/aqua/saldata.hxx b/vcl/inc/aqua/saldata.hxx
index 35f3c1a17408..5c7e0e27be89 100644
--- a/vcl/inc/aqua/saldata.hxx
+++ b/vcl/inc/aqua/saldata.hxx
@@ -84,7 +84,7 @@ struct SalData
SALTIMERPROC mpTimerProc; // timer callback proc
AquaSalInstance *mpFirstInstance; // pointer of first instance
std::list<AquaSalFrame*> maFrames; // list of all frames
- std::hash_set<const AquaSalFrame*,FrameHash> maFrameCheck; // for fast check of frame existance
+ std::hash_set<const AquaSalFrame*,FrameHash> maFrameCheck; // for fast check of frame existence
std::list<AquaSalFrame*> maPresentationFrames; // list of frames in presentation mode
SalObject *mpFirstObject; // pointer of first object window
SalVirtualDevice *mpFirstVD; // first VirDev
diff --git a/vcl/inc/aqua/salgdi.h b/vcl/inc/aqua/salgdi.h
index 47356b1e14b1..a0cc875f78e0 100644
--- a/vcl/inc/aqua/salgdi.h
+++ b/vcl/inc/aqua/salgdi.h
@@ -344,7 +344,7 @@ public:
virtual bool AddTempDevFont( ImplDevFontList*, const String& rFileURL, const String& rFontName );
// CreateFontSubset: a method to get a subset of glyhps of a font
// inside a new valid font file
- // returns TRUE if creation of subset was successfull
+ // returns TRUE if creation of subset was successful
// parameters: rToFile: contains a osl file URL to write the subset to
// pFont: describes from which font to create a subset
// pGlyphIDs: the glyph ids to be extracted
diff --git a/vcl/inc/aqua/salmathutils.hxx b/vcl/inc/aqua/salmathutils.hxx
index 9ce0ff9ee197..b33fcabdd1bd 100644
--- a/vcl/inc/aqua/salmathutils.hxx
+++ b/vcl/inc/aqua/salmathutils.hxx
@@ -34,7 +34,7 @@ extern "C" {
//
// ------------------------------------------------------------------
-// LRectCoor is an abreviation for rectangular coordinates
+// LRectCoor is an abbreviation for rectangular coordinates
// represented as long integers
struct LRectCoor
@@ -50,7 +50,7 @@ struct LRectCoor
//
// ------------------------------------------------------------------
-// LRectCoorVec is an abreviation for vectors in rectangular
+// LRectCoorVec is an abbreviation for vectors in rectangular
// coordinates represented as long integers
typedef struct LRectCoor LRectCoor;
diff --git a/vcl/inc/graphite_cache.hxx b/vcl/inc/graphite_cache.hxx
index 0d297e9d6dea..6b05dec5fb68 100644
--- a/vcl/inc/graphite_cache.hxx
+++ b/vcl/inc/graphite_cache.hxx
@@ -183,7 +183,7 @@ public:
else
{
// the pointers aren't the same, but we might still have the same text in a segment
- // this is expecially needed when editing a large paragraph
+ // this is especially needed when editing a large paragraph
// each edit changes the pointers, but if we don't reuse any segments it gets very
// slow.
rtl::OUString * rope = new rtl::OUString(layoutArgs.mpStr + layoutArgs.mnMinCharPos,
diff --git a/vcl/inc/jobset.h b/vcl/inc/jobset.h
index b5f1a21a225c..fa0091026610 100644
--- a/vcl/inc/jobset.h
+++ b/vcl/inc/jobset.h
@@ -49,7 +49,7 @@
struct ImplJobSetup
{
sal_uInt16 mnRefCount; // RefCount (only independ data)
- sal_uInt16 mnSystem; // Sytem - JOBSETUP_SYSTEM_xxxx
+ sal_uInt16 mnSystem; // System - JOBSETUP_SYSTEM_xxxx
String maPrinterName; // Printer-Name
String maDriver; // Driver-Name
Orientation meOrientation; // Orientation
diff --git a/vcl/inc/os2/salgdi.h b/vcl/inc/os2/salgdi.h
index 873e99e26567..87065fec2194 100644
--- a/vcl/inc/os2/salgdi.h
+++ b/vcl/inc/os2/salgdi.h
@@ -230,7 +230,7 @@ protected:
virtual bool drawAlphaRect( long nX, long nY, long nWidth, long nHeight, sal_uInt8 nTransparency );
public:
- // public SalGraphics methods, the interface to teh independent vcl part
+ // public SalGraphics methods, the interface to the independent vcl part
// get device resolution
virtual void GetResolution( sal_Int32& rDPIX, sal_Int32& rDPIY );
@@ -276,7 +276,7 @@ public:
virtual bool AddTempDevFont( ImplDevFontList*, const String& rFileURL, const String& rFontName );
// CreateFontSubset: a method to get a subset of glyhps of a font
// inside a new valid font file
- // returns TRUE if creation of subset was successfull
+ // returns TRUE if creation of subset was successful
// parameters: rToFile: contains a osl file URL to write the subset to
// pFont: describes from which font to create a subset
// pGlyphIDs: the glyph ids to be extracted
diff --git a/vcl/inc/printerjob.hxx b/vcl/inc/printerjob.hxx
index a33f047c6218..6b7214b0261f 100644
--- a/vcl/inc/printerjob.hxx
+++ b/vcl/inc/printerjob.hxx
@@ -111,7 +111,7 @@ public:
* to named file.
* nMode: only meaningful when saving to file: if nonzero, try
* to impose the mode on the resulting file's inode; for nonexistant
- * files use open, for existant files try a chmod
+ * files use open, for existent files try a chmod
* rJobName: text to appear in the %%Title comment
* rAppName: text to appear in the %%Creator comment
* rSetupData: JobData that apply to this job
diff --git a/vcl/inc/salgdi.hxx b/vcl/inc/salgdi.hxx
index 7b1ad166ca10..cd0c67091713 100644
--- a/vcl/inc/salgdi.hxx
+++ b/vcl/inc/salgdi.hxx
@@ -253,7 +253,7 @@ public:
virtual bool AddTempDevFont( ImplDevFontList*, const String& rFileURL, const String& rFontName ) = 0;
// CreateFontSubset: a method to get a subset of glyhps of a font
// inside a new valid font file
- // returns sal_True if creation of subset was successfull
+ // returns sal_True if creation of subset was successful
// parameters: rToFile: contains a osl file URL to write the subset to
// pFont: describes from which font to create a subset
// pGlyphIDs: the glyph ids to be extracted
diff --git a/vcl/inc/salwtype.hxx b/vcl/inc/salwtype.hxx
index e49680e6df5c..c76301ffea4b 100644
--- a/vcl/inc/salwtype.hxx
+++ b/vcl/inc/salwtype.hxx
@@ -233,7 +233,7 @@ struct SalInputContextChangeEvent
struct SalSurroundingTextRequestEvent
{
UniString maText; // Text
- sal_uLong mnStart; // The beggining index of selected range
+ sal_uLong mnStart; // The beginning index of selected range
sal_uLong mnEnd; // The end index of selected range
};
@@ -244,7 +244,7 @@ struct SalSurroundingTextRequestEvent
// SURROUNDINGTEXTSELECTIONCHANGE
struct SalSurroundingTextSelectionChangeEvent
{
- sal_uLong mnStart; // The beggining index of selected range
+ sal_uLong mnStart; // The beginning index of selected range
sal_uLong mnEnd; // The end index of selected range
};
diff --git a/vcl/inc/unx/XIM.h b/vcl/inc/unx/XIM.h
index 7ed327aa29c1..f67e62bc0761 100644
--- a/vcl/inc/unx/XIM.h
+++ b/vcl/inc/unx/XIM.h
@@ -48,7 +48,7 @@ typedef struct _XIMAnnotation {
} XIMAnnotation;
/*
- XIMUText: XIMText extention for UTF16
+ XIMUText: XIMText extension for UTF16
*/
typedef struct _XIMUnicodeText {
unsigned short length;
diff --git a/vcl/inc/unx/wmadaptor.hxx b/vcl/inc/unx/wmadaptor.hxx
index 17a3f1135b8d..bb3e6502efad 100644
--- a/vcl/inc/unx/wmadaptor.hxx
+++ b/vcl/inc/unx/wmadaptor.hxx
@@ -213,7 +213,7 @@ public:
{ return m_aWMWorkAreas[n]; }
/*
- * attemp to switch the desktop to a certain workarea
+ * attempt to switch the desktop to a certain workarea
* if bConsiderWM is true, then on some WMs the call will not result in any action
*/
void switchToWorkArea( int nWorkArea, bool bConsiderWM = true ) const;
diff --git a/vcl/inc/vcl/lazydelete.hxx b/vcl/inc/vcl/lazydelete.hxx
index 5f49c561e912..8e5177bc257b 100644
--- a/vcl/inc/vcl/lazydelete.hxx
+++ b/vcl/inc/vcl/lazydelete.hxx
@@ -123,7 +123,7 @@ namespace vcl
typedef std::hash_map< sal_IntPtr, unsigned int > PtrToIndexMap;
PtrToIndexMap m_aPtrToIndex;
- /** strict weak ordering funtion to bring objects to be destroyed lazily
+ /** strict weak ordering function to bring objects to be destroyed lazily
in correct order, e.g. for Window objects children before parents
*/
static bool is_less( T* left, T* right );
@@ -204,7 +204,7 @@ namespace vcl
/*
class DeleteOnDeinit matches a similar need as LazyDelete for static objects:
you may not access vcl objects after DeInitVCL has been called this includes their destruction
- therefore disallowing the existance of static vcl object like e.g. a static BitmapEx
+ therefore disallowing the existence of static vcl object like e.g. a static BitmapEx
To work around this use DeleteOnDeinit<BitmapEx> which will allow you to have a static object container,
that will have its contents destroyed on DeinitVCL. The single drawback is that you need to check on the
container object whether it still contains content before actually accessing it.
@@ -251,7 +251,7 @@ namespace vcl
T* get() { return m_pT; }
// set contents, returning old contents
- // ownership is transfered !
+ // ownership is transferred !
T* set( T* i_pNew ) { T* pOld = m_pT; m_pT = i_pNew; return pOld; }
};
diff --git a/vcl/inc/vcl/pdfwriter.hxx b/vcl/inc/vcl/pdfwriter.hxx
index 8c1c9bf4f3a1..dba726a93085 100644
--- a/vcl/inc/vcl/pdfwriter.hxx
+++ b/vcl/inc/vcl/pdfwriter.hxx
@@ -204,7 +204,7 @@ public:
// PDF/A does not allow transparency
Warning_Transparency_Omitted_PDFA,
- // transparent object occured but is only supported since
+ // transparent object occurred but is only supported since
// PDF 1.4
Warning_Transparency_Omitted_PDF13,
@@ -590,7 +590,7 @@ The following structure describes the permissions used in PDF security
bool DisplayPDFDocumentTitle;
PDFPageLayout PageLayout;
bool FirstPageLeft;
- // intially visible page in viewer (starting with 0 for first page)
+ // initially visible page in viewer (starting with 0 for first page)
sal_Int32 InitialPage;
sal_Int32 OpenBookmarkLevels; // -1 means all levels
@@ -687,9 +687,9 @@ The following structure describes the permissions used in PDF security
bool Emit();
/*
- * Get a list of errors that occured during processing
+ * Get a list of errors that occurred during processing
* this should enable the producer to give feedback about
- * any anomalies that might have occured
+ * any anomalies that might have occurred
*/
std::set< ErrorCode > GetErrors();
@@ -1129,7 +1129,7 @@ The following structure describes the permissions used in PDF security
</p>
<p>
- Note: there is always one structural element in existance without having
+ Note: there is always one structural element in existence without having
called <code>BeginStructureElement</code>; this is the root of the structure
tree (called StructTreeRoot). The StructTreeRoot has always the id 0.
</p>
diff --git a/vcl/inc/vcl/ppdparser.hxx b/vcl/inc/vcl/ppdparser.hxx
index 85219d1d48a7..15d1ecfe3907 100644
--- a/vcl/inc/vcl/ppdparser.hxx
+++ b/vcl/inc/vcl/ppdparser.hxx
@@ -301,7 +301,7 @@ class VCL_DLLPUBLIC PPDContext
const PPDParser* m_pParser;
// returns false: check failed, new value is constrained
- // true: check succeded, new value can be set
+ // true: check succeeded, new value can be set
bool checkConstraints( const PPDKey*, const PPDValue*, bool bDoReset );
bool resetValue( const PPDKey*, bool bDefaultable = false );
public:
diff --git a/vcl/inc/vcl/print.hxx b/vcl/inc/vcl/print.hxx
index 138c95077bc1..fca7b27592af 100644
--- a/vcl/inc/vcl/print.hxx
+++ b/vcl/inc/vcl/print.hxx
@@ -202,7 +202,7 @@ public:
// read printer options from configuration, parameter decides whether the set for
// print "to printer" or "to file" should be read.
- // returns true if config was read, false if an error occured
+ // returns true if config was read, false if an error occurred
bool ReadFromConfig( bool bFile );
};
@@ -564,7 +564,7 @@ class VCL_DLLPUBLIC PrinterOptionsHelper
{}
/* process a new set of properties
- * merges changed properties and returns "true" if any occured
+ * merges changed properties and returns "true" if any occurred
* if the optional output set is not NULL then the names of the changed properties are returned
**/
bool processProperties( const com::sun::star::uno::Sequence< com::sun::star::beans::PropertyValue >& i_rNewProp,
diff --git a/vcl/inc/vcl/printerinfomanager.hxx b/vcl/inc/vcl/printerinfomanager.hxx
index be15e2066fcf..a5c423338ac7 100644
--- a/vcl/inc/vcl/printerinfomanager.hxx
+++ b/vcl/inc/vcl/printerinfomanager.hxx
@@ -88,7 +88,7 @@ public:
rtl::OUString m_aComment;
};
protected:
- // needed for checkPrintersChanged: files (not necessarily existant)
+ // needed for checkPrintersChanged: files (not necessarily existent)
// and their last known modification time
struct WatchFile
{
diff --git a/vcl/inc/vcl/salnativewidgets.hxx b/vcl/inc/vcl/salnativewidgets.hxx
index 3b1a534bf2e6..f35659f377c2 100644
--- a/vcl/inc/vcl/salnativewidgets.hxx
+++ b/vcl/inc/vcl/salnativewidgets.hxx
@@ -63,7 +63,7 @@ typedef sal_uInt32 ControlType;
#define CTRL_EDITBOX_NOBORDER 31
// Control that allows text entry
-// ( some systems distingish between single and multi line edit boxes )
+// ( some systems distinguish between single and multi line edit boxes )
#define CTRL_MULTILINE_EDITBOX 32
// Control that pops up a menu,
diff --git a/vcl/inc/vcl/strhelper.hxx b/vcl/inc/vcl/strhelper.hxx
index bc3657b77715..7a85b967d802 100644
--- a/vcl/inc/vcl/strhelper.hxx
+++ b/vcl/inc/vcl/strhelper.hxx
@@ -44,7 +44,7 @@ int VCL_DLLPUBLIC GetCommandLineTokenCount( const ByteString& );
String VCL_DLLPUBLIC WhitespaceToSpace( const String&, sal_Bool bProtect = sal_True );
ByteString VCL_DLLPUBLIC WhitespaceToSpace( const ByteString&, sal_Bool bProtect = sal_True );
-// returns a string with multiple adjacent occurences of whitespace
+// returns a string with multiple adjacent occurrences of whitespace
// converted to a single space. if bProtect is sal_True (nonzero), then
// doublequote, singlequote and singleleftquote protect their respective
// contents
diff --git a/vcl/inc/vcl/window.hxx b/vcl/inc/vcl/window.hxx
index 31e2ea3bee0e..cb5a96d9c073 100644
--- a/vcl/inc/vcl/window.hxx
+++ b/vcl/inc/vcl/window.hxx
@@ -825,7 +825,7 @@ public:
Currently only mouse events get this special treatment.
- Use this sparingly, chances are if you want to use it you're wroking around
+ Use this sparingly, chances are if you want to use it you're working around
the real problem.
@param bCall
diff --git a/vcl/inc/win/salgdi.h b/vcl/inc/win/salgdi.h
index 1fd90df78691..922d06a1746f 100644
--- a/vcl/inc/win/salgdi.h
+++ b/vcl/inc/win/salgdi.h
@@ -260,7 +260,7 @@ private:
bool tryDrawBitmapGdiPlus(const SalTwoRect& rTR, const SalBitmap& rSrcBitmap);
public:
- // public SalGraphics methods, the interface to teh independent vcl part
+ // public SalGraphics methods, the interface to the independent vcl part
// get device resolution
virtual void GetResolution( sal_Int32& rDPIX, sal_Int32& rDPIY );
@@ -306,7 +306,7 @@ public:
virtual bool AddTempDevFont( ImplDevFontList*, const String& rFileURL, const String& rFontName );
// CreateFontSubset: a method to get a subset of glyhps of a font
// inside a new valid font file
- // returns TRUE if creation of subset was successfull
+ // returns TRUE if creation of subset was successful
// parameters: rToFile: contains a osl file URL to write the subset to
// pFont: describes from which font to create a subset
// pGlyphIDs: the glyph ids to be extracted
diff --git a/vcl/os2/source/app/salinst.cxx b/vcl/os2/source/app/salinst.cxx
index b5c41de11e74..936b84b305b1 100644
--- a/vcl/os2/source/app/salinst.cxx
+++ b/vcl/os2/source/app/salinst.cxx
@@ -639,7 +639,7 @@ MRESULT EXPENTRY SalComWndProc( HWND hWnd, ULONG nMsg,
ImplSalYield( (bool)nMP1, (bool) nMP2);
return 0;
// If we get this message, because another GetMessage() call
- // has recieved this message, we must post this message to
+ // has received this message, we must post this message to
// us again, because in the other case we wait forever.
case SAL_MSG_RELEASEWAITYIELD:
{
diff --git a/vcl/os2/source/app/saltimer.cxx b/vcl/os2/source/app/saltimer.cxx
index f266a9476141..b074a098229c 100644
--- a/vcl/os2/source/app/saltimer.cxx
+++ b/vcl/os2/source/app/saltimer.cxx
@@ -109,7 +109,7 @@ void SalTimerProc( HWND, UINT, UINT nId, ULONG )
bool bRecursive = pSalData->mbInTimerProc && (nId != SALTIMERPROC_RECURSIVE);
if ( pSVData->mpSalTimer && ! bRecursive )
{
- // Try to aquire the mutex. If we don't get the mutex then we
+ // Try to acquire the mutex. If we don't get the mutex then we
// try this a short time later again.
if ( ImplSalYieldMutexTryToAcquire() )
{
diff --git a/vcl/os2/source/gdi/salgdi2.cxx b/vcl/os2/source/gdi/salgdi2.cxx
index 1ff6af2b891a..320b23983860 100644
--- a/vcl/os2/source/gdi/salgdi2.cxx
+++ b/vcl/os2/source/gdi/salgdi2.cxx
@@ -617,7 +617,7 @@ SalBitmap* Os2SalGraphics::getBitmap( long nX, long nY, long nDX, long nDY )
HBITMAP hMemBmp = ImplCreateVirDevBitmap( hMemDC, hMemPS, nDX, nDY, 0 );
HBITMAP hMemOld = Ft2SetBitmap( hMemPS, hMemBmp );
- // creation successfull?
+ // creation successful?
if( hMemDC && hMemPS && hMemBmp )
{
POINTL thePoints[ 3 ];
diff --git a/vcl/qa/complex/memCheck/CheckMemoryUsage.java b/vcl/qa/complex/memCheck/CheckMemoryUsage.java
index 62977e04b312..8b1cff59409f 100644
--- a/vcl/qa/complex/memCheck/CheckMemoryUsage.java
+++ b/vcl/qa/complex/memCheck/CheckMemoryUsage.java
@@ -57,7 +57,7 @@ import static org.junit.Assert.*;
* command line tool 'pmap', available on Solaris or Linux. This test will not
* run on Windows.<br>Test procedure: every given document type is searched in
* the source directory
- * Needed paramters:
+ * Needed parameters:
* <ul>
* <li>"TestDocumentPath" - the path where test documents are located.</li>
* <li>"AllowMemoryIncrease" (optional) - the allowed memory increase measured in kByte per exported document. The default is 10 kByte.</li>
diff --git a/vcl/source/app/dbggui.cxx b/vcl/source/app/dbggui.cxx
index e8d914caf858..5d977ea0b74e 100644
--- a/vcl/source/app/dbggui.cxx
+++ b/vcl/source/app/dbggui.cxx
@@ -94,13 +94,13 @@ static const sal_Char* pDbgHelpText[] =
"\n",
"DBG_CHKTHIS( aName, fTest )\n",
"Can be used in methods of the class when constructors and the "
-"desctructor of the class are equiped with the corresponding macros. "
+"desctructor of the class are equipped with the corresponding macros. "
"The first parameter is the registered name, the second parameter is "
"the test function or 0.\n",
"\n",
"DBG_CHKOBJ( pObj, aName, fTest )\n",
"Can be used on instances of a class where the constructors and the "
-"destructor of the class are equiped with the corresponding macros. "
+"destructor of the class are equipped with the corresponding macros. "
"The first parameter is the registered name, the second parameter is "
"the test function or 0.\n",
"\n",
@@ -108,11 +108,11 @@ static const sal_Char* pDbgHelpText[] =
"\n",
"--- Options ---\n",
"This\n",
-"The This pointer is validated. This way all objects that are equiped "
+"The This pointer is validated. This way all objects that are equipped "
"with it can be tested to make sure one is working with existing objects. "
-"This way it's easier to find bugs in case of multiple inheritence, "
+"This way it's easier to find bugs in case of multiple inheritance, "
"alignment or compiler errors. Since almost all standard classes of SV "
-"(String, List, Pen, Brush, Polygon, ...) are equiped with DBG_CHKTHIS() "
+"(String, List, Pen, Brush, Polygon, ...) are equipped with DBG_CHKTHIS() "
"a lot of errors are found, although this test will impact performance "
"accordingly.\n",
"\n",
@@ -131,7 +131,7 @@ static const sal_Char* pDbgHelpText[] =
" account. Therefor each SV program leaves 2 strings and a bitmap behind.\n",
"\n",
"Trace\n",
-"Creation, destruction and usage of objects which are equiped with "
+"Creation, destruction and usage of objects which are equipped with "
"DBG_XTOR is logged.\n",
"\n",
"\n",
@@ -151,7 +151,7 @@ static const sal_Char* pDbgHelpText[] =
"Allocated memory is initialized with 0x77 and free or freed memory "
"is initialized with 0x33. This option has almost no impact on performance "
"and should thus always be enabled during development. This will also "
-"make crashes more often reproducable.\n",
+"make crashes more often reproducible.\n",
"\n",
"Overwrite\n",
"This test check whether writes occur before or after the blocks. Before "
@@ -195,14 +195,14 @@ static const sal_Char* pDbgHelpText[] =
"Memory tests are performed on the entire memory with every new/delet. "
"Warning: this option makes programs very slow and should only be enabled "
"to track memory overwrites. Otherwise it is sufficient to enable "
-"seperate options because (if no leak is present) every detectable "
+"separate options because (if no leak is present) every detectable "
"memory overwrite during run time should be found.\n",
"\n",
"Object Test\n",
"Memory test are performed on the entire memory with every object test. "
"Warning: this option makes programs very slow and should only be enabled "
"to track memory overwrite. Otherwise it is sufficient to enable "
-"seperate options because (if no leak is present) every detectable "
+"separate options because (if no leak is present) every detectable "
"memory overwrite during run time should be found.\n",
"\n",
"Windows 16-bit and debug tests\n",
@@ -232,7 +232,7 @@ static const sal_Char* pDbgHelpText[] =
"exception handler is called.\n",
"\n",
"Dialog\n",
-"FixedTexts, CheckBoxes, TriStateBoxes and RadioButtons are equiped with "
+"FixedTexts, CheckBoxes, TriStateBoxes and RadioButtons are equipped with "
"a different background color to determine the size of the controls. This "
"test also shows whether controls overlap, whether the tab order is correct "
"and whether the mnemonic characters are correctly assigned. With dialogs "
@@ -287,32 +287,32 @@ static const sal_Char* pDbgHelpText[] =
"\n",
"Include ObjectTest filters\n",
"Only classes which contain one of the indicated filters are evaluated with "
-"the object test. Filters are seperated by ';' and are case sensitive. "
+"the object test. Filters are separated by ';' and are case sensitive. "
"Wildcards are not supported. If no text is indicated the filters are not "
"active.\n",
"\n",
"Exclude ObjectTest filters\n",
"Only classes which do not contain one of the indicated filters are evaluated "
-"with the object test. Filters are seperated by ';' and are case sensitive. "
+"with the object test. Filters are separated by ';' and are case sensitive. "
"Wildcards are not supported. If no text is indicated the filters are not "
"active.\n",
"\n",
"Include filters\n",
"Only those texts which include the indicated filters are output. "
-"Filters are seperated by ';' and are case sensitive. "
+"Filters are separated by ';' and are case sensitive. "
"Wildcards are not supported. The filter is used for all output (except for "
"errors). If no text is indicated the filters are not active.\n",
"\n",
"Exclude filters\n",
"Only those texts which do not include the indicated filters are output. "
-"Filters are seperated by ';' and are case sensitive. "
+"Filters are separated by ';' and are case sensitive. "
"Wildcards are not supported. The filter is used for all output (except for "
"errors). If no text is indicated the filters are not active.\n",
"\n",
"Furthermore you can indicate where the data will be output:\n",
"\n",
"None\n",
-"Output is surpressed.\n",
+"Output is suppressed.\n",
"\n",
"File\n",
"Outputi n debug file. Filename can be entered in the Editfield.\n",
diff --git a/vcl/source/app/salvtables.cxx b/vcl/source/app/salvtables.cxx
index 33dd296a08fd..a5f98b6bd1ce 100644
--- a/vcl/source/app/salvtables.cxx
+++ b/vcl/source/app/salvtables.cxx
@@ -37,7 +37,7 @@
#include <vcl/apptypes.hxx>
// this file contains the virtual destructors of the sal interface
-// compilers ususally put their vtables where the destructor is
+// compilers usually put their vtables where the destructor is
ApplicationProperty::~ApplicationProperty()
{
diff --git a/vcl/source/app/svapp.cxx b/vcl/source/app/svapp.cxx
index 78fb40e620f9..d08c34545dc9 100644
--- a/vcl/source/app/svapp.cxx
+++ b/vcl/source/app/svapp.cxx
@@ -1755,7 +1755,7 @@ UnoWrapperBase* Application::GetUnoWrapper( sal_Bool bCreateIfNotExist )
void Application::SetUnoWrapper( UnoWrapperBase* pWrapper )
{
ImplSVData* pSVData = ImplGetSVData();
- DBG_ASSERT( !pSVData->mpUnoWrapper, "SetUnoWrapper: Wrapper allready exists" );
+ DBG_ASSERT( !pSVData->mpUnoWrapper, "SetUnoWrapper: Wrapper already exists" );
pSVData->mpUnoWrapper = pWrapper;
}
@@ -2058,12 +2058,13 @@ sal_Bool Application::IsAccessibilityEnabled()
sal_Bool InitAccessBridge( sal_Bool bShowCancel, sal_Bool &rCancelled )
{
- sal_Bool bRet = true;
+ sal_Bool bRet = sal_True;
+
+ rCancelled = sal_False;
// Disable Java bridge on UNIX and OS/2
#ifndef WNT
(void) bShowCancel; // unsued
- (void) rCancelled; // unused
#else
// Checking HasAtHook() was introduced with IBM's IA2 CWS.
if( HasAtHook() )
diff --git a/vcl/source/app/svdata.cxx b/vcl/source/app/svdata.cxx
index 7325c0976d7b..139c5e689ded 100644
--- a/vcl/source/app/svdata.cxx
+++ b/vcl/source/app/svdata.cxx
@@ -213,7 +213,7 @@ Window* ImplGetDefaultWindow()
// First test if we already have a default window.
// Don't only place a single if..else inside solar mutex lockframe
- // because then we might have to wait for the solar mutex what is not neccessary
+ // because then we might have to wait for the solar mutex what is not necessary
// if we already have a default window.
if ( !pSVData->mpDefaultWin )
@@ -442,7 +442,7 @@ bool ImplInitAccessBridge(sal_Bool bAllowCancel, sal_Bool &rCancelled)
{
rCancelled = sal_False;
- bool bErrorMessage = true;
+ sal_Bool bErrorMessage = sal_True;
// Note:
// if bAllowCancel is sal_True we were called from application startup
@@ -452,13 +452,13 @@ bool ImplInitAccessBridge(sal_Bool bAllowCancel, sal_Bool &rCancelled)
try
{
- bool bSuccess = true;
+ sal_Bool bSuccess = sal_True;
// No error messages when env var is set ..
static const char* pEnv = getenv("SAL_ACCESSIBILITY_ENABLED" );
if( pEnv && *pEnv )
{
- bErrorMessage = false;
+ bErrorMessage = sal_False;
}
ImplSVData* pSVData = ImplGetSVData();
@@ -479,7 +479,7 @@ bool ImplInitAccessBridge(sal_Bool bAllowCancel, sal_Bool &rCancelled)
}
if( !pSVData->mxAccessBridge.is() )
- bSuccess = false;
+ bSuccess = sal_False;
return bSuccess;
#endif
css::uno::Reference< XExtendedToolkit > xToolkit =
@@ -512,7 +512,7 @@ bool ImplInitAccessBridge(sal_Bool bAllowCancel, sal_Bool &rCancelled)
}
if( !pSVData->mxAccessBridge.is() )
- bSuccess = false;
+ bSuccess = sal_False;
}
}
@@ -541,7 +541,7 @@ bool ImplInitAccessBridge(sal_Bool bAllowCancel, sal_Bool &rCancelled)
rCancelled = sal_True;
}
- return false;
+ return sal_False;
}
catch(::com::sun::star::java::JavaVMCreationFailureException&)
@@ -566,7 +566,7 @@ bool ImplInitAccessBridge(sal_Bool bAllowCancel, sal_Bool &rCancelled)
rCancelled = sal_True;
}
- return false;
+ return sal_False;
}
catch(::com::sun::star::java::MissingJavaRuntimeException&)
@@ -591,7 +591,7 @@ bool ImplInitAccessBridge(sal_Bool bAllowCancel, sal_Bool &rCancelled)
rCancelled = sal_True;
}
- return false;
+ return sal_False;
}
catch(::com::sun::star::java::JavaDisabledException&)
@@ -616,7 +616,7 @@ bool ImplInitAccessBridge(sal_Bool bAllowCancel, sal_Bool &rCancelled)
rCancelled = sal_True;
}
- return false;
+ return sal_False;
}
@@ -670,12 +670,12 @@ bool ImplInitAccessBridge(sal_Bool bAllowCancel, sal_Bool &rCancelled)
}
}
- return false;
+ return sal_False;
}
catch (...)
{
- return false;
+ return sal_False;
}
}
diff --git a/vcl/source/app/svmain.cxx b/vcl/source/app/svmain.cxx
index a606de4b6b79..e28de4f30389 100644
--- a/vcl/source/app/svmain.cxx
+++ b/vcl/source/app/svmain.cxx
@@ -632,7 +632,7 @@ void CreateMainLoopThread( oslWorkerFunction pWorker, void * pThreadData )
0, // stacksize 0 means default
_threadmain, // thread worker function
new WorkerThreadData( pWorker, pThreadData ), // arguments for worker function
- 0, // 0 means: create immediatly otherwise use CREATE_SUSPENDED
+ 0, // 0 means: create immediately otherwise use CREATE_SUSPENDED
&uThreadID ); // thread id to fill
#else
hThreadID = osl_createThread( MainWorkerFunction, new WorkerThreadData( pWorker, pThreadData ) );
diff --git a/vcl/source/control/button.cxx b/vcl/source/control/button.cxx
index f8dfb5c7bddd..01005004ccdd 100644
--- a/vcl/source/control/button.cxx
+++ b/vcl/source/control/button.cxx
@@ -514,7 +514,7 @@ void Button::ImplDrawAlignedImage( OutputDevice* pDev, Point& rPos,
aMax.Width() = aTSSize.Width() > aImageSize.Width() ? aTSSize.Width() : aImageSize.Width();
aMax.Height() = aTSSize.Height() > aImageSize.Height() ? aTSSize.Height() : aImageSize.Height();
- // Now calculate the output area for the image and the text acording to the image align flags
+ // Now calculate the output area for the image and the text according to the image align flags
if ( ( eImageAlign == IMAGEALIGN_LEFT ) ||
( eImageAlign == IMAGEALIGN_RIGHT ) )
diff --git a/vcl/source/control/ilstbox.cxx b/vcl/source/control/ilstbox.cxx
index 2d62ed10f23c..3ad040b303a0 100644
--- a/vcl/source/control/ilstbox.cxx
+++ b/vcl/source/control/ilstbox.cxx
@@ -230,8 +230,8 @@ sal_uInt16 ImplEntryList::InsertEntry( sal_uInt16 nPos, ImplEntryType* pNewEntry
}
catch (uno::RuntimeException& )
{
- // XXX this is arguable, if the exception occured because pNewEntry is
- // garbage you wouldn't insert it. If the exception occured because the
+ // XXX this is arguable, if the exception occurred because pNewEntry is
+ // garbage you wouldn't insert it. If the exception occurred because the
// Collator implementation is garbage then give the user a chance to see
// his stuff
Insert( pNewEntry, (sal_uLong)0 );
@@ -745,7 +745,7 @@ void ImplListBoxWindow::ImplCallSelect()
{
if ( !IsTravelSelect() && GetEntryList()->GetMaxMRUCount() )
{
- // Insert the selected entry as MRU, if not allready first MRU
+ // Insert the selected entry as MRU, if not already first MRU
sal_uInt16 nSelected = GetEntryList()->GetSelectEntryPos( 0 );
sal_uInt16 nMRUCount = GetEntryList()->GetMRUCount();
String aSelected = GetEntryList()->GetEntryText( nSelected );
diff --git a/vcl/source/control/scrbar.cxx b/vcl/source/control/scrbar.cxx
index 4f75b6641ec3..d2b76596f14c 100644
--- a/vcl/source/control/scrbar.cxx
+++ b/vcl/source/control/scrbar.cxx
@@ -354,18 +354,33 @@ void ScrollBar::ImplCalc( sal_Bool bUpdate )
}
else
{
- Size aBtnSize( aSize.Height(), aSize.Height() );
- maBtn2Rect.Top() = maBtn1Rect.Top();
- maBtn2Rect.Left() = aSize.Width()-aSize.Height();
- maBtn1Rect.SetSize( aBtnSize );
- maBtn2Rect.SetSize( aBtnSize );
+ if (aBtn1Region.IsEmpty() && aBtn2Region.IsEmpty())
+ {
+ Size aBtnSize( aSize.Height(), aSize.Height() );
+ maBtn2Rect.Top() = maBtn1Rect.Top();
+ maBtn2Rect.Left() = aSize.Width()-aSize.Height();
+ maBtn1Rect.SetSize( aBtnSize );
+ maBtn2Rect.SetSize( aBtnSize );
+ }
+ else
+ {
+ maBtn1Rect.SetEmpty();
+ maBtn2Rect.SetEmpty();
+ }
}
if ( GetNativeControlRegion( CTRL_SCROLLBAR, PART_TRACK_HORZ_AREA,
aControlRegion, 0, ImplControlValue(), rtl::OUString(), aBoundingRegion, aTrackRegion ) )
+ {
maTrackRect = aTrackRegion;
+ }
else
- maTrackRect = Rectangle( maBtn1Rect.TopRight(), maBtn2Rect.BottomLeft() );
+ {
+ if ( ! maBtn1Rect.IsEmpty())
+ maTrackRect = Rectangle( maBtn1Rect.TopRight(), maBtn2Rect.BottomLeft() );
+ else
+ maTrackRect = aControlRegion;
+ }
// Check if available space is big enough for thumb ( min thumb size = ScrBar width/height )
mnThumbPixRange = maTrackRect.Right() - maTrackRect.Left();
@@ -395,18 +410,31 @@ void ScrollBar::ImplCalc( sal_Bool bUpdate )
}
else
{
- const Size aBtnSize( aSize.Width(), aSize.Width() );
- maBtn2Rect.Left() = maBtn1Rect.Left();
- maBtn2Rect.Top() = aSize.Height()-aSize.Width();
- maBtn1Rect.SetSize( aBtnSize );
- maBtn2Rect.SetSize( aBtnSize );
+ if (aBtn1Region.IsEmpty() && aBtn2Region.IsEmpty())
+ {
+ const Size aBtnSize( aSize.Width(), aSize.Width() );
+ maBtn2Rect.Left() = maBtn1Rect.Left();
+ maBtn2Rect.Top() = aSize.Height()-aSize.Width();
+ maBtn1Rect.SetSize( aBtnSize );
+ maBtn2Rect.SetSize( aBtnSize );
+ }
+ else
+ {
+ maBtn1Rect.SetEmpty();
+ maBtn2Rect.SetEmpty();
+ }
}
if ( GetNativeControlRegion( CTRL_SCROLLBAR, PART_TRACK_VERT_AREA,
aControlRegion, 0, ImplControlValue(), rtl::OUString(), aBoundingRegion, aTrackRegion ) )
maTrackRect = aTrackRegion;
else
- maTrackRect = Rectangle( maBtn1Rect.BottomLeft()+Point(0,1), maBtn2Rect.TopRight() );
+ {
+ if ( ! maBtn1Rect.IsEmpty())
+ maTrackRect = Rectangle( maBtn1Rect.BottomLeft()+Point(0,1), maBtn2Rect.TopRight() );
+ else
+ maTrackRect = aControlRegion;
+ }
// Check if available space is big enough for thumb
mnThumbPixRange = maTrackRect.Bottom() - maTrackRect.Top();
diff --git a/vcl/source/fontsubset/sft.cxx b/vcl/source/fontsubset/sft.cxx
index cc695852bf24..5a4e65263b58 100644
--- a/vcl/source/fontsubset/sft.cxx
+++ b/vcl/source/fontsubset/sft.cxx
@@ -1179,7 +1179,7 @@ static void GetNames(TrueTypeFont *t)
/* #i60349# sanity check psname
* psname parctically has to be 7bit ascii and should not contains spaces
- * there is a class of broken fonts which do not fullfill that at all, so let's try
+ * there is a class of broken fonts which do not fulfill that at all, so let's try
* if the family name is 7bit ascii and take it instead if so
*/
/* check psname */
diff --git a/vcl/source/gdi/bitmapex.cxx b/vcl/source/gdi/bitmapex.cxx
index c0494b2c9ff9..5e4d6005006a 100644
--- a/vcl/source/gdi/bitmapex.cxx
+++ b/vcl/source/gdi/bitmapex.cxx
@@ -1002,7 +1002,7 @@ BitmapEx BitmapEx::getTransformed(
// aOutlineRange
aTransform = rTransformation * aTransform;
- // substract top-left of absolute VisibleRange
+ // subtract top-left of absolute VisibleRange
aTransform.translate(
-aVisibleRange.getMinX(),
-aVisibleRange.getMinY());
diff --git a/vcl/source/gdi/cvtsvm.cxx b/vcl/source/gdi/cvtsvm.cxx
index d78cfc77aa48..998ca97ca8dd 100644
--- a/vcl/source/gdi/cvtsvm.cxx
+++ b/vcl/source/gdi/cvtsvm.cxx
@@ -1376,7 +1376,7 @@ void SVMConverter::ImplConvertFromSVM1( SvStream& rIStm, GDIMetaFile& rMtf )
}
}
- // cleanup push-pop stack if neccessary
+ // cleanup push-pop stack if necessary
for( void* pLineInfo = aLIStack.Pop(); pLineInfo; pLineInfo = aLIStack.Pop() )
delete (LineInfo*) pLineInfo;
@@ -1421,7 +1421,7 @@ void SVMConverter::ImplConvertToSVM1( SvStream& rOStm, GDIMetaFile& rMtf )
rOStm.Seek( nActPos );
rOStm.SetNumberFormatInt( nOldFormat );
- // cleanup push-pop stack if neccessary
+ // cleanup push-pop stack if necessary
for( void* pCol = aLineColStack.Pop(); pCol; pCol = aLineColStack.Pop() )
delete (Color*) pCol;
}
diff --git a/vcl/source/gdi/dibtools.cxx b/vcl/source/gdi/dibtools.cxx
index 2e7d698ba87d..503ccf902d5c 100755
--- a/vcl/source/gdi/dibtools.cxx
+++ b/vcl/source/gdi/dibtools.cxx
@@ -390,7 +390,11 @@ void ImplDecodeRLE( sal_uInt8* pBuffer, DIBV5Header& rHeader, BitmapWriteAccess&
bool ImplReadDIBBits(SvStream& rIStm, DIBV5Header& rHeader, BitmapWriteAccess& rAcc, BitmapWriteAccess* pAccAlpha, bool bTopDown, bool& rAlphaUsed)
{
- const sal_uLong nAlignedWidth = AlignedWidth4Bytes(rHeader.nWidth * rHeader.nBitCount);
+ const sal_Int64 nBitsPerLine (static_cast<sal_Int64>(rHeader.nWidth) * static_cast<sal_Int64>(rHeader.nBitCount));
+ if (nBitsPerLine > SAL_MAX_UINT32)
+ return false;
+
+ const sal_uLong nAlignedWidth = AlignedWidth4Bytes(static_cast<sal_uLong>(nBitsPerLine));
sal_uInt32 nRMask(( rHeader.nBitCount == 16 ) ? 0x00007c00UL : 0x00ff0000UL);
sal_uInt32 nGMask(( rHeader.nBitCount == 16 ) ? 0x000003e0UL : 0x0000ff00UL);
sal_uInt32 nBMask(( rHeader.nBitCount == 16 ) ? 0x0000001fUL : 0x000000ffUL);
@@ -611,11 +615,21 @@ bool ImplReadDIBBody( SvStream& rIStm, Bitmap& rBmp, Bitmap* pBmpAlpha, sal_uLon
{
DIBV5Header aHeader;
const sal_uLong nStmPos = rIStm.Tell();
- bool bRet(false);
- bool bTopDown(false);
+ bool bRet( false );
+ bool bTopDown( false );
- if(ImplReadDIBInfoHeader(rIStm, aHeader, bTopDown) && aHeader.nWidth && aHeader.nHeight && aHeader.nBitCount)
+ if ( ImplReadDIBInfoHeader( rIStm, aHeader, bTopDown )
+ && aHeader.nWidth != 0
+ && aHeader.nHeight != 0
+ && aHeader.nBitCount != 0 )
{
+ if ( nOffset > 0 && aHeader.nSize > nOffset )
+ {
+ // Header size claims to extend into the image data.
+ // Looks like an error.
+ return false;
+ }
+
const sal_uInt16 nBitCount(discretizeBitcount(aHeader.nBitCount));
const Size aSizePixel(aHeader.nWidth, aHeader.nHeight);
BitmapPalette aDummyPal;
@@ -764,14 +778,18 @@ bool ImplReadDIBBody( SvStream& rIStm, Bitmap& rBmp, Bitmap* pBmpAlpha, sal_uLon
bool ImplReadDIBFileHeader( SvStream& rIStm, sal_uLong& rOffset )
{
- sal_uInt32 nTmp32;
- sal_uInt16 nTmp16 = 0;
- bool bRet = false;
+ bool bRet = false;
+ const sal_Int64 nSavedStreamPos( rIStm.Tell() );
+ const sal_Int64 nStreamLength( rIStm.Seek( STREAM_SEEK_TO_END ) );
+ rIStm.Seek( nSavedStreamPos );
+
+ sal_uInt16 nTmp16 = 0;
rIStm >> nTmp16;
if ( ( 0x4D42 == nTmp16 ) || ( 0x4142 == nTmp16 ) )
{
+ sal_uInt32 nTmp32;
if ( 0x4142 == nTmp16 )
{
rIStm.SeekRel( 12L );
@@ -788,6 +806,14 @@ bool ImplReadDIBFileHeader( SvStream& rIStm, sal_uLong& rOffset )
rOffset = nTmp32 - 14UL; // adapt offset by sizeof(BITMAPFILEHEADER)
bRet = ( rIStm.GetError() == 0UL );
}
+
+ if ( rOffset >= nStreamLength )
+ {
+ // Offset claims that image starts past the end of the
+ // stream. Unlikely.
+ rIStm.SetError( SVSTREAM_FILEFORMAT_ERROR );
+ bRet = false;
+ }
}
else
rIStm.SetError( SVSTREAM_FILEFORMAT_ERROR );
diff --git a/vcl/source/gdi/gdimtf.cxx b/vcl/source/gdi/gdimtf.cxx
index 68870d8486a4..a6dd49f366d2 100644
--- a/vcl/source/gdi/gdimtf.cxx
+++ b/vcl/source/gdi/gdimtf.cxx
@@ -3095,7 +3095,7 @@ sal_Bool GDIMetaFile::CreateThumbnail( sal_uInt32 nMaximumExtent,
const_cast<GDIMetaFile *>(this)->WindStart();
const_cast<GDIMetaFile *>(this)->Play( &aVDev, aBackPosPix, aDrawSize );
- // draw overlay if neccessary
+ // draw overlay if necessary
if ( pOverlay )
aVDev.DrawBitmapEx( aOverlayRect.TopLeft(), aOverlayRect.GetSize(), *pOverlay );
diff --git a/vcl/source/gdi/outdev2.cxx b/vcl/source/gdi/outdev2.cxx
index f13620ad49df..3b442d867625 100644
--- a/vcl/source/gdi/outdev2.cxx
+++ b/vcl/source/gdi/outdev2.cxx
@@ -825,8 +825,11 @@ void OutputDevice::DrawTransformedBitmapEx(
{
// with no rotation, shear or mirroring it can be mapped to DrawBitmapEx
// do *not* execute the mirroring here, it's done in the fallback
+ // #124580# the correct DestSize needs to be calculated based on MaxXY values
const Point aDestPt(basegfx::fround(aTranslate.getX()), basegfx::fround(aTranslate.getY()));
- const Size aDestSize(basegfx::fround(aScale.getX()), basegfx::fround(aScale.getY()));
+ const Size aDestSize(
+ basegfx::fround(aScale.getX() + aTranslate.getX()) - aDestPt.X(),
+ basegfx::fround(aScale.getY() + aTranslate.getY()) - aDestPt.Y());
DrawBitmapEx(aDestPt, aDestSize, rBitmapEx);
return;
@@ -879,8 +882,11 @@ void OutputDevice::DrawTransformedBitmapEx(
{
// with no rotation or shear it can be mapped to DrawBitmapEx
// do *not* execute the mirroring here, it's done in the fallback
+ // #124580# the correct DestSize needs to be calculated based on MaxXY values
const Point aDestPt(basegfx::fround(aTranslate.getX()), basegfx::fround(aTranslate.getY()));
- const Size aDestSize(basegfx::fround(aScale.getX()), basegfx::fround(aScale.getY()));
+ const Size aDestSize(
+ basegfx::fround(aScale.getX() + aTranslate.getX()) - aDestPt.X(),
+ basegfx::fround(aScale.getY() + aTranslate.getY()) - aDestPt.Y());
DrawBitmapEx(aDestPt, aDestSize, rBitmapEx);
return;
@@ -1016,8 +1022,11 @@ void OutputDevice::DrawTransformedBitmapEx(
aTargetRange.getMinimum()));
// extract point and size; do not remove size, the bitmap may have been prepared reduced by purpose
+ // #124580# the correct DestSize needs to be calculated based on MaxXY values
const Point aDestPt(basegfx::fround(aVisibleRange.getMinX()), basegfx::fround(aVisibleRange.getMinY()));
- const Size aDestSize(basegfx::fround(aVisibleRange.getWidth()), basegfx::fround(aVisibleRange.getHeight()));
+ const Size aDestSize(
+ basegfx::fround(aVisibleRange.getMaxX()) - aDestPt.X(),
+ basegfx::fround(aVisibleRange.getMaxY()) - aDestPt.Y());
DrawBitmapEx(aDestPt, aDestSize, aTransformed);
}
diff --git a/vcl/source/gdi/outdev3.cxx b/vcl/source/gdi/outdev3.cxx
index cb65e9d8e001..2657f23e4970 100644
--- a/vcl/source/gdi/outdev3.cxx
+++ b/vcl/source/gdi/outdev3.cxx
@@ -6043,14 +6043,6 @@ SalLayout* OutputDevice::ImplLayout( const String& rOrigStr,
ImplLayoutArgs aLayoutArgs = ImplPrepareLayoutArgs( aStr, nMinIndex, nLen, nPixelWidth, pDXArray );
-#ifdef MACOSX
- // CoreText layouts are immutable and already contain the text color
- // so we need to provide the color already for the layout request
- // even if this layout will never be drawn
- if( mbInitTextColor )
- const_cast<OutputDevice&>(*this).ImplInitTextColor();
-#endif
-
// get matching layout object for base font
SalLayout* pSalLayout = NULL;
if( mpPDFWriter )
diff --git a/vcl/source/gdi/outdev4.cxx b/vcl/source/gdi/outdev4.cxx
index 373b367c4dcd..95e2600328be 100644
--- a/vcl/source/gdi/outdev4.cxx
+++ b/vcl/source/gdi/outdev4.cxx
@@ -754,7 +754,7 @@ void OutputDevice::DrawGradient( const Rectangle& rRect,
mbInitFillColor = sal_True;
- // calculate step count if neccessary
+ // calculate step count if necessary
if ( !aGradient.GetSteps() )
aGradient.SetSteps( GRADIENT_DEFAULT_STEPCOUNT );
@@ -919,7 +919,7 @@ void OutputDevice::DrawGradient( const PolyPolygon& rPolyPoly,
mbInitFillColor = sal_True;
- // calculate step count if neccessary
+ // calculate step count if necessary
if ( !aGradient.GetSteps() )
aGradient.SetSteps( GRADIENT_DEFAULT_STEPCOUNT );
@@ -1028,7 +1028,7 @@ void OutputDevice::AddGradientActions( const Rectangle& rRect, const Gradient& r
aRect.Right()++;
aRect.Bottom()++;
- // calculate step count if neccessary
+ // calculate step count if necessary
if ( !aGradient.GetSteps() )
aGradient.SetSteps( GRADIENT_DEFAULT_STEPCOUNT );
diff --git a/vcl/source/gdi/outdev6.cxx b/vcl/source/gdi/outdev6.cxx
index fa097c846a45..59070d06269b 100644
--- a/vcl/source/gdi/outdev6.cxx
+++ b/vcl/source/gdi/outdev6.cxx
@@ -241,7 +241,7 @@ void OutputDevice::DrawTransparent( const PolyPolygon& rPolyPoly,
return;
}
- // short circut for drawing an invisible polygon
+ // short circuit for drawing an invisible polygon
if( !mbFillColor || (nTransparencePercent >= 100) )
{
// short circuit if the polygon border is invisible too
@@ -682,7 +682,7 @@ void OutputDevice::DrawTransparent( const GDIMetaFile& rMtf, const Point& rPos,
if(GetAntialiasing())
{
// #i102109#
- // For MetaFile replay (see task) it may now be neccessary to take
+ // For MetaFile replay (see task) it may now be necessary to take
// into account that the content is AntiAlialised and needs to be masked
// like that. Instead of masking, i will use a copy-modify-paste cycle
// here (as i already use in the VclPrimiziveRenderer with successs)
diff --git a/vcl/source/gdi/pdfwriter_impl.cxx b/vcl/source/gdi/pdfwriter_impl.cxx
index cbc088ee1b7f..dffa0cd8db81 100644
--- a/vcl/source/gdi/pdfwriter_impl.cxx
+++ b/vcl/source/gdi/pdfwriter_impl.cxx
@@ -4302,7 +4302,7 @@ bool PDFWriterImpl::emitFonts()
if( ((++ni) & 7) == 0 )
aFontDict.append( '\n' );
}
- // emit builtin font for widget apperances / variable text
+ // emit builtin font for widget appearances / variable text
for( std::map< sal_Int32, sal_Int32 >::iterator it = m_aBuiltinFontToObjectMap.begin();
it != m_aBuiltinFontToObjectMap.end(); ++it )
{
@@ -4731,7 +4731,7 @@ we check in the following sequence:
}
else
{
-// change the fragment to accomodate the bookmark (only if the file extension is PDF and
+// change the fragment to accommodate the bookmark (only if the file extension is PDF and
// the requested action is of the correct type)
if(m_aContext.DefaultLinkAction == PDFWriter::URIActionDestination &&
bTargetHasPDFExtension && aFragment.getLength() > 0 )
@@ -6157,7 +6157,7 @@ sal_Int32 PDFWriterImpl::emitNamedDestinations()
aLine.append( '/' );
appendDestinationName( aName, aLine ); // this conversion must be done when forming the link to target ( see in emitCatalog )
aLine.append( '[' ); // the '[' can be emitted immediately, because the appendDestinationName function
- //maps the preceeding character properly
+ //maps the preceding character properly
aLine.append( rDestPage.m_nPageObject );
aLine.append( " 0 R" );
diff --git a/vcl/source/gdi/pdfwriter_impl.hxx b/vcl/source/gdi/pdfwriter_impl.hxx
index 889dc4aa5ef7..20a216cf987d 100644
--- a/vcl/source/gdi/pdfwriter_impl.hxx
+++ b/vcl/source/gdi/pdfwriter_impl.hxx
@@ -964,7 +964,7 @@ i12626
sal_Int32 updateOutlineItemCount( std::vector< sal_Int32 >& rCounts,
sal_Int32 nItemLevel,
sal_Int32 nCurrentItemId );
- // default appearences for widgets
+ // default appearances for widgets
sal_Int32 findRadioGroupWidget( const PDFWriter::RadioButtonWidget& rRadio );
Font replaceFont( const Font& rControlFont, const Font& rAppSetFont );
sal_Int32 getBestBuiltinFont( const Font& rFont );
diff --git a/vcl/source/gdi/pdfwriter_impl2.cxx b/vcl/source/gdi/pdfwriter_impl2.cxx
index 3eb610866b5f..4359d4186bce 100644
--- a/vcl/source/gdi/pdfwriter_impl2.cxx
+++ b/vcl/source/gdi/pdfwriter_impl2.cxx
@@ -104,7 +104,7 @@ void PDFWriterImpl::implWriteBitmapEx( const Point& i_rPoint, const Size& i_rSiz
}
if( i_rContext.m_nMaxImageResolution > 50 )
{
- // do downsampling if neccessary
+ // do downsampling if necessary
const Size aDstSizeTwip( i_pDummyVDev->PixelToLogic( i_pDummyVDev->LogicToPixel( aSize ), MAP_TWIP ) );
const Size aBmpSize( aBitmapEx.GetSizePixel() );
const double fBmpPixelX = aBmpSize.Width();
@@ -168,7 +168,7 @@ void PDFWriterImpl::implWriteBitmapEx( const Point& i_rPoint, const Size& i_rSiz
if ( bUseJPGCompression )
{
sal_uInt32 nZippedFileSize; // sj: we will calculate the filesize of a zipped bitmap
- { // to determine if jpeg compression is usefull
+ { // to determine if jpeg compression is useful
SvMemoryStream aTemp;
aTemp.SetCompressMode( aTemp.GetCompressMode() | COMPRESSMODE_ZBITMAP );
aTemp.SetVersion( SOFFICE_FILEFORMAT_40 ); // sj: up from version 40 our bitmap stream operator
@@ -1176,7 +1176,7 @@ void PDFWriterImpl::checkAndEnableStreamEncryption( register sal_Int32 nObject )
// the i+2 to take into account the generation number, always zero
rtl_digest_MD5( &m_aContext.Encryption.EncryptionKey[0], i+2, nMD5Sum, sizeof(nMD5Sum) );
// initialize the RC4 with the key
- // key legth: see algoritm 3.1, step 4: (N+5) max 16
+ // key legth: see algorithm 3.1, step 4: (N+5) max 16
rtl_cipher_initARCFOUR( m_aCipher, rtl_Cipher_DirectionEncode, nMD5Sum, m_nRC4KeyLength, NULL, 0 );
}
}
@@ -1195,7 +1195,7 @@ void PDFWriterImpl::enableStringEncryption( register sal_Int32 nObject )
// the i+2 to take into account the generation number, always zero
rtl_digest_MD5( &m_aContext.Encryption.EncryptionKey[0], i+2, nMD5Sum, sizeof(nMD5Sum) );
// initialize the RC4 with the key
- // key legth: see algoritm 3.1, step 4: (N+5) max 16
+ // key legth: see algorithm 3.1, step 4: (N+5) max 16
rtl_cipher_initARCFOUR( m_aCipher, rtl_Cipher_DirectionEncode, nMD5Sum, m_nRC4KeyLength, NULL, 0 );
}
}
@@ -1520,7 +1520,7 @@ bool PDFWriterImpl::computeUDictionaryValue( EncHashTransporter* i_pTransporter,
else
{
//or 3.5, for 128 bit security
- //step6, initilize the last 16 bytes of the encrypted user password to 0
+ //step6, initialize the last 16 bytes of the encrypted user password to 0
for(sal_uInt32 i = MD5_DIGEST_SIZE; i < sal_uInt32(io_rProperties.UValue.size()); i++)
io_rProperties.UValue[i] = 0;
//step 2
diff --git a/vcl/source/gdi/pngread.cxx b/vcl/source/gdi/pngread.cxx
index 97531772c80b..b35db105cfca 100644
--- a/vcl/source/gdi/pngread.cxx
+++ b/vcl/source/gdi/pngread.cxx
@@ -117,7 +117,7 @@ private:
sal_Int32 mnChunkLen; // Length of current PNG chunk
Size maOrigSize; // pixel size of the full image
Size maTargetSize; // pixel size of the result image
- Size maPhysSize; // prefered size in MAP_100TH_MM units
+ Size maPhysSize; // preferred size in MAP_100TH_MM units
sal_uInt32 mnBPP; // number of bytes per pixel
sal_uInt32 mnScansize; // max size of scanline
sal_uInt32 mnYpos; // latest y position in full image
diff --git a/vcl/source/gdi/print.cxx b/vcl/source/gdi/print.cxx
index 76e1642f1bd6..2dbfb2a2cdf1 100644
--- a/vcl/source/gdi/print.cxx
+++ b/vcl/source/gdi/print.cxx
@@ -156,7 +156,7 @@ bool PrinterOptions::ReadFromConfig( bool i_bFile )
{
// get service provider
Reference< XMultiServiceFactory > xSMgr( comphelper::getProcessServiceFactory() );
- // create configuration hierachical access name
+ // create configuration hierarchical access name
if( xSMgr.is() )
{
try
@@ -568,7 +568,7 @@ SalPrinterQueueInfo* Printer::ImplGetQueueInfo( const XubString& rPrinterName,
ImplPrnQueueList* pPrnList = pSVData->maGDIData.mpPrinterQueueList;
if ( pPrnList && pPrnList->m_aQueueInfos.size() )
{
- // first search for the printer name driectly
+ // first search for the printer name directly
ImplPrnQueueData* pInfo = pPrnList->Get( rPrinterName );
if( pInfo )
return pInfo->mpSalQueueInfo;
diff --git a/vcl/source/gdi/print2.cxx b/vcl/source/gdi/print2.cxx
index 5b3b04102577..b1f9831f3c6e 100644
--- a/vcl/source/gdi/print2.cxx
+++ b/vcl/source/gdi/print2.cxx
@@ -1380,7 +1380,7 @@ Bitmap OutputDevice::GetDownsampledBitmap( const Size& rDstSz,
const Rectangle aBmpRect( aPoint, aBmp.GetSizePixel() );
Rectangle aSrcRect( rSrcPt, rSrcSz );
- // do cropping if neccessary
+ // do cropping if necessary
if( aSrcRect.Intersection( aBmpRect ) != aBmpRect )
{
if( !aSrcRect.IsEmpty() )
@@ -1391,7 +1391,7 @@ Bitmap OutputDevice::GetDownsampledBitmap( const Size& rDstSz,
if( !aBmp.IsEmpty() )
{
- // do downsampling if neccessary
+ // do downsampling if necessary
Size aDstSizeTwip( PixelToLogic( LogicToPixel( rDstSz ), MAP_TWIP ) );
// #103209# Normalize size (mirroring has to happen outside of this method)
@@ -1449,7 +1449,7 @@ BitmapEx OutputDevice::GetDownsampledBitmapEx( const Size& rDstSz,
const Rectangle aBmpRect( aPoint, aBmpEx.GetSizePixel() );
Rectangle aSrcRect( rSrcPt, rSrcSz );
- // do cropping if neccessary
+ // do cropping if necessary
if( aSrcRect.Intersection( aBmpRect ) != aBmpRect )
{
if( !aSrcRect.IsEmpty() )
@@ -1460,7 +1460,7 @@ BitmapEx OutputDevice::GetDownsampledBitmapEx( const Size& rDstSz,
if( !aBmpEx.IsEmpty() )
{
- // do downsampling if neccessary
+ // do downsampling if necessary
Size aDstSizeTwip( PixelToLogic( LogicToPixel( rDstSz ), MAP_TWIP ) );
// #103209# Normalize size (mirroring has to happen outside of this method)
diff --git a/vcl/source/gdi/print3.cxx b/vcl/source/gdi/print3.cxx
index a1296b7ea065..578a372582ee 100644
--- a/vcl/source/gdi/print3.cxx
+++ b/vcl/source/gdi/print3.cxx
@@ -1217,7 +1217,7 @@ void PrinterController::printFilteredPage( int i_nPage )
mpImplData->mpPrinter->SetPaperBin( mpImplData->mnFixedPaperBin );
}
- // if full paper is meant to be used, move the output to accomodate for pageoffset
+ // if full paper is meant to be used, move the output to accommodate for pageoffset
if( aPageSize.bFullPaper )
{
Point aPageOffset( mpImplData->mpPrinter->GetPageOffset() );
diff --git a/vcl/source/gdi/regband.cxx b/vcl/source/gdi/regband.cxx
index 2dec6ecac2be..d53fa74c9f7f 100644
--- a/vcl/source/gdi/regband.cxx
+++ b/vcl/source/gdi/regband.cxx
@@ -187,7 +187,7 @@ void ImplRegionBand::ProcessPoints()
ImplRegionBandPoint* pNextBandPoint = pRegionBandPoint->mpNextBandPoint->mpNextBandPoint;
- // remove allready processed points
+ // remove already processed points
delete pRegionBandPoint->mpNextBandPoint;
delete pRegionBandPoint;
@@ -222,7 +222,7 @@ bool ImplRegionBand::InsertPoint( long nX, long nLineId,
return true;
}
- // look if line allready touched the band
+ // look if line already touched the band
ImplRegionBandPoint* pRegionBandPoint = mpFirstBandPoint;
ImplRegionBandPoint* pLastTestedRegionBandPoint = NULL;
while( pRegionBandPoint )
@@ -932,7 +932,7 @@ bool ImplRegionBand::operator==( const ImplRegionBand& rRegionBand ) const
pSecondRectBandSep = pSecondRectBandSep->mpNextSep;
}
- // differnt number of separations?
+ // different number of separations?
if ( pOwnRectBandSep || pSecondRectBandSep )
return false;
diff --git a/vcl/source/gdi/region.cxx b/vcl/source/gdi/region.cxx
index 05e191f9a3b5..0aacd96e273d 100644
--- a/vcl/source/gdi/region.cxx
+++ b/vcl/source/gdi/region.cxx
@@ -130,7 +130,7 @@ namespace
OSL_ASSERT(aStart.X() == aEnd.X());
// Sort y-coordinates to simplify the algorithm and store the
- // direction seperately. The direction is calculated as it is
+ // direction separately. The direction is calculated as it is
// in other places (but seems to be the wrong way.)
const long nTop (::std::min(aStart.Y(), aEnd.Y()));
const long nBottom (::std::max(aStart.Y(), aEnd.Y()));
@@ -218,7 +218,7 @@ namespace
pRegionBand->InsertLine( aPoly.GetPoint(nPoint-1), aPoly.GetPoint(nPoint), nLineID++ );
}
- // close polygon with line from first point to last point, if neccesary
+ // close polygon with line from first point to last point, if necessary
const Point rLastPoint = aPoly.GetPoint(nSize-1);
const Point rFirstPoint = aPoly.GetPoint(0);
@@ -586,7 +586,7 @@ bool Region::Union( const Rectangle& rRect )
const long nRight(std::max(rRect.Left(), rRect.Right()));
const long nBottom(std::max(rRect.Top(), rRect.Bottom()));
- // insert bands if the boundaries are not allready in the list
+ // insert bands if the boundaries are not already in the list
pNew->InsertBands(nTop, nBottom);
// process union
@@ -679,7 +679,7 @@ bool Region::Intersect( const Rectangle& rRect )
const long nRight(std::max(rRect.Left(), rRect.Right()));
const long nBottom(std::max(rRect.Top(), rRect.Bottom()));
- // insert bands if the boundaries are not allready in the list
+ // insert bands if the boundaries are not already in the list
pNew->InsertBands(nTop, nBottom);
// process intersect
@@ -712,7 +712,7 @@ bool Region::Exclude( const Rectangle& rRect )
if(IsNull())
{
- // error; cannnot exclude from null region since this is not representable
+ // error; cannot exclude from null region since this is not representable
// in the data
OSL_ENSURE(false, "Region::Exclude error: Cannot exclude from null region (!)");
return true;
@@ -760,7 +760,7 @@ bool Region::Exclude( const Rectangle& rRect )
const long nRight(std::max(rRect.Left(), rRect.Right()));
const long nBottom(std::max(rRect.Top(), rRect.Bottom()));
- // insert bands if the boundaries are not allready in the list
+ // insert bands if the boundaries are not already in the list
pNew->InsertBands(nTop, nBottom);
// process exclude
@@ -794,7 +794,7 @@ bool Region::XOr( const Rectangle& rRect )
if(IsNull())
{
- // error; cannnot exclude from null region since this is not representable
+ // error; cannot exclude from null region since this is not representable
// in the data
OSL_ENSURE(false, "Region::XOr error: Cannot XOr with null region (!)");
return true;
@@ -845,7 +845,7 @@ bool Region::XOr( const Rectangle& rRect )
const long nRight(std::max(rRect.Left(), rRect.Right()));
const long nBottom(std::max(rRect.Top(), rRect.Bottom()));
- // insert bands if the boundaries are not allready in the list
+ // insert bands if the boundaries are not already in the list
pNew->InsertBands(nTop, nBottom);
// process xor
@@ -1095,7 +1095,7 @@ bool Region::Exclude( const Region& rRegion )
if(IsNull())
{
- // error; cannnot exclude from null region since this is not representable
+ // error; cannot exclude from null region since this is not representable
// in the data
OSL_ENSURE(false, "Region::Exclude error: Cannot exclude from null region (!)");
return true;
@@ -1167,7 +1167,7 @@ bool Region::XOr( const Region& rRegion )
if ( rRegion.IsNull() )
{
- // error; cannnot exclude null region from local since this is not representable
+ // error; cannot exclude null region from local since this is not representable
// in the data
OSL_ENSURE(false, "Region::XOr error: Cannot XOr with null region (!)");
return true;
@@ -1182,7 +1182,7 @@ bool Region::XOr( const Region& rRegion )
if(IsNull())
{
- // error; cannnot exclude from null region since this is not representable
+ // error: cannot exclude from null region since this is not representable
// in the data
OSL_ENSURE(false, "Region::XOr error: Cannot XOr with null region (!)");
return false;
@@ -1389,7 +1389,7 @@ bool Region::IsInside( const Point& rPoint ) const
// return mpImplRegion->getRegionPolyPoly()->IsInside( rPoint );
//}
- // ensure RegionBand existance
+ // ensure RegionBand existence
const RegionBand* pRegionBand = GetAsRegionBand();
if(pRegionBand)
@@ -1703,7 +1703,7 @@ void Region::GetRegionRectangles(RectangleVector& rTarget) const
// clear returnvalues
rTarget.clear();
- // ensure RegionBand existance
+ // ensure RegionBand existence
const RegionBand* pRegionBand = GetAsRegionBand();
if(pRegionBand)
diff --git a/vcl/source/gdi/regionband.cxx b/vcl/source/gdi/regionband.cxx
index c0e31a6b587b..055fb340b75d 100755
--- a/vcl/source/gdi/regionband.cxx
+++ b/vcl/source/gdi/regionband.cxx
@@ -788,7 +788,7 @@ void RegionBand::InsertBands(long nTop, long nBottom)
break;
}
- // insert bands between two bands if neccessary
+ // insert bands between two bands if necessary
if ( pBand->mpNextBand )
{
if ( (pBand->mnYBottom + 1) < pBand->mpNextBand->mnYTop )
@@ -977,7 +977,7 @@ void RegionBand::Union(const RegionBand& rSource)
while ( pBand )
{
- // insert bands if the boundaries are not allready in the list
+ // insert bands if the boundaries are not already in the list
InsertBands(pBand->mnYTop, pBand->mnYBottom);
// process all elements of the list
@@ -1094,7 +1094,7 @@ void RegionBand::Intersect(const RegionBand& rSource)
while ( pBand )
{
- // insert bands if the boundaries are not allready in the list
+ // insert bands if the boundaries are not already in the list
InsertBands( pBand->mnYTop, pBand->mnYBottom );
// process all elements of the list
@@ -1127,7 +1127,7 @@ void RegionBand::Intersect(const RegionBand& rSource)
pBand = pBand->mpNextBand;
}
- // remove all untouched bands if bands allready left
+ // remove all untouched bands if bands already left
ImplRegionBand* pPrevBand = 0;
pBand = mpFirstBand;
@@ -1168,7 +1168,7 @@ bool RegionBand::Exclude(const RegionBand& rSource)
while ( pBand )
{
- // insert bands if the boundaries are not allready in the list
+ // insert bands if the boundaries are not already in the list
InsertBands( pBand->mnYTop, pBand->mnYBottom );
// process all elements of the list
@@ -1225,7 +1225,7 @@ void RegionBand::XOr(const RegionBand& rSource)
while ( pBand )
{
- // insert bands if the boundaries are not allready in the list
+ // insert bands if the boundaries are not already in the list
InsertBands( pBand->mnYTop, pBand->mnYBottom );
// process all elements of the list
diff --git a/vcl/source/gdi/textlayout.cxx b/vcl/source/gdi/textlayout.cxx
index 70c56cff7e9e..f645dfb2139b 100644
--- a/vcl/source/gdi/textlayout.cxx
+++ b/vcl/source/gdi/textlayout.cxx
@@ -147,7 +147,7 @@ namespace vcl
// normally, controls simulate "zoom" by "zooming" the font. This is responsible for (part of) the discrepancies
// between text in Writer and text in controls in Writer, though both have the same font.
// So, if we have a zoom set at the control, then we do not scale the font, but instead modify the map mode
- // to accomodate for the zoom.
+ // to accommodate for the zoom.
aTargetMapMode.SetScaleX( m_aZoom ); // TODO: shouldn't this be "current_scale * zoom"?
aTargetMapMode.SetScaleY( m_aZoom );
diff --git a/vcl/source/glyphs/gcach_layout.cxx b/vcl/source/glyphs/gcach_layout.cxx
index 97b042054b63..73767e8e8402 100644
--- a/vcl/source/glyphs/gcach_layout.cxx
+++ b/vcl/source/glyphs/gcach_layout.cxx
@@ -550,7 +550,7 @@ bool IcuLayoutEngine::operator()( ServerFontLayout& rLayout, ImplLayoutArgs& rAr
else
{
// Hack, find next +ve width glyph and calculate current
- // glyph width by substracting the two posituons
+ // glyph width by subtracting the two positions
const IcuPosition* pNextPos = pPos+1;
for ( int j = i + 1; j <= nRawRunGlyphCount; ++j, ++pNextPos )
{
diff --git a/vcl/source/glyphs/glyphcache.cxx b/vcl/source/glyphs/glyphcache.cxx
index c22b7b458af9..aa8648d5bc56 100644
--- a/vcl/source/glyphs/glyphcache.cxx
+++ b/vcl/source/glyphs/glyphcache.cxx
@@ -410,7 +410,7 @@ ServerFont::ServerFont( const ImplFontSelectData& rFSD )
mbCollectedZW( false )
{
// TODO: move update of mpFontEntry into FontEntry class when
- // it becomes reponsible for the ServerFont instantiation
+ // it becomes responsible for the ServerFont instantiation
((ImplServerFontEntry*)rFSD.mpFontEntry)->SetServerFont( this );
if( rFSD.mnOrientation != 0 )
diff --git a/vcl/source/glyphs/graphite_layout.cxx b/vcl/source/glyphs/graphite_layout.cxx
index 8231896bb837..7ecd164fcfd7 100644
--- a/vcl/source/glyphs/graphite_layout.cxx
+++ b/vcl/source/glyphs/graphite_layout.cxx
@@ -358,7 +358,7 @@ std::pair<float,float> GraphiteLayout::Glyphs::appendCluster(gr::Segment& rSeg,
rGlyph2Char[size()] = nFirstCharInCluster;
// can we break before this cluster?
- // Glyphs may have either a positive or negative breakWeight refering to
+ // Glyphs may have either a positive or negative breakWeight referring to
// the position after or before the glyph respectively
int nPrevBreakWeight = 0;
if (nFirstGlyphInCluster > 0)
@@ -700,7 +700,7 @@ gr::Segment * GraphiteLayout::CreateSegment(ImplLayoutArgs& rArgs)
gr::Segment * pSegment = NULL;
- // Set the SalLayouts values to be the inital ones.
+ // Set the SalLayouts values to be the initial ones.
SalLayout::AdjustLayout(rArgs);
// TODO check if this is needed
if (mnUnitsPerPixel > 1)
@@ -1279,7 +1279,7 @@ void GraphiteLayout::kashidaJustify(std::vector<int>& rDeltaWidths, sal_GlyphId
void GraphiteLayout::GetCaretPositions( int nArraySize, sal_Int32* pCaretXArray ) const
{
// For each character except the last discover the caret positions
- // immediatly before and after that character.
+ // immediately before and after that character.
// This is used for underlines in the GUI amongst other things.
// It may be used from MultiSalLayout, in which case it must take into account
// glyphs that have been moved.
@@ -1491,7 +1491,7 @@ int GraphiteLayout::GetNextGlyphs( int length, sal_GlyphId * glyph_out,
void GraphiteLayout::MoveGlyph( int nGlyphIndex, long nNewPos )
{
- // TODO it might be better to actualy implement simplify properly, but this
+ // TODO it might be better to actually implement simplify properly, but this
// needs to be done carefully so the glyph/char maps are maintained
// If a glyph has been dropped then it wasn't returned by GetNextGlyphs, so
// the index here may be wrong
diff --git a/vcl/source/window/menu.cxx b/vcl/source/window/menu.cxx
index ca85c61bffa8..836bb09b0ff9 100644
--- a/vcl/source/window/menu.cxx
+++ b/vcl/source/window/menu.cxx
@@ -3401,7 +3401,7 @@ Window* MenuBar::ImplCreate( Window* pParent, Window* pWindow, MenuBar* pMenu )
long nHeight = pMenu->ImplCalcSize( pWindow ).Height();
// depending on the native implementation or the displayable flag
- // the menubar windows is supressed (ie, height=0)
+ // the menubar windows is suppressed (ie, height=0)
if( !((MenuBar*) pMenu)->IsDisplayable() ||
( pMenu->ImplGetSalMenu() && pMenu->ImplGetSalMenu()->VisibleMenuBar() ) )
nHeight = 0;
@@ -6023,7 +6023,7 @@ void MenuBarWindow::ImplLayoutChanged()
long nHeight = pMenu->ImplCalcSize( this ).Height();
// depending on the native implementation or the displayable flag
- // the menubar windows is supressed (ie, height=0)
+ // the menubar windows is suppressed (ie, height=0)
if( !((MenuBar*) pMenu)->IsDisplayable() ||
( pMenu->ImplGetSalMenu() && pMenu->ImplGetSalMenu()->VisibleMenuBar() ) )
nHeight = 0;
diff --git a/vcl/source/window/printdlg.cxx b/vcl/source/window/printdlg.cxx
index 50f1889c2a6d..b389ef31701f 100644
--- a/vcl/source/window/printdlg.cxx
+++ b/vcl/source/window/printdlg.cxx
@@ -92,7 +92,7 @@ bool PrintDialog::PrintPreviewWindow::useHCColorReplacement() const
{
// get service provider
Reference< XMultiServiceFactory > xSMgr( unohelper::GetMultiServiceFactory() );
- // create configuration hierachical access name
+ // create configuration hierarchical access name
if( xSMgr.is() )
{
try
diff --git a/vcl/source/window/split.cxx b/vcl/source/window/split.cxx
index 529971b69b0c..3b8095b60993 100644
--- a/vcl/source/window/split.cxx
+++ b/vcl/source/window/split.cxx
@@ -400,10 +400,10 @@ void Splitter::ImplKbdTracking( KeyCode aKeyCode )
Point aNewPos;
Size aSize = mpRefWin->GetOutputSize();
Point aPos = GetPosPixel();
- // depending on the position calc allows continous moves or snaps to row/columns
- // continous mode is active when position is at the origin or end of the splitter
+ // depending on the position calc allows continuous moves or snaps to row/columns
+ // continuous mode is active when position is at the origin or end of the splitter
// otherwise snap mode is active
- // default here is snap, holding shift sets continous mode
+ // default here is snap, holding shift sets continuous mode
if( mbHorzSplit )
aNewPos = Point( ImplSplitterActive() ? aPos.X() : mnSplitPos, aKeyCode.IsShift() ? 0 : aSize.Height()/2);
else
diff --git a/vcl/source/window/tabdlg.cxx b/vcl/source/window/tabdlg.cxx
index 73af0fa00c82..5dbc18e3b1da 100644
--- a/vcl/source/window/tabdlg.cxx
+++ b/vcl/source/window/tabdlg.cxx
@@ -244,7 +244,7 @@ TabDialog::~TabDialog()
void TabDialog::Resize()
{
-// !!! In the future the controls should be automaticly rearrange
+// !!! In the future the controls should be automatically rearrange
// !!! if the window is resized
// !!! if ( !IsRollUp() )
// !!! ImplPosControls();
diff --git a/vcl/source/window/window.cxx b/vcl/source/window/window.cxx
index 108bf1333636..5cc3819bbe9d 100644
--- a/vcl/source/window/window.cxx
+++ b/vcl/source/window/window.cxx
@@ -1659,7 +1659,7 @@ void Window::ImplCallInitShow()
// -----------------------------------------------------------------------
-void Window::ImplAddDel( ImplDelData* pDel ) // TODO: make "const" when incompatiblity ok
+void Window::ImplAddDel( ImplDelData* pDel ) // TODO: make "const" when incompatibility ok
{
DBG_ASSERT( !pDel->mpWindow, "Window::ImplAddDel(): cannot add ImplDelData twice !" );
if( !pDel->mpWindow )
@@ -1672,7 +1672,7 @@ void Window::ImplAddDel( ImplDelData* pDel ) // TODO: make "const" when incompat
// -----------------------------------------------------------------------
-void Window::ImplRemoveDel( ImplDelData* pDel ) // TODO: make "const" when incompatiblity ok
+void Window::ImplRemoveDel( ImplDelData* pDel ) // TODO: make "const" when incompatibility ok
{
pDel->mpWindow = NULL; // #112873# pDel is not associated with a Window anymore
if ( mpWindowImpl->mpFirstDel == pDel )
@@ -5120,7 +5120,7 @@ void Window::ImplNotifyKeyMouseCommandEventListeners( NotifyEvent& rNEvt )
}
}
- // #82968# notify event listeners for mouse and key events seperately and
+ // #82968# notify event listeners for mouse and key events separately and
// not in PreNotify ( as for focus listeners )
// this allows for procesing those events internally first and pass it to
// the toolkit later
@@ -7388,7 +7388,7 @@ void Window::SetPosSizePixel( long nX, long nY,
// Resize should be called directly. If we havn't
// set the correct size, we get a second resize from
- // the system with the correct size. This can be happend
+ // the system with the correct size. This can happen
// if the size is to small or to large.
ImplHandleResize( pWindow, nWidth, nHeight );
}
diff --git a/vcl/source/window/winproc.cxx b/vcl/source/window/winproc.cxx
index d9d3efd45ad5..15eaa110a661 100644
--- a/vcl/source/window/winproc.cxx
+++ b/vcl/source/window/winproc.cxx
@@ -960,7 +960,7 @@ static long ImplHandleKey( Window* pWindow, sal_uInt16 nSVEvent,
// allow application key listeners to remove the key event
// but make sure we're not forwarding external KeyEvents, (ie where bForward is sal_False)
- // becasue those are coming back from the listener itself and MUST be processed
+ // because those are coming back from the listener itself and MUST be processed
KeyEvent aKeyEvent( (xub_Unicode)nCharCode, aKeyCode, nRepeat );
if( bForward )
{
@@ -1556,7 +1556,7 @@ static long ImplHandleWheelEvent( Window* pWindow, const SalWheelMouseEvent& rEv
static void ImplHandlePaint( Window* pWindow, const Rectangle& rBoundRect, bool bImmediateUpdate )
{
- // give up background save when sytem paints arrive
+ // give up background save when system paints arrive
Window* pSaveBackWin = pWindow->ImplGetWindowImpl()->mpFrameData->mpFirstBackWin;
while ( pSaveBackWin )
{
diff --git a/vcl/test/dndtest.cxx b/vcl/test/dndtest.cxx
index 1dad0ee95e0d..b7ac8b763b59 100644
--- a/vcl/test/dndtest.cxx
+++ b/vcl/test/dndtest.cxx
@@ -341,7 +341,7 @@ void SAL_CALL MyDragAndDropListener::dropActionChanged( const DropTargetDragEven
void SAL_CALL MyDragAndDropListener::dragDropEnd( const DragSourceDropEvent& dsde ) throw(RuntimeException)
{
- printf( "XDragSourceListener::dropDropEnd called ( Window: %p, %s ).\n", m_pWindow, dsde.DropSuccess ? "sucess" : "failed" );
+ printf( "XDragSourceListener::dropDropEnd called ( Window: %p, %s ).\n", m_pWindow, dsde.DropSuccess ? "success" : "failed" );
}
// -----------------------------------------------------------------------
diff --git a/vcl/unx/generic/app/i18n_ic.cxx b/vcl/unx/generic/app/i18n_ic.cxx
index 06a75dc27319..e663180f61f0 100644
--- a/vcl/unx/generic/app/i18n_ic.cxx
+++ b/vcl/unx/generic/app/i18n_ic.cxx
@@ -562,7 +562,7 @@ SalI18N_InputContext::SupportInputMethodStyle( XIMStyles *pIMStyles )
if ( pIMStyles != NULL )
{
// check whether the XIM supports one of the desired styles
- // only a single preedit and a single status style must occure
+ // only a single preedit and a single status style must occur
// in a inpuut method style. Hideki said so, so i trust him
for ( int nStyle = 0; nStyle < pIMStyles->count_styles; nStyle++ )
{
diff --git a/vcl/unx/generic/app/saldata.cxx b/vcl/unx/generic/app/saldata.cxx
index 24780e0c043f..6e0315c90dcb 100644
--- a/vcl/unx/generic/app/saldata.cxx
+++ b/vcl/unx/generic/app/saldata.cxx
@@ -533,7 +533,7 @@ void SalXLib::XError( Display *pDisplay, XErrorEvent *pEvent )
static Bool bOnce = False;
if ( !bOnce )
{
- std::fprintf(stderr, "X-Error occured in a request for X_OpenFont\n");
+ std::fprintf(stderr, "X-Error occurred in a request for X_OpenFont\n");
EmitFontpathWarning();
bOnce = True ;
diff --git a/vcl/unx/generic/app/saldisp.cxx b/vcl/unx/generic/app/saldisp.cxx
index d94e4fda4d3a..1d44250b17b4 100644
--- a/vcl/unx/generic/app/saldisp.cxx
+++ b/vcl/unx/generic/app/saldisp.cxx
@@ -1408,8 +1408,8 @@ sal_uInt16 SalDisplay::GetKeyCode( KeySym keysym, char*pcPrintable ) const
break;
// - - - - - Sun X-Server Tastatur ??? - - - - - - - - - - - -
case XK_L1: // XK_F11:
- nKey = KEY_F11; // on a sun keyboard this actually is usally SunXK_Stop,
- // but VCL doesn't have a key defintion for that
+ nKey = KEY_F11; // on a sun keyboard this actually is usually SunXK_Stop,
+ // but VCL doesn't have a key definition for that
break;
case XK_L2: // XK_F12:
if ( GetServerVendor() == vendor_sun )
@@ -1714,7 +1714,7 @@ KeySym SalDisplay::GetKeySym( XKeyEvent *pEvent,
case XLookupBoth:
case XLookupChars:
- /* nothing to, char allready in pPrintable */
+ /* nothing to, char already in pPrintable */
break;
}
}
diff --git a/vcl/unx/generic/app/wmadaptor.cxx b/vcl/unx/generic/app/wmadaptor.cxx
index ac12545291b0..ffa244ae14e3 100644
--- a/vcl/unx/generic/app/wmadaptor.cxx
+++ b/vcl/unx/generic/app/wmadaptor.cxx
@@ -1493,7 +1493,7 @@ void WMAdaptor::setFrameTypeAndDecoration( X11SalFrame* pFrame, WMWindowType eTy
// set transientFor hint
/* #91030# dtwm will not map a dialogue if the transient
- * window is iconified. This is deemed undesireable because
+ * window is iconified. This is deemed undesirable because
* message boxes do not get mapped, so use the root as transient
* instead.
*/
diff --git a/vcl/unx/generic/dtrans/X11_selection.cxx b/vcl/unx/generic/dtrans/X11_selection.cxx
index 430a6eb14937..4e6346f0bf9d 100644
--- a/vcl/unx/generic/dtrans/X11_selection.cxx
+++ b/vcl/unx/generic/dtrans/X11_selection.cxx
@@ -1024,7 +1024,7 @@ bool SelectionManager::getPasteData( Atom selection, Atom type, Sequence< sal_In
}
#if OSL_DEBUG_LEVEL > 1
else
- fprintf( stderr, "conversion unsuccessfull\n" );
+ fprintf( stderr, "conversion unsuccessful\n" );
#endif
return bSuccess;
}
@@ -3830,7 +3830,7 @@ void SelectionManager::shutdown() throw()
osl_terminateThread( m_aThread );
/*
* Allow thread to finish before app exits to avoid pulling the carpet
- * out from under it if pasting is occuring during shutdown
+ * out from under it if pasting is occurring during shutdown
*
* a) allow it to have the Mutex and
* b) reschedule to allow it to complete callbacks to any
diff --git a/vcl/unx/generic/dtrans/X11_selection.hxx b/vcl/unx/generic/dtrans/X11_selection.hxx
index 5076d18075fc..6ecfbad8b0dc 100644
--- a/vcl/unx/generic/dtrans/X11_selection.hxx
+++ b/vcl/unx/generic/dtrans/X11_selection.hxx
@@ -67,7 +67,7 @@ namespace x11 {
virtual void fireContentsChanged() = 0;
virtual com::sun::star::uno::Reference< XInterface > getReference() = 0;
// returns a reference that will keep the SelectionAdaptor alive until the
- // refernce is released
+ // reference is released
};
class DropTarget :
diff --git a/vcl/unx/generic/fontmanager/parseAFM.cxx b/vcl/unx/generic/fontmanager/parseAFM.cxx
index e1a33b4d1b5d..d1c59ce1f597 100644
--- a/vcl/unx/generic/fontmanager/parseAFM.cxx
+++ b/vcl/unx/generic/fontmanager/parseAFM.cxx
@@ -47,7 +47,7 @@
/* parseAFM.c
*
- * This file is used in conjuction with the parseAFM.h header file.
+ * This file is used in conjunction with the parseAFM.h header file.
* This file contains several procedures that are used to parse AFM
* files. It is intended to work with an application program that needs
* font metric information. The program can be used as is by making a
diff --git a/vcl/unx/generic/fontmanager/parseAFM.hxx b/vcl/unx/generic/fontmanager/parseAFM.hxx
index cfebde696c14..2ab1c6451339 100644
--- a/vcl/unx/generic/fontmanager/parseAFM.hxx
+++ b/vcl/unx/generic/fontmanager/parseAFM.hxx
@@ -36,7 +36,7 @@
/* ParseAFM.h
*
- * This header file is used in conjuction with the parseAFM.c file.
+ * This header file is used in conjunction with the parseAFM.c file.
* Together these files provide the functionality to parse Adobe Font
* Metrics files and store the information in predefined data structures.
* It is intended to work with an application program that needs font metric
@@ -316,7 +316,7 @@ typedef struct
*
* "fp" should be a valid file pointer to an AFM file.
*
- * "fi" is a pointer to a pointer to a FontInfo record sturcture
+ * "fi" is a pointer to a pointer to a FontInfo record structure
* (defined above). Storage for the FontInfo structure will be
* allocated in parseFile and the structure will be filled in
* with the requested data from the AFM File.
diff --git a/vcl/unx/generic/printer/ppdparser.cxx b/vcl/unx/generic/printer/ppdparser.cxx
index 462dbca48b5f..9db26c99eb31 100644
--- a/vcl/unx/generic/printer/ppdparser.cxx
+++ b/vcl/unx/generic/printer/ppdparser.cxx
@@ -330,7 +330,7 @@ void PPDDecompressStream::Open( const rtl::OUString& i_rFile )
}
else
{
- // compression successfull, can get rid of file stream
+ // compression successful, can get rid of file stream
delete mpFileStream, mpFileStream = NULL;
mpMemStream->Seek( 0 );
}
diff --git a/vcl/unx/generic/window/FWS.cxx b/vcl/unx/generic/window/FWS.cxx
index 82f7a0c1d58b..7497e8300b60 100644
--- a/vcl/unx/generic/window/FWS.cxx
+++ b/vcl/unx/generic/window/FWS.cxx
@@ -186,7 +186,7 @@ WMSupportsFWS (Display *display, int screen)
*
* newHandler() -
*
- * Handle X errors (temporarily) to record the occurance of BadWindow
+ * Handle X errors (temporarily) to record the occurrence of BadWindow
* errors without crashing. Used to detect the FWS_COMM_WINDOW root window
* property containing an old or obsolete window id.
*
diff --git a/vcl/unx/generic/window/FWS.hxx b/vcl/unx/generic/window/FWS.hxx
index c6936215e747..946b41189fd7 100644
--- a/vcl/unx/generic/window/FWS.hxx
+++ b/vcl/unx/generic/window/FWS.hxx
@@ -37,7 +37,7 @@ extern "C" {
Bool
WMSupportsFWS (Display *display, int screen);
-/* Send a client message to the FWS_COMM_WINDOW indicating the existance
+/* Send a client message to the FWS_COMM_WINDOW indicating the existence
* of a new FWS client window. Be careful to avoid BadWindow errors on
* the XSendEvent in case the FWS_COMM_WINDOW root window property had
* old/obsolete junk in it.
diff --git a/vcl/unx/generic/window/salframe.cxx b/vcl/unx/generic/window/salframe.cxx
index 7cc5eeedf855..8d9d4a2668a2 100644
--- a/vcl/unx/generic/window/salframe.cxx
+++ b/vcl/unx/generic/window/salframe.cxx
@@ -3519,7 +3519,7 @@ long X11SalFrame::HandleKeyEvent( XKeyEvent *pEvent )
{
if ( ! CallCallback(SALEVENT_KEYINPUT, &aKeyEvt) )
{
- // independent layer doesnt want to handle key-event, so check
+ // independent layer doesn't want to handle key-event, so check
// whether the keycode may have an alternate meaning
KeyAlternate aAlternate = GetAlternateKeyCode( nKeyCode );
if ( aAlternate.nKeyCode != 0 )
@@ -3958,7 +3958,7 @@ long X11SalFrame::HandleReparentEvent( XReparentEvent *pEvent )
// limit width and height if we are too large: #47757
- // olwm and fvwm need this, it doesnt harm the rest
+ // olwm and fvwm need this, it doesn't harm the rest
// #i81311# do this only for sizable frames
if( (nStyle_ & SAL_FRAME_STYLE_SIZEABLE) != 0 )
diff --git a/vcl/unx/gtk/a11y/atkutil.cxx b/vcl/unx/gtk/a11y/atkutil.cxx
index 8a6d7fa54798..4fbe84b83cd8 100644
--- a/vcl/unx/gtk/a11y/atkutil.cxx
+++ b/vcl/unx/gtk/a11y/atkutil.cxx
@@ -202,10 +202,10 @@ void DocumentFocusListener::disposing( const lang::EventObject& aEvent )
void DocumentFocusListener::notifyEvent( const accessibility::AccessibleEventObject& aEvent )
throw( uno::RuntimeException )
{
- switch( aEvent.EventId )
- {
- case accessibility::AccessibleEventId::STATE_CHANGED:
- try
+ try {
+ switch( aEvent.EventId )
+ {
+ case accessibility::AccessibleEventId::STATE_CHANGED:
{
sal_Int16 nState = accessibility::AccessibleStateType::INVALID;
aEvent.NewValue >>= nState;
@@ -213,34 +213,36 @@ void DocumentFocusListener::notifyEvent( const accessibility::AccessibleEventObj
if( accessibility::AccessibleStateType::FOCUSED == nState )
atk_wrapper_focus_tracker_notify_when_idle( getAccessible(aEvent) );
}
- catch(const lang::IndexOutOfBoundsException &e)
- {
- g_warning("Focused object has invalid index in parent");
- }
break;
- case accessibility::AccessibleEventId::CHILD:
- {
- uno::Reference< accessibility::XAccessible > xChild;
- if( (aEvent.OldValue >>= xChild) && xChild.is() )
- detachRecursive(xChild);
+ case accessibility::AccessibleEventId::CHILD:
+ {
+ uno::Reference< accessibility::XAccessible > xChild;
+ if( (aEvent.OldValue >>= xChild) && xChild.is() )
+ detachRecursive(xChild);
- if( (aEvent.NewValue >>= xChild) && xChild.is() )
- attachRecursive(xChild);
- }
+ if( (aEvent.NewValue >>= xChild) && xChild.is() )
+ attachRecursive(xChild);
+ }
break;
- case accessibility::AccessibleEventId::INVALIDATE_ALL_CHILDREN:
+ case accessibility::AccessibleEventId::INVALIDATE_ALL_CHILDREN:
/* {
uno::Reference< accessibility::XAccessible > xAccessible( getAccessible(aEvent) );
detachRecursive(xAccessible);
attachRecursive(xAccessible);
- }
+ }
*/
g_warning( "Invalidate all children called\n" );
break;
- default:
- break;
+
+ default:
+ break;
+ }
+ }
+ catch( const lang::IndexOutOfBoundsException& e )
+ {
+ g_warning("Focused object has invalid index in parent");
}
}
diff --git a/vcl/unx/gtk/a11y/atkwindow.cxx b/vcl/unx/gtk/a11y/atkwindow.cxx
index 0e7d9ee30b76..acfa7fd12043 100644
--- a/vcl/unx/gtk/a11y/atkwindow.cxx
+++ b/vcl/unx/gtk/a11y/atkwindow.cxx
@@ -190,7 +190,7 @@ ooo_window_wrapper_real_initialize(AtkObject *obj, gpointer data)
Reference< XAccessible > xAccessible( pWindow->GetAccessible(true) );
/* We need the wrapper object for the top-level XAccessible to be
- * in the wrapper registry when atk traverses the hierachy up on
+ * in the wrapper registry when atk traverses the hierarchy up on
* focus events
*/
if( WINDOW_BORDERWINDOW == pWindow->GetType() )
diff --git a/vcl/unx/gtk/a11y/atkwrapper.cxx b/vcl/unx/gtk/a11y/atkwrapper.cxx
index 1ef4757e88df..9ae041484c03 100644
--- a/vcl/unx/gtk/a11y/atkwrapper.cxx
+++ b/vcl/unx/gtk/a11y/atkwrapper.cxx
@@ -864,9 +864,9 @@ atk_object_wrapper_new( const ::com::sun::star::uno::Reference< ::com::sun::star
else
{
/* gail_focus_tracker remembers the focused object at the first
- * parent in the hierachy that is a Gtk+ widget, but at the time the
+ * parent in the hierarchy that is a Gtk+ widget, but at the time the
* event gets processed (at idle), it may be too late to create the
- * hierachy, so doing it now ..
+ * hierarchy, so doing it now ..
*/
uno::Reference< accessibility::XAccessible > xParent( xContext->getAccessibleParent() );
diff --git a/vcl/unx/gtk/app/gtkdata.cxx b/vcl/unx/gtk/app/gtkdata.cxx
index e591348e189f..eb1d3e6d7d1c 100644
--- a/vcl/unx/gtk/app/gtkdata.cxx
+++ b/vcl/unx/gtk/app/gtkdata.cxx
@@ -633,7 +633,7 @@ void GtkXLib::Init()
g_set_application_name(X11SalData::getFrameClassName());
- // Set consistant name of the root accessible
+ // Set consistent name of the root accessible
rtl::OUString aAppName = Application::GetAppName();
if( aAppName.getLength() > 0 )
{
diff --git a/vcl/unx/gtk/gdi/salnativewidgets-gtk.cxx b/vcl/unx/gtk/gdi/salnativewidgets-gtk.cxx
index 1ecc66723c00..47b8bcdc436e 100644
--- a/vcl/unx/gtk/gdi/salnativewidgets-gtk.cxx
+++ b/vcl/unx/gtk/gdi/salnativewidgets-gtk.cxx
@@ -449,7 +449,7 @@ void GtkData::deInitNWF( void )
{
// free up global widgets
// gtk_widget_destroy will in turn destroy the child hierarchy
- // so only destroy disjunct hierachies
+ // so only destroy disjunct hierarchies
if( gWidgetData[i].gCacheWindow )
gtk_widget_destroy( gWidgetData[i].gCacheWindow );
if( gWidgetData[i].gMenuWidget )
@@ -982,7 +982,10 @@ sal_Bool GtkSalGraphics::getNativeControlRegion( ControlType nType,
rNativeBoundingRegion = NWGetScrollButtonRect( m_nScreen, nPart, rControlRegion );
rNativeContentRegion = rNativeBoundingRegion;
- returnVal = sal_True;
+ if (rNativeBoundingRegion.GetWidth()>0 && rNativeBoundingRegion.GetHeight()>0)
+ returnVal = sal_True;
+ else
+ returnVal = sal_False;
}
if( (nType == CTRL_MENUBAR) && (nPart == PART_ENTIRE_CONTROL) )
{
@@ -3615,7 +3618,9 @@ void GtkSalGraphics::updateSettings( AllSettings& rSettings )
bNeedButtonStyleAsEditBackgroundWorkaround = false;
// setup some workarounds for "blueprint" theme
- if( pThemeName && strncasecmp( pThemeName, "blueprint", 9 ) == 0 )
+ if( pThemeName
+ && ( strncasecmp( pThemeName, "blueprint", 9 ) == 0
+ || strncasecmp( pThemeName, "Adwaita", 7 ) == 0 ))
{
bNeedButtonStyleAsEditBackgroundWorkaround = true;
if( GetX11SalData()->GetDisplay()->GetServerVendor() == vendor_sun )
diff --git a/vcl/unx/gtk/window/gtkframe.cxx b/vcl/unx/gtk/window/gtkframe.cxx
index d5cb5270744d..972f24b63148 100644
--- a/vcl/unx/gtk/window/gtkframe.cxx
+++ b/vcl/unx/gtk/window/gtkframe.cxx
@@ -3515,7 +3515,7 @@ bool GtkSalFrame::IMHandler::handleKeyEvent( GdkEventKey* pEvent )
/* FIXME:
* #122282# still more hacking: some IMEs never start a preedit but simply commit
* in this case we cannot commit a single character. Workaround: do not do the
-* single key hack for enter or space if the unicode commited does not match
+* single key hack for enter or space if the unicode committed does not match
*/
static bool checkSingleKeyCommitHack( guint keyval, sal_Unicode cCode )
diff --git a/vcl/unx/kde/salnativewidgets-kde.cxx b/vcl/unx/kde/salnativewidgets-kde.cxx
index dedf0b32ea2f..eac77cc5942f 100644
--- a/vcl/unx/kde/salnativewidgets-kde.cxx
+++ b/vcl/unx/kde/salnativewidgets-kde.cxx
@@ -795,7 +795,7 @@ QPushButton *WidgetPainter::pushButton( const Rectangle& rControlRegion,
// Workaround for broken styles which do not add
// QStyle::PM_ButtonDefaultIndicator to the size of the default button
// (for example Keramik)
- // FIXME Fix Keramik style to be consistant with Qt built-in styles. Aargh!
+ // FIXME Fix Keramik style to be consistent with Qt built-in styles. Aargh!
if ( bDefault )
{
QSize qContentsSize( 50, 50 );
diff --git a/vcl/win/source/app/salinst.cxx b/vcl/win/source/app/salinst.cxx
index 55ab108967b9..7b1b3b2fae12 100644
--- a/vcl/win/source/app/salinst.cxx
+++ b/vcl/win/source/app/salinst.cxx
@@ -771,7 +771,7 @@ LRESULT CALLBACK SalComWndProc( HWND hWnd, UINT nMsg, WPARAM wParam, LPARAM lPar
rDef = FALSE;
break;
// If we get this message, because another GetMessage() call
- // has recieved this message, we must post this message to
+ // has received this message, we must post this message to
// us again, because in the other case we wait forever.
case SAL_MSG_RELEASEWAITYIELD:
{
diff --git a/vcl/win/source/app/saltimer.cxx b/vcl/win/source/app/saltimer.cxx
index 0a967b52cf1e..4ed3f2b3910b 100644
--- a/vcl/win/source/app/saltimer.cxx
+++ b/vcl/win/source/app/saltimer.cxx
@@ -117,7 +117,7 @@ void CALLBACK SalTimerProc( HWND, UINT, UINT_PTR nId, DWORD )
bool bRecursive = pSalData->mbInTimerProc && (nId != SALTIMERPROC_RECURSIVE);
if ( pSVData->mpSalTimer && ! bRecursive )
{
- // Try to aquire the mutex. If we don't get the mutex then we
+ // Try to acquire the mutex. If we don't get the mutex then we
// try this a short time later again.
if ( ImplSalYieldMutexTryToAcquire() )
{
diff --git a/vcl/win/source/gdi/salbmp.cxx b/vcl/win/source/gdi/salbmp.cxx
index 005f822e4599..f4578edd25d0 100644
--- a/vcl/win/source/gdi/salbmp.cxx
+++ b/vcl/win/source/gdi/salbmp.cxx
@@ -310,24 +310,32 @@ Gdiplus::Bitmap* WinSalBitmap::ImplCreateGdiPlusBitmap()
if(pRetval)
{
- sal_uInt8* pSrcRGB(pRGB->mpBits);
- const sal_uInt32 nExtraRGB(pRGB->mnScanlineSize - (nW * 3));
- const bool bTopDown(pRGB->mnFormat & BMP_FORMAT_TOP_DOWN);
- const Gdiplus::Rect aAllRect(0, 0, nW, nH);
- Gdiplus::BitmapData aGdiPlusBitmapData;
- pRetval->LockBits(&aAllRect, Gdiplus::ImageLockModeWrite, PixelFormat24bppRGB, &aGdiPlusBitmapData);
-
- // copy data to Gdiplus::Bitmap; format is BGR here in both cases, so memcpy is possible
- for(sal_uInt32 y(0); y < nH; y++)
+ if ( pRetval->GetLastStatus() == Gdiplus::Ok )
{
- const sal_uInt32 nYInsert(bTopDown ? y : nH - y - 1);
- sal_uInt8* targetPixels = (sal_uInt8*)aGdiPlusBitmapData.Scan0 + (nYInsert * aGdiPlusBitmapData.Stride);
+ sal_uInt8* pSrcRGB(pRGB->mpBits);
+ const sal_uInt32 nExtraRGB(pRGB->mnScanlineSize - (nW * 3));
+ const bool bTopDown(pRGB->mnFormat & BMP_FORMAT_TOP_DOWN);
+ const Gdiplus::Rect aAllRect(0, 0, nW, nH);
+ Gdiplus::BitmapData aGdiPlusBitmapData;
+ pRetval->LockBits(&aAllRect, Gdiplus::ImageLockModeWrite, PixelFormat24bppRGB, &aGdiPlusBitmapData);
+
+ // copy data to Gdiplus::Bitmap; format is BGR here in both cases, so memcpy is possible
+ for(sal_uInt32 y(0); y < nH; y++)
+ {
+ const sal_uInt32 nYInsert(bTopDown ? y : nH - y - 1);
+ sal_uInt8* targetPixels = (sal_uInt8*)aGdiPlusBitmapData.Scan0 + (nYInsert * aGdiPlusBitmapData.Stride);
- memcpy(targetPixels, pSrcRGB, nW * 3);
- pSrcRGB += nW * 3 + nExtraRGB;
- }
+ memcpy(targetPixels, pSrcRGB, nW * 3);
+ pSrcRGB += nW * 3 + nExtraRGB;
+ }
- pRetval->UnlockBits(&aGdiPlusBitmapData);
+ pRetval->UnlockBits(&aGdiPlusBitmapData);
+ }
+ else
+ {
+ delete pRetval;
+ pRetval = NULL;
+ }
}
}
@@ -440,35 +448,43 @@ Gdiplus::Bitmap* WinSalBitmap::ImplCreateGdiPlusBitmap(const WinSalBitmap& rAlph
if(pRetval)
{
- sal_uInt8* pSrcRGB(pRGB->mpBits);
- sal_uInt8* pSrcA(pA->mpBits);
- const sal_uInt32 nExtraRGB(pRGB->mnScanlineSize - (nW * 3));
- const sal_uInt32 nExtraA(pA->mnScanlineSize - nW);
- const bool bTopDown(pRGB->mnFormat & BMP_FORMAT_TOP_DOWN);
- const Gdiplus::Rect aAllRect(0, 0, nW, nH);
- Gdiplus::BitmapData aGdiPlusBitmapData;
- pRetval->LockBits(&aAllRect, Gdiplus::ImageLockModeWrite, PixelFormat32bppARGB, &aGdiPlusBitmapData);
-
- // copy data to Gdiplus::Bitmap; format is BGRA; need to mix BGR from Bitmap and
- // A from alpha, so inner loop is needed (who invented BitmapEx..?)
- for(sal_uInt32 y(0); y < nH; y++)
+ if ( pRetval->GetLastStatus() == Gdiplus::Ok ) // 2nd place to secure with new Gdiplus::Bitmap
{
- const sal_uInt32 nYInsert(bTopDown ? y : nH - y - 1);
- sal_uInt8* targetPixels = (sal_uInt8*)aGdiPlusBitmapData.Scan0 + (nYInsert * aGdiPlusBitmapData.Stride);
-
- for(sal_uInt32 x(0); x < nW; x++)
+ sal_uInt8* pSrcRGB(pRGB->mpBits);
+ sal_uInt8* pSrcA(pA->mpBits);
+ const sal_uInt32 nExtraRGB(pRGB->mnScanlineSize - (nW * 3));
+ const sal_uInt32 nExtraA(pA->mnScanlineSize - nW);
+ const bool bTopDown(pRGB->mnFormat & BMP_FORMAT_TOP_DOWN);
+ const Gdiplus::Rect aAllRect(0, 0, nW, nH);
+ Gdiplus::BitmapData aGdiPlusBitmapData;
+ pRetval->LockBits(&aAllRect, Gdiplus::ImageLockModeWrite, PixelFormat32bppARGB, &aGdiPlusBitmapData);
+
+ // copy data to Gdiplus::Bitmap; format is BGRA; need to mix BGR from Bitmap and
+ // A from alpha, so inner loop is needed (who invented BitmapEx..?)
+ for(sal_uInt32 y(0); y < nH; y++)
{
- *targetPixels++ = *pSrcRGB++;
- *targetPixels++ = *pSrcRGB++;
- *targetPixels++ = *pSrcRGB++;
- *targetPixels++ = 0xff - *pSrcA++;
+ const sal_uInt32 nYInsert(bTopDown ? y : nH - y - 1);
+ sal_uInt8* targetPixels = (sal_uInt8*)aGdiPlusBitmapData.Scan0 + (nYInsert * aGdiPlusBitmapData.Stride);
+
+ for(sal_uInt32 x(0); x < nW; x++)
+ {
+ *targetPixels++ = *pSrcRGB++;
+ *targetPixels++ = *pSrcRGB++;
+ *targetPixels++ = *pSrcRGB++;
+ *targetPixels++ = 0xff - *pSrcA++;
+ }
+
+ pSrcRGB += nExtraRGB;
+ pSrcA += nExtraA;
}
- pSrcRGB += nExtraRGB;
- pSrcA += nExtraA;
+ pRetval->UnlockBits(&aGdiPlusBitmapData);
+ }
+ else
+ {
+ delete pRetval;
+ pRetval = NULL;
}
-
- pRetval->UnlockBits(&aGdiPlusBitmapData);
}
}
diff --git a/vcl/win/source/gdi/salgdi.cxx b/vcl/win/source/gdi/salgdi.cxx
index 276dfca00a62..ecf972e03a6c 100644
--- a/vcl/win/source/gdi/salgdi.cxx
+++ b/vcl/win/source/gdi/salgdi.cxx
@@ -354,7 +354,7 @@ void ImplFreeSalGDI()
pSalData->mhDitherPal = 0;
}
- // delete buffers for dithering DIB patterns, if neccessary
+ // delete buffers for dithering DIB patterns, if necessary
if ( pSalData->mhDitherDIB )
{
GlobalUnlock( pSalData->mhDitherDIB );
@@ -1087,7 +1087,7 @@ void WinSalGraphics::SetLineColor()
HPEN hNewPen = GetStockPen( NULL_PEN );
HPEN hOldPen = SelectPen( getHDC(), hNewPen );
- // destory or save old pen
+ // destroy or save old pen
if ( mhPen )
{
if ( !mbStockPen )
@@ -1145,7 +1145,7 @@ void WinSalGraphics::SetLineColor( SalColor nSalColor )
// select new pen
HPEN hOldPen = SelectPen( getHDC(), hNewPen );
- // destory or save old pen
+ // destroy or save old pen
if ( mhPen )
{
if ( !mbStockPen )
@@ -1169,7 +1169,7 @@ void WinSalGraphics::SetFillColor()
HBRUSH hNewBrush = GetStockBrush( NULL_BRUSH );
HBRUSH hOldBrush = SelectBrush( getHDC(), hNewBrush );
- // destory or save old brush
+ // destroy or save old brush
if ( mhBrush )
{
if ( !mbStockBrush )
@@ -1273,7 +1273,7 @@ void WinSalGraphics::SetFillColor( SalColor nSalColor )
// select new brush
HBRUSH hOldBrush = SelectBrush( getHDC(), hNewBrush );
- // destory or save old brush
+ // destroy or save old brush
if ( mhBrush )
{
if ( !mbStockBrush )
diff --git a/vcl/win/source/gdi/salgdi2.cxx b/vcl/win/source/gdi/salgdi2.cxx
index e8273baabc10..c61c5a6ce2ab 100644
--- a/vcl/win/source/gdi/salgdi2.cxx
+++ b/vcl/win/source/gdi/salgdi2.cxx
@@ -270,7 +270,7 @@ void WinSalGraphics::copyArea( long nDestX, long nDestY,
{
// hInvalidateRgn contains the fully visible parts of the original srcRect
hTempRgn = CreateRectRgnIndirect( &aSrcRect );
- // substract it from the original rect to get the occluded parts
+ // subtract it from the original rect to get the occluded parts
nRgnType = CombineRgn( hInvalidateRgn, hTempRgn, hInvalidateRgn, RGN_DIFF );
DeleteRegion( hTempRgn );
@@ -709,7 +709,7 @@ SalBitmap* WinSalGraphics::getBitmap( long nX, long nY, long nDX, long nDY )
else
{
err = GetLastError();
- // #124826# avoid resource leak ! happens when runing without desktop access (remote desktop, service, may be screensavers)
+ // #124826# avoid resource leak ! happens when running without desktop access (remote desktop, service, may be screensavers)
DeleteBitmap( hBmpBitmap );
}
diff --git a/vcl/win/source/gdi/salgdi3.cxx b/vcl/win/source/gdi/salgdi3.cxx
index da67ab35fb70..e4cd2bafabde 100644
--- a/vcl/win/source/gdi/salgdi3.cxx
+++ b/vcl/win/source/gdi/salgdi3.cxx
@@ -406,7 +406,7 @@ static Unicode2LangType aLangFromCodeChart[]= {
// get language matching to the missing char
LanguageType MapCharToLanguage( sal_UCS4 uChar )
{
- // entries marked with default-CJK get replaced with the prefered CJK language
+ // entries marked with default-CJK get replaced with the preferred CJK language
static bool bFirst = true;
if( bFirst )
{
@@ -450,7 +450,7 @@ LanguageType MapCharToLanguage( sal_UCS4 uChar )
break;
}
- // change the marked entries to prefered language
+ // change the marked entries to preferred language
static const int nCount = (sizeof(aLangFromCodeChart) / sizeof(*aLangFromCodeChart));
for( int i = 0; i < nCount; ++i )
{
@@ -547,7 +547,7 @@ bool WinGlyphFallbackSubstititution::HasMissingChars( const ImplFontData* pFace,
}
// find a fallback font for missing characters
-// TODO: should stylistic matches be searched and prefered?
+// TODO: should stylistic matches be searched and preferred?
bool WinGlyphFallbackSubstititution::FindFontSubstitute( ImplFontSelectData& rFontSelData, rtl::OUString& rMissingChars ) const
{
// guess a locale matching to the missing chars
diff --git a/vcl/win/source/gdi/winlayout.cxx b/vcl/win/source/gdi/winlayout.cxx
index 7fab9292f41b..51db718e72e2 100644
--- a/vcl/win/source/gdi/winlayout.cxx
+++ b/vcl/win/source/gdi/winlayout.cxx
@@ -415,12 +415,19 @@ bool SimpleWinLayout::LayoutText( ImplLayoutArgs& rArgs )
bool bSurrogate = ((nCharCode >= 0xD800) && (nCharCode <= 0xDFFF));
if( bSurrogate )
{
- if( nCharCode >= 0xDC00 ) // this part of a surrogate pair was already processed
+ // ignore high surrogates, they were already processed with their low surrogates
+ if( nCharCode >= 0xDC00 )
continue;
- nCharCode = 0x10000 + ((pCodes[0] - 0xD800) << 10) + (pCodes[1] - 0xDC00);
- }
+ // check the second half of the surrogate pair
+ bSurrogate &= (0xDC00 <= pCodes[1]) && (pCodes[1] <= 0xDFFF);
+ // calculate the UTF-32 code of valid surrogate pairs
+ if( bSurrogate )
+ nCharCode = 0x10000 + ((pCodes[0] - 0xD800) << 10) + (pCodes[1] - 0xDC00);
+ else // or fall back to a replacement character
+ nCharCode = '?';
+ }
- // get the advance width for the current UCS-4 code point
+ // get the advance width for the current UTF-32 code point
int nGlyphWidth = mrWinFontEntry.GetCachedGlyphWidth( nCharCode );
if( nGlyphWidth == -1 )
{
@@ -438,7 +445,7 @@ bool SimpleWinLayout::LayoutText( ImplLayoutArgs& rArgs )
mpGlyphAdvances[ i ] = nGlyphWidth;
mnWidth += nGlyphWidth;
- // remaining codes of surrogate pair get a zero width
+ // the second half of surrogate pair gets a zero width
if( bSurrogate && ((i+1) < mnGlyphCount) )
mpGlyphAdvances[ i+1 ] = 0;
diff --git a/vcl/win/source/window/salframe.cxx b/vcl/win/source/window/salframe.cxx
index 86ef843ac779..5eef35c1f2a5 100644
--- a/vcl/win/source/window/salframe.cxx
+++ b/vcl/win/source/window/salframe.cxx
@@ -1582,7 +1582,7 @@ void WinSalFrame::SetPosSize( long nX, long nY, long nWidth, long nHeight,
aRect.bottom = pt.y+2;
// dualmonitor support:
- // Get screensize of the monitor whith the mouse pointer
+ // Get screensize of the monitor with the mouse pointer
ImplSalGetWorkArea( mhWnd, &aRect, &aRect );
nX = ((aRect.right-aRect.left)-nWidth)/2 + aRect.left;
@@ -4177,7 +4177,7 @@ static void SetMaximizedFrameGeometry( HWND hWnd, WinSalFrame* pFrame, RECT* pPa
// calculate and set frame geometry of a maximized window - useful if the window is still hidden
// dualmonitor support:
- // Get screensize of the monitor whith the mouse pointer
+ // Get screensize of the monitor with the mouse pointer
RECT aRectMouse;
if( ! pParentRect )
@@ -4841,7 +4841,7 @@ static int ImplMenuChar( HWND, WPARAM wParam, LPARAM lParam )
if( nFound == 1 )
nRet = MAKELRESULT( idxFound, MNC_EXECUTE );
else
- // duplicate mnemonics, just select the next occurence
+ // duplicate mnemonics, just select the next occurrence
nRet = MAKELRESULT( idxFound, MNC_SELECT );
return nRet;
@@ -5111,7 +5111,7 @@ static int ImplHandleMenuSelect( HWND hWnd, WPARAM wParam, LPARAM lParam )
long nRet = 0;
if ( hMenu && !pFrame->mLastActivatedhMenu )
{
- // we never activated a menu (ie, no WM_INITMENUPOPUP has occured yet)
+ // we never activated a menu (ie, no WM_INITMENUPOPUP has occurred yet)
// which means this must be the menubar -> send activation/deactivation
SalMenuEvent aMenuEvt;
WinSalMenuItem *pSalMenuItem = ImplGetSalMenuItem( hMenu, nId, bByPosition );
@@ -6208,10 +6208,10 @@ LRESULT CALLBACK SalFrameWndProc( HWND hWnd, UINT nMsg, WPARAM wParam, LPARAM lP
if (Application::GetSettings().GetMiscSettings().GetEnableATToolSupport())
{
- // Make sure to launch Accessibiliity only the following criterias are satisfied to avoid RFT interrupts regular acc processing
+ // Make sure to launch Accessibiliity only the following criteria are satisfied to avoid RFT interrupts regular acc processing
if (g_acc_manager1 == NULL)
{
- sal_Bool bCancelled;
+ sal_Bool bCancelled(sal_False);
InitAccessBridge(sal_False,bCancelled);
if( bCancelled )
break;
diff --git a/vos/inc/vos/pipe.hxx b/vos/inc/vos/pipe.hxx
index 65fef198c7b9..5a32468481e1 100644
--- a/vos/inc/vos/pipe.hxx
+++ b/vos/inc/vos/pipe.hxx
@@ -172,13 +172,13 @@ public:
@param pBuffer [in] Points to a buffer that contains the send-data.
@param BytesToSend [in] The number of bytes to send. pBuffer must have at least
this size.
- @return the number of transfered bytes.
+ @return the number of transferred bytes.
*/
sal_Int32 SAL_CALL send(const void* pBuffer, sal_uInt32 BytesToSend);
- /** Delivers a constant decribing the last error for the pipe system.
- @return ENONE if no error occured, invalid_PipeError if
- an unknown (unmapped) error occured, otherwise an enum describing the
+ /** Delivers a constant describing the last error for the pipe system.
+ @return ENONE if no error occurred, invalid_PipeError if
+ an unknown (unmapped) error occurred, otherwise an enum describing the
error.
*/
TPipeError SAL_CALL getError() const;
diff --git a/vos/inc/vos/process.hxx b/vos/inc/vos/process.hxx
index 8b0e7408e46e..c03387296dd4 100644
--- a/vos/inc/vos/process.hxx
+++ b/vos/inc/vos/process.hxx
@@ -86,7 +86,7 @@ public:
/** startup child processes.
@see OStartupInfo
Used for starting an monitoring child processes with special features:
- <ul><li>setting enviroments,
+ <ul><li>setting environments,
<li>setting working directories,
<li>setting user rights and security,
<li>providing ioresources like file descriptors and sockets.</ul>
@@ -116,7 +116,7 @@ public:
enum TProcessError {
E_None = osl_Process_E_None, /* no error */
E_NotFound = osl_Process_E_NotFound, /* image not found */
- E_TimedOut = osl_Process_E_TimedOut, /* timout occured */
+ E_TimedOut = osl_Process_E_TimedOut, /* timout occurred */
E_NoPermission = osl_Process_E_NoPermission, /* permission denied */
E_Unknown = osl_Process_E_Unknown, /* unknown error */
E_InvalidError = osl_Process_E_InvalidError /* unmapped error */
@@ -171,7 +171,7 @@ public:
If there are any ioresources provided from the calling process, this
function returns only, if the child process calls OStartupInfo::acceptIOResource().
@param Options [in] describes the execution mode.
- @return only not eNONE, if too much enviroments are added.
+ @return only not eNONE, if too much environments are added.
@see OStartupInfo::acceptIOResource
*/
TProcessError SAL_CALL execute(TProcessOption Options,
@@ -186,7 +186,7 @@ public:
function returns only, if the child process calls OStartupInfo::acceptIOResource().
@param Options [in] describes the execution mode.
@param Security [in] is a given security object for one logged in user.
- @return eNONE, if the proccess could be executed, otherwise an errorcode.
+ @return eNONE, if the process could be executed, otherwise an errorcode.
@see OStartupInfo::acceptIOResource
*/
TProcessError SAL_CALL execute(TProcessOption Options,
@@ -228,7 +228,7 @@ public:
enum TStartupError {
E_None = osl_Process_E_None, /* no error */
E_NotFound = osl_Process_E_NotFound, /* image not found */
- E_TimedOut = osl_Process_E_TimedOut, /* timout occured */
+ E_TimedOut = osl_Process_E_TimedOut, /* timout occurred */
E_NoPermission = osl_Process_E_NoPermission, /* permission denied */
E_Unknown = osl_Process_E_Unknown, /* unknown error */
E_InvalidError = osl_Process_E_InvalidError /* unmapped error */
@@ -256,11 +256,11 @@ public:
TStartupError SAL_CALL getExecutableFile(::rtl::OUString& strImageName)
const;
- /** Get the value of one enviroment variable.
+ /** Get the value of one environment variable.
@param Name [in] denotes the name of the variable to get.
@param Buffer [out] is the buffer where the value of this variable is returned.
@param Max [in] is the size of this buffer.
- @return eNONE, if the variable exist in the enviroment, otherwise False.
+ @return eNONE, if the variable exist in the environment, otherwise False.
*/
TStartupError SAL_CALL getEnvironment(const ::rtl::OUString& strVar, ::rtl::OUString& strValue);
};
diff --git a/vos/inc/vos/signal.hxx b/vos/inc/vos/signal.hxx
index 603b5e03b7ae..e3eaceb15f7c 100644
--- a/vos/inc/vos/signal.hxx
+++ b/vos/inc/vos/signal.hxx
@@ -72,7 +72,7 @@ public:
/// Constructor
OSignalHandler();
- /// Destructor kills thread if neccessary
+ /// Destructor kills thread if necessary
virtual ~OSignalHandler();
static TSignalAction SAL_CALL raise(sal_Int32 Signal, void *pData = 0);
diff --git a/vos/inc/vos/socket.hxx b/vos/inc/vos/socket.hxx
index 8814007283cc..cb512da5e352 100644
--- a/vos/inc/vos/socket.hxx
+++ b/vos/inc/vos/socket.hxx
@@ -175,7 +175,7 @@ public:
enum TResult {
TResult_Ok = osl_Socket_Ok, /* successful completion */
- TResult_Error = osl_Socket_Error, /* error occured, check osl_getLastSocketError() for details */
+ TResult_Error = osl_Socket_Error, /* error occurred, check osl_getLastSocketError() for details */
TResult_TimedOut = osl_Socket_TimedOut, /* blocking operation timed out */
TResult_Interrupted = osl_Socket_Interrupted, /* blocking operation was interrupted */
TResult_InProgress = osl_Socket_InProgress /* nonblocking operation is in progress */
@@ -566,7 +566,7 @@ public:
You can specify a timeout-value in seconds/nanoseconds that denotes
how sal_Int32 the operation will block if the Socket is not ready.
@return True if read operations (recv, recvFrom, accept) on the Socket
- will NOT block; False if it would block or if an error occured.
+ will NOT block; False if it would block or if an error occurred.
@param pTimeout if 0, the operation will block without a timeout. Otherwise
the specified amout of time.
@@ -577,7 +577,7 @@ public:
You can specify a timeout-value in seconds/nanoseconds that denotes
how sal_Int32 the operation will block if the Socket is not ready.
@return True if send operations (send, sendTo) on the Socket
- will NOT block; False if it would block or if an error occured.
+ will NOT block; False if it would block or if an error occurred.
@param pTimeout if 0, the operation will block without a timeout. Otherwise
the specified amout of time.
@@ -589,7 +589,7 @@ public:
how sal_Int32 the operation will block if the Socket has no pending OOB data.
@return True if OOB-request operations (recv with appropriate flags)
- on the Socket will NOT block; False if it would block or if an error occured.
+ on the Socket will NOT block; False if it would block or if an error occurred.
@param pTimeout if 0, the operation will block without a timeout. Otherwise
the specified amout of time.
@@ -633,7 +633,7 @@ public:
</ul>
@return The size of the attribute copied into pBuffer ot -1 if an error
- occured.
+ occurred.
*/
sal_Int32 SAL_CALL getOption(TSocketOption Option,
void* pBuffer,
@@ -779,7 +779,7 @@ public:
sal_Int32 SAL_CALL setRecvBufSize(sal_Int32 size =-1) const;
/** Disables the Nagle algorithm for send coalescing. (Do not
- collect data until a packet is full, instead send immediatly.
+ collect data until a packet is full, instead send immediately.
This increases network traffic but might improve response-times.)
@param opt 1 sets, 0 resets, -1 won't change anything
@return the previous setting
@@ -794,9 +794,9 @@ public:
*/
void SAL_CALL getError(::rtl::OUString& strError) const;
- /** Delivers a constant decribing the last error for the socket system.
- @return ENONE if no error occured, invalid_SocketError if
- an unknown (unmapped) error occured, otherwise an enum describing the
+ /** Delivers a constant describing the last error for the socket system.
+ @return ENONE if no error occurred, invalid_SocketError if
+ an unknown (unmapped) error occurred, otherwise an enum describing the
error.
*/
TSocketError SAL_CALL getError() const;
@@ -918,7 +918,7 @@ public:
<li> TMsg_MaxIOVLen
</ul>
- @return the number of transfered bytes.
+ @return the number of transferred bytes.
*/
sal_Int32 SAL_CALL send(const void* pBuffer,
sal_uInt32 BytesToSend,
@@ -1110,7 +1110,7 @@ public:
<li> TMsg_MaxIOVLen
</ul>
- @return the number of transfered bytes.
+ @return the number of transferred bytes.
*/
sal_Int32 SAL_CALL sendTo(const OSocketAddr& ReceiverAddr,
const void* pBuffer,
diff --git a/vos/inc/vos/thread.hxx b/vos/inc/vos/thread.hxx
index 663322a7738c..ed11f61d9a2a 100644
--- a/vos/inc/vos/thread.hxx
+++ b/vos/inc/vos/thread.hxx
@@ -87,7 +87,7 @@ public:
/// Constructor
OThread();
- /// Destructor kills thread if neccessary
+ /// Destructor kills thread if necessary
virtual ~OThread();
/** Create running instance of a thread.
@@ -211,7 +211,7 @@ public:
virtual ~OThreadData();
/** Set the data associated with the data key.
- @returns True if operation was successfull
+ @returns True if operation was successful
*/
sal_Bool SAL_CALL setData(void *pData);
diff --git a/vos/source/pipe.cxx b/vos/source/pipe.cxx
index 0e65313c8759..9f66835f21fd 100644
--- a/vos/source/pipe.cxx
+++ b/vos/source/pipe.cxx
@@ -346,7 +346,7 @@ sal_Int32 OStreamPipe::read(void* pBuffer, sal_uInt32 n) const
{
VOS_ASSERT(m_pPipeRef && (*m_pPipeRef)());
- /* loop until all desired bytes were read or an error occured */
+ /* loop until all desired bytes were read or an error occurred */
sal_Int32 BytesRead= 0;
sal_Int32 BytesToRead= n;
while (BytesToRead > 0)
@@ -356,7 +356,7 @@ sal_Int32 OStreamPipe::read(void* pBuffer, sal_uInt32 n) const
pBuffer,
BytesToRead);
- /* error occured? */
+ /* error occurred? */
if(RetVal <= 0)
{
break;
@@ -377,7 +377,7 @@ sal_Int32 OStreamPipe::write(const void* pBuffer, sal_uInt32 n)
{
VOS_ASSERT(m_pPipeRef && (*m_pPipeRef)());
- /* loop until all desired bytes were send or an error occured */
+ /* loop until all desired bytes were send or an error occurred */
sal_Int32 BytesSend= 0;
sal_Int32 BytesToSend= n;
while (BytesToSend > 0)
@@ -388,7 +388,7 @@ sal_Int32 OStreamPipe::write(const void* pBuffer, sal_uInt32 n)
pBuffer,
BytesToSend);
- /* error occured? */
+ /* error occurred? */
if(RetVal <= 0)
{
break;
diff --git a/vos/source/socket.cxx b/vos/source/socket.cxx
index 06b89aa3026d..45371c90a756 100644
--- a/vos/source/socket.cxx
+++ b/vos/source/socket.cxx
@@ -1412,7 +1412,7 @@ sal_Int32 OStreamSocket::read(void* pBuffer, sal_uInt32 n) const
return -1;
}
- /* loop until all desired bytes were read or an error occured */
+ /* loop until all desired bytes were read or an error occurred */
sal_uInt32 BytesRead= 0;
sal_uInt32 BytesToRead= n;
while (BytesToRead > 0)
@@ -1423,7 +1423,7 @@ sal_Int32 OStreamSocket::read(void* pBuffer, sal_uInt32 n) const
BytesToRead,
osl_Socket_MsgNormal);
- /* error occured? */
+ /* error occurred? */
if(RetVal <= 0)
{
break;
@@ -1459,7 +1459,7 @@ sal_Int32 OStreamSocket::write(const void* pBuffer, sal_uInt32 n)
return -1;
}
- /* loop until all desired bytes were send or an error occured */
+ /* loop until all desired bytes were send or an error occurred */
sal_uInt32 BytesSend= 0;
sal_uInt32 BytesToSend= n;
while (BytesToSend > 0)
@@ -1471,7 +1471,7 @@ sal_Int32 OStreamSocket::write(const void* pBuffer, sal_uInt32 n)
BytesToSend,
osl_Socket_MsgNormal);
- /* error occured? */
+ /* error occurred? */
if(RetVal <= 0)
{
break;
diff --git a/winaccessibility/source/UAccCOM/EnumVariant.cpp b/winaccessibility/source/UAccCOM/EnumVariant.cpp
index 271b288df42b..e61eac066890 100644
--- a/winaccessibility/source/UAccCOM/EnumVariant.cpp
+++ b/winaccessibility/source/UAccCOM/EnumVariant.cpp
@@ -178,7 +178,7 @@ long CEnumVariant::GetCountOfElements()
}
/**
- * Set memeber m_pXAccessibleSelection to NULL and m_lCurrent to m_lLBound.
+ * Set member m_pXAccessibleSelection to NULL and m_lCurrent to m_lLBound.
* @param.
* @return Result
*/
diff --git a/winaccessibility/source/UAccCOM/MAccessible.cpp b/winaccessibility/source/UAccCOM/MAccessible.cpp
index b352068b8d0f..5601b9467d06 100644
--- a/winaccessibility/source/UAccCOM/MAccessible.cpp
+++ b/winaccessibility/source/UAccCOM/MAccessible.cpp
@@ -110,7 +110,7 @@ BSTR IA2_STATES_NAME[] =
_T("Horizontal"),
_T("Iconified"),
_T("Invalid Entry"),
- _T("Manages Decendents"),
+ _T("Manages Descendants"),
_T("Modal"),
_T("Multi Line"),
_T("Opaque"),
@@ -1502,7 +1502,7 @@ IMAccessible* CMAccessible::GetNavigateChildForDM(VARIANT varCur, short flags)
/**
* Return first child for parent container, process differently according
-* to whether it is decendant manage
+* to whether it is descendant manage
* @param varStart, the start child id of this navigation action.
* @param pvarEndUpAt, [in,out] the end up child of this navigation action.
* @return S_OK if successful and E_FAIL if failure.
@@ -1539,7 +1539,7 @@ HRESULT CMAccessible::GetFirstChild(VARIANT varStart,VARIANT* pvarEndUpAt)
/**
* Return last child for parent container, process differently according
-* to whether it is decendant manage
+* to whether it is descendant manage
* @param varStart, the start child id of this navigation action.
* @param pvarEndUpAt, [in,out] the end up child of this navigation action.
* @return S_OK if successful and E_FAIL if failure.
@@ -1574,7 +1574,7 @@ HRESULT CMAccessible::GetLastChild(VARIANT varStart,VARIANT* pvarEndUpAt)
}
/**
-* The method GetNextSibling is general, whatever it is decendant manage or not
+* The method GetNextSibling is general, whatever it is descendant manage or not
* Get the next sibling object.
* @param varStart, the start child id of this navigation action.
* @param pvarEndUpAt, [in,out] the end up child of this navigation action.
@@ -1609,7 +1609,7 @@ HRESULT CMAccessible::GetNextSibling(VARIANT varStart,VARIANT* pvarEndUpAt)
}
/**
-*the method GetPreSibling is general, whatever it is decendant manage or not
+*the method GetPreSibling is general, whatever it is descendant manage or not
* @param varStart, the start child id of this navigation action.
* @param pvarEndUpAt, [in,out] the end up child of this navigation action.
* @return S_OK if successful and E_FAIL if failure.
diff --git a/winaccessibility/source/UAccCOM/MAccessible.h b/winaccessibility/source/UAccCOM/MAccessible.h
index 5e298e257f6a..4209cb27fce4 100644
--- a/winaccessibility/source/UAccCOM/MAccessible.h
+++ b/winaccessibility/source/UAccCOM/MAccessible.h
@@ -244,7 +244,7 @@ private:
// the helper methods in order to implement the above public methods
IMAccessible* GetChildInterface(long dChildIndex);//notice here the parameter is child index,not child id
- IMAccessible* GetNavigateChildForDM(VARIANT varCur,short flags);//for decendant manage
+ IMAccessible* GetNavigateChildForDM(VARIANT varCur,short flags);//for descendant manage
HRESULT GetFirstChild(VARIANT varStart,VARIANT* pvarEndUpAt);//for accNavigate implementation
HRESULT GetLastChild(VARIANT varStart,VARIANT* pvarEndUpAt);//for accNavigate implementation
HRESULT GetNextSibling(VARIANT varStart,VARIANT* pvarEndUpAt);//for accNavigate implementation
@@ -265,7 +265,7 @@ private:
public:
STDMETHOD(Get_XAccChildID)(/*[out,retval]*/ long* childID);
// AccObjectManagerAgent is a management object in UNO, here keep its pointer for
- // the implementation of accNavigate when decendant manage happens for List,Tree, or Table
+ // the implementation of accNavigate when descendant manage happens for List,Tree, or Table
// AccObjectManagerAgent and the following UNO objects XAccessble,XAccessibleSelection,
// XAccessibleAction are all used to operate UNO accessiblility information directly when
// implement some specific MSAA methods,such as accSelection,accNavigate
diff --git a/winaccessibility/source/service/AccObject.cxx b/winaccessibility/source/service/AccObject.cxx
index 8806dabcb670..802d81cf9f79 100644
--- a/winaccessibility/source/service/AccObject.cxx
+++ b/winaccessibility/source/service/AccObject.cxx
@@ -94,7 +94,7 @@ AccObject::~AccObject()
/**
* Insert a child element.
* @param pChild Child element that should be inserted into child list.
- * @param pos Insert postion.
+ * @param pos Insert position.
* @return
*/
void AccObject::InsertChild( AccObject* pChild,short pos )
@@ -120,7 +120,7 @@ void AccObject::InsertChild( AccObject* pChild,short pos )
/**
* Delete a child element
* @param pChild Child element that should be inserted into child list.
- * @param pos Insert postion.
+ * @param pos Insert position.
* @return
*/
void AccObject::DeleteChild( AccObject* pChild )
diff --git a/winaccessibility/source/service/AccObjectManagerAgent.cxx b/winaccessibility/source/service/AccObjectManagerAgent.cxx
index 1b29480dd04b..d47c964c0f1c 100644
--- a/winaccessibility/source/service/AccObjectManagerAgent.cxx
+++ b/winaccessibility/source/service/AccObjectManagerAgent.cxx
@@ -238,7 +238,7 @@ void AccObjectManagerAgent::UpdateState( com::sun::star::accessibility::XAccess
}
/**
- * Interface of notify MSAA event when some UNO event occured.
+ * Interface of notify MSAA event when some UNO event occurred.
* @param pXAcc Uno XAccessible interface of control.
* @param pEvent UNO event ID.
* @return If the method is correctly processed.
diff --git a/wizards/com/sun/star/wizards/agenda/AgendaTemplate.java b/wizards/com/sun/star/wizards/agenda/AgendaTemplate.java
index 6557affe9b34..8d5514056fbc 100644
--- a/wizards/com/sun/star/wizards/agenda/AgendaTemplate.java
+++ b/wizards/com/sun/star/wizards/agenda/AgendaTemplate.java
@@ -358,7 +358,7 @@ public class AgendaTemplate extends TextDocument implements TemplateConsts, Data
/**
* itemsCache is a Map containing all agenda item. These are object which
- * "write themselfs" to the table, given a table cursor.
+ * "write themselves" to the table, given a table cursor.
* A cache is used in order to reuse the objects, instead of recreate them.
* This method fills the cache will all items objects (names and headings).
*/
@@ -483,7 +483,7 @@ public class AgendaTemplate extends TextDocument implements TemplateConsts, Data
}
/**
- * locates the titles (name, location, date, time) and saves a reference to thier Text ranges.
+ * locates the titles (name, location, date, time) and saves a reference to their Text ranges.
*
*/
private void initializeTitles()
@@ -1019,7 +1019,7 @@ public class AgendaTemplate extends TextDocument implements TemplateConsts, Data
String cellName = PropertyNames.EMPTY_STRING;
/* now go through all items that belong to this
- * table. Check each one agains the model. If it should
+ * table. Check each one against the model. If it should
* be display, call it's write method.
* All items are of type AgendaItem which means they write
* two cells to the table: a title (text) and a placeholder.
diff --git a/wizards/com/sun/star/wizards/agenda/AgendaWizardDialogImpl.java b/wizards/com/sun/star/wizards/agenda/AgendaWizardDialogImpl.java
index cc4bcb11c295..905564b4799e 100644
--- a/wizards/com/sun/star/wizards/agenda/AgendaWizardDialogImpl.java
+++ b/wizards/com/sun/star/wizards/agenda/AgendaWizardDialogImpl.java
@@ -277,7 +277,7 @@ public class AgendaWizardDialogImpl extends AgendaWizardDialog
});
}
- /** used in developement to start the wizard */
+ /** used in development to start the wizard */
public static void main(String args[])
{
String ConnectStr = "uno:socket,host=127.0.0.1,port=8100;urp,negotiate=0,forcesynchronous=1;StarOffice.ServiceManager";
@@ -357,10 +357,10 @@ public class AgendaWizardDialogImpl extends AgendaWizardDialog
private FileAccess fileAccess1;
/** convenience method.
* instead of creating a FileAccess object every time
- * it is needed, I have a FileAccess object memeber.
+ * it is needed, I have a FileAccess object member.
* the first time it is needed it will be created, and
* then be reused...
- * @return the FileAccess memeber object.
+ * @return the FileAccess member object.
*/
private FileAccess getFileAccess() {
if (fileAccess1 == null)
@@ -411,7 +411,7 @@ public class AgendaWizardDialogImpl extends AgendaWizardDialog
/**
* is called when the user
* changes the path through the "save as" dialog.
- * The path displayed is a translated, user-friendly, platform dependant path.
+ * The path displayed is a translated, user-friendly, platform dependent path.
* @param url the new save url.
*/
private void setFilename(String url) {
diff --git a/wizards/com/sun/star/wizards/agenda/TopicsControl.java b/wizards/com/sun/star/wizards/agenda/TopicsControl.java
index 1d75819f9ede..ac72b8e01a1c 100644
--- a/wizards/com/sun/star/wizards/agenda/TopicsControl.java
+++ b/wizards/com/sun/star/wizards/agenda/TopicsControl.java
@@ -51,7 +51,7 @@ import com.sun.star.wizards.ui.event.MethodInvocation;
* @author rpiterman
* This class implements the UI functionality of the topics scroller control.
* <br/>
- * During developement, there has been a few changes which were not *fully* done -
+ * During development, there has been a few changes which were not *fully* done -
* mainly in converting the topics and time boxes from combobox and time box to normal textboxes,
* so in the code they might be referenced as combobox or timebox. This should be
* rather understood as topicstextbox and timetextbox.
@@ -142,7 +142,7 @@ public class TopicsControl extends ControlScroller implements XFocusListener
/**
* create a new TopicControl. Since this is used specifically for the
- * agenda dialog, I use step 5, and constant location - and need no paramter...
+ * agenda dialog, I use step 5, and constant location - and need no parameter...
* @param dialog the parent dialog
* @param xmsf service factory
* @param agenda the Agenda configuration data (contains the current topics data).
diff --git a/wizards/com/sun/star/wizards/common/ConfigNode.java b/wizards/com/sun/star/wizards/common/ConfigNode.java
index 8b3a85f26348..d07b98be31c6 100644
--- a/wizards/com/sun/star/wizards/common/ConfigNode.java
+++ b/wizards/com/sun/star/wizards/common/ConfigNode.java
@@ -24,7 +24,7 @@ package com.sun.star.wizards.common;
/**
* This Interface specifies a method of an object which is
- * capable of reading adn writing its data out of the
+ * capable of reading and writing its data out of the
* OO Configuration. <br/>
* There are 2 direct implementations: ConfigGroup and ConfigSet.
* The root is the first Java Object in the configuration hirarchie.
diff --git a/wizards/com/sun/star/wizards/common/Helper.java b/wizards/com/sun/star/wizards/common/Helper.java
index a659d30f8d71..e627e524ce8e 100644
--- a/wizards/com/sun/star/wizards/common/Helper.java
+++ b/wizards/com/sun/star/wizards/common/Helper.java
@@ -279,7 +279,7 @@ public class Helper
* @author bc93774
* checks if the value of an object that represents an array is null.
* check beforehand if the Object is really an array with "AnyConverter.IsArray(oObject)
- * @param oValue the paramter that has to represent an object
+ * @param oValue the parameter that has to represent an object
* @return a null reference if the array is empty
*/
public static Object getArrayValue(Object oValue)
diff --git a/wizards/com/sun/star/wizards/common/NumericalHelper.java b/wizards/com/sun/star/wizards/common/NumericalHelper.java
index 9bf6f5ee17a7..4842c644ba67 100644
--- a/wizards/com/sun/star/wizards/common/NumericalHelper.java
+++ b/wizards/com/sun/star/wizards/common/NumericalHelper.java
@@ -63,7 +63,7 @@ public class NumericalHelper
*/
private NumericalHelper()
{
- // private c'tor, so noone can instantiate
+ // private c'tor, so no one can instantiate
}
/**
@@ -1555,7 +1555,7 @@ public class NumericalHelper
/* converison idea: every digit is written with a maximum of two
* different roman symbols, using three in total, e.g. CC, CD,
* DCC, CM for the hundreds (meaning 200, 400, 700 and 900).
- * So every digit is converted seperately with regard to the
+ * So every digit is converted separately with regard to the
* special cases 4 and 9.
*/
int symbolIndex = 0;
diff --git a/wizards/com/sun/star/wizards/common/SystemDialog.java b/wizards/com/sun/star/wizards/common/SystemDialog.java
index 0125f6c4b89c..f72e58e31641 100644
--- a/wizards/com/sun/star/wizards/common/SystemDialog.java
+++ b/wizards/com/sun/star/wizards/common/SystemDialog.java
@@ -353,7 +353,7 @@ public class SystemDialog
}
/**
- * just like the other showMessageBox(...) method, but recieves a
+ * just like the other showMessageBox(...) method, but receives a
* peer argument to use to create the message box.
* @param xMSF
* @param peer
diff --git a/wizards/com/sun/star/wizards/reportbuilder/layout/ReportBuilderLayouter.java b/wizards/com/sun/star/wizards/reportbuilder/layout/ReportBuilderLayouter.java
index 2903dfe43e88..55c7a75142d2 100644
--- a/wizards/com/sun/star/wizards/reportbuilder/layout/ReportBuilderLayouter.java
+++ b/wizards/com/sun/star/wizards/reportbuilder/layout/ReportBuilderLayouter.java
@@ -1262,7 +1262,7 @@ abstract public class ReportBuilderLayouter implements IReportBuilderLayouter
XShape aShape = UnoRuntime.queryInterface(XShape.class, aClone);
// normally 'createClone' will create a real clone of the component,
- // but there seems some problems, we have to controll.
+ // but there seems some problems, we have to control.
copyProperties(aComponent, aClone);
// aShape.setPosition(aComponent.getPosition());
diff --git a/wizards/com/sun/star/wizards/ui/DocumentPreview.java b/wizards/com/sun/star/wizards/ui/DocumentPreview.java
index 478800773b79..d25d469cb51f 100644
--- a/wizards/com/sun/star/wizards/ui/DocumentPreview.java
+++ b/wizards/com/sun/star/wizards/ui/DocumentPreview.java
@@ -134,7 +134,7 @@ public class DocumentPreview
/*********************************************************************
create a new frame with a new container window inside,
- which isnt part of the global frame tree.
+ which isn't part of the global frame tree.
Attention:
a) This frame wont be destroyed by the office. It must be closed by you!
diff --git a/wizards/com/sun/star/wizards/ui/UnoDialog2.java b/wizards/com/sun/star/wizards/ui/UnoDialog2.java
index b50ce3857a61..c0a44802080b 100644
--- a/wizards/com/sun/star/wizards/ui/UnoDialog2.java
+++ b/wizards/com/sun/star/wizards/ui/UnoDialog2.java
@@ -336,7 +336,7 @@ public class UnoDialog2 extends UnoDialog implements EventNames
});
Helper.setUnoPropertyValues(xControlModel, sPropNames, oPropValues);
//setControlPropertiesDebug(xControlModel, sPropNames, oPropValues);
- //System.out.println(" Setting props successfull !");
+ //System.out.println(" Setting props successful !");
Helper.setUnoPropertyValue(xControlModel, PropertyNames.PROPERTY_NAME, componentName);
}
catch (Exception ex)
diff --git a/wizards/com/sun/star/wizards/ui/event/DataAware.java b/wizards/com/sun/star/wizards/ui/event/DataAware.java
index d54a1cf74386..50882f4cada1 100644
--- a/wizards/com/sun/star/wizards/ui/event/DataAware.java
+++ b/wizards/com/sun/star/wizards/ui/event/DataAware.java
@@ -222,12 +222,12 @@ public abstract class DataAware {
/**
* Value objects read and write a value from and
* to an object. Typically using reflection and JavaBeans properties
- * or directly using memeber reflection API.
+ * or directly using member reflection API.
* DataAware delegates the handling of the DataObject
* to a Value object.
* 2 implementations currently exist: PropertyValue,
* using JavaBeans properties reflection, and DataAwareFields classes
- * which implement different memeber types.
+ * which implement different member types.
*/
public interface Value {
/**
@@ -246,7 +246,7 @@ public abstract class DataAware {
* checks if this Value object can handle
* the given object type as a target.
* @param type the type of a target to check
- * @return true if the given class is acceptible for
+ * @return true if the given class is acceptable for
* the Value object. False if not.
*/
public boolean isAssignable(Class type);
diff --git a/wizards/com/sun/star/wizards/web/FTPDialog.java b/wizards/com/sun/star/wizards/web/FTPDialog.java
index 65e4a787a933..5c7565342654 100644
--- a/wizards/com/sun/star/wizards/web/FTPDialog.java
+++ b/wizards/com/sun/star/wizards/web/FTPDialog.java
@@ -58,7 +58,7 @@ import com.sun.star.wizards.common.HelpIds;
* (*) entering FTP server and user information.
* (*) testing the connection.
* (*) choosing a directory on the server.
- * If a connection was established succesfully, the user may
+ * If a connection was established successfully, the user may
* press OK, which will change
* the CGPublish object propertiers according the user's input.
* If no connection was established. the OK and Choose-Dir button are disabled.
diff --git a/wizards/com/sun/star/wizards/web/ImageListDialog.java b/wizards/com/sun/star/wizards/web/ImageListDialog.java
index 275852d6f47b..3794581c2e32 100644
--- a/wizards/com/sun/star/wizards/web/ImageListDialog.java
+++ b/wizards/com/sun/star/wizards/web/ImageListDialog.java
@@ -56,7 +56,7 @@ import com.sun.star.wizards.ui.ImageList.Counter;
* so dialogs which do not need those, should set the corresponding
* members showDeselectButton and/or showOtherButton to false.
* <br/>
- * the consturctor should recieve, among others, an Array of String resources - see
+ * the consturctor should receive, among others, an Array of String resources - see
* constructor documentation for details.
*
* @author rpiterman
diff --git a/wizards/com/sun/star/wizards/web/Process.java b/wizards/com/sun/star/wizards/web/Process.java
index bac84fda2baa..e91d172936eb 100644
--- a/wizards/com/sun/star/wizards/web/Process.java
+++ b/wizards/com/sun/star/wizards/web/Process.java
@@ -530,7 +530,7 @@ public class Process implements WebWizardConst, ProcessErrors
String fn = fileAccess.getPath(targetPath, key.substring(0, key.length() - 4));
File f = new File(fn);
FileOutputStream oStream = new FileOutputStream(f);
- // Due to a problem occuring when using Xalan-Java 2.6.0 and
+ // Due to a problem occurring when using Xalan-Java 2.6.0 and
// Java 1.5.0, wrap f in a FileOutputStream here (otherwise, the
// StreamResult's getSystemId would return a "file:/..." URL while
// the Xalan code expects a "file:///..." URL):
@@ -679,7 +679,7 @@ public class Process implements WebWizardConst, ProcessErrors
/*
* here I calculate the destination filename.
- * I take the original filename (docFilename), substract the extension, (docExt) -> (fn)
+ * I take the original filename (docFilename), subtract the extension, (docExt) -> (fn)
* and find an available filename which starts with
* this filename, but with the new extension. (destExt)
*/
diff --git a/wizards/com/sun/star/wizards/web/ProcessStatusRenderer.java b/wizards/com/sun/star/wizards/web/ProcessStatusRenderer.java
index 3852c9463f73..83b29cd177ca 100644
--- a/wizards/com/sun/star/wizards/web/ProcessStatusRenderer.java
+++ b/wizards/com/sun/star/wizards/web/ProcessStatusRenderer.java
@@ -29,7 +29,7 @@ import com.sun.star.wizards.common.IRenderer;
/**
* @author rpiterman
- * recieves status calls from the status dialog which
+ * receives status calls from the status dialog which
* apears when the user clicks "create".
* allocates strings from the resources to
* display the current task status.
diff --git a/wizards/com/sun/star/wizards/web/TOCPreview.java b/wizards/com/sun/star/wizards/web/TOCPreview.java
index 98c6e0bd7d2e..d11b0d7cbfd2 100644
--- a/wizards/com/sun/star/wizards/web/TOCPreview.java
+++ b/wizards/com/sun/star/wizards/web/TOCPreview.java
@@ -47,8 +47,8 @@ import com.sun.star.wizards.web.data.CGSettings;
* Since the files are both static and dynamic (some are always the same,
* while other change according to user choices)
* I divide this tasks to two: all necessary
- * static files, which should not regularily update are copied upon
- * instanciation.
+ * static files, which should not regularly update are copied upon
+ * instantiation.
* The TOC is generated in refresh(...);
*/
public class TOCPreview
diff --git a/wizards/com/sun/star/wizards/web/WWD_Startup.java b/wizards/com/sun/star/wizards/web/WWD_Startup.java
index bd8eaf044073..decb86850e01 100644
--- a/wizards/com/sun/star/wizards/web/WWD_Startup.java
+++ b/wizards/com/sun/star/wizards/web/WWD_Startup.java
@@ -75,7 +75,7 @@ import com.sun.star.wizards.web.data.CGStyle;
* </P>
* <p>
* A Value is either a JavaBean property with
- * a Getter and a Setter or a public class Memeber.
+ * a Getter and a Setter or a public class Member.
* </P>
* When the UI Control changes, the Value changes correspondingly.
* This depends on settings a Listener which calls the updateData()
@@ -89,7 +89,7 @@ import com.sun.star.wizards.web.data.CGStyle;
* the updateUI() method whenever I change the Value.
* </P>
* To contain the Data, I use the Configuration Data Objects
- * which read themselfs out of the Configuration. they are all located under
+ * which read themselves out of the Configuration. they are all located under
* the data package.
* <p/>
* Different groups of DataAware objects are grouped into vectors.
@@ -195,7 +195,7 @@ public abstract class WWD_Startup extends WWD_General
boolean __ftp;
/**
* When the wizard starts, a new document opens.
- * The backgroundDoc memeber contains the TextDocument
+ * The backgroundDoc member contains the TextDocument
* instance used for that purpose.
*/
protected XFrame myFrame;
@@ -472,7 +472,7 @@ public abstract class WWD_Startup extends WWD_General
ConfigSet set = settings.cp_DefaultSession.cp_Publishing;
- // now if path variables are used in publisher pathes, they
+ // now if path variables are used in publisher paths, they
// are getting replaced here...
for (int i = 0; i < set.getSize(); i++)
{
diff --git a/wizards/com/sun/star/wizards/web/data/TypeDetection.java b/wizards/com/sun/star/wizards/web/data/TypeDetection.java
index 565872ba27aa..862054143ad8 100644
--- a/wizards/com/sun/star/wizards/web/data/TypeDetection.java
+++ b/wizards/com/sun/star/wizards/web/data/TypeDetection.java
@@ -64,11 +64,11 @@ public class TypeDetection
*/
public final static String PDF_DOC = "pdf";
/**
- * a Sound file (mp3/wav ect.)
+ * a Sound file (mp3/wav etc.)
*/
public final static String SOUND_FILE = "sound";
/**
- * a File which can not be handled by neither SO or a Web browser (exe, jar, zip ect.)
+ * a File which can not be handled by neither SO or a Web browser (exe, jar, zip etc.)
*/
public final static String NO_TYPE = "other";
}
diff --git a/wizards/com/sun/star/wizards/web/export/ImpressHTMLExporter.java b/wizards/com/sun/star/wizards/web/export/ImpressHTMLExporter.java
index 17c5ae8db9bf..c7520a1225da 100644
--- a/wizards/com/sun/star/wizards/web/export/ImpressHTMLExporter.java
+++ b/wizards/com/sun/star/wizards/web/export/ImpressHTMLExporter.java
@@ -46,7 +46,7 @@ public class ImpressHTMLExporter extends ConfiguredExporter
{
/* here set some filter specific properties.
- * other properties, which are not dependant on
+ * other properties, which are not dependent on
* user input are set through the exporter
* configuration.
*/
diff --git a/wizards/source/formwizard/tools.xba b/wizards/source/formwizard/tools.xba
index f94dd9708390..7a00da232db0 100644
--- a/wizards/source/formwizard/tools.xba
+++ b/wizards/source/formwizard/tools.xba
@@ -228,7 +228,7 @@ Function SetNumerics(ByVal oLocObject as Object, iLocFieldType as Integer) as Ob
&apos; Todo Why does this not work?: oLocObject.DefaultDate = CurDefaultValue
ElseIf CurControlType = cTimeBox Then &apos; com.sun.star.sdbc.DataType.DATE, com.sun.star.sdbc.DataType.TIME
oLocObject.DefaultTime = CurDefaultValue
-&apos; Todo: Property TimeFormat? frome where?
+&apos; Todo: Property TimeFormat? from where?
ElseIf CurControlType = cCheckBox Then
&apos; Todo Why does this not work?: oLocObject.DefautState = CurDefaultValue
End If
diff --git a/writerfilter/inc/doctok/WW8Document.hxx b/writerfilter/inc/doctok/WW8Document.hxx
index bbd57c1e3c16..aa513121dbc7 100644
--- a/writerfilter/inc/doctok/WW8Document.hxx
+++ b/writerfilter/inc/doctok/WW8Document.hxx
@@ -290,7 +290,7 @@ public:
virtual WW8DocumentIterator & operator++() = 0;
/**
- Recedes iterator to previous character postion of the document.
+ Recedes iterator to previous character position of the document.
*/
virtual WW8DocumentIterator & operator--() = 0;
diff --git a/writerfilter/inc/resourcemodel/TableManager.hxx b/writerfilter/inc/resourcemodel/TableManager.hxx
index b013ed9dadb1..3cdbd1d02996 100644
--- a/writerfilter/inc/resourcemodel/TableManager.hxx
+++ b/writerfilter/inc/resourcemodel/TableManager.hxx
@@ -547,7 +547,7 @@ public:
virtual void props(PropertiesPointer pProps);
/**
- Handle occurance of character 0x7.
+ Handle occurrence of character 0x7.
*/
virtual void handle0x7();
diff --git a/writerfilter/inc/resourcemodel/WW8ResourceModel.hxx b/writerfilter/inc/resourcemodel/WW8ResourceModel.hxx
index e9950e552810..15f082a10e6d 100644
--- a/writerfilter/inc/resourcemodel/WW8ResourceModel.hxx
+++ b/writerfilter/inc/resourcemodel/WW8ResourceModel.hxx
@@ -91,7 +91,7 @@ public:
/**
Pointer to reference
- @attention The ownership of a reference is transfered when
+ @attention The ownership of a reference is transferred when
the reference is passed.
*/
typedef boost::shared_ptr< Reference<T> > Pointer_t;
diff --git a/writerfilter/source/dmapper/CellColorHandler.cxx b/writerfilter/source/dmapper/CellColorHandler.cxx
index feba9c6fcb2d..deafbb6d075f 100644
--- a/writerfilter/source/dmapper/CellColorHandler.cxx
+++ b/writerfilter/source/dmapper/CellColorHandler.cxx
@@ -44,7 +44,7 @@ LoggedProperties(dmapper_logger, "CellColorHandler"),
m_nShadowType( 0 ),
m_nColor( 0xffffffff ),
m_nFillColor( 0xffffffff ),
-m_bParagraph( false )
+m_eType( Others )
{
}
/*-- 24.04.2007 09:06:35---------------------------------------------------
@@ -225,8 +225,22 @@ TablePropertyMapPtr CellColorHandler::getProperties()
nApplyColor = ( (nRed/1000) << 0x10 ) + ((nGreen/1000) << 8) + nBlue/1000;
}
- pPropertyMap->Insert( m_bParagraph ? PROP_PARA_BACK_COLOR : PROP_BACK_COLOR, false,
- uno::makeAny( nApplyColor ));
+ sal_Int32 objType = PROP_CHAR_BACK_COLOR;
+
+ switch(m_eType)
+ {
+ case P:
+ pPropertyMap->Insert( PROP_PARA_BACK_COLOR, false, uno::makeAny( nApplyColor ));
+ break;
+ case C:
+ pPropertyMap->Insert( PROP_CHAR_BACK_COLOR, false, uno::makeAny( nApplyColor ));
+ break;
+ case Others:
+ default:
+ pPropertyMap->Insert( PROP_BACK_COLOR, false, uno::makeAny( nApplyColor ));
+ break;
+ }
+
return pPropertyMap;
}
} //namespace dmapper
diff --git a/writerfilter/source/dmapper/CellColorHandler.hxx b/writerfilter/source/dmapper/CellColorHandler.hxx
index 3ecfe683bc3c..b65c4d064678 100644
--- a/writerfilter/source/dmapper/CellColorHandler.hxx
+++ b/writerfilter/source/dmapper/CellColorHandler.hxx
@@ -39,7 +39,8 @@ public:
sal_Int32 m_nShadowType;
sal_Int32 m_nColor;
sal_Int32 m_nFillColor;
- bool m_bParagraph;
+ enum Type {P, C, Others};
+ Type m_eType;
private:
// Properties
@@ -52,7 +53,7 @@ public:
::boost::shared_ptr<TablePropertyMap> getProperties();
- void setParagraph() { m_bParagraph = true; }
+ void setType(Type type) { m_eType = type; }
};
typedef boost::shared_ptr< CellColorHandler > CellColorHandlerPtr;
}}
diff --git a/writerfilter/source/dmapper/DomainMapper.cxx b/writerfilter/source/dmapper/DomainMapper.cxx
index f9ef6c5502f0..e8a9dd290bbb 100644
--- a/writerfilter/source/dmapper/DomainMapper.cxx
+++ b/writerfilter/source/dmapper/DomainMapper.cxx
@@ -1413,18 +1413,21 @@ void DomainMapper::lcl_attribute(Id nName, Value & val)
case NS_rtf::LN_endnote:
/* WRITERFILTERSTATUS: done: 0, planned: 0.5, spent: 0 */
break;
+
case NS_rtf::LN_BOOKMARKNAME:
/* WRITERFILTERSTATUS: done: 0, planned: 0.5, spent: 0 */
// sStringValue contains the bookmark name
sLocalBookmarkName = sStringValue;
break;
+
case NS_rtf::LN_IBKL:
/* WRITERFILTERSTATUS: done: 100, planned: 0.5, spent: 0.5 */
//contains the bookmark identifier - has to be added to the bookmark name imported before
//if it is already available then the bookmark should be inserted
- m_pImpl->AddBookmark( sLocalBookmarkName, sStringValue );
+ m_pImpl->AddBookmark( sLocalBookmarkName, nIntValue );
sLocalBookmarkName = ::rtl::OUString();
break;
+
case NS_rtf::LN_LISTLEVEL:
/* WRITERFILTERSTATUS: done: 0, planned: 0.5, spent: 0 */
break;
@@ -1528,7 +1531,7 @@ void DomainMapper::lcl_attribute(Id nName, Value & val)
vertical text flow (0x01), or
two lines in one layout (0x02).
For 0x01, if the higher byte of YYYY is zero, the text is not scaled to fit the line height,
- in oposite case, it is to be scaled.
+ in opposite case, it is to be scaled.
For 0x02, the higher byte of YYYY is determinig the prefix and suffix of the run:
no brackets (0x00) ,
() round brackets (0x01),
@@ -2617,7 +2620,7 @@ void DomainMapper::sprmWithProps( Sprm& rSprm, PropertyMapPtr rContext, SprmType
if( pProperties.get())
{
CellColorHandlerPtr pCellColorHandler( new CellColorHandler );
- pCellColorHandler->setParagraph();
+ pCellColorHandler->setType(CellColorHandler::P);
pProperties->resolve(*pCellColorHandler);
rContext->insert( pCellColorHandler->getProperties(), true );
}
@@ -3186,6 +3189,16 @@ void DomainMapper::sprmWithProps( Sprm& rSprm, PropertyMapPtr rContext, SprmType
break; // sprmCBrc
case NS_sprm::LN_CShd:
/* WRITERFILTERSTATUS: done: 0, planned: 0, spent: 0 */
+ {
+ writerfilter::Reference<Properties>::Pointer_t pProperties = rSprm.getProps();
+ if( pProperties.get())
+ {
+ CellColorHandlerPtr pCellColorHandler( new CellColorHandler );
+ pCellColorHandler->setType(CellColorHandler::C);
+ pProperties->resolve(*pCellColorHandler);
+ rContext->insert( pCellColorHandler->getProperties(), true );
+ }
+ }
break; // sprmCShd
case NS_sprm::LN_CIdslRMarkDel:
/* WRITERFILTERSTATUS: done: 0, planned: 2, spent: 0 */
diff --git a/writerfilter/source/dmapper/DomainMapper_Impl.cxx b/writerfilter/source/dmapper/DomainMapper_Impl.cxx
index 95ebf701397c..dba364afbcb6 100644
--- a/writerfilter/source/dmapper/DomainMapper_Impl.cxx
+++ b/writerfilter/source/dmapper/DomainMapper_Impl.cxx
@@ -3541,10 +3541,12 @@ void DomainMapper_Impl::PopFieldContext()
/*-- 11.06.2007 16:19:00---------------------------------------------------
-----------------------------------------------------------------------*/
-void DomainMapper_Impl::AddBookmark( const ::rtl::OUString& rBookmarkName, const ::rtl::OUString& rId )
+void DomainMapper_Impl::AddBookmark(
+ const ::rtl::OUString& rBookmarkName,
+ const sal_Int32 nId )
{
uno::Reference< text::XTextAppend > xTextAppend = m_aTextAppendStack.top().xTextAppend;
- BookmarkMap_t::iterator aBookmarkIter = m_aBookmarkMap.find( rId );
+ BookmarkMap_t::iterator aBookmarkIter = m_aBookmarkMap.find( nId );
//is the bookmark name already registered?
try
{
@@ -3575,7 +3577,7 @@ void DomainMapper_Impl::AddBookmark( const ::rtl::OUString& rBookmarkName, const
uno::Reference< text::XTextCursor > xCursor = xTextAppend->createTextCursorByRange( xTextAppend->getEnd() );
bool bIsStart = !xCursor->goLeft(1, false);
uno::Reference< text::XTextRange > xCurrent = xCursor->getStart();
- m_aBookmarkMap.insert(BookmarkMap_t::value_type( rId, BookmarkInsertPosition( bIsStart, rBookmarkName, xCurrent ) ));
+ m_aBookmarkMap.insert(BookmarkMap_t::value_type( nId, BookmarkInsertPosition( bIsStart, rBookmarkName, xCurrent ) ));
}
}
catch( const uno::Exception& )
@@ -3880,7 +3882,7 @@ void DomainMapper_Impl::ApplySettingsTable()
SectionPropertyMap * DomainMapper_Impl::GetSectionContext()
{
SectionPropertyMap* pSectionContext = 0;
- //the section context is not availabe before the first call of startSectionGroup()
+ //the section context is not available before the first call of startSectionGroup()
if( !IsAnyTableImport() )
{
PropertyMapPtr pContext = GetTopContextOfType(CONTEXT_SECTION);
diff --git a/writerfilter/source/dmapper/DomainMapper_Impl.hxx b/writerfilter/source/dmapper/DomainMapper_Impl.hxx
index 314d772e8d1d..1ba688395b6d 100644
--- a/writerfilter/source/dmapper/DomainMapper_Impl.hxx
+++ b/writerfilter/source/dmapper/DomainMapper_Impl.hxx
@@ -289,7 +289,7 @@ class DomainMapper_Impl
public:
typedef TableManager< ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange >, PropertyMapPtr > TableManager_t;
typedef TableDataHandler< ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange >, TablePropertyMapPtr > TableDataHandler_t;
- typedef std::map < ::rtl::OUString, BookmarkInsertPosition > BookmarkMap_t;
+ typedef std::map < sal_Int32, BookmarkInsertPosition > BookmarkMap_t;
private:
SourceDocumentType m_eDocumentType;
@@ -554,7 +554,9 @@ public:
//the end of field is reached (0x15 appeared) - the command might still be open
void PopFieldContext();
- void AddBookmark( const ::rtl::OUString& rBookmarkName, const ::rtl::OUString& rId );
+ void AddBookmark(
+ const ::rtl::OUString& rBookmarkName,
+ const sal_Int32 nId );
void AddAnnotationPosition(
const bool bStart,
diff --git a/writerfilter/source/dmapper/NumberingManager.cxx b/writerfilter/source/dmapper/NumberingManager.cxx
index bcd9960dfeff..93d0739f3d4b 100644
--- a/writerfilter/source/dmapper/NumberingManager.cxx
+++ b/writerfilter/source/dmapper/NumberingManager.cxx
@@ -674,7 +674,7 @@ void ListsManager::lcl_attribute( Id nName, Value& rVal )
{
//this strings contains the definition of the level
//the level number is marked as %n
- //these numbers can be mixed randomly toghether with seperators pre- and suffixes
+ //these numbers can be mixed randomly together with seperators pre- and suffixes
//the Writer supports only a number of upper levels to show, separators is always a dot
//and each level can have a prefix and a suffix
if(pCurrentLvl.get())
diff --git a/writerfilter/source/dmapper/PropertyMap.cxx b/writerfilter/source/dmapper/PropertyMap.cxx
index 933b77176929..4cca89e3490e 100644
--- a/writerfilter/source/dmapper/PropertyMap.cxx
+++ b/writerfilter/source/dmapper/PropertyMap.cxx
@@ -730,7 +730,7 @@ void SectionPropertyMap::CopyLastHeaderFooter( bool bFirstPage, DomainMapper_Imp
catch ( const uno::Exception& e )
{
#if DEBUG
- clog << "An exception occured in SectionPropertyMap::CopyLastHeaderFooter( ) - ";
+ clog << "An exception occurred in SectionPropertyMap::CopyLastHeaderFooter( ) - ";
clog << rtl::OUStringToOString( e.Message, RTL_TEXTENCODING_UTF8 ).getStr( ) << endl;
#endif
}
diff --git a/writerfilter/source/dmapper/StyleSheetTable.cxx b/writerfilter/source/dmapper/StyleSheetTable.cxx
index acd230ee278c..cc95662983a9 100644
--- a/writerfilter/source/dmapper/StyleSheetTable.cxx
+++ b/writerfilter/source/dmapper/StyleSheetTable.cxx
@@ -447,7 +447,7 @@ void StyleSheetTable::lcl_attribute(Id Name, Value & val)
/* WRITERFILTERSTATUS: done: 0, planned: 0, spent: 0 */
case NS_rtf::LN_UNUSED8_3:
/* WRITERFILTERSTATUS: done: 0, planned: 0, spent: 0 */
- //noone seems to care about it
+ //no one seems to care about it
break;
case NS_rtf::LN_XSTZNAME:
/* WRITERFILTERSTATUS: done: 100, planned: 0, spent: 0 */
diff --git a/writerfilter/source/doctok/WW8StructBase.hxx b/writerfilter/source/doctok/WW8StructBase.hxx
index 73e75289b35f..74f34236561e 100644
--- a/writerfilter/source/doctok/WW8StructBase.hxx
+++ b/writerfilter/source/doctok/WW8StructBase.hxx
@@ -210,15 +210,15 @@ public:
/**
Return bit value from a 32-bit unsigned value.
- @param nValue value to retreive bit from
- @param nBit number of bit to retreive (0 = least significant)
+ @param nValue value to retrieve bit from
+ @param nBit number of bit to retrieve (0 = least significant)
*/
sal_Bool getBit(sal_uInt32 nValue, sal_uInt16 nBit) const;
/**
Return nibble from a 32-bit unsigned value.
- @param nValue value to retreive nibble from (most significant bit left)
+ @param nValue value to retrieve nibble from (most significant bit left)
@param nShift amount of bits to shift right before returning least significant nibble
*/
sal_uInt8 getNibble(sal_uInt32 nValue, sal_uInt16 nShift) const;
diff --git a/writerfilter/source/doctok/resources.xmi b/writerfilter/source/doctok/resources.xmi
index f08a4bdb259d..784b42efb3f8 100644
--- a/writerfilter/source/doctok/resources.xmi
+++ b/writerfilter/source/doctok/resources.xmi
@@ -30059,7 +30059,7 @@
<UML:Attribute name="unknown">
<UML:ModelElement.taggedValue>
<UML:TaggedValue>
- <UML:TaggedValue.dataValue>unkonwn</UML:TaggedValue.dataValue>
+ <UML:TaggedValue.dataValue>unknown</UML:TaggedValue.dataValue>
<UML:TaggedValue.type>
<UML:TagDefinition xmi.idref="comment"/>
</UML:TaggedValue.type>
@@ -30117,7 +30117,7 @@
<UML:Attribute name="dropdownIndex">
<UML:ModelElement.taggedValue>
<UML:TaggedValue>
- <UML:TaggedValue.dataValue>unkonwn</UML:TaggedValue.dataValue>
+ <UML:TaggedValue.dataValue>unknown</UML:TaggedValue.dataValue>
<UML:TaggedValue.type>
<UML:TagDefinition xmi.idref="comment"/>
</UML:TaggedValue.type>
diff --git a/writerfilter/source/ooxml/README.efforts b/writerfilter/source/ooxml/README.efforts
index 91495ffce9fe..ae1e5c0f841e 100644
--- a/writerfilter/source/ooxml/README.efforts
+++ b/writerfilter/source/ooxml/README.efforts
@@ -29,7 +29,7 @@ Efforts are marked up in the code with comments like this:
The comments have to follow a case-label immediately. Consecutive
case-labels can be marked up, too. In the latter case the efforts are
-counted for the preceeding case-labels as a whole.
+counted for the preceding case-labels as a whole.
2. Extraction process
diff --git a/xmerge/source/activesync/XMergeFilter.cpp b/xmerge/source/activesync/XMergeFilter.cpp
index 53a1750abba4..25dfa4c70f8f 100644
--- a/xmerge/source/activesync/XMergeFilter.cpp
+++ b/xmerge/source/activesync/XMergeFilter.cpp
@@ -222,7 +222,7 @@ STDMETHODIMP CXMergeFilter::NextConvertFile(int nConversion, CFF_CONVERTINFO *pc
/*
* First step: Locate Java and establish the classpath. If these can't
- * be done succesfully, then avoid all further processing.
+ * be done successfully, then avoid all further processing.
*/
// Locate Java Home if it hasn't already been done.
diff --git a/xmerge/source/minicalc/java/org/openoffice/xmerge/converter/xml/sxc/minicalc/SxcDocumentDeserializerImpl.java b/xmerge/source/minicalc/java/org/openoffice/xmerge/converter/xml/sxc/minicalc/SxcDocumentDeserializerImpl.java
index 7804c5918db2..10bb4ff343e3 100644
--- a/xmerge/source/minicalc/java/org/openoffice/xmerge/converter/xml/sxc/minicalc/SxcDocumentDeserializerImpl.java
+++ b/xmerge/source/minicalc/java/org/openoffice/xmerge/converter/xml/sxc/minicalc/SxcDocumentDeserializerImpl.java
@@ -119,7 +119,7 @@ public final class SxcDocumentDeserializerImpl extends SxcDocumentDeserializer {
PalmDocument palmDoc = (PalmDocument) e.nextElement();
worksheetName[i] = palmDoc.getName();
- // Search for the "-", which seperates workbook from worksheet
+ // Search for the "-", which separates workbook from worksheet
int start = worksheetName[i].indexOf("-");
if (start != -1) {
diff --git a/xmerge/source/palmtests/qa/comparator/pdbcomparison.java b/xmerge/source/palmtests/qa/comparator/pdbcomparison.java
index 5971e1ba827f..61c2f699a014 100644
--- a/xmerge/source/palmtests/qa/comparator/pdbcomparison.java
+++ b/xmerge/source/palmtests/qa/comparator/pdbcomparison.java
@@ -249,7 +249,7 @@ public class pdbcomparison
/**
* This method populates the pdb arrays with the names of the pdbs to
- * compare. Ths listFile lists a series of entries, wherein each
+ * compare. This listFile lists a series of entries, wherein each
* line indicates the PDB names to be compared.
* <pdbname1>=<pdbname2>
*
diff --git a/xmerge/source/palmtests/qa/test_spec/convertor_test_spec.html b/xmerge/source/palmtests/qa/test_spec/convertor_test_spec.html
index a1922125bbad..394e796f0770 100644
--- a/xmerge/source/palmtests/qa/test_spec/convertor_test_spec.html
+++ b/xmerge/source/palmtests/qa/test_spec/convertor_test_spec.html
@@ -152,7 +152,7 @@ export the document.</BLOCKQUOTE>
</P>
</UL>
<H2>5.0 Test Cases</H2>
-<BLOCKQUOTE>The test cases are divided into seperate sections for
+<BLOCKQUOTE>The test cases are divided into separate sections for
each PDB format supported by XMerge, and further divided into
Convert and Merge tests within each format.&nbsp; The Convert tests
validate that XMerge can perform the round trip conversion from
@@ -389,7 +389,7 @@ than the Style-retaining functionality in version 1.1. <BR>&nbsp;</BLOCKQUOTE>
<P><B>Expected result:</B> <BR>The resultant document should
contain:
</P>
- <BLOCKQUOTE>This line is using First Line indent style. Now isnt
+ <BLOCKQUOTE>This line is using First Line indent style. Now isn't
that Kool... Also Im running short of words to say here, to wrap
this particular sentence.</BLOCKQUOTE>
</TD>
@@ -1431,7 +1431,7 @@ than the Style-retaining functionality in version 1.1. <BR>&nbsp;</BLOCKQUOTE>
c_alignment.pdb.&nbsp; <BR>Merge c_alignment.pdb to
c_alignment.sxc.&nbsp;
</P>
- <P>Logical Funtion test B4:
+ <P>Logical Function test B4:
</P>
<P>IF(Logical Test; Then Value;Else Value)
</P>
@@ -1481,7 +1481,7 @@ than the Style-retaining functionality in version 1.1. <BR>&nbsp;</BLOCKQUOTE>
TRUE in formula bar.&nbsp; <BR>Export the doc back to
c_boolean.pdb.&nbsp; <BR>Merge c_boolean.pdb to c_boolean.sxc.&nbsp;
</P>
- <P>Logical Funtion test : cells A1, A2:
+ <P>Logical Function test : cells A1, A2:
</P>
<P>A1=TRUE
</P>
@@ -1567,7 +1567,7 @@ than the Style-retaining functionality in version 1.1. <BR>&nbsp;</BLOCKQUOTE>
c_cellfloatvalue.sxc.&nbsp;
</P>
<P>The original sheet has selected Format -&gt; Cells... -&gt;
- Numbers Tab -&gt; &amp; Numbers from the list box, choosen
+ Numbers Tab -&gt; &amp; Numbers from the list box, chosen
-1234.12, tho set the Format Code to 0.00 preventing the sheet
display rounding values to two decimal places. It also has
fraction display enabled in certain cells.</P>
@@ -2265,7 +2265,7 @@ than the Style-retaining functionality in version 1.1. <BR>&nbsp;</BLOCKQUOTE>
c_multi_boolean.pdb.&nbsp; <BR>Merge c_multi_boolean.pdb to
c_multi_boolean.sxc.&nbsp;
</P>
- <P>Logical Funtion test : cells A1-A4:
+ <P>Logical Function test : cells A1-A4:
</P>
<P>A1-A4 = FALSE
</P>
diff --git a/xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/DefinedName.java b/xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/DefinedName.java
index f0d31721213e..4ef1c8e6076f 100644
--- a/xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/DefinedName.java
+++ b/xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/DefinedName.java
@@ -192,7 +192,7 @@ public class DefinedName implements BIFFRecord {
* @return the <code>String</code> containing the definition
*/
private String getDefinition() {
- // pexcel sometimes creates Name definition with no defintion, bug??
+ // pexcel sometimes creates Name definition with no definition, bug??
if(EndianConverter.readShort(cce)!=0) {
definition = fh.convertPXLToCalc(rgce);
definition = definition.substring(1); // remove the '='
@@ -202,7 +202,7 @@ public class DefinedName implements BIFFRecord {
}
/**
- * Returns the defintion
+ * Returns the definition
*
* @return the <code>String</code> containing the definition
*/
@@ -211,7 +211,7 @@ public class DefinedName implements BIFFRecord {
return fh.isRangeType();
}
/**
- * Returns the defintion
+ * Returns the definition
*
* @return the <code>String</code> containing the definition
*/
diff --git a/xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/Workbook.java b/xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/Workbook.java
index c4ee3d682579..e73a3dad120c 100644
--- a/xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/Workbook.java
+++ b/xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/Workbook.java
@@ -208,7 +208,7 @@ OfficeConstants {
}
/**
- * Adds a font recrod to the workbook
+ * Adds a font record to the workbook
*
* @param f the font record to add
*/
@@ -236,7 +236,7 @@ OfficeConstants {
/**
* Adds a ExtendedFormat record to the workbook
*
- * @param f the font recrod to add
+ * @param f the font record to add
*/
public int addExtendedFormat(Format fmt) throws IOException {
diff --git a/xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/Worksheet.java b/xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/Worksheet.java
index af872fe10086..1ffb4c352afd 100644
--- a/xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/Worksheet.java
+++ b/xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/Worksheet.java
@@ -229,7 +229,7 @@ public class Worksheet {
* Adds a cell to this worksheet. Current valdid celltypes are
* <code>FloatNumber</code>, <code>LabelCell</code> or <code>Formula</code>
*
- * @param f the font recrod to add
+ * @param f the font record to add
*/
public void addCell(BIFFRecord br) {
cells.add(br);
diff --git a/xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/formula/SymbolLookup.java b/xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/formula/SymbolLookup.java
index 19d81c2e9c93..bceb625e6559 100644
--- a/xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/formula/SymbolLookup.java
+++ b/xmerge/source/pexcel/java/org/openoffice/xmerge/converter/xml/sxc/pexcel/records/formula/SymbolLookup.java
@@ -27,7 +27,7 @@ import java.util.HashMap;
/**
* This interface defines the attributes of a lookup table for this plugin.
- * Symbols will generally be either operators (_, -, *, etc) or funtion names.
+ * Symbols will generally be either operators (_, -, *, etc) or function names.
*/
public abstract class SymbolLookup {
diff --git a/xmerge/source/pocketword/java/org/openoffice/xmerge/converter/xml/sxw/pocketword/DocumentDescriptor.java b/xmerge/source/pocketword/java/org/openoffice/xmerge/converter/xml/sxw/pocketword/DocumentDescriptor.java
index ff1536ba3951..3012e908320e 100644
--- a/xmerge/source/pocketword/java/org/openoffice/xmerge/converter/xml/sxw/pocketword/DocumentDescriptor.java
+++ b/xmerge/source/pocketword/java/org/openoffice/xmerge/converter/xml/sxw/pocketword/DocumentDescriptor.java
@@ -130,7 +130,7 @@ class DocumentDescriptor {
/*
- * This method loads the intial fixed portion of the descriptor and the
+ * This method loads the initial fixed portion of the descriptor and the
* mid-section. The mid-section is variable but Pocket Word doesn't seem
* to mind default values.
*/
diff --git a/xmerge/source/xmerge/java/org/openoffice/xmerge/converter/xml/xslt/DocumentDeserializerImpl.java b/xmerge/source/xmerge/java/org/openoffice/xmerge/converter/xml/xslt/DocumentDeserializerImpl.java
index 8a5d4fec7dee..6ea8cf2cbbd3 100644
--- a/xmerge/source/xmerge/java/org/openoffice/xmerge/converter/xml/xslt/DocumentDeserializerImpl.java
+++ b/xmerge/source/xmerge/java/org/openoffice/xmerge/converter/xml/xslt/DocumentDeserializerImpl.java
@@ -227,7 +227,7 @@ public final class DocumentDeserializerImpl
throw sOE;
}
catch(Exception e){
- System.out.println("An error occured in the transformation : "+e);
+ System.out.println("An error occurred in the transformation : "+e);
}
return baos;
}
diff --git a/xmerge/source/xmerge/java/org/openoffice/xmerge/converter/xml/xslt/DocumentSerializerImpl.java b/xmerge/source/xmerge/java/org/openoffice/xmerge/converter/xml/xslt/DocumentSerializerImpl.java
index 1773da1abf7f..0bfc7d267434 100644
--- a/xmerge/source/xmerge/java/org/openoffice/xmerge/converter/xml/xslt/DocumentSerializerImpl.java
+++ b/xmerge/source/xmerge/java/org/openoffice/xmerge/converter/xml/xslt/DocumentSerializerImpl.java
@@ -97,7 +97,7 @@ public final class DocumentSerializerImpl
/**
* Method to convert a <code>Document</code> with an xsl stylesheet.
* It creates a <code>Document</code> object, which is then transformed
- * with the Xslt processer. A <code>ConvertData </code> object is
+ * with the Xslt processor. A <code>ConvertData </code> object is
* constructed and returned.
*
* @return cd A <code>ConvertData</code> object.
@@ -283,7 +283,7 @@ public final class DocumentSerializerImpl
*/
}
catch(Exception e){
- System.out.println("An error occured in the transformation : "+e);
+ System.out.println("An error occurred in the transformation : "+e);
}
return baos;
}
diff --git a/xmerge/source/xmerge/java/org/openoffice/xmerge/util/ColourConverter.java b/xmerge/source/xmerge/java/org/openoffice/xmerge/util/ColourConverter.java
index aa900f6ec909..7db7b32946fe 100644
--- a/xmerge/source/xmerge/java/org/openoffice/xmerge/util/ColourConverter.java
+++ b/xmerge/source/xmerge/java/org/openoffice/xmerge/util/ColourConverter.java
@@ -257,7 +257,7 @@ public class ColourConverter {
int blue = colour.getBlue();
// We need to convert the pale colors to their base color rather than
- // white so we modify the rgb values if the colour is sufficently
+ // white so we modify the rgb values if the colour is sufficiently
// white
if(red>0xC0 && green>0xC0 && blue>0xC0) {
@@ -307,7 +307,7 @@ public class ColourConverter {
* is closest to White.
*
* Shades of grey will be converted to either Silver or White, where
- * Grey may be a more appropraite colour. This is handled specially
+ * Grey may be a more appropriate colour. This is handled specially
* only for Silver and White matches.
*/
switch (matchedRGB) {
diff --git a/xmerge/workben/jstyle.pl b/xmerge/workben/jstyle.pl
index cb73f77b18b1..f492e2b53ac6 100644
--- a/xmerge/workben/jstyle.pl
+++ b/xmerge/workben/jstyle.pl
@@ -238,7 +238,7 @@ line: while (<STDIN>) {
}
}
# this is the fastest way to check line length,
-# but it doesnt work with perl 3.0.
+# but it doesn't work with perl 3.0.
# if ($line =~ tr/\t/\t/ * 7 + length($line) > 80) {
# $pos = $oldp = $p = 0;
# while (($p = index($line, "\t", $p)) >= 0) {
diff --git a/xmlhelp/source/cxxhelp/provider/databases.hxx b/xmlhelp/source/cxxhelp/provider/databases.hxx
index 642186a792b0..081a65e8c926 100644
--- a/xmlhelp/source/cxxhelp/provider/databases.hxx
+++ b/xmlhelp/source/cxxhelp/provider/databases.hxx
@@ -227,7 +227,7 @@ namespace chelp {
/**
- * Returns the cascading stlye sheet used to format the HTML-output.
+ * Returns the cascading style sheet used to format the HTML-output.
* First try is language directory, second try is main installation directory.
*/
diff --git a/xmlhelp/source/cxxhelp/provider/provider.cxx b/xmlhelp/source/cxxhelp/provider/provider.cxx
index 9b8755d79271..8ee663e00221 100644
--- a/xmlhelp/source/cxxhelp/provider/provider.cxx
+++ b/xmlhelp/source/cxxhelp/provider/provider.cxx
@@ -392,7 +392,7 @@ ContentProvider::getConfiguration() const
}
catch( const uno::Exception& )
{
- OSL_ENSURE( sProvider.is(), "cant instantiate configuration" );
+ OSL_ENSURE( sProvider.is(), "can't instantiate configuration" );
}
}
@@ -495,7 +495,7 @@ void ContentProvider::subst( rtl::OUString& instpath ) const
catch( const uno::Exception&)
{
OSL_ENSURE( xCfgMgr.is(),
- "cant instantiate the special config manager " );
+ "can't instantiate the special config manager " );
}
}
diff --git a/xmlhelp/source/treeview/tvread.cxx b/xmlhelp/source/treeview/tvread.cxx
index b374b87d4670..79842ca614e4 100644
--- a/xmlhelp/source/treeview/tvread.cxx
+++ b/xmlhelp/source/treeview/tvread.cxx
@@ -831,7 +831,7 @@ TVChildTarget::getConfiguration(const Reference< XMultiServiceFactory >& m_xSMgr
}
catch( const com::sun::star::uno::Exception& )
{
- OSL_ENSURE( sProvider.is(),"cant instantiate configuration" );
+ OSL_ENSURE( sProvider.is(),"can't instantiate configuration" );
}
}
@@ -932,7 +932,7 @@ void TVChildTarget::subst( const Reference< XMultiServiceFactory >& m_xSMgr,
}
catch( const com::sun::star::uno::Exception& )
{
- OSL_ENSURE( xCfgMgr.is()," cant instantiate the special config manager " );
+ OSL_ENSURE( xCfgMgr.is()," can't instantiate the special config manager " );
}
}
diff --git a/xmloff/inc/PageMasterImportContext.hxx b/xmloff/inc/PageMasterImportContext.hxx
index 092fdaa90b79..a1dcb818b898 100644
--- a/xmloff/inc/PageMasterImportContext.hxx
+++ b/xmloff/inc/PageMasterImportContext.hxx
@@ -29,7 +29,12 @@
class PageStyleContext : public XMLPropStyleContext
{
- ::rtl::OUString sPageUsage;
+private:
+ ::rtl::OUString sPageUsage;
+
+ //UUUU
+ bool m_bIsFillStyleAlreadyConverted : 1;
+
protected:
virtual void SetAttribute( sal_uInt16 nPrefixKey,
diff --git a/xmloff/inc/txtflde.hxx b/xmloff/inc/txtflde.hxx
index 1b75d3bed822..9768e7b5181c 100644
--- a/xmloff/inc/txtflde.hxx
+++ b/xmloff/inc/txtflde.hxx
@@ -282,7 +282,7 @@ protected:
sal_Bool bOmitEmpty = sal_False, /// omit attribute, if value is empty
sal_uInt16 nPrefix = XML_NAMESPACE_TEXT); /// attribute name prefix
- /// export a string attribute taht gets a QName value
+ /// export a string attribute that gets a QName value
void ProcessString(
enum ::xmloff::token::XMLTokenEnum eXmlName, /// attribute token (namespace text)
sal_uInt16 nValuePrefix,
diff --git a/xmloff/inc/txtfldi.hxx b/xmloff/inc/txtfldi.hxx
index 17bc07260329..cf35c3e696f6 100644
--- a/xmloff/inc/txtfldi.hxx
+++ b/xmloff/inc/txtfldi.hxx
@@ -604,7 +604,7 @@ public:
};
-/** import docinfo fields with only fixed atribute */
+/** import docinfo fields with only fixed attribute */
class XMLSimpleDocInfoImportContext : public XMLTextFieldImportContext
{
const ::rtl::OUString sPropertyFixed;
@@ -1201,7 +1201,7 @@ protected:
virtual void ProcessAttribute( sal_uInt16 nAttrToken,
const ::rtl::OUString& sAttrValue );
- /// no atributes -> empty method
+ /// no attributes -> empty method
virtual void PrepareField(
const ::com::sun::star::uno::Reference<
::com::sun::star::beans::XPropertySet> & xPropertySet);
@@ -1232,7 +1232,7 @@ protected:
virtual void ProcessAttribute( sal_uInt16 nAttrToken,
const ::rtl::OUString& sAttrValue );
- /// no atributes -> empty method
+ /// no attributes -> empty method
virtual void PrepareField(
const ::com::sun::star::uno::Reference<
::com::sun::star::beans::XPropertySet> & xPropertySet);
diff --git a/xmloff/inc/xmloff/PageMasterStyleMap.hxx b/xmloff/inc/xmloff/PageMasterStyleMap.hxx
index 381dad2aa77a..e93e5677e36c 100644
--- a/xmloff/inc/xmloff/PageMasterStyleMap.hxx
+++ b/xmloff/inc/xmloff/PageMasterStyleMap.hxx
@@ -90,6 +90,17 @@
#define CTF_PM_GRAPHICFILTER (XML_PM_CTF_START + 0x0033)
#define CTF_PM_GRAPHICURL (XML_PM_CTF_START + 0x0034)
+//UUUUNeed own entries for PageMasterStyleMap since these get *filtered*
+// at export time using CTF_PM_FLAGMASK and XML_PM_CTF_START as detector
+// to find the first entry for header/footer (!), see
+// SvXMLAutoStylePoolP_Impl::exportXML, look for XML_STYLE_FAMILY_PAGE_MASTER
+#define CTF_PM_REPEAT_OFFSET_X (XML_PM_CTF_START + 0x0035)
+#define CTF_PM_REPEAT_OFFSET_Y (XML_PM_CTF_START + 0x0036)
+#define CTF_PM_FILLGRADIENTNAME (XML_PM_CTF_START + 0x0037)
+#define CTF_PM_FILLHATCHNAME (XML_PM_CTF_START + 0x0038)
+#define CTF_PM_FILLBITMAPNAME (XML_PM_CTF_START + 0x0039)
+#define CTF_PM_FILLTRANSNAME (XML_PM_CTF_START + 0x0040)
+
#define CTF_PM_SCALETO (XML_PM_CTF_START + 0x0051) // calc specific
#define CTF_PM_SCALETOPAGES (XML_PM_CTF_START + 0x0052)
#define CTF_PM_SCALETOX (XML_PM_CTF_START + 0x0053)
@@ -125,6 +136,14 @@
#define CTF_PM_HEADERMARGINLEFT (CTF_PM_HEADERFLAG|CTF_PM_MARGINLEFT)
#define CTF_PM_HEADERMARGINRIGHT (CTF_PM_HEADERFLAG|CTF_PM_MARGINRIGHT)
+//UUUUNeed own entries for PageMasterStyleMap ORed with the CTF_PM_HEADERFLAG
+#define CTF_PM_HEADERREPEAT_OFFSET_X (CTF_PM_HEADERFLAG|CTF_PM_REPEAT_OFFSET_X)
+#define CTF_PM_HEADERREPEAT_OFFSET_Y (CTF_PM_HEADERFLAG|CTF_PM_REPEAT_OFFSET_Y)
+#define CTF_PM_HEADERFILLGRADIENTNAME (CTF_PM_HEADERFLAG|CTF_PM_FILLGRADIENTNAME)
+#define CTF_PM_HEADERFILLHATCHNAME (CTF_PM_HEADERFLAG|CTF_PM_FILLHATCHNAME)
+#define CTF_PM_HEADERFILLBITMAPNAME (CTF_PM_HEADERFLAG|CTF_PM_FILLBITMAPNAME)
+#define CTF_PM_HEADERFILLTRANSNAME (CTF_PM_HEADERFLAG|CTF_PM_FILLTRANSNAME)
+
// footer
#define CTF_PM_FOOTERBORDERALL (CTF_PM_FOOTERFLAG|CTF_PM_BORDERALL)
#define CTF_PM_FOOTERBORDERTOP (CTF_PM_FOOTERFLAG|CTF_PM_BORDERTOP)
@@ -153,6 +172,14 @@
#define CTF_PM_FOOTERMARGINLEFT (CTF_PM_FOOTERFLAG|CTF_PM_MARGINLEFT)
#define CTF_PM_FOOTERMARGINRIGHT (CTF_PM_FOOTERFLAG|CTF_PM_MARGINRIGHT)
+//UUUUNeed own entries for PageMasterStyleMap ORed with the CTF_PM_FOOTERFLAG
+#define CTF_PM_FOOTERREPEAT_OFFSET_X (CTF_PM_FOOTERFLAG|CTF_PM_REPEAT_OFFSET_X)
+#define CTF_PM_FOOTERREPEAT_OFFSET_Y (CTF_PM_FOOTERFLAG|CTF_PM_REPEAT_OFFSET_Y)
+#define CTF_PM_FOOTERFILLGRADIENTNAME (CTF_PM_FOOTERFLAG|CTF_PM_FILLGRADIENTNAME)
+#define CTF_PM_FOOTERFILLHATCHNAME (CTF_PM_FOOTERFLAG|CTF_PM_FILLHATCHNAME)
+#define CTF_PM_FOOTERFILLBITMAPNAME (CTF_PM_FOOTERFLAG|CTF_PM_FILLBITMAPNAME)
+#define CTF_PM_FOOTERFILLTRANSNAME (CTF_PM_FOOTERFLAG|CTF_PM_FILLTRANSNAME)
+
#define CTF_PM_FTN_HEIGTH (XML_PM_CTF_START + 0x0060)
#define CTF_PM_FTN_LINE_WEIGTH (XML_PM_CTF_START + 0x0061)
#define CTF_PM_FTN_LINE_COLOR (XML_PM_CTF_START + 0x0062)
diff --git a/xmloff/inc/xmloff/XMLEventsImportContext.hxx b/xmloff/inc/xmloff/XMLEventsImportContext.hxx
index 400bce12efd1..3361acf34373 100644
--- a/xmloff/inc/xmloff/XMLEventsImportContext.hxx
+++ b/xmloff/inc/xmloff/XMLEventsImportContext.hxx
@@ -52,7 +52,7 @@ typedef ::std::vector< EventNameValuesPair > EventsVector;
/**
* Import <script:events> element.
*
- * The import context usually sets the events immediatly at the event
+ * The import context usually sets the events immediately at the event
* XNameReplace. If none was given on construction, it operates in
* delayed mode: All events are collected and may then be set
* with the setEvents() method.
diff --git a/xmloff/inc/xmloff/XMLShapeStyleContext.hxx b/xmloff/inc/xmloff/XMLShapeStyleContext.hxx
index 6265d8ff3cdf..1e5530fb4de8 100644
--- a/xmloff/inc/xmloff/XMLShapeStyleContext.hxx
+++ b/xmloff/inc/xmloff/XMLShapeStyleContext.hxx
@@ -41,6 +41,9 @@ protected:
::rtl::OUString m_sListStyleName;
sal_Bool m_bIsNumRuleAlreadyConverted;
+ //UUUU
+ bool m_bIsFillStyleAlreadyConverted : 1;
+
protected:
virtual void SetAttribute( sal_uInt16 nPrefixKey,
const ::rtl::OUString& rLocalName,
diff --git a/xmloff/inc/xmloff/maptype.hxx b/xmloff/inc/xmloff/maptype.hxx
index 658defc49ed7..280f97a9e0f1 100644
--- a/xmloff/inc/xmloff/maptype.hxx
+++ b/xmloff/inc/xmloff/maptype.hxx
@@ -38,7 +38,7 @@ struct XMLPropertyMapEntry
{
const sal_Char* msApiName; /// Property-Name
sal_Int32 nApiNameLength; /// length of property name
- sal_uInt16 mnNameSpace; /** declares the Namespace in wich this
+ sal_uInt16 mnNameSpace; /** declares the Namespace in which this
property exists */
enum ::xmloff::token::XMLTokenEnum meXMLName; /// XML-Name
sal_Int32 mnType; /** Bit 0..23 : XML-Type of its value
diff --git a/xmloff/inc/xmloff/prstylei.hxx b/xmloff/inc/xmloff/prstylei.hxx
index ce4321644d24..6c2acbad149f 100644
--- a/xmloff/inc/xmloff/prstylei.hxx
+++ b/xmloff/inc/xmloff/prstylei.hxx
@@ -27,12 +27,11 @@
#include "xmloff/dllapi.h"
#include "sal/types.h"
#include <com/sun/star/style/XStyle.hpp>
-#ifndef __SGI_STL_VECTOR
#include <vector>
-#endif
-#ifndef _XMLOFF_XMLSTYLE_HXX_
#include <xmloff/xmlstyle.hxx>
-#endif
+
+//UUUU
+#include <hash_set>
struct XMLPropertyState;
class SvXMLStylesContext;
@@ -41,19 +40,53 @@ namespace com { namespace sun { namespace star {
namespace beans { class XPropertySet; }
} } }
+//UUUU
+typedef std::hash_set< rtl::OUString, rtl::OUStringHash > OldFillStyleDefinitionSet;
+
class XMLOFF_DLLPUBLIC XMLPropStyleContext : public SvXMLStyleContext
{
+private:
const ::rtl::OUString msIsPhysical;
const ::rtl::OUString msFollowStyle;
::std::vector< XMLPropertyState > maProperties;
::com::sun::star::uno::Reference < ::com::sun::star::style::XStyle > mxStyle;
SvXMLImportContextRef mxStyles;
+ //UUUU
+ static OldFillStyleDefinitionSet maStandardSet;
+ static OldFillStyleDefinitionSet maHeaderSet;
+ static OldFillStyleDefinitionSet maFooterSet;
+ static OldFillStyleDefinitionSet maParaSet;
+
SAL_DLLPRIVATE XMLPropStyleContext(XMLPropStyleContext &); // not defined
SAL_DLLPRIVATE void operator =(XMLPropStyleContext &); // not defined
protected:
+ //UUUU Helper to check if the local maProperties contzains the given
+ // FillStyle tag and if the FillStyle there is different from FillStyle_NONE
+ bool doNewDrawingLayerFillStyleDefinitionsExist(
+ const ::rtl::OUString& rFillStyleTag) const;
+
+ //UUUU Helper which will deactivate all old fill definitions (identified by
+ // the given OldFillStyleDefinitionSet) in the local maProperties. Deactivation
+ // is done setting theindex to -1. It returns true when actually old fill
+ // definitions existed and were deactivated
+ bool deactivateOldFillStyleDefinitions(
+ const OldFillStyleDefinitionSet& rHashSetOfTags);
+
+ //UUUU Helper to translate new DrawingLayer FillStyle values which are name-based
+ // from ODF internal name to style display names which can be found in the current
+ // document model (using NameOrIndex Items). The change is executed on the internal
+ // maProperties. The return value is true when actually names were changed
+ bool translateNameBasedDrawingLayerFillStyleDefinitionsToStyleDisplayNames();
+
+ //UUUU provider for often used sets
+ const OldFillStyleDefinitionSet& getStandardSet();
+ const OldFillStyleDefinitionSet& getHeaderSet();
+ const OldFillStyleDefinitionSet& getFooterSet();
+ const OldFillStyleDefinitionSet& getParaSet();
+
virtual void SetAttribute( sal_uInt16 nPrefixKey,
const ::rtl::OUString& rLocalName,
const ::rtl::OUString& rValue );
diff --git a/xmloff/inc/xmloff/shapeexport.hxx b/xmloff/inc/xmloff/shapeexport.hxx
index 7b2659eccbe9..4b4973351e48 100644
--- a/xmloff/inc/xmloff/shapeexport.hxx
+++ b/xmloff/inc/xmloff/shapeexport.hxx
@@ -281,7 +281,7 @@ public:
/** initializes some internal structures for fast access to the given XShapes collection
<p>This method has to be called before you use exportShape or collectShapeAutoStyles.
- It is automaticly called if you use collectShapesAutoStyles and exportShapes.
+ It is automatically called if you use collectShapesAutoStyles and exportShapes.
@see collectShapeAutoStyles
@see exportShape
diff --git a/xmloff/inc/xmloff/txtparae.hxx b/xmloff/inc/xmloff/txtparae.hxx
index d25a597df431..bac8a769f1f2 100644
--- a/xmloff/inc/xmloff/txtparae.hxx
+++ b/xmloff/inc/xmloff/txtparae.hxx
@@ -570,7 +570,7 @@ public:
/// Record tracked changes for this particular XText
/// (empty reference stop recording)
/// This should be used if tracked changes for e.g. footers are to
- /// be exported seperately via the exportTrackedChanges(sal_Bool,
+ /// be exported separately via the exportTrackedChanges(sal_Bool,
/// Reference<XText>) method.
void recordTrackedChangesForXText(
const ::com::sun::star::uno::Reference <
diff --git a/xmloff/inc/xmloff/txtprmap.hxx b/xmloff/inc/xmloff/txtprmap.hxx
index 4f7f862d5d21..45f40e033dff 100644
--- a/xmloff/inc/xmloff/txtprmap.hxx
+++ b/xmloff/inc/xmloff/txtprmap.hxx
@@ -182,14 +182,6 @@
#define CTF_MARGINTOP (XML_TEXT_CTF_START + 151)
#define CTF_MARGINBOTTOM (XML_TEXT_CTF_START + 152)
-//UUUU
-#define CTF_SW_REPEAT_OFFSET_X (XML_TEXT_CTF_START + 153)
-#define CTF_SW_REPEAT_OFFSET_Y (XML_TEXT_CTF_START + 154)
-#define CTF_SW_FILLGRADIENTNAME (XML_TEXT_CTF_START + 155)
-#define CTF_SW_FILLHATCHNAME (XML_TEXT_CTF_START + 156)
-#define CTF_SW_FILLBITMAPNAME (XML_TEXT_CTF_START + 157)
-#define CTF_SW_FILLTRANSNAME (XML_TEXT_CTF_START + 158)
-
#define TEXT_PROP_MAP_TEXT 0
#define TEXT_PROP_MAP_PARA 1
#define TEXT_PROP_MAP_FRAME 2
diff --git a/xmloff/inc/xmloff/uniref.hxx b/xmloff/inc/xmloff/uniref.hxx
index b076f3262e48..d8847db2db38 100644
--- a/xmloff/inc/xmloff/uniref.hxx
+++ b/xmloff/inc/xmloff/uniref.hxx
@@ -31,9 +31,9 @@
/**
* An instance of this class holds a pointer to an object. The lifetime of
- * the object is controled by the instance. The constructor calls
+ * the object is controlled by the instance. The constructor calls
* acquire() and the destructor calls release().
- * You could delive your class from the baseclass UniRefBase wich implements
+ * You could delive your class from the baseclass UniRefBase which implements
* the methods acquire and release, yet.
*/
template< class T > class UniReference
@@ -201,7 +201,7 @@ inline sal_Bool UniReference< T >::is() const
}
/**
* Return true if both interfaces refer to the same object. The operation can be
- * much more expensive than a pointer comparision.<BR>
+ * much more expensive than a pointer comparison.<BR>
*
* @param rRef another interface reference
*/
@@ -212,7 +212,7 @@ inline sal_Bool UniReference< T >::operator == ( const UniReference & rRef ) con
}
/**
* Return true if both interfaces does not refer to the same object. The operation can be
- * much more expensive than a pointer comparision.<BR>
+ * much more expensive than a pointer comparison.<BR>
*
* @param rRef another interface reference
*/
diff --git a/xmloff/inc/xmloff/xmlexp.hxx b/xmloff/inc/xmloff/xmlexp.hxx
index 162b2c451f76..7127a8316293 100644
--- a/xmloff/inc/xmloff/xmlexp.hxx
+++ b/xmloff/inc/xmloff/xmlexp.hxx
@@ -531,7 +531,7 @@ public:
void IgnorableWhitespace();
/**
- * Record an error condition that occured during export. The
+ * Record an error condition that occurred during export. The
* behavior of SetError can be modified using the error flag
* constants.
*/
diff --git a/xmloff/inc/xmloff/xmlimp.hxx b/xmloff/inc/xmloff/xmlimp.hxx
index 73d9f8016c1a..5468c46d078a 100644
--- a/xmloff/inc/xmloff/xmlimp.hxx
+++ b/xmloff/inc/xmloff/xmlimp.hxx
@@ -357,7 +357,7 @@ public:
::rtl::OUString GetODFVersion() const;
/**
- * Record an error condition that occured during import. The
+ * Record an error condition that occurred during import. The
* behavior of SetError can be modified using the error flag
* constants.
*/
diff --git a/xmloff/inc/xmloff/xmlmultiimagehelper.hxx b/xmloff/inc/xmloff/xmlmultiimagehelper.hxx
index 6058afdcfb10..7d0c5c22a323 100644
--- a/xmloff/inc/xmloff/xmlmultiimagehelper.hxx
+++ b/xmloff/inc/xmloff/xmlmultiimagehelper.hxx
@@ -42,7 +42,7 @@ public:
multiImageImportHelper();
virtual ~multiImageImportHelper();
- /// solve multiple imported images. The most valuable one is choosen,
+ /// solve multiple imported images. The most valuable one is chosen,
/// see imlementation for evtl. changing weights and/or adding filetypes.
/// returns the winner of the contest (which can be 0 when no candidates)
const SvXMLImportContext* solveMultipleImages();
diff --git a/xmloff/inc/xmloff/xmlprmap.hxx b/xmloff/inc/xmloff/xmlprmap.hxx
index 4c2ed19e6cd0..c4fce054256c 100644
--- a/xmloff/inc/xmloff/xmlprmap.hxx
+++ b/xmloff/inc/xmloff/xmlprmap.hxx
@@ -154,7 +154,7 @@ public:
sal_uInt32 nPropType,
sal_Int32 nStartAt = -1 ) const;
- /** Retrieves a PropertyHandler for that property wich placed at nIndex in the XMLPropertyMapEntry-array */
+ /** Retrieves a PropertyHandler for that property which placed at nIndex in the XMLPropertyMapEntry-array */
const XMLPropertyHandler* GetPropertyHandler( sal_Int32 nIndex ) const
{
DBG_ASSERT( (nIndex >= 0) && (nIndex < (sal_Int32)aMapEntries.size() ), "illegal access to invalid entry!" );
diff --git a/xmloff/inc/xmloff/xmltypes.hxx b/xmloff/inc/xmloff/xmltypes.hxx
index 2a8fbc48b0bd..ab8d99114b94 100644
--- a/xmloff/inc/xmloff/xmltypes.hxx
+++ b/xmloff/inc/xmloff/xmltypes.hxx
@@ -68,8 +68,8 @@
#define MID_FLAG_MERGE_PROPERTY 0x01000000
// Export only: If an xml attribute with the same name has been exported
-// already, supply its value to teh exportXML call and delete the existing
-// atribute afterwards.
+// already, supply its value to the exportXML call and delete the existing
+// attribute afterwards.
#define MID_FLAG_MERGE_ATTRIBUTE 0x00800000
// Import and Export: The property in question must exist. No call to
diff --git a/xmloff/inc/xmloff/xmluconv.hxx b/xmloff/inc/xmloff/xmluconv.hxx
index 822c242eb0b6..03bc062e6634 100644
--- a/xmloff/inc/xmloff/xmluconv.hxx
+++ b/xmloff/inc/xmloff/xmluconv.hxx
@@ -334,7 +334,7 @@ public:
the string. See <arg>nSecondsFraction</arg>
@param pSecondsFraction
- recieves fractions of whole seconds, in milliseconds. May be <NULL/>
+ receives fractions of whole seconds, in milliseconds. May be <NULL/>
This parameter is necessary since neither <type>Time</type> nor <type scope="com::sun::star::util">Time</type>
have a sufficient resolution to transport milliseconds.
@see http://www.w3.org/TR/xmlschema-2/#duration
diff --git a/xmloff/inc/xmlsdtypes.hxx b/xmloff/inc/xmlsdtypes.hxx
new file mode 100755
index 000000000000..d38495b03789
--- /dev/null
+++ b/xmloff/inc/xmlsdtypes.hxx
@@ -0,0 +1,208 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+#ifndef _XMLSDTYPES_HXX
+#define _XMLSDTYPES_HXX
+
+//#include <xmloff/xmlnume.hxx>
+//#include <xmloff/maptype.hxx>
+#include <xmloff/xmltypes.hxx>
+//#include <xmloff/xmlement.hxx>
+//#include <xmloff/prhdlfac.hxx>
+//#include <xmloff/xmlprmap.hxx>
+//#include "xmloff/XMLTextListAutoStylePool.hxx"
+//#include <xmloff/xmlexppr.hxx>
+
+//////////////////////////////////////////////////////////////////////////////
+// types of own properties
+
+#define XML_SD_TYPE_STROKE (XML_SD_TYPES_START + 0)
+#define XML_SD_TYPE_PRESPAGE_TYPE (XML_SD_TYPES_START + 1)
+#define XML_SD_TYPE_PRESPAGE_STYLE (XML_SD_TYPES_START + 2)
+#define XML_SD_TYPE_PRESPAGE_SPEED (XML_SD_TYPES_START + 3)
+#define XML_SD_TYPE_PRESPAGE_DURATION (XML_SD_TYPES_START + 4)
+#define XML_SD_TYPE_PRESPAGE_VISIBILITY (XML_SD_TYPES_START + 5)
+#define XML_SD_TYPE_MARKER (XML_SD_TYPES_START + 6 )
+#define XML_SD_TYPE_OPACITY (XML_SD_TYPES_START + 7 )
+#define XML_SD_TYPE_LINEJOIN (XML_SD_TYPES_START + 8 )
+#define XML_SD_TYPE_FILLSTYLE (XML_SD_TYPES_START + 9 )
+#define XML_SD_TYPE_GRADIENT (XML_SD_TYPES_START + 10 )
+#define XML_SD_TYPE_GRADIENT_STEPCOUNT (XML_SD_TYPES_START + 11 )
+#define XML_SD_TYPE_SHADOW (XML_SD_TYPES_START + 12 )
+#define XML_SD_TYPE_TEXT_CROSSEDOUT (XML_SD_TYPES_START + 13 )
+#define XML_SD_TYPE_NUMBULLET (XML_SD_TYPES_START + 14 )
+#define XML_SD_TYPE_WRITINGMODE (XML_SD_TYPES_START + 15 )
+#define XML_SD_TYPE_BITMAP_MODE (XML_SD_TYPES_START + 16 )
+#define XML_SD_TYPE_BITMAPREPOFFSETX (XML_SD_TYPES_START + 17 )
+#define XML_SD_TYPE_BITMAPREPOFFSETY (XML_SD_TYPES_START + 18 )
+#define XML_SD_TYPE_FILLBITMAPSIZE (XML_SD_TYPES_START + 19 )
+#define XML_SD_TYPE_LOGICAL_SIZE (XML_SD_TYPES_START + 20 )
+#define XML_SD_TYPE_BITMAP_REFPOINT (XML_SD_TYPES_START + 21 )
+#define XML_SD_TYPE_PRESPAGE_BACKSIZE (XML_SD_TYPES_START + 22 )
+#define XML_TYPE_TEXT_ANIMATION_BLINKING (XML_SD_TYPES_START + 23 )
+#define XML_TYPE_TEXT_ANIMATION_STEPS (XML_SD_TYPES_START + 24 )
+#define XML_SD_TYPE_TEXT_ALIGN (XML_SD_TYPES_START + 25 )
+#define XML_SD_TYPE_VERTICAL_ALIGN (XML_SD_TYPES_START + 26 )
+#define XML_SD_TYPE_FITTOSIZE (XML_SD_TYPES_START + 27 )
+#define XML_SD_TYPE_MEASURE_HALIGN (XML_SD_TYPES_START + 28 )
+#define XML_SD_TYPE_MEASURE_VALIGN (XML_SD_TYPES_START + 29 )
+#define XML_SD_TYPE_MEASURE_UNIT (XML_SD_TYPES_START + 30 )
+#define XML_SD_TYPE_MEASURE_PLACING (XML_SD_TYPES_START + 31 )
+#define XML_SD_TYPE_CONTROL_BORDER (XML_SD_TYPES_START + 32 )
+#define XML_SD_TYPE_CONTROL_BORDER_COLOR (XML_SD_TYPES_START + 33 )
+#define XML_SD_TYPE_IMAGE_SCALE_MODE (XML_SD_TYPES_START + 34 )
+#define XML_SD_TYPE_LINECAP (XML_SD_TYPES_START + 35 )
+
+//////////////////////////////////////////////////////////////////////////////
+// 3D property types
+#define XML_SD_TYPE_BACKFACE_CULLING (XML_SD_TYPES_START + 40 )
+#define XML_SD_TYPE_NORMALS_KIND (XML_SD_TYPES_START + 41 )
+#define XML_SD_TYPE_NORMALS_DIRECTION (XML_SD_TYPES_START + 42 )
+#define XML_SD_TYPE_TEX_GENERATION_MODE_X (XML_SD_TYPES_START + 43 )
+#define XML_SD_TYPE_TEX_GENERATION_MODE_Y (XML_SD_TYPES_START + 44 )
+#define XML_SD_TYPE_TEX_KIND (XML_SD_TYPES_START + 45 )
+#define XML_SD_TYPE_TEX_MODE (XML_SD_TYPES_START + 46 )
+
+//////////////////////////////////////////////////////////////////////////////
+// #FontWork# types
+#define XML_SD_TYPE_FONTWORK_STYLE (XML_SD_TYPES_START + 47 )
+#define XML_SD_TYPE_FONTWORK_ADJUST (XML_SD_TYPES_START + 48 )
+#define XML_SD_TYPE_FONTWORK_SHADOW (XML_SD_TYPES_START + 49 )
+#define XML_SD_TYPE_FONTWORK_FORM (XML_SD_TYPES_START + 50 )
+
+//////////////////////////////////////////////////////////////////////////////
+// Caption types
+#define XML_SD_TYPE_CAPTION_ANGLE_TYPE (XML_SD_TYPES_START + 60 )
+#define XML_SD_TYPE_CAPTION_IS_ESC_REL (XML_SD_TYPES_START + 61 )
+#define XML_SD_TYPE_CAPTION_ESC_REL (XML_SD_TYPES_START + 62 )
+#define XML_SD_TYPE_CAPTION_ESC_ABS (XML_SD_TYPES_START + 63 )
+#define XML_SD_TYPE_CAPTION_ESC_DIR (XML_SD_TYPES_START + 64 )
+#define XML_SD_TYPE_CAPTION_TYPE (XML_SD_TYPES_START + 65 )
+
+//////////////////////////////////////////////////////////////////////////////
+// header & footer types
+#define XML_SD_TYPE_DATETIMEUPDATE (XML_SD_TYPES_START + 70 )
+#define XML_SD_TYPE_DATETIME_FORMAT (XML_SD_TYPES_START + 71 )
+
+//////////////////////////////////////////////////////////////////////////////
+// new types for merged style:protect attribute
+#define XML_SD_TYPE_MOVE_PROTECT (XML_SD_TYPES_START + 72 )
+#define XML_SD_TYPE_SIZE_PROTECT (XML_SD_TYPES_START + 73 )
+
+//////////////////////////////////////////////////////////////////////////////
+// new type for style:mirror attribute
+#define XML_TYPE_SD_MIRROR (XML_SD_TYPES_START + 74 )
+
+//////////////////////////////////////////////////////////////////////////////
+// new smil transition types for pages
+#define XML_SD_TYPE_TRANSITION_TYPE (XML_SD_TYPES_START + 75 )
+#define XML_SD_TYPE_TRANSTIION_SUBTYPE (XML_SD_TYPES_START + 76 )
+#define XML_SD_TYPE_TRANSTIION_DIRECTION (XML_SD_TYPES_START + 77 )
+#define XML_SD_TYPE_HEADER_FOOTER_VISIBILITY_TYPE (XML_SD_TYPES_START + 78 )
+
+//////////////////////////////////////////////////////////////////////////////
+
+#define CTF_NUMBERINGRULES 1000
+#define CTF_CONTROLWRITINGMODE 1001
+#define CTF_WRITINGMODE 1002
+#define CTF_REPEAT_OFFSET_X 1003
+#define CTF_REPEAT_OFFSET_Y 1004
+#define CTF_PAGE_SOUND_URL 1005
+#define CTF_PAGE_VISIBLE 1006
+#define CTF_PAGE_TRANS_TYPE 1007
+#define CTF_PAGE_TRANS_STYLE 1008
+#define CTF_PAGE_TRANS_SPEED 1009
+#define CTF_PAGE_TRANS_DURATION 1010
+#define CTF_PAGE_BACKSIZE 1011
+#define CTF_DASHNAME 1012
+#define CTF_LINESTARTNAME 1013
+#define CTF_LINEENDNAME 1014
+#define CTF_FILLGRADIENTNAME 1015
+#define CTF_FILLHATCHNAME 1016
+#define CTF_FILLBITMAPNAME 1017
+#define CTF_FILLTRANSNAME 1018
+#define CTF_TEXTANIMATION_BLINKING 1019
+#define CTF_TEXTANIMATION_KIND 1020
+
+#define CTF_PAGE_TRANSITION_TYPE 1021
+#define CTF_PAGE_TRANSITION_SUBTYPE 1022
+#define CTF_PAGE_TRANSITION_DIRECTION 1023
+#define CTF_PAGE_TRANSITION_FADECOLOR 1024
+
+//////////////////////////////////////////////////////////////////////////////
+// #FontWork#
+#define CTF_FONTWORK_STYLE 1021
+#define CTF_FONTWORK_ADJUST 1022
+#define CTF_FONTWORK_DISTANCE 1023
+#define CTF_FONTWORK_START 1024
+#define CTF_FONTWORK_MIRROR 1025
+#define CTF_FONTWORK_OUTLINE 1026
+#define CTF_FONTWORK_SHADOW 1027
+#define CTF_FONTWORK_SHADOWCOLOR 1028
+#define CTF_FONTWORK_SHADOWOFFSETX 1029
+#define CTF_FONTWORK_SHADOWOFFSETY 1030
+#define CTF_FONTWORK_FORM 1031
+#define CTF_FONTWORK_HIDEFORM 1032
+#define CTF_FONTWORK_SHADOWTRANSPARENCE 1033
+
+//////////////////////////////////////////////////////////////////////////////
+// OLE part 1
+#define CTF_SD_OLE_VIS_AREA_IMPORT_LEFT 1040
+#define CTF_SD_OLE_VIS_AREA_IMPORT_TOP 1041
+#define CTF_SD_OLE_VIS_AREA_IMPORT_WIDTH 1042
+#define CTF_SD_OLE_VIS_AREA_IMPORT_HEIGHT 1043
+#define CTF_SD_OLE_ISINTERNAL 1044
+
+#define CTF_SD_MOVE_PROTECT 1045
+#define CTF_SD_SIZE_PROTECT 1046
+
+//////////////////////////////////////////////////////////////////////////////
+// caption
+#define CTF_CAPTION_ISESCREL 1047
+#define CTF_CAPTION_ESCREL 1048
+#define CTF_CAPTION_ESCABS 1049
+
+//////////////////////////////////////////////////////////////////////////////
+// header&footer
+#define CTF_HEADER_VISIBLE 1050
+#define CTF_FOOTER_VISIBLE 1051
+#define CTF_PAGE_NUMBER_VISIBLE 1052
+#define CTF_DATE_TIME_VISIBLE 1053
+#define CTF_HEADER_TEXT 1054
+#define CTF_FOOTER_TEXT 1055
+#define CTF_DATE_TIME_TEXT 1056
+#define CTF_DATE_TIME_FORMAT 1057
+#define CTF_DATE_TIME_UPDATE 1058
+
+//////////////////////////////////////////////////////////////////////////////
+// OLE part 2
+#define CTF_SD_OLE_ASPECT 1059
+#define CTF_SD_OLE_VIS_AREA_EXPORT_LEFT 1060
+#define CTF_SD_OLE_VIS_AREA_EXPORT_TOP 1061
+#define CTF_SD_OLE_VIS_AREA_EXPORT_WIDTH 1062
+#define CTF_SD_OLE_VIS_AREA_EXPORT_HEIGHT 1063
+
+//////////////////////////////////////////////////////////////////////////////
+
+#endif // _XMLSDTYPES_HXX
+
+//////////////////////////////////////////////////////////////////////////////
+// eof
diff --git a/xmloff/source/chart/MultiPropertySetHandler.hxx b/xmloff/source/chart/MultiPropertySetHandler.hxx
index aa1aa881a4c6..aa8588656414 100644
--- a/xmloff/source/chart/MultiPropertySetHandler.hxx
+++ b/xmloff/source/chart/MultiPropertySetHandler.hxx
@@ -132,7 +132,7 @@ public:
/** @descr Create a handler of the property set of the given
object.
@param xObject A reference to any of the object's interfaces.
- not neccessarily XPropertySet or XMultiPropertySet. It
+ not necessarily XPropertySet or XMultiPropertySet. It
is casted later to one of the two of them.
*/
MultiPropertySetHandler (::com::sun::star::uno::Reference<
diff --git a/xmloff/source/chart/PropertyMap.hxx b/xmloff/source/chart/PropertyMap.hxx
index 0d7f0c75ea95..14625d460f8b 100644
--- a/xmloff/source/chart/PropertyMap.hxx
+++ b/xmloff/source/chart/PropertyMap.hxx
@@ -201,7 +201,7 @@ const XMLPropertyMapEntry aXMLChartPropMap[] =
MAP_SPECIAL( "TextRotation", STYLE, XML_ROTATION_ANGLE, XML_TYPE_NUMBER, XML_SCH_CONTEXT_SPECIAL_TEXT_ROTATION ), // convert 1/100th degrees to degrees
MAP_ENTRY( "StackedText", STYLE, XML_DIRECTION, XML_SCH_TYPE_TEXT_ORIENTATION ),
- // for compatability to pre 6.0beta documents
+ // for compatibility to pre 6.0beta documents
// MAP_SPECIAL( "SymbolBitmapURL", CHART, XML_SYMBOL_IMAGE_NAME, XML_TYPE_STRING, XML_SCH_CONTEXT_SPECIAL_SYMBOL_IMAGE_NAME ),
MAP_ENTRY( "ChartUserDefinedAttributes", TEXT, XML_XMLNS, XML_TYPE_ATTRIBUTE_CONTAINER | MID_FLAG_SPECIAL_ITEM ),
diff --git a/xmloff/source/chart/SchXMLExport.cxx b/xmloff/source/chart/SchXMLExport.cxx
index 1dec96c39cf1..da46621569d8 100644
--- a/xmloff/source/chart/SchXMLExport.cxx
+++ b/xmloff/source/chart/SchXMLExport.cxx
@@ -1567,7 +1567,7 @@ void SchXMLExportHelper_Impl::parseDocument( Reference< chart::XChartDocument >&
if( mxAdditionalShapes.is())
{
// can't call exportShapes with all shapes because the
- // initialisation happend with the complete draw page and not
+ // initialisation happened with the complete draw page and not
// the XShapes object used here. Thus the shapes have to be
// exported one by one
UniReference< XMLShapeExport > rShapeExport = mrExport.GetShapeExport();
@@ -1622,7 +1622,7 @@ void SchXMLExportHelper_Impl::parseDocument( Reference< chart::XChartDocument >&
}
// can't call collectShapesAutoStyles with all shapes because
- // the initialisation happend with the complete draw page and
+ // the initialisation happened with the complete draw page and
// not the XShapes object used here. Thus the shapes have to be
// exported one by one
UniReference< XMLShapeExport > rShapeExport = mrExport.GetShapeExport();
diff --git a/xmloff/source/core/xmlerror.cxx b/xmloff/source/core/xmlerror.cxx
index 1a0e6a2b3c3a..69bd20b4db6d 100644
--- a/xmloff/source/core/xmlerror.cxx
+++ b/xmloff/source/core/xmlerror.cxx
@@ -69,8 +69,8 @@ public:
OUString sExceptionMessage;/// message of original exception (if available)
// XLocator information:
- sal_Int32 nRow; /// row number where error occured (or -1 for unknown)
- sal_Int32 nColumn; /// column number where error occured (or -1)
+ sal_Int32 nRow; /// row number where error occurred (or -1 for unknown)
+ sal_Int32 nColumn; /// column number where error occurred (or -1)
OUString sPublicId; /// public identifier
OUString sSystemId; /// public identifier
@@ -125,7 +125,7 @@ void XMLErrors::AddRecord(
OUStringBuffer sMessage;
- sMessage.appendAscii( "An error or a warning has occured during XML import/export!\n" );
+ sMessage.appendAscii( "An error or a warning has occurred during XML import/export!\n" );
// ID & flags
sMessage.appendAscii( "Error-Id: 0x");
diff --git a/xmloff/source/core/xmlexp.cxx b/xmloff/source/core/xmlexp.cxx
index 3f48d7dba30e..9112166bd076 100644
--- a/xmloff/source/core/xmlexp.cxx
+++ b/xmloff/source/core/xmlexp.cxx
@@ -946,7 +946,7 @@ sal_Bool SAL_CALL SvXMLExport::filter( const uno::Sequence< beans::PropertyValue
aSeq, e.Message, NULL );
}
- // return true only if no error occured
+ // return true only if no error occurred
return (GetErrorFlags() & (ERROR_DO_NOTHING|ERROR_ERROR_OCCURED)) == 0;
}
diff --git a/xmloff/source/core/xmlimp.cxx b/xmloff/source/core/xmlimp.cxx
index eec0db8acd73..ec535890ebb3 100644
--- a/xmloff/source/core/xmlimp.cxx
+++ b/xmloff/source/core/xmlimp.cxx
@@ -828,7 +828,7 @@ void SAL_CALL SvXMLImport::startElement( const OUString& rName,
pContext->AddRef();
- // Remeber old namespace map.
+ // Remember old namespace map.
if( pRewindMap )
pContext->SetRewindMap( pRewindMap );
diff --git a/xmloff/source/draw/XMLShapeStyleContext.cxx b/xmloff/source/draw/XMLShapeStyleContext.cxx
index 86366a2933f4..757214b3503e 100644
--- a/xmloff/source/draw/XMLShapeStyleContext.cxx
+++ b/xmloff/source/draw/XMLShapeStyleContext.cxx
@@ -31,6 +31,7 @@
#include <com/sun/star/drawing/XControlShape.hpp>
#include "com/sun/star/beans/XPropertySetInfo.hpp"
#include <com/sun/star/lang/IllegalArgumentException.hpp>
+#include <com/sun/star/drawing/FillStyle.hpp>
#include <xmloff/xmlimp.hxx>
#include <xmloff/xmlnumi.hxx>
#include <xmloff/xmlnmspe.hxx>
@@ -46,6 +47,7 @@ using ::rtl::OUStringBuffer;
using namespace ::com::sun::star;
using namespace ::com::sun::star::uno;
using namespace ::com::sun::star::beans;
+using namespace ::com::sun::star::drawing;
using ::xmloff::token::IsXMLToken;
using ::xmloff::token::XML_TEXT_PROPERTIES;
using ::xmloff::token::XML_GRAPHIC_PROPERTIES;
@@ -61,7 +63,8 @@ XMLShapeStyleContext::XMLShapeStyleContext(
SvXMLStylesContext& rStyles,
sal_uInt16 nFamily)
: XMLPropStyleContext(rImport, nPrfx, rLName, xAttrList, rStyles, nFamily ),
- m_bIsNumRuleAlreadyConverted( sal_False )
+ m_bIsNumRuleAlreadyConverted( sal_False ),
+ m_bIsFillStyleAlreadyConverted(false) //UUUU
{
}
@@ -193,6 +196,20 @@ void XMLShapeStyleContext::FillPropertySet( const Reference< beans::XPropertySet
}
}
+ //UUUU need to filter out old fill definitions when the new ones are used. The new
+ // ones are used when a FillStyle is defined
+ if(!m_bIsFillStyleAlreadyConverted && GetProperties().size())
+ {
+ static ::rtl::OUString s_FillStyle(RTL_CONSTASCII_USTRINGPARAM("FillStyle"));
+
+ if(doNewDrawingLayerFillStyleDefinitionsExist(s_FillStyle))
+ {
+ deactivateOldFillStyleDefinitions(getStandardSet());
+ }
+
+ m_bIsFillStyleAlreadyConverted = true;
+ }
+
struct _ContextID_Index_Pair aContextIDs[] =
{
{ CTF_DASHNAME , -1 },
diff --git a/xmloff/source/draw/eventimp.cxx b/xmloff/source/draw/eventimp.cxx
index aaeba1449c90..4a3866077613 100644
--- a/xmloff/source/draw/eventimp.cxx
+++ b/xmloff/source/draw/eventimp.cxx
@@ -457,7 +457,7 @@ void SdXMLEventContext::EndElement()
pProperties++;
// ClickAction_BOOKMARK and ClickAction_DOCUMENT share the same xml event
- // so check here if its realy a bookmark or maybe a document
+ // so check here if its really a bookmark or maybe a document
if( meClickAction == ClickAction_BOOKMARK )
{
if( msBookmark.compareToAscii( "#", 1 ) != 0 )
diff --git a/xmloff/source/draw/sdpropls.cxx b/xmloff/source/draw/sdpropls.cxx
index 3bb2b72071fd..bcad2025bbea 100644
--- a/xmloff/source/draw/sdpropls.cxx
+++ b/xmloff/source/draw/sdpropls.cxx
@@ -123,12 +123,11 @@ const XMLPropertyMapEntry aXMLSDProperties[] =
GMAP( "FillHatchName", XML_NAMESPACE_DRAW, XML_FILL_HATCH_NAME, XML_TYPE_STYLENAME|MID_FLAG_NO_PROPERTY_IMPORT, CTF_FILLHATCHNAME ),
GMAP( "FillBackground", XML_NAMESPACE_DRAW, XML_FILL_HATCH_SOLID, XML_TYPE_BOOL, 0 ),
GMAP( "FillBitmapName", XML_NAMESPACE_DRAW, XML_FILL_IMAGE_NAME, XML_TYPE_STYLENAME|MID_FLAG_NO_PROPERTY_IMPORT, CTF_FILLBITMAPNAME ),
- GMAP( "FillTransparence", XML_NAMESPACE_DRAW, XML_OPACITY, XML_TYPE_NEG_PERCENT16|MID_FLAG_MULTI_PROPERTY, 0 ), // exists in SW, too
- GMAP( "FillTransparenceGradientName", XML_NAMESPACE_DRAW, XML_OPACITY_NAME, XML_TYPE_STYLENAME|MID_FLAG_NO_PROPERTY_IMPORT, CTF_FILLTRANSNAME ),
-
- GMAP( "FillBitmapSizeX", XML_NAMESPACE_DRAW, XML_FILL_IMAGE_WIDTH, XML_SD_TYPE_FILLBITMAPSIZE|MID_FLAG_MULTI_PROPERTY, 0 ),
+ GMAP( "FillTransparence", XML_NAMESPACE_DRAW, XML_OPACITY, XML_TYPE_NEG_PERCENT16|MID_FLAG_MULTI_PROPERTY, 0 ), // exists in SW, too
+ GMAP( "FillTransparenceGradientName", XML_NAMESPACE_DRAW, XML_OPACITY_NAME, XML_TYPE_STYLENAME|MID_FLAG_NO_PROPERTY_IMPORT, CTF_FILLTRANSNAME ),
+ GMAP( "FillBitmapSizeX", XML_NAMESPACE_DRAW, XML_FILL_IMAGE_WIDTH, XML_SD_TYPE_FILLBITMAPSIZE|MID_FLAG_MULTI_PROPERTY, 0 ),
GMAP( "FillBitmapLogicalSize", XML_NAMESPACE_DRAW, XML_FILL_IMAGE_WIDTH, XML_SD_TYPE_LOGICAL_SIZE|MID_FLAG_MULTI_PROPERTY, 0 ),
- GMAP( "FillBitmapSizeY", XML_NAMESPACE_DRAW, XML_FILL_IMAGE_HEIGHT, XML_SD_TYPE_FILLBITMAPSIZE|MID_FLAG_MULTI_PROPERTY, 0 ),
+ GMAP( "FillBitmapSizeY", XML_NAMESPACE_DRAW, XML_FILL_IMAGE_HEIGHT, XML_SD_TYPE_FILLBITMAPSIZE|MID_FLAG_MULTI_PROPERTY, 0 ),
GMAP( "FillBitmapLogicalSize", XML_NAMESPACE_DRAW, XML_FILL_IMAGE_HEIGHT, XML_SD_TYPE_LOGICAL_SIZE|MID_FLAG_MULTI_PROPERTY, 0 ),
GMAP( "FillBitmapMode", XML_NAMESPACE_STYLE,XML_REPEAT, XML_SD_TYPE_BITMAP_MODE|MID_FLAG_MULTI_PROPERTY, 0 ),
GMAP( "FillBitmapPositionOffsetX", XML_NAMESPACE_DRAW, XML_FILL_IMAGE_REF_POINT_X, XML_TYPE_PERCENT, 0 ),
diff --git a/xmloff/source/draw/sdpropls.hxx b/xmloff/source/draw/sdpropls.hxx
index b5befc3d1161..2bc469a4500f 100644
--- a/xmloff/source/draw/sdpropls.hxx
+++ b/xmloff/source/draw/sdpropls.hxx
@@ -19,8 +19,6 @@
*
*************************************************************/
-
-
#ifndef _SDPROPLS_HXX
#define _SDPROPLS_HXX
@@ -33,6 +31,7 @@
#include <xmloff/xmlprmap.hxx>
#include "xmloff/XMLTextListAutoStylePool.hxx"
#include <xmloff/xmlexppr.hxx>
+#include <xmlsdtypes.hxx>
//////////////////////////////////////////////////////////////////////////////
// entry list for graphic properties
@@ -46,176 +45,6 @@ extern const XMLPropertyMapEntry aXMLSDPresPageProps[];
extern const XMLPropertyMapEntry aXMLSDPresPageProps_onlyHeadersFooter[];
//////////////////////////////////////////////////////////////////////////////
-// types of own properties
-
-#define XML_SD_TYPE_STROKE (XML_SD_TYPES_START + 0)
-#define XML_SD_TYPE_PRESPAGE_TYPE (XML_SD_TYPES_START + 1)
-#define XML_SD_TYPE_PRESPAGE_STYLE (XML_SD_TYPES_START + 2)
-#define XML_SD_TYPE_PRESPAGE_SPEED (XML_SD_TYPES_START + 3)
-#define XML_SD_TYPE_PRESPAGE_DURATION (XML_SD_TYPES_START + 4)
-#define XML_SD_TYPE_PRESPAGE_VISIBILITY (XML_SD_TYPES_START + 5)
-#define XML_SD_TYPE_MARKER (XML_SD_TYPES_START + 6 )
-#define XML_SD_TYPE_OPACITY (XML_SD_TYPES_START + 7 )
-#define XML_SD_TYPE_LINEJOIN (XML_SD_TYPES_START + 8 )
-#define XML_SD_TYPE_FILLSTYLE (XML_SD_TYPES_START + 9 )
-#define XML_SD_TYPE_GRADIENT (XML_SD_TYPES_START + 10 )
-#define XML_SD_TYPE_GRADIENT_STEPCOUNT (XML_SD_TYPES_START + 11 )
-#define XML_SD_TYPE_SHADOW (XML_SD_TYPES_START + 12 )
-#define XML_SD_TYPE_TEXT_CROSSEDOUT (XML_SD_TYPES_START + 13 )
-#define XML_SD_TYPE_NUMBULLET (XML_SD_TYPES_START + 14 )
-#define XML_SD_TYPE_WRITINGMODE (XML_SD_TYPES_START + 15 )
-#define XML_SD_TYPE_BITMAP_MODE (XML_SD_TYPES_START + 16 )
-#define XML_SD_TYPE_BITMAPREPOFFSETX (XML_SD_TYPES_START + 17 )
-#define XML_SD_TYPE_BITMAPREPOFFSETY (XML_SD_TYPES_START + 18 )
-#define XML_SD_TYPE_FILLBITMAPSIZE (XML_SD_TYPES_START + 19 )
-#define XML_SD_TYPE_LOGICAL_SIZE (XML_SD_TYPES_START + 20 )
-#define XML_SD_TYPE_BITMAP_REFPOINT (XML_SD_TYPES_START + 21 )
-#define XML_SD_TYPE_PRESPAGE_BACKSIZE (XML_SD_TYPES_START + 22 )
-#define XML_TYPE_TEXT_ANIMATION_BLINKING (XML_SD_TYPES_START + 23 )
-#define XML_TYPE_TEXT_ANIMATION_STEPS (XML_SD_TYPES_START + 24 )
-#define XML_SD_TYPE_TEXT_ALIGN (XML_SD_TYPES_START + 25 )
-#define XML_SD_TYPE_VERTICAL_ALIGN (XML_SD_TYPES_START + 26 )
-#define XML_SD_TYPE_FITTOSIZE (XML_SD_TYPES_START + 27 )
-#define XML_SD_TYPE_MEASURE_HALIGN (XML_SD_TYPES_START + 28 )
-#define XML_SD_TYPE_MEASURE_VALIGN (XML_SD_TYPES_START + 29 )
-#define XML_SD_TYPE_MEASURE_UNIT (XML_SD_TYPES_START + 30 )
-#define XML_SD_TYPE_MEASURE_PLACING (XML_SD_TYPES_START + 31 )
-#define XML_SD_TYPE_CONTROL_BORDER (XML_SD_TYPES_START + 32 )
-#define XML_SD_TYPE_CONTROL_BORDER_COLOR (XML_SD_TYPES_START + 33 )
-#define XML_SD_TYPE_IMAGE_SCALE_MODE (XML_SD_TYPES_START + 34 )
-#define XML_SD_TYPE_LINECAP (XML_SD_TYPES_START + 35 )
-
-// 3D property types
-#define XML_SD_TYPE_BACKFACE_CULLING (XML_SD_TYPES_START + 40 )
-#define XML_SD_TYPE_NORMALS_KIND (XML_SD_TYPES_START + 41 )
-#define XML_SD_TYPE_NORMALS_DIRECTION (XML_SD_TYPES_START + 42 )
-#define XML_SD_TYPE_TEX_GENERATION_MODE_X (XML_SD_TYPES_START + 43 )
-#define XML_SD_TYPE_TEX_GENERATION_MODE_Y (XML_SD_TYPES_START + 44 )
-#define XML_SD_TYPE_TEX_KIND (XML_SD_TYPES_START + 45 )
-#define XML_SD_TYPE_TEX_MODE (XML_SD_TYPES_START + 46 )
-
-//////////////////////////////////////////////////////////////////////////////
-// #FontWork# types
-#define XML_SD_TYPE_FONTWORK_STYLE (XML_SD_TYPES_START + 47 )
-#define XML_SD_TYPE_FONTWORK_ADJUST (XML_SD_TYPES_START + 48 )
-#define XML_SD_TYPE_FONTWORK_SHADOW (XML_SD_TYPES_START + 49 )
-#define XML_SD_TYPE_FONTWORK_FORM (XML_SD_TYPES_START + 50 )
-
-//////////////////////////////////////////////////////////////////////////////
-// Caption types
-#define XML_SD_TYPE_CAPTION_ANGLE_TYPE (XML_SD_TYPES_START + 60 )
-#define XML_SD_TYPE_CAPTION_IS_ESC_REL (XML_SD_TYPES_START + 61 )
-#define XML_SD_TYPE_CAPTION_ESC_REL (XML_SD_TYPES_START + 62 )
-#define XML_SD_TYPE_CAPTION_ESC_ABS (XML_SD_TYPES_START + 63 )
-#define XML_SD_TYPE_CAPTION_ESC_DIR (XML_SD_TYPES_START + 64 )
-#define XML_SD_TYPE_CAPTION_TYPE (XML_SD_TYPES_START + 65 )
-
-//////////////////////////////////////////////////////////////////////////////
-// header & footer types
-#define XML_SD_TYPE_DATETIMEUPDATE (XML_SD_TYPES_START + 70 )
-#define XML_SD_TYPE_DATETIME_FORMAT (XML_SD_TYPES_START + 71 )
-
-//////////////////////////////////////////////////////////////////////////////
-
-// new types for merged style:protect attribute
-#define XML_SD_TYPE_MOVE_PROTECT (XML_SD_TYPES_START + 72 )
-#define XML_SD_TYPE_SIZE_PROTECT (XML_SD_TYPES_START + 73 )
-
-// new type for style:mirror attribute
-#define XML_TYPE_SD_MIRROR (XML_SD_TYPES_START + 74 )
-
-//////////////////////////////////////////////////////////////////////////////
-
-// new smil transition types for pages
-#define XML_SD_TYPE_TRANSITION_TYPE (XML_SD_TYPES_START + 75 )
-#define XML_SD_TYPE_TRANSTIION_SUBTYPE (XML_SD_TYPES_START + 76 )
-#define XML_SD_TYPE_TRANSTIION_DIRECTION (XML_SD_TYPES_START + 77 )
-
-#define XML_SD_TYPE_HEADER_FOOTER_VISIBILITY_TYPE (XML_SD_TYPES_START + 78 )
-
-//////////////////////////////////////////////////////////////////////////////
-
-#define CTF_NUMBERINGRULES 1000
-#define CTF_CONTROLWRITINGMODE 1001
-#define CTF_WRITINGMODE 1002
-#define CTF_REPEAT_OFFSET_X 1003
-#define CTF_REPEAT_OFFSET_Y 1004
-#define CTF_PAGE_SOUND_URL 1005
-#define CTF_PAGE_VISIBLE 1006
-#define CTF_PAGE_TRANS_TYPE 1007
-#define CTF_PAGE_TRANS_STYLE 1008
-#define CTF_PAGE_TRANS_SPEED 1009
-#define CTF_PAGE_TRANS_DURATION 1010
-#define CTF_PAGE_BACKSIZE 1011
-#define CTF_DASHNAME 1012
-#define CTF_LINESTARTNAME 1013
-#define CTF_LINEENDNAME 1014
-#define CTF_FILLGRADIENTNAME 1015
-#define CTF_FILLHATCHNAME 1016
-#define CTF_FILLBITMAPNAME 1017
-#define CTF_FILLTRANSNAME 1018
-#define CTF_TEXTANIMATION_BLINKING 1019
-#define CTF_TEXTANIMATION_KIND 1020
-
-#define CTF_PAGE_TRANSITION_TYPE 1021
-#define CTF_PAGE_TRANSITION_SUBTYPE 1022
-#define CTF_PAGE_TRANSITION_DIRECTION 1023
-#define CTF_PAGE_TRANSITION_FADECOLOR 1024
-
-//////////////////////////////////////////////////////////////////////////////
-// #FontWork#
-#define CTF_FONTWORK_STYLE 1021
-#define CTF_FONTWORK_ADJUST 1022
-#define CTF_FONTWORK_DISTANCE 1023
-#define CTF_FONTWORK_START 1024
-#define CTF_FONTWORK_MIRROR 1025
-#define CTF_FONTWORK_OUTLINE 1026
-#define CTF_FONTWORK_SHADOW 1027
-#define CTF_FONTWORK_SHADOWCOLOR 1028
-#define CTF_FONTWORK_SHADOWOFFSETX 1029
-#define CTF_FONTWORK_SHADOWOFFSETY 1030
-#define CTF_FONTWORK_FORM 1031
-#define CTF_FONTWORK_HIDEFORM 1032
-#define CTF_FONTWORK_SHADOWTRANSPARENCE 1033
-
-//////////////////////////////////////////////////////////////////////////////
-// OLE part 1
-#define CTF_SD_OLE_VIS_AREA_IMPORT_LEFT 1040
-#define CTF_SD_OLE_VIS_AREA_IMPORT_TOP 1041
-#define CTF_SD_OLE_VIS_AREA_IMPORT_WIDTH 1042
-#define CTF_SD_OLE_VIS_AREA_IMPORT_HEIGHT 1043
-#define CTF_SD_OLE_ISINTERNAL 1044
-
-#define CTF_SD_MOVE_PROTECT 1045
-#define CTF_SD_SIZE_PROTECT 1046
-
-//////////////////////////////////////////////////////////////////////////////
-// caption
-#define CTF_CAPTION_ISESCREL 1047
-#define CTF_CAPTION_ESCREL 1048
-#define CTF_CAPTION_ESCABS 1049
-
-//////////////////////////////////////////////////////////////////////////////
-// header&footer
-#define CTF_HEADER_VISIBLE 1050
-#define CTF_FOOTER_VISIBLE 1051
-#define CTF_PAGE_NUMBER_VISIBLE 1052
-#define CTF_DATE_TIME_VISIBLE 1053
-#define CTF_HEADER_TEXT 1054
-#define CTF_FOOTER_TEXT 1055
-#define CTF_DATE_TIME_TEXT 1056
-#define CTF_DATE_TIME_FORMAT 1057
-#define CTF_DATE_TIME_UPDATE 1058
-
-//////////////////////////////////////////////////////////////////////////////
-// OLE part 2
-#define CTF_SD_OLE_ASPECT 1059
-#define CTF_SD_OLE_VIS_AREA_EXPORT_LEFT 1060
-#define CTF_SD_OLE_VIS_AREA_EXPORT_TOP 1061
-#define CTF_SD_OLE_VIS_AREA_EXPORT_WIDTH 1062
-#define CTF_SD_OLE_VIS_AREA_EXPORT_HEIGHT 1063
-
-//////////////////////////////////////////////////////////////////////////////
// enum maps for attributes
extern SvXMLEnumMapEntry aXML_ConnectionKind_EnumMap[];
diff --git a/xmloff/source/draw/sdxmlexp.cxx b/xmloff/source/draw/sdxmlexp.cxx
index c23db9de22b5..b754a46feaa6 100644
--- a/xmloff/source/draw/sdxmlexp.cxx
+++ b/xmloff/source/draw/sdxmlexp.cxx
@@ -897,7 +897,7 @@ sal_Bool SdXMLExport::ImpPrepAutoLayoutInfo(const Reference<XDrawPage>& xPage, O
}
}
- // create entry and look for existance
+ // create entry and look for existence
ImpXMLAutoLayoutInfo* pNew = new ImpXMLAutoLayoutInfo(nType, pInfo);
sal_Bool bDidExist(sal_False);
diff --git a/xmloff/source/draw/shapeexport2.cxx b/xmloff/source/draw/shapeexport2.cxx
index 593bddf3cc31..e76c226f3803 100644
--- a/xmloff/source/draw/shapeexport2.cxx
+++ b/xmloff/source/draw/shapeexport2.cxx
@@ -674,7 +674,7 @@ void XMLShapeExport::ImpExportGroupShape( const uno::Reference< drawing::XShape
ImpExportEvents( xShape );
ImpExportGluePoints( xShape );
- // #89764# if export of position is supressed for group shape,
+ // #89764# if export of position is suppressed for group shape,
// positions of contained objects should be written relative to
// the upper left edge of the group.
awt::Point aUpperLeft;
@@ -1065,37 +1065,38 @@ void XMLShapeExport::ImpExportPolygonShape(
void XMLShapeExport::ImpExportGraphicObjectShape(
const uno::Reference< drawing::XShape >& xShape,
- XmlShapeType eShapeType, sal_Int32 nFeatures, awt::Point* pRefPoint)
+ XmlShapeType eShapeType,
+ sal_Int32 nFeatures,
+ awt::Point* pRefPoint )
{
- const uno::Reference< beans::XPropertySet > xPropSet(xShape, uno::UNO_QUERY);
- if(xPropSet.is())
+ const uno::Reference< beans::XPropertySet > xPropSet( xShape, uno::UNO_QUERY );
+ if ( xPropSet.is() )
{
sal_Bool bIsEmptyPresObj = sal_False;
uno::Reference< beans::XPropertySetInfo > xPropSetInfo( xPropSet->getPropertySetInfo() );
// Transformation
- ImpExportNewTrans(xPropSet, nFeatures, pRefPoint);
+ ImpExportNewTrans( xPropSet, nFeatures, pRefPoint );
OUString sImageURL;
- if(eShapeType == XmlShapeTypePresGraphicObjectShape)
- bIsEmptyPresObj = ImpExportPresentationAttributes( xPropSet, GetXMLToken(XML_PRESENTATION_GRAPHIC) );
+ if ( eShapeType == XmlShapeTypePresGraphicObjectShape )
+ bIsEmptyPresObj = ImpExportPresentationAttributes( xPropSet, GetXMLToken( XML_PRESENTATION_GRAPHIC ) );
- sal_Bool bCreateNewline( (nFeatures & SEF_EXPORT_NO_WS) == 0 ); // #86116#/#92210#
- SvXMLElementExport aElem( mrExport, XML_NAMESPACE_DRAW,
- XML_FRAME, bCreateNewline, sal_True );
+ sal_Bool bCreateNewline( ( nFeatures & SEF_EXPORT_NO_WS ) == 0 ); // #86116#/#92210#
+ SvXMLElementExport aElem( mrExport, XML_NAMESPACE_DRAW, XML_FRAME, bCreateNewline, sal_True );
const bool bSaveBackwardsCompatible = ( mrExport.getExportFlags() & EXPORT_SAVEBACKWARDCOMPATIBLE );
- if( !bIsEmptyPresObj || bSaveBackwardsCompatible )
+ if ( !bIsEmptyPresObj || bSaveBackwardsCompatible )
{
- if( !bIsEmptyPresObj )
+ if ( !bIsEmptyPresObj )
{
OUString aReplacementUrl;
xPropSet->getPropertyValue( OUString(RTL_CONSTASCII_USTRINGPARAM("ReplacementGraphicURL"))) >>= aReplacementUrl;
// If there is no url, then then graphic is empty
- if(aReplacementUrl.getLength())
+ if ( aReplacementUrl.getLength() )
{
const OUString aStr = mrExport.AddEmbeddedGraphicObject(aReplacementUrl);
@@ -1115,15 +1116,13 @@ void XMLShapeExport::ImpExportGraphicObjectShape(
}
OUString aStreamURL;
- OUString aStr;
-
- xPropSet->getPropertyValue( OUString(RTL_CONSTASCII_USTRINGPARAM("GraphicStreamURL"))) >>= aStreamURL;
- xPropSet->getPropertyValue( OUString(RTL_CONSTASCII_USTRINGPARAM("GraphicURL"))) >>= sImageURL;
+ xPropSet->getPropertyValue( OUString( RTL_CONSTASCII_USTRINGPARAM( "GraphicStreamURL" ) ) ) >>= aStreamURL;
+ xPropSet->getPropertyValue( OUString( RTL_CONSTASCII_USTRINGPARAM( "GraphicURL" ) ) ) >>= sImageURL;
OUString aResolveURL( sImageURL );
- const rtl::OUString sPackageURL( RTL_CONSTASCII_USTRINGPARAM("vnd.sun.star.Package:") );
+ const rtl::OUString sPackageURL( RTL_CONSTASCII_USTRINGPARAM( "vnd.sun.star.Package:" ) );
- // sj: trying to preserve the filename
+ // sj: trying to preserve the filename
if ( aStreamURL.match( sPackageURL, 0 ) )
{
rtl::OUString sRequestedName( aStreamURL.copy( sPackageURL.getLength(), aStreamURL.getLength() - sPackageURL.getLength() ) );
@@ -1135,50 +1134,54 @@ void XMLShapeExport::ImpExportGraphicObjectShape(
sRequestedName = sRequestedName.copy( 0, nLastIndex );
if ( sRequestedName.getLength() )
{
- aResolveURL = aResolveURL.concat( OUString(RTL_CONSTASCII_USTRINGPARAM("?requestedName=")));
+ aResolveURL = aResolveURL.concat( OUString( RTL_CONSTASCII_USTRINGPARAM( "?requestedName=" ) ) );
aResolveURL = aResolveURL.concat( sRequestedName );
}
}
- aStr = mrExport.AddEmbeddedGraphicObject( aResolveURL );
- mrExport.AddAttribute(XML_NAMESPACE_XLINK, XML_HREF, aStr );
+ const OUString aStr = mrExport.AddEmbeddedGraphicObject( aResolveURL );
+ mrExport.AddAttribute( XML_NAMESPACE_XLINK, XML_HREF, aStr );
- if( aStr.getLength() )
+ if ( !aStr.isEmpty() )
{
- if( aStr[ 0 ] == '#' )
+ aStreamURL = sPackageURL;
+ if ( aStr[0] == '#' )
{
- aStreamURL = sPackageURL;
aStreamURL = aStreamURL.concat( aStr.copy( 1, aStr.getLength() - 1 ) );
}
+ else
+ {
+ aStreamURL = aStreamURL.concat( aStr );
+ }
// update stream URL for load on demand
uno::Any aAny;
aAny <<= aStreamURL;
- xPropSet->setPropertyValue( OUString(RTL_CONSTASCII_USTRINGPARAM("GraphicStreamURL")), aAny );
+ xPropSet->setPropertyValue( OUString( RTL_CONSTASCII_USTRINGPARAM( "GraphicStreamURL" ) ), aAny );
- mrExport.AddAttribute(XML_NAMESPACE_XLINK, XML_TYPE, XML_SIMPLE );
- mrExport.AddAttribute(XML_NAMESPACE_XLINK, XML_SHOW, XML_EMBED );
- mrExport.AddAttribute(XML_NAMESPACE_XLINK, XML_ACTUATE, XML_ONLOAD );
+ mrExport.AddAttribute( XML_NAMESPACE_XLINK, XML_TYPE, XML_SIMPLE );
+ mrExport.AddAttribute( XML_NAMESPACE_XLINK, XML_SHOW, XML_EMBED );
+ mrExport.AddAttribute( XML_NAMESPACE_XLINK, XML_ACTUATE, XML_ONLOAD );
}
}
else
{
OUString aStr;
- mrExport.AddAttribute(XML_NAMESPACE_XLINK, XML_HREF, aStr );
- mrExport.AddAttribute(XML_NAMESPACE_XLINK, XML_TYPE, XML_SIMPLE );
- mrExport.AddAttribute(XML_NAMESPACE_XLINK, XML_SHOW, XML_EMBED );
- mrExport.AddAttribute(XML_NAMESPACE_XLINK, XML_ACTUATE, XML_ONLOAD );
+ mrExport.AddAttribute( XML_NAMESPACE_XLINK, XML_HREF, aStr );
+ mrExport.AddAttribute( XML_NAMESPACE_XLINK, XML_TYPE, XML_SIMPLE );
+ mrExport.AddAttribute( XML_NAMESPACE_XLINK, XML_SHOW, XML_EMBED );
+ mrExport.AddAttribute( XML_NAMESPACE_XLINK, XML_ACTUATE, XML_ONLOAD );
}
{
- SvXMLElementExport aOBJ(mrExport, XML_NAMESPACE_DRAW, XML_IMAGE, sal_True, sal_True);
+ SvXMLElementExport aOBJ( mrExport, XML_NAMESPACE_DRAW, XML_IMAGE, sal_True, sal_True );
- if( sImageURL.getLength() )
+ if ( sImageURL.getLength() )
{
// optional office:binary-data
mrExport.AddEmbeddedGraphicObjectAsBase64( sImageURL );
}
- if( !bIsEmptyPresObj )
+ if ( !bIsEmptyPresObj )
ImpExportText( xShape );
}
}
@@ -1578,7 +1581,7 @@ void XMLShapeExport::ImpExportOLE2Shape(
if ( bInternal )
{
- // OOo internal links have no storage persistance, URL is stored in the XML file
+ // OOo internal links have no storage persistence, URL is stored in the XML file
// the result LinkURL is empty in case the object is not a link
xPropSet->getPropertyValue( OUString::createFromAscii( "LinkURL" ) ) >>= sURL;
}
diff --git a/xmloff/source/draw/shapeexport3.cxx b/xmloff/source/draw/shapeexport3.cxx
index 9e1c99efe0e3..f9e071e35885 100644
--- a/xmloff/source/draw/shapeexport3.cxx
+++ b/xmloff/source/draw/shapeexport3.cxx
@@ -81,7 +81,7 @@ void XMLShapeExport::ImpExport3DSceneShape( const uno::Reference< drawing::XShap
// write 3DSceneLights
export3DLamps( xPropSet );
- // #89764# if export of position is supressed for group shape,
+ // #89764# if export of position is suppressed for group shape,
// positions of contained objects should be written relative to
// the upper left edge of the group.
awt::Point aUpperLeft;
diff --git a/xmloff/source/draw/ximpcustomshape.cxx b/xmloff/source/draw/ximpcustomshape.cxx
index c563b44da81f..eb7ed554b5ba 100644
--- a/xmloff/source/draw/ximpcustomshape.cxx
+++ b/xmloff/source/draw/ximpcustomshape.cxx
@@ -887,7 +887,7 @@ void XMLEnhancedCustomShapeContext::StartElement( const uno::Reference< xml::sax
// entries for CustomShapes. To allow for a better ODF user experience, just correct this
// here by getting the real object scale from the already set transformation from the xShape.
// Hopefully LO will fix that bug (but this will still leave the files with the error), but
- // even when not this will do no harm as long noone uses this state explicitely for some
+ // even when not this will do no harm as long no one uses this state explicitely for some
// purpose (e.g. to really have CustomShapes without content, but unlikely).
// When they do fix this they will need this fix anyways to read their own misformed ODF files
// again, so I guess it will be taken, too...
diff --git a/xmloff/source/forms/elementimport.cxx b/xmloff/source/forms/elementimport.cxx
index f13ed31db6a1..23d83eb22423 100644
--- a/xmloff/source/forms/elementimport.cxx
+++ b/xmloff/source/forms/elementimport.cxx
@@ -1937,7 +1937,7 @@ namespace xmloff
//---------------------------------------------------------------------
void OColumnWrapperImport::StartElement(const Reference< sax::XAttributeList >& _rxAttrList)
{
- OSL_ENSURE(!m_xOwnAttributes.is(), "OColumnWrapperImport::StartElement: aready have the cloned list!");
+ OSL_ENSURE(!m_xOwnAttributes.is(), "OColumnWrapperImport::StartElement: already have the cloned list!");
// clone the attributes
Reference< XCloneable > xCloneList(_rxAttrList, UNO_QUERY);
diff --git a/xmloff/source/forms/eventimport.hxx b/xmloff/source/forms/eventimport.hxx
index bf2285309274..76a9a545ab49 100644
--- a/xmloff/source/forms/eventimport.hxx
+++ b/xmloff/source/forms/eventimport.hxx
@@ -63,7 +63,7 @@ namespace xmloff
OPropertySetCompare, // compare method
MapPropertySet2ScriptSequence); // class name
// usually an event attacher manager will need to collect all script events registered, 'cause
- // the _real_ XEventAttacherManager handles it's events by index, but out indicies are not fixed
+ // the _real_ XEventAttacherManager handles it's events by index, but out indices are not fixed
// until _all_ controls have been inserted.
MapPropertySet2ScriptSequence m_aEvents;
diff --git a/xmloff/source/forms/formcellbinding.hxx b/xmloff/source/forms/formcellbinding.hxx
index 4974a3b54ceb..06d2a98f4b5e 100644
--- a/xmloff/source/forms/formcellbinding.hxx
+++ b/xmloff/source/forms/formcellbinding.hxx
@@ -254,7 +254,7 @@ namespace xmloff
the AddressConversion service
@return
- <TRUE/> if any only if the conversion was successfull
+ <TRUE/> if any only if the conversion was successful
@see com::sun::star::table::CellAddressConversion
@see com::sun::star::table::CellRangeAddressConversion
diff --git a/xmloff/source/forms/layerexport.cxx b/xmloff/source/forms/layerexport.cxx
index 481cc6582d1e..b7fe010d847a 100644
--- a/xmloff/source/forms/layerexport.cxx
+++ b/xmloff/source/forms/layerexport.cxx
@@ -387,7 +387,7 @@ namespace xmloff
// (This behaviour of examineForms is a performance optimization, to not force
// the page to create a forms container just to see that it's empty.)
- // So, in such a case, seekPage is considered to be successfull, too, though the
+ // So, in such a case, seekPage is considered to be successful, too, though the
// page was not yet known
Reference< XFormsSupplier2 > xFormsSupp( _rxDrawPage, UNO_QUERY );
if ( xFormsSupp.is() && !xFormsSupp->hasForms() )
diff --git a/xmloff/source/forms/layerexport.hxx b/xmloff/source/forms/layerexport.hxx
index 46e19257ff3a..088a3a49e7d9 100644
--- a/xmloff/source/forms/layerexport.hxx
+++ b/xmloff/source/forms/layerexport.hxx
@@ -103,7 +103,7 @@ namespace xmloff
MapPropertySet2Map m_aReferringControls;
// for a given page (iter->first), and a given control (iter->second->first), this is the comma-separated
- // lists of ids of the controls refering to the control given.
+ // lists of ids of the controls referring to the control given.
MapPropertySet2Map::iterator
m_aCurrentPageIds;
diff --git a/xmloff/source/forms/propertyexport.cxx b/xmloff/source/forms/propertyexport.cxx
index 6eca48512cb2..342e84504c8e 100644
--- a/xmloff/source/forms/propertyexport.cxx
+++ b/xmloff/source/forms/propertyexport.cxx
@@ -284,7 +284,7 @@ namespace xmloff
const ::rtl::OUString& _rPropertyName, const sal_Int8 _nBooleanAttributeFlags)
{
DBG_CHECK_PROPERTY_NO_TYPE( _rPropertyName );
- // no check of the property value type: this method is allowed to be called with any interger properties
+ // no check of the property value type: this method is allowed to be called with any integer properties
// (e.g. sal_Int32, sal_uInt16 etc)
sal_Bool bDefault = (BOOLATTR_DEFAULT_TRUE == (BOOLATTR_DEFAULT_MASK & _nBooleanAttributeFlags));
diff --git a/xmloff/source/forms/propertyexport.hxx b/xmloff/source/forms/propertyexport.hxx
index f7a99388900c..43be20ff9fce 100644
--- a/xmloff/source/forms/propertyexport.hxx
+++ b/xmloff/source/forms/propertyexport.hxx
@@ -44,7 +44,7 @@ namespace xmloff
#define BOOLATTR_DEFAULT_MASK 0x03
#define BOOLATTR_INVERSE_SEMANTICS 0x04
- // if sal_True, indicates that the semantic of the property refered by <arg>_pPropertyName</arg>
+ // if sal_True, indicates that the semantic of the property referred by <arg>_pPropertyName</arg>
// is inverse to the semantic of the XML attribute.<br/>
// I.e. if the property value is <TRUE/>, <FALSE/> has to be written and vice versa.
// <p>Be careful with <arg>_bDefault</arg> and <arg>_bInverseSemantics</arg>: if <arg>_bInverseSemantics</arg>
@@ -251,7 +251,7 @@ namespace xmloff
/** add an arbitrary attribute extracted from an arbitrary property to the export context
- <p>The current value of the property specified wiht <arg>_pPropertyName</arg> is taken and converted
+ <p>The current value of the property specified with <arg>_pPropertyName</arg> is taken and converted
into a string, no matter what type it has. (Okay, there are the usual limitations: We know Date, Datetime,
double, integer ... to name just a few).</p>
@@ -280,13 +280,13 @@ namespace xmloff
/** exports a property value, which is a string sequence, as attribute
<p>The elements of the string sequence given are quoted and concatenated, with the characters used for
- this to be choosen by the caller</p>
+ this to be chosen by the caller</p>
<p>If you use the quote character, no check (except assertions) is made if one of the list items
- containes the quote character</p>
+ contains the quote character</p>
<p>If you don't use the quote character, no check (except assertions) is made if one of the list items
- containes the separator character (which would be deadly when reimporting the string)</p>
+ contains the separator character (which would be deadly when reimporting the string)</p>
@param _nNamespaceKey
the key of the namespace to use for the attribute name. Is used with the namespace map
diff --git a/xmloff/source/meta/xmlversion.cxx b/xmloff/source/meta/xmlversion.cxx
index e41d3583830b..6bc1caadae62 100644
--- a/xmloff/source/meta/xmlversion.cxx
+++ b/xmloff/source/meta/xmlversion.cxx
@@ -387,7 +387,7 @@ void SAL_CALL XMLVersionListPersistence::store( const uno::Reference< embed::XSt
if ( !xVerStream.is() )
throw uno::RuntimeException();
-//REMOVE // SetSize should not be neccessary because OpenStream( WRITE|TRUNC ) should already
+//REMOVE // SetSize should not be necessary because OpenStream( WRITE|TRUNC ) should already
//REMOVE // have set the size to zero
//REMOVE // xVerStream->SetSize ( 0L );
//REMOVE xVerStream->SetBufferSize( 16*1024 );
diff --git a/xmloff/source/style/PageMasterExportPropMapper.cxx b/xmloff/source/style/PageMasterExportPropMapper.cxx
index 199cb4bffb9d..ed7a74cc5c91 100644
--- a/xmloff/source/style/PageMasterExportPropMapper.cxx
+++ b/xmloff/source/style/PageMasterExportPropMapper.cxx
@@ -19,10 +19,9 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_xmloff.hxx"
+
#include "PageMasterExportPropMapper.hxx"
#include <xmloff/xmltoken.hxx>
#include <comphelper/types.hxx>
@@ -32,13 +31,15 @@
#include <rtl/ustrbuf.hxx>
#include <comphelper/extract.hxx>
+//UUUU
+#include <xmloff/txtprmap.hxx>
+
using namespace ::com::sun::star;
using namespace ::com::sun::star::uno;
using namespace ::com::sun::star::beans;
using namespace ::comphelper;
using namespace ::xmloff::token;
-
//______________________________________________________________________________
inline sal_Bool lcl_HasSameLineWidth( const table::BorderLine& rLine1, const table::BorderLine& rLine2 )
@@ -339,6 +340,14 @@ void XMLPageMasterExportPropMapper::ContextFilter(
XMLPropertyState* pPrint = NULL;
+ //UUUU
+ XMLPropertyState* pRepeatOffsetX = NULL;
+ XMLPropertyState* pRepeatOffsetY = NULL;
+ XMLPropertyState* pHeaderRepeatOffsetX = NULL;
+ XMLPropertyState* pHeaderRepeatOffsetY = NULL;
+ XMLPropertyState* pFooterRepeatOffsetX = NULL;
+ XMLPropertyState* pFooterRepeatOffsetY = NULL;
+
UniReference < XMLPropertySetMapper > aPropMapper(getPropertySetMapper());
for( ::std::vector< XMLPropertyState >::iterator aIter = rPropState.begin(); aIter != rPropState.end(); ++aIter )
@@ -396,7 +405,64 @@ void XMLPageMasterExportPropMapper::ContextFilter(
case CTF_PM_STANDARD_MODE: pPMStandardMode = pProp; break;
case CTP_PM_GRID_BASE_WIDTH: pPMGridBaseWidth = pProp; break;
case CTP_PM_GRID_SNAP_TO_CHARS: pPMGridSnapToChars = pProp; break;
+
+ //UUUU
+ case CTF_PM_REPEAT_OFFSET_X:
+ pRepeatOffsetX = pProp;
+ break;
+
+ //UUUU
+ case CTF_PM_REPEAT_OFFSET_Y:
+ pRepeatOffsetY = pProp;
+ break;
+
+ //UUUU
+ case CTF_PM_HEADERREPEAT_OFFSET_X:
+ pHeaderRepeatOffsetX = pProp;
+ break;
+
+ //UUUU
+ case CTF_PM_HEADERREPEAT_OFFSET_Y:
+ pHeaderRepeatOffsetY = pProp;
+ break;
+
+ //UUUU
+ case CTF_PM_FOOTERREPEAT_OFFSET_X:
+ pFooterRepeatOffsetX = pProp;
+ break;
+
+ //UUUU
+ case CTF_PM_FOOTERREPEAT_OFFSET_Y:
+ pFooterRepeatOffsetY = pProp;
+ break;
+
+ //UUUU Sort out empty entries
+ case CTF_PM_FILLGRADIENTNAME:
+ case CTF_PM_FILLHATCHNAME:
+ case CTF_PM_FILLBITMAPNAME:
+ case CTF_PM_FILLTRANSNAME:
+
+ case CTF_PM_HEADERFILLGRADIENTNAME:
+ case CTF_PM_HEADERFILLHATCHNAME:
+ case CTF_PM_HEADERFILLBITMAPNAME:
+ case CTF_PM_HEADERFILLTRANSNAME:
+
+ case CTF_PM_FOOTERFILLGRADIENTNAME:
+ case CTF_PM_FOOTERFILLHATCHNAME:
+ case CTF_PM_FOOTERFILLBITMAPNAME:
+ case CTF_PM_FOOTERFILLTRANSNAME:
+ {
+ rtl::OUString aStr;
+
+ if( (pProp->maValue >>= aStr) && 0 == aStr.getLength() )
+ {
+ pProp->mnIndex = -1;
+ }
+
+ break;
+ }
}
+
if (nPrintId == CTF_PM_PRINTMASK)
{
pPrint = pProp;
@@ -404,6 +470,54 @@ void XMLPageMasterExportPropMapper::ContextFilter(
}
}
+ //UUUU These entries need to be reduced to a single one for XML export.
+ // Both would be exported as 'draw:tile-repeat-offset' following a percent
+ // value and a 'vertical' or 'horizontal' tag as mark. If both would be active
+ // and both would be exported this would create an XML error (same property twice)
+ if(pRepeatOffsetX && pRepeatOffsetY)
+ {
+ sal_Int32 nOffset(0);
+
+ if((pRepeatOffsetX->maValue >>= nOffset) && (!nOffset))
+ {
+ pRepeatOffsetX->mnIndex = -1;
+ }
+ else
+ {
+ pRepeatOffsetY->mnIndex = -1;
+ }
+ }
+
+ //UUUU Same as above for Header
+ if(pHeaderRepeatOffsetX && pHeaderRepeatOffsetY)
+ {
+ sal_Int32 nOffset(0);
+
+ if((pHeaderRepeatOffsetX->maValue >>= nOffset) && (!nOffset))
+ {
+ pHeaderRepeatOffsetX->mnIndex = -1;
+ }
+ else
+ {
+ pHeaderRepeatOffsetY->mnIndex = -1;
+ }
+ }
+
+ //UUUU Same as above for Footer
+ if(pFooterRepeatOffsetX && pFooterRepeatOffsetY)
+ {
+ sal_Int32 nOffset(0);
+
+ if((pFooterRepeatOffsetX->maValue >>= nOffset) && (!nOffset))
+ {
+ pFooterRepeatOffsetX->mnIndex = -1;
+ }
+ else
+ {
+ pFooterRepeatOffsetY->mnIndex = -1;
+ }
+ }
+
if( pPMStandardMode && !getBOOL(pPMStandardMode->maValue) )
{
lcl_RemoveState(pPMStandardMode);
diff --git a/xmloff/source/style/PageMasterImportContext.cxx b/xmloff/source/style/PageMasterImportContext.cxx
index 2d553e973d1e..e4f2e5a838b5 100644
--- a/xmloff/source/style/PageMasterImportContext.cxx
+++ b/xmloff/source/style/PageMasterImportContext.cxx
@@ -19,34 +19,33 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_xmloff.hxx"
-
#include "PageMasterImportContext.hxx"
#include "xmloff/xmlnmspe.hxx"
#include <xmloff/xmltoken.hxx>
#include "PageMasterPropHdl.hxx"
#include "PagePropertySetContext.hxx"
-#ifndef _XMLOFF_PAGEPHEADERFOOTERCONTEXT_HXX
#include "PageHeaderFooterContext.hxx"
-#endif
-#ifndef _XMLOFF_PAGEMASTERPROPMAPPER_HXX
#include "PageMasterPropMapper.hxx"
-#endif
#include "PageMasterImportPropMapper.hxx"
-#ifndef _XMLOFF_PAGEMASTERSTYLEMAP_HXX
#include <xmloff/PageMasterStyleMap.hxx>
-#endif
#include <com/sun/star/lang/XMultiServiceFactory.hpp>
+//UUUU
+#include <xmlsdtypes.hxx>
+#include <com/sun/star/beans/XPropertySetInfo.hpp>
+#include <xmloff/xmlerror.hxx>
+
using namespace ::com::sun::star;
using namespace ::xmloff::token;
using namespace ::com::sun::star::uno;
using namespace ::com::sun::star::lang;
+//UUUU
+using namespace ::com::sun::star::beans;
+
void PageStyleContext::SetAttribute( sal_uInt16 nPrefixKey,
const rtl::OUString& rLocalName,
const rtl::OUString& rValue )
@@ -68,7 +67,8 @@ PageStyleContext::PageStyleContext( SvXMLImport& rImport,
SvXMLStylesContext& rStyles,
sal_Bool bDefaultStyle) :
XMLPropStyleContext( rImport, nPrfx, rLName, xAttrList, rStyles, XML_STYLE_FAMILY_PAGE_MASTER, bDefaultStyle),
- sPageUsage()
+ sPageUsage(),
+ m_bIsFillStyleAlreadyConverted(false) //UUUU
{
}
@@ -165,10 +165,148 @@ SvXMLImportContext *PageStyleContext::CreateChildContext(
return pContext;
}
-void PageStyleContext::FillPropertySet(
- const uno::Reference<beans::XPropertySet > & rPropSet )
+void PageStyleContext::FillPropertySet(const uno::Reference<beans::XPropertySet > & rPropSet)
{
- XMLPropStyleContext::FillPropertySet(rPropSet);
+ //UUUU need to filter out old fill definitions when the new ones are used. The new
+ // ones are used when a FillStyle is defined
+ if(!m_bIsFillStyleAlreadyConverted && GetProperties().size())
+ {
+ static ::rtl::OUString s_FillStyle(RTL_CONSTASCII_USTRINGPARAM("FillStyle"));
+ static ::rtl::OUString s_HeaderFillStyle(RTL_CONSTASCII_USTRINGPARAM("HeaderFillStyle"));
+ static ::rtl::OUString s_FooterFillStyle(RTL_CONSTASCII_USTRINGPARAM("FooterFillStyle"));
+
+ if(doNewDrawingLayerFillStyleDefinitionsExist(s_FillStyle))
+ {
+ deactivateOldFillStyleDefinitions(getStandardSet());
+ }
+
+ if(doNewDrawingLayerFillStyleDefinitionsExist(s_HeaderFillStyle))
+ {
+ deactivateOldFillStyleDefinitions(getHeaderSet());
+ }
+
+ if(doNewDrawingLayerFillStyleDefinitionsExist(s_FooterFillStyle))
+ {
+ deactivateOldFillStyleDefinitions(getFooterSet());
+ }
+
+ m_bIsFillStyleAlreadyConverted = true;
+ }
+
+ //UUUU do not use XMLPropStyleContext::FillPropertySet, we need to handle this ourselves since
+ // we have properties which use the MID_FLAG_NO_PROPERTY_IMPORT flag since they need some special
+ // handling
+ UniReference < SvXMLImportPropertyMapper > xImpPrMap = GetStyles()->GetImportPropertyMapper(GetFamily());
+
+ if(xImpPrMap.is())
+ {
+ // properties that need special handling because they need the used name to be translated first
+ struct _ContextID_Index_Pair aContextIDs[] =
+ {
+ { CTF_PM_FILLGRADIENTNAME, -1 },
+ { CTF_PM_FILLTRANSNAME, -1 },
+ { CTF_PM_FILLHATCHNAME, -1 },
+ { CTF_PM_FILLBITMAPNAME, -1 },
+
+ // also need to special handling for header entries
+ { CTF_PM_HEADERFILLGRADIENTNAME, -1 },
+ { CTF_PM_HEADERFILLTRANSNAME, -1 },
+ { CTF_PM_HEADERFILLHATCHNAME, -1 },
+ { CTF_PM_HEADERFILLBITMAPNAME, -1 },
+
+ // also need to special handling for footer entries
+ { CTF_PM_FOOTERFILLGRADIENTNAME, -1 },
+ { CTF_PM_FOOTERFILLTRANSNAME, -1 },
+ { CTF_PM_FOOTERFILLHATCHNAME, -1 },
+ { CTF_PM_FOOTERFILLBITMAPNAME, -1 },
+
+ {-1, -1}
+ };
+
+ // the style families associated with the same index modulo 4
+ static sal_uInt16 aFamilies[] =
+ {
+ XML_STYLE_FAMILY_SD_GRADIENT_ID,
+ XML_STYLE_FAMILY_SD_GRADIENT_ID,
+ XML_STYLE_FAMILY_SD_HATCH_ID,
+ XML_STYLE_FAMILY_SD_FILL_IMAGE_ID
+ };
+
+ //UUUU Fill PropertySet, but let it handle special properties not itself
+ xImpPrMap->FillPropertySet(GetProperties(), rPropSet, aContextIDs);
+
+ // get property set mapper
+ const UniReference< XMLPropertySetMapper >& rMapper = xImpPrMap->getPropertySetMapper();
+ Reference< XPropertySetInfo > xInfo;
+
+ //UUUU handle special attributes which have MID_FLAG_NO_PROPERTY_IMPORT set
+ for(sal_uInt16 i = 0; aContextIDs[i].nContextID != -1; i++)
+ {
+ sal_Int32 nIndex = aContextIDs[i].nIndex;
+
+ if(nIndex != -1)
+ {
+ switch(aContextIDs[i].nContextID)
+ {
+ case CTF_PM_FILLGRADIENTNAME:
+ case CTF_PM_FILLTRANSNAME:
+ case CTF_PM_FILLHATCHNAME:
+ case CTF_PM_FILLBITMAPNAME:
+
+ case CTF_PM_HEADERFILLGRADIENTNAME:
+ case CTF_PM_HEADERFILLTRANSNAME:
+ case CTF_PM_HEADERFILLHATCHNAME:
+ case CTF_PM_HEADERFILLBITMAPNAME:
+
+ case CTF_PM_FOOTERFILLGRADIENTNAME:
+ case CTF_PM_FOOTERFILLTRANSNAME:
+ case CTF_PM_FOOTERFILLHATCHNAME:
+ case CTF_PM_FOOTERFILLBITMAPNAME:
+ {
+ struct XMLPropertyState& rState = GetProperties()[nIndex];
+ rtl::OUString sStyleName;
+ rState.maValue >>= sStyleName;
+
+ //UUUU translate the used name from ODF intern to the name used in the Model
+ sStyleName = GetImport().GetStyleDisplayName(aFamilies[i%4], sStyleName);
+
+ try
+ {
+ // set property
+ const rtl::OUString& rPropertyName = rMapper->GetEntryAPIName(rState.mnIndex);
+
+ if(!xInfo.is())
+ {
+ xInfo = rPropSet->getPropertySetInfo();
+ }
+
+ if(xInfo->hasPropertyByName(rPropertyName))
+ {
+ rPropSet->setPropertyValue(rPropertyName,Any(sStyleName));
+ }
+ }
+ catch(::com::sun::star::lang::IllegalArgumentException& e)
+ {
+ Sequence< rtl::OUString > aSeq(1);
+ aSeq[0] = sStyleName;
+ GetImport().SetError(
+ XMLERROR_STYLE_PROP_VALUE | XMLERROR_FLAG_WARNING,
+ aSeq,e.Message,NULL);
+ }
+ break;
+ }
+ }
+ }
+ }
+ }
+ else
+ {
+ OSL_ENSURE(xImpPrMap.is(), "Got no SvXMLImportPropertyMapper (!)");
+ }
+
+ //UUUU old code, replaced by above stuff
+ // XMLPropStyleContext::FillPropertySet(rPropSet);
+
if (sPageUsage.getLength())
{
uno::Any aPageUsage;
@@ -193,3 +331,4 @@ void PageStyleContext::SetDefaults( )
}
}
+//eof
diff --git a/xmloff/source/style/PageMasterPropHdlFactory.cxx b/xmloff/source/style/PageMasterPropHdlFactory.cxx
index 12613bd098f7..edc4fdd99d48 100644
--- a/xmloff/source/style/PageMasterPropHdlFactory.cxx
+++ b/xmloff/source/style/PageMasterPropHdlFactory.cxx
@@ -19,32 +19,41 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_xmloff.hxx"
+
#include "PageMasterPropHdlFactory.hxx"
#include <xmloff/xmltypes.hxx>
#include <xmloff/xmltoken.hxx>
#include "xmlbahdl.hxx"
#include <xmloff/NamedBoolPropertyHdl.hxx>
-#ifndef _XMLOFF_XMLTEXTCOLUMNSPPROPERTYHANDLER_HXX
#include "XMLTextColumnsPropertyHandler.hxx"
-#endif
#include <xmloff/XMLConstantsPropertyHandler.hxx>
#include "PageMasterPropHdl.hxx"
-#ifndef _XMLOFF_PAGEMASTERSTYLEMAP_HXX
#include <xmloff/PageMasterStyleMap.hxx>
-#endif
#include <com/sun/star/text/TextGridMode.hpp>
+//UUUU
+#include <xmloff/EnumPropertyHdl.hxx>
+#include <com/sun/star/drawing/FillStyle.hpp>
+#include "XMLFillBitmapSizePropertyHandler.hxx"
+#include "XMLBitmapLogicalSizePropertyHandler.hxx"
+#include <com/sun/star/drawing/RectanglePoint.hpp>
+#include <com/sun/star/drawing/BitmapMode.hpp>
+#include "XMLBitmapRepeatOffsetPropertyHandler.hxx"
using ::rtl::OUString;
using ::rtl::OUStringBuffer;
using namespace ::xmloff::token;
using namespace ::com::sun::star;
+//UUUU
+using namespace ::com::sun::star::drawing;
+//UUUU
+extern SvXMLEnumMapEntry aXML_FillStyle_EnumMap[];
+extern SvXMLEnumMapEntry aXML_RefPoint_EnumMap[];
+extern SvXMLEnumMapEntry aXML_BitmapMode_EnumMap[];
SvXMLEnumMapEntry aXML_TextGridMode_ConstantMap[] =
{
@@ -135,6 +144,34 @@ const XMLPropertyHandler* XMLPageMasterPropHdlFactory::GetPropertyHandler( sal_I
pHdl = new XMLConstantsPropertyHandler(
aXML_TextGridMode_ConstantMap, XML_NONE );
break;
+
+ //UUUU
+ case XML_SW_TYPE_FILLSTYLE:
+ pHdl = new XMLEnumPropertyHdl( aXML_FillStyle_EnumMap, ::getCppuType((const FillStyle*)0) );
+ break;
+ case XML_SW_TYPE_FILLBITMAPSIZE:
+ pHdl = new XMLFillBitmapSizePropertyHandler();
+ break;
+ case XML_SW_TYPE_LOGICAL_SIZE:
+ pHdl = new XMLBitmapLogicalSizePropertyHandler();
+ break;
+ case XML_SW_TYPE_BITMAP_REFPOINT:
+ pHdl = new XMLEnumPropertyHdl( aXML_RefPoint_EnumMap, getCppuType((const RectanglePoint*)0) );
+ break;
+ case XML_SW_TYPE_BITMAP_MODE:
+ pHdl = new XMLEnumPropertyHdl( aXML_BitmapMode_EnumMap, getCppuType((const BitmapMode*)0) );
+ break;
+ case XML_SW_TYPE_BITMAPREPOFFSETX:
+ case XML_SW_TYPE_BITMAPREPOFFSETY:
+ pHdl = new XMLBitmapRepeatOffsetPropertyHandler(XML_SW_TYPE_BITMAPREPOFFSETX == nType);
+ break;
+
+ //UUUU
+ default:
+ {
+ OSL_ENSURE(false, "XMLPropertyHandler missing (!)");
+ break;
+ }
}
if( pHdl )
diff --git a/xmloff/source/style/PageMasterStyleMap.cxx b/xmloff/source/style/PageMasterStyleMap.cxx
index e49e65994286..2aa7440ad40c 100644
--- a/xmloff/source/style/PageMasterStyleMap.cxx
+++ b/xmloff/source/style/PageMasterStyleMap.cxx
@@ -19,83 +19,88 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_xmloff.hxx"
#include <xmloff/PageMasterStyleMap.hxx>
-
#include <xmloff/xmlnmspe.hxx>
#include <xmloff/xmltoken.hxx>
+//UUUU
+#include <xmloff/txtprmap.hxx>
+
using namespace ::xmloff::token;
#define _MAP(name,prefix,token,type,context) { name, sizeof(name)-1, prefix, token, static_cast<sal_Int32>(type), context, SvtSaveOptions::ODFVER_010 }
-#define PLMAP(name,prefix,token,type,context) \
- _MAP(name,prefix,token,type|XML_TYPE_PROP_PAGE_LAYOUT,context)
-#define HFMAP(name,prefix,token,type,context) \
- _MAP(name,prefix,token,type|XML_TYPE_PROP_HEADER_FOOTER,context)
+#define PLMAP(name,prefix,token,type,context) _MAP(name,prefix,token,type|XML_TYPE_PROP_PAGE_LAYOUT,context)
+#define HFMAP(name,prefix,token,type,context) _MAP(name,prefix,token,type|XML_TYPE_PROP_HEADER_FOOTER,context)
+
+//UUUU
+#define GMAP(name,prefix,token,type,context) _MAP(name,prefix,token,static_cast<sal_Int32>(type|XML_TYPE_PROP_GRAPHIC),context)
//______________________________________________________________________________
const XMLPropertyMapEntry aXMLPageMasterStyleMap[] =
{
-// page master
- PLMAP( "PageStyleLayout", XML_NAMESPACE_STYLE, XML_PAGE_USAGE, XML_PM_TYPE_PAGESTYLELAYOUT | MID_FLAG_SPECIAL_ITEM, CTF_PM_PAGEUSAGE ),
- PLMAP( "Width", XML_NAMESPACE_FO, XML_PAGE_WIDTH, XML_TYPE_MEASURE, 0 ),
- PLMAP( "Height", XML_NAMESPACE_FO, XML_PAGE_HEIGHT, XML_TYPE_MEASURE, 0 ),
- PLMAP( "NumberingType", XML_NAMESPACE_STYLE, XML_NUM_FORMAT, XML_PM_TYPE_NUMFORMAT | MID_FLAG_MERGE_PROPERTY, 0 ),
- PLMAP( "NumberingType", XML_NAMESPACE_STYLE, XML_NUM_LETTER_SYNC, XML_PM_TYPE_NUMLETTERSYNC, 0 ),
- PLMAP( "PrinterPaperTray", XML_NAMESPACE_STYLE, XML_PAPER_TRAY_NAME, XML_TYPE_STRING | MID_FLAG_PROPERTY_MAY_EXCEPT, 0 ),
- PLMAP( "IsLandscape", XML_NAMESPACE_STYLE, XML_PRINT_ORIENTATION, XML_PM_TYPE_PRINTORIENTATION, 0 ),
- PLMAP( "TopMargin", XML_NAMESPACE_FO, XML_MARGIN, XML_TYPE_MEASURE, CTF_PM_MARGINALL ),
- PLMAP( "TopMargin", XML_NAMESPACE_FO, XML_MARGIN_TOP, XML_TYPE_MEASURE, CTF_PM_MARGINTOP ),
- PLMAP( "BottomMargin", XML_NAMESPACE_FO, XML_MARGIN_BOTTOM, XML_TYPE_MEASURE, CTF_PM_MARGINBOTTOM ),
- PLMAP( "LeftMargin", XML_NAMESPACE_FO, XML_MARGIN_LEFT, XML_TYPE_MEASURE, CTF_PM_MARGINLEFT ),
- PLMAP( "RightMargin", XML_NAMESPACE_FO, XML_MARGIN_RIGHT, XML_TYPE_MEASURE, CTF_PM_MARGINRIGHT ),
- PLMAP( "TopBorder", XML_NAMESPACE_FO, XML_BORDER, XML_TYPE_BORDER, CTF_PM_BORDERALL ),
- PLMAP( "TopBorder", XML_NAMESPACE_FO, XML_BORDER_TOP, XML_TYPE_BORDER, CTF_PM_BORDERTOP ),
- PLMAP( "BottomBorder", XML_NAMESPACE_FO, XML_BORDER_BOTTOM, XML_TYPE_BORDER, CTF_PM_BORDERBOTTOM ),
- PLMAP( "LeftBorder", XML_NAMESPACE_FO, XML_BORDER_LEFT, XML_TYPE_BORDER, CTF_PM_BORDERLEFT ),
- PLMAP( "RightBorder", XML_NAMESPACE_FO, XML_BORDER_RIGHT, XML_TYPE_BORDER, CTF_PM_BORDERRIGHT ),
- PLMAP( "TopBorder", XML_NAMESPACE_STYLE, XML_BORDER_LINE_WIDTH, XML_TYPE_BORDER_WIDTH, CTF_PM_BORDERWIDTHALL ),
- PLMAP( "TopBorder", XML_NAMESPACE_STYLE, XML_BORDER_LINE_WIDTH_TOP, XML_TYPE_BORDER_WIDTH, CTF_PM_BORDERWIDTHTOP ),
- PLMAP( "BottomBorder", XML_NAMESPACE_STYLE, XML_BORDER_LINE_WIDTH_BOTTOM, XML_TYPE_BORDER_WIDTH, CTF_PM_BORDERWIDTHBOTTOM ),
- PLMAP( "LeftBorder", XML_NAMESPACE_STYLE, XML_BORDER_LINE_WIDTH_LEFT, XML_TYPE_BORDER_WIDTH, CTF_PM_BORDERWIDTHLEFT ),
- PLMAP( "RightBorder", XML_NAMESPACE_STYLE, XML_BORDER_LINE_WIDTH_RIGHT, XML_TYPE_BORDER_WIDTH, CTF_PM_BORDERWIDTHRIGHT ),
- PLMAP( "TopBorderDistance", XML_NAMESPACE_FO, XML_PADDING, XML_TYPE_MEASURE, CTF_PM_PADDINGALL ),
- PLMAP( "TopBorderDistance", XML_NAMESPACE_FO, XML_PADDING_TOP, XML_TYPE_MEASURE, CTF_PM_PADDINGTOP ),
- PLMAP( "BottomBorderDistance", XML_NAMESPACE_FO, XML_PADDING_BOTTOM, XML_TYPE_MEASURE, CTF_PM_PADDINGBOTTOM ),
- PLMAP( "LeftBorderDistance", XML_NAMESPACE_FO, XML_PADDING_LEFT, XML_TYPE_MEASURE, CTF_PM_PADDINGLEFT ),
- PLMAP( "RightBorderDistance", XML_NAMESPACE_FO, XML_PADDING_RIGHT, XML_TYPE_MEASURE, CTF_PM_PADDINGRIGHT ),
- PLMAP( "ShadowFormat", XML_NAMESPACE_STYLE, XML_SHADOW, XML_TYPE_TEXT_SHADOW, 0 ),
- PLMAP( "BackColor", XML_NAMESPACE_FO, XML_BACKGROUND_COLOR, XML_TYPE_COLORTRANSPARENT | MID_FLAG_MULTI_PROPERTY, 0 ),
- PLMAP( "BackTransparent", XML_NAMESPACE_FO, XML_BACKGROUND_COLOR, XML_TYPE_ISTRANSPARENT | MID_FLAG_MERGE_ATTRIBUTE, 0 ),
- PLMAP( "BackGraphicLocation", XML_NAMESPACE_STYLE, XML_POSITION, XML_TYPE_BUILDIN_CMP_ONLY | MID_FLAG_SPECIAL_ITEM, CTF_PM_GRAPHICPOSITION ),
- PLMAP( "BackGraphicFilter", XML_NAMESPACE_STYLE, XML_FILTER_NAME, XML_TYPE_STRING | MID_FLAG_SPECIAL_ITEM, CTF_PM_GRAPHICFILTER ),
- PLMAP( "BackGraphicURL", XML_NAMESPACE_STYLE, XML_BACKGROUND_IMAGE, XML_TYPE_STRING | MID_FLAG_ELEMENT_ITEM, CTF_PM_GRAPHICURL ),
- PLMAP( "PrintAnnotations", XML_NAMESPACE_STYLE, XML_PRINT, XML_PM_TYPE_PRINTANNOTATIONS | MID_FLAG_MULTI_PROPERTY, CTF_PM_PRINT_ANNOTATIONS ),
- PLMAP( "PrintCharts", XML_NAMESPACE_STYLE, XML_PRINT, XML_PM_TYPE_PRINTCHARTS | MID_FLAG_MULTI_PROPERTY | MID_FLAG_MERGE_ATTRIBUTE, CTF_PM_PRINT_CHARTS ),
- PLMAP( "PrintDrawing", XML_NAMESPACE_STYLE, XML_PRINT, XML_PM_TYPE_PRINTDRAWING | MID_FLAG_MULTI_PROPERTY | MID_FLAG_MERGE_ATTRIBUTE, CTF_PM_PRINT_DRAWING ),
- PLMAP( "PrintFormulas", XML_NAMESPACE_STYLE, XML_PRINT, XML_PM_TYPE_PRINTFORMULAS | MID_FLAG_MULTI_PROPERTY | MID_FLAG_MERGE_ATTRIBUTE, CTF_PM_PRINT_FORMULAS ),
- PLMAP( "PrintGrid", XML_NAMESPACE_STYLE, XML_PRINT, XML_PM_TYPE_PRINTGRID | MID_FLAG_MULTI_PROPERTY | MID_FLAG_MERGE_ATTRIBUTE, CTF_PM_PRINT_GRID ),
- PLMAP( "PrintHeaders", XML_NAMESPACE_STYLE, XML_PRINT, XML_PM_TYPE_PRINTHEADERS | MID_FLAG_MULTI_PROPERTY | MID_FLAG_MERGE_ATTRIBUTE, CTF_PM_PRINT_HEADERS ),
- PLMAP( "PrintObjects", XML_NAMESPACE_STYLE, XML_PRINT, XML_PM_TYPE_PRINTOBJECTS | MID_FLAG_MULTI_PROPERTY | MID_FLAG_MERGE_ATTRIBUTE, CTF_PM_PRINT_OBJECTS ),
- PLMAP( "PrintZeroValues", XML_NAMESPACE_STYLE, XML_PRINT, XML_PM_TYPE_PRINTZEROVALUES | MID_FLAG_MERGE_ATTRIBUTE, CTF_PM_PRINT_ZEROVALUES ),
- PLMAP( "PrintDownFirst", XML_NAMESPACE_STYLE, XML_PRINT_PAGE_ORDER, XML_PM_TYPE_PRINTPAGEORDER, 0 ),
- PLMAP( "FirstPageNumber", XML_NAMESPACE_STYLE, XML_FIRST_PAGE_NUMBER, XML_PM_TYPE_FIRSTPAGENUMBER, 0 ),
- PLMAP( "PageScale", XML_NAMESPACE_STYLE, XML_SCALE_TO, XML_TYPE_PERCENT16, CTF_PM_SCALETO ),
- PLMAP( "ScaleToPages", XML_NAMESPACE_STYLE, XML_SCALE_TO_PAGES, XML_TYPE_NUMBER16, CTF_PM_SCALETOPAGES ),
- PLMAP( "ScaleToPagesX", XML_NAMESPACE_STYLE, XML_SCALE_TO_X, XML_TYPE_NUMBER16, CTF_PM_SCALETOX ),
- PLMAP( "ScaleToPagesY", XML_NAMESPACE_STYLE, XML_SCALE_TO_Y, XML_TYPE_NUMBER16, CTF_PM_SCALETOY ),
+ //////////////////////////////////////////////////////////////////////////
+ //UUUU Section for 'page-layout-properties'
+
+ // page master
+ PLMAP( "PageStyleLayout", XML_NAMESPACE_STYLE, XML_PAGE_USAGE, XML_PM_TYPE_PAGESTYLELAYOUT | MID_FLAG_SPECIAL_ITEM, CTF_PM_PAGEUSAGE ),
+ PLMAP( "Width", XML_NAMESPACE_FO, XML_PAGE_WIDTH, XML_TYPE_MEASURE, 0 ),
+ PLMAP( "Height", XML_NAMESPACE_FO, XML_PAGE_HEIGHT, XML_TYPE_MEASURE, 0 ),
+ PLMAP( "NumberingType", XML_NAMESPACE_STYLE, XML_NUM_FORMAT, XML_PM_TYPE_NUMFORMAT | MID_FLAG_MERGE_PROPERTY, 0 ),
+ PLMAP( "NumberingType", XML_NAMESPACE_STYLE, XML_NUM_LETTER_SYNC, XML_PM_TYPE_NUMLETTERSYNC, 0 ),
+ PLMAP( "PrinterPaperTray", XML_NAMESPACE_STYLE, XML_PAPER_TRAY_NAME, XML_TYPE_STRING | MID_FLAG_PROPERTY_MAY_EXCEPT, 0 ),
+ PLMAP( "IsLandscape", XML_NAMESPACE_STYLE, XML_PRINT_ORIENTATION, XML_PM_TYPE_PRINTORIENTATION, 0 ),
+ PLMAP( "TopMargin", XML_NAMESPACE_FO, XML_MARGIN, XML_TYPE_MEASURE, CTF_PM_MARGINALL ),
+ PLMAP( "TopMargin", XML_NAMESPACE_FO, XML_MARGIN_TOP, XML_TYPE_MEASURE, CTF_PM_MARGINTOP ),
+ PLMAP( "BottomMargin", XML_NAMESPACE_FO, XML_MARGIN_BOTTOM, XML_TYPE_MEASURE, CTF_PM_MARGINBOTTOM ),
+ PLMAP( "LeftMargin", XML_NAMESPACE_FO, XML_MARGIN_LEFT, XML_TYPE_MEASURE, CTF_PM_MARGINLEFT ),
+ PLMAP( "RightMargin", XML_NAMESPACE_FO, XML_MARGIN_RIGHT, XML_TYPE_MEASURE, CTF_PM_MARGINRIGHT ),
+ PLMAP( "TopBorder", XML_NAMESPACE_FO, XML_BORDER, XML_TYPE_BORDER, CTF_PM_BORDERALL ),
+ PLMAP( "TopBorder", XML_NAMESPACE_FO, XML_BORDER_TOP, XML_TYPE_BORDER, CTF_PM_BORDERTOP ),
+ PLMAP( "BottomBorder", XML_NAMESPACE_FO, XML_BORDER_BOTTOM, XML_TYPE_BORDER, CTF_PM_BORDERBOTTOM ),
+ PLMAP( "LeftBorder", XML_NAMESPACE_FO, XML_BORDER_LEFT, XML_TYPE_BORDER, CTF_PM_BORDERLEFT ),
+ PLMAP( "RightBorder", XML_NAMESPACE_FO, XML_BORDER_RIGHT, XML_TYPE_BORDER, CTF_PM_BORDERRIGHT ),
+ PLMAP( "TopBorder", XML_NAMESPACE_STYLE, XML_BORDER_LINE_WIDTH, XML_TYPE_BORDER_WIDTH, CTF_PM_BORDERWIDTHALL ),
+ PLMAP( "TopBorder", XML_NAMESPACE_STYLE, XML_BORDER_LINE_WIDTH_TOP, XML_TYPE_BORDER_WIDTH, CTF_PM_BORDERWIDTHTOP ),
+ PLMAP( "BottomBorder", XML_NAMESPACE_STYLE, XML_BORDER_LINE_WIDTH_BOTTOM, XML_TYPE_BORDER_WIDTH, CTF_PM_BORDERWIDTHBOTTOM ),
+ PLMAP( "LeftBorder", XML_NAMESPACE_STYLE, XML_BORDER_LINE_WIDTH_LEFT, XML_TYPE_BORDER_WIDTH, CTF_PM_BORDERWIDTHLEFT ),
+ PLMAP( "RightBorder", XML_NAMESPACE_STYLE, XML_BORDER_LINE_WIDTH_RIGHT, XML_TYPE_BORDER_WIDTH, CTF_PM_BORDERWIDTHRIGHT ),
+ PLMAP( "TopBorderDistance", XML_NAMESPACE_FO, XML_PADDING, XML_TYPE_MEASURE, CTF_PM_PADDINGALL ),
+ PLMAP( "TopBorderDistance", XML_NAMESPACE_FO, XML_PADDING_TOP, XML_TYPE_MEASURE, CTF_PM_PADDINGTOP ),
+ PLMAP( "BottomBorderDistance", XML_NAMESPACE_FO, XML_PADDING_BOTTOM, XML_TYPE_MEASURE, CTF_PM_PADDINGBOTTOM ),
+ PLMAP( "LeftBorderDistance", XML_NAMESPACE_FO, XML_PADDING_LEFT, XML_TYPE_MEASURE, CTF_PM_PADDINGLEFT ),
+ PLMAP( "RightBorderDistance", XML_NAMESPACE_FO, XML_PADDING_RIGHT, XML_TYPE_MEASURE, CTF_PM_PADDINGRIGHT ),
+ PLMAP( "ShadowFormat", XML_NAMESPACE_STYLE, XML_SHADOW, XML_TYPE_TEXT_SHADOW, 0 ),
+ PLMAP( "BackColor", XML_NAMESPACE_FO, XML_BACKGROUND_COLOR, XML_TYPE_COLORTRANSPARENT | MID_FLAG_MULTI_PROPERTY, 0 ),
+ PLMAP( "BackTransparent", XML_NAMESPACE_FO, XML_BACKGROUND_COLOR, XML_TYPE_ISTRANSPARENT | MID_FLAG_MERGE_ATTRIBUTE, 0 ),
+ PLMAP( "BackGraphicLocation", XML_NAMESPACE_STYLE, XML_POSITION, XML_TYPE_BUILDIN_CMP_ONLY | MID_FLAG_SPECIAL_ITEM, CTF_PM_GRAPHICPOSITION ),
+ PLMAP( "BackGraphicFilter", XML_NAMESPACE_STYLE, XML_FILTER_NAME, XML_TYPE_STRING | MID_FLAG_SPECIAL_ITEM, CTF_PM_GRAPHICFILTER ),
+ PLMAP( "BackGraphicURL", XML_NAMESPACE_STYLE, XML_BACKGROUND_IMAGE, XML_TYPE_STRING | MID_FLAG_ELEMENT_ITEM, CTF_PM_GRAPHICURL ),
+ PLMAP( "PrintAnnotations", XML_NAMESPACE_STYLE, XML_PRINT, XML_PM_TYPE_PRINTANNOTATIONS | MID_FLAG_MULTI_PROPERTY, CTF_PM_PRINT_ANNOTATIONS ),
+ PLMAP( "PrintCharts", XML_NAMESPACE_STYLE, XML_PRINT, XML_PM_TYPE_PRINTCHARTS | MID_FLAG_MULTI_PROPERTY | MID_FLAG_MERGE_ATTRIBUTE, CTF_PM_PRINT_CHARTS ),
+ PLMAP( "PrintDrawing", XML_NAMESPACE_STYLE, XML_PRINT, XML_PM_TYPE_PRINTDRAWING | MID_FLAG_MULTI_PROPERTY | MID_FLAG_MERGE_ATTRIBUTE, CTF_PM_PRINT_DRAWING ),
+ PLMAP( "PrintFormulas", XML_NAMESPACE_STYLE, XML_PRINT, XML_PM_TYPE_PRINTFORMULAS | MID_FLAG_MULTI_PROPERTY | MID_FLAG_MERGE_ATTRIBUTE, CTF_PM_PRINT_FORMULAS ),
+ PLMAP( "PrintGrid", XML_NAMESPACE_STYLE, XML_PRINT, XML_PM_TYPE_PRINTGRID | MID_FLAG_MULTI_PROPERTY | MID_FLAG_MERGE_ATTRIBUTE, CTF_PM_PRINT_GRID ),
+ PLMAP( "PrintHeaders", XML_NAMESPACE_STYLE, XML_PRINT, XML_PM_TYPE_PRINTHEADERS | MID_FLAG_MULTI_PROPERTY | MID_FLAG_MERGE_ATTRIBUTE, CTF_PM_PRINT_HEADERS ),
+ PLMAP( "PrintObjects", XML_NAMESPACE_STYLE, XML_PRINT, XML_PM_TYPE_PRINTOBJECTS | MID_FLAG_MULTI_PROPERTY | MID_FLAG_MERGE_ATTRIBUTE, CTF_PM_PRINT_OBJECTS ),
+ PLMAP( "PrintZeroValues", XML_NAMESPACE_STYLE, XML_PRINT, XML_PM_TYPE_PRINTZEROVALUES | MID_FLAG_MERGE_ATTRIBUTE, CTF_PM_PRINT_ZEROVALUES ),
+ PLMAP( "PrintDownFirst", XML_NAMESPACE_STYLE, XML_PRINT_PAGE_ORDER, XML_PM_TYPE_PRINTPAGEORDER, 0 ),
+ PLMAP( "FirstPageNumber", XML_NAMESPACE_STYLE, XML_FIRST_PAGE_NUMBER, XML_PM_TYPE_FIRSTPAGENUMBER, 0 ),
+ PLMAP( "PageScale", XML_NAMESPACE_STYLE, XML_SCALE_TO, XML_TYPE_PERCENT16, CTF_PM_SCALETO ),
+ PLMAP( "ScaleToPages", XML_NAMESPACE_STYLE, XML_SCALE_TO_PAGES, XML_TYPE_NUMBER16, CTF_PM_SCALETOPAGES ),
+ PLMAP( "ScaleToPagesX", XML_NAMESPACE_STYLE, XML_SCALE_TO_X, XML_TYPE_NUMBER16, CTF_PM_SCALETOX ),
+ PLMAP( "ScaleToPagesY", XML_NAMESPACE_STYLE, XML_SCALE_TO_Y, XML_TYPE_NUMBER16, CTF_PM_SCALETOY ),
PLMAP( "CenterHorizontally", XML_NAMESPACE_STYLE, XML_TABLE_CENTERING, XML_PM_TYPE_CENTER_HORIZONTAL | MID_FLAG_MULTI_PROPERTY | MID_FLAG_MERGE_ATTRIBUTE, 0 ),
- PLMAP( "CenterVertically", XML_NAMESPACE_STYLE, XML_TABLE_CENTERING, XML_PM_TYPE_CENTER_VERTICAL | MID_FLAG_MULTI_PROPERTY | MID_FLAG_MERGE_ATTRIBUTE, 0 ),
- PLMAP( "TextColumns", XML_NAMESPACE_STYLE, XML_COLUMNS, MID_FLAG_ELEMENT_ITEM|XML_TYPE_TEXT_COLUMNS, CTF_PM_TEXTCOLUMNS ),
- PLMAP( "RegisterModeActive", XML_NAMESPACE_STYLE, XML_REGISTER_TRUE, XML_TYPE_BOOL, 0 ),
- PLMAP( "RegisterParagraphStyle", XML_NAMESPACE_STYLE, XML_REGISTER_TRUTH_REF_STYLE_NAME, XML_TYPE_STYLENAME| MID_FLAG_SPECIAL_ITEM_IMPORT, CTF_PM_REGISTER_STYLE ),
+ PLMAP( "CenterVertically", XML_NAMESPACE_STYLE, XML_TABLE_CENTERING, XML_PM_TYPE_CENTER_VERTICAL | MID_FLAG_MULTI_PROPERTY | MID_FLAG_MERGE_ATTRIBUTE, 0 ),
+ PLMAP( "TextColumns", XML_NAMESPACE_STYLE, XML_COLUMNS, MID_FLAG_ELEMENT_ITEM|XML_TYPE_TEXT_COLUMNS, CTF_PM_TEXTCOLUMNS ),
+ PLMAP( "RegisterModeActive", XML_NAMESPACE_STYLE, XML_REGISTER_TRUE, XML_TYPE_BOOL, 0 ),
+ PLMAP( "RegisterParagraphStyle", XML_NAMESPACE_STYLE, XML_REGISTER_TRUTH_REF_STYLE_NAME, XML_TYPE_STYLENAME| MID_FLAG_SPECIAL_ITEM_IMPORT, CTF_PM_REGISTER_STYLE ),
PLMAP( "WritingMode", XML_NAMESPACE_STYLE, XML_WRITING_MODE, XML_TYPE_TEXT_WRITING_MODE, 0 ),
+ // Index 53: Grid definitions
PLMAP( "GridColor", XML_NAMESPACE_STYLE, XML_LAYOUT_GRID_COLOR, XML_TYPE_COLOR, 0 ),
PLMAP( "GridLines", XML_NAMESPACE_STYLE, XML_LAYOUT_GRID_LINES, XML_TYPE_NUMBER16, 0 ),
PLMAP( "GridBaseHeight", XML_NAMESPACE_STYLE, XML_LAYOUT_GRID_BASE_HEIGHT, XML_TYPE_MEASURE, 0 ),
@@ -111,79 +116,158 @@ const XMLPropertyMapEntry aXMLPageMasterStyleMap[] =
//export as a default attribute
PLMAP( "StandardPageMode", XML_NAMESPACE_STYLE, XML_LAYOUT_GRID_STANDARD_MODE, XML_TYPE_BOOL|MID_FLAG_DEFAULT_ITEM_EXPORT, CTF_PM_STANDARD_MODE ),
- PLMAP( "UserDefinedAttributes", XML_NAMESPACE_TEXT, XML_XMLNS, XML_TYPE_ATTRIBUTE_CONTAINER | MID_FLAG_SPECIAL_ITEM, 0 ),
+ PLMAP( "UserDefinedAttributes", XML_NAMESPACE_TEXT, XML_XMLNS, XML_TYPE_ATTRIBUTE_CONTAINER | MID_FLAG_SPECIAL_ITEM, 0 ),
+
+ //UUUUIndex 65: fill attributes; use PLMAP macro here instead of GMAP, tis list is ordered and it's order is used
+ // to decide in which section in ODF to export the contained stuff (the PageMasterStyle creates several XML
+ // sections, for Page, Header and Footer). The needed order seems to rely not on filtering, but using sections
+ // based on the order used in this list.
+ // Also need own defines for the used context flags (e.g. CTF_PM_FILLGRADIENTNAME instead of
+ // CTF_FILLGRADIENTNAME) since these are used to *filter* up to which entry the attributes belong to the
+ // 'page-layout-properties' section (!), see SvXMLAutoStylePoolP_Impl::exportXML, look for XML_STYLE_FAMILY_PAGE_MASTER
+ PLMAP( "FillStyle", XML_NAMESPACE_DRAW, XML_FILL, XML_SW_TYPE_FILLSTYLE, 0 ),
+ PLMAP( "FillColor", XML_NAMESPACE_DRAW, XML_FILL_COLOR, XML_TYPE_COLOR, 0 ),
+ PLMAP( "FillColor2", XML_NAMESPACE_DRAW, XML_SECONDARY_FILL_COLOR, XML_TYPE_COLOR, 0 ),
+ PLMAP( "FillGradientName", XML_NAMESPACE_DRAW, XML_FILL_GRADIENT_NAME, XML_TYPE_STYLENAME|MID_FLAG_NO_PROPERTY_IMPORT, CTF_PM_FILLGRADIENTNAME ),
+ PLMAP( "FillGradientStepCount", XML_NAMESPACE_DRAW, XML_GRADIENT_STEP_COUNT, XML_TYPE_NUMBER16, 0 ),
+ PLMAP( "FillHatchName", XML_NAMESPACE_DRAW, XML_FILL_HATCH_NAME, XML_TYPE_STYLENAME|MID_FLAG_NO_PROPERTY_IMPORT, CTF_PM_FILLHATCHNAME ),
+ PLMAP( "FillBackground", XML_NAMESPACE_DRAW, XML_FILL_HATCH_SOLID, XML_TYPE_BOOL, 0 ),
+ PLMAP( "FillBitmapName", XML_NAMESPACE_DRAW, XML_FILL_IMAGE_NAME, XML_TYPE_STYLENAME|MID_FLAG_NO_PROPERTY_IMPORT, CTF_PM_FILLBITMAPNAME ),
+ PLMAP( "FillTransparence", XML_NAMESPACE_DRAW, XML_OPACITY, XML_TYPE_NEG_PERCENT16|MID_FLAG_MULTI_PROPERTY, 0 ), // exists in SW, too
+ PLMAP( "FillTransparenceGradientName", XML_NAMESPACE_DRAW, XML_OPACITY_NAME, XML_TYPE_STYLENAME|MID_FLAG_NO_PROPERTY_IMPORT, CTF_PM_FILLTRANSNAME ),
+ PLMAP( "FillBitmapSizeX", XML_NAMESPACE_DRAW, XML_FILL_IMAGE_WIDTH, XML_SW_TYPE_FILLBITMAPSIZE|MID_FLAG_MULTI_PROPERTY, 0 ),
+ PLMAP( "FillBitmapLogicalSize", XML_NAMESPACE_DRAW, XML_FILL_IMAGE_WIDTH, XML_SW_TYPE_LOGICAL_SIZE|MID_FLAG_MULTI_PROPERTY, 0 ),
+ PLMAP( "FillBitmapSizeY", XML_NAMESPACE_DRAW, XML_FILL_IMAGE_HEIGHT, XML_SW_TYPE_FILLBITMAPSIZE|MID_FLAG_MULTI_PROPERTY, 0 ),
+ PLMAP( "FillBitmapLogicalSize", XML_NAMESPACE_DRAW, XML_FILL_IMAGE_HEIGHT, XML_SW_TYPE_LOGICAL_SIZE|MID_FLAG_MULTI_PROPERTY, 0 ),
+ PLMAP( "FillBitmapMode", XML_NAMESPACE_STYLE, XML_REPEAT, XML_SW_TYPE_BITMAP_MODE|MID_FLAG_MULTI_PROPERTY, 0 ),
+ PLMAP( "FillBitmapPositionOffsetX", XML_NAMESPACE_DRAW, XML_FILL_IMAGE_REF_POINT_X, XML_TYPE_PERCENT, 0 ),
+ PLMAP( "FillBitmapPositionOffsetY", XML_NAMESPACE_DRAW, XML_FILL_IMAGE_REF_POINT_Y, XML_TYPE_PERCENT, 0 ),
+ PLMAP( "FillBitmapRectanglePoint", XML_NAMESPACE_DRAW, XML_FILL_IMAGE_REF_POINT, XML_SW_TYPE_BITMAP_REFPOINT, 0 ),
+ PLMAP( "FillBitmapOffsetX", XML_NAMESPACE_DRAW, XML_TILE_REPEAT_OFFSET, XML_SW_TYPE_BITMAPREPOFFSETX|MID_FLAG_MULTI_PROPERTY, CTF_PM_REPEAT_OFFSET_X ),
+ PLMAP( "FillBitmapOffsetY", XML_NAMESPACE_DRAW, XML_TILE_REPEAT_OFFSET, XML_SW_TYPE_BITMAPREPOFFSETY|MID_FLAG_MULTI_PROPERTY, CTF_PM_REPEAT_OFFSET_Y ),
-// footnote
+ // Index 85: footnote
PLMAP( "FootnoteHeight", XML_NAMESPACE_STYLE, XML_FOOTNOTE_MAX_HEIGHT, XML_TYPE_MEASURE, CTF_PM_FTN_HEIGTH ),
- PLMAP( "FootnoteLineAdjust", XML_NAMESPACE_STYLE, XML__EMPTY, XML_TYPE_TEXT_HORIZONTAL_ADJUST|MID_FLAG_SPECIAL_ITEM, CTF_PM_FTN_LINE_ADJUST ),
- PLMAP( "FootnoteLineColor", XML_NAMESPACE_STYLE, XML__EMPTY, XML_TYPE_COLOR|MID_FLAG_SPECIAL_ITEM, CTF_PM_FTN_LINE_COLOR ),
- PLMAP( "FootnoteLineDistance", XML_NAMESPACE_STYLE, XML__EMPTY, XML_TYPE_MEASURE|MID_FLAG_SPECIAL_ITEM,CTF_PM_FTN_DISTANCE ),
+ PLMAP( "FootnoteLineAdjust", XML_NAMESPACE_STYLE, XML__EMPTY, XML_TYPE_TEXT_HORIZONTAL_ADJUST|MID_FLAG_SPECIAL_ITEM, CTF_PM_FTN_LINE_ADJUST ),
+ PLMAP( "FootnoteLineColor", XML_NAMESPACE_STYLE, XML__EMPTY, XML_TYPE_COLOR|MID_FLAG_SPECIAL_ITEM, CTF_PM_FTN_LINE_COLOR ),
+ PLMAP( "FootnoteLineDistance", XML_NAMESPACE_STYLE, XML__EMPTY, XML_TYPE_MEASURE|MID_FLAG_SPECIAL_ITEM,CTF_PM_FTN_DISTANCE ),
PLMAP( "FootnoteLineRelativeWidth", XML_NAMESPACE_STYLE, XML__EMPTY, XML_TYPE_PERCENT8|MID_FLAG_SPECIAL_ITEM, CTF_PM_FTN_LINE_WIDTH ),
- PLMAP( "FootnoteLineTextDistance", XML_NAMESPACE_STYLE, XML__EMPTY, XML_TYPE_MEASURE|MID_FLAG_SPECIAL_ITEM, CTF_PM_FTN_LINE_DISTANCE ),
- PLMAP( "FootnoteLineWeight", XML_NAMESPACE_STYLE, XML_FOOTNOTE_SEP, XML_TYPE_MEASURE16|MID_FLAG_ELEMENT_ITEM, CTF_PM_FTN_LINE_WEIGTH ),
-
-// header
- HFMAP( "HeaderHeight", XML_NAMESPACE_SVG, XML_HEIGHT, XML_TYPE_MEASURE, CTF_PM_HEADERHEIGHT ),
- HFMAP( "HeaderHeight", XML_NAMESPACE_FO, XML_MIN_HEIGHT, XML_TYPE_MEASURE, CTF_PM_HEADERMINHEIGHT ),
- HFMAP( "HeaderIsDynamicHeight", XML_NAMESPACE_STYLE, XML__EMPTY, XML_TYPE_BOOL, CTF_PM_HEADERDYNAMIC ),
- HFMAP( "HeaderLeftMargin", XML_NAMESPACE_FO, XML_MARGIN, XML_TYPE_MEASURE, CTF_PM_HEADERMARGINALL ),
- HFMAP( "HeaderLeftMargin", XML_NAMESPACE_FO, XML_MARGIN_LEFT, XML_TYPE_MEASURE, CTF_PM_HEADERMARGINLEFT ),
- HFMAP( "HeaderRightMargin", XML_NAMESPACE_FO, XML_MARGIN_RIGHT, XML_TYPE_MEASURE, CTF_PM_HEADERMARGINRIGHT ),
- HFMAP( "HeaderBodyDistance", XML_NAMESPACE_FO, XML_MARGIN_BOTTOM, XML_TYPE_MEASURE, CTF_PM_HEADERMARGINBOTTOM ),
- HFMAP( "HeaderTopBorder", XML_NAMESPACE_FO, XML_BORDER, XML_TYPE_BORDER, CTF_PM_HEADERBORDERALL ),
- HFMAP( "HeaderTopBorder", XML_NAMESPACE_FO, XML_BORDER_TOP, XML_TYPE_BORDER, CTF_PM_HEADERBORDERTOP ),
- HFMAP( "HeaderBottomBorder", XML_NAMESPACE_FO, XML_BORDER_BOTTOM, XML_TYPE_BORDER, CTF_PM_HEADERBORDERBOTTOM ),
- HFMAP( "HeaderLeftBorder", XML_NAMESPACE_FO, XML_BORDER_LEFT, XML_TYPE_BORDER, CTF_PM_HEADERBORDERLEFT ),
- HFMAP( "HeaderRightBorder", XML_NAMESPACE_FO, XML_BORDER_RIGHT, XML_TYPE_BORDER, CTF_PM_HEADERBORDERRIGHT ),
- HFMAP( "HeaderTopBorder", XML_NAMESPACE_STYLE, XML_BORDER_LINE_WIDTH, XML_TYPE_BORDER_WIDTH, CTF_PM_HEADERBORDERWIDTHALL ),
- HFMAP( "HeaderTopBorder", XML_NAMESPACE_STYLE, XML_BORDER_LINE_WIDTH_TOP, XML_TYPE_BORDER_WIDTH, CTF_PM_HEADERBORDERWIDTHTOP ),
- HFMAP( "HeaderBottomBorder", XML_NAMESPACE_STYLE, XML_BORDER_LINE_WIDTH_BOTTOM, XML_TYPE_BORDER_WIDTH, CTF_PM_HEADERBORDERWIDTHBOTTOM ),
- HFMAP( "HeaderLeftBorder", XML_NAMESPACE_STYLE, XML_BORDER_LINE_WIDTH_LEFT, XML_TYPE_BORDER_WIDTH, CTF_PM_HEADERBORDERWIDTHLEFT ),
- HFMAP( "HeaderRightBorder", XML_NAMESPACE_STYLE, XML_BORDER_LINE_WIDTH_RIGHT, XML_TYPE_BORDER_WIDTH, CTF_PM_HEADERBORDERWIDTHRIGHT ),
- HFMAP( "HeaderTopBorderDistance", XML_NAMESPACE_FO, XML_PADDING, XML_TYPE_MEASURE, CTF_PM_HEADERPADDINGALL ),
- HFMAP( "HeaderTopBorderDistance", XML_NAMESPACE_FO, XML_PADDING_TOP, XML_TYPE_MEASURE, CTF_PM_HEADERPADDINGTOP ),
- HFMAP( "HeaderBottomBorderDistance", XML_NAMESPACE_FO, XML_PADDING_BOTTOM, XML_TYPE_MEASURE, CTF_PM_HEADERPADDINGBOTTOM ),
- HFMAP( "HeaderLeftBorderDistance", XML_NAMESPACE_FO, XML_PADDING_LEFT, XML_TYPE_MEASURE, CTF_PM_HEADERPADDINGLEFT ),
- HFMAP( "HeaderRightBorderDistance", XML_NAMESPACE_FO, XML_PADDING_RIGHT, XML_TYPE_MEASURE, CTF_PM_HEADERPADDINGRIGHT ),
- HFMAP( "HeaderShadowFormat", XML_NAMESPACE_STYLE, XML_SHADOW, XML_TYPE_TEXT_SHADOW, CTF_PM_HEADERFLAG ),
- HFMAP( "HeaderBackColor", XML_NAMESPACE_FO, XML_BACKGROUND_COLOR, XML_TYPE_COLORTRANSPARENT | MID_FLAG_MULTI_PROPERTY, CTF_PM_HEADERFLAG ),
- HFMAP( "HeaderBackTransparent", XML_NAMESPACE_FO, XML_BACKGROUND_COLOR, XML_TYPE_ISTRANSPARENT | MID_FLAG_MERGE_ATTRIBUTE, CTF_PM_HEADERFLAG ),
- HFMAP( "HeaderBackGraphicLocation", XML_NAMESPACE_STYLE, XML_POSITION, XML_TYPE_BUILDIN_CMP_ONLY | MID_FLAG_SPECIAL_ITEM, CTF_PM_HEADERGRAPHICPOSITION ),
- HFMAP( "HeaderBackGraphicFilter", XML_NAMESPACE_STYLE, XML_FILTER_NAME, XML_TYPE_STRING | MID_FLAG_SPECIAL_ITEM, CTF_PM_HEADERGRAPHICFILTER ),
- HFMAP( "HeaderBackGraphicURL", XML_NAMESPACE_STYLE, XML_BACKGROUND_IMAGE, XML_TYPE_STRING | MID_FLAG_ELEMENT_ITEM, CTF_PM_HEADERGRAPHICURL ),
+ PLMAP( "FootnoteLineTextDistance", XML_NAMESPACE_STYLE, XML__EMPTY, XML_TYPE_MEASURE|MID_FLAG_SPECIAL_ITEM, CTF_PM_FTN_LINE_DISTANCE ),
+ PLMAP( "FootnoteLineWeight", XML_NAMESPACE_STYLE, XML_FOOTNOTE_SEP, XML_TYPE_MEASURE16|MID_FLAG_ELEMENT_ITEM, CTF_PM_FTN_LINE_WEIGTH ),
+
+ //////////////////////////////////////////////////////////////////////////
+ //UUUUIndex 92: Section for 'header-style' own section, all members *have* to use CTF_PM_HEADERFLAG in the context entry (the 5th one)
+ HFMAP( "HeaderHeight", XML_NAMESPACE_SVG, XML_HEIGHT, XML_TYPE_MEASURE, CTF_PM_HEADERHEIGHT ),
+ HFMAP( "HeaderHeight", XML_NAMESPACE_FO, XML_MIN_HEIGHT, XML_TYPE_MEASURE, CTF_PM_HEADERMINHEIGHT ),
+ HFMAP( "HeaderIsDynamicHeight", XML_NAMESPACE_STYLE, XML__EMPTY, XML_TYPE_BOOL, CTF_PM_HEADERDYNAMIC ),
+ HFMAP( "HeaderLeftMargin", XML_NAMESPACE_FO, XML_MARGIN, XML_TYPE_MEASURE, CTF_PM_HEADERMARGINALL ),
+ HFMAP( "HeaderLeftMargin", XML_NAMESPACE_FO, XML_MARGIN_LEFT, XML_TYPE_MEASURE, CTF_PM_HEADERMARGINLEFT ),
+ HFMAP( "HeaderRightMargin", XML_NAMESPACE_FO, XML_MARGIN_RIGHT, XML_TYPE_MEASURE, CTF_PM_HEADERMARGINRIGHT ),
+ HFMAP( "HeaderBodyDistance", XML_NAMESPACE_FO, XML_MARGIN_BOTTOM, XML_TYPE_MEASURE, CTF_PM_HEADERMARGINBOTTOM ),
+ HFMAP( "HeaderTopBorder", XML_NAMESPACE_FO, XML_BORDER, XML_TYPE_BORDER, CTF_PM_HEADERBORDERALL ),
+ HFMAP( "HeaderTopBorder", XML_NAMESPACE_FO, XML_BORDER_TOP, XML_TYPE_BORDER, CTF_PM_HEADERBORDERTOP ),
+ HFMAP( "HeaderBottomBorder", XML_NAMESPACE_FO, XML_BORDER_BOTTOM, XML_TYPE_BORDER, CTF_PM_HEADERBORDERBOTTOM ),
+ HFMAP( "HeaderLeftBorder", XML_NAMESPACE_FO, XML_BORDER_LEFT, XML_TYPE_BORDER, CTF_PM_HEADERBORDERLEFT ),
+ HFMAP( "HeaderRightBorder", XML_NAMESPACE_FO, XML_BORDER_RIGHT, XML_TYPE_BORDER, CTF_PM_HEADERBORDERRIGHT ),
+ HFMAP( "HeaderTopBorder", XML_NAMESPACE_STYLE, XML_BORDER_LINE_WIDTH, XML_TYPE_BORDER_WIDTH, CTF_PM_HEADERBORDERWIDTHALL ),
+ HFMAP( "HeaderTopBorder", XML_NAMESPACE_STYLE, XML_BORDER_LINE_WIDTH_TOP, XML_TYPE_BORDER_WIDTH, CTF_PM_HEADERBORDERWIDTHTOP ),
+ HFMAP( "HeaderBottomBorder", XML_NAMESPACE_STYLE, XML_BORDER_LINE_WIDTH_BOTTOM, XML_TYPE_BORDER_WIDTH, CTF_PM_HEADERBORDERWIDTHBOTTOM ),
+ HFMAP( "HeaderLeftBorder", XML_NAMESPACE_STYLE, XML_BORDER_LINE_WIDTH_LEFT, XML_TYPE_BORDER_WIDTH, CTF_PM_HEADERBORDERWIDTHLEFT ),
+ HFMAP( "HeaderRightBorder", XML_NAMESPACE_STYLE, XML_BORDER_LINE_WIDTH_RIGHT, XML_TYPE_BORDER_WIDTH, CTF_PM_HEADERBORDERWIDTHRIGHT ),
+ HFMAP( "HeaderTopBorderDistance", XML_NAMESPACE_FO, XML_PADDING, XML_TYPE_MEASURE, CTF_PM_HEADERPADDINGALL ),
+ HFMAP( "HeaderTopBorderDistance", XML_NAMESPACE_FO, XML_PADDING_TOP, XML_TYPE_MEASURE, CTF_PM_HEADERPADDINGTOP ),
+ HFMAP( "HeaderBottomBorderDistance", XML_NAMESPACE_FO, XML_PADDING_BOTTOM, XML_TYPE_MEASURE, CTF_PM_HEADERPADDINGBOTTOM ),
+ HFMAP( "HeaderLeftBorderDistance", XML_NAMESPACE_FO, XML_PADDING_LEFT, XML_TYPE_MEASURE, CTF_PM_HEADERPADDINGLEFT ),
+ HFMAP( "HeaderRightBorderDistance", XML_NAMESPACE_FO, XML_PADDING_RIGHT, XML_TYPE_MEASURE, CTF_PM_HEADERPADDINGRIGHT ),
+ HFMAP( "HeaderShadowFormat", XML_NAMESPACE_STYLE, XML_SHADOW, XML_TYPE_TEXT_SHADOW, CTF_PM_HEADERFLAG ),
+ HFMAP( "HeaderBackColor", XML_NAMESPACE_FO, XML_BACKGROUND_COLOR, XML_TYPE_COLORTRANSPARENT | MID_FLAG_MULTI_PROPERTY, CTF_PM_HEADERFLAG ),
+ HFMAP( "HeaderBackTransparent", XML_NAMESPACE_FO, XML_BACKGROUND_COLOR, XML_TYPE_ISTRANSPARENT | MID_FLAG_MERGE_ATTRIBUTE, CTF_PM_HEADERFLAG ),
+ HFMAP( "HeaderBackGraphicLocation", XML_NAMESPACE_STYLE, XML_POSITION, XML_TYPE_BUILDIN_CMP_ONLY | MID_FLAG_SPECIAL_ITEM, CTF_PM_HEADERGRAPHICPOSITION ),
+ HFMAP( "HeaderBackGraphicFilter", XML_NAMESPACE_STYLE, XML_FILTER_NAME, XML_TYPE_STRING | MID_FLAG_SPECIAL_ITEM, CTF_PM_HEADERGRAPHICFILTER ),
+ HFMAP( "HeaderBackGraphicURL", XML_NAMESPACE_STYLE, XML_BACKGROUND_IMAGE, XML_TYPE_STRING | MID_FLAG_ELEMENT_ITEM, CTF_PM_HEADERGRAPHICURL ),
HFMAP( "HeaderDynamicSpacing", XML_NAMESPACE_STYLE, XML_DYNAMIC_SPACING, XML_TYPE_BOOL, CTF_PM_HEADERFLAG ),
-// footer
- HFMAP( "FooterHeight", XML_NAMESPACE_SVG, XML_HEIGHT, XML_TYPE_MEASURE, CTF_PM_FOOTERHEIGHT ),
- HFMAP( "FooterHeight", XML_NAMESPACE_FO, XML_MIN_HEIGHT, XML_TYPE_MEASURE, CTF_PM_FOOTERMINHEIGHT ),
- HFMAP( "FooterIsDynamicHeight", XML_NAMESPACE_STYLE, XML__EMPTY, XML_TYPE_BOOL, CTF_PM_FOOTERDYNAMIC ),
- HFMAP( "FooterLeftMargin", XML_NAMESPACE_FO, XML_MARGIN, XML_TYPE_MEASURE, CTF_PM_FOOTERMARGINALL ),
- HFMAP( "FooterLeftMargin", XML_NAMESPACE_FO, XML_MARGIN_LEFT, XML_TYPE_MEASURE, CTF_PM_FOOTERMARGINLEFT ),
- HFMAP( "FooterRightMargin", XML_NAMESPACE_FO, XML_MARGIN_RIGHT, XML_TYPE_MEASURE, CTF_PM_FOOTERMARGINRIGHT ),
- HFMAP( "FooterBodyDistance", XML_NAMESPACE_FO, XML_MARGIN_TOP, XML_TYPE_MEASURE, CTF_PM_FOOTERMARGINTOP ),
- HFMAP( "FooterTopBorder", XML_NAMESPACE_FO, XML_BORDER, XML_TYPE_BORDER, CTF_PM_FOOTERBORDERALL ),
- HFMAP( "FooterTopBorder", XML_NAMESPACE_FO, XML_BORDER_TOP, XML_TYPE_BORDER, CTF_PM_FOOTERBORDERTOP ),
- HFMAP( "FooterBottomBorder", XML_NAMESPACE_FO, XML_BORDER_BOTTOM, XML_TYPE_BORDER, CTF_PM_FOOTERBORDERBOTTOM ),
- HFMAP( "FooterLeftBorder", XML_NAMESPACE_FO, XML_BORDER_LEFT, XML_TYPE_BORDER, CTF_PM_FOOTERBORDERLEFT ),
- HFMAP( "FooterRightBorder", XML_NAMESPACE_FO, XML_BORDER_RIGHT, XML_TYPE_BORDER, CTF_PM_FOOTERBORDERRIGHT ),
- HFMAP( "FooterTopBorder", XML_NAMESPACE_STYLE, XML_BORDER_LINE_WIDTH, XML_TYPE_BORDER_WIDTH, CTF_PM_FOOTERBORDERWIDTHALL ),
- HFMAP( "FooterTopBorder", XML_NAMESPACE_STYLE, XML_BORDER_LINE_WIDTH_TOP, XML_TYPE_BORDER_WIDTH, CTF_PM_FOOTERBORDERWIDTHTOP ),
- HFMAP( "FooterBottomBorder", XML_NAMESPACE_STYLE, XML_BORDER_LINE_WIDTH_BOTTOM, XML_TYPE_BORDER_WIDTH, CTF_PM_FOOTERBORDERWIDTHBOTTOM ),
- HFMAP( "FooterLeftBorder", XML_NAMESPACE_STYLE, XML_BORDER_LINE_WIDTH_LEFT, XML_TYPE_BORDER_WIDTH, CTF_PM_FOOTERBORDERWIDTHLEFT ),
- HFMAP( "FooterRightBorder", XML_NAMESPACE_STYLE, XML_BORDER_LINE_WIDTH_RIGHT, XML_TYPE_BORDER_WIDTH, CTF_PM_FOOTERBORDERWIDTHRIGHT ),
- HFMAP( "FooterTopBorderDistance", XML_NAMESPACE_FO, XML_PADDING, XML_TYPE_MEASURE, CTF_PM_FOOTERPADDINGALL ),
- HFMAP( "FooterTopBorderDistance", XML_NAMESPACE_FO, XML_PADDING_TOP, XML_TYPE_MEASURE, CTF_PM_FOOTERPADDINGTOP ),
- HFMAP( "FooterBottomBorderDistance", XML_NAMESPACE_FO, XML_PADDING_BOTTOM, XML_TYPE_MEASURE, CTF_PM_FOOTERPADDINGBOTTOM ),
- HFMAP( "FooterLeftBorderDistance", XML_NAMESPACE_FO, XML_PADDING_LEFT, XML_TYPE_MEASURE, CTF_PM_FOOTERPADDINGLEFT ),
- HFMAP( "FooterRightBorderDistance", XML_NAMESPACE_FO, XML_PADDING_RIGHT, XML_TYPE_MEASURE, CTF_PM_FOOTERPADDINGRIGHT ),
- HFMAP( "FooterShadowFormat", XML_NAMESPACE_STYLE, XML_SHADOW, XML_TYPE_TEXT_SHADOW, CTF_PM_FOOTERFLAG ),
- HFMAP( "FooterBackColor", XML_NAMESPACE_FO, XML_BACKGROUND_COLOR, XML_TYPE_COLORTRANSPARENT | MID_FLAG_MULTI_PROPERTY, CTF_PM_FOOTERFLAG ),
- HFMAP( "FooterBackTransparent", XML_NAMESPACE_FO, XML_BACKGROUND_COLOR, XML_TYPE_ISTRANSPARENT | MID_FLAG_MERGE_ATTRIBUTE, CTF_PM_FOOTERFLAG ),
- HFMAP( "FooterBackGraphicLocation", XML_NAMESPACE_STYLE, XML_POSITION, XML_TYPE_BUILDIN_CMP_ONLY | MID_FLAG_SPECIAL_ITEM, CTF_PM_FOOTERGRAPHICPOSITION ),
- HFMAP( "FooterBackGraphicFilter", XML_NAMESPACE_STYLE, XML_FILTER_NAME, XML_TYPE_STRING | MID_FLAG_SPECIAL_ITEM, CTF_PM_FOOTERGRAPHICFILTER ),
- HFMAP( "FooterBackGraphicURL", XML_NAMESPACE_STYLE, XML_BACKGROUND_IMAGE, XML_TYPE_STRING | MID_FLAG_ELEMENT_ITEM, CTF_PM_FOOTERGRAPHICURL ),
+ //UUUUIndex 121: Header DrawingLayer FillAttributes
+ // Use HFMAP to get XML_TYPE_PROP_HEADER_FOOTER ORed to the 4th entry
+ // Names have to begin with 'Header', all 5th entries need to be ORed with the CTF_PM_HEADERFLAG
+ HFMAP( "HeaderFillStyle", XML_NAMESPACE_DRAW, XML_FILL, XML_SW_TYPE_FILLSTYLE, CTF_PM_HEADERFLAG ),
+ HFMAP( "HeaderFillColor", XML_NAMESPACE_DRAW, XML_FILL_COLOR, XML_TYPE_COLOR, CTF_PM_HEADERFLAG ),
+ HFMAP( "HeaderFillColor2", XML_NAMESPACE_DRAW, XML_SECONDARY_FILL_COLOR, XML_TYPE_COLOR, CTF_PM_HEADERFLAG ),
+ HFMAP( "HeaderFillGradientName", XML_NAMESPACE_DRAW, XML_FILL_GRADIENT_NAME, XML_TYPE_STYLENAME|MID_FLAG_NO_PROPERTY_IMPORT, CTF_PM_HEADERFILLGRADIENTNAME ),
+ HFMAP( "HeaderFillGradientStepCount", XML_NAMESPACE_DRAW, XML_GRADIENT_STEP_COUNT, XML_TYPE_NUMBER16, CTF_PM_HEADERFLAG ),
+ HFMAP( "HeaderFillHatchName", XML_NAMESPACE_DRAW, XML_FILL_HATCH_NAME, XML_TYPE_STYLENAME|MID_FLAG_NO_PROPERTY_IMPORT, CTF_PM_HEADERFILLHATCHNAME ),
+ HFMAP( "HeaderFillBackground", XML_NAMESPACE_DRAW, XML_FILL_HATCH_SOLID, XML_TYPE_BOOL, CTF_PM_HEADERFLAG ),
+ HFMAP( "HeaderFillBitmapName", XML_NAMESPACE_DRAW, XML_FILL_IMAGE_NAME, XML_TYPE_STYLENAME|MID_FLAG_NO_PROPERTY_IMPORT, CTF_PM_HEADERFILLBITMAPNAME ),
+ HFMAP( "HeaderFillTransparence", XML_NAMESPACE_DRAW, XML_OPACITY, XML_TYPE_NEG_PERCENT16|MID_FLAG_MULTI_PROPERTY, CTF_PM_HEADERFLAG ), // exists in SW, too
+ HFMAP( "HeaderFillTransparenceGradientName", XML_NAMESPACE_DRAW, XML_OPACITY_NAME, XML_TYPE_STYLENAME|MID_FLAG_NO_PROPERTY_IMPORT, CTF_PM_HEADERFILLTRANSNAME ),
+ HFMAP( "HeaderFillBitmapSizeX", XML_NAMESPACE_DRAW, XML_FILL_IMAGE_WIDTH, XML_SW_TYPE_FILLBITMAPSIZE|MID_FLAG_MULTI_PROPERTY, CTF_PM_HEADERFLAG ),
+ HFMAP( "HeaderFillBitmapLogicalSize", XML_NAMESPACE_DRAW, XML_FILL_IMAGE_WIDTH, XML_SW_TYPE_LOGICAL_SIZE|MID_FLAG_MULTI_PROPERTY, CTF_PM_HEADERFLAG ),
+ HFMAP( "HeaderFillBitmapSizeY", XML_NAMESPACE_DRAW, XML_FILL_IMAGE_HEIGHT, XML_SW_TYPE_FILLBITMAPSIZE|MID_FLAG_MULTI_PROPERTY, CTF_PM_HEADERFLAG ),
+ HFMAP( "HeaderFillBitmapLogicalSize", XML_NAMESPACE_DRAW, XML_FILL_IMAGE_HEIGHT, XML_SW_TYPE_LOGICAL_SIZE|MID_FLAG_MULTI_PROPERTY, CTF_PM_HEADERFLAG ),
+ HFMAP( "HeaderFillBitmapMode", XML_NAMESPACE_STYLE, XML_REPEAT, XML_SW_TYPE_BITMAP_MODE|MID_FLAG_MULTI_PROPERTY, CTF_PM_HEADERFLAG ),
+ HFMAP( "HeaderFillBitmapPositionOffsetX", XML_NAMESPACE_DRAW, XML_FILL_IMAGE_REF_POINT_X, XML_TYPE_PERCENT, CTF_PM_HEADERFLAG ),
+ HFMAP( "HeaderFillBitmapPositionOffsetY", XML_NAMESPACE_DRAW, XML_FILL_IMAGE_REF_POINT_Y, XML_TYPE_PERCENT, CTF_PM_HEADERFLAG ),
+ HFMAP( "HeaderFillBitmapRectanglePoint", XML_NAMESPACE_DRAW, XML_FILL_IMAGE_REF_POINT, XML_SW_TYPE_BITMAP_REFPOINT, CTF_PM_HEADERFLAG ),
+ HFMAP( "HeaderFillBitmapOffsetX", XML_NAMESPACE_DRAW, XML_TILE_REPEAT_OFFSET, XML_SW_TYPE_BITMAPREPOFFSETX|MID_FLAG_MULTI_PROPERTY, CTF_PM_HEADERREPEAT_OFFSET_X ),
+ HFMAP( "HeaderFillBitmapOffsetY", XML_NAMESPACE_DRAW, XML_TILE_REPEAT_OFFSET, XML_SW_TYPE_BITMAPREPOFFSETY|MID_FLAG_MULTI_PROPERTY, CTF_PM_HEADERREPEAT_OFFSET_Y ),
+
+ //////////////////////////////////////////////////////////////////////////
+ //UUUUIndex 141: Section for 'footer-style' own section, all members *have* to use CTF_PM_FOOTERFLAG in the context entry (the 5th one)
+ HFMAP( "FooterHeight", XML_NAMESPACE_SVG, XML_HEIGHT, XML_TYPE_MEASURE, CTF_PM_FOOTERHEIGHT ),
+ HFMAP( "FooterHeight", XML_NAMESPACE_FO, XML_MIN_HEIGHT, XML_TYPE_MEASURE, CTF_PM_FOOTERMINHEIGHT ),
+ HFMAP( "FooterIsDynamicHeight", XML_NAMESPACE_STYLE, XML__EMPTY, XML_TYPE_BOOL, CTF_PM_FOOTERDYNAMIC ),
+ HFMAP( "FooterLeftMargin", XML_NAMESPACE_FO, XML_MARGIN, XML_TYPE_MEASURE, CTF_PM_FOOTERMARGINALL ),
+ HFMAP( "FooterLeftMargin", XML_NAMESPACE_FO, XML_MARGIN_LEFT, XML_TYPE_MEASURE, CTF_PM_FOOTERMARGINLEFT ),
+ HFMAP( "FooterRightMargin", XML_NAMESPACE_FO, XML_MARGIN_RIGHT, XML_TYPE_MEASURE, CTF_PM_FOOTERMARGINRIGHT ),
+ HFMAP( "FooterBodyDistance", XML_NAMESPACE_FO, XML_MARGIN_TOP, XML_TYPE_MEASURE, CTF_PM_FOOTERMARGINTOP ),
+ HFMAP( "FooterTopBorder", XML_NAMESPACE_FO, XML_BORDER, XML_TYPE_BORDER, CTF_PM_FOOTERBORDERALL ),
+ HFMAP( "FooterTopBorder", XML_NAMESPACE_FO, XML_BORDER_TOP, XML_TYPE_BORDER, CTF_PM_FOOTERBORDERTOP ),
+ HFMAP( "FooterBottomBorder", XML_NAMESPACE_FO, XML_BORDER_BOTTOM, XML_TYPE_BORDER, CTF_PM_FOOTERBORDERBOTTOM ),
+ HFMAP( "FooterLeftBorder", XML_NAMESPACE_FO, XML_BORDER_LEFT, XML_TYPE_BORDER, CTF_PM_FOOTERBORDERLEFT ),
+ HFMAP( "FooterRightBorder", XML_NAMESPACE_FO, XML_BORDER_RIGHT, XML_TYPE_BORDER, CTF_PM_FOOTERBORDERRIGHT ),
+ HFMAP( "FooterTopBorder", XML_NAMESPACE_STYLE, XML_BORDER_LINE_WIDTH, XML_TYPE_BORDER_WIDTH, CTF_PM_FOOTERBORDERWIDTHALL ),
+ HFMAP( "FooterTopBorder", XML_NAMESPACE_STYLE, XML_BORDER_LINE_WIDTH_TOP, XML_TYPE_BORDER_WIDTH, CTF_PM_FOOTERBORDERWIDTHTOP ),
+ HFMAP( "FooterBottomBorder", XML_NAMESPACE_STYLE, XML_BORDER_LINE_WIDTH_BOTTOM, XML_TYPE_BORDER_WIDTH, CTF_PM_FOOTERBORDERWIDTHBOTTOM ),
+ HFMAP( "FooterLeftBorder", XML_NAMESPACE_STYLE, XML_BORDER_LINE_WIDTH_LEFT, XML_TYPE_BORDER_WIDTH, CTF_PM_FOOTERBORDERWIDTHLEFT ),
+ HFMAP( "FooterRightBorder", XML_NAMESPACE_STYLE, XML_BORDER_LINE_WIDTH_RIGHT, XML_TYPE_BORDER_WIDTH, CTF_PM_FOOTERBORDERWIDTHRIGHT ),
+ HFMAP( "FooterTopBorderDistance", XML_NAMESPACE_FO, XML_PADDING, XML_TYPE_MEASURE, CTF_PM_FOOTERPADDINGALL ),
+ HFMAP( "FooterTopBorderDistance", XML_NAMESPACE_FO, XML_PADDING_TOP, XML_TYPE_MEASURE, CTF_PM_FOOTERPADDINGTOP ),
+ HFMAP( "FooterBottomBorderDistance", XML_NAMESPACE_FO, XML_PADDING_BOTTOM, XML_TYPE_MEASURE, CTF_PM_FOOTERPADDINGBOTTOM ),
+ HFMAP( "FooterLeftBorderDistance", XML_NAMESPACE_FO, XML_PADDING_LEFT, XML_TYPE_MEASURE, CTF_PM_FOOTERPADDINGLEFT ),
+ HFMAP( "FooterRightBorderDistance", XML_NAMESPACE_FO, XML_PADDING_RIGHT, XML_TYPE_MEASURE, CTF_PM_FOOTERPADDINGRIGHT ),
+ HFMAP( "FooterShadowFormat", XML_NAMESPACE_STYLE, XML_SHADOW, XML_TYPE_TEXT_SHADOW, CTF_PM_FOOTERFLAG ),
+ HFMAP( "FooterBackColor", XML_NAMESPACE_FO, XML_BACKGROUND_COLOR, XML_TYPE_COLORTRANSPARENT | MID_FLAG_MULTI_PROPERTY, CTF_PM_FOOTERFLAG ),
+ HFMAP( "FooterBackTransparent", XML_NAMESPACE_FO, XML_BACKGROUND_COLOR, XML_TYPE_ISTRANSPARENT | MID_FLAG_MERGE_ATTRIBUTE, CTF_PM_FOOTERFLAG ),
+ HFMAP( "FooterBackGraphicLocation", XML_NAMESPACE_STYLE, XML_POSITION, XML_TYPE_BUILDIN_CMP_ONLY | MID_FLAG_SPECIAL_ITEM, CTF_PM_FOOTERGRAPHICPOSITION ),
+ HFMAP( "FooterBackGraphicFilter", XML_NAMESPACE_STYLE, XML_FILTER_NAME, XML_TYPE_STRING | MID_FLAG_SPECIAL_ITEM, CTF_PM_FOOTERGRAPHICFILTER ),
+ HFMAP( "FooterBackGraphicURL", XML_NAMESPACE_STYLE, XML_BACKGROUND_IMAGE, XML_TYPE_STRING | MID_FLAG_ELEMENT_ITEM, CTF_PM_FOOTERGRAPHICURL ),
HFMAP( "FooterDynamicSpacing", XML_NAMESPACE_STYLE, XML_DYNAMIC_SPACING, XML_TYPE_BOOL, CTF_PM_FOOTERFLAG ),
- { 0L, 0, 0, XML_EMPTY, 0, 0, SvtSaveOptions::ODFVER_010 }
+ //UUUUIndex 170: Footer DrawingLayer FillAttributes
+ // Use HFMAP to get XML_TYPE_PROP_HEADER_FOOTER ORed to the 4th entry
+ // Names have to begin with 'Footer', all 5th entries need to be ORed with the CTF_PM_FOOTERFLAG
+ HFMAP( "FooterFillStyle", XML_NAMESPACE_DRAW, XML_FILL, XML_SW_TYPE_FILLSTYLE, CTF_PM_FOOTERFLAG ),
+ HFMAP( "FooterFillColor", XML_NAMESPACE_DRAW, XML_FILL_COLOR, XML_TYPE_COLOR, CTF_PM_FOOTERFLAG ),
+ HFMAP( "FooterFillColor2", XML_NAMESPACE_DRAW, XML_SECONDARY_FILL_COLOR, XML_TYPE_COLOR, CTF_PM_FOOTERFLAG ),
+ HFMAP( "FooterFillGradientName", XML_NAMESPACE_DRAW, XML_FILL_GRADIENT_NAME, XML_TYPE_STYLENAME|MID_FLAG_NO_PROPERTY_IMPORT, CTF_PM_FOOTERFILLGRADIENTNAME ),
+ HFMAP( "FooterFillGradientStepCount", XML_NAMESPACE_DRAW, XML_GRADIENT_STEP_COUNT, XML_TYPE_NUMBER16, CTF_PM_FOOTERFLAG ),
+ HFMAP( "FooterFillHatchName", XML_NAMESPACE_DRAW, XML_FILL_HATCH_NAME, XML_TYPE_STYLENAME|MID_FLAG_NO_PROPERTY_IMPORT, CTF_PM_FOOTERFILLHATCHNAME ),
+ HFMAP( "FooterFillBackground", XML_NAMESPACE_DRAW, XML_FILL_HATCH_SOLID, XML_TYPE_BOOL, CTF_PM_FOOTERFLAG ),
+ HFMAP( "FooterFillBitmapName", XML_NAMESPACE_DRAW, XML_FILL_IMAGE_NAME, XML_TYPE_STYLENAME|MID_FLAG_NO_PROPERTY_IMPORT, CTF_PM_FOOTERFILLBITMAPNAME ),
+ HFMAP( "FooterFillTransparence", XML_NAMESPACE_DRAW, XML_OPACITY, XML_TYPE_NEG_PERCENT16|MID_FLAG_MULTI_PROPERTY, CTF_PM_FOOTERFLAG ), // exists in SW, too
+ HFMAP( "FooterFillTransparenceGradientName", XML_NAMESPACE_DRAW, XML_OPACITY_NAME, XML_TYPE_STYLENAME|MID_FLAG_NO_PROPERTY_IMPORT, CTF_PM_FOOTERFILLTRANSNAME ),
+ HFMAP( "FooterFillBitmapSizeX", XML_NAMESPACE_DRAW, XML_FILL_IMAGE_WIDTH, XML_SW_TYPE_FILLBITMAPSIZE|MID_FLAG_MULTI_PROPERTY, CTF_PM_FOOTERFLAG ),
+ HFMAP( "FooterFillBitmapLogicalSize", XML_NAMESPACE_DRAW, XML_FILL_IMAGE_WIDTH, XML_SW_TYPE_LOGICAL_SIZE|MID_FLAG_MULTI_PROPERTY, CTF_PM_FOOTERFLAG ),
+ HFMAP( "FooterFillBitmapSizeY", XML_NAMESPACE_DRAW, XML_FILL_IMAGE_HEIGHT, XML_SW_TYPE_FILLBITMAPSIZE|MID_FLAG_MULTI_PROPERTY, CTF_PM_FOOTERFLAG ),
+ HFMAP( "FooterFillBitmapLogicalSize", XML_NAMESPACE_DRAW, XML_FILL_IMAGE_HEIGHT, XML_SW_TYPE_LOGICAL_SIZE|MID_FLAG_MULTI_PROPERTY, CTF_PM_FOOTERFLAG ),
+ HFMAP( "FooterFillBitmapMode", XML_NAMESPACE_STYLE, XML_REPEAT, XML_SW_TYPE_BITMAP_MODE|MID_FLAG_MULTI_PROPERTY, CTF_PM_FOOTERFLAG ),
+ HFMAP( "FooterFillBitmapPositionOffsetX", XML_NAMESPACE_DRAW, XML_FILL_IMAGE_REF_POINT_X, XML_TYPE_PERCENT, CTF_PM_FOOTERFLAG ),
+ HFMAP( "FooterFillBitmapPositionOffsetY", XML_NAMESPACE_DRAW, XML_FILL_IMAGE_REF_POINT_Y, XML_TYPE_PERCENT, CTF_PM_FOOTERFLAG ),
+ HFMAP( "FooterFillBitmapRectanglePoint", XML_NAMESPACE_DRAW, XML_FILL_IMAGE_REF_POINT, XML_SW_TYPE_BITMAP_REFPOINT, CTF_PM_FOOTERFLAG ),
+ HFMAP( "FooterFillBitmapOffsetX", XML_NAMESPACE_DRAW, XML_TILE_REPEAT_OFFSET, XML_SW_TYPE_BITMAPREPOFFSETX|MID_FLAG_MULTI_PROPERTY, CTF_PM_FOOTERREPEAT_OFFSET_X ),
+ HFMAP( "FooterFillBitmapOffsetY", XML_NAMESPACE_DRAW, XML_TILE_REPEAT_OFFSET, XML_SW_TYPE_BITMAPREPOFFSETY|MID_FLAG_MULTI_PROPERTY, CTF_PM_FOOTERREPEAT_OFFSET_Y ),
+
+ { 0L, 0, 0, XML_EMPTY, 0, 0, SvtSaveOptions::ODFVER_010 } // index 190
};
+//eof
diff --git a/xmloff/source/style/impastp4.cxx b/xmloff/source/style/impastp4.cxx
index 448829d255a6..809e5c7d3d8b 100644
--- a/xmloff/source/style/impastp4.cxx
+++ b/xmloff/source/style/impastp4.cxx
@@ -388,7 +388,7 @@ void SvXMLAutoStylePoolP_Impl::exportXML(
{
/////////////////////////////////////////////////////////////////////////////////////
// create, initialize and fill helper-structure (SvXMLAutoStylePoolProperties_Impl)
- // wich contains a parent-name and a SvXMLAutoStylePoolProperties_Impl
+ // which contains a parent-name and a SvXMLAutoStylePoolProperties_Impl
//
const SvXMLAutoStylePoolParentsP_Impl *pParents =
pFamily->mpParentList;
diff --git a/xmloff/source/style/prstylei.cxx b/xmloff/source/style/prstylei.cxx
index 274010432412..d8c8f0f063c7 100644
--- a/xmloff/source/style/prstylei.cxx
+++ b/xmloff/source/style/prstylei.cxx
@@ -19,12 +19,9 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_xmloff.hxx"
-
#include <tools/debug.hxx>
#ifndef __SGI_STL_SET
#include <set>
@@ -40,13 +37,13 @@
#include <com/sun/star/beans/XMultiPropertyStates.hpp>
#include <com/sun/star/lang/XMultiServiceFactory.hpp>
#include <xmloff/xmlimp.hxx>
-
-#ifndef _XMLOFF_PRSTYLEI_HXX
#include <xmloff/prstylei.hxx>
-#endif
#include <xmloff/attrlist.hxx>
#include "xmloff/xmlerror.hxx"
+//UUUU
+#include <com/sun/star/drawing/FillStyle.hpp>
+
using ::rtl::OUString;
using ::rtl::OUStringBuffer;
@@ -59,6 +56,8 @@ using namespace ::com::sun::star::beans;
using namespace ::com::sun::star::lang;
using namespace ::xmloff::token;
+//UUUU
+using namespace com::sun::star::drawing;
void XMLPropStyleContext::SetAttribute( sal_uInt16 nPrefixKey,
const OUString& rLocalName,
@@ -74,15 +73,25 @@ void XMLPropStyleContext::SetAttribute( sal_uInt16 nPrefixKey,
}
}
-XMLPropStyleContext::XMLPropStyleContext( SvXMLImport& rImport,
- sal_uInt16 nPrfx, const OUString& rLName,
- const Reference< XAttributeList > & xAttrList,
- SvXMLStylesContext& rStyles, sal_uInt16 nFamily,
- sal_Bool bDefault )
-: SvXMLStyleContext( rImport, nPrfx, rLName, xAttrList, nFamily, bDefault )
-, msIsPhysical( RTL_CONSTASCII_USTRINGPARAM( "IsPhysical" ) )
-, msFollowStyle( RTL_CONSTASCII_USTRINGPARAM( "FollowStyle" ) )
-, mxStyles( &rStyles )
+
+//UUUU
+OldFillStyleDefinitionSet XMLPropStyleContext::maStandardSet;
+OldFillStyleDefinitionSet XMLPropStyleContext::maHeaderSet;
+OldFillStyleDefinitionSet XMLPropStyleContext::maFooterSet;
+OldFillStyleDefinitionSet XMLPropStyleContext::maParaSet;
+
+XMLPropStyleContext::XMLPropStyleContext(
+ SvXMLImport& rImport,
+ sal_uInt16 nPrfx,
+ const OUString& rLName,
+ const Reference< XAttributeList > & xAttrList,
+ SvXMLStylesContext& rStyles,
+ sal_uInt16 nFamily,
+ sal_Bool bDefault)
+: SvXMLStyleContext(rImport, nPrfx, rLName, xAttrList, nFamily, bDefault),
+ msIsPhysical(RTL_CONSTASCII_USTRINGPARAM("IsPhysical")),
+ msFollowStyle(RTL_CONSTASCII_USTRINGPARAM("FollowStyle")),
+ mxStyles(&rStyles)
{
}
@@ -90,6 +99,74 @@ XMLPropStyleContext::~XMLPropStyleContext()
{
}
+const OldFillStyleDefinitionSet& XMLPropStyleContext::getStandardSet()
+{
+ if(maStandardSet.empty())
+ {
+ maStandardSet.insert(::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("BackColorRGB")));
+ maStandardSet.insert(::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("BackTransparent")));
+ maStandardSet.insert(::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("BackColorTransparency")));
+ maStandardSet.insert(::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("BackGraphicURL")));
+ maStandardSet.insert(::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("BackGraphicFilter")));
+ maStandardSet.insert(::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("BackGraphicLocation")));
+ maStandardSet.insert(::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("BackGraphicTransparency")));
+ }
+
+ return maStandardSet;
+}
+
+const OldFillStyleDefinitionSet& XMLPropStyleContext::getHeaderSet()
+{
+ if(maHeaderSet.empty())
+ {
+ maHeaderSet.insert(::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("HeaderBackColorRGB")));
+ maHeaderSet.insert(::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("HeaderBackTransparent")));
+ maHeaderSet.insert(::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("HeaderBackColorTransparency")));
+ maHeaderSet.insert(::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("HeaderBackGraphicURL")));
+ maHeaderSet.insert(::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("HeaderBackGraphicFilter")));
+ maHeaderSet.insert(::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("HeaderBackGraphicLocation")));
+ maHeaderSet.insert(::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("HeaderBackGraphicTransparency")));
+ }
+
+ return maHeaderSet;
+}
+
+const OldFillStyleDefinitionSet& XMLPropStyleContext::getFooterSet()
+{
+ if(maFooterSet.empty())
+ {
+ maFooterSet.insert(::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("FooterBackColorRGB")));
+ maFooterSet.insert(::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("FooterBackTransparent")));
+ maFooterSet.insert(::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("FooterBackColorTransparency")));
+ maFooterSet.insert(::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("FooterBackGraphicURL")));
+ maFooterSet.insert(::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("FooterBackGraphicFilter")));
+ maFooterSet.insert(::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("FooterBackGraphicLocation")));
+ maFooterSet.insert(::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("FooterBackGraphicTransparency")));
+ }
+
+ return maFooterSet;
+}
+
+const OldFillStyleDefinitionSet& XMLPropStyleContext::getParaSet()
+{
+ if(maParaSet.empty())
+ {
+ // Caution: here it is *not* 'ParaBackColorRGB' as it should be, but indeed
+ // 'ParaBackColor' is used, see aXMLParaPropMap definition (line 313)
+ maParaSet.insert(::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("ParaBackColor")));
+ maParaSet.insert(::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("ParaBackTransparent")));
+ maParaSet.insert(::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("ParaBackGraphicLocation")));
+ maParaSet.insert(::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("ParaBackGraphicFilter")));
+ maParaSet.insert(::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("ParaBackGraphicURL")));
+
+ // These are not used in aXMLParaPropMap definition, thus not needed here
+ // maParaSet.insert(::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("ParaBackColorTransparency")));
+ // maParaSet.insert(::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("ParaBackGraphicTransparency")));
+ }
+
+ return maParaSet;
+}
+
SvXMLImportContext *XMLPropStyleContext::CreateChildContext(
sal_uInt16 nPrefix,
const OUString& rLocalName,
@@ -184,16 +261,45 @@ typedef ::std::set < OUString, ::comphelper::UStringLess > PropertyNameSet;
void XMLPropStyleContext::CreateAndInsert( sal_Bool bOverwrite )
{
- if( ((SvXMLStylesContext *)&mxStyles)->IsAutomaticStyle()
+ SvXMLStylesContext* pSvXMLStylesContext = static_cast< SvXMLStylesContext* >(&mxStyles);
+ UniReference < SvXMLImportPropertyMapper > xImpPrMap = pSvXMLStylesContext->GetImportPropertyMapper(GetFamily());
+ OSL_ENSURE(xImpPrMap.is(), "There is no import prop mapper");
+
+ //UUUU need to filter out old fill definitions when the new ones are used. The new
+ // ones are used when a FillStyle is defined
+ const bool bTakeCareOfDrawingLayerFillStyle(xImpPrMap.is() && GetFamily() == XML_STYLE_FAMILY_TEXT_PARAGRAPH);
+ bool bDrawingLayerFillStylesUsed(false);
+
+ if(bTakeCareOfDrawingLayerFillStyle)
+ {
+ // check if new FillStyles are used and if so mark old ones with -1
+ static ::rtl::OUString s_FillStyle(RTL_CONSTASCII_USTRINGPARAM("FillStyle"));
+
+ if(doNewDrawingLayerFillStyleDefinitionsExist(s_FillStyle))
+ {
+ deactivateOldFillStyleDefinitions(getParaSet());
+ bDrawingLayerFillStylesUsed = true;
+ }
+ }
+
+ if( pSvXMLStylesContext->IsAutomaticStyle()
&& ( GetFamily() == XML_STYLE_FAMILY_TEXT_TEXT || GetFamily() == XML_STYLE_FAMILY_TEXT_PARAGRAPH ) )
{
- Reference < XAutoStyleFamily > xAutoFamily =
- ((SvXMLStylesContext *)&mxStyles)->GetAutoStyles( GetFamily() );
+ //UUUU Need to translate StyleName from temp MapNames to names
+ // used in already imported items (already exist in the pool). This
+ // is required for AutomaticStyles since these do *not* use FillPropertySet
+ // and thus just trigger CheckSpecialContext in XMLTextStyleContext::FillPropertySet
+ // (which may be double action anyways). The mechanism there to use _ContextID_Index_Pair
+ // is not working for AutomaticStyles and is already too late, too (this
+ // method is already called before XMLTextStyleContext::FillPropertySet gets called)
+ if(bDrawingLayerFillStylesUsed)
+ {
+ translateNameBasedDrawingLayerFillStyleDefinitionsToStyleDisplayNames();
+ }
+
+ Reference < XAutoStyleFamily > xAutoFamily = pSvXMLStylesContext->GetAutoStyles( GetFamily() );
if( !xAutoFamily.is() )
return;
- UniReference < SvXMLImportPropertyMapper > xImpPrMap =
- ((SvXMLStylesContext *)&mxStyles)->GetImportPropertyMapper( GetFamily() );
- DBG_ASSERT( xImpPrMap.is(), "There is no import prop mapper" );
if( xImpPrMap.is() )
{
Sequence< PropertyValue > aValues;
@@ -242,8 +348,7 @@ void XMLPropStyleContext::CreateAndInsert( sal_Bool bOverwrite )
if( 0 == rName.getLength() || IsDefaultStyle() )
return;
- Reference < XNameContainer > xFamilies =
- ((SvXMLStylesContext *)&mxStyles)->GetStylesContainer( GetFamily() );
+ Reference < XNameContainer > xFamilies = pSvXMLStylesContext->GetStylesContainer( GetFamily() );
if( !xFamilies.is() )
return;
@@ -282,10 +387,6 @@ void XMLPropStyleContext::CreateAndInsert( sal_Bool bOverwrite )
Reference< XPropertyState > xPropState( xPropSet, uno::UNO_QUERY );
UniReference < XMLPropertySetMapper > xPrMap;
- UniReference < SvXMLImportPropertyMapper > xImpPrMap =
- ((SvXMLStylesContext *)&mxStyles)->GetImportPropertyMapper(
- GetFamily() );
- DBG_ASSERT( xImpPrMap.is(), "There is the import prop mapper" );
if( xImpPrMap.is() )
xPrMap = xImpPrMap->getPropertySetMapper();
if( xPrMap.is() )
@@ -414,3 +515,135 @@ void XMLPropStyleContext::Finish( sal_Bool bOverwrite )
}
+//UUUU
+bool XMLPropStyleContext::doNewDrawingLayerFillStyleDefinitionsExist(
+ const OUString& rFillStyleTag) const
+{
+ if(maProperties.size() && rFillStyleTag.getLength())
+ {
+ const UniReference< XMLPropertySetMapper >& rMapper = GetStyles()->GetImportPropertyMapper(GetFamily())->getPropertySetMapper();
+
+ if(rMapper.is())
+ {
+ for(::std::vector< XMLPropertyState >::const_iterator a = maProperties.begin(); a != maProperties.end(); a++)
+ {
+ if(a->mnIndex != -1)
+ {
+ const OUString& rPropName = rMapper->GetEntryAPIName(a->mnIndex);
+
+ if(rPropName == rFillStyleTag)
+ {
+ FillStyle eFillStyle(FillStyle_NONE);
+
+ if(a->maValue >>= eFillStyle)
+ {
+ // okay, type was good, FillStyle is set
+ }
+ else
+ {
+ // also try an int (see XFillStyleItem::PutValue)
+ sal_Int32 nFillStyle(0);
+
+ if(a->maValue >>= nFillStyle)
+ {
+ eFillStyle = static_cast< FillStyle >(nFillStyle);
+ }
+ }
+
+ // we found the entry, check it
+ return FillStyle_NONE != eFillStyle;
+ }
+ }
+ }
+ }
+ }
+
+ return false;
+}
+
+//UUUU
+bool XMLPropStyleContext::deactivateOldFillStyleDefinitions(
+ const OldFillStyleDefinitionSet& rHashSetOfTags)
+{
+ bool bRetval(false);
+
+ if(!rHashSetOfTags.empty() && maProperties.size())
+ {
+ const UniReference< XMLPropertySetMapper >& rMapper = GetStyles()->GetImportPropertyMapper(GetFamily())->getPropertySetMapper();
+
+ if(rMapper.is())
+ {
+ for(::std::vector< XMLPropertyState >::iterator a = maProperties.begin(); a != maProperties.end(); a++)
+ {
+ if(a->mnIndex != -1)
+ {
+ const OUString& rPropName = rMapper->GetEntryAPIName(a->mnIndex);
+
+ if(rHashSetOfTags.find(rPropName) != rHashSetOfTags.end())
+ {
+ // mark entry as inactive
+ a->mnIndex = -1;
+ bRetval = true;
+ }
+ }
+ }
+ }
+ }
+
+ return bRetval;
+}
+
+//UUUU
+bool XMLPropStyleContext::translateNameBasedDrawingLayerFillStyleDefinitionsToStyleDisplayNames()
+{
+ bool bRetval(false);
+
+ if(maProperties.size())
+ {
+ const UniReference< XMLPropertySetMapper >& rMapper = GetStyles()->GetImportPropertyMapper(GetFamily())->getPropertySetMapper();
+
+ if(rMapper.is())
+ {
+ static OUString s_FillGradientName(RTL_CONSTASCII_USTRINGPARAM("FillGradientName"));
+ static OUString s_FillHatchName(RTL_CONSTASCII_USTRINGPARAM("FillHatchName"));
+ static OUString s_FillBitmapName(RTL_CONSTASCII_USTRINGPARAM("FillBitmapName"));
+ static OUString s_FillTransparenceGradientName(RTL_CONSTASCII_USTRINGPARAM("FillTransparenceGradientName"));
+
+ for(::std::vector< XMLPropertyState >::iterator a = maProperties.begin(); a != maProperties.end(); a++)
+ {
+ if(a->mnIndex != -1)
+ {
+ const OUString& rPropName = rMapper->GetEntryAPIName(a->mnIndex);
+ sal_uInt16 aStyleFamily(0);
+
+ if(rPropName == s_FillGradientName || rPropName == s_FillTransparenceGradientName)
+ {
+ aStyleFamily = XML_STYLE_FAMILY_SD_GRADIENT_ID;
+ }
+ else if(rPropName == s_FillHatchName)
+ {
+ aStyleFamily = XML_STYLE_FAMILY_SD_HATCH_ID;
+ }
+ else if(rPropName == s_FillBitmapName)
+ {
+ aStyleFamily = XML_STYLE_FAMILY_SD_FILL_IMAGE_ID;
+ }
+
+ if(aStyleFamily)
+ {
+ OUString sStyleName;
+
+ a->maValue >>= sStyleName;
+ sStyleName = GetImport().GetStyleDisplayName( aStyleFamily, sStyleName );
+ a->maValue <<= sStyleName;
+ bRetval = true;
+ }
+ }
+ }
+ }
+ }
+
+ return bRetval;
+}
+
+//eof
diff --git a/xmloff/source/style/styleexp.cxx b/xmloff/source/style/styleexp.cxx
index bb47f293ccfc..a27c2076c7b9 100644
--- a/xmloff/source/style/styleexp.cxx
+++ b/xmloff/source/style/styleexp.cxx
@@ -520,7 +520,7 @@ void XMLStyleExport::exportStyleFamily(
Reference< XPropertySet > xPropSet( xStyle, UNO_QUERY );
Reference< XPropertySetInfo > xPropSetInfo( xPropSet->getPropertySetInfo() );
- // styles that aren't existing realy are ignored.
+ // styles that aren't existing really are ignored.
if( xPropSetInfo->hasPropertyByName( sIsPhysical ) )
{
Any aAny( xPropSet->getPropertyValue( sIsPhysical ) );
diff --git a/xmloff/source/style/xmlaustp.cxx b/xmloff/source/style/xmlaustp.cxx
index cffb23851bf2..6c133c8aca4b 100644
--- a/xmloff/source/style/xmlaustp.cxx
+++ b/xmloff/source/style/xmlaustp.cxx
@@ -119,7 +119,7 @@ void SvXMLAutoStylePoolP::exportStyleAttributes(
if (bFoundControlShapeDataStyle)
{
DBG_ERROR("SvXMLAutoStylePoolP::exportStyleAttributes: found two properties with the ControlShapeDataStyle context id!");
- // already added the attribute for the first occurence
+ // already added the attribute for the first occurrence
break;
}
@@ -134,7 +134,7 @@ void SvXMLAutoStylePoolP::exportStyleAttributes(
if (bFoundNumberingRulesName)
{
DBG_ERROR("SvXMLAutoStylePoolP::exportStyleAttributes: found two properties with the numbering rules name context id!");
- // already added the attribute for the first occurence
+ // already added the attribute for the first occurrence
break;
}
diff --git a/xmloff/source/style/xmlexppr.cxx b/xmloff/source/style/xmlexppr.cxx
index da1a1991e5bb..3e8a8e039e19 100644
--- a/xmloff/source/style/xmlexppr.cxx
+++ b/xmloff/source/style/xmlexppr.cxx
@@ -277,7 +277,7 @@ void FilterPropertiesInfo_Impl::AddProperty(
aPropInfos.push_back(FilterPropertyInfo_Impl(rApiName, nIndex));
nCount++;
- OSL_ENSURE( !pApiNames, "perfomance warning: API names already retrieved" );
+ OSL_ENSURE( !pApiNames, "performance warning: API names already retrieved" );
if( pApiNames )
{
delete pApiNames;
diff --git a/xmloff/source/style/xmlimppr.cxx b/xmloff/source/style/xmlimppr.cxx
index 342057c67972..2c31d549ff52 100644
--- a/xmloff/source/style/xmlimppr.cxx
+++ b/xmloff/source/style/xmlimppr.cxx
@@ -333,7 +333,7 @@ void SvXMLImportPropertyMapper::importXML(
}
}
}
- while( ( nIndex >= 0 ) && (( nFlags & MID_FLAG_MULTI_PROPERTY ) != 0 ) );
+ while( ( nIndex >= 0 && nIndex + 1 < nEndIdx ) && (( nFlags & MID_FLAG_MULTI_PROPERTY ) != 0 ) );
}
finished( rProperties, nStartIdx, nEndIdx );
diff --git a/xmloff/source/style/xmlnumfe.cxx b/xmloff/source/style/xmlnumfe.cxx
index cc1a43ba7dfc..88f5d741ea76 100644
--- a/xmloff/source/style/xmlnumfe.cxx
+++ b/xmloff/source/style/xmlnumfe.cxx
@@ -1724,7 +1724,7 @@ void SvXMLNumFmtExport::Export( sal_Bool bIsAutoStyle )
DBG_ASSERT((pFormat->GetType() & NUMBERFORMAT_DEFINED) != 0, "a not user defined numberformat found");
// user-defined and used formats are exported
ExportFormat_Impl( *pFormat, nKey );
- // if it is a user-defined Format it will be added else nothing will hapen
+ // if it is a user-defined Format it will be added else nothing will happen
pUsedList->SetUsed(nKey);
}
diff --git a/xmloff/source/style/xmlnumfi.cxx b/xmloff/source/style/xmlnumfi.cxx
index ccf25b67851e..581718d27ca4 100644
--- a/xmloff/source/style/xmlnumfi.cxx
+++ b/xmloff/source/style/xmlnumfi.cxx
@@ -842,7 +842,7 @@ void lcl_EnquoteIfNecessary( rtl::OUStringBuffer& rContent, const SvXMLNumFormat
else if ( rParent.GetType() == XML_TOK_STYLES_PERCENTAGE_STYLE && nLength > 1 )
{
// the percent character in percentage styles must be left out of quoting
- // (one occurence is enough even if there are several percent characters in the string)
+ // (one occurrence is enough even if there are several percent characters in the string)
rtl::OUString aString( rContent.getStr() );
sal_Int32 nPos = aString.indexOf( (sal_Unicode) '%' );
diff --git a/xmloff/source/style/xmlprmap.cxx b/xmloff/source/style/xmlprmap.cxx
index 8029249f09cd..3c284f2495a4 100644
--- a/xmloff/source/style/xmlprmap.cxx
+++ b/xmloff/source/style/xmlprmap.cxx
@@ -172,7 +172,7 @@ sal_Int32 XMLPropertySetMapper::GetEntryIndex(
sal_Int32 nEntries = GetEntryCount();
sal_Int32 nIndex= nStartAt == - 1? 0 : nStartAt+1;
- if ( nEntries )
+ if ( nEntries && nIndex < nEntries )
{
do
{
diff --git a/xmloff/source/table/XMLTableExport.cxx b/xmloff/source/table/XMLTableExport.cxx
index f790049cf709..056939f9fcf4 100644
--- a/xmloff/source/table/XMLTableExport.cxx
+++ b/xmloff/source/table/XMLTableExport.cxx
@@ -268,7 +268,7 @@ static bool has_states( const std::vector< XMLPropertyState >& xPropStates )
Reference< XCellRange > xCellRange( xPropSet, UNO_QUERY_THROW );
for ( sal_Int32 nColumn = 0; nColumn < nColumnCount; ++nColumn )
{
- // get current cell, remarks row index is 0, because we get the range for each row seperate
+ // get current cell, remarks row index is 0, because we get the range for each row separate
Reference< XPropertySet > xCellSet( xCellRange->getCellByPosition(nColumn, 0), UNO_QUERY_THROW );
// get style
@@ -369,7 +369,7 @@ static bool has_states( const std::vector< XMLPropertyState >& xPropStates )
for ( sal_Int32 columnIndex = 0; columnIndex < columnCount; columnIndex++ )
{
- // get current cell, remarks row index is 0, because we get the range for each row seperate
+ // get current cell, remarks row index is 0, because we get the range for each row separate
Reference< XCell > xCell( xCellRange->getCellByPosition(columnIndex, 0), UNO_QUERY_THROW );
// use XMergeableCell interface from offapi
diff --git a/xmloff/source/text/XMLChangedRegionImportContext.hxx b/xmloff/source/text/XMLChangedRegionImportContext.hxx
index f0187433f92d..bcbad9a40f35 100644
--- a/xmloff/source/text/XMLChangedRegionImportContext.hxx
+++ b/xmloff/source/text/XMLChangedRegionImportContext.hxx
@@ -47,7 +47,7 @@ class XMLChangedRegionImportContext : public SvXMLImportContext
const ::rtl::OUString sEmpty;
/// if we replace the current XTextCursor/XText by the ones for
- /// the redline, we remeber the old cursor here.
+ /// the redline, we remember the old cursor here.
::com::sun::star::uno::Reference<
::com::sun::star::text::XTextCursor> xOldCursor;
diff --git a/xmloff/source/text/XMLSectionExport.cxx b/xmloff/source/text/XMLSectionExport.cxx
index 3414d6ca0008..aded76027671 100644
--- a/xmloff/source/text/XMLSectionExport.cxx
+++ b/xmloff/source/text/XMLSectionExport.cxx
@@ -891,7 +891,7 @@ void XMLSectionExport::ExportBaseIndexSource(
aAny = xLevelTemplates->getByIndex(i);
aAny >>= aTemplateSequence;
- // export the sequence (abort export if an error occured; #91214#)
+ // export the sequence (abort export if an error occurred; #91214#)
sal_Bool bResult =
ExportIndexTemplate(eType, i, rPropertySet, aTemplateSequence);
if ( !bResult )
diff --git a/xmloff/source/text/XMLSectionImportContext.cxx b/xmloff/source/text/XMLSectionImportContext.cxx
index 0b9b4a212fe1..9e19388d23a6 100644
--- a/xmloff/source/text/XMLSectionImportContext.cxx
+++ b/xmloff/source/text/XMLSectionImportContext.cxx
@@ -179,7 +179,7 @@ void XMLSectionImportContext::StartElement(
xPropSet->setPropertyValue( sIsVisible, aAny );
// #97450# hidden sections must be hidden on reload
- // For backwards compatibilty, set flag only if it is
+ // For backwards compatibility, set flag only if it is
// present
if( bIsCurrentlyVisibleOK )
{
diff --git a/xmloff/source/text/XMLSectionImportContext.hxx b/xmloff/source/text/XMLSectionImportContext.hxx
index fd0adcdba3dd..f66fd4c3a8e9 100644
--- a/xmloff/source/text/XMLSectionImportContext.hxx
+++ b/xmloff/source/text/XMLSectionImportContext.hxx
@@ -45,7 +45,7 @@ class XMLTextImportHelper;
*/
class XMLSectionImportContext : public SvXMLImportContext
{
- /// start position; ranges aquired via getStart(),getEnd() don't move
+ /// start position; ranges acquired via getStart(),getEnd() don't move
::com::sun::star::uno::Reference<
::com::sun::star::text::XTextRange> xStartRange;
diff --git a/xmloff/source/text/XMLTextFrameContext.cxx b/xmloff/source/text/XMLTextFrameContext.cxx
index 327342282e57..11f83480592d 100644
--- a/xmloff/source/text/XMLTextFrameContext.cxx
+++ b/xmloff/source/text/XMLTextFrameContext.cxx
@@ -542,7 +542,7 @@ void XMLTextFrameContext_Impl::Create( sal_Bool /*bHRefOrBase64*/ )
}
else
{
- // it should be an own OOo link that has no storage persistance
+ // it should be an own OOo link that has no storage persistence
xPropSet = GetImport().GetTextImport()
->createAndInsertOOoLink( GetImport(),
sURL,
diff --git a/xmloff/source/text/txtexppr.cxx b/xmloff/source/text/txtexppr.cxx
index 9f59cd8a5e92..a9b7144097c3 100644
--- a/xmloff/source/text/txtexppr.cxx
+++ b/xmloff/source/text/txtexppr.cxx
@@ -19,13 +19,10 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_xmloff.hxx"
#include "txtexppr.hxx"
-
#include <com/sun/star/table/BorderLine.hpp>
#include <com/sun/star/text/SizeType.hpp>
#include <com/sun/star/text/WrapTextMode.hpp>
@@ -34,13 +31,14 @@
#include <com/sun/star/awt/FontPitch.hpp>
#include <com/sun/star/awt/FontUnderline.hpp>
#include <com/sun/star/text/XChapterNumberingSupplier.hpp>
-
#include <tools/debug.hxx>
-
#include <xmloff/txtprmap.hxx>
#include <xmloff/xmlexp.hxx>
#include "XMLSectionFootnoteConfigExport.hxx"
+//UUUU
+#include <xmlsdtypes.hxx>
+
using ::rtl::OUString;
using ::rtl::OUStringBuffer;
@@ -464,7 +462,9 @@ void XMLTextExportPropertySetMapper::ContextFilter(
XMLPropertyState* pClip11State = NULL;
XMLPropertyState* pClipState = NULL;
+ // filter fo:margin
XMLPropertyState* pAllParaMargin = NULL;
+ XMLPropertyState* pAllParaMarginRel = NULL;
XMLPropertyState* pAllMargin = NULL;
//UUUU
@@ -588,23 +588,24 @@ void XMLTextExportPropertySetMapper::ContextFilter(
case CTF_TEXT_CLIP11: pClip11State = propertie; break;
case CTF_TEXT_CLIP: pClipState = propertie; break;
case CTF_PARAMARGINALL: pAllParaMargin = propertie; break;
+ case CTF_PARAMARGINALL_REL: pAllParaMarginRel = propertie; break;
case CTF_MARGINALL: pAllMargin = propertie; break;
//UUUU
- case CTF_SW_REPEAT_OFFSET_X:
+ case CTF_REPEAT_OFFSET_X:
pRepeatOffsetX = propertie;
break;
//UUUU
- case CTF_SW_REPEAT_OFFSET_Y:
+ case CTF_REPEAT_OFFSET_Y:
pRepeatOffsetY = propertie;
break;
//UUUU
- case CTF_SW_FILLGRADIENTNAME:
- case CTF_SW_FILLHATCHNAME:
- case CTF_SW_FILLBITMAPNAME:
- case CTF_SW_FILLTRANSNAME:
+ case CTF_FILLGRADIENTNAME:
+ case CTF_FILLHATCHNAME:
+ case CTF_FILLBITMAPNAME:
+ case CTF_FILLTRANSNAME:
{
OUString aStr;
if( (propertie->maValue >>= aStr) && 0 == aStr.getLength() )
@@ -677,6 +678,11 @@ void XMLTextExportPropertySetMapper::ContextFilter(
pAllParaMargin->mnIndex = -1; // just export individual attributes...
pAllParaMargin->maValue.clear();
}
+ if (pAllParaMarginRel)
+ {
+ pAllParaMarginRel->mnIndex = -1; // just export individual attributes...
+ pAllParaMarginRel->maValue.clear();
+ }
if (pAllMargin)
{
pAllMargin->mnIndex = -1; // just export individual attributes...
diff --git a/xmloff/source/text/txtflde.cxx b/xmloff/source/text/txtflde.cxx
index 26aaf1e0205c..2cc05815454e 100644
--- a/xmloff/source/text/txtflde.cxx
+++ b/xmloff/source/text/txtflde.cxx
@@ -752,7 +752,7 @@ sal_Bool XMLTextFieldExport::IsStringField(
case FIELD_ID_DRAW_FOOTER:
case FIELD_ID_DRAW_DATE_TIME:
default:
- DBG_ERROR("unkown field type/field has no content");
+ DBG_ERROR("unknown field type/field has no content");
return sal_True; // invalid info; string in case of doubt
}
}
@@ -971,7 +971,7 @@ void XMLTextFieldExport::ExportFieldAutoStyle(
case FIELD_ID_UNKNOWN:
default:
- DBG_ERROR("unkown field type!");
+ DBG_ERROR("unknown field type!");
// ignore -> no format for unkowns
break;
}
@@ -1869,7 +1869,7 @@ void XMLTextFieldExport::ExportFieldHelper(
case FIELD_ID_UNKNOWN:
default:
- DBG_ERROR("unkown field type encountered!");
+ DBG_ERROR("unknown field type encountered!");
// always export content
GetExport().Characters(sPresentation);
}
@@ -2973,8 +2973,8 @@ enum XMLTokenEnum XMLTextFieldExport::MapPlaceholderType(sal_uInt16 nType)
break;
default:
- // unkown placeholder: XML_TEXT
- DBG_ERROR("unkown placeholder type");
+ // unknown placeholder: XML_TEXT
+ DBG_ERROR("unknown placeholder type");
}
return eType;
@@ -3115,7 +3115,7 @@ enum XMLTokenEnum XMLTextFieldExport::MapChapterDisplayFormat(sal_Int16 nFormat)
eName = XML_PLAIN_NUMBER;
break;
default:
- DBG_ERROR("unkown chapter display format");
+ DBG_ERROR("unknown chapter display format");
eName = XML_TOKEN_INVALID;
break;
}
@@ -3225,7 +3225,7 @@ enum XMLTokenEnum XMLTextFieldExport::MapReferenceSource(sal_Int16 nType)
eElement = XML_NOTE_REF;
break;
default:
- DBG_ERROR("unkown reference source");
+ DBG_ERROR("unknown reference source");
break;
}
diff --git a/xmloff/source/text/txtfldi.cxx b/xmloff/source/text/txtfldi.cxx
index 21d1370c5911..aff9cbd2e141 100644
--- a/xmloff/source/text/txtfldi.cxx
+++ b/xmloff/source/text/txtfldi.cxx
@@ -711,7 +711,7 @@ void XMLSenderFieldImportContext::ProcessAttribute(
sal_Bool bRet = GetImport().GetMM100UnitConverter().
convertBool(bVal, sAttrValue);
- // set bFixed if successfull
+ // set bFixed if successful
if (bRet) {
bFixed = bVal;
}
@@ -1372,7 +1372,7 @@ SvXMLImportContext* XMLDatabaseFieldImportContext::CreateChildContext(
}
}
- // we call ProcessAttribute in order to set bValid appropriatly
+ // we call ProcessAttribute in order to set bValid appropriately
ProcessAttribute( XML_TOKEN_INVALID, OUString() );
}
@@ -2272,7 +2272,7 @@ void XMLFileNameImportContext::ProcessAttribute(
break;
}
default:
- ; // unkown attribute: ignore
+ ; // unknown attribute: ignore
break;
}
}
@@ -3075,7 +3075,7 @@ void XMLDdeFieldDeclImportContext::StartElement(
UNO_QUERY);
if( xFactory.is() )
{
- /* #i6432# There might be multiple occurances of one DDE
+ /* #i6432# There might be multiple occurrences of one DDE
declaration if it is used in more than one of
header/footer/body. createInstance will throw an exception if we
try to create the second, third, etc. instance of such a
@@ -3690,13 +3690,17 @@ void XMLAnnotationImportContext::EndElement()
uno::Reference<container::XEnumeration> xFields(xFieldsAccess->createEnumeration());
while (xFields->hasMoreElements())
{
- uno::Reference<beans::XPropertySet> xCurrField(xFields->nextElement(), uno::UNO_QUERY);
- OUString aFieldName;
- xCurrField->getPropertyValue(sPropertyName) >>= aFieldName;
- if ( aFieldName == aName )
+ uno::Reference< beans::XPropertySet > xCurrField(xFields->nextElement(), uno::UNO_QUERY);
+ uno::Reference< beans::XPropertySetInfo > xCurrFieldPropInfo = xCurrField->getPropertySetInfo();
+ if ( xCurrFieldPropInfo->hasPropertyByName( sPropertyName ) )
{
- xPrevField.set( xCurrField, uno::UNO_QUERY );
- break;
+ OUString aFieldName;
+ xCurrField->getPropertyValue( sPropertyName ) >>= aFieldName;
+ if ( aFieldName == aName )
+ {
+ xPrevField.set( xCurrField, uno::UNO_QUERY );
+ break;
+ }
}
}
}
diff --git a/xmloff/source/text/txtimp.cxx b/xmloff/source/text/txtimp.cxx
index 9137d5f9d13d..ae9c547c2ca7 100644
--- a/xmloff/source/text/txtimp.cxx
+++ b/xmloff/source/text/txtimp.cxx
@@ -2094,7 +2094,7 @@ void XMLTextImportHelper::SetOutlineStyles( sal_Bool bSetEmptyLevels )
const sal_Int32 nCount = m_pImpl->m_xChapterNumbering->getCount();
// --> OD 2009-11-13 #i106218#
- // First collect all paragraph styles choosen for assignment to each
+ // First collect all paragraph styles chosen for assignment to each
// list level of the outline style, then perform the intrinsic assignment.
// Reason: The assignment of a certain paragraph style to a list level
// of the outline style causes side effects on the children
diff --git a/xmloff/source/text/txtimppr.cxx b/xmloff/source/text/txtimppr.cxx
index a748923e3091..b76f6e126cf4 100644
--- a/xmloff/source/text/txtimppr.cxx
+++ b/xmloff/source/text/txtimppr.cxx
@@ -312,9 +312,11 @@ void XMLTextImportPropertyMapper::finished(
XMLPropertyState* pVertOrientRelAsChar = 0;
XMLPropertyState* pBackTransparency = NULL; // transparency in %
XMLPropertyState* pBackTransparent = NULL; // transparency as boolean
+
XMLPropertyState* pAllParaMargin = 0;
XMLPropertyState* pParaMargins[4] = { 0, 0, 0, 0 };
::std::auto_ptr<XMLPropertyState> pNewParaMargins[4];
+
XMLPropertyState* pAllMargin = 0;
XMLPropertyState* pMargins[4] = { 0, 0, 0, 0 };
::std::auto_ptr<XMLPropertyState> pNewMargins[4];
@@ -385,21 +387,42 @@ void XMLTextImportPropertyMapper::finished(
bHasAnyWidth = sal_True; break;
case CTF_BACKGROUND_TRANSPARENCY: pBackTransparency = property; break;
case CTF_BACKGROUND_TRANSPARENT: pBackTransparent = property; break;
+
case CTF_PARAMARGINALL:
+ pAllParaMargin = property;
+ break;
case CTF_PARAMARGINALL_REL:
- pAllParaMargin = property; break;
+ {
+ sal_uInt32 nValue;
+ property->maValue >>= nValue;
+ // treat fo:margin="100%" as it is not exisiting as the
+ // corresponding core attribute classes - <SvxULSpaceItem> and
+ // <SvxLRSpaceItem> - are not able to treat such a value correctly.
+ // The result will be the same as the values will be inherited
+ // from parent, when the no margin attribute is given.
+ if ( nValue != 100 )
+ {
+ pAllParaMargin = property;
+ }
+ }
+ break;
+
case CTF_PARALEFTMARGIN:
case CTF_PARALEFTMARGIN_REL:
pParaMargins[XML_LINE_LEFT] = property; break;
+
case CTF_PARARIGHTMARGIN:
case CTF_PARARIGHTMARGIN_REL:
pParaMargins[XML_LINE_RIGHT] = property; break;
+
case CTF_PARATOPMARGIN:
case CTF_PARATOPMARGIN_REL:
pParaMargins[XML_LINE_TOP] = property; break;
+
case CTF_PARABOTTOMMARGIN:
case CTF_PARABOTTOMMARGIN_REL:
pParaMargins[XML_LINE_BOTTOM] = property; break;
+
case CTF_MARGINALL:
pAllMargin = property; break;
case CTF_MARGINLEFT:
@@ -428,7 +451,8 @@ void XMLTextImportPropertyMapper::finished(
for (sal_uInt16 i = 0; i < 4; i++)
{
- if (pAllParaMargin && !pParaMargins[i])
+ if ( pAllParaMargin != NULL
+ && pParaMargins[i] == NULL )
{
#ifdef DBG_UTIL
sal_Int16 nTmp = getPropertySetMapper()->GetEntryContextId(
@@ -437,9 +461,12 @@ void XMLTextImportPropertyMapper::finished(
nTmp <= CTF_PARABOTTOMMARGIN_REL,
"wrong property context id" );
#endif
- pNewParaMargins[i].reset(new XMLPropertyState(
- pAllParaMargin->mnIndex + (2*i) + 2, pAllParaMargin->maValue));
+ // IMPORTANT NOTE: the index calculation depends on the right order in the property map
+ pNewParaMargins[i].reset(
+ new XMLPropertyState( pAllParaMargin->mnIndex + (2*i) + 2,
+ pAllParaMargin->maValue ) );
}
+
if (pAllMargin && !pMargins[i])
{
#ifdef DBG_UTIL
@@ -448,8 +475,10 @@ void XMLTextImportPropertyMapper::finished(
OSL_ENSURE( nTmp >= CTF_MARGINLEFT && nTmp <= CTF_MARGINBOTTOM,
"wrong property context id" );
#endif
- pNewMargins[i].reset(new XMLPropertyState(
- pAllMargin->mnIndex + i + 1, pAllMargin->maValue));
+ // IMPORTANT NOTE: the index calculation depends on the right order in the property map
+ pNewMargins[i].reset(
+ new XMLPropertyState( pAllMargin->mnIndex + i + 1,
+ pAllMargin->maValue ) );
}
if( pAllBorderDistance && !pBorderDistances[i] )
{
diff --git a/xmloff/source/text/txtparae.cxx b/xmloff/source/text/txtparae.cxx
index c57a6a4bbf88..2b07952c2fef 100644
--- a/xmloff/source/text/txtparae.cxx
+++ b/xmloff/source/text/txtparae.cxx
@@ -2169,7 +2169,7 @@ void XMLTextParagraphExport::exportParagraph(
{
// For the auto styles, the multi property set helper is only used
// if hard attributes are existing. Therfor, it seems to be a better
- // strategy to have the TextSection property seperate, because otherwise
+ // strategy to have the TextSection property separate, because otherwise
// we always retrieve the style names even if they are not required.
if( bAutoStyles )
{
@@ -3381,7 +3381,7 @@ void XMLTextParagraphExport::exportText( const OUString& rText,
}
// If there are spaces left that have not been exported and the
- // current chracter is not a space , the pending spaces have to be
+ // current character is not a space , the pending spaces have to be
// exported now.
if( nSpaceChars > 0 && !bCurrCharIsSpace )
{
diff --git a/xmloff/source/text/txtparai.cxx b/xmloff/source/text/txtparai.cxx
index ee90c6c03062..e970fdff492f 100644
--- a/xmloff/source/text/txtparai.cxx
+++ b/xmloff/source/text/txtparai.cxx
@@ -1034,9 +1034,9 @@ protected:
Reference<beans::XPropertySet>& rPropSet);
/**
- * All marks can be created immediatly. Since we don't care about
+ * All marks can be created immediately. Since we don't care about
* the element content, ProcessAttribute should set the properties
- * immediatly.
+ * immediately.
*
* This method tolerates an empty PropertySet; subclasses however
* are not expected to.
@@ -2029,7 +2029,7 @@ XMLParaContext::~XMLParaContext()
xTxtImport->FindOutlineStyleName( sStyleName, nOutlineLevel );
// set style and hard attributes at the previous paragraph
- // --> OD 2007-07-25 #i73509# - add paramter <mbOutlineLevelAttrFound>
+ // --> OD 2007-07-25 #i73509# - add parameter <mbOutlineLevelAttrFound>
sStyleName = xTxtImport->SetStyleAndAttrs( GetImport(), xAttrCursor,
sStyleName,
sal_True,
diff --git a/xmloff/source/text/txtprhdl.cxx b/xmloff/source/text/txtprhdl.cxx
index c5fb255679b5..378794319391 100644
--- a/xmloff/source/text/txtprhdl.cxx
+++ b/xmloff/source/text/txtprhdl.cxx
@@ -19,10 +19,9 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_xmloff.hxx"
+
#include <tools/debug.hxx>
#include <rtl/ustrbuf.hxx>
#include <tools/fontenum.hxx>
@@ -44,30 +43,35 @@
#include "XMLAnchorTypePropHdl.hxx"
#include <xmloff/XMLConstantsPropertyHandler.hxx>
#include "XMLClipPropertyHandler.hxx"
-#ifndef _XMLOFF_XMLTEXTCOLUMNSPPROPERTYHANDLER_HXX
#include "XMLTextColumnsPropertyHandler.hxx"
-#endif
#include <xmloff/NamedBoolPropertyHdl.hxx>
-#ifndef _XMLOFF_TXTPRHDL_HXX
#include "txtprhdl.hxx"
-#endif
-// OD 2004-05-05 #i28701#
#include <com/sun/star/text/WrapInfluenceOnPosition.hpp>
+//UUUU
+#include <xmloff/EnumPropertyHdl.hxx>
+#include <com/sun/star/drawing/FillStyle.hpp>
+#include "XMLFillBitmapSizePropertyHandler.hxx"
+#include "XMLBitmapLogicalSizePropertyHandler.hxx"
+#include <com/sun/star/drawing/RectanglePoint.hpp>
+#include <com/sun/star/drawing/BitmapMode.hpp>
+#include "XMLBitmapRepeatOffsetPropertyHandler.hxx"
using ::rtl::OUString;
using ::rtl::OUStringBuffer;
-//using namespace ::com::sun::star;
using namespace ::com::sun::star::uno;
using namespace ::com::sun::star::style;
-//using namespace ::com::sun::star::container;
-//using namespace ::com::sun::star::beans;
using namespace ::com::sun::star::text;
using namespace ::xmloff::token;
+
//UUUU
using namespace ::com::sun::star::drawing;
+//UUUU
+extern SvXMLEnumMapEntry aXML_FillStyle_EnumMap[];
+extern SvXMLEnumMapEntry aXML_RefPoint_EnumMap[];
+extern SvXMLEnumMapEntry aXML_BitmapMode_EnumMap[];
#define CONSTASCII_USTRINGPARAM_CMP(s) s, sizeof(s)-1
@@ -1271,18 +1275,6 @@ public:
~XMLTextPropertyHandlerFactory_Impl();
};
-//UUUU
-#include <xmloff/EnumPropertyHdl.hxx>
-#include <com/sun/star/drawing/FillStyle.hpp>
-#include "XMLFillBitmapSizePropertyHandler.hxx"
-#include "XMLBitmapLogicalSizePropertyHandler.hxx"
-#include <com/sun/star/drawing/RectanglePoint.hpp>
-#include <com/sun/star/drawing/BitmapMode.hpp>
-#include "XMLBitmapRepeatOffsetPropertyHandler.hxx"
-extern SvXMLEnumMapEntry aXML_FillStyle_EnumMap[];
-extern SvXMLEnumMapEntry aXML_RefPoint_EnumMap[];
-extern SvXMLEnumMapEntry aXML_BitmapMode_EnumMap[];
-
const XMLPropertyHandler *XMLTextPropertyHandlerFactory_Impl::GetPropertyHandler
( sal_Int32 nType ) const
{
@@ -1456,27 +1448,33 @@ const XMLPropertyHandler *XMLTextPropertyHandlerFactory_Impl::GetPropertyHandler
pHdl = new XMLNumber8OneBasedHdl();
break;
- //UUUU
- case XML_SW_TYPE_FILLSTYLE:
- pHdl = new XMLEnumPropertyHdl( aXML_FillStyle_EnumMap, ::getCppuType((const FillStyle*)0) );
- break;
- case XML_SW_TYPE_FILLBITMAPSIZE:
- pHdl = new XMLFillBitmapSizePropertyHandler();
- break;
- case XML_SW_TYPE_LOGICAL_SIZE:
- pHdl = new XMLBitmapLogicalSizePropertyHandler();
- break;
- case XML_SW_TYPE_BITMAP_REFPOINT:
- pHdl = new XMLEnumPropertyHdl( aXML_RefPoint_EnumMap, getCppuType((const RectanglePoint*)0) );
- break;
- case XML_SW_TYPE_BITMAP_MODE:
- pHdl = new XMLEnumPropertyHdl( aXML_BitmapMode_EnumMap, getCppuType((const BitmapMode*)0) );
- break;
- case XML_SW_TYPE_BITMAPREPOFFSETX:
- case XML_SW_TYPE_BITMAPREPOFFSETY:
- pHdl = new XMLBitmapRepeatOffsetPropertyHandler(XML_SW_TYPE_BITMAPREPOFFSETX == nType);
- break;
+ //UUUU
+ case XML_SW_TYPE_FILLSTYLE:
+ pHdl = new XMLEnumPropertyHdl( aXML_FillStyle_EnumMap, ::getCppuType((const FillStyle*)0) );
+ break;
+ case XML_SW_TYPE_FILLBITMAPSIZE:
+ pHdl = new XMLFillBitmapSizePropertyHandler();
+ break;
+ case XML_SW_TYPE_LOGICAL_SIZE:
+ pHdl = new XMLBitmapLogicalSizePropertyHandler();
+ break;
+ case XML_SW_TYPE_BITMAP_REFPOINT:
+ pHdl = new XMLEnumPropertyHdl( aXML_RefPoint_EnumMap, getCppuType((const RectanglePoint*)0) );
+ break;
+ case XML_SW_TYPE_BITMAP_MODE:
+ pHdl = new XMLEnumPropertyHdl( aXML_BitmapMode_EnumMap, getCppuType((const BitmapMode*)0) );
+ break;
+ case XML_SW_TYPE_BITMAPREPOFFSETX:
+ case XML_SW_TYPE_BITMAPREPOFFSETY:
+ pHdl = new XMLBitmapRepeatOffsetPropertyHandler(XML_SW_TYPE_BITMAPREPOFFSETX == nType);
+ break;
+ //UUUU
+ default:
+ {
+ OSL_ENSURE(false, "XMLPropertyHandler missing (!)");
+ break;
+ }
}
return pHdl;
diff --git a/xmloff/source/text/txtprmap.cxx b/xmloff/source/text/txtprmap.cxx
index 45b76975f6d3..3604f8980e2d 100644
--- a/xmloff/source/text/txtprmap.cxx
+++ b/xmloff/source/text/txtprmap.cxx
@@ -19,19 +19,18 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_xmloff.hxx"
#include <xmloff/txtprmap.hxx>
-
#include <tools/debug.hxx>
-
#include <xmloff/xmlnmspe.hxx>
#include <xmloff/xmltoken.hxx>
#include "txtprhdl.hxx"
+//UUUU
+#include <xmlsdtypes.hxx>
+
using namespace ::com::sun::star;
using namespace ::com::sun::star::uno;
using namespace ::xmloff::token;
@@ -88,6 +87,31 @@ XMLPropertyMapEntry aXMLParaPropMap[] =
{
// RES_UNKNOWNATR_CONTAINER
MP_E( "ParaUserDefinedAttributes", TEXT, XMLNS, XML_TYPE_ATTRIBUTE_CONTAINER | MID_FLAG_SPECIAL_ITEM, 0 ),
+
+ //UUUU fill attributes for paragraph backgrounds
+ // #125045# moved to the front to be able to exclude these in lcl_txtprmap_getMap
+ // for TEXT_PROP_MAP_SHAPE_PARA to not have these double for Shapes (which already have these)
+ GMAP( "FillStyle", XML_NAMESPACE_DRAW, XML_FILL, XML_SW_TYPE_FILLSTYLE, 0 ),
+ GMAP( "FillColor", XML_NAMESPACE_DRAW, XML_FILL_COLOR, XML_TYPE_COLOR, 0 ),
+ GMAP( "FillColor2", XML_NAMESPACE_DRAW, XML_SECONDARY_FILL_COLOR, XML_TYPE_COLOR, 0 ),
+ GMAP( "FillGradientName", XML_NAMESPACE_DRAW, XML_FILL_GRADIENT_NAME, XML_TYPE_STYLENAME|MID_FLAG_NO_PROPERTY_IMPORT, CTF_FILLGRADIENTNAME ),
+ GMAP( "FillGradientStepCount", XML_NAMESPACE_DRAW, XML_GRADIENT_STEP_COUNT, XML_TYPE_NUMBER16, 0 ),
+ GMAP( "FillHatchName", XML_NAMESPACE_DRAW, XML_FILL_HATCH_NAME, XML_TYPE_STYLENAME|MID_FLAG_NO_PROPERTY_IMPORT, CTF_FILLHATCHNAME ),
+ GMAP( "FillBackground", XML_NAMESPACE_DRAW, XML_FILL_HATCH_SOLID, XML_TYPE_BOOL, 0 ),
+ GMAP( "FillBitmapName", XML_NAMESPACE_DRAW, XML_FILL_IMAGE_NAME, XML_TYPE_STYLENAME|MID_FLAG_NO_PROPERTY_IMPORT, CTF_FILLBITMAPNAME ),
+ GMAP( "FillTransparence", XML_NAMESPACE_DRAW, XML_OPACITY, XML_TYPE_NEG_PERCENT16|MID_FLAG_MULTI_PROPERTY, 0 ), // exists in SW, too
+ GMAP( "FillTransparenceGradientName", XML_NAMESPACE_DRAW, XML_OPACITY_NAME, XML_TYPE_STYLENAME|MID_FLAG_NO_PROPERTY_IMPORT, CTF_FILLTRANSNAME ),
+ GMAP( "FillBitmapSizeX", XML_NAMESPACE_DRAW, XML_FILL_IMAGE_WIDTH, XML_SW_TYPE_FILLBITMAPSIZE|MID_FLAG_MULTI_PROPERTY, 0 ),
+ GMAP( "FillBitmapLogicalSize", XML_NAMESPACE_DRAW, XML_FILL_IMAGE_WIDTH, XML_SW_TYPE_LOGICAL_SIZE|MID_FLAG_MULTI_PROPERTY, 0 ),
+ GMAP( "FillBitmapSizeY", XML_NAMESPACE_DRAW, XML_FILL_IMAGE_HEIGHT, XML_SW_TYPE_FILLBITMAPSIZE|MID_FLAG_MULTI_PROPERTY, 0 ),
+ GMAP( "FillBitmapLogicalSize", XML_NAMESPACE_DRAW, XML_FILL_IMAGE_HEIGHT, XML_SW_TYPE_LOGICAL_SIZE|MID_FLAG_MULTI_PROPERTY, 0 ),
+ GMAP( "FillBitmapMode", XML_NAMESPACE_STYLE,XML_REPEAT, XML_SW_TYPE_BITMAP_MODE|MID_FLAG_MULTI_PROPERTY, 0 ),
+ GMAP( "FillBitmapPositionOffsetX", XML_NAMESPACE_DRAW, XML_FILL_IMAGE_REF_POINT_X, XML_TYPE_PERCENT, 0 ),
+ GMAP( "FillBitmapPositionOffsetY", XML_NAMESPACE_DRAW, XML_FILL_IMAGE_REF_POINT_Y, XML_TYPE_PERCENT, 0 ),
+ GMAP( "FillBitmapRectanglePoint", XML_NAMESPACE_DRAW, XML_FILL_IMAGE_REF_POINT, XML_SW_TYPE_BITMAP_REFPOINT, 0 ),
+ GMAP( "FillBitmapOffsetX", XML_NAMESPACE_DRAW, XML_TILE_REPEAT_OFFSET, XML_SW_TYPE_BITMAPREPOFFSETX|MID_FLAG_MULTI_PROPERTY, CTF_REPEAT_OFFSET_X ),
+ GMAP( "FillBitmapOffsetY", XML_NAMESPACE_DRAW, XML_TILE_REPEAT_OFFSET, XML_SW_TYPE_BITMAPREPOFFSETY|MID_FLAG_MULTI_PROPERTY, CTF_REPEAT_OFFSET_Y ),
+
// RES_LR_SPACE
// !!! DO NOT REORDER THE MARGINS !!!
MP_E( "ParaLeftMargin", FO, MARGIN, XML_TYPE_MEASURE|MID_FLAG_MULTI_PROPERTY, CTF_PARAMARGINALL ),
@@ -257,7 +281,7 @@ XMLPropertyMapEntry aXMLParaPropMap[] =
// RES_PARATR_WIDOWS
MP_E( "ParaWidows", FO, WIDOWS, XML_TYPE_NUMBER8, 0 ),
// RES_PARATR_TABSTOP
- MP_ED( "ParaTabStops", STYLE, TAB_STOPS, MID_FLAG_ELEMENT_ITEM|XML_TYPE_TEXT_TABSTOP, CTF_TABSTOP ), // this is not realy a string!
+ MP_ED( "ParaTabStops", STYLE, TAB_STOPS, MID_FLAG_ELEMENT_ITEM|XML_TYPE_TEXT_TABSTOP, CTF_TABSTOP ), // this is not really a string!
// RES_PARATR_HYPHENZONE
MT_E( "ParaIsHyphenation", FO, HYPHENATE, XML_TYPE_BOOL, 0 ),
MT_E( "ParaHyphenationMaxLeadingChars", FO, HYPHENATION_REMAIN_CHAR_COUNT, XML_TYPE_NUMBER16, 0 ),
@@ -316,6 +340,7 @@ XMLPropertyMapEntry aXMLParaPropMap[] =
MP_E( "ParaBackGraphicLocation", STYLE, POSITION, MID_FLAG_SPECIAL_ITEM|XML_TYPE_BUILDIN_CMP_ONLY, CTF_BACKGROUND_POS ),
MP_E( "ParaBackGraphicFilter",STYLE, FILTER_NAME, MID_FLAG_SPECIAL_ITEM|XML_TYPE_STRING, CTF_BACKGROUND_FILTER ),
MP_E( "ParaBackGraphicURL", STYLE, BACKGROUND_IMAGE, MID_FLAG_ELEMENT_ITEM|XML_TYPE_STRING, CTF_BACKGROUND_URL ),
+
// RES_BOX
MP_E( "LeftBorder", STYLE, BORDER_LINE_WIDTH, XML_TYPE_BORDER_WIDTH, CTF_ALLBORDERWIDTH ),
MP_E( "LeftBorder", STYLE, BORDER_LINE_WIDTH_LEFT, XML_TYPE_BORDER_WIDTH, CTF_LEFTBORDERWIDTH ),
@@ -637,13 +662,13 @@ XMLPropertyMapEntry aXMLFramePropMap[] =
GMAP( "FillStyle", XML_NAMESPACE_DRAW, XML_FILL, XML_SW_TYPE_FILLSTYLE, 0 ),
GMAP( "FillColor", XML_NAMESPACE_DRAW, XML_FILL_COLOR, XML_TYPE_COLOR, 0 ),
GMAP( "FillColor2", XML_NAMESPACE_DRAW, XML_SECONDARY_FILL_COLOR, XML_TYPE_COLOR, 0 ),
- GMAP( "FillGradientName", XML_NAMESPACE_DRAW, XML_FILL_GRADIENT_NAME, XML_TYPE_STYLENAME|MID_FLAG_NO_PROPERTY_IMPORT, CTF_SW_FILLGRADIENTNAME ),
+ GMAP( "FillGradientName", XML_NAMESPACE_DRAW, XML_FILL_GRADIENT_NAME, XML_TYPE_STYLENAME|MID_FLAG_NO_PROPERTY_IMPORT, CTF_FILLGRADIENTNAME ),
GMAP( "FillGradientStepCount", XML_NAMESPACE_DRAW, XML_GRADIENT_STEP_COUNT, XML_TYPE_NUMBER16, 0 ),
- GMAP( "FillHatchName", XML_NAMESPACE_DRAW, XML_FILL_HATCH_NAME, XML_TYPE_STYLENAME|MID_FLAG_NO_PROPERTY_IMPORT, CTF_SW_FILLHATCHNAME ),
+ GMAP( "FillHatchName", XML_NAMESPACE_DRAW, XML_FILL_HATCH_NAME, XML_TYPE_STYLENAME|MID_FLAG_NO_PROPERTY_IMPORT, CTF_FILLHATCHNAME ),
GMAP( "FillBackground", XML_NAMESPACE_DRAW, XML_FILL_HATCH_SOLID, XML_TYPE_BOOL, 0 ),
- GMAP( "FillBitmapName", XML_NAMESPACE_DRAW, XML_FILL_IMAGE_NAME, XML_TYPE_STYLENAME|MID_FLAG_NO_PROPERTY_IMPORT, CTF_SW_FILLBITMAPNAME ),
+ GMAP( "FillBitmapName", XML_NAMESPACE_DRAW, XML_FILL_IMAGE_NAME, XML_TYPE_STYLENAME|MID_FLAG_NO_PROPERTY_IMPORT, CTF_FILLBITMAPNAME ),
GMAP( "FillTransparence", XML_NAMESPACE_DRAW, XML_OPACITY, XML_TYPE_NEG_PERCENT16|MID_FLAG_MULTI_PROPERTY, 0 ), // exists in SW, too
- GMAP( "FillTransparenceGradientName", XML_NAMESPACE_DRAW, XML_OPACITY_NAME, XML_TYPE_STYLENAME|MID_FLAG_NO_PROPERTY_IMPORT, CTF_SW_FILLTRANSNAME ),
+ GMAP( "FillTransparenceGradientName", XML_NAMESPACE_DRAW, XML_OPACITY_NAME, XML_TYPE_STYLENAME|MID_FLAG_NO_PROPERTY_IMPORT, CTF_FILLTRANSNAME ),
GMAP( "FillBitmapSizeX", XML_NAMESPACE_DRAW, XML_FILL_IMAGE_WIDTH, XML_SW_TYPE_FILLBITMAPSIZE|MID_FLAG_MULTI_PROPERTY, 0 ),
GMAP( "FillBitmapLogicalSize", XML_NAMESPACE_DRAW, XML_FILL_IMAGE_WIDTH, XML_SW_TYPE_LOGICAL_SIZE|MID_FLAG_MULTI_PROPERTY, 0 ),
GMAP( "FillBitmapSizeY", XML_NAMESPACE_DRAW, XML_FILL_IMAGE_HEIGHT, XML_SW_TYPE_FILLBITMAPSIZE|MID_FLAG_MULTI_PROPERTY, 0 ),
@@ -652,8 +677,8 @@ XMLPropertyMapEntry aXMLFramePropMap[] =
GMAP( "FillBitmapPositionOffsetX", XML_NAMESPACE_DRAW, XML_FILL_IMAGE_REF_POINT_X, XML_TYPE_PERCENT, 0 ),
GMAP( "FillBitmapPositionOffsetY", XML_NAMESPACE_DRAW, XML_FILL_IMAGE_REF_POINT_Y, XML_TYPE_PERCENT, 0 ),
GMAP( "FillBitmapRectanglePoint", XML_NAMESPACE_DRAW, XML_FILL_IMAGE_REF_POINT, XML_SW_TYPE_BITMAP_REFPOINT, 0 ),
- GMAP( "FillBitmapOffsetX", XML_NAMESPACE_DRAW, XML_TILE_REPEAT_OFFSET, XML_SW_TYPE_BITMAPREPOFFSETX|MID_FLAG_MULTI_PROPERTY, CTF_SW_REPEAT_OFFSET_X ),
- GMAP( "FillBitmapOffsetY", XML_NAMESPACE_DRAW, XML_TILE_REPEAT_OFFSET, XML_SW_TYPE_BITMAPREPOFFSETY|MID_FLAG_MULTI_PROPERTY, CTF_SW_REPEAT_OFFSET_Y ),
+ GMAP( "FillBitmapOffsetX", XML_NAMESPACE_DRAW, XML_TILE_REPEAT_OFFSET, XML_SW_TYPE_BITMAPREPOFFSETX|MID_FLAG_MULTI_PROPERTY, CTF_REPEAT_OFFSET_X ),
+ GMAP( "FillBitmapOffsetY", XML_NAMESPACE_DRAW, XML_TILE_REPEAT_OFFSET, XML_SW_TYPE_BITMAPREPOFFSETY|MID_FLAG_MULTI_PROPERTY, CTF_REPEAT_OFFSET_Y ),
// RES_BOX
MG_ED( "LeftBorder", STYLE, BORDER_LINE_WIDTH, XML_TYPE_BORDER_WIDTH, CTF_ALLBORDERWIDTH ),
@@ -875,7 +900,11 @@ XMLPropertyMapEntry *lcl_txtprmap_getMap( sal_uInt16 nType )
pMap = aXMLTextPropMap;
break;
case TEXT_PROP_MAP_SHAPE_PARA:
- pMap = &(aXMLParaPropMap[1]);
+ // #125045# use [21] instead of [1] for text props for Shapes, idices
+ // [1..20] contain the DrawingLayer FillStyle attributes corresponding to
+ // [XATTR_FILL_FIRST .. XATTR_FILL_LAST] and would be double since Shapes
+ // already contain these (usually in aXMLSDProperties)
+ pMap = &(aXMLParaPropMap[21]);
OSL_ENSURE( pMap->meXMLName == XML_MARGIN, "shape para map changed" );
break;
case TEXT_PROP_MAP_PARA:
diff --git a/xmloff/source/text/txtstyli.cxx b/xmloff/source/text/txtstyli.cxx
index 1d5e1233f2d9..89887932ec10 100644
--- a/xmloff/source/text/txtstyli.cxx
+++ b/xmloff/source/text/txtstyli.cxx
@@ -19,8 +19,6 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_xmloff.hxx"
@@ -35,7 +33,6 @@
#include "xmloff/xmltkmap.hxx"
#include "xmloff/xmltoken.hxx"
#include "xmloff/xmluconv.hxx"
-
#include <com/sun/star/beans/XMultiPropertySet.hpp>
#include <com/sun/star/container/XNameContainer.hpp>
#include <com/sun/star/document/XEventsSupplier.hpp>
@@ -43,7 +40,6 @@
#include <com/sun/star/lang/XMultiServiceFactory.hpp>
#include <com/sun/star/style/ParagraphStyleCategory.hpp>
#include <com/sun/star/style/XStyle.hpp>
-
#include <tools/debug.hxx>
#include <tools/diagnose_ex.h>
@@ -53,6 +49,10 @@
#include <utility>
#include <vector>
+//UUUU
+#include <xmlsdtypes.hxx>
+#include <xmloff/xmlerror.hxx>
+
using ::rtl::OUString;
using ::rtl::OUStringBuffer;
@@ -422,22 +422,19 @@ void XMLTextStyleContext::FillPropertySet(
// catch the combined characters attribute
// imitate XMLPropStyleContext::FillPropertySet(...)
- UniReference < SvXMLImportPropertyMapper > xImpPrMap =
- ((SvXMLStylesContext *)GetStyles())->GetImportPropertyMapper(GetFamily());
- DBG_ASSERT( xImpPrMap.is(), "Where is the import prop mapper?" );
- if( xImpPrMap.is() )
- {
+ SvXMLStylesContext* pSvXMLStylesContext = static_cast< SvXMLStylesContext* >(GetStyles());
+ UniReference < SvXMLImportPropertyMapper > xImpPrMap = pSvXMLStylesContext->GetImportPropertyMapper(GetFamily());
+ DBG_ASSERT(xImpPrMap.is(),"Where is the import prop mapper?");
+ if(xImpPrMap.is())
+ {
// imitate SvXMLImportPropertyMapper::FillPropertySet(...)
-
// The reason for this is that we have no other way to
// efficiently intercept the value of combined characters. To
// get that value, we could iterate through the map once more,
// but instead we chose to insert the code into this
// iteration. I haven't been able to come up with a much more
// intelligent solution.
-
-
struct _ContextID_Index_Pair aContextIDs[] =
{
{ CTF_COMBINED_CHARACTERS_FIELD, -1 },
@@ -447,28 +444,56 @@ void XMLTextStyleContext::FillPropertySet(
{ CTF_FONTFAMILYNAME, -1 },
{ CTF_FONTFAMILYNAME_CJK, -1 },
{ CTF_FONTFAMILYNAME_CTL, -1 },
+
+ //UUU need special handling for DrawingLayer FillStyle names
+ { CTF_FILLGRADIENTNAME, -1 },
+ { CTF_FILLTRANSNAME, -1 },
+ { CTF_FILLHATCHNAME, -1 },
+ { CTF_FILLBITMAPNAME, -1 },
+
{ -1, -1 }
};
- // get property set info
- Reference< XPropertySetInfo > xInfo( rPropSet->getPropertySetInfo(), UNO_SET_THROW );
+ // the style families associated with the same index modulo 4
+ static sal_uInt16 aFamilies[] =
+ {
+ XML_STYLE_FAMILY_SD_GRADIENT_ID,
+ XML_STYLE_FAMILY_SD_GRADIENT_ID,
+ XML_STYLE_FAMILY_SD_HATCH_ID,
+ XML_STYLE_FAMILY_SD_FILL_IMAGE_ID
+ };
+ // get property set info
+ Reference< XPropertySetInfo > xInfo;
+ UniReference< XMLPropertySetMapper > rPropMapper;
bool bAutomatic = false;
- if( ((SvXMLStylesContext *)GetStyles())->IsAutomaticStyle() &&
- ( GetFamily() == XML_STYLE_FAMILY_TEXT_TEXT || GetFamily() == XML_STYLE_FAMILY_TEXT_PARAGRAPH ) )
+
+ if(pSvXMLStylesContext->IsAutomaticStyle() &&
+ (XML_STYLE_FAMILY_TEXT_TEXT == GetFamily() || XML_STYLE_FAMILY_TEXT_PARAGRAPH == GetFamily()))
{
bAutomatic = true;
+
if( GetAutoName().getLength() )
{
OUString sAutoProp = ( GetFamily() == XML_STYLE_FAMILY_TEXT_TEXT ) ?
OUString( RTL_CONSTASCII_USTRINGPARAM("CharAutoStyleName") ):
OUString( RTL_CONSTASCII_USTRINGPARAM("ParaAutoStyleName") );
+
try
{
+ if(!xInfo.is())
+ {
+ xInfo = rPropSet->getPropertySetInfo();
+ }
+
if ( xInfo->hasPropertyByName( sAutoProp ) )
+ {
rPropSet->setPropertyValue( sAutoProp, makeAny(GetAutoName()) );
+ }
else
+ {
bAutomatic = false;
+ }
}
catch( const RuntimeException& ) { throw; }
catch( const Exception& )
@@ -478,13 +503,19 @@ void XMLTextStyleContext::FillPropertySet(
}
}
}
+
if( bAutomatic )
+ {
xImpPrMap->CheckSpecialContext( GetProperties(), rPropSet, aContextIDs );
+ }
else
+ {
xImpPrMap->FillPropertySet( GetProperties(), rPropSet, aContextIDs );
+ }
- // have we found a combined characters
sal_Int32 nIndex = aContextIDs[0].nIndex;
+
+ // have we found a combined characters
if ( nIndex != -1 )
{
Any& rAny = GetProperties()[nIndex].maValue;
@@ -497,77 +528,146 @@ void XMLTextStyleContext::FillPropertySet(
// value; if we didn't find one, we'll set to false, the file
// format default.
// border-model: same
- if( IsDefaultStyle() && GetFamily() == XML_STYLE_FAMILY_TABLE_ROW )
+ if(IsDefaultStyle() && XML_STYLE_FAMILY_TABLE_ROW == GetFamily())
{
- OUString sIsSplitAllowed =
- OUString( RTL_CONSTASCII_USTRINGPARAM( "IsSplitAllowed" ) );
- DBG_ASSERT( rPropSet->getPropertySetInfo()->hasPropertyByName( sIsSplitAllowed ),
- "property missing?" );
- rPropSet->setPropertyValue( sIsSplitAllowed,
- (aContextIDs[1].nIndex == -1)
- ? makeAny( false )
- : GetProperties()[aContextIDs[1].nIndex].maValue );
+ OUString sIsSplitAllowed = OUString( RTL_CONSTASCII_USTRINGPARAM( "IsSplitAllowed" ) );
+ DBG_ASSERT( rPropSet->getPropertySetInfo()->hasPropertyByName( sIsSplitAllowed ), "property missing?" );
+ rPropSet->setPropertyValue(
+ sIsSplitAllowed,
+ (aContextIDs[1].nIndex == -1) ? makeAny( false ) : GetProperties()[aContextIDs[1].nIndex].maValue );
}
- if( IsDefaultStyle() && GetFamily() == XML_STYLE_FAMILY_TABLE_TABLE )
+ if(IsDefaultStyle() && XML_STYLE_FAMILY_TABLE_TABLE == GetFamily())
{
- OUString sCollapsingBorders(
- OUString( RTL_CONSTASCII_USTRINGPARAM( "CollapsingBorders" ) ) );
- DBG_ASSERT( rPropSet->getPropertySetInfo()->hasPropertyByName( sCollapsingBorders ),
- "property missing?" );
- rPropSet->setPropertyValue( sCollapsingBorders,
+ OUString sCollapsingBorders(OUString( RTL_CONSTASCII_USTRINGPARAM( "CollapsingBorders" ) ) );
+ DBG_ASSERT( rPropSet->getPropertySetInfo()->hasPropertyByName( sCollapsingBorders ), "property missing?" );
+ rPropSet->setPropertyValue(
+ sCollapsingBorders,
(aContextIDs[2].nIndex == -1)
? makeAny( false )
: GetProperties()[aContextIDs[2].nIndex].maValue );
}
- // check for StarBats and StarMath fonts
-
- // iterate over aContextIDs entries 3..6
- for ( sal_Int32 i = 3; i < 7; i++ )
+ // iterate over aContextIDs entries, start with 3, prev ones are already used above
+ for(sal_uInt16 i(3); aContextIDs[i].nContextID != -1; i++)
{
nIndex = aContextIDs[i].nIndex;
+
if ( nIndex != -1 )
{
// Found!
struct XMLPropertyState& rState = GetProperties()[nIndex];
- Any rAny = rState.maValue;
- sal_Int32 nMapperIndex = rState.mnIndex;
-
- // Now check for font name in rState and set corrected value,
- // if necessary.
- OUString sFontName;
- rAny >>= sFontName;
- if ( sFontName.getLength() > 0 )
+
+ switch(aContextIDs[i].nContextID)
{
- OUString sStarBats( RTL_CONSTASCII_USTRINGPARAM("StarBats" ) );
- OUString sStarMath( RTL_CONSTASCII_USTRINGPARAM("StarMath" ) );
- if ( sFontName.equalsIgnoreAsciiCase( sStarBats ) ||
- sFontName.equalsIgnoreAsciiCase( sStarMath ) )
+ case CTF_FILLGRADIENTNAME:
+ case CTF_FILLTRANSNAME:
+ case CTF_FILLHATCHNAME:
+ case CTF_FILLBITMAPNAME:
+ {
+ // DrawingLayer FillStyle nameŽneeds to be mapped to DisplayName
+ rtl::OUString sStyleName;
+ rState.maValue >>= sStyleName;
+
+ //UUUU translate the used name from ODF intern to the name used in the Model
+ sStyleName = GetImport().GetStyleDisplayName(aFamilies[i - 7], sStyleName);
+
+ if(bAutomatic)
+ {
+ // in this case the rPropSet got not really filled since above the call to
+ // CheckSpecialContext was used and not FillPropertySet, thus the below call to
+ // setPropertyValue can fail/will not be useful (e.g. when the rPropSet
+ // is a SwXTextCursor).
+ // This happens for AutoStyles which are already filled in XMLPropStyleContext::CreateAndInsert,
+ // thus the whole mechanism based on _ContextID_Index_Pair will not work
+ // in that case. Thus the slots which need to be converted already get
+ // converted there (its called first) and not here (see
+ // translateNameBasedDrawingLayerFillStyleDefinitionsToStyleDisplayNames)
+ // For convenience, still Write back the corrected value to the XMLPropertyState entry
+ rState.maValue <<= sStyleName;
+ break;
+ }
+
+ // Still needed if it's not an AutomaticStyle (!)
+ try
+ {
+ if(!rPropMapper.is())
+ {
+ rPropMapper = xImpPrMap->getPropertySetMapper();
+ }
+
+ // set property
+ const rtl::OUString& rPropertyName = rPropMapper->GetEntryAPIName(rState.mnIndex);
+
+ if(!xInfo.is())
+ {
+ xInfo = rPropSet->getPropertySetInfo();
+ }
+
+ if(xInfo->hasPropertyByName(rPropertyName))
+ {
+ rPropSet->setPropertyValue(rPropertyName,Any(sStyleName));
+ }
+ }
+ catch(::com::sun::star::lang::IllegalArgumentException& e)
+ {
+ Sequence< rtl::OUString > aSeq(1);
+ aSeq[0] = sStyleName;
+ GetImport().SetError(XMLERROR_STYLE_PROP_VALUE | XMLERROR_FLAG_WARNING, aSeq, e.Message, NULL);
+ }
+ break;
+ }
+ default:
{
- // construct new value
- sFontName = OUString(
- RTL_CONSTASCII_USTRINGPARAM("StarSymbol") );
- Any aAny( rAny );
- aAny <<= sFontName;
-
- // get property set mapper
- UniReference<XMLPropertySetMapper> rPropMapper =
- xImpPrMap->getPropertySetMapper();
-
- // set property
- OUString rPropertyName(
- rPropMapper->GetEntryAPIName(nMapperIndex) );
- if ( xInfo->hasPropertyByName( rPropertyName ) )
+ // check for StarBats and StarMath fonts
+ Any rAny = rState.maValue;
+ sal_Int32 nMapperIndex = rState.mnIndex;
+
+ // Now check for font name in rState and set corrected value,
+ // if necessary.
+ OUString sFontName;
+ rAny >>= sFontName;
+
+ if(sFontName.getLength() > 0)
{
- rPropSet->setPropertyValue( rPropertyName, aAny );
+ OUString sStarBats(RTL_CONSTASCII_USTRINGPARAM("StarBats"));
+ OUString sStarMath(RTL_CONSTASCII_USTRINGPARAM("StarMath"));
+ if(sFontName.equalsIgnoreAsciiCase(sStarBats) ||
+ sFontName.equalsIgnoreAsciiCase(sStarMath))
+ {
+ // construct new value
+ sFontName = OUString(
+ RTL_CONSTASCII_USTRINGPARAM("StarSymbol"));
+ Any aAny(rAny);
+ aAny <<= sFontName;
+
+ if(!rPropMapper.is())
+ {
+ rPropMapper = xImpPrMap->getPropertySetMapper();
+ }
+
+ // set property
+ OUString rPropertyName(rPropMapper->GetEntryAPIName(nMapperIndex));
+
+ if(!xInfo.is())
+ {
+ xInfo = rPropSet->getPropertySetInfo();
+ }
+
+ if(xInfo->hasPropertyByName(rPropertyName))
+ {
+ rPropSet->setPropertyValue(rPropertyName,aAny);
+ }
+ }
+ // else: "normal" style name -> no correction is necessary
}
+ // else: no style name found -> illegal value -> ignore
}
- // else: "normal" style name -> no correction is necessary
}
- // else: no style name found -> illegal value -> ignore
}
}
}
}
+
+//eof
diff --git a/xmloff/source/text/txtvfldi.cxx b/xmloff/source/text/txtvfldi.cxx
index 7a2e5c32b896..007a3c539966 100644
--- a/xmloff/source/text/txtvfldi.cxx
+++ b/xmloff/source/text/txtvfldi.cxx
@@ -917,7 +917,7 @@ XMLVariableDeclImportContext::XMLVariableDeclImportContext(
break;
}
default:
- DBG_ERROR("unkown varfield type");
+ DBG_ERROR("unknown varfield type");
} // switch
} // else: no field master found/constructed
} // else: no sequence-decl
@@ -977,7 +977,7 @@ sal_Bool XMLVariableDeclImportContext::FindFieldMaster(
{
OUString sNew;
- // FIXME! cant find if name is taken already!!!!
+ // FIXME! can't find if name is taken already!!!!
nCollisionCount++;
OUStringBuffer aBuf;
@@ -1002,7 +1002,7 @@ sal_Bool XMLVariableDeclImportContext::FindFieldMaster(
// find new name that is not taken
OUString sNew;
- // FIXME! cant find if name is taken already!!!!
+ // FIXME! can't find if name is taken already!!!!
nCollisionCount++;
OUStringBuffer aBuf;
diff --git a/xmloff/source/transform/OOo2Oasis.cxx b/xmloff/source/transform/OOo2Oasis.cxx
index 6a9bf7eaa60e..52cf26b8da85 100644
--- a/xmloff/source/transform/OOo2Oasis.cxx
+++ b/xmloff/source/transform/OOo2Oasis.cxx
@@ -719,7 +719,7 @@ static XMLTransformerActionInit aStyleRefActionTable[] =
// OOO_SHAPE_ACTIONS
// !!ATTENTION!! If you change something here, please also change
-// aConnectorActionTable if apropriate
+// aConnectorActionTable if appropriate
static XMLTransformerActionInit aShapeActionTable[] =
{
ENTRY0( SVG, X, XML_ATACTION_INCH2IN ),
diff --git a/xmloff/source/transform/Oasis2OOo.cxx b/xmloff/source/transform/Oasis2OOo.cxx
index fefcd1127aa1..715ce5163983 100644
--- a/xmloff/source/transform/Oasis2OOo.cxx
+++ b/xmloff/source/transform/Oasis2OOo.cxx
@@ -729,7 +729,7 @@ static XMLTransformerActionInit aParaActionTable[] =
};
// !!ATTENTION!! If you change something here, please also change
-// aConnectorActionTable if apropriate
+// aConnectorActionTable if appropriate
static XMLTransformerActionInit aShapeActionTable[] =
{
ENTRY1( DRAW, STYLE_NAME, XML_ATACTION_DECODE_STYLE_NAME_REF,
diff --git a/xmloff/source/transform/TransformerBase.cxx b/xmloff/source/transform/TransformerBase.cxx
index 264671c54b32..90f2a9c351a8 100644
--- a/xmloff/source/transform/TransformerBase.cxx
+++ b/xmloff/source/transform/TransformerBase.cxx
@@ -321,7 +321,7 @@ void SAL_CALL XMLTransformerBase::startElement( const OUString& rName,
if( !xContext.is() )
xContext = new XMLTransformerContext( *this, rName );
- // Remeber old namespace map.
+ // Remember old namespace map.
if( pRewindMap )
xContext->SetRewindMap( pRewindMap );
diff --git a/xmloff/source/transform/TransformerBase.hxx b/xmloff/source/transform/TransformerBase.hxx
index 5ceebe431c56..28e63883ae98 100644
--- a/xmloff/source/transform/TransformerBase.hxx
+++ b/xmloff/source/transform/TransformerBase.hxx
@@ -85,7 +85,7 @@ protected:
// this method may return an empty reference when the transformer service
// was created outside the xmloff environment.
- // It is strictly forbiden to use this as a write access to the model!
+ // It is strictly forbidden to use this as a write access to the model!
const ::com::sun::star::uno::Reference< ::com::sun::star::frame::XModel >& getModel() const { return mxModel; }
public:
diff --git a/xmlscript/source/xmldlg_imexp/xmldlg_impmodels.cxx b/xmlscript/source/xmldlg_imexp/xmldlg_impmodels.cxx
index 96d36c2a2d2f..78bd2ad1c189 100644
--- a/xmlscript/source/xmldlg_imexp/xmldlg_impmodels.cxx
+++ b/xmlscript/source/xmldlg_imexp/xmldlg_impmodels.cxx
@@ -450,7 +450,7 @@ void FormattedFieldElement::endElement()
}
catch (util::MalformedNumberFormatException & exc)
{
- OSL_ENSURE( 0, "### util::MalformedNumberFormatException occured!" );
+ OSL_ENSURE( 0, "### util::MalformedNumberFormatException occurred!" );
// rethrow
throw xml::sax::SAXException( exc.Message, Reference< XInterface >(), Any() );
}