Commit Graph
4069 Commits
Author SHA1 Message Date
Noel Grandin 1bd04a5413 [API CHANGE] remove XPivotTableDataProvider
in favor of a regular C++ interface class, since this is purely used internally to LO

Change-Id: I84991efb1b0c8829e2175dc083b0f8627fcb1712
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/194512
Code-Style: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2025-11-26 10:06:23 +01:00
Caolán McNamara 5607c17930 null deref of ChartModel in async dialog callback
#0  ___pthread_mutex_lock (mutex=0x108) at ./nptl/pthread_mutex_lock.c:80
 #1  0x0000740d2e7e5e53 in __gthread_mutex_lock (__mutex=0x108)
     at /opt/rh/devtoolset-12/root/usr/include/c++/12/x86_64-redhat-linux/bits/gthr-default.h:749
 #2  std::mutex::lock (this=0x108) at /opt/rh/devtoolset-12/root/usr/include/c++/12/bits/std_mutex.h:100
 #3  std::unique_lock<std::mutex>::lock (this=0x7ffd19a7d7f0)
     at /opt/rh/devtoolset-12/root/usr/include/c++/12/bits/unique_lock.h:139
 #4  std::unique_lock<std::mutex>::unique_lock (__m=..., this=0x7ffd19a7d7f0)
     at /opt/rh/devtoolset-12/root/usr/include/c++/12/bits/unique_lock.h:69
 #5  apphelper::LifeTimeGuard::LifeTimeGuard (rManager=..., this=0x7ffd19a7d7f0)
     at /home/collabora/jenkins/workspace/build_core_co-25.04_for_online_snapshot/chart2/source/inc/LifeTime.hxx:175
 #6  chart::ChartModel::lockControllers (this=0x0)
     at /home/collabora/jenkins/workspace/build_core_co-25.04_for_online_snapshot/chart2/source/model/main/ChartModel.cxx:473
 #7  0x0000740d2e8a220f in chart::ControllerLockGuardUNO::ControllerLockGuardUNO (this=this@entry=0x7ffd19a7d868,
     xModel=...)
     at /home/collabora/jenkins/workspace/build_core_co-25.04_for_online_snapshot/chart2/source/tools/ControllerLockGuard.cxx:32
 #8  0x0000740d2e67a9b9 in operator() (nResult=<optimized out>, __closure=0x528ffe80)
     at /home/collabora/jenkins/workspace/build_core_co-25.04_for_online_snapshot/chart2/source/controller/main/ChartController_Insert.cxx:514
 #9  std::__invoke_impl<void, chart::ChartController::executeDispatch_InsertTrendline()::<lambda(int)>&, int> (__f=...)
     at /opt/rh/devtoolset-12/root/usr/include/c++/12/bits/invoke.h:61
 #10 std::__invoke_r<void, chart::ChartController::executeDispatch_InsertTrendline()::<lambda(int)>&, int> (__fn=...)
     at /opt/rh/devtoolset-12/root/usr/include/c++/12/bits/invoke.h:111
 #11 std::_Function_handler<void(int), chart::ChartController::executeDispatch_InsertTrendline()::<lambda(int)> >::_M_invoke(const std::_Any_data &, int &&) (__functor=..., __args#0=<optimized out>)

Change-Id: Ic95406f6f4894a4e064a5e539741279d7c7a6bab
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/194415
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Tested-by: Jenkins
2025-11-24 20:30:17 +01:00
Noel Grandin c2a0e06b63 new loplugin:stringplusequal
which simplifies O[U]String expressions like
   A = A + foo
into
   A += foo

mostly because then they get spotted by other string plugins.

Change-Id: I2b81b701144acdf18743b52cb0befa7f90fd9528
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/194191
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2025-11-20 07:26:33 +01:00
Tomaž Vajngerl 58d2a68530 tdf#164593 Revert "tdf#82716 Add initial implementation of the His.."
This reverts commit 07ae0e5ada.

As discussed in https://lists.freedesktop.org/archives/libreoffice/2025-November/093988.html

(cherry picked from commit 9693f1461c7d78c7461f8bbd7f421ba8c3f8452b)

Change-Id: Ifd4008d62f9816d995f97104ba432ebc8be89c97
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/186407
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Signed-off-by: Xisco Fauli <xiscofauli@libreoffice.org>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/193983
2025-11-14 08:44:54 +01:00
Daniel Lee 60110d70a2 tdf#145538 Use range based for loops
Use range based for loops in chart2/source/controller/main

Change-Id: I189c0c1d65fe615b0c64cbe6b79a0a3643f85acc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/193229
Tested-by: Jenkins
Reviewed-by: Ilmari Lauhakangas <ilmari.lauhakangas@libreoffice.org>
2025-11-13 14:38:19 +01:00
Sergey Anisimov ea2ecf0406 tdf#145614 - Convert #define to enum or constexpr
Change-Id: Ica8f4afdbb40adb3d26bfc56f4bfc91c110001ff
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/191983
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Reviewed-by: Hossein <hossein@libreoffice.org>
Tested-by: Jenkins
2025-10-31 17:45:16 +01:00
Sergey Anisimov 7e21803099 tdf#165233 lambdas instead of std::bind
Change-Id: Ibe93fe8dc77f0630832145f03788a80a32104c9b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/192578
Tested-by: Jenkins
Reviewed-by: Hossein <hossein@libreoffice.org>
2025-10-27 14:17:23 +01:00
Jussi Suominen 7cc55dd0c4 tdf#145538 Use range based for loops in ChartController.cxx
Change-Id: If575d44f0c855e9211199e9f5461720e12934ccf
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/192644
Tested-by: Jenkins
Reviewed-by: Ilmari Lauhakangas <ilmari.lauhakangas@libreoffice.org>
2025-10-21 17:01:59 +02:00
Mike Kaganski 32021330c7 tdf#168320: these commands are only relevant for LOK
Commit 29dbaea278 (Use comphelper::dispatchCommand
in LokChartHelper::Dispatch, 2025-07-10) added some LOK-related UNO commands to
ControllerCommandDispatch::updateCommandAvailability. But since these commands
do not get respective m_aCommandArguments there, their state update events have
empty state, making their controls show some default values, when queried in
desktop case.

Make the commands LOK-only in updateCommandAvailability, as intended. Possibly
at some point, we could generalize updateCommandAvailability somehow to list
all the properties of selection; but for now, keep it simple.

Change-Id: I151deb1582c537471296255cf6b8630565419d12
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190941
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2025-09-15 10:26:36 +02:00
Jason Whitmore 3113bed7f5 tdf#145614 convert #define statements to enum class
Define statements in ChartResourceGroups.hxx have
been replaced with an enum class. Two wrapper functions
were created to simplify code. The .cxx file has been
updated to use this enum. Other formatting changes
made to satisfy clang.

Change-Id: Ib7d095ce4fb3fbf433dcb9693f23958601dc89e7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190604
Tested-by: Jenkins
Reviewed-by: Hossein   <hossein@libreoffice.org>
2025-09-15 10:11:18 +02:00
Michael Weghorn 136db25f73 vcl: Rename TransferableDataHelper::{G,S}etBitmap(Ex)
Since

    commit 9540041bdd
    Date:   Mon Aug 25 08:21:53 2025 +0200

        BitmapEx->Bitmap in vcl

, TransferableDataHelper::GetBitmapEx and
TransferableDataHelper::SetBitmapEx return/take
Bitmap instead of BitmapEx.

Rename the methods accordingly.

Change-Id: I90bd73fa538952572d7c7a90a9604e01412272ee
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190335
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
2025-08-28 18:49:09 +02:00
Marco Cecchetti a26c93a630 chart color palettes: switch from drawingarea to IconView
Change-Id: Ie57acb02473ed5f51c4a2b969786418f6630bfb3
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/189536
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190037
Tested-by: Jenkins
Reviewed-by: Marco Cecchetti <marco.cecchetti@collabora.com>
2025-08-24 23:21:59 +02:00
Marco Cecchetti 25fa705165 chart preview color palette for data series on mouse over
Change-Id: I99b8adefe87cb54d886a7dcead72709568f72c57
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/186338
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190036
Reviewed-by: Marco Cecchetti <marco.cecchetti@collabora.com>
Tested-by: Jenkins
2025-08-24 23:21:52 +02:00
Marco Cecchetti 150525a38e lok: color preview: avoid chart color palette reset on preview
Notify color preview state: enabled/disabled
Avoid current color palette to be cleared if user is just previewing a
color for a data series or a data point with the color picker.

Change-Id: I8b5fcd7e675d34f68b0323703ec509493fc48492
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/186337
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190035
Tested-by: Jenkins
Reviewed-by: Marco Cecchetti <marco.cecchetti@collabora.com>
2025-08-24 23:21:44 +02:00
Marco Cecchetti 3fafbb522b chart color palette: it fixes some minor issues
Change-Id: Idf40fc5360b8551a2e7ac28d193157b7ae69f488
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/185171
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190034
Reviewed-by: Marco Cecchetti <marco.cecchetti@collabora.com>
Tested-by: Jenkins
2025-08-24 23:21:33 +02:00
Noel Grandin 66b0aab258 use Graphic::GetBitmap instead of Graphic::GetBitmapEx
in places where we want a Bitmap

Change-Id: I70acdfde07df5bda84aa21143b2a0aca98023fe5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/189675
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Jenkins
2025-08-21 20:54:31 +02:00
Gabor Kelemen 85f88d7196 tdf#146619 Run IWYU on chart2/
Change-Id: I2f0920df37ba14918e1325983309f9b77c8792cb
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/188751
Tested-by: Jenkins
Reviewed-by: Gabor Kelemen <gabor.kelemen.extern@allotropia.de>
2025-08-18 20:19:39 +02:00
Xisco Fauli 54a6abf4bd related tdf#167859: fix logic
after
commit 4862b5efbd
Author: Xisco Fauli <xiscofauli@libreoffice.org>
Date:   Fri Aug 8 10:51:41 2025 +0200

    tdf#167859: check xChartType

Change-Id: I58ac276a21e6d6ef08b831fd723783ddb68410a8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/189364
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2025-08-11 15:57:59 +02:00
Caolán McNamara 270f80c3f2 cid#1555415 Variable copied when it could be moved
and

cid#1659706 Variable copied when it could be moved
cid#1659716 Variable copied when it could be moved
cid#1659727 Variable copied when it could be moved
cid#1659735 Variable copied when it could be moved
cid#1659739 Variable copied when it could be moved
cid#1659740 Variable copied when it could be moved
cid#1659746 Variable copied when it could be moved

Change-Id: I981c42ebad50670d7704d5377b97917c966ee7da
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/189262
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2025-08-09 19:40:43 +02:00
Noel Grandin 9752d35188 BitmapEx->Bitmap in TransferableHelper
now that Bitmap supports transparency

Change-Id: Iaff3f0405cccac4c23ad8f263afe31d6e49597c4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/189261
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2025-08-09 19:12:48 +02:00
Xisco Fauli 4862b5efbd tdf#167859: check xChartType
before

commit f355ddcbf2
Author: Tomaž Vajngerl <tomaz.vajngerl@collabora.co.uk>
Date:   Sun Apr 13 11:36:05 2025 +0900

    chart2: fold isSupported* functions into ChartType

ChartTypeHelper::isSupportingAxisPositioning,
ChartTypeHelper::isSupportingBaseValue and
ChartTypeHelper::isSupportingBaseValue
checked if xChartType was not nullptr inside them

TODO: add UItest for it.

Change-Id: I908d41ccc88208ab57576bd6369590556aafcce5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/189171
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2025-08-08 16:27:23 +02:00
Caolán McNamara b1ec05b4b1 cid#1662031 Variable copied when it could be moved
and

cid#1660225 Variable copied when it could be moved
cid#1660211 Variable copied when it could be moved
cid#1660185 Variable copied when it could be moved
cid#1660173 Variable copied when it could be moved
cid#1660168 Variable copied when it could be moved
cid#1660166 Variable copied when it could be moved
cid#1660165 Variable copied when it could be moved
cid#1660163 Variable copied when it could be moved
cid#1660152 Variable copied when it could be moved
cid#1660149 Variable copied when it could be moved
cid#1660147 Variable copied when it could be moved
cid#1660145 Variable copied when it could be moved
cid#1660142 Variable copied when it could be moved
cid#1660140 Variable copied when it could be moved
cid#1660137 Variable copied when it could be moved
cid#1660136 Variable copied when it could be moved
cid#1660135 Variable copied when it could be moved
cid#1660128 Variable copied when it could be moved
cid#1660124 Variable copied when it could be moved
cid#1660122 Variable copied when it could be moved
cid#1660117 Variable copied when it could be moved
cid#1660114 Variable copied when it could be moved
cid#1660110 Variable copied when it could be moved
cid#1660109 Variable copied when it could be moved
cid#1660105 Variable copied when it could be moved
cid#1660104 Variable copied when it could be moved
cid#1660102 Variable copied when it could be moved
cid#1660100 Variable copied when it could be moved
cid#1660098 Variable copied when it could be moved
cid#1660080 Variable copied when it could be moved
cid#1660079 Variable copied when it could be moved
cid#1660078 Variable copied when it could be moved
cid#1660075 Variable copied when it could be moved
cid#1660071 Variable copied when it could be moved
cid#1660070 Variable copied when it could be moved
cid#1660064 Variable copied when it could be moved
cid#1660063 Variable copied when it could be moved
cid#1660060 Variable copied when it could be moved
cid#1660058 Variable copied when it could be moved
cid#1660053 Variable copied when it could be moved
cid#1660050 Variable copied when it could be moved
cid#1660049 Variable copied when it could be moved
cid#1660046 Variable copied when it could be moved
cid#1660042 Variable copied when it could be moved
cid#1660028 Variable copied when it could be moved
cid#1660023 Variable copied when it could be moved
cid#1660022 Variable copied when it could be moved
cid#1660021 Variable copied when it could be moved
cid#1660020 Variable copied when it could be moved
cid#1660017 Variable copied when it could be moved
cid#1660013 Variable copied when it could be moved
cid#1660005 Variable copied when it could be moved
cid#1660003 Variable copied when it could be moved
cid#1659999 Variable copied when it could be moved
cid#1659998 Variable copied when it could be moved
cid#1659995 Variable copied when it could be moved
cid#1659993 Variable copied when it could be moved
cid#1659989 Variable copied when it could be moved
cid#1659988 Variable copied when it could be moved

Change-Id: I2a30c8a2ac8785050d49b98635b0b406535b185a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/189056
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Tested-by: Jenkins
2025-08-07 20:51:26 +02:00
Caolán McNamara 8fc995213a cid#1660374 Variable copied when it could be moved
and

cid#1660372 Variable copied when it could be moved
cid#1660369 Variable copied when it could be moved
cid#1660364 Variable copied when it could be moved
cid#1660358 Variable copied when it could be moved
cid#1660355 Variable copied when it could be moved
cid#1660353 Variable copied when it could be moved
cid#1660352 Variable copied when it could be moved
cid#1660351 Variable copied when it could be moved

Change-Id: I82e651e8d18a4461e81c7b0eb85c4ff6ec0e963a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/188849
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2025-08-03 12:18:19 +02:00
Michael Weghorn ff44e0caef tdf#130857 chart: Use more specific weld::Box members
... instead of the more generic weld::Container for
these widgets defined as "GtkBox" objects in the .ui file
(chart2/uiconfig/ui/chartdatadialog.ui).

