[PATCH] Widget UI for Calc cell alignment page
Olivier Hallot (via Code Review)
gerrit at gerrit.libreoffice.org
Sat Mar 16 12:40:25 PDT 2013
Hi,
I have submitted a patch for review:
https://gerrit.libreoffice.org/2773
To pull it, you can do:
git pull ssh://gerrit.libreoffice.org:29418/core refs/changes/73/2773/1
Widget UI for Calc cell alignment page
Format - cell, alignment tab
Change-Id: I78e4252064671720d41ad3af086b41d2efe06ac1
---
M cui/UI_cui.mk
M cui/source/inc/align.hxx
M cui/source/tabpages/align.cxx
M cui/source/tabpages/align.hrc
M cui/source/tabpages/align.src
A cui/uiconfig/ui/cellalignment.ui
M extras/source/glade/libreoffice-catalog.xml.in
M svx/inc/svx/dialcontrol.hxx
M svx/inc/svx/wrapfield.hxx
M svx/source/dialog/dialcontrol.cxx
M svx/source/dialog/wrapfield.cxx
11 files changed, 721 insertions(+), 334 deletions(-)
diff --git a/cui/UI_cui.mk b/cui/UI_cui.mk
index d5bde91..e8a352c 100644
--- a/cui/UI_cui.mk
+++ b/cui/UI_cui.mk
@@ -13,6 +13,7 @@
cui/uiconfig/ui/asiantypography \
cui/uiconfig/ui/backgroundpage \
cui/uiconfig/ui/borderpage \
+ cui/uiconfig/ui/cellalignment \
cui/uiconfig/ui/charnamepage \
cui/uiconfig/ui/colorpage \
cui/uiconfig/ui/comment \
diff --git a/cui/source/inc/align.hxx b/cui/source/inc/align.hxx
index c47afae..1b2ee61 100644
--- a/cui/source/inc/align.hxx
+++ b/cui/source/inc/align.hxx
@@ -19,6 +19,23 @@
#ifndef _SVX_ALIGN_HXX
#define _SVX_ALIGN_HXX
+// list box indexes
+#define ALIGNDLG_HORALIGN_STD 0
+#define ALIGNDLG_HORALIGN_LEFT 1
+#define ALIGNDLG_HORALIGN_CENTER 2
+#define ALIGNDLG_HORALIGN_RIGHT 3
+#define ALIGNDLG_HORALIGN_BLOCK 4
+#define ALIGNDLG_HORALIGN_FILL 5
+#define ALIGNDLG_HORALIGN_DISTRIBUTED 6
+
+#define ALIGNDLG_VERALIGN_STD 0
+#define ALIGNDLG_VERALIGN_TOP 1
+#define ALIGNDLG_VERALIGN_MID 2
+#define ALIGNDLG_VERALIGN_BOTTOM 3
+#define ALIGNDLG_VERALIGN_BLOCK 4
+#define ALIGNDLG_VERALIGN_DISTRIBUTED 5
+
+
#include <svx/orienthelper.hxx>
#include <vcl/field.hxx>
#include <vcl/button.hxx>
@@ -42,7 +59,7 @@
virtual ~AlignmentTabPage();
static SfxTabPage* Create( Window* pParent, const SfxItemSet& rAttrSet );
- static sal_uInt16* GetRanges();
+ static sal_uInt16* GetRanges();
virtual sal_Bool FillItemSet( SfxItemSet& rSet );
virtual void Reset( const SfxItemSet& rSet );
@@ -60,30 +77,26 @@
DECL_LINK( UpdateEnableHdl, void* );
private:
- FixedLine maFlAlignment;
- FixedText maFtHorAlign;
- ListBox maLbHorAlign;
- FixedText maFtIndent;
- MetricField maEdIndent;
- FixedText maFtVerAlign;
- ListBox maLbVerAlign;
+ ListBox* m_pLbHorAlign;
+ FixedText* m_pFtIndent;
+ MetricField* m_pEdIndent;
+ ListBox* m_pLbVerAlign;
- FixedLine maFlOrient;
- DialControl maCtrlDial;
- FixedText maFtRotate;
- WrapField maNfRotate;
- FixedText maFtRefEdge;
- ValueSet maVsRefEdge;
- TriStateBox maCbStacked;
- TriStateBox maCbAsianMode;
- OrientationHelper maOrientHlp;
+ DialControl* m_pCtrlDial;
+ FixedText* m_pFtRotate;
+ WrapField* m_pNfRotate;
+ FixedText* m_pFtRefEdge;
+ ValueSet* m_pVsRefEdge;
+ TriStateBox* m_pCbStacked;
+ TriStateBox* m_pCbAsianMode;
+ OrientationHelper* m_pOrientHlp;
- FixedLine maFlProperties;
- TriStateBox maBtnWrap;
- TriStateBox maBtnHyphen;
- TriStateBox maBtnShrink;
- FixedText maFtFrameDir;
- FrameDirListBox maLbFrameDir;
+ VclHBox* m_pBoxDirection;
+ TriStateBox* m_pBtnWrap;
+ TriStateBox* m_pBtnHyphen;
+ TriStateBox* m_pBtnShrink;
+ FrameDirListBox* m_pLbFrameDir;
+
};
// ============================================================================
diff --git a/cui/source/tabpages/align.cxx b/cui/source/tabpages/align.cxx
index b2aa8a4..96d9942 100644
--- a/cui/source/tabpages/align.cxx
+++ b/cui/source/tabpages/align.cxx
@@ -147,97 +147,97 @@
rSet.Put(aItem);
}
-}
+}//namespace
// ============================================================================
AlignmentTabPage::AlignmentTabPage( Window* pParent, const SfxItemSet& rCoreAttrs ) :
- SfxTabPage( pParent, CUI_RES( RID_SVXPAGE_ALIGNMENT ), rCoreAttrs ),
+ SfxTabPage( pParent, "CellAlignPage","cui/ui/cellalignment.ui", rCoreAttrs )
- maFlAlignment ( this, CUI_RES( FL_ALIGNMENT ) ),
- maFtHorAlign ( this, CUI_RES( FT_HORALIGN ) ),
- maLbHorAlign ( this, CUI_RES( LB_HORALIGN ) ),
- maFtIndent ( this, CUI_RES( FT_INDENT ) ),
- maEdIndent ( this, CUI_RES( ED_INDENT ) ),
- maFtVerAlign ( this, CUI_RES( FT_VERALIGN ) ),
- maLbVerAlign ( this, CUI_RES( LB_VERALIGN ) ),
-
- maFlOrient ( this, CUI_RES( FL_ORIENTATION ) ),
- maCtrlDial ( this, CUI_RES( CTR_DIAL ) ),
- maFtRotate ( this, CUI_RES( FT_DEGREES ) ),
- maNfRotate ( this, CUI_RES( NF_DEGREES ) ),
- maFtRefEdge ( this, CUI_RES( FT_BORDER_LOCK ) ),
- maVsRefEdge ( this, CUI_RES( CTR_BORDER_LOCK ) ),
- maCbStacked ( this, CUI_RES( BTN_TXTSTACKED ) ),
- maCbAsianMode ( this, CUI_RES( BTN_ASIAN_VERTICAL ) ),
- maOrientHlp ( maCtrlDial, maNfRotate, maCbStacked ),
-
- maFlProperties ( this, CUI_RES( FL_WRAP ) ),
- maBtnWrap ( this, CUI_RES( BTN_WRAP ) ),
- maBtnHyphen ( this, CUI_RES( BTN_HYPH ) ),
- maBtnShrink ( this, CUI_RES( BTN_SHRINK ) ),
- maFtFrameDir ( this, CUI_RES( FT_TEXTFLOW ) ),
- maLbFrameDir ( this, CUI_RES( LB_FRAMEDIR ) )
{
+ // text alignment
+ get(m_pLbHorAlign,"comboboxHorzAlign");
+ get(m_pFtIndent,"labelIndent");
+ get(m_pEdIndent,"spinIndentFrom");
+ get(m_pLbVerAlign,"comboboxVertAlign");
+
+ //text rotation
+ get(m_pNfRotate,"spinDegrees");
+ get(m_pCtrlDial,"dialcontrol");
+ get(m_pFtRotate,"labelDegrees");
+ get(m_pFtRefEdge,"labelRefEdge");
+ get(m_pVsRefEdge,"references");
+ get(m_pBoxDirection,"boxDirection");
+
+ //Asian mode
+ get(m_pCbStacked,"checkVertStack");
+ get(m_pCbAsianMode,"checkAsianMode");
+
+ m_pOrientHlp = new OrientationHelper(*m_pCtrlDial, *m_pNfRotate, *m_pCbStacked);
+
+ // Properties
+ get(m_pBtnWrap,"checkWrapTextAuto");
+ get(m_pBtnHyphen,"checkHyphActive");
+ get(m_pBtnShrink,"checkShrinkFitCellSize");
+ get(m_pLbFrameDir,"comboTextDirBox");
+
InitVsRefEgde();
// windows to be disabled, if stacked text is turned ON
- maOrientHlp.AddDependentWindow( maFtRotate, STATE_CHECK );
- maOrientHlp.AddDependentWindow( maFtRefEdge, STATE_CHECK );
- maOrientHlp.AddDependentWindow( maVsRefEdge, STATE_CHECK );
+ m_pOrientHlp->AddDependentWindow( *m_pFtRotate, STATE_CHECK );
+ m_pOrientHlp->AddDependentWindow( *m_pFtRefEdge, STATE_CHECK );
+ m_pOrientHlp->AddDependentWindow( *m_pVsRefEdge, STATE_CHECK );
// windows to be disabled, if stacked text is turned OFF
- maOrientHlp.AddDependentWindow( maCbAsianMode, STATE_NOCHECK );
+ m_pOrientHlp->AddDependentWindow( *m_pCbAsianMode, STATE_NOCHECK );
Link aLink = LINK( this, AlignmentTabPage, UpdateEnableHdl );
- maLbHorAlign.SetSelectHdl( aLink );
- maBtnWrap.SetClickHdl( aLink );
+ m_pLbHorAlign->SetSelectHdl( aLink );
+ m_pBtnWrap->SetClickHdl( aLink );
// Asian vertical mode
- maCbAsianMode.Show( SvtCJKOptions().IsVerticalTextEnabled() );
+ m_pCbAsianMode->Show( SvtCJKOptions().IsVerticalTextEnabled() );
- // CTL frame direction
- maLbFrameDir.InsertEntryValue( CUI_RESSTR( RID_SVXSTR_FRAMEDIR_LTR ), FRMDIR_HORI_LEFT_TOP );
- maLbFrameDir.InsertEntryValue( CUI_RESSTR( RID_SVXSTR_FRAMEDIR_RTL ), FRMDIR_HORI_RIGHT_TOP );
- maLbFrameDir.InsertEntryValue( CUI_RESSTR( RID_SVXSTR_FRAMEDIR_SUPER ), FRMDIR_ENVIRONMENT );
+
if( !SvtLanguageOptions().IsCTLFontEnabled() )
{
- maFtFrameDir.Hide();
- maLbFrameDir.Hide();
+ m_pBoxDirection->Hide();
+ }
+ else
+ {
+ // CTL frame direction
+ m_pLbFrameDir->InsertEntryValue( CUI_RESSTR( RID_SVXSTR_FRAMEDIR_LTR ), FRMDIR_HORI_LEFT_TOP );
+ m_pLbFrameDir->InsertEntryValue( CUI_RESSTR( RID_SVXSTR_FRAMEDIR_RTL ), FRMDIR_HORI_RIGHT_TOP );
+ m_pLbFrameDir->InsertEntryValue( CUI_RESSTR( RID_SVXSTR_FRAMEDIR_SUPER ), FRMDIR_ENVIRONMENT );
+ m_pBoxDirection->Show();
}
// This page needs ExchangeSupport.
SetExchangeSupport();
- FreeResource();
+ AddItemConnection( new HorJustConnection( SID_ATTR_ALIGN_HOR_JUSTIFY, *m_pLbHorAlign, s_pHorJustMap, sfx::ITEMCONN_HIDE_UNKNOWN ) );
+ AddItemConnection( new sfx::DummyItemConnection( SID_ATTR_ALIGN_INDENT, *m_pFtIndent, sfx::ITEMCONN_HIDE_UNKNOWN ) );
+ AddItemConnection( new sfx::UInt16MetricConnection( SID_ATTR_ALIGN_INDENT, *m_pEdIndent, FUNIT_TWIP, sfx::ITEMCONN_HIDE_UNKNOWN ) );
+ AddItemConnection( new VerJustConnection( SID_ATTR_ALIGN_VER_JUSTIFY, *m_pLbVerAlign, s_pVerJustMap, sfx::ITEMCONN_HIDE_UNKNOWN ) );
+ AddItemConnection( new DialControlConnection( SID_ATTR_ALIGN_DEGREES, *m_pCtrlDial, sfx::ITEMCONN_HIDE_UNKNOWN ) );
+ AddItemConnection( new sfx::DummyItemConnection( SID_ATTR_ALIGN_DEGREES, *m_pFtRotate, sfx::ITEMCONN_HIDE_UNKNOWN ) );
+ AddItemConnection( new sfx::DummyItemConnection( SID_ATTR_ALIGN_LOCKPOS, *m_pFtRefEdge, sfx::ITEMCONN_HIDE_UNKNOWN ) );
+ AddItemConnection( new RotateModeConnection( SID_ATTR_ALIGN_LOCKPOS, *m_pVsRefEdge, s_pRotateModeMap, sfx::ITEMCONN_HIDE_UNKNOWN ) );
+ AddItemConnection( new OrientStackedConnection( SID_ATTR_ALIGN_STACKED, *m_pOrientHlp ) );
+ AddItemConnection( new sfx::DummyItemConnection( SID_ATTR_ALIGN_STACKED, *m_pCbStacked, sfx::ITEMCONN_HIDE_UNKNOWN ) );
+ AddItemConnection( new sfx::CheckBoxConnection( SID_ATTR_ALIGN_ASIANVERTICAL, *m_pCbAsianMode, sfx::ITEMCONN_HIDE_UNKNOWN ) );
+ AddItemConnection( new sfx::CheckBoxConnection( SID_ATTR_ALIGN_LINEBREAK, *m_pBtnWrap, sfx::ITEMCONN_HIDE_UNKNOWN ) );
+ AddItemConnection( new sfx::CheckBoxConnection( SID_ATTR_ALIGN_HYPHENATION, *m_pBtnHyphen, sfx::ITEMCONN_HIDE_UNKNOWN ) );
+ AddItemConnection( new sfx::CheckBoxConnection( SID_ATTR_ALIGN_SHRINKTOFIT, *m_pBtnShrink, sfx::ITEMCONN_HIDE_UNKNOWN ) );
+ AddItemConnection( new sfx::DummyItemConnection( SID_ATTR_FRAMEDIRECTION, *m_pBoxDirection, sfx::ITEMCONN_HIDE_UNKNOWN ) );
+ AddItemConnection( new FrameDirListBoxConnection( SID_ATTR_FRAMEDIRECTION, *m_pLbFrameDir, sfx::ITEMCONN_HIDE_UNKNOWN ) );
- AddItemConnection( new sfx::DummyItemConnection( SID_ATTR_ALIGN_HOR_JUSTIFY, maFtHorAlign, sfx::ITEMCONN_HIDE_UNKNOWN ) );
- AddItemConnection( new HorJustConnection( SID_ATTR_ALIGN_HOR_JUSTIFY, maLbHorAlign, s_pHorJustMap, sfx::ITEMCONN_HIDE_UNKNOWN ) );
- AddItemConnection( new sfx::DummyItemConnection( SID_ATTR_ALIGN_INDENT, maFtIndent, sfx::ITEMCONN_HIDE_UNKNOWN ) );
- AddItemConnection( new sfx::UInt16MetricConnection( SID_ATTR_ALIGN_INDENT, maEdIndent, FUNIT_TWIP, sfx::ITEMCONN_HIDE_UNKNOWN ) );
- AddItemConnection( new sfx::DummyItemConnection( SID_ATTR_ALIGN_VER_JUSTIFY, maFtVerAlign, sfx::ITEMCONN_HIDE_UNKNOWN ) );
- AddItemConnection( new VerJustConnection( SID_ATTR_ALIGN_VER_JUSTIFY, maLbVerAlign, s_pVerJustMap, sfx::ITEMCONN_HIDE_UNKNOWN ) );
- AddItemConnection( new DialControlConnection( SID_ATTR_ALIGN_DEGREES, maCtrlDial, sfx::ITEMCONN_HIDE_UNKNOWN ) );
- AddItemConnection( new sfx::DummyItemConnection( SID_ATTR_ALIGN_DEGREES, maFtRotate, sfx::ITEMCONN_HIDE_UNKNOWN ) );
- AddItemConnection( new sfx::DummyItemConnection( SID_ATTR_ALIGN_LOCKPOS, maFtRefEdge, sfx::ITEMCONN_HIDE_UNKNOWN ) );
- AddItemConnection( new RotateModeConnection( SID_ATTR_ALIGN_LOCKPOS, maVsRefEdge, s_pRotateModeMap, sfx::ITEMCONN_HIDE_UNKNOWN ) );
- AddItemConnection( new OrientStackedConnection( SID_ATTR_ALIGN_STACKED, maOrientHlp ) );
- AddItemConnection( new sfx::DummyItemConnection( SID_ATTR_ALIGN_STACKED, maCbStacked, sfx::ITEMCONN_HIDE_UNKNOWN ) );
- AddItemConnection( new sfx::CheckBoxConnection( SID_ATTR_ALIGN_ASIANVERTICAL, maCbAsianMode, sfx::ITEMCONN_HIDE_UNKNOWN ) );
- AddItemConnection( new sfx::CheckBoxConnection( SID_ATTR_ALIGN_LINEBREAK, maBtnWrap, sfx::ITEMCONN_HIDE_UNKNOWN ) );
- AddItemConnection( new sfx::CheckBoxConnection( SID_ATTR_ALIGN_HYPHENATION, maBtnHyphen, sfx::ITEMCONN_HIDE_UNKNOWN ) );
- AddItemConnection( new sfx::CheckBoxConnection( SID_ATTR_ALIGN_SHRINKTOFIT, maBtnShrink, sfx::ITEMCONN_HIDE_UNKNOWN ) );
- AddItemConnection( new sfx::DummyItemConnection( SID_ATTR_FRAMEDIRECTION, maFtFrameDir, sfx::ITEMCONN_HIDE_UNKNOWN ) );
- AddItemConnection( new FrameDirListBoxConnection( SID_ATTR_FRAMEDIRECTION, maLbFrameDir, sfx::ITEMCONN_HIDE_UNKNOWN ) );
-
- maLbHorAlign.SetAccessibleRelationMemberOf( &maFlAlignment );
- maEdIndent.SetAccessibleRelationMemberOf( &maFlAlignment );
- maLbVerAlign.SetAccessibleRelationMemberOf( &maFlAlignment );
}
AlignmentTabPage::~AlignmentTabPage()
{
+ delete m_pOrientHlp;
}
SfxTabPage* AlignmentTabPage::Create( Window* pParent, const SfxItemSet& rAttrSet )
@@ -258,12 +258,12 @@
// method to 'distribute' to distinguish from the normal justification.
sal_uInt16 nWhichHorJM = GetWhich(SID_ATTR_ALIGN_HOR_JUSTIFY_METHOD);
- lcl_SetJustifyMethodToItemSet(rSet, nWhichHorJM, maLbHorAlign, ALIGNDLG_HORALIGN_DISTRIBUTED);
+ lcl_SetJustifyMethodToItemSet(rSet, nWhichHorJM, *m_pLbHorAlign, ALIGNDLG_HORALIGN_DISTRIBUTED);
if (!bChanged)
bChanged = HasAlignmentChanged(rSet, nWhichHorJM);
sal_uInt16 nWhichVerJM = GetWhich(SID_ATTR_ALIGN_VER_JUSTIFY_METHOD);
- lcl_SetJustifyMethodToItemSet(rSet, nWhichVerJM, maLbVerAlign, ALIGNDLG_VERALIGN_DISTRIBUTED);
+ lcl_SetJustifyMethodToItemSet(rSet, nWhichVerJM, *m_pLbVerAlign, ALIGNDLG_VERALIGN_DISTRIBUTED);
if (!bChanged)
bChanged = HasAlignmentChanged(rSet, nWhichVerJM);
@@ -278,12 +278,12 @@
// method to 'distribute' to distinguish from the normal justification.
lcl_MaybeResetAlignToDistro<SvxCellHorJustify, SvxCellHorJustify>(
- maLbHorAlign, ALIGNDLG_HORALIGN_DISTRIBUTED, rCoreAttrs,
+ *m_pLbHorAlign, ALIGNDLG_HORALIGN_DISTRIBUTED, rCoreAttrs,
GetWhich(SID_ATTR_ALIGN_HOR_JUSTIFY), GetWhich(SID_ATTR_ALIGN_HOR_JUSTIFY_METHOD),
SVX_HOR_JUSTIFY_BLOCK);
lcl_MaybeResetAlignToDistro<SvxCellVerJustify, SvxCellVerJustify>(
- maLbVerAlign, ALIGNDLG_VERALIGN_DISTRIBUTED, rCoreAttrs,
+ *m_pLbVerAlign, ALIGNDLG_VERALIGN_DISTRIBUTED, rCoreAttrs,
GetWhich(SID_ATTR_ALIGN_VER_JUSTIFY), GetWhich(SID_ATTR_ALIGN_VER_JUSTIFY_METHOD),
SVX_VER_JUSTIFY_BLOCK);
@@ -310,50 +310,46 @@
void AlignmentTabPage::InitVsRefEgde()
{
// remember selection - is deleted in call to ValueSet::Clear()
- sal_uInt16 nSel = maVsRefEdge.GetSelectItemId();
+ sal_uInt16 nSel = m_pVsRefEdge->GetSelectItemId();
ResId aResId( IL_LOCK_BMPS, CUI_MGR() );
ImageList aImageList( aResId );
Size aItemSize( aImageList.GetImage( IID_BOTTOMLOCK ).GetSizePixel() );
- maVsRefEdge.Clear();
- maVsRefEdge.SetStyle( maVsRefEdge.GetStyle() | WB_ITEMBORDER | WB_DOUBLEBORDER );
+ m_pVsRefEdge->Clear();
+ m_pVsRefEdge->SetStyle( m_pVsRefEdge->GetStyle() | WB_ITEMBORDER | WB_DOUBLEBORDER );
- maVsRefEdge.SetColCount( 3 );
- maVsRefEdge.InsertItem( IID_BOTTOMLOCK, aImageList.GetImage( IID_BOTTOMLOCK ), String( CUI_RES( STR_BOTTOMLOCK ) ) );
- maVsRefEdge.InsertItem( IID_TOPLOCK, aImageList.GetImage( IID_TOPLOCK ), String( CUI_RES( STR_TOPLOCK ) ) );
- maVsRefEdge.InsertItem( IID_CELLLOCK, aImageList.GetImage( IID_CELLLOCK ), String( CUI_RES( STR_CELLLOCK ) ) );
+ m_pVsRefEdge->SetColCount( 3 );
+ m_pVsRefEdge->InsertItem( IID_BOTTOMLOCK, aImageList.GetImage( IID_BOTTOMLOCK ), OUString( CUI_RES( STR_BOTTOMLOCK ) ) );
+ m_pVsRefEdge->InsertItem( IID_TOPLOCK, aImageList.GetImage( IID_TOPLOCK ), OUString( CUI_RES( STR_TOPLOCK ) ) );
+ m_pVsRefEdge->InsertItem( IID_CELLLOCK, aImageList.GetImage( IID_CELLLOCK ), OUString( CUI_RES( STR_CELLLOCK ) ) );
- maVsRefEdge.SetSizePixel( maVsRefEdge.CalcWindowSizePixel( aItemSize ) );
+ m_pVsRefEdge->SetSizePixel( m_pVsRefEdge->CalcWindowSizePixel( aItemSize ) );
- maVsRefEdge.SelectItem( nSel );
+ m_pVsRefEdge->SelectItem( nSel );
}
void AlignmentTabPage::UpdateEnableControls()
{
- sal_uInt16 nHorAlign = maLbHorAlign.GetSelectEntryPos();
+ sal_uInt16 nHorAlign = m_pLbHorAlign->GetSelectEntryPos();
bool bHorLeft = (nHorAlign == ALIGNDLG_HORALIGN_LEFT);
bool bHorBlock = (nHorAlign == ALIGNDLG_HORALIGN_BLOCK);
bool bHorFill = (nHorAlign == ALIGNDLG_HORALIGN_FILL);
bool bHorDist = (nHorAlign == ALIGNDLG_HORALIGN_DISTRIBUTED);
// indent edit field only for left alignment
- maFtIndent.Enable( bHorLeft );
- maEdIndent.Enable( bHorLeft );
+ m_pFtIndent->Enable( bHorLeft );
+ m_pEdIndent->Enable( bHorLeft );
// rotation/stacked disabled for fill alignment
- maOrientHlp.Enable( !bHorFill );
+ m_pOrientHlp->Enable( !bHorFill );
// hyphenation only for automatic line breaks or for block alignment
- maBtnHyphen.Enable( maBtnWrap.IsChecked() || bHorBlock );
+ m_pBtnHyphen->Enable( m_pBtnWrap->IsChecked() || bHorBlock );
// shrink only without automatic line break, and not for block, fill or distribute.
- maBtnShrink.Enable( (maBtnWrap.GetState() == STATE_NOCHECK) && !bHorBlock && !bHorFill && !bHorDist );
+ m_pBtnShrink->Enable( (m_pBtnWrap->GetState() == STATE_NOCHECK) && !bHorBlock && !bHorFill && !bHorDist );
- // visibility of fixed lines
- maFlAlignment.Show( maLbHorAlign.IsVisible() || maEdIndent.IsVisible() || maLbVerAlign.IsVisible() );
- maFlOrient.Show( maCtrlDial.IsVisible() || maVsRefEdge.IsVisible() || maCbStacked.IsVisible() || maCbAsianMode.IsVisible() );
- maFlProperties.Show( maBtnWrap.IsVisible() || maBtnHyphen.IsVisible() || maBtnShrink.IsVisible() || maLbFrameDir.IsVisible() );
}
bool AlignmentTabPage::HasAlignmentChanged( const SfxItemSet& rNew, sal_uInt16 nWhich ) const
diff --git a/cui/source/tabpages/align.hrc b/cui/source/tabpages/align.hrc
index 4f7b79b..6bc68ad 100644
--- a/cui/source/tabpages/align.hrc
+++ b/cui/source/tabpages/align.hrc
@@ -16,51 +16,8 @@
* except in compliance with the License. You may obtain a copy of
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
*/
-#ifndef _SVX_ALIGN_HRC
-#define _SVX_ALIGN_HRC
// defines ------------------------------------------------------------------
-
-// resource id's
-#define FL_ALIGNMENT 10
-#define FT_HORALIGN 11
-#define LB_HORALIGN 12
-#define FT_INDENT 13
-#define ED_INDENT 14
-#define FT_VERALIGN 15
-#define LB_VERALIGN 16
-
-#define FL_ORIENTATION 20
-#define BTN_TXTSTACKED 21
-#define CTR_DIAL 22
-#define FT_DEGREES 23
-#define NF_DEGREES 24
-#define FT_BORDER_LOCK 25
-#define CTR_BORDER_LOCK 26
-#define BTN_ASIAN_VERTICAL 27
-
-#define FL_WRAP 40
-#define BTN_WRAP 41
-#define BTN_HYPH 42
-#define FT_TEXTFLOW 43
-#define LB_FRAMEDIR 44
-#define BTN_SHRINK 45
-
-// list box indexes
-#define ALIGNDLG_HORALIGN_STD 0
-#define ALIGNDLG_HORALIGN_LEFT 1
-#define ALIGNDLG_HORALIGN_CENTER 2
-#define ALIGNDLG_HORALIGN_RIGHT 3
-#define ALIGNDLG_HORALIGN_BLOCK 4
-#define ALIGNDLG_HORALIGN_FILL 5
-#define ALIGNDLG_HORALIGN_DISTRIBUTED 6
-
-#define ALIGNDLG_VERALIGN_STD 0
-#define ALIGNDLG_VERALIGN_TOP 1
-#define ALIGNDLG_VERALIGN_MID 2
-#define ALIGNDLG_VERALIGN_BOTTOM 3
-#define ALIGNDLG_VERALIGN_BLOCK 4
-#define ALIGNDLG_VERALIGN_DISTRIBUTED 5
// image list for ValueSets:
#define IL_LOCK_BMPS 1100
@@ -72,6 +29,5 @@
#define STR_TOPLOCK 2
#define STR_CELLLOCK 3
-#endif
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/cui/source/tabpages/align.src b/cui/source/tabpages/align.src
index 958af09..de47a39 100644
--- a/cui/source/tabpages/align.src
+++ b/cui/source/tabpages/align.src
@@ -30,188 +30,6 @@
// RID_SVXPAGE_ALIGNMENT -------------------------------------------------
TabPage RID_SVXPAGE_ALIGNMENT
{
- HelpId = HID_ALIGNMENT ;
- Hide = TRUE ;
- Text [ en-US ] = "Alignment" ;
- Size = MAP_APPFONT ( TP_WIDTH , TP_HEIGHT ) ;
- SVLook = TRUE ;
- FixedLine FL_ALIGNMENT
- {
- Pos = MAP_APPFONT ( 6 , 3 ) ;
- Size = MAP_APPFONT ( 248 , 8 ) ;
- Text [ en-US ] = "Text alignment";
- };
- FixedText FT_HORALIGN
- {
- Pos = MAP_APPFONT ( 12 ,14 ) ;
- Size = MAP_APPFONT ( 100 , 8 ) ;
- Text [ en-US ] = "Hori~zontal";
- };
- ListBox LB_HORALIGN
- {
- HelpID = "cui:ListBox:RID_SVXPAGE_ALIGNMENT:LB_HORALIGN";
- Border = TRUE;
- Pos = MAP_APPFONT ( 12 , 25 );
- Size = MAP_APPFONT ( 100 , 60 );
- TabStop = TRUE;
- DropDown = TRUE;
- StringList [ en-US ] =
- {
- < "Default" ; ALIGNDLG_HORALIGN_STD ; > ;
- < "Left" ; ALIGNDLG_HORALIGN_LEFT ; > ;
- < "Center" ; ALIGNDLG_HORALIGN_CENTER ; > ;
- < "Right" ; ALIGNDLG_HORALIGN_RIGHT ; > ;
- < "Justified" ; ALIGNDLG_HORALIGN_BLOCK ; > ;
- < "Filled" ; ALIGNDLG_HORALIGN_FILL ; > ;
- < "Distributed" ; ALIGNDLG_HORALIGN_DISTRIBUTED ; > ;
- };
- };
- FixedText FT_INDENT
- {
- Pos = MAP_APPFONT ( 118 , 14 ) ;
- Size = MAP_APPFONT ( 40 , 8 ) ;
- Text [ en-US ] = "I~ndent" ;
- };
- MetricField ED_INDENT
- {
- HelpID = "cui:MetricField:RID_SVXPAGE_ALIGNMENT:ED_INDENT";
- Border = TRUE ;
- Pos = MAP_APPFONT ( 118 , 25 ) ;
- Size = MAP_APPFONT ( 36 , 12 ) ;
- Repeat = TRUE ;
- Spin = TRUE ;
- Minimum = 0 ;
- Maximum = 990 ;
- SpinSize = 10 ;
- Unit = FUNIT_POINT ;
- };
- FixedText FT_VERALIGN
- {
- Pos = MAP_APPFONT ( 160 , 14 ) ;
- Size = MAP_APPFONT ( 88 , 8 ) ;
- Text [ en-US ] = "~Vertical";
- };
- ListBox LB_VERALIGN
- {
- HelpID = "cui:ListBox:RID_SVXPAGE_ALIGNMENT:LB_VERALIGN";
- Border = TRUE;
- Pos = MAP_APPFONT ( 160 , 25 );
- Size = MAP_APPFONT ( 88 , 60 );
- TabStop = TRUE;
- DropDown = TRUE;
- StringList [ en-US ] =
- {
- < "Default" ; ALIGNDLG_VERALIGN_STD ; > ;
- < "Top" ; ALIGNDLG_VERALIGN_TOP ; > ;
- < "Middle" ; ALIGNDLG_VERALIGN_MID ; > ;
- < "Bottom" ; ALIGNDLG_VERALIGN_BOTTOM ; > ;
- < "Justified" ; ALIGNDLG_VERALIGN_BLOCK ; > ;
- < "Distributed" ; ALIGNDLG_VERALIGN_DISTRIBUTED ; > ;
- };
- };
- FixedLine FL_ORIENTATION
- {
- Pos = MAP_APPFONT ( 6 , 43 ) ;
- Size = MAP_APPFONT ( 248 , 8 ) ;
- Text [ en-US ] = "Text orientation" ;
- };
- TriStateBox BTN_TXTSTACKED
- {
- HelpID = "cui:TriStateBox:RID_SVXPAGE_ALIGNMENT:BTN_TXTSTACKED";
- Pos = MAP_APPFONT ( 133 , 54 ) ;
- Size = MAP_APPFONT ( 115 , 10 ) ;
- TabStop = TRUE ;
- Text[ en-US ] = "Ve~rtically stacked";
- };
- Control CTR_DIAL
- {
- HelpId = HID_ALIGNMENT_CTR_DIAL ;
- Pos = MAP_APPFONT ( 12 , 60 ) ;
- Size = MAP_APPFONT ( 42 , 43 ) ;
- Text = "ABCD" ;
- };
- FixedText FT_DEGREES
- {
- Pos = MAP_APPFONT ( 72 , 54 ) ;
- Size = MAP_APPFONT ( 50 , 8 ) ;
- Text [ en-US ] = "De~grees";
- };
- NumericField NF_DEGREES
- {
- HelpID = "cui:NumericField:RID_SVXPAGE_ALIGNMENT:NF_DEGREES";
- Border = TRUE ;
- Pos = MAP_APPFONT ( 72 , 65 ) ;
- Size = MAP_APPFONT ( 40 , 12 ) ;
- TabStop = TRUE ;
- Repeat = TRUE ;
- Spin = TRUE ;
- Minimum = 0 ;
- Maximum = 359 ;
- SpinSize = 5 ;
- StrictFormat = TRUE ;
- };
- FixedText FT_BORDER_LOCK
- {
- Pos = MAP_APPFONT ( 72 , 83 ) ;
- Size = MAP_APPFONT ( 70 , 8 ) ;
- Text [ en-US ] = "Re~ference edge" ;
- };
- Control CTR_BORDER_LOCK
- {
- HelpId = HID_ALIGNMENT_CTR_BORDER_LOCK ;
- Pos = MAP_APPFONT ( 72 , 94 ) ;
- Size = MAP_APPFONT ( 50 , 15 ) ;
- TabStop = TRUE ;
- };
- TriStateBox BTN_ASIAN_VERTICAL
- {
- HelpID = "cui:TriStateBox:RID_SVXPAGE_ALIGNMENT:BTN_ASIAN_VERTICAL";
- Pos = MAP_APPFONT ( 143 , 68 ) ;
- Size = MAP_APPFONT ( 105 , 10 ) ;
- TabStop = TRUE ;
- Text [ en-US ] = "Asian layout ~mode" ;
- };
- FixedLine FL_WRAP
- {
- Pos = MAP_APPFONT ( 6 , 115 ) ;
- Size = MAP_APPFONT ( 248 , 8 ) ;
- Text [ en-US ] = "Properties" ;
- };
- TriStateBox BTN_WRAP
- {
- HelpID = "cui:TriStateBox:RID_SVXPAGE_ALIGNMENT:BTN_WRAP";
- Pos = MAP_APPFONT ( 12 , 126 ) ;
- Size = MAP_APPFONT ( 236 , 10 ) ;
- Text [ en-US ] = "~Wrap text automatically" ;
- };
- TriStateBox BTN_HYPH
- {
- HelpID = "cui:TriStateBox:RID_SVXPAGE_ALIGNMENT:BTN_HYPH";
- Pos = MAP_APPFONT ( 22 , 139 ) ;
- Size = MAP_APPFONT ( 226 , 10 ) ;
- Text [ en-US ] = "Hyphenation ~active";
- };
- TriStateBox BTN_SHRINK
- {
- HelpID = "cui:TriStateBox:RID_SVXPAGE_ALIGNMENT:BTN_SHRINK";
- Pos = MAP_APPFONT( 12, 152 );
- Size = MAP_APPFONT( 236, 10 );
- Text [ en-US ] = "~Shrink to fit cell size";
- };
- FixedText FT_TEXTFLOW
- {
- Pos = MAP_APPFONT( 12 , 170 );
- Size = MAP_APPFONT( 64 , 8 );
- Text [ en-US ] = "Te~xt direction";
- };
- ListBox LB_FRAMEDIR
- {
- HelpID = "cui:ListBox:RID_SVXPAGE_ALIGNMENT:LB_FRAMEDIR";
- Pos = MAP_APPFONT( 78 , 168 );
- Size = MAP_APPFONT( 170 , 50 );
- Border = TRUE;
- DropDown = TRUE;
- };
ImageList IL_LOCK_BMPS
{
Prefix = "lo";
diff --git a/cui/uiconfig/ui/cellalignment.ui b/cui/uiconfig/ui/cellalignment.ui
new file mode 100644
index 0000000..8b42771
--- /dev/null
+++ b/cui/uiconfig/ui/cellalignment.ui
@@ -0,0 +1,564 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<interface>
+ <!-- interface-requires gtk+ 3.0 -->
+ <!-- interface-requires LibreOffice 1.0 -->
+ <object class="GtkGrid" id="CellAlignPage">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="border_width">6</property>
+ <property name="row_spacing">12</property>
+ <property name="column_spacing">6</property>
+ <child>
+ <object class="GtkFrame" id="orientation">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="hexpand">True</property>
+ <property name="label_xalign">0</property>
+ <property name="shadow_type">none</property>
+ <child>
+ <object class="GtkAlignment" id="alignment5">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="top_padding">6</property>
+ <property name="left_padding">12</property>
+ <child>
+ <object class="GtkGrid" id="grid10">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="row_spacing">6</property>
+ <property name="column_spacing">12</property>
+ <child>
+ <object class="GtkGrid" id="grid3">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="row_spacing">6</property>
+ <property name="column_spacing">12</property>
+ <child>
+ <object class="GtkLabel" id="labelDegrees">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes">_Degrees</property>
+ <property name="use_underline">True</property>
+ </object>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="top_attach">0</property>
+ <property name="width">1</property>
+ <property name="height">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="labelRefEdge">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes">_Reference edge</property>
+ <property name="use_underline">True</property>
+ <property name="mnemonic_widget">references</property>
+ </object>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="top_attach">2</property>
+ <property name="width">1</property>
+ <property name="height">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="svtlo-ValueSet" id="references">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="halign">start</property>
+ </object>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="top_attach">3</property>
+ <property name="width">1</property>
+ <property name="height">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="svxlo-WrapField" id="spinDegrees">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="invisible_char">•</property>
+ </object>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="top_attach">1</property>
+ <property name="width">1</property>
+ <property name="height">1</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="top_attach">0</property>
+ <property name="width">1</property>
+ <property name="height">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="svxlo-DialControl" id="dialcontrol">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">ABCD</property>
+ <property name="justify">center</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ </attributes>
+ </object>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="top_attach">0</property>
+ <property name="width">1</property>
+ <property name="height">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkGrid" id="grid4">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="row_spacing">6</property>
+ <property name="column_spacing">12</property>
+ <child>
+ <object class="GtkCheckButton" id="checkVertStack">
+ <property name="label" translatable="yes">Vertically s_tacked</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="use_underline">True</property>
+ <property name="xalign">0.019999999552965164</property>
+ <property name="inconsistent">True</property>
+ <property name="draw_indicator">True</property>
+ </object>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="top_attach">0</property>
+ <property name="width">1</property>
+ <property name="height">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkCheckButton" id="checkAsianMode">
+ <property name="label" translatable="yes">Asian layout _mode</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="margin_left">25</property>
+ <property name="use_underline">True</property>
+ <property name="xalign">0.5</property>
+ <property name="inconsistent">True</property>
+ <property name="draw_indicator">True</property>
+ </object>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="top_attach">1</property>
+ <property name="width">1</property>
+ <property name="height">1</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="left_attach">2</property>
+ <property name="top_attach">0</property>
+ <property name="width">1</property>
+ <property name="height">1</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ </object>
+ </child>
+ <child type="label">
+ <object class="GtkLabel" id="labelTextOrient">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Text orientation</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ </attributes>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="top_attach">1</property>
+ <property name="width">1</property>
+ <property name="height">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkFrame" id="properties">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="hexpand">True</property>
+ <property name="label_xalign">0</property>
+ <property name="shadow_type">none</property>
+ <child>
+ <object class="GtkAlignment" id="alignment6">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="top_padding">6</property>
+ <property name="left_padding">12</property>
+ <child>
+ <object class="GtkGrid" id="grid1">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="row_spacing">6</property>
+ <property name="column_spacing">12</property>
+ <child>
+ <object class="GtkCheckButton" id="checkWrapTextAuto">
+ <property name="label" translatable="yes">_Wrap text automatically</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="no_show_all">True</property>
+ <property name="use_underline">True</property>
+ <property name="xalign">0</property>
+ <property name="inconsistent">True</property>
+ <property name="draw_indicator">True</property>
+ </object>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="top_attach">0</property>
+ <property name="width">1</property>
+ <property name="height">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkCheckButton" id="checkShrinkFitCellSize">
+ <property name="label" translatable="yes">_Shrink to fit cell size</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="use_underline">True</property>
+ <property name="xalign">0</property>
+ <property name="inconsistent">True</property>
+ <property name="draw_indicator">True</property>
+ </object>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="top_attach">2</property>
+ <property name="width">1</property>
+ <property name="height">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkCheckButton" id="checkHyphActive">
+ <property name="label" translatable="yes">Hyphenation _active</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="no_show_all">True</property>
+ <property name="margin_left">25</property>
+ <property name="use_underline">True</property>
+ <property name="xalign">0</property>
+ <property name="inconsistent">True</property>
+ <property name="draw_indicator">True</property>
+ </object>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="top_attach">1</property>
+ <property name="width">1</property>
+ <property name="height">1</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ </object>
+ </child>
+ <child type="label">
+ <object class="GtkLabel" id="labelPropeties">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Properties</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ </attributes>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="top_attach">2</property>
+ <property name="width">1</property>
+ <property name="height">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkFrame" id="alignment">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label_xalign">0</property>
+ <property name="shadow_type">none</property>
+ <child>
+ <object class="GtkAlignment" id="alignment1">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="top_padding">6</property>
+ <property name="left_padding">12</property>
+ <child>
+ <object class="GtkGrid" id="grid2">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="border_width">6</property>
+ <property name="row_spacing">6</property>
+ <property name="column_spacing">12</property>
+ <child>
+ <object class="GtkSpinButton" id="spinIndentFrom:0.00pt">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="invisible_char">•</property>
+ <property name="invisible_char_set">True</property>
+ </object>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="top_attach">1</property>
+ <property name="width">1</property>
+ <property name="height">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="labelHorzAlign">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes">Hori_zontal</property>
+ <property name="use_underline">True</property>
+ <property name="mnemonic_widget">comboboxHorzAlign</property>
+ </object>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="top_attach">0</property>
+ <property name="width">1</property>
+ <property name="height">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="labelVertAlign">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes">_Vertical</property>
+ <property name="use_underline">True</property>
+ <property name="mnemonic_widget">comboboxVertAlign</property>
+ </object>
+ <packing>
+ <property name="left_attach">2</property>
+ <property name="top_attach">0</property>
+ <property name="width">1</property>
+ <property name="height">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="labelIndent">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes">I_ndent</property>
+ <property name="use_underline">True</property>
+ <property name="mnemonic_widget">spinIndentFrom:0.00pt</property>
+ </object>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="top_attach">0</property>
+ <property name="width">1</property>
+ <property name="height">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkComboBox" id="comboboxHorzAlign">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="model">liststoreHorzAlign</property>
+ </object>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="top_attach">1</property>
+ <property name="width">1</property>
+ <property name="height">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkComboBox" id="comboboxVertAlign">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="model">liststoreVertAlign</property>
+ </object>
+ <packing>
+ <property name="left_attach">2</property>
+ <property name="top_attach">1</property>
+ <property name="width">1</property>
+ <property name="height">1</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ </object>
+ </child>
+ <child type="label">
+ <object class="GtkLabel" id="LabelTextAlig">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Text alignment</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ </attributes>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="top_attach">0</property>
+ <property name="width">1</property>
+ <property name="height">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkHBox" id="boxDirection">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="border_width">6</property>
+ <property name="spacing">12</property>
+ <child>
+ <object class="GtkLabel" id="LabelTxtDir">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes">Te_xt direction</property>
+ <property name="use_underline">True</property>
+ <property name="mnemonic_widget">comboTextDirBox</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="svxlo-FrameDirectionListBox" id="comboTextDirBox">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="top_attach">3</property>
+ <property name="width">1</property>
+ <property name="height">1</property>
+ </packing>
+ </child>
+ </object>
+ <object class="GtkAdjustment" id="adjustmentSpinDegrees">
+ <property name="upper">359</property>
+ <property name="step_increment">1</property>
+ <property name="page_increment">10</property>
+ </object>
+ <object class="GtkListStore" id="liststoreHorzAlign">
+ <columns>
+ <!-- column-name gchararray1 -->
+ <column type="gchararray"/>
+ <!-- column-name gint1 -->
+ <column type="gint"/>
+ </columns>
+ <data>
+ <row>
+ <col id="0" translatable="yes">Default</col>
+ <col id="1">0</col>
+ </row>
+ <row>
+ <col id="0" translatable="yes">Left</col>
+ <col id="1">1</col>
+ </row>
+ <row>
+ <col id="0" translatable="yes">Center</col>
+ <col id="1">2</col>
+ </row>
+ <row>
+ <col id="0" translatable="yes">Right</col>
+ <col id="1">3</col>
+ </row>
+ <row>
+ <col id="0" translatable="yes">Justified</col>
+ <col id="1">4</col>
+ </row>
+ <row>
+ <col id="0" translatable="yes">Filled</col>
+ <col id="1">5</col>
+ </row>
+ <row>
+ <col id="0" translatable="yes">Distributed</col>
+ <col id="1">6</col>
+ </row>
+ </data>
+ </object>
+ <object class="GtkListStore" id="liststoreVertAlign">
+ <columns>
+ <!-- column-name gchararray1 -->
+ <column type="gchararray"/>
+ <!-- column-name gint1 -->
+ <column type="gint"/>
+ </columns>
+ <data>
+ <row>
+ <col id="0" translatable="yes">Default</col>
+ <col id="1">0</col>
+ </row>
+ <row>
+ <col id="0" translatable="yes">Top</col>
+ <col id="1">1</col>
+ </row>
+ <row>
+ <col id="0" translatable="yes">Middle</col>
+ <col id="1">2</col>
+ </row>
+ <row>
+ <col id="0" translatable="yes">Bottom</col>
+ <col id="1">3</col>
+ </row>
+ <row>
+ <col id="0" translatable="yes">Justified</col>
+ <col id="1">4</col>
+ </row>
+ <row>
+ <col id="0" translatable="yes">Distributed</col>
+ <col id="1">5</col>
+ </row>
+ </data>
+ </object>
+ <object class="GtkSizeGroup" id="sizegroup1">
+ <property name="mode">both</property>
+ <property name="ignore_hidden">True</property>
+ <widgets>
+ <widget name="spinIndentFrom:0.00pt"/>
+ <widget name="labelHorzAlign"/>
+ <widget name="labelVertAlign"/>
+ <widget name="labelIndent"/>
+ <widget name="comboboxHorzAlign"/>
+ <widget name="comboboxVertAlign"/>
+ </widgets>
+ </object>
+ <object class="GtkSizeGroup" id="sizegroup2">
+ <property name="ignore_hidden">True</property>
+ <widgets>
+ <widget name="checkWrapTextAuto"/>
+ <widget name="checkShrinkFitCellSize"/>
+ <widget name="checkHyphActive"/>
+ <widget name="LabelTxtDir"/>
+ </widgets>
+ </object>
+ <object class="GtkSizeGroup" id="sizegroup3">
+ <widgets>
+ <widget name="orientation"/>
+ <widget name="properties"/>
+ <widget name="alignment"/>
+ </widgets>
+ </object>
+</interface>
diff --git a/extras/source/glade/libreoffice-catalog.xml.in b/extras/source/glade/libreoffice-catalog.xml.in
index f69393d..654ff41 100644
--- a/extras/source/glade/libreoffice-catalog.xml.in
+++ b/extras/source/glade/libreoffice-catalog.xml.in
@@ -123,6 +123,12 @@
<glade-widget-class title="Tree List" name="svtlo-SvTreeListBox"
generic-name="Tree List" parent="GtkTreeView"
icon-name="widget-gtk-treeview"/>
+ <glade-widget-class title="Dial Control" name="svxlo-DialControl"
+ generic-name="Dial Control" parent="GtkLabel"
+ icon-name="widget-gtk-label"/>
+ <glade-widget-class title="Wrap Field" name="svxlo-WrapField"
+ generic-name="Wrap Field" parent="GtkSpinButton"
+ icon-name="widget-gtk-spinbutton"/>
<glade-widget-class title="VclComboBoxText" name="VclComboBoxText"
generic-name="ComboBoxText" parent="GtkComboBoxText"
diff --git a/svx/inc/svx/dialcontrol.hxx b/svx/inc/svx/dialcontrol.hxx
index 0f37a2f..578695d 100644
--- a/svx/inc/svx/dialcontrol.hxx
+++ b/svx/inc/svx/dialcontrol.hxx
@@ -51,6 +51,8 @@
{
public:
explicit DialControl( Window* pParent, const ResId& rResId );
+ explicit DialControl( Window* pParent, WinBits nBits );
+
virtual ~DialControl();
virtual void Paint( const Rectangle& rRect );
diff --git a/svx/inc/svx/wrapfield.hxx b/svx/inc/svx/wrapfield.hxx
index d79185f..c8fa94e 100644
--- a/svx/inc/svx/wrapfield.hxx
+++ b/svx/inc/svx/wrapfield.hxx
@@ -33,6 +33,7 @@
{
public:
explicit WrapField( Window* pParent, const ResId& rResId );
+ explicit WrapField( Window* pParent, WinBits nBits );
protected:
/** Up event with wrap-around functionality. */
diff --git a/svx/source/dialog/dialcontrol.cxx b/svx/source/dialog/dialcontrol.cxx
index 95f67de..2adb5a5 100644
--- a/svx/source/dialog/dialcontrol.cxx
+++ b/svx/source/dialog/dialcontrol.cxx
@@ -25,6 +25,7 @@
#include <vcl/bitmap.hxx>
#include <vcl/field.hxx>
#include <svtools/colorcfg.hxx>
+#include <vcl/builder.hxx>
namespace svx {
@@ -289,10 +290,22 @@
Init( GetOutputSizePixel() );
}
+DialControl::DialControl( Window* pParent, WinBits nBits ) :
+ Control( pParent, nBits ),
+ mpImpl( new DialControl_Impl( *this ) )
+{
+ Init( GetOutputSizePixel() );
+}
+
DialControl::~DialControl()
{
}
+extern "C" SAL_DLLPUBLIC_EXPORT Window* SAL_CALL makeDialControl(Window *pParent, VclBuilder::stringmap &)
+{
+ return new DialControl(pParent, WB_LEFT|WB_DROPDOWN|WB_VCENTER|WB_3DLOOK|WB_TABSTOP);
+}
+
void DialControl::Paint( const Rectangle& )
{
Point aPos;
diff --git a/svx/source/dialog/wrapfield.cxx b/svx/source/dialog/wrapfield.cxx
index 0df7da55..1af54f8 100644
--- a/svx/source/dialog/wrapfield.cxx
+++ b/svx/source/dialog/wrapfield.cxx
@@ -18,6 +18,7 @@
*/
#include "svx/wrapfield.hxx"
+#include <vcl/builder.hxx>
namespace svx {
@@ -26,6 +27,22 @@
{
}
+WrapField::WrapField( Window* pParent, WinBits nBits ) :
+ NumericField( pParent, nBits )
+{
+}
+
+//WrapField::~WrapField()
+//{
+//}
+
+extern "C" SAL_DLLPUBLIC_EXPORT Window* SAL_CALL makeWrapField(Window *pParent, VclBuilder::stringmap &)
+{
+ return new WrapField(pParent, WB_LEFT|WB_DROPDOWN|WB_VCENTER|WB_3DLOOK|WB_TABSTOP);
+}
+
+
+
void WrapField::Up()
{
SetValue( ((GetValue() + GetSpinSize() - GetMin()) % (GetMax() + 1)) + GetMin() );
--
To view, visit https://gerrit.libreoffice.org/2773
To unsubscribe, visit https://gerrit.libreoffice.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I78e4252064671720d41ad3af086b41d2efe06ac1
Gerrit-PatchSet: 1
Gerrit-Project: core
Gerrit-Branch: master
Gerrit-Owner: Olivier Hallot <olivier.hallot at alta.org.br>
More information about the LibreOffice
mailing list