Commit Graph

732 Commits

Author SHA1 Message Date
Kimmo Varis 2356e593e0 GUI: Add menu items for selecting standards.
This commit adds menuitems for selecting standards:
 - C++11
 - C99
 - Posix

Fixes tickets:
 #3203 (GUI: Support std=c99)
 #3202 (GUI: Support std=posix)
2011-12-27 22:12:52 +02:00
Kimmo Varis a057c8f30d GUI: Fix file order in project file. 2011-12-27 21:13:16 +02:00
Daniel Marjamäki 996a109b14 Merge pull request #70 from kimmov/gui-filter-fix
GUI: Fix bug in severity filtering.
2011-12-27 08:10:37 -08:00
Kimmo Varis bb28041758 GUI: Fix bug in severity filtering.
There was (obviously) a copy-paste bug in code converting severities
to GUI's show types. This caused some severities not being
filtered correctly when severity selection in GUI was changed.

Fixes ticket: #3242 (GUI: Unmatched suppression: message in wrong category)
2011-12-27 14:54:03 +02:00
Kimmo Varis f15729bee2 GUI: Disable platform selection during checking.
Fixes ticket: #3250 (GUI: platform type should not be changeable at runtime)
2011-12-27 12:46:21 +02:00
Kimmo Varis 56212aa9ca GUI: Remove empty/space-only items from MRU list. 2011-12-27 11:46:43 +02:00
Marek Zmysłowski 7c4c0b628b Fixed #3216 (GUI: Crash when cancel is clicked in the New Project dialog) 2011-11-25 07:42:16 +01:00
Edoardo Prezioso 9dd3360cd6 Fix some complainted choices made in my older commits.
Note: probably you should do 'make clean' before using 'make' to rebuild it again. Maybe it's me but 'make' reports various errors when linking.
2011-11-01 13:23:47 +01:00
Thomas Jarosch 91a5d95bc9 Use Token::simpleMatch() / Token::findsimplematch() where possible 2011-10-28 22:31:05 +02:00
Daniel Marjamäki 321aadf848 Merge pull request #46 from rpavlik/patch-1
Use forward slashes in resource file to support cross-building.
2011-10-25 11:49:50 -07:00
Ryan Pavlik 53d848da1d Remove 'help' from qmake profile
Supports cross-build using mingw-cross-env
2011-10-24 17:48:54 -05:00
Ryan Pavlik d3ede39d24 Use forward slashes in resource file to support cross-building. 2011-10-24 15:41:21 -05:00
Daniel Marjamäki 4705026242 fixed a few doxygen warnings 2011-10-16 17:16:07 +02:00
Daniel Marjamäki 6f8e42a5af changed the astyle formatting flags 2011-10-13 20:53:06 +02:00
Kimmo Varis 4c24b6a804 GUI: Rename ErrorItem::id to ErrorItem::errorId. 2011-10-12 22:19:08 +03:00
Kimmo Varis 00ae7dbda3 GUI: Move ShowTypes enum to own class and file.
We are using ShowTypes around the GUI codebase so it makes sense
to have it in its own class. And the class also contains related
helper functions instead of scattering them around different
classes.

ShowTypes also contains the visibility settings for all the
GUI severities. Implementation in this commit makes ShowTypes
class to load the visibility settings when it is created. And save
the settings when it is destroyed.
2011-10-11 22:20:36 +03:00
Kimmo Varis 3b82c26a70 GUI: Update translation files. 2011-10-07 20:09:15 +03:00
Kimmo Varis 09df5de964 GUI: Rename default platform to "Build-in".
"default" as platform name/definition doesn't tell much and would
only confuse users. "Build-in" is not perfect either but it is
best I've can come with before the release.

Ticket: #3156 (GUI: "default" platform needs proper name)
2011-10-05 20:06:32 +03:00
Kimmo Varis 2ff7999baf GUI: Fix enabling/disabling visibilities of errors
When GUI was started not all the categories visibility statuses
were not preserved. I.e.

Ticket: #3087 (GUI does not show all reported files until a filter button state is changed)
2011-10-05 19:50:10 +03:00
Kimmo Varis 155eeb8e0a GUI: Fix endless loop in previous commit.
The iterator was not advanced in the loop. So the code worked when
I ran it in Linux as the first item was matching.

