summaryrefslogtreecommitdiff
path: root/ridljar
AgeCommit message (Expand)Author
2014-05-01Many spelling fixes: directories r* - z*.Pedro Giffuni
2014-01-31Silence javadoc 8 errorsStephan Bergmann
2014-01-31Remove UNOIDL "array" and "union" vaporware remnantsStephan Bergmann
2013-10-25gbuild: refactor UnoApi to remove rdb files from OUTDIRMichael Stahl
2013-08-19Rename SOLAR_JAVA to ENABLE_JAVA and HAVE_FEATURE_JAVATor Lillqvist
2013-05-15Spelling "separate" (etc) correctly is hardTor Lillqvist
2013-05-06Java cleanup, remove unnecessary @SuppressWarnings annotationsNoel Grandin
2013-04-26Java cleanup, access static methods using correct syntaxNoel Grandin
2013-04-22Move to MPLv2 license headers, with ESC decision and author's permission.Michael Meeks
2013-04-11[API CHANGE] WIP: Experimental new binary type.rdb formatStephan Bergmann
2013-04-10workaround IBM java 1.5.0 inconvertible types errorCaolán McNamara
2013-03-14remove legacy build.pl prj/build.lst files.Michael Meeks
2013-02-28remove all d.lstMichael Stahl
2013-02-26odk: remove temporary Zip file gratuitous complexityMichael Stahl
2013-02-23Fix typo "sucessfully" -> "successfully"Julien Nabet
2013-01-26gbuild: fix silly "expandtabs" in makefile VIM modelinesMichael Stahl
2012-12-30add runtime deps for custom targetsDavid Tardon
2012-11-28ridljar etc.: javamaker invocations must rm -r targetdirMichael Stahl
2012-08-20Java update - fix various javadoc issuesNoel Grandin
2012-08-17gbuild: register all jarsMichael Stahl
2012-08-15gbuild: remove horrible abuses of gb_Jar_use_jars:Michael Stahl
2012-06-29ridljar: partially revert 4418ad0388b58cab6a129908f78baec5bc73906eMichael Stahl
2012-06-29Java5 update - convert code to use genericsNoel Grandin
2012-06-28remove malingering legacy RCS tags.Michael Meeks
2012-06-26re-base on ALv2 code.Michael Meeks
2012-06-21re-base on ALv2 code.Michael Meeks
2012-06-21re-base on ALv2 code.Michael Meeks
2012-05-10normalize variable names in gbuild user makefilesMichael Stahl
2012-05-09gbuild: remove gb_Helper_abbreviate_dirs_nativeMatúš Kukan
2012-04-29make gbuild the default assumption of build.plBjoern Michaelsen
2012-04-09enforce only one possible use of gb_CustomTargetMatúš Kukan
2012-04-08gbuild: "use" vs. "add":Michael Stahl
2012-04-06ridljar: use CustomTarget makefileMatúš Kukan
2012-02-20Make ridljar JunitTests workStephan Bergmann
2012-02-17update makefilesDavid Tardon
2012-02-17merge feature/gbuild_javaDavid Tardon
2012-02-16add gb_Helper_abbreviate_dirs_nativeMatus Kukan
2012-02-06Added READMEs for modules related to URE, with content from the wikiJosh Heidenreich
2011-12-25fix deps on executablesDavid Tardon
2011-12-25remove stray delzip filesDavid Tardon
2011-12-25remove stray makefile.mkDavid Tardon
2011-12-25convert ridljar unit testsDavid Tardon
2011-12-25add dependency on packageDavid Tardon
2011-12-24remove resolved TODO noteDavid Tardon
2011-12-24fix vim modelineDavid Tardon
2011-12-24add dep on javamakerDavid Tardon
2011-12-24fix typoDavid Tardon
2011-12-24pack generated UNO API classesDavid Tardon
2011-12-23gbuildize ridljarDavid Tardon
2011-11-08suppress warnings about inexact argument typeIvan Timofeev
in the ItemPool, also always having only one incarnation of each possible Item. This is not the original intention, but a side-effect. The reason is what the binary format in the office did: To save a document, the Objects & the Pool were saved, *not* individual Items *together* with the objects. The Pool was completely (binary) saved (and loaded) in one run. Temporary IDs were used to represent at the objects in file which Items were referenced. This *required* to have only one incarnation per item to have a minimal binary file size, thus this high effort was put into this. At doc load, the pool was loaded, all Items were set to RefCount 5000, the references from the objects were restored and then for each Item the RefCount was lowered by 5000 again and - if being zero - deleted. Items for UI were marked 'non-poolable' to *not* safe them with the document, so poolable was a flag to decide if that Info/Item was to be saved with the document - or more direct: if it is Model Data. Items are small, so if we prefer runtime it is okay to no longer being strict with this, anyways does not happen often and has only marginal memory effects - compared to runtime effects/savings. Other problems which this caused: One example is that objects in the UNDO stack were still in the pool, so e.g. deleted pictures were saved with the document despite no longer being used (!). That is the reason we have an UndoItemPool and a method MigrateItemPool to move stuff to that Pool when objects go to the UNDO stack - all of this is also no longer needed. Cleaning this up means to ideally have all items in the SfxItemSet, no longer at the Pool. The Pool should be reduced to a 'Default-Item- Holder' and a 'Slot-to-whichId-mapper'. This needs thorough cleanups/removals, but will be worth it because that massive simplification(s) will increase safety an runtime and make migrating to the goal of completely type-based ItemSet stuff easier for the future. Hopefully only view code in the office working with items will have to be changed for this. In this 1st step I already found that some 'compromizes' will be needed: - There are still Items that have to be at the pool to make the Surrogate-stuff working. This gives back all Items in a Pool of a type and is used in ca. 80 cases. Each one looks at these Items *without* context (e.g. a SfxItemSet at an Object would be a context), so if e.g. a dialog is open that temporarily uses Items of that type you would also get these - without knowing about it... To make that work there is still a mechanism to have Items at the Pool, but now just *registering* (and un-reg) them without any sort/search/ remove needs. Also only for Items that need that, so I evaluated the GetItemSurrogates calls and added some asserts when GetItemSurrogates tries to access an unregistered item type which needs to be added. - Another caveat is that there are about 250 places that directly put Items to the Pool (not all remove these, that is done at pool deletion, so some kind of silent 'garbage-collection' is in place). To have an overview I renamed the accessing methods to separate them from the same functionality at the SfxItemSet, which had the same names. An implementation does still add these directly to the pool, there is no way to cleanup those usages for now. In principle all these should be changed to hold the data at an SfxItemSet. I am still hunting problems. But you can build the office, all apps work (including chart) and you can do speed comparisons already. There are test throwing errors, so I hunt these now. It is hard to give an estimation about how much more changes/corrections will be needed. Completed adaptions to new registered Items at Pool, that reduces the failing tests. Still many that I need to hunt. Added stuff to work around that 'compromize' in ScDocumentPool: It overloads ::PutImpl of the pool to implement special handling for a single Item in SC, the ScPatternAttr. In former code that method was used from SfxItemSet and ::PutImpl at the pool directly, so it was only used in one place. I am not sure if it was used from the SfxItemSet functionality, but better offer it for now. To not waste too much runtime the callbacks depend on the boolean 'NewItemCallback' at the SfxPoolItem, it gets set for that single Item in SC and only then the callbacks trigger. I hope to get rid of those again, e.g. newItem_UseDirect is only needed since we have no 'real' StaticPoolDefaults currently - another thing that needs to be cleaned up in a next step. Since usages of impl(Create|Cleanup)ItemEntry and Direct(Put|Remove)ItemInPoolImpl got more and more similar I decided to unify that: move impl(Create|Cleanup)ItemEntry to tooling, make it globally available in svl and use it also directly for Direct(Put|Remove)ItemInPoolImpl. This slightly increases the failing tests again, but only since in Direct(Put|Remove)ItemInPoolImpl that fallback (e.g. tryToGetEqualItem) was used before, thus this is the same class of errors (SfxPoolItem ptr-compare) as the others which I will need to find anyways. Also fixed some missing stuff. Have now idenified and redirected all SfxPoolItem ptr-compares to be able to debug these - one cause for the remaining errors is probably that before with bPoolable those often were sufficient, but are no longer. Used the [loplugin:itemcompare] and a local clang build to do so, see https://gerrit.libreoffice.org/c/core/+/157172 Stabilized Direct(Put|Remove)ItemInPoolImpl forwards, added parameter to implCreateItemEntry to signal that it gets called from DirectPool stuff - currently needed. Hopefully when getting rid of that DirectPool stuff we can remove that again Added two more debug functionalities: - Added a SerialNumber to allow targeted debugging for deterministic cases - Added registering & listing of still-allocated SfxPoolItems at office shutdown Found PtrComp error in thints.cxx - POC, thanks to areSfxPoolItemPtrsEqual. Will hopefully help more with other tests Found some wrong asserts/warnings where I was too careful and not finding something/succeeding is OK, fixes some UnitTests for SC For SC I now just tried to replace all areSfxPoolItemPtrsEqual with the full-ptr-content compare SfxPoolItem::areSame. I also needed to experiment/adapt the newItem_Callback solution but got it working. Did that replacement now for SW too, found some places where the direct ptr compare is OK. Continued for the rest of occurrences, now all 160 places evaluated. Also done some cleanups. Massive cleanups of stuff no longer needed with this paradigm change. Also decided to keep tryToGetEqualItem/ITEM_CLASSIC_MODE for now. It is used for *one* Item (ScPatternAttr/ATTR_PATTERN) in SC that already needs many exceptions. Also useful for testing if errors come up on this change to test if it is related to this. Added forwarding of target Pool for ::Clone in SvxSetItem and SvxSetItem, simplified SfxStateCache::SetState_Impl and returned to simple ptr compares in SfxPoolItem::areSame to not do the test in areSfxPoolItemPtrsEqual. Debugged through UITest_calc_tests9 and found that in tdf133629 where BoxStyle is applied to fully selected empty calc the Item- reuse fallback has to be used not only for ATTR_PATTERN, see comment @implCreateItemEntry. Maybe more... Problem with test_tdf156611_insert_hyperlink_like_excel. Found that in ScEditShell::GetFirstURLFieldFromCell the correct SvxURLField is found and returned as ptr, but it's usage crashes. That is due to the SfxItemSet aEditSet used there gets destroyed at function return what again deletes the SvxFieldItem that is holding the SvxURLField that gets returned. This shows a more general problem: There is no 'SfxPoolItemHolder' that safely holds a single SfxPoolItem - like a SfxItemSet for a single Item (if Items would be shared_ptrs, that would be a safe return value). That will be needed in the future, but for now use another solution: Since I see no reason why EE_FEATURE_FIELD should not be shareable I wil change this for ow in the SfxItemInfo for EditCharAttribField. That way the Item returned will be shared (RefCnt > 1) and thus not be deleted. I changed the return value for GetURLField() and GetFirstURLFieldFromCell() in ScEditShell: At least for GetFirstURLFieldFromCell the return type/value was not safe: The SvxFieldItem accessed there and held in the local temporary SfxItemSet may be deleted with it, so return value can be corrupted/deleted. To avoid that, return a Clone of SvxFieldData as a unique_ptr. With all that UnitTest debugging and hunting and to get the paradigm change working to no longer rely on shared/pooled items I lost a little bit focus on speed, so I made an optimization round for the two central methods implCreateItemEntry/implCleanupItemEntry to get back to the speed improvements that I detected when starting this change. It was mainly lost due to that 'strange' chained pool stuff we have, so I added to detect the target pool (the one at which the WhichID is registered) directly and only once. Next thing to cleanup will/should be the pool and it's concept, all this is not needed and really costs runtime. Since implCreateItemEntry/implCleanupItemEntry are executed millions of times, each cycle counts here. Had an error in the last changes: pool::*_Impl methods use index instead of WhichID - most of them. Another bad trap, I really need to cleanup pool stuff next. Change-Id: I6295f332325b33268ec396ed46f8d0a1026e2d69 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/157559 Tested-by: Jenkins Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com> 2023-03-29fix concurrent access to fontcacheNoel Grandin Every now and then I see a crash in fontcache code. Add some DBG_SOLARMUTEX calls there, which spots a few issues. (*) In writer, SwDLL needs to be under the SolarMutex during init, and we can just move a method call to fix that. (*) in chart2, life is more complicated. Various of the static defaults we build want to call OutputDevice::getFontInstance. We can't just stick a SolarMutex somewhere in the call chain, because those maps are built on-demand, and then we end up with ABBA deadlocks between the SolarMutex and the mutex in the cppu::PropertySetHelper. So I picked a spot that is init'ed early on in chart2, and force the init of all the troublesome tables there. Change-Id: I832978bea35fd5fa681d144b8beff1af13ef3341 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/149648 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> 2022-12-01tdf#145599 Charts gets corrupted when you draw a line inside themNoel Grandin This reverts commit 2ed8c34bca56c1a30d727b21d9096cb77e88197a use a single global item pool for chart2 draw model Change-Id: I640a981a2cbbed1cb9e6c0b0c239c78bb481e12e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143526 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> 2022-08-14chart2: add UI to the data tableTomaž Vajngerl This adds a new object type "Data Table", with all the object identifiers and converters of properties. The data table is now shown in the drop-down of chart elements. A properties dialog was added, which allows to change properties of a data table. This contains the area, line and font tab pages and a new tab page specific for data tables, to change if the horiz. or vert. borders, key or the outline should be show. Change-Id: I9b4cd58cffbcc952daaa2c0c8f8a5a17e38ac293 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/138246 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl <quikee@gmail.com> 2022-01-13Recheck modules [a-c]* with IWYUGabor Kelemen See tdf#42949 for motivation Change-Id: I74a3c3a67c3639376e2251c3eb917fa4139dfbd0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127808 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com> 2021-05-12fix ubsan use-after-freeNoel Grandin after commit 2ed8c34bca56c1a30d727b21d9096cb77e88197a Date: Wed May 5 10:54:44 2021 +0200 use a single global item pool for chart2 draw model Change-Id: I5f6b1b1917f60c9a8603b58368da8b34f174f7db Reviewed-on: https://gerrit.libreoffice.org/c/core/+/115478 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com> 2021-05-08ref-count SfxItemPoolNoel Grandin so we can remove SfxItemPoolUser, which is a right performance hog when we have large calc spreadsheets Change-Id: I344002f536f6eead5cf98c6647dd1667fd9c8874 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/115247 Tested-by: Noel Grandin <noel.grandin@collabora.co.uk> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> 2021-05-07use a single global item pool for chart2 draw modelNoel Grandin which exposed a bug in SvxUnoNameItemTable::replaceByName Change-Id: If3207df6d46a2185b78ea5c3e1c145527b42d7cd Reviewed-on: https://gerrit.libreoffice.org/c/core/+/115126 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> 2021-02-22[API CHANGE] tdf#133423 Implement chart:regression-moving-typeSamuel Mehrbrodt Change-Id: Icb967367fbf12e5a1566b7f18ebe5e3d8a3534f0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/110748 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@allotropia.de> Reviewed-by: Samuel Mehrbrodt <samuel.mehrbrodt@allotropia.de> 2021-02-08tdf#94235 Add support for series name in data series labelsSamuel Mehrbrodt including ODF/OOXML import/export (and test) Change-Id: Id5a5194630a67476f7c5390294400a00ea3ad42d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/110338 Tested-by: Jenkins Reviewed-by: Samuel Mehrbrodt <samuel.mehrbrodt@allotropia.de> 2021-01-02introduce Degree100 strong_int typeNoel Change-Id: I78f837a1340be0ca5c49097f543a481b7b43a632 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/108367 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> 2021-01-02use SdrAngleItem for SCHATTR_STARTING_ANGLENoel Grandin Change-Id: Ibe6b882806df1b30e38f4461284a7514f4407b3c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/108554 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> 2020-12-28use SdrAngleItem for SCHATTR_TEXT_DEGREESNoel Grandin as a precursor to introdcing a strong_int type for hundredths of a degree Change-Id: I63fbaf7e24e50ad90e524ae3c484dfb81b831aef Change-Id: I1949b3c0b3af3acc386bd80e35175fd8742688e4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/108371 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> 2020-09-15tdf#133227 chart UI: option to hide leader linesBalazs Varga between data points and displaced data labels of a data series. Follow-up of the following commits related to the new UNO property ShowCustomLeaderLines for data labels: commit e2f4e65a7b8024c00b049eebf0d87637efda7f24 (tdf#134571 chart2, xmloff: add loext:custom-leader-lines) commit 5d67d70b26706ce8a08612c12a68821f984210a2 (tdf#134563 Add UNO API for custom leader lines) Change-Id: Id8a953b16ff737ca924c0c2c3241fba4e3ac904b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/102221 Tested-by: László Németh <nemeth@numbertext.org> Reviewed-by: László Németh <nemeth@numbertext.org> 2020-05-13tdf#132757 UI: option to set Position Axis property of chartsTünde Tóth Follow-up of commit 40d83914d43f60a196dfabddea0b52e2046b333a (tdf#127792 implement UNO chart attribute MajorOrigin). Change-Id: I68c35a4552a3915c045036d1f0f38804a00b7093 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93566 Tested-by: Jenkins Reviewed-by: László Németh <nemeth@numbertext.org> 2020-03-05tdf#75330 add a new overlay/no-overlay feature for the legendTünde Tóth Implement "Show the legend without overlapping the chart" option for chart legend. Change-Id: Ifbba4c81136e13995d276434dc17a97b0675428c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89810 Tested-by: Jenkins Tested-by: László Németh <nemeth@numbertext.org> Reviewed-by: László Németh <nemeth@numbertext.org> 2020-03-03tdf#130777 UI: add Hide legend entry option for pie chartTünde Tóth Follow-up of the following commits related to the new UNO property DeletedLegendEntries for pie charts: commit a96ec04a07c35338f5f9a0cb361b9322e5ca9cec (tdf#130225 implement ODF export of deleted legend entries of pie charts) commit 86be3422cd55fa9e44104f1628648061bb6a3495 (tdf#129857 Chart OOXML export: fix deleted legend entries) commit 6e847aa817999ab18acd534f9e6a86685bb268fc (tdf#129859 XLSX import: don't show deleted legend entries) Change-Id: I8b13823da745dfbfbf20f1d30f742c4baf803fc3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89456 Tested-by: László Németh <nemeth@numbertext.org> Reviewed-by: László Németh <nemeth@numbertext.org> 2019-04-25WIP: Further preparations for deeper Item changesArmin Le Grand (1) Migrated all still existing binary load/save stuff in SfxPoolItem to legacy files. Isolated from Item implementations. Adapted all usages. No more methods Create/Store needed, also GetVersion removed (2) Removed operator= for SfxPoolItem. Adapted all usages. Goal ist to handle Items more as Objects ('Object-Oriented') in the sense to move/handle instances, not to copy one instance over another one (which is more and more problematic with hard to copy content as UNO API stuff or similar). This lead to much more usages of std::shared_ptr which correlates well with future plans fr Items (see dev branch). Next logic step will be to also remove copy constructor Linux build and corrections done Fixed Writer test and removed unused defines Fixed another unused m,acro Started to unify the AutoFormat stuff Changes to OUString constructor usages, tests completely No idea why, but SfxStringItem constructor which takes a OUString& now insists of not getting ::OUString's handed in - changed all 'SfxStringItem.*OUString.*".*"' accordingly Change-Id: Ibed7358b18fb019994a7490332b9d797a6694c29 Reviewed-on: https://gerrit.libreoffice.org/71075 Tested-by: Jenkins Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com> 2018-12-05related tdf#51671, add UI options for new "hide legend entry" featureMarkus Mohrhard Change-Id: I4a9025e317dbd93fb45e676f266c555c72f4d18b Reviewed-on: https://gerrit.libreoffice.org/64614 Tested-by: Jenkins Reviewed-by: Markus Mohrhard <markus.mohrhard@googlemail.com> 2018-11-26tdf#42949 Fix IWYU warnings in chart2/source/view/*cxxGabor Kelemen Found with bin/find-unneeded-includes Only removal proposals are dealt with here. Change-Id: I9ee3318c79d3b59f272a2a5f89c38b26afa05974 Reviewed-on: https://gerrit.libreoffice.org/63775 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com> 2018-09-06loplugin:simplifyconstruct in canvas..cuiNoel Grandin Change-Id: I02eba1df117a9d0df42bcac13c3251cb4fa6da14 Reviewed-on: https://gerrit.libreoffice.org/60074 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Noel Grandin <noel.grandin@collabora.co.uk> 2018-01-15More loplugin:cstylecast: chart2Stephan Bergmann Change-Id: Id704acc62a62554a81673c512e84a71a71798013 2017-11-03inline ASSERT_EXCEPTION macro in chart2Noel Grandin Change-Id: I6bdcde5fd416531e2cdd3c9ec160833f1022247c Reviewed-on: https://gerrit.libreoffice.org/44246 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> 2017-10-23loplugin:includeform: chart2Stephan Bergmann Change-Id: I5b455c684e7cd689d5160135246f3400363c7d40 2017-07-05loplugin:useuniqueptr in basic..cppcanvasNoel Grandin Change-Id: Ib40241eb794607154ae52f8aa68fbf5ea5e944af Reviewed-on: https://gerrit.libreoffice.org/39551 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> 2017-03-31use actual UNO enums in chart2Noel Grandin Change-Id: I05d4eed55f5deba4b1802389d1ba94582d30550f Reviewed-on: https://gerrit.libreoffice.org/35917 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> 2017-02-15Drop :: prefix from std in c*/Tor Lillqvist Change-Id: If078cda95fa6ccd37270a5e9d81cfa0b84e71155 Reviewed-on: https://gerrit.libreoffice.org/34324 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Tor Lillqvist <tml@collabora.com> 2017-02-08remove unused SCHATTR_DIAGRAM_STYLENoel Grandin and associated SvxChartStyleItem and SvxChartStyle Change-Id: I1564a4583125dd32af71e4eff338dfcefc6517c4 Reviewed-on: https://gerrit.libreoffice.org/33988 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>