summaryrefslogtreecommitdiff
path: root/svtools
diff options
context:
space:
mode:
Diffstat (limited to 'svtools')
-rw-r--r--svtools/source/brwbox/brwbox1.cxx18
-rw-r--r--svtools/source/brwbox/brwbox2.cxx23
-rw-r--r--svtools/source/brwbox/editbrowsebox.cxx29
3 files changed, 50 insertions, 20 deletions
diff --git a/svtools/source/brwbox/brwbox1.cxx b/svtools/source/brwbox/brwbox1.cxx
index d36a3b71141b..526af00e5b5f 100644
--- a/svtools/source/brwbox/brwbox1.cxx
+++ b/svtools/source/brwbox/brwbox1.cxx
@@ -291,11 +291,10 @@ void BrowseBox::InsertHandleColumn( ULONG nWidth )
// Headerbar anpassen
if ( getDataWindow()->pHeaderBar )
{
- getDataWindow()->pHeaderBar->SetPosPixel(
- Point(nWidth, 0));
-
- getDataWindow()->pHeaderBar->SetSizePixel(
- Size( GetOutputSizePixel().Width() - nWidth, GetTitleHeight() ) );
+ getDataWindow()->pHeaderBar->SetPosSizePixel(
+ Point(nWidth, 0),
+ Size( GetOutputSizePixel().Width() - nWidth, GetTitleHeight() )
+ );
}
/*if ( getDataWindow()->pHeaderBar )
@@ -837,11 +836,10 @@ void BrowseBox::RemoveColumn( USHORT nItemId )
// Headerbar anpassen
if ( getDataWindow()->pHeaderBar )
{
- getDataWindow()->pHeaderBar->SetPosPixel(
- Point(0, 0));
-
- getDataWindow()->pHeaderBar->SetSizePixel(
- Size( GetOutputSizePixel().Width(), GetTitleHeight() ) );
+ getDataWindow()->pHeaderBar->SetPosSizePixel(
+ Point(0, 0),
+ Size( GetOutputSizePixel().Width(), GetTitleHeight() )
+ );
}
}
diff --git a/svtools/source/brwbox/brwbox2.cxx b/svtools/source/brwbox/brwbox2.cxx
index 69eadb01f0a9..daf8d080dac2 100644
--- a/svtools/source/brwbox/brwbox2.cxx
+++ b/svtools/source/brwbox/brwbox2.cxx
@@ -164,7 +164,21 @@ bool BrowseBox::IsInCommandEvent() const
void BrowseBox::StateChanged( StateChangedType nStateChange )
{
- if ( STATE_CHANGE_INITSHOW == nStateChange )
+ Control::StateChanged( nStateChange );
+
+ if ( STATE_CHANGE_MIRRORING == nStateChange )
+ {
+ getDataWindow()->EnableRTL( IsRTLEnabled() );
+
+ HeaderBar* pHeaderBar = getDataWindow()->pHeaderBar;
+ if ( pHeaderBar )
+ pHeaderBar->EnableRTL( IsRTLEnabled() );
+ aHScroll.EnableRTL( IsRTLEnabled() );
+ if( pVScroll )
+ pVScroll->EnableRTL( IsRTLEnabled() );
+ Resize();
+ }
+ else if ( STATE_CHANGE_INITSHOW == nStateChange )
{
bBootstrapped = TRUE; // muss zuerst gesetzt werden!
@@ -661,8 +675,7 @@ void BrowseBox::Resize()
// Handle-Column beruecksichtigen
BrowserColumn *pFirstCol = pCols->GetObject(0);
long nOfsX = pFirstCol->GetId() ? 0 : pFirstCol->Width();
- pHeaderBar->SetPosPixel( Point( nOfsX, 0 ) );
- pHeaderBar->SetSizePixel( Size( GetOutputSizePixel().Width() - nOfsX, GetTitleHeight() ) );
+ pHeaderBar->SetPosSizePixel( Point( nOfsX, 0 ), Size( GetOutputSizePixel().Width() - nOfsX, GetTitleHeight() ) );
}
AutoSizeLastColumn(); // adjust last column width
@@ -1306,7 +1319,9 @@ void BrowseBox::UpdateScrollbars()
if ( bNeedsVScroll && !pVScroll->IsVisible() )
pVScroll->Show();
- pDataWin->SetSizePixel( aDataWinSize );
+ pDataWin->SetPosSizePixel(
+ Point( 0, GetTitleHeight() ),
+ aDataWinSize );
// needs corner-window?
// (do that AFTER positioning BOTH scrollbars)
diff --git a/svtools/source/brwbox/editbrowsebox.cxx b/svtools/source/brwbox/editbrowsebox.cxx
index 3e16e10866f3..086e00674a8e 100644
--- a/svtools/source/brwbox/editbrowsebox.cxx
+++ b/svtools/source/brwbox/editbrowsebox.cxx
@@ -330,6 +330,7 @@ namespace svt
}
Image aImage;
+ bool bNeedMirror = IsRTLEnabled();
switch (eStatus)
{
case CURRENT:
@@ -340,6 +341,7 @@ namespace svt
break;
case MODIFIED:
aImage = m_aStatusImages.GetImage(IMG_EBB_MODIFIED);
+ bNeedMirror = false; // the pen is not mirrored
break;
case NEW:
aImage = m_aStatusImages.GetImage(IMG_EBB_NEW);
@@ -362,6 +364,12 @@ namespace svt
case CLEAN:
break;
}
+ if ( bNeedMirror )
+ {
+ BitmapEx aBitmap( aImage.GetBitmapEx() );
+ aBitmap.Mirror( BMP_MIRROR_HORZ );
+ aImage = Image( aBitmap );
+ }
return aImage;
}
@@ -788,14 +796,15 @@ namespace svt
{
BrowseBox::StateChanged( nType );
- if ( nType == STATE_CHANGE_ZOOM )
+ bool bNeedCellReActivation = false;
+ if ( nType == STATE_CHANGE_MIRRORING )
+ {
+ bNeedCellReActivation = true;
+ }
+ else if ( nType == STATE_CHANGE_ZOOM )
{
ImplInitSettings( sal_True, sal_False, sal_False );
- if (IsEditing())
- {
- DeactivateCell();
- ActivateCell();
- }
+ bNeedCellReActivation = true;
}
else if ( nType == STATE_CHANGE_CONTROLFONT )
{
@@ -820,6 +829,14 @@ namespace svt
SetStyle(nStyle);
}
+ if ( bNeedCellReActivation )
+ {
+ if ( IsEditing() )
+ {
+ DeactivateCell();
+ ActivateCell();
+ }
+ }
}
//------------------------------------------------------------------------------