sw classification: add initial UNO command

It doesn't do anything useful yet, though.

Change-Id: Ib6574f79996cfc7b09596f8aba21aaf106ee7c79
This commit is contained in:
Miklos Vajna
2016-02-22 17:23:26 +01:00
parent e895f1979e
commit 17a6535b3b
7 changed files with 45 additions and 1 deletions

View File

@@ -348,7 +348,7 @@
#define SID_INSERT_OBJECT (SID_SFX_START + 561)
#define SID_INSERT_FLOATINGFRAME (SID_SFX_START + 563)
// FREE (SID_SFX_START + 672)
#define SID_CLASSIFICATION_APPLY (SID_SFX_START + 672)
// FREE (SID_SFX_START + 676)
// FREE (SID_SFX_START + 677)

View File

@@ -4373,6 +4373,22 @@ SfxBoolItem StyleWatercanMode SID_STYLE_WATERCAN
GroupId = GID_FORMAT;
]
SfxVoidItem ClassificationApply SID_CLASSIFICATION_APPLY
(SfxStringItem Name SID_CLASSIFICATION_APPLY)
[
AutoUpdate = FALSE,
FastCall = FALSE,
ReadOnlyDoc = FALSE,
Toggle = FALSE,
Container = FALSE,
RecordAbsolute = FALSE,
RecordPerSet;
AccelConfig = TRUE,
MenuConfig = TRUE,
ToolBoxConfig = TRUE,
GroupId = GID_DOCUMENT;
]
SfxUInt16Item SwitchViewShell SID_VIEWSHELL

View File

@@ -359,6 +359,8 @@ public:
SwCharFormat* GetCharFormatFromPool( sal_uInt16 nId )
{ return static_cast<SwCharFormat*>(SwEditShell::GetFormatFromPool( nId )); }
void SetClassification(const OUString& rName);
void Insert2(SwField&, const bool bForceExpandHints = false);
void UpdateFields( SwField & ); ///< One single field.

View File

@@ -361,6 +361,11 @@ interface BaseTextSelection
StateMethod = StateStyle ;
]
SID_CLASSIFICATION_APPLY
[
ExecMethod = Execute ;
]
//OS: Selection.Escape gibt es zusaetzlich zu Window.Escape
FN_ESCAPE // status(final|play|rec)

View File

@@ -47,6 +47,10 @@ SwTextFormatColl& SwEditShell::GetTextFormatColl( sal_uInt16 nFormatColl) const
return *((*(GetDoc()->GetTextFormatColls()))[nFormatColl]);
}
void SwEditShell::SetClassification(const OUString& /*rName*/)
{
}
// #i62675#
void SwEditShell::SetTextFormatColl(SwTextFormatColl *pFormat,
const bool bResetListAttrs)

View File

@@ -1140,6 +1140,18 @@ void SwDocShell::Execute(SfxRequest& rReq)
SID_OPENDOC, SfxCallMode::API|SfxCallMode::SYNCHRON, &aApp, &aTarget, 0L);
}
break;
case SID_CLASSIFICATION_APPLY:
{
if (pArgs && pArgs->GetItemState(nWhich, false, &pItem) == SfxItemState::SET)
{
SwWrtShell* pSh = GetWrtShell();
const OUString& rValue = static_cast<const SfxStringItem*>(pItem)->GetValue();
pSh->SetClassification(rValue);
}
else
SAL_WARN("sw.ui", "missing parameter for SID_CLASSIFICATION_APPLY");
}
break;
default: OSL_FAIL("wrong Dispatcher");
}

View File

@@ -911,6 +911,11 @@ void SwBaseShell::Execute(SfxRequest &rReq)
}
}
break;
case SID_CLASSIFICATION_APPLY:
{
GetView().GetDocShell()->Execute(rReq);
}
break;
case FN_ESCAPE:
GetView().ExecuteSlot(rReq);
break;