LibreOffice Module oox (master) 1
Classes | Namespaces | Macros
objectformatter.cxx File Reference
#include <drawingml/chart/objectformatter.hxx>
#include <com/sun/star/chart2/XChartDocument.hpp>
#include <com/sun/star/lang/XMultiServiceFactory.hpp>
#include <com/sun/star/util/XNumberFormatsSupplier.hpp>
#include <com/sun/star/util/XNumberFormatTypes.hpp>
#include <osl/thread.h>
#include <osl/diagnose.h>
#include <rtl/strbuf.hxx>
#include <oox/core/xmlfilterbase.hxx>
#include <drawingml/fillproperties.hxx>
#include <drawingml/lineproperties.hxx>
#include <oox/drawingml/shapepropertymap.hxx>
#include <drawingml/textbody.hxx>
#include <drawingml/textparagraph.hxx>
#include <oox/drawingml/theme.hxx>
#include <drawingml/chart/chartspacemodel.hxx>
#include <oox/helper/modelobjecthelper.hxx>
#include <oox/helper/graphichelper.hxx>
#include <oox/token/properties.hxx>
#include <oox/token/tokens.hxx>
#include <unotools/mediadescriptor.hxx>
Include dependency graph for objectformatter.cxx:

Go to the source code of this file.

Classes

struct  oox::drawingml::chart::ObjectFormatterData
 

Namespaces

namespace  oox
 
namespace  oox::drawingml
 
namespace  oox::drawingml::chart
 

Macros

#define AUTOFORMAT_PATTERN_COLOR(color_token)    { color_token, XML_TOKEN_INVALID, 0 }
 
#define AUTOFORMAT_PATTERN_COLORMOD(color_token, mod_token, mod_value)    { color_token, mod_token, mod_value }
 
#define AUTOFORMAT_PATTERN_END()    AUTOFORMAT_PATTERN_COLOR( XML_TOKEN_INVALID )
 
#define AUTOFORMAT_COLOR(first, last, themed_style, color_token)    { first, last, themed_style, color_token, XML_TOKEN_INVALID, 0, 100, nullptr, false }
 
#define AUTOFORMAT_COLORMOD(first, last, themed_style, color_token, mod_token, mod_value)    { first, last, themed_style, color_token, mod_token, mod_value, 100, nullptr, false }
 
#define AUTOFORMAT_ACCENTSMOD(first, themed_style, mod_token, mod_value)
 
#define AUTOFORMAT_PATTERN(first, last, themed_style, line_width, pattern)    { first, last, themed_style, XML_TOKEN_INVALID, XML_TOKEN_INVALID, 0, line_width, pattern, false }
 
#define AUTOFORMAT_FADED(first, last, themed_style, color_token, line_width)    { first, last, themed_style, color_token, XML_TOKEN_INVALID, 0, line_width, nullptr, true }
 
#define AUTOFORMAT_FADEDACCENTS(first, themed_style, line_width)
 
#define AUTOFORMAT_INVISIBLE(first, last)    AUTOFORMAT_COLOR( first, last, -1, XML_TOKEN_INVALID )
 
#define AUTOFORMAT_END()    AUTOFORMAT_INVISIBLE( -1, -1 )
 
#define AUTOTEXT_COLOR(first, last, themed_font, color_token, def_font_size, rel_font_size, bold)    { first, last, themed_font, color_token, def_font_size, rel_font_size, bold }
 
#define AUTOTEXT_END()    AUTOTEXT_COLOR( -1, -1, XML_none, XML_TOKEN_INVALID, 1000, 100, false )
 
#define TYPEFORMAT_FRAME(obj_type, prop_type, auto_texts, auto_lines, auto_fills)    { obj_type, prop_type, auto_lines, auto_fills, auto_texts, true }
 
#define TYPEFORMAT_LINE(obj_type, prop_type, auto_texts, auto_lines)    { obj_type, prop_type, auto_lines, nullptr, auto_texts, false }
 

Macro Definition Documentation

◆ AUTOFORMAT_ACCENTSMOD

#define AUTOFORMAT_ACCENTSMOD (   first,
  themed_style,
  mod_token,
  mod_value 
)
Value:
AUTOFORMAT_COLORMOD( first, first, themed_style, XML_accent1, mod_token, mod_value ), \
AUTOFORMAT_COLORMOD( first + 1, first + 1, themed_style, XML_accent2, mod_token, mod_value ), \
AUTOFORMAT_COLORMOD( first + 2, first + 2, themed_style, XML_accent3, mod_token, mod_value ), \
AUTOFORMAT_COLORMOD( first + 3, first + 3, themed_style, XML_accent4, mod_token, mod_value ), \
AUTOFORMAT_COLORMOD( first + 4, first + 4, themed_style, XML_accent5, mod_token, mod_value ), \
AUTOFORMAT_COLORMOD( first + 5, first + 5, themed_style, XML_accent6, mod_token, mod_value )
#define AUTOFORMAT_COLORMOD(first, last, themed_style, color_token, mod_token, mod_value)

