summaryrefslogtreecommitdiff
path: root/sw/source/ui/table/tabledlg.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'sw/source/ui/table/tabledlg.cxx')
-rw-r--r--sw/source/ui/table/tabledlg.cxx343
1 files changed, 170 insertions, 173 deletions
diff --git a/sw/source/ui/table/tabledlg.cxx b/sw/source/ui/table/tabledlg.cxx
index 3a27bb61b007..daedfffe46f1 100644
--- a/sw/source/ui/table/tabledlg.cxx
+++ b/sw/source/ui/table/tabledlg.cxx
@@ -31,7 +31,6 @@
#include <fmtpdsc.hxx>
#include <fmtlsplt.hxx>
-#include <svtools/htmlcfg.hxx>
#include <fmtrowsplt.hxx>
#include <sfx2/htmlmode.hxx>
#include <sfx2/sfxdlg.hxx>
@@ -56,6 +55,8 @@
#include <cmdid.h>
#include <svx/dialogs.hrc>
#include <svx/flagsdef.hxx>
+#include <osl/diagnose.h>
+#include <officecfg/Office/Common.hxx>
#include <com/sun/star/text/HoriOrientation.hpp>
#include <com/sun/star/text/VertOrientation.hpp>
@@ -64,12 +65,12 @@ using namespace ::com::sun::star;
SwFormatTablePage::SwFormatTablePage(weld::Container* pPage, weld::DialogController* pController, const SfxItemSet& rSet)
: SfxTabPage(pPage, pController, "modules/swriter/ui/formattablepage.ui", "FormatTablePage", &rSet)
- , pTableData(nullptr)
- , nSaveWidth(0)
- , nMinTableWidth(MINLAY)
- , bModified(false)
- , bFull(false)
- , bHtmlMode(false)
+ , m_pTableData(nullptr)
+ , m_nSaveWidth(0)
+ , m_nMinTableWidth(MINLAY)
+ , m_bModified(false)
+ , m_bFull(false)
+ , m_bHtmlMode(false)
, m_xNameED(m_xBuilder->weld_entry("name"))
, m_xWidthFT(m_xBuilder->weld_label("widthft"))
, m_xWidthMF(new SwPercentField(m_xBuilder->weld_metric_spin_button("widthmf", FieldUnit::CM)))
@@ -107,12 +108,11 @@ SwFormatTablePage::SwFormatTablePage(weld::Container* pPage, weld::DialogControl
SetExchangeSupport();
- const SfxPoolItem* pItem;
- if(SfxItemState::SET == rSet.GetItemState(SID_HTML_MODE, false, &pItem))
- bHtmlMode = 0 != (static_cast<const SfxUInt16Item*>(pItem)->GetValue() & HTMLMODE_ON);
+ if(const SfxUInt16Item* pModeItem = rSet.GetItemIfSet(SID_HTML_MODE, false))
+ m_bHtmlMode = 0 != (pModeItem->GetValue() & HTMLMODE_ON);
- bool bCTL = SW_MOD()->GetCTLOptions().IsCTLFontEnabled();
- m_xProperties->set_visible(!bHtmlMode && bCTL);
+ bool bCTL = SvtCTLOptions::IsCTLFontEnabled();
+ m_xProperties->set_visible(!m_bHtmlMode && bCTL);
Init();
}
@@ -127,7 +127,7 @@ void SwFormatTablePage::Init()
m_xRightMF->SetMetricFieldMin(-999999);
//handler
- Link<weld::ToggleButton&,void> aLk2 = LINK( this, SwFormatTablePage, AutoClickHdl );
+ Link<weld::Toggleable&,void> aLk2 = LINK( this, SwFormatTablePage, AutoClickHdl );
m_xFullBtn->connect_toggled( aLk2 );
m_xFreeBtn->connect_toggled( aLk2 );
m_xLeftBtn->connect_toggled( aLk2 );
@@ -145,9 +145,9 @@ void SwFormatTablePage::Init()
m_xRelWidthCB->connect_toggled(LINK( this, SwFormatTablePage, RelWidthClickHdl ));
}
-IMPL_LINK( SwFormatTablePage, RelWidthClickHdl, weld::ToggleButton&, rBtn, void )
+IMPL_LINK( SwFormatTablePage, RelWidthClickHdl, weld::Toggleable&, rBtn, void )
{
- OSL_ENSURE(pTableData, "table data not available?");
+ OSL_ENSURE(m_pTableData, "table data not available?");
bool bIsChecked = rBtn.get_active();
sal_Int64 nLeft = m_xLeftMF->DenormalizePercent(m_xLeftMF->get_value(FieldUnit::TWIP));
sal_Int64 nRight = m_xRightMF->DenormalizePercent(m_xRightMF->get_value(FieldUnit::TWIP));
@@ -157,9 +157,9 @@ IMPL_LINK( SwFormatTablePage, RelWidthClickHdl, weld::ToggleButton&, rBtn, void
if (bIsChecked)
{
- m_xWidthMF->SetRefValue(pTableData->GetSpace());
- m_xLeftMF->SetRefValue(pTableData->GetSpace());
- m_xRightMF->SetRefValue(pTableData->GetSpace());
+ m_xWidthMF->SetRefValue(m_pTableData->GetSpace());
+ m_xLeftMF->SetRefValue(m_pTableData->GetSpace());
+ m_xRightMF->SetRefValue(m_pTableData->GetSpace());
m_xLeftMF->SetMetricFieldMin(0); //will be overwritten by the Percentfield
m_xRightMF->SetMetricFieldMin(0); //ditto
m_xLeftMF->SetMetricFieldMax(99);
@@ -176,10 +176,10 @@ IMPL_LINK( SwFormatTablePage, RelWidthClickHdl, weld::ToggleButton&, rBtn, void
m_xRightMF->set_sensitive(bEnable);
m_xRightFT->set_sensitive(bEnable);
}
- bModified = true;
+ m_bModified = true;
}
-IMPL_LINK_NOARG(SwFormatTablePage, AutoClickHdl, weld::ToggleButton&, void)
+IMPL_LINK_NOARG(SwFormatTablePage, AutoClickHdl, weld::Toggleable&, void)
{
bool bRestore = true,
bLeftEnable = false,
@@ -190,9 +190,9 @@ IMPL_LINK_NOARG(SwFormatTablePage, AutoClickHdl, weld::ToggleButton&, void)
{
m_xLeftMF->set_value(0);
m_xRightMF->set_value(0);
- nSaveWidth = static_cast<SwTwips>(m_xWidthMF->DenormalizePercent(m_xWidthMF->get_value(FieldUnit::TWIP)));
- m_xWidthMF->set_value(m_xWidthMF->NormalizePercent(pTableData->GetSpace()), FieldUnit::TWIP);
- bFull = true;
+ m_nSaveWidth = static_cast<SwTwips>(m_xWidthMF->DenormalizePercent(m_xWidthMF->get_value(FieldUnit::TWIP)));
+ m_xWidthMF->set_value(m_xWidthMF->NormalizePercent(m_pTableData->GetSpace()), FieldUnit::TWIP);
+ m_bFull = true;
bRestore = false;
}
else if (m_xLeftBtn->get_active())
@@ -232,15 +232,15 @@ IMPL_LINK_NOARG(SwFormatTablePage, AutoClickHdl, weld::ToggleButton&, void)
m_xRelWidthCB->set_sensitive(bWidthEnable);
}
- if(bFull && bRestore)
+ if(m_bFull && bRestore)
{
//After being switched on automatic, the width was pinned
//in order to restore the width while switching back to.
- bFull = false;
- m_xWidthMF->set_value(m_xWidthMF->NormalizePercent(nSaveWidth ), FieldUnit::TWIP );
+ m_bFull = false;
+ m_xWidthMF->set_value(m_xWidthMF->NormalizePercent(m_nSaveWidth ), FieldUnit::TWIP );
}
ModifyHdl(*m_xWidthMF->get());
- bModified = true;
+ m_bModified = true;
}
void SwFormatTablePage::RightModify()
@@ -279,7 +279,7 @@ void SwFormatTablePage::ModifyHdl(const weld::MetricSpinButton& rEdit, bool bAl
{
if( nCurWidth < MINLAY )
nCurWidth = MINLAY;
- nDiff = nRight + nLeft + nCurWidth - pTableData->GetSpace() ;
+ nDiff = nRight + nLeft + nCurWidth - m_pTableData->GetSpace() ;
//right aligned: only change the left margin
if (m_xRightBtn->get_active())
nLeft -= nDiff;
@@ -301,7 +301,7 @@ void SwFormatTablePage::ModifyHdl(const weld::MetricSpinButton& rEdit, bool bAl
{
nRight += nLeft - nDiff;
nLeft = 0;
- nCurWidth = pTableData->GetSpace();
+ nCurWidth = m_pTableData->GetSpace();
}
}
}
@@ -330,10 +330,10 @@ void SwFormatTablePage::ModifyHdl(const weld::MetricSpinButton& rEdit, bool bAl
if (&rEdit == m_xRightMF->get())
{
- if( nRight + nLeft > pTableData->GetSpace() - MINLAY )
- nRight = pTableData->GetSpace() -nLeft - MINLAY;
+ if( nRight + nLeft > m_pTableData->GetSpace() - MINLAY )
+ nRight = m_pTableData->GetSpace() -nLeft - MINLAY;
- nCurWidth = pTableData->GetSpace() - nLeft - nRight;
+ nCurWidth = m_pTableData->GetSpace() - nLeft - nRight;
}
if (&rEdit == m_xLeftMF->get())
{
@@ -342,22 +342,22 @@ void SwFormatTablePage::ModifyHdl(const weld::MetricSpinButton& rEdit, bool bAl
bool bCenter = m_xCenterBtn->get_active();
if( bCenter )
nRight = nLeft;
- if(nRight + nLeft > pTableData->GetSpace() - MINLAY )
+ if(nRight + nLeft > m_pTableData->GetSpace() - MINLAY )
{
- nLeft = bCenter ? (pTableData->GetSpace() - MINLAY) /2 :
- (pTableData->GetSpace() - MINLAY) - nRight;
- nRight = bCenter ? (pTableData->GetSpace() - MINLAY) /2 : nRight;
+ nLeft = bCenter ? (m_pTableData->GetSpace() - MINLAY) /2 :
+ (m_pTableData->GetSpace() - MINLAY) - nRight;
+ nRight = bCenter ? (m_pTableData->GetSpace() - MINLAY) /2 : nRight;
}
- nCurWidth = pTableData->GetSpace() - nLeft - nRight;
+ nCurWidth = m_pTableData->GetSpace() - nLeft - nRight;
}
else
{
//Upon changes on the left side the right margin will be changed at first,
//thereafter the width.
- nDiff = nRight + nLeft + nCurWidth - pTableData->GetSpace() ;
+ nDiff = nRight + nLeft + nCurWidth - m_pTableData->GetSpace() ;
nRight -= nDiff;
- nCurWidth = pTableData->GetSpace() - nLeft - nRight;
+ nCurWidth = m_pTableData->GetSpace() - nLeft - nRight;
}
}
@@ -377,7 +377,7 @@ void SwFormatTablePage::ModifyHdl(const weld::MetricSpinButton& rEdit, bool bAl
ModifyHdl(rEdit, true);
}
- bModified = true;
+ m_bModified = true;
}
std::unique_ptr<SfxTabPage> SwFormatTablePage::Create(weld::Container* pPage, weld::DialogController* pController, const SfxItemSet* rAttrSet)
@@ -399,7 +399,7 @@ bool SwFormatTablePage::FillItemSet( SfxItemSet* rCoreSet )
else if (m_xBottomMF->has_focus())
ModifyHdl(*m_xBottomMF);
- if (bModified)
+ if (m_bModified)
{
if (m_xBottomMF->get_value_changed_from_saved() ||
m_xTopMF->get_value_changed_from_saved() )
@@ -414,7 +414,7 @@ bool SwFormatTablePage::FillItemSet( SfxItemSet* rCoreSet )
if (m_xNameED->get_value_changed_from_saved())
{
rCoreSet->Put(SfxStringItem(FN_PARAM_TABLE_NAME, m_xNameED->get_text()));
- bModified = true;
+ m_bModified = true;
}
if (m_xTextDirectionLB->get_visible())
@@ -423,19 +423,18 @@ bool SwFormatTablePage::FillItemSet( SfxItemSet* rCoreSet )
{
SvxFrameDirection nDirection = m_xTextDirectionLB->get_active_id();
rCoreSet->Put(SvxFrameDirectionItem(nDirection, RES_FRAMEDIR));
- bModified = true;
+ m_bModified = true;
}
}
- return bModified;
+ return m_bModified;
}
void SwFormatTablePage::Reset( const SfxItemSet* )
{
const SfxItemSet& rSet = GetItemSet();
- const SfxPoolItem* pItem;
- if(bHtmlMode)
+ if(m_bHtmlMode)
{
m_xNameED->set_sensitive(false);
m_xTopFT->hide();
@@ -454,7 +453,7 @@ void SwFormatTablePage::Reset( const SfxItemSet* )
m_xLeftMF->SetMetricFieldRange(m_nOrigLeftMin, m_nOrigLeftMax);
m_xRightMF->SetMetricFieldRange(m_nOrigRightMin, m_nOrigRightMax);
- FieldUnit aMetric = ::GetDfltMetric(bHtmlMode);
+ FieldUnit aMetric = ::GetDfltMetric(m_bHtmlMode);
m_xWidthMF->SetMetric(aMetric);
m_xRightMF->SetMetric(aMetric);
m_xLeftMF->SetMetric(aMetric);
@@ -462,51 +461,51 @@ void SwFormatTablePage::Reset( const SfxItemSet* )
SetFieldUnit(*m_xBottomMF, aMetric);
//Name
- if(SfxItemState::SET == rSet.GetItemState( FN_PARAM_TABLE_NAME, false, &pItem ))
+ if(const SfxStringItem* pNameItem = rSet.GetItemIfSet( FN_PARAM_TABLE_NAME, false ))
{
- m_xNameED->set_text(static_cast<const SfxStringItem*>(pItem)->GetValue());
+ m_xNameED->set_text(pNameItem->GetValue());
m_xNameED->save_value();
}
- if(SfxItemState::SET == rSet.GetItemState( FN_TABLE_REP, false, &pItem ))
+ if(const SwPtrItem* pRepItem = rSet.GetItemIfSet( FN_TABLE_REP, false ))
{
- pTableData = static_cast<SwTableRep*>(static_cast<const SwPtrItem*>( pItem)->GetValue());
+ m_pTableData = static_cast<SwTableRep*>( pRepItem->GetValue());
if (!m_xOrigTableData)
- m_xOrigTableData.reset(new SwTableRep(*pTableData));
+ m_xOrigTableData.reset(new SwTableRep(*m_pTableData));
else // tdf#134925 and tdf#134913, reset back to the original data seen on dialog creation
- *pTableData = *m_xOrigTableData;
+ *m_pTableData = *m_xOrigTableData;
- nMinTableWidth = pTableData->GetColCount() * MINLAY;
+ m_nMinTableWidth = m_pTableData->GetColCount() * MINLAY;
- if(pTableData->GetWidthPercent())
+ if(m_pTableData->GetWidthPercent())
{
m_xRelWidthCB->set_active(true);
RelWidthClickHdl(*m_xRelWidthCB);
- m_xWidthMF->set_value(pTableData->GetWidthPercent(), FieldUnit::PERCENT);
+ m_xWidthMF->set_value(m_pTableData->GetWidthPercent(), FieldUnit::PERCENT);
m_xWidthMF->save_value();
- nSaveWidth = static_cast< SwTwips >(m_xWidthMF->get_value(FieldUnit::PERCENT));
+ m_nSaveWidth = static_cast< SwTwips >(m_xWidthMF->get_value(FieldUnit::PERCENT));
}
else
{
m_xWidthMF->set_value(m_xWidthMF->NormalizePercent(
- pTableData->GetWidth()), FieldUnit::TWIP);
+ m_pTableData->GetWidth()), FieldUnit::TWIP);
m_xWidthMF->save_value();
- nSaveWidth = pTableData->GetWidth();
- nMinTableWidth = std::min( nSaveWidth, nMinTableWidth );
+ m_nSaveWidth = m_pTableData->GetWidth();
+ m_nMinTableWidth = std::min( m_nSaveWidth, m_nMinTableWidth );
}
- m_xWidthMF->SetRefValue(pTableData->GetSpace());
+ m_xWidthMF->SetRefValue(m_pTableData->GetSpace());
m_xLeftMF->set_value(m_xLeftMF->NormalizePercent(
- pTableData->GetLeftSpace()), FieldUnit::TWIP);
+ m_pTableData->GetLeftSpace()), FieldUnit::TWIP);
m_xRightMF->set_value(m_xRightMF->NormalizePercent(
- pTableData->GetRightSpace()), FieldUnit::TWIP);
+ m_pTableData->GetRightSpace()), FieldUnit::TWIP);
m_xLeftMF->save_value();
m_xRightMF->save_value();
bool bSetRight = false, bSetLeft = false;
- switch( pTableData->GetAlign() )
+ switch( m_pTableData->GetAlign() )
{
case text::HoriOrientation::NONE:
m_xFreeBtn->set_active(true);
@@ -561,52 +560,52 @@ void SwFormatTablePage::Reset( const SfxItemSet* )
}
//Margins
- if(SfxItemState::SET == rSet.GetItemState( RES_UL_SPACE, false,&pItem ))
+ if(const SvxULSpaceItem* pSpaceItem = rSet.GetItemIfSet( RES_UL_SPACE, false ))
{
m_xTopMF->set_value(m_xTopMF->normalize(
- static_cast<const SvxULSpaceItem*>(pItem)->GetUpper()), FieldUnit::TWIP);
+ pSpaceItem->GetUpper()), FieldUnit::TWIP);
m_xBottomMF->set_value(m_xBottomMF->normalize(
- static_cast<const SvxULSpaceItem*>(pItem)->GetLower()), FieldUnit::TWIP);
+ pSpaceItem->GetLower()), FieldUnit::TWIP);
m_xTopMF->save_value();
m_xBottomMF->save_value();
}
//Text direction
- if( SfxItemState::SET == rSet.GetItemState( RES_FRAMEDIR, true, &pItem ) )
+ if( const SvxFrameDirectionItem* pDirectionItem = rSet.GetItemIfSet( RES_FRAMEDIR ) )
{
- SvxFrameDirection nVal = static_cast<const SvxFrameDirectionItem*>(pItem)->GetValue();
+ SvxFrameDirection nVal = pDirectionItem->GetValue();
m_xTextDirectionLB->set_active_id(nVal);
m_xTextDirectionLB->save_value();
}
- m_xWidthMF->set_max( 2*m_xWidthMF->NormalizePercent( pTableData->GetSpace() ), FieldUnit::TWIP );
- m_xRightMF->set_max( m_xRightMF->NormalizePercent( pTableData->GetSpace() ), FieldUnit::TWIP );
- m_xLeftMF->set_max( m_xLeftMF->NormalizePercent( pTableData->GetSpace() ), FieldUnit::TWIP );
- m_xWidthMF->set_min( m_xWidthMF->NormalizePercent( nMinTableWidth ), FieldUnit::TWIP );
+ m_xWidthMF->set_max( 2*m_xWidthMF->NormalizePercent( m_pTableData->GetSpace() ), FieldUnit::TWIP );
+ m_xRightMF->set_max( m_xRightMF->NormalizePercent( m_pTableData->GetSpace() ), FieldUnit::TWIP );
+ m_xLeftMF->set_max( m_xLeftMF->NormalizePercent( m_pTableData->GetSpace() ), FieldUnit::TWIP );
+ m_xWidthMF->set_min( m_xWidthMF->NormalizePercent( m_nMinTableWidth ), FieldUnit::TWIP );
}
void SwFormatTablePage::ActivatePage( const SfxItemSet& rSet )
{
- OSL_ENSURE(pTableData, "table data not available?");
+ OSL_ENSURE(m_pTableData, "table data not available?");
if(SfxItemState::SET != rSet.GetItemState( FN_TABLE_REP ))
return;
- SwTwips nCurWidth = text::HoriOrientation::FULL != pTableData->GetAlign() ?
- pTableData->GetWidth() :
- pTableData->GetSpace();
- if(pTableData->GetWidthPercent() != 0 ||
+ SwTwips nCurWidth = text::HoriOrientation::FULL != m_pTableData->GetAlign() ?
+ m_pTableData->GetWidth() :
+ m_pTableData->GetSpace();
+ if(m_pTableData->GetWidthPercent() != 0 ||
nCurWidth == m_xWidthMF->DenormalizePercent(m_xWidthMF->get_value(FieldUnit::TWIP)))
return;
m_xWidthMF->set_value(m_xWidthMF->NormalizePercent(
nCurWidth), FieldUnit::TWIP);
m_xWidthMF->save_value();
- nSaveWidth = nCurWidth;
+ m_nSaveWidth = nCurWidth;
m_xLeftMF->set_value(m_xLeftMF->NormalizePercent(
- pTableData->GetLeftSpace()), FieldUnit::TWIP);
+ m_pTableData->GetLeftSpace()), FieldUnit::TWIP);
m_xLeftMF->save_value();
m_xRightMF->set_value(m_xRightMF->NormalizePercent(
- pTableData->GetRightSpace()), FieldUnit::TWIP);
+ m_pTableData->GetRightSpace()), FieldUnit::TWIP);
m_xRightMF->save_value();
}
@@ -626,7 +625,7 @@ DeactivateRC SwFormatTablePage::DeactivatePage( SfxItemSet* _pSet )
if(_pSet)
{
FillItemSet(_pSet);
- if(bModified)
+ if(m_bModified)
{
SwTwips lLeft = static_cast< SwTwips >(m_xLeftMF->DenormalizePercent(m_xLeftMF->get_value(FieldUnit::TWIP)));
SwTwips lRight = static_cast< SwTwips >(m_xRightMF->DenormalizePercent(m_xRightMF->get_value(FieldUnit::TWIP)));
@@ -634,55 +633,55 @@ DeactivateRC SwFormatTablePage::DeactivatePage( SfxItemSet* _pSet )
if( m_xLeftMF->get_value_changed_from_saved() ||
m_xRightMF->get_value_changed_from_saved() )
{
- pTableData->SetWidthChanged();
- pTableData->SetLeftSpace( lLeft);
- pTableData->SetRightSpace( lRight);
+ m_pTableData->SetWidthChanged();
+ m_pTableData->SetLeftSpace( lLeft);
+ m_pTableData->SetRightSpace( lRight);
}
SwTwips lWidth;
if (m_xRelWidthCB->get_active() && m_xRelWidthCB->get_sensitive())
{
- lWidth = pTableData->GetSpace() - lRight - lLeft;
+ lWidth = m_pTableData->GetSpace() - lRight - lLeft;
const sal_uInt16 nPercentWidth = m_xWidthMF->get_value(FieldUnit::PERCENT);
- if(pTableData->GetWidthPercent() != nPercentWidth)
+ if(m_pTableData->GetWidthPercent() != nPercentWidth)
{
- pTableData->SetWidthPercent(nPercentWidth);
- pTableData->SetWidthChanged();
+ m_pTableData->SetWidthPercent(nPercentWidth);
+ m_pTableData->SetWidthChanged();
}
}
else
{
- pTableData->SetWidthPercent(0);
+ m_pTableData->SetWidthPercent(0);
lWidth = static_cast<SwTwips>(m_xWidthMF->DenormalizePercent(m_xWidthMF->get_value(FieldUnit::TWIP)));
}
- pTableData->SetWidth(lWidth);
+ m_pTableData->SetWidth(lWidth);
SwTwips nColSum = 0;
- for( sal_uInt16 i = 0; i < pTableData->GetColCount(); i++)
+ for( sal_uInt16 i = 0; i < m_pTableData->GetColCount(); i++)
{
- nColSum += pTableData->GetColumns()[i].nWidth;
+ nColSum += m_pTableData->GetColumns()[i].nWidth;
}
- if(nColSum != pTableData->GetWidth())
+ if(nColSum != m_pTableData->GetWidth())
{
SwTwips nMinWidth = std::min( tools::Long(MINLAY),
- static_cast<tools::Long>(pTableData->GetWidth() /
- pTableData->GetColCount() - 1));
- SwTwips nDiff = nColSum - pTableData->GetWidth();
- while ( std::abs(nDiff) > pTableData->GetColCount() + 1 )
+ static_cast<tools::Long>(m_pTableData->GetWidth() /
+ m_pTableData->GetColCount() - 1));
+ SwTwips nDiff = nColSum - m_pTableData->GetWidth();
+ while ( std::abs(nDiff) > m_pTableData->GetColCount() + 1 )
{
- SwTwips nSub = nDiff / pTableData->GetColCount();
- for( sal_uInt16 i = 0; i < pTableData->GetColCount(); i++)
+ SwTwips nSub = nDiff / m_pTableData->GetColCount();
+ for( sal_uInt16 i = 0; i < m_pTableData->GetColCount(); i++)
{
- if(pTableData->GetColumns()[i].nWidth - nMinWidth > nSub)
+ if(m_pTableData->GetColumns()[i].nWidth - nMinWidth > nSub)
{
- pTableData->GetColumns()[i].nWidth -= nSub;
+ m_pTableData->GetColumns()[i].nWidth -= nSub;
nDiff -= nSub;
}
else
{
- nDiff -= pTableData->GetColumns()[i].nWidth - nMinWidth;
- pTableData->GetColumns()[i].nWidth = nMinWidth;
+ nDiff -= m_pTableData->GetColumns()[i].nWidth - nMinWidth;
+ m_pTableData->GetColumns()[i].nWidth = nMinWidth;
}
}
@@ -705,20 +704,20 @@ DeactivateRC SwFormatTablePage::DeactivatePage( SfxItemSet* _pSet )
nAlign = text::HoriOrientation::FULL;
lWidth = lAutoWidth;
}
- if(nAlign != pTableData->GetAlign())
+ if(nAlign != m_pTableData->GetAlign())
{
- pTableData->SetWidthChanged();
- pTableData->SetAlign(nAlign);
+ m_pTableData->SetWidthChanged();
+ m_pTableData->SetAlign(nAlign);
}
- if(pTableData->GetWidth() != lWidth )
+ if(m_pTableData->GetWidth() != lWidth )
{
- pTableData->SetWidthChanged();
- pTableData->SetWidth(
- nAlign == text::HoriOrientation::FULL ? pTableData->GetSpace() : lWidth );
+ m_pTableData->SetWidthChanged();
+ m_pTableData->SetWidth(
+ nAlign == text::HoriOrientation::FULL ? m_pTableData->GetSpace() : lWidth );
}
- if(pTableData->HasWidthChanged())
- _pSet->Put(SwPtrItem(FN_TABLE_REP, pTableData));
+ if(m_pTableData->HasWidthChanged())
+ _pSet->Put(SwPtrItem(FN_TABLE_REP, m_pTableData));
}
}
return DeactivateRC::LeavePage;
@@ -741,14 +740,12 @@ SwTableColumnPage::SwTableColumnPage(weld::Container* pPage, weld::DialogControl
m_xBuilder->weld_metric_spin_button("width2", FieldUnit::CM),
m_xBuilder->weld_metric_spin_button("width3", FieldUnit::CM),
m_xBuilder->weld_metric_spin_button("width4", FieldUnit::CM),
- m_xBuilder->weld_metric_spin_button("width5", FieldUnit::CM),
- m_xBuilder->weld_metric_spin_button("width6", FieldUnit::CM) }
+ m_xBuilder->weld_metric_spin_button("width5", FieldUnit::CM)}
, m_aTextArr { m_xBuilder->weld_label("1"),
m_xBuilder->weld_label("2"),
m_xBuilder->weld_label("3"),
m_xBuilder->weld_label("4"),
- m_xBuilder->weld_label("5"),
- m_xBuilder->weld_label("6") }
+ m_xBuilder->weld_label("5")}
, m_xModifyTableCB(m_xBuilder->weld_check_button("adaptwidth"))
, m_xProportionalCB(m_xBuilder->weld_check_button("adaptcolumns"))
, m_xSpaceFT(m_xBuilder->weld_label("spaceft"))
@@ -764,9 +761,8 @@ SwTableColumnPage::SwTableColumnPage(weld::Container* pPage, weld::DialogControl
// all the pages that currently exist and the rest to come after this one
m_pSizeHdlEvent = Application::PostUserEvent(LINK(this, SwTableColumnPage, SizeHdl));
- const SfxPoolItem* pItem;
- Init(SfxItemState::SET == GetItemSet().GetItemState(SID_HTML_MODE, false, &pItem)
- && static_cast<const SfxUInt16Item*>(pItem)->GetValue() & HTMLMODE_ON);
+ const SfxUInt16Item* pModeItem = GetItemSet().GetItemIfSet(SID_HTML_MODE, false);
+ Init(pModeItem && pModeItem->GetValue() & HTMLMODE_ON);
}
IMPL_LINK_NOARG(SwTableColumnPage, SizeHdl, void*, void)
@@ -790,6 +786,13 @@ IMPL_LINK_NOARG(SwTableColumnPage, SizeHdl, void*, void)
break;
}
}
+
+ // tdf#143142 m_nMetFields has been updated and we need to re-check whether to show right button or not.
+ if (m_nNoOfVisibleCols > m_nMetFields)
+ {
+ m_xUpBtn->set_sensitive(true);
+ }
+
}
SwTableColumnPage::~SwTableColumnPage()
@@ -810,10 +813,9 @@ void SwTableColumnPage::Reset( const SfxItemSet* )
{
const SfxItemSet& rSet = GetItemSet();
- const SfxPoolItem* pItem;
- if(SfxItemState::SET == rSet.GetItemState( FN_TABLE_REP, false, &pItem ))
+ if(const SwPtrItem* pRepItem = rSet.GetItemIfSet( FN_TABLE_REP, false ))
{
- m_pTableData = static_cast<SwTableRep*>(static_cast<const SwPtrItem*>( pItem)->GetValue());
+ m_pTableData = static_cast<SwTableRep*>( pRepItem->GetValue());
if (!m_xOrigTableData)
m_xOrigTableData.reset(new SwTableRep(*m_pTableData));
else // tdf#134925 and tdf#134913, reset back to the original data seen on dialog creation
@@ -872,7 +874,7 @@ void SwTableColumnPage::Init(bool bWeb)
m_xUpBtn->connect_clicked(aClickLk);
m_xDownBtn->connect_clicked(aClickLk);
- Link<weld::ToggleButton&,void> aToggleLk = LINK(this, SwTableColumnPage, ModeHdl);
+ Link<weld::Toggleable&,void> aToggleLk = LINK(this, SwTableColumnPage, ModeHdl);
m_xModifyTableCB->connect_toggled(aToggleLk);
m_xProportionalCB->connect_toggled(aToggleLk);
}
@@ -915,7 +917,7 @@ IMPL_LINK(SwTableColumnPage, ValueChangedHdl, weld::MetricSpinButton&, rEdit, vo
ModifyHdl(&rEdit);
}
-IMPL_LINK(SwTableColumnPage, ModeHdl, weld::ToggleButton&, rBox, void)
+IMPL_LINK(SwTableColumnPage, ModeHdl, weld::Toggleable&, rBox, void)
{
const bool bCheck = rBox.get_active();
if (&rBox == m_xProportionalCB.get())
@@ -1215,7 +1217,7 @@ void SwTableColumnPage::SetVisibleWidth(sal_uInt16 nPos, SwTwips nNewWidth)
SwTableTabDlg::SwTableTabDlg(weld::Window* pParent, const SfxItemSet* pItemSet, SwWrtShell* pSh)
: SfxTabDialogController(pParent, "modules/swriter/ui/tableproperties.ui", "TablePropertiesDialog", pItemSet)
- , pShell(pSh)
+ , m_pShell(pSh)
{
SfxAbstractDialogFactory* pFact = SfxAbstractDialogFactory::Create();
AddTabPage("table", &SwFormatTablePage::Create, nullptr);
@@ -1225,7 +1227,7 @@ SwTableTabDlg::SwTableTabDlg(weld::Window* pParent, const SfxItemSet* pItemSet,
AddTabPage("borders", pFact->GetTabPageCreatorFunc(RID_SVXPAGE_BORDER), nullptr);
}
-void SwTableTabDlg::PageCreated(const OString& rId, SfxTabPage& rPage)
+void SwTableTabDlg::PageCreated(const OUString& rId, SfxTabPage& rPage)
{
SfxAllItemSet aSet(*(GetInputSetImpl()->GetPool()));
if (rId == "background")
@@ -1241,8 +1243,8 @@ void SwTableTabDlg::PageCreated(const OString& rId, SfxTabPage& rPage)
}
else if (rId == "textflow")
{
- static_cast<SwTextFlowPage&>(rPage).SetShell(pShell);
- const FrameTypeFlags eType = pShell->GetFrameType(nullptr,true);
+ static_cast<SwTextFlowPage&>(rPage).SetShell(m_pShell);
+ const FrameTypeFlags eType = m_pShell->GetFrameType(nullptr,true);
if( !(FrameTypeFlags::BODY & eType) )
static_cast<SwTextFlowPage&>(rPage).DisablePageBreak();
}
@@ -1250,9 +1252,9 @@ void SwTableTabDlg::PageCreated(const OString& rId, SfxTabPage& rPage)
SwTextFlowPage::SwTextFlowPage(weld::Container* pPage, weld::DialogController* pController, const SfxItemSet& rSet)
: SfxTabPage(pPage, pController, "modules/swriter/ui/tabletextflowpage.ui", "TableTextFlowPage", &rSet)
- , pShell(nullptr)
- , bPageBreak(true)
- , bHtmlMode(false)
+ , m_pShell(nullptr)
+ , m_bPageBreak(true)
+ , m_bHtmlMode(false)
, m_xPgBrkCB(m_xBuilder->weld_check_button("break"))
, m_xPgBrkRB(m_xBuilder->weld_radio_button("page"))
, m_xColBrkRB(m_xBuilder->weld_radio_button("column"))
@@ -1288,9 +1290,8 @@ SwTextFlowPage::SwTextFlowPage(weld::Container* pPage, weld::DialogController* p
LINK(this, SwTextFlowPage, SplitHdl_Impl));
m_xHeadLineCB->connect_toggled(LINK(this, SwTextFlowPage, HeadLineCBClickHdl));
- const SfxPoolItem *pItem;
- if(SfxItemState::SET == rSet.GetItemState( SID_HTML_MODE, false,&pItem )
- && static_cast<const SfxUInt16Item*>(pItem)->GetValue() & HTMLMODE_ON)
+ const SfxUInt16Item *pModeItem = rSet.GetItemIfSet( SID_HTML_MODE, false );
+ if(pModeItem && pModeItem->GetValue() & HTMLMODE_ON)
{
m_xKeepCB->hide();
m_xSplitCB->hide();
@@ -1348,7 +1349,7 @@ bool SwTextFlowPage::FillItemSet( SfxItemSet* rSet )
{
sPage = m_xPageCollLB->get_active_text();
}
- sal_uInt16 nPgNum = static_cast<sal_uInt16>(m_xPageNoNF->get_value());
+ sal_uInt16 nPgNum = o3tl::narrowing<sal_uInt16>(m_xPageNoNF->get_value());
bool const usePageNo(bState && m_xPageNoCB->get_active());
std::optional<sal_uInt16> const oPageNum(
usePageNo ? nPgNum : std::optional<sal_Int16>());
@@ -1356,7 +1357,7 @@ bool SwTextFlowPage::FillItemSet( SfxItemSet* rSet )
|| (pDesc->GetPageDesc()->GetName() != sPage)
|| (pDesc->GetNumOffset() != oPageNum))
{
- SwFormatPageDesc aFormat( pShell->FindPageDescByName( sPage, true ) );
+ SwFormatPageDesc aFormat( m_pShell->FindPageDescByName( sPage, true ) );
aFormat.SetNumOffset(oPageNum);
bModified |= nullptr != rSet->Put( aFormat );
bPageItemPut = bState;
@@ -1426,17 +1427,15 @@ bool SwTextFlowPage::FillItemSet( SfxItemSet* rSet )
void SwTextFlowPage::Reset( const SfxItemSet* rSet )
{
- const SfxPoolItem* pItem;
- SvxHtmlOptions& rHtmlOpt = SvxHtmlOptions::Get();
- bool bFlowAllowed = !bHtmlMode || rHtmlOpt.IsPrintLayoutExtension();
+ bool bFlowAllowed = !m_bHtmlMode || officecfg::Office::Common::Filter::HTML::Export::PrintLayout::get();
if(bFlowAllowed)
{
//Inserting of the existing page templates in the list box
- const size_t nCount = pShell->GetPageDescCnt();
+ const size_t nCount = m_pShell->GetPageDescCnt();
for( size_t i = 0; i < nCount; ++i)
{
- const SwPageDesc &rPageDesc = pShell->GetPageDesc(i);
+ const SwPageDesc &rPageDesc = m_pShell->GetPageDesc(i);
m_xPageCollLB->append_text(rPageDesc.GetName());
}
@@ -1448,14 +1447,14 @@ void SwTextFlowPage::Reset( const SfxItemSet* rSet )
m_xPageCollLB->append_text(aFormatName);
}
- if(SfxItemState::SET == rSet->GetItemState( RES_KEEP, false, &pItem ))
+ if(const SvxFormatKeepItem* pKeepItem = rSet->GetItemIfSet( RES_KEEP, false ))
{
- m_xKeepCB->set_active( static_cast<const SvxFormatKeepItem*>(pItem)->GetValue() );
+ m_xKeepCB->set_active( pKeepItem->GetValue() );
m_xKeepCB->save_state();
}
- if(SfxItemState::SET == rSet->GetItemState( RES_LAYOUT_SPLIT, false, &pItem ))
+ if(const SwFormatLayoutSplit* pSplitItem = rSet->GetItemIfSet( RES_LAYOUT_SPLIT, false ))
{
- m_xSplitCB->set_active( static_cast<const SwFormatLayoutSplit*>(pItem)->GetValue() );
+ m_xSplitCB->set_active( pSplitItem->GetValue() );
}
else
m_xSplitCB->set_active(true);
@@ -1463,22 +1462,22 @@ void SwTextFlowPage::Reset( const SfxItemSet* rSet )
m_xSplitCB->save_state();
SplitHdl_Impl(*m_xSplitCB);
- if(SfxItemState::SET == rSet->GetItemState( RES_ROW_SPLIT, false, &pItem ))
+ if(const SwFormatRowSplit* pSplitItem = rSet->GetItemIfSet( RES_ROW_SPLIT, false ))
{
- m_xSplitRowCB->set_active( static_cast<const SwFormatRowSplit*>(pItem)->GetValue() );
+ m_xSplitRowCB->set_active( pSplitItem->GetValue() );
}
else
m_xSplitRowCB->set_state(TRISTATE_INDET);
m_xSplitRowCB->save_state();
- if(bPageBreak)
+ if(m_bPageBreak)
{
- if(SfxItemState::SET == rSet->GetItemState( RES_PAGEDESC, false, &pItem ))
+ if(const SwFormatPageDesc* pPageDescItem = rSet->GetItemIfSet( RES_PAGEDESC, false ))
{
OUString sPageDesc;
- const SwPageDesc* pDesc = static_cast<const SwFormatPageDesc*>(pItem)->GetPageDesc();
+ const SwPageDesc* pDesc = pPageDescItem->GetPageDesc();
- ::std::optional<sal_uInt16> oNumOffset = static_cast<const SwFormatPageDesc*>(pItem)->GetNumOffset();
+ ::std::optional<sal_uInt16> oNumOffset = pPageDescItem->GetNumOffset();
if (oNumOffset)
{
m_xPageNoCB->set_active(true);
@@ -1517,9 +1516,8 @@ void SwTextFlowPage::Reset( const SfxItemSet* rSet )
}
}
- if(SfxItemState::SET == rSet->GetItemState( RES_BREAK, false, &pItem ))
+ if(const SvxFormatBreakItem* pPageBreak = rSet->GetItemIfSet( RES_BREAK, false ))
{
- const SvxFormatBreakItem* pPageBreak = static_cast<const SvxFormatBreakItem*>(pItem);
SvxBreak eBreak = pPageBreak->GetBreak();
if ( eBreak != SvxBreak::NONE )
@@ -1580,9 +1578,9 @@ void SwTextFlowPage::Reset( const SfxItemSet* rSet )
m_xPageCollLB->set_sensitive(false);
}
- if(SfxItemState::SET == rSet->GetItemState( FN_PARAM_TABLE_HEADLINE, false, &pItem ))
+ if(const SfxUInt16Item* pHeadlineItem = rSet->GetItemIfSet( FN_PARAM_TABLE_HEADLINE, false ))
{
- sal_uInt16 nRep = static_cast<const SfxUInt16Item*>(pItem)->GetValue();
+ sal_uInt16 nRep = pHeadlineItem->GetValue();
m_xHeadLineCB->set_active(nRep > 0);
m_xHeadLineCB->save_state();
m_xRepeatHeaderNF->set_value(nRep);
@@ -1591,14 +1589,13 @@ void SwTextFlowPage::Reset( const SfxItemSet* rSet )
}
if ( rSet->GetItemState(FN_TABLE_BOX_TEXTORIENTATION) > SfxItemState::DEFAULT )
{
- SvxFrameDirection nDirection =
- static_cast<const SvxFrameDirectionItem&>(rSet->Get(FN_TABLE_BOX_TEXTORIENTATION)).GetValue();
+ SvxFrameDirection nDirection = rSet->Get(FN_TABLE_BOX_TEXTORIENTATION).GetValue();
m_xTextDirectionLB->set_active_id(OUString::number(static_cast<sal_uInt32>(nDirection)));
}
if ( rSet->GetItemState(FN_TABLE_SET_VERT_ALIGN) > SfxItemState::DEFAULT )
{
- sal_uInt16 nVert = static_cast<const SfxUInt16Item&>(rSet->Get(FN_TABLE_SET_VERT_ALIGN)).GetValue();
+ sal_uInt16 nVert = rSet->Get(FN_TABLE_SET_VERT_ALIGN).GetValue();
sal_uInt16 nPos = 0;
switch(nVert)
{
@@ -1626,16 +1623,16 @@ void SwTextFlowPage::Reset( const SfxItemSet* rSet )
void SwTextFlowPage::SetShell(SwWrtShell* pSh)
{
- pShell = pSh;
- bHtmlMode = 0 != (::GetHtmlMode(pShell->GetView().GetDocShell()) & HTMLMODE_ON);
- if(bHtmlMode)
+ m_pShell = pSh;
+ m_bHtmlMode = 0 != (::GetHtmlMode(m_pShell->GetView().GetDocShell()) & HTMLMODE_ON);
+ if(m_bHtmlMode)
{
m_xPageNoNF->set_sensitive(false);
m_xPageNoCB->set_sensitive(false);
}
}
-IMPL_LINK_NOARG(SwTextFlowPage, PageBreakHdl_Impl, weld::ToggleButton&, void)
+IMPL_LINK_NOARG(SwTextFlowPage, PageBreakHdl_Impl, weld::Toggleable&, void)
{
if (m_xPgBrkCB->get_active())
{
@@ -1650,7 +1647,7 @@ IMPL_LINK_NOARG(SwTextFlowPage, PageBreakHdl_Impl, weld::ToggleButton&, void)
bool bEnable = m_xPageCollCB->get_active() && m_xPageCollLB->get_count();
m_xPageCollLB->set_sensitive(bEnable);
- if (!bHtmlMode)
+ if (!m_bHtmlMode)
{
m_xPageNoCB->set_sensitive(bEnable);
m_xPageNoNF->set_sensitive(bEnable && m_xPageNoCB->get_active());
@@ -1671,7 +1668,7 @@ IMPL_LINK_NOARG(SwTextFlowPage, PageBreakHdl_Impl, weld::ToggleButton&, void)
}
}
-IMPL_LINK_NOARG(SwTextFlowPage, ApplyCollClickHdl_Impl, weld::ToggleButton&, void)
+IMPL_LINK_NOARG(SwTextFlowPage, ApplyCollClickHdl_Impl, weld::Toggleable&, void)
{
bool bEnable = false;
if (m_xPageCollCB->get_active() && m_xPageCollLB->get_count())
@@ -1684,14 +1681,14 @@ IMPL_LINK_NOARG(SwTextFlowPage, ApplyCollClickHdl_Impl, weld::ToggleButton&, voi
m_xPageCollLB->set_active(-1);
}
m_xPageCollLB->set_sensitive(bEnable);
- if (!bHtmlMode)
+ if (!m_bHtmlMode)
{
m_xPageNoCB->set_sensitive(bEnable);
m_xPageNoNF->set_sensitive(bEnable && m_xPageNoCB->get_active());
}
}
-IMPL_LINK_NOARG(SwTextFlowPage, PageBreakPosHdl_Impl, weld::ToggleButton&, void)
+IMPL_LINK_NOARG(SwTextFlowPage, PageBreakPosHdl_Impl, weld::Toggleable&, void)
{
if (!m_xPgBrkCB->get_active())
return;
@@ -1703,7 +1700,7 @@ IMPL_LINK_NOARG(SwTextFlowPage, PageBreakPosHdl_Impl, weld::ToggleButton&, void)
bool bEnable = m_xPageCollCB->get_active() && m_xPageCollLB->get_count();
m_xPageCollLB->set_sensitive(bEnable);
- if (!bHtmlMode)
+ if (!m_bHtmlMode)
{
m_xPageNoCB->set_sensitive(bEnable);
m_xPageNoNF->set_sensitive(bEnable && m_xPageNoCB->get_active());
@@ -1719,7 +1716,7 @@ IMPL_LINK_NOARG(SwTextFlowPage, PageBreakPosHdl_Impl, weld::ToggleButton&, void)
}
}
-IMPL_LINK_NOARG(SwTextFlowPage, PageBreakTypeHdl_Impl, weld::ToggleButton&, void)
+IMPL_LINK_NOARG(SwTextFlowPage, PageBreakTypeHdl_Impl, weld::Toggleable&, void)
{
if (m_xColBrkRB->get_active() || m_xPgBrkAfterRB->get_active())
{
@@ -1733,24 +1730,24 @@ IMPL_LINK_NOARG(SwTextFlowPage, PageBreakTypeHdl_Impl, weld::ToggleButton&, void
PageBreakPosHdl_Impl(*m_xPgBrkBeforeRB);
}
-IMPL_LINK_NOARG(SwTextFlowPage, PageNoClickHdl_Impl, weld::ToggleButton&, void)
+IMPL_LINK_NOARG(SwTextFlowPage, PageNoClickHdl_Impl, weld::Toggleable&, void)
{
m_xPageNoNF->set_sensitive(m_xPageNoCB->get_active());
}
-IMPL_LINK(SwTextFlowPage, SplitHdl_Impl, weld::ToggleButton&, rBox, void)
+IMPL_LINK(SwTextFlowPage, SplitHdl_Impl, weld::Toggleable&, rBox, void)
{
m_xSplitRowCB->set_sensitive(rBox.get_active());
}
-IMPL_LINK_NOARG(SwTextFlowPage, HeadLineCBClickHdl, weld::ToggleButton&, void)
+IMPL_LINK_NOARG(SwTextFlowPage, HeadLineCBClickHdl, weld::Toggleable&, void)
{
m_xRepeatHeaderCombo->set_sensitive(m_xHeadLineCB->get_active());
}
void SwTextFlowPage::DisablePageBreak()
{
- bPageBreak = false;
+ m_bPageBreak = false;
m_xPgBrkCB->set_sensitive(false);
m_xPgBrkRB->set_sensitive(false);
m_xColBrkRB->set_sensitive(false);