Skip to content
Projeler
Gruplar
Parçacıklar
Yardım
Yükleniyor...
Oturum aç / Kaydol
Gezinmeyi değiştir
C
core
Proje
Proje
Ayrıntılar
Etkinlik
Cycle Analytics
Depo (repository)
Depo (repository)
Dosyalar
Kayıtlar (commit)
Dallar (branch)
Etiketler
Katkıda bulunanlar
Grafik
Karşılaştır
Grafikler
Konular (issue)
0
Konular (issue)
0
Liste
Pano
Etiketler
Kilometre Taşları
Birleştirme (merge) Talepleri
0
Birleştirme (merge) Talepleri
0
CI / CD
CI / CD
İş akışları (pipeline)
İşler
Zamanlamalar
Grafikler
Paketler
Paketler
Wiki
Wiki
Parçacıklar
Parçacıklar
Üyeler
Üyeler
Collapse sidebar
Close sidebar
Etkinlik
Grafik
Grafikler
Yeni bir konu (issue) oluştur
İşler
Kayıtlar (commit)
Konu (issue) Panoları
Kenar çubuğunu aç
LibreOffice
core
Commits
1cd3e203
Kaydet (Commit)
1cd3e203
authored
Haz 29, 2013
tarafından
Tomaž Vajngerl
Dosyalara gözat
Seçenekler
Dosyalara Gözat
İndir
Eposta Yamaları
Sade Fark
Multiple trendline removing and changing type support.
Change-Id: I33a298341e228080920977639cb59986d0b4bd82
üst
4c116a7b
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
114 additions
and
89 deletions
+114
-89
WrappedStatisticProperties.cxx
...controller/chartapiwrapper/WrappedStatisticProperties.cxx
+10
-5
RegressionCurveItemConverter.cxx
...ontroller/itemsetwrapper/RegressionCurveItemConverter.cxx
+5
-11
StatisticsItemConverter.cxx
...rce/controller/itemsetwrapper/StatisticsItemConverter.cxx
+23
-13
ChartController_Insert.cxx
chart2/source/controller/main/ChartController_Insert.cxx
+7
-7
ChartController_Tools.cxx
chart2/source/controller/main/ChartController_Tools.cxx
+48
-27
RegressionCurveHelper.hxx
chart2/source/inc/RegressionCurveHelper.hxx
+7
-5
RegressionCurveHelper.cxx
chart2/source/tools/RegressionCurveHelper.cxx
+14
-21
No files found.
chart2/source/controller/chartapiwrapper/WrappedStatisticProperties.cxx
Dosyayı görüntüle @
1cd3e203
...
...
@@ -867,13 +867,18 @@ WrappedRegressionCurvesProperty::~WrappedRegressionCurvesProperty()
}
void
WrappedRegressionCurvesProperty
::
setValueToSeries
(
const
Reference
<
beans
::
XPropertySet
>&
xSeriesPropertySet
,
::
com
::
sun
::
star
::
chart
::
ChartRegressionCurveType
aNewValue
)
const
{
uno
::
Reference
<
chart2
::
XRegressionCurveContainer
>
xRegCnt
(
xSeriesPropertySet
,
uno
::
UNO_QUERY
);
if
(
xRegCnt
.
is
()
)
uno
::
Reference
<
chart2
::
XRegressionCurveContainer
>
xRegressionCurveContainer
(
xSeriesPropertySet
,
uno
::
UNO_QUERY
);
uno
::
Reference
<
chart2
::
XRegressionCurve
>
xRegressionCurve
(
xSeriesPropertySet
,
uno
::
UNO_QUERY
);
if
(
xRegressionCurveContainer
.
is
()
&&
xRegressionCurve
.
is
()
)
{
RegressionCurveHelper
::
tRegressionType
eNewRegressionType
=
lcl_getRegressionType
(
aNewValue
);
RegressionCurveHelper
::
removeAllExceptMeanValueLine
(
xRegCnt
);
if
(
eNewRegressionType
!=
RegressionCurveHelper
::
REGRESSION_TYPE_NONE
)
RegressionCurveHelper
::
addRegressionCurve
(
eNewRegressionType
,
xRegCnt
,
0
,
0
);
RegressionCurveHelper
::
changeRegressionCurveType
(
eNewRegressionType
,
xRegressionCurveContainer
,
xRegressionCurve
,
uno
::
Reference
<
uno
::
XComponentContext
>
());
}
}
...
...
chart2/source/controller/itemsetwrapper/RegressionCurveItemConverter.cxx
Dosyayı görüntüle @
1cd3e203
...
...
@@ -146,18 +146,12 @@ bool RegressionCurveItemConverter::ApplySpecialItem(
// for which this converter was created. Not optimal, but
// currently the only way to handle the type in the
// regression curve properties dialog
RegressionCurveHelper
::
replaceOrAddCurveAndReduceToOne
(
lcl_convertRegressionType
(
eNewRegress
),
m_xCurveContainer
,
RegressionCurveHelper
::
changeRegressionCurveType
(
lcl_convertRegressionType
(
eNewRegress
),
m_xCurveContainer
,
xCurve
,
uno
::
Reference
<
uno
::
XComponentContext
>
());
uno
::
Reference
<
beans
::
XPropertySet
>
xNewPropSet
(
RegressionCurveHelper
::
getFirstCurveNotMeanValueLine
(
m_xCurveContainer
),
uno
::
UNO_QUERY
);
OSL_ASSERT
(
xNewPropSet
.
is
());
if
(
xNewPropSet
.
is
())
{
resetPropertySet
(
xNewPropSet
);
bChanged
=
true
;
}
bChanged
=
true
;
}
}
}
...
...
chart2/source/controller/itemsetwrapper/StatisticsItemConverter.cxx
Dosyayı görüntüle @
1cd3e203
...
...
@@ -412,28 +412,38 @@ bool StatisticsItemConverter::ApplySpecialItem(
case
SCHATTR_REGRESSION_TYPE
:
{
SvxChartRegress
eRegress
=
static_cast
<
const
SvxChartRegressItem
&
>
(
static_cast
<
const
SvxChartRegressItem
&
>
(
rItemSet
.
Get
(
nWhichId
)).
GetValue
();
uno
::
Reference
<
chart2
::
XRegressionCurve
Container
>
xRegCnt
(
GetPropertySet
(),
uno
::
UNO_QUERY
);
uno
::
Reference
<
chart2
::
XRegressionCurve
>
xRegressionCurve
(
GetPropertySet
(),
uno
::
UNO_QUERY
);
uno
::
Reference
<
chart2
::
XRegressionCurveContainer
>
xRegressionCurveContainer
(
GetPropertySet
(),
uno
::
UNO_QUERY
);
if
(
eRegress
==
CHREGRESS_NONE
)
{
bChanged
=
RegressionCurveHelper
::
removeAllExceptMeanValueLine
(
xRegCnt
);
if
(
xRegressionCurve
.
is
()
)
{
xRegressionCurveContainer
->
removeRegressionCurve
(
xRegressionCurve
);
bChanged
=
true
;
}
}
else
{
SvxChartRegress
eOldRegress
(
static_cast
<
SvxChartRegress
>
(
static_cast
<
sal_Int32
>
(
RegressionCurveHelper
::
getFirstRegressTypeNotMeanValueLine
(
xRegCnt
))));
if
(
eOldRegress
!=
eRegress
)
if
(
xRegressionCurve
.
is
()
)
{
RegressionCurveHelper
::
replaceOrAddCurveAndReduceToOne
(
lcl_convertRegressionType
(
eRegress
),
xRegCnt
,
uno
::
Reference
<
uno
::
XComponentContext
>
());
bChanged
=
true
;
SvxChartRegress
eOldRegress
(
static_cast
<
SvxChartRegress
>
(
static_cast
<
sal_Int32
>
(
RegressionCurveHelper
::
getRegressionType
(
xRegressionCurve
))));
if
(
eOldRegress
!=
eRegress
)
{
RegressionCurveHelper
::
changeRegressionCurveType
(
lcl_convertRegressionType
(
eRegress
),
xRegressionCurveContainer
,
xRegressionCurve
,
uno
::
Reference
<
uno
::
XComponentContext
>
());
bChanged
=
true
;
}
}
}
}
...
...
chart2/source/controller/main/ChartController_Insert.cxx
Dosyayı görüntüle @
1cd3e203
...
...
@@ -386,13 +386,13 @@ void ChartController::executeDispatch_InsertMenu_Trendlines()
//prepare and open dialog
SolarMutexGuard
aGuard
;
InsertTrendlineDialog
aD
l
g
(
m_pChartWindow
,
aItemSet
);
aD
l
g
.
adjustSize
();
InsertTrendlineDialog
aD
ialo
g
(
m_pChartWindow
,
aItemSet
);
aD
ialo
g
.
adjustSize
();
if
(
aD
l
g
.
Execute
()
==
RET_OK
)
if
(
aD
ialo
g
.
Execute
()
==
RET_OK
)
{
SfxItemSet
aOutItemSet
=
aItemConverter
.
CreateEmptyItemSet
();
aD
l
g
.
FillItemSet
(
aOutItemSet
);
aD
ialo
g
.
FillItemSet
(
aOutItemSet
);
// lock controllers till end of block
ControllerLockGuard
aCLGuard
(
getModel
()
);
...
...
@@ -443,14 +443,14 @@ void ChartController::executeDispatch_InsertTrendline()
aDialogParameter
.
init
(
getModel
()
);
ViewElementListProvider
aViewElementListProvider
(
m_pDrawModelWrapper
.
get
());
SolarMutexGuard
aGuard
;
SchAttribTabDlg
aD
l
g
(
m_pChartWindow
,
&
aItemSet
,
&
aDialogParameter
,
&
aViewElementListProvider
,
SchAttribTabDlg
aD
ialo
g
(
m_pChartWindow
,
&
aItemSet
,
&
aDialogParameter
,
&
aViewElementListProvider
,
uno
::
Reference
<
util
::
XNumberFormatsSupplier
>
(
getModel
(),
uno
::
UNO_QUERY
));
// note: when a user pressed "OK" but didn't change any settings in the
// dialog, the SfxTabDialog returns "Cancel"
if
(
aD
lg
.
Execute
()
==
RET_OK
||
aDl
g
.
DialogWasClosedWithOK
())
if
(
aD
ialog
.
Execute
()
==
RET_OK
||
aDialo
g
.
DialogWasClosedWithOK
())
{
const
SfxItemSet
*
pOutItemSet
=
aD
l
g
.
GetOutputItemSet
();
const
SfxItemSet
*
pOutItemSet
=
aD
ialo
g
.
GetOutputItemSet
();
if
(
pOutItemSet
)
{
ControllerLockGuard
aCLGuard
(
getModel
()
);
...
...
chart2/source/controller/main/ChartController_Tools.cxx
Dosyayı görüntüle @
1cd3e203
...
...
@@ -85,6 +85,9 @@ using namespace ::com::sun::star;
using
::
com
::
sun
::
star
::
uno
::
Reference
;
using
::
com
::
sun
::
star
::
uno
::
Sequence
;
namespace
chart
{
namespace
{
...
...
@@ -94,25 +97,25 @@ bool lcl_deleteDataSeries(
const
Reference
<
document
::
XUndoManager
>
&
xUndoManager
)
{
bool
bResult
=
false
;
uno
::
Reference
<
chart2
::
XDataSeries
>
xSeries
(
::
chart
::
ObjectIdentifier
::
getDataSeriesForCID
(
rCID
,
xModel
));
uno
::
Reference
<
chart2
::
XDataSeries
>
xSeries
(
ObjectIdentifier
::
getDataSeriesForCID
(
rCID
,
xModel
));
uno
::
Reference
<
chart2
::
XChartDocument
>
xChartDoc
(
xModel
,
uno
::
UNO_QUERY
);
if
(
xSeries
.
is
()
&&
xChartDoc
.
is
())
{
uno
::
Reference
<
chart2
::
XChartType
>
xChartType
(
::
chart
::
DataSeriesHelper
::
getChartTypeOfSeries
(
xSeries
,
xChartDoc
->
getFirstDiagram
()));
DataSeriesHelper
::
getChartTypeOfSeries
(
xSeries
,
xChartDoc
->
getFirstDiagram
()));
if
(
xChartType
.
is
())
{
::
chart
::
UndoGuard
aUndoGuard
(
UndoGuard
aUndoGuard
(
ActionDescriptionProvider
::
createDescription
(
ActionDescriptionProvider
::
DELETE
,
String
(
::
chart
::
SchResId
(
STR_OBJECT_DATASERIES
))),
ActionDescriptionProvider
::
DELETE
,
String
(
SchResId
(
STR_OBJECT_DATASERIES
))),
xUndoManager
);
Reference
<
chart2
::
XDiagram
>
xDiagram
(
::
chart
::
ChartModelHelper
::
findDiagram
(
xModel
)
);
uno
::
Reference
<
chart2
::
XAxis
>
xAxis
(
::
chart
::
DiagramHelper
::
getAttachedAxis
(
xSeries
,
xDiagram
)
);
Reference
<
chart2
::
XDiagram
>
xDiagram
(
ChartModelHelper
::
findDiagram
(
xModel
)
);
uno
::
Reference
<
chart2
::
XAxis
>
xAxis
(
DiagramHelper
::
getAttachedAxis
(
xSeries
,
xDiagram
)
);
::
chart
::
DataSeriesHelper
::
deleteSeries
(
xSeries
,
xChartType
);
DataSeriesHelper
::
deleteSeries
(
xSeries
,
xChartType
);
::
chart
::
AxisHelper
::
hideAxisIfNoDataIsAttached
(
xAxis
,
xDiagram
);
AxisHelper
::
hideAxisIfNoDataIsAttached
(
xAxis
,
xDiagram
);
bResult
=
true
;
aUndoGuard
.
commit
();
...
...
@@ -127,28 +130,36 @@ bool lcl_deleteDataCurve(
const
Reference
<
document
::
XUndoManager
>
&
xUndoManager
)
{
bool
bResult
=
false
;
uno
::
Reference
<
chart2
::
XRegressionCurveContainer
>
xRegCurveCnt
(
::
chart
::
ObjectIdentifier
::
getObjectPropertySet
(
::
chart
::
ObjectIdentifier
::
getSeriesParticleFromCID
(
rCID
),
xModel
),
uno
::
UNO_QUERY
);
if
(
xRegCurveCnt
.
is
())
uno
::
Reference
<
beans
::
XPropertySet
>
xProperties
(
ObjectIdentifier
::
getObjectPropertySet
(
rCID
,
xModel
));
uno
::
Reference
<
chart2
::
XRegressionCurve
>
xRegressionCurve
(
xProperties
,
uno
::
UNO_QUERY
);
if
(
xRegressionCurve
.
is
())
{
::
chart
::
UndoGuard
aUndoGuard
(
ActionDescriptionProvider
::
createDescription
(
ActionDescriptionProvider
::
DELETE
,
String
(
::
chart
::
SchResId
(
STR_OBJECT_CURVE
))),
xUndoManager
);
::
chart
::
RegressionCurveHelper
::
removeAllExceptMeanValueLine
(
xRegCurveCnt
);
bResult
=
true
;
aUndoGuard
.
commit
();
uno
::
Reference
<
chart2
::
XRegressionCurveContainer
>
xRegressionCurveContainer
(
ObjectIdentifier
::
getObjectPropertySet
(
ObjectIdentifier
::
getFullParentParticle
(
rCID
),
xModel
),
uno
::
UNO_QUERY
);
if
(
xRegressionCurveContainer
.
is
())
{
UndoGuard
aUndoGuard
=
UndoGuard
(
ActionDescriptionProvider
::
createDescription
(
ActionDescriptionProvider
::
DELETE
,
String
(
SchResId
(
STR_OBJECT_CURVE
))),
xUndoManager
);
xRegressionCurveContainer
->
removeRegressionCurve
(
xRegressionCurve
);
bResult
=
true
;
aUndoGuard
.
commit
();
}
}
return
bResult
;
}
}
// anonymous namespace
namespace
chart
{
SAL_WNODEPRECATED_DECLARATIONS_PUSH
::
std
::
auto_ptr
<
ReferenceSizeProvider
>
ChartController
::
impl_createReferenceSizeProvider
()
{
...
...
@@ -657,9 +668,16 @@ bool ChartController::executeDispatch_Delete()
ObjectType
eParentObjectType
=
ObjectIdentifier
::
getObjectType
(
ObjectIdentifier
::
getFullParentParticle
(
aCID
));
if
(
eParentObjectType
==
OBJECTTYPE_DATA_SERIES
)
{
bReturn
=
lcl_deleteDataSeries
(
aCID
,
getModel
(),
m_xUndoManager
);
}
else
if
(
eParentObjectType
==
OBJECTTYPE_DATA_CURVE
)
bReturn
=
lcl_deleteDataCurve
(
aCID
,
getModel
(),
m_xUndoManager
);
{
sal_Int32
nEndPos
=
aCID
.
lastIndexOf
(
':'
);
OUString
aParentCID
=
aCID
.
copy
(
0
,
nEndPos
);
bReturn
=
lcl_deleteDataCurve
(
aParentCID
,
getModel
(),
m_xUndoManager
);
}
else
if
(
eParentObjectType
==
OBJECTTYPE_DATA_AVERAGE_LINE
)
{
executeDispatch_DeleteMeanValue
();
...
...
@@ -684,17 +702,20 @@ bool ChartController::executeDispatch_Delete()
bReturn
=
true
;
aUndoGuard
.
commit
();
}
break
;
}
break
;
case
OBJECTTYPE_DATA_CURVE
:
{
bReturn
=
lcl_deleteDataCurve
(
aCID
,
getModel
(),
m_xUndoManager
);
break
;
}
break
;
case
OBJECTTYPE_DATA_CURVE_EQUATION
:
{
uno
::
Reference
<
beans
::
XPropertySet
>
xEqProp
(
ObjectIdentifier
::
getObjectPropertySet
(
aCID
,
getModel
()));
if
(
xEqProp
.
is
())
{
uno
::
Reference
<
frame
::
XModel
>
xModel
(
getModel
()
);
...
...
@@ -711,8 +732,8 @@ bool ChartController::executeDispatch_Delete()
bReturn
=
true
;
aUndoGuard
.
commit
();
}
break
;
}
break
;
case
OBJECTTYPE_DATA_ERRORS_X
:
case
OBJECTTYPE_DATA_ERRORS_Y
:
...
...
chart2/source/inc/RegressionCurveHelper.hxx
Dosyayı görüntüle @
1cd3e203
...
...
@@ -152,12 +152,14 @@ public:
<p>This function ignores mean-value lines.</p>
*/
static
void
replaceOrAddCurveAndReduceToOn
e
(
static
void
changeRegressionCurveTyp
e
(
tRegressionType
eType
,
::
com
::
sun
::
star
::
uno
::
Reference
<
::
com
::
sun
::
star
::
chart2
::
XRegressionCurveContainer
>
&
xRegCnt
,
const
::
com
::
sun
::
star
::
uno
::
Reference
<
::
com
::
sun
::
star
::
uno
::
XComponentContext
>
&
xContext
);
com
::
sun
::
star
::
uno
::
Reference
<
com
::
sun
::
star
::
chart2
::
XRegressionCurveContainer
>
&
xRegressionCurveContainer
,
com
::
sun
::
star
::
uno
::
Reference
<
com
::
sun
::
star
::
chart2
::
XRegressionCurve
>
&
xRegressionCurve
,
const
com
::
sun
::
star
::
uno
::
Reference
<
com
::
sun
::
star
::
uno
::
XComponentContext
>
&
xContext
);
// ------------------------------------------------------------
...
...
chart2/source/tools/RegressionCurveHelper.cxx
Dosyayı görüntüle @
1cd3e203
...
...
@@ -382,17 +382,17 @@ void RegressionCurveHelper::addRegressionCurve(
if
(
xEquationProperties
.
is
())
xCurve
->
setEquationProperties
(
xEquationProperties
);
uno
::
Reference
<
beans
::
XPropertySet
>
xProp
(
xCurve
,
uno
::
UNO_QUERY
);
if
(
xProp
.
is
())
uno
::
Reference
<
beans
::
XPropertySet
>
xProp
erties
(
xCurve
,
uno
::
UNO_QUERY
);
if
(
xProp
erties
.
is
())
{
if
(
xPropertySource
.
is
())
comphelper
::
copyProperties
(
xPropertySource
,
xProp
);
comphelper
::
copyProperties
(
xPropertySource
,
xProp
erties
);
else
{
uno
::
Reference
<
XPropertySet
>
xSeriesProp
(
xRegCnt
,
uno
::
UNO_QUERY
);
if
(
xSeriesProp
.
is
())
{
xProp
->
setPropertyValue
(
"LineColor"
,
xProp
erties
->
setPropertyValue
(
"LineColor"
,
xSeriesProp
->
getPropertyValue
(
"Color"
));
}
// xProp->setPropertyValue( "LineWidth", uno::makeAny( sal_Int32( 100 )));
...
...
@@ -472,26 +472,19 @@ void RegressionCurveHelper::removeEquations(
}
}
void
RegressionCurveHelper
::
replaceOrAddCurveAndReduceToOn
e
(
void
RegressionCurveHelper
::
changeRegressionCurveTyp
e
(
tRegressionType
eType
,
uno
::
Reference
<
XRegressionCurveContainer
>
&
xRegCnt
,
uno
::
Reference
<
XRegressionCurveContainer
>
&
xRegressionCurveContainer
,
uno
::
Reference
<
XRegressionCurve
>
&
xRegressionCurve
,
const
uno
::
Reference
<
XComponentContext
>
&
xContext
)
{
uno
::
Reference
<
chart2
::
XRegressionCurve
>
xRegressionCurve
(
getFirstCurveNotMeanValueLine
(
xRegCnt
));
if
(
!
xRegressionCurve
.
is
())
RegressionCurveHelper
::
addRegressionCurve
(
eType
,
xRegCnt
,
xContext
);
else
{
OUString
aServiceName
(
lcl_getServiceNameForType
(
eType
));
if
(
!
aServiceName
.
isEmpty
())
{
RegressionCurveHelper
::
removeAllExceptMeanValueLine
(
xRegCnt
);
RegressionCurveHelper
::
addRegressionCurve
(
eType
,
xRegCnt
,
xContext
,
Reference
<
beans
::
XPropertySet
>
(
xRegressionCurve
,
uno
::
UNO_QUERY
),
xRegressionCurve
->
getEquationProperties
());
}
}
xRegressionCurveContainer
->
removeRegressionCurve
(
xRegressionCurve
);
RegressionCurveHelper
::
addRegressionCurve
(
eType
,
xRegressionCurveContainer
,
xContext
,
uno
::
Reference
<
beans
::
XPropertySet
>
(
xRegressionCurve
,
uno
::
UNO_QUERY
),
xRegressionCurve
->
getEquationProperties
());
}
uno
::
Reference
<
chart2
::
XRegressionCurve
>
RegressionCurveHelper
::
getFirstCurveNotMeanValueLine
(
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment