From 06229f3ed3287fd88ffe76ed2abe3942618cfc8b Mon Sep 17 00:00:00 2001 From: Release Engineers Date: Sun, 12 Apr 2009 04:24:43 +0000 Subject: [PATCH 01/12] CWS-TOOLING: integrate CWS macshortcuts01 2009-04-02 18:13:38 +0200 pl r270430 : CWS-TOOLING: rebase CWS macshortcuts01 to trunk@270033 (milestone: DEV300:m45) 2009-03-04 13:02:01 +0100 pl r268816 : make compile with oldish gtk headers 2009-03-04 11:23:41 +0100 rvojta r268799 : Remove #ifndef MACOSX as Mac OS X X11 port is obsolote, no need to check for non Mac OS X 2009-03-03 16:33:34 +0100 rvojta r268764 : Meta/Super to MOD3 on all Unix platforms except Mac OS X 2009-03-03 16:08:46 +0100 rvojta r268744 : Map GDK_Meta_L/R and GDK_Super_L/R keys to KEY_MOD3 on Unix systems except Mac OS X 2009-03-03 16:04:23 +0100 rvojta r268742 : IsMod3(), IsLeftMod3(), IsRightMod3() added 2009-03-03 16:03:48 +0100 rvojta r268741 : MODKEY_LMOD3, MODKEY_RMOD3, MODKEY_MOD3 support 2009-02-28 00:09:26 +0100 rvojta r268620 : New KeyCode constructors support, by default MOD3 is not used here (probably temporary solution) 2009-02-25 22:53:02 +0100 rvojta r268469 : MOD3 support (META_DOWN_MASK) 2009-02-25 13:22:13 +0100 rvojta r268435 : Cmd-M to minimize window, Cmd-Option-M to minimize all windows 2009-02-25 11:09:20 +0100 rvojta r268417 : Add back F11 for non Mac OS X platforms (removed by accident in r268405) 2009-02-24 18:32:31 +0100 rvojta r268405 : F11 replaced by Cmd-T on Mac OS X 2009-02-23 15:21:53 +0100 sb r268358 : #i99296# support values with both xml:lang and install:module (which are moved into the spool tree, not the res tree) 2009-02-16 22:45:34 +0100 rvojta r267839 : Multiplatform shortcuts support 2009-02-16 22:41:03 +0100 rvojta r267838 : Use install:module instead of separate xcu file 2009-02-16 18:35:36 +0100 rvojta r267833 : Removed accelerators target 2009-02-16 09:27:42 +0100 rvojta r267776 : MOD3 added 2009-02-16 09:18:32 +0100 rvojta r267775 : MOD3 support 2009-02-16 09:17:11 +0100 rvojta r267774 : MOD3 support 2009-02-15 22:11:37 +0100 rvojta r267773 : Check for MOD3 too 2009-02-15 22:11:15 +0100 rvojta r267772 : Check for MOD3 too 2009-02-15 22:10:37 +0100 rvojta r267771 : Check for MOD3 too 2009-02-15 22:10:15 +0100 rvojta r267770 : Check for MOD3 during mouse event too 2009-02-15 22:09:54 +0100 rvojta r267769 : IsMod3() added 2009-02-15 19:34:59 +0100 rvojta r267768 : MOD3 added (Ctrl on Mac OS X) 2009-02-15 19:33:43 +0100 rvojta r267767 : Cmd-M -> Ctrl-M for default format 2009-02-15 19:32:19 +0100 rvojta r267766 : MOD3 added (Ctrl on Mac OS X) 2009-02-15 19:31:30 +0100 rvojta r267765 : MOD3 added (Ctrl on Mac OS X) 2009-02-15 19:31:04 +0100 rvojta r267764 : MOD3 added (Ctrl on Mac OS X) 2009-02-15 19:30:33 +0100 rvojta r267763 : MOD3 added (Ctrl on Mac OS X) 2009-02-15 19:30:09 +0100 rvojta r267762 : MOD3 added (Ctrl on Mac OS X) 2009-02-13 22:11:22 +0100 rvojta r267751 : Cmd-Shift-Z for .uno:Redo 2009-02-13 22:04:19 +0100 rvojta r267748 : F11 -> Cmd-T for .uno:DesignerDialog 2009-02-13 21:09:11 +0100 rvojta r267743 : F11 -> Cmd-T (all occurences) 2009-02-13 19:47:21 +0100 rvojta r267741 : accelerators target added for Mac OS X shortcuts 2009-02-13 19:46:58 +0100 rvojta r267740 : Spreadsheet - replace F11 with Cmd-T 2009-02-13 19:24:19 +0100 rvojta r267739 : Remove Accelerators-Mac.xcs 2009-02-13 18:50:01 +0100 rvojta r267738 : Accelerators-Mac.xcs test 2009-02-13 18:48:10 +0100 rvojta r267737 : Accelerators-Mac.xcu added 2009-02-13 18:46:48 +0100 rvojta r267736 : F11 -> Cmd-T for stylist in Spreadsheet --- sd/source/ui/func/futext.cxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sd/source/ui/func/futext.cxx b/sd/source/ui/func/futext.cxx index a6c7c6f073ae..265aedcd90dc 100644 --- a/sd/source/ui/func/futext.cxx +++ b/sd/source/ui/func/futext.cxx @@ -982,7 +982,7 @@ BOOL FuText::KeyInput(const KeyEvent& rKEvt) } USHORT nKey = nCode.GetCode(); - KeyCode aKeyCode (nKey, bShift, nCode.IsMod1(), nCode.IsMod2() ); + KeyCode aKeyCode (nKey, bShift, nCode.IsMod1(), nCode.IsMod2(), nCode.IsMod3() ); KeyEvent aKEvt(rKEvt.GetCharCode(), aKeyCode); BOOL bOK = TRUE; From 921bf4ca35a91963e0692f99d4297268c70acb9b Mon Sep 17 00:00:00 2001 From: Ivo Hinkelmann Date: Tue, 21 Apr 2009 16:06:18 +0000 Subject: [PATCH 02/12] CWS-TOOLING: integrate CWS layoutdialogs2 2009-04-09 10:11:14 +0200 mba r270680 : defective merge sets seem to have brought config_office back 2009-04-02 18:00:52 +0200 mba r270429 : #i100503#: make tralay work without LD_LIBRARY_PATH 2009-04-01 13:27:58 +0200 mba r270320 : warning on Solaris fixed 2009-03-31 22:15:03 +0200 mba r270293 : CWS-TOOLING: rebase CWS layoutdialogs2 to trunk@270033 (milestone: DEV300:m45) 2009-03-16 13:05:08 +0100 mba r269526 : fixed some compiler warnings of the Sun compiler 2009-03-11 15:32:42 +0100 mba r269337 : some problems for ENABLE_LAYOUT fixed 2009-03-09 16:05:32 +0100 mba r269197 : merge conflict solved 2009-03-09 15:09:55 +0100 mba r269194 : merge conflict solved 2009-03-09 15:09:35 +0100 mba r269193 : merge conflict solved 2009-03-06 22:12:47 +0100 mba r269052 : compilation error fixed 2009-03-06 17:36:37 +0100 mba r269033 : integer warning fixed 2009-03-06 10:31:19 +0100 mba r268983 : CWS-TOOLING: rebase CWS layoutdialogs2 to trunk@268395 (milestone: DEV300:m42) 2009-03-03 20:03:59 +0100 jcn r268777 : Add Notes checkbox to find-and-replace dialog in anticipation of m40 resync. 2009-03-03 15:56:20 +0100 jcn r268737 : Apply layout-find-dialog-crash-fix.diff -- fixes crasher. From http://svn.gnome.org/viewvc/ooo-build?view=revision&revision=15378 2009-02-06 17:41:24 +0100 mba r267479 : arrrrgh - svx headers must be included behind the magic define 2009-02-05 19:44:42 +0100 mba r267439 : seems that msvc preprocessor is thick as a brick 2009-02-05 15:15:16 +0100 mba r267425 : pch added 2009-02-05 08:14:01 +0100 mba r267409 : double defined symbols fixed 2009-02-05 08:13:14 +0100 mba r267408 : compile Languagebox and FontListbox with ENABLE_LAYOUT 2009-02-05 08:07:35 +0100 mba r267406 : warning fixed 2009-02-05 08:06:42 +0100 mba r267405 : warnings and errors fixed 2009-01-30 15:51:52 +0100 mba r267206 : export Container class to compile code in sfx2 2009-01-30 15:51:14 +0100 mba r267205 : remove LAYOUT_EXPERIMENTAL from sfx2, everything now compiles with ENABLE_LAYOUT 2009-01-28 17:01:27 +0100 mba r267069 : fixed namespace problems in sfx2 2009-01-28 16:59:48 +0100 mba r267068 : fixed namespace problems 2009-01-24 13:57:06 +0100 mba r266877 : move svx stuff to experimental 2009-01-24 13:56:11 +0100 mba r266876 : move svx stuff to experimental 2009-01-24 13:52:09 +0100 mba r266875 : put sfx stuff into experimental 2009-01-24 13:28:08 +0100 mba r266874 : put sfx stuff into experimental 2009-01-24 13:26:38 +0100 mba r266873 : help msvc++ compiler a bit 2009-01-24 13:24:43 +0100 mba r266872 : warning removed 2009-01-24 13:23:21 +0100 mba r266871 : moved svx stuff to svx; put sfx stuff into experimental 2009-01-24 13:22:04 +0100 mba r266870 : moved svx stuff to svx 2009-01-05 16:35:34 +0100 jcn r265879 : config_office/configure: Regenerate. Fixes naive builds. 2008-12-17 16:06:25 +0100 jcn r265638 : Wordcount: minor HIG tweaks. 2008-12-17 16:06:21 +0100 jcn r265637 : Zoom: minor HIG spacing tweaks. 2008-12-17 16:06:16 +0100 jcn r265636 : Zoom: fix align-test and update zoom.xml. 2008-12-17 16:06:12 +0100 jcn r265635 : Zoom: add align-test.xml to illustrate zoom alignment bug. 2008-12-17 16:06:07 +0100 jcn r265634 : Find-and-Replace: request font-style-name="Bold", does not seem to work. 2008-12-17 16:06:03 +0100 jcn r265633 : Find-and-Replace: Add alignment for combobox labels. 2008-12-17 16:05:59 +0100 jcn r265632 : Find-and-Replace: Replace pairs of with . Fixes ugly non-emptiness of more-. 2008-12-17 16:05:56 +0100 jcn r265631 : Find-and-Replace: add nice 12pt border. 2008-12-17 16:05:51 +0100 jcn r265630 : Find-and-Replace: also add rowsep at lower fixedline. 2008-12-17 16:05:47 +0100 jcn r265629 : Find-and-Replace: Add poor man's colsep and rowsep substitute spaces. 2008-12-17 16:05:43 +0100 jcn r265628 : Find-and-Replace: use for buttons. 2008-12-17 16:05:40 +0100 jcn r265627 : Find-and-Replace: add s and use cnt:expand="false" to stop vertical button expansion. 2008-12-17 16:05:36 +0100 jcn r265626 : Find-and-Replace: use sc icon. Fixes FIND button height. 2008-12-17 16:05:31 +0100 jcn r265625 : Bugfix have empty/invisible containers not take up space. 2008-12-17 16:05:27 +0100 jcn r265624 : Find-and-replace: Fix/remove most property errors. 2008-12-17 16:05:23 +0100 jcn r265623 : Table: make x, y expand default. 2008-12-17 16:05:18 +0100 jcn r265622 : Use OSL_TRACE rather than printf. Fixes warning visibility. 2008-12-17 16:05:14 +0100 jcn r265621 : Boxtest: add pair to trigger property errors. 2008-12-17 16:05:10 +0100 jcn r265620 : Junk extra
from boxtest. Fixes visual output. 2008-12-17 16:05:05 +0100 jcn r265619 : Eradicate PROPHELPER_SET_INFO: junk static caching. 2008-12-17 16:05:01 +0100 jcn r265618 : Update awk+sed localize generation rules. Fixes multiple (wrong) titles in Find & Replace. 2008-12-17 16:04:56 +0100 jcn r265617 : Use dash (-) instead of underscore (_) to separate language modifiers. Fixes en_GB etc. 2008-12-17 16:04:51 +0100 jcn r265616 : Add "defbutton=true" to dialogs. Fixes ENTER doing default action: n#439222. 2008-12-17 16:04:45 +0100 jcn r265615 : Michael's new table-based find and replace. 2008-12-17 16:04:40 +0100 jcn r265614 : Apply Michael's boxtest patch. 2008-12-17 16:04:36 +0100 jcn r265613 : Make sort-options experimental. Part II. Fixes crasher n-44.patch. Fixes crasher: n#442036. 2008-12-17 16:04:31 +0100 jcn r265612 : Make sort-options experimental. Part I. 2008-12-17 16:04:26 +0100 jcn r265611 : Add --enable-layout-experimental configure switch. Part II. Typo in configure.in, add set_soenv entry. 2008-12-17 16:04:21 +0100 jcn r265610 : Add --enable-layout-experimental configure switch. Default off. 2008-11-26 16:25:18 +0100 mba r264417 : fixed compiler warnings 2008-11-26 15:52:02 +0100 mba r264407 : fixed compiler warnings 2008-11-26 15:40:44 +0100 mba r264402 : fixed compiler warnings 2008-11-26 14:50:47 +0100 mba r264395 : fixed compiler warnings 2008-11-26 14:39:12 +0100 mba r264393 : fixed compiler warnings 2008-11-26 14:38:49 +0100 mba r264392 : fixed compiler warnings 2008-11-26 14:38:31 +0100 mba r264391 : fixed compiler warnings 2008-11-26 14:38:13 +0100 mba r264390 : fixed compiler warnings 2008-11-26 14:37:38 +0100 mba r264389 : fixed compiler warnings 2008-11-26 10:11:17 +0100 mba r264352 : fixed compiler warnings 2008-11-26 10:06:12 +0100 mba r264351 : fixed compiler warnings 2008-11-26 09:58:28 +0100 mba r264347 : fixed compiler warnings 2008-11-26 09:50:41 +0100 mba r264345 : fixed compiler warnings 2008-11-26 09:46:10 +0100 mba r264343 : fixed compiler warnings 2008-10-22 10:57:09 +0200 mba r262584 : fixed small error resulting from resolved merged conflicts 2008-10-22 10:56:21 +0200 mba r262583 : fixed some small errors resulting from resolved merged conflicts 2008-10-20 19:29:27 +0200 jcn r262557 : layoutdialogs2: Remove stray patches. 2008-10-20 19:29:22 +0200 jcn r262556 : layoutdialogs2: Force resize also on second show after hiding. 2008-10-20 19:29:17 +0200 jcn r262555 : layoutdialogs2: Do not trigger handlers for api calls. 2008-10-20 19:29:13 +0200 jcn r262554 : layoutdialogs2: Use disable/enable instead of hide/show for currency box. Fixes monster lisbox. 2008-10-20 19:29:09 +0200 jcn r262553 : layoutdialogs2: Use line-count instead of linecount. Fixes sizing of listboxes. 2008-10-20 19:29:04 +0200 jcn r262552 : layoutdialogs2: vcl: respect line-count also for non-dropdown listbox. 2008-10-20 19:28:59 +0200 jcn r262551 : layoutdialogs2: Update to svn:r14142 patched. 2008-10-20 19:28:51 +0200 jcn r262550 : layoutdialogs2: Manual tweaks in number-format.xml. 2008-10-20 19:28:45 +0200 jcn r262549 : layoutdialogs2: Integrate Number Format tabpage into Format Cell dialog. 2008-10-20 19:28:36 +0200 jcn r262548 : layoutdialogs2: Windows build fixes. Thanks Noel. 2008-10-20 19:28:31 +0200 jcn r262547 : layoutdialogs2: Layout Format Cells/Number Format tabpage. 2008-10-20 19:28:24 +0200 jcn r262546 : layoutdialogs2: Remove sc/uiconfig/layout/localize.sdf. 2008-10-20 19:28:20 +0200 jcn r262545 : layoutdialogs2: --enable-debug link fix 2008-10-20 19:28:16 +0200 jcn r262544 : layoutdialogs2: Add missing localize.sdf dependency. Thanks, Petr. 2008-10-20 19:28:12 +0200 jcn r262543 : layoutdialogs2: svx linx fixlet. 2008-10-20 19:28:06 +0200 jcn r262542 : layoutdialogs2: Move layout/* to layout/core, vclcompat to layout/vcl. Distribute layout headers. Fixes sfx2 layout core includes. 2008-10-20 19:27:58 +0200 jcn r262541 : layoutdialogs2: Build fix for --enable-layout. 2008-10-20 19:27:54 +0200 jcn r262540 : layoutdialogs2: Generate localize.sdf files in uiconfig. 2008-10-20 19:27:47 +0200 jcn r262539 : layoutdialogs2: Minimalize deprecated String use further by using OUString. 2008-10-20 19:27:42 +0200 jcn r262538 : layoutdialogs2: Implement LocalizedString.GetToken and use it for aCalcBtn. Fixes empty label. 2008-10-20 19:27:36 +0200 jcn r262537 : layoutdialogs2: Add layout::Sfx*Dialog wrapper. 2008-10-20 19:27:29 +0200 jcn r262536 : layoutdialogs2: Introduce Closing*Dialog wrappers fixing closing with ESC. 2008-10-20 19:27:24 +0200 jcn r262535 : layoutdialogs2: Support from sfx2. 2008-10-20 19:27:17 +0200 jcn r262534 : layoutdialogs2: Rename find-&-replace.xml to find-and-replace.xml. Fixes split build with failing solenv patch. 2008-10-20 19:27:12 +0200 jcn r262533 : layoutdialogs2: Do not build sfx2 when --disable-layout. 2008-10-20 19:27:08 +0200 jcn r262532 : layoutdialogs2: Ignore ja/ too. 2008-10-20 19:27:04 +0200 jcn r262531 : layoutdialogs2: Add destructors for VCLXButton, VCLXComboBox. 2008-10-20 19:26:58 +0200 jcn r262530 : layoutdialogs2: Make dialogs closable with ESC: wordcount, zoom, message-box, move-copy-sheet, insert-sheet. 2008-10-20 19:26:52 +0200 jcn r262529 : layoutdialogs2: Move some implementations to .cxx. 2008-10-20 19:26:47 +0200 jcn r262528 : layoutdialogs2: Fix simple editor crasher. 2008-10-20 19:26:43 +0200 jcn r262527 : layoutdialogs2: Further cleanup: remove clean & delete from wrapperGone. 2008-10-20 19:26:38 +0200 jcn r262526 : layoutdialogs2: Add reset logic to ~WindowImpl, plugs ComboBox and Dialog leaks. 2008-10-20 19:26:34 +0200 jcn r262525 : layoutdialogs2: Interesting hack: only leaks ::ComboBox and ::Dialog. 2008-10-20 19:26:29 +0200 jcn r262524 : layoutdialogs2: Build fix. 2008-10-20 19:26:24 +0200 jcn r262523 : layoutdialogs2: Find&Replace duplicate disposal workaround inside layout. 2008-10-20 19:26:19 +0200 jcn r262522 : layoutdialogs2: Revert "Terrible crasher-fix hack. Do not dispose Dialog or any FocusHandler owners." This reverts commit 5222b5b123a2e6c88494983bd875de574f365bae. 2008-10-20 19:26:14 +0200 jcn r262521 : layoutdialogs2: Terrible crasher-fix hack. Do not dispose Dialog or any FocusHandler owners. 2008-10-20 19:26:08 +0200 jcn r262520 : layoutdialogs2: Revert "ComboBox: crash down to (Dialog's) VCLXWindowImpl::DestroyOutputDevice();" This reverts commit b423129aca295e84ef5986149b6ee71eb7ba0aa3. 2008-10-20 19:26:03 +0200 jcn r262519 : layoutdialogs2: ComboBox: crash down to (Dialog's) VCLXWindowImpl::DestroyOutputDevice(); 2008-10-20 19:25:57 +0200 jcn r262518 : layoutdialogs2: Handler and debug cleanup. 2008-10-20 19:25:52 +0200 jcn r262517 : layoutdialogs2: Minimally remove FixedText workaround. 2008-10-20 19:25:47 +0200 jcn r262516 : layoutdialogs2: Preparations for FocusHdl fix. 2008-10-20 19:25:42 +0200 jcn r262515 : layoutdialogs2: Remove vclxwindows patch by using handler hackery. 2008-10-20 19:25:38 +0200 jcn r262514 : layoutdialogs2: Don't call deleted dialog. Hdler reset tweaks. Fixes Find&Replace. 2008-10-20 19:25:34 +0200 jcn r262513 : layoutdialogs2: Hdler and disposing cleanups. 2008-10-20 19:25:29 +0200 jcn r262512 : layoutdialogs2: Prevent Find&Replace window from being deleted twice. 2008-10-20 19:25:24 +0200 jcn r262511 : layoutdialogs2: Add destructor to SvxSearchDialogWrapper. Fixes second invocation crasher. 2008-10-20 19:25:19 +0200 jcn r262510 : layoutdialogs2: Make Find&Replace work (once) with minimal client code changes. 2008-10-20 19:25:13 +0200 jcn r262509 : layoutdialogs2: Add ComboBox/FixedText debug switching. 2008-10-20 19:25:08 +0200 jcn r262508 : layoutdialogs2: Add destructors resetting handlers. 2008-10-20 19:25:03 +0200 jcn r262507 : layoutdialogs2: Static cast fixes. 2008-10-20 19:24:59 +0200 jcn r262506 : layoutdialogs2: Always set button handler. Fixes pushbuttons. 2008-10-20 19:24:55 +0200 jcn r262505 : layoutdialogs2: Revert "Move FocusHandlers from Control down to ListBox, ComboBox, FixedText." This reverts commit 8bc4b991539a74373bfb1ef8792276ada8c958e4. 2008-10-20 19:24:50 +0200 jcn r262504 : layoutdialogs2: Disable Timer for ENABLE_LAYOUT. 2008-10-20 19:24:45 +0200 jcn r262503 : layoutdialogs2: Move FocusHandlers from Control down to ListBox, ComboBox, FixedText. 2008-10-20 19:24:40 +0200 jcn r262502 : layoutdialogs2: Wider small symbol. 2008-10-20 19:24:36 +0200 jcn r262501 : layoutdialogs2: Listener and SetHandler cleanup. 2008-10-20 19:24:31 +0200 jcn r262500 : layoutdialogs2: Clear mxWindow upon deletion. Fixes Find&Replace crasher. 2008-10-20 19:24:27 +0200 jcn r262499 : layoutdialogs2: Typo, fixes build. 2008-10-20 19:24:22 +0200 jcn r262498 : layoutdialogs2: Ignore .log files too. 2008-10-20 19:24:19 +0200 jcn r262497 : layoutdialogs2: By default, work around #define protected public Resource hack. 2008-10-20 19:24:15 +0200 jcn r262496 : layoutdialogs2: Sw:Find&Replace: Remove wrong static cast. Fixes crasher. 2008-10-20 19:24:10 +0200 jcn r262495 : layoutdialogs2: Find&Replace: do not vertically expand buttons, add title. 2008-10-20 19:24:06 +0200 jcn r262494 : layoutdialogs2: Find&Replace: Remove need for ResId, set help id. 2008-10-20 19:24:01 +0200 jcn r262493 : layoutdialogs2: MoreButton: redraw upon resize, fix labels, use small symbol. 2008-10-20 19:23:57 +0200 jcn r262492 : layoutdialogs2: Support setting and querying small symbol on vcl:button. 2008-10-20 19:23:52 +0200 jcn r262491 : layoutdialogs2: Support redrawing of only this, make parent optional. 2008-10-20 19:23:48 +0200 jcn r262490 : layoutdialogs2: Add Kohei's wfield patch https://bugzilla.novell.com/attachment.cgi?id=235398. Fixes n#417840. 2008-10-20 19:23:44 +0200 jcn r262489 : layoutdialogs2: Redraw [parent] upon first time visibility. Fixes weird listbox dropdown sizing in Find & Replace. 2008-10-20 19:23:39 +0200 jcn r262488 : layoutdialogs2: Add manual layouting for Find & Replace. 2008-10-20 19:23:35 +0200 jcn r262487 : layoutdialogs2: src2xml: use label instead of text for buttons. Run on Find & Replace; fixes button texts. 2008-10-20 19:23:31 +0200 jcn r262486 : layoutdialogs2: Add initial auto-translated find-&-replace-.xml. 2008-10-20 19:23:26 +0200 jcn r262485 : layoutdialogs2: layout importer: handle ModelessDialog. Fixes Find & Replace parsing error. 2008-10-20 19:23:22 +0200 jcn r262484 : layoutdialogs2: src2xml: Handle multiple widgets at same x,y. Fixes silent removal of widgets in Find & Replace dialog. 2008-10-20 19:23:18 +0200 jcn r262483 : layoutdialogs2: src2xml: Handle hide= attribute, translate to show=. 2008-10-20 19:23:14 +0200 jcn r262482 : layoutdialogs2: Only use __PRETTY_FUNCTION__ on gcc. Fixes Windows build. Thanks Tor! 2008-10-20 19:23:10 +0200 jcn r262481 : layoutdialogs2: Add two missing SAL_CALL decorations. Fixes Windows build. Thanks Tor! 2008-10-20 19:23:05 +0200 jcn r262480 : layoutdialogs2: Build fixes for layout'ed Find & Replace dialog. 2008-10-20 19:22:54 +0200 jcn r262479 : layoutdialogs2: Do not use layout::SfxTabDialog for now. 2008-10-20 19:22:47 +0200 jcn r262478 : layoutdialogs2: Crufty sizing tweaks. 2008-10-20 19:22:42 +0200 jcn r262477 : layoutdialogs2: More debugging cleanups. 2008-10-20 19:22:37 +0200 jcn r262476 : layoutdialogs2: More cleanups that result in constant manual resizing... 2008-10-20 19:22:33 +0200 jcn r262475 : layoutdialogs2: Tabdlg cleanups. 2008-10-20 19:22:28 +0200 jcn r262474 : layoutdialogs2: Add GetOptimalSize () to InPlug. Fixes auto-sizing of tabcontrol. 2008-10-20 19:22:21 +0200 jcn r262473 : layoutdialogs2: Get VCLXTabControl to resize automatically (too tall), not mousable. 2008-10-20 19:22:13 +0200 jcn r262472 : layoutdialogs2: Respect show=false property; do not show everything. 2008-10-20 19:22:09 +0200 jcn r262471 : layoutdialogs2: Add show=false on buttons. Fixes displaying everything. 2008-10-20 19:22:05 +0200 jcn r262470 : layoutdialogs2: Move some code to reduce namespace and #if hacking. 2008-10-20 19:22:00 +0200 jcn r262469 : layoutdialogs2: Cleanup, remove unneeded #defines. 2008-10-20 19:21:56 +0200 jcn r262468 : layoutdialogs2: Replace static casts with dynamic_cast, fixes layout::SfxTabDialog. Explicitly add 2 tabpages while adding tabpages, instead of relying on ResId. 2008-10-20 19:21:51 +0200 jcn r262467 : layoutdialogs2: Use cpp hacking to remove layout-tabdialog.hxx duplication. 2008-10-20 19:21:45 +0200 jcn r262466 : layoutdialogs2: Minimize diff between layout-tabdialog.hxx and tabdlg.hxx. 2008-10-20 19:21:41 +0200 jcn r262465 : layoutdialogs2: Remove copy of SfxTabDialog; use cpp logic to create both flavours. 2008-10-20 19:21:36 +0200 jcn r262464 : layoutdialogs2: Minimize diff between layout/sfxtabdialog.cxx and source/tabdlg.cxx. This enables the next step: use cpp logic instead of code duplication. 2008-10-20 19:21:31 +0200 jcn r262463 : layoutdialogs2: Hello world on layout::SfxTabDialog. 2008-10-20 19:21:24 +0200 jcn r262462 : layoutdialogs2: Nice `Compiling:' message that shows the file being compiled. 2008-10-20 19:21:20 +0200 jcn r262461 : layoutdialogs2: Use layout::SfxTabDialog for sort options. 2008-10-20 19:21:15 +0200 jcn r262460 : layoutdialogs2: Update sort options tab. 2008-10-20 19:21:10 +0200 jcn r262459 : layoutdialogs2: Add layout::SfxTabDialog. 2008-10-20 19:21:04 +0200 jcn r262458 : layoutdialogs2: Cleanup previous attempt using layout::SfxTabPage == layout::TabPage. 2008-10-20 19:20:57 +0200 jcn r262457 : layoutdialogs2: Windows 2003 compile fixes, i#92397. 2008-10-20 19:20:52 +0200 jcn r262456 : layoutdialogs2: Set default radiogroup when none provided. 2008-10-20 19:20:48 +0200 jcn r262455 : layoutdialogs2: Add radiogroup to sort-options. Fixes crasher. 2008-10-20 19:20:43 +0200 jcn r262454 : layoutdialogs2: Cleanup ParentSet fix. 2008-10-20 19:20:36 +0200 jcn r262453 : layoutdialogs2: Add debugging in ParentSet. Works standalone, not integrated. 2008-10-20 19:20:31 +0200 jcn r262452 : layoutdialogs2: Revert "Have InPlug not derive from Window, but have as member." This reverts commit 50ea26eec3fe14943f24900081ad923e72550345. 2008-10-20 19:20:25 +0200 jcn r262451 : layoutdialogs2: Have InPlug not derive from Window, but have as member. 2008-10-20 19:20:20 +0200 jcn r262450 : layoutdialogs2: Move layout plugin implementation from layout::SfxTabPage to InPlug. 2008-10-20 19:20:14 +0200 jcn r262449 : layoutdialogs2: Get all widgets to display in sfxtabpage plugin with Window::SetParent hack. 2008-10-20 19:20:09 +0200 jcn r262448 : layoutdialogs2: Two-button manual hello world with sfxtabpage plugin. 2008-10-20 19:20:03 +0200 jcn r262447 : layoutdialogs2: WIP: layout::SfxTabPage derived from SfxTabPage. 2008-10-20 19:19:55 +0200 jcn r262446 : layoutdialogs2: Always set parent after construction, fixes listbox dropdown. 2008-10-20 19:19:51 +0200 jcn r262445 : layoutdialogs2: Fix radio button crasher. 2008-10-20 19:19:47 +0200 jcn r262444 : layoutdialogs2: Implement ListBox method wrappers. Fixes filling of listbox. 2008-10-20 19:19:42 +0200 jcn r262443 : layoutdialogs2: Convert Move/Copy sheet to layout engine. 2008-10-20 19:19:35 +0200 jcn r262442 : layoutdialogs2: Also hide yes/no buttons if not used. 2008-10-20 19:19:31 +0200 jcn r262441 : layoutdialogs2: Elaborate on changing client code. 2008-10-20 19:19:26 +0200 jcn r262440 : layoutdialogs2: Implement winbits client-code compatibility for Message Boxes. 2008-10-20 19:19:21 +0200 jcn r262439 : layoutdialogs2: Add localize.sdf to toolkit uiconfig. Fixes build. 2008-10-20 19:19:17 +0200 jcn r262438 : layoutdialogs2: Do not use ti_layout twice in toolkit build.lst. Fixes build. 2008-10-20 19:19:13 +0200 jcn r262437 : layoutdialogs2: Oops, also dist toolkit-layout.zip. 2008-10-20 19:19:09 +0200 jcn r262436 : layoutdialogs2: Move layout.mk to solenv. 2008-10-20 19:19:03 +0200 jcn r262435 : layoutdialogs2: Add handy TEST file. 2008-10-20 19:18:58 +0200 jcn r262434 : layoutdialogs2: Implement MessageBox and wrappers ErrorBox, InfoBox, QueryBox, WarningBox. 2008-10-20 19:18:52 +0200 jcn r262433 : layoutdialogs2: QueryBox without image used for Delete Sheet dialog. 2008-10-20 19:18:46 +0200 jcn r262432 : layoutdialogs2: WIP QueryBox. 2008-10-20 19:18:39 +0200 jcn r262431 : layoutdialogs2: Add insert-sheet localization. 2008-10-20 19:18:34 +0200 jcn r262430 : layoutdialogs2: Run indent-region on zoom.xml, distribute it. 2008-10-20 19:18:30 +0200 jcn r262429 : layoutdialogs2: Dist xml files too. 2008-10-20 19:18:26 +0200 jcn r262428 : layoutdialogs2: Add insert-sheet.xml to workben. 2008-10-20 19:18:22 +0200 jcn r262427 : layoutdialogs2: Update layout TODO. 2008-10-20 19:18:18 +0200 jcn r262426 : layoutdialogs2: Cleanups and add comments. 2008-10-20 19:18:13 +0200 jcn r262425 : layoutdialogs2: Keep RadioButtons::RadioButton callback at HEAD of list. Fixes radiobutton grouping. 2008-10-20 19:18:07 +0200 jcn r262424 : layoutdialogs2: Remove IMPORT_RADIOGROUP cruft. 2008-10-20 19:18:02 +0200 jcn r262423 : layoutdialogs2: Have code check fire event for radio button. Fixes radio button grouping. 2008-10-20 19:17:58 +0200 jcn r262422 : layoutdialogs2: Enable IMPORT_RADIOGROUP flag. 2008-10-20 19:17:54 +0200 jcn r262421 : layoutdialogs2: Add radio groups to zoom.xml. 2008-10-20 19:17:50 +0200 jcn r262420 : layoutdialogs2: Move RadioGroup implementation to cxx file. 2008-10-20 19:17:45 +0200 jcn r262419 : layoutdialogs2: Manually set help id for insert table. 2008-10-20 19:17:41 +0200 jcn r262418 : layoutdialogs2: Cosmetic fixes for insert-sheet. 2008-10-20 19:17:37 +0200 jcn r262417 : layoutdialogs2: FindAndRemove now also skips translation prefix. Fixes setting of title etc. from nontranslated xml. 2008-10-20 19:17:32 +0200 jcn r262416 : layoutdialogs2: Manually set help id for zoom and wordcount dialogs. 2008-10-20 19:17:27 +0200 jcn r262415 : layoutdialogs2: Set help-id from xml. 2008-10-20 19:17:21 +0200 jcn r262414 : layoutdialogs2: Move -DENABLE_LAYOUT from stray makefiles to settings.mk. 2008-10-20 19:17:13 +0200 jcn r262413 : layoutdialogs2: Initial conversion of insert-sheet dialog. 2008-10-20 19:17:08 +0200 jcn r262412 : layoutdialogs2: Add wrappers for {Get,Set}{Pointer,Text}. 2008-10-20 19:17:04 +0200 jcn r262411 : layoutdialogs2: Toolkit layout dialog copy updates. 2008-10-20 19:16:59 +0200 jcn r262410 : layoutdialogs2: Cleanup #include disaster. Fixes multiple inclusions of layout-pre, layout-post. 2008-10-20 19:16:53 +0200 jcn r262409 : layoutdialogs2: Implement Get,Set{,Smart}HelpId (). 2008-10-20 19:16:49 +0200 jcn r262408 : layoutdialogs2: Make some getters const. 2008-10-20 19:16:45 +0200 jcn r262407 : layoutdialogs2: Manual tweaks for string-input.xml. 2008-10-20 19:16:40 +0200 jcn r262406 : layoutdialogs2: Add string-input.xml. 2008-10-20 19:16:36 +0200 jcn r262405 : layoutdialogs2: Add dummy implementation for SetHelpId etc. 2008-10-20 19:16:32 +0200 jcn r262404 : layoutdialogs2: Actually say *what* file cannot be copied *where*. Sigh. 2008-10-20 19:16:27 +0200 jcn r262403 : layoutdialogs2: Thinko in macro name. Fixes compilation of strindlg.cxx. 2008-10-20 19:16:22 +0200 jcn r262402 : layoutdialogs2: Add layout includes to stringdlg and makefile. 2008-10-20 19:16:17 +0200 jcn r262401 : layoutdialogs2: Add sc/uiconfig/layout/localize.sdf 2008-10-20 19:16:13 +0200 jcn r262400 : layoutdialogs2: Oops, build sc/uiconfig/layout. 2008-10-20 19:16:09 +0200 jcn r262399 : layoutdialogs2: Have virtual destructor on Context, delete TabPage when deleting TabDialog. 2008-10-20 19:16:04 +0200 jcn r262398 : layoutdialogs2: Actually delete layout::TabPage objects when deleting SfxTabdialog. 2008-10-20 19:16:00 +0200 jcn r262397 : layoutdialogs2: Workaround for second invocation crash of sort dialog options tab. 2008-10-20 19:15:56 +0200 jcn r262396 : layoutdialogs2: Handle Reset button. 2008-10-20 19:15:51 +0200 jcn r262395 : layoutdialogs2: Also install sc xml zip file. 2008-10-20 19:15:46 +0200 jcn r262394 : layoutdialogs2: Integrate sort-options into sc. 2008-10-20 19:15:41 +0200 jcn r262393 : layoutdialogs2: Revert "Fix sfx2 compile warnings." This reverts commit 8b55d402af7bd217db35f67b02dc92f93f3ada5d. 2008-10-20 19:15:34 +0200 jcn r262392 : layoutdialogs2: Remove debuging. 2008-10-20 19:15:30 +0200 jcn r262391 : layoutdialogs2: Pass set argument to layout::TabPage. Fixes OO.o integration crasher. 2008-10-20 19:15:24 +0200 jcn r262390 : layoutdialogs2: Ignore more. 2008-10-20 19:15:20 +0200 jcn r262389 : layoutdialogs2: Oops, make just one (1) sort-options tab. 2008-10-20 19:15:15 +0200 jcn r262388 : layoutdialogs2: Revert macroconf compile warnings. 2008-10-20 19:15:09 +0200 jcn r262387 : layoutdialogs2: Fix sfx2 compile warnings. 2008-10-20 19:15:01 +0200 jcn r262386 : layoutdialogs2: Collapsed tabpage and sort-options development. 2008-10-20 19:14:51 +0200 jcn r262385 : layoutdialogs2: Make dev300/src680 install layout switchable at compile time. 2008-10-20 19:14:47 +0200 jcn r262384 : layoutdialogs2: Update README, add README. 2008-10-20 19:14:43 +0200 jcn r262383 : layoutdialogs2: Repainting, hiding stuff. 2008-10-20 19:14:38 +0200 jcn r262382 : layoutdialogs2: Add allocateArea to VCLXTabPage. 2008-10-20 19:14:34 +0200 jcn r262381 : layoutdialogs2: Revert "Use VCLXContainer as base for VCLXTabPage." This reverts commit 06a984434d0d2c356fd0cdaf96d6d613d5147b7c. 2008-10-20 19:14:30 +0200 jcn r262380 : layoutdialogs2: Use VCLXContainer as base for VCLXTabPage. 2008-10-20 19:14:26 +0200 jcn r262379 : layoutdialogs2: Revert "Derive VCLXTabPage from VBox." This reverts commit 8ab66364bdc08151ce2c982c1aa03f7881d86b84. 2008-10-20 19:14:22 +0200 jcn r262378 : layoutdialogs2: Derive VCLXTabPage from VBox. 2008-10-20 19:14:17 +0200 jcn r262377 : layoutdialogs2: More cleanups and testing. 2008-10-20 19:14:12 +0200 jcn r262376 : layoutdialogs2: Get layout tabpage to nicely select. No content visible, though. 2008-10-20 19:14:07 +0200 jcn r262375 : layoutdialogs2: Support ScTabPageSortOptions in standalone test. 2008-10-20 19:14:02 +0200 jcn r262374 : layoutdialogs2: Support tabpage creation from xml. 2008-10-20 19:13:56 +0200 jcn r262373 : layoutdialogs2: Remove most TEST_LAYOUT conditionals. 2008-10-20 19:13:52 +0200 jcn r262372 : layoutdialogs2: Remove Args effort. 2008-10-20 19:13:48 +0200 jcn r262371 : layoutdialogs2: Attempt to create ArgSet. 2008-10-20 19:13:44 +0200 jcn r262370 : layoutdialogs2: Compile more. 2008-10-20 19:13:39 +0200 jcn r262369 : layoutdialogs2: Add sortdlg. 2008-10-20 19:13:35 +0200 jcn r262368 : layoutdialogs2: Oops, ID fix. 2008-10-20 19:13:30 +0200 jcn r262367 : layoutdialogs2: Build fix. 2008-10-20 19:13:26 +0200 jcn r262366 : layoutdialogs2: Revert "Use ::Window for plugin base iso ::Control." This reverts commit 919ddaf2f52ad5e4df877a094cd1e336888d6210. 2008-10-20 19:13:21 +0200 jcn r262365 : layoutdialogs2: Plugin dialog cleanups. 2008-10-20 19:13:17 +0200 jcn r262364 : layoutdialogs2: Use ::Window for plugin base iso ::Control. 2008-10-20 19:13:12 +0200 jcn r262363 : layoutdialogs2: Use cstdio, remove cruft. 2008-10-20 19:13:07 +0200 jcn r262362 : layoutdialogs2: Remove cruft. 2008-10-20 19:13:02 +0200 jcn r262361 : layoutdialogs2: Remove sizing mess. 2008-10-20 19:12:57 +0200 jcn r262360 : layoutdialogs2: Trigger [re]draw of DialControl. 2008-10-20 19:12:53 +0200 jcn r262359 : layoutdialogs2: DialControl window behaves nicely and invisible. 2008-10-20 19:12:48 +0200 jcn r262358 : layoutdialogs2: Revert adding of setparent. 2008-10-20 19:12:43 +0200 jcn r262357 : layoutdialogs2: Add dialog::setparent to plugin. 2008-10-20 19:12:39 +0200 jcn r262356 : layoutdialogs2: Add a setProperty for VCLXPlugin. 2008-10-20 19:12:34 +0200 jcn r262355 : layoutdialogs2: Unhide plugin. 2008-10-20 19:12:30 +0200 jcn r262354 : layoutdialogs2: Revert. 2008-10-20 19:12:25 +0200 jcn r262353 : layoutdialogs2: Use window instead of control. 2008-10-20 19:12:20 +0200 jcn r262352 : layoutdialogs2: Lots of plugin settings. 2008-10-20 19:12:16 +0200 jcn r262351 : layoutdialogs2: More hacks. 2008-10-20 19:12:11 +0200 jcn r262350 : layoutdialogs2: Compile fixes. 2008-10-20 19:12:05 +0200 jcn r262349 : layoutdialogs2: Use c++ includes. 2008-10-20 19:12:00 +0200 jcn r262348 : layoutdialogs2: Junk UnoTunnel nonsense. 2008-10-20 19:11:55 +0200 jcn r262347 : layoutdialogs2: Remove more cruft. 2008-10-20 19:11:50 +0200 jcn r262346 : layoutdialogs2: Remove cruft. 2008-10-20 19:11:44 +0200 jcn r262345 : layoutdialogs2: Rename wrap to plugin. 2008-10-20 19:11:39 +0200 jcn r262344 : layoutdialogs2: All sorry tries. 2008-10-20 19:11:33 +0200 jcn r262343 : layoutdialogs2: Rename plugin to wrap. 2008-10-20 19:11:28 +0200 jcn r262342 : layoutdialogs2: Add ifdefs, no UNOTUNNEL, no crash on exit. 2008-10-20 19:11:23 +0200 jcn r262341 : layoutdialogs2: Redo all kind of Uno and XIface weirdness. 2008-10-20 19:11:17 +0200 jcn r262340 : layoutdialogs2: Remove extra UnoTunnel. 2008-10-20 19:11:12 +0200 jcn r262339 : layoutdialogs2: Plugin hello world. TODO: parenting/owning/sizing, ... etc. 2008-10-20 19:11:06 +0200 jcn r262338 : layoutdialogs2: Zoom updates. 2008-10-20 19:11:01 +0200 jcn r262337 : layoutdialogs2: Add missing controls. 2008-10-20 19:10:56 +0200 jcn r262336 : layoutdialogs2: Add .gitignore. --- sd/source/ui/view/Outliner.cxx | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/sd/source/ui/view/Outliner.cxx b/sd/source/ui/view/Outliner.cxx index 3f295e10b529..233976585e58 100644 --- a/sd/source/ui/view/Outliner.cxx +++ b/sd/source/ui/view/Outliner.cxx @@ -1475,7 +1475,9 @@ bool Outliner::HandleFailedSearch (void) } - +#if ENABLE_LAYOUT +#define SvxSearchDialog Window +#endif /** See task #95227# for discussion about correct parent for dialogs/info boxes. */ @@ -1498,7 +1500,9 @@ bool Outliner::HandleFailedSearch (void) return pParent; } - +#if ENABLE_LAYOUT +#undef SvxSearchDialog +#endif SdrObject* Outliner::SetObject ( From a2a10770776eb771595790bcd7d9cec80361d193 Mon Sep 17 00:00:00 2001 From: Ivo Hinkelmann Date: Mon, 27 Apr 2009 11:24:10 +0000 Subject: [PATCH 03/12] CWS-TOOLING: integrate CWS sb107 2009-04-14 13:09:13 +0200 sb r270758 : CWS-TOOLING: rebase CWS sb107 to trunk@270723 (milestone: DEV300:m46) 2009-04-06 14:11:54 +0200 sb r270545 : #i100884# improve pagein effectiveness: wrap system libs in --as-needed on unxlngi6/unxlngx6 to avoid needing them where unneeded; link pagein as C program to avoid unneeded C++ runtime dependency; reorder pagein and javaldx in soffice startup script so that javaldx benefits from pagein 2009-03-31 16:40:23 +0200 sb r270287 : decrease collisions in hashCode computation 2009-03-30 11:48:39 +0200 sb r270207 : #i100668# corrected explicit template instantiation 2009-03-26 14:16:26 +0100 sb r270078 : #i100408# inadvertently dropped libexslt dynamic library in previous rev 269789 2009-03-26 10:52:51 +0100 sb r270058 : #i100576# fixed erroneous modification of RPM in previous rev 270057 2009-03-26 10:46:36 +0100 sb r270057 : #i100576# Enable HAVE_LD_HASH_STYLE in sdev300.ini for unxlgni6 and unxlngx6; corrected unxlngx6.mk so that HAVE_LD_HASH_STYLE actually has an effect on ultimate LINKFLAGS value. 2009-03-25 16:53:39 +0100 sb r270038 : #i85679# applied speed-symbolic-functions.diff provided by pmladek; re-ran autoconf; enabled HAVE_LD_BSYMBOLIC_FUNCTIONS for unxlngi6 and unxlngx6 in sdev300.ini 2009-03-25 15:29:12 +0100 sb r270031 : #i100408# missing fixes in addition to -c 269789 (to actually only put single instances of certain libraries into installation sets) 2009-03-25 15:17:10 +0100 sb r270029 : #i10084# revert masterfix additions of libraries to APPnSTDLIBs (during -r269000:269199) and instead use -rpath-link to avoid linker warnings on unxlngi6 and unxlngx6 2009-03-25 14:15:23 +0100 sb r270023 : added svn:ignore 2009-03-25 10:25:08 +0100 sb r270002 : #i10000# copied over trunk -c 269820 2009-03-23 10:16:00 +0100 sb r269858 : CWS-TOOLING: rebase CWS sb107 to trunk@269781 (milestone: DEV300:m44) 2009-03-20 11:22:27 +0100 sb r269789 : #i100408# reduce (multiple copies of) libraries delivered to solver; for that to work fine, deliver symlink feature got improved to only create a symlink if the original file exists 2009-03-20 09:21:32 +0100 sb r269782 : #i100396# replace s(HTML|RTF)_xxx declarations with OOO_STRING_SVTOOLS_(HTML|RTF)_xxx macros to reduce symbolic relocations at load time (at least on ELF systems). 2009-03-19 11:34:56 +0100 sb r269734 : #i100348# added VISIBILITY_HIDDEN=TRUE so that symbols from the resulting archive are not erroneously exported from dynamic libraries including the archive 2009-03-19 11:32:20 +0100 sb r269733 : #i100348# as a prerequisite for following changes, brought jpeg-6b.patch into "dmake create_patch" format and removed application/octet-stream svn:mime-type 2009-03-12 10:39:08 +0100 sb r269370 : duplicated cws/odfmetadata2/solenv/inc/target.mk -c 268831 2009-03-04 17:25:16 +0100 sb r268849 : #i99880# missing AUGMENT_LIBRARY_PATH 2009-02-25 17:54:34 +0100 sb r268459 : CWS-TOOLING: rebase CWS sb107 to trunk@268395 (milestone: DEV300:m42) 2009-02-25 09:23:15 +0100 sb r268413 : #i99584# avoid undefined operations on nOffset (patch by cmc) 2009-02-23 10:02:25 +0100 sb r268344 : #i99519 removed unnecessary library dependencies 2009-02-18 17:54:24 +0100 sb r268250 : avoid warnings about format specifier and argument mismatch (on 64bit debug builds) 2009-02-18 17:50:34 +0100 sb r268249 : avoid erroneous warning that control reaches end of non-void function 2009-02-18 17:33:53 +0100 sb r268248 : sdext/source/pdfimport/misc/pdfihelper.cxx: #include --- sd/util/makefile.mk | 8 -------- slideshow/util/makefile.mk | 1 - 2 files changed, 9 deletions(-) diff --git a/sd/util/makefile.mk b/sd/util/makefile.mk index a55746b4ba19..3229fc486b83 100644 --- a/sd/util/makefile.mk +++ b/sd/util/makefile.mk @@ -78,7 +78,6 @@ SHL1STDLIBS+= \ $(VCLLIB) \ $(SVLLIB) \ $(SOTLIB) \ - $(CANVASTOOLSLIB) \ $(UNOTOOLSLIB) \ $(TOOLSLIB) \ $(I18NISOLANGLIB) \ @@ -169,7 +168,6 @@ SHL2STDLIBS= \ $(SOTLIB) \ $(TOOLSLIB) \ $(UCBHELPERLIB) \ - $(COMPHELPERLIB) \ $(CPPUHELPERLIB) \ $(CPPULIB) \ $(SALLIB) @@ -197,13 +195,9 @@ SHL4STDLIBS= \ $(ISDLIB) \ $(SVXLIB) \ $(SFXLIB) \ - $(BASICLIB) \ $(BASEGFXLIB) \ - $(DRAWINGLAYERLIB) \ - $(GOODIESLIB) \ $(SO2LIB) \ $(SVTOOLLIB) \ - $(TKLIB) \ $(VCLLIB) \ $(SVLLIB) \ $(SOTLIB) \ @@ -211,10 +205,8 @@ SHL4STDLIBS= \ $(TOOLSLIB) \ $(I18NISOLANGLIB) \ $(COMPHELPERLIB) \ - $(UCBHELPERLIB) \ $(CPPUHELPERLIB) \ $(CPPULIB) \ - $(VOSLIB) \ $(CANVASLIB) \ $(SALLIB) diff --git a/slideshow/util/makefile.mk b/slideshow/util/makefile.mk index 09d0363bcdb4..4b4008624c1e 100644 --- a/slideshow/util/makefile.mk +++ b/slideshow/util/makefile.mk @@ -68,7 +68,6 @@ SHL1STDLIBS= $(TOOLSLIB) \ $(CPPCANVASLIB) \ $(UNOTOOLSLIB) \ $(GOODIESLIB) \ - $(TKLIB) \ $(AVMEDIALIB) SHL1IMPLIB=i$(TARGET) From ab878b2441af9118d3eea8ca2bd849656562d0ac Mon Sep 17 00:00:00 2001 From: Release Engineers Date: Wed, 6 May 2009 10:59:57 +0000 Subject: [PATCH 04/12] CWS-TOOLING: integrate CWS mba32issues01 2009-05-05 18:23:27 +0200 mba r271547 : apply diffs from m45->m47 for all files moved from dialog to cui 2009-05-05 18:22:02 +0200 mba r271545 : apply diffs from m45->m47 for all files moved from dialog to cui 2009-05-05 18:16:42 +0200 mba r271544 : apply diffs from m45->m47 for all files moved from dialog to cui 2009-04-29 19:35:58 +0200 mba r271392 : #i73672#: unify commands for inserting special characters 2009-04-29 18:01:27 +0200 mba r271391 : #i101337#: missing string resources 2009-04-29 18:01:10 +0200 mba r271390 : #i101337#: missing string resources 2009-04-29 15:42:47 +0200 mba r271380 : concurrency problem in multithreaded dmake due to missing dependency 2009-04-28 17:36:03 +0200 tbo r271336 : #i99432# 2009-04-28 13:57:52 +0200 mba r271322 : #i101302#: ctor might be called with pSet=0 2009-04-22 19:32:39 +0200 tbo r271138 : #i99432# 2009-04-09 14:46:03 +0200 mba r270709 : make sendreportw32.cxx compile with pch 2009-04-06 16:05:07 +0200 mba r270568 : #i99432#: some tweaks for build order 2009-04-06 15:38:52 +0200 mba r270558 : typo 2009-04-06 13:36:19 +0200 mba r270542 : #i99432#: split of localization also 2009-04-06 13:19:06 +0200 mba r270539 : #i99432#: split up srs files also 2009-04-03 17:57:59 +0200 mba r270513 : #i99432#: split dialog folder into two 2009-04-03 17:56:46 +0200 mba r270512 : #i99432#: split dialog folder into two 2009-04-01 22:15:00 +0200 mba r270364 : warnings on Linux 2009-04-01 22:10:44 +0200 mba r270363 : warnings on Linux 2009-04-01 21:43:54 +0200 mba r270362 : warning fixed 2009-04-01 21:41:27 +0200 mba r270361 : warning on Linux fixed 2009-04-01 21:35:44 +0200 mba r270360 : warning fixed 2009-04-01 20:19:59 +0200 mba r270358 : warning found on Linux fixed 2009-04-01 19:23:38 +0200 mba r270354 : warning due to missing eof 2009-04-01 18:56:25 +0200 mba r270352 : linking problem fixed that appeared only on mac 2009-04-01 18:41:30 +0200 mba r270350 : warnings discovered on Linux fixed 2009-04-01 18:34:28 +0200 mba r270349 : some fixes for warnings and include problems discoverd after resync and build on mac 2009-04-01 14:08:22 +0200 mba r270328 : CWS-TOOLING: rebase CWS mba32issues01 to trunk@270033 (milestone: DEV300:m45) 2009-03-04 18:13:35 +0100 mba r268858 : #i99432#: more dialogs moved to cui 2009-03-04 17:47:41 +0100 mba r268854 : #i99432#: more dialogs moved to cui 2009-03-04 17:32:39 +0100 mba r268851 : warning fixed 2009-03-04 12:59:26 +0100 mba r268814 : #i99432#: more dialogs moved to cui 2009-03-04 11:49:03 +0100 mba r268802 : #i99432#: CharmapDialog moved to cui 2009-03-04 10:46:00 +0100 mba r268795 : #i99432#: CharmapDialog moved to cui 2009-03-04 10:43:50 +0100 mba r268794 : #i99432#: CharmapDialog moved to cui 2009-03-04 10:00:29 +0100 mba r268792 : #i99432#: CharmapDialog moved to cui 2009-03-04 10:00:03 +0100 mba r268791 : #i99432#: CharmapDialog moved to cui 2009-03-04 09:59:43 +0100 mba r268790 : #i99432#: CharmapDialog moved to cui 2009-03-04 09:58:51 +0100 mba r268789 : #i99432#: CharmapDialog moved to cui 2009-03-04 09:58:16 +0100 mba r268788 : #i99432#: CharmapDialog moved to cui 2009-03-03 16:33:14 +0100 mba r268763 : #i99465#: new SfxAbstractDialog interface and creation methods 2009-03-03 16:32:28 +0100 mba r268762 : #i99432#: some tabpages moved to cui 2009-03-03 16:32:09 +0100 mba r268761 : #i99432#: some tabpages moved to cui 2009-03-03 16:29:40 +0100 mba r268760 : #i99465#: new SfxAbstractDialog interface and creation methods 2009-03-03 16:29:08 +0100 mba r268759 : #i99432#: MacroAssignment page moved to cui 2009-03-03 16:28:41 +0100 mba r268758 : #i99432#: MacroAssignment page moved to cui 2009-03-03 16:28:18 +0100 mba r268757 : #i99465#: new SfxAbstractDialog interface and creation methods 2009-03-03 16:27:36 +0100 mba r268756 : #i99465#: replace FN_SYMBOL by SID_CHARMAP 2009-03-03 16:27:02 +0100 mba r268755 : #i99465#: new SfxAbstractDialog interface and creation methods 2009-03-03 16:26:23 +0100 mba r268754 : #i99465#: new SfxAbstractDialog interface and creation methods 2009-03-03 16:25:30 +0100 mba r268753 : #i99465#: new SfxAbstractDialog interface and creation methods 2009-03-03 16:24:49 +0100 mba r268752 : #i99465#: new SfxAbstractDialog interface and creation methods 2009-03-03 16:24:35 +0100 mba r268751 : #i99432#: MacroAssignment page moved to cui 2009-03-03 16:23:20 +0100 mba r268750 : #i99465#: new SfxAbstractDialog interface and creation methods 2009-03-03 16:23:04 +0100 mba r268749 : #i99432#: MacroAssignment page moved to cui 2009-03-03 16:21:56 +0100 mba r268748 : #i99465#: new SfxAbstractDialog interface and creation methods 2009-03-03 16:18:39 +0100 mba r268747 : #i99432#: MacroAssignment page moved to cui 2009-03-03 16:13:14 +0100 mba r268745 : #i99465#: replace FN_SYMBOL by SID_CHARMAP 2009-03-03 16:02:54 +0100 mba r268738 : #i99432#: moved MacroAssignment TabPage from sfx2 2009-03-03 14:57:58 +0100 mba r268729 : #i99465#: transport return value via ItemSet 2009-03-03 00:08:10 +0100 mba r268701 : #i99432#: move acccfg to cuilib 2009-03-03 00:07:32 +0100 mba r268700 : #i99432#: move acccfg to cuilib 2009-03-03 00:02:01 +0100 mba r268699 : #i99432#: move acccfg to cuilib 2009-03-03 00:01:38 +0100 mba r268698 : #i99432#: move acccfg to cuilib 2009-03-03 00:01:11 +0100 mba r268697 : #i99432#: move acccfg to cuilib 2009-03-03 00:00:40 +0100 mba r268696 : #i99432#: move acccfg to cuilib 2009-03-03 00:00:06 +0100 mba r268695 : #i99432#: replace SfxAbstractSingleTabDialog by SfxAbstractDialog 2009-03-02 23:59:22 +0100 mba r268694 : #i99432#: move acccfg to cuilib 2009-03-02 23:57:19 +0100 mba r268693 : #i99432#: move acccfg to svx 2009-03-02 23:56:14 +0100 mba r268692 : #i99432#: replace SfxAbstractSingleTabDialog by SfxAbstractDialog 2009-03-02 23:49:37 +0100 mba r268691 : #i99785#: consolidate dialogs library 2009-03-02 17:26:40 +0100 mba r268683 : #i99785#: consolidate dialogs library 2009-03-02 17:24:28 +0100 mba r268682 : i99465#: consolidate slot for InsertSymbol command 2009-03-02 17:22:29 +0100 mba r268681 : #i99785#: consolidate dialogs library 2009-03-02 17:18:11 +0100 mba r268680 : i99432#: move accelconfig and macroassignment to cui 2009-03-02 17:08:30 +0100 mba r268679 : #i99785#: consolidate dialogs library 2009-03-02 17:06:57 +0100 mba r268678 : #i99785#: consolidate dialogs library 2009-03-02 17:06:30 +0100 mba r268677 : #i99785#: consolidate dialogs library 2009-03-02 17:05:02 +0100 mba r268676 : #i99785#: consolidate dialogs library 2009-03-02 17:04:35 +0100 mba r268675 : #i99785#: consolidate dialogs library 2009-03-02 16:47:53 +0100 mba r268673 : i99432#: move accelconfig and macroassignment to cui 2009-03-02 16:45:17 +0100 mba r268671 : i99432#: move accelconfig and macroassignment to cui 2009-03-02 16:39:59 +0100 mba r268670 : i99432#: move accelconfig and macroassignment to cui 2009-03-02 16:38:59 +0100 mba r268668 : i99432#: move accelconfig and macroassignment to cui 2009-03-02 16:38:28 +0100 mba r268667 : i99432#: move accelconfig and macroassignment to cui 2009-03-02 16:36:06 +0100 mba r268666 : i99432#: move accelconfig and macroassignment to cui 2009-03-02 16:29:50 +0100 mba r268663 : i99432#: move accelconfig and macroassignment to cui 2009-03-02 16:24:00 +0100 mba r268659 : i99432#: move accelconfig and macroassignment to cui 2009-03-02 16:23:31 +0100 mba r268658 : i99432#: move accelconfig and macroassignment to cui 2009-03-02 16:22:41 +0100 mba r268657 : i99432#: move accelconfig and macroassignment to cui 2009-02-25 16:57:26 +0100 mba r268453 : obsolete 2009-02-17 10:50:51 +0100 mba r267846 : obsolete 2009-02-12 16:33:54 +0100 mba r267676 : #i96834#: warning fixed 2009-02-11 19:28:47 +0100 mba r267626 : #i91978#: unused code 2009-02-11 18:37:47 +0100 mba r267625 : metafile output, fixes for 3 layer office 2009-02-11 12:56:28 +0100 mba r267593 : selective trees; incomplete build lists; metafile output --- sd/inc/app.hrc | 1 - sd/inc/pch/precompiled_sd.hxx | 1 - sd/inc/sdabstdlg.hxx | 2 +- sd/sdi/_drvwsh.sdi | 2 +- sd/sdi/outlnvsh.sdi | 2 +- sd/sdi/sdraw.sdi | 25 ---- sd/source/ui/app/menuids_tmpl.src | 4 +- sd/source/ui/app/toolbox2_tmpl.src | 12 +- sd/source/ui/dlg/sddlgfact.cxx | 19 +++- sd/source/ui/dlg/sddlgfact.hxx | 9 +- sd/source/ui/func/fubullet.cxx | 107 ++++++++++++------ sd/source/ui/func/fuconnct.cxx | 2 +- sd/source/ui/func/fumeasur.cxx | 2 +- sd/source/ui/func/fuoaprms.cxx | 2 +- sd/source/ui/func/futext.cxx | 2 +- sd/source/ui/inc/fubullet.hxx | 2 +- sd/source/ui/view/drviews8.cxx | 2 +- sd/source/ui/view/drviewsj.cxx | 2 +- sd/source/ui/view/outlnvs2.cxx | 2 +- sd/uiconfig/sdraw/menubar/menubar.xml | 2 +- sd/uiconfig/sdraw/toolbar/textobjectbar.xml | 2 +- sd/uiconfig/simpress/menubar/menubar.xml | 2 +- .../simpress/toolbar/textobjectbar.xml | 2 +- 23 files changed, 115 insertions(+), 93 deletions(-) diff --git a/sd/inc/app.hrc b/sd/inc/app.hrc index 4a2bf0e22a05..defab564e5ff 100644 --- a/sd/inc/app.hrc +++ b/sd/inc/app.hrc @@ -52,7 +52,6 @@ #define SID_INSERTSYMBOL (SID_SD_START+16) #define SID_ZOOM_PANNING (SID_SD_START+17) #define SID_PRESENTATION_END (SID_SD_START+18) -#define SID_BULLET (SID_SD_START+19) #define SID_TEXTFORMAT (SID_SD_START+20) #define SID_POSITION (SID_SD_START+22) #define SID_MIRROR (SID_SD_START+23) diff --git a/sd/inc/pch/precompiled_sd.hxx b/sd/inc/pch/precompiled_sd.hxx index 5ade98d5ad87..a9e5fbc29f82 100644 --- a/sd/inc/pch/precompiled_sd.hxx +++ b/sd/inc/pch/precompiled_sd.hxx @@ -576,7 +576,6 @@ #include "svx/brshitem.hxx" #include "svx/bulitem.hxx" #include "svx/camera3d.hxx" -#include "svx/charmap.hxx" #include "svx/charreliefitem.hxx" #include "svx/clipboardctl.hxx" #include "svx/clipfmtitem.hxx" diff --git a/sd/inc/sdabstdlg.hxx b/sd/inc/sdabstdlg.hxx index fc579740b2f6..78d1cd42ec96 100644 --- a/sd/inc/sdabstdlg.hxx +++ b/sd/inc/sdabstdlg.hxx @@ -213,7 +213,7 @@ public: virtual SfxAbstractTabDialog* CreateSdPresLayoutTemplateDlg( SfxObjectShell* pDocSh, ::Window* pParent, SdResId DlgId, SfxStyleSheetBase& rStyleBase, PresentationObjects ePO, SfxStyleSheetBasePool* pSSPool ) = 0; virtual AbstractSdPresLayoutDlg* CreateSdPresLayoutDlg( ::sd::DrawDocShell* pDocShell, ::sd::ViewShell* pViewShell, ::Window* pWindow, const SfxItemSet& rInAttrs) = 0; virtual SfxAbstractTabDialog* CreateSdTabTemplateDlg( ::Window* pParent, const SfxObjectShell* pDocShell, SfxStyleSheetBase& rStyleBase, SdrModel* pModel, SdrView* pView ) = 0; - virtual AbstractSfxSingleTabDialog* CreatSdActionDialog( ::Window* pParent, const SfxItemSet* pAttr, ::sd::View* pView ) = 0; + virtual SfxAbstractDialog* CreatSdActionDialog( ::Window* pParent, const SfxItemSet* pAttr, ::sd::View* pView ) = 0; virtual AbstractSdVectorizeDlg* CreateSdVectorizeDlg( ::Window* pParent, const Bitmap& rBmp, ::sd::DrawDocShell* pDocShell ) = 0; virtual AbstractSdPublishingDlg* CreateSdPublishingDlg( ::Window* pWindow, DocumentType eDocType) = 0; diff --git a/sd/sdi/_drvwsh.sdi b/sd/sdi/_drvwsh.sdi index ea0936f269d5..f8d76d3d6006 100644 --- a/sd/sdi/_drvwsh.sdi +++ b/sd/sdi/_drvwsh.sdi @@ -240,7 +240,7 @@ interface DrawView Cachable , HasDialog , Export , MenuConfig , AccelConfig , ToolBoxConfig ; ] - SID_BULLET // ole : no, status : ? + SID_CHARMAP // ole : no, status : ? [ ExecMethod = FuTemporary ; StateMethod = GetMenuState ; diff --git a/sd/sdi/outlnvsh.sdi b/sd/sdi/outlnvsh.sdi index 440e77611357..6d30615dbd79 100644 --- a/sd/sdi/outlnvsh.sdi +++ b/sd/sdi/outlnvsh.sdi @@ -141,7 +141,7 @@ interface OutlineView ExecMethod = FuTemporary ; StateMethod = GetMenuState ; ] - SID_BULLET // ole : no, status : ? + SID_CHARMAP // ole : no, status : ? [ ExecMethod = FuTemporaryModify ; StateMethod = GetMenuState ; diff --git a/sd/sdi/sdraw.sdi b/sd/sdi/sdraw.sdi index ca064d4daa11..3ad34d263fe4 100644 --- a/sd/sdi/sdraw.sdi +++ b/sd/sdi/sdraw.sdi @@ -339,31 +339,6 @@ SfxVoidItem Break SID_BREAK GroupId = GID_MODIFY; ] -//-------------------------------------------------------------------------- -SfxVoidItem Bullet SID_BULLET -() -[ - /* flags: */ - AutoUpdate = FALSE, - Cachable = Cachable, - FastCall = FALSE, - HasCoreId = FALSE, - HasDialog = TRUE, - ReadOnlyDoc = FALSE, - Toggle = FALSE, - Container = FALSE, - RecordAbsolute = FALSE, - RecordPerSet; - Synchron; - - /* config: */ - AccelConfig = TRUE, - MenuConfig = TRUE, - StatusBarConfig = FALSE, - ToolBoxConfig = TRUE, - GroupId = GID_INSERT; -] - //-------------------------------------------------------------------------- SfxVoidItem CapturePoint SID_CAPTUREPOINT () diff --git a/sd/source/ui/app/menuids_tmpl.src b/sd/source/ui/app/menuids_tmpl.src index 95f162a5aead..54696e34d9e9 100644 --- a/sd/source/ui/app/menuids_tmpl.src +++ b/sd/source/ui/app/menuids_tmpl.src @@ -540,8 +540,8 @@ #define MN_BULLET \ MenuItem\ {\ - Identifier = SID_BULLET ; \ - HelpID = SID_BULLET ; \ + Identifier = SID_CHARMAP ; \ + HelpID = SID_CHARMAP ; \ Text [ en-US ] = "S~pecial Character..." ; \ }; diff --git a/sd/source/ui/app/toolbox2_tmpl.src b/sd/source/ui/app/toolbox2_tmpl.src index afaa071ffdf7..09ccd217c89e 100644 --- a/sd/source/ui/app/toolbox2_tmpl.src +++ b/sd/source/ui/app/toolbox2_tmpl.src @@ -461,8 +461,8 @@ ToolBox RID_GRAPHIC_TEXT_TOOLBOX #endif ToolBoxItem { - Identifier = SID_BULLET; - HelpId = SID_BULLET; + Identifier = SID_CHARMAP; + HelpId = SID_CHARMAP; Hide = TRUE; }; }; @@ -670,8 +670,8 @@ ToolBox RID_GRAPHIC_TEXT_TOOLBOX #endif ToolBoxItem { - Identifier = SID_BULLET; - HelpId = SID_BULLET; + Identifier = SID_CHARMAP; + HelpId = SID_CHARMAP; Hide = TRUE; }; }; @@ -879,8 +879,8 @@ ToolBox RID_GRAPHIC_TEXT_TOOLBOX #endif ToolBoxItem { - Identifier = SID_BULLET; - HelpId = SID_BULLET; + Identifier = SID_CHARMAP; + HelpId = SID_CHARMAP; Hide = TRUE; }; }; diff --git a/sd/source/ui/dlg/sddlgfact.cxx b/sd/source/ui/dlg/sddlgfact.cxx index 63a487b69016..ba86987ebe13 100644 --- a/sd/source/ui/dlg/sddlgfact.cxx +++ b/sd/source/ui/dlg/sddlgfact.cxx @@ -81,7 +81,7 @@ IMPL_ABSTDLG_BASE(AbstractMorphDlg_Impl); IMPL_ABSTDLG_BASE(AbstractSdStartPresDlg_Impl); IMPL_ABSTDLG_BASE(AbstractSdPrintDlg_Impl); IMPL_ABSTDLG_BASE(AbstractSdPresLayoutDlg_Impl); -IMPL_ABSTDLG_BASE(AbstractSfxSingleTabDialog_Impl); +IMPL_ABSTDLG_BASE(AbstractSfxDialog_Impl); IMPL_ABSTDLG_BASE(AbstractSdVectorizeDlg_Impl); IMPL_ABSTDLG_BASE(AbstractSdPublishingDlg_Impl); IMPL_ABSTDLG_BASE(AbstractHeaderFooterDialog_Impl); @@ -343,11 +343,20 @@ void AbstractSdPresLayoutDlg_Impl::GetAttr( SfxItemSet& rOutAttrs ) } // AbstractSdPresLayoutDlg_Impl end -//AbstractSfxSingleTabDialog_Impl begin -const SfxItemSet* AbstractSfxSingleTabDialog_Impl::GetOutputItemSet() const +//SfxAbstractDialog_Impl begin +const SfxItemSet* AbstractSfxDialog_Impl::GetOutputItemSet() const { return pDlg->GetOutputItemSet(); } +void AbstractSfxDialog_Impl::SetText( const XubString& rStr ) +{ + pDlg->SetText( rStr ); +} +String AbstractSfxDialog_Impl::GetText() const +{ + return pDlg->GetText(); +} + //AbstractSfxSingleTabDialog_Impl end //AbstractSdVectorizeDlg_Impl begin @@ -519,9 +528,9 @@ SfxAbstractTabDialog * SdAbstractDialogFactory_Impl::CreateSdTabTemplateDlg( :: } // add for SdTabTemplateDlg end -AbstractSfxSingleTabDialog* SdAbstractDialogFactory_Impl::CreatSdActionDialog( ::Window* pParent, const SfxItemSet* pAttr, ::sd::View* pView ) +SfxAbstractDialog* SdAbstractDialogFactory_Impl::CreatSdActionDialog( ::Window* pParent, const SfxItemSet* pAttr, ::sd::View* pView ) { - return new AbstractSfxSingleTabDialog_Impl( new SdActionDlg( pParent, pAttr, pView ) ); + return new AbstractSfxDialog_Impl( new SdActionDlg( pParent, pAttr, pView ) ); } // add for SdVectorizeDlg begin diff --git a/sd/source/ui/dlg/sddlgfact.hxx b/sd/source/ui/dlg/sddlgfact.hxx index a8ec164d916f..0e25a1b683c5 100644 --- a/sd/source/ui/dlg/sddlgfact.hxx +++ b/sd/source/ui/dlg/sddlgfact.hxx @@ -32,6 +32,7 @@ // include --------------------------------------------------------------- #include "sdabstdlg.hxx" +#include #define DECL_ABSTDLG_BASE(Class,DialogClass) \ DialogClass* pDlg; \ @@ -229,10 +230,12 @@ class AbstractSdPresLayoutDlg_Impl : public AbstractSdPresLayoutDlg // add for SdActionDlg class SfxSingleTabDialog; -class AbstractSfxSingleTabDialog_Impl :public AbstractSfxSingleTabDialog +class AbstractSfxDialog_Impl : public SfxAbstractDialog { - DECL_ABSTDLG_BASE(AbstractSfxSingleTabDialog_Impl,SfxSingleTabDialog) + DECL_ABSTDLG_BASE(AbstractSfxDialog_Impl,SfxModalDialog) virtual const SfxItemSet* GetOutputItemSet() const; + virtual void SetText( const XubString& rStr ); + virtual String GetText() const; }; // add for SdVectorizeDlg @@ -285,7 +288,7 @@ public: virtual SfxAbstractTabDialog* CreateSdPresLayoutTemplateDlg( SfxObjectShell* pDocSh, ::Window* pParent, SdResId DlgId, SfxStyleSheetBase& rStyleBase, PresentationObjects ePO, SfxStyleSheetBasePool* pSSPool ); virtual AbstractSdPresLayoutDlg* CreateSdPresLayoutDlg( ::sd::DrawDocShell* pDocShell, ::sd::ViewShell* pViewShell, ::Window* pWindow, const SfxItemSet& rInAttrs); virtual SfxAbstractTabDialog* CreateSdTabTemplateDlg( ::Window* pParent, const SfxObjectShell* pDocShell, SfxStyleSheetBase& rStyleBase, SdrModel* pModel, SdrView* pView ); - virtual AbstractSfxSingleTabDialog* CreatSdActionDialog( ::Window* pParent, const SfxItemSet* pAttr, ::sd::View* pView ); + virtual SfxAbstractDialog* CreatSdActionDialog( ::Window* pParent, const SfxItemSet* pAttr, ::sd::View* pView ); virtual AbstractSdVectorizeDlg* CreateSdVectorizeDlg( ::Window* pParent, const Bitmap& rBmp, ::sd::DrawDocShell* pDocShell ); virtual AbstractSdPublishingDlg* CreateSdPublishingDlg( ::Window* pWindow, DocumentType eDocType); diff --git a/sd/source/ui/func/fubullet.cxx b/sd/source/ui/func/fubullet.cxx index 5d01f6e145f0..64fb3783d78d 100644 --- a/sd/source/ui/func/fubullet.cxx +++ b/sd/source/ui/func/fubullet.cxx @@ -48,9 +48,9 @@ #include "sdresid.hxx" #include #include -#include #include #include +#include #ifdef IRIX #include @@ -98,8 +98,8 @@ FunctionReference FuBullet::Create( ViewShell* pViewSh, ::sd::Window* pWin, ::sd void FuBullet::DoExecute( SfxRequest& rReq ) { - if( rReq.GetSlot() == SID_BULLET ) - InsertSpecialCharacter(); + if( rReq.GetSlot() == SID_CHARMAP ) + InsertSpecialCharacter(rReq); else { sal_Unicode cMark = 0; @@ -173,41 +173,78 @@ void FuBullet::InsertFormattingMark( sal_Unicode cMark ) } } -void FuBullet::InsertSpecialCharacter() +void FuBullet::InsertSpecialCharacter( SfxRequest& rReq ) { - SvxAbstractDialogFactory* pFact = SvxAbstractDialogFactory::Create(); - AbstractSvxCharacterMap* pDlg = pFact ? pFact->CreateSvxCharacterMap( NULL, RID_SVXDLG_CHARMAP, FALSE ) : 0; - - if( !pDlg ) - return; - - SfxItemSet aFontAttr( mpDoc->GetPool() ); - mpView->GetAttributes( aFontAttr ); - const SvxFontItem* pFontItem = (const SvxFontItem*)aFontAttr.GetItem( SID_ATTR_CHAR_FONT ); - if( pFontItem ) - { - Font aCurrentFont( pFontItem->GetFamilyName(), pFontItem->GetStyleName(), Size( 1, 1 ) ); - pDlg->SetFont( aCurrentFont ); - } - - // Wenn Zeichen selektiert ist kann es angezeigt werden - // pDLg->SetFont( ); - // pDlg->SetChar( ); - USHORT nResult = pDlg->Execute(); - - //char c; - String aString; + const SfxItemSet *pArgs = rReq.GetArgs(); + const SfxPoolItem* pItem = 0; + if( pArgs ) + pArgs->GetItemState(mpDoc->GetPool().GetWhich(SID_CHARMAP), FALSE, &pItem); + String aChars, aFontName; Font aFont; - - if( nResult == RET_OK ) + if ( pItem ) { - aFont = pDlg->GetCharFont(); - aString = pDlg->GetCharacters(); + aChars = ((const SfxStringItem*)pItem)->GetValue(); + const SfxPoolItem* pFtItem = NULL; + pArgs->GetItemState( mpDoc->GetPool().GetWhich(SID_ATTR_SPECIALCHAR), FALSE, &pFtItem); + const SfxStringItem* pFontItem = PTR_CAST( SfxStringItem, pFtItem ); + if ( pFontItem ) + { + aFontName = pFontItem->GetValue(); + aFont = Font( aFontName, Size(1,1) ); + } + else + { + SfxItemSet aFontAttr( mpDoc->GetPool() ); + mpView->GetAttributes( aFontAttr ); + const SvxFontItem* pFItem = (const SvxFontItem*)aFontAttr.GetItem( SID_ATTR_CHAR_FONT ); + if( pFItem ) + aFont = Font( pFItem->GetFamilyName(), pFItem->GetStyleName(), Size( 1, 1 ) ); + } } - delete( pDlg ); - if( nResult == RET_OK ) + if (!aChars.Len() ) + { + SfxAllItemSet aSet( mpDoc->GetPool() ); + aSet.Put( SfxBoolItem( FN_PARAM_1, FALSE ) ); + + SfxItemSet aFontAttr( mpDoc->GetPool() ); + mpView->GetAttributes( aFontAttr ); + const SvxFontItem* pFontItem = (const SvxFontItem*)aFontAttr.GetItem( SID_ATTR_CHAR_FONT ); + if( pFontItem ) + aSet.Put( *pFontItem ); + + SvxAbstractDialogFactory* pFact = SvxAbstractDialogFactory::Create(); + SfxAbstractDialog* pDlg = pFact ? pFact->CreateSfxDialog( &mpView->GetViewShell()->GetViewFrame()->GetWindow(), aSet, + mpView->GetViewShell()->GetViewFrame()->GetFrame()->GetFrameInterface(), + RID_SVXDLG_CHARMAP ) : 0; + if( !pDlg ) + return; + + // Wenn Zeichen selektiert ist kann es angezeigt werden + // pDLg->SetFont( ); + // pDlg->SetChar( ); + USHORT nResult = pDlg->Execute(); + if( nResult == RET_OK ) + { + SFX_ITEMSET_ARG( pDlg->GetOutputItemSet(), pCItem, SfxStringItem, SID_CHARMAP, FALSE ); + SFX_ITEMSET_ARG( pDlg->GetOutputItemSet(), pFItem, SvxFontItem, SID_ATTR_CHAR_FONT, FALSE ); + if ( pFItem ) + { + aFont.SetName( pFItem->GetFamilyName() ); + aFont.SetStyleName( pFItem->GetStyleName() ); + aFont.SetCharSet( pFItem->GetCharSet() ); + aFont.SetPitch( pFItem->GetPitch() ); + } + + if ( pCItem ) + aChars = pCItem->GetValue(); + } + + delete( pDlg ); + } + + if( aChars.Len() ) { OutlinerView* pOV = NULL; ::Outliner* pOL = NULL; @@ -248,7 +285,7 @@ void FuBullet::InsertSpecialCharacter() SfxUndoManager& rUndoMgr = pOL->GetUndoManager(); rUndoMgr.EnterListAction(String(SdResId(STR_UNDO_INSERT_SPECCHAR)), aEmptyStr ); - pOV->InsertText(aString, TRUE); + pOV->InsertText(aChars, TRUE); // attributieren (Font setzen) SfxItemSet aSet(pOL->GetEmptyItemSet()); @@ -280,7 +317,7 @@ void FuBullet::InsertSpecialCharacter() void FuBullet::GetSlotState( SfxItemSet& rSet, ViewShell* pViewShell, SfxViewFrame* pViewFrame ) { - if( SFX_ITEM_AVAILABLE == rSet.GetItemState( SID_BULLET ) || + if( SFX_ITEM_AVAILABLE == rSet.GetItemState( SID_CHARMAP ) || SFX_ITEM_AVAILABLE == rSet.GetItemState( FN_INSERT_SOFT_HYPHEN ) || SFX_ITEM_AVAILABLE == rSet.GetItemState( FN_INSERT_HARDHYPHEN ) || SFX_ITEM_AVAILABLE == rSet.GetItemState( FN_INSERT_HARD_SPACE ) || @@ -305,7 +342,7 @@ void FuBullet::GetSlotState( SfxItemSet& rSet, ViewShell* pViewShell, SfxViewFra } if( !bTextEdit && (dynamic_cast( pViewShell ) == 0) ) - rSet.DisableItem(SID_BULLET); + rSet.DisableItem(SID_CHARMAP); if(!bTextEdit || !bCtlEnabled ) { diff --git a/sd/source/ui/func/fuconnct.cxx b/sd/source/ui/func/fuconnct.cxx index 451c442cd2ce..7542aff67e7a 100644 --- a/sd/source/ui/func/fuconnct.cxx +++ b/sd/source/ui/func/fuconnct.cxx @@ -79,7 +79,7 @@ void FuConnectionDlg::DoExecute( SfxRequest& rReq ) if( !pArgs ) { SvxAbstractDialogFactory* pFact = SvxAbstractDialogFactory::Create(); - ::std::auto_ptr pDlg( pFact ? pFact->CreateSfxSingleTabDialog( NULL, aNewAttr, mpView, RID_SVXPAGE_CONNECTION) : 0); + ::std::auto_ptr pDlg( pFact ? pFact->CreateSfxDialog( NULL, aNewAttr, mpView, RID_SVXPAGE_CONNECTION) : 0); if( pDlg.get() && (pDlg->Execute() == RET_OK) ) { diff --git a/sd/source/ui/func/fumeasur.cxx b/sd/source/ui/func/fumeasur.cxx index 28e4957d4208..948117b22425 100644 --- a/sd/source/ui/func/fumeasur.cxx +++ b/sd/source/ui/func/fumeasur.cxx @@ -78,7 +78,7 @@ void FuMeasureDlg::DoExecute( SfxRequest& rReq ) if( !pArgs ) { SvxAbstractDialogFactory* pFact = SvxAbstractDialogFactory::Create(); - ::std::auto_ptr pDlg( pFact ? pFact->CreateSfxSingleTabDialog( NULL, aNewAttr, mpView, RID_SVXPAGE_MEASURE) : 0 ); + ::std::auto_ptr pDlg( pFact ? pFact->CreateSfxDialog( NULL, aNewAttr, mpView, RID_SVXPAGE_MEASURE) : 0 ); if( pDlg.get() && (pDlg->Execute() == RET_OK) ) { diff --git a/sd/source/ui/func/fuoaprms.cxx b/sd/source/ui/func/fuoaprms.cxx index d96b65d00510..965b52b3a94b 100644 --- a/sd/source/ui/func/fuoaprms.cxx +++ b/sd/source/ui/func/fuoaprms.cxx @@ -474,7 +474,7 @@ void FuObjectAnimationParameters::DoExecute( SfxRequest& rReq ) aSet.Put(SfxBoolItem(ATTR_ACTION_PLAYFULL, FALSE)); SdAbstractDialogFactory* pFact = SdAbstractDialogFactory::Create(); - AbstractSfxSingleTabDialog* pDlg = pFact ? pFact->CreatSdActionDialog( NULL, &aSet, mpView ) : 0; + SfxAbstractDialog* pDlg = pFact ? pFact->CreatSdActionDialog( NULL, &aSet, mpView ) : 0; USHORT nResult = pDlg ? pDlg->Execute() : RET_CANCEL; diff --git a/sd/source/ui/func/futext.cxx b/sd/source/ui/func/futext.cxx index 265aedcd90dc..cb6b42dfc2fb 100644 --- a/sd/source/ui/func/futext.cxx +++ b/sd/source/ui/func/futext.cxx @@ -120,12 +120,12 @@ static USHORT SidArray[] = { SID_SET_SUPER_SCRIPT, // 10294 SID_SET_SUB_SCRIPT, // 10295 SID_HYPERLINK_GETLINK, // 10361 + SID_CHARMAP, // 10503 SID_TEXTDIRECTION_LEFT_TO_RIGHT, // 10907 SID_TEXTDIRECTION_TOP_TO_BOTTOM, // 10908 SID_ATTR_PARA_LEFT_TO_RIGHT, // 10950 SID_ATTR_PARA_RIGHT_TO_LEFT, // 10951 FN_NUM_BULLET_ON, // 20138 - SID_BULLET, // 27019 SID_PARASPACE_INCREASE, // 27346 SID_PARASPACE_DECREASE, // 27347 0 }; diff --git a/sd/source/ui/inc/fubullet.hxx b/sd/source/ui/inc/fubullet.hxx index 47c0fb1a7f23..0b41711995f2 100644 --- a/sd/source/ui/inc/fubullet.hxx +++ b/sd/source/ui/inc/fubullet.hxx @@ -58,7 +58,7 @@ private: SdDrawDocument* pDoc, SfxRequest& rReq); - void InsertSpecialCharacter(); + void InsertSpecialCharacter( SfxRequest& rReq ); void InsertFormattingMark( sal_Unicode cMark ); }; diff --git a/sd/source/ui/view/drviews8.cxx b/sd/source/ui/view/drviews8.cxx index df12d7982ccb..d2ea0daf06b7 100644 --- a/sd/source/ui/view/drviews8.cxx +++ b/sd/source/ui/view/drviews8.cxx @@ -153,7 +153,7 @@ void DrawViewShell::FuTemp01(SfxRequest& rReq) case SID_INSERT_LRM : case SID_INSERT_ZWNBSP : case SID_INSERT_ZWSP: - case SID_BULLET: + case SID_CHARMAP: { SetCurrentFunction( FuBullet::Create( this, GetActiveWindow(), mpDrawView, GetDoc(), rReq ) ); Cancel(); diff --git a/sd/source/ui/view/drviewsj.cxx b/sd/source/ui/view/drviewsj.cxx index d3485b8d6a0f..068fd64908c6 100644 --- a/sd/source/ui/view/drviewsj.cxx +++ b/sd/source/ui/view/drviewsj.cxx @@ -415,7 +415,7 @@ void DrawViewShell::GetMenuStateSel( SfxItemSet &rSet ) { rSet.DisableItem( SID_CHAR_DLG ); rSet.DisableItem( SID_PARA_DLG ); - rSet.DisableItem( SID_BULLET ); + rSet.DisableItem( SID_CHARMAP ); } */ if( bLine && !bText && !bDrawObj &&!b3dObj) diff --git a/sd/source/ui/view/outlnvs2.cxx b/sd/source/ui/view/outlnvs2.cxx index b6ee524d6555..9a47f15ff512 100644 --- a/sd/source/ui/view/outlnvs2.cxx +++ b/sd/source/ui/view/outlnvs2.cxx @@ -378,7 +378,7 @@ void OutlineViewShell::FuTemporaryModify(SfxRequest &rReq) case SID_INSERT_LRM : case SID_INSERT_ZWNBSP : case SID_INSERT_ZWSP: - case SID_BULLET: + case SID_CHARMAP: { SetCurrentFunction( FuBullet::Create( this, GetActiveWindow(), pOlView, GetDoc(), rReq ) ); Cancel(); diff --git a/sd/uiconfig/sdraw/menubar/menubar.xml b/sd/uiconfig/sdraw/menubar/menubar.xml index cccca6974eb4..74161968dffa 100644 --- a/sd/uiconfig/sdraw/menubar/menubar.xml +++ b/sd/uiconfig/sdraw/menubar/menubar.xml @@ -129,7 +129,7 @@ - + diff --git a/sd/uiconfig/sdraw/toolbar/textobjectbar.xml b/sd/uiconfig/sdraw/toolbar/textobjectbar.xml index 53dcf7eb3b19..d364ca42e771 100644 --- a/sd/uiconfig/sdraw/toolbar/textobjectbar.xml +++ b/sd/uiconfig/sdraw/toolbar/textobjectbar.xml @@ -36,5 +36,5 @@ - + \ No newline at end of file diff --git a/sd/uiconfig/simpress/menubar/menubar.xml b/sd/uiconfig/simpress/menubar/menubar.xml index 6f3fa7703cff..f227cc960237 100644 --- a/sd/uiconfig/simpress/menubar/menubar.xml +++ b/sd/uiconfig/simpress/menubar/menubar.xml @@ -146,7 +146,7 @@ - + diff --git a/sd/uiconfig/simpress/toolbar/textobjectbar.xml b/sd/uiconfig/simpress/toolbar/textobjectbar.xml index 798b7ff38cc6..f91767c983ed 100644 --- a/sd/uiconfig/simpress/toolbar/textobjectbar.xml +++ b/sd/uiconfig/simpress/toolbar/textobjectbar.xml @@ -39,7 +39,7 @@ - + \ No newline at end of file From 8857e1441c2c4ae53add274bc3710f0e7047dc54 Mon Sep 17 00:00:00 2001 From: Release Engineers Date: Wed, 6 May 2009 21:51:02 +0000 Subject: [PATCH 05/12] CWS-TOOLING: integrate CWS impress168 2009-04-24 11:26:33 +0200 wg r271204 : i101157 2009-04-24 10:17:59 +0200 wg r271200 : i101157 2009-04-23 15:50:12 +0200 wg r271178 : i101157 2009-04-23 15:16:58 +0200 wg r271176 : i101157 2009-04-23 13:04:41 +0200 wg r271158 : i101157 2009-04-22 15:39:32 +0200 wg r271123 : i101157 2009-04-22 14:27:24 +0200 wg r271111 : i101157 2009-04-22 14:14:02 +0200 wg r271109 : i101157 2009-04-17 14:34:19 +0200 wg r270946 : i101157 2009-04-17 13:49:15 +0200 wg r270939 : i101157 2009-03-31 14:54:52 +0200 sj r270281 : CWS-TOOLING: rebase CWS impress168 to trunk@270033 (milestone: DEV300:m45) 2009-03-26 16:56:44 +0100 sj r270089 : removed invalid file names 2009-03-24 14:02:54 +0100 sj r269944 : CWS-TOOLING: rebase CWS impress168 to trunk@269781 (milestone: DEV300:m44) 2009-03-06 16:32:14 +0100 sj r269020 : #i99970# importing customshapes without group object, taking care of the correct text alignment 2009-02-27 13:53:24 +0100 sj r268591 : #158501,158483# fixed positioning problem of 3d customshapes 2009-02-19 16:02:00 +0100 sj r268292 : #76543# fixed interactive hyperlink program action with relativ url 2009-02-18 15:36:52 +0100 sj r268233 : #158503# added import of circular gradients for ellipse shapes 2009-02-16 19:51:54 +0100 sj r267836 : #i99146# calculating correct text bounds 2009-02-12 13:59:46 +0100 sj r267654 : #i96179# fixed bullet problem 2009-02-10 17:26:41 +0100 sj r267566 : #158476# fixed import of the ribbon shape 2009-02-10 17:10:27 +0100 cl r267561 : #i95364# fixed type detection of linked images 2009-02-09 18:31:59 +0100 cl r267531 : #i98352# removed assertion 2009-02-09 18:31:17 +0100 cl r267530 : #i98355# fixed alien attribute import for sd in binfilter 2009-02-09 18:30:53 +0100 cl r267529 : #i98355# fixed alien attribute import for sd in binfilter 2009-02-09 09:52:15 +0100 cl r267501 : #i98573# fixed build error 2009-02-06 17:02:21 +0100 sj r267476 : #i96179# fixed bullet problem 2009-02-06 14:58:39 +0100 cl r267466 : #i14832# fixed page count field for handout printing 2009-02-06 10:23:01 +0100 cl r267447 : #i98573# fixed GetEditOutlinerParaObject() memory leak 2009-02-05 18:03:34 +0100 cl r267435 : #i98573# fixed GetEditOutlinerParaObject() memory leak 2009-02-05 18:03:08 +0100 cl r267434 : #i85481# added XMultiPropertyStates to text implementations 2009-02-05 18:02:54 +0100 cl r267433 : #i85481# added XMultiPropertyStates to text implementations 2009-02-05 18:02:42 +0100 cl r267432 : #i85481# added XMultiPropertyStates to text implementations 2009-02-04 18:54:46 +0100 sj r267400 : #i33630# fixed arrow size of word import 2009-02-04 15:40:16 +0100 cl r267389 : #i58702# fixed tiled bitmap fill for vcl canvas 2009-02-04 15:39:07 +0100 cl r267388 : #i58702# fixed tiled bitmap fill for vcl canvas 2009-02-04 14:23:27 +0100 cl r267382 : #i98573# fixed memory leaks caused by wron usage of GetEditOutlinerParaObject() 2009-02-04 14:22:34 +0100 cl r267381 : #i98573# fixed memory leaks caused by wron usage of GetEditOutlinerParaObject() 2009-02-04 12:51:50 +0100 cl r267371 : #i14832# added Page Count field to impress 2009-02-04 12:41:31 +0100 cl r267368 : #i14832# added Page Count field to impress --- sd/inc/app.hrc | 2 ++ sd/sdi/_drvwsh.sdi | 5 +++ sd/sdi/outlnvsh.sdi | 5 +++ sd/sdi/sdraw.sdi | 25 ++++++++++++++ sd/source/filter/grf/sdgrffilter.cxx | 13 ++++--- sd/source/filter/pptin.cxx | 20 ++++++++--- sd/source/ui/app/sdmod2.cxx | 44 ++++++++++++++++++++++++ sd/source/ui/app/strings.src | 4 +++ sd/source/ui/inc/ViewShell.hxx | 4 +++ sd/source/ui/inc/strings.hrc | 1 + sd/source/ui/unoidl/unoobj.cxx | 20 ++++++++--- sd/source/ui/view/PrintManager.cxx | 3 ++ sd/source/ui/view/drviews7.cxx | 1 + sd/source/ui/view/drviewsb.cxx | 8 +++++ sd/source/ui/view/outlnvs2.cxx | 8 ++++- sd/source/ui/view/viewshel.cxx | 1 + sd/uiconfig/sdraw/menubar/menubar.xml | 3 +- sd/uiconfig/simpress/menubar/menubar.xml | 3 +- 18 files changed, 154 insertions(+), 16 deletions(-) diff --git a/sd/inc/app.hrc b/sd/inc/app.hrc index defab564e5ff..15d7144e752a 100644 --- a/sd/inc/app.hrc +++ b/sd/inc/app.hrc @@ -394,6 +394,8 @@ #define SID_PREVIEW_QUALITY_BLACKWHITE (SID_SD_START+371) #define SID_VECTORIZE (SID_SD_START+372) +#define SID_INSERT_FLD_PAGES (SID_SD_START+373) + #define SID_CONVERT_TO_BITMAP (SID_SD_START+378) #define SID_CONVERT_TO_METAFILE (SID_SD_START+379) diff --git a/sd/sdi/_drvwsh.sdi b/sd/sdi/_drvwsh.sdi index f8d76d3d6006..8f758dda5858 100644 --- a/sd/sdi/_drvwsh.sdi +++ b/sd/sdi/_drvwsh.sdi @@ -2116,6 +2116,11 @@ interface DrawView ExecMethod = FuTemporary ; StateMethod = GetMenuState ; ] + SID_INSERT_FLD_PAGES // ole : no, status : play rec + [ + ExecMethod = FuTemporary ; + StateMethod = GetMenuState ; + ] SID_INSERT_FLD_FILE // ole : no, status : play rec [ ExecMethod = FuTemporary ; diff --git a/sd/sdi/outlnvsh.sdi b/sd/sdi/outlnvsh.sdi index 6d30615dbd79..3b0c49af6901 100644 --- a/sd/sdi/outlnvsh.sdi +++ b/sd/sdi/outlnvsh.sdi @@ -391,6 +391,11 @@ interface OutlineView ExecMethod = FuTemporaryModify ; StateMethod = GetMenuState ; ] + SID_INSERT_FLD_PAGES // ole : no, status : play rec + [ + ExecMethod = FuTemporaryModify ; + StateMethod = GetMenuState ; + ] SID_INSERT_FLD_FILE // ole : no, status : play rec [ ExecMethod = FuTemporaryModify ; diff --git a/sd/sdi/sdraw.sdi b/sd/sdi/sdraw.sdi index 3ad34d263fe4..515b5b6b84ce 100644 --- a/sd/sdi/sdraw.sdi +++ b/sd/sdi/sdraw.sdi @@ -3585,6 +3585,31 @@ SfxVoidItem InsertPageField SID_INSERT_FLD_PAGE GroupId = GID_INSERT; ] +//-------------------------------------------------------------------------- +SfxVoidItem InsertPagesField SID_INSERT_FLD_PAGES +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + RecordAbsolute = FALSE, + RecordPerSet; + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_INSERT; +] + //-------------------------------------------------------------------------- SfxVoidItem InsertPageQuick SID_INSERTPAGE_QUICK () diff --git a/sd/source/filter/grf/sdgrffilter.cxx b/sd/source/filter/grf/sdgrffilter.cxx index 747f9efb5b34..bb3c114f603f 100644 --- a/sd/source/filter/grf/sdgrffilter.cxx +++ b/sd/source/filter/grf/sdgrffilter.cxx @@ -398,16 +398,21 @@ void SdGRFFilter::SaveGraphic( const ::com::sun::star::uno::Reference< ::com::su // detect mime type of graphic OUString aMimeType; + OUString sGraphicURL; // first try to detect from graphic object Reference< XPropertySet > xGraphicSet( xShapeSet->getPropertyValue( OUString( RTL_CONSTASCII_USTRINGPARAM( "Graphic" ) ) ), UNO_QUERY_THROW ); - xGraphicSet->getPropertyValue( OUString( RTL_CONSTASCII_USTRINGPARAM( "MimeType" ) ) ) >>= aMimeType; + xShapeSet->getPropertyValue( OUString( RTL_CONSTASCII_USTRINGPARAM( "GraphicURL" ) ) ) >>= sGraphicURL; - if( aMimeType.equalsAsciiL( RTL_CONSTASCII_STRINGPARAM( "image/x-vclgraphic" ) ) || !aMimeType.getLength() ) + bool bIsLinked = (sGraphicURL.getLength() != 0) && (sGraphicURL.compareToAscii( RTL_CONSTASCII_STRINGPARAM("vnd.sun.star.GraphicObject:") ) != 0); + + if( !bIsLinked ) + xGraphicSet->getPropertyValue( OUString( RTL_CONSTASCII_USTRINGPARAM( "MimeType" ) ) ) >>= aMimeType; + + if( bIsLinked || aMimeType.equalsAsciiL( RTL_CONSTASCII_STRINGPARAM( "image/x-vclgraphic" ) ) || !aMimeType.getLength() ) { // this failed, try to detect it from graphic stream and URL - OUString aURL; - xShapeSet->getPropertyValue( OUString( RTL_CONSTASCII_USTRINGPARAM( "GraphicURL" ) ) ) >>= aURL; + OUString aURL( sGraphicURL ); if( aURL.getLength() == 0 ) xShapeSet->getPropertyValue( OUString( RTL_CONSTASCII_USTRINGPARAM( "GraphicStreamURL" ) ) ) >>= aURL; diff --git a/sd/source/filter/pptin.cxx b/sd/source/filter/pptin.cxx index 84da311f1763..dae9e427aa35 100644 --- a/sd/source/filter/pptin.cxx +++ b/sd/source/filter/pptin.cxx @@ -40,6 +40,7 @@ #ifndef _SVXIDS_HRC #include #endif +#include #include #include #include @@ -2160,17 +2161,28 @@ void ImplSdPPTImport::FillSdAnimationInfo( SdAnimationInfo* pInfo, PptInteractiv switch( pIAtom->nHyperlinkType ) { case 9: - case 10: - break; case 8: // hyperlink : URL { if ( pPtr->aTarget.Len() ) { - pInfo->maBookmark = String( pPtr->aTarget ); - pInfo->meClickAction = ::com::sun::star::presentation::ClickAction_DOCUMENT; + ::sd::DrawDocShell* pDocShell = mpDoc->GetDocSh(); + if ( pDocShell ) + { + String aBaseURL = pDocShell->GetMedium()->GetBaseURL(); + INetURLObject aURL( pPtr->aTarget ); + if( INET_PROT_NOT_VALID == aURL.GetProtocol() ) + utl::LocalFileHelper::ConvertSystemPathToURL( pPtr->aTarget, aBaseURL, pInfo->maBookmark ); + if( !pInfo->maBookmark.Len() ) + pInfo->maBookmark = URIHelper::SmartRel2Abs( INetURLObject(aBaseURL), pPtr->aTarget, URIHelper::GetMaybeFileHdl(), true ); + pInfo->meClickAction = ::com::sun::star::presentation::ClickAction_PROGRAM; + } } } break; + + case 10: + break; + case 7: // hyperlink auf eine Seite { if ( pPtr->aConvSubString.Len() ) diff --git a/sd/source/ui/app/sdmod2.cxx b/sd/source/ui/app/sdmod2.cxx index 1b8438e808ed..bbf80e942602 100644 --- a/sd/source/ui/app/sdmod2.cxx +++ b/sd/source/ui/app/sdmod2.cxx @@ -273,6 +273,50 @@ IMPL_LINK(SdModule, CalcFieldValueHdl, EditFieldInfo*, pInfo) pInfo->SetRepresentation( aRepresentation ); } + else if( dynamic_cast< const SvxPagesField* >(pField) ) + { + String aRepresentation; + aRepresentation += sal_Unicode( ' ' ); + + ::sd::ViewShell* pViewSh = pDocShell ? pDocShell->GetViewShell() : NULL; + if(pViewSh == NULL) + { + ::sd::ViewShellBase* pBase = PTR_CAST(::sd::ViewShellBase, SfxViewShell::Current()); + if(pBase) + pViewSh = pBase->GetMainViewShell().get(); + } + if( !pDoc && pViewSh ) + pDoc = pViewSh->GetDoc(); + + bool bMasterView; + SdPage* pPage = GetCurrentPage( pViewSh, pInfo, bMasterView ); + + USHORT nPageCount = 0; + + if( !bMasterView ) + { + if( pPage && (pPage->GetPageKind() == PK_HANDOUT) && pViewSh ) + { + nPageCount = pViewSh->GetPrintedHandoutPageCount(); + } + else if( pDoc ) + { + nPageCount = (USHORT)pDoc->GetSdPageCount(PK_STANDARD); + } + } + + if( nPageCount > 0 ) + { + aRepresentation = pDoc->CreatePageNumValue(nPageCount); + } + else + { + static String aNumberText( SdResId( STR_FIELD_PLACEHOLDER_COUNT ) ); + aRepresentation = aNumberText; + } + + pInfo->SetRepresentation( aRepresentation ); + } else if( (pURLField = dynamic_cast< const SvxURLField* >(pField)) != 0 ) { switch ( pURLField->GetFormat() ) diff --git a/sd/source/ui/app/strings.src b/sd/source/ui/app/strings.src index 9b85e933bedc..7bea646e3122 100644 --- a/sd/source/ui/app/strings.src +++ b/sd/source/ui/app/strings.src @@ -1166,6 +1166,10 @@ String STR_FIELD_PLACEHOLDER_NUMBER { Text [ en-US ] = "" ; }; +String STR_FIELD_PLACEHOLDER_COUNT +{ + Text [ en-US ]="" ; +}; String STR_PLACEHOLDER_DESCRIPTION_NOTES { diff --git a/sd/source/ui/inc/ViewShell.hxx b/sd/source/ui/inc/ViewShell.hxx index 6ccea228c3a7..395566f0cded 100644 --- a/sd/source/ui/inc/ViewShell.hxx +++ b/sd/source/ui/inc/ViewShell.hxx @@ -301,6 +301,9 @@ public: USHORT GetPrintedHandoutPageNum (void) const { return mnPrintedHandoutPageNum; } void SetPrintedHandoutPageNum (USHORT nPageNumber) {mnPrintedHandoutPageNum=nPageNumber; } + USHORT GetPrintedHandoutPageCount(void) const { return mnPrintedHandoutPageCount; } + void SetPrintedHandoutPageCount (USHORT nPageCount) {mnPrintedHandoutPageCount=nPageCount; } + virtual USHORT PrepareClose( BOOL bUI = TRUE, BOOL bForBrowsing = FALSE ); void GetMenuState(SfxItemSet& rSet); @@ -496,6 +499,7 @@ protected: BOOL mbStartShowWithDialog; // Praesentation wurde ueber Dialog gestartet USHORT mnPrintedHandoutPageNum; // Page number of the handout page that is to be printed. + USHORT mnPrintedHandoutPageCount; // Page count of the handout pages that are to be printed. //af BOOL bPrintDirectSelected; // Print only selected objects in direct print //afString sPageRange; // pagerange if selected objects in direct print diff --git a/sd/source/ui/inc/strings.hrc b/sd/source/ui/inc/strings.hrc index db2683bf5c6c..5deb5e900a93 100644 --- a/sd/source/ui/inc/strings.hrc +++ b/sd/source/ui/inc/strings.hrc @@ -488,6 +488,7 @@ #define STR_FIELD_PLACEHOLDER_NUMBER (RID_APP_START+695) #define STR_UNDO_HANGULHANJACONVERSION (RID_APP_START+696) +#define STR_FIELD_PLACEHOLDER_COUNT (RID_APP_START+697) #define STR_LEFT_PANE_DRAW_TITLE (RID_APP_START+700) #define STR_LEFT_PANE_IMPRESS_TITLE (RID_APP_START+701) diff --git a/sd/source/ui/unoidl/unoobj.cxx b/sd/source/ui/unoidl/unoobj.cxx index 5b4ac09726bc..149350df17b0 100644 --- a/sd/source/ui/unoidl/unoobj.cxx +++ b/sd/source/ui/unoidl/unoobj.cxx @@ -909,12 +909,22 @@ sal_Bool SdXShape::IsPresObj() const throw() sal_Bool SdXShape::IsEmptyPresObj() const throw() { SdrObject* pObj = mpShape->GetSdrObject(); - if( pObj == NULL || !pObj->IsEmptyPresObj() ) - return sal_False; + if( (pObj != NULL) && pObj->IsEmptyPresObj() ) + { + // check if the object is in edit, than its temporarely not empty + SdrTextObj* pTextObj = dynamic_cast< SdrTextObj* >( pObj ); + if( pTextObj == 0 ) + return sal_True; - // check if the object is in edit, than its temporarely not empty - SdrTextObj* pTextObj = PTR_CAST( SdrTextObj, pObj ); - return (NULL == pTextObj) || ( NULL == pTextObj->GetEditOutlinerParaObject() ); + OutlinerParaObject* pParaObj = pTextObj->GetEditOutlinerParaObject(); + if( pParaObj ) + { + delete pParaObj; + return sal_True; + } + } + + return sal_False; } /** sets/reset the empty status of a presentation object diff --git a/sd/source/ui/view/PrintManager.cxx b/sd/source/ui/view/PrintManager.cxx index 774eaf2accaa..5b4fbf8eb30f 100644 --- a/sd/source/ui/view/PrintManager.cxx +++ b/sd/source/ui/view/PrintManager.cxx @@ -1128,6 +1128,8 @@ void PrintManager::PrintHandout( PrintInfo& rInfo, USHORT nPage ) if( aPageObjVector.empty() ) return; + rInfo.mrViewShell.SetPrintedHandoutPageCount( (USHORT)((aPagesVector.size() + aPageObjVector.size() - 1) / aPageObjVector.size()) ); + /* sal_Int32 nHandoutPageCount = aPagesVector.size() / aPageObjVector.size(); sal_Int32 nHandoutPage = 0; @@ -1212,6 +1214,7 @@ void PrintManager::PrintHandout( PrintInfo& rInfo, USHORT nPage ) } rInfo.mrViewShell.SetPrintedHandoutPageNum(1); + rInfo.mrViewShell.SetPrintedHandoutPageCount(0); delete pPrintView; rInfo.mrPrinter.SetMapMode(aOldMap); } diff --git a/sd/source/ui/view/drviews7.cxx b/sd/source/ui/view/drviews7.cxx index b3f1c78c7e2c..bbdb31adf460 100644 --- a/sd/source/ui/view/drviews7.cxx +++ b/sd/source/ui/view/drviews7.cxx @@ -1026,6 +1026,7 @@ void DrawViewShell::GetMenuState( SfxItemSet &rSet ) rSet.DisableItem( SID_INSERT_FLD_TIME_VAR ); rSet.DisableItem( SID_INSERT_FLD_AUTHOR ); rSet.DisableItem( SID_INSERT_FLD_PAGE ); + rSet.DisableItem( SID_INSERT_FLD_PAGES ); rSet.DisableItem( SID_INSERT_FLD_FILE ); rSet.DisableItem( SID_INSERT_GRAPHIC ); diff --git a/sd/source/ui/view/drviewsb.cxx b/sd/source/ui/view/drviewsb.cxx index 8efa756ed09c..9a94cae21983 100644 --- a/sd/source/ui/view/drviewsb.cxx +++ b/sd/source/ui/view/drviewsb.cxx @@ -502,6 +502,7 @@ void DrawViewShell::FuTemp02(SfxRequest& rReq) case SID_INSERT_FLD_TIME_VAR: case SID_INSERT_FLD_AUTHOR: case SID_INSERT_FLD_PAGE: + case SID_INSERT_FLD_PAGES: case SID_INSERT_FLD_FILE: { USHORT nMul = 1; @@ -543,6 +544,13 @@ void DrawViewShell::FuTemp02(SfxRequest& rReq) } break; + case SID_INSERT_FLD_PAGES: + { + pFieldItem = new SvxFieldItem( SvxPagesField(), EE_FEATURE_FIELD ); + nMul = 3; + } + break; + case SID_INSERT_FLD_FILE: { String aName; diff --git a/sd/source/ui/view/outlnvs2.cxx b/sd/source/ui/view/outlnvs2.cxx index 9a47f15ff512..99fbcb7f2eda 100644 --- a/sd/source/ui/view/outlnvs2.cxx +++ b/sd/source/ui/view/outlnvs2.cxx @@ -485,6 +485,7 @@ void OutlineViewShell::FuTemporaryModify(SfxRequest &rReq) case SID_INSERT_FLD_TIME_VAR: case SID_INSERT_FLD_AUTHOR: case SID_INSERT_FLD_PAGE: + case SID_INSERT_FLD_PAGES: case SID_INSERT_FLD_FILE: { SvxFieldItem* pFieldItem = 0; @@ -523,6 +524,10 @@ void OutlineViewShell::FuTemporaryModify(SfxRequest &rReq) pFieldItem = new SvxFieldItem( SvxPageField(), EE_FEATURE_FIELD ); break; + case SID_INSERT_FLD_PAGES: + pFieldItem = new SvxFieldItem( SvxPagesField(), EE_FEATURE_FIELD ); + break; + case SID_INSERT_FLD_FILE: { String aName; @@ -543,7 +548,8 @@ void OutlineViewShell::FuTemporaryModify(SfxRequest &rReq) pOldFldItem->GetField()->ISA( SvxExtTimeField ) || pOldFldItem->GetField()->ISA( SvxExtFileField ) || pOldFldItem->GetField()->ISA( SvxAuthorField ) || - pOldFldItem->GetField()->ISA( SvxPageField ) ) ) + pOldFldItem->GetField()->ISA( SvxPageField ) || + pOldFldItem->GetField()->ISA( SvxPagesField )) ) { // Feld selektieren, so dass es beim Insert geloescht wird ESelection aSel = pOutlinerView->GetSelection(); diff --git a/sd/source/ui/view/viewshel.cxx b/sd/source/ui/view/viewshel.cxx index 6de0865217b3..c179385f1c2e 100644 --- a/sd/source/ui/view/viewshel.cxx +++ b/sd/source/ui/view/viewshel.cxx @@ -215,6 +215,7 @@ void ViewShell::construct(void) mpZoomList = 0; mbStartShowWithDialog = FALSE; mnPrintedHandoutPageNum = 1; + mnPrintedHandoutPageCount = 0; mpWindowUpdater.reset( new ::sd::WindowUpdater() ); mpImpl.reset(new Implementation(*this)); meShellType = ST_NONE; diff --git a/sd/uiconfig/sdraw/menubar/menubar.xml b/sd/uiconfig/sdraw/menubar/menubar.xml index 74161968dffa..e34baec0f29c 100644 --- a/sd/uiconfig/sdraw/menubar/menubar.xml +++ b/sd/uiconfig/sdraw/menubar/menubar.xml @@ -126,7 +126,8 @@ - + + diff --git a/sd/uiconfig/simpress/menubar/menubar.xml b/sd/uiconfig/simpress/menubar/menubar.xml index f227cc960237..ece53ad4c918 100644 --- a/sd/uiconfig/simpress/menubar/menubar.xml +++ b/sd/uiconfig/simpress/menubar/menubar.xml @@ -143,7 +143,8 @@ - + + From c0c40433d3ce8cb41eaf68e8fc45aca06f0e477a Mon Sep 17 00:00:00 2001 From: Release Engineers Date: Thu, 7 May 2009 06:54:56 +0000 Subject: [PATCH 06/12] CWS-TOOLING: integrate CWS cmcfixes58 2009-05-04 13:51:10 +0200 cmc r271450 : #i101533# latest sw warnings 2009-05-04 00:02:46 +0200 cmc r271436 : #i101517# silence new warnings 2009-05-03 23:13:53 +0200 cmc r271435 : #i101305# add that one back in 2009-05-02 16:30:42 +0200 cmc r271431 : #i101493# get it to build, and remove some warnings 2009-05-02 16:12:37 +0200 cmc r271430 : CWS-TOOLING: rebase CWS cmcfixes58 to trunk@271427 (milestone: DEV300:m47) 2009-04-23 13:19:33 +0200 cmc r271163 : #i101305# remove annoying import foo is unused warnings 2009-04-21 17:10:34 +0200 cmc r271048 : #i101246# remove AVMEDIA_MANAGER_SERVICE_NAME defines again 2009-04-21 17:07:41 +0200 cmc r271047 : #i86323# remove xml2cmp unused methods --- sd/source/ui/slideshow/slideshowimpl.cxx | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/sd/source/ui/slideshow/slideshowimpl.cxx b/sd/source/ui/slideshow/slideshowimpl.cxx index 4128a0d9a93f..c0b4857f3f6b 100644 --- a/sd/source/ui/slideshow/slideshowimpl.cxx +++ b/sd/source/ui/slideshow/slideshowimpl.cxx @@ -90,17 +90,6 @@ #include #include -// TODO(Q3): This breaks encapsulation. Either export -// these strings from avmedia, or provide an XManager -// factory there -#ifdef WNT -# define AVMEDIA_MANAGER_SERVICE_NAME "com.sun.star.media.Manager_DirectX" -#elif defined QUARTZ -# define AVMEDIA_MANAGER_SERVICE_NAME "com.sun.star.media.Manager_QuickTime" -#else -# define AVMEDIA_MANAGER_SERVICE_NAME "com.sun.star.media.Manager_Java" -#endif - using ::rtl::OUString; using ::rtl::OString; using ::cppu::OInterfaceContainerHelper; From 3868442ba92baf4b3090fdb9f3fb1ed3e4d0b0ea Mon Sep 17 00:00:00 2001 From: Release Engineers Date: Thu, 7 May 2009 12:38:03 +0000 Subject: [PATCH 07/12] CWS-TOOLING: integrate CWS impress170 2009-04-28 10:31:12 +0200 wg r271308 : i101397 2009-04-14 17:56:43 +0200 af r270805 : #i100829# Removed line that became obsolete in last change. 2009-04-14 15:12:19 +0200 af r270782 : #i97199# Made accelerators in text attribute dialog unique. 2009-04-14 14:42:53 +0200 af r270775 : #i98364# Create regular task pane master previews even in high contrast mode. 2009-04-09 14:43:32 +0200 af r270708 : #i92792# Show icon instead of text and register resource for 'Table Design'. 2009-04-09 14:42:51 +0200 af r270707 : #i92792# Show icon instead of text and register resource for 'Table Design'. 2009-04-09 11:15:32 +0200 af r270683 : #i85921# Applied patch that adds direct activation of master mode to task pane context menu. 2009-04-08 15:12:54 +0200 af r270654 : #i94775# Passing snap line index from context menu to FuSnapLine. 2009-04-06 15:33:04 +0200 af r270555 : #i95371# Return early from MoveToTop() when the dispatcher is (not yet) available. 2009-04-06 13:15:42 +0200 af r270538 : #i97571# Fixed forwarding MouseButtonUp() calls to parent. 2009-04-03 16:10:08 +0200 af r270498 : #i100830# Adjusted the sizes of some rectangles displayed by the slide sorter. 2009-04-03 16:02:08 +0200 af r270496 : #i93086# Storing position of insertion indicator explicitly at SelectionManager. 2009-04-03 15:55:59 +0200 af r270493 : #i100829# Calling UpdatePageBorders() when the model is changed. --- sd/inc/app.hrc | 1 + sd/sdi/TaskPaneViewShell.sdi | 31 ++++++++ .../CustomAnimationCreateDialog.cxx | 4 +- sd/source/ui/app/popup.src | 7 ++ .../framework/factories/TaskPanelFactory.cxx | 5 ++ sd/source/ui/func/fusnapln.cxx | 57 +++++++++----- sd/source/ui/inc/DrawViewShell.hxx | 18 +++++ sd/source/ui/inc/PreviewRenderer.hxx | 19 ++++- .../controller/SlideSorterController.cxx | 15 ++-- .../slidesorter/controller/SlsClipboard.cxx | 14 +--- .../controller/SlsSelectionManager.cxx | 47 +++++++++++ .../inc/controller/SlsSelectionManager.hxx | 22 +++++- .../slidesorter/inc/view/SlsViewOverlay.hxx | 5 +- .../ui/slidesorter/view/SlideSorterView.cxx | 4 + sd/source/ui/slidesorter/view/SlsLayouter.cxx | 2 +- .../view/SlsPageObjectViewObjectContact.cxx | 77 ++++++++++--------- .../ui/slidesorter/view/SlsViewOverlay.cxx | 64 ++++++++++----- .../controls/AllMasterPagesSelector.cxx | 15 +++- .../controls/AllMasterPagesSelector.hxx | 2 + .../controls/CurrentMasterPagesSelector.cxx | 13 +++- .../controls/MasterPageContainerProviders.cxx | 3 +- .../controls/MasterPagesSelector.cxx | 21 +++++ .../controls/RecentMasterPagesSelector.cxx | 14 ++++ .../controls/RecentMasterPagesSelector.hxx | 2 + sd/source/ui/tools/PreviewRenderer.cxx | 17 ++-- sd/source/ui/view/ViewShellManager.cxx | 10 ++- sd/source/ui/view/drviews4.cxx | 68 +++++++++++++++- 27 files changed, 438 insertions(+), 119 deletions(-) diff --git a/sd/inc/app.hrc b/sd/inc/app.hrc index 15d7144e752a..d1852a5e9992 100644 --- a/sd/inc/app.hrc +++ b/sd/inc/app.hrc @@ -460,6 +460,7 @@ #define SID_DISPLAY_MASTER_BACKGROUND (SID_SD_START+436) #define SID_DISPLAY_MASTER_OBJECTS (SID_SD_START+437) #define SID_INSERTPAGE_LAYOUT_MENU (SID_SD_START+438) +#define SID_TP_EDIT_MASTER (SID_SD_START+439) // Add companion for the SID_HIDE_SLIDE (that is defined in svx) #define SID_SHOW_SLIDE (SID_SD_START+440) diff --git a/sd/sdi/TaskPaneViewShell.sdi b/sd/sdi/TaskPaneViewShell.sdi index 2e37b7bf56f7..ede307b955bf 100644 --- a/sd/sdi/TaskPaneViewShell.sdi +++ b/sd/sdi/TaskPaneViewShell.sdi @@ -154,6 +154,31 @@ SfxVoidItem TaskPaneShowLargePreview SID_TP_SHOW_LARGE_PREVIEW GroupId = GID_VIEW; ] +SfxVoidItem TaskPaneEditMaster SID_TP_EDIT_MASTER +[ + /* flags: */ + AutoUpdate = TRUE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + RecordAbsolute = FALSE, + RecordPerSet; + Synchron; + + Readonly = FALSE, + + /* config: */ + AccelConfig = FALSE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_VIEW; +] + SfxVoidItem TaskPaneInsertPage SID_INSERTPAGE_LAYOUT_MENU [ /* flags: */ @@ -208,6 +233,12 @@ interface MasterPagesSelectorInterface StateMethod = GetState ; ] + SID_TP_EDIT_MASTER + [ + ExecMethod = Execute ; + StateMethod = GetState ; + ] + // The copy and paste slots are included here so that they later can be // disabled in order to remove them from context menus. SID_CUT diff --git a/sd/source/ui/animations/CustomAnimationCreateDialog.cxx b/sd/source/ui/animations/CustomAnimationCreateDialog.cxx index cdb894984edd..ce651b2965be 100644 --- a/sd/source/ui/animations/CustomAnimationCreateDialog.cxx +++ b/sd/source/ui/animations/CustomAnimationCreateDialog.cxx @@ -183,15 +183,15 @@ IMPL_LINK( CategoryListBox, implDoubleClickHdl, Control*, EMPTYARG ) void CategoryListBox::MouseButtonUp( const MouseEvent& rMEvt ) { + ReleaseMouse(); if( rMEvt.IsLeft() && (rMEvt.GetClicks() == 2) ) { - ReleaseMouse(); if( maDoubleClickHdl.IsSet() ) maDoubleClickHdl.Call( this ); } else { - CategoryListBox::MouseButtonUp( rMEvt ); + ListBox::MouseButtonUp( rMEvt ); } } diff --git a/sd/source/ui/app/popup.src b/sd/source/ui/app/popup.src index c98218f9ab22..cdcf3d353dc8 100644 --- a/sd/source/ui/app/popup.src +++ b/sd/source/ui/app/popup.src @@ -355,6 +355,13 @@ Menu RID_TASKPANE_CURRENT_MASTERPAGESSELECTOR_POPUP SEPARATOR + MenuItem + { + Identifier = SID_TP_EDIT_MASTER; + HelpID = SID_TP_EDIT_MASTER; + Text[ en-US ] = "~Edit Master..."; + }; + MN_DELETE_MASTER SEPARATOR diff --git a/sd/source/ui/framework/factories/TaskPanelFactory.cxx b/sd/source/ui/framework/factories/TaskPanelFactory.cxx index 6d2d398e0e6f..65a2bb23cb33 100644 --- a/sd/source/ui/framework/factories/TaskPanelFactory.cxx +++ b/sd/source/ui/framework/factories/TaskPanelFactory.cxx @@ -176,6 +176,7 @@ void SAL_CALL TaskPanelFactory::initialize( xCM->getConfigurationController(), UNO_QUERY_THROW); xCC->addResourceFactory(FrameworkHelper::msMasterPagesTaskPanelURL, this); xCC->addResourceFactory(FrameworkHelper::msLayoutTaskPanelURL, this); + xCC->addResourceFactory(FrameworkHelper::msTableDesignPanelURL, this); xCC->addResourceFactory(FrameworkHelper::msCustomAnimationTaskPanelURL, this); xCC->addResourceFactory(FrameworkHelper::msSlideTransitionTaskPanelURL, this); } @@ -211,6 +212,10 @@ Reference SAL_CALL TaskPanelFactory::createResource ( { ePaneId = TaskPaneViewShell::PID_LAYOUT; } + else if (sResourceURL.equals(FrameworkHelper::msTableDesignPanelURL)) + { + ePaneId = TaskPaneViewShell::PID_TABLE_DESIGN; + } else if (sResourceURL.equals(FrameworkHelper::msCustomAnimationTaskPanelURL)) { ePaneId = TaskPaneViewShell::PID_CUSTOM_ANIMATION; diff --git a/sd/source/ui/func/fusnapln.cxx b/sd/source/ui/func/fusnapln.cxx index dfd50a00ec5d..28bb58538d85 100644 --- a/sd/source/ui/func/fusnapln.cxx +++ b/sd/source/ui/func/fusnapln.cxx @@ -49,6 +49,7 @@ #include "sdenumdef.hxx" #include "sdresid.hxx" #include "sdabstdlg.hxx" +#include "app.hrc" #include namespace sd { @@ -81,32 +82,52 @@ void FuSnapLine::DoExecute( SfxRequest& rReq ) USHORT nHelpLine = 0; BOOL bCreateNew = TRUE; + // Get index of snap line or snap point from the request. + SFX_REQUEST_ARG (rReq, pHelpLineIndex, SfxUInt32Item, ID_VAL_INDEX, FALSE); + if (pHelpLineIndex != NULL) + { + nHelpLine = static_cast(pHelpLineIndex->GetValue()); + // Reset the argument pointer to trigger the display of the dialog. + pArgs = NULL; + } + if ( !pArgs ) { - SfxItemSet aNewAttr(mpViewShell->GetPool(), ATTR_SNAPLINE_START, - ATTR_SNAPLINE_END); - Point aLinePos = static_cast(mpViewShell)->GetMousePos(); - static_cast(mpViewShell)->SetMousePosFreezed( FALSE ); - BOOL bLineExist = FALSE; - + SfxItemSet aNewAttr(mpViewShell->GetPool(), ATTR_SNAPLINE_START, ATTR_SNAPLINE_END); + bool bLineExist (false); pPV = mpView->GetSdrPageView(); + Point aLinePos; - if ( aLinePos.X() >= 0 ) + if (pHelpLineIndex == NULL) { - aLinePos = mpWindow->PixelToLogic(aLinePos); - USHORT nHitLog = (USHORT) mpWindow->PixelToLogic(Size(HITPIX,0)).Width(); - bLineExist = mpView->PickHelpLine(aLinePos, nHitLog, *mpWindow, - nHelpLine, pPV); - if ( bLineExist ) - aLinePos = (pPV->GetHelpLines())[nHelpLine].GetPos(); - else - pPV = mpView->GetSdrPageView(); + // The index of the snap line is not provided as argument to the + // request. Determine it from the mouse position. - pPV->LogicToPagePos(aLinePos); + aLinePos = static_cast(mpViewShell)->GetMousePos(); + static_cast(mpViewShell)->SetMousePosFreezed( FALSE ); + + + if ( aLinePos.X() >= 0 ) + { + aLinePos = mpWindow->PixelToLogic(aLinePos); + USHORT nHitLog = (USHORT) mpWindow->PixelToLogic(Size(HITPIX,0)).Width(); + bLineExist = mpView->PickHelpLine(aLinePos, nHitLog, *mpWindow, nHelpLine, pPV); + if ( bLineExist ) + aLinePos = (pPV->GetHelpLines())[nHelpLine].GetPos(); + else + pPV = mpView->GetSdrPageView(); + + pPV->LogicToPagePos(aLinePos); + } + else + aLinePos = Point(0,0); } else - aLinePos = Point(0,0); - + { + OSL_ASSERT(pPV!=NULL); + aLinePos = (pPV->GetHelpLines())[nHelpLine].GetPos(); + bLineExist = true; + } aNewAttr.Put(SfxUInt32Item(ATTR_SNAPLINE_X, aLinePos.X())); aNewAttr.Put(SfxUInt32Item(ATTR_SNAPLINE_Y, aLinePos.Y())); diff --git a/sd/source/ui/inc/DrawViewShell.hxx b/sd/source/ui/inc/DrawViewShell.hxx index 7a4ad2865140..d85b09d6ab07 100644 --- a/sd/source/ui/inc/DrawViewShell.hxx +++ b/sd/source/ui/inc/DrawViewShell.hxx @@ -475,6 +475,24 @@ private: */ void StopSlideShow (bool bCloseFrame); + /** Show the context menu for snap lines and points. Because snap lines + can not be selected the index of the snap line/point for which the + popup menu is opened has to be passed to the processing slot + handlers. This can be done only by manually showing the popup menu. + @param rPageView + The page view is used to access the help lines. + @param nSnapLineIndex + Index of the snap line or snap point for which to show the + context menu. + @param rMouseLocation + The mouse location defines the location at which to display the + context menu. + */ + void ShowSnapLineContextMenu ( + SdrPageView& rPageView, + const USHORT nSnapLineIndex, + const Point& rMouseLocation); + using ViewShell::Notify; }; diff --git a/sd/source/ui/inc/PreviewRenderer.hxx b/sd/source/ui/inc/PreviewRenderer.hxx index 54cd483272d5..c508410045aa 100644 --- a/sd/source/ui/inc/PreviewRenderer.hxx +++ b/sd/source/ui/inc/PreviewRenderer.hxx @@ -78,11 +78,17 @@ public: When the actual preview can not be created for some reason, then this text is painted in an empty rectangle of the requested size instead. + @param bObeyHighContrastMode + When then the high contrast mode of the application is + ignored and the preview is rendered in normal mode. When + and high contrast mode is active then the preview is + rendered in high contrast mode. */ Image RenderPage ( const SdPage* pPage, const sal_Int32 nWidth, - const String& sSubstitutionText); + const String& sSubstitutionText, + const bool bObeyHighContrastMode = true); /** Render a page with the given pixel size. @param pPage @@ -93,11 +99,17 @@ public: When the actual preview can not be created for some reason, then this text is painted in an empty rectangle of the requested size instead. + @param bObeyHighContrastMode + When then the high contrast mode of the application is + ignored and the preview is rendered in normal mode. When + and high contrast mode is active then the preview is + rendered in high contrast mode. */ Image RenderPage ( const SdPage* pPage, const Size aPreviewPixelSize, - const String& sSubstitutionText); + const String& sSubstitutionText, + const bool bObeyHighContrastMode = true); /** Render an image that contains the given substitution text instead of a slide preview. @@ -131,7 +143,8 @@ private: bool Initialize ( const SdPage* pPage, - const Size& rPixelSize); + const Size& rPixelSize, + const bool bObeyHighContrastMode); void Cleanup (void); void PaintPage (const SdPage* pPage); void PaintSubstitutionText (const String& rSubstitutionText); diff --git a/sd/source/ui/slidesorter/controller/SlideSorterController.cxx b/sd/source/ui/slidesorter/controller/SlideSorterController.cxx index 43c568b375d4..0c1cbd47f8e5 100644 --- a/sd/source/ui/slidesorter/controller/SlideSorterController.cxx +++ b/sd/source/ui/slidesorter/controller/SlideSorterController.cxx @@ -429,9 +429,8 @@ bool SlideSorterController::Command ( // When there is no selection, then we show the insertion // indicator so that the user knows where a page insertion // would take place. - mrView.GetOverlay().GetInsertionIndicatorOverlay() - .SetPosition( - pWindow->PixelToLogic(rEvent.GetMousePosPixel())); + mrView.GetOverlay().GetInsertionIndicatorOverlay().SetPosition( + pWindow->PixelToLogic(rEvent.GetMousePosPixel())); mrView.GetOverlay().GetInsertionIndicatorOverlay().Show(); } @@ -473,11 +472,11 @@ bool SlideSorterController::Command ( mbIsContextMenuOpen = false; if (pPage == NULL) { - // Select slide before the insertion indicator before it is - // hidden, so that a pending slide insertion slot finds the - // right place to insert a new slide. - mpPageSelector->SelectPage( - mrView.GetOverlay().GetInsertionIndicatorOverlay().GetInsertionPageIndex()-1); + // Remember the position of the insertion indicator before + // it is hidden, so that a pending slide insertion slot call + // finds the right place to insert a new slide. + GetSelectionManager()->SetInsertionPosition( + mrView.GetOverlay().GetInsertionIndicatorOverlay().GetInsertionPageIndex()); mrView.GetOverlay().GetInsertionIndicatorOverlay().Hide(); } bEventHasBeenHandled = true; diff --git a/sd/source/ui/slidesorter/controller/SlsClipboard.cxx b/sd/source/ui/slidesorter/controller/SlsClipboard.cxx index 192a5b58e224..f157968d6c2d 100644 --- a/sd/source/ui/slidesorter/controller/SlsClipboard.cxx +++ b/sd/source/ui/slidesorter/controller/SlsClipboard.cxx @@ -251,19 +251,7 @@ sal_Int32 Clipboard::GetInsertionPosition (::Window* pWindow) } else { - model::PageEnumeration aSelectedPages - (model::PageEnumerationProvider::CreateSelectedPagesEnumeration( - mrSlideSorter.GetModel())); - // Initialize (for the case of an empty selection) with the position - // at the end of the document. - nInsertPosition = mrSlideSorter.GetModel().GetPageCount(); - while (aSelectedPages.HasMoreElements()) - { - nInsertPosition = aSelectedPages.GetNextElement()->GetPage()->GetPageNum(); - // Convert *2+1 index to straight index ((n-1)/2) after the page - // (+1). - nInsertPosition = (nInsertPosition-1)/2 + 1; - } + nInsertPosition = mrController.GetSelectionManager()->GetInsertionPosition(); } return nInsertPosition; diff --git a/sd/source/ui/slidesorter/controller/SlsSelectionManager.cxx b/sd/source/ui/slidesorter/controller/SlsSelectionManager.cxx index 5bbef1103a6b..c3040bd48853 100644 --- a/sd/source/ui/slidesorter/controller/SlsSelectionManager.cxx +++ b/sd/source/ui/slidesorter/controller/SlsSelectionManager.cxx @@ -338,6 +338,10 @@ void SelectionManager::SelectionHasChanged (const bool bMakeSelectionVisible) { iListener->Call(NULL); } + + // Reset the insertion position: until set again it is calculated from + // the current selection. + mnInsertionPosition = -1; } } @@ -594,6 +598,49 @@ Rectangle SelectionManager::ResolveLargeSelection ( +sal_Int32 SelectionManager::GetInsertionPosition (void) const +{ + sal_Int32 nInsertionPosition (mnInsertionPosition); + if (nInsertionPosition < 0) + { + model::PageEnumeration aSelectedPages + (model::PageEnumerationProvider::CreateSelectedPagesEnumeration( + mrSlideSorter.GetModel())); + // Initialize (for the case of an empty selection) with the position + // at the end of the document. + nInsertionPosition = mrSlideSorter.GetModel().GetPageCount(); + while (aSelectedPages.HasMoreElements()) + { + const sal_Int32 nPosition (aSelectedPages.GetNextElement()->GetPage()->GetPageNum()); + // Convert *2+1 index to straight index (n-1)/2 after the page + // (+1). + nInsertionPosition = (nPosition-1)/2 + 1; + } + + } + return nInsertionPosition; +} + + + + +void SelectionManager::SetInsertionPosition (const sal_Int32 nInsertionPosition) +{ + if (nInsertionPosition < 0) + mnInsertionPosition = -1; + else if (nInsertionPosition > mrSlideSorter.GetModel().GetPageCount()) + { + // Assert but then ignore invalid values. + OSL_ASSERT(nInsertionPosition<=mrSlideSorter.GetModel().GetPageCount()); + return; + } + else + mnInsertionPosition = nInsertionPosition; +} + + + + //===== VerticalVisibleAreaScroller =========================================== namespace { diff --git a/sd/source/ui/slidesorter/inc/controller/SlsSelectionManager.hxx b/sd/source/ui/slidesorter/inc/controller/SlsSelectionManager.hxx index 554c2fb1911f..10b3167af563 100644 --- a/sd/source/ui/slidesorter/inc/controller/SlsSelectionManager.hxx +++ b/sd/source/ui/slidesorter/inc/controller/SlsSelectionManager.hxx @@ -132,6 +132,21 @@ public: */ void RemoveSelectionChangeListener (const Link& rListener); + /** Return the position where to insert pasted slides based on the + current selection. When there is a selection then the insert + position is behind the last slide. When the selection is empty then + most of the time the insert position is at the end of the document. + There is an exception right after the display of a popup-menu. The + position of the associated insertion marker is stored here and reset + the next time the selection changes. + */ + sal_Int32 GetInsertionPosition (void) const; + + /** Store an insertion position temporarily. It is reset when the + selection changes the next time. + */ + void SetInsertionPosition (const sal_Int32 nInsertionPosition); + private: SlideSorter& mrSlideSorter; SlideSorterController& mrController; @@ -149,6 +164,12 @@ private: */ bool mbIsMakeSelectionVisiblePending; + /** The insertion position is only temporarily valid. Negative values + indicate that the explicit insertion position is not valid. In this + case GetInsertionPosition() calculates it from the current selection. + */ + sal_Int32 mnInsertionPosition; + /** Delete the given list of normal pages. This method is a helper function for DeleteSelectedPages(). @param rSelectedNormalPages @@ -187,7 +208,6 @@ private: const model::SharedPageDescriptor& rpFirst, const model::SharedPageDescriptor& rpLast, const SelectionHint eSelectionHint); - }; } } } // end of namespace ::sd::slidesorter::controller diff --git a/sd/source/ui/slidesorter/inc/view/SlsViewOverlay.hxx b/sd/source/ui/slidesorter/inc/view/SlsViewOverlay.hxx index 4e415eba03b2..a7652d87d35c 100644 --- a/sd/source/ui/slidesorter/inc/view/SlsViewOverlay.hxx +++ b/sd/source/ui/slidesorter/inc/view/SlsViewOverlay.hxx @@ -140,8 +140,9 @@ protected: private: Point maPosition; - basegfx::B2DRange maBoundingBox; - basegfx::B2DPolyPolygon maShapes; + Point maTranslation; + Rectangle maBoundingBox; + ::std::vector maShapes; }; diff --git a/sd/source/ui/slidesorter/view/SlideSorterView.cxx b/sd/source/ui/slidesorter/view/SlideSorterView.cxx index f92b0161a04d..69ef5f75be72 100644 --- a/sd/source/ui/slidesorter/view/SlideSorterView.cxx +++ b/sd/source/ui/slidesorter/view/SlideSorterView.cxx @@ -241,6 +241,9 @@ void SlideSorterView::ModelHasChanged (void) } } + + + void SlideSorterView::LocalModelHasChanged(void) { mbModelChangedWhileModifyEnabled = false; @@ -290,6 +293,7 @@ void SlideSorterView::PostModelChange (void) model::PageEnumeration aPageEnumeration ( model::PageEnumerationProvider::CreateAllPagesEnumeration(mrModel)); + UpdatePageBorders(); while (aPageEnumeration.HasMoreElements()) { SdrPageObj* pPageObject = aPageEnumeration.GetNextElement()->GetPageObject(); diff --git a/sd/source/ui/slidesorter/view/SlsLayouter.cxx b/sd/source/ui/slidesorter/view/SlsLayouter.cxx index 26811df931b4..f3d91fff96dd 100644 --- a/sd/source/ui/slidesorter/view/SlsLayouter.cxx +++ b/sd/source/ui/slidesorter/view/SlsLayouter.cxx @@ -235,7 +235,7 @@ bool Layouter::RearrangeHorizontal ( // Adapt the layout of the given output device to the new layout of // page objects. The zoom factor is set so that the page objects in - // one row fill the screen. + // one column fill the screen. Fraction aScaleFactor (nTargetHeight, nPagePixelHeight); SetZoom (aMapMode.GetScaleX() * aScaleFactor, pDevice); diff --git a/sd/source/ui/slidesorter/view/SlsPageObjectViewObjectContact.cxx b/sd/source/ui/slidesorter/view/SlsPageObjectViewObjectContact.cxx index 4c96c113ef1a..fbea240c5a25 100644 --- a/sd/source/ui/slidesorter/view/SlsPageObjectViewObjectContact.cxx +++ b/sd/source/ui/slidesorter/view/SlsPageObjectViewObjectContact.cxx @@ -68,6 +68,8 @@ using namespace ::sdr::contact; using namespace ::sd::slidesorter::model; +using drawinglayer::primitive2d::Primitive2DReference; +using drawinglayer::primitive2d::Primitive2DSequence; namespace sd { namespace slidesorter { namespace view { @@ -306,7 +308,7 @@ private: protected: // method which is to be used to implement the local decomposition of a 2D primitive. - virtual drawinglayer::primitive2d::Primitive2DSequence createLocalDecomposition(const drawinglayer::geometry::ViewInformation2D& rViewInformation) const; + virtual Primitive2DSequence createLocalDecomposition(const drawinglayer::geometry::ViewInformation2D& rViewInformation) const; public: // constructor and destructor @@ -325,7 +327,7 @@ public: DeclPrimitrive2DIDBlock() }; -drawinglayer::primitive2d::Primitive2DSequence SdPageObjectPageBitmapPrimitive::createLocalDecomposition(const drawinglayer::geometry::ViewInformation2D& rViewInformation) const +Primitive2DSequence SdPageObjectPageBitmapPrimitive::createLocalDecomposition(const drawinglayer::geometry::ViewInformation2D& rViewInformation) const { // add bitmap primitive // to avoid scaling, use the Bitmap pixel size as primitive size @@ -341,9 +343,9 @@ drawinglayer::primitive2d::Primitive2DSequence SdPageObjectPageBitmapPrimitive:: aBitmapTransform.set(1L, 2L, getPageObjectRange().getMinY()); // add a BitmapPrimitive2D to the result - const drawinglayer::primitive2d::Primitive2DReference xReference( + const Primitive2DReference xReference( new drawinglayer::primitive2d::BitmapPrimitive2D(getBitmapEx(), aBitmapTransform)); - return drawinglayer::primitive2d::Primitive2DSequence(&xReference, 1); + return Primitive2DSequence(&xReference, 1); } SdPageObjectPageBitmapPrimitive::SdPageObjectPageBitmapPrimitive( @@ -385,7 +387,7 @@ private: protected: // method which is to be used to implement the local decomposition of a 2D primitive. - virtual drawinglayer::primitive2d::Primitive2DSequence createLocalDecomposition(const drawinglayer::geometry::ViewInformation2D& rViewInformation) const; + virtual Primitive2DSequence createLocalDecomposition(const drawinglayer::geometry::ViewInformation2D& rViewInformation) const; public: // constructor and destructor @@ -399,9 +401,9 @@ public: const sal_Int32 SdPageObjectSelectPrimitive::mnSelectionIndicatorOffset(1); const sal_Int32 SdPageObjectSelectPrimitive::mnSelectionIndicatorThickness(3); -drawinglayer::primitive2d::Primitive2DSequence SdPageObjectSelectPrimitive::createLocalDecomposition(const drawinglayer::geometry::ViewInformation2D& rViewInformation) const +Primitive2DSequence SdPageObjectSelectPrimitive::createLocalDecomposition(const drawinglayer::geometry::ViewInformation2D& rViewInformation) const { - drawinglayer::primitive2d::Primitive2DSequence xRetval(2); + Primitive2DSequence xRetval(2); // since old Width/Height calculations always added a single pixel value, // it is necessary to create a inner range which is one display unit less @@ -415,11 +417,12 @@ drawinglayer::primitive2d::Primitive2DSequence SdPageObjectSelectPrimitive::crea basegfx::B2DRange aDiscreteOuterRange(aAdaptedInnerRange); aDiscreteOuterRange.grow(mnSelectionIndicatorOffset * aDiscretePixel.getX()); - // remeber inner border. Make it one bigger in top left since polygons + // Remember inner border. Make it one bigger in top left since polygons // do not paint their lower-right corners. Since this is the inner polygon, // the top-left corders are the ones to grow here const basegfx::B2DRange aDiscreteInnerRange( - aDiscreteOuterRange.getMinimum() + aDiscretePixel, aDiscreteOuterRange.getMaximum()); + aDiscreteOuterRange.getMinimum() + aDiscretePixel, + aDiscreteOuterRange.getMaximum() - aDiscretePixel); // grow by line width aDiscreteOuterRange.grow((mnSelectionIndicatorThickness - 1) * aDiscretePixel.getX()); @@ -440,12 +443,12 @@ drawinglayer::primitive2d::Primitive2DSequence SdPageObjectSelectPrimitive::crea static bool bTestWithBrightColors(false); const basegfx::BColor aFrameColor(bTestWithBrightColors ? basegfx::BColor(0,1,0) : Application::GetSettings().GetStyleSettings().GetMenuHighlightColor().getBColor()); - xRetval[0] = drawinglayer::primitive2d::Primitive2DReference( + xRetval[0] = Primitive2DReference( new drawinglayer::primitive2d::PolyPolygonColorPrimitive2D(aFramePolyPolygon, aFrameColor)); // add aRoundedOuterPolygon again as non-filled line polygon to get the roundungs // painted correctly - xRetval[1] = drawinglayer::primitive2d::Primitive2DReference( + xRetval[1] = Primitive2DReference( new drawinglayer::primitive2d::PolygonHairlinePrimitive2D(aRoundedOuterPolygon, aFrameColor)); return xRetval; @@ -469,7 +472,7 @@ class SdPageObjectBorderPrimitive : public SdPageObjectBasePrimitive { protected: // method which is to be used to implement the local decomposition of a 2D primitive. - virtual drawinglayer::primitive2d::Primitive2DSequence createLocalDecomposition(const drawinglayer::geometry::ViewInformation2D& rViewInformation) const; + virtual Primitive2DSequence createLocalDecomposition(const drawinglayer::geometry::ViewInformation2D& rViewInformation) const; public: // constructor and destructor @@ -480,7 +483,7 @@ public: DeclPrimitrive2DIDBlock() }; -drawinglayer::primitive2d::Primitive2DSequence SdPageObjectBorderPrimitive::createLocalDecomposition(const drawinglayer::geometry::ViewInformation2D& rViewInformation) const +Primitive2DSequence SdPageObjectBorderPrimitive::createLocalDecomposition(const drawinglayer::geometry::ViewInformation2D& rViewInformation) const { // since old Width/Height calculations always added a single pixel value, // it is necessary to create a inner range which is one display unit less @@ -495,9 +498,9 @@ drawinglayer::primitive2d::Primitive2DSequence SdPageObjectBorderPrimitive::crea const svtools::ColorConfig aColorConfig; const basegfx::BColor aBorderColor(bTestWithBrightColors ? basegfx::BColor(1,0,0) : Color(aColorConfig.GetColorValue(svtools::FONTCOLOR).nColor).getBColor()); - const drawinglayer::primitive2d::Primitive2DReference xReference( + const Primitive2DReference xReference( new drawinglayer::primitive2d::PolygonHairlinePrimitive2D(basegfx::tools::createPolygonFromRect(aAdaptedInnerRange), aBorderColor)); - return drawinglayer::primitive2d::Primitive2DSequence(&xReference, 1); + return Primitive2DSequence(&xReference, 1); } SdPageObjectBorderPrimitive::SdPageObjectBorderPrimitive(const basegfx::B2DRange& rRange) @@ -522,7 +525,7 @@ private: protected: // method which is to be used to implement the local decomposition of a 2D primitive. - virtual drawinglayer::primitive2d::Primitive2DSequence createLocalDecomposition(const drawinglayer::geometry::ViewInformation2D& rViewInformation) const; + virtual Primitive2DSequence createLocalDecomposition(const drawinglayer::geometry::ViewInformation2D& rViewInformation) const; public: // constructor and destructor @@ -535,9 +538,9 @@ public: const sal_Int32 SdPageObjectFocusPrimitive::mnFocusIndicatorOffset(2); -drawinglayer::primitive2d::Primitive2DSequence SdPageObjectFocusPrimitive::createLocalDecomposition(const drawinglayer::geometry::ViewInformation2D& rViewInformation) const +Primitive2DSequence SdPageObjectFocusPrimitive::createLocalDecomposition(const drawinglayer::geometry::ViewInformation2D& rViewInformation) const { - drawinglayer::primitive2d::Primitive2DSequence xRetval(2); + Primitive2DSequence xRetval(2); // since old Width/Height calculations always added a single pixel value, // it is necessary to create a inner range which is one display unit less @@ -556,7 +559,7 @@ drawinglayer::primitive2d::Primitive2DSequence SdPageObjectFocusPrimitive::creat const basegfx::B2DPolygon aIndicatorPolygon(basegfx::tools::createPolygonFromRect(aFocusIndicatorRange)); // white rectangle - xRetval[0] = drawinglayer::primitive2d::Primitive2DReference( + xRetval[0] = Primitive2DReference( new drawinglayer::primitive2d::PolygonHairlinePrimitive2D(aIndicatorPolygon, Color(COL_WHITE).getBColor())); // dotted black rectangle with same geometry @@ -569,7 +572,7 @@ drawinglayer::primitive2d::Primitive2DSequence SdPageObjectFocusPrimitive::creat const drawinglayer::attribute::LineAttribute aLineAttribute(Color(COL_BLACK).getBColor()); const drawinglayer::attribute::StrokeAttribute aStrokeAttribute(aDotDashArray, 2.0 * aDiscretePixel.getX()); - xRetval[1] = drawinglayer::primitive2d::Primitive2DReference( + xRetval[1] = Primitive2DReference( new drawinglayer::primitive2d::PolygonStrokePrimitive2D(aIndicatorPolygon, aLineAttribute, aStrokeAttribute)); return xRetval; @@ -609,15 +612,15 @@ private: Size maPageNumberAreaModelSize; // bitfield - unsigned mbShowFadeEffectIcon : 1; - unsigned mbExcluded : 1; + bool mbShowFadeEffectIcon : 1; + bool mbExcluded : 1; // private helpers const BitmapEx& getFadeEffectIconBitmap() const; protected: // method which is to be used to implement the local decomposition of a 2D primitive. - virtual drawinglayer::primitive2d::Primitive2DSequence createLocalDecomposition(const drawinglayer::geometry::ViewInformation2D& rViewInformation) const; + virtual Primitive2DSequence createLocalDecomposition(const drawinglayer::geometry::ViewInformation2D& rViewInformation) const; public: // constructor and destructor @@ -665,7 +668,7 @@ const BitmapEx& SdPageObjectFadeNameNumberPrimitive::getFadeEffectIconBitmap() c return *mpFadeEffectIconBitmap; } -drawinglayer::primitive2d::Primitive2DSequence SdPageObjectFadeNameNumberPrimitive::createLocalDecomposition(const drawinglayer::geometry::ViewInformation2D& rViewInformation) const +Primitive2DSequence SdPageObjectFadeNameNumberPrimitive::createLocalDecomposition(const drawinglayer::geometry::ViewInformation2D& rViewInformation) const { const xub_StrLen nTextLength(getPageName().Len()); const sal_uInt32 nCount( @@ -675,7 +678,7 @@ drawinglayer::primitive2d::Primitive2DSequence SdPageObjectFadeNameNumberPrimiti (getExcluded() ? 2 : 0) // PageNumber crossed out ); sal_uInt32 nInsert(0); - drawinglayer::primitive2d::Primitive2DSequence xRetval(nCount); + Primitive2DSequence xRetval(nCount); // since old Width/Height calculations always added a single pixel value, // it is necessary to create a inner range which is one display unit less @@ -724,7 +727,7 @@ drawinglayer::primitive2d::Primitive2DSequence SdPageObjectFadeNameNumberPrimiti aBitmapTransform.set(0L, 2L, aAdaptedInnerRange.getMinX()); aBitmapTransform.set(1L, 2L, aAdaptedInnerRange.getMaxY() + ((mnFadeEffectIndicatorOffset + 1) * aDiscretePixel.getX())); - xRetval[nInsert++] = drawinglayer::primitive2d::Primitive2DReference( + xRetval[nInsert++] = Primitive2DReference( new drawinglayer::primitive2d::BitmapPrimitive2D(getFadeEffectIconBitmap(), aBitmapTransform)); } @@ -790,7 +793,7 @@ drawinglayer::primitive2d::Primitive2DSequence SdPageObjectFadeNameNumberPrimiti aTextMatrix.set(1L, 2L, fStartY); // create Text primitive and add to target - xRetval[nInsert++] = drawinglayer::primitive2d::Primitive2DReference(new drawinglayer::primitive2d::TextSimplePortionPrimitive2D( + xRetval[nInsert++] = Primitive2DReference(new drawinglayer::primitive2d::TextSimplePortionPrimitive2D( aTextMatrix, aPageName, 0, aPageName.Len(), aDXArray, aFontAttributes, aLocale, aFontColor)); } @@ -820,7 +823,7 @@ drawinglayer::primitive2d::Primitive2DSequence SdPageObjectFadeNameNumberPrimiti aTextMatrix.set(1L, 2L, fStartY); // create Text primitive - xRetval[nInsert++] = drawinglayer::primitive2d::Primitive2DReference(new drawinglayer::primitive2d::TextSimplePortionPrimitive2D( + xRetval[nInsert++] = Primitive2DReference(new drawinglayer::primitive2d::TextSimplePortionPrimitive2D( aTextMatrix, aPageNumber, 0, nNumberLen, aDXArray, aFontAttributes, aLocale, aFontColor)); if(getExcluded()) @@ -832,10 +835,10 @@ drawinglayer::primitive2d::Primitive2DSequence SdPageObjectFadeNameNumberPrimiti aStrikethrough.append(aNumberRange.getMinimum()); aStrikethrough.append(aNumberRange.getMaximum()); - xRetval[nInsert++] = drawinglayer::primitive2d::Primitive2DReference(new drawinglayer::primitive2d::PolygonHairlinePrimitive2D( + xRetval[nInsert++] = Primitive2DReference(new drawinglayer::primitive2d::PolygonHairlinePrimitive2D( basegfx::tools::createPolygonFromRect(aNumberRange), aActiveColor)); - xRetval[nInsert++] = drawinglayer::primitive2d::Primitive2DReference(new drawinglayer::primitive2d::PolygonHairlinePrimitive2D( + xRetval[nInsert++] = Primitive2DReference(new drawinglayer::primitive2d::PolygonHairlinePrimitive2D( aStrikethrough, aActiveColor)); } } @@ -890,7 +893,7 @@ ImplPrimitrive2DIDBlock(SdPageObjectFadeNameNumberPrimitive, PRIMITIVE2D_ID_SDPA // This method will replace the whole painting mechanism. Task is no longer to paint stuff to an OutDev, // but to provide the necessary geometrical information using primitives. -drawinglayer::primitive2d::Primitive2DSequence PageObjectViewObjectContact::createPrimitive2DSequence(const sdr::contact::DisplayInfo& rDisplayInfo) const +Primitive2DSequence PageObjectViewObjectContact::createPrimitive2DSequence(const sdr::contact::DisplayInfo& rDisplayInfo) const { // OutputDevice* pDevice = rDisplayInfo.GetDIOutputDevice(); OutputDevice* pDevice = GetObjectContact().TryToGetOutputDevice(); @@ -1005,24 +1008,24 @@ drawinglayer::primitive2d::Primitive2DSequence PageObjectViewObjectContact::crea (bCreateSelected ? 1 : 0) // create selected ); sal_uInt32 nInsert(0); - drawinglayer::primitive2d::Primitive2DSequence xRetval(nCount); + Primitive2DSequence xRetval(nCount); if(bCreateBitmap) { // add selection indicator if used - xRetval[nInsert++] = drawinglayer::primitive2d::Primitive2DReference(new SdPageObjectPageBitmapPrimitive(aInnerRange, aBitmapEx)); + xRetval[nInsert++] = Primitive2DReference(new SdPageObjectPageBitmapPrimitive(aInnerRange, aBitmapEx)); } if(true) { // add border (always) - xRetval[nInsert++] = drawinglayer::primitive2d::Primitive2DReference(new SdPageObjectBorderPrimitive(aInnerRange)); + xRetval[nInsert++] = Primitive2DReference(new SdPageObjectBorderPrimitive(aInnerRange)); } if(true) { // add fade effext, page name and number if used - xRetval[nInsert++] = drawinglayer::primitive2d::Primitive2DReference(new SdPageObjectFadeNameNumberPrimitive( + xRetval[nInsert++] = Primitive2DReference(new SdPageObjectFadeNameNumberPrimitive( aInnerRange, aPageName, nPageNumber, @@ -1035,13 +1038,13 @@ drawinglayer::primitive2d::Primitive2DSequence PageObjectViewObjectContact::crea if(bCreateSelected) { // add selection indicator if used - xRetval[nInsert++] = drawinglayer::primitive2d::Primitive2DReference(new SdPageObjectSelectPrimitive(aInnerRange)); + xRetval[nInsert++] = Primitive2DReference(new SdPageObjectSelectPrimitive(aInnerRange)); } if(bCreateFocused) { // add focus indicator if used - xRetval[nInsert++] = drawinglayer::primitive2d::Primitive2DReference(new SdPageObjectFocusPrimitive(aInnerRange)); + xRetval[nInsert++] = Primitive2DReference(new SdPageObjectFocusPrimitive(aInnerRange)); } return xRetval; diff --git a/sd/source/ui/slidesorter/view/SlsViewOverlay.cxx b/sd/source/ui/slidesorter/view/SlsViewOverlay.cxx index cc8037bac0d9..c1f5c984d3bc 100644 --- a/sd/source/ui/slidesorter/view/SlsViewOverlay.cxx +++ b/sd/source/ui/slidesorter/view/SlsViewOverlay.cxx @@ -50,6 +50,7 @@ #include #include +#include #include #include #include @@ -267,21 +268,17 @@ void SubstitutionOverlay::Create ( EnsureRegistration(); maPosition = rPosition; + maTranslation = Point(0,0); maShapes.clear(); while (rSelection.HasMoreElements()) { const Rectangle aBox (rSelection.GetNextElement()->GetPageObject()->GetCurrentBoundRect()); - basegfx::B2DRectangle aB2DBox( - aBox.Left(), - aBox.Top(), - aBox.Right(), - aBox.Bottom()); - maShapes.append(basegfx::tools::createPolygonFromRect(aB2DBox), 4); + maShapes.push_back(aBox); + maBoundingBox.Union(aBox); } - maBoundingBox = basegfx::tools::getRange(maShapes); - setVisible(maShapes.count() > 0); + setVisible(maShapes.size() > 0); // The selection indicator may have been visible already so call // objectChange() to enforce an update. objectChange(); @@ -293,7 +290,7 @@ void SubstitutionOverlay::Create ( void SubstitutionOverlay::Clear (void) { maShapes.clear(); - maBoundingBox = basegfx::B2DRange(); + maBoundingBox.SetEmpty(); setVisible(false); } @@ -302,10 +299,8 @@ void SubstitutionOverlay::Clear (void) void SubstitutionOverlay::Move (const Point& rOffset) { - basegfx::B2DHomMatrix aTranslation; - aTranslation.translate(rOffset.X(), rOffset.Y()); - maShapes.transform(aTranslation); - maBoundingBox.transform(aTranslation); + maTranslation += rOffset; + maBoundingBox.Move(rOffset.X(), rOffset.Y()); maPosition += rOffset; @@ -327,14 +322,31 @@ void SubstitutionOverlay::drawGeometry (OutputDevice& rOutputDevice) { if (getOverlayManager() != NULL) { - const sal_uInt32 nOldStripeLength (getOverlayManager()->getStripeLengthPixel()); - getOverlayManager()->setStripeLengthPixel(gnSubstitutionStripeLength); + const sal_uInt32 nSavedStripeLength (getOverlayManager()->getStripeLengthPixel()); - const sal_uInt32 nCount (maShapes.count()); - for (sal_uInt32 nIndex=0; nIndex::const_iterator + iBox (maShapes.begin()), + iEnd (maShapes.end()); + iBox!=iEnd; + ++iBox) + { + // Reduce width and height by one pixel to make the box the same + // size as the frame of the page object. + Rectangle aScreenBox (rOutputDevice.LogicToPixel(*iBox)); + aScreenBox.Right() -= 1; + aScreenBox.Bottom() -= 1; - getOverlayManager()->setStripeLengthPixel(nOldStripeLength); + // Add accumulated translation. + Rectangle aBox (rOutputDevice.PixelToLogic(aScreenBox)); + aBox.Move(maTranslation.X(), maTranslation.Y()); + + ImpDrawPolygonStriped(rOutputDevice, + basegfx::tools::createPolygonFromRect( + basegfx::B2DRange( + basegfx::B2IRange(aBox.Left(), aBox.Top(), aBox.Right(),aBox.Bottom())))); + } + + getOverlayManager()->setStripeLengthPixel(nSavedStripeLength); } } @@ -345,7 +357,12 @@ void SubstitutionOverlay::createBaseRange (OutputDevice& rOutputDevice) { (void)rOutputDevice; - maBaseRange = maBoundingBox; + maBaseRange = basegfx::B2DRange( + basegfx::B2IRange( + maBoundingBox.Left(), + maBoundingBox.Top(), + maBoundingBox.Right(), + maBoundingBox.Bottom())); } @@ -533,7 +550,12 @@ void InsertionIndicatorOverlay::drawGeometry (OutputDevice& rOutputDevice) const Color aColor (rOutputDevice.GetSettings().GetStyleSettings().GetFontColor()); rOutputDevice.SetLineColor(aColor); rOutputDevice.SetFillColor(aColor); - rOutputDevice.DrawRect (maBoundingBox); + + // Reduce width of indicator by one pixel to be of the same width as + // the page objects. + Rectangle aBox (rOutputDevice.LogicToPixel(maBoundingBox)); + aBox.Right() -= 1; + rOutputDevice.DrawRect(rOutputDevice.PixelToLogic(aBox)); } rOutputDevice.SetFillColor(aFillColor); diff --git a/sd/source/ui/toolpanel/controls/AllMasterPagesSelector.cxx b/sd/source/ui/toolpanel/controls/AllMasterPagesSelector.cxx index de7d46d07c4e..647f2c1ad7d7 100644 --- a/sd/source/ui/toolpanel/controls/AllMasterPagesSelector.cxx +++ b/sd/source/ui/toolpanel/controls/AllMasterPagesSelector.cxx @@ -33,7 +33,7 @@ #include "AllMasterPagesSelector.hxx" #include "PreviewValueSet.hxx" - +#include "app.hrc" #include "MasterPageContainer.hxx" #include "MasterPageDescriptor.hxx" #include @@ -197,4 +197,15 @@ void AllMasterPagesSelector::UpdatePageSet (ItemList& rItemList) -} } } // end of namespace ::sd::toolpanel::controls +void AllMasterPagesSelector::GetState (SfxItemSet& rItemSet) +{ + MasterPagesSelector::GetState(rItemSet); + + if (rItemSet.GetItemState(SID_TP_EDIT_MASTER) == SFX_ITEM_AVAILABLE) + rItemSet.DisableItem(SID_TP_EDIT_MASTER); +} + + + + +} } } // end of namespace ::sd::toolpanel::control diff --git a/sd/source/ui/toolpanel/controls/AllMasterPagesSelector.hxx b/sd/source/ui/toolpanel/controls/AllMasterPagesSelector.hxx index e5b06b33a9cf..375a8bc882ce 100644 --- a/sd/source/ui/toolpanel/controls/AllMasterPagesSelector.hxx +++ b/sd/source/ui/toolpanel/controls/AllMasterPagesSelector.hxx @@ -58,6 +58,8 @@ public: */ virtual void Fill (ItemList& rItemList); + virtual void GetState (SfxItemSet& rItemSet); + protected: virtual void NotifyContainerChangeEvent (const MasterPageContainerChangeEvent& rEvent); diff --git a/sd/source/ui/toolpanel/controls/CurrentMasterPagesSelector.cxx b/sd/source/ui/toolpanel/controls/CurrentMasterPagesSelector.cxx index 81ae854ad9f5..25cb015d2d1d 100644 --- a/sd/source/ui/toolpanel/controls/CurrentMasterPagesSelector.cxx +++ b/sd/source/ui/toolpanel/controls/CurrentMasterPagesSelector.cxx @@ -34,6 +34,7 @@ #include "CurrentMasterPagesSelector.hxx" #include "PreviewValueSet.hxx" #include "ViewShellBase.hxx" +#include "DrawViewShell.hxx" #include "drawdoc.hxx" #include "sdpage.hxx" #include "MasterPageContainer.hxx" @@ -250,11 +251,21 @@ void CurrentMasterPagesSelector::Execute (SfxRequest& rRequest) void CurrentMasterPagesSelector::GetState (SfxItemSet& rItemSet) { // Disable the SID_DELTE_MASTER slot when there is only one master page. - if (mrDocument.GetMasterPageUserCount(GetSelectedMasterPage()) > 0) + if (rItemSet.GetItemState(SID_DELETE_MASTER_PAGE) == SFX_ITEM_AVAILABLE + && mrDocument.GetMasterPageUserCount(GetSelectedMasterPage()) > 0) { rItemSet.DisableItem(SID_DELETE_MASTER_PAGE); } + ::boost::shared_ptr pDrawViewShell ( + ::boost::dynamic_pointer_cast(mrBase.GetMainViewShell())); + if (rItemSet.GetItemState(SID_TP_EDIT_MASTER) == SFX_ITEM_AVAILABLE + && pDrawViewShell + && pDrawViewShell->GetEditMode() == EM_MASTERPAGE) + { + rItemSet.DisableItem (SID_TP_EDIT_MASTER); + } + MasterPagesSelector::GetState(rItemSet); } diff --git a/sd/source/ui/toolpanel/controls/MasterPageContainerProviders.cxx b/sd/source/ui/toolpanel/controls/MasterPageContainerProviders.cxx index f247f3596ac3..d01a86a94276 100644 --- a/sd/source/ui/toolpanel/controls/MasterPageContainerProviders.cxx +++ b/sd/source/ui/toolpanel/controls/MasterPageContainerProviders.cxx @@ -75,7 +75,8 @@ Image PagePreviewProvider::operator () ( aPreview = rRenderer.RenderPage( pPage, nWidth, - String::CreateFromAscii("")); + String::CreateFromAscii(""), + false); } return aPreview; diff --git a/sd/source/ui/toolpanel/controls/MasterPagesSelector.cxx b/sd/source/ui/toolpanel/controls/MasterPagesSelector.cxx index 135be992a1c0..9356dac3f7f9 100644 --- a/sd/source/ui/toolpanel/controls/MasterPagesSelector.cxx +++ b/sd/source/ui/toolpanel/controls/MasterPagesSelector.cxx @@ -46,6 +46,7 @@ #include "strings.hrc" #include "showview.hxx" #include "DrawViewShell.hxx" +#include "DrawController.hxx" #include "SlideSorterViewShell.hxx" #include "PreviewValueSet.hxx" #include "ViewShellBase.hxx" @@ -570,6 +571,26 @@ void MasterPagesSelector::Execute (SfxRequest& rRequest) break; } + case SID_TP_EDIT_MASTER: + { + using namespace ::com::sun::star; + uno::Reference xSelectedMaster ( + GetSelectedMasterPage()->getUnoPage(), uno::UNO_QUERY); + SfxViewFrame* pViewFrame = mrBase.GetViewFrame(); + if (pViewFrame != NULL && xSelectedMaster.is()) + { + SfxDispatcher* pDispatcher = pViewFrame->GetDispatcher(); + if (pDispatcher != NULL) + { + USHORT nIndex = mpPageSet->GetSelectItemId(); + pDispatcher->Execute(SID_MASTERPAGE, SFX_CALLMODE_SYNCHRON); + mpPageSet->SelectItem (nIndex); + mrBase.GetDrawController().setCurrentPage(xSelectedMaster); + } + } + break; + } + case SID_CUT: case SID_COPY: case SID_PASTE: diff --git a/sd/source/ui/toolpanel/controls/RecentMasterPagesSelector.cxx b/sd/source/ui/toolpanel/controls/RecentMasterPagesSelector.cxx index 569f877f74c4..72dbc094de6a 100644 --- a/sd/source/ui/toolpanel/controls/RecentMasterPagesSelector.cxx +++ b/sd/source/ui/toolpanel/controls/RecentMasterPagesSelector.cxx @@ -39,6 +39,7 @@ #include "MasterPageObserver.hxx" #include "sdpage.hxx" #include "drawdoc.hxx" +#include "app.hrc" #include #include @@ -145,4 +146,17 @@ void RecentMasterPagesSelector::AssignMasterPageToPageList ( } } + + + +void RecentMasterPagesSelector::GetState (SfxItemSet& rItemSet) +{ + MasterPagesSelector::GetState (rItemSet); + if (rItemSet.GetItemState(SID_TP_EDIT_MASTER) == SFX_ITEM_AVAILABLE) + rItemSet.DisableItem (SID_TP_EDIT_MASTER); +} + + + + } } } // end of namespace ::sd::toolpanel::controls diff --git a/sd/source/ui/toolpanel/controls/RecentMasterPagesSelector.hxx b/sd/source/ui/toolpanel/controls/RecentMasterPagesSelector.hxx index 04506f8575c3..84534cf97a21 100644 --- a/sd/source/ui/toolpanel/controls/RecentMasterPagesSelector.hxx +++ b/sd/source/ui/toolpanel/controls/RecentMasterPagesSelector.hxx @@ -51,6 +51,8 @@ public: virtual void LateInit (void); + virtual void GetState (SfxItemSet& rItemSet); + protected: DECL_LINK(MasterPageListListener, void*); virtual void Fill (ItemList& rItemList); diff --git a/sd/source/ui/tools/PreviewRenderer.cxx b/sd/source/ui/tools/PreviewRenderer.cxx index 55003f33d147..770ca7fabf6c 100644 --- a/sd/source/ui/tools/PreviewRenderer.cxx +++ b/sd/source/ui/tools/PreviewRenderer.cxx @@ -86,7 +86,8 @@ PreviewRenderer::~PreviewRenderer (void) Image PreviewRenderer::RenderPage ( const SdPage* pPage, const sal_Int32 nWidth, - const String& rSubstitutionText) + const String& rSubstitutionText, + const bool bObeyHighContrastMode) { if (pPage != NULL) { @@ -96,7 +97,7 @@ Image PreviewRenderer::RenderPage ( const sal_Int32 nFrameWidth (mbHasFrame ? snFrameWidth : 0); const sal_Int32 nHeight (sal::static_int_cast( (nWidth - 2*nFrameWidth) / nAspectRatio + 2*nFrameWidth + 0.5)); - return RenderPage (pPage, Size(nWidth,nHeight), rSubstitutionText); + return RenderPage (pPage, Size(nWidth,nHeight), rSubstitutionText, bObeyHighContrastMode); } else return Image(); @@ -108,7 +109,8 @@ Image PreviewRenderer::RenderPage ( Image PreviewRenderer::RenderPage ( const SdPage* pPage, Size aPixelSize, - const String& rSubstitutionText) + const String& rSubstitutionText, + const bool bObeyHighContrastMode) { Image aPreview; @@ -116,7 +118,7 @@ Image PreviewRenderer::RenderPage ( { try { - if (Initialize (pPage, aPixelSize)) + if (Initialize (pPage, aPixelSize, bObeyHighContrastMode)) { PaintPage (pPage); PaintSubstitutionText (rSubstitutionText); @@ -205,7 +207,8 @@ Image PreviewRenderer::RenderSubstitution ( bool PreviewRenderer::Initialize ( const SdPage* pPage, - const Size& rPixelSize) + const Size& rPixelSize, + const bool bObeyHighContrastMode) { bool bSuccess = false; do @@ -229,8 +232,8 @@ bool PreviewRenderer::Initialize ( break; // Adjust contrast mode. - bool bUseContrast = Application::GetSettings().GetStyleSettings(). - GetHighContrastMode(); + bool bUseContrast (bObeyHighContrastMode + && Application::GetSettings().GetStyleSettings().GetHighContrastMode()); mpPreviewDevice->SetDrawMode (bUseContrast ? ViewShell::OUTPUT_DRAWMODE_CONTRAST : ViewShell::OUTPUT_DRAWMODE_COLOR); diff --git a/sd/source/ui/view/ViewShellManager.cxx b/sd/source/ui/view/ViewShellManager.cxx index 0391d44cfb3a..e8337c97dfb3 100755 --- a/sd/source/ui/view/ViewShellManager.cxx +++ b/sd/source/ui/view/ViewShellManager.cxx @@ -45,7 +45,7 @@ #include #undef VERBOSE -//#define VERBOSE 2 +#define VERBOSE 2 namespace sd { @@ -839,6 +839,14 @@ void ViewShellManager::Implementation::MoveToTop (const SfxShell& rShell) { ::osl::MutexGuard aGuard (maMutex); + // Check that we have access to a dispatcher. If not, then we are + // (probably) called while the view shell is still being created or + // initialized. Without dispatcher we can not rebuild the shell stack + // to move the requested shell to the top. So return right away instead + // of making a mess without being able to clean up afterwards. + if (mrBase.GetDispatcher() == NULL) + return; + ActiveShellList::iterator iShell (::std::find_if ( maActiveViewShells.begin(), maActiveViewShells.end(), diff --git a/sd/source/ui/view/drviews4.cxx b/sd/source/ui/view/drviews4.cxx index 83f896e3d5ad..229e0b8c6eb1 100644 --- a/sd/source/ui/view/drviews4.cxx +++ b/sd/source/ui/view/drviews4.cxx @@ -68,6 +68,7 @@ #include "drawdoc.hxx" #include "Window.hxx" #include "fupoor.hxx" +#include "fusnapln.hxx" #include "app.hxx" #include "Ruler.hxx" #include "sdresid.hxx" @@ -558,7 +559,8 @@ void DrawViewShell::Command(const CommandEvent& rCEvt, ::sd::Window* pWin) if ( mpDrawView->PickHelpLine( aMPos, nHitLog, *GetActiveWindow(), nHelpLine, pPV) ) { nSdResId = RID_DRAW_SNAPOBJECT_POPUP; - mbMousePosFreezed = TRUE; + ShowSnapLineContextMenu(*pPV, nHelpLine, rCEvt.GetMousePosPixel()); + return; } // Klebepunkt unter dem Mauszeiger markiert? else if( mpDrawView->PickGluePoint( aMPos, pObj, nPickId, pPV ) && @@ -926,6 +928,70 @@ void DrawViewShell::UnlockInput() } + + +void DrawViewShell::ShowSnapLineContextMenu ( + SdrPageView& rPageView, + const USHORT nSnapLineIndex, + const Point& rMouseLocation) +{ + const SdrHelpLine& rHelpLine (rPageView.GetHelpLines()[nSnapLineIndex]); + ::boost::scoped_ptr pMenu (new PopupMenu ()); + + if (rHelpLine.GetKind() == SDRHELPLINE_POINT) + { + pMenu->InsertItem( + SID_SET_SNAPITEM, + String(SdResId(STR_POPUP_EDIT_SNAPPOINT))); + pMenu->InsertSeparator(); + pMenu->InsertItem( + SID_DELETE_SNAPITEM, + String(SdResId(STR_POPUP_DELETE_SNAPPOINT))); + } + else + { + pMenu->InsertItem( + SID_SET_SNAPITEM, + String(SdResId(STR_POPUP_EDIT_SNAPLINE))); + pMenu->InsertSeparator(); + pMenu->InsertItem( + SID_DELETE_SNAPITEM, + String(SdResId(STR_POPUP_DELETE_SNAPLINE))); + } + + pMenu->RemoveDisabledEntries(FALSE, FALSE); + + const USHORT nResult = pMenu->Execute( + GetActiveWindow(), + Rectangle(rMouseLocation, Size(10,10)), + POPUPMENU_EXECUTE_DOWN); + switch (nResult) + { + case SID_SET_SNAPITEM: + { + SfxUInt32Item aHelpLineItem (ID_VAL_INDEX, nSnapLineIndex); + const SfxPoolItem* aArguments[] = {&aHelpLineItem, NULL}; + GetViewFrame()->GetDispatcher()->Execute( + SID_SET_SNAPITEM, + SFX_CALLMODE_SLOT, + aArguments); + } + break; + + case SID_DELETE_SNAPITEM: + { + rPageView.DeleteHelpLine(nSnapLineIndex); + } + break; + + default: + break; + } +} + + + + #ifdef _MSC_VER #pragma optimize ( "", on ) #endif From 04a678277a03469c17b32b6bfdc259700e55e956 Mon Sep 17 00:00:00 2001 From: Jens-Heiner Rechtien Date: Mon, 18 May 2009 12:01:49 +0000 Subject: [PATCH 08/12] CWS-TOOLING: integrate CWS cairocanvastext01 2009-05-12 07:10:00 +0200 mox r271795 : Rename ::GetLayoutData() to ::GetSysTextLayoutData() to avoid build breakage in sc module. 2009-05-11 23:40:57 +0200 mox r271794 : merge fixes (again). These files should have been removed by the rebase. 2009-05-11 20:17:44 +0200 mox r271791 : fix build breakage on UNX 2009-05-11 16:53:15 +0200 mox r271779 : Documentation fix 2009-05-11 16:49:16 +0200 mox r271778 : merge fixes 2009-05-11 14:10:36 +0200 mox r271769 : CWS-TOOLING: rebase CWS cairocanvastext01 to trunk@271427 (milestone: DEV300:m47) 2009-05-11 10:55:11 +0200 mox r271760 : merge fixes 2009-05-11 10:49:44 +0200 mox r271759 : manual merge to DEV300_m47 2009-05-11 10:42:11 +0200 mox r271758 : merge fixes 2009-05-11 10:29:16 +0200 mox r271757 : Manual merge to DEV300_m47 2009-05-11 10:21:13 +0200 mox r271756 : manual merge to DEV300_m47 2009-05-11 10:10:29 +0200 mox r271755 : manual merge to DEV300_m47 2009-05-11 10:01:33 +0200 mox r271754 : Manual merge to DEV300_m47 2009-05-11 09:59:30 +0200 mox r271753 : manual merge to DEV300_m47 2009-05-11 09:57:33 +0200 mox r271752 : merge fixes 2009-05-11 09:56:05 +0200 mox r271751 : merge fixes 2009-05-11 09:53:26 +0200 mox r271749 : Manual merge to DEV300_m47 2009-05-11 09:49:34 +0200 mox r271748 : manual merge to DEV300_m47 2009-05-11 09:43:20 +0200 mox r271747 : manual merge to DEV300_m47 2009-05-11 09:30:10 +0200 mox r271745 : Manual merge to DEV300_m47 2009-05-11 09:28:59 +0200 mox r271744 : manual merge to DEV300_m47 2009-05-11 09:24:49 +0200 mox r271743 : Fix to merge 2009-05-11 09:21:55 +0200 mox r271742 : Manual merge to DEV300_m47 2009-05-11 09:18:13 +0200 mox r271741 : merge fixes 2009-05-11 09:00:50 +0200 mox r271739 : Manual merge to DEV300_m47 2009-05-09 13:26:10 +0200 mox r271734 : cleanup 2009-05-09 13:17:22 +0200 mox r271733 : WNT build fixes 2009-05-09 09:23:59 +0200 mox r271732 : Implement proper cross-platform font width calculation Implement faux bold support 2009-02-21 19:47:08 +0100 mox r268339 : CWS-TOOLING: rebase CWS cairocanvastext01 to trunk@267171 (milestone: DEV300:m41) 2009-01-19 21:51:21 +0100 mox r266530 : Fix compilation on win32 2009-01-19 21:37:20 +0100 mox r266529 : Fix typo 2009-01-19 21:35:28 +0100 mox r266528 : Better debug 2009-01-19 21:13:30 +0100 mox r266527 : Win32 fixes for proper text rendering 2009-01-19 21:12:56 +0100 mox r266526 : Win32 fixes for proper text rendering 2008-12-27 13:04:05 +0100 mox r265814 : configure fixes 2008-12-27 11:37:00 +0100 mox r265813 : x86_64 works only with system-cairo 2008-12-26 20:02:32 +0100 mox r265809 : Use the fix for 64bit builds 2008-12-25 16:58:11 +0100 mox r265802 : Fix build breaker on WNT 2008-12-24 23:04:58 +0100 mox r265801 : Unbreak build after rebase. 2008-12-23 18:52:32 +0100 mox r265790 : CWS-TOOLING: rebase CWS cairocanvastext01 to trunk@265758 (milestone: DEV300:m38) 2008-12-23 18:23:09 +0100 mox r265789 : Fix the fix 2008-12-23 18:21:27 +0100 mox r265788 : Fix OS2 stuff 2008-12-11 19:50:40 +0100 mox r265354 : Fix build breaker on Mac 2008-12-09 22:00:53 +0100 mox r265139 : CWS-TOOLING: rebase CWS cairocanvastext01 to trunk@264807 (milestone: DEV300:m37) 2008-12-08 23:02:32 +0100 thb r265052 : Removed outdated parts from readme 2008-12-08 22:26:54 +0100 mox r265051 : cleanup 2008-12-07 19:55:31 +0100 mox r264967 : Fix for non-intel processors. 2008-12-07 19:47:11 +0100 mox r264963 : sysdata fixes 2008-12-07 19:23:27 +0100 mox r264959 : Sysdata fixes 2008-12-07 19:01:48 +0100 mox r264958 : Fix sysdata usage 2008-12-07 11:41:33 +0100 mox r264951 : sysdata fixes 2008-12-07 11:38:32 +0100 mox r264950 : sysdata fixes 2008-12-06 23:15:06 +0100 mox r264947 : Try to fix error: __sync_val_compare_and_swap_4 2008-12-06 23:09:30 +0100 mox r264945 : Revert unnecessary change. 2008-12-06 23:04:40 +0100 mox r264944 : Use pre/postx from tools module. 2008-12-06 22:49:08 +0100 mox r264943 : Use proper pre/post includes. 2008-12-06 22:48:03 +0100 mox r264942 : Use pre/postx from tools module. 2008-12-06 22:24:10 +0100 mox r264941 : Fix build breaker. 2008-12-06 21:55:46 +0100 mox r264940 : Make pre/postx.h properly available 2008-12-06 21:54:23 +0100 mox r264939 : Make pre/postx.h properly available. 2008-12-06 21:43:09 +0100 mox r264938 : Try to fix error: __sync_val_compare_and_swap_4 2008-12-06 21:12:18 +0100 mox r264937 : Remove obsolete pre-built binaries 2008-12-06 21:07:40 +0100 mox r264936 : WNT: do not hardcode pixman version in cairo build 2008-12-06 19:26:44 +0100 mox r264934 : Revert pixman upgrade. 2008-12-06 18:35:14 +0100 mox r264933 : Fix build breaker 2008-12-06 18:31:11 +0100 mox r264932 : Use static pixman lib on unx/32bit to avoid linking problems 2008-12-06 17:22:52 +0100 mox r264930 : Update pixman to 0.13.2 2008-12-06 13:30:41 +0100 mox r264928 : Fix accidentally changed property 2008-12-06 13:09:00 +0100 mox r264927 : Fix accidental prop changes 2008-12-06 12:40:08 +0100 mox r264926 : Fix build breaker on Win32 2008-12-06 12:39:22 +0100 mox r264925 : Fix build breaker on Win32 2008-12-06 12:30:23 +0100 mox r264924 : Fix build breakers on win32 2008-12-06 11:45:33 +0100 mox r264923 : revert. 2008-12-06 11:43:05 +0100 mox r264922 : Try to fix header include problems on WNT 2008-12-06 09:57:35 +0100 mox r264921 : Cleanup accidental props 2008-11-29 14:43:51 +0100 mox r264580 : Move headers around to make all platforms compile 2008-11-29 14:41:59 +0100 mox r264579 : WaE fixes for X11 2008-11-29 13:13:49 +0100 mox r264578 : Fix build breaker on linux 2008-11-29 12:21:03 +0100 mox r264577 : Fix build breaker 2008-11-29 12:13:50 +0100 mox r264576 : Try to fix build breaker 2008-11-28 22:51:27 +0100 mox r264573 : Revert header includes to common style 2008-11-18 18:59:15 +0100 mox r263794 : Fix build breaker. 2008-11-17 20:28:19 +0100 mox r263740 : Revert most configure hacks 2008-11-17 20:12:51 +0100 mox r263739 : CWS-TOOLING: rebase CWS cairocanvastext01 to trunk@263288 (milestone: DEV300:m35) 2008-11-14 21:22:22 +0100 mox r263698 : ZLIB_FIX define set 2008-11-14 18:48:22 +0100 mox r263694 : hardcode zlib paths 2008-11-14 16:23:07 +0100 mox r263683 : Fix typo 2008-11-13 20:16:13 +0100 mox r263662 : WaE fix 2008-11-13 19:44:29 +0100 mox r263661 : Properly include zlib headers for win32 2008-11-12 20:05:51 +0100 mox r263610 : Add debugging code. 2008-11-10 19:44:35 +0100 mox r263537 : Try to fix build breaker 2008-11-09 22:34:35 +0100 mox r263504 : Remove accidentally added svn:ignore properties. 2008-11-09 22:33:21 +0100 mox r263503 : prop should be actually deleted. 2008-11-09 22:30:06 +0100 mox r263502 : props should be empty. 2008-11-09 22:23:22 +0100 mox r263501 : Try fix props again... 2008-11-09 22:11:26 +0100 mox r263500 : try to fix svn:ignore 2008-11-09 21:30:01 +0100 mox r263499 : CWS-TOOLING: rebase CWS cairocanvastext01 to trunk@262620 (milestone: DEV300:m34) 2008-11-09 20:30:55 +0100 mox r263498 : add missing cairo patch 2008-11-09 10:56:33 +0100 mox r263494 : Resync cairo module with cws cairosource01 2008-11-01 09:32:19 +0100 mox r262870 : CWS-TOOLING: rebase CWS cairocanvastext01 to trunk@262620 (milestone: DEV300:m34) 2008-10-26 20:55:48 +0100 mox r262663 : Fix build breaker 2008-10-25 13:10:00 +0200 mox r262662 : CWS rebase to m33 2008-10-12 19:47:56 +0200 mox r262170 : Migrate CWS cairocanvastext01 to SVN. --- .../source/engine/OGLTrans/OGLTrans_TransitionerImpl.cxx | 8 +++++++- slideshow/source/engine/OGLTrans/makefile.mk | 7 +++++++ 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/slideshow/source/engine/OGLTrans/OGLTrans_TransitionerImpl.cxx b/slideshow/source/engine/OGLTrans/OGLTrans_TransitionerImpl.cxx index 6c07065e2904..94ba2acb5682 100644 --- a/slideshow/source/engine/OGLTrans/OGLTrans_TransitionerImpl.cxx +++ b/slideshow/source/engine/OGLTrans/OGLTrans_TransitionerImpl.cxx @@ -55,7 +55,6 @@ #include #include #include -#include #include @@ -64,10 +63,16 @@ #if defined( WNT ) + #include + #include + #include #define GL_TEXTURE_MAX_ANISOTROPY_EXT 0x84FE #define GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT 0x84FF #elif defined( OS2 ) #elif defined( QUARTZ ) + #include "premac.h" + #include + #include "postmac.h" #elif defined( UNX ) namespace unx { @@ -77,6 +82,7 @@ namespace unx #include } #endif +#include #ifdef DEBUG #include diff --git a/slideshow/source/engine/OGLTrans/makefile.mk b/slideshow/source/engine/OGLTrans/makefile.mk index 3e5f818923dc..2062b8c7d4c5 100644 --- a/slideshow/source/engine/OGLTrans/makefile.mk +++ b/slideshow/source/engine/OGLTrans/makefile.mk @@ -33,6 +33,7 @@ PRJ=..$/..$/.. PRJNAME=slideshow TARGET=OGLTrans +TARGETTYPE=GUI ENABLE_EXCEPTIONS=TRUE # --- Settings ----------------------------------------------------------- @@ -58,7 +59,13 @@ DLLPRE= SHL1TARGET=$(TARGET).uno .IF "$(GUI)"=="UNX" +.IF "$(GUIBASE)"=="aqua" + SHL1STDLIBS= $(SALLIB) $(VCLLIB) $(CPPULIB) $(CPPUHELPERLIB) $(COMPHELPERLIB) $(CANVASTOOLSLIB) + OBJCXXFLAGS=-x objective-c++ -fobjc-exceptions + CFLAGSCXX+=$(OBJCXXFLAGS) +.ELSE SHL1STDLIBS= $(SALLIB) $(VCLLIB) $(CPPULIB) $(CPPUHELPERLIB) $(COMPHELPERLIB) $(CANVASTOOLSLIB) -lGL -lGLU -lX11 +.ENDIF .ELSE SHL1STDLIBS= $(SALLIB) $(VCLLIB) $(CPPULIB) $(CPPUHELPERLIB) $(COMPHELPERLIB) $(CANVASTOOLSLIB) opengl32.lib glu32.lib gdi32.lib .ENDIF From 615772fb62f460cb026771b27822f83264784a1c Mon Sep 17 00:00:00 2001 From: Jens-Heiner Rechtien Date: Tue, 19 May 2009 09:32:45 +0000 Subject: [PATCH 09/12] CWS-TOOLING: integrate CWS impress169 2009-05-13 17:37:21 +0200 sj r271865 : #i100942# applied patch, removed oversafe buffer check (now without warnings on 64 bit platform) 2009-05-13 12:27:18 +0200 sj r271855 : #i101769# fixed line/fill attributes for graphic objects 2009-05-12 10:25:17 +0200 cl r271799 : report correct minimum cell hight for empty cells 2009-04-28 17:29:46 +0200 cl r271334 : fixed merge error 2009-04-28 16:18:01 +0200 cl r271330 : fixed build error 2009-04-28 12:38:09 +0200 cl r271320 : #i100129# images for new layouts 2009-04-27 19:12:06 +0200 cl r271302 : CWS-TOOLING: rebase CWS impress169 to trunk@270723 (milestone: DEV300:m46) 2009-04-20 19:13:28 +0200 sj r271012 : #i100942# applied patch, removed oversafe buffer check 2009-04-09 18:00:01 +0200 sj r270719 : #158488# added rectangular gradient support 2009-04-09 17:49:52 +0200 sj r270718 : #158488# added rectangular gradient support 2009-04-09 17:46:24 +0200 sj r270717 : #158488# added rectangular gradient support 2009-03-26 18:16:34 +0100 cl r270098 : #i99867# applied patch from jlcheng to correctly register table design pane 2009-03-26 18:12:11 +0100 cl r270097 : #i100220# leave some items default so they are not overridden if a new table style is set 2009-03-26 18:11:10 +0100 cl r270096 : #i100220# clear only those items that are also in the style when assigning a new table layout 2009-03-26 15:56:24 +0100 cl r270085 : #i99977# listen to outliner and dispose if outliner dies 2009-03-26 15:47:29 +0100 cl r270084 : #i99977# made the Outliner a SfxBroadcaster so others can listen for its death 2009-03-24 19:10:05 +0100 sj r269991 : #i100490# fixed text resize problem 2009-03-23 14:31:11 +0100 sj r269872 : #i96083# added patch, (dubious && and ||) 2009-03-19 17:55:11 +0100 sj r269764 : #i100275# applied patch, row height is now correct even for rows containing no text 2009-03-18 18:10:52 +0100 sj r269701 : #i93616# solved performance problem when loading document 2009-03-18 16:20:40 +0100 sj r269688 : removing unused code 2009-03-18 16:19:22 +0100 sj r269687 : removing unused code 2009-03-18 16:17:54 +0100 sj r269686 : removing unused code 2009-03-18 10:28:07 +0100 cl r269643 : #i100029# let cells be disposed as soon as the table model is disposed 2009-03-17 15:56:50 +0100 cl r269614 : #i99984# new impress photo layouts 3x2 and 2x2 2009-03-17 15:36:35 +0100 cl r269611 : #i99984# adding new impress photo layouts 3x2 and 2x2 2009-03-16 18:43:48 +0100 cl r269564 : #i55224# correct internal links if pages are changed 2009-03-16 16:40:38 +0100 cl r269559 : #i55224# correct internal hyperlinks if slides are changed/renamed 2009-03-16 15:34:12 +0100 cl r269553 : #i99427# invalidate slots after promote/demote 2009-03-13 18:18:20 +0100 sj r269492 : #i92421# fixed loop if loading encrypted ppt file 2009-03-13 14:51:58 +0100 sj r269481 : #i93002# fixed crash if saving presentation without master title placeholder 2009-03-13 12:26:21 +0100 sj r269468 : #i100147# do not exceed the max point count if creating simple polygon via ::GetSimple 2009-03-12 17:00:45 +0100 sj r269427 : #i82518# justifying rectangles for arc/pie and chord actions, fixed round rectangle problem --- sd/inc/anminfo.hxx | 11 +- sd/inc/drawdoc.hxx | 3 + sd/inc/pres.hxx | 2 + sd/source/core/anminfo.cxx | 57 ++++++-- sd/source/core/drawdoc2.cxx | 126 +++++++++++++++++- sd/source/core/drawdoc4.cxx | 26 ++-- sd/source/core/sdobjfac.cxx | 2 +- sd/source/core/sdpage.cxx | 42 +++++- sd/source/filter/eppt/epptso.cxx | 2 +- sd/source/filter/html/htmlex.cxx | 6 +- sd/source/filter/pptin.cxx | 8 +- sd/source/filter/sdpptwrp.cxx | 20 +-- .../AccessibleOutlineEditSource.cxx | 28 +++- sd/source/ui/app/res_bmp.src | 16 +++ sd/source/ui/app/strings.src | 8 ++ sd/source/ui/func/fudraw.cxx | 17 +-- sd/source/ui/func/fuoaprms.cxx | 14 +- sd/source/ui/func/fusel.cxx | 13 +- sd/source/ui/func/unoaprms.cxx | 6 +- sd/source/ui/inc/res_bmp.hrc | 5 + sd/source/ui/inc/strings.hrc | 4 +- sd/source/ui/toolpanel/LayoutMenu.cxx | 3 + sd/source/ui/unoidl/unoobj.cxx | 34 ++--- sd/source/ui/view/drtxtob1.cxx | 4 + sd/source/ui/view/drviewse.cxx | 2 +- sd/source/ui/view/drviewsf.cxx | 2 +- sd/source/ui/view/sdview2.cxx | 4 +- 27 files changed, 365 insertions(+), 100 deletions(-) diff --git a/sd/inc/anminfo.hxx b/sd/inc/anminfo.hxx index e48eee39569f..8acb207d8065 100644 --- a/sd/inc/anminfo.hxx +++ b/sd/inc/anminfo.hxx @@ -73,16 +73,19 @@ public: String maSecondSoundFile; // fuer Objekt ausblenden BOOL mbSecondSoundOn; // fuer Objekt ausblenden BOOL mbSecondPlayFull;// fuer Objekt ausblenden - String maBookmark; // Sprung zu Objekt/Seite +// String maBookmark; // Sprung zu Objekt/Seite USHORT mnVerb; // fuer OLE-Objekt ULONG mnPresOrder; + SdrObject& mrObject; + void SetBookmark( const String& rBookmark ); + String GetBookmark(); public: - SdAnimationInfo(); - SdAnimationInfo(const SdAnimationInfo& rAnmInfo); + SdAnimationInfo(SdrObject& rObject); + SdAnimationInfo(const SdAnimationInfo& rAnmInfo, SdrObject& rObject); virtual ~SdAnimationInfo(); - virtual SdrObjUserData* Clone(SdrObject* pObj) const; + virtual SdrObjUserData* Clone(SdrObject* pObject) const; }; #endif // _SD_ANMINFO_HXX diff --git a/sd/inc/drawdoc.hxx b/sd/inc/drawdoc.hxx index 8117e4d55ef3..8ef84f263d98 100644 --- a/sd/inc/drawdoc.hxx +++ b/sd/inc/drawdoc.hxx @@ -205,6 +205,7 @@ private: ::std::auto_ptr mpMasterPageListWatcher; void UpdatePageObjectsInNotes(USHORT nStartPos); + void UpdatePageRelativeURLs(SdPage* pPage, USHORT nPos, sal_Int32 nIncrement); void FillOnlineSpellingList(SdPage* pPage); void SpellObject(SdrTextObj* pObj); @@ -588,6 +589,8 @@ public: /* converts the given western font height to a corresponding ctl font height, deppending on the system language */ static sal_uInt32 convertFontHeightToCTL( sal_uInt32 nWesternFontHeight ); + void UpdatePageRelativeURLs(const String& rOldName, const String& rNewName); + private: /** This member stores the printer independent layout mode. Please refer to SetPrinterIndependentLayout() for its diff --git a/sd/inc/pres.hxx b/sd/inc/pres.hxx index 2e5171a4b14d..bd1d5015e5f4 100644 --- a/sd/inc/pres.hxx +++ b/sd/inc/pres.hxx @@ -90,6 +90,8 @@ enum AutoLayout AUTOLAYOUT_TITLE_VERTICAL_OUTLINE_CLIPART, AUTOLAYOUT_HANDOUT9, AUTOLAYOUT_ONLY_TEXT, + AUTOLAYOUT_4CLIPART, + AUTOLAYOUT_6CLIPART, AUTOLAYOUT__END }; diff --git a/sd/source/core/anminfo.cxx b/sd/source/core/anminfo.cxx index 2143067681d2..04bedc8ee8f8 100644 --- a/sd/source/core/anminfo.cxx +++ b/sd/source/core/anminfo.cxx @@ -35,7 +35,8 @@ #include "svx/xtable.hxx" #include #include - +#include +#include #include "anminfo.hxx" #include "glob.hxx" @@ -47,7 +48,7 @@ using namespace ::com::sun::star; -SdAnimationInfo::SdAnimationInfo() +SdAnimationInfo::SdAnimationInfo(SdrObject& rObject) : SdrObjUserData(SdUDInventor, SD_ANIMATIONINFO_ID, 0), mePresObjKind (PRESOBJ_NONE), meEffect (presentation::AnimationEffect_NONE), @@ -66,13 +67,14 @@ SdAnimationInfo::SdAnimationInfo() mbSecondSoundOn (FALSE), mbSecondPlayFull (FALSE), mnVerb (0), - mnPresOrder (LIST_APPEND) + mnPresOrder (LIST_APPEND), + mrObject (rObject) { maBlueScreen = RGB_Color(COL_LIGHTMAGENTA); maDimColor = RGB_Color(COL_LIGHTGRAY); } -SdAnimationInfo::SdAnimationInfo(const SdAnimationInfo& rAnmInfo) +SdAnimationInfo::SdAnimationInfo(const SdAnimationInfo& rAnmInfo, SdrObject& rObject) : SdrObjUserData (rAnmInfo), mePresObjKind (PRESOBJ_NONE), meEffect (rAnmInfo.meEffect), @@ -94,9 +96,10 @@ SdAnimationInfo::SdAnimationInfo(const SdAnimationInfo& rAnmInfo) maSecondSoundFile (rAnmInfo.maSecondSoundFile), mbSecondSoundOn (rAnmInfo.mbSecondSoundOn), mbSecondPlayFull (rAnmInfo.mbSecondPlayFull), - maBookmark (rAnmInfo.maBookmark), +// maBookmark (rAnmInfo.maBookmark), mnVerb (rAnmInfo.mnVerb), - mnPresOrder (LIST_APPEND) + mnPresOrder (LIST_APPEND), + mrObject (rObject) { // can not be copied if(meEffect == presentation::AnimationEffect_PATH) @@ -108,7 +111,45 @@ SdAnimationInfo::~SdAnimationInfo() { } -SdrObjUserData* SdAnimationInfo::Clone(SdrObject*) const +SdrObjUserData* SdAnimationInfo::Clone(SdrObject* pObject) const { - return new SdAnimationInfo(*this); + DBG_ASSERT( pObject, "SdAnimationInfo::Clone(), pObject must not be null!" ); + if( pObject == 0 ) + pObject = &mrObject; + + return new SdAnimationInfo(*this, *pObject ); +} + +void SdAnimationInfo::SetBookmark( const String& rBookmark ) +{ + if( meClickAction == ::com::sun::star::presentation::ClickAction_BOOKMARK ) + { + String sURL( '#' ); + sURL += rBookmark; + SvxFieldItem aURLItem( SvxURLField( sURL, sURL ), EE_FEATURE_FIELD ); + mrObject.SetMergedItem( aURLItem ); + } + else + { + SvxFieldItem aURLItem( SvxURLField( rBookmark, rBookmark ), EE_FEATURE_FIELD ); + mrObject.SetMergedItem( aURLItem ); + } +} + +String SdAnimationInfo::GetBookmark() +{ + String sBookmark; + + const SvxFieldItem* pFldItem = dynamic_cast< const SvxFieldItem* >( &mrObject.GetMergedItem( EE_FEATURE_FIELD ) ); + if( pFldItem ) + { + SvxURLField* pURLField = const_cast< SvxURLField* >( dynamic_cast( pFldItem->GetField() ) ); + if( pURLField ) + sBookmark = pURLField->GetURL(); + } + + if( (meClickAction == ::com::sun::star::presentation::ClickAction_BOOKMARK) && sBookmark.Len() && (sBookmark.GetChar(0) == '#') ) + sBookmark = sBookmark.Copy( 1 ); + + return sBookmark; } diff --git a/sd/source/core/drawdoc2.cxx b/sd/source/core/drawdoc2.cxx index 3fb085ba651d..04d15401a4d2 100644 --- a/sd/source/core/drawdoc2.cxx +++ b/sd/source/core/drawdoc2.cxx @@ -50,7 +50,8 @@ #include #include #include - +#include +#include #include #include @@ -303,6 +304,114 @@ void SdDrawDocument::UpdatePageObjectsInNotes(USHORT nStartPos) } } +void SdDrawDocument::UpdatePageRelativeURLs(const String& rOldName, const String& rNewName) +{ + if (rNewName.Len() == 0) + return; + + SfxItemPool& pPool(GetPool()); + USHORT nCount = pPool.GetItemCount(EE_FEATURE_FIELD); + for (USHORT nOff = 0; nOff < nCount; nOff++) + { + const SfxPoolItem *pItem = pPool.GetItem(EE_FEATURE_FIELD, nOff); + const SvxFieldItem* pFldItem = dynamic_cast< const SvxFieldItem * > (pItem); + + if(pFldItem) + { + SvxURLField* pURLField = const_cast< SvxURLField* >( dynamic_cast( pFldItem->GetField() ) ); + + if(pURLField) + { + XubString aURL = pURLField->GetURL(); + + if (aURL.Len() && (aURL.GetChar(0) == 35) && (aURL.Search(rOldName, 1) == 1)) + { + if (aURL.Len() == rOldName.Len() + 1) // standard page name + { + aURL.Erase (1, aURL.Len() - 1); + aURL += rNewName; + pURLField->SetURL(aURL); + } + else + { + const XubString sNotes = SdResId(STR_NOTES); + if (aURL.Len() == rOldName.Len() + 2 + sNotes.Len() && aURL.Search(sNotes, rOldName.Len() + 2) == rOldName.Len() + 2) + { + aURL.Erase (1, aURL.Len() - 1); + aURL += rNewName; + aURL += ' '; + aURL += sNotes; + pURLField->SetURL(aURL); + } + } + } + } + } + } +} + +void SdDrawDocument::UpdatePageRelativeURLs(SdPage* pPage, USHORT nPos, sal_Int32 nIncrement) +{ + bool bNotes = (pPage->GetPageKind() == PK_NOTES); + + SfxItemPool& pPool(GetPool()); + USHORT nCount = pPool.GetItemCount(EE_FEATURE_FIELD); + for (USHORT nOff = 0; nOff < nCount; nOff++) + { + const SfxPoolItem *pItem = pPool.GetItem(EE_FEATURE_FIELD, nOff); + const SvxFieldItem* pFldItem; + + if ((pFldItem = dynamic_cast< const SvxFieldItem * > (pItem)) != 0) + { + SvxURLField* pURLField = const_cast< SvxURLField* >( dynamic_cast( pFldItem->GetField() ) ); + + if(pURLField) + { + XubString aURL = pURLField->GetURL(); + + if (aURL.Len() && (aURL.GetChar(0) == 35)) + { + XubString aHashSlide('#'); + aHashSlide += SdResId(STR_PAGE); + + if (aURL.CompareTo(aHashSlide, aHashSlide.Len()) == COMPARE_EQUAL) + { + XubString aURLCopy = aURL; + const XubString sNotes = SdResId(STR_NOTES); + + aURLCopy.Erase(0, aHashSlide.Len()); + + bool bNotesLink = (aURLCopy.Len() >= sNotes.Len() + 3 && aURLCopy.Search(sNotes, aURLCopy.Len() - sNotes.Len()) == aURLCopy.Len() - sNotes.Len()); + + if (bNotesLink ^ bNotes) + continue; // no compatible link and page + + if (bNotes) + aURLCopy.Erase(aURLCopy.Len() - sNotes.Len(), sNotes.Len()); + + sal_Int32 number = aURLCopy.ToInt32(); + USHORT realPageNumber = (nPos + 1)/ 2; + + if ( number >= realPageNumber ) + { + // update link page number + number += nIncrement; + aURL.Erase (aHashSlide.Len() + 1, aURL.Len() - aHashSlide.Len() - 1); + aURL += XubString::CreateFromInt32(number); + if (bNotes) + { + aURL += ' '; + aURL += sNotes; + } + pURLField->SetURL(aURL); + } + } + } + } + } + } +} + /************************************************************************* |* |* Seite verschieben @@ -327,11 +436,17 @@ void SdDrawDocument::MovePage(USHORT nPgNum, USHORT nNewPos) void SdDrawDocument::InsertPage(SdrPage* pPage, USHORT nPos) { + bool bLast = (nPos == GetPageCount()); + FmFormModel::InsertPage(pPage, nPos); ((SdPage*)pPage)->ConnectLink(); UpdatePageObjectsInNotes(nPos); + + if (!bLast) + UpdatePageRelativeURLs(static_cast( pPage ), nPos, 1); + } /************************************************************************* @@ -356,11 +471,16 @@ void SdDrawDocument::DeletePage(USHORT nPgNum) SdrPage* SdDrawDocument::RemovePage(USHORT nPgNum) { SdrPage* pPage = FmFormModel::RemovePage(nPgNum); + + bool bLast = ((nPgNum+1)/2 == (GetPageCount()+1)/2); ((SdPage*)pPage)->DisconnectLink(); ReplacePageInCustomShows( dynamic_cast< SdPage* >( pPage ), 0 ); UpdatePageObjectsInNotes(nPgNum); + if (!bLast) + UpdatePageRelativeURLs((SdPage*)pPage, nPgNum, -1); + return pPage; } @@ -965,8 +1085,8 @@ SdAnimationInfo* SdDrawDocument::GetShapeUserData(SdrObject& rObject, bool bCrea if( (pRet == 0) && bCreate ) { - pRet = new SdAnimationInfo; - rObject.InsertUserData( pRet ); + pRet = new SdAnimationInfo( rObject ); + rObject.InsertUserData( pRet); } return pRet; diff --git a/sd/source/core/drawdoc4.cxx b/sd/source/core/drawdoc4.cxx index 7413644ced2f..adba35d33880 100644 --- a/sd/source/core/drawdoc4.cxx +++ b/sd/source/core/drawdoc4.cxx @@ -640,21 +640,21 @@ void SdDrawDocument::CreateDefaultCellStyles() rISet.Put( SvxFontHeightItem( 635, 100, EE_CHAR_FONTHEIGHT_CJK ) ); // 18 pt rISet.Put( SvxFontHeightItem( convertFontHeightToCTL( 635 ), 100, EE_CHAR_FONTHEIGHT_CTL ) ); // 18 pt - rISet.Put( SvxWeightItem( WEIGHT_NORMAL, EE_CHAR_WEIGHT ) ); - rISet.Put( SvxWeightItem( WEIGHT_NORMAL, EE_CHAR_WEIGHT_CJK ) ); - rISet.Put( SvxWeightItem( WEIGHT_NORMAL, EE_CHAR_WEIGHT_CTL ) ); +// rISet.Put( SvxWeightItem( WEIGHT_NORMAL, EE_CHAR_WEIGHT ) ); +// rISet.Put( SvxWeightItem( WEIGHT_NORMAL, EE_CHAR_WEIGHT_CJK ) ); +// rISet.Put( SvxWeightItem( WEIGHT_NORMAL, EE_CHAR_WEIGHT_CTL ) ); - rISet.Put( SvxPostureItem( ITALIC_NONE, EE_CHAR_ITALIC ) ); - rISet.Put( SvxPostureItem( ITALIC_NONE, EE_CHAR_ITALIC_CJK ) ); - rISet.Put( SvxPostureItem( ITALIC_NONE, EE_CHAR_ITALIC_CTL ) ); +// rISet.Put( SvxPostureItem( ITALIC_NONE, EE_CHAR_ITALIC ) ); +// rISet.Put( SvxPostureItem( ITALIC_NONE, EE_CHAR_ITALIC_CJK ) ); +// rISet.Put( SvxPostureItem( ITALIC_NONE, EE_CHAR_ITALIC_CTL ) ); - rISet.Put(SvxContourItem(FALSE, EE_CHAR_OUTLINE )); - rISet.Put(SvxShadowedItem(FALSE, EE_CHAR_SHADOW )); - rISet.Put(SvxUnderlineItem(UNDERLINE_NONE, EE_CHAR_UNDERLINE)); - rISet.Put(SvxOverlineItem(UNDERLINE_NONE, EE_CHAR_OVERLINE)); - rISet.Put(SvxCrossedOutItem(STRIKEOUT_NONE, EE_CHAR_STRIKEOUT )); - rISet.Put(SvxEmphasisMarkItem(EMPHASISMARK_NONE, EE_CHAR_EMPHASISMARK)); - rISet.Put(SvxCharReliefItem(RELIEF_NONE, EE_CHAR_RELIEF)); +// rISet.Put(SvxContourItem(FALSE, EE_CHAR_OUTLINE )); +// rISet.Put(SvxShadowedItem(FALSE, EE_CHAR_SHADOW )); +// rISet.Put(SvxUnderlineItem(UNDERLINE_NONE, EE_CHAR_UNDERLINE)); +// rISet.Put(SvxOverlineItem(UNDERLINE_NONE, EE_CHAR_OVERLINE)); +// rISet.Put(SvxCrossedOutItem(STRIKEOUT_NONE, EE_CHAR_STRIKEOUT )); +// rISet.Put(SvxEmphasisMarkItem(EMPHASISMARK_NONE, EE_CHAR_EMPHASISMARK)); +// rISet.Put(SvxCharReliefItem(RELIEF_NONE, EE_CHAR_RELIEF)); rISet.Put(SvxColorItem(Color(COL_AUTO), EE_CHAR_COLOR )); // Absatzattribute (Edit Engine) diff --git a/sd/source/core/sdobjfac.cxx b/sd/source/core/sdobjfac.cxx index fcede46dfe6f..8657360a65da 100644 --- a/sd/source/core/sdobjfac.cxx +++ b/sd/source/core/sdobjfac.cxx @@ -58,7 +58,7 @@ IMPL_LINK( SdObjectFactory, MakeUserData, SdrObjFactory *, pObjFactory ) switch( pObjFactory->nIdentifier ) { case( SD_ANIMATIONINFO_ID ): - pObjFactory->pNewData = new SdAnimationInfo; + pObjFactory->pNewData = new SdAnimationInfo( *pObjFactory->pObj ); break; case( SD_IMAPINFO_ID ): diff --git a/sd/source/core/sdpage.cxx b/sd/source/core/sdpage.cxx index 2aad3821d1be..47ffb832b52a 100644 --- a/sd/source/core/sdpage.cxx +++ b/sd/source/core/sdpage.cxx @@ -1058,7 +1058,7 @@ Rectangle SdPage::GetLayoutRect() const |* \*************************************************************************/ -const int MAX_PRESOBJS = 5; // maximum number of presentation objects per layout +const int MAX_PRESOBJS = 7; // maximum number of presentation objects per layout const int VERTICAL = 0x8000; struct LayoutDescriptor @@ -1067,10 +1067,10 @@ struct LayoutDescriptor PresObjKind meKind[MAX_PRESOBJS]; bool mbVertical[MAX_PRESOBJS]; - LayoutDescriptor( int nLayout, int k0 = 0, int k1 = 0, int k2 = 0, int k3 = 0, int k4 = 0 ); + LayoutDescriptor( int nLayout, int k0 = 0, int k1 = 0, int k2 = 0, int k3 = 0, int k4 = 0, int k5 = 0, int k6 = 0 ); }; -LayoutDescriptor::LayoutDescriptor( int nLayout, int k0, int k1, int k2, int k3, int k4 ) +LayoutDescriptor::LayoutDescriptor( int nLayout, int k0, int k1, int k2, int k3, int k4, int k5, int k6 ) : mnLayout( nLayout ) { meKind[0] = static_cast(k0 & (~VERTICAL)); mbVertical[0] = (k0 & VERTICAL) == VERTICAL; @@ -1078,6 +1078,8 @@ LayoutDescriptor::LayoutDescriptor( int nLayout, int k0, int k1, int k2, int k3, meKind[2] = static_cast(k2 & (~VERTICAL)); mbVertical[2] = (k2 & VERTICAL) == VERTICAL; meKind[3] = static_cast(k3 & (~VERTICAL)); mbVertical[3] = (k3 & VERTICAL) == VERTICAL; meKind[4] = static_cast(k4 & (~VERTICAL)); mbVertical[4] = (k4 & VERTICAL) == VERTICAL; + meKind[5] = static_cast(k5 & (~VERTICAL)); mbVertical[5] = (k5 & VERTICAL) == VERTICAL; + meKind[6] = static_cast(k6 & (~VERTICAL)); mbVertical[6] = (k6 & VERTICAL) == VERTICAL; } static const LayoutDescriptor& GetLayoutDescriptor( AutoLayout eLayout ) @@ -1117,7 +1119,11 @@ static const LayoutDescriptor& GetLayoutDescriptor( AutoLayout eLayout ) LayoutDescriptor( 0, PRESOBJ_TITLE, PRESOBJ_OUTLINE|VERTICAL ), // AUTOLAYOUT_TITLE_VERTICAL_OUTLINE LayoutDescriptor( 9, PRESOBJ_TITLE, PRESOBJ_GRAPHIC, PRESOBJ_OUTLINE|VERTICAL ), // AUTOLAYOUT_TITLE_VERTICAL_OUTLINE_CLIPART LayoutDescriptor( 0 ), // AUTOLAYOUT_HANDOUT9 - LayoutDescriptor( 10, PRESOBJ_TEXT, PRESOBJ_NONE ) // AUTOLAYOUT_ONLY_TEXT + LayoutDescriptor( 10, PRESOBJ_TEXT, PRESOBJ_NONE ), // AUTOLAYOUT_ONLY_TEXT + LayoutDescriptor( 6, PRESOBJ_TITLE, PRESOBJ_GRAPHIC, PRESOBJ_GRAPHIC, // AUTOLAYOUT_4CLIPART + PRESOBJ_GRAPHIC, PRESOBJ_GRAPHIC ), + LayoutDescriptor( 11, PRESOBJ_TITLE, PRESOBJ_GRAPHIC, PRESOBJ_GRAPHIC, // AUTOLAYOUT_6CLIPART + PRESOBJ_GRAPHIC, PRESOBJ_GRAPHIC, PRESOBJ_GRAPHIC, PRESOBJ_GRAPHIC ) }; if( (eLayout < AUTOLAYOUT__START) || (eLayout >= AUTOLAYOUT__END) ) @@ -1306,6 +1312,32 @@ static void CalcAutoLayoutRectangles( SdPage& rPage, int nLayout, Rectangle* rRe rRectangle[0].SetPos( aTitlePos); break; } + case 11: // title, 6 shapes + { + ULONG nX = long (aLayoutPos.X()); + + aLayoutSize.Height() = long (aLayoutSize.Height() * 0.477); + aLayoutSize.Width() = long (aLayoutSize.Width() * 0.322); + rRectangle[1] = Rectangle (aLayoutPos, aLayoutSize); + + aLayoutPos.X() = long (nX + aLayoutSize.Width() * 1.05); + rRectangle[2] = Rectangle (aLayoutPos, aLayoutSize); + + aLayoutPos.X() = long (nX + aLayoutSize.Width() * 2 * 1.05); + rRectangle[3] = Rectangle (aLayoutPos, aLayoutSize); + + aLayoutPos.Y() = long (aLayoutPos.Y() + aLayoutSize.Height() * 1.095); + rRectangle[4] = Rectangle (aLayoutPos, aLayoutSize); + + aLayoutPos.X() = long (nX + aLayoutSize.Width() * 1.05); + rRectangle[5] = Rectangle (aLayoutPos, aLayoutSize); + + aLayoutPos.X() = nX; + rRectangle[6] = Rectangle (aLayoutPos, aLayoutSize); + + break; + } + } } @@ -2753,7 +2785,9 @@ SdPage* SdPage::getImplementation( const ::com::sun::star::uno::Reference< ::com void SdPage::SetName (const String& rName) { + String aOldName = GetName(); FmFormPage::SetName (rName); + static_cast(pModel)->UpdatePageRelativeURLs(aOldName, rName); ActionChanged(); } diff --git a/sd/source/filter/eppt/epptso.cxx b/sd/source/filter/eppt/epptso.cxx index 555dd965a2f5..b3e14e4bd359 100644 --- a/sd/source/filter/eppt/epptso.cxx +++ b/sd/source/filter/eppt/epptso.cxx @@ -4889,8 +4889,8 @@ void PPTWriter::ImplWritePage( const PHLayout& rLayout, EscherSolverContainer& a *mpStrm << (sal_uInt32)( mnTextSize + 1 ) << (sal_uInt32)1 << (sal_uInt16)0; mpPptEscherEx->CloseContainer(); // ESCHER_ClientTextBox mpPptEscherEx->CloseContainer(); // ESCHER_SpContainer - continue; } + continue; } else { diff --git a/sd/source/filter/html/htmlex.cxx b/sd/source/filter/html/htmlex.cxx index 80e76fa2a3fd..6e2a7feb5240 100644 --- a/sd/source/filter/html/htmlex.cxx +++ b/sd/source/filter/html/htmlex.cxx @@ -1773,13 +1773,13 @@ bool HtmlExport::CreateHtmlForPresPages() case presentation::ClickAction_BOOKMARK: { BOOL bIsMasterPage; - USHORT nPgNum = mpDoc->GetPageByName( pInfo->maBookmark, bIsMasterPage ); + USHORT nPgNum = mpDoc->GetPageByName( pInfo->GetBookmark(), bIsMasterPage ); SdrObject* pObj = NULL; if( nPgNum == SDRPAGE_NOTFOUND ) { // Ist das Bookmark ein Objekt? - pObj = mpDoc->GetObj(pInfo->maBookmark); + pObj = mpDoc->GetObj(pInfo->GetBookmark()); if (pObj) nPgNum = pObj->GetPage()->GetPageNum(); } @@ -1790,7 +1790,7 @@ bool HtmlExport::CreateHtmlForPresPages() break; case presentation::ClickAction_DOCUMENT: - aHRef = pInfo->maBookmark; + aHRef = pInfo->GetBookmark(); break; case presentation::ClickAction_PREVPAGE: diff --git a/sd/source/filter/pptin.cxx b/sd/source/filter/pptin.cxx index dae9e427aa35..c4e59cd4275b 100644 --- a/sd/source/filter/pptin.cxx +++ b/sd/source/filter/pptin.cxx @@ -236,7 +236,7 @@ ImplSdPPTImport::ImplSdPPTImport( SdDrawDocument* pDocument, SvStorage& rStorage InitSvxMSDffManager( nDggContainerOfs, pStData, nSvxMSDffOLEConvFlags2 ); SetSvxMSDffSettings( SVXMSDFF_SETTINGS_CROP_BITMAPS - | SVXMSDFF_SETTINGS_IMPORT_IAS | SVXMSDFF_SETTINGS_IMPORT_PPT ); + | SVXMSDFF_SETTINGS_IMPORT_PPT ); SetModel( mpDoc, 576 ); } } @@ -2099,7 +2099,7 @@ void ImplSdPPTImport::FillSdAnimationInfo( SdAnimationInfo* pInfo, PptInteractiv // Lokale Informationen in pInfo eintragen if( pIAtom->nSoundRef ) { - pInfo->maBookmark = ReadSound( pIAtom->nSoundRef ); // Pfad zum Soundfile in MSDOS-Notation + pInfo->SetBookmark( ReadSound( pIAtom->nSoundRef ) ); // Pfad zum Soundfile in MSDOS-Notation pInfo->meClickAction = ::com::sun::star::presentation::ClickAction_SOUND; // RunProgramAction } // if ( nFlags & 0x01 ) // koennen wir nicht ( beim Anklicken markieren ) @@ -2117,7 +2117,7 @@ void ImplSdPPTImport::FillSdAnimationInfo( SdAnimationInfo* pInfo, PptInteractiv case 0x02 : // RunProgramAction { pInfo->meClickAction = ::com::sun::star::presentation::ClickAction_PROGRAM; - pInfo->maBookmark = aMacroName; // Programmname in aBookmark + pInfo->SetBookmark( aMacroName ); // Programmname in aBookmark } break; case 0x03 : // JumpAction @@ -2187,8 +2187,8 @@ void ImplSdPPTImport::FillSdAnimationInfo( SdAnimationInfo* pInfo, PptInteractiv { if ( pPtr->aConvSubString.Len() ) { - pInfo->maBookmark = pPtr->aConvSubString; pInfo->meClickAction = ::com::sun::star::presentation::ClickAction_BOOKMARK; + pInfo->SetBookmark( pPtr->aConvSubString ); } } break; diff --git a/sd/source/filter/sdpptwrp.cxx b/sd/source/filter/sdpptwrp.cxx index 7d386623c9b2..ab42e2bde5cb 100644 --- a/sd/source/filter/sdpptwrp.cxx +++ b/sd/source/filter/sdpptwrp.cxx @@ -107,18 +107,20 @@ sal_Bool SdPPTFilter::Import() aPropValue.Name = rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "DocumentURL" ) ); aConfigData[ 0 ] = aPropValue; - MSFilterTracer aTracer( aTraceConfigPath, &aConfigData ); - aTracer.StartTracing(); - SdPPTImport* pImport = new SdPPTImport( &mrDocument, *pDocStream, *pStorage, mrMedium, &aTracer ); - if ( ( bRet = pImport->Import() ) == sal_False ) + if ( pStorage->IsStream( String( RTL_CONSTASCII_USTRINGPARAM("EncryptedSummary") ) ) ) + mrMedium.SetError( ERRCODE_SVX_READ_FILTER_PPOINT ); + else { - if ( pStorage->IsStream( String( RTL_CONSTASCII_USTRINGPARAM("EncryptedSummary") ) ) ) - mrMedium.SetError( ERRCODE_SVX_READ_FILTER_PPOINT ); - else + MSFilterTracer aTracer( aTraceConfigPath, &aConfigData ); + aTracer.StartTracing(); + + SdPPTImport* pImport = new SdPPTImport( &mrDocument, *pDocStream, *pStorage, mrMedium, &aTracer ); + if ( ( bRet = pImport->Import() ) == sal_False ) mrMedium.SetError( SVSTREAM_WRONGVERSION ); + + aTracer.EndTracing(); + delete pImport; } - aTracer.EndTracing(); - delete pImport; delete pDocStream; } } diff --git a/sd/source/ui/accessibility/AccessibleOutlineEditSource.cxx b/sd/source/ui/accessibility/AccessibleOutlineEditSource.cxx index 8b4ec2819db2..2b9e977b073f 100644 --- a/sd/source/ui/accessibility/AccessibleOutlineEditSource.cxx +++ b/sd/source/ui/accessibility/AccessibleOutlineEditSource.cxx @@ -56,6 +56,7 @@ namespace accessibility { // register as listener - need to broadcast state change messages rOutliner.SetNotifyHdl( LINK(this, AccessibleOutlineEditSource, NotifyHdl) ); + StartListening(rOutliner); } AccessibleOutlineEditSource::~AccessibleOutlineEditSource() @@ -177,13 +178,32 @@ namespace accessibility return Point(); } - void AccessibleOutlineEditSource::Notify( SfxBroadcaster&, const SfxHint& rHint ) + void AccessibleOutlineEditSource::Notify( SfxBroadcaster& rBroadcaster, const SfxHint& rHint ) { - const SdrHint* pSdrHint = dynamic_cast< const SdrHint* >( &rHint ); + bool bDispose = false; - if( pSdrHint && ( pSdrHint->GetKind() == HINT_MODELCLEARED ) ) + if( &rBroadcaster == mpOutliner ) + { + const SfxSimpleHint* pHint = dynamic_cast< const SfxSimpleHint * >( &rHint ); + if( pHint && (pHint->GetId() == SFX_HINT_DYING) ) + { + bDispose = true; + mpOutliner = NULL; + } + } + else + { + const SdrHint* pSdrHint = dynamic_cast< const SdrHint* >( &rHint ); + + if( pSdrHint && ( pSdrHint->GetKind() == HINT_MODELCLEARED ) ) + { + // model is dying under us, going defunc + bDispose = true; + } + } + + if( bDispose ) { - // model is dying under us, going defunc if( mpOutliner ) mpOutliner->SetNotifyHdl( Link() ); mpOutliner = NULL; diff --git a/sd/source/ui/app/res_bmp.src b/sd/source/ui/app/res_bmp.src index 5951fddd0e1c..25bb04e954ca 100644 --- a/sd/source/ui/app/res_bmp.src +++ b/sd/source/ui/app/res_bmp.src @@ -237,6 +237,22 @@ Bitmap BMP_FOIL_25_H { File = "foil25_h.bmp" ; }; +Bitmap BMP_FOIL_26 +{ + File = "foil26.bmp" ; +}; +Bitmap BMP_FOIL_26_H +{ + File = "foil26_h.bmp" ; +}; +Bitmap BMP_FOIL_27 +{ + File = "foil27.bmp" ; +}; +Bitmap BMP_FOIL_27_H +{ + File = "foil27_h.bmp" ; +}; Bitmap BMP_FOILH_01 { File = "foilh01.bmp" ; diff --git a/sd/source/ui/app/strings.src b/sd/source/ui/app/strings.src index 7bea646e3122..ca20d5900768 100644 --- a/sd/source/ui/app/strings.src +++ b/sd/source/ui/app/strings.src @@ -253,6 +253,10 @@ String STR_AUTOLAYOUT_4OBJ { Text [ en-US ] = "Title, 4 Objects" ; }; +String STR_AUTOLAYOUT_4CLIPART +{ + Text [ en-US ] = "Title, 4 Cliparts" ; +}; String STR_AL_TITLE_VERT_OUTLINE { Text [ en-US ] = "Title, Vertical Text" ; @@ -269,6 +273,10 @@ String STR_AL_VERT_TITLE_VERT_OUTLINE { Text [ en-US ] = "Vertical Title, Vertical Text" ; }; +String STR_AUTOLAYOUT_6CLIPART +{ + Text [ en-US ] = "Title, 6 Cliparts" ; +}; String STR_AUTOLAYOUT_HANDOUT1 { diff --git a/sd/source/ui/func/fudraw.cxx b/sd/source/ui/func/fudraw.cxx index 0a539111fb82..a0d7c47d9841 100644 --- a/sd/source/ui/func/fudraw.cxx +++ b/sd/source/ui/func/fudraw.cxx @@ -1006,7 +1006,7 @@ BOOL FuDraw::SetHelpText(SdrObject* pObj, const Point& rPosPixel, const SdrViewE // jump to object/page aHelpText = String(SdResId(STR_CLICK_ACTION_BOOKMARK)); aHelpText.AppendAscii( RTL_CONSTASCII_STRINGPARAM( ": " ) ); - aHelpText.Append( String(INetURLObject::decode( pInfo->maBookmark, '%', INetURLObject::DECODE_WITH_CHARSET ) )); + aHelpText.Append( String(INetURLObject::decode( pInfo->GetBookmark(), '%', INetURLObject::DECODE_WITH_CHARSET ) )); } break; @@ -1015,7 +1015,7 @@ BOOL FuDraw::SetHelpText(SdrObject* pObj, const Point& rPosPixel, const SdrViewE // jump to document (object/page) aHelpText = String(SdResId(STR_CLICK_ACTION_DOCUMENT)); aHelpText.AppendAscii( RTL_CONSTASCII_STRINGPARAM( ": " ) ); - aHelpText.Append( String(INetURLObject::decode( pInfo->maBookmark, '%', INetURLObject::DECODE_WITH_CHARSET ) )); + aHelpText.Append( String(INetURLObject::decode( pInfo->GetBookmark(), '%', INetURLObject::DECODE_WITH_CHARSET ) )); } break; @@ -1024,7 +1024,7 @@ BOOL FuDraw::SetHelpText(SdrObject* pObj, const Point& rPosPixel, const SdrViewE // execute program aHelpText = String(SdResId(STR_CLICK_ACTION_PROGRAM)); aHelpText.AppendAscii( RTL_CONSTASCII_STRINGPARAM( ": " ) ); - aHelpText.Append( String(INetURLObject::decode( pInfo->maBookmark, '%', INetURLObject::DECODE_WITH_CHARSET ) )); + aHelpText.Append( String(INetURLObject::decode( pInfo->GetBookmark(), '%', INetURLObject::DECODE_WITH_CHARSET ) )); } break; @@ -1034,18 +1034,19 @@ BOOL FuDraw::SetHelpText(SdrObject* pObj, const Point& rPosPixel, const SdrViewE aHelpText = String(SdResId(STR_CLICK_ACTION_MACRO)); aHelpText.AppendAscii( RTL_CONSTASCII_STRINGPARAM( ": " ) ); - if ( SfxApplication::IsXScriptURL( pInfo->maBookmark ) ) + if ( SfxApplication::IsXScriptURL( pInfo->GetBookmark() ) ) { - aHelpText.Append( pInfo->maBookmark ); + aHelpText.Append( pInfo->GetBookmark() ); } else { + String sBookmark( pInfo->GetBookmark() ); sal_Unicode cToken = '.'; - aHelpText.Append( pInfo->maBookmark.GetToken( 2, cToken ) ); + aHelpText.Append( sBookmark.GetToken( 2, cToken ) ); aHelpText.Append( cToken ); - aHelpText.Append( pInfo->maBookmark.GetToken( 1, cToken ) ); + aHelpText.Append( sBookmark.GetToken( 1, cToken ) ); aHelpText.Append( cToken ); - aHelpText.Append( pInfo->maBookmark.GetToken( 0, cToken ) ); + aHelpText.Append( sBookmark.GetToken( 0, cToken ) ); } } break; diff --git a/sd/source/ui/func/fuoaprms.cxx b/sd/source/ui/func/fuoaprms.cxx index 965b52b3a94b..694f1ae6615a 100644 --- a/sd/source/ui/func/fuoaprms.cxx +++ b/sd/source/ui/func/fuoaprms.cxx @@ -186,7 +186,7 @@ void FuObjectAnimationParameters::DoExecute( SfxRequest& rReq ) eClickAction = pInfo->meClickAction; nClickActionSet = ATTR_SET; - aBookmark = pInfo->maBookmark; + aBookmark = pInfo->GetBookmark(); nBookmarkSet = ATTR_SET; eSecondEffect = pInfo->meSecondEffect; @@ -243,7 +243,7 @@ void FuObjectAnimationParameters::DoExecute( SfxRequest& rReq ) if( eClickAction != pInfo->meClickAction ) nClickActionSet = ATTR_MIXED; - if( aBookmark != pInfo->maBookmark ) + if( aBookmark != pInfo->GetBookmark() ) nBookmarkSet = ATTR_MIXED; if( eSecondEffect != pInfo->meSecondEffect ) @@ -353,7 +353,7 @@ void FuObjectAnimationParameters::DoExecute( SfxRequest& rReq ) aSound = pInfo->maSoundFile; nSoundFileSet = ATTR_SET; bPlayFull = pInfo->mbPlayFull; nPlayFullSet = ATTR_SET; eClickAction = pInfo->meClickAction; nClickActionSet = ATTR_SET; - aBookmark = pInfo->maBookmark; nBookmarkSet = ATTR_SET; + aBookmark = pInfo->GetBookmark(); nBookmarkSet = ATTR_SET; eSecondEffect = pInfo->meSecondEffect; nSecondEffectSet = ATTR_SET; eSecondSpeed = pInfo->meSecondSpeed; nSecondSpeedSet = ATTR_SET; bSecondSoundOn = pInfo->mbSecondSoundOn; nSecondSoundOnSet = ATTR_SET; @@ -733,7 +733,7 @@ void FuObjectAnimationParameters::DoExecute( SfxRequest& rReq ) pAction->SetPlayFull(pInfo->mbPlayFull, pInfo->mbPlayFull); // pAction->SetPathObj(pInfo->mpPathObj, pInfo->mpPathObj); pAction->SetClickAction(pInfo->meClickAction, pInfo->meClickAction); - pAction->SetBookmark(pInfo->maBookmark, pInfo->maBookmark); + pAction->SetBookmark(pInfo->GetBookmark(), pInfo->GetBookmark()); // pAction->SetInvisibleInPres(pInfo->mbInvisibleInPresentation, TRUE); pAction->SetVerb(pInfo->mnVerb, pInfo->mnVerb); pAction->SetSecondEffect(pInfo->meSecondEffect, pInfo->meSecondEffect); @@ -762,10 +762,10 @@ void FuObjectAnimationParameters::DoExecute( SfxRequest& rReq ) pAction->SetPlayFull(pInfo->mbPlayFull, bPlayFull); pAction->SetPathObj(pInfo->mpPathObj, pPath); pAction->SetClickAction(pInfo->meClickAction, eClickAction); - pAction->SetBookmark(pInfo->maBookmark, aBookmark); + pAction->SetBookmark(pInfo->GetBookmark(), aBookmark); // pAction->SetInvisibleInPres(pInfo->mbInvisibleInPresentation, // pInfo->mbInvisibleInPresentation); - pAction->SetVerb(pInfo->mnVerb, (USHORT)pInfo->maBookmark.ToInt32() ); + pAction->SetVerb(pInfo->mnVerb, (USHORT)pInfo->GetBookmark().ToInt32() ); pAction->SetSecondEffect(pInfo->meSecondEffect, eSecondEffect); pAction->SetSecondSpeed(pInfo->meSecondSpeed, eSecondSpeed); pAction->SetSecondSoundOn(pInfo->mbSecondSoundOn, bSecondSoundOn); @@ -807,7 +807,7 @@ void FuObjectAnimationParameters::DoExecute( SfxRequest& rReq ) pInfo->meClickAction = eClickAction; if (nBookmarkSet == ATTR_SET) - pInfo->maBookmark = aBookmark; + pInfo->SetBookmark( aBookmark ); if (nSecondEffectSet == ATTR_SET) pInfo->meSecondEffect = eSecondEffect; diff --git a/sd/source/ui/func/fusel.cxx b/sd/source/ui/func/fusel.cxx index cab26dee337e..068686d4a709 100644 --- a/sd/source/ui/func/fusel.cxx +++ b/sd/source/ui/func/fusel.cxx @@ -1254,7 +1254,7 @@ BOOL FuSelection::AnimateObj(SdrObject* pObj, const Point& rPos) case presentation::ClickAction_BOOKMARK: { // Sprung zu Bookmark (Seite oder Objekt) - SfxStringItem aItem(SID_NAVIGATOR_OBJECT, pInfo->maBookmark); + SfxStringItem aItem(SID_NAVIGATOR_OBJECT, pInfo->GetBookmark()); mpViewShell->GetViewFrame()->GetDispatcher()-> Execute(SID_NAVIGATOR_OBJECT, SFX_CALLMODE_SLOT | SFX_CALLMODE_RECORD, &aItem, 0L); bAnimated = TRUE; @@ -1263,11 +1263,12 @@ BOOL FuSelection::AnimateObj(SdrObject* pObj, const Point& rPos) case presentation::ClickAction_DOCUMENT: { + String sBookmark( pInfo->GetBookmark() ); // Sprung zu Dokument - if (pInfo->maBookmark.Len()) + if (sBookmark.Len()) { SfxStringItem aReferer(SID_REFERER, mpDocSh->GetMedium()->GetName()); - SfxStringItem aStrItem(SID_FILE_NAME, pInfo->maBookmark); + SfxStringItem aStrItem(SID_FILE_NAME, sBookmark); SfxViewFrame* pFrame = mpViewShell->GetViewFrame(); SfxFrameItem aFrameItem(SID_DOCFRAME, pFrame); SfxBoolItem aBrowseItem( SID_BROWSE, TRUE ); @@ -1328,7 +1329,7 @@ BOOL FuSelection::AnimateObj(SdrObject* pObj, const Point& rPos) { try { - mxPlayer.set( avmedia::MediaWindow::createPlayer( pInfo->maBookmark ), uno::UNO_QUERY_THROW ); + mxPlayer.set( avmedia::MediaWindow::createPlayer( pInfo->GetBookmark()), uno::UNO_QUERY_THROW ); mxPlayer->start(); } catch( uno::Exception& e ) @@ -1352,7 +1353,7 @@ BOOL FuSelection::AnimateObj(SdrObject* pObj, const Point& rPos) case presentation::ClickAction_PROGRAM: { String aBaseURL = GetDocSh()->GetMedium()->GetBaseURL(); - INetURLObject aURL( ::URIHelper::SmartRel2Abs( INetURLObject(aBaseURL), pInfo->maBookmark, + INetURLObject aURL( ::URIHelper::SmartRel2Abs( INetURLObject(aBaseURL), pInfo->GetBookmark(), URIHelper::GetMaybeFileHdl(), true, false, INetURLObject::WAS_ENCODED, INetURLObject::DECODE_UNAMBIGUOUS ) ); @@ -1377,7 +1378,7 @@ BOOL FuSelection::AnimateObj(SdrObject* pObj, const Point& rPos) case presentation::ClickAction_MACRO: { // Execute makro - String aMacro = pInfo->maBookmark; + String aMacro = pInfo->GetBookmark(); if ( SfxApplication::IsXScriptURL( aMacro ) ) { diff --git a/sd/source/ui/func/unoaprms.cxx b/sd/source/ui/func/unoaprms.cxx index d602fa3ee9f4..7dcd41f87339 100644 --- a/sd/source/ui/func/unoaprms.cxx +++ b/sd/source/ui/func/unoaprms.cxx @@ -74,7 +74,7 @@ SdAnimationPrmsUndoAction::SdAnimationPrmsUndoAction( pNewPathObj = pOldPathObj = pInfo->mpPathObj; eNewClickAction = eOldClickAction = pInfo->meClickAction; - aNewBookmark = aOldBookmark = pInfo->maBookmark; + aNewBookmark = aOldBookmark = pInfo->GetBookmark(); // bNewInvisibleInPres = bOldInvisibleInPres= pInfo->mbInvisibleInPresentation; nNewVerb = nOldVerb = pInfo->mnVerb; nNewPresOrder = nOldPresOrder = pInfo->mnPresOrder; @@ -115,7 +115,7 @@ void SdAnimationPrmsUndoAction::Undo() pInfo->mbPlayFull = bOldPlayFull; // pInfo->mSetPath(pOldPathObj); pInfo->meClickAction = eOldClickAction; - pInfo->maBookmark = aOldBookmark; + pInfo->SetBookmark( aOldBookmark ); // pInfo->mbInvisibleInPresentation = bOldInvisibleInPres; pInfo->mnVerb = nOldVerb; pInfo->mnPresOrder = nOldPresOrder; @@ -161,7 +161,7 @@ void SdAnimationPrmsUndoAction::Redo() pInfo->mbPlayFull = bNewPlayFull; // pInfo->mSetPath(pNewPathObj); pInfo->meClickAction = eNewClickAction; - pInfo->maBookmark = aNewBookmark; + pInfo->SetBookmark( aNewBookmark ); // pInfo->mbInvisibleInPresentation = bNewInvisibleInPres; pInfo->mnVerb = nNewVerb; pInfo->mnPresOrder = nNewPresOrder; diff --git a/sd/source/ui/inc/res_bmp.hrc b/sd/source/ui/inc/res_bmp.hrc index 46787633b898..c31b2ba7bae0 100644 --- a/sd/source/ui/inc/res_bmp.hrc +++ b/sd/source/ui/inc/res_bmp.hrc @@ -114,6 +114,8 @@ #define BMP_COLLAPSE RID_APP_START+52 #define BMP_GRAPHIC RID_APP_START+53 +#define BMP_FOIL_26 RID_APP_START+54 + // Bimaps fuer ValueSet im EffekteWindow #define BMP_EFFECT_NONE RID_APP_START+105 #define BMP_TEXTEFFECT_DISCARD_FROM_T RID_APP_START+106 @@ -231,6 +233,9 @@ #define BMP_FOILH_09_H RID_SD_START+333 #define BMP_FOIL_25_H RID_SD_START+334 +#define BMP_FOIL_26_H RID_SD_START+335 +#define BMP_FOIL_27 RID_SD_START+336 +#define BMP_FOIL_27_H RID_SD_START+337 // ----------------------------------------------------------------------------- diff --git a/sd/source/ui/inc/strings.hrc b/sd/source/ui/inc/strings.hrc index 5deb5e900a93..5e70e0d227e2 100644 --- a/sd/source/ui/inc/strings.hrc +++ b/sd/source/ui/inc/strings.hrc @@ -199,9 +199,11 @@ #define STR_AUTOLAYOUT_NOTES (RID_APP_START+236) #define STR_AUTOLAYOUT_HANDOUT9 (RID_APP_START+237) #define STR_AUTOLAYOUT_ONLY_TEXT (RID_APP_START+238) - +#define STR_AUTOLAYOUT_4CLIPART (RID_APP_START+239) #define STR_TRANSFORM (RID_APP_START+240) + +#define STR_AUTOLAYOUT_6CLIPART (RID_APP_START+241) #define STR_EXPORT_HTML_NAME (RID_APP_START+244) #define STR_EXPORT_HTML_FILTER (RID_APP_START+245) diff --git a/sd/source/ui/toolpanel/LayoutMenu.cxx b/sd/source/ui/toolpanel/LayoutMenu.cxx index 056317ef6358..96558c720cb7 100644 --- a/sd/source/ui/toolpanel/LayoutMenu.cxx +++ b/sd/source/ui/toolpanel/LayoutMenu.cxx @@ -205,6 +205,9 @@ static snewfoil_value_info standard[] = AUTOLAYOUT_TEXTOVEROBJ}, {BMP_FOIL_18, BMP_FOIL_18_H, STR_AUTOLAYOUT_4OBJ, WritingMode_LR_TB, AUTOLAYOUT_4OBJ}, + {BMP_FOIL_26, BMP_FOIL_26_H, STR_AUTOLAYOUT_4CLIPART, WritingMode_LR_TB, AUTOLAYOUT_4CLIPART}, + {BMP_FOIL_27, BMP_FOIL_27_H, STR_AUTOLAYOUT_6CLIPART, WritingMode_LR_TB, AUTOLAYOUT_6CLIPART}, + // vertical {BMP_FOIL_21, BMP_FOIL_21_H, STR_AL_VERT_TITLE_TEXT_CHART, WritingMode_TB_RL, AUTOLAYOUT_VERTICAL_TITLE_TEXT_CHART}, diff --git a/sd/source/ui/unoidl/unoobj.cxx b/sd/source/ui/unoidl/unoobj.cxx index 149350df17b0..8dbaa9a486ad 100644 --- a/sd/source/ui/unoidl/unoobj.cxx +++ b/sd/source/ui/unoidl/unoobj.cxx @@ -486,7 +486,7 @@ void SAL_CALL SdXShape::setPropertyValue( const ::rtl::OUString& aPropertyName, if(!(aValue >>= aString)) throw lang::IllegalArgumentException(); - pInfo->maBookmark = SdDrawPage::getUiNameFromPageApiName( aString ); + pInfo->SetBookmark( SdDrawPage::getUiNameFromPageApiName( aString ) ); break; } case WID_CLICKACTION: @@ -726,13 +726,13 @@ void SAL_CALL SdXShape::setPropertyValue( const ::rtl::OUString& aPropertyName, SdDrawDocument* pDoc = mpModel?mpModel->GetDoc():NULL; // is the bookmark a page? BOOL bIsMasterPage; - if(pDoc->GetPageByName( pInfo->maBookmark, bIsMasterPage ) != SDRPAGE_NOTFOUND) + if(pDoc->GetPageByName( pInfo->GetBookmark(), bIsMasterPage ) != SDRPAGE_NOTFOUND) { - aString = SdDrawPage::getPageApiNameFromUiName( pInfo->maBookmark ); + aString = SdDrawPage::getPageApiNameFromUiName( pInfo->GetBookmark() ); } else { - aString = pInfo->maBookmark ; + aString = pInfo->GetBookmark() ; sal_Int32 nPos = aString.lastIndexOf( sal_Unicode('#') ); if( nPos >= 0 ) { @@ -1160,7 +1160,7 @@ SdUnoEventsAccess::SdUnoEventsAccess( SdXShape* pShape ) throw() static void clearEventsInAnimationInfo( SdAnimationInfo* pInfo ) { const String aEmpty; - pInfo->maBookmark = aEmpty; + pInfo->SetBookmark( aEmpty ); pInfo->mbSecondSoundOn = sal_False; pInfo->mbSecondPlayFull = sal_False; pInfo->meClickAction = presentation::ClickAction_NONE; @@ -1344,7 +1344,7 @@ void SAL_CALL SdUnoEventsAccess::replaceByName( const OUString& aName, const uno } } - pInfo->maBookmark = aStrBookmark; + pInfo->SetBookmark( aStrBookmark ); bOk = sal_True; } break; @@ -1352,7 +1352,7 @@ void SAL_CALL SdUnoEventsAccess::replaceByName( const OUString& aName, const uno case presentation::ClickAction_MACRO: if( nFound & FOUND_MACRO ) { - pInfo->maBookmark = aStrMacro; + pInfo->SetBookmark( aStrMacro ); bOk = sal_True; } break; @@ -1379,7 +1379,7 @@ void SAL_CALL SdUnoEventsAccess::replaceByName( const OUString& aName, const uno case presentation::ClickAction_SOUND: if( nFound & FOUND_SOUNDURL ) { - pInfo->maBookmark = aStrSoundURL; + pInfo->SetBookmark( aStrSoundURL ); if( eClickAction != presentation::ClickAction_SOUND ) pInfo->mbSecondSoundOn = aStrSoundURL.getLength() != 0; pInfo->mbSecondPlayFull = nFound & FOUND_PLAYFULL ? bPlayFull : sal_False; @@ -1404,7 +1404,7 @@ void SAL_CALL SdUnoEventsAccess::replaceByName( const OUString& aName, const uno if ( SfxApplication::IsXScriptURL( aStrMacro ) ) { - pInfo->maBookmark = aStrMacro; + pInfo->SetBookmark( aStrMacro ); } else { @@ -1431,7 +1431,7 @@ void SAL_CALL SdUnoEventsAccess::replaceByName( const OUString& aName, const uno sBuffer.append( aStrLibrary ); } - pInfo->maBookmark = sBuffer.makeStringAndClear(); + pInfo->SetBookmark( sBuffer.makeStringAndClear() ); } bOk = sal_True; } @@ -1471,7 +1471,7 @@ uno::Any SAL_CALL SdUnoEventsAccess::getByName( const OUString& aName ) case presentation::ClickAction_BOOKMARK: case presentation::ClickAction_DOCUMENT: case presentation::ClickAction_MACRO: - if ( !SfxApplication::IsXScriptURL( pInfo->maBookmark ) ) + if ( !SfxApplication::IsXScriptURL( pInfo->GetBookmark() ) ) nPropertyCount += 1; break; @@ -1493,7 +1493,7 @@ uno::Any SAL_CALL SdUnoEventsAccess::getByName( const OUString& aName ) if( eClickAction == presentation::ClickAction_MACRO ) { - if ( SfxApplication::IsXScriptURL( pInfo->maBookmark ) ) + if ( SfxApplication::IsXScriptURL( pInfo->GetBookmark() ) ) { // Scripting Framework URL aAny <<= maStrScript;; @@ -1503,7 +1503,7 @@ uno::Any SAL_CALL SdUnoEventsAccess::getByName( const OUString& aName ) pProperties->State = beans::PropertyState_DIRECT_VALUE; pProperties++; - aAny <<= OUString( pInfo->maBookmark ); + aAny <<= OUString( pInfo->GetBookmark() ); pProperties->Name = maStrScript; pProperties->Handle = -1; pProperties->Value = aAny; @@ -1520,7 +1520,7 @@ uno::Any SAL_CALL SdUnoEventsAccess::getByName( const OUString& aName ) pProperties->State = beans::PropertyState_DIRECT_VALUE; pProperties++; - String aMacro = pInfo->maBookmark; + String aMacro = pInfo->GetBookmark(); // aMacro has got following format: // "Macroname.Modulname.Libname.Documentname" or @@ -1579,7 +1579,7 @@ uno::Any SAL_CALL SdUnoEventsAccess::getByName( const OUString& aName ) break; case presentation::ClickAction_BOOKMARK: { - const OUString aStrBookmark( getPageApiNameFromUiName( pInfo->maBookmark ) ); + const OUString aStrBookmark( getPageApiNameFromUiName( pInfo->GetBookmark()) ); pProperties->Name = maStrBookmark; pProperties->Handle = -1; pProperties->Value <<= aStrBookmark; @@ -1590,7 +1590,7 @@ uno::Any SAL_CALL SdUnoEventsAccess::getByName( const OUString& aName ) case presentation::ClickAction_DOCUMENT: case presentation::ClickAction_PROGRAM: { - OUString aString( pInfo->maBookmark ); + OUString aString( pInfo->GetBookmark()); sal_Int32 nPos = aString.lastIndexOf( sal_Unicode('#') ); if( nPos >= 0 ) { @@ -1625,7 +1625,7 @@ uno::Any SAL_CALL SdUnoEventsAccess::getByName( const OUString& aName ) case presentation::ClickAction_SOUND: if( eClickAction == presentation::ClickAction_SOUND || pInfo->mbSecondSoundOn ) { - aAny <<= OUString( pInfo->maBookmark ); + aAny <<= OUString( pInfo->GetBookmark()); pProperties->Name = maStrSoundURL; pProperties->Handle = -1; pProperties->Value = aAny; diff --git a/sd/source/ui/view/drtxtob1.cxx b/sd/source/ui/view/drtxtob1.cxx index 8c14b57fe286..a2bcfa3d8e0f 100644 --- a/sd/source/ui/view/drtxtob1.cxx +++ b/sd/source/ui/view/drtxtob1.cxx @@ -256,6 +256,8 @@ void TextObjectBar::Execute( SfxRequest &rReq ) { pOLV->AdjustDepth( -1 ); + // Ensure bold/italic etc. icon state updates + Invalidate(); // #96551# trigger preview refresh mpViewShell->GetViewFrame()->GetBindings().Invalidate( SID_PREVIEW_STATE, TRUE, FALSE ); } @@ -269,6 +271,8 @@ void TextObjectBar::Execute( SfxRequest &rReq ) { pOLV->AdjustDepth( 1 ); + // Ensure bold/italic etc. icon state updates + Invalidate(); // #96551# trigger preview refresh mpViewShell->GetViewFrame()->GetBindings().Invalidate( SID_PREVIEW_STATE, TRUE, FALSE ); } diff --git a/sd/source/ui/view/drviewse.cxx b/sd/source/ui/view/drviewse.cxx index bd8c7136495f..7cc9de9f611f 100644 --- a/sd/source/ui/view/drviewse.cxx +++ b/sd/source/ui/view/drviewse.cxx @@ -1552,7 +1552,7 @@ void DrawViewShell::InsertURLButton(const String& rURL, const String& rText, SdAnimationInfo* pInfo = SdDrawDocument::GetShapeUserData(*pMarkedObj, true); pInfo->meClickAction = presentation::ClickAction_DOCUMENT; - pInfo->maBookmark = sTargetURL; + pInfo->SetBookmark( sTargetURL ); } } catch( uno::Exception& ) diff --git a/sd/source/ui/view/drviewsf.cxx b/sd/source/ui/view/drviewsf.cxx index 0893bcb8b46c..2b1b7518666c 100644 --- a/sd/source/ui/view/drviewsf.cxx +++ b/sd/source/ui/view/drviewsf.cxx @@ -195,7 +195,7 @@ void DrawViewShell::GetCtrlState(SfxItemSet &rSet) { SdAnimationInfo* pInfo = SdDrawDocument::GetShapeUserData(*pMarkedObj); if( pInfo && (pInfo->meClickAction == presentation::ClickAction_DOCUMENT) ) - aHLinkItem.SetURL( pInfo->maBookmark ); + aHLinkItem.SetURL( pInfo->GetBookmark()); aHLinkItem.SetInsertMode(HLINK_BUTTON); } } diff --git a/sd/source/ui/view/sdview2.cxx b/sd/source/ui/view/sdview2.cxx index 15539b7dd276..0c19247b14e1 100644 --- a/sd/source/ui/view/sdview2.cxx +++ b/sd/source/ui/view/sdview2.cxx @@ -839,7 +839,7 @@ sal_Int8 View::ExecuteDrop( const ExecuteDropEvent& rEvt, DropTargetHelper& rTar pAction->SetPlayFull(pInfo->mbPlayFull, pInfo->mbPlayFull); pAction->SetPathObj(pInfo->mpPathObj, pInfo->mpPathObj); pAction->SetClickAction(pInfo->meClickAction, eClickAction); - pAction->SetBookmark(pInfo->maBookmark, aBookmark); + pAction->SetBookmark(pInfo->GetBookmark(), aBookmark); // pAction->SetInvisibleInPres(pInfo->mbInvisibleInPresentation, TRUE); pAction->SetVerb(pInfo->mnVerb, pInfo->mnVerb); pAction->SetSecondEffect(pInfo->meSecondEffect, pInfo->meSecondEffect); @@ -851,7 +851,7 @@ sal_Int8 View::ExecuteDrop( const ExecuteDropEvent& rEvt, DropTargetHelper& rTar pAction->SetComment(aString); mpDocSh->GetUndoManager()->AddUndoAction(pAction); pInfo->meClickAction = eClickAction; - pInfo->maBookmark = aBookmark; + pInfo->SetBookmark( aBookmark ); mpDoc->SetChanged(); nRet = nDropAction; From 33a1d0fc8e5acca3da971a3129bc1e25619b4820 Mon Sep 17 00:00:00 2001 From: Jens-Heiner Rechtien Date: Tue, 19 May 2009 16:03:18 +0000 Subject: [PATCH 10/12] #i10000#: fix CRLF. Sigh --- sd/source/core/anminfo.cxx | 8 +- sd/source/core/drawdoc2.cxx | 230 +++++++++++++------------- sd/source/core/drawdoc4.cxx | 16 +- sd/source/core/sdpage.cxx | 62 +++---- sd/source/ui/app/res_bmp.src | 42 ++--- sd/source/ui/app/strings.src | 22 +-- sd/source/ui/inc/res_bmp.hrc | 2 +- sd/source/ui/inc/strings.hrc | 8 +- sd/source/ui/toolpanel/LayoutMenu.cxx | 2 +- sd/source/ui/view/drtxtob1.cxx | 8 +- 10 files changed, 200 insertions(+), 200 deletions(-) diff --git a/sd/source/core/anminfo.cxx b/sd/source/core/anminfo.cxx index 04bedc8ee8f8..8d06ae3d0fcd 100644 --- a/sd/source/core/anminfo.cxx +++ b/sd/source/core/anminfo.cxx @@ -122,10 +122,10 @@ SdrObjUserData* SdAnimationInfo::Clone(SdrObject* pObject) const void SdAnimationInfo::SetBookmark( const String& rBookmark ) { - if( meClickAction == ::com::sun::star::presentation::ClickAction_BOOKMARK ) - { - String sURL( '#' ); - sURL += rBookmark; + if( meClickAction == ::com::sun::star::presentation::ClickAction_BOOKMARK ) + { + String sURL( '#' ); + sURL += rBookmark; SvxFieldItem aURLItem( SvxURLField( sURL, sURL ), EE_FEATURE_FIELD ); mrObject.SetMergedItem( aURLItem ); } diff --git a/sd/source/core/drawdoc2.cxx b/sd/source/core/drawdoc2.cxx index 04d15401a4d2..d144ec448e8d 100644 --- a/sd/source/core/drawdoc2.cxx +++ b/sd/source/core/drawdoc2.cxx @@ -50,7 +50,7 @@ #include #include #include -#include +#include #include #include @@ -304,113 +304,113 @@ void SdDrawDocument::UpdatePageObjectsInNotes(USHORT nStartPos) } } -void SdDrawDocument::UpdatePageRelativeURLs(const String& rOldName, const String& rNewName) -{ - if (rNewName.Len() == 0) - return; - - SfxItemPool& pPool(GetPool()); - USHORT nCount = pPool.GetItemCount(EE_FEATURE_FIELD); - for (USHORT nOff = 0; nOff < nCount; nOff++) - { - const SfxPoolItem *pItem = pPool.GetItem(EE_FEATURE_FIELD, nOff); - const SvxFieldItem* pFldItem = dynamic_cast< const SvxFieldItem * > (pItem); - - if(pFldItem) - { - SvxURLField* pURLField = const_cast< SvxURLField* >( dynamic_cast( pFldItem->GetField() ) ); - - if(pURLField) - { - XubString aURL = pURLField->GetURL(); - - if (aURL.Len() && (aURL.GetChar(0) == 35) && (aURL.Search(rOldName, 1) == 1)) - { - if (aURL.Len() == rOldName.Len() + 1) // standard page name - { - aURL.Erase (1, aURL.Len() - 1); - aURL += rNewName; - pURLField->SetURL(aURL); - } - else - { - const XubString sNotes = SdResId(STR_NOTES); - if (aURL.Len() == rOldName.Len() + 2 + sNotes.Len() && aURL.Search(sNotes, rOldName.Len() + 2) == rOldName.Len() + 2) - { - aURL.Erase (1, aURL.Len() - 1); - aURL += rNewName; - aURL += ' '; - aURL += sNotes; - pURLField->SetURL(aURL); - } - } - } - } - } - } -} - -void SdDrawDocument::UpdatePageRelativeURLs(SdPage* pPage, USHORT nPos, sal_Int32 nIncrement) -{ - bool bNotes = (pPage->GetPageKind() == PK_NOTES); - - SfxItemPool& pPool(GetPool()); - USHORT nCount = pPool.GetItemCount(EE_FEATURE_FIELD); - for (USHORT nOff = 0; nOff < nCount; nOff++) - { - const SfxPoolItem *pItem = pPool.GetItem(EE_FEATURE_FIELD, nOff); - const SvxFieldItem* pFldItem; - - if ((pFldItem = dynamic_cast< const SvxFieldItem * > (pItem)) != 0) - { - SvxURLField* pURLField = const_cast< SvxURLField* >( dynamic_cast( pFldItem->GetField() ) ); - - if(pURLField) - { - XubString aURL = pURLField->GetURL(); - - if (aURL.Len() && (aURL.GetChar(0) == 35)) - { - XubString aHashSlide('#'); - aHashSlide += SdResId(STR_PAGE); - - if (aURL.CompareTo(aHashSlide, aHashSlide.Len()) == COMPARE_EQUAL) - { - XubString aURLCopy = aURL; - const XubString sNotes = SdResId(STR_NOTES); - - aURLCopy.Erase(0, aHashSlide.Len()); - - bool bNotesLink = (aURLCopy.Len() >= sNotes.Len() + 3 && aURLCopy.Search(sNotes, aURLCopy.Len() - sNotes.Len()) == aURLCopy.Len() - sNotes.Len()); - - if (bNotesLink ^ bNotes) - continue; // no compatible link and page - - if (bNotes) - aURLCopy.Erase(aURLCopy.Len() - sNotes.Len(), sNotes.Len()); - - sal_Int32 number = aURLCopy.ToInt32(); - USHORT realPageNumber = (nPos + 1)/ 2; - - if ( number >= realPageNumber ) - { - // update link page number - number += nIncrement; - aURL.Erase (aHashSlide.Len() + 1, aURL.Len() - aHashSlide.Len() - 1); - aURL += XubString::CreateFromInt32(number); - if (bNotes) - { - aURL += ' '; - aURL += sNotes; - } - pURLField->SetURL(aURL); - } - } - } - } - } - } -} +void SdDrawDocument::UpdatePageRelativeURLs(const String& rOldName, const String& rNewName) +{ + if (rNewName.Len() == 0) + return; + + SfxItemPool& pPool(GetPool()); + USHORT nCount = pPool.GetItemCount(EE_FEATURE_FIELD); + for (USHORT nOff = 0; nOff < nCount; nOff++) + { + const SfxPoolItem *pItem = pPool.GetItem(EE_FEATURE_FIELD, nOff); + const SvxFieldItem* pFldItem = dynamic_cast< const SvxFieldItem * > (pItem); + + if(pFldItem) + { + SvxURLField* pURLField = const_cast< SvxURLField* >( dynamic_cast( pFldItem->GetField() ) ); + + if(pURLField) + { + XubString aURL = pURLField->GetURL(); + + if (aURL.Len() && (aURL.GetChar(0) == 35) && (aURL.Search(rOldName, 1) == 1)) + { + if (aURL.Len() == rOldName.Len() + 1) // standard page name + { + aURL.Erase (1, aURL.Len() - 1); + aURL += rNewName; + pURLField->SetURL(aURL); + } + else + { + const XubString sNotes = SdResId(STR_NOTES); + if (aURL.Len() == rOldName.Len() + 2 + sNotes.Len() && aURL.Search(sNotes, rOldName.Len() + 2) == rOldName.Len() + 2) + { + aURL.Erase (1, aURL.Len() - 1); + aURL += rNewName; + aURL += ' '; + aURL += sNotes; + pURLField->SetURL(aURL); + } + } + } + } + } + } +} + +void SdDrawDocument::UpdatePageRelativeURLs(SdPage* pPage, USHORT nPos, sal_Int32 nIncrement) +{ + bool bNotes = (pPage->GetPageKind() == PK_NOTES); + + SfxItemPool& pPool(GetPool()); + USHORT nCount = pPool.GetItemCount(EE_FEATURE_FIELD); + for (USHORT nOff = 0; nOff < nCount; nOff++) + { + const SfxPoolItem *pItem = pPool.GetItem(EE_FEATURE_FIELD, nOff); + const SvxFieldItem* pFldItem; + + if ((pFldItem = dynamic_cast< const SvxFieldItem * > (pItem)) != 0) + { + SvxURLField* pURLField = const_cast< SvxURLField* >( dynamic_cast( pFldItem->GetField() ) ); + + if(pURLField) + { + XubString aURL = pURLField->GetURL(); + + if (aURL.Len() && (aURL.GetChar(0) == 35)) + { + XubString aHashSlide('#'); + aHashSlide += SdResId(STR_PAGE); + + if (aURL.CompareTo(aHashSlide, aHashSlide.Len()) == COMPARE_EQUAL) + { + XubString aURLCopy = aURL; + const XubString sNotes = SdResId(STR_NOTES); + + aURLCopy.Erase(0, aHashSlide.Len()); + + bool bNotesLink = (aURLCopy.Len() >= sNotes.Len() + 3 && aURLCopy.Search(sNotes, aURLCopy.Len() - sNotes.Len()) == aURLCopy.Len() - sNotes.Len()); + + if (bNotesLink ^ bNotes) + continue; // no compatible link and page + + if (bNotes) + aURLCopy.Erase(aURLCopy.Len() - sNotes.Len(), sNotes.Len()); + + sal_Int32 number = aURLCopy.ToInt32(); + USHORT realPageNumber = (nPos + 1)/ 2; + + if ( number >= realPageNumber ) + { + // update link page number + number += nIncrement; + aURL.Erase (aHashSlide.Len() + 1, aURL.Len() - aHashSlide.Len() - 1); + aURL += XubString::CreateFromInt32(number); + if (bNotes) + { + aURL += ' '; + aURL += sNotes; + } + pURLField->SetURL(aURL); + } + } + } + } + } + } +} /************************************************************************* |* @@ -436,7 +436,7 @@ void SdDrawDocument::MovePage(USHORT nPgNum, USHORT nNewPos) void SdDrawDocument::InsertPage(SdrPage* pPage, USHORT nPos) { - bool bLast = (nPos == GetPageCount()); + bool bLast = (nPos == GetPageCount()); FmFormModel::InsertPage(pPage, nPos); @@ -444,8 +444,8 @@ void SdDrawDocument::InsertPage(SdrPage* pPage, USHORT nPos) UpdatePageObjectsInNotes(nPos); - if (!bLast) - UpdatePageRelativeURLs(static_cast( pPage ), nPos, 1); + if (!bLast) + UpdatePageRelativeURLs(static_cast( pPage ), nPos, 1); } @@ -471,15 +471,15 @@ void SdDrawDocument::DeletePage(USHORT nPgNum) SdrPage* SdDrawDocument::RemovePage(USHORT nPgNum) { SdrPage* pPage = FmFormModel::RemovePage(nPgNum); - - bool bLast = ((nPgNum+1)/2 == (GetPageCount()+1)/2); + + bool bLast = ((nPgNum+1)/2 == (GetPageCount()+1)/2); ((SdPage*)pPage)->DisconnectLink(); ReplacePageInCustomShows( dynamic_cast< SdPage* >( pPage ), 0 ); UpdatePageObjectsInNotes(nPgNum); - if (!bLast) - UpdatePageRelativeURLs((SdPage*)pPage, nPgNum, -1); + if (!bLast) + UpdatePageRelativeURLs((SdPage*)pPage, nPgNum, -1); return pPage; } diff --git a/sd/source/core/drawdoc4.cxx b/sd/source/core/drawdoc4.cxx index adba35d33880..ddb1a471d3e0 100644 --- a/sd/source/core/drawdoc4.cxx +++ b/sd/source/core/drawdoc4.cxx @@ -1015,18 +1015,18 @@ void SdDrawDocument::SpellObject(SdrTextObj* pObj) if (mbHasOnlineSpellErrors) { sd::ModifyGuard aGuard( this ); - SdrModel* pModel = pObj->GetModel(); - sal_Bool bLock = sal_False; - if ( pModel ) - { - bLock = pModel->isLocked(); - pModel->setLock( sal_True ); - } + SdrModel* pModel = pObj->GetModel(); + sal_Bool bLock = sal_False; + if ( pModel ) + { + bLock = pModel->isLocked(); + pModel->setLock( sal_True ); + } // taking text from the outliner ((SdrTextObj*) pObj)->SetOutlinerParaObject( pOutl->CreateParaObject() ); pObj->BroadcastObjectChange(); - if ( pModel ) + if ( pModel ) pModel->setLock( bLock ); } } diff --git a/sd/source/core/sdpage.cxx b/sd/source/core/sdpage.cxx index 47ffb832b52a..8088c1ce7df5 100644 --- a/sd/source/core/sdpage.cxx +++ b/sd/source/core/sdpage.cxx @@ -1078,7 +1078,7 @@ LayoutDescriptor::LayoutDescriptor( int nLayout, int k0, int k1, int k2, int k3, meKind[2] = static_cast(k2 & (~VERTICAL)); mbVertical[2] = (k2 & VERTICAL) == VERTICAL; meKind[3] = static_cast(k3 & (~VERTICAL)); mbVertical[3] = (k3 & VERTICAL) == VERTICAL; meKind[4] = static_cast(k4 & (~VERTICAL)); mbVertical[4] = (k4 & VERTICAL) == VERTICAL; - meKind[5] = static_cast(k5 & (~VERTICAL)); mbVertical[5] = (k5 & VERTICAL) == VERTICAL; + meKind[5] = static_cast(k5 & (~VERTICAL)); mbVertical[5] = (k5 & VERTICAL) == VERTICAL; meKind[6] = static_cast(k6 & (~VERTICAL)); mbVertical[6] = (k6 & VERTICAL) == VERTICAL; } @@ -1120,9 +1120,9 @@ static const LayoutDescriptor& GetLayoutDescriptor( AutoLayout eLayout ) LayoutDescriptor( 9, PRESOBJ_TITLE, PRESOBJ_GRAPHIC, PRESOBJ_OUTLINE|VERTICAL ), // AUTOLAYOUT_TITLE_VERTICAL_OUTLINE_CLIPART LayoutDescriptor( 0 ), // AUTOLAYOUT_HANDOUT9 LayoutDescriptor( 10, PRESOBJ_TEXT, PRESOBJ_NONE ), // AUTOLAYOUT_ONLY_TEXT - LayoutDescriptor( 6, PRESOBJ_TITLE, PRESOBJ_GRAPHIC, PRESOBJ_GRAPHIC, // AUTOLAYOUT_4CLIPART + LayoutDescriptor( 6, PRESOBJ_TITLE, PRESOBJ_GRAPHIC, PRESOBJ_GRAPHIC, // AUTOLAYOUT_4CLIPART PRESOBJ_GRAPHIC, PRESOBJ_GRAPHIC ), - LayoutDescriptor( 11, PRESOBJ_TITLE, PRESOBJ_GRAPHIC, PRESOBJ_GRAPHIC, // AUTOLAYOUT_6CLIPART + LayoutDescriptor( 11, PRESOBJ_TITLE, PRESOBJ_GRAPHIC, PRESOBJ_GRAPHIC, // AUTOLAYOUT_6CLIPART PRESOBJ_GRAPHIC, PRESOBJ_GRAPHIC, PRESOBJ_GRAPHIC, PRESOBJ_GRAPHIC ) }; @@ -1307,36 +1307,36 @@ static void CalcAutoLayoutRectangles( SdPage& rPage, int nLayout, Rectangle* rRe } case 10: // onlytext { - Size aSize( rRectangle[0].GetSize().Width(), rRectangle[1].BottomLeft().Y() - rRectangle[0].TopLeft().Y() ); - rRectangle[0].SetSize( aSize ); - rRectangle[0].SetPos( aTitlePos); + Size aSize( rRectangle[0].GetSize().Width(), rRectangle[1].BottomLeft().Y() - rRectangle[0].TopLeft().Y() ); + rRectangle[0].SetSize( aSize ); + rRectangle[0].SetPos( aTitlePos); + break; + } + case 11: // title, 6 shapes + { + ULONG nX = long (aLayoutPos.X()); + + aLayoutSize.Height() = long (aLayoutSize.Height() * 0.477); + aLayoutSize.Width() = long (aLayoutSize.Width() * 0.322); + rRectangle[1] = Rectangle (aLayoutPos, aLayoutSize); + + aLayoutPos.X() = long (nX + aLayoutSize.Width() * 1.05); + rRectangle[2] = Rectangle (aLayoutPos, aLayoutSize); + + aLayoutPos.X() = long (nX + aLayoutSize.Width() * 2 * 1.05); + rRectangle[3] = Rectangle (aLayoutPos, aLayoutSize); + + aLayoutPos.Y() = long (aLayoutPos.Y() + aLayoutSize.Height() * 1.095); + rRectangle[4] = Rectangle (aLayoutPos, aLayoutSize); + + aLayoutPos.X() = long (nX + aLayoutSize.Width() * 1.05); + rRectangle[5] = Rectangle (aLayoutPos, aLayoutSize); + + aLayoutPos.X() = nX; + rRectangle[6] = Rectangle (aLayoutPos, aLayoutSize); + break; } - case 11: // title, 6 shapes - { - ULONG nX = long (aLayoutPos.X()); - - aLayoutSize.Height() = long (aLayoutSize.Height() * 0.477); - aLayoutSize.Width() = long (aLayoutSize.Width() * 0.322); - rRectangle[1] = Rectangle (aLayoutPos, aLayoutSize); - - aLayoutPos.X() = long (nX + aLayoutSize.Width() * 1.05); - rRectangle[2] = Rectangle (aLayoutPos, aLayoutSize); - - aLayoutPos.X() = long (nX + aLayoutSize.Width() * 2 * 1.05); - rRectangle[3] = Rectangle (aLayoutPos, aLayoutSize); - - aLayoutPos.Y() = long (aLayoutPos.Y() + aLayoutSize.Height() * 1.095); - rRectangle[4] = Rectangle (aLayoutPos, aLayoutSize); - - aLayoutPos.X() = long (nX + aLayoutSize.Width() * 1.05); - rRectangle[5] = Rectangle (aLayoutPos, aLayoutSize); - - aLayoutPos.X() = nX; - rRectangle[6] = Rectangle (aLayoutPos, aLayoutSize); - - break; - } } } diff --git a/sd/source/ui/app/res_bmp.src b/sd/source/ui/app/res_bmp.src index 25bb04e954ca..11c711376f2a 100644 --- a/sd/source/ui/app/res_bmp.src +++ b/sd/source/ui/app/res_bmp.src @@ -229,29 +229,29 @@ Bitmap BMP_FOIL_24_H { File = "foil24_h.bmp" ; }; -Bitmap BMP_FOIL_25 -{ - File = "foil25.bmp" ; -}; -Bitmap BMP_FOIL_25_H -{ - File = "foil25_h.bmp" ; +Bitmap BMP_FOIL_25 +{ + File = "foil25.bmp" ; }; -Bitmap BMP_FOIL_26 -{ - File = "foil26.bmp" ; -}; -Bitmap BMP_FOIL_26_H -{ - File = "foil26_h.bmp" ; +Bitmap BMP_FOIL_25_H +{ + File = "foil25_h.bmp" ; }; -Bitmap BMP_FOIL_27 -{ - File = "foil27.bmp" ; -}; -Bitmap BMP_FOIL_27_H -{ - File = "foil27_h.bmp" ; +Bitmap BMP_FOIL_26 +{ + File = "foil26.bmp" ; +}; +Bitmap BMP_FOIL_26_H +{ + File = "foil26_h.bmp" ; +}; +Bitmap BMP_FOIL_27 +{ + File = "foil27.bmp" ; +}; +Bitmap BMP_FOIL_27_H +{ + File = "foil27_h.bmp" ; }; Bitmap BMP_FOILH_01 { diff --git a/sd/source/ui/app/strings.src b/sd/source/ui/app/strings.src index ca20d5900768..364fe567f990 100644 --- a/sd/source/ui/app/strings.src +++ b/sd/source/ui/app/strings.src @@ -177,9 +177,9 @@ String STR_AUTOLAYOUT_ONLY_TITLE { Text [ en-US ] = "Title Only" ; }; -String STR_AUTOLAYOUT_ONLY_TEXT -{ - Text [ en-US ] = "Centered Text" ; +String STR_AUTOLAYOUT_ONLY_TEXT +{ + Text [ en-US ] = "Centered Text" ; }; String STR_AUTOLAYOUT_TITLE { @@ -253,9 +253,9 @@ String STR_AUTOLAYOUT_4OBJ { Text [ en-US ] = "Title, 4 Objects" ; }; -String STR_AUTOLAYOUT_4CLIPART -{ - Text [ en-US ] = "Title, 4 Cliparts" ; +String STR_AUTOLAYOUT_4CLIPART +{ + Text [ en-US ] = "Title, 4 Cliparts" ; }; String STR_AL_TITLE_VERT_OUTLINE { @@ -273,10 +273,10 @@ String STR_AL_VERT_TITLE_VERT_OUTLINE { Text [ en-US ] = "Vertical Title, Vertical Text" ; }; -String STR_AUTOLAYOUT_6CLIPART -{ - Text [ en-US ] = "Title, 6 Cliparts" ; -}; +String STR_AUTOLAYOUT_6CLIPART +{ + Text [ en-US ] = "Title, 6 Cliparts" ; +}; String STR_AUTOLAYOUT_HANDOUT1 { @@ -1270,4 +1270,4 @@ String STR_SET_BACKGROUND_PICTURE Text [ en-US ] = "Set Background Picture for Slide ..." ; }; - \ No newline at end of file + diff --git a/sd/source/ui/inc/res_bmp.hrc b/sd/source/ui/inc/res_bmp.hrc index c31b2ba7bae0..931871fd9ff7 100644 --- a/sd/source/ui/inc/res_bmp.hrc +++ b/sd/source/ui/inc/res_bmp.hrc @@ -114,7 +114,7 @@ #define BMP_COLLAPSE RID_APP_START+52 #define BMP_GRAPHIC RID_APP_START+53 -#define BMP_FOIL_26 RID_APP_START+54 +#define BMP_FOIL_26 RID_APP_START+54 // Bimaps fuer ValueSet im EffekteWindow #define BMP_EFFECT_NONE RID_APP_START+105 diff --git a/sd/source/ui/inc/strings.hrc b/sd/source/ui/inc/strings.hrc index 5e70e0d227e2..b04582046502 100644 --- a/sd/source/ui/inc/strings.hrc +++ b/sd/source/ui/inc/strings.hrc @@ -198,12 +198,12 @@ #define STR_AUTOLAYOUT_HANDOUT6 (RID_APP_START+235) #define STR_AUTOLAYOUT_NOTES (RID_APP_START+236) #define STR_AUTOLAYOUT_HANDOUT9 (RID_APP_START+237) -#define STR_AUTOLAYOUT_ONLY_TEXT (RID_APP_START+238) -#define STR_AUTOLAYOUT_4CLIPART (RID_APP_START+239) +#define STR_AUTOLAYOUT_ONLY_TEXT (RID_APP_START+238) +#define STR_AUTOLAYOUT_4CLIPART (RID_APP_START+239) #define STR_TRANSFORM (RID_APP_START+240) - -#define STR_AUTOLAYOUT_6CLIPART (RID_APP_START+241) + +#define STR_AUTOLAYOUT_6CLIPART (RID_APP_START+241) #define STR_EXPORT_HTML_NAME (RID_APP_START+244) #define STR_EXPORT_HTML_FILTER (RID_APP_START+245) diff --git a/sd/source/ui/toolpanel/LayoutMenu.cxx b/sd/source/ui/toolpanel/LayoutMenu.cxx index 96558c720cb7..5ef45c90cf8b 100644 --- a/sd/source/ui/toolpanel/LayoutMenu.cxx +++ b/sd/source/ui/toolpanel/LayoutMenu.cxx @@ -173,7 +173,7 @@ static snewfoil_value_info standard[] = AUTOLAYOUT_2TEXT}, {BMP_FOIL_19, BMP_FOIL_19_H, STR_AUTOLAYOUT_ONLY_TITLE, WritingMode_LR_TB, AUTOLAYOUT_ONLY_TITLE}, - {BMP_FOIL_25, BMP_FOIL_25_H, STR_AUTOLAYOUT_ONLY_TEXT, WritingMode_LR_TB, + {BMP_FOIL_25, BMP_FOIL_25_H, STR_AUTOLAYOUT_ONLY_TEXT, WritingMode_LR_TB, AUTOLAYOUT_ONLY_TEXT}, {BMP_FOIL_11, BMP_FOIL_11_H, STR_AUTOLAYOUT_OBJ, WritingMode_LR_TB, AUTOLAYOUT_OBJ}, diff --git a/sd/source/ui/view/drtxtob1.cxx b/sd/source/ui/view/drtxtob1.cxx index a2bcfa3d8e0f..9c2733c933dd 100644 --- a/sd/source/ui/view/drtxtob1.cxx +++ b/sd/source/ui/view/drtxtob1.cxx @@ -256,8 +256,8 @@ void TextObjectBar::Execute( SfxRequest &rReq ) { pOLV->AdjustDepth( -1 ); - // Ensure bold/italic etc. icon state updates - Invalidate(); + // Ensure bold/italic etc. icon state updates + Invalidate(); // #96551# trigger preview refresh mpViewShell->GetViewFrame()->GetBindings().Invalidate( SID_PREVIEW_STATE, TRUE, FALSE ); } @@ -271,8 +271,8 @@ void TextObjectBar::Execute( SfxRequest &rReq ) { pOLV->AdjustDepth( 1 ); - // Ensure bold/italic etc. icon state updates - Invalidate(); + // Ensure bold/italic etc. icon state updates + Invalidate(); // #96551# trigger preview refresh mpViewShell->GetViewFrame()->GetBindings().Invalidate( SID_PREVIEW_STATE, TRUE, FALSE ); } From 6c8a6d114da643b699e0e1395d319b3ad4e65503 Mon Sep 17 00:00:00 2001 From: Jens-Heiner Rechtien Date: Mon, 25 May 2009 12:21:03 +0000 Subject: [PATCH 11/12] #i10000#: aBookmarkURL: use Getter/Setter --- sd/source/filter/pptin.cxx | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/sd/source/filter/pptin.cxx b/sd/source/filter/pptin.cxx index c4e59cd4275b..97141ecdb5d4 100644 --- a/sd/source/filter/pptin.cxx +++ b/sd/source/filter/pptin.cxx @@ -2169,11 +2169,13 @@ void ImplSdPPTImport::FillSdAnimationInfo( SdAnimationInfo* pInfo, PptInteractiv if ( pDocShell ) { String aBaseURL = pDocShell->GetMedium()->GetBaseURL(); + String aBookmarkURL( pInfo->GetBookmark() ); INetURLObject aURL( pPtr->aTarget ); if( INET_PROT_NOT_VALID == aURL.GetProtocol() ) - utl::LocalFileHelper::ConvertSystemPathToURL( pPtr->aTarget, aBaseURL, pInfo->maBookmark ); - if( !pInfo->maBookmark.Len() ) - pInfo->maBookmark = URIHelper::SmartRel2Abs( INetURLObject(aBaseURL), pPtr->aTarget, URIHelper::GetMaybeFileHdl(), true ); + utl::LocalFileHelper::ConvertSystemPathToURL( pPtr->aTarget, aBaseURL, aBookmarkURL ); + if( !aBookmarkURL.Len() ) + aBookmarkURL = URIHelper::SmartRel2Abs( INetURLObject(aBaseURL), pPtr->aTarget, URIHelper::GetMaybeFileHdl(), true ); + pInfo->SetBookmark( aBookmarkURL ); pInfo->meClickAction = ::com::sun::star::presentation::ClickAction_PROGRAM; } }