101 Commits

Author SHA1 Message Date
Nick Treleaven
5a12103f0a Apply patch (with minor formatting fixes) from Conrad Steenberg
(gnocci-man) to show methods as children of classes in the symbol
list, and for other tag types to group children by their parents
(thanks; 2083110).


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/branches/symbol-tree@3034 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-10-02 12:06:20 +00:00
Nick Treleaven
46cae47182 Use GeanyDocumentPrivate instead of using inheritance for non-public
fields (this was unnecessary and meant using ugly casts).


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3010 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-09-26 17:28:50 +00:00
Nick Treleaven
6f60b4bc2c Add 'Max. symbol name suggestions' autocompletion pref.
Edit some autocompletion pref strings.
Remove some trailing commas in array initializers (oops).
Move GEANY_TOGGLE_MARK, GEANY_MAX_AUTOCOMPLETE_WORDS to keyfile.c.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2914 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-08-29 17:00:02 +00:00
Nick Treleaven
83c756f7b5 Fix global tags loaded debug message, display total tags count.
Add comment to warn about adding tags files vs. downloading
separately.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2911 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-08-28 16:59:20 +00:00
Nick Treleaven
6ce421f141 Add OpenGL Shader Language (GLSL) filetype (patch from Colomban
Wendling, thanks; closes #2060961).


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2908 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-08-27 12:44:54 +00:00
Nick Treleaven
000e8fcc9b Merge the editor-struct branch:
Note: this breaks the plugin API for editor-related document fields
and functions.
Split new GeanyEditor struct type from GeanyDocument fields sci,
line_wrapping, auto_indent, scroll_percent, use_tabs, line_breaking.
GeanyEditor::document allows access back to document fields.
Add GeanyDocument::editor field; this is only valid when the
document is valid, and NULL otherwise. This means any checks for
doc->editor->scintilla != NULL will segfault for invalid
documents - check against doc->is_valid or doc->editor != NULL
instead.
Change plugin API EditorFuncs to use GeanyEditor pointers.
Make editor_set_font() take a pango-style font string, and use a
GeanyEditor pointer.
Use GeanyEditor* instead of GeanyDocument* in editor.c (most global
editor functions still need conversion though, but this may be done
gradually or as required).
Move utils_get_current_function() to symbols.c.
Move utils_replace_filename() to document.c.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2779 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-07-15 14:29:41 +00:00
Enrico Tröger
ed016dc093 Split filetype Fortran into Fortran 77 and Fortran 90.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2777 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-07-14 18:27:20 +00:00
Nick Treleaven
7db4bfe493 Rename GeanyEditor::scintilla to GeanyEditor::sci.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/branches/editor-struct@2776 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-07-14 11:13:54 +00:00
Nick Treleaven
4837030ca1 Fix compilation.
Move utils_get_current_function() to symbols.c.
Move utils_replace_filename() to document.c.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/branches/editor-struct@2766 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-07-08 16:30:37 +00:00
Enrico Tröger
6c3fe9b2cf Load "ignore_tags" file before generating global tags file.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2745 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-07-03 13:46:01 +00:00
Enrico Tröger
d03f72122a Get rid of GeanyDocument::is_valid, use the index value instead.
Remove DOC_IDX_* macros.

git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/branches/document-pointer@2693 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-06-15 15:24:44 +00:00
Enrico Tröger
d3439f8a17 Use document pointer instead of an index to the documents array everywhere in the core code.
Pass a document pointer to the callbacks of all "document-*" signals.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/branches/document-pointer@2692 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-06-15 13:35:48 +00:00
Enrico Tröger
1baa9d3159 Remove temporary navqueues_ and msgwins_ functions and adjust depending code.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/branches/document-pointer@2689 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-06-12 20:45:18 +00:00
Nick Treleaven
98550fa246 Note: this breaks the plugin API for document functions.
Make all DocumentFuncs use a GeanyDocument* instead of an integer
index, so there's no need to access the documents array or (in most
cases) use DOC_IDX_VALID() - just check for non-NULL.
Add GeanyDocument::index field for use with the documents array.
Add DOC_IDX() macro to get the document index from a possibly NULL
pointer.
Note: the new functions in the core have a documents_ prefix where
they would conflict with the old names, which are still present and
used in the core (but will be removed soon).
Remove DocumentFuncs::get_cur_idx() - use get_current() instead.
Replace DocumentFuncs::get_n_idx() with get_from_page().
Rename DocumentFuncs::find_by_realpath() to find_by_real_path().
Replace DocumentFuncs::remove() with remove_page().
Add 'changed' argument for DocumentFuncs::set_text_changed().
Add dox for document_set_filetype().
Rename debugging function doc() doc_at() to avoid conflicts.
Rename document_find_by_realpath() in the core also.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/branches/document-pointer@2687 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-06-12 16:50:01 +00:00
Enrico Tröger
f36ff8ce07 Add create_py_tags.py to create a global tags file for Python (thanks to Dominic Hopf).
Add generated Python tags file (Python 2.5).

git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2677 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-06-10 16:39:17 +00:00
Nick Treleaven
50b0a10654 Note: this breaks the plugin API for plugins using
document_find_by_filename().
Make document_find_by_filename() take only a utf8_filename argument,
and now match any documents that have a filename set but aren't saved
on disk.
Add document_find_by_realpath() to the plugin API.
Add filename argument for document_save_file_as().
Add GeanyDocument::real_path field, which if non-NULL indicates the
file once existed on disk (not just as an unsaved document filename).


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2637 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-06-03 17:22:04 +00:00
Nick Treleaven
37e0d1f3f1 Move GeanyDocument GUI elements and saved_encoding to private
Document struct which inherits from GeanyDocument. This is to hide
implementation fields from the plugin API, so that we can change
them if necessary.
Add DOCUMENT() macro to convert a GeanyDocument* to a Document*.
Also move UNDO_*, FileEncoding to documentprivate.h.
Move undo_action struct to document.c.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2631 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-06-02 15:31:59 +00:00
Nick Treleaven
be0d9e8ea7 Note: this breaks the plugin API.
Replace doc_array with documents_array, a pointer array. This is
necessary to avoid breaking the ABI every time a field is added to
GeanyDocument.
Remove deprecated pluginmacros.h documents macro, to avoid a
conflict.
Replace doc_list[] macro with documents[] macro, which returns a
GeanyDocument pointer.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2624 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-05-29 17:00:54 +00:00
Nick Treleaven
398efbd373 Note: this commit breaks the plugin API.
Split widget fields out of GeanyApp into GeanyMainWidgets, so other
data items can be added without breaking the plugin ABI.
Add GeanyData::main_widgets, and macro.
Rename treeview_notebook sidebar_notebook in GeanyMainWidgets.
Move tools_menu from GeanyData to GeanyMainWidgets.
Move statusbar out of GeanyApp (shouldn't be used directly).
Move ignore_callback out of GeanyApp.
Rename sci_goto_line() argument unfold, like sci_goto_pos().
Make utils_goto_file_pos(), utils_goto_line(),
utils_switch_document() into static functions (they are UI-related,
so shouldn't be in utils.c).
Move utils_goto_pos() to editor.c, add mark argument.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2609 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-05-22 14:41:28 +00:00
Enrico Tröger
311b82ebb2 Rename document struct to GeanyDocument.
Rename filetype struct to GeanyFiletype.

git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2594 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-05-16 14:17:54 +00:00
Enrico Tröger
9449f5a0d9 Clear a document's symbol list first after it was detached from its container to prevent crashes when saving files with collapsed symbol list items.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2574 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-05-12 13:46:19 +00:00
Nick Treleaven
00c722966c Rename GEANY_FILETYPES_ALL GEANY_FILETYPES_NONE.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/branches/custom-filetypes@2556 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-05-07 13:54:21 +00:00
Nick Treleaven
a832015fff Move non-general compile-time constants into their relevant source
files.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2519 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-04-23 16:47:42 +00:00
Enrico Tröger
2b1addad57 Fix possible crash by an uninitialized variable.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2458 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-04-08 15:21:54 +00:00
Nick Treleaven
865308c5d6 Add note about possibly using bsearch in symbols_find_tm_tag().
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2419 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-03-27 13:18:15 +00:00
Nick Treleaven
3e98f6337c Fix memory leaks when using tm_tags_extract().
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2399 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-03-24 17:24:39 +00:00
Nick Treleaven
bdf2a271f4 Reuse find_work_object_tag() in find_workspace_tag().
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2398 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-03-24 17:02:50 +00:00
Nick Treleaven
2431e450a0 Make Go to Tag commands look for the tag in the current document
before searching the workspace.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2397 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-03-24 16:44:43 +00:00
Enrico Tröger
945a41548f Update Makefile parser from CTags SVN and improve it to detect targets in Makefiles.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2388 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-03-23 15:25:42 +00:00
Enrico Tröger
30528921d3 Update TCL parser from CTags SVN which adds new symbol types for
classes and methods (closes #1918748).

git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2380 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-03-21 16:47:17 +00:00
Nick Treleaven
e740d9208a Fix bug with showing macro list items all on one line.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2369 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-03-20 15:48:03 +00:00
Enrico Tröger
1c04310ac1 Save sorting order of the symbol list when saving a file (#1917262).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2361 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-03-18 16:09:11 +00:00
Enrico Tröger
c0990b5e71 Add HTML parser to get h1, h2, h3 symbols as well as link anchors and JavaScript functions (closes #1896068).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2317 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-03-09 18:50:41 +00:00
Enrico Tröger
9dd67b2669 Backport js.c and asm.c from CTags SVN.
Fix Assembler tagmanager support and add appropriate symbol types.
Fix JavaScript parse bug (#1895242).
Change default return value of lookupKeyword() in keyword.c as it was done in CTags SVN(r339) and adjust affected parsers.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2308 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-03-05 18:18:19 +00:00
Enrico Tröger
b7f834dbc0 Apply patch from Yura Siamashka to use she-bang filetype detection also in filetypes_detect_from_filename() which let plugins benefit from this feature.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2306 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-03-05 17:09:57 +00:00
Enrico Tröger
463879872c Adjust available symbol types between Fortran parser and symbols.c to make some more of the possbile symbol types available.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2304 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-03-03 20:16:52 +00:00
Enrico Tröger
b7bfb2743a Replace all C++-style comments with usual C-like multi-line comments.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2287 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-02-27 13:17:29 +00:00
Nick Treleaven
0684899905 Load ignore.tags even when global tags loading is disabled on the
command-line, so that local tags in each open file can be ignored.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2286 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-02-26 17:11:49 +00:00
Enrico Tröger
bcfd7746e1 Define c_tags_ignore in options.c (tagmanager) instead of symbols.c.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2276 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-02-24 10:18:36 +00:00
Enrico Tröger
85f73129c0 Apply patch from Daniel Richard G. to fix to fix several compiler warnings, C89 violations and minor code problems (thanks).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2267 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-02-20 11:24:23 +00:00
Enrico Tröger
e685ab8fa5 Add support for reading tags(only for C/C++) from a file which should be ignored while parsing the file (ctags command line option -I).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2266 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-02-18 19:51:34 +00:00
Enrico Tröger
9a2be912fc Apply patch from Yura Siamashka to fix wrong navigation queue items (thanks).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2241 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-02-10 12:34:28 +00:00
Enrico Tröger
e3201062c6 Update copyright information and change format of email addresses in source files.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2150 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-01-06 18:11:57 +00:00
Enrico Tröger
697195c4fe Patch by Yura Siamashka:
Add project type field.
Go to tag definition/declaration will open the file with the tag if it isn't already open.
Add some utils and tagmanager functions to the plugin API.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2145 ea778897-0a13-0410-b9d1-a72fbfd435f5
2008-01-02 21:20:33 +00:00
Enrico Tröger
3fef2dcc58 Prefix autotools macros with GEANY to avoid problems with already defined symbols on Windows.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2117 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-12-19 15:37:10 +00:00
Enrico Tröger
fc6c31a242 Add binary relocation support.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2100 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-12-12 20:04:45 +00:00
Nick Treleaven
ee029a2bf9 Fix broken generate tags command.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2080 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-11-30 18:01:43 +00:00
Enrico Tröger
e2112fac0c Use Ruby parser from CTags SVN and add/fix symbol list sections.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2078 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-11-29 18:24:06 +00:00
Enrico Tröger
889a1e6d03 Use FreeBasic specific sections in symbol list.
Use Basic parser from CTags SVN and improve the parser for better handling of dim and const keywords.	 


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2069 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-11-23 16:05:53 +00:00
Enrico Tröger
130318f94f Revert the change to make symbol sections bold and use some small indentation when expanders are hidden.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2064 ea778897-0a13-0410-b9d1-a72fbfd435f5
2007-11-21 17:20:26 +00:00