Thanks for Robert for spotting and reporting it.
2011-10-03 19:37:26 +03:00
Kimmo Varis dbef9b34b1 GUI: In Windows platforms default to Win32 ANSI.
When running in Windows platforms, set the GUI's checked platform
initially to Windows 32-bit ANSI. Other platforms are set
initially to default/unspecified which means the type sizes are
from the platform GUI was compiled on.

This was suggested by Rober in ticket #3119.
2011-10-02 23:45:11 +03:00
Kimmo Varis 56f6204cf7 GUI: Make platforms in GUI more dynamic.
We have now one list for checked platforms, menu items are created
dynamically based on that list. This makes it much easier to alter
the platforms list later on.
2011-10-02 22:10:05 +03:00
Kimmo Varis 2d483b698f GUI: Add menu-selection for the checked platform.
This is quick and dirty patch to add the platform selection for
the GUI. It is simple menu selection in Check-menu. It always
defaults to "Default" at startup. And it forget the selection
when the application is closed.

Ticket: #3119 (GUI: add ability to specify platform type)
2011-09-29 22:50:49 +03:00
Kimmo Varis 527524a4c9 GUI: Update translation files. 2011-09-26 22:03:47 +03:00
Kimmo Varis 6d8093972d GUI: Make statistics dialog text translatable.
Refactor the code formatting statistics dialog content so that
the strings are easier to translate. Old formatting with embedded
HTML was practically impossible for translators to translate. New
code isn't very beautiful either but at least translating is now
possible.

Ticket: #2726 (GUI: HTML-formatted statistics report text hard to translate)
2011-09-26 21:59:53 +03:00
Kimmo Varis ef6a14dbaf GUI: Rename functions related to excluding. 2011-09-25 20:59:47 +03:00
Kimmo Varis a04d6b82f5 GUITESTS: Rename variable for consistency. 2011-09-25 20:17:06 +03:00
Kimmo Varis 039291d9d4 GUITESTS: Remove include lines from test data.
The included files aren't found anyway so the lines are useless
and can add more variance (filesystem access) to the results.
2011-09-25 19:23:47 +03:00
Kimmo Varis 8b5c1ad8b7 GUITESTS: Add benchmark for tokenize + simplify. 2011-09-18 09:44:27 +03:00
Kimmo Varis bb5e531c7f GUI: Enable performance- and portability checks.
The CLI/LIB change earlier added own enable-flag for performance-
and portability-checks. This commit updates GUI to also enable
those new enable-flags.
2011-09-04 21:45:52 +03:00
unknown 19b7468bb6 GUI: Fix order of project/global include directories.
Per project include directories must be added to the list before
the global include directories. Include directories are searched
in listed order. So placing per project include directories first
we ensure per project include file is found instead of the global
include file if same file exist in both.
2011-08-26 10:34:01 +03:00
Kimmo Varis 047984ea89 GUI: Fix extra menu separator in File-menu.
The extra menu separator was added before the MRU menu items. When
updating the (menu) MRU items existing items were first removed
and new items added back. But the added separator was not removed.
2011-08-24 23:14:28 +03:00
Kimmo Varis 1f4e1e0ffe GUI: Check the project after creation.
Earlier the GUI (project) went into some weird state after creating
a new project. The project could not be checked in any discoverable
way.

This commit fixes the above bug by automatically checking the new
project after the project dialog is closed. I think this is what
most users expect to happen.
2011-08-24 22:41:48 +03:00
Kimmo Varis 2123f6fafc GUI: Update projectfile tests. 2011-08-23 20:44:27 +03:00
Kimmo Varis a3d6b697ad GUI: Update project file documentation. 2011-08-23 20:44:27 +03:00
Kimmo Varis 4998c913da GUI: Rename Ignore-feature to Exclude-feature.
Exclude is the correct term to use when removing paths from the
list of checked items. Ignore as a term was a poor choise to begin
with. XML file reading still recognizes and reads  the 'ignore'
element but writes 'exclude' element.

