23#include <com/sun/star/container/XNameContainer.hpp> 
   24#include <com/sun/star/awt/Size.hpp> 
   25#include <com/sun/star/awt/Gradient.hpp> 
   26#include <com/sun/star/drawing/Hatch.hpp> 
   27#include <com/sun/star/drawing/LineDash.hpp> 
   28#include <com/sun/star/drawing/LineStyle.hpp> 
   29#include <com/sun/star/drawing/FillStyle.hpp> 
   30#include <com/sun/star/drawing/BitmapMode.hpp> 
   31#include <com/sun/star/chart/DataLabelPlacement.hpp> 
   32#include <com/sun/star/chart/XAxisXSupplier.hpp> 
   33#include <com/sun/star/chart/XAxisYSupplier.hpp> 
   34#include <com/sun/star/chart/XAxisZSupplier.hpp> 
   35#include <com/sun/star/chart/XChartDocument.hpp> 
   36#include <com/sun/star/chart/XSecondAxisTitleSupplier.hpp> 
   37#include <com/sun/star/chart2/Symbol.hpp> 
   38#include <com/sun/star/chart2/XChartDocument.hpp> 
   39#include <com/sun/star/lang/XMultiServiceFactory.hpp> 
   69    mnSeriesIdx( nSeriesIdx ),
 
   70    mnPointIdx( nPointIdx )
 
  190    mfForecastFor( 0.0 ),
 
  191    mfForecastBack( 0.0 ),
 
  200    sal_math_Double* pDouble = 
reinterpret_cast< sal_math_Double* 
>( &
mfIntercept );
 
  201    pDouble->w32_parts.msw = pDouble->w32_parts.lsw = 0xFFFFFFFF;
 
  346    return nApiAxesSetIdx;
 
  353    static const sal_uInt16 spnLineColors[] =
 
  355        32, 33, 34, 35, 36, 37, 38, 39,
 
  356        40, 41, 42, 43, 44, 45, 46, 47,
 
  357        48, 49, 50, 51, 52, 53, 54, 55,
 
  358        56, 57, 58, 59, 60, 61, 62,  8,
 
  359         9, 10, 11, 12, 13, 14, 15, 16,
 
  360        17, 18, 19, 20, 21, 22, 23, 24,
 
  361        25, 26, 27, 28, 29, 30, 31, 63
 
  363    return spnLineColors[ nFormatIdx % 
SAL_N_ELEMENTS( spnLineColors ) ];
 
  368    static const sal_uInt16 spnFillColors[] =
 
  370        24, 25, 26, 27, 28, 29, 30, 31,
 
  371        32, 33, 34, 35, 36, 37, 38, 39,
 
  372        40, 41, 42, 43, 44, 45, 46, 47,
 
  373        48, 49, 50, 51, 52, 53, 54, 55,
 
  374        56, 57, 58, 59, 60, 61, 62, 63,
 
  375         8,  9, 10, 11, 12, 13, 14, 15,
 
  376        16, 17, 18, 19, 20, 21, 22, 23
 
  378    return spnFillColors[ nFormatIdx % 
SAL_N_ELEMENTS( spnFillColors ) ];
 
  383    static const sal_uInt8 spnTrans[] = { 0x00, 0x40, 0x20, 0x60, 0x70 };
 
  384    return spnTrans[ (nFormatIdx / 56) % 
SAL_N_ELEMENTS( spnTrans ) ];
 
  389    static const sal_uInt16 spnSymbols[] = {
 
  398    static const bool spbFilled[] = {
 
  399        false, 
true, 
true, 
true, 
false, 
false, 
false, 
false, 
true, 
false };
 
  400    return (nMarkerType < 
SAL_N_ELEMENTS( spbFilled )) && spbFilled[ nMarkerType ];
 
  411        default:    OSL_FAIL( 
"XclChartHelper::GetErrorBarValuesRole - unknown bar type" );
 
  445    for(
auto const &rIt : spFmtInfos)
 
  451    XclFmtInfoMap::const_iterator aIt = 
maInfoMap.find( eObjType );
 
  452    OSL_ENSURE( aIt != 
maInfoMap.end(), 
"XclChFormatInfoProvider::GetFormatInfo - unknown object type" );
 
  453    return (aIt == 
maInfoMap.end()) ? *spFmtInfos : *aIt->second;
 
  461const char SERVICE_CHART2_AREA[]      = 
"com.sun.star.chart2.AreaChartType";
 
  462const char SERVICE_CHART2_CANDLE[]    = 
"com.sun.star.chart2.CandleStickChartType";
 
  463const char SERVICE_CHART2_COLUMN[]    = 
"com.sun.star.chart2.ColumnChartType";
 
  464const char SERVICE_CHART2_LINE[]      = 
"com.sun.star.chart2.LineChartType";
 
  465const char SERVICE_CHART2_NET[]       = 
"com.sun.star.chart2.NetChartType";
 
  466const char SERVICE_CHART2_FILLEDNET[] = 
"com.sun.star.chart2.FilledNetChartType";
 
  467const char SERVICE_CHART2_PIE[]       = 
"com.sun.star.chart2.PieChartType";
 
  468const char SERVICE_CHART2_SCATTER[]   = 
"com.sun.star.chart2.ScatterChartType";
 
  469const char SERVICE_CHART2_BUBBLE[]    = 
"com.sun.star.chart2.BubbleChartType";
 
  470const char SERVICE_CHART2_SURFACE[]   = 
"com.sun.star.chart2.ColumnChartType";    
 
  472namespace csscd = css::chart::DataLabelPlacement;
 
  477    { 
EXC_CHTYPEID_BAR,       
EXC_CHTYPECATEG_BAR,     
EXC_ID_CHBAR,       SERVICE_CHART2_COLUMN,    
EXC_CHVARPOINT_SINGLE, csscd::OUTSIDE,       
true,  
true,  
false, 
true,  
true,  
false, 
true,  
false, 
true,  
false, 
true  },
 
  478    { 
EXC_CHTYPEID_HORBAR,    
EXC_CHTYPECATEG_BAR,     
EXC_ID_CHBAR,       SERVICE_CHART2_COLUMN,    
EXC_CHVARPOINT_SINGLE, csscd::OUTSIDE,       
false, 
true,  
false, 
true,  
true,  
false, 
true,  
true,  
true,  
false, 
true  },
 
  479    { 
EXC_CHTYPEID_LINE,      
EXC_CHTYPECATEG_LINE,    
EXC_ID_CHLINE,      SERVICE_CHART2_LINE,      
EXC_CHVARPOINT_SINGLE, csscd::RIGHT,         
true,  
true,  
false, 
false, 
true,  
false, 
true,  
false, 
true,  
false, 
false },
 
  480    { 
EXC_CHTYPEID_AREA,      
EXC_CHTYPECATEG_LINE,    
EXC_ID_CHAREA,      SERVICE_CHART2_AREA,      
EXC_CHVARPOINT_NONE,   csscd::CENTER,        
true,  
true,  
false, 
true,  
true,  
false, 
true,  
false, 
true,  
true,  
false },
 
  481    { 
EXC_CHTYPEID_STOCK,     
EXC_CHTYPECATEG_LINE,    
EXC_ID_CHLINE,      SERVICE_CHART2_CANDLE,    
EXC_CHVARPOINT_NONE,   csscd::RIGHT,         
true,  
false, 
false, 
false, 
false, 
false, 
true,  
false, 
true,  
false, 
false },
 
  482    { 
EXC_CHTYPEID_RADARLINE, 
EXC_CHTYPECATEG_RADAR,   
EXC_ID_CHRADARLINE, SERVICE_CHART2_NET,       
EXC_CHVARPOINT_SINGLE, csscd::TOP,           
false, 
false, 
true,  
false, 
true,  
false, 
true,  
false, 
false, 
false, 
false },
 
  483    { 
EXC_CHTYPEID_RADARAREA, 
EXC_CHTYPECATEG_RADAR,   
EXC_ID_CHRADARAREA, SERVICE_CHART2_FILLEDNET, 
EXC_CHVARPOINT_NONE,   csscd::TOP,           
false, 
false, 
true,  
true,  
true,  
false, 
true,  
false, 
false, 
true,  
false },
 
  484    { 
EXC_CHTYPEID_PIE,       
EXC_CHTYPECATEG_PIE,     
EXC_ID_CHPIE,       SERVICE_CHART2_PIE,       
EXC_CHVARPOINT_MULTI,  csscd::AVOID_OVERLAP, 
false, 
true,  
true,  
true,  
true,  
true,  
true,  
false, 
false, 
false, 
false },
 
  485    { 
EXC_CHTYPEID_DONUT,     
EXC_CHTYPECATEG_PIE,     
EXC_ID_CHPIE,       SERVICE_CHART2_PIE,       
EXC_CHVARPOINT_MULTI,  csscd::AVOID_OVERLAP, 
false, 
true,  
true,  
true,  
true,  
false, 
true,  
false, 
false, 
false, 
false },
 
  486    { 
EXC_CHTYPEID_PIEEXT,    
EXC_CHTYPECATEG_PIE,     
EXC_ID_CHPIEEXT,    SERVICE_CHART2_PIE,       
EXC_CHVARPOINT_MULTI,  csscd::AVOID_OVERLAP, 
false, 
false, 
true,  
true,  
true,  
true,  
true,  
false, 
false, 
false, 
false },
 
  487    { 
EXC_CHTYPEID_SCATTER,   
EXC_CHTYPECATEG_SCATTER, 
EXC_ID_CHSCATTER,   SERVICE_CHART2_SCATTER,   
EXC_CHVARPOINT_SINGLE, csscd::RIGHT,         
true,  
false, 
false, 
false, 
true,  
false, 
false, 
false, 
false, 
false, 
false },
 
  488    { 
EXC_CHTYPEID_BUBBLES,   
EXC_CHTYPECATEG_SCATTER, 
EXC_ID_CHSCATTER,   SERVICE_CHART2_BUBBLE,    
EXC_CHVARPOINT_SINGLE, csscd::RIGHT,         
false, 
false, 
false, 
true,  
true,  
false, 
false, 
false, 
false, 
false, 
false },
 
  489    { 
EXC_CHTYPEID_SURFACE,   
EXC_CHTYPECATEG_SURFACE, 
EXC_ID_CHSURFACE,   SERVICE_CHART2_SURFACE,   
EXC_CHVARPOINT_NONE,   csscd::RIGHT,         
false, 
true,  
false, 
true,  
true,  
false, 
true,  
false, 
false, 
false, 
false },
 
  490    { 
EXC_CHTYPEID_UNKNOWN,   
EXC_CHTYPECATEG_BAR,     
EXC_ID_CHBAR,       SERVICE_CHART2_COLUMN,    
EXC_CHVARPOINT_SINGLE, csscd::OUTSIDE,       
true,  
true,  
false, 
true,  
true,  
false, 
true,  
false, 
true,  
false, 
true  }
 
  511    for(
const auto &rIt : spTypeInfos)
 
  517    XclChTypeInfoMap::const_iterator aIt = 
maInfoMap.find( eTypeId );
 
  518    OSL_ENSURE( aIt != 
maInfoMap.end(), 
"XclChTypeInfoProvider::GetTypeInfo - unknown chart type" );
 
  524    for(
const auto &rIt : spTypeInfos)
 
  526        if(rIt.mnRecId == nRecId)
 
  529    OSL_FAIL( 
"XclChTypeInfoProvider::GetTypeInfoFromRecId - unknown record id" );
 
  535    for(
auto const &rIt : spTypeInfos)
 
  538    OSL_FAIL( 
"XclChTypeInfoProvider::GetTypeInfoFromService - unknown service name" );
 
  545        OUString aServiceName, OUString aObjNameBase ) :
 
  548    maObjNameBase(
std::move( aObjNameBase )),
 
  558    OSL_ENSURE( 
mxContainer.is(), 
"XclChObjectTable::GetObject - container not found" );
 
  568        catch (uno::Exception &)
 
  570            OSL_FAIL( 
"XclChObjectTable::GetObject - object not found" );
 
  582    OSL_ENSURE( 
mxContainer.is(), 
"XclChObjectTable::InsertObject - container not found" );
 
  599        catch (uno::Exception &)
 
  601            OSL_FAIL( 
"XclChObjectTable::InsertObject - cannot insert object" );
 
  613const char* 
const sppcLineNamesCommon[] =
 
  614    { 
"LineStyle", 
"LineWidth", 
"LineColor", 
"LineTransparence", 
"LineDashName", 
nullptr };
 
  616const char* 
const sppcLineNamesLinear[] =
 
  617    { 
"LineStyle", 
"LineWidth", 
"Color", 
"Transparency", 
"LineDashName", 
nullptr };
 
  619const char* 
const sppcLineNamesFilled[] =
 
  620    { 
"BorderStyle", 
"BorderWidth", 
"BorderColor", 
"BorderTransparency", 
"BorderDashName", 
nullptr };
 
  623const char* 
const sppcAreaNamesCommon[] = { 
"FillStyle", 
"FillColor", 
"FillTransparence", 
nullptr };
 
  625const char* 
const sppcAreaNamesFilled[] = { 
"FillStyle", 
"Color", 
"Transparency", 
nullptr };
 
  627const char* 
const sppcGradNamesCommon[] = {  
"FillStyle", 
"FillGradientName", 
nullptr };
 
  629const char* 
const sppcGradNamesFilled[] = {  
"FillStyle", 
"GradientName", 
nullptr };
 
  631const char* 
const sppcHatchNamesCommon[] = { 
"FillStyle", 
"FillHatchName", 
"FillColor", 
"FillBackground", 
nullptr };
 
  633const char* 
const sppcHatchNamesFilled[] = { 
"FillStyle", 
"HatchName", 
"Color", 
"FillBackground", 
nullptr };
 
  635const char* 
const sppcBitmapNames[] = { 
"FillStyle", 
"FillBitmapName", 
"FillBitmapMode", 
nullptr };
 
  640    maLineHlpCommon( sppcLineNamesCommon ),
 
  641    maLineHlpLinear( sppcLineNamesLinear ),
 
  642    maLineHlpFilled( sppcLineNamesFilled ),
 
  643    maAreaHlpCommon( sppcAreaNamesCommon ),
 
  644    maAreaHlpFilled( sppcAreaNamesFilled ),
 
  645    maGradHlpCommon( sppcGradNamesCommon ),
 
  646    maGradHlpFilled( sppcGradNamesFilled ),
 
  647    maHatchHlpCommon( sppcHatchNamesCommon ),
 
  648    maHatchHlpFilled( sppcHatchNamesFilled ),
 
  649    maBitmapHlp( sppcBitmapNames )
 
  660    drawing::LineStyle eApiStyle = drawing::LineStyle_NONE;
 
  661    sal_Int32 nApiWidth = 0;
 
  662    sal_Int16 nApiTrans = 0;
 
  667    rLineHlp >> eApiStyle >> nApiWidth >> rLineFmt.
maColor >> nApiTrans >> aDashNameAny;
 
  681        case drawing::LineStyle_NONE:
 
  684        case drawing::LineStyle_SOLID:
 
  693        case drawing::LineStyle_DASH:
 
  697            drawing::LineDash aApiDash;
 
  698            if( (aDashNameAny >>= aDashName) && (rDashTable.
GetObject( aDashName ) >>= aApiDash) )
 
  701                if( (aApiDash.Dashes == 0) || (aApiDash.DashLen < aApiDash.DotLen) )
 
  703                    ::std::swap( aApiDash.Dashes, aApiDash.Dots );
 
  704                    ::std::swap( aApiDash.DashLen, aApiDash.DotLen );
 
  707                if( aApiDash.DotLen * 3 > aApiDash.DashLen * 2 )
 
  711                if( (aApiDash.Dashes == 1) && (aApiDash.Dots >= 1) )
 
  713                    rLineFmt.
mnPattern = (aApiDash.Dots == 1) ?
 
  715                else if( aApiDash.Dashes >= 1 )
 
  717                    rLineFmt.
mnPattern = (aApiDash.DashLen < 250) ?
 
  723            OSL_FAIL( 
"XclChPropSetHelper::ReadLineProperties - unknown line style" );
 
  732    drawing::FillStyle eApiStyle = drawing::FillStyle_NONE;
 
  733    sal_Int16 nTransparency = 0;
 
  737    rAreaHlp >> eApiStyle >> rAreaFmt.
maPattColor >> nTransparency;
 
  746    return (eApiStyle != drawing::FillStyle_NONE) && ((eApiStyle != drawing::FillStyle_SOLID) || (nTransparency > 0));
 
  755    drawing::FillStyle eApiStyle = drawing::FillStyle_NONE;
 
  757    sal_Int16 nTransparency = 0;
 
  761    rAreaHlp >> eApiStyle >> aColor >> nTransparency;
 
  765        case drawing::FillStyle_SOLID:
 
  767            OSL_ENSURE( nTransparency > 0, 
"XclChPropSetHelper::ReadEscherProperties - unexpected solid area without transparency" );
 
  768            if( (0 < nTransparency) && (nTransparency <= 100) )
 
  771                sal_uInt32 nEscherColor = 0x02000000;
 
  775                sal_uInt32 nEscherOpacity = 
static_cast< sal_uInt32 
>( (100 - nTransparency) * 655.36 );
 
  776                rEscherFmt.
mxEscherSet = std::make_shared<EscherPropertyContainer>();
 
  786        case drawing::FillStyle_GRADIENT:
 
  789            OUString aGradientName;
 
  792            rGradHlp >> eApiStyle >> aGradientName;
 
  793            awt::Gradient aGradient;
 
  794            if( rGradientTable.
GetObject( aGradientName ) >>= aGradient )
 
  797                rEscherFmt.
mxEscherSet = std::make_shared<EscherPropertyContainer>();
 
  798                rEscherFmt.
mxEscherSet->CreateGradientProperties( aGradient );
 
  802        case drawing::FillStyle_HATCH:
 
  806            bool bFillBackground;
 
  809            rHatchHlp >> eApiStyle >> aHatchName >> aColor >> bFillBackground;
 
  810            drawing::Hatch aHatch;
 
  811            if( rHatchTable.
GetObject( aHatchName ) >>= aHatch )
 
  814                rEscherFmt.
mxEscherSet = std::make_shared<EscherPropertyContainer>();
 
  815                rEscherFmt.
mxEscherSet->CreateEmbeddedHatchProperties( aHatch, aColor, bFillBackground );
 
  820        case drawing::FillStyle_BITMAP:
 
  823            OUString aBitmapName;
 
  824            drawing::BitmapMode eApiBmpMode;
 
  826            maBitmapHlp >> eApiStyle >> aBitmapName >> eApiBmpMode;
 
  827            uno::Reference<awt::XBitmap> xBitmap;
 
  828            if (rBitmapTable.
GetObject( aBitmapName ) >>= xBitmap)
 
  831                rEscherFmt.
mxEscherSet = std::make_shared<EscherPropertyContainer>();
 
  832                rEscherFmt.
mxEscherSet->CreateEmbeddedBitmapProperties( xBitmap, eApiBmpMode );
 
  833                rPicFmt.
mnBmpMode = (eApiBmpMode == drawing::BitmapMode_REPEAT) ?
 
  839            OSL_FAIL( 
"XclChPropSetHelper::ReadEscherProperties - unknown fill style" );
 
  846    chart2::Symbol aApiSymbol;
 
  854    switch( aApiSymbol.Style )
 
  856        case chart2::SymbolStyle_NONE:
 
  859        case chart2::SymbolStyle_STANDARD:
 
  860            switch( aApiSymbol.StandardSymbol )
 
  887    sal_Int32 nApiSize = (aApiSymbol.Size.Width + aApiSymbol.Size.Height + 1) / 2;
 
  912    sal_Int32 nApiWidth = 0;    
 
  921    drawing::LineStyle eApiStyle = drawing::LineStyle_NONE;
 
  922    sal_Int16 nApiTrans = 0;
 
  923    sal_Int32 nDotLen = ::std::min< sal_Int32 >( rLineFmt.
mnWeight + 105, 210 );
 
  924    drawing::LineDash aApiDash( drawing::DashStyle_RECT, 0, nDotLen, 0, 4 * nDotLen, nDotLen );
 
  929            eApiStyle = drawing::LineStyle_SOLID;
 
  932            eApiStyle = drawing::LineStyle_SOLID; nApiTrans = 25;
 
  935            eApiStyle = drawing::LineStyle_SOLID; nApiTrans = 50;
 
  938            eApiStyle = drawing::LineStyle_SOLID; nApiTrans = 75;
 
  941            eApiStyle = drawing::LineStyle_DASH; aApiDash.Dashes = 1;
 
  944            eApiStyle = drawing::LineStyle_DASH; aApiDash.Dots = 1;
 
  947            eApiStyle = drawing::LineStyle_DASH; aApiDash.Dashes = aApiDash.Dots = 1;
 
  950            eApiStyle = drawing::LineStyle_DASH; aApiDash.Dashes = 1; aApiDash.Dots = 2;
 
  955    sal_Int32 nApiColor = sal_Int32( rLineFmt.
maColor );
 
  959    if( eApiStyle == drawing::LineStyle_DASH )
 
  962        if( !aDashName.isEmpty() )
 
  963            aDashNameAny <<= aDashName;
 
  969    rLineHlp << eApiStyle << nApiWidth << nApiColor << nApiTrans << aDashNameAny;
 
  976    drawing::FillStyle eFillStyle = drawing::FillStyle_NONE;
 
  982        eFillStyle = drawing::FillStyle_SOLID;
 
  989    rAreaHlp << eFillStyle << aColor << sal_Int16(0);
 
 1005    switch( pStyleItem->GetValue() )
 
 1007        case drawing::FillStyle_SOLID:
 
 1013                sal_uInt16 nTransp = pTranspItem ? pTranspItem->GetValue() : 0;
 
 1016                rAreaHlp << drawing::FillStyle_SOLID << pColorItem->GetColorValue() << 
static_cast< sal_Int16 
>( nTransp );
 
 1020        case drawing::FillStyle_GRADIENT:
 
 1026                    OUString aGradName = rGradientTable.
InsertObject( aGradientAny );
 
 1027                    if( !aGradName.isEmpty() )
 
 1031                        rGradHlp << drawing::FillStyle_GRADIENT << aGradName;
 
 1037        case drawing::FillStyle_BITMAP:
 
 1041                if (pBmpItem->QueryValue(aBitmapAny, 
MID_BITMAP))
 
 1043                    OUString aBmpName = rBitmapTable.
InsertObject( aBitmapAny );
 
 1044                    if( !aBmpName.isEmpty() )
 
 1049                        drawing::BitmapMode eApiBmpMode = bStretch ? drawing::BitmapMode_STRETCH : drawing::BitmapMode_REPEAT;
 
 1051                        maBitmapHlp << drawing::FillStyle_BITMAP << aBmpName << eApiBmpMode;
 
 1058            OSL_FAIL( 
"XclChPropSetHelper::WriteEscherProperties - unknown fill mode" );
 
 1066    chart2::Symbol aApiSymbol;
 
 1067    aApiSymbol.Style = chart2::SymbolStyle_STANDARD;
 
 1085    aApiSymbol.Size = awt::Size( nApiSize, nApiSize );
 
 1088    aApiSymbol.FillColor = sal_Int32( rMarkerFmt.
maFillColor );
 
 1090        aApiSymbol.FillColor : sal_Int32( rMarkerFmt.
maLineColor );
 
 1097        ScfPropertySet& rPropSet, sal_uInt16 nRotation, 
bool bSupportsStacked )
 
 1104        if( bSupportsStacked )
 
 1118        default: OSL_FAIL( 
"XclChPropSetHelper::GetLineHelper - unknown property mode" );
 
 1129        default:    OSL_FAIL( 
"XclChPropSetHelper::GetAreaHelper - unknown property mode" );
 
 1140        default:    OSL_FAIL( 
"XclChPropSetHelper::GetGradientHelper - unknown property mode" );
 
 1151        default:    OSL_FAIL( 
"XclChPropSetHelper::GetHatchHelper - unknown property mode" );
 
 1163uno::Reference<drawing::XShape> lclGetMainTitleShape(
const uno::Reference<chart::XChartDocument> & rxChart1Doc)
 
 1166    if (rxChart1Doc.is() && aPropSet.GetBoolProperty(
"HasMainTitle"))
 
 1167        return rxChart1Doc->getTitle();
 
 1168    return uno::Reference<drawing::XShape>();
 
 1171uno::Reference<drawing::XShape> lclGetXAxisTitleShape(
const uno::Reference<chart::XChartDocument> & rxChart1Doc)
 
 1173    uno::Reference<chart::XAxisXSupplier> xAxisSupp(rxChart1Doc->getDiagram(), uno::UNO_QUERY);
 
 1175    if (xAxisSupp.is() && aPropSet.GetBoolProperty(
"HasXAxisTitle"))
 
 1176        return xAxisSupp->getXAxisTitle();
 
 1177    return uno::Reference<drawing::XShape>();
 
 1180uno::Reference<drawing::XShape> lclGetYAxisTitleShape(
const uno::Reference<chart::XChartDocument> & rxChart1Doc )
 
 1182    uno::Reference<chart::XAxisYSupplier> xAxisSupp(rxChart1Doc->getDiagram(), uno::UNO_QUERY);
 
 1184    if (xAxisSupp.is() && aPropSet.GetBoolProperty(
"HasYAxisTitle"))
 
 1185        return xAxisSupp->getYAxisTitle();
 
 1186    return uno::Reference<drawing::XShape>();
 
 1189uno::Reference<drawing::XShape> lclGetZAxisTitleShape(
const uno::Reference<chart::XChartDocument> & rxChart1Doc )
 
 1191    uno::Reference<chart::XAxisZSupplier> xAxisSupp(rxChart1Doc->getDiagram(), uno::UNO_QUERY);
 
 1193    if (xAxisSupp.is() && aPropSet.GetBoolProperty(
"HasZAxisTitle"))
 
 1194        return xAxisSupp->getZAxisTitle();
 
 1195    return uno::Reference<drawing::XShape>();
 
 1198uno::Reference<drawing::XShape> lclGetSecXAxisTitleShape(
const uno::Reference<chart::XChartDocument> & rxChart1Doc)
 
 1200    uno::Reference<chart::XSecondAxisTitleSupplier> xAxisSupp(rxChart1Doc->getDiagram(), uno::UNO_QUERY);
 
 1202    if (xAxisSupp.is() && aPropSet.GetBoolProperty(
"HasSecondaryXAxisTitle"))
 
 1203        return xAxisSupp->getSecondXAxisTitle();
 
 1204    return uno::Reference<drawing::XShape>();
 
 1207uno::Reference<drawing::XShape> lclGetSecYAxisTitleShape(
const uno::Reference<chart::XChartDocument> & rxChart1Doc)
 
 1209    uno::Reference<chart::XSecondAxisTitleSupplier> xAxisSupp(rxChart1Doc->getDiagram(), uno::UNO_QUERY);
 
 1211    if (xAxisSupp.is() && aPropSet.GetBoolProperty(
"HasSecondaryYAxisTitle"))
 
 1212        return xAxisSupp->getSecondYAxisTitle();
 
 1213    return uno::Reference<drawing::XShape>();
 
 1242    OSL_ENSURE( rxChartDoc.is(), 
"XclChRootData::InitConversion - missing chart document" );
 
 1275    XclChGetShapeFuncMap::const_iterator aIt = 
maGetShapeFuncs.find( rTitleKey );
 
 1276    OSL_ENSURE( aIt != 
maGetShapeFuncs.end(), 
"XclChRootData::GetTitleShape - invalid title key" );
 
 1277    uno::Reference<chart::XChartDocument> xChart1Doc( 
mxChartDoc, uno::UNO_QUERY );
 
 1278    uno::Reference<drawing::XShape> xTitleShape;
 
 1280        xTitleShape = (aIt->second)(xChart1Doc);
 
const OUString maServiceName
sal_uInt8 GetBlue() const
sal_uInt8 GetGreen() const
static css::uno::Reference< css::uno::XInterface > CreateInstance(const css::uno::Reference< css::lang::XMultiServiceFactory > &xFactory, const OUString &rServiceName)
Creates an instance from the passed service name, using the passed service factory.
Generic helper class for reading from and writing to property sets.
void ReadFromPropertySet(const ScfPropertySet &rPropSet)
Reads all values from the passed property set.
void WriteToPropertySet(ScfPropertySet &rPropSet) const
Writes all values to the passed property set.
void InitializeWrite()
Must be called before reading or storing property values in the helper.
A wrapper for a UNO property set.
void SetProperty(const OUString &rPropName, const Type &rValue)
Puts the passed value into the property set.
bool GetBoolProperty(const OUString &rPropName) const
Gets the specified Boolean property from the property set.
bool GetProperty(Type &rValue, const OUString &rPropName) const
Gets the specified property from the property set.
XclChObjectTable(css::uno::Reference< css::lang::XMultiServiceFactory > xFactory, OUString aServiceName, OUString aObjNameBase)
css::uno::Reference< css::lang::XMultiServiceFactory > mxFactory
OUString maServiceName
Container for the objects.
OUString InsertObject(const css::uno::Any &rObj)
Inserts a named formatting object into the chart document.
css::uno::Any GetObject(const OUString &rObjName)
Returns a named formatting object from the chart document.
sal_Int32 mnIndex
Base of names for inserted objects.
OUString maObjNameBase
Service name to create the container.
css::uno::Reference< css::container::XNameContainer > mxContainer
Factory to create the container.
ScfPropSetHelper & GetAreaHelper(XclChPropertyMode ePropMode)
Returns an area property set helper according to the passed property mode.
ScfPropSetHelper maLineHlpFilled
Properties for lines in linear series.
ScfPropSetHelper maHatchHlpCommon
Properties for gradients in filled series.
static void WriteMarkerProperties(ScfPropertySet &rPropSet, const XclChMarkerFormat &rMarkerFmt)
Writes all marker properties to the passed property set.
static void WriteRotationProperties(ScfPropertySet &rPropSet, sal_uInt16 nRotation, bool bSupportsStacked)
Writes rotation properties to the passed property set.
ScfPropSetHelper maGradHlpCommon
Properties for areas in filled series.
ScfPropSetHelper maLineHlpCommon
void WriteAreaProperties(ScfPropertySet &rPropSet, const XclChAreaFormat &rAreaFmt, XclChPropertyMode ePropMode)
Writes solid area properties to the passed property set.
static sal_uInt16 ReadRotationProperties(const ScfPropertySet &rPropSet, bool bSupportsStacked)
Reads rotation properties from the passed property set.
ScfPropSetHelper & GetLineHelper(XclChPropertyMode ePropMode)
Returns a line property set helper according to the passed property mode.
ScfPropSetHelper maAreaHlpCommon
Properties for lines in filled series.
ScfPropSetHelper & GetHatchHelper(XclChPropertyMode ePropMode)
Returns a hatch property set helper according to the passed property mode.
ScfPropSetHelper maBitmapHlp
Properties for hatches in filled series.
static void ReadMarkerProperties(XclChMarkerFormat &rMarkerFmt, const ScfPropertySet &rPropSet, sal_uInt16 nFormatIdx)
Reads all marker properties from the passed property set.
void WriteEscherProperties(ScfPropertySet &rPropSet, XclChObjectTable &rGradientTable, XclChObjectTable &rBitmapTable, const XclChEscherFormat &rEscherFmt, const XclChPicFormat *pPicFmt, sal_uInt32 nDffFillType, XclChPropertyMode ePropMode)
Writes gradient or bitmap area properties to the passed property set.
void ReadLineProperties(XclChLineFormat &rLineFmt, XclChObjectTable &rDashTable, const ScfPropertySet &rPropSet, XclChPropertyMode ePropMode)
Reads all line properties from the passed property set.
ScfPropSetHelper maHatchHlpFilled
Properties for hatches in common objects.
ScfPropSetHelper maAreaHlpFilled
Properties for areas in common objects.
ScfPropSetHelper & GetGradientHelper(XclChPropertyMode ePropMode)
Returns a gradient property set helper according to the passed property mode.
void WriteLineProperties(ScfPropertySet &rPropSet, XclChObjectTable &rDashTable, const XclChLineFormat &rLineFmt, XclChPropertyMode ePropMode)
Writes all line properties to the passed property set.
ScfPropSetHelper maLineHlpLinear
Properties for lines in common objects.
bool ReadAreaProperties(XclChAreaFormat &rAreaFmt, const ScfPropertySet &rPropSet, XclChPropertyMode ePropMode)
Reads solid area properties from the passed property set.
ScfPropSetHelper maGradHlpFilled
Properties for gradients in common objects.
void ReadEscherProperties(XclChEscherFormat &rEscherFmt, XclChPicFormat &rPicFmt, XclChObjectTable &rGradientTable, XclChObjectTable &rHatchTable, XclChObjectTable &rBitmapTable, const ScfPropertySet &rPropSet, XclChPropertyMode ePropMode)
Reads gradient or bitmap area properties from the passed property set.
Provides access to chart type info structs for all available chart types.
const XclChTypeInfo & GetTypeInfoFromService(std::u16string_view rServiceName) const
Returns the first fitting chart type info for the passed service name.
XclChTypeInfoMap maInfoMap
const XclChTypeInfo & GetTypeInfo(XclChTypeId eType) const
Returns chart type info for a unique chart type identifier.
const XclChTypeInfo & GetTypeInfoFromRecId(sal_uInt16 nRecId) const
Returns the first fitting chart type info for an Excel chart type record identifier.
static sal_uInt16 GetSeriesFillAutoColorIdx(sal_uInt16 nFormatIdx)
Returns a palette index for automatic series fill colors.
static sal_uInt16 GetSeriesLineAutoColorIdx(sal_uInt16 nFormatIdx)
Returns a palette index for automatic series line colors.
static sal_uInt8 GetSeriesFillAutoTransp(sal_uInt16 nFormatIdx)
Returns a transparency value for automatic series fill colors.
static sal_uInt16 GetAutoMarkerType(sal_uInt16 nFormatIdx)
Returns an automatic symbol index for the passed format index.
static OUString GetErrorBarValuesRole(sal_uInt8 nBarType)
Returns the role name for a manual data source for error bars.
static bool HasMarkerFillColor(sal_uInt16 nMarkerType)
Returns true, if the passed marker type is filled.
Access to global data for a filter object (imported or exported document) from other classes.
sal_Int32 GetHmmFromPixelX(double fPixelX) const
Calculates the width of the passed number of pixels in 1/100 mm.
sal_Int32 GetHmmFromPixelY(double fPixelY) const
Calculates the height of the passed number of pixels in 1/100 mm.
void setColor(Color const &rColor)
constexpr ::Color COL_WHITE(0xFF, 0xFF, 0xFF)
constexpr ::Color COL_BLACK(0x00, 0x00, 0x00)
#define ESCHER_Prop_fNoFillHitTest
#define ESCHER_Prop_fillBackColor
#define ESCHER_Prop_fillType
#define ESCHER_Prop_fillOpacity
#define ESCHER_Prop_fillBackOpacity
#define ESCHER_Prop_fillColor
Reference< XSingleServiceFactory > xFactory
#define SAL_N_ELEMENTS(arr)
std::shared_ptr< T > make_shared(Args &&... args)
bool equalsAscii(std::u16string_view s1, std::string_view s2)
uno::Sequence< double > maFillColor
uno::Reference< presentation::XTransitionFactory > mxFactory
sal_Int32 GetApiAxesSetIndex() const
Returns the axes set index used by the chart API.
XclChAxesSet()
Primary/secondary axes set.
sal_uInt16 mnAxesSetId
Position of the axes set (inner plot area).
sal_Int32 GetApiAxisDimension() const
Returns the axis dimension index used by the chart API.
XclChChart3d()
Additional flags.
Specifies the position of a data series or data point.
sal_uInt16 mnPointIdx
Series index of series or a data point.
XclChDataPointPos(sal_uInt16 nSeriesIdx=EXC_CHSERIES_INVALID, sal_uInt16 nPointIdx=EXC_CHDATAFORMAT_ALLPOINTS)
Index of a data point inside a series.
XclChDateRange()
Additional flags.
void Set(const XclChTypeInfo &rTypeInfo, bool b3dChart, bool bSpline)
XclChExtTypeInfo(const XclChTypeInfo &rTypeInfo)
Series lines are smoothed.
bool mbSpline
Chart is actually a 3D chart.
XclChFrBlock(sal_uInt16 nType)
Optional secondary value for current context.
XclChFrLabelProps()
Flags indicating which values to be displayed.
XclChFramePos()
Bottom-right position mode.
XclChFrame()
Additional flags.
XclChLabelRange()
Additional flags.
XclChLegend()
Additional flags.
XclChObjectLink()
Target of the link.
XclChProperties()
Plotting mode for empty cells.
XclChRectangle()
Height of the object in 1/4000 of chart height.
XclChObjectTableRef mxLineDashTable
Provides info about auto formatting.
sal_Int32 mnBorderGapX
Maps title shape getter functions.
double mfUnitSizeX
Border gap to chart space in 1/100mm.
XclChGetShapeFuncMap maGetShapeFuncs
Container for bitmap fill styles.
XclChObjectTableRef mxHatchTable
Container for gradient fill styles.
void InitConversion(const XclRoot &rRoot, const css::uno::Reference< css::chart2::XChartDocument > &rxChartDoc, const tools::Rectangle &rChartRect)
Starts the API chart document conversion.
sal_Int32 mnBorderGapY
Border gap to chart space in 1/100mm.
css::uno::Reference< css::chart2::XChartDocument > mxChartDoc
XclChObjectTableRef mxBitmapTable
Container for hatch fill styles.
tools::Rectangle maChartRect
The chart document.
css::uno::Reference< css::drawing::XShape > GetTitleShape(const XclChTextKey &rTitleKey) const
Returns the drawing shape interface of the specified title object.
void FinishConversion()
Finishes the API chart document conversion.
double mfUnitSizeY
Size of a chart X unit (1/4000 of chart width) in 1/100 mm.
XclChRootData()
Size of a chart Y unit (1/4000 of chart height) in 1/100 mm.
XclChObjectTableRef mxGradientTable
Container for line dash styles.
XclChSerErrorBar()
Type of the line ends.
XclChSerTrendLine()
1 = Show R-squared.
XclChSeries()
Number of bubble entries.
XclChSourceLink()
Number format index.
A map key for text and title objects.
XclChText()
Text object rotation (BIFF8+).
model::ComplexColor maTextComplexColor
Position of the text object.
XclChTick()
Tick labels angle (BIFF8+).
model::ComplexColor maTextComplexColor
XclChTypeGroup()
Chart type group index.
Contains information for a chart type.
bool mbSupports3d
true = Types can be combined in one axes set.
XclChType()
Additional flags (all chart types).
XclChValueRange()
Additional flags.
UNDERLYING_TYPE get() const
constexpr TypedWhichId< XFillColorItem > XATTR_FILLCOLOR(XATTR_FILL_FIRST+1)
constexpr TypedWhichId< XFillTransparenceItem > XATTR_FILLTRANSPARENCE(XATTR_FILL_FIRST+5)
constexpr TypedWhichId< XFillBitmapItem > XATTR_FILLBITMAP(XATTR_FILL_FIRST+4)
constexpr TypedWhichId< XFillStyleItem > XATTR_FILLSTYLE(XATTR_FILL_FIRST)
constexpr TypedWhichId< XFillGradientItem > XATTR_FILLGRADIENT(XATTR_FILL_FIRST+2)
bool operator<(const XclChDataPointPos &rL, const XclChDataPointPos &rR)
const sal_uInt8 EXC_CHTICK_TRANSPARENT
Next to axis.
const sal_Int16 EXC_CHLINEFORMAT_TRIPLE
const sal_uInt8 EXC_CHTICK_OUTSIDE
const sal_uInt16 EXC_CHVALUERANGE_AUTOMAJOR
@ EXC_CHTYPECATEG_SCATTER
Pie and donut charts.
@ EXC_CHTYPECATEG_LINE
Bar charts (horizontal or vertical).
@ EXC_CHTYPECATEG_PIE
Radar charts (linear or filled).
@ EXC_CHTYPECATEG_RADAR
Line charts (line, area, stock charts).
@ EXC_CHTYPECATEG_SURFACE
Scatter and bubble charts.
const sal_uInt8 EXC_CHSERERR_NONE
const sal_uInt8 EXC_CHSERERR_XPLUS
For internal use only.
const sal_uInt16 EXC_CHDATERANGE_AUTOMIN
constexpr OUStringLiteral EXC_CHPROP_SYMBOL
const sal_uInt16 EXC_CHDATERANGE_DAYS
Recognize date/text automatically.
constexpr OUStringLiteral EXC_CHPROP_STACKCHARACTERS
const sal_uInt16 EXC_CHFRAMEPOS_PARENT
const sal_uInt16 EXC_CHAXIS_Y
const sal_uInt16 EXC_CHVALUERANGE_BIT8
Other axis crosses at own maximum.
const sal_uInt16 EXC_ID_CHPIEEXT
Sharp top, truncated.
constexpr OUStringLiteral SERVICE_DRAWING_BITMAPTABLE
const sal_Int16 EXC_CHLINEFORMAT_HAIR
const sal_uInt16 EXC_CHLEGEND_STACKED
@ EXC_CHVARPOINT_SINGLE
No varied colors supported.
@ EXC_CHVARPOINT_MULTI
Only supported, if type group contains only one series.
const sal_uInt16 EXC_CHSERIES_NUMERIC
const sal_uInt8 EXC_CHTICK_INSIDE
const sal_Int16 EXC_CHLINEFORMAT_SINGLE
const sal_uInt16 EXC_CHMARKERFORMAT_AUTO
Automatic symbol size for triple lines.
const sal_uInt16 EXC_CHLEGEND_AUTOPOSX
const sal_uInt16 EXC_CHLINEFORMAT_NONE
constexpr OUStringLiteral EXC_CHPROP_TEXTROTATION
const sal_Int32 EXC_CHART_AXESSET_NONE
API Z axis index.
const sal_Int32 EXC_CHART_TOTALUNITS
API secondary axes set index.
constexpr OUStringLiteral EXC_CHPROP_ROLE_ERRORBARS_POSY
const sal_uInt16 EXC_CHTEXT_POS_DEFAULT
Data point caption is category name.
const sal_uInt8 EXC_CHSERERR_XMINUS
const sal_uInt16 EXC_CHMARKERFORMAT_CIRCLE
const sal_Int32 EXC_CHART_AXIS_X
For internal use only.
constexpr OUStringLiteral SERVICE_DRAWING_HATCHTABLE
const sal_uInt16 EXC_CHMARKERFORMAT_DOWJ
const sal_uInt16 EXC_ID_CHLINE
const sal_uInt16 EXC_CHTEXT_AUTOFILL
Text object is removed.
const sal_uInt16 EXC_CHDATERANGE_AUTOMAJOR
const sal_Int32 EXC_CHART_AXESSET_SECONDARY
API primary axes set index.
const sal_uInt16 EXC_CHMARKERFORMAT_STAR
const sal_uInt16 EXC_CHFRAME_AUTOSIZE
const sal_uInt8 EXC_CHPROPS_EMPTY_SKIP
Manual plot area layout in CHFRAMEPOS record.
const sal_uInt16 EXC_CHPICFORMAT_STACK
Bitmap stretched to area.
const sal_Int16 EXC_CHLINEFORMAT_DOUBLE
const sal_uInt8 EXC_CHTICK_NEXT
Above diagram/left of diagram.
const sal_uInt16 EXC_CHLINEFORMAT_SOLID
const sal_uInt16 EXC_CHAXIS_X
const sal_uInt16 EXC_CHAXIS_Z
const sal_uInt16 EXC_ID_CHAREA
const sal_uInt16 EXC_ID_CHBAR
const sal_uInt16 EXC_CHLINEFORMAT_LIGHTTRANS
const sal_uInt16 EXC_CHDATERANGE_AUTOBASE
const sal_uInt16 EXC_CHMARKERFORMAT_NOFILL
const sal_uInt16 EXC_CHDATAFORMAT_DEFAULT
Maximum number of data points.
const sal_uInt8 EXC_CH3DDATAFORMAT_STRAIGHT
Circular base.
@ EXC_CHTEXTTYPE_AXISTITLE
Chart legend.
XclChPropertyMode
Specifies the type of a formatting.
@ EXC_CHPROPMODE_LINEARSERIES
Common objects, no special handling.
@ EXC_CHPROPMODE_FILLEDSERIES
Specific to data series drawn as lines.
const sal_uInt16 EXC_CHPICFORMAT_TOPBOTTOM
Bitmap scaled to axis scale.
const sal_uInt8 EXC_CHSERERR_END_TSHAPE
Line end: blank.
const sal_uInt16 EXC_ID_CHSURFACE
const sal_uInt8 EXC_CHSRCLINK_DEFAULT
const sal_uInt16 EXC_CHFRAME_AUTOPOS
const sal_uInt16 EXC_CHPICFORMAT_LEFTRIGHT
constexpr OUStringLiteral EXC_CHPROP_ROLE_ERRORBARS_NEGX
const sal_uInt16 EXC_ID_CHRADARAREA
const sal_uInt16 EXC_CHAREAFORMAT_AUTO
const sal_uInt16 EXC_CHCHART3D_AUTOHEIGHT
false = Z axis, true = clustered/stacked.
const sal_uInt32 EXC_CHMARKERFORMAT_SINGLESIZE
Automatic symbol size for hair lines.
const sal_uInt8 EXC_CHSERERR_YMINUS
const sal_Int32 EXC_CHART_AXIS_NONE
Automatic rotation, e.g. axis labels (internal use only).
XclChObjectType
Enumerates different object types for specific automatic formatting behaviour.
@ EXC_CHOBJTYPE_LINEARSERIES
Chart legend.
@ EXC_CHOBJTYPE_TEXT
Floor formatting in 3d charts.
@ EXC_CHOBJTYPE_GRIDLINE
Axis line format.
@ EXC_CHOBJTYPE_WALL3D
Wall formatting in 2d charts.
@ EXC_CHOBJTYPE_PLOTFRAME
Chart background.
@ EXC_CHOBJTYPE_HILOLINE
Data point connector line.
@ EXC_CHOBJTYPE_LEGEND
Text boxes (titles, data point labels).
@ EXC_CHOBJTYPE_BACKGROUND
@ EXC_CHOBJTYPE_WHITEDROPBAR
High/low lines in stock charts.
@ EXC_CHOBJTYPE_FILLEDSERIES
Series formatting in a chart supporting line formatting only.
@ EXC_CHOBJTYPE_TRENDLINE
Axis grid line format.
@ EXC_CHOBJTYPE_ERRORBAR
Series trend line.
@ EXC_CHOBJTYPE_AXISLINE
Series formatting in a chart supporting area formatting.
@ EXC_CHOBJTYPE_CONNECTLINE
Series error bar.
@ EXC_CHOBJTYPE_FLOOR3D
Wall formatting in 3d charts.
@ EXC_CHOBJTYPE_BLACKDROPBAR
White-day drop bar in stock charts.
const sal_uInt8 EXC_CHLEGEND_RIGHT
const sal_uInt16 EXC_CHVALUERANGE_AUTOMINOR
const sal_uInt16 EXC_CHPICFORMAT_NONE
const sal_uInt16 EXC_CHDATERANGE_AUTOMAX
const sal_uInt16 EXC_CHLINEFORMAT_DASHDOTDOT
const sal_uInt16 EXC_CHMARKERFORMAT_CROSS
const sal_uInt16 EXC_CHMARKERFORMAT_PLUS
const sal_uInt16 EXC_ID_CHPIE
const sal_uInt16 EXC_CHLINEFORMAT_AUTO
const sal_uInt16 EXC_CHLINEFORMAT_MEDTRANS
const sal_uInt16 EXC_CHLEGEND_AUTOSERIES
const sal_uInt8 EXC_CHSRCLINK_TITLE
const sal_uInt16 EXC_CHTEXT_TRANSPARENT
const sal_uInt16 EXC_CHLINEFORMAT_DOT
XclChTypeId
Enumerates all kinds of different chart types.
@ EXC_CHTYPEID_RADARAREA
Linear radar chart.
@ EXC_CHTYPEID_BUBBLES
Scatter (XY) chart.
@ EXC_CHTYPEID_HORBAR
Vertical bar chart.
@ EXC_CHTYPEID_AREA
Line chart.
@ EXC_CHTYPEID_DONUT
Pie chart.
@ EXC_CHTYPEID_LINE
Horizontal bar chart.
@ EXC_CHTYPEID_PIEEXT
Donut chart.
@ EXC_CHTYPEID_RADARLINE
Stock chart.
@ EXC_CHTYPEID_UNKNOWN
Surface chart.
@ EXC_CHTYPEID_STOCK
Area chart.
@ EXC_CHTYPEID_SURFACE
Bubble chart.
@ EXC_CHTYPEID_PIE
Filled radar chart.
@ EXC_CHTYPEID_SCATTER
Pie-to-pie or pie-to-bar chart.
const sal_uInt16 EXC_CHDATERANGE_AUTOMINOR
const sal_uInt16 EXC_CHSERGROUP_NONE
const sal_uInt16 EXC_CHVALUERANGE_AUTOMAX
const sal_uInt16 EXC_CHSCATTER_AREA
const sal_uInt8 EXC_CH3DDATAFORMAT_RECT
const sal_uInt8 EXC_CHTEXT_ALIGN_CENTER
Horizontal: left, vertical: top.
const sal_uInt16 EXC_ID_CHRADARLINE
constexpr OUStringLiteral EXC_CHPROP_ROLE_ERRORBARS_POSX
const sal_uInt16 EXC_CHLEGEND_AUTOPOSY
const sal_uInt16 EXC_CHLINEFORMAT_DASH
const sal_uInt16 EXC_CHVALUERANGE_AUTOMIN
const sal_uInt16 EXC_CHART_AUTOROTATION
const sal_uInt8 EXC_CHLEGEND_MEDIUM
const sal_uInt16 EXC_CHPICFORMAT_STRETCH
For internal use only.
constexpr OUStringLiteral SERVICE_DRAWING_DASHTABLE
const sal_uInt16 EXC_CHLEGEND_DOCKED
const sal_uInt16 EXC_CHMARKERFORMAT_DIAMOND
const sal_uInt16 EXC_CHAXESSET_PRIMARY
const sal_uInt16 EXC_CHMARKERFORMAT_NOLINE
const sal_uInt16 EXC_CHLINEFORMAT_DASHDOT
const sal_uInt16 EXC_CHMARKERFORMAT_NOSYMBOL
constexpr OUStringLiteral SERVICE_DRAWING_GRADIENTTABLE
const sal_uInt8 EXC_CHSERERR_FIXED
const sal_uInt16 EXC_CHTEXT_AUTOCOLOR
const sal_uInt16 EXC_CHVALUERANGE_AUTOCROSS
const sal_uInt16 EXC_ID_CHSCATTER
constexpr OUStringLiteral EXC_CHPROP_ROLE_ERRORBARS_NEGY
const sal_uInt16 EXC_CHAXIS_NONE
const sal_uInt16 EXC_CHMARKERFORMAT_SQUARE
const sal_uInt16 EXC_CHTICK_AUTOROT
const sal_uInt16 EXC_CHDATERANGE_AUTODATE
Other axis crosses at own maximum.
const sal_uInt16 EXC_CHPICFORMAT_FRONTBACK
const sal_Int32 EXC_CHART_AXIS_Y
API X axis index.
const sal_uInt16 EXC_CHDATERANGE_AUTOCROSS
const sal_uInt8 EXC_CHSERTREND_POLYNOMIAL
const sal_Int32 EXC_CHART_AXESSET_PRIMARY
For internal use only.
const sal_uInt8 EXC_CHSERERR_YPLUS
@ EXC_CHFRAMETYPE_INVISIBLE
Missing frame represents automatic formatting.
const sal_uInt16 EXC_CHMARKERFORMAT_STDDEV
const sal_uInt16 EXC_CHFRAME_STANDARD
const sal_Int32 EXC_CHART_AXIS_Z
API Y axis index.
const sal_uInt16 EXC_CHLINEFORMAT_DARKTRANS
const sal_uInt16 EXC_CHAXESSET_SECONDARY
const sal_uInt16 EXC_CHOBJLINK_NONE
const sal_uInt16 EXC_CHMARKERFORMAT_TRIANGLE
const sal_uInt16 EXC_CHTICK_AUTOCOLOR
const sal_uInt8 EXC_ROT_NONE
Text orientation: 90 deg clockwise.
const sal_uInt8 EXC_ROT_STACKED
Text rotation: 90 deg clockwise.
const sal_uInt16 EXC_COLOR_CHBORDERAUTO
Chart window background color (BIFF8 charts).
const sal_uInt8 EXC_PATT_NONE
const sal_uInt8 EXC_PATT_SOLID
const sal_uInt16 EXC_COLOR_CHWINDOWBACK
Chart window text color (BIFF8 charts).
const sal_uInt16 EXC_COLOR_CHWINDOWTEXT
System button background color (face color).