officecfg/registry/data/org/openoffice/Office/UI/WriterCommands.xcu | 5 ++ sw/sdi/docsh.sdi | 5 ++ sw/sdi/swriter.sdi | 25 ++++++++++ sw/source/ui/app/docsh.cxx | 5 ++ sw/source/ui/app/docsh2.cxx | 16 ++++++ sw/uiconfig/swriter/menubar/menubar.xml | 2 6 files changed, 57 insertions(+), 1 deletion(-)
New commits: commit 5b17d2d731e014d79cbba716fcbc8fbd357094e8 Author: Kohei Yoshida <[email protected]> Date: Wed May 23 12:04:06 2012 -0400 Pass document service to the dispatcher when opening file from writer. This is similar to what I did earlier for calc. This info will be used later in the type detection code. Change-Id: I7ba7dcdc03cbfe77eba5c7594fc0385ad3775541 diff --git a/officecfg/registry/data/org/openoffice/Office/UI/WriterCommands.xcu b/officecfg/registry/data/org/openoffice/Office/UI/WriterCommands.xcu index 9153d94..31a6867 100644 --- a/officecfg/registry/data/org/openoffice/Office/UI/WriterCommands.xcu +++ b/officecfg/registry/data/org/openoffice/Office/UI/WriterCommands.xcu @@ -2212,6 +2212,11 @@ <value>8</value> </prop> </node> + <node oor:name=".uno:OpenFromWriter" oor:op="replace"> + <prop oor:name="Label" oor:type="xs:string"> + <value xml:lang="en-US">~Open...</value> + </prop> + </node> </node> <node oor:name="Popups"> <node oor:name=".uno:TableMenu" oor:op="replace"> diff --git a/sw/sdi/docsh.sdi b/sw/sdi/docsh.sdi index 5925edd..ddca15e 100644 --- a/sw/sdi/docsh.sdi +++ b/sw/sdi/docsh.sdi @@ -63,6 +63,11 @@ interface TextDocument : BaseTextDocument ExecMethod = Execute; StateMethod = GetState; ] + FN_OPEN_FILE + [ + ExecMethod = Execute; + StateMethod = GetState; + ] } shell SwDocShell diff --git a/sw/sdi/swriter.sdi b/sw/sdi/swriter.sdi index d7cb8b3..edb7809 100644 --- a/sw/sdi/swriter.sdi +++ b/sw/sdi/swriter.sdi @@ -10417,3 +10417,28 @@ SfxVoidItem NavigateForward FN_NAVIGATION_FORWARD ToolBoxConfig = TRUE, GroupId = GID_NAVIGATION; ] + +//-------------------------------------------------------------------------- +SfxVoidItem OpenFromWriter FN_OPEN_FILE +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + RecordAbsolute = FALSE, + RecordPerSet; + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_APPLICATION; +] diff --git a/sw/source/ui/app/docsh.cxx b/sw/source/ui/app/docsh.cxx index cf1d327..c5f633d 100644 --- a/sw/source/ui/app/docsh.cxx +++ b/sw/source/ui/app/docsh.cxx @@ -1035,6 +1035,11 @@ void SwDocShell::GetState(SfxItemSet& rSet) rSet.DisableItem( nWhich ); break; + case FN_OPEN_FILE: + if( ISA( SwWebDocShell ) ) + rSet.DisableItem( nWhich ); + break; + case SID_ATTR_YEAR2000: { const SvNumberFormatter* pFmtr = pDoc->GetNumberFormatter(sal_False); diff --git a/sw/source/ui/app/docsh2.cxx b/sw/source/ui/app/docsh2.cxx index 54d39f9..24b4c9d 100644 --- a/sw/source/ui/app/docsh2.cxx +++ b/sw/source/ui/app/docsh2.cxx @@ -1427,6 +1427,22 @@ void SwDocShell::Execute(SfxRequest& rReq) pDoc->GetNumberFormatter(sal_True)->SetYear2000(nYear2K); } break; + case FN_OPEN_FILE: + { + SfxViewShell* pViewShell = GetView(); + if (!pViewShell) + pViewShell = SfxViewShell::Current(); + + if (!pViewShell) + // Ok. I did my best. + break; + + SfxStringItem aApp(SID_DOC_SERVICE, rtl::OUString("com.sun.star.text.TextDocument")); + SfxStringItem aTarget(SID_TARGETNAME, rtl::OUString("_blank")); + pViewShell->GetDispatcher()->Execute( + SID_OPENDOC, SFX_CALLMODE_API|SFX_CALLMODE_SYNCHRON, &aApp, &aTarget, 0L); + } + break; default: OSL_FAIL("wrong Dispatcher"); } diff --git a/sw/uiconfig/swriter/menubar/menubar.xml b/sw/uiconfig/swriter/menubar/menubar.xml index 206af98..b0f7076 100644 --- a/sw/uiconfig/swriter/menubar/menubar.xml +++ b/sw/uiconfig/swriter/menubar/menubar.xml @@ -3,7 +3,7 @@ <menu:menu menu:id=".uno:PickList"> <menu:menupopup> <menu:menuitem menu:id=".uno:AddDirect"/> - <menu:menuitem menu:id=".uno:Open"/> + <menu:menuitem menu:id=".uno:OpenFromWriter"/> <menu:menuitem menu:id=".uno:RecentFileList"/> <menu:menuseparator/> <menu:menuitem menu:id=".uno:AutoPilotMenu"/> _______________________________________________ Libreoffice-commits mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
