38 struct MisspellRanges;
54 #define SC_SCENARIO_HSPACE 60
55 #define SC_SCENARIO_VSPACE 50
60 typedef std::unique_ptr<ClearableClipRegion, o3tl::default_delete<ClearableClipRegion>>
ClearableClipRegionPtr;
92 bool Is()
const {
return ( nWidth > 0 && nHeight > 0 ); }
146 bool readCellContent(
const ScDocument* pDoc,
bool bShowNullValues,
bool bShowFormulas,
bool bSyntaxMode,
bool bUseStyleColor,
bool bForceAutoColor,
bool& rWrapFields);
245 SCCOL& rOverX,
SCROW& rOverY,
bool bVisRowChanged );
254 sal_uInt16 nHorJustify,
bool bCellIsValue,
255 bool bBreak,
bool bOverwrite,
262 bool& rLeftClip,
bool& rRightClip );
271 std::unique_ptr<drawinglayer::processor2d::BaseProcessor2D>
CreateProcessor2D( );
285 tools::Long nEngineWidth,
bool bWrapFields,
bool bTop);
307 double nPixelPerTwipsX,
double nPixelPerTwipsY,
348 void DrawExtraShadow(
bool bLeft,
bool bTop,
bool bRight,
bool bBottom);
373 const Color& rColor,
bool bHandle );
376 const Color& rColor );
void SetSyntaxMode(bool bNewMode)
SvxCellJustifyMethod meVerJustMethod
bool adjustHorAlignment(ScFieldEditEngine *pEngine)
std::optional< Color > mxTextColor
bool IsEmptyCellText(const RowInfo *pThisRowInfo, SCCOL nX, SCROW nY)
void DrawFrame(vcl::RenderContext &rRenderContext)
void SetShowNullValues(bool bSet)
bool AdjustAreaParamClipRect(OutputAreaParam &rAreaParam)
void getEngineSize(ScFieldEditEngine *pEngine, tools::Long &rWidth, tools::Long &rHeight) const
std::unique_ptr< ScFieldEditEngine > CreateOutputEditEngine()
void SetUseStyleColor(bool bSet)
SvxCellVerJustify meVerJust
Class shared between grid windows to cache spelling results.
Point PrePrintDrawingLayer(tools::Long nLogStX, tools::Long nLogStY)
SvxCellHorJustify meHorJustAttr
alignment attribute
std::unique_ptr< ClearableClipRegion, o3tl::default_delete< ClearableClipRegion > > ClearableClipRegionPtr
void SetSyntaxColor(vcl::Font *pFont, const ScRefCellValue &rCell)
const sc::SpellCheckContext * mpSpellCheckCxt
constexpr::Color COL_AUTO(ColorTransparency, 0xFF, 0xFF, 0xFF, 0xFF)
void DrawRefMark(SCCOL nRefStartX, SCROW nRefStartY, SCCOL nRefEndX, SCROW nRefEndY, const Color &rColor, bool bHandle)
Draws reference mark and returns its properties.
const SfxItemSet * mpOldCondSet
void DrawSelectiveObjects(SdrLayerID nLayer)
DrawEditParam(const ScPatternAttr *pPattern, const SfxItemSet *pCondSet, bool bCellIsValue)
void setAlignmentToEngine()
ScFieldEditEngine * mpEngine
void ShrinkEditEngine(EditEngine &rEngine, const tools::Rectangle &rAlignRect, tools::Long nLeftM, tools::Long nTopM, tools::Long nRightM, tools::Long nBottomM, bool bWidth, SvxCellOrientation nOrient, Degree100 nAttrRotate, bool bPixelToLogic, tools::Long &rEngineWidth, tools::Long &rEngineHeight, tools::Long &rNeededPixel, bool &rLeftClip, bool &rRightClip)
void SetSolidBackground(bool bSet)
void SetShowFormulas(bool bSet)
bool isVerticallyOriented() const
When the text is vertically oriented, the text is either rotated 90 degrees to the right or 90 degree...
void SetMarkClipped(bool bSet)
This is very similar to ScCellValue, except that it references the original value instead of copying ...
void DrawEditAsianVertical(DrawEditParam &rParam)
SvxCellHorJustify meHorJustContext
context depending on attribute, content and direction
SvxCellHorJustify meHorJustResult
result for EditEngine
ReferenceMark FillReferenceMark(SCCOL nRefStartX, SCROW nRefStartY, SCCOL nRefEndX, SCROW nRefEndY, const Color &rColor)
const std::vector< editeng::MisspellRanges > * mpMisspellRanges
void DrawRotated(bool bPixelToLogic)
void SetContentDevice(OutputDevice *pContentDev)
tools::Rectangle maClipRect
const SfxItemSet * mpOldPreviewFontSet
void SetFmtDevice(OutputDevice *pRDev)
const ScPatternAttr * mpOldPattern
size_t SCSIZE
size_t typedef to be able to find places where code was changed from USHORT to size_t and is used to ...
tools::Rectangle maAlignRect
void DrawEditStacked(DrawEditParam &rParam)
void DrawExtraShadow(bool bLeft, bool bTop, bool bRight, bool bBottom)
const SfxItemSet * mpCondSet
SvxCellJustifyMethod meHorJustMethod
void SetEditSyntaxColor(EditEngine &rEngine, const ScRefCellValue &rCell)
std::unique_ptr< drawinglayer::processor2d::BaseProcessor2D > CreateProcessor2D()
void SetDrawView(FmFormView *pNew)
void DrawEditStandard(DrawEditParam &rParam)
bool mbLeftClip
length of the string getting cut off on the right.
tools::Long mnLeftClipLength
void SetEditCell(SCCOL nCol, SCROW nRow)
void DrawRotatedFrame(vcl::RenderContext &rRenderContext)
void ShowClipMarks(DrawEditParam &rParam, tools::Long nEngineWidth, const Size &aCellSize, bool bMerged, OutputAreaParam &aAreaParam, bool bTop)
VclPtr< OutputDevice > pFmtDevice
tools::Rectangle LayoutStrings(bool bPixelToLogic, bool bPaint=true, const ScAddress &rAddress=ScAddress())
Draw all strings, or provide Rectangle where the text (defined by rAddress) would be drawn...
tools::Long mnRightClipLength
length of the string getting cut off on the left.
Describes reference mark to be drawn, position & size in TWIPs.
bool readCellContent(const ScDocument *pDoc, bool bShowNullValues, bool bShowFormulas, bool bSyntaxMode, bool bUseStyleColor, bool bForceAutoColor, bool &rWrapFields)
CAUTION! The following defines must be in the same namespace as the respective type.
tools::Long SetEngineTextAndGetWidth(DrawEditParam &rParam, const OUString &rSetString, tools::Long &rNeededPixel, tools::Long nAddWidthPixels)
ScTabViewShell * pViewShell
void DrawBackground(vcl::RenderContext &rRenderContext)
void DrawDocumentBackground()
void setPatternToEngine(bool bUseStyleColor)
double GetStretch() const
void DrawStrings(bool bPixelToLogic=false)
SvxCellOrientation meOrient
VclPtr< OutputDevice > mpRefDevice
bool IsAvailable(SCCOL nX, SCROW nY)
ScOutputData(OutputDevice *pNewDev, ScOutputType eNewType, ScTableInfo &rTabInfo, ScDocument *pNewDoc, SCTAB nNewTab, tools::Long nNewScrX, tools::Long nNewScrY, SCCOL nNewX1, SCROW nNewY1, SCCOL nNewX2, SCROW nNewY2, double nPixelPerTwipsX, double nPixelPerTwipsY, const Fraction *pZoomX=nullptr, const Fraction *pZoomY=nullptr)
void calcStartPosForVertical(Point &rLogicStart, tools::Long nCellWidth, tools::Long nEngineWidth, tools::Long nTopM, const OutputDevice *pRefDevice)
Calculate offset position for vertically oriented (either top-bottom or bottom-top orientation) text...
void DrawEditTopBottom(DrawEditParam &rParam)
ClearableClipRegionPtr Clip(DrawEditParam &rParam, const Size &aCellSize, OutputAreaParam &aAreaParam, tools::Long nEngineWidth, bool bWrapFields, bool bTop)
const SfxItemSet * mpPreviewFontSet
void SetGridColor(const Color &rColor)
void DrawOneChange(SCCOL nRefStartX, SCROW nRefStartY, SCCOL nRefEndX, SCROW nRefEndY, const Color &rColor, sal_uInt16 nType)
SdrPaintWindow * mpTargetPaintWindow
void DrawGrid(vcl::RenderContext &rRenderContext, bool bGrid, bool bPage, bool bMergeCover=false)
void calcMargins(tools::Long &rTop, tools::Long &rLeft, tools::Long &rBottom, tools::Long &rRight, double nPPTX, double nPPTY) const
void SetShowSpellErrors(bool bSet)
const ScPatternAttr * mpPattern
void calcPaperSize(Size &rPaperSize, const tools::Rectangle &rAlignRect, double nPPTX, double nPPTY) const
void PostPrintDrawingLayer(const Point &rMMOffset)
std::optional< Color > mxValueColor
void GetVisibleCell(SCCOL nCol, SCROW nRow, SCTAB nTab, ScRefCellValue &rCell)
ReferenceMark(tools::Long aX, tools::Long aY, tools::Long aWidth, tools::Long aHeight, tools::Long aTab, const Color &rColor)
void DrawSparklines(vcl::RenderContext &rRenderContext)
void SetViewShell(ScTabViewShell *pSh)
void SetSpellCheckContext(const sc::SpellCheckContext *pCxt)
void DrawNoteMarks(vcl::RenderContext &rRenderContext)
std::optional< Color > mxFormulaColor
tools::Long GetScrH() const
VclPtr< OutputDevice > mpDev
tools::Long GetScrW() const
void SetMirrorWidth(tools::Long nNew)
vcl::Region GetChangedAreaRegion()
void SetMetaFileMode(bool bNewMode)
bool isHyperlinkCell() const
bool hasLineBreak() const
void DrawEdit(bool bPixelToLogic)
void SetRefDevice(OutputDevice *pRDev)
void GetOutputArea(SCCOL nX, SCSIZE nArrY, tools::Long nPosX, tools::Long nPosY, SCCOL nCellX, SCROW nCellY, tools::Long nNeeded, const ScPatternAttr &rPattern, sal_uInt16 nHorJustify, bool bCellIsValue, bool bBreak, bool bOverwrite, OutputAreaParam &rParam)
void adjustForHyperlinkInPDF(Point aURLStart, const OutputDevice *pDev)
bool GetMergeOrigin(SCCOL nX, SCROW nY, SCSIZE nArrY, SCCOL &rOverX, SCROW &rOverY, bool bVisRowChanged)
void DrawEditBottomTop(DrawEditParam &rParam)
void SetPagebreakMode(ScPageBreakData *pPageData)
void PrintDrawingLayer(SdrLayerID nLayer, const Point &rMMOffset)