40#include <svx/strings.hrc>
48#include "../../uibase/table/tablepg.hxx"
57#include <svx/dialogs.hrc>
59#include <osl/diagnose.h>
61#include <com/sun/star/text/HoriOrientation.hpp>
62#include <com/sun/star/text/VertOrientation.hpp>
67 :
SfxTabPage(pPage, pController,
"modules/swriter/ui/formattablepage.ui",
"FormatTablePage", &
rSet)
68 , m_pTableData(nullptr)
74 , m_xNameED(m_xBuilder->weld_entry(
"name"))
75 , m_xWidthFT(m_xBuilder->weld_label(
"widthft"))
77 , m_xRelWidthCB(m_xBuilder->weld_check_button(
"relwidth"))
78 , m_xFullBtn(m_xBuilder->weld_radio_button(
"full"))
79 , m_xLeftBtn(m_xBuilder->weld_radio_button(
"left"))
80 , m_xFromLeftBtn(m_xBuilder->weld_radio_button(
"fromleft"))
81 , m_xRightBtn(m_xBuilder->weld_radio_button(
"right"))
82 , m_xCenterBtn(m_xBuilder->weld_radio_button(
"center"))
83 , m_xFreeBtn(m_xBuilder->weld_radio_button(
"free"))
84 , m_xLeftFT(m_xBuilder->weld_label(
"leftft"))
86 , m_xRightFT(m_xBuilder->weld_label(
"rightft"))
88 , m_xTopFT(m_xBuilder->weld_label(
"aboveft"))
89 , m_xTopMF(m_xBuilder->weld_metric_spin_button(
"abovemf",
FieldUnit::
CM))
90 , m_xBottomFT(m_xBuilder->weld_label(
"belowft"))
91 , m_xBottomMF(m_xBuilder->weld_metric_spin_button(
"belowmf",
FieldUnit::
CM))
92 , m_xTextDirectionLB(new
svx::FrameDirectionListBox(m_xBuilder->weld_combo_box(
"textdirection")))
93 , m_xProperties(m_xBuilder->weld_widget(
"properties"))
139 m_xTopMF->connect_value_changed(aLk);
150 OSL_ENSURE(m_pTableData,
"table data not available?");
151 bool bIsChecked = rBtn.get_active();
152 sal_Int64 nLeft = m_xLeftMF->DenormalizePercent(m_xLeftMF->get_value(FieldUnit::TWIP));
153 sal_Int64 nRight = m_xRightMF->DenormalizePercent(m_xRightMF->get_value(FieldUnit::TWIP));
154 m_xWidthMF->ShowPercent(bIsChecked);
155 m_xLeftMF->ShowPercent(bIsChecked);
156 m_xRightMF->ShowPercent(bIsChecked);
160 m_xWidthMF->SetRefValue(m_pTableData->GetSpace());
161 m_xLeftMF->SetRefValue(m_pTableData->GetSpace());
162 m_xRightMF->SetRefValue(m_pTableData->GetSpace());
163 m_xLeftMF->SetMetricFieldMin(0);
164 m_xRightMF->SetMetricFieldMin(0);
165 m_xLeftMF->SetMetricFieldMax(99);
166 m_xRightMF->SetMetricFieldMax(99);
167 m_xLeftMF->set_value(m_xLeftMF->NormalizePercent(nLeft ), FieldUnit::TWIP );
168 m_xRightMF->set_value(m_xRightMF->NormalizePercent(nRight ), FieldUnit::TWIP );
171 ModifyHdl(*m_xLeftMF->get());
173 if (m_xFreeBtn->get_active())
175 bool bEnable = !rBtn.get_active();
176 m_xRightMF->set_sensitive(bEnable);
177 m_xRightFT->set_sensitive(bEnable);
184 bool bRestore =
true,
189 if (m_xFullBtn->get_active())
191 m_xLeftMF->set_value(0);
192 m_xRightMF->set_value(0);
193 m_nSaveWidth =
static_cast<SwTwips>(m_xWidthMF->DenormalizePercent(m_xWidthMF->get_value(FieldUnit::TWIP)));
194 m_xWidthMF->set_value(m_xWidthMF->NormalizePercent(m_pTableData->GetSpace()), FieldUnit::TWIP);
198 else if (m_xLeftBtn->get_active())
200 bRightEnable = bWidthEnable =
true;
201 m_xLeftMF->set_value(0);
203 else if (m_xFromLeftBtn->get_active())
205 bLeftEnable = bWidthEnable =
true;
206 m_xRightMF->set_value(0);
208 else if (m_xRightBtn->get_active())
210 bLeftEnable = bWidthEnable =
true;
211 m_xRightMF->set_value(0);
213 else if (m_xCenterBtn->get_active())
215 bLeftEnable = bWidthEnable =
true;
217 else if (m_xFreeBtn->get_active())
224 m_xLeftMF->set_sensitive(bLeftEnable);
225 m_xLeftFT->set_sensitive(bLeftEnable);
226 m_xWidthMF->set_sensitive(bWidthEnable);
227 m_xWidthFT->set_sensitive(bWidthEnable);
230 m_xRightMF->set_sensitive(bRightEnable);
231 m_xRightFT->set_sensitive(bRightEnable);
232 m_xRelWidthCB->set_sensitive(bWidthEnable);
235 if(m_bFull && bRestore)
240 m_xWidthMF->set_value(m_xWidthMF->NormalizePercent(m_nSaveWidth ), FieldUnit::TWIP );
242 ModifyHdl(*m_xWidthMF->get());
265 if (m_xRightMF->get() == &rEdit)
273 SwTwips nPrevWidth = nCurWidth;
292 if( nRight >= nDiff )
302 nRight += nLeft - nDiff;
313 nDiff += nLeft + nRight;
367 if (nCurWidth != nPrevWidth )
376 if (&rEdit ==
m_xWidthMF->get() && !bAllowInconsistencies)
385 return std::make_unique<SwFormatTablePage>(pPage, pController, *rAttrSet);
405 m_xTopMF->get_value_changed_from_saved() )
410 rCoreSet->
Put(aULSpace);
414 if (
m_xNameED->get_value_changed_from_saved())
466 m_xNameED->set_text(pNameItem->GetValue());
507 bool bSetRight =
false, bSetLeft =
false;
515 case text::HoriOrientation::FULL:
517 bSetRight = bSetLeft =
true;
524 case text::HoriOrientation::LEFT:
530 case text::HoriOrientation::LEFT_AND_WIDTH :
536 case text::HoriOrientation::RIGHT:
542 case text::HoriOrientation::CENTER:
566 pSpaceItem->GetUpper()), FieldUnit::TWIP);
568 pSpaceItem->GetLower()), FieldUnit::TWIP);
601 nCurWidth), FieldUnit::TWIP);
615 OUString sTableName =
m_xNameED->get_text();
616 if(sTableName.indexOf(
' ') != -1)
619 VclMessageType::Info, VclButtonsType::Ok,
620 SwResId(STR_WRONG_TABLENAME)));
623 return DeactivateRC::KeepPage;
633 if(
m_xLeftMF->get_value_changed_from_saved() ||
645 const sal_uInt16 nPercentWidth =
m_xWidthMF->get_value(FieldUnit::PERCENT);
691 sal_Int16 nAlign = 0;
693 nAlign = text::HoriOrientation::RIGHT;
695 nAlign = text::HoriOrientation::LEFT;
697 nAlign = text::HoriOrientation::LEFT_AND_WIDTH;
699 nAlign = text::HoriOrientation::CENTER;
704 nAlign = text::HoriOrientation::FULL;
723 return DeactivateRC::LeavePage;
728 :
SfxTabPage(pPage, pController,
"modules/swriter/ui/tablecolumnpage.ui",
"TableColumnPage", &
rSet)
729 , m_pTableData(nullptr)
730 , m_pSizeHdlEvent(nullptr)
735 , m_nNoOfVisibleCols(0)
737 , m_bModifyTable(false)
738 , m_bPercentMode(false)
739 , m_aFieldArr { m_xBuilder->weld_metric_spin_button(
"width1",
FieldUnit::
CM),
740 m_xBuilder->weld_metric_spin_button(
"width2",
FieldUnit::
CM),
741 m_xBuilder->weld_metric_spin_button(
"width3",
FieldUnit::
CM),
742 m_xBuilder->weld_metric_spin_button(
"width4",
FieldUnit::
CM),
743 m_xBuilder->weld_metric_spin_button(
"width5",
FieldUnit::
CM)}
744 , m_aTextArr { m_xBuilder->weld_label(
"1"),
745 m_xBuilder->weld_label(
"2"),
746 m_xBuilder->weld_label(
"3"),
747 m_xBuilder->weld_label(
"4"),
748 m_xBuilder->weld_label(
"5")}
749 , m_xModifyTableCB(m_xBuilder->weld_check_button(
"adaptwidth"))
750 , m_xProportionalCB(m_xBuilder->weld_check_button(
"adaptcolumns"))
751 , m_xSpaceFT(m_xBuilder->weld_label(
"spaceft"))
752 , m_xSpaceSFT(m_xBuilder->weld_label(
"space"))
753 , m_xSpaceED(m_xBuilder->weld_metric_spin_button(
"spacefmt",
FieldUnit::
CM))
754 , m_xUpBtn(m_xBuilder->weld_button(
"next"))
755 , m_xDownBtn(m_xBuilder->weld_button(
"back"))
770 m_pSizeHdlEvent =
nullptr;
778 m_aFieldArr[
i].show();
779 m_aTextArr[
i]->show();
783 m_nMetFields =
i + 1;
784 m_aTextArr[
i]->set_grid_width(1);
785 m_xUpBtn->set_grid_left_attach(m_nMetFields * 2 - 1);
791 if (m_nNoOfVisibleCols > m_nMetFields)
793 m_xUpBtn->set_sensitive(
true);
809 return std::make_unique<SwTableColumnPage>(pPage, pController, *rAttrSet);
874 m_xUpBtn->connect_clicked(aClickLk);
885 if (&rControl == m_xDownBtn.get())
887 if(m_aValueTable[0] > 0)
889 for(sal_uInt16 & rn : m_aValueTable)
893 if (&rControl == m_xUpBtn.get())
895 if( m_aValueTable[ m_nMetFields -1 ] < m_nNoOfVisibleCols -1 )
897 for(sal_uInt16 & rn : m_aValueTable)
901 for( sal_uInt16
i = 0; (
i < m_nNoOfVisibleCols ) && (
i < m_nMetFields);
i++ )
903 OUString sEntry(
'~');
904 OUString sIndex = OUString::number( m_aValueTable[
i] + 1 );
906 m_aTextArr[
i]->set_label(sEntry);
909 m_xDownBtn->set_sensitive(m_aValueTable[0] > 0);
910 m_xUpBtn->set_sensitive(m_aValueTable[ m_nMetFields -1 ] < m_nNoOfVisibleCols -1 );
922 const bool bCheck = rBox.get_active();
923 if (&rBox == m_xProportionalCB.get())
926 m_xModifyTableCB->set_active(
true);
927 m_xModifyTableCB->set_sensitive(!bCheck && m_bModifyTable);
965 OSL_ENSURE(
false,
"cannot happen.");
987 if (!bModifyTableChecked && !bProp)
990 sal_uInt16 nLoopCount = 0;
1023 OSL_ENSURE(nDiff >= 0,
"nDiff < 0 cannot be here!");
1027 else if (bModifyTableChecked && !bProp)
1031 OSL_ENSURE(nDiff <= m_pTableData->GetSpace() -
m_nTableWidth,
"wrong maximum" );
1033 if(nDiff > nActSpace)
1043 else if (bModifyTableChecked && bProp)
1055 if ( nNewColWidth <
MINLAY )
1058 nNewTableSize += nNewColWidth;
1091 m_nTableWidth = text::HoriOrientation::FULL == nTableAlign ?
1098 text::HoriOrientation::FULL == nTableAlign ||
1134 case text::HoriOrientation::RIGHT:
1137 case text::HoriOrientation::LEFT:
1144 (-nDiff2 < m_pTableData->GetRightSpace() && - nDiff2 < m_pTableData->GetLeftSpace()))
1164 case text::HoriOrientation::CENTER:
1168 case text::HoriOrientation::LEFT_AND_WIDTH :
1181 return DeactivateRC::LeavePage;
1195 OSL_ENSURE(
i <
m_nNoOfCols,
"Array index out of range");
1211 OSL_ENSURE(
i <
m_nNoOfCols,
"Array index out of range");
1219 :
SfxTabDialogController(pParent,
"modules/swriter/ui/tableproperties.ui",
"TablePropertiesDialog", pItemSet)
1233 if (rId ==
"background")
1236 aSet.
Put (
SfxUInt32Item(SID_FLAG_TYPE,
static_cast<sal_uInt32
>(nFlagType)));
1239 else if (rId ==
"borders")
1241 aSet.
Put (
SfxUInt16Item(SID_SWMODE_TYPE,
static_cast<sal_uInt16
>(SwBorderModes::TABLE)));
1244 else if (rId ==
"textflow")
1254 :
SfxTabPage(pPage, pController,
"modules/swriter/ui/tabletextflowpage.ui",
"TableTextFlowPage", &
rSet)
1256 , m_bPageBreak(true)
1257 , m_bHtmlMode(false)
1258 , m_xPgBrkCB(m_xBuilder->weld_check_button(
"break"))
1259 , m_xPgBrkRB(m_xBuilder->weld_radio_button(
"page"))
1260 , m_xColBrkRB(m_xBuilder->weld_radio_button(
"column"))
1261 , m_xPgBrkBeforeRB(m_xBuilder->weld_radio_button(
"before"))
1262 , m_xPgBrkAfterRB(m_xBuilder->weld_radio_button(
"after"))
1263 , m_xPageCollCB(m_xBuilder->weld_check_button(
"pagestyle"))
1264 , m_xPageCollLB(m_xBuilder->weld_combo_box(
"pagestylelb"))
1265 , m_xPageNoCB(m_xBuilder->weld_check_button(
"pagenoft"))
1266 , m_xPageNoNF(m_xBuilder->weld_spin_button(
"pagenonf"))
1267 , m_xSplitCB(m_xBuilder->weld_check_button(
"split"))
1268 , m_xSplitRowCB(m_xBuilder->weld_check_button(
"splitrow"))
1269 , m_xKeepCB(m_xBuilder->weld_check_button(
"keep"))
1270 , m_xHeadLineCB(m_xBuilder->weld_check_button(
"headline"))
1271 , m_xRepeatHeaderCombo(m_xBuilder->weld_widget(
"repeatheader"))
1272 , m_xRepeatHeaderNF(m_xBuilder->weld_spin_button(
"repeatheadernf"))
1273 , m_xTextDirectionLB(m_xBuilder->weld_combo_box(
"textorientation"))
1274 , m_xVertOrientLB(m_xBuilder->weld_combo_box(
"vertorient"))
1311 return std::make_unique<SwTextFlowPage>(pPage, pController, *rAttrSet);
1316 bool bModified =
false;
1322 bModified |=
nullptr !=
rSet->
Put(
1325 if (
m_xKeepCB->get_state_changed_from_saved())
1328 if (
m_xSplitCB->get_state_changed_from_saved())
1340 bool bPageItemPut =
false;
1342 || (bState &&
m_xPageCollLB->get_value_changed_from_saved())
1353 bool const usePageNo(bState &&
m_xPageNoCB->get_active());
1354 std::optional<sal_uInt16>
const oPageNum(
1355 usePageNo ?
nPgNum : std::optional<sal_Int16>());
1362 bModified |=
nullptr !=
rSet->
Put( aFormat );
1363 bPageItemPut = bState;
1367 if ( !bPageItemPut &&
1371 m_xPgBrkRB->get_state_changed_from_saved() ))
1382 aBreak.SetValue( SvxBreak::PageBefore );
1384 aBreak.SetValue( SvxBreak::PageAfter );
1389 aBreak.SetValue( SvxBreak::ColumnBefore );
1391 aBreak.SetValue( SvxBreak::ColumnAfter );
1396 aBreak.SetValue( SvxBreak::NONE );
1399 if ( !pBreak || !( *pBreak == aBreak ) )
1401 bModified |=
nullptr !=
rSet->
Put( aBreak );
1413 sal_uInt16 nOrient = USHRT_MAX;
1417 case 1 : nOrient = text::VertOrientation::CENTER;
break;
1418 case 2 : nOrient = text::VertOrientation::BOTTOM;
break;
1420 if (nOrient != USHRT_MAX)
1442 OUString aFormatName;
1452 m_xKeepCB->set_active( pKeepItem->GetValue() );
1457 m_xSplitCB->set_active( pSplitItem->GetValue() );
1478 const SwPageDesc* pDesc = pPageDescItem->GetPageDesc();
1480 ::std::optional<sal_uInt16> oNumOffset = pPageDescItem->GetNumOffset();
1495 if (!sPageDesc.isEmpty() &&
m_xPageCollLB->find_text(sPageDesc) != -1)
1521 SvxBreak eBreak = pPageBreak->GetBreak();
1523 if ( eBreak != SvxBreak::NONE )
1533 case SvxBreak::PageBefore:
1539 case SvxBreak::PageAfter:
1545 case SvxBreak::ColumnBefore:
1551 case SvxBreak::ColumnAfter:
1583 sal_uInt16 nRep = pHeadlineItem->GetValue();
1593 m_xTextDirectionLB->set_active_id(OUString::number(
static_cast<sal_uInt32
>(nDirection)));
1599 sal_uInt16
nPos = 0;
1603 case text::VertOrientation::CENTER:
nPos = 1;
break;
1604 case text::VertOrientation::BOTTOM:
nPos = 2;
break;
1637 if (m_xPgBrkCB->get_active())
1639 m_xPgBrkRB->set_sensitive(
true);
1640 m_xColBrkRB->set_sensitive(
true);
1641 m_xPgBrkBeforeRB->set_sensitive(
true);
1642 m_xPgBrkAfterRB->set_sensitive(
true);
1644 if (m_xPgBrkRB->get_active() && m_xPgBrkBeforeRB->get_active())
1646 m_xPageCollCB->set_sensitive(
true);
1648 bool bEnable = m_xPageCollCB->get_active() && m_xPageCollLB->get_count();
1649 m_xPageCollLB->set_sensitive(bEnable);
1652 m_xPageNoCB->set_sensitive(bEnable);
1653 m_xPageNoNF->set_sensitive(bEnable && m_xPageNoCB->get_active());
1659 m_xPageCollCB->set_active(
false);
1660 m_xPageCollCB->set_sensitive(
false);
1661 m_xPageCollLB->set_sensitive(
false);
1662 m_xPageNoCB->set_sensitive(
false);
1663 m_xPageNoNF->set_sensitive(
false);
1664 m_xPgBrkRB->set_sensitive(
false);
1665 m_xColBrkRB->set_sensitive(
false);
1666 m_xPgBrkBeforeRB->set_sensitive(
false);
1667 m_xPgBrkAfterRB->set_sensitive(
false);
1673 bool bEnable =
false;
1674 if (m_xPageCollCB->get_active() && m_xPageCollLB->get_count())
1677 m_xPageCollLB->set_active(0);
1681 m_xPageCollLB->set_active(-1);
1683 m_xPageCollLB->set_sensitive(bEnable);
1686 m_xPageNoCB->set_sensitive(bEnable);
1687 m_xPageNoNF->set_sensitive(bEnable && m_xPageNoCB->get_active());
1693 if (!m_xPgBrkCB->get_active())
1696 if (m_xPgBrkBeforeRB->get_active() && m_xPgBrkRB->get_active())
1698 m_xPageCollCB->set_sensitive(
true);
1700 bool bEnable = m_xPageCollCB->get_active() && m_xPageCollLB->get_count();
1702 m_xPageCollLB->set_sensitive(bEnable);
1705 m_xPageNoCB->set_sensitive(bEnable);
1706 m_xPageNoNF->set_sensitive(bEnable && m_xPageNoCB->get_active());
1709 else if (m_xPgBrkAfterRB->get_active())
1711 m_xPageCollCB->set_active(
false);
1712 m_xPageCollCB->set_sensitive(
false);
1713 m_xPageCollLB->set_sensitive(
false);
1714 m_xPageNoCB->set_sensitive(
false);
1715 m_xPageNoNF->set_sensitive(
false);
1721 if (m_xColBrkRB->get_active() || m_xPgBrkAfterRB->get_active())
1723 m_xPageCollCB->set_active(
false);
1724 m_xPageCollCB->set_sensitive(
false);
1725 m_xPageCollLB->set_sensitive(
false);
1726 m_xPageNoCB->set_sensitive(
false);
1727 m_xPageNoNF->set_sensitive(
false);
1729 else if (m_xPgBrkBeforeRB->get_active())
1730 PageBreakPosHdl_Impl(*m_xPgBrkBeforeRB);
1735 m_xPageNoNF->set_sensitive(m_xPageNoCB->get_active());
1740 m_xSplitRowCB->set_sensitive(rBox.get_active());
1745 m_xRepeatHeaderCombo->set_sensitive(m_xHeadLineCB->get_active());
static ImplSVEvent * PostUserEvent(const Link< void *, void > &rLink, void *pCaller=nullptr, bool bReferenceLink=false)
static void RemoveUserEvent(ImplSVEvent *nUserEvent)
static weld::MessageDialog * CreateMessageDialog(weld::Widget *pParent, VclMessageType eMessageType, VclButtonsType eButtonType, const OUString &rPrimaryMessage, const ILibreOfficeKitNotifier *pNotifier=nullptr)
sal_uInt16 GetValue() const
static SfxAbstractDialogFactory * Create()
virtual CreateTabPage GetTabPageCreatorFunc(sal_uInt16 nId)=0
const T * GetItemIfSet(TypedWhichId< T > nWhich, bool bSrchInParent=true) const
SfxItemState GetItemState(sal_uInt16 nWhich, bool bSrchInParent=true, const SfxPoolItem **ppItem=nullptr) const
const SfxPoolItem * Put(const SfxPoolItem &rItem, sal_uInt16 nWhich)
const SfxPoolItem & Get(sal_uInt16 nWhich, bool bSrchInParent=true) const
void AddTabPage(const OUString &rName, CreateTabPage pCreateFunc, GetTabPageRanges pRangesFunc)
SfxItemSet * GetInputSetImpl()
virtual void PageCreated(const SfxAllItemSet &aSet)
const SfxItemSet & GetItemSet() const
void SetExchangeSupport()
const SfxPoolItem * GetOldItem(const SfxItemSet &rSet, sal_uInt16 nSlot, bool bDeep=true)
weld::Window * GetFrameWeld() const
constexpr tools::Long Height() const
constexpr tools::Long Width() const
static bool IsCTLFontEnabled()
void SetLower(const sal_uInt16 nL, const sal_uInt16 nProp=100)
void SetUpper(const sal_uInt16 nU, const sal_uInt16 nProp=100)
FrameTypeFlags GetFrameType(const Point *pPt, bool bStopAtFly) const
For return values see above FrameType.
SwPageDesc * FindPageDescByName(const OUString &rName, bool bGetFromPool=false, size_t *pPos=nullptr)
size_t GetPageDescCnt() const
const SwPageDesc & GetPageDesc(size_t i) const
Pagedescriptor Client of SwPageDesc that is "described" by the attribute.
void SetNumOffset(const ::std::optional< sal_uInt16 > &oNum)
SwPageDesc * GetPageDesc()
const ::std::optional< sal_uInt16 > & GetNumOffset() const
std::unique_ptr< SwPercentField > m_xRightMF
std::unique_ptr< SwPercentField > m_xLeftMF
std::unique_ptr< SwTableRep > m_xOrigTableData
SwFormatTablePage(weld::Container *pPage, weld::DialogController *pController, const SfxItemSet &rSet)
void ModifyHdl(const weld::MetricSpinButton &rEdit, bool bAllowInconsistencies=false)
virtual void Reset(const SfxItemSet *rSet) override
virtual DeactivateRC DeactivatePage(SfxItemSet *pSet) override
std::unique_ptr< weld::Label > m_xRightFT
sal_Int64 m_nOrigWidthMin
std::unique_ptr< weld::Label > m_xWidthFT
std::unique_ptr< weld::RadioButton > m_xFreeBtn
std::unique_ptr< weld::RadioButton > m_xFromLeftBtn
SwTableRep * m_pTableData
sal_Int64 m_nOrigRightMax
sal_Int64 m_nOrigRightMin
std::unique_ptr< weld::RadioButton > m_xRightBtn
std::unique_ptr< weld::MetricSpinButton > m_xBottomMF
virtual ~SwFormatTablePage() override
std::unique_ptr< weld::Widget > m_xProperties
sal_Int64 m_nOrigWidthMax
std::unique_ptr< weld::MetricSpinButton > m_xTopMF
std::unique_ptr< weld::RadioButton > m_xCenterBtn
virtual bool FillItemSet(SfxItemSet *rSet) override
virtual void ActivatePage(const SfxItemSet &rSet) override
std::unique_ptr< weld::Label > m_xBottomFT
std::unique_ptr< weld::Label > m_xTopFT
std::unique_ptr< weld::Entry > m_xNameED
std::unique_ptr< weld::RadioButton > m_xFullBtn
std::unique_ptr< SwPercentField > m_xWidthMF
std::unique_ptr< weld::Label > m_xLeftFT
std::unique_ptr< svx::FrameDirectionListBox > m_xTextDirectionLB
static std::unique_ptr< SfxTabPage > Create(weld::Container *pPage, weld::DialogController *pController, const SfxItemSet *rAttrSet)
std::unique_ptr< weld::CheckButton > m_xRelWidthCB
std::unique_ptr< weld::RadioButton > m_xLeftBtn
const OUString & GetName() const
void set_text(const OUString &rStr)
void SetMetric(FieldUnit eUnit)
void SetRefValue(sal_Int64 nValue)
void ShowPercent(bool bPercent)
void set_value(sal_Int64 nNewValue, FieldUnit eInUnit=FieldUnit::NONE)
sal_Int64 DenormalizePercent(sal_Int64 nValue)
sal_Int64 NormalizePercent(sal_Int64 nValue)
void connect_value_changed(const Link< weld::MetricSpinButton &, void > &rLink)
void set_sensitive(bool bEnable)
void set_max(sal_Int64 nNewMax, FieldUnit eInUnit)
void set_min(sal_Int64 nNewMin, FieldUnit eInUnit)
sal_Int64 get_value(FieldUnit eOutUnit=FieldUnit::NONE)
static const OUString & GetUIName(const OUString &rName, SwGetPoolIdFromName)
static std::unique_ptr< SfxTabPage > Create(weld::Container *pPage, weld::DialogController *pController, const SfxItemSet *rAttrSet)
SwPercentField m_aFieldArr[MET_FIELDS]
virtual ~SwTableColumnPage() override
SwTwips GetVisibleWidth(sal_uInt16 nPos)
std::unique_ptr< SwTableRep > m_xOrigTableData
ImplSVEvent * m_pSizeHdlEvent
std::unique_ptr< weld::Label > m_aTextArr[MET_FIELDS]
SwTableColumnPage(weld::Container *pPage, weld::DialogController *pController, const SfxItemSet &rSet)
std::unique_ptr< weld::Button > m_xUpBtn
virtual void ActivatePage(const SfxItemSet &rSet) override
void SetVisibleWidth(sal_uInt16 nPos, SwTwips nNewWidth)
std::unique_ptr< weld::Label > m_xSpaceSFT
std::unique_ptr< weld::CheckButton > m_xProportionalCB
std::unique_ptr< weld::CheckButton > m_xModifyTableCB
sal_uInt16 m_aValueTable[MET_FIELDS]
std::unique_ptr< weld::Label > m_xSpaceFT
std::unique_ptr< weld::Button > m_xDownBtn
std::unique_ptr< weld::MetricSpinButton > m_xSpaceED
sal_uInt16 m_nNoOfVisibleCols
virtual bool FillItemSet(SfxItemSet *rSet) override
void UpdateCols(sal_uInt16 nCurrentPos)
SwTableRep * m_pTableData
virtual DeactivateRC DeactivatePage(SfxItemSet *pSet) override
virtual void Reset(const SfxItemSet *rSet) override
void ModifyHdl(const weld::MetricSpinButton *pEdit)
void SetRightSpace(SwTwips nSet)
SwTwips GetLeftSpace() const
SwTwips GetRightSpace() const
sal_uInt16 GetAllColCount() const
void SetWidthPercent(sal_uInt16 nSet)
void SetAlign(sal_uInt16 nSet)
sal_uInt16 GetAlign() const
sal_uInt16 GetWidthPercent() const
bool HasWidthChanged() const
sal_uInt16 GetColCount() const
void SetLeftSpace(SwTwips nSet)
void SetWidth(SwTwips nSet)
bool IsLineSelected() const
virtual void PageCreated(const OUString &rId, SfxTabPage &rPage) override
SwTableTabDlg(weld::Window *pParent, const SfxItemSet *pItemSet, SwWrtShell *pSh)
std::unique_ptr< weld::RadioButton > m_xPgBrkBeforeRB
std::unique_ptr< weld::RadioButton > m_xPgBrkAfterRB
static std::unique_ptr< SfxTabPage > Create(weld::Container *pPage, weld::DialogController *pController, const SfxItemSet *rAttrSet)
std::unique_ptr< weld::ComboBox > m_xTextDirectionLB
SwTextFlowPage(weld::Container *pPage, weld::DialogController *pController, const SfxItemSet &rSet)
std::unique_ptr< weld::CheckButton > m_xSplitCB
std::unique_ptr< weld::ComboBox > m_xPageCollLB
virtual void Reset(const SfxItemSet *rSet) override
std::unique_ptr< weld::SpinButton > m_xRepeatHeaderNF
virtual ~SwTextFlowPage() override
std::unique_ptr< weld::CheckButton > m_xHeadLineCB
std::unique_ptr< weld::ComboBox > m_xVertOrientLB
virtual bool FillItemSet(SfxItemSet *rSet) override
std::unique_ptr< weld::CheckButton > m_xPageNoCB
std::unique_ptr< weld::CheckButton > m_xPageCollCB
std::unique_ptr< weld::RadioButton > m_xColBrkRB
std::unique_ptr< weld::SpinButton > m_xPageNoNF
std::unique_ptr< weld::CheckButton > m_xKeepCB
void SetShell(SwWrtShell *pSh)
std::unique_ptr< weld::RadioButton > m_xPgBrkRB
std::unique_ptr< weld::CheckButton > m_xSplitRowCB
std::unique_ptr< weld::CheckButton > m_xPgBrkCB
SwDocShell * GetDocShell()
Used by the UI to modify the document model.
const SwView & GetView() const
#define FN_PARAM_TABLE_NAME
#define FN_PARAM_TABLE_HEADLINE
#define FN_TABLE_BOX_TEXTORIENTATION
#define FN_TABLE_SET_VERT_ALIGN
SVXCORE_DLLPUBLIC OUString SvxResId(TranslateId aId)
weld::Window * GetFrameWeld(const SfxFrame *pFrame)
FrameTypeFlags
values can be combined via logical or
constexpr TypedWhichId< SvxFrameDirectionItem > RES_FRAMEDIR(126)
constexpr TypedWhichId< SvxFormatKeepItem > RES_KEEP(116)
constexpr TypedWhichId< SwFormatRowSplit > RES_ROW_SPLIT(128)
constexpr TypedWhichId< SwFormatLayoutSplit > RES_LAYOUT_SPLIT(119)
constexpr TypedWhichId< SwFormatPageDesc > RES_PAGEDESC(99)
constexpr TypedWhichId< SvxFormatBreakItem > RES_BREAK(100)
constexpr TypedWhichId< SvxULSpaceItem > RES_UL_SPACE(98)
#define LINK(Instance, Class, Member)
SVXCORE_DLLPUBLIC MSO_SPT Get(const OUString &)
bool IsPrintLayoutExtension()
css::uno::Reference< css::linguistic2::XProofreadingIterator > get(css::uno::Reference< css::uno::XComponentContext > const &context)
void SetShell(SwViewShell *pSh)
SwNodeOffset min(const SwNodeOffset &a, const SwNodeOffset &b)
SwNodeOffset abs(const SwNodeOffset &a)
OUString SwResId(TranslateId aId)
IMPL_LINK_NOARG(SwFormatTablePage, AutoClickHdl, weld::Toggleable &, void)
IMPL_LINK(SwFormatTablePage, RelWidthClickHdl, weld::Toggleable &, rBtn, void)
SVT_DLLPUBLIC void SetFieldUnit(weld::MetricSpinButton &rCtrl, FieldUnit eUnit, bool bAll=false)
sal_uInt16 GetHtmlMode(const SwDocShell *pShell)