Definition at line 139 of file objectformatter.cxx.

◆ AUTOFORMAT_COLOR

#define AUTOFORMAT_COLOR (   first,
  last,
  themed_style,
  color_token 
)     { first, last, themed_style, color_token, XML_TOKEN_INVALID, 0, 100, nullptr, false }

Definition at line 133 of file objectformatter.cxx.

◆ AUTOFORMAT_COLORMOD

#define AUTOFORMAT_COLORMOD (   first,
  last,
  themed_style,
  color_token,
  mod_token,
  mod_value 
)     { first, last, themed_style, color_token, mod_token, mod_value, 100, nullptr, false }

Definition at line 136 of file objectformatter.cxx.

◆ AUTOFORMAT_END

#define AUTOFORMAT_END ( )     AUTOFORMAT_INVISIBLE( -1, -1 )

Definition at line 164 of file objectformatter.cxx.

◆ AUTOFORMAT_FADED

#define AUTOFORMAT_FADED (   first,
  last,
  themed_style,
  color_token,
  line_width 
)     { first, last, themed_style, color_token, XML_TOKEN_INVALID, 0, line_width, nullptr, true }

Definition at line 150 of file objectformatter.cxx.

◆ AUTOFORMAT_FADEDACCENTS

#define AUTOFORMAT_FADEDACCENTS (   first,
  themed_style,
  line_width 
)
Value:
AUTOFORMAT_FADED( first, first, themed_style, XML_accent1, line_width ), \
AUTOFORMAT_FADED( first + 1, first + 1, themed_style, XML_accent2, line_width ), \
AUTOFORMAT_FADED( first + 2, first + 2, themed_style, XML_accent3, line_width ), \
AUTOFORMAT_FADED( first + 3, first + 3, themed_style, XML_accent4, line_width ), \
AUTOFORMAT_FADED( first + 4, first + 4, themed_style, XML_accent5, line_width ), \
AUTOFORMAT_FADED( first + 5, first + 5, themed_style, XML_accent6, line_width )
#define AUTOFORMAT_FADED(first, last, themed_style, color_token, line_width)

Definition at line 153 of file objectformatter.cxx.

◆ AUTOFORMAT_INVISIBLE

#define AUTOFORMAT_INVISIBLE (   first,
  last 
)     AUTOFORMAT_COLOR( first, last, -1, XML_TOKEN_INVALID )

Definition at line 161 of file objectformatter.cxx.

◆ AUTOFORMAT_PATTERN

#define AUTOFORMAT_PATTERN (   first,
  last,
  themed_style,
  line_width,
  pattern 
)     { first, last, themed_style, XML_TOKEN_INVALID, XML_TOKEN_INVALID, 0, line_width, pattern, false }

Definition at line 147 of file objectformatter.cxx.

◆ AUTOFORMAT_PATTERN_COLOR

#define AUTOFORMAT_PATTERN_COLOR (   color_token)     { color_token, XML_TOKEN_INVALID, 0 }

Definition at line 63 of file objectformatter.cxx.

◆ AUTOFORMAT_PATTERN_COLORMOD

#define AUTOFORMAT_PATTERN_COLORMOD (   color_token,
  mod_token,
  mod_value 
)     { color_token, mod_token, mod_value }

Definition at line 66 of file objectformatter.cxx.

◆ AUTOFORMAT_PATTERN_END

#define AUTOFORMAT_PATTERN_END ( )     AUTOFORMAT_PATTERN_COLOR( XML_TOKEN_INVALID )

Definition at line 69 of file objectformatter.cxx.

◆ AUTOTEXT_COLOR

#define AUTOTEXT_COLOR (   first,
  last,
  themed_font,
  color_token,
  def_font_size,
  rel_font_size,
  bold 
)     { first, last, themed_font, color_token, def_font_size, rel_font_size, bold }

Definition at line 408 of file objectformatter.cxx.

◆ AUTOTEXT_END

#define AUTOTEXT_END ( )     AUTOTEXT_COLOR( -1, -1, XML_none, XML_TOKEN_INVALID, 1000, 100, false )

Definition at line 411 of file objectformatter.cxx.

◆ TYPEFORMAT_FRAME

#define TYPEFORMAT_FRAME (   obj_type,
  prop_type,
  auto_texts,
  auto_lines,
  auto_fills 
)     { obj_type, prop_type, auto_lines, auto_fills, auto_texts, true }

Definition at line 528 of file objectformatter.cxx.

◆ TYPEFORMAT_LINE

#define TYPEFORMAT_LINE (   obj_type,
  prop_type,
  auto_texts,
  auto_lines 
)     { obj_type, prop_type, auto_lines, nullptr, auto_texts, false }

Definition at line 531 of file objectformatter.cxx.

Variable Documentation

◆ maColorPattern

ColorPatternVec maColorPattern
protected

RGB placeholder color for themed style.

Definition at line 603 of file objectformatter.cxx.

◆ maFillFormatter

FillFormatter maFillFormatter
private

Converter for line formatting.

Definition at line 704 of file objectformatter.cxx.

◆ maLineFormatter

LineFormatter maLineFormatter
private

Definition at line 703 of file objectformatter.cxx.

◆ maTextFormatter

TextFormatter maTextFormatter
private

Converter for fill formatting.

Definition at line 705 of file objectformatter.cxx.

◆ mbBold

bool mbBold

Font size relative to chart global font (percent).

Definition at line 405 of file objectformatter.cxx.

◆ mbFadedColor

bool mbFadedColor

Color cycling pattern for data series.

Definition at line 130 of file objectformatter.cxx.

◆ mbIsFrame

bool mbIsFrame

Automatic text attributes for all chart styles.

Definition at line 517 of file objectformatter.cxx.

◆ meObjType

ObjectType meObjType

Definition at line 512 of file objectformatter.cxx.

◆ mnColorToken

sal_Int32 mnColorToken

Themed style index.

Themed font (minor/major).

Definition at line 58 of file objectformatter.cxx.

◆ mnDefFontSize

sal_Int32 mnDefFontSize

Theme color token.

Definition at line 403 of file objectformatter.cxx.

◆ mnFirstStyleIdx

sal_Int32 mnFirstStyleIdx

Definition at line 122 of file objectformatter.cxx.

◆ mnLastStyleIdx

sal_Int32 mnLastStyleIdx

First chart style index.

Definition at line 123 of file objectformatter.cxx.

◆ mnModToken

sal_Int32 mnModToken

Theme color token.

Definition at line 59 of file objectformatter.cxx.

◆ mnModValue

sal_Int32 mnModValue

Color modification token.

Definition at line 60 of file objectformatter.cxx.

◆ mnPhClr

::Color mnPhClr
protected

Shared formatter data.

Definition at line 602 of file objectformatter.cxx.

◆ mnRelFontSize

sal_Int32 mnRelFontSize

Default font size (1/100 points).

Definition at line 404 of file objectformatter.cxx.

◆ mnRelLineWidth

sal_Int32 mnRelLineWidth

Color modification value.

Definition at line 128 of file objectformatter.cxx.

◆ mnThemedFont

sal_Int32 mnThemedFont

Last chart style index.

Definition at line 401 of file objectformatter.cxx.

◆ mnThemedIdx

sal_Int32 mnThemedIdx

Last chart style index.

Definition at line 124 of file objectformatter.cxx.

◆ mpAutoFills

const AutoFormatEntry* mpAutoFills

Automatic line formatting for all chart styles.

Definition at line 515 of file objectformatter.cxx.

◆ mpAutoLines

const AutoFormatEntry* mpAutoLines

Property info for the ShapePropertyMap class.

Definition at line 514 of file objectformatter.cxx.

◆ mpAutoTexts

const AutoTextEntry* mpAutoTexts

Automatic fill formatting for all chart styles.

Definition at line 516 of file objectformatter.cxx.

◆ mpPattern

const AutoFormatPatternEntry* mpPattern

Relative line width (percent).

Definition at line 129 of file objectformatter.cxx.

◆ mrData

ObjectFormatterData& mrData
protected

Definition at line 601 of file objectformatter.cxx.

◆ mrEntry

const ObjectTypeFormatEntry& mrEntry
private

Helper for named drawing formatting.

Definition at line 707 of file objectformatter.cxx.

◆ mrModelObjHelper

ModelObjectHelper& mrModelObjHelper
private

Converter for text formatting.

Definition at line 706 of file objectformatter.cxx.

◆ mrPropInfo

const ShapePropertyInfo& mrPropInfo

Object type for automatic format.

Definition at line 513 of file objectformatter.cxx.

◆ mxAutoFill

FillPropertiesPtr mxAutoFill
private

Definition at line 640 of file objectformatter.cxx.

◆ mxAutoLine

LinePropertiesPtr mxAutoLine
private

Definition at line 621 of file objectformatter.cxx.

◆ mxAutoText

TextCharacterPropertiesPtr mxAutoText
private

Definition at line 661 of file objectformatter.cxx.