- changed gcc builtin settings providers to prefer non-shared
- added isIndexerAffected method override to ToolSettingsTab which
looks at new isIndexerAffected boolean
- add logic to ToolSettingsTab setOptions() method to look for
dirty options that return true for isForScannerDiscovery() or
are special options that affect include path or defines
- add performok method to ToolSettingsTab to look if isIndexerAffected
when user hits OK without hitting APPLY
- change the message for bringing up the question dialog for end-user
to choose whether to reindex or not
Change-Id: Icd740caafe638f272b6f1434d5817f2377ffe04a
ChangeLog is an archaic format for identifying what has changed in a
project. Fortunately more powerful version control systems are capable
of generating this information and displaying information such as this
paragraph in order to determine what has changed in a project and when.
Change-Id: Ia71a05fa51869c1adb193d94f71c28b3b36beb37
Signed-off-by: Alex Blewitt <alex.blewitt@gmail.com>
Eclipse warns if a String literal does not have a `//$NON-NLS-<n>$`
entry at the end of the line. However, for historic or formatting
reasons, many such occurrences in the CDT source have an intermediate
whitespace, such as `// $NON-NLS-<n>$`
Fix these so that the whitespace is removed between the // and $
characters.
Change-Id: Idc12398fe6e9d619af1d0b1b73fb8b6180da223c
Signed-off-by: Alex Blewitt <alex.blewitt@gmail.com>
When using a `StringBuilder` or `StringBuffer` to create a string message,
using implicit string concatenation inside an `.append()` call will
create a nested StringBuilder for the purposes of creating the arguments,
which will subsequently be converted to a String and then passed to
the outer StringBuilder.
Skip the creation of the intermediate object and String by simply
replacing such calls with `buffer.append(a).append(b)`.
Where values are compile time String constants, leave as is so
that the javac compiler can perform compile-time String concatenation.
Ensure that NEWLINE isn't appended in such a way since it is not
a compile time constant `System.getProperty("line.separator")`
Change-Id: I4126aefb2272f06b08332e004d7ea76b6f02cdba
Signed-off-by: Alex Blewitt <alex.blewitt@gmail.com>
There are many opportunities for replacing `StringBuffer` with
`StringBuilder` provided that the type isn't visible from the
public API and is used only in internal methods. Replace these
where appropriate.
Change-Id: I769ceb6eaee18d183fb0e00fa0d730651f8a7edb
Signed-off-by: Alex Blewitt <alex.blewitt@gmail.com>
In many cases a String's empty status is tested with `.equals("")`.
However, Java 1.6 added `.isEmpty()` which can be more efficient since
it compares the internal length parameter only for testing. Replace
code using the `.isEmpty()` variant instead.
Some tests for `"".equals(expr)` can be replaced with `expr.isEmpty()`
where it is already known that the `expr` is not null; however,
these have to be reviewed on a case-by-case basis.
Change-Id: I3c6af4d8b7638e757435914ac76cb3a67899a5fd
Signed-off-by: Alex Blewitt <alex.blewitt@gmail.com>
Replace all occurrences of `new String(expr)` with `expr` provided that the
`expr` is not a byte array or a char array.
Change-Id: Iecae801b83084908b60b9e146eba87550eac640d
Signed-off-by: Alex Blewitt <alex.blewitt@gmail.com>
Occurrences of `new String("...")` have been replaced with a direct reference
to the literal it was wrapping.
Change-Id: Iefb49a009f210db59e5724e0a232dba2e13292b1
Signed-off-by: Alex Blewitt <alex.blewitt@gmail.com>
Occurrences of `new String()` have been replaced with the equivalent `""` and
additional NON-NLS tags have been inserted in where appropriate.
Change-Id: I54cf71dcd0d5a92a675a71166d66949533de502b
Signed-off-by: Alex Blewitt <alex.blewitt@gmail.com>
Using `new Integer` and other wrapper types such as `new Character` results in
potential extra heap utilisation as the values are not cached. The built-in
`Integer.valueOf` will perform caching on numbers in the range -128..127 (at
least) using a flyweight pattern. In addition, parsing `int` values can be done
with `Integer.parseInt` which avoids object construction.
Adjust tests such as `"true".equals(expr)` to `Boolean.parseBoolean(expr)`.
Change-Id: I0408a5c69afc4ca6ede71acaf6cc4abd67538006
Signed-off-by: Alex Blewitt <alex.blewitt@gmail.com>
of a tool and implement the new interface method.
Change-Id: Iee645519c1bf9fbe144021bc81bd6cf7434c3e4b
Signed-off-by: Guy Bonneau <guy.bonneau@videotron.ca>
This patch modifies the wizard so that the C projects also show in the
list of projects.
- If a given C project is selected and the C nature is selected, the
project is not modified.
- If a given C project is selected and the C++ nature is selected, the
C++ nature is added and project type and toolchain selection have no
effect because it is assumed that the project type and toolchain had
already been setup before hand.
- Old-style projects (CDT 3.0) are not converted anymore.
Unchanged behavior:
- C++ projects never show in the list of projects. Removing nature is
(still) unsupported.
- Non-CDT project behave as they use to.
Change-Id: Ie6282c11d90c42d21ecad2996ab49ebd64c38ece
Signed-off-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
This code is not used and hasn't been touched since 2012.
Now it can be referred as the "old new new wizard".
Change-Id: Iccc60651a8233a5ef5b138dfcc334cfcf926d109
Signed-off-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
With this preference off, the new project wizard is a mess. We need
to have categories at the top level, especially as the number of
categories grow. This also fixes an issue with the Autotools which
tried to go into the Others category, but made a bit of a mess and
doesn't really need to be there anyway.
Change-Id: Idc67096756caa77087acabacb18ada41a43202b4
Reviewed-on: https://git.eclipse.org/r/25375
Tested-by: Hudson CI
Reviewed-by: Doug Schaefer <dschaefer@qnx.com>
The area covered by CDT prefs pages has been always quite huge. Often,
the scroll bar of the virtual composite has to be displayed although the
components could display all the required information readily in a
smaller box. This is an attempt to reduce some of the fixed space
requirements. The solution is not ideal, but the layout framework of SWT
(no notation of minimum size) and the way how sizes are computed in
prefs page by jface doesn't allow a more sophisticated solution at this
time.
Change-Id: I5f9aa36d0d37b93852a39d636719be801a2c1360
Reviewed-on: https://git.eclipse.org/r/11299
Reviewed-by: Sergey Prigogin <eclipse.sprigogin@gmail.com>
IP-Clean: Sergey Prigogin <eclipse.sprigogin@gmail.com>
Tested-by: Sergey Prigogin <eclipse.sprigogin@gmail.com>
directory should be disallowed
Change-Id: I75090498bd4f408d77ad17491f50f4fd66850c97
Reviewed-on: https://git.eclipse.org/r/10404
Reviewed-by: Jesse Weinstein <Jesse.Weinstein@clinicomp.com>
Reviewed-by: Jeff Johnston <jjohnstn@redhat.com>
IP-Clean: Jeff Johnston <jjohnstn@redhat.com>
Tested-by: Jeff Johnston <jjohnstn@redhat.com>