diff options
author | Gulsah Kose <gulsah.1004@gmail.com> | 2018-01-23 16:49:14 +0300 |
---|---|---|
committer | Heiko Tietze <tietze.heiko@gmail.com> | 2018-01-26 10:31:13 +0100 |
commit | 1a8aac875ffb0a8c7b4161ff62807c1fb3e3e4a4 (patch) | |
tree | d97934b0ab5653da7dba38c41fcefdc23a6961e2 | |
parent | 90948976a557c49ec5e971b8ba6d8e62c58b6c7e (diff) |
[Pardus] tdf#87357 Add contextual Conditional Format command.
This patch is sponsored by ULAKBIM/Pardus project.
Change-Id: Id6148d39f68ac39067cc3a09b314c4f4de773384
Signed-off-by: Gulsah Kose <gulsah.1004@gmail.com>
Reviewed-on: https://gerrit.libreoffice.org/48417
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Heiko Tietze <tietze.heiko@gmail.com>
Tested-by: Heiko Tietze <tietze.heiko@gmail.com>
-rw-r--r-- | officecfg/registry/data/org/openoffice/Office/UI/CalcCommands.xcu | 14 | ||||
-rw-r--r-- | sc/inc/sc.hrc | 30 | ||||
-rw-r--r-- | sc/sdi/cellsh.sdi | 54 | ||||
-rw-r--r-- | sc/sdi/scalc.sdi | 35 | ||||
-rw-r--r-- | sc/source/ui/view/cellsh.cxx | 18 | ||||
-rw-r--r-- | sc/source/ui/view/cellsh1.cxx | 4 | ||||
-rw-r--r-- | sc/uiconfig/scalc/popupmenu/cell.xml | 2 |
7 files changed, 116 insertions, 41 deletions
diff --git a/officecfg/registry/data/org/openoffice/Office/UI/CalcCommands.xcu b/officecfg/registry/data/org/openoffice/Office/UI/CalcCommands.xcu index 979f4a176698..453969395614 100644 --- a/officecfg/registry/data/org/openoffice/Office/UI/CalcCommands.xcu +++ b/officecfg/registry/data/org/openoffice/Office/UI/CalcCommands.xcu @@ -503,7 +503,14 @@ <prop oor:name="ContextLabel" oor:type="xs:string"> <value xml:lang="en-US">Condition...</value> </prop> - + <prop oor:name="Properties" oor:type="xs:int"> + <value>1</value> + </prop> + </node> + <node oor:name=".uno:CurrentConditionalFormatDialog" oor:op="replace"> + <prop oor:name="ContextLabel" oor:type="xs:string"> + <value xml:lang="en-US">Conditional Formatting...</value> + </prop> <prop oor:name="Properties" oor:type="xs:int"> <value>1</value> </prop> @@ -557,6 +564,11 @@ <value xml:lang="en-US">Manage...</value> </prop> </node> + <node oor:name=".uno:CurrentConditionalFormatManagerDialog" oor:op="replace"> + <prop oor:name="Label" oor:type="xs:string"> + <value xml:lang="en-US">Manage Conditional Formatting...</value> + </prop> + </node> <node oor:name=".uno:Deselect" oor:op="replace"> <prop oor:name="Label" oor:type="xs:string"> <value xml:lang="en-US">Undo Selection</value> diff --git a/sc/inc/sc.hrc b/sc/inc/sc.hrc index 5c75ae6c8c45..e4823e58ff44 100644 --- a/sc/inc/sc.hrc +++ b/sc/inc/sc.hrc @@ -205,20 +205,22 @@ #define SID_AUTO_SUM (SC_MESSAGE_START + 39) // messages for opening dialogs: -#define SID_OPENDLG_CONSOLIDATE (SC_MESSAGE_START + 50) -#define SID_OPENDLG_PIVOTTABLE (SC_MESSAGE_START + 51) -#define SID_OPENDLG_FUNCTION (SC_MESSAGE_START + 52) -#define SID_OPENDLG_SOLVE (SC_MESSAGE_START + 53) -#define SID_OPENDLG_TABOP (SC_MESSAGE_START + 54) -#define SID_OPENDLG_CONDFRMT (SC_MESSAGE_START + 59) -#define SID_OPENDLG_OPTSOLVER (SC_MESSAGE_START + 60) -#define SID_VALIDITY_REFERENCE (SC_MESSAGE_START + 61) -#define SID_OPENDLG_CONDFRMT_MANAGER (SC_MESSAGE_START + 62) -#define SID_POPUP_CONDFRMT (SC_MESSAGE_START + 63) -#define SID_OPENDLG_COLORSCALE (SC_MESSAGE_START + 66) -#define SID_OPENDLG_DATABAR (SC_MESSAGE_START + 67) -#define SID_OPENDLG_ICONSET (SC_MESSAGE_START + 68) -#define SID_OPENDLG_CONDDATE (SC_MESSAGE_START + 69) +#define SID_OPENDLG_CONSOLIDATE (SC_MESSAGE_START + 50) +#define SID_OPENDLG_PIVOTTABLE (SC_MESSAGE_START + 51) +#define SID_OPENDLG_FUNCTION (SC_MESSAGE_START + 52) +#define SID_OPENDLG_SOLVE (SC_MESSAGE_START + 53) +#define SID_OPENDLG_TABOP (SC_MESSAGE_START + 54) +#define SID_OPENDLG_CURRENTCONDFRMT (SC_MESSAGE_START + 58) +#define SID_OPENDLG_CONDFRMT (SC_MESSAGE_START + 59) +#define SID_OPENDLG_OPTSOLVER (SC_MESSAGE_START + 60) +#define SID_VALIDITY_REFERENCE (SC_MESSAGE_START + 61) +#define SID_OPENDLG_CONDFRMT_MANAGER (SC_MESSAGE_START + 62) +#define SID_POPUP_CONDFRMT (SC_MESSAGE_START + 63) +#define SID_OPENDLG_CURRENTCONDFRMT_MANAGER (SC_MESSAGE_START + 64) +#define SID_OPENDLG_COLORSCALE (SC_MESSAGE_START + 66) +#define SID_OPENDLG_DATABAR (SC_MESSAGE_START + 67) +#define SID_OPENDLG_ICONSET (SC_MESSAGE_START + 68) +#define SID_OPENDLG_CONDDATE (SC_MESSAGE_START + 69) #define SID_RANDOM_NUMBER_GENERATOR_DIALOG (SC_MESSAGE_START + 70) #define SID_SAMPLING_DIALOG (SC_MESSAGE_START + 71) diff --git a/sc/sdi/cellsh.sdi b/sc/sdi/cellsh.sdi index 4fc0a44f1da0..f7610a9f854d 100644 --- a/sc/sdi/cellsh.sdi +++ b/sc/sdi/cellsh.sdi @@ -201,32 +201,34 @@ interface CellSelection ToolBoxConfig, MenuConfig , AccelConfig; ] - SID_TABOP [ ExecMethod = ExecuteEdit; StateMethod = GetState; ] - SID_CONSOLIDATE [ ExecMethod = ExecuteEdit; StateMethod = GetState; ] - FID_INSERT_NAME [ ExecMethod = ExecuteEdit; StateMethod = GetState; ] - FID_USE_NAME [ ExecMethod = ExecuteEdit; StateMethod = GetState; ] - SID_CANCEL [ ExecMethod = Execute; ] - SID_TOGGLE_REL [ ExecMethod = ExecuteEdit; StateMethod = GetState; ] - SID_POPUP_CONDFRMT [] - SID_COLUMN_OPERATIONS [ ExecMethod = ExecuteEdit; StateMethod = GetBlockState; ] - SID_ROW_OPERATIONS [ ExecMethod = ExecuteEdit; StateMethod = GetBlockState; ] - SID_OPENDLG_CONDFRMT [ ExecMethod = ExecuteEdit; StateMethod = GetState; ] - SID_OPENDLG_COLORSCALE [ ExecMethod = ExecuteEdit; ] - SID_OPENDLG_DATABAR [ ExecMethod = ExecuteEdit; ] - SID_OPENDLG_ICONSET [ ExecMethod = ExecuteEdit; ] - SID_OPENDLG_CONDDATE [ ExecMethod = ExecuteEdit; ] - SID_OPENDLG_CONDFRMT_MANAGER [ ExecMethod = ExecuteEdit; ] - FID_NOTE_VISIBLE [ ExecMethod = ExecuteEdit; StateMethod = GetState; ] - FID_HIDE_NOTE [ ExecMethod = ExecuteEdit; StateMethod = GetState; ] - FID_SHOW_NOTE [ ExecMethod = ExecuteEdit; StateMethod = GetState; ] - SID_TOGGLE_NOTES [ ExecMethod = ExecuteEdit; StateMethod = GetState; ] - FID_HIDE_ALL_NOTES [ ExecMethod = ExecuteEdit; StateMethod = GetState; ] - FID_SHOW_ALL_NOTES [ ExecMethod = ExecuteEdit; StateMethod = GetState; ] - FID_DELETE_ALL_NOTES [ ExecMethod = ExecuteEdit; StateMethod = GetState; ] - SID_DELETE_NOTE [ ExecMethod = ExecuteEdit; StateMethod = GetState; ] - SID_DEC_INDENT [ ExecMethod = ExecuteEdit; StateMethod = GetState; ] - SID_INC_INDENT [ ExecMethod = ExecuteEdit; StateMethod = GetState; ] - SID_SELECT_UNPROTECTED_CELLS [ ExecMethod = ExecuteEdit;] + SID_TABOP [ ExecMethod = ExecuteEdit; StateMethod = GetState; ] + SID_CONSOLIDATE [ ExecMethod = ExecuteEdit; StateMethod = GetState; ] + FID_INSERT_NAME [ ExecMethod = ExecuteEdit; StateMethod = GetState; ] + FID_USE_NAME [ ExecMethod = ExecuteEdit; StateMethod = GetState; ] + SID_CANCEL [ ExecMethod = Execute; ] + SID_TOGGLE_REL [ ExecMethod = ExecuteEdit; StateMethod = GetState; ] + SID_POPUP_CONDFRMT [] + SID_COLUMN_OPERATIONS [ ExecMethod = ExecuteEdit; StateMethod = GetBlockState; ] + SID_ROW_OPERATIONS [ ExecMethod = ExecuteEdit; StateMethod = GetBlockState; ] + SID_OPENDLG_CURRENTCONDFRMT [ ExecMethod = ExecuteEdit; StateMethod = GetState; ] + SID_OPENDLG_CONDFRMT [ ExecMethod = ExecuteEdit; ] + SID_OPENDLG_COLORSCALE [ ExecMethod = ExecuteEdit; ] + SID_OPENDLG_DATABAR [ ExecMethod = ExecuteEdit; ] + SID_OPENDLG_ICONSET [ ExecMethod = ExecuteEdit; ] + SID_OPENDLG_CONDDATE [ ExecMethod = ExecuteEdit; ] + SID_OPENDLG_CONDFRMT_MANAGER [ ExecMethod = ExecuteEdit; ] + SID_OPENDLG_CURRENTCONDFRMT_MANAGER [ ExecMethod = ExecuteEdit; StateMethod = GetState; ] + FID_NOTE_VISIBLE [ ExecMethod = ExecuteEdit; StateMethod = GetState; ] + FID_HIDE_NOTE [ ExecMethod = ExecuteEdit; StateMethod = GetState; ] + FID_SHOW_NOTE [ ExecMethod = ExecuteEdit; StateMethod = GetState; ] + SID_TOGGLE_NOTES [ ExecMethod = ExecuteEdit; StateMethod = GetState; ] + FID_HIDE_ALL_NOTES [ ExecMethod = ExecuteEdit; StateMethod = GetState; ] + FID_SHOW_ALL_NOTES [ ExecMethod = ExecuteEdit; StateMethod = GetState; ] + FID_DELETE_ALL_NOTES [ ExecMethod = ExecuteEdit; StateMethod = GetState; ] + SID_DELETE_NOTE [ ExecMethod = ExecuteEdit; StateMethod = GetState; ] + SID_DEC_INDENT [ ExecMethod = ExecuteEdit; StateMethod = GetState; ] + SID_INC_INDENT [ ExecMethod = ExecuteEdit; StateMethod = GetState; ] + SID_SELECT_UNPROTECTED_CELLS [ ExecMethod = ExecuteEdit;] SID_THESAURUS [ ExecMethod = ExecuteEdit; StateMethod = GetCellState; ] SID_SPELL_DIALOG [ ExecMethod = ExecuteEdit; StateMethod = GetState; ] diff --git a/sc/sdi/scalc.sdi b/sc/sdi/scalc.sdi index 0925e0483865..f238b4633721 100644 --- a/sc/sdi/scalc.sdi +++ b/sc/sdi/scalc.sdi @@ -701,6 +701,23 @@ SfxVoidItem ConditionalFormatDialog SID_OPENDLG_CONDFRMT GroupId = SfxGroupId::Format; ] +SfxVoidItem CurrentConditionalFormatDialog SID_OPENDLG_CURRENTCONDFRMT +() +[ + AutoUpdate = FALSE, + FastCall = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + RecordAbsolute = FALSE, + RecordPerSet; + + AccelConfig = TRUE, + MenuConfig = TRUE, + ToolBoxConfig = TRUE, + GroupId = SfxGroupId::Format; +] + SfxVoidItem ColorScaleFormatDialog SID_OPENDLG_COLORSCALE () @@ -792,6 +809,24 @@ SfxVoidItem ConditionalFormatManagerDialog SID_OPENDLG_CONDFRMT_MANAGER ] +SfxVoidItem CurrentConditionalFormatManagerDialog SID_OPENDLG_CURRENTCONDFRMT_MANAGER +() +[ + AutoUpdate = FALSE, + FastCall = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + RecordAbsolute = FALSE, + RecordPerSet; + + AccelConfig = TRUE, + MenuConfig = TRUE, + ToolBoxConfig = TRUE, + GroupId = SfxGroupId::Format; +] + + SfxVoidItem ConsolidateExec SID_CONSOLIDATE () [ diff --git a/sc/source/ui/view/cellsh.cxx b/sc/source/ui/view/cellsh.cxx index cae223dd5cde..0608924fcdde 100644 --- a/sc/source/ui/view/cellsh.cxx +++ b/sc/source/ui/view/cellsh.cxx @@ -1221,6 +1221,24 @@ void ScCellShell::GetState(SfxItemSet &rSet) } break; + case SID_OPENDLG_CURRENTCONDFRMT: + case SID_OPENDLG_CURRENTCONDFRMT_MANAGER: + { + if ( pDoc ) + { + const SfxPoolItem* pItem = pDoc->GetAttr( nPosX, nPosY, nTab, ATTR_CONDITIONAL ); + const ScCondFormatItem* pCondFormatItem = static_cast<const ScCondFormatItem*>(pItem); + + if ( !pCondFormatItem->GetCondFormatData().size() ) + rSet.DisableItem( nWhich ); + else if ( pCondFormatItem->GetCondFormatData().size() == 1 ) + rSet.DisableItem( SID_OPENDLG_CURRENTCONDFRMT_MANAGER ); + else if ( pCondFormatItem->GetCondFormatData().size() > 1 ) + rSet.DisableItem( SID_OPENDLG_CURRENTCONDFRMT ); + } + } + break; + } // switch ( nWitch ) nWhich = aIter.NextWhich(); } // while ( nWitch ) diff --git a/sc/source/ui/view/cellsh1.cxx b/sc/source/ui/view/cellsh1.cxx index 9a1e7dc8a3cf..eb1f270ce73a 100644 --- a/sc/source/ui/view/cellsh1.cxx +++ b/sc/source/ui/view/cellsh1.cxx @@ -198,6 +198,7 @@ void ScCellShell::ExecuteEdit( SfxRequest& rReq ) case SID_SPELL_DIALOG: case SID_HANGUL_HANJA_CONVERSION: case SID_OPENDLG_CONDFRMT: + case SID_OPENDLG_CURRENTCONDFRMT: case SID_OPENDLG_COLORSCALE: case SID_OPENDLG_DATABAR: pScMod->InputEnterHandler(); @@ -1928,6 +1929,7 @@ void ScCellShell::ExecuteEdit( SfxRequest& rReq ) break; case SID_OPENDLG_CONDFRMT: + case SID_OPENDLG_CURRENTCONDFRMT: case SID_OPENDLG_COLORSCALE: case SID_OPENDLG_DATABAR: case SID_OPENDLG_ICONSET: @@ -2046,6 +2048,7 @@ void ScCellShell::ExecuteEdit( SfxRequest& rReq ) switch(nSlot) { case SID_OPENDLG_CONDFRMT: + case SID_OPENDLG_CURRENTCONDFRMT: eType = condformat::dialog::CONDITION; break; case SID_OPENDLG_COLORSCALE: @@ -2530,6 +2533,7 @@ void ScCellShell::ExecuteEdit( SfxRequest& rReq ) break; case SID_OPENDLG_CONDFRMT_MANAGER: + case SID_OPENDLG_CURRENTCONDFRMT_MANAGER: { ScAbstractDialogFactory* pFact = ScAbstractDialogFactory::Create(); assert(pFact); diff --git a/sc/uiconfig/scalc/popupmenu/cell.xml b/sc/uiconfig/scalc/popupmenu/cell.xml index 17e9a67994ab..07bb61e3e59b 100644 --- a/sc/uiconfig/scalc/popupmenu/cell.xml +++ b/sc/uiconfig/scalc/popupmenu/cell.xml @@ -25,6 +25,8 @@ <menu:menuitem menu:id=".uno:ResetAttributes"/> <menu:menuseparator/> <menu:menuitem menu:id=".uno:FormatCellDialog"/> + <menu:menuitem menu:id=".uno:CurrentConditionalFormatDialog"/> + <menu:menuitem menu:id=".uno:CurrentConditionalFormatManagerDialog"/> <menu:menuseparator/> <menu:menuitem menu:id=".uno:InsertCell"/> <menu:menuitem menu:id=".uno:DeleteCell"/> |