This change is done as part of checking that none
of the widgets on which the weld::Container methods
are called is a weld::ScrolledWindow, which will soon
no longer subclass weld::Container.

Change-Id: I97220960531ac61eb2ddeb367c309212c8544d23
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/188755
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2025-08-02 09:14:33 +02:00
Noel Grandin e435c0749b drop OutputDevice::GetBitmapEx in favour of returning Bitmap
as part of the project of removing BitmapEx in favour of Bitmap, now that we can store RGBA data in Bitmap.

This mostly just moves the Bitmap->BitmapEx from inside OutputDevice to the various call sites,
from where I can make further improvements.

Change-Id: Id5366c1eb5ebca98fee7c974737552f4a09a5c2f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/188341
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2025-07-25 22:34:31 +02:00
Michael Weghorn fcee763123 vcl dnd: Consolidate drop target retrieval, avoid casting
Return a reference to the concrete DNDListenerContainer
instance instead of one to the abstract
css::datatransfer::dnd::XDropTarget interface in
Window::GetDropTarget.

This allows to drop Window::GetDragGestureRecognizer
which was returning a reference to the
css::datatransfer::dnd::XDragGestureRecognizer interface
for the exact same object, so can now use
Window::GetDropTarget directly instead, which drops the
need to query for the other interface.

DNDEventDispatcher was already assuming that a
DNDListenerContainer object was returned and
casting to that, which is no longer needed now.

Change-Id: Ib7ea7cdb0650ba2410b112774f475b4799901538
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/188271
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
2025-07-24 15:45:01 +02:00
Noel Grandin f5b1d36135 loplugin:finalclasses
Change-Id: I6f82fe09f5ae863eb2c2c0ee1c8a0703ffc5107b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/188214
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Jenkins
2025-07-23 15:00:44 +02:00
Michael Weghorn 842f0019fa vcl a11y: Return OAccessible in vcl::Window::GetAccessible
By now, the accessible is known to always be an OAccessible,
so return that more specific type instead of a Reference to
the abstract XAccessible interface.

Change-Id: I60f6b2d6465abfcb04d4ee7d3a26bce69fccded3
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/188182
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
2025-07-23 08:00:41 +02:00
Michael Weghorn 7c036efe76 vcl a11y: Return OAccessible in vcl::Window::CreateAccessible
By now, the accessible is known to always be an OAccessible,
so return that more specific type instead of a Reference to
the abstract XAccessible interface.

Change-Id: Ie8f5318fb35d2fdeb59ac97452e2e27971c6b5a5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/188180
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2025-07-23 08:00:28 +02:00
Noel Grandin 9b79ae1161 loplugin:blockblock
found with a modified copy of this plugin

Change-Id: Ib2ca97c7479abdf1a375e2700f9c947e1101f0e4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/188065
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2025-07-19 19:11:16 +02:00
Noel Grandin 4f8b32e92c Drop separate EditTextObject itempool
and just have a single pool for the EditEngine machinery.

I cannot find a reason for a separat pool anymore, probably
it was a thing from the distant past.

This also shaves 5% off the load time of tdf#162126 because
we no longer have to spend losts of time re-creating SfxItemSets
because they belong to different pools.

Change-Id: I837045809dc292548b10e2cf5173d2a29b0879a0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187969
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2025-07-19 14:23:31 +02:00
Michael Weghorn dd965f6d98 weld: Use more specific CheckButton param for TriStateEnabled
The TriStateEnabled struct implements logic to loop
through the three different TriState states for a
weld::Toggleable.

In practice, it is only used for weld::CheckButton
objects, and (while not instantly clear from the API)
TRISTATE_INDET isn't actually supported
by all weld::Toggleable subclasses.

Switch the param to TriStateEnabled::ButtonToggled
from weld::Toggleable& to weld::CheckButton& and
rename to CheckButtonToggled to make clearer this
is only for CheckButton.

