Kaydet (Commit) 8d10c237 authored tarafından Katarina Behrens's avatar Katarina Behrens

tdf#89466: Getting/setting page orientation works now

Change-Id: I1fd2f8cf3985079e9f8d752344646bd3a5769725
Reviewed-on: https://gerrit.libreoffice.org/24657Reviewed-by: 's avatarKatarina Behrens <Katarina.Behrens@cib.de>
Tested-by: 's avatarKatarina Behrens <Katarina.Behrens@cib.de>
üst 945064c0
...@@ -2612,6 +2612,11 @@ interface DrawView ...@@ -2612,6 +2612,11 @@ interface DrawView
ExecMethod = FuTemporary ; ExecMethod = FuTemporary ;
StateMethod = GetMenuState ; StateMethod = GetMenuState ;
] ]
SID_ATTR_PAGE
[
ExecMethod = FuTemporary ;
StateMethod = GetPageProperties ;
]
SID_ATTR_PAGE_SIZE SID_ATTR_PAGE_SIZE
[ [
ExecMethod = FuTemporary ; ExecMethod = FuTemporary ;
......
...@@ -120,7 +120,8 @@ SlideBackground::SlideBackground( ...@@ -120,7 +120,8 @@ SlideBackground::SlideBackground(
) : ) :
PanelLayout( pParent, "SlideBackgroundPanel", "modules/simpress/ui/sidebarslidebackground.ui", rxFrame ), PanelLayout( pParent, "SlideBackgroundPanel", "modules/simpress/ui/sidebarslidebackground.ui", rxFrame ),
mrBase( rBase ), mrBase( rBase ),
maPaperController(SID_ATTR_PAGE_SIZE, *pBindings, *this), maPaperSizeController(SID_ATTR_PAGE_SIZE, *pBindings, *this),
maPaperOrientationController(SID_ATTR_PAGE, *pBindings, *this),
maBckColorController(SID_ATTR_PAGE_COLOR, *pBindings, *this), maBckColorController(SID_ATTR_PAGE_COLOR, *pBindings, *this),
maBckGradientController(SID_ATTR_PAGE_GRADIENT, *pBindings, *this), maBckGradientController(SID_ATTR_PAGE_GRADIENT, *pBindings, *this),
maBckHatchController(SID_ATTR_PAGE_HATCH, *pBindings, *this), maBckHatchController(SID_ATTR_PAGE_HATCH, *pBindings, *this),
...@@ -158,7 +159,7 @@ void SlideBackground::Initialize() ...@@ -158,7 +159,7 @@ void SlideBackground::Initialize()
{ {
lcl_FillPaperSizeListbox( *mpPaperSizeBox ); lcl_FillPaperSizeListbox( *mpPaperSizeBox );
mpPaperSizeBox->SetSelectHdl(LINK(this,SlideBackground,PaperSizeModifyHdl)); mpPaperSizeBox->SetSelectHdl(LINK(this,SlideBackground,PaperSizeModifyHdl));
mpPaperOrientation->SetSelectHdl(LINK(this,SlideBackground,PaperSizeModifyHdl)); mpPaperOrientation->SetSelectHdl(LINK(this,SlideBackground,PaperOrientationModifyHdl));
::sd::DrawDocShell* pDocSh = dynamic_cast<::sd::DrawDocShell*>( SfxObjectShell::Current() ); ::sd::DrawDocShell* pDocSh = dynamic_cast<::sd::DrawDocShell*>( SfxObjectShell::Current() );
SdDrawDocument* pDoc = pDocSh->GetDoc(); SdDrawDocument* pDoc = pDocSh->GetDoc();
...@@ -174,7 +175,7 @@ void SlideBackground::Initialize() ...@@ -174,7 +175,7 @@ void SlideBackground::Initialize()
} }
} }
meUnit = maPaperController.GetCoreMetric(); meUnit = maPaperSizeController.GetCoreMetric();
mpMasterSlide->SetSelectHdl(LINK(this, SlideBackground, AssignMasterPage)); mpMasterSlide->SetSelectHdl(LINK(this, SlideBackground, AssignMasterPage));
...@@ -269,7 +270,8 @@ void SlideBackground::dispose() ...@@ -269,7 +270,8 @@ void SlideBackground::dispose()
mpDspMasterBackground.clear(); mpDspMasterBackground.clear();
mpDspMasterObjects.clear(); mpDspMasterObjects.clear();
maPaperController.dispose(); maPaperSizeController.dispose();
maPaperOrientationController.dispose();
maBckColorController.dispose(); maBckColorController.dispose();
maBckGradientController.dispose(); maBckGradientController.dispose();
maBckHatchController.dispose(); maBckHatchController.dispose();
...@@ -398,6 +400,18 @@ void SlideBackground::NotifyItemUpdate( ...@@ -398,6 +400,18 @@ void SlideBackground::NotifyItemUpdate(
} }
break; break;
case SID_ATTR_PAGE:
{
if(eState >= SfxItemState::DEFAULT)
{
const SvxPageItem* aPageItem = dynamic_cast< const SvxPageItem* >(pState);
bool bIsLandscape = aPageItem->IsLandscape();
mpPaperOrientation->SelectEntryPos( bIsLandscape ? 0 : 1 );
}
}
break;
case SID_DISPLAY_MASTER_BACKGROUND: case SID_DISPLAY_MASTER_BACKGROUND:
{ {
if(eState >= SfxItemState::DEFAULT) if(eState >= SfxItemState::DEFAULT)
...@@ -432,6 +446,7 @@ void SlideBackground::NotifyItemUpdate( ...@@ -432,6 +446,7 @@ void SlideBackground::NotifyItemUpdate(
break; break;
} }
} }
IMPL_LINK_NOARG_TYPED(SlideBackground, FillStyleModifyHdl, ListBox&, void) IMPL_LINK_NOARG_TYPED(SlideBackground, FillStyleModifyHdl, ListBox&, void)
{ {
const drawing::FillStyle eXFS = (drawing::FillStyle)mpFillStyle->GetSelectEntryPos(); const drawing::FillStyle eXFS = (drawing::FillStyle)mpFillStyle->GetSelectEntryPos();
...@@ -439,6 +454,7 @@ IMPL_LINK_NOARG_TYPED(SlideBackground, FillStyleModifyHdl, ListBox&, void) ...@@ -439,6 +454,7 @@ IMPL_LINK_NOARG_TYPED(SlideBackground, FillStyleModifyHdl, ListBox&, void)
Update(); Update();
GetBindings()->GetDispatcher()->ExecuteList(SID_ATTR_PAGE_FILLSTYLE, SfxCallMode::RECORD, { &aXFillStyleItem }); GetBindings()->GetDispatcher()->ExecuteList(SID_ATTR_PAGE_FILLSTYLE, SfxCallMode::RECORD, { &aXFillStyleItem });
} }
IMPL_LINK_NOARG_TYPED(SlideBackground, PaperSizeModifyHdl, ListBox&, void) IMPL_LINK_NOARG_TYPED(SlideBackground, PaperSizeModifyHdl, ListBox&, void)
{ {
sal_uInt32 nPos = mpPaperSizeBox->GetSelectEntryPos(); sal_uInt32 nPos = mpPaperSizeBox->GetSelectEntryPos();
...@@ -452,6 +468,14 @@ IMPL_LINK_NOARG_TYPED(SlideBackground, PaperSizeModifyHdl, ListBox&, void) ...@@ -452,6 +468,14 @@ IMPL_LINK_NOARG_TYPED(SlideBackground, PaperSizeModifyHdl, ListBox&, void)
GetBindings()->GetDispatcher()->ExecuteList(SID_ATTR_PAGE_SIZE, SfxCallMode::RECORD, { &aSizeItem }); GetBindings()->GetDispatcher()->ExecuteList(SID_ATTR_PAGE_SIZE, SfxCallMode::RECORD, { &aSizeItem });
} }
IMPL_LINK_NOARG_TYPED(SlideBackground, PaperOrientationModifyHdl, ListBox&, void)
{
SvxPageItem aPageItem(SID_ATTR_PAGE);
aPageItem.SetLandscape( mpPaperOrientation->GetSelectEntryPos() == 0 );
GetBindings()->GetDispatcher()->ExecuteList(SID_ATTR_PAGE, SfxCallMode::RECORD,{ &aPageItem });
}
IMPL_LINK_NOARG_TYPED(SlideBackground, FillColorHdl, ListBox&, void) IMPL_LINK_NOARG_TYPED(SlideBackground, FillColorHdl, ListBox&, void)
{ {
const drawing::FillStyle eXFS = (drawing::FillStyle)mpFillStyle->GetSelectEntryPos(); const drawing::FillStyle eXFS = (drawing::FillStyle)mpFillStyle->GetSelectEntryPos();
......
...@@ -79,7 +79,8 @@ private: ...@@ -79,7 +79,8 @@ private:
VclPtr<CheckBox> mpDspMasterBackground; VclPtr<CheckBox> mpDspMasterBackground;
VclPtr<CheckBox> mpDspMasterObjects; VclPtr<CheckBox> mpDspMasterObjects;
::sfx2::sidebar::ControllerItem maPaperController; ::sfx2::sidebar::ControllerItem maPaperSizeController;
::sfx2::sidebar::ControllerItem maPaperOrientationController;
::sfx2::sidebar::ControllerItem maBckColorController; ::sfx2::sidebar::ControllerItem maBckColorController;
::sfx2::sidebar::ControllerItem maBckGradientController; ::sfx2::sidebar::ControllerItem maBckGradientController;
::sfx2::sidebar::ControllerItem maBckHatchController; ::sfx2::sidebar::ControllerItem maBckHatchController;
...@@ -103,6 +104,7 @@ private: ...@@ -103,6 +104,7 @@ private:
DECL_LINK_TYPED(FillBackgroundHdl, ListBox&, void); DECL_LINK_TYPED(FillBackgroundHdl, ListBox&, void);
DECL_LINK_TYPED(FillStyleModifyHdl, ListBox&, void); DECL_LINK_TYPED(FillStyleModifyHdl, ListBox&, void);
DECL_LINK_TYPED(PaperSizeModifyHdl, ListBox&, void); DECL_LINK_TYPED(PaperSizeModifyHdl, ListBox&, void);
DECL_LINK_TYPED(PaperOrientationModifyHdl, ListBox&, void);
DECL_LINK_TYPED(FillColorHdl, ListBox&, void); DECL_LINK_TYPED(FillColorHdl, ListBox&, void);
DECL_LINK_TYPED(AssignMasterPage, ListBox&, void); DECL_LINK_TYPED(AssignMasterPage, ListBox&, void);
DECL_LINK_TYPED(DspBackground, Button*, void); DECL_LINK_TYPED(DspBackground, Button*, void);
......
...@@ -1206,6 +1206,7 @@ void DrawViewShell::FuTemporary(SfxRequest& rReq) ...@@ -1206,6 +1206,7 @@ void DrawViewShell::FuTemporary(SfxRequest& rReq)
case SID_ATTR_PAGE_FILLSTYLE: case SID_ATTR_PAGE_FILLSTYLE:
case SID_SELECT_BACKGROUND: case SID_SELECT_BACKGROUND:
case SID_ATTR_PAGE_SIZE: case SID_ATTR_PAGE_SIZE:
case SID_ATTR_PAGE:
case SID_PAGESETUP: // BASIC ?? case SID_PAGESETUP: // BASIC ??
{ {
SetCurrentFunction( FuPage::Create( this, GetActiveWindow(), mpDrawView, GetDoc(), rReq ) ); SetCurrentFunction( FuPage::Create( this, GetActiveWindow(), mpDrawView, GetDoc(), rReq ) );
......
...@@ -1550,7 +1550,12 @@ void DrawViewShell::GetMenuState( SfxItemSet &rSet ) ...@@ -1550,7 +1550,12 @@ void DrawViewShell::GetMenuState( SfxItemSet &rSet )
void DrawViewShell::GetPageProperties( SfxItemSet &rSet ) void DrawViewShell::GetPageProperties( SfxItemSet &rSet )
{ {
rSet.Put(SvxSizeItem( SID_ATTR_PAGE_SIZE, getCurrentPage()->GetSize())); SdPage *pPage = getCurrentPage();
SvxPageItem aPageItem(SID_ATTR_PAGE);
aPageItem.SetLandscape( pPage->GetOrientation() == ORIENTATION_LANDSCAPE );
rSet.Put(SvxSizeItem( SID_ATTR_PAGE_SIZE, pPage->GetSize()));
rSet.Put( aPageItem );
} }
void DrawViewShell::GetModeSwitchingMenuState (SfxItemSet &rSet) void DrawViewShell::GetModeSwitchingMenuState (SfxItemSet &rSet)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment