22#include <com/sun/star/text/WritingMode.hpp>
23#include <com/sun/star/container/XIndexAccess.hpp>
24#include <com/sun/star/table/XTable.hpp>
28#include <boost/property_tree/ptree_fwd.hpp>
35 class ViewContactOfTableObj;
41struct ImplTableShadowPaintInfo;
107 const ::tools::Rectangle& rNewRect,
112 void CropTableModelToSelection(
const CellPos& rStart,
const CellPos& rEnd);
115 void DistributeColumns( sal_Int32 nFirstColumn, sal_Int32 nLastColumn,
const bool bOptimize,
const bool bMinimize );
116 void DistributeRows( sal_Int32 nFirstRow, sal_Int32 nLastRow,
const bool bOptimize,
const bool bMinimize );
118 css::uno::Reference< css::table::XTable > getTable()
const;
123 CellPos getLeftCell(
const CellPos& rPos,
bool bEdgeTravel )
const;
124 CellPos getRightCell(
const CellPos& rPos,
bool bEdgeTravel )
const;
126 CellPos getDownCell(
const CellPos& rPos,
bool bEdgeTravel )
const;
127 CellPos getPreviousCell(
const CellPos& rPos,
bool bEdgeTravel )
const;
128 CellPos getNextCell(
const CellPos& rPos,
bool bEdgeTravel )
const;
129 CellPos getPreviousRow(
const CellPos& rPos,
bool bEdgeTravel )
const;
130 CellPos getNextRow(
const CellPos& rPos,
bool bEdgeTravel )
const;
137 TableHitKind CheckTableHit(
const Point& rPos, sal_Int32& rnX, sal_Int32& rnY,
const sal_uInt16 aTol = 0 )
const;
147 sal_Int32 getColumnCount()
const;
148 sal_Int32 getRowCount()
const;
150 bool createTableEdgesJson(boost::property_tree::ptree & rJsonRoot);
151 void changeEdge(
bool bHorizontal,
int nEdge, sal_Int32 nOffset);
155 const SfxItemSet& GetActiveCellItemSet()
const;
157 void setTableStyle(
const css::uno::Reference< css::container::XIndexAccess >& xAutoFormatStyle );
158 const css::uno::Reference< css::container::XIndexAccess >& getTableStyle()
const;
163 virtual SdrText* getActiveText()
const override;
166 virtual SdrText* getText( sal_Int32 nIndex )
const override;
169 virtual sal_Int32 getTextCount()
const override;
172 virtual void setActiveText( sal_Int32 nIndex )
override;
175 virtual sal_Int32 CheckTextHit(
const Point& rPnt)
const override;
178 virtual bool HasText()
const override;
184 virtual bool IsReallyEdited()
const override;
194 virtual bool IsAutoGrowHeight()
const override;
195 virtual bool IsAutoGrowWidth()
const override;
197 virtual bool IsFontwork()
const override;
200 virtual SdrObjKind GetObjIdentifier()
const override;
201 virtual void SetChanged()
override;
203 virtual bool AdjustTextFrameWidthAndHeight(
tools::Rectangle& rR,
bool bHgt =
true,
bool bWdt =
true)
const override;
204 virtual bool AdjustTextFrameWidthAndHeight()
override;
205 virtual OUString TakeObjNameSingul()
const override;
206 virtual OUString TakeObjNamePlural()
const override;
208 virtual void RecalcSnapRect()
override;
214 virtual void AdjustToMaxRect(
const tools::Rectangle& rMaxRect,
bool bShrinkOnly =
false )
override;
216 virtual sal_uInt32 GetHdlCount()
const override;
217 virtual void AddToHdlList(
SdrHdlList& rHdlList)
const override;
220 virtual bool hasSpecialDrag()
const override;
221 virtual bool beginSpecialDrag(
SdrDragStat& rDrag)
const override;
222 virtual bool applySpecialDrag(
SdrDragStat& rDrag)
override;
225 virtual bool BegCreate(
SdrDragStat& rStat)
override;
226 virtual bool MovCreate(
SdrDragStat& rStat)
override;
228 virtual bool BckCreate(
SdrDragStat& rStat)
override;
229 virtual void BrkCreate(
SdrDragStat& rStat)
override;
233 virtual void NbcMove(
const Size& rSiz)
override;
236 virtual bool BegTextEdit(
SdrOutliner& rOutl)
override;
240 virtual EEAnchorMode GetOutlinerViewAnchorMode()
const override;
246 virtual void NbcReformatText()
override;
248 virtual bool IsVerticalWriting()
const override;
249 virtual void SetVerticalWriting(
bool bVertical)
override;
251 css::text::WritingMode GetWritingMode()
const;
257 void SetSkipChangeLayout(
bool bSkipChangeLayout);
261 virtual void onEditOutlinerStatusEvent(
EditStatus* pEditStatus )
override;
268 void init( sal_Int32 nColumns, sal_Int32 nRows );
270 virtual std::unique_ptr<sdr::properties::BaseProperties> CreateObjectSpecificProperties()
override;
271 virtual std::unique_ptr<sdr::contact::ViewContact> CreateObjectSpecificViewContact()
override;
273 virtual std::unique_ptr<SdrObjGeoData> NewGeoData()
const override;
274 virtual void SaveGeoData(
SdrObjGeoData& rGeo)
const override;
275 virtual void RestoreGeoData(
const SdrObjGeoData& rGeo)
override;
277 SdrOutliner* GetCellTextEditOutliner(
const sdr::table::Cell& rCell )
const;
FILE * init(int, char **)
All geometrical data of an arbitrary object for use in undo/redo.
Abstract base class (ABC) for all UndoActions of DrawingEngine.
bool IsTextEditActive() const
void TakeTextRect(const sdr::table::CellPos &rPos, SdrOutliner &rOutliner, ::tools::Rectangle &rTextRect, bool bNoEditText, ::tools::Rectangle *pAnchorRect) const
At the same time, we set the text in the outliner (if applicable the EditOutliners') as well as the P...
void TakeTextAnchorRect(const sdr::table::CellPos &rPos, ::tools::Rectangle &rAnchorRect) const
tools::Rectangle maLogicRect
virtual void TakeTextAnchorRect(::tools::Rectangle &rAnchorRect) const override
rtl::Reference< SdrTableObjImpl > mpImpl
struct _xmlTextWriter * xmlTextWriterPtr
TableHitKind
SdrTableHitKind.
rtl::Reference< Cell > CellRef
void ImportAsRTF(SvStream &rStream, SdrTableObj &rObj)
void ExportAsRTF(SvStream &rStrm, SdrTableObj &rObj)
Hack for clipboard with calc and writer, export and import table content as rtf table.
bool operator!=(const CellPos &r) const
CellPos(sal_Int32 nCol, sal_Int32 nRow)
bool operator==(const CellPos &r) const
TableStyleSettings & operator=(const TableStyleSettings &rStyle)
bool operator==(const TableStyleSettings &r) const
#define SVXCORE_DLLPUBLIC