I did tentatively the modification for calc, and draw. It works for me. Balint
2011. március 16. 22:26 Caolán McNamara írta, <caol...@redhat.com>: > On Wed, 2011-03-16 at 21:45 +0100, Bálint Dózsa wrote: > > Hi, > > > > Here is a modification. (Shift+F3 is not hardcoded) > > Cool, this looks good stuff on first glance. > > Probably a few open questions around handling the e.g. "annotation" > shell for using it inside those insert->comment things, and whether it > should be a writer only feature and/or in calc/draw too. > > Not sure about whether we should e.g. reset the mode when moving from > one place to another in the document or detect the current case mode > based on the selection and shift to the next one rather than hook off a > count. > > If noone else gets around to this by Fri I'll have a look at sticking > this in. > > C. > >
From 5ac5046adc66885a0a2b9b5059b37682b5dfc6fb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?B=C3=A1lint=20D=C3=B3zsa?= <dozsabal...@gmail.com> Date: Thu, 17 Mar 2011 14:21:13 +0100 Subject: [PATCH] FIX BUG 32559 - calc --- sc/sdi/cellsh.sdi | 1 + sc/source/ui/inc/cellsh.hxx | 3 +++ sc/source/ui/view/cellsh.cxx | 3 ++- sc/source/ui/view/cellsh1.cxx | 30 ++++++++++++++++++++++++++++++ 4 files changed, 36 insertions(+), 1 deletions(-) diff --git a/sc/sdi/cellsh.sdi b/sc/sdi/cellsh.sdi index b4bd228..9ad0621 100644 --- a/sc/sdi/cellsh.sdi +++ b/sc/sdi/cellsh.sdi @@ -197,6 +197,7 @@ interface CellSelection SID_TRANSLITERATE_SENTENCE_CASE [ ExecMethod = ExecuteTrans; StateMethod = GetBlockState; ] SID_TRANSLITERATE_TITLE_CASE [ ExecMethod = ExecuteTrans; StateMethod = GetBlockState; ] SID_TRANSLITERATE_TOGGLE_CASE [ ExecMethod = ExecuteTrans; StateMethod = GetBlockState; ] + SID_TRANSLITERATE_ROTATE_CASE [ ExecMethod = ExecuteRotateTrans; StateMethod = GetBlockState; ] SID_TRANSLITERATE_UPPER [ ExecMethod = ExecuteTrans; StateMethod = GetBlockState; ] SID_TRANSLITERATE_LOWER [ ExecMethod = ExecuteTrans; StateMethod = GetBlockState; ] SID_TRANSLITERATE_HALFWIDTH [ ExecMethod = ExecuteTrans; StateMethod = GetBlockState; ] diff --git a/sc/source/ui/inc/cellsh.hxx b/sc/source/ui/inc/cellsh.hxx index 3614389..dbe6262 100644 --- a/sc/source/ui/inc/cellsh.hxx +++ b/sc/source/ui/inc/cellsh.hxx @@ -71,6 +71,8 @@ private: DECL_LINK( ClipboardChanged, TransferableDataHelper* ); DECL_LINK( DialogClosed, AbstractScLinkedAreaDlg* ); + sal_uInt32 nF3ShiftCounter; + public: TYPEINFO(); @@ -84,6 +86,7 @@ public: void ExecuteEdit( SfxRequest& rReq ); void ExecuteTrans( SfxRequest& rReq ); + void ExecuteRotateTrans( SfxRequest& rReq ); void GetBlockState( SfxItemSet& rSet ); void GetCellState( SfxItemSet& rSet ); diff --git a/sc/source/ui/view/cellsh.cxx b/sc/source/ui/view/cellsh.cxx index 7c52a2d..1fdfa03 100644 --- a/sc/source/ui/view/cellsh.cxx +++ b/sc/source/ui/view/cellsh.cxx @@ -89,7 +89,8 @@ SFX_IMPL_INTERFACE(ScCellShell, ScFormatShell , ScResId(SCSTR_CELLSHELL) ) ScCellShell::ScCellShell(ScViewData* pData) : ScFormatShell(pData), pImpl( new CellShell_Impl() ), - bPastePossible(FALSE) + bPastePossible(FALSE), + nF3ShiftCounter(0) { SetHelpId(HID_SCSHELL_CELLSH); SetName(String::CreateFromAscii(RTL_CONSTASCII_STRINGPARAM("Cell"))); diff --git a/sc/source/ui/view/cellsh1.cxx b/sc/source/ui/view/cellsh1.cxx index 26938b7..22097a0 100644 --- a/sc/source/ui/view/cellsh1.cxx +++ b/sc/source/ui/view/cellsh1.cxx @@ -112,6 +112,8 @@ #include <com/sun/star/beans/PropertyValue.hpp> #include <com/sun/star/beans/XPropertySet.hpp> #include <cppuhelper/bootstrap.hxx> +#include <com/sun/star/i18n/TransliterationModules.hpp> +#include <com/sun/star/i18n/TransliterationModulesExtra.hpp> #include <boost/scoped_ptr.hpp> @@ -2088,6 +2090,34 @@ void ScCellShell::ExecuteTrans( SfxRequest& rReq ) } } +void ScCellShell::ExecuteRotateTrans( SfxRequest& rReq ) +{ + using namespace ::com::sun::star::i18n; + { + sal_uInt32 nMode = 0; + + if( rReq.GetSlot() == SID_TRANSLITERATE_ROTATE_CASE ) { + switch ( nF3ShiftCounter ) { + case 0: + nMode = TransliterationModulesExtra::TITLE_CASE; + break; + case 1: + nMode = TransliterationModules_LOWERCASE_UPPERCASE; + break; + case 2: + nMode = TransliterationModules_UPPERCASE_LOWERCASE; + nF3ShiftCounter = -1; + break; + } + + if ( nMode ) + GetViewData()->GetView()->TransliterateText( nMode ); + + nF3ShiftCounter++; + } + } +} + void ScCellShell::ExecuteExternalSource( const String& _rFile, const String& _rFilter, const String& _rOptions, const String& _rSource, ULONG _nRefresh, SfxRequest& _rRequest ) -- 1.7.3.4
From bf8a4a232bbc976e4e7685f33ede4c32183add5b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?B=C3=A1lint=20D=C3=B3zsa?= <dozsabal...@gmail.com> Date: Thu, 17 Mar 2011 15:53:50 +0100 Subject: [PATCH] FIX BUG 32559 - draw --- sd/sdi/_drvwsh.sdi | 5 +++++ sd/source/ui/inc/DrawViewShell.hxx | 3 +++ sd/source/ui/view/drviewsa.cxx | 1 + sd/source/ui/view/drviewse.cxx | 29 +++++++++++++++++++++++++++++ 4 files changed, 38 insertions(+), 0 deletions(-) diff --git a/sd/sdi/_drvwsh.sdi b/sd/sdi/_drvwsh.sdi index 554dd88..59d2337 100755 --- a/sd/sdi/_drvwsh.sdi +++ b/sd/sdi/_drvwsh.sdi @@ -2159,6 +2159,11 @@ interface DrawView ExecMethod = FuSupport ; StateMethod = GetCtrlState ; ] + SID_TRANSLITERATE_ROTATE_CASE // ole : no, status : ? + [ + ExecMethod = FuSupportRotate ; + StateMethod = GetCtrlState ; + ] SID_TRANSLITERATE_LOWER // ole : no, status : ? [ ExecMethod = FuSupport ; diff --git a/sd/source/ui/inc/DrawViewShell.hxx b/sd/source/ui/inc/DrawViewShell.hxx index be9207f..94bfeb3 100644 --- a/sd/source/ui/inc/DrawViewShell.hxx +++ b/sd/source/ui/inc/DrawViewShell.hxx @@ -72,6 +72,8 @@ class DrawViewShell : public ViewShell, public SfxListener { + sal_uInt32 nF3ShiftCounter; + public: static const int SLOTARRAY_COUNT = 24; @@ -218,6 +220,7 @@ public: void FuTemporary(SfxRequest& rReq); void FuPermanent(SfxRequest& rReq); void FuSupport(SfxRequest& rReq); + void FuSupportRotate(SfxRequest& rReq); void FuTable(SfxRequest& rReq); void AttrExec (SfxRequest& rReq); diff --git a/sd/source/ui/view/drviewsa.cxx b/sd/source/ui/view/drviewsa.cxx index c8779b0..727c32b 100644 --- a/sd/source/ui/view/drviewsa.cxx +++ b/sd/source/ui/view/drviewsa.cxx @@ -140,6 +140,7 @@ DrawViewShell::DrawViewShell( SfxViewFrame* pFrame, ViewShellBase& rViewShellBas : ViewShell (pFrame, pParentWindow, rViewShellBase) , maTabControl(this, pParentWindow) , mbIsInSwitchPage(false) +, nF3ShiftCounter(0) { if (pFrameViewArgument != NULL) mpFrameView = pFrameViewArgument; diff --git a/sd/source/ui/view/drviewse.cxx b/sd/source/ui/view/drviewse.cxx index 17a01f7..e532903 100644 --- a/sd/source/ui/view/drviewse.cxx +++ b/sd/source/ui/view/drviewse.cxx @@ -1475,6 +1475,35 @@ void DrawViewShell::FuSupport(SfxRequest& rReq) } } +void DrawViewShell::FuSupportRotate(SfxRequest &rReq) +{ + using namespace ::com::sun::star::i18n; + { + sal_uInt32 nMode = 0; + OutlinerView* pOLV = GetView()->GetTextEditOutlinerView(); + + if( rReq.GetSlot() == SID_TRANSLITERATE_ROTATE_CASE ) { + switch ( nF3ShiftCounter ) { + case 0: + nMode = TransliterationModulesExtra::TITLE_CASE; + break; + case 1: + nMode = TransliterationModules_LOWERCASE_UPPERCASE; + break; + case 2: + nMode = TransliterationModules_UPPERCASE_LOWERCASE; + nF3ShiftCounter = -1; + break; + } + + if ( nMode ) + pOLV->TransliterateText( nMode ); + + nF3ShiftCounter++; + } + } +} + /************************************************************************* |* |* URL-Feld einfuegen -- 1.7.3.4
From 155e69d09a29ec733e8e603738a3f4833d88db8b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?B=C3=A1lint=20D=C3=B3zsa?= <dozsabal...@gmail.com> Date: Thu, 17 Mar 2011 15:55:39 +0100 Subject: [PATCH] FIX BUG 32559 - officecfg --- .../data/org/openoffice/Office/Accelerators.xcu | 12 +++++++++++- 1 files changed, 11 insertions(+), 1 deletions(-) diff --git a/officecfg/registry/data/org/openoffice/Office/Accelerators.xcu b/officecfg/registry/data/org/openoffice/Office/Accelerators.xcu index de1380a..0962939 100755 --- a/officecfg/registry/data/org/openoffice/Office/Accelerators.xcu +++ b/officecfg/registry/data/org/openoffice/Office/Accelerators.xcu @@ -538,6 +538,11 @@ <value xml:lang="en-US">.uno:DefineName</value> </prop> </node> + <node oor:name="F3_SHIFT" oor:op="replace"> + <prop oor:name="Command"><value xml:lang="x-no-translate">I10N SHORTCUTS - NO TRANSLATE</value> + <value xml:lang="en-US">.uno:ChangeCaseRotateCase</value> + </prop> + </node> <node oor:name="F4" oor:op="replace"> <prop oor:name="Command"><value xml:lang="x-no-translate">I10N SHORTCUTS - NO TRANSLATE</value> <value xml:lang="en-US">.uno:ViewDataSourceBrowser</value> @@ -1110,10 +1115,15 @@ <value xml:lang="en-US">.uno:LeaveGroup</value> </prop> </node> - <node oor:name="F3_SHIFT" oor:op="replace"> + <!--<node oor:name="F3_SHIFT" oor:op="replace"> <prop oor:name="Command"><value xml:lang="x-no-translate">I10N SHORTCUTS - NO TRANSLATE</value> <value xml:lang="en-US">.uno:CopyObjects</value> </prop> + </node>--> + <node oor:name="F3_SHIFT" oor:op="replace"> + <prop oor:name="Command"><value xml:lang="x-no-translate">I10N SHORTCUTS - NO TRANSLATE</value> + <value xml:lang="en-US">.uno:ChangeCaseRotateCase</value> + </prop> </node> <node oor:name="F4" oor:op="replace"> <prop oor:name="Command"><value xml:lang="x-no-translate">I10N SHORTCUTS - NO TRANSLATE</value> -- 1.7.3.4
_______________________________________________ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice