summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIvan Timofeev <timofeev.i.s@gmail.com>2012-08-02 21:53:58 +0400
committerIvan Timofeev <timofeev.i.s@gmail.com>2012-08-02 21:56:42 +0400
commitee1ee06ec96c6db87203970bf05dd6cd7513f674 (patch)
treef667d61fcf89709696315752296c5f2cea11269d
parentc247613d2f19b01702520d837e55529fd3c0b021 (diff)
fdo#51231 Revert "Slidesorter: Show the buttons on the opposite side..."
This reverts commit 4866b20ec6205b04cd21077fd00d68c4d4bb2c1b. (cherry picked from commit e995824285cf6697a355d567abc8cd2df2b38b72) Change-Id: If7ddcbbee142a384375c29c9b9389077e077b963 Signed-off-by: Stefan Knorr <heinzlesspam@gmail.com> Signed-off-by: Jan Holesovsky <kendy@suse.cz>
-rw-r--r--sd/source/ui/slidesorter/inc/view/SlideSorterView.hxx6
-rw-r--r--sd/source/ui/slidesorter/inc/view/SlsButtonBar.hxx5
-rw-r--r--sd/source/ui/slidesorter/view/SlideSorterView.cxx14
-rw-r--r--sd/source/ui/slidesorter/view/SlsButtonBar.cxx45
4 files changed, 15 insertions, 55 deletions
diff --git a/sd/source/ui/slidesorter/inc/view/SlideSorterView.hxx b/sd/source/ui/slidesorter/inc/view/SlideSorterView.hxx
index d65bb9077a74..4229665bc0f5 100644
--- a/sd/source/ui/slidesorter/inc/view/SlideSorterView.hxx
+++ b/sd/source/ui/slidesorter/inc/view/SlideSorterView.hxx
@@ -226,15 +226,13 @@ public:
const bool bAnimate = true);
void SetPageUnderMouse (
const model::SharedPageDescriptor& rpDescriptor,
- const bool bAnimate = true,
- const Point& rMousePosition = Point());
+ const bool bAnimate = true);
bool SetState (
const model::SharedPageDescriptor& rpDescriptor,
const model::PageDescriptor::State eState,
const bool bStateValue,
- const bool bAnimate = true,
- const Point& rMousePosition = Point());
+ const bool bAnimate = true);
void UpdateOrientation (void);
diff --git a/sd/source/ui/slidesorter/inc/view/SlsButtonBar.hxx b/sd/source/ui/slidesorter/inc/view/SlsButtonBar.hxx
index 6bb273f1faf1..c08c328a1c2b 100644
--- a/sd/source/ui/slidesorter/inc/view/SlsButtonBar.hxx
+++ b/sd/source/ui/slidesorter/inc/view/SlsButtonBar.hxx
@@ -69,11 +69,6 @@ public:
const Point aMouseModelLocation,
const bool bIsMouseButtonDown);
- /// Decide whether the button should be drawn at the top, or the bottom.
- void UpdateButtonPosition(
- const model::SharedPageDescriptor& rpDescriptor,
- const Point& rMousePosition);
-
void ResetPage (void);
bool IsMouseOverBar (void) const;
diff --git a/sd/source/ui/slidesorter/view/SlideSorterView.cxx b/sd/source/ui/slidesorter/view/SlideSorterView.cxx
index 711a0f6020da..c4031623e42b 100644
--- a/sd/source/ui/slidesorter/view/SlideSorterView.cxx
+++ b/sd/source/ui/slidesorter/view/SlideSorterView.cxx
@@ -956,7 +956,7 @@ void SlideSorterView::UpdatePageUnderMouse (
const bool bAnimate)
{
// Update the page under the mouse.
- SetPageUnderMouse(rpDescriptor, bAnimate, rMousePosition);
+ SetPageUnderMouse(rpDescriptor, bAnimate);
// Tell the button bar about the new mouse position.
SharedSdWindow pWindow (mrSlideSorter.GetContentWindow());
@@ -984,8 +984,7 @@ void SlideSorterView::UpdatePageUnderMouse (
void SlideSorterView::SetPageUnderMouse (
const model::SharedPageDescriptor& rpDescriptor,
- const bool bAnimate,
- const Point& rMousePosition)
+ const bool bAnimate)
{
if (mpPageUnderMouse != rpDescriptor)
{
@@ -995,7 +994,7 @@ void SlideSorterView::SetPageUnderMouse (
mpPageUnderMouse = rpDescriptor;
if (mpPageUnderMouse)
- SetState(mpPageUnderMouse, PageDescriptor::ST_MouseOver, true, bAnimate, rMousePosition);
+ SetState(mpPageUnderMouse, PageDescriptor::ST_MouseOver, true, bAnimate);
// Change the quick help text to display the name of the page under
// the mouse.
@@ -1010,8 +1009,7 @@ bool SlideSorterView::SetState (
const model::SharedPageDescriptor& rpDescriptor,
const PageDescriptor::State eState,
const bool bStateValue,
- const bool bAnimate,
- const Point& rMousePosition)
+ const bool bAnimate)
{
model::SharedPageDescriptor pDescriptor (rpDescriptor);
if ( ! pDescriptor)
@@ -1039,11 +1037,7 @@ bool SlideSorterView::SetState (
if (eState == PageDescriptor::ST_MouseOver)
{
if (bStateValue)
- {
- if (bAnimate)
- GetButtonBar().UpdateButtonPosition(rpDescriptor, rMousePosition);
GetButtonBar().RequestFadeIn(rpDescriptor, bAnimate);
- }
else
GetButtonBar().RequestFadeOut(rpDescriptor, bAnimate);
}
diff --git a/sd/source/ui/slidesorter/view/SlsButtonBar.cxx b/sd/source/ui/slidesorter/view/SlsButtonBar.cxx
index 3ed33d8a3b4b..2e4152094a36 100644
--- a/sd/source/ui/slidesorter/view/SlsButtonBar.cxx
+++ b/sd/source/ui/slidesorter/view/SlsButtonBar.cxx
@@ -70,25 +70,19 @@ namespace sd { namespace slidesorter { namespace view {
class ButtonBar::BackgroundTheme
{
public:
- enum ButtonPosition { TOP, BOTTOM };
-public:
BackgroundTheme(
const ::boost::shared_ptr<Theme>& rpTheme,
const ::std::vector<SharedButton>& rButtons);
- ~BackgroundTheme() { }
+ virtual ~BackgroundTheme() { }
/** Set the preview bounding box, the maximal area in which to display
buttons. A call to this method triggers a call to Layout().
*/
void SetPreviewBoundingBox (const Rectangle& rPreviewBoundingBox);
Button::IconSize GetIconSize (void) const;
- BitmapEx CreateBackground () const;
- Point GetBackgroundLocation (void);
- Rectangle GetButtonArea (void);
- void SetButtonPosition( ButtonPosition ePosition ) { mePosition = ePosition; }
-
- /// Compute the positions & sizes.
- void Layout (void);
+ virtual BitmapEx CreateBackground () const;
+ virtual Point GetBackgroundLocation (void);
+ virtual Rectangle GetButtonArea (void);
protected:
::boost::shared_ptr<Theme> mpTheme;
@@ -100,8 +94,7 @@ protected:
Rectangle maButtonArea;
Point maBackgroundLocation;
- /// This comes into effect only during Layout(), before it only caches the value.
- ButtonPosition mePosition;
+ virtual void Layout (void);
private:
/// Compute the size of the are for the given button size.
@@ -286,24 +279,6 @@ void ButtonBar::ProcessMouseMotionEvent (
}
-void ButtonBar::UpdateButtonPosition(
- const model::SharedPageDescriptor& rpDescriptor,
- const Point& rMousePosition)
-{
- if (rpDescriptor && mpBackgroundTheme)
- {
- Rectangle aRectangle( rpDescriptor->GetBoundingBox() );
- aRectangle.Bottom() -= aRectangle.GetHeight() / 2;
-
- if (aRectangle.IsInside(rMousePosition))
- mpBackgroundTheme->SetButtonPosition(ButtonBar::BackgroundTheme::BOTTOM);
- else
- mpBackgroundTheme->SetButtonPosition(ButtonBar::BackgroundTheme::TOP);
-
- // Relayout, to propagate the newest location of the buttons
- LayoutButtons();
- }
-}
void ButtonBar::ResetPage (void)
@@ -532,7 +507,6 @@ bool ButtonBar::LayoutButtons (void)
nMaximumHeight += 2*nBorder;
// Set up the bounding box of the button bar.
- mpBackgroundTheme->Layout();
maButtonBoundingBox = mpBackgroundTheme->GetButtonArea();
maBackgroundLocation = mpBackgroundTheme->GetBackgroundLocation();
if (Theme_ButtonPaintType == 1)
@@ -737,8 +711,7 @@ ButtonBar::BackgroundTheme::BackgroundTheme (
: mpTheme(rpTheme),
meIconSize( Button::IconSize_Large ),
maButtonArea(),
- maBackgroundLocation(),
- mePosition( BOTTOM )
+ maBackgroundLocation()
{
UpdateMinimumIconSizes(rButtons);
}
@@ -847,9 +820,9 @@ void ButtonBar::BackgroundTheme::Layout (void)
}
maBackgroundLocation = Point(
- maPreviewBoundingBox.Left() + (maPreviewBoundingBox.GetWidth()-aImageSize.Width())/2,
- mePosition == TOP? maPreviewBoundingBox.Top():
- maPreviewBoundingBox.Bottom() - aImageSize.Height());
+ maPreviewBoundingBox.Left()
+ + (maPreviewBoundingBox.GetWidth()-aImageSize.Width())/2,
+ maPreviewBoundingBox.Bottom() - aImageSize.Height());
maButtonArea = Rectangle(maBackgroundLocation, aImageSize);
}