Ticket: #2995 (GUI: Rename ignore-feature to exclude-feature)
2011-08-23 20:44:04 +03:00
Robert Reif 88b11d889c run astyle 2011-08-22 20:32:35 -04:00
Kimmo Varis b732fc0a3e GUI: Make few strings const strings. 2011-08-22 22:37:38 +03:00
Kimmo Varis 981c28845f GUI: Update translation files. 2011-08-22 22:21:42 +03:00
Kimmo Varis 63e8e9ea57 GUI: Allow reordering includes in project dialog.
Since include dir order is important (Cppcheck uses the first file
it finds) user must be able to edit the order of include paths.
This commit adds "Up" and "Down" buttons to the Project-dialog's
inlude paths-tab. User can use those two buttons to re-order the
include directories.

Ticket: #3037 (GUI: Allow reordering include paths in project dialog)
2011-08-22 22:16:59 +03:00
Kimmo Varis 042693a305 GUI: Rename Project-label in Projects-dialog.
The 'Project' label in Project-dialog is confusing and users think
it is project's name. When it acutually is the root directory of
the project. So rename the lable and move it below the 'Defines'-
field to make it less important looking.

Ticket: #2997 (GUI: 'Project'-field in project file-dialog is confusing)
2011-08-22 21:18:43 +03:00
Kimmo Varis 51102ee076 GUITESTS: Replace benchmark data file.
The benchmark data file had errors when checking with Cppcheck.
And people reported these errors. So replace the file with one
that has no (currently found) errors.
2011-08-12 14:40:14 +03:00
Kimmo Varis 2ef4e6fb59 GUITESTS: Remove the running script.
The script is available in another repository. I don't want to
distribute it with Cppcheck sources for now. Maybe if and when
there is more interest towards GUI tests...
2011-08-12 00:13:29 +03:00
Kimmo Varis c9816c67c5 GUI: Show extraversion in About-dialog.
If the "extra version" is defined (not empty) then it is shown
after the actual version number in the About-dialog.

Ticket: #2164 ([GUI] Add revision info to "About" window)
2011-08-11 18:13:54 +03:00
Kimmo Varis 447c3c28b4 GUI: Update translation files. 2011-08-03 10:58:03 +03:00
Kimmo Varis cff674ccac GUI: Don't translate non-translatable strings.
If strings contain only formatting placeholders for the dynamically
formatted text it does not make sense to mark the strings as
translatable. There is nothing translators can translate e.g. in
"%p".
2011-08-03 10:53:35 +03:00
Zachary Blair d2f4b8e3de Fixed 2915 (GUI: Show files checked in progress bar) 2011-07-27 23:30:45 -07:00
Kimmo Varis b7d110460e GUITESTS: Add simple readme.txt. 2011-07-24 21:45:53 +03:00
Kimmo Varis fe1ba6ae37 GUI: Simplify condition.
With current code we always have both filename and linenumber for
each error.
2011-07-21 20:15:24 +03:00
Kimmo Varis d1d8c24a03 GUI: Don't use relative paths for include files. 2011-07-21 15:13:41 +03:00
Kimmo Varis fea5c629eb GUI: Update translation files. 2011-07-20 13:38:23 +03:00
Kimmo Varis 8676647b03 GUI: Filter toolbar menu items not in synch.
When Filter-toolbar was enabled/disabled from the View-menu its
state was not updated to the context menu. And vice versa.

Ticket: #2923 (GUI: Filter toolbar menu items not synchronized)
2011-07-20 13:35:56 +03:00
Kimmo Varis ee988a0689 GUI: Filter toolbar didn't have a title.
Ticket: #2922 (GUI: Filter toolbar does not have a title)
2011-07-20 13:24:37 +03:00
Kimmo Varis e3cd600e4e GUI: Fix always false condition.
Ticket: #2827 (false negative: gui/resultstree.cpp:271 condition always false)
2011-07-17 15:25:46 +03:00
Kimmo Varis 634db2ab09 GUI: Update translation files. 2011-07-17 15:15:40 +03:00
Kimmo Varis aff8fbc05f GUI: Show error if no default editor configured.
There always should be default editor if there is editor
application configured. But it is possible in some cases that
default application is "lost". So check that we have default
application configured before trying to use it. And inform user
to configure default application instead of silently failing to
open the application (and the file) for the user.
2011-07-17 15:11:24 +03:00
Kimmo Varis 79385f0ff8 GUI: Fix separators when opening file to editor.
Ticket: #2916 (Wrong slashes in file path passed to the Windows-text editors)
2011-07-17 14:22:06 +03:00
Kimmo Varis 387fd35ff3 GUITESTS: Improve the running script.
Don't use recursion in the script. The Python's os.walk() already
lists all files in subdirectories and using recursion only caused
tests to be found twice. Also handle the case the project file
defines binary path with DESTDIR define.
2011-06-23 23:02:49 +03:00
Robert Reif f05ff9b4dc run astyle 2011-06-22 20:30:41 -04:00
Kimmo Varis 88f31403d7 GUITESTS: Run only existing tests with the script.
Improve the runner script to run only tests whose binary file
exists. Tests with inexistant binary file are not counted into
test counts in the summary.