As a consequence, adjust callers that were passing
just a weld::Toggleable& to pass a CheckButton&
(to the same underlying object) to adhere to the
new method signature.

This is one step towards making the inconsistent state
specific to weld::CheckButton, i.e. (re)move it from
weld::Toggleable and other subclasses.

Change-Id: I843c1c7075f91c0b81605ecb5d7e54621b9074c1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187992
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2025-07-18 07:06:24 +02:00
Markus Mohrhard 33f644074e OOXML handling of 1904 null date for charts with internal data provider
Change-Id: Id7b70bd8d0f471fc56ffb3c8ce43a01a871491bb
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187835
Tested-by: Jenkins
Reviewed-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
2025-07-15 18:47:14 +02:00
Michael Weghorn d8e2e63fbf chart: Switch SchAttribTabDlg::m_pParameter to const ref
... and rename to `m_rParameter` accordingly.

This makes clear this is always non-null and
allows to drop a corresponding null check in
SchAttribTabDlg::PageCreated.

Change-Id: I82f18d7db7b026f31ed6e93b71fecda0f3c7fe89
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187861
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2025-07-15 08:45:30 +02:00
Kurt Nordback 4313451fc7 tdf#167368 - Chart style index is not exported to OOXML
Add support for style index export, and a CI test for this.

Change-Id: Idb109ef705a6bf8338e18040d447c2806c0781ee
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187425
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2025-07-11 18:32:56 +02:00
Mike Kaganski 29dbaea278 Use comphelper::dispatchCommand in LokChartHelper::Dispatch
This change aims to avoid special-casing when dispatching commands from
LokChartHelper. It builds upon I883c6a6905e78da0c083323b5ef641fa27f133b4
and I2bc8cecfc4f38d66121d9a39313b37a51d7f0aff.

Before this patch, commands passed through LokChartHelper were directly
dispatched using ChartController::dispatch, instead of finding correct
dispatcher using queryDispatch. That required ChartController::dispatch
to handle the commands that it wasn't intended to handle; e.g., commit
9126cde8cb (When chart is active pass
uno:ChangeTheme through to its parent frame, 2024-01-29) added that
special processing.

Now we can use the normal queryDispatch mechanism to find the correct
dispather, and revert the mentioned change.

Change-Id: I5c3231690f8a7a2bb7b83ced90f18866f9b2deb3
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187368
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
2025-07-10 15:35:29 +02:00
Heiko Tietze d2662f5f28 tdf#167316 tdf#167407 - VT style to chart props & char/para format
Change-Id: If103cb3ba1b5d60bce08a237d39e93475a6f16d3
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187466
Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org>
Tested-by: Jenkins
2025-07-10 09:20:58 +02:00
Mike Kaganski 648f25d66c Return by const reference
The call sites do not need a copy of this non-trivial object

Change-Id: I64347bf8e5efecb63e248c806a09c764897c3b94
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187460
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
(cherry picked from commit f2627b4d8a2ab2e2d43b141173b1b6b75964e562)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187487
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
2025-07-07 19:39:04 +02:00
Mike Kaganski 242fb77bcd Avoid Any -> value -> Any back-and-forth
These values can be forwarded as is, avoiding the overhead.

Change-Id: I82314a92b7fd7e711d410a4e43fe5d93caaa4bac
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187464
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
(cherry picked from commit 22365598a3ebd4eef1c367fbff5b3cdf37980a2f)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187478
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
2025-07-07 16:19:31 +02:00
Mike Kaganski 16af48e4b8 cool#12283: when diagram is selected, apply color to its wall
This is the same as in ChartColorWrapper::operator().

Change-Id: I1d80a35d9100a15e5eeda619fecb6f721f06ce13
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187457
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
(cherry picked from commit 5e5ec014ab0b71250f0a2676d3947c596dd77716)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187472
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
2025-07-07 14:28:32 +02:00
Mike Kaganski 40df99b111 Avoid duplicating command lists
ChartController::impl_getAvailableCommands had almost the same list as
what was stored in ControllerCommandDispatch::m_aCommandAvailability.
That required to keep these lists in sync, prone to overlooks.

This change makes ChartController::impl_getAvailableCommands only hold
those commands that should not appear in ControllerCommandDispatch. At
the moment, those are only forwarded commands and ChartElementSelector,
that may need to be handled in ControllerCommandDispatch. LOK-specific
commands may be added here later.

Change-Id: I82bbfbd6a69bbaaebcc91d8f29b6c22ddf2f8ae6
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187448
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
2025-07-06 20:00:36 +02:00
Mike Kaganski 56bfdcdd0b Avoid re-asking the property value, when it has already been obtained
Change-Id: I0ba8382e8839ca47b86d5ae4671c30006a81441a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187447
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
2025-07-06 19:00:43 +02:00
Mike Kaganski 543b6dc766 Drop "Status Bar" element from Chart's View menu
It does nothing, already in OOo 2.4.3.

Change-Id: I2364426d9bdad6cfe959be79412c4a039757525b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187445
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2025-07-06 17:20:28 +02:00
Mike Kaganski 405aa95218 Use concrete type for m_xChartDispatcher
Avoids a dynamic_cast

Change-Id: I5f55e7730fd4b5e35cc57c570bdcedbe413a64cd
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187443
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
2025-07-06 17:09:22 +02:00
Mike Kaganski eff1817daf Simplify ControllerCommandDispatch::fireStatusEvent
Check m_aCommandAvailability.contains to decide if we need to call
fireStatusEventForURLImpl for the given command. This also avoids
an extra event for .uno:StatusBarVisible (explicitly handled below).

Change-Id: If5a74e0631759bd2ace0aebc60670b70bf43aa08
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187444
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2025-07-06 15:51:10 +02:00
Mike Kaganski 9b69bc0e7d Fix ChartController::queryDispatch
In commit c6b95527d2 (INTEGRATION: CWS
chart2mst3 (1.15.4); FILE MERGED, 2007-05-22), it was implemented to
check that the target frame name is not empty and is equal to "_self".
The "not empty" check was redundant as implemented; and was dropped
in commit 33fe5b57ea (Drop a redundant
check, 2025-07-04). But it looks like the original implementation
intended to do something different, namely check if the target frame
name is *either* empty, *or* "_self": see documentation for _self in
offapi/com/sun/star/frame/XFrame.idl (and implementation in various
places, like framework/source/dispatch/dispatchprovider.cxx).

This is fixed here. CommandDispatchContainer::getDispatchesForURLs
is fixed as well.

Change-Id: I9ed6981edeca16661f07e41b87b114a8e16d69ff
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187442
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
2025-07-06 14:04:56 +02:00
Mike Kaganski 970360adcc Fix CommandDispatchContainer::getDispatchForURL
... after commit 36b5f0ebf4 (Flatten
CommandDispatchContainer::getDispatchForURL a bit, 2025-07-04),
which broke its logic (everything after the 'if xModel' needs to
be also checked in case when nested checks fail).

Change-Id: I608b53f993d60d9d0c873e951a1cb53106eeaeec
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187441
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
2025-07-06 14:04:51 +02:00
Mike Kaganski 024aafe4cb Simplify FeatureCommandDispatchBase::implDescribeSupportedFeature
Use OUString, instead of converting to it from ASCII.

Change-Id: Ia7a30a4e6b2599d59740d26d0268070050070166
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187439
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
2025-07-05 18:54:59 +02:00
Mike Kaganski 0b3c87956b Use map::contains
Change-Id: I161a7a955266d08dc7cdbde58f29dbdbc9dc0a2e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187437
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2025-07-05 14:34:42 +02:00
Mike Kaganski 36b5f0ebf4 Flatten CommandDispatchContainer::getDispatchForURL a bit
Change-Id: I19d7824b1be946c06b15a3f8398e3282f6193d38
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187379
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
2025-07-04 13:22:27 +02:00