lists.geany.org
Sign In
Sign Up
Sign In
Sign Up
Manage this list
×
Keyboard Shortcuts
Thread View
j
: Next unread message
k
: Previous unread message
j a
: Jump to all threads
j l
: Jump to MailingList overview
2025
March
February
January
2024
December
November
October
September
August
July
June
May
April
March
February
January
2023
December
November
October
September
August
July
June
May
April
March
February
January
2022
December
November
October
September
August
July
June
May
April
March
February
January
2021
December
November
October
September
August
July
June
May
April
March
February
January
2020
December
November
October
September
August
July
June
May
April
March
February
January
2019
December
November
October
September
August
July
June
May
April
March
February
January
2018
December
November
October
September
August
July
June
May
April
March
February
January
2017
December
November
October
September
August
July
June
May
April
March
February
January
2016
December
November
October
September
August
July
June
May
April
March
February
January
2015
December
November
October
September
August
July
June
May
April
March
February
January
2014
December
November
October
September
August
July
June
May
April
March
February
January
2013
December
November
October
September
August
July
June
May
April
March
February
January
2012
December
November
October
September
August
July
June
May
April
March
February
January
2011
December
November
October
September
August
July
June
May
April
March
February
January
2010
December
November
October
September
August
July
June
May
April
March
February
January
2009
December
November
October
September
August
July
June
May
April
March
February
January
2008
December
November
October
September
August
July
June
May
April
March
February
January
2007
December
November
October
September
August
July
June
May
April
March
February
January
2006
December
November
October
September
August
July
June
May
List overview
Commits
July 2012
----- 2025 -----
March 2025
February 2025
January 2025
----- 2024 -----
December 2024
November 2024
October 2024
September 2024
August 2024
July 2024
June 2024
May 2024
April 2024
March 2024
February 2024
January 2024
----- 2023 -----
December 2023
November 2023
October 2023
September 2023
August 2023
July 2023
June 2023
May 2023
April 2023
March 2023
February 2023
January 2023
----- 2022 -----
December 2022
November 2022
October 2022
September 2022
August 2022
July 2022
June 2022
May 2022
April 2022
March 2022
February 2022
January 2022
----- 2021 -----
December 2021
November 2021
October 2021
September 2021
August 2021
July 2021
June 2021
May 2021
April 2021
March 2021
February 2021
January 2021
----- 2020 -----
December 2020
November 2020
October 2020
September 2020
August 2020
July 2020
June 2020
May 2020
April 2020
March 2020
February 2020
January 2020
----- 2019 -----
December 2019
November 2019
October 2019
September 2019
August 2019
July 2019
June 2019
May 2019
April 2019
March 2019
February 2019
January 2019
----- 2018 -----
December 2018
November 2018
October 2018
September 2018
August 2018
July 2018
June 2018
May 2018
April 2018
March 2018
February 2018
January 2018
----- 2017 -----
December 2017
November 2017
October 2017
September 2017
August 2017
July 2017
June 2017
May 2017
April 2017
March 2017
February 2017
January 2017
----- 2016 -----
December 2016
November 2016
October 2016
September 2016
August 2016
July 2016
June 2016
May 2016
April 2016
March 2016
February 2016
January 2016
----- 2015 -----
December 2015
November 2015
October 2015
September 2015
August 2015
July 2015
June 2015
May 2015
April 2015
March 2015
February 2015
January 2015
----- 2014 -----
December 2014
November 2014
October 2014
September 2014
August 2014
July 2014
June 2014
May 2014
April 2014
March 2014
February 2014
January 2014
----- 2013 -----
December 2013
November 2013
October 2013
September 2013
August 2013
July 2013
June 2013
May 2013
April 2013
March 2013
February 2013
January 2013
----- 2012 -----
December 2012
November 2012
October 2012
September 2012
August 2012
July 2012
June 2012
May 2012
April 2012
March 2012
February 2012
January 2012
----- 2011 -----
December 2011
November 2011
October 2011
September 2011
August 2011
July 2011
June 2011
May 2011
April 2011
March 2011
February 2011
January 2011
----- 2010 -----
December 2010
November 2010
October 2010
September 2010
August 2010
July 2010
June 2010
May 2010
April 2010
March 2010
February 2010
January 2010
----- 2009 -----
December 2009
November 2009
October 2009
September 2009
August 2009
July 2009
June 2009
May 2009
April 2009
March 2009
February 2009
January 2009
----- 2008 -----
December 2008
November 2008
October 2008
September 2008
August 2008
July 2008
June 2008
May 2008
April 2008
March 2008
February 2008
January 2008
----- 2007 -----
December 2007
November 2007
October 2007
September 2007
August 2007
July 2007
June 2007
May 2007
April 2007
March 2007
February 2007
January 2007
----- 2006 -----
December 2006
November 2006
October 2006
September 2006
August 2006
July 2006
June 2006
May 2006
commits@lists.geany.org
1 participants
381 discussions
Start a n
N
ew thread
[geany/geany] ca922e: Remove duplicated lists and name them more sensibly
by Colomban Wendling
26 Jul '12
26 Jul '12
Branch: refs/heads/document-messages Author: Colomban Wendling <ban(a)herbesfolles.org> Committer: Colomban Wendling <ban(a)herbesfolles.org> Date: Sun, 08 Jan 2012 22:22:50 Commit: ca922e0ddc8022283ec3c1f49aaa15ab7c5ba213
https://github.com/geany/geany/commit/ca922e0ddc8022283ec3c1f49aaa15ab7c5ba…
Log Message: ----------- Remove duplicated lists and name them more sensibly Modified Paths: -------------- data/geany.glade Modified: data/geany.glade 94 files changed, 11 insertions(+), 83 deletions(-) =================================================================== @@ -668,7 +668,7 @@ <property name="stock">gtk-help</property> <property name="icon-size">1</property> </object> - <object class="GtkListStore" id="liststore1"> + <object class="GtkListStore" id="tab_pos_list"> <columns> <!-- column-name item --> <column type="gchararray"/> @@ -688,47 +688,7 @@ </row> </data> </object> - <object class="GtkListStore" id="liststore2"> - <columns> - <!-- column-name item --> - <column type="gchararray"/> - </columns> - <data> - <row> - <col id="0" translatable="yes">Left</col> - </row> - <row> - <col id="0" translatable="yes">Right</col> - </row> - <row> - <col id="0" translatable="yes">Top</col> - </row> - <row> - <col id="0" translatable="yes">Bottom</col> - </row> - </data> - </object> - <object class="GtkListStore" id="liststore3"> - <columns> - <!-- column-name item --> - <column type="gchararray"/> - </columns> - <data> - <row> - <col id="0" translatable="yes">Left</col> - </row> - <row> - <col id="0" translatable="yes">Right</col> - </row> - <row> - <col id="0" translatable="yes">Top</col> - </row> - <row> - <col id="0" translatable="yes">Bottom</col> - </row> - </data> - </object> - <object class="GtkListStore" id="liststore4"> + <object class="GtkListStore" id="indent_mode_list"> <columns> <!-- column-name item --> <column type="gchararray"/> @@ -748,44 +708,12 @@ </row> </data> </object> - <object class="GtkListStore" id="liststore5"> - <columns> - <!-- column-name item --> - <column type="gchararray"/> - </columns> - <data> - <row> - <col id="0" translatable="yes">None</col> - </row> - <row> - <col id="0" translatable="yes">Basic</col> - </row> - <row> - <col id="0" translatable="yes">Current chars</col> - </row> - <row> - <col id="0" translatable="yes">Match braces</col> - </row> - </data> - </object> - <object class="GtkListStore" id="liststore6"> - <columns> - <!-- column-name text --> - <column type="gchararray"/> - </columns> - </object> - <object class="GtkListStore" id="liststore7"> + <object class="GtkListStore" id="empty_chararray_list"> <columns> <!-- column-name text --> <column type="gchararray"/> </columns> </object> - <object class="GtkListStore" id="liststore8"> - <columns> - <!-- column-name item --> - <column type="gchararray"/> - </columns> - </object> <object class="GtkDialog" id="prefs_dialog"> <property name="can_focus">False</property> <property name="title" translatable="yes">Preferences</property> @@ -2176,7 +2104,7 @@ <object class="GtkComboBox" id="combo_tab_msgwin"> <property name="visible">True</property> <property name="can_focus">True</property> - <property name="model">liststore1</property> + <property name="model">tab_pos_list</property> <child> <object class="GtkCellRendererText" id="cellrenderertext1"/> <attributes> @@ -2211,7 +2139,7 @@ <object class="GtkComboBox" id="combo_tab_sidebar"> <property name="visible">True</property> <property name="can_focus">True</property> - <property name="model">liststore1</property> + <property name="model">tab_pos_list</property> <child> <object class="GtkCellRendererText" id="cellrenderertext2"/> <attributes> @@ -2244,7 +2172,7 @@ <object class="GtkComboBox" id="combo_tab_editor"> <property name="visible">True</property> <property name="can_focus">True</property> - <property name="model">liststore1</property> + <property name="model">tab_pos_list</property> <child> <object class="GtkCellRendererText" id="cellrenderertext3"/> <attributes> @@ -3075,7 +3003,7 @@ <object class="GtkComboBox" id="combo_auto_indent_mode"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="model">liststore4</property> + <property name="model">indent_mode_list</property> <child> <object class="GtkCellRendererText" id="cellrenderertext4"/> <attributes> @@ -4246,7 +4174,7 @@ <object class="GtkComboBox" id="combo_eol"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="model">liststore8</property> + <property name="model">empty_chararray_list</property> <child> <object class="GtkCellRendererText" id="cellrenderertext5"/> <attributes> @@ -4348,7 +4276,7 @@ <object class="GtkComboBox" id="combo_new_encoding"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="model">liststore6</property> + <property name="model">empty_chararray_list</property> <child> <object class="GtkCellRendererText" id="cellrenderertext6"/> <attributes> @@ -4414,7 +4342,7 @@ <object class="GtkComboBox" id="combo_open_encoding"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="model">liststore7</property> + <property name="model">empty_chararray_list</property> <child> <object class="GtkCellRendererText" id="cellrenderertext7"/> <attributes> @@ -6472,7 +6400,7 @@ <object class="GtkComboBox" id="combo_auto_indent_mode_project"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="model">liststore5</property> + <property name="model">indent_mode_list</property> <child> <object class="GtkCellRendererText" id="cellrenderertext1_project"/> <attributes> @@ Diff output truncated at 100000 characters. @@ -------------- This E-Mail was brought to you by github_commit_mail.py (Source: TBD).
1
0
0
0
[geany/geany] 207734: Remove empty rows at the end of some lists
by Colomban Wendling
26 Jul '12
26 Jul '12
Branch: refs/heads/document-messages Author: Colomban Wendling <ban(a)herbesfolles.org> Committer: Colomban Wendling <ban(a)herbesfolles.org> Date: Sun, 08 Jan 2012 22:22:37 Commit: 2077347b3497706b844d105c81af5437f3be13de
https://github.com/geany/geany/commit/2077347b3497706b844d105c81af5437f3be1…
Log Message: ----------- Remove empty rows at the end of some lists Modified Paths: -------------- data/geany.glade Modified: data/geany.glade 9 files changed, 0 insertions(+), 9 deletions(-) =================================================================== @@ -686,9 +686,6 @@ <row> <col id="0" translatable="yes">Bottom</col> </row> - <row> - <col id="0" translatable="yes"></col> - </row> </data> </object> <object class="GtkListStore" id="liststore2"> @@ -709,9 +706,6 @@ <row> <col id="0" translatable="yes">Bottom</col> </row> - <row> - <col id="0" translatable="yes"></col> - </row> </data> </object> <object class="GtkListStore" id="liststore3"> @@ -732,9 +726,6 @@ <row> <col id="0" translatable="yes">Bottom</col> </row> - <row> - <col id="0" translatable="yes"></col> - </row> </data> </object> <object class="GtkListStore" id="liststore4"> @@ Diff output truncated at 100000 characters. @@ -------------- This E-Mail was brought to you by github_commit_mail.py (Source: TBD).
1
0
0
0
[geany/geany] 31bc70: Fix one-off leak by allocating PropertyDialogElements on the stack
by Matthew Brush
26 Jul '12
26 Jul '12
Branch: refs/heads/document-messages Author: Matthew Brush <matt(a)geany.org> Committer: Matthew Brush <matt(a)geany.org> Date: Sun, 08 Jan 2012 19:48:54 Commit: 31bc70d0f3f0d3854627aad6b2874950d1edcede
https://github.com/geany/geany/commit/31bc70d0f3f0d3854627aad6b2874950d1edc…
Log Message: ----------- Fix one-off leak by allocating PropertyDialogElements on the stack Also prevents following a whole code path for nothing, by only calling create_properties_dialog() once per run. Modified Paths: -------------- src/project.c Modified: src/project.c 53 files changed, 25 insertions(+), 28 deletions(-) =================================================================== @@ -484,8 +484,6 @@ static void create_properties_dialog(PropertyDialogElements *e) G_CALLBACK(on_radio_long_line_custom_toggled), ui_lookup_widget(e->dialog, "spin_long_line_project")); } - - insert_build_page(e); } @@ -494,41 +492,40 @@ static void show_project_properties(gboolean show_build) GeanyProject *p = app->project; GtkWidget *widget = NULL; GtkWidget *radio_long_line_custom; - static PropertyDialogElements *e = NULL; + static PropertyDialogElements e = { 0 }; g_return_if_fail(app->project != NULL); - /* note: leaks one per run of Geany */ - if (e == NULL) - e = g_new0(PropertyDialogElements, 1); - entries_modified = FALSE; - create_properties_dialog(e); + if (e.dialog == NULL) + create_properties_dialog(&e); + + insert_build_page(&e); - stash_group_display(indent_group, e->dialog); + stash_group_display(indent_group, e.dialog); /* fill the elements with the appropriate data */ - gtk_entry_set_text(GTK_ENTRY(e->name), p->name); - gtk_label_set_text(GTK_LABEL(e->file_name), p->file_name); - gtk_entry_set_text(GTK_ENTRY(e->base_path), p->base_path); + gtk_entry_set_text(GTK_ENTRY(e.name), p->name); + gtk_label_set_text(GTK_LABEL(e.file_name), p->file_name); + gtk_entry_set_text(GTK_ENTRY(e.base_path), p->base_path); - radio_long_line_custom = ui_lookup_widget(e->dialog, "radio_long_line_custom_project"); + radio_long_line_custom = ui_lookup_widget(e.dialog, "radio_long_line_custom_project"); switch (p->long_line_behaviour) { - case 0: widget = ui_lookup_widget(e->dialog, "radio_long_line_disabled_project"); break; - case 1: widget = ui_lookup_widget(e->dialog, "radio_long_line_default_project"); break; + case 0: widget = ui_lookup_widget(e.dialog, "radio_long_line_disabled_project"); break; + case 1: widget = ui_lookup_widget(e.dialog, "radio_long_line_default_project"); break; case 2: widget = radio_long_line_custom; break; } gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(widget), TRUE); - widget = ui_lookup_widget(e->dialog, "spin_long_line_project"); + widget = ui_lookup_widget(e.dialog, "spin_long_line_project"); gtk_spin_button_set_value(GTK_SPIN_BUTTON(widget), (gdouble)p->long_line_column); on_radio_long_line_custom_toggled(GTK_TOGGLE_BUTTON(radio_long_line_custom), widget); if (p->description != NULL) { /* set text */ - GtkTextBuffer *buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(e->description)); + GtkTextBuffer *buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(e.description)); gtk_text_buffer_set_text(buffer, p->description, -1); } @@ -537,24 +534,24 @@ static void show_project_properties(gboolean show_build) gchar *str; str = g_strjoinv(" ", p->file_patterns); - gtk_entry_set_text(GTK_ENTRY(e->patterns), str); + gtk_entry_set_text(GTK_ENTRY(e.patterns), str); g_free(str); } - g_signal_emit_by_name(geany_object, "project-dialog-create", e->notebook); - gtk_widget_show_all(e->dialog); + g_signal_emit_by_name(geany_object, "project-dialog-create", e.notebook); + gtk_widget_show_all(e.dialog); /* note: notebook page must be shown before setting current page */ if (show_build) - gtk_notebook_set_current_page(GTK_NOTEBOOK(e->notebook), e->build_page_num); + gtk_notebook_set_current_page(GTK_NOTEBOOK(e.notebook), e.build_page_num); else - gtk_notebook_set_current_page(GTK_NOTEBOOK(e->notebook), 0); + gtk_notebook_set_current_page(GTK_NOTEBOOK(e.notebook), 0); - while (gtk_dialog_run(GTK_DIALOG(e->dialog)) == GTK_RESPONSE_OK) + while (gtk_dialog_run(GTK_DIALOG(e.dialog)) == GTK_RESPONSE_OK) { - if (update_config(e, FALSE)) + if (update_config(&e, FALSE)) { - g_signal_emit_by_name(geany_object, "project-dialog-confirmed", e->notebook); + g_signal_emit_by_name(geany_object, "project-dialog-confirmed", e.notebook); if (!write_config(TRUE)) SHOW_ERR(_("Project file could not be written")); else @@ -565,9 +562,9 @@ static void show_project_properties(gboolean show_build) } } - build_free_fields(e->build_properties); - gtk_notebook_remove_page(GTK_NOTEBOOK(e->notebook), e->build_page_num); - gtk_widget_hide(e->dialog); + build_free_fields(e.build_properties); + gtk_notebook_remove_page(GTK_NOTEBOOK(e.notebook), e.build_page_num); + gtk_widget_hide(e.dialog); } @@ Diff output truncated at 100000 characters. @@ -------------- This E-Mail was brought to you by github_commit_mail.py (Source: TBD).
1
0
0
0
[geany/geany] aa96bc: Add missing ComboBox cell renderers in Glade rather than manually
by Colomban Wendling
26 Jul '12
26 Jul '12
Branch: refs/heads/document-messages Author: Colomban Wendling <ban(a)herbesfolles.org> Committer: Colomban Wendling <ban(a)herbesfolles.org> Date: Sun, 08 Jan 2012 21:55:28 Commit: aa96bc2cbfab0a8033d0ed600541c2d2e0c767bb
https://github.com/geany/geany/commit/aa96bc2cbfab0a8033d0ed600541c2d2e0c76…
Log Message: ----------- Add missing ComboBox cell renderers in Glade rather than manually This also fixes the duplicated renderers when there was already one in Glade, and a second one got added manually. Modified Paths: -------------- data/geany.glade src/ui_utils.c Modified: data/geany.glade 18 files changed, 18 insertions(+), 0 deletions(-) =================================================================== @@ -4256,6 +4256,12 @@ <property name="visible">True</property> <property name="can_focus">False</property> <property name="model">liststore8</property> + <child> + <object class="GtkCellRendererText" id="cellrenderertext5"/> + <attributes> + <attribute name="text">0</attribute> + </attributes> + </child> </object> <packing> <property name="left_attach">1</property> @@ -4352,6 +4358,12 @@ <property name="visible">True</property> <property name="can_focus">False</property> <property name="model">liststore6</property> + <child> + <object class="GtkCellRendererText" id="cellrenderertext6"/> + <attributes> + <attribute name="text">0</attribute> + </attributes> + </child> </object> </child> </object> @@ -4412,6 +4424,12 @@ <property name="visible">True</property> <property name="can_focus">False</property> <property name="model">liststore7</property> + <child> + <object class="GtkCellRendererText" id="cellrenderertext7"/> + <attributes> + <attribute name="text">0</attribute> + </attributes> + </child> </object> </child> </object> Modified: src/ui_utils.c 10 files changed, 0 insertions(+), 10 deletions(-) =================================================================== @@ -2256,16 +2256,6 @@ void ui_init_builder(void) toplevel = ui_get_top_parent(widget); if (toplevel) ui_hookup_widget(toplevel, widget, name); - - /* Glade doesn't seem to add cell renderers for the combo boxes, - * so they are added here. */ - if (GTK_IS_COMBO_BOX(widget)) - { - renderer = gtk_cell_renderer_text_new(); - gtk_cell_layout_pack_start(GTK_CELL_LAYOUT(widget), renderer, TRUE); - gtk_cell_layout_set_attributes(GTK_CELL_LAYOUT(widget), - renderer, "text", 0, NULL); - } } g_slist_free(all_objects); } @@ Diff output truncated at 100000 characters. @@ -------------- This E-Mail was brought to you by github_commit_mail.py (Source: TBD).
1
0
0
0
[geany/geany] c85b89: Port more of the Project properties dialog to Glade
by Matthew Brush
26 Jul '12
26 Jul '12
Branch: refs/heads/document-messages Author: Matthew Brush <matt(a)geany.org> Committer: Matthew Brush <matt(a)geany.org> Date: Sun, 08 Jan 2012 19:24:21 Commit: c85b89afdd880b7a6aac42f953bab83d3938a4a3
https://github.com/geany/geany/commit/c85b89afdd880b7a6aac42f953bab83d3938a…
Log Message: ----------- Port more of the Project properties dialog to Glade Fixes issue where dialog was being destroyed and would not show 2nd time. Modified Paths: -------------- data/geany.glade src/project.c Modified: data/geany.glade 897 files changed, 544 insertions(+), 353 deletions(-) =================================================================== No diff available, check online Modified: src/project.c 197 files changed, 91 insertions(+), 106 deletions(-) =================================================================== @@ -75,6 +75,7 @@ GtkWidget *base_path; GtkWidget *patterns; BuildTableData build_properties; + gint build_page_num; } PropertyDialogElements; @@ -96,6 +97,9 @@ #define PROJECT_DIR _("projects") +/* TODO: this should be ported to Glade like the project preferences dialog, + * then we can get rid of the PropertyDialogElements struct altogether as + * widgets pointers can be accessed through ui_lookup_widget(). */ void project_new(void) { GtkWidget *vbox; @@ -390,131 +394,114 @@ void project_close(gboolean open_default) } -static gint build_page_num = 0; +/* Shows the file chooser dialog when base path button is clicked + * FIXME: this should be connected in Glade but 3.8.1 has a bug + * where it won't pass any objects as user data (#588824). */ +G_MODULE_EXPORT void +on_project_properties_base_path_button_clicked(GtkWidget *button, + GtkWidget *base_path_entry) +{ + GtkWidget *dialog; + g_return_if_fail(base_path_entry != NULL); + g_return_if_fail(GTK_IS_WIDGET(base_path_entry)); -static void create_properties_dialog(PropertyDialogElements *e) + dialog = gtk_file_chooser_dialog_new(_("Choose Project Base Path"), + NULL, GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER, + GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, + GTK_STOCK_OPEN, GTK_RESPONSE_ACCEPT, + NULL); + + if (gtk_dialog_run(GTK_DIALOG(dialog)) == GTK_RESPONSE_ACCEPT) + { + gtk_entry_set_text(GTK_ENTRY(base_path_entry), + gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(dialog))); + } + + gtk_widget_destroy(dialog); +} + + +static void insert_build_page(PropertyDialogElements *e) { - GtkWidget *table, *notebook, *build_table; - GtkWidget *bbox; - GtkWidget *label; - GtkWidget *swin; + GtkWidget *build_table, *label, *editor_tab; GeanyDocument *doc = document_get_current(); GeanyFiletype *ft = NULL; + gint page_num; - e->dialog = create_project_dialog(); - gtk_window_set_transient_for(GTK_WINDOW(e->dialog), GTK_WINDOW(main_widgets.window)); - gtk_window_set_destroy_with_parent(GTK_WINDOW(e->dialog), TRUE); - gtk_widget_set_name(e->dialog, "GeanyDialogProject"); + /* lookup the "Editor" tab page so the "Build" tab can be inserted + * right after it. */ + editor_tab = ui_lookup_widget(e->dialog, "vbox_project_dialog_editor"); + page_num = gtk_notebook_page_num(GTK_NOTEBOOK(e->notebook), editor_tab); - ui_entry_add_clear_icon(GTK_ENTRY(ui_lookup_widget(e->dialog, "spin_indent_width_project"))); + if (doc != NULL) + ft = doc->file_type; - table = gtk_table_new(5, 2, FALSE); - gtk_container_set_border_width(GTK_CONTAINER(table), 6); - gtk_table_set_row_spacings(GTK_TABLE(table), 5); - gtk_table_set_col_spacings(GTK_TABLE(table), 10); + build_table = build_commands_table(doc, GEANY_BCS_PROJ, &(e->build_properties), ft); + gtk_container_set_border_width(GTK_CONTAINER(build_table), 6); + label = gtk_label_new(_("Build")); + e->build_page_num = gtk_notebook_insert_page(GTK_NOTEBOOK(e->notebook), + build_table, label, ++page_num); +} - label = gtk_label_new(_("Filename:")); - gtk_table_attach(GTK_TABLE(table), label, 0, 1, 0, 1, - (GtkAttachOptions) (GTK_FILL), - (GtkAttachOptions) (0), 0, 0); - gtk_misc_set_alignment(GTK_MISC(label), 0, 0); - - e->file_name = gtk_label_new(""); - gtk_label_set_selectable(GTK_LABEL(e->file_name), TRUE); - gtk_table_attach(GTK_TABLE(table), e->file_name, 1, 2, 0, 1, - (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), - (GtkAttachOptions) (0), 0, 0); - gtk_misc_set_alignment(GTK_MISC(e->file_name), 0, 0); - label = gtk_label_new(_("Name:")); - gtk_table_attach(GTK_TABLE(table), label, 0, 1, 1, 2, - (GtkAttachOptions) (GTK_FILL), - (GtkAttachOptions) (0), 0, 0); - gtk_misc_set_alignment(GTK_MISC(label), 0, 0); +static void create_properties_dialog(PropertyDialogElements *e) +{ + GtkWidget *base_path_button; + static guint base_path_button_handler_id = 0; + static guint radio_long_line_handler_id = 0; - e->name = gtk_entry_new(); - ui_entry_add_clear_icon(GTK_ENTRY(e->name)); - gtk_entry_set_max_length(GTK_ENTRY(e->name), MAX_NAME_LEN); - gtk_table_attach(GTK_TABLE(table), e->name, 1, 2, 1, 2, - (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), - (GtkAttachOptions) (0), 0, 0); - - label = gtk_label_new(_("Description:")); - gtk_table_attach(GTK_TABLE(table), label, 0, 1, 2, 3, - (GtkAttachOptions) (GTK_FILL), - (GtkAttachOptions) (GTK_FILL), 0, 0); - gtk_misc_set_alignment(GTK_MISC(label), 0, 0); - - e->description = gtk_text_view_new(); - gtk_text_view_set_wrap_mode(GTK_TEXT_VIEW(e->description), GTK_WRAP_WORD); - swin = gtk_scrolled_window_new(NULL, NULL); - gtk_widget_set_size_request(swin, 250, 80); - gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(swin), - GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); - gtk_scrolled_window_add_with_viewport(GTK_SCROLLED_WINDOW(swin), GTK_WIDGET(e->description)); - gtk_table_attach(GTK_TABLE(table), swin, 1, 2, 2, 3, - (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), - (GtkAttachOptions) (0), 0, 0); + e->dialog = create_project_dialog(); + e->notebook = ui_lookup_widget(e->dialog, "project_notebook"); + e->file_name = ui_lookup_widget(e->dialog, "label_project_dialog_filename"); + e->name = ui_lookup_widget(e->dialog, "entry_project_dialog_name"); + e->description = ui_lookup_widget(e->dialog, "textview_project_dialog_description"); + e->base_path = ui_lookup_widget(e->dialog, "entry_project_dialog_base_path"); + e->patterns = ui_lookup_widget(e->dialog, "entry_project_dialog_file_patterns"); - label = gtk_label_new(_("Base path:")); - gtk_table_attach(GTK_TABLE(table), label, 0, 1, 3, 4, - (GtkAttachOptions) (GTK_FILL), - (GtkAttachOptions) (0), 0, 0); - gtk_misc_set_alignment(GTK_MISC(label), 0, 0); + gtk_entry_set_max_length(GTK_ENTRY(e->name), MAX_NAME_LEN); - e->base_path = gtk_entry_new(); + ui_entry_add_clear_icon(GTK_ENTRY(e->name)); ui_entry_add_clear_icon(GTK_ENTRY(e->base_path)); - gtk_widget_set_tooltip_text(e->base_path, - _("Base directory of all files that make up the project. " - "This can be a new path, or an existing directory tree. " - "You can use paths relative to the project filename.")); - bbox = ui_path_box_new(_("Choose Project Base Path"), - GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER, GTK_ENTRY(e->base_path)); - gtk_table_attach(GTK_TABLE(table), bbox, 1, 2, 3, 4, - (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), - (GtkAttachOptions) (0), 0, 0); + ui_entry_add_clear_icon(GTK_ENTRY(e->patterns)); - if (doc != NULL) ft = doc->file_type; - build_table = build_commands_table(doc, GEANY_BCS_PROJ, &(e->build_properties), ft); - gtk_container_set_border_width(GTK_CONTAINER(build_table), 6); - label = gtk_label_new(_("Build")); - notebook = ui_lookup_widget(e->dialog, "project_notebook"); - build_page_num = gtk_notebook_insert_page(GTK_NOTEBOOK(notebook), build_table, label, 2); - e->notebook = notebook; - - g_signal_connect(ui_lookup_widget(e->dialog, "radio_long_line_custom_project"), "toggled", - G_CALLBACK(on_radio_long_line_custom_toggled), ui_lookup_widget(e->dialog, "spin_long_line_project")); - - label = gtk_label_new(_("File patterns:")); - gtk_table_attach(GTK_TABLE(table), label, 0, 1, 4, 5, - (GtkAttachOptions) (GTK_FILL), - (GtkAttachOptions) (0), 0, 0); - gtk_misc_set_alignment(GTK_MISC(label), 0, 0); - - e->patterns = gtk_entry_new(); - gtk_widget_set_tooltip_text(e->patterns, - _("Space separated list of file patterns used for the find in files dialog " - "(e.g. *.c *.h)")); - gtk_table_attach(GTK_TABLE(table), e->patterns, 1, 2, 4, 5, - (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), - (GtkAttachOptions) (0), 0, 0); - - label = gtk_label_new(_("Project")); - gtk_notebook_insert_page(GTK_NOTEBOOK(notebook), table, label, 0); - build_page_num++; + /* Workaround for bug in Glade 3.8.1, see comment above signal handler */ + if (base_path_button_handler_id == 0) + { + base_path_button = ui_lookup_widget(e->dialog, "button_project_dialog_base_path"); + base_path_button_handler_id = + g_signal_connect(base_path_button, "clicked", + G_CALLBACK(on_project_properties_base_path_button_clicked), + e->base_path); + } + + /* Same as above, should be in Glade but can't due to bug in 3.8.1 */ + if (radio_long_line_handler_id == 0) + { + radio_long_line_handler_id = + g_signal_connect(ui_lookup_widget(e->dialog, + "radio_long_line_custom_project"), "toggled", + G_CALLBACK(on_radio_long_line_custom_toggled), + ui_lookup_widget(e->dialog, "spin_long_line_project")); + } + + insert_build_page(e); } static void show_project_properties(gboolean show_build) { - PropertyDialogElements *e = g_new(PropertyDialogElements, 1); GeanyProject *p = app->project; GtkWidget *widget = NULL; GtkWidget *radio_long_line_custom; + static PropertyDialogElements *e = NULL; g_return_if_fail(app->project != NULL); + /* note: leaks one per run of Geany */ + if (e == NULL) + e = g_new0(PropertyDialogElements, 1); + entries_modified = FALSE; create_properties_dialog(e); @@ -559,11 +546,11 @@ static void show_project_properties(gboolean show_build) /* note: notebook page must be shown before setting current page */ if (show_build) - gtk_notebook_set_current_page(GTK_NOTEBOOK(e->notebook), build_page_num); + gtk_notebook_set_current_page(GTK_NOTEBOOK(e->notebook), e->build_page_num); else gtk_notebook_set_current_page(GTK_NOTEBOOK(e->notebook), 0); - while (gtk_dialog_run(GTK_DIALOG(e->dialog)) == GTK_RESPONSE_OK) + if (gtk_dialog_run(GTK_DIALOG(e->dialog)) == GTK_RESPONSE_OK) { if (update_config(e, FALSE)) { @@ -571,15 +558,13 @@ static void show_project_properties(gboolean show_build) if (!write_config(TRUE)) SHOW_ERR(_("Project file could not be written")); else - { ui_set_statusbar(TRUE, _("Project \"%s\" saved."), app->project->name); - break; - } } } + build_free_fields(e->build_properties); - gtk_widget_destroy(e->dialog); - g_free(e); + gtk_notebook_remove_page(GTK_NOTEBOOK(e->notebook), e->build_page_num); + gtk_widget_hide(e->dialog); } @@ Diff output truncated at 100000 characters. @@ -------------- This E-Mail was brought to you by github_commit_mail.py (Source: TBD).
1
0
0
0
[geany/geany] 6968a1: Make it so project properties form errors can be corrected (oops)
by Matthew Brush
26 Jul '12
26 Jul '12
Branch: refs/heads/document-messages Author: Matthew Brush <matt(a)geany.org> Committer: Matthew Brush <matt(a)geany.org> Date: Sun, 08 Jan 2012 19:34:27 Commit: 6968a1a957f8c4d71ea9edc126e6af1ace996502
https://github.com/geany/geany/commit/6968a1a957f8c4d71ea9edc126e6af1ace996…
Log Message: ----------- Make it so project properties form errors can be corrected (oops) Was broken during last commit. Modified Paths: -------------- src/project.c Modified: src/project.c 5 files changed, 4 insertions(+), 1 deletions(-) =================================================================== @@ -550,7 +550,7 @@ static void show_project_properties(gboolean show_build) else gtk_notebook_set_current_page(GTK_NOTEBOOK(e->notebook), 0); - if (gtk_dialog_run(GTK_DIALOG(e->dialog)) == GTK_RESPONSE_OK) + while (gtk_dialog_run(GTK_DIALOG(e->dialog)) == GTK_RESPONSE_OK) { if (update_config(e, FALSE)) { @@ -558,7 +558,10 @@ static void show_project_properties(gboolean show_build) if (!write_config(TRUE)) SHOW_ERR(_("Project file could not be written")); else + { ui_set_statusbar(TRUE, _("Project \"%s\" saved."), app->project->name); + break; + } } } @@ Diff output truncated at 100000 characters. @@ -------------- This E-Mail was brought to you by github_commit_mail.py (Source: TBD).
1
0
0
0
[geany/geany] eb04c5: Add API function ui_lookup_stock_label()
by Nick Treleaven
26 Jul '12
26 Jul '12
Branch: refs/heads/document-messages Author: Nick Treleaven <nick.treleaven(a)btinternet.com> Committer: Nick Treleaven <nick.treleaven(a)btinternet.com> Date: Sun, 08 Jan 2012 17:37:58 Commit: eb04c514bab87af60f01ae3c8e9ee1d3fd9bccf8
https://github.com/geany/geany/commit/eb04c514bab87af60f01ae3c8e9ee1d3fd9bc…
Log Message: ----------- Add API function ui_lookup_stock_label() Using this can avoid adding i18n strings unnecessarily. Modified Paths: -------------- plugins/geanyfunctions.h plugins/splitwindow.c src/keybindings.c src/plugindata.h src/plugins.c src/ui_utils.c src/ui_utils.h Modified: plugins/geanyfunctions.h 2 files changed, 2 insertions(+), 0 deletions(-) =================================================================== @@ -302,6 +302,8 @@ geany_functions->p_ui->ui_combo_box_add_to_history #define ui_menu_add_document_items_sorted \ geany_functions->p_ui->ui_menu_add_document_items_sorted +#define ui_lookup_stock_label \ + geany_functions->p_ui->ui_lookup_stock_label #define dialogs_show_question \ geany_functions->p_dialogs->dialogs_show_question #define dialogs_show_msgbox \ Modified: plugins/splitwindow.c 14 files changed, 1 insertions(+), 13 deletions(-) =================================================================== @@ -199,18 +199,6 @@ static void set_state(enum State id) } -static const gchar *ui_get_stock_label(const gchar *stock_id) -{ - GtkStockItem item; - - if (gtk_stock_lookup(stock_id, &item)) - return item.label; - - g_warning("No stock id '%s'!", stock_id); - return ""; -} - - /* Create a GtkToolButton with stock icon, label and tooltip. * @param label can be NULL to use stock label text. @a label can contain underscores, * which will be removed. @@ -222,7 +210,7 @@ static GtkWidget *ui_tool_button_new(const gchar *stock_id, const gchar *label, if (stock_id && !label) { - label = ui_get_stock_label(stock_id); + label = ui_lookup_stock_label(stock_id); } dupl = utils_str_remove_chars(g_strdup(label), "_"); label = dupl; Modified: src/keybindings.c 3 files changed, 2 insertions(+), 1 deletions(-) =================================================================== @@ -265,7 +265,8 @@ static void init_default_kb(void) keybindings_set_item(group, GEANY_KEYS_PROJECT_OPEN, NULL, 0, 0, "project_open", _("Open"), LW(project_open1)); keybindings_set_item(group, GEANY_KEYS_PROJECT_PROPERTIES, NULL, - 0, 0, "project_properties", _("Project properties"), LW(project_properties1)); + 0, 0, "project_properties", + ui_lookup_stock_label(GTK_STOCK_PROPERTIES), LW(project_properties1)); group = keybindings_get_core_group(GEANY_KEY_GROUP_EDITOR); Modified: src/plugindata.h 1 files changed, 1 insertions(+), 0 deletions(-) =================================================================== @@ -477,6 +477,7 @@ const gchar *text, gint history_len); void (*ui_menu_add_document_items_sorted) (GtkMenu *menu, struct GeanyDocument *active, GCallback callback, GCompareFunc compare_func); + const gchar* (*ui_lookup_stock_label)(const gchar *stock_id); } UIUtilsFuncs; Modified: src/plugins.c 3 files changed, 2 insertions(+), 1 deletions(-) =================================================================== @@ -247,7 +247,8 @@ &ui_is_keyval_enter_or_return, &ui_get_gtk_settings_integer, &ui_combo_box_add_to_history, - &ui_menu_add_document_items_sorted + &ui_menu_add_document_items_sorted, + &ui_lookup_stock_label }; static DialogFuncs dialog_funcs = { Modified: src/ui_utils.c 16 files changed, 16 insertions(+), 0 deletions(-) =================================================================== @@ -2784,3 +2784,19 @@ void ui_focus_current_document(void) if (doc != NULL) document_grab_focus(doc); } + + +/** Finds the label text associated with @a stock_id. + * @p stock_id e.g. @c GTK_STOCK_OPEN. + * @return . + * @since Geany 1.22 */ +const gchar *ui_lookup_stock_label(const gchar *stock_id) +{ + GtkStockItem item; + + if (gtk_stock_lookup(stock_id, &item)) + return item.label; + + g_warning("No stock id '%s'!", stock_id); + return NULL; +} Modified: src/ui_utils.h 2 files changed, 2 insertions(+), 0 deletions(-) =================================================================== @@ -229,6 +229,8 @@ void ui_editable_insert_text_callback(GtkEditable *editable, gchar *new_text, void ui_label_set_markup(GtkLabel *label, const gchar *format, ...) G_GNUC_PRINTF(2, 3); +const gchar *ui_lookup_stock_label(const gchar *stock_id); + /* End of general widget functions */ void ui_init_builder(void); @@ Diff output truncated at 100000 characters. @@ -------------- This E-Mail was brought to you by github_commit_mail.py (Source: TBD).
1
0
0
0
[geany/geany] 3cb382: Fix using 'All files' instead of 'None' in Open dialogs (Windows)
by Nick Treleaven
26 Jul '12
26 Jul '12
Branch: refs/heads/document-messages Author: Nick Treleaven <nick.treleaven(a)btinternet.com> Committer: Nick Treleaven <nick.treleaven(a)btinternet.com> Date: Sun, 08 Jan 2012 17:53:49 Commit: 3cb3826aad3e110f5309816e65394249369f24e7
https://github.com/geany/geany/commit/3cb3826aad3e110f5309816e65394249369f2…
Log Message: ----------- Fix using 'All files' instead of 'None' in Open dialogs (Windows) Modified Paths: -------------- src/win32.c Modified: src/win32.c 6 files changed, 2 insertions(+), 4 deletions(-) =================================================================== @@ -157,14 +157,12 @@ static wchar_t *get_filters(gboolean project_files) if (project_files) { string = g_strconcat(_("Geany project files"), "\t", "*." GEANY_PROJECT_EXT, "\t", - filetypes[GEANY_FILETYPES_NONE]->title, "\t", - filetypes[GEANY_FILETYPES_NONE]->pattern[0], "\t", NULL); + _("All files"), "\t", "*", "\t", NULL); } else { string = g_strconcat(_("Executables"), "\t", "*.exe;*.bat;*.cmd", "\t", - filetypes[GEANY_FILETYPES_NONE]->title, "\t", - filetypes[GEANY_FILETYPES_NONE]->pattern[0], "\t", NULL); + _("All files"), "\t", "*", "\t", NULL); } /* replace all "\t"s by \0 */ @@ Diff output truncated at 100000 characters. @@ -------------- This E-Mail was brought to you by github_commit_mail.py (Source: TBD).
1
0
0
0
[geany/geany] 8f4413: Add 'Open Project' keybinding
by Nick Treleaven
26 Jul '12
26 Jul '12
Branch: refs/heads/document-messages Author: Nick Treleaven <nick.treleaven(a)btinternet.com> Committer: Nick Treleaven <nick.treleaven(a)btinternet.com> Date: Sun, 08 Jan 2012 17:14:04 Commit: 8f44132dcd0835c00a57b4eb04ce1b4f7a8a6305
https://github.com/geany/geany/commit/8f44132dcd0835c00a57b4eb04ce1b4f7a8a6…
Log Message: ----------- Add 'Open Project' keybinding Modified Paths: -------------- doc/geany.txt src/keybindings.c src/keybindings.h Modified: doc/geany.txt 10 files changed, 10 insertions(+), 0 deletions(-) =================================================================== @@ -3626,6 +3626,16 @@ Remove Markers and Error Indicators Combines ``Remove Mark ==================================== ==================== ================================================== +Project keybindings +``````````````````` +=============================== ========================= ================================================== +Action Default shortcut Description +=============================== ========================= ================================================== +Open Opens a project file. +Properties Shows the `Project properties`_. +=============================== ========================= ================================================== + + Build keybindings ````````````````` =============================== ========================= ================================================== Modified: src/keybindings.c 5 files changed, 5 insertions(+), 0 deletions(-) =================================================================== @@ -262,6 +262,8 @@ static void init_default_kb(void) group = keybindings_get_core_group(GEANY_KEY_GROUP_PROJECT); + keybindings_set_item(group, GEANY_KEYS_PROJECT_OPEN, NULL, + 0, 0, "project_open", _("Open"), LW(project_open1)); keybindings_set_item(group, GEANY_KEYS_PROJECT_PROPERTIES, NULL, 0, 0, "project_properties", _("Project properties"), LW(project_properties1)); @@ -1301,6 +1303,9 @@ static gboolean cb_func_project_action(guint key_id) { switch (key_id) { + case GEANY_KEYS_PROJECT_OPEN: + on_project_open1_activate(NULL, NULL); + break; case GEANY_KEYS_PROJECT_PROPERTIES: if (app->project) on_project_properties1_activate(NULL, NULL); Modified: src/keybindings.h 1 files changed, 1 insertions(+), 0 deletions(-) =================================================================== @@ -237,6 +237,7 @@ enum GeanyKeyBindingID GEANY_KEYS_INSERT_LINEAFTER, /**< Keybinding. */ GEANY_KEYS_INSERT_LINEBEFORE, /**< Keybinding. */ GEANY_KEYS_DOCUMENT_REMOVE_MARKERS_INDICATORS, /**< Keybinding. */ + GEANY_KEYS_PROJECT_OPEN, /**< Keybinding. */ GEANY_KEYS_COUNT /* must not be used by plugins */ }; @@ Diff output truncated at 100000 characters. @@ -------------- This E-Mail was brought to you by github_commit_mail.py (Source: TBD).
1
0
0
0
[geany/geany] 85b5e0: Recognize #!/bin/dash as shebang for Shell files (closes #3470986)
by Enrico Tröger
26 Jul '12
26 Jul '12
Branch: refs/heads/document-messages Author: Enrico Tröger <enrico.troeger(a)uvena.de> Committer: Enrico Tröger <enrico.troeger(a)uvena.de> Date: Sun, 08 Jan 2012 12:44:21 Commit: 85b5e08c471c505b59218b1a94df9b95a01cca06
https://github.com/geany/geany/commit/85b5e08c471c505b59218b1a94df9b95a01cc…
Log Message: ----------- Recognize #!/bin/dash as shebang for Shell files (closes #3470986) Modified Paths: -------------- src/filetypes.c Modified: src/filetypes.c 2 files changed, 2 insertions(+), 0 deletions(-) =================================================================== @@ -902,6 +902,8 @@ static GeanyFiletype *find_shebang(const gchar *utf8_filename, const gchar *line ft = filetypes[GEANY_FILETYPES_SH]; else if (strncmp(basename_interpreter, "bash", 4) == 0) ft = filetypes[GEANY_FILETYPES_SH]; + else if (strncmp(basename_interpreter, "dash", 4) == 0) + ft = filetypes[GEANY_FILETYPES_SH]; else if (strncmp(basename_interpreter, "perl", 4) == 0) ft = filetypes[GEANY_FILETYPES_PERL]; else if (strncmp(basename_interpreter, "python", 6) == 0) @@ Diff output truncated at 100000 characters. @@ -------------- This E-Mail was brought to you by github_commit_mail.py (Source: TBD).
1
0
0
0
← Newer
1
...
26
27
28
29
30
31
32
...
39
Older →
Jump to page:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
Results per page:
10
25
50
100
200