content='index, nofollow'/>
summaryrefslogtreecommitdiff
path: root/sw/source/uibase/shells/drawsh.cxx
AgeCommit message (Collapse)Author
4 hourssw: Rename SwFEShell::{IsObjSelected -> GetSelectedObjCount}Michael Weghorn
The method returns the number of selected objects, not just a bool indicating whether any (or a particular) object is selected, other than the SwFEShell::IsObjSelected variant that takes a `const SdrObject&` param. Rename the method to make that clearer. Change-Id: I30afec5322d2e6f1d31e5bc0ca6c252faa1fb4d8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180223 Reviewed-by: Michael Weghorn <m.weghorn@posteo.de> Tested-by: Jenkins
2024-11-24Turn SW_MOD macro to a functionMike Kaganski
Change-Id: Ide1f6fd2fc8a80b31353a14e416505a2349cea2b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177071 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2024-06-04loplugin:ostr in sw/.../shellsNoel Grandin
Change-Id: Ie8d62b127cfa521d28dbd26073e4d6d89dfdcdf7 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168396 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Jenkins
2024-05-30GetMarkedObjectByIndex -> GetMarkedObjectList().GetMark()->GetMarkedSdrObj()Xisco Fauli
In order to reduce number of calls to GetMarkedObjectList() later on Change-Id: I57ab7d2d8edd98da5175bd1066dfab0fa2cc888e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168220 Tested-by: Xisco Fauli <xiscofauli@libreoffice.org> Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2024-05-29GetMarkedObjectCount() -> GetMarkedObjectList().GetMarkCount()Xisco Fauli
In order to reduce number of calls to GetMarkedObjectList() later on Change-Id: Id94f66545950f0fdf124ba7b985a5215a01d63fe Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168213 Tested-by: Xisco Fauli <xiscofauli@libreoffice.org> Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2023-02-16SfxViewShell::GetViewFrame never returns null, change to a referenceCaolán McNamara
various null checks can be seen to be redundant and removed Change-Id: Icf49c1de4b0302795d2769a370af3abceaad0221 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/147147 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2023-01-31svx: Refactor (sdr) views to access the SdrModel by referenceTomaž Vajngerl
In SdrPaintView (and subclasses) the mpModel variable is always the same as the input (reference) model, so there is no need for that extra variable. Change the strange and confusing var. name mrSdrModelFromSdrView (the input reference to SdrModel) to just mrModel and use that in GetModel(). Change the GetModel() to return a reference instead of a pointer and reactor the code to accomodate the change. This gets rid of many nullptr checks for the pointer that the GetModel() returns and makes the code more simple is some cases. Change-Id: I18351a417fd82f49262a83de036ec1420a65399c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146373 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2022-11-02tdf#54857 elide more dynamic_castNoel Grandin
Change-Id: I42bef355eeef15e3733a5ee57b0569887cfa5e84 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/142183 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-08-29ref-count SdrObjectNoel Grandin
Which means we can get rid of the majestic hack of ScCaptionPtr Previously, SdrObject was manually managed, and the ownership passed around in very complicated fashion. Notes: (*) SvxShape has a strong reference to SdrObject, where previously it had a weak reference. It is now strong since otherwise the SdrObject will go away very eagerly. (*) SdrObject still has a weak reference to SvxShape (*) In the existing places that an SdrObject is being deleted, we now just clear the reference (*) instead of SwVirtFlyDrawObj removing itself from the page that contains inside it's destructor, make the call site do the removing from the page. (*) Needed to take the SolarMutex in UndoManagerHelper_Impl::impl_clear because this can be called from UNO (e.g. sfx2_complex JUnit test) and the SdrObjects need the SolarMutex when destructing. (*) handle a tricky situation with SwDrawVirtObj in the SwDrawModel destructor because the existing code wants mpDrawObj in SwAnchoredObject to be sometimes owning, sometimes not, which results in a cycle with the new code. Change-Id: I4d79df1660e386388e5d51030653755bca02a163 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/138837 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-07-14loplugin:moveitNoel Grandin
Change-Id: I2702e716dc669ffbb870d36d060e110288d7a744 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/137043 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-05-12sw: fix crash in SwDrawShell::Execute()Miklos Vajna
Crashreport signature: SwDrawShell::Execute(SfxRequest&) [clone .cold] include/svx/svdhdl.hxx:194 SfxDispatcher::Call_Impl(SfxShell&, SfxSlot const&, SfxRequest&, bool) sfx2/source/control/dispatch.cxx:255 which is a bit tricky to read (probably due to LTO), but what happens here is that the handle index is user input and we look at index up in a list without error handling. This is a problem since commit 7eed711a6115bf892c998cbd73a2c5b706c6f99d (Extended MoveShapeHandle command for Anchors as well, 2021-05-24), which assumed that handle indexes and the handle list can't get out of sync. Fix the problem similar to what commit 48beccf52413981d3d1c525a81a2c57048abe261 (sw: fix crash in SwView::Execute(), 2021-09-03) did at SID_MOVE_SHAPE_HANDLE handler for Writer images (this one is for Draw shapes). This fix just makes sure we don't crash, there may be some deeper reason why the handle index is out of sync with the handle list in the first place. Change-Id: I8f3a25d74082984cedce09362a690f24d7236ba6 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134216 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2021-10-10use SfxItemSetFixed in swNoel Grandin
Change-Id: I69e188d7599b7fc439f613cec0a0967ccb748b7e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123313 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-09-16tdf#143574 tdf#144271 sw: textboxes in group shapes - part 2Attila Bakos (NISZ)
Sync textboxes with group shapes, adding textboxes to group shapes, copying textboxes with group shapes, grouping/ungrouping group shapes with textboxes, removing textboxes from group shapes. This patch fixes a memory leak (tdf#144271) introduced by commit 504d78acb866495fd954fcd6db22ea68f174a5ab "tdf#143574 sw: textboxes in group shapes - part 1". Note: AS_CHAR anchoring is far not the best for group shapes and import/export is still missing. Change-Id: I7dc3b8d36c4a04f792ae4742fe4a45af9227a17e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/121449 Tested-by: László Németh <nemeth@numbertext.org> Reviewed-by: László Németh <nemeth@numbertext.org>
2021-09-01tdf#143574 sw: textboxes in group shapes - part 1Attila Bakos (NISZ)
Introduce SwTextBoxNode class to support grouped textboxes, fixing the crash when entering a group shape, trying to add a textbox to one of the shapes. Test of crash fix: right click on a group shape. Select the menu item "Enter group". Select one of the shapes, and right click on it, and choose "Add Text Box". Note: textboxes in Writer are linked in SwFrameFormat class. Each textbox consists of a text frame and a shape. This object pair makes it possible to have complex content inside any kind of shape (pictures, tables etc. Group shapes have only one SwFrameFormat, but can have many shapes so that means they can only have one textbox. From now, each shape could have a textbox in a group. Please note this is only a preparation for that. Filter implementation and handlers are under development. Change-Id: Iae35c118f0e67697b289c30d0fad4f5e16501c02 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/120452 Tested-by: László Németh <nemeth@numbertext.org> Reviewed-by: László Németh <nemeth@numbertext.org>
2021-07-19Move svl::Items to include/svl/whichranges.hxx, and unify its usageMike Kaganski
... in WhichRangesContainer and SfxItemSet ctors. Now it's not needed to explicitly use 'value' in WhichRangesContainer's ctor, or create an instance for use in SfxItemSet ctor (svl::Items is already defined as a template value of corresponding type). Instead of WhichRangesContainer Foo(svl::Items<1, 2>::value); SfxItemSet Bar(rItemPool, svl::Items<1, 2>{}); now use: WhichRangesContainer Foo(svl::Items<1, 2>); SfxItemSet Bar(rItemPool, svl::Items<1, 2>); Change-Id: I4681d952b6442732025e5a26768098878907a238 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/119157 Tested-by: Mike Kaganski <mike.kaganski@collabora.com> Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2021-06-11tdf#130428 remove unnecessary usage of SfxItemState::UNKNOWNArmin Le Grand (Allotropia)
FontworkBar::getState does not need to check for SfxItemState::UNKNOWN at all, actions solely depend on FontWork object being selected. This also greatly simplifies that method. Also, the optimization by passing in a variable to checkForSelectedFontWork and remember if already computed can be removed - also in other places where it had to be given, but was not re-used at all Change-Id: I35b1f36195feb1d645619665d2dd65a84b75b118 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/117014 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
2021-06-04Extended MoveShapeHandle command for Anchors as wellmerttumer
Change-Id: I0e2811802f17831097a86103571b505a7557717a Signed-off-by: merttumer <mert.tumer@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116040 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116299 Tested-by: Jenkins
2021-04-20lok: Pass object ord num in the uno commandmerttumer
When multiple objects' glue points collide the ordnum will be used to decide which glue point to connect to for the connectors. Without that the default logic chooses the lowest ordered object which is searched and found in the object list Change-Id: I64579d28bbe6cbd92bab745838fe2995585b6a3f Signed-off-by: merttumer <mert.tumer@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113517 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/114032 Tested-by: Jenkins
2021-04-09Recheck include/ with IWYUGabor Kelemen
See tdf#42949 for motivation Change-Id: Ifc253bf800bb1468b5774663a93f4fb30bec81d3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113657 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2021-04-01Removed duplicated includeAndrea Gelmini
Change-Id: I0becc94e87dee55fad57e66d182c54cc64ee5013 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113469 Tested-by: Jenkins Reviewed-by: Andrea Gelmini <andrea.gelmini@gelma.net>
2021-04-01Introduce Fontwork contextSzymon Kłos
Change-Id: I61512e4da13514d3e5a199ccb46468ba199b808f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/110023 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Jan Holesovsky <kendy@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112274 Tested-by: Jenkins Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
2021-03-02Implemented MoveShapeHandle uno command for swmert
Change-Id: I9feccc4fa1a4d7426609afa474f87ab12c769090 Signed-off-by: mert <mert.tumer@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/111192 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/111512 Tested-by: Jenkins
2020-11-24tdf#42949 Fix new IWYU warnings in directory swGabor Kelemen
Found with bin/find-unneeded-includes Only removal proposals are dealt with here. Change-Id: I4bb84c3f401aba8a3dede9cec3a7f2187a2ba02a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106473 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2020-11-20tdf#137185 sw: move shape text on adding textboxAttila Bakos (NISZ)
The original text of the shape is moved to the new (text frame of the) text box instead of overlapping the text content added later. Change-Id: I2ad8865cdbe3c424c70985737ecda3ac9315cabc Reviewed-on: https://gerrit.libreoffice.org/c/core/+/104942 Tested-by: László Németh <nemeth@numbertext.org> Reviewed-by: László Németh <nemeth@numbertext.org>
2020-11-18Remove unused SdrGrafObj::SetGraphicLink rReferer, rFilterName parametersStephan Bergmann
unused since 9fb7aaf570c03c8a26d763f1205fb8c890e8211a "Make linked graphic register into LinkedManager again", and remove further function parameters and class members that turn out to be unused now, too Change-Id: I3dd2b138fd8787d12b89547526da751ea5954845 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106041 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-07-30loplugin:flatten in sw/uibase/shellsNoel Grandin
Change-Id: I003c2c4e48bb59590ba952c74e3ee4733ce1051f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/99764 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-01-08tdf#42949 Fix IWYU warnings in sw/source/uibase/[i-t]*/*cxxGabor Kelemen
Found with bin/find-unneeded-includes Only removal proposals are dealt with here. Change-Id: I53139566ff41c8ee748945b39cd70b66fed8dc97 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/85973 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2019-10-11SwCursorShell argument of AttrChangedNotify is unusedCaolán McNamara
Change-Id: I1fde665dcb77d29cad7f6a5c12e82c1822cff022 Reviewed-on: https://gerrit.libreoffice.org/80621 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2019-08-22we can be less verboseCaolán McNamara
Change-Id: I3adf8299b920fc7a9a44fc65ea5d48eb123d7eee Reviewed-on: https://gerrit.libreoffice.org/77951 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2019-06-11tdf#42949 Fix IWYU warnings in include/svx/[sS][v-Z]*Gabor Kelemen
Found with bin/find-unneeded-includes Only removal proposals are dealt with here. Change-Id: Ie2a4122d67d2d40732e6fd00b584f33edd802c5b Reviewed-on: https://gerrit.libreoffice.org/73476 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2019-05-16tdf#42949 Fix IWYU warnings in include/svx/[e-g]*Gabor Kelemen
Found with bin/find-unneeded-includes Only removal proposals are dealt with here. Change-Id: I861d3f0fa15ee3b7e0e830c4fac2e5794ea4071b Reviewed-on: https://gerrit.libreoffice.org/72213 Tested-by: Jenkins Reviewed-by: Michael Stahl <Michael.Stahl@cib.de>
2019-05-10tdf#62699 Drop pass-through header file include/svx/svdattr.hxxGabor Kelemen
Change-Id: I04289589196ac69b31f75989d9252c79d03c890f Reviewed-on: https://gerrit.libreoffice.org/71633 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2019-03-25tdf#42949 Fix IWYU warnings in include/sfx2/[a-D]*Gabor Kelemen
Found with bin/find-unneeded-includes Only removal proposals are dealt with here. Change-Id: I444cb71bc3d045072a4b1f9eed279ed7e425a0d4 Reviewed-on: https://gerrit.libreoffice.org/69481 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>