When the language settings providers functionality is enabled, also
check for build settings customization, not just the language setting
entries.
Change-Id: Ia9fec3bc377617dc9f2264dd924941879f1b64b0
Signed-off-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/20297
Tested-by: Hudson CI
Reviewed-by: Andrew Gvozdev <angvoz.dev@gmail.com>
IP-Clean: Andrew Gvozdev <angvoz.dev@gmail.com>
Tested-by: Andrew Gvozdev <angvoz.dev@gmail.com>
This extends the QtIndex to support C++ classes that have been annotated
with the Q_GADGET macro. QGadgets are normal C++ classes that are able
to host Q_ENUMs.
The implementation classes for QObject have been modified to share
common parts with the implementation for QGadget. The types are
intentionally not related in the QtIndex API. This allows for divergent
changes in the Qt spec.
This patch includes new tests cases for Q_GADGET.
Change-Id: I59eb745ff5614c2897d67dd7d6807763091120af
Signed-off-by: Andrew Eidsness <eclipse@jfront.com>
Reviewed-on: https://git.eclipse.org/r/20236
Tested-by: Hudson CI
Reviewed-by: Doug Schaefer <dschaefer@qnx.com>
IP-Clean: Doug Schaefer <dschaefer@qnx.com>
This implements a Codan checker for QObject::connect and disconnect
function calls. There are several overloads for each function, but the
basic call looks like:
Q * q;
QObject::connect( q, SIGNAL( sign() ), q, SLOT( slot() ) );
This function calls requires that Q have a Qt signal called sign and a
Qt slot called slot, e.g.,
class Q : public QObject
{
Q_OBJECT
Q_SIGNAL void sign();
Q_SLOT void slot();
};
The Qt checker raises a warning if either condition is not true.
It also raises a warning for SIGNAL or SLOT expansions without a
parameter.
Change-Id: If68a5bcdabb3f118801675e46ae926e6a250378a
Signed-off-by: Andrew Eidsness <eclipse@jfront.com>
Reviewed-on: https://git.eclipse.org/r/20231
Tested-by: Hudson CI
Reviewed-by: Doug Schaefer <dschaefer@qnx.com>
IP-Clean: Doug Schaefer <dschaefer@qnx.com>
The QtASTVisitor is trying to use the QtIndex during indexing. Any
results available at this time are based on the state of the AST the
last time the code was indexed.
This adds a test case to reproduce the problem. The test cases indexes
the project one time. It should find two references to the signal. If
the QtIndex data is stale, then it will find 0 references.
This also replaces the code that looks for QObject::connect function
calls. The proper behaviour is to find all overloads of #connect as
well as references with QObject::disconnect (all overloads) function
calls.
A new test case checks for references in all overloads of #connect and
#disconnect function calls.
Change-Id: I28fc4213d6dddff10f81a6bd3ef01e24c74f31db
Signed-off-by: Andrew Eidsness <eclipse@jfront.com>
Reviewed-on: https://git.eclipse.org/r/20223
Tested-by: Hudson CI
Reviewed-by: Doug Schaefer <dschaefer@qnx.com>
IP-Clean: Doug Schaefer <dschaefer@qnx.com>
The version number of the feature should have been changed when the
plugin versions were changed (in commit c6c1ef9).
Change-Id: Ia6cf07edacd8cf2932b496e09c3d0aab579e9eda
Signed-off-by: Andrew Eidsness <eclipse@jfront.com>
Reviewed-on: https://git.eclipse.org/r/20068
Tested-by: Hudson CI
Reviewed-by: Doug Schaefer <dschaefer@qnx.com>
IP-Clean: Doug Schaefer <dschaefer@qnx.com>
available
Change-Id: Id950622f6ca39639addeedc33e8d1c3fadd611e0
Signed-off-by: Marc Khouzam <marc.khouzam@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/20028
CodanPreferencesLoader.getProjectNode will sometimes return null. This
patch adds null checks before using the result.
Change-Id: If4dd70e6673d5da62cc0b8e899fb5066bdaa4bef
Signed-off-by: Andrew Eidsness <eclipse@jfront.com>
Reviewed-on: https://git.eclipse.org/r/19873
Tested-by: Hudson CI
Reviewed-by: Sergey Prigogin <eclipse.sprigogin@gmail.com>
IP-Clean: Sergey Prigogin <eclipse.sprigogin@gmail.com>
Tested-by: Sergey Prigogin <eclipse.sprigogin@gmail.com>
This adds content assistants for QObject::connect function calls and
Q_PROPERTY expansions.
QObject::connect function calls look like:
QObject::connect(
sender, SIGNAL(someSignalFunction(int),
receiver, SLOT(someSlotFunction(int));
The assistant provides proposals in the SIGNAL and SLOT expansions. The
QObject for the corresponding type is used to create a list of signal or
slot function signatures.
Q_PROPERTY expansions look like:
Q_PROPERTY( type name READ someFunction ... )
[The ... is a list of optional attributes.] The assistant proposes
attribute names that have not yet been added. It also proposals
appropriate values for the attribute.
This patch also adds test cases for this feature.
Change-Id: I0eb25235bb423c1cfcd743075331f90f269afea7
Signed-off-by: Andrew Eidsness <eclipse@jfront.com>
Reviewed-on: https://git.eclipse.org/r/19721
Tested-by: Hudson CI
Reviewed-by: Doug Schaefer <dschaefer@qnx.com>
IP-Clean: Doug Schaefer <dschaefer@qnx.com>