Kaydet (Commit) 046d5ef7 authored tarafından Nick Treleaven's avatar Nick Treleaven

Fix bug with using the default extension, not the user set one, if

'New with template' is used before any documents of the same filetype
are open.
Load filetype keyfiles from filetypes_load_config(), not from
styleset_foo_init().
Add highlighting_init_styles(), highlighting_set_styles(),
simplifying a lot of styleset function code.
Remove filetype::style_func_ptr field.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@2011 ea778897-0a13-0410-b9d1-a72fbfd435f5
üst be322a87
......@@ -2,6 +2,16 @@
* src/sciwrappers.c:
Show line wrap symbol at start of line for wrapped lines.
* src/templates.c, src/highlighting.c, src/highlighting.h,
src/filetypes.c, src/filetypes.h, src/document.c, src/main.c:
Fix bug with using the default extension, not the user set one, if
'New with template' is used before any documents of the same filetype
are open.
Load filetype keyfiles from filetypes_load_config(), not from
styleset_foo_init().
Add highlighting_init_styles(), highlighting_set_styles(),
simplifying a lot of styleset function code.
Remove filetype::style_func_ptr field.
2007-11-02 Enrico Tröger <enrico.troeger@uvena.de>
......
......@@ -557,7 +557,7 @@ gint document_new_file(const gchar *filename, filetype *ft, const gchar *text)
document_set_filetype(idx, ft); // also clears taglist
if (ft == NULL)
filetypes[GEANY_FILETYPES_ALL]->style_func_ptr(doc_list[idx].sci);
highlighting_set_styles(doc_list[idx].sci, GEANY_FILETYPES_ALL);
ui_set_window_title(idx);
build_menu_update(idx);
document_update_tag_list(idx, FALSE);
......@@ -1884,7 +1884,7 @@ void document_set_filetype(gint idx, filetype *type)
tm_workspace_remove_object(doc_list[idx].tm_file, TRUE);
doc_list[idx].tm_file = NULL;
}
type->style_func_ptr(doc_list[idx].sci); // set new styles
highlighting_set_styles(doc_list[idx].sci, type->id);
build_menu_update(idx);
colourise = TRUE;
}
......
This diff is collapsed.
......@@ -119,7 +119,6 @@ struct filetype
gboolean comment_use_indent;
struct build_programs *programs;
struct build_actions *actions;
void (*style_func_ptr) (ScintillaObject*);
};
extern filetype *filetypes[GEANY_MAX_FILE_TYPES];
......@@ -144,7 +143,7 @@ filetype *filetypes_detect_from_filename(const gchar *utf8_filename);
/* frees the array and all related pointers */
void filetypes_free_types();
void filetypes_get_config(GKeyFile *config, GKeyFile *configh, gint ft);
void filetypes_load_config(gint ft_id);
void filetypes_save_commands();
......
This diff is collapsed.
......@@ -29,72 +29,10 @@
#include "ScintillaWidget.h"
void styleset_free_styles(void);
void highlighting_init_styles(gint filetype_idx, GKeyFile *config, GKeyFile *configh);
void styleset_c(ScintillaObject *sci);
void highlighting_set_styles(ScintillaObject *sci, gint filetype_idx);
void styleset_cpp(ScintillaObject *sci);
void styleset_makefile(ScintillaObject *sci);
void styleset_latex(ScintillaObject *sci);
void styleset_php(ScintillaObject *sci);
void styleset_html(ScintillaObject *sci);
void styleset_java(ScintillaObject *sci);
void styleset_pascal(ScintillaObject *sci);
void styleset_perl(ScintillaObject *sci);
void styleset_python(ScintillaObject *sci);
void styleset_ruby(ScintillaObject *sci);
void styleset_sh(ScintillaObject *sci);
void styleset_xml(ScintillaObject *sci);
void styleset_docbook(ScintillaObject *sci);
void styleset_none(ScintillaObject *sci);
void styleset_css(ScintillaObject *sci);
void styleset_conf(ScintillaObject *sci);
void styleset_asm(ScintillaObject *sci);
void styleset_sql(ScintillaObject *sci);
void styleset_caml(ScintillaObject *sci);
void styleset_haskell(ScintillaObject *sci);
void styleset_oms(ScintillaObject *sci);
void styleset_tcl(ScintillaObject *sci);
void styleset_d(ScintillaObject *sci);
void styleset_fortran(ScintillaObject *sci);
void styleset_diff(ScintillaObject *sci);
void styleset_ferite(ScintillaObject *sci);
void styleset_vhdl(ScintillaObject *sci);
void styleset_js(ScintillaObject *sci);
void styleset_lua(ScintillaObject *sci);
void styleset_cs(ScintillaObject *sci);
void styleset_basic(ScintillaObject *sci);
void styleset_haxe(ScintillaObject *sci);
void highlighting_free_styles(void);
#endif
......@@ -788,7 +788,7 @@ void main_quit()
keybindings_free();
filetypes_save_commands();
filetypes_free_types();
styleset_free_styles();
highlighting_free_styles();
templates_free_templates();
msgwin_finalize();
search_finalize();
......
......@@ -528,6 +528,8 @@ gchar *templates_get_template_fileheader(gint filetype_idx, const gchar *fname)
filetype_id ft_id = filetype_idx;
filetype *ft = filetypes[ft_id];
filetypes_load_config(ft_id); // load any user extension setting
if (fname == NULL)
{
if (ft_id == GEANY_FILETYPES_ALL)
......@@ -539,11 +541,8 @@ gchar *templates_get_template_fileheader(gint filetype_idx, const gchar *fname)
shortname = g_path_get_basename(fname);
template = utils_str_replace(template, "{filename}", shortname);
template = utils_str_replace(template, "{gpl}", templates[GEANY_TEMPLATE_GPL]);
template = utils_str_replace(template, "{bsd}", templates[GEANY_TEMPLATE_BSD]);
template = utils_str_replace(template, "{datetime}", date);
result = make_comment_block(template, ft_id, 8);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment