summaryrefslogtreecommitdiff
path: root/svx/source/form/fmshell.cxx
diff options
context:
space:
mode:
authorOcke Janssen [oj] <Ocke.Janssen@sun.com>2010-01-15 09:16:51 +0100
committerOcke Janssen [oj] <Ocke.Janssen@sun.com>2010-01-15 09:16:51 +0100
commit9a2088753ca4e959a4a6918ec918d9d6859365df (patch)
tree6ef84c0a6c3b27344c6f13600f51b3e6904650e7 /svx/source/form/fmshell.cxx
parentb0c799c7fbaa93f707bf18a87eb9aef5d86be52c (diff)
parent315171ac12d5c1c52dc06a4f4156fa76f86c5adf (diff)
dba33b: merge m69
Diffstat (limited to 'svx/source/form/fmshell.cxx')
-rw-r--r--svx/source/form/fmshell.cxx19
1 files changed, 16 insertions, 3 deletions
diff --git a/svx/source/form/fmshell.cxx b/svx/source/form/fmshell.cxx
index 2819045c237d..fe5dfaf456ea 100644
--- a/svx/source/form/fmshell.cxx
+++ b/svx/source/form/fmshell.cxx
@@ -685,7 +685,15 @@ void FmFormShell::Execute(SfxRequest &rReq)
case SID_FM_FILTER_NAVIGATOR:
case SID_FM_SHOW_DATANAVIGATOR :
{
- GetViewShell()->GetViewFrame()->ChildWindowExecute(rReq);
+ SFX_REQUEST_ARG( rReq, pShowItem, SfxBoolItem, nSlot, sal_False );
+ if ( !pShowItem )
+ GetViewShell()->GetViewFrame()->ChildWindowExecute( rReq );
+ else
+ {
+ const sal_Bool bShow = pShowItem->GetValue();
+ GetViewShell()->GetViewFrame()->ShowChildWindow( nSlot, bShow );
+ }
+
rReq.Done();
} break;
case SID_FM_SHOW_FMEXPLORER:
@@ -827,7 +835,7 @@ void FmFormShell::Execute(SfxRequest &rReq)
bReopenNavigator = sal_True;
}
- Reference< XFormController > xController( GetImpl()->getActiveController() );
+ Reference< runtime::XFormController > xController( GetImpl()->getActiveController() );
if ( GetViewShell()->GetViewFrame()->HasChildWindow( SID_FM_FILTER_NAVIGATOR )
// closing the window was denied, for instance because of a invalid criterion
@@ -857,6 +865,11 @@ void FmFormShell::Execute(SfxRequest &rReq)
{
GetImpl()->startFiltering();
rReq.Done();
+
+ // initially open the filter navigator, the whole form based filter is pretty useless without it
+ SfxBoolItem aIdentifierItem( SID_FM_FILTER_NAVIGATOR, TRUE );
+ GetViewShell()->GetViewFrame()->GetDispatcher()->Execute( SID_FM_FILTER_NAVIGATOR, SFX_CALLMODE_ASYNCHRON,
+ &aIdentifierItem, NULL );
} break;
}
}
@@ -1400,7 +1413,7 @@ SdrUnoObj* FmFormShell::GetFormControl( const Reference< XControlModel >& _rxMod
}
//------------------------------------------------------------------------
-Reference< XFormController > FmFormShell::GetFormController( const Reference< XForm >& _rxForm, const SdrView& _rView, const OutputDevice& _rDevice ) const
+Reference< runtime::XFormController > FmFormShell::GetFormController( const Reference< XForm >& _rxForm, const SdrView& _rView, const OutputDevice& _rDevice ) const
{
const FmFormView* pFormView = dynamic_cast< const FmFormView* >( &_rView );
if ( !pFormView )