141 Commits

Author SHA1 Message Date
Nick Treleaven
ff0fde30cb Use enum for Messages list store IDs 2014-08-19 15:40:02 +01:00
Matthew Brush
4efcbab332 Include what you use
This is a mega-commit - because most of it had to be done in one go
otherwise some commits would fail to compile - that attempts to fix a
few problems with Geany's includes as well as various other related
cleanups. After this change it's easier to use includes and there's
little worry about which order things are included in or who includes
what.

Overview of changes:

* Include config.h at the start of each source file if HAVE_CONFIG_H
  is defined (and never in headers).
* Go through each source file and make the includes section generally
  like this:
  - Always config.h first as above
  - Then if the file has a header with the same name, include that
  - Then include in alphabetical order each other internal/geany header.
  - Then include standard headers
  - Then include non-standard system headers
  - Then include GLib/GTK+ related stuff
* Doing as above makes it easier to find implicit header include
  dependencies and it exposed quite a few weird problems with includes
  or forward declarations, fix those.
* Make geany.h contain not much besides some defines.
  - Add a little header file "app.h" for GeanyApp and move it there
  - Move "app" global to new "app.h" file
  - Move "ignore_callback" global to "callbacks.h"
  - Move "geany_object" global to "geanyobject.h"
* Add an include in "geany.h" for "app.h" since GeanyApp used to be
  defined there and some plugins included this header to access
  GeanyApp.
* Include "gtkcompat.h" everywhere instead of gtk/gtk.h so that
  everywhere sees the same definitions (not a problem in practice AFAIK
  so this could be changed back if better that way.
* Remove forward declarations from previous commits as some people
  apparently consider this bad style, despite that it reduces inter-
  header dependencies.

TODO:
* As always, to test on win32
* As always, to test with not Autotools
* Test plugins better, both builtin and geany-plugins, likely API/ABI bump
* Test with various defines/flags that may change what is included
* win32.[ch] not really touched since I couldn't test
2014-05-21 15:37:19 -07:00
Nick Treleaven
0998f1c19c Make code more readable by renaming poorly named macros NZV and NVL
Closes #159
2013-08-14 21:54:20 -07:00
Colomban Wendling
d80bc7ce56 Update FSF address
Closes #3557875.
2012-08-24 19:25:57 +02:00
Matthew Brush
e62bec43fc Use g_build_filename() instead of g_strconcat() for paths 2012-08-09 18:21:43 -07:00
Colomban Wendling
1c2c455b1d Update copyright information 2012-06-18 01:15:04 +02:00
Nick Treleaven
b287553e4a Use 'SETPTR' instead of 'setptr'
This makes it clearer we're using a macro.
2012-01-25 16:26:16 +00:00
Colomban Wendling
36ebb1f2b7 Use canonical macros for stock items rather than plain strings
This makes the code more readable, potentially more future-proof (if
the actual string changes) and better style (catches possible typos at
build-time).
2011-10-30 22:01:49 +01:00
Enrico Tröger
90cf307265 Adjust error line parsing for newer Python versions
The format of the error message output of the py_compile module has changed in
Python 2.6. The code now tries to detect the format and parse it accordingly.
2011-10-18 23:53:44 +02:00
Matthew Brush
bd5fba7eb5 Remove extra whitespace at end of lines in all source files.
* Processed with rstrip-whitespace.py script added to scripts/ directory.
* Script run on all .c and .h files in src/ and plugins/ directories.
* Also remove more than one newline at the end of files.
2011-10-11 21:52:58 -07:00
Colomban Wendling
d06e9f4575 Remove $Id$ and $Date$ SVN keywords 2011-10-09 22:57:35 +02:00
Colomban Wendling
24583dc507 Focus the editor upon double click on the message and compiler windows
Also improve the code a bit by using a boolean to know whether to focus
the editor rather than always pass the key value and check it against
enter-or-return in the callee side.

Patch by Dimitar Zhekov, thanks!

git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5887 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-08-13 20:44:39 +00:00
Colomban Wendling
ddb4ad5fa5 Fix some whitespace style errors
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5886 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-08-06 18:34:14 +00:00
Colomban Wendling
b2142af11f Open the file in the msgwindow even if no line number is specified
Plugins may need to open a file from the message window without
specifying the line number, so allow messages of the form:

file[:line[...]]

For instance, all the following are now correctly parsed and the
corresponding file is opened:

/path/to/file
/path/to/file:line
/path/to/file: something not a line
/path/to/file:line: something
/path/to/file:line something

etc.

git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5754 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-04-30 21:50:50 +00:00
Enrico Tröger
6ac2623208 Update copyright information.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5528 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-01-19 19:39:09 +00:00
Nick Treleaven
98e6efb3b4 Add msgwin_set_messages_dir() to API (patch by Jiří Techet, thanks).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5237 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-09-16 15:31:23 +00:00
Nick Treleaven
7e8c863298 Add GeanyMainWidgets::message_window_notebook for plugins to append
a new notebook page (#3061342).



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5204 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-09-08 12:36:01 +00:00
Nick Treleaven
56b844a509 Parse lines in the Messages window even if Find in Files hasn't
been used yet (patch by Jiří Techet, thanks).



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5084 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-07-02 12:43:39 +00:00
Enrico Tröger
ff428d0a40 Try to convert text into UTF-8 before adding it to the Compiler and Messages Window (closes #3007919).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@4959 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-05-29 18:36:17 +00:00
Enrico Tröger
d2f7a26bd9 Fix duplicate accelerators for Clear and Copy in the Messages Window popup menu.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@4947 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-05-23 07:52:45 +00:00
Enrico Tröger
f8040a0e89 Add hidden preference to disable automatic scrolling in the Compiler tab (closes #3004714).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@4946 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-05-22 19:40:12 +00:00
Enrico Tröger
2f63860908 Replace g_vsnprintf() by g_strdup_vprintf() to avoid truncated strings in case of reaching the buffer size limit (part of #2979697).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@4855 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-04-25 17:42:01 +00:00
Enrico Tröger
17553f0ee6 Fix disabled compiler message tracking if using indicators to show build errors is disabled (closes #2982834).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@4808 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-04-07 21:09:56 +00:00
Nick Treleaven
a190e1bfb7 Use 3rd person for more API dox.
Change 'This is a wrapper function for...' to 'Wraps...' in brief
descriptions.
Change 'After all...' to 'Afterwards...'.



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@4760 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-03-15 13:01:16 +00:00
Enrico Tröger
f72f6381df Add and use convenience function ui_is_keyval_enter_or_return() and add it to the plugin API.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@4737 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-03-07 19:33:15 +00:00
Enrico Tröger
6afacd50b9 Make Space on the compiler and messages widgets not focus the editor widget while Enter does (patch by Can Koy, thanks).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@4713 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-02-28 14:57:06 +00:00
Enrico Tröger
7ba4a81181 Update copyright information.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@4518 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-01-01 22:55:18 +00:00
Enrico Tröger
6fdf1cdfb2 Add preferences for hiding single tabs from the messages window (no GUI preferences yet, still to be implemented).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@4500 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-12-20 20:07:52 +00:00
Enrico Tröger
93f66de4e2 Add MessageWindow::scribble and use it instead of searching the widget pointer everytime.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@4499 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-12-20 20:07:04 +00:00
Nick Treleaven
b4572b878e Refactor msgwin_goto_compiler_file_line().
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@4489 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-12-09 16:57:05 +00:00
Nick Treleaven
450a98934b When going to a build error, try the current document's path if
the parsed filename doesn't exist. (This can happen when we receive
build messages in the wrong order - after the 'Leaving directory'
messages).



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@4488 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-12-09 13:28:37 +00:00
Nick Treleaven
1986d915cc Run ./scripts/fix-alignment.pl -w src/*.[hc] plugins/*.[hc] (skipping generated files).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@4199 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-09-16 14:13:38 +00:00
Lex Trotman
28d96a3909 Merge with trunk
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/branches/build-system@4020 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-07-24 00:59:12 +00:00
Enrico Tröger
39a74c5a18 Continue unifying usage of @a and @c markup elements in API docs.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@4010 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-07-21 22:12:13 +00:00
Lex Trotman
1726e57092 Configurable Build Menu Alpha
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/branches/build-system@3941 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-07-09 06:49:42 +00:00
Enrico Tröger
a95a59a42f Remove all G_LIKELY macros inside g_return_if_fail() statements as this is redundant.
Remove many other G_LIKELY/G_UNLIKELY macros which doesn't make much sense to keep the code more readable.

git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3708 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-04-15 22:47:33 +00:00
Enrico Tröger
a9dc990049 Start using G_LIKELY/G_UNLIKELY macros to gain a little more performance when building the code with gcc.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3687 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-04-05 21:07:40 +00:00
Enrico Tröger
08b0712fcc When hiding the messages window, set the input focus back to the editor widget (part of #1910393).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3676 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-03-31 19:01:31 +00:00
Enrico Tröger
f63a63a008 Fix missing NULL checks when reading the colour value of compiler output messages.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3595 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-02-24 18:25:57 +00:00
Enrico Tröger
8735f3b47e Don't use a hard coded black foreground colour for the compiler and messages windows, instead use the default GTK foreground colour.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3574 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-02-13 18:12:49 +00:00
Enrico Tröger
c5dc11dc6f Really focus the status/compiler/messages window when the corresponding keybinding is used.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3569 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-02-08 20:35:57 +00:00
Enrico Tröger
334e7092ea Allow pressing Space/Enter in the compiler and messages treeviews to activate the selected item (closes #2555704).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3551 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-02-05 19:14:17 +00:00
Enrico Tröger
b2eeefc919 Add some missing @since tags to the API documentation of various functions.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3531 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-01-30 18:53:23 +00:00
Enrico Tröger
27205da2c6 Properly fix parsing of compiler error messages.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3477 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-01-17 13:10:46 +00:00
Enrico Tröger
312841a794 Strip the compiler error messages to fix possibly broken message parsing.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3466 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-01-14 16:45:24 +00:00
Enrico Tröger
39a6eb455e Update copyright information.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3446 ea778897-0a13-0410-b9d1-a72fbfd435f5
2009-01-04 18:30:42 +00:00
Enrico Tröger
9e25c43487 Move implementation of lookup_widget() into ui_lookup_widget().
Change uses of lookup_widget() to ui_lookup_widget().
Remove now unneeded support.c.
Use GLib gettext macros in support.h instead of own ones.

git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3402 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-12-18 21:21:53 +00:00
Enrico Tröger
c87a31878e Make use of ui_widget_modify_font_from_string() at various places.
Set the message window font also for the scribble.

git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3335 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-12-06 18:04:46 +00:00
Nick Treleaven
921f010ffc Rename msgwin_compiler_add -> msgwin_compiler_add_string.
Rename msgwin_msg_add -> msgwin_msg_add_string.
Rename msgwin_compiler_add_fmt -> msgwin_compiler_add.
Rename msgwin_msg_add_fmt -> msgwin_msg_add.
This fixes 2 geanyfunctions.h macros, and is more consistent with
msgwin_status_add().



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3326 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-12-05 17:30:06 +00:00
Enrico Tröger
18095fca79 Note: this breaks the plugin API for Editor and Scintilla functions.
Rename all functions in editor.c and sciwrappers.c which are related to indicators for more consistency.

git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3238 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-11-16 17:54:28 +00:00