Commit Graph

164 Commits

Author SHA1 Message Date
a66731982e convert SFX_HINT to scoped enum
Notes

(*) In SC, BULK_DATACHANGED was or'ed into the hint id. Replaced with a
dynamic_cast check.

(*) In SC, removed the hint id field from ScIndexHint, no point in
storing the hint id twice

(*) Fold the SfxStyleSheetHintId enum into the new SfxHintId enum, no
point in storing two different hint ids

(*) In some cases, multiple #define's used to map to the same SFX_HINT
value (notably the SFX_HINT_USER* values). I made all of those separate
values.

Change-Id: I990e2fb587335ebc51c9005588c6a44f768d9de5
Reviewed-on: https://gerrit.libreoffice.org/31751
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
2016-12-08 12:35:09 +00:00
d1a9c73ea1 tdf#88206 replace cppu::WeakImplHelper* misc
also edited two examples in canvas comments

Change-Id: Iac82b462168f869f995c33bb2c639f3dbe09cbd5
Reviewed-on: https://gerrit.libreoffice.org/31715
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
Tested-by: Stephan Bergmann <sbergman@redhat.com>
2016-12-07 10:56:36 +00:00
06dd5b9c9e convert SbDEBUG constants to o3tl::typed_flags
Change-Id: Ifcada5684bacae46ec90c5ce3e58980860fee29f
2016-11-24 08:05:55 +02:00
bb674aa550 loplugin:unusedfields
Change-Id: Id2dbbf384637223db3d334d95332251832918003
Reviewed-on: https://gerrit.libreoffice.org/30927
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
2016-11-17 13:10:42 +00:00
f31d98f63c loplugin:expandablemethods in avmedia..canvas
Change-Id: Ic230f1ef6b1dbe796ac7862a1a7e6a718f9e4e54
Reviewed-on: https://gerrit.libreoffice.org/30753
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
2016-11-11 07:00:18 +00:00
f606a6b248 loplugin:unnecessaryvirtual in basctl..chart2
Change-Id: Id4eeb12792c3a66b68a907cb459ab437e3d64e4c
Reviewed-on: https://gerrit.libreoffice.org/30680
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2016-11-08 08:57:05 +00:00
5a5731cd05 loplugin:expandablemethodds in include/basic..comphelper
Change-Id: I1aa9c12e8839325a9fd98530abc89a3d586ff62e
Reviewed-on: https://gerrit.libreoffice.org/30120
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
2016-10-21 09:57:38 +00:00
f004aa9951 tdf#89307: Removed SvRef::operator T*()
Conditional statements are using SvRef::Is() method.
Changed static_cast<T*>(svRef<T>) occurances to svRef.get().
Added operator == and != to SvRef.

SbxObject::Execute is using SbxVariableRef internally.
SbxObject::FindQualified is using SbxVariableRef internally.

Change-Id: I45b553e35d8fca9bf71163e6eefc60802a066395
Reviewed-on: https://gerrit.libreoffice.org/29621
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2016-10-10 08:48:30 +00:00
3e993a51f1 loplugin:staticmethods: basic
Change-Id: Ic8c8c8ad4470e14d662f478f6b859cd908c9f78c
2016-10-07 12:07:43 +02:00
4d87443bf5 loplugin:constantparam
Change-Id: Idbe8c8e6b3d44cacce296ec8c79b2b244281057c
Reviewed-on: https://gerrit.libreoffice.org/29321
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2016-09-30 06:57:26 +00:00
7d8196ea2f perf: eliminate SfxSimpleHint and move to SfxHint, tdf#87101 related
There were over 150 places in *::Notify() functions that did some
dynamic_cast<SfxSimpleHint*> of which ~98% were unnecessary because the
base class SfxHint passed was an SfxSimpleHint anyway. dynamic_cast
operations come with quite some cost, so avoid if possible. Specifically
for ScFormulaCell::Notify() that created a bottleneck in scenarios where
cells were notified that already handled a previous notification. In
mass operations doing the dynamic_cast before it could be decided
whether having to act on it or not this made 2/3 of all time spent in
the Notify() call.

To get rid of that rename/move SfxSimpleHint to SfxHint and let classes
derive from SfxHint instead of SfxSimpleHint. This comes only with a
slight cost that an additional sal_uInt32 is transported in such hints,
initialized to 0, but this is neglectable compared to the huge gain.

For the rare cases where a Notify() actually expects both, an SfxHint
(formerly SfxSimpleHint) and a derived hint, this changed order of the
dynamic_cast involved so the simple SfxHint::GetId() is handled last.
Modules using such combinations can further optimize by treating the
simple SfxHint::GetId() first once verified that none of the other
derived hints use an ID not equal to zero respectively none of the ID
values the simple hint uses.

Change-Id: I9fcf723e3a4487ceb92336189d23a62c344cf0ce
Reviewed-on: https://gerrit.libreoffice.org/29205
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Eike Rathke <erack@redhat.com>
2016-09-23 15:14:03 +00:00
e0e8d0fbcf fix windows build
by reverting part of commit
    commit 7419057e3ec4365748fa6456e207f40fd9e09c62
    Author: Noel Grandin <noel@peralex.com>
    Date:   Thu Sep 22 16:34:14 2016 +0200
    loplugin:unusedmethods in chart2..svx

Change-Id: I72515c9b5f3739f57d4b63a724a9fa32075b2612
Reviewed-on: https://gerrit.libreoffice.org/29197
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
2016-09-22 19:57:07 +00:00
7419057e3e loplugin:unusedmethods in chart2..svx
Change-Id: Ifb6045885049733415895f58cdd911256f48323c
Reviewed-on: https://gerrit.libreoffice.org/29187
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
2016-09-22 18:57:43 +00:00
1658bd231b loplugin:unusedenumvalues
Change-Id: I9dcc9f73af6db5b4f7cc946bc28931e5c230b34c
Reviewed-on: https://gerrit.libreoffice.org/29012
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
2016-09-19 10:44:05 +00:00
f1d9f6c8fa Remove unused declaration
Change-Id: Ica1bb8ed197f4581da4a4df61b91a91081602b91
2016-09-15 11:51:35 +02:00
20a9e101d9 loplugin:constantparam
clean up the plugin a little, and try to catch params which are default
constructed, which doesn't seem to be working yet

Change-Id: Ife45f18502a45cd26306424b7432c55fcbb0fd12
Reviewed-on: https://gerrit.libreoffice.org/28861
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
2016-09-14 08:47:06 +00:00
0761f97525 loplugin:constantparam in accessibility to basic
Change-Id: Id77cbcaefebf310a5d99c6ac12d154e182fd0a1c
Reviewed-on: https://gerrit.libreoffice.org/28860
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
2016-09-14 08:46:12 +00:00
91dd2db17b loplugin:override: No more need for the "MSVC dtor override" workaround
The issue of 362d4f0cd4e50111edfae9d30c90602c37ed65a2 "Explicitly mark
overriding destructors as 'virtual'" appears to no longer be a problem with
MSVC 2013.

(The little change in the rewriting code of compilerplugins/clang/override.cxx
was necessary to prevent an endless loop when adding "override" to

  OOO_DLLPUBLIC_CHARTTOOLS    virtual ~CloseableLifeTimeManager();

in chart2/source/inc/LifeTime.hxx, getting stuck in the leading
OOO_DLLPUBLIC_CHARTTOOLS macro.  Can't remember what that
isAtEndOfImmediateMacroExpansion thing was originally necessary for, anyway.)

Change-Id: I534c634504d7216b9bb632c2775c04eaf27e927e
2016-09-13 13:19:22 +02:00
f8a8a41c2e Translate some German comments and messages
Change-Id: Id15e1afd991f3476e260ba40a8c45c7261113577
Reviewed-on: https://gerrit.libreoffice.org/28493
Reviewed-by: Michael Stahl <mstahl@redhat.com>
Tested-by: Jenkins <ci@libreoffice.org>
2016-08-30 15:04:45 +00:00
301279ea15 BASIC : Remove useless SbxBase::GetCreator
Change-Id: I3d9aa358ffaefc11b7d2427f2b567c360be2c667
Reviewed-on: https://gerrit.libreoffice.org/28434
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
Tested-by: Noel Grandin <noelgrandin@gmail.com>
2016-08-29 06:21:34 +00:00
b8064bdf7f new loplugin: countusersofdefaultparams
Change-Id: I79e2c690f3e664c14af12cf763dd5a8ac20d6b04
Reviewed-on: https://gerrit.libreoffice.org/28353
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-08-25 06:37:42 +00:00
4a647a04a7 Resolves: tdf#88953 byref args incorrectly passed in basic->c++
partial revert

of

commit 22b094f5d8e1e82375b135abd3a6f99a9a555244
Date:   Tue Jul 14 14:50:07 2015 +0200

    loplugin:unusedmethods basic

and partial revert of...

commit e2080e70fe8b085f18e868e46340454720fa94ca
Date:   Wed Jun 18 12:14:29 2014 +0200

    new compilerplugin returnbyref

and revert of...

commit 536051f8862203e0e115a5394a6379acd83cc8fe
Date:   Wed Jul 15 14:04:01 2015 +0200

    fix Windows build

    after commit 22b094f5d8e1e82375b135abd3a6f99a9a555244
    "loplugin:unusedmethods basic"

Change-Id: I612937334fdb75365080c98a9d4da5ed7ae647e3
2016-08-19 16:55:56 +01:00
d5de00cc73 loplugin:unusedenumconstants in basctl..editeng
Change-Id: I49a23a197969d58a3a2d6b2be1fbe4a647c7fa08
2016-08-17 09:43:52 +02:00
93de766121 basic: Simplify SbxArray
Change-Id: Idcc1e35d0a1d80591e2cebdae37a70cf029b022e
Reviewed-on: https://gerrit.libreoffice.org/28147
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
Tested-by: Noel Grandin <noelgrandin@gmail.com>
2016-08-16 06:42:36 +00:00
3093732c17 basic: SbxBase should be abstract
Change-Id: Ief4297e5c64cfb29645463aca3cc677dc06fc95a
Reviewed-on: https://gerrit.libreoffice.org/28112
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-08-15 06:54:11 +00:00
508c95f1b6 improve passstuffbyref return analysis
Change-Id: I4258bcc97273d8bb7a8c4879fac02a427f76e18c
Reviewed-on: https://gerrit.libreoffice.org/27317
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-07-27 06:48:25 +00:00
9b0995439e BASIC : Remove useless 16bits Remove function from SbxArray
Change-Id: I050a034437d3370a28c9e5ab47abee369e634f7d
Reviewed-on: https://gerrit.libreoffice.org/27089
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-07-11 07:28:16 +00:00
0b424c2506 loplugin:passstuffbyref also for {css::uno,rtl}::Reference
Change-Id: I614d91e7e4a686613dc0cbe1b9f4fabb978ffc77
2016-07-07 18:59:55 +02:00
9f0997eb16 Resolves: tdf#59222 Crash in Basic with an array of values...
from a range address

trying to make all SbxVariables reference count their parents
is ludiciously hard, so just reference count this one known
crashing case

Change-Id: Ie1fa6624e8184146dd00d766cdbacef674153ef6
Reviewed-on: https://gerrit.libreoffice.org/26272
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
2016-06-14 19:54:26 +00:00
e8a9eba781 drop these typedef header guard
Change-Id: If52f2bba475e7a8a5b7c63d5114f2725c9ce8617
2016-06-14 10:38:13 +01:00
c0d7dfa56c BASIC : Add SbModule::FindMethod
Change-Id: I3418c4a3d24b3b6630d6c80a6c8aa9d4ffb7e73a
Reviewed-on: https://gerrit.libreoffice.org/24346
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-06-12 07:43:03 +00:00
0216b8dc61 tdf#89329: use unique_ptr for pImpl in sbxvar
Change-Id: I74734c34e72ba5d508830dbcff88f0d3b93a0766
Reviewed-on: https://gerrit.libreoffice.org/25742
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-06-03 10:25:36 +00:00
f3c1d240bd loplugin:constantparams
Change-Id: Ib162ba9297b9d900ea42c7e5216e152d3e58a361
Reviewed-on: https://gerrit.libreoffice.org/25769
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-06-03 09:08:42 +00:00
132f7b2a8c tdf#89329: use unique_ptr for pImpl in basmgr
Change-Id: I2d6c6b997155183b058872db354de1b407998d3a
Reviewed-on: https://gerrit.libreoffice.org/25472
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-05-26 07:46:38 +00:00
f107d45381 Convert SbxClassType to scoped enum
Change-Id: I48afcdd9924d22b52a8db21aa253061e4d38c85b
Reviewed-on: https://gerrit.libreoffice.org/25259
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-05-23 11:49:32 +00:00
2c8fe2e737 update unusedmethods plugin to deal with constructors
and fix the operator< implementations in some of the other
plugins too.

Change-Id: Ie5631e0cdc8d2a994ad2af2533cdb558a6cfc035
Reviewed-on: https://gerrit.libreoffice.org/25057
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-05-18 10:03:44 +00:00
f3d9aab841 teach passstuffbyref plugin to check for..
unnecessarily passing primitives by const ref.

Suggested by Tor Lillqvist

Change-Id: I445e220542969ca3e252581e5953fb01cb2b2be6
Reviewed-on: https://gerrit.libreoffice.org/24672
Reviewed-by: Tor Lillqvist <tml@collabora.com>
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-05-06 06:48:38 +00:00
311bc1fc8b loplugin:passstuffbyref in basic
Change-Id: Ie93b33502325f00ba95ab168a445a347148f9edd
2016-04-13 13:27:51 +02:00
a2f91994df Avoid reserved identifier
Change-Id: I6dfb2961adeb412405c58e0a0b51e130cbd3e0c3
2016-04-11 14:32:29 +02:00
f678b82f0e clang-tidy performance-unnecessary-value-param in basic
Change-Id: I997213ca28efc2df04d454ffaf3c81c9cbad09ac
2016-04-11 11:38:57 +02:00
f3dabe7507 make GetGlobalUNOConstant and GetUNOConstant take an OUString
and eliminate converting backwards and forwards between
sal_Char*/OString/OUString

Change-Id: Iaf52ce93f0e732ab338f75d21b95ab4b020a4d6f
Reviewed-on: https://gerrit.libreoffice.org/23919
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-04-11 06:20:10 +00:00
cc091b0343 loplugin:constantparam in basic
Change-Id: I5b49406535c1ec95e47fe237a23184a499b875e5
2016-03-09 10:07:46 +02:00
bd2bf6bd55 loplugin:unuseddefaultparams in basic
Change-Id: I286efdac6af47a859693fccc71b445915f76945c
2016-03-03 08:11:02 +02:00
a238b1f8d3 Remove excess newlines
A ridiculously fast way of doing this is:

for i in $(pcregrep -l -M -r --include='.*[hc]xx$' \
  --exclude-dir=workdir --exclude-dir=instdir '^
{3,}' .)
do
    perl -0777 -i -pe 's/^
{3,}/

/gm' $i
done

Change-Id: Iebb93eccbee9e4fc5c4380474ba595858a27ac2c
Reviewed-on: https://gerrit.libreoffice.org/22224
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Chris Sherlock <chris.sherlock79@gmail.com>
2016-02-09 08:18:05 +00:00
4c411636d9 sequence->vector in basic
Change-Id: Ic42f7218bda81effe870d950f666ba7653d60c66
Reviewed-on: https://gerrit.libreoffice.org/22177
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
Tested-by: Noel Grandin <noelgrandin@gmail.com>
2016-02-08 12:31:10 +00:00
b14224fe97 loplugin:unusedmethods
using an idea from dtardon:

<dtardon> noelgrandin, hi. could you try to run the unusedmethods clang
plugin with "make build-nocheck"? that would catch functions that are
only used in tests. e.g., i just removed the whole o3tl::range class,
which has not been used in many years, but htere was a test for it...
<noelgrandin> dtardon, interesting idea! Sure, I can do that.

Change-Id: I5653953a426a2186a1e43017212d87ffce520387
Reviewed-on: https://gerrit.libreoffice.org/22041
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
Tested-by: Noel Grandin <noelgrandin@gmail.com>
2016-02-08 06:08:14 +00:00
1ae5ceccb8 BASIC : Remove useless methods in StarBasic
Change-Id: I9e8ce92b967ee9c9485b7af15280f6a212ff599d
Reviewed-on: https://gerrit.libreoffice.org/21498
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-01-16 17:06:26 +00:00
9694a0edfe basic: coverity#1348466 checked return
Kind of unnecessary but let's hope it shuts up coverity.

Change-Id: I4903c9df788ce5fb9648c5fd68627ff21362828f
2016-01-15 13:03:09 +01:00
bbfeab3b13 loplugin:unusedmethods unused return value in include/basic
Change-Id: Ib1a006adaa92e257d40a20ff0d8beeb37e7c2fe0
Reviewed-on: https://gerrit.libreoffice.org/21360
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2016-01-12 06:40:03 +00:00
a5c2328313 BASIC: Store directly SbxVarEntry in SbxArray
Change-Id: I64ae6c2a45e0ed880f5b76ca2ad420d684fdfeb4
Reviewed-on: https://gerrit.libreoffice.org/21308
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
Tested-by: Arnaud Versini <arnaud.versini@libreoffice.org>
2016-01-12 06:06:49 +00:00