Add the MIT license header. I'm now maintaining this script in
external repository with MIT license. So I can use the script
in other projects too.
2011-06-22 23:58:25 +03:00
Kimmo Varis d5157519a0 BENCHMARKS: Add simple benchmark. 2011-06-22 22:24:49 +03:00
Kimmo Varis ea6f6bb1aa GUITESTS: Print summary from the test script. 2011-06-21 15:38:18 +03:00
Kimmo Varis 0cd8282b2e GUITESTS: Add Python script for running all tests. 2011-06-21 15:38:18 +03:00
Kimmo Varis 6bae7b0f0f GUITESTS: Add FileList filtering tests. 2011-06-18 12:54:48 +03:00
Kimmo Varis 8b70046a42 GUITESTS: Add tests for adding directory. 2011-06-17 14:54:04 +03:00
Kimmo Varis d5652ee3cc GUITESTS: Move testdata to data-subdirectory. 2011-06-17 13:56:32 +03:00
Kimmo Varis 82e8e1a737 GUITESTS: Add simple test for FileList.
These tests check that FileList only accepts existing files with
accepted filename extensions.
2011-06-17 13:46:40 +03:00
Kimmo Varis 5ec241ee0e GUITESTS: Few compares in tests were wrong way around. 2011-06-17 13:18:42 +03:00
Kimmo Varis 3508a79cd6 GUI: Cleanup settings usage.
Use local QSettings instead of the one created by MainWindow.
2011-06-16 16:03:25 +03:00
Kimmo Varis b66b8a31cc GUITESTS: Add tests for loading project files. 2011-06-16 14:24:33 +03:00
Kimmo Varis 08ab764f63 GUITESTS: More flexible test data paths.
Use build-time define to set the path to the source files
directory. Which then can be used to format path to the test
data. This allows running tests from out-of-source-tree -builds
that e.g. QtCreator does.
2011-06-16 13:05:00 +03:00
Kimmo Varis 7ae2536784 GUI: Update translation files. 2011-06-15 11:32:08 +03:00
Kimmo Varis 3d3b818e66 GUI: Add Q_OBJECT to TxtReport class. 2011-06-15 11:28:47 +03:00
Kimmo Varis ebd5a123ce GUITESTS: Fix XML V1 test.
Test was using and assuming that severity string starts with
capital letter (e.g. "Style"). But the strings are all lowercase
letters.

Ticket #2832 (GUI: XML version 1 test fails)
2011-06-10 15:16:44 +03:00
Kimmo Varis 8cff768d99 GUITESTS: Use common build artifact directory.
Using common build artifacts (object files, moc files) avoids
recompiling whole lib and other shared files separately for each
test.
2011-06-10 14:35:02 +03:00
Kimmo Varis 8e18c69ba8 GUITESTS: Run Astyle. 2011-06-10 14:22:52 +03:00
Kimmo Varis 63cf743ba1 GUITESTS: Remove unneeded main file. 2011-06-10 14:15:24 +03:00
Kimmo Varis c51b66d0b1 GUITESTS: Move XML V2 tests to own project. 2011-06-10 14:13:41 +03:00
Kimmo Varis 1337abd9fe GUITESTS: Move XML format V1 tests to own project. 2011-06-10 14:01:08 +03:00
Kimmo Varis 85aed65e80 GUITESTS: Fix XML files paths. 2011-06-10 13:20:17 +03:00
Kimmo Varis edbb66cb20 GUITESTS: Refactoring XmlReport test. 2011-06-10 13:20:17 +03:00
Kimmo Varis eb648eb3f7 GUITESTS: Fix translation count in test. 2011-06-10 13:20:17 +03:00
Kimmo Varis 6820fc6933 GUITESTS: Refactoring test building.
Start building each test as separate project as QtestLib tests
usually are built. This commit adds the infrastructure and moves
TranslationHandler test as own project.
2011-06-10 13:19:46 +03:00
Kimmo Varis 24061e536b GUI: Give full path when opening project file.
Fix I did yesterday gave only filename of the project file for
function loading project file. Causing the loading failing if
not in "current" directory.
2011-06-08 10:40:17 +03:00
Kimmo Varis f12b27f360 GUI: More strict filtering for finding project file. 2011-06-07 23:56:48 +03:00
Kimmo Varis 8bfbf82bdc GUI: Suggest using project file if one is found.
If we there is project file in the directory to check then ask
user if one wants to use the project file instead. If there are
multiple project files then just tell there are project files
and ask if user wants to continue without using them.

Ticket: #2816 (GUI regression: Interrupted checking because of too many #ifdef configurations.)
2011-06-07 16:12:21 +03:00
Kimmo Varis faa1354445 GUI: Handle missing checked paths in project file.
If the project file does not define paths to check then check the
project root directory (which likely is the directory where the
project file is located).

Ticket #2816 (GUI regression: Interrupted checking because of too many #ifdef configurations.)
2011-06-07 14:29:59 +03:00
Robert Reif 5a27552669 make usre we have a project file before outputting its name 2011-06-06 18:30:44 -04:00
Robert Reif 6a7e4c838f Output GUI project name when checking starts or restarts 2011-06-04 08:38:51 -04:00
Daniel Marjamäki c971fa0d4b cmake: cleanup unmaintained cmake files 2011-05-19 17:16:04 +02:00
Kimmo Varis 056476d28a GUI: Simplify settings usage in Log window. 2011-05-13 10:38:54 +03:00
Kimmo Varis 1002d2e785 GUI: Simplify settings handling in Preferences dialog. 2011-05-13 10:25:52 +03:00
Kimmo Varis 214a94e1b7 GUI: Make Project-dialog to remember its size. 2011-05-13 10:12:19 +03:00
Kimmo Varis 010403699a GUI: Initialize Settings in main.
Setting organization and program name in main() allows us to
cleanup Settings class usage. As we don't need to keep using the
one instance of Settings but can create new Settings class
whenever we need to access settings. According to the Qt
documentation creating Settings class is fast.
2011-05-13 10:09:17 +03:00
Kimmo Varis 31e85f4097 GUI: Show main tab in project file dialog by default. 2011-05-13 09:28:00 +03:00
Kimmo Varis 3dc87be0af GUI: Set initial path for adding paths to project.
Use project file's location as base path when adding new paths
(checked, included or ignored) to the project. In most cases user
wants to add paths in the same project so this reduces browsing
paths considerably when adding them.
2011-05-13 09:23:43 +03:00
Kimmo Varis 0b0d890bd2 GUI: Remove trailing spaces from translated strings 2011-05-12 21:15:10 +03:00
Kimmo Varis fe4086f118 GUI: Update project file documentation.
Remove mentioning of automatic loading which was disabled in
previous commit.
2011-05-12 14:09:51 +03:00
Kimmo Varis a7b06d9b7e GUI: Remove automatic/silent loading of projects.
When project files support was added to the GUI there was no GUI
for them and automatic/silent loading was added. So that if the
directory contained project file with the same name (and .cppcheck
extension) then the project file was automatically loaded and used
for the checking.

This can be very confusing for the user as there is no any
indication that the project file is used. But this solution was
necessary at that time to get project file support added.

Now that we have usable GUI for the project files this automatic/
silent loading can be removed. Nobody really should be using it
anymore. And even if the automatic loading is needed one can give
the project file for the GUI using command line parameter.
2011-05-12 13:53:59 +03:00
Kimmo Varis 13b307878a GUI: Fix the gui.cppcheck to work with GUI.
The project file to check just GUI code was missing the directory
to check. This is probably due it was used originally as
"automatically" loaded project file which assumed current
directory is checked and only added some additional parameters.
2011-05-12 13:40:56 +03:00