summaryrefslogtreecommitdiff
path: root/editeng
AgeCommit message (Collapse)Author
2017-09-15convert SvxAuthorFormat to scoped enumNoel Grandin
Change-Id: I5553ea640a4483c98ec5f5240594e30a72c968f8 Reviewed-on: https://gerrit.libreoffice.org/42311 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-09-15convert SdrMeasureFieldKind to scoped enumNoel Grandin
Change-Id: I8896d46623843d3fe341c057d7ee0376a99f4741 Reviewed-on: https://gerrit.libreoffice.org/42310 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-09-15convert SvxCellVerJustify to scoped enumNoel Grandin
Change-Id: I9d1cdb4ddfee43b7a0990624d7d16e06679343c4 Reviewed-on: https://gerrit.libreoffice.org/42276 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-09-14improve redundantcast lopluginNoel Grandin
to find c-style casts where the expression is a templated method Change-Id: Ifbd1e2cdc72d906fc95a7ec0f9408c3f6d2a836b Reviewed-on: https://gerrit.libreoffice.org/42275 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-09-11clang-tidy modernize-use-emplace in editeng..frameworkNoel Grandin
Change-Id: I7739c4f77c856d34f8484754244df13d8fef840e Reviewed-on: https://gerrit.libreoffice.org/42151 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-09-08loplugin:constantparamNoel Grandin
Change-Id: Ic87f0cc863490858b7cc7e74a7f90ec31992dd53 Reviewed-on: https://gerrit.libreoffice.org/42089 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-09-04loplugin:unnecessaryparen include c++ castsNoel Grandin
Change-Id: I132d3c66f0562e2c37a02eaf4c168d06c2b473eb Reviewed-on: https://gerrit.libreoffice.org/41874 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-08-27OUString: reduce temporaries and constifyMatteo Casalin
Change-Id: Ic4d5e26b16414625dfb507ecf37d87efe171ceab
2017-08-25loplugin:unusedfieldsNoel Grandin
Change-Id: I81bcf4f56599146536ba8d66cc86fa5a08737298 Reviewed-on: https://gerrit.libreoffice.org/41556 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-08-25loplugin:unusedmethodsNoel Grandin
Change-Id: Iaaf9092ec4d6189492906648b84494d087fed81f Reviewed-on: https://gerrit.libreoffice.org/41539 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-08-24Related: tdf#108795 never use an unresolved LANGUAGE_SYSTEM in SvxAutoCorrectEike Rathke
Substitute with the current work locale, using MsLangId::getSystemLanguage() instead was also wrong. Change-Id: I55db3bc1f76329320afc1f366d7426a8c2f66fb2 Reviewed-on: https://gerrit.libreoffice.org/41476 Reviewed-by: Eike Rathke <erack@redhat.com> Tested-by: Jenkins <ci@libreoffice.org>
2017-08-24Related: tdf#108795 a shared SvxAutoCorrect instance can not be statefulEike Rathke
An SvxAutoCorrect instance is shared via SvxAutoCorrCfg::Get().GetAutoCorrect(). Since commit 284eb106767d094fc5c547efd6c11cc390e3538a and following the SvxAutoCorrect::bRunNext/HasRunNext() introduced a state whether a previously inserted NO-BREAK SPACE should be removed again, depending on the next character input. That does not work, for example, if SvxAutoCorrect::DoAutoCorrect() is called from two different EditEngine instances, like it is the case in the Calc input line and cell which are synchronized; or any other two or more instances for that matter. The caller has to pass and remember a flag that is maintained by SvxAutoCorrect. Change-Id: I79a26d2ba44cc40771979a78b686c89f0c80b412 Reviewed-on: https://gerrit.libreoffice.org/41475 Reviewed-by: Eike Rathke <erack@redhat.com> Tested-by: Jenkins <ci@libreoffice.org>
2017-08-22editeng: warning C4701 potentially uninitialized local varMichael Stahl
Change-Id: I611f0b5652722f0de38dfb82440823b832a6029c
2017-08-22editeng: avoid infinite loop in SvxBoxItem::CreateMichael Stahl
Apparently a sw unit test randomly read a partially written autotbl.fmt and the stream has m_isEof = true. Change-Id: Iacfbc42e83be6320d4aa695a5df4264f1db0b021
2017-08-22drop unused SvxScriptTypeItemJochen Nitschke
apparently there was never a user for this item since initial commit in the year 2000. SvxScriptSetItem gets the ScriptType by parameter see GetItemOfScript and PutItemForScriptType. remove SID_ATTR_CHAR_SCRIPTTYPE and don't put the item in any set. keep the gap in the ID range because it's not part of any range and there are already other gaps. Change-Id: Iee24f13b329593af2dc5548d8b6bc2282c2dc5b3 Reviewed-on: https://gerrit.libreoffice.org/41423 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-08-20drop unused SfxSpellCheckItemJochen Nitschke
last getter went with commit 215207f480258b37864a88e1b831055e148adf65 Date: Thu Mar 6 16:42:24 2014 +0000 coverity#708784 Unused pointer value don't put the item in any item sets anymore. delete SID_ATTR_SPELL and adjust SfxItemSet ranges. narrow ranges in OfaTreeOptionsDialog::CreateItemSet to actually used items. Change-Id: Ia5cc91fc62a0fccf87b2fd380e6bb2bef1f6f3e7 Reviewed-on: https://gerrit.libreoffice.org/41335 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-08-18loplugin:unnecessaryparenNoel Grandin
look for statements like return (function()); Change-Id: I906cf2183489f87225b99b987caca67e39b26cc3 Reviewed-on: https://gerrit.libreoffice.org/41260 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-08-17Fix typosAndrea Gelmini
Change-Id: Iaa9c0aea3ea1a239e378bd714ba335f91bb1faf3 Reviewed-on: https://gerrit.libreoffice.org/41194 Reviewed-by: Michael Stahl <mstahl@redhat.com> Tested-by: Michael Stahl <mstahl@redhat.com>
2017-08-17remove unnecessary use of OUString::getStrNoel Grandin
Change-Id: I3d13e1c0bb6aa4a7aacc463198747c1368ebc9b4 Reviewed-on: https://gerrit.libreoffice.org/38114 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-08-17remove UL/L suffixes from integer constants on the RHS of expressionsNoel Grandin
Change-Id: I899a8126c9d971601fea6c77eca165718aea0ac5 Reviewed-on: https://gerrit.libreoffice.org/41237 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-08-17Removing unused serialisation codeVarun Dhall
Change-Id: I86911c77f0831d448ff803afae2a74ec55ad4dd8 Reviewed-on: https://gerrit.libreoffice.org/41233 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Michael Stahl <mstahl@redhat.com>
2017-08-17remove UL/L suffixes from integer constants in initialiser/call expressionsNoel Grandin
Change-Id: Iae081567c4fa5b88edbd12cf2fbafd2b8f31b300 Reviewed-on: https://gerrit.libreoffice.org/41214 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-08-16assert on duplicate listener in SfxListenerNoel Grandin
To enable finding the source of the duplicate calls, I add new SAL API (only for internal use) to retrieve and symbolise stack backtraces. The theory is that it relatively cheap to just store a backtrace, but quite expense to symbolise it to strings. Note that the backtrace() library we use on Linux does not do a particularly good job, but it gives enough information that developers can use the addr2line tool to get more precise info. Explanation of fixes in the code that triggered the assert: In SwFrameHolder, we need to only call StartListening() if the pFrame member is actually changing. We also need to call EndListening() on the old values when pFrame changes. In SwNavigationPI, there is already a StartListening() call in the only place we assign to m_pCreateView. In ImpEditEngine, we need to ignore duplicates, because it is doing a ref-counting thing. By storing duplicates on the listener list, it doesn't need to keep track of which stylesheets its child nodes are using. Given that it therefore will see duplicate events, there is probably some performance optimisation opportunities here. In MasterPageObserver::Implementation::RegisterDocument, we seem to be getting called multiple times with the same SdDrawDocument, so just check if we've been registered already before calling StartListening() In SvxShape::impl_initFromSdrObject, do the same thing we do elsewhere in this class, i.e. only call StartListening() if the model has changed. Change-Id: I7eae5c774e1e8d56f0ad7bec80e4df0017b287ac Reviewed-on: https://gerrit.libreoffice.org/41045 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-08-14Removing unused SetVersionMap from editengVarun Dhall
Change-Id: I04b2cb17271365a7967e51c7d551f538ee9a5c68 Reviewed-on: https://gerrit.libreoffice.org/41102 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Michael Stahl <mstahl@redhat.com>
2017-08-13tdf#110988 Middle click does not paste primary selectionNoel Grandin
regression from commit 65b7b6322b662785bf032e66c76abc36c9a2bb0e "loplugin:unusedenumconstants read-only constants in vcl" Change-Id: I262dd4c9cd1dc6eca82521f5fd9fbfc952fb7745 Reviewed-on: https://gerrit.libreoffice.org/41111 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-08-11convert std::map::insert to std::map::emplaceNoel Grandin
which is considerably less verbose Change-Id: Ifa373e8eb09e39bd6c8d3578641610a6055a187b Reviewed-on: https://gerrit.libreoffice.org/40978 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-08-11Fix typosAndrea Gelmini
Change-Id: Ia36c8abe91e8c2ac46498e88def59a9887711ba1 Reviewed-on: https://gerrit.libreoffice.org/41014 Reviewed-by: Julien Nabet <serval2412@yahoo.fr> Tested-by: Julien Nabet <serval2412@yahoo.fr>
2017-08-10editviewoverlay: Adapted URL in edit modeArmin Le Grand
For histotrical reasons a URL in edit mode is visualized in a single line. To keep compatible, also do this when EditView is on Overlay Change-Id: Ib11b1716aa558c13295a8a02e2845a88fa98ed11
2017-08-10editviewoverlay: correct reaction on property changeArmin Le Grand
Do not hand over LogicalSelectionRanges directly on selection change, better let the visulizer do what he needs. On AttributeChange, tge resulting repaint needs to refresh all OverlayObjects, not only text, but also the selection to make look okay e.g. at font size change Change-Id: Ibb9737c33d6f85a9f68df3edbb989c0443cd4a5c
2017-08-10editviewoverlay: more cases securedArmin Le Grand
Added support for vertical text, checked all combinations for text positioning, secured cursor stuff, ensured collaboration with LibreOfficeKit Change-Id: I98d1187700907c0c72abdccb9c9979496f6c20cf
2017-08-10editviewoverlay: EditViewSelection reorganizedArmin Le Grand
The Selection visualization in EditVierw is organized to use XOR for visualization, thus DrawSelection is used e.g. before and after changes to the Selection. Ensured athat all changers of selection have to use SetEditSelection by making return of GetEditSelection const. This allows to use a central and safe SelectionChanged which is needed for alternatives of Selection visualization. Change-Id: I994553f3be6b58fd595aa500922d8d1d8ddd36d4
2017-08-10editviewoverlay: Allow EditView to run in OverlayArmin Le Grand
This is the first basic functionality to get the active EditView with EditEngine work in the Overlay which all Apps support. Reason is that the current EditEngine 'plugs' into the Window and uses Invalidate() calls to repaint deeply everything under a text change. While this is acceptable for simple cases it can get very slow when there are excessive, expensive to paint objects in the background, e.g. MasterPages in Draw/Impress with gradients and other stuff. This was avoided in older versions (LO51) by 'guessing' a good BackgrundColor by the EditEngine, not invalidating but painting actively using that guess (with better or worse results) which someone removed. For the future it is anyways the better way to get the EditEngine functionality to Overlay and using Primitives, this will be a first step. This may enable Text Editing without repainting the Background (fast), using a non-XOR selection paint and more. It will need thorough testing and further experimenting due to EditEngine being used in many places (DrawObjects, Calc Cells, Formular Fields, Controls, ...) Change-Id: Ib9eb0f3999fd61a82ddf7a60ab1ea6ccda3a60da
2017-08-09Removing unused SfxItemPool serialisation from scVarun Dhall
Change-Id: Ib8686d06f8cd477ff4fce948b0ac9c3fe463b129 Reviewed-on: https://gerrit.libreoffice.org/40901 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Michael Stahl <mstahl@redhat.com>
2017-08-08SvPersistStream deadNoel Grandin
since commit 1e4b1e4a1aca3b333820b0a865997e6f62e80064 "Removing unused SfxItemPool serialisation from editeng" Change-Id: I8a3cd36a13b7d2322047c2035e0f23c70ca9cdf0 Reviewed-on: https://gerrit.libreoffice.org/40880 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-08-08loplugin:unusedmethodsNoel Grandin
Change-Id: Id66cf12e3a59aeed1b9a7a111b841e30b248635b Reviewed-on: https://gerrit.libreoffice.org/40876 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Jochen Nitschke <j.nitschke+logerrit@ok.de> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-08-08Fix typosAndrea Gelmini
Change-Id: I24a1e979afe57d9dd139ac07bafc1ec908893152 Reviewed-on: https://gerrit.libreoffice.org/40875 Reviewed-by: Julien Nabet <serval2412@yahoo.fr> Tested-by: Julien Nabet <serval2412@yahoo.fr>
2017-08-08loplugin:constantparamNoel Grandin
Change-Id: Ib92aba17c46a4ada75c2a0630f281759d995f32e Reviewed-on: https://gerrit.libreoffice.org/40843 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-08-07Removing unused SfxItemPool serialisation from editengVarun Dhall
Change-Id: I051201c272b7acdd48d54cc0c230f8b432196188 Reviewed-on: https://gerrit.libreoffice.org/40429 Reviewed-by: Michael Stahl <mstahl@redhat.com> Tested-by: Jenkins <ci@libreoffice.org>
2017-08-07EditEngine: Removing BIN formatVarun Dhall
Change-Id: I2752af754316e1402aa51b97895bcf0bf915676f Reviewed-on: https://gerrit.libreoffice.org/40372 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Michael Stahl <mstahl@redhat.com>
2017-08-03lok - add support for in place chart editingMarco Cecchetti
This commit add a minimal support for editing chart embedded in a spreadsheet or a text document or a presentation. Graphic objects can be moved and resized, text objects can be edited. Change-Id: I8e637dabf328a94bd6bb0e309a245302cff421d8 Reviewed-on: https://gerrit.libreoffice.org/39342 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Marco Cecchetti <mrcekets@gmail.com>
2017-08-02remove unnecessary use of 'this->'Noel Grandin
Change-Id: I5c115389af7d24c18ddaf5fbec8c00f35017a5b4 Reviewed-on: https://gerrit.libreoffice.org/40671 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-08-01move resmgr to unotoolsCaolán McNamara
and the vast majority of translations is to the ui language so default ctor with that arg and now drop OModuleResourceClient Change-Id: I3b85a560ffdfe5f019c2271ac56a5fe4a361522b
2017-08-01loplugin:checkunusedparamsNoel Grandin
the "check for taking address of function" part was generating false+ Change-Id: Iad6203850901229b7b1b2f8938c68ec703cd343f Reviewed-on: https://gerrit.libreoffice.org/40613 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-07-31make IntlWrapper arg to GetPresentation non-implicit and non-optionalCaolán McNamara
which requires explicitly adding null in 1) SdrItemBrowserControl::SetAttributes(const SfxItemSet* pSet, const SfxItemSet* p2ndSet) where SdrItemBrowserControl is only used by SdrItemBrowser and the only use of that is within DBG_UTIL in SdrPaintView 2) SwCursorShell::GetContentAtPos( const Point& rPt, within a #ifdef DBG_UTIL block in 3) SvxSearchDialog::BuildAttrText_Impl( OUString& rStr, bool bSrchFlag ) const where the other branch uses SvxResId 4) SfxPoolItem::dumpAsXml(xmlTextWriterPtr pWriter) const 5) XFillStyleItem::dumpAsXml(xmlTextWriterPtr pWriter) const looks very much like all uses (outside the dumpers) are intended to be in the ui locale results in that INetContentTypes::GetPresentation always called with UI Locale Change-Id: I5a110c107838b4db3c355476426d6532f2b6ce52 Reviewed-on: https://gerrit.libreoffice.org/40538 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2017-07-31loplugin:oncevarNoel Grandin
extend oncevar to any POD type Change-Id: Ia98ee0a67f183e40fb0c38477760124b2c411dc0 Reviewed-on: https://gerrit.libreoffice.org/40564 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-07-28loplugin:constparams in editengNoel Grandin
Change-Id: Ice32a16d14d0132a19e8209d311bb799fd7ee0c8 Reviewed-on: https://gerrit.libreoffice.org/40526 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-07-28loplugin:checkunusedparams more part2Noel Grandin
Change-Id: Ibb940c2a7098313dfa282734894b1abc1ac40bc2 Reviewed-on: https://gerrit.libreoffice.org/40489 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-07-27Ditch use of EditTextObject::Store() in ScGlobal::EETextObjEqual()Eike Rathke
This was the last incarnation of SfxItem binary stream serialization that is to be eliminated after clipboard use is gone. The "full" EditTextObject::operator==() in EditTextObjectImpl::operator==(), and via ContentInfo::operator==() in SfxItemSet::operator==(), also compare the SfxItemPool pointers which gets in the way here (not stored to stream hence didn't matter and maybe the reason for not having switched EETextObjEqual() to use operator==() back in the days). Introduce *::Equals() functions that do not compare pool pointers and let SfxItemSet::Equals() in that case not assume it would be operating on one pool only. Change-Id: Ifff939a92101c7f74695b676a45a7fdbb4f1d7f6 Reviewed-on: https://gerrit.libreoffice.org/40492 Reviewed-by: Eike Rathke <erack@redhat.com> Tested-by: Jenkins <ci@libreoffice.org>
2017-07-27replace sal_uLong variables with sal_uInt32 for SvNumberFormatter IDsJochen Nitschke
Replace the stopgap type sal_uLong as SvNumberFormatter format index uses sal_uInt32. SwInsertDBColAutoPilot uses format indices from SvNumberFormatter and from the property "FormatKey" which is stored as sal_Int32 but ctor guards against negative values. Change type of loop variable in SwCaptionDialog to avoid narrowing in GetFormatStr/GetFormatKey. Change-Id: I79980696c07760f7ff026bb1bacf0e069363898c Reviewed-on: https://gerrit.libreoffice.org/40464 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-07-26Restore and fix and fix harder the EditTextObject::operator==()Eike Rathke
... chaining down to EditTextObjectImpl::operator==() that compared unique_ptr instead of content with ContentInfo::operator==() that needed to use XEditAttribute::operator==() instead of comparing pointers. That resulted in always false.. Wrong as a chain of commit 5a7a4325eca58c253270d4e9d327042a9ee2c5f0 Date: Tue Nov 10 14:59:05 2015 +0200 editeng: boost::ptr_vector->std::vector<std::unique_ptr> and commit 4ff5a5558472beee85eb1234dcc2aa2ed9000f6c Date: Tue Jan 19 15:17:30 2016 +0200 loplugin:unusedmethods Plus XEditAttribute::operator==() was wrong since commit 71158788efb32ffc3bac5154c38ca5d79525155c Date: Thu May 4 08:11:41 2006 +0000 INTEGRATION: CWS impressc03u3 (1.8.40); FILE MERGED 2006/04/27 12:33:10 cl 1.8.40.1: #i64360# fixed operator== that (to fix a crash comparing items of different types) changed - ( (pItem == rCompare.pItem) || (*pItem == *rCompare.pItem)); + ( (pItem == rCompare.pItem) || + ( pItem->Which() != rCompare.pItem->Which()) || + (*pItem == *rCompare.pItem)); so returning true if Which-IDs differed, instead of + ((pItem == rCompare.pItem) || + ((pItem->Which() == rCompare.pItem->Which()) && + (*pItem == *rCompare.pItem))); Change-Id: I8300c04001e98cb71e520bbe2c180aec0c0a3333 Reviewed-on: https://gerrit.libreoffice.org/40455 Reviewed-by: Eike Rathke <erack@redhat.com> Tested-by: Jenkins <ci@libreoffice.org>