Fix bad reinitialization of the icon item
[nautilus-actions.git] / ChangeLog
blobb7a06ed27c3bca723268340abf7cbd929dc7cfb6
1 2010-08-02 Pierre Wieser <pwieser@trychlos.org>
3         * src/nact/nact-gtk-utils.c (nact_gtk_utils_get_pixbuf):
4         * src/nact/nact-iaction-tab.c (on_icon_changed):
5         Fix bad reinitialization of the icon item.
7         * doc/nact/C/figures/nact-basenames-tab.png:
8         * doc/nact/C/figures/nact-capabilities-tab.png:
9         * doc/nact/C/figures/nact-command-tab.png:
10         * doc/nact/C/figures/nact-environment-tab.png:
11         * doc/nact/C/figures/nact-execution-tab.png:
12         * doc/nact/C/figures/nact-folders-tab.png:
13         * doc/nact/C/figures/nact-legend.png:
14         * doc/nact/C/figures/nact-main-empty.png:
15         * doc/nact/C/figures/nact-mimetypes-tab.png:
16         * doc/nact/C/figures/nact-new-capability.png:
17         * doc/nact/C/figures/nact-preferences-export.png:
18         * doc/nact/C/figures/nact-preferences-import.png:
19         * doc/nact/C/figures/nact-preferences-io-providers.png:
20         * doc/nact/C/figures/nact-preferences-runtime.png:
21         * doc/nact/C/figures/nact-preferences-schemes.png:
22         * doc/nact/C/figures/nact-preferences-ui.png:
23         * doc/nact/C/figures/nact-properties-tab.png:
24         * doc/nact/C/figures/nact-schemes-tab.png:
25         Update all screenshots to include window decoration.
27         * doc/nact/nautilus-actions-config-tool.omf.in:
28         Change categorie and type of the NACT user's manual.
30         * src/nact/nact-main-menubar.c:
31         Change help menu item from Gtk default to Gnome (apparent) standard.
33         * src/nact/nact-main-menubar-help.c (nact_main_menubar_help_on_help):
34         Connect to Yelp.
36         * configure.ac: Update comments.
38         * src/nact/nact-add-capability-dialog.c (try_for_send_ok):
39         * src/nact/nact-add-scheme-dialog.c (try_for_send_ok):
40         * src/nact/nact-main-tab.c (nact_main_tab_is_page_enabled):
41         Check that Gtk+ is more recent that 2.18 for gtk_widget_get_sensitive().
43         Split the NACT manual by chapter.
45         * doc/nact/C/nact-usage.xml:
46         * doc/nact/C/nact-prefs.xml:
47         * doc/nact/C/nact-misc.xml: New files.
49         * doc/nact/C/nautilus-actions-config-tool.xml:
50         * doc/nact/Makefile.am: Updated accordingly.
52 2010-08-01 Pierre Wieser <pwieser@trychlos.org>
54         * nact/nact-iactions-list-bis.c (nact_iactions_list_bis_insert_items):
55         A new NAObjectItem must be inserted before the current NAObjectItem.
57         * doc/README: Define a global documentation plan.
59         * doc/api/Makefile.am:
60         * doc/api/version.xml.in:
61         Define a stub for future public API documentation, targeting
62         Nautilus-Actions plugins developers.
64         * doc/internals/Makefile.am:
65         Define a stub for future internal documentation, targeting
66         Nautilus-Actions core developers.
68         * doc/product/Makefile.am:
69         Define a stub for future global Nautilus-Actions documentation.
71         * configure.ac:
72         * doc/Makefile.am: Updated accordingly.
74         * doc/nact/ChangeLog:
75         * doc/nact/nautilus-actions-config-tool.omf.in: New files.
77         * doc/nact/C/articleinfo.xml:
78         * doc/nact/C/legalnotice.xml: Included as external entities rather
79         than from xi:include because of db2omf complains.
81         * doc/nact/C/appendix-feedback.xml:
82         * doc/nact/C/appendix-gnu-fdl-1.3.xml: Add DOCTYPE declaration.
84 2010-07-31 Pierre Wieser <pwieser@trychlos.org>
86         * src/nact/nautilus-actions-config-tool.ui:
87         Review tooltips.
89         * src/nact/nact-match-list.c (on_must_not_match_clicked):
90         Fix incorrect column id.
92         * src/nact/nact-match-list.c (sort_on_column):
93         Display sort indicator.
95         * src/nact/nact-match-list.c (on_must_match_toggled):
96         Fix crash when defining a positive assertion.
98         * src/core/na-icontext.c (is_candidate_for_capabilities):
99         Implement the function.
101         * src/core/na-selected-info.c:
102         * src/core/na-selected-info.h (na_selected_info_is_executable,
103         na_selected_info_is_owner, na_selected_info_is_readable,
104         na_selected_info_is_writable): New function.
106         * src/core/na-icontext.c (is_candidate_for_folders):
107         Implement the function.
109         * src/core/na-selected-info.c:
110         * src/core/na-selected-info.h (na_selected_info_get_dirname):
111         New function.
113         * src/core/na-icontext.c (is_candidate_for_schemes):
114         Implement the function.
116         * src/core/na-icontext.c (is_candidate_for_selection_count):
117         Implement the function.
119         * src/io-desktop/nadp-reader.c
120         (nadp_reader_ifactory_provider_read_start): Set minimal version number.
122 2010-07-30 Pierre Wieser <pwieser@trychlos.org>
124         * src/core/na-icontext.c (is_candidate_for_basenames):
125         Unref the GPatternSpec after use.
127         * src/core/na-icontext.c (is_candidate_for_basenames):
128         Implement the function.
130         * src/core/na-selected-info.c:
131         * src/core/na-selected-info.h (na_selected_info_get_basename):
132         New function.
134         * configure.ac: Add a dependancy on libgtop.
136         * src/core/na-icontext.c (is_candidate_for_show_if_running):
137         Implement the function.
139 2010-07-29 Pierre Wieser <pwieser@trychlos.org>
141         * src/io-desktop/nadp-formats.c:
142         * src/io-desktop/nadp-formats.h: New files.
143         These should have been added to 2.99.0, but where forgotten.
145         * docs/nact/Makefile.am: New file.
147         * configure.ac:
148         * docs/Makefile.am: Updated accordingly.
150         Create NACT user's manual skeleton.
151         
152         * docs/nact/C/appendix-feedback.xml:
153         * docs/nact/C/appendix-gnu-fdl-1.3.xml:
154         * docs/nact/C/articleinfo.xml:
155         * docs/nact/C/figures/nact-basenames-tab.png:
156         * docs/nact/C/figures/nact-capabilities-tab.png:
157         * docs/nact/C/figures/nact-command-tab.png:
158         * docs/nact/C/figures/nact-environment-tab.png:
159         * docs/nact/C/figures/nact-execution-tab.png:
160         * docs/nact/C/figures/nact-folders-tab.png:
161         * docs/nact/C/figures/nact-legend.png:
162         * docs/nact/C/figures/nact-main-empty.png:
163         * docs/nact/C/figures/nact-mimetypes-tab.png:
164         * docs/nact/C/figures/nact-preferences-export.png:
165         * docs/nact/C/figures/nact-preferences-import.png:
166         * docs/nact/C/figures/nact-preferences-io-providers.png:
167         * docs/nact/C/figures/nact-preferences-runtime.png:
168         * docs/nact/C/figures/nact-preferences-schemes.png:
169         * docs/nact/C/figures/nact-preferences-ui.png:
170         * docs/nact/C/figures/nact-properties-tab.png:
171         * docs/nact/C/figures/nact-schemes-tab.png:
172         * docs/nact/C/figures/nat-new-capability.png:
173         * docs/nact/C/index.xml:
174         * docs/nact/C/legalnotice.xml: New files.
176         Do some cleanup in NAObjectAction and NAObjectProfile code.
177         Implement execution of singular vs. plural command forms.
179         * src/api/na-object-action.h:
180         * src/core/na-object-action.c (na_object_action_is_candidate):
181         Removed function.
183         * src/api/na-object-profile.h:
184         * src/core/na-object-profile.c (na_object_profile_parse_parameters):
185         Removed function.
187         * src/core/na-tokens.c:
188         * src/core/na-tokens.h (na_tokens_execute_action): New function.
190         * src/plugin-menu/nautilus-actions.c (execute_action):
191         Move action execution to NATokens class.
193         * src/utils/nautilus-actions-run.c: Now use NATokens class.
195         * doc/: Renamed as docs/
197         * configure.ac:
198         * Makefile;am: Updated accordingly.
200         * configure.ac: Bump the version number after release.
202 2010-07-28 Pierre Wieser <pwieser@trychlos.org>
204         * NEWS: Update NEWS before unstable release.
206         * configure.ac: Bump the version number before unstable release.
208         * src/io-desktop/nadp-module.c (na_extension_startup):
209         Remove the #if/#endif macros to let the .desktop provider be released.
211         * src/io-desktop/nadp-desktop-file.c:
212         * src/io-desktop/nadp-desktop-file.h
213         (nadp_desktop_file_new, nadp_desktop_file_get_key_file):
214         New functions.
216         * src/io-desktop/nadp-writer.c
217         (nadp_writer_iexporter_export_to_buffer): Implement the function.
219         Import/export .desktop files.
221         * doc/export-format-id: Declare the new export format.
223         * po/POTFILES.in: Add a file.
225         * src/api/na-core-utils.h:
226         * src/core/na-core-utils.c
227         (na_core_utils_slist_add_message, na_core_utils_file_load_from_uri):
228         New functions.
230         * src/api/na-iimporter.h:
231         * src/core/na-iimporter.c (na_iimporter_manage_import_mode):
232         New function.
234         * src/io-desktop/nadp-formats.c:
235         * src/io-desktop/nadp-formats.h: New files.
237         * src/io-desktop/Makefile.am: Updated accordingly.
239         * src/io-desktop/nadp-desktop-file.c:
240         * src/io-desktop/nadp-desktop-file.h
241         (nadp_desktop_file_new_from_uri): New function.
242         (nadp_desktop_file_get_key_file_path): Renamed as nadp_desktop_file_get_key_file_uri().
244         * src/io-desktop/nadp-desktop-provider.c:
245         Declare NAIImporterInterface and NAIExporterInterface interfaces.
247         * src/io-desktop/nadp-reader.c:
248         * src/io-desktop/nadp-reader.h
249         (nadp_reader_iimporter_import_from_uri): New function.
251         * src/io-desktop/nadp-utils.c:
252         * src/io-desktop/nadp-utils.h
253         (nadp_utils_is_writable_file): Renamed as nadp_utils_uri_is_writable().
254         (nadp_utils_uri_delete): New function.
256         * src/io-desktop/nadp-writer.c:
257         * src/io-desktop/nadp-writer.h
258         (nadp_writer_iexporter_export_to_buffer, nadp_writer_iexporter_export_to_file):
259         New functions.
261         * src/nact/nact-add-scheme-dialog.c:
262         Prevent a default scheme to be inserted twice.
264         * src/nact/nact-ischemes-tab.c:
265         Use the current list of rows instead of the current schemes list.
267         * src/nact/nact-match-list.c:
268         Prevent a standard filter to be inserted twice.
270         * src/api/na-core-utils.h:
271         * src/core/na-core-utils.c (na_core_utils_slist_dump):
272         Add a prefix parameter to the function.
274         * src/core/na-data-boxed.c (slist_dump):
275         * src/core/na-io-provider.c (na_io_provider_get_providers_list):
276         * src/io-desktop/nadp-writer.c (nadp_writer_ifactory_provider_write_done):
277         * src/nact/nact-match-list.c (nact_match_list_on_selection_changed):
278         * src/test/test-reader.c (main): Updated accordingly.
280 2010-07-26 Pierre Wieser <pwieser@trychlos.org>
282         * src/api/na-core-utils.h:
283         * src/core/na-core-utils.c (na_core_utils_slist_find):
284         Moved to na_core_utils_slist_count.
286         * src/core/na-icontext.c (is_candidate_for_show_in):
287         * src/io-desktop/nadp-writer.c
288         (nadp_writer_ifactory_provider_write_done): Updated accordingly.
290         * src/nact/nact-match-list.c (on_filter_edited):
291         Add g_return_if_fail checks on data and context.
293         Prevent of inline edition of capabilities.
295         * src/nact/nact-match-list.c:
296         * src/nact/nact-match-list.h (nact_match_list_create_model):
297         Add editable_filter input parameter.
299         * src/nact/nact-match-list.c (nact_match_list_on_selection_changed):
300         Only enable the column if filter and item are both editable.
302         * src/nact/nact-ibasenames-tab.c:
303         * src/nact/nact-icapabilities-tab.c:
304         * src/nact/nact-ifolders-tab.c:
305         * src/nact/nact-imimetypes-tab.c:
306         * src/nact/nact-ischemes-tab.c: Updated accordingly.
308         Prevent a capability to be inserted twice.
310         * src/nact/nact-add-capability-dialog.c (on_button_press_event):
311         On double-clic, check for OK sensitivity.
313         * src/nact/nact-icapabilities-tab.c (on_add_clicked):
314         Provide the dialog with our current content rather than current capabilities.
316         * src/nact/nact-match-list.c:
317         * src/nact/nact-match-list.h (nact_match_list_get_rows): New function.
319         Fix parameters conversion to v3.
321         * src/core/na-object-action.c (icontext_is_candidate):
322         Fix comment and minor typo.
324         * src/core/na-object-profile.c:
325         * src/io-gconf/nagp-reader.c (convert_pre_v3_parameters):
326         Move pre-v3 parameters conversion from GConf provider to profile class.
328         * src/io-desktop/nadp-reader.c
329         (nadp_reader_ifactory_provider_read_start):
330         * src/io-gconf/nagp-reader.c (nagp_reader_read_start):
331         * src/io-gconf/nagp-gconf-provider.c (ifactory_provider_iface_init):
332         * src/io-gconf/nagp-reader.h:
333         Now attach profile to its parent in 'read_start' interface.
335         * src/io-desktop/nadp-reader.c
336         (nadp_reader_ifactory_provider_read_done):
337         * src/io-gconf/nagp-reader.c (nagp_reader_read_done):
338         Homogeneïze the read_done functions.
340         Move the reading of the subitems key for the desktop I/O provider
341         from 'read_done' to 'read_start'.
343         * src/io-desktop/nadp-reader.c:
344         * src/io-desktop/nadp-reader.h
345         (nadp_reader_ifactory_provider_read_start): New function.
347         * src/io-desktop/nadp-desktop-provider.c: Updated accordingly.
349 2010-07-19 Pierre Wieser <pwieser@trychlos.org>
351         * src/api/na-object-item.h:
352         * src/core/na-object-item.c (na_object_item_factory_write_start):
353         Function is renamed as na_object_item_rebuild_children_slist().
355         * src/core/na-object-action.c:
356         * src/core/na-object-menu.c: Updated accordingly.
358 2010-07-05 Pierre Wieser <pwieser@trychlos.org>
360         * src/nact/nact-icommand-tab.c (nact_icommand_tab_runtime_init_toplevel):
361         Connect to delete-event signal to hide the GtkWindow.
363 2010-07-03 Pierre Wieser <pwieser@trychlos.org>
365         * src/nact/nact-add-capability-dialog.c (on_base_runtime_init_dialog):
366         Doucle-click validates the dialog.
368         * src/nact/nact-add-scheme-dialog.c (on_base_runtime_init_dialog):
369         Doucle-click validates the dialog.
371         * src/nact/nact-schemes-list.c (nact_schemes_list_create_model):
372         Scheme keyword and description are editable in user preferences.
374 2010-07-02 Pierre Wieser <pwieser@trychlos.org>
376         * src/core/na-tokens.c (na_tokens_new_from_selection):
377         Add a trace.
379         * src/core/na-tokens.h: Fix minor typo.
381         * src/plugin-menu/nautilus-actions.c:
382         There should not be any need to keep a reference to our menu.
384         * data/nautilus-actions-prefs.schemas.in:
385         * src/core/na-iprefs.h:
386         * src/core/na-importer-ask.c:
387         * src/core/na-importer-ask.h:
388         Define a new GConf preference 'keep last user choice'.
390         * src/api/na-iimporter.h:
391         * src/core/na-iimporter.c:
392         from_uri() interface is renamed as import_from_uri().
393         Only define na_iimporter_import_from_uri() public API.
395         * src/core/na-importer.c:
396         * src/core/na-importer.h:
397         Define here na_importer_import_from_list() internal API.
399         * src/io-xml/naxml-provider.c:
400         * src/io-xml/naxml-reader.c:
401         * src/io-xml/naxml-reader.h:
402         * src/nact/nact-assistant-import.c:
403         * src/nact/nact-tree-model-dnd.c:
404         * src/test/test-reader.c: Updated accordingly.
406         * src/core/na-object-id.c (na_object_id_set_new_id):
407         Fix object type test.
409         * src/core/na-object-item.c (object_id_new_id):
410         Fix minor typo.
412         * src/core/na-object-profile.c (object_id_new_id):
413         Fix order of validity test.
414         Only get a new profile name when a new parent is provided.
416 2010-06-29 Pierre Wieser <pwieser@trychlos.org>
418         * src/nact/nact-tree-model-dnd.c (drop_uri_list):
419         Make the code in adequation with the comment.
421         * src/nact/nact-gtk-utils.c (nact_gtk_utils_get_pixbuf):
422         Do not emit a warning when file is just not found.
424 2010-06-28 Pierre Wieser <pwieser@trychlos.org>
426         * src/io-desktop/nadp-writer.c
427         (nadp_writer_ifactory_provider_write_data):
428         Concatenate path and parameters fields to the Exec key.
430         * src/nact/nact-assistant-import.c (has_readable_files):
431         Get ride of warning messages in some usual situations.
433         * src/nact/nact-main-menubar-file.c (nact_main_menubar_file_save_items):
434         Force sensitivities update when new tree store is empty.
436         * src/core/na-iduplicable.c (na_iduplicable_check_status):
437         * src/core/na-object.c (na_object_object_unref):
438         Review debug messages.
440         * src/core/na-pivot.c:
441         * src/core/na-pivot.h (na_pivot_set_new_items): New function.
443         * src/nact/nact-main-menubar-file.c (save_item):
444         Duplicate all current tree store to a new pivot.
446 2010-06-23 Pierre Wieser <pwieser@trychlos.org>
448         * src/nact/nact-ienvironment-tab.c (on_tab_updatable_selection_changed):
449         * src/nact/nact-iexecution-tab.c (on_tab_updatable_selection_changed):
450         Radio buttons are inconsistent if and only if there is no context.
452         * src/nact/nact-tree-model.c (dump_store): Also dumps origin.
454         * src/core/na-updater.c (na_updater_remove_item):
455         Do not unref here removed item.
456         Also remove item from non level zero parent.
458         * src/nact/nact-main-window.c (actually_delete_item):
459         Updated accordingly.
461         * src/core/na-icontext.c (is_candidate_for_try_exec):
462         Do not try to get info for non existing file.
464 2010-06-21 Pierre Wieser <pwieser@trychlos.org>
466         * src/core/na-icontext.c (is_candidate_for_show_in):
467         Implement the check of the environment (though not yet the desktop
468         detection).
470         * src/nact/nact-iaction-tab.c:
471         * src/nact/nact-ibasenames-tab.c:
472         * src/nact/nact-icommand-tab.c:
473         * src/nact/nact-ienvironment-tab.c:
474         * src/nact/nact-iexecution-tab.c:
475         * src/nact/nact-iproperties-tab.c:
476         * src/nact/nact-match-list.c:
477         Reset all fields to an empty value when there is no selection.
479         * src/nact/nact-main-tab.h:
480         * src/nact/nautilus-actions-config-tool.ui:
481         Move the Execution tab just besides the Command one.
483 2010-06-20 Pierre Wieser <pwieser@trychlos.org>
485         * src/core/na-object.c (na_object_object_unref):
486         Fix infinite unref of child items.
488         * src/nact/nact-tree-model.c (nact_tree_model_display):
489         Set debug messages.
491 2010-06-18 Pierre Wieser <pwieser@trychlos.org>
493         * src/core/na-object.c (na_object_object_unref):
494         Fix segfault when unfiltering invalid items.
496         * src/core/na-object-item-factory.c:
497         Numeric version is no more writable by default.
499         * src/io-gconf/nagp-keys.h:
500         * src/io-gconf/nagp-writer.c (nagp_writer_write_start):
501         Explicitely write the numeric version to GConf.
503         * src/core/na-object-item-factory.c:
504         Provider data is no more duplicable by NAIFactoryObject.
506         * src/core/na-object-item.c (object_copy):
507         Explicitely triggers NAIOProvider::duplicate_data method.
509         * src/io-desktop/nadp-desktop-provider.c (iio_provider_iface_init):
510         * src/io-desktop/nadp-writer.c:
511         * src/io-desktop/nadp-writer.h (nadp_iio_provider_duplicate_data):
512         Implement NAIIOProvider::duplicate_data interface.
514         * src/io-gconf/nagp-gconf-provider.c (iio_provider_iface_init):
515         Initialize NAIIOProvider duplicate_data() virtual pointer.
517         * src/api/na-iio-provider.h:
518         * src/core/na-iio-provider.c (duplicate_data):
519         * src/core/na-io-provider.c:
520         * src/core/na-io-provider.h (na_io_provider_duplicate_data):
521         Define new NAIIOProvider interface.
523 2010-06-17 Pierre Wieser <pwieser@trychlos.org>
525         * src/api/na-iio-provider.h:
526         * src/core/na-iio-provider.c (na_iio_provider_item_changed):
527         Remove useless item id parameter.
529         * src/core/na-ipivot-consumer.c (is_notify_allowed):
530         Set a higher delay (1s to 2s) before notifying NAPivot
531         because of the delay of file monitoring.
533         * src/nact/nact-clipboard.c (export_objects):
534         Remove unused dest_folder parameter.
536         * src/nact/nact-tree-model-dnd.c
537         (nact_tree_model_dnd_imulti_drag_source_drag_data_get):
538         Get destination folder as an URI.
540         * src/nact/nact-iaction-tab.c:
541         Fix invalid cast of NAObjectMenu to NAObjectAction.
543         * src/nact/nact-sort-buttons.c:
544         * src/nact/nact-sort-buttons.h (nact_sort_buttons_enable_buttons):
545         New function.
547         * src/nact/nact-main-menubar.c (on_iactions_list_count_updated):
548         Enable/disable sort buttons depending of items list count.
550         * src/api/na-object-api.h
551         (na_object_get_shortcut, na_object_set_shortcut): New macros.
553         * src/nact/nact-iproperties-tab.c: Review NactIPropertiesTab page.
555         * src/api/na-object-api.h
556         (na_object_get_execution_mode,
557         na_object_get_startup_notify, na_object_get_startup_class,
558         na_object_get_execute_as, na_object_set_execution_mode,
559         na_object_set_startup_notify, na_object_set_startup_class,
560         na_object_set_execute_as): New macros.
562         * src/core/na-object-profile-factory.c:
563         Change type of execution mode from uint to string.
565         * src/nact/nact-iexecution-tab.c: Implement NactIExecutionTab page.
567         * src/nact/nact-ienvironment-tab.c: Implement NactIEnvironmentTab page.
569 2010-06-16 Pierre Wieser <pwieser@trychlos.org>
571         * src/nact/nact-gtk-utils.c:
572         * src/nact/nact-gtk-utils.h
573         (nact_gtk_utils_select_file, nact_gtk_utils_select_dir): New functions.
575         * src/nact/nact-icommand-tab.c: Updated accordingly.
577         * src/api/na-core-utils.h:
578         * src/core/na-core-utils.c (na_core_utils_slist_setup_element): New function.
580         * src/api/na-icontext.h:
581         * src/core/na-icontext.c (na_icontext_set_only_desktop, na_icontext_set_not_desktop):
582         New functions.
584         * src/api/na-object-api.h (na_object_set_only_desktop, na_object_set_not_desktop):
585         New macros.
587         * src/nact/nact-ienvironment-tab.c: Implement desktop choice.
589         * src/nact/nact-icapabilities-tab.c:
590         * src/nact/nautilus-actions-config-tool.ui: Review NactICapabilitiesTab page.
592         * src/nact/nact-ischemes-tab.c: Review NactISchemesTab page.
594         * src/nact/nact-ifolders-tab.c: Review NactIFoldersTab page.
596         * src/nact/nact-ibasenames-tab.c: Review NactIBasenamesTab page.
598         * src/nact/nact-match-list.c:
599         * src/nact/nact-match-list.h (nact_match_list_on_enable_tab):
600         Removed function.
602         * src/nact/nact-icommand-tab.c:
603         * src/nact/nact-icommand-tab.h: Review NactICommandTab page.
605         * src/core/na-object-action-factory.c: Fix comment.
607         * src/nact/nact-iaction-tab.c:
608         * src/nact/nact-iaction-tab.h: Homogeneïse the code.
610 2010-06-15 Pierre Wieser <pwieser@trychlos.org>
612         * src/nact/nact-main-tab.c:
613         * src/nact/nact-main-tab.h (nact_main_tab_get_context):
614         New function.
616         * src/nact/nact-iaction-tab.c:
617         * src/nact/nact-ibasenames-tab.c:
618         * src/nact/nact-icapabilities-tab.c:
619         * src/nact/nact-ienvironment-tab.c:
620         * src/nact/nact-ifolders-tab.c:
621         * src/nact/nact-imimetypes-tab.c:
622         * src/nact/nact-ischemes-tab.c:
623         * src/nact/nact-main-tab.h:
624         * src/nact/nact-main-window.c:
625         Remove irrelevant TAB_UPDATABLE_SIGNAL_ENABLE_TAB signal.
627         * src/nact/nact-match-list.c:
628         Do not try to get filters when there is no current context.
630         * src/nact/nact-main-window.c:
631         Do not mark the application as modified when list is empty.
633         * src/nact/nact-iaction-tab.c:
634         * src/nact/nact-ibasenames-tab.c:
635         * src/nact/nact-icapabilities-tab.c:
636         * src/nact/nact-icommand-tab.c:
637         * src/nact/nact-ienvironment-tab.c:
638         * src/nact/nact-ifolders-tab.c:
639         * src/nact/nact-iproperties-tab.c:
640         * src/nact/nact-ischemes-tab.c:
641         * src/nact/nact-main-menubar-edit.c:
642         * src/nact/nact-main-menubar-file.c:
643         * src/nact/nact-main-tab.h:
644         * src/nact/nact-main-window.c:
645         * src/nact/nact-match-list.c: Rename main properties.
647         * src/nact/nact-main-tab.h:
648         * src/nact/nact-main-window.c: Remove unused PROP_SELECTED_ROW property.
650         * po/POTFILES.in: Add src/nact/nact-ienvironment-tab.c file.
652         * src/nact/nact-ienvironment-tab.c: Connect signals.
654 2010-06-14 Pierre Wieser <pwieser@trychlos.org>
656         * src/core/na-icontext-factory.c:
657         Change default capabilities to empty list.
659         * src/nact/nact-add-capability-dialog.c:
660         * src/nact/nact-add-capability-dialog.h:
661         * src/nact/nact-add-capability.ui: New files.
663         * po/POTFILES.in:
664         * src/nact/Makefile.am: Updated accordingly.
666         * src/nact/nact-match-list.c:
667         * src/nact/nact-match-list.h (nact_match_list_create_model):
668         Add match_header parameter.
670         * src/nact/nact-ibasenames-tab.c:
671         * src/nact/nact-icapabilities-tab.c:
672         * src/nact/nact-ifolders-tab.c:
673         * src/nact/nact-imimetypes-tab.c:
674         * src/nact/nact-ischemes-tab.c: Updated accordingly.
676 2010-06-13 Pierre Wieser <pwieser@trychlos.org>
678         * src/nact/nact-match-list.c:
679         * src/nact/nact-match-list.h (nact_match_list_create_model):
680         Add on_add_clicked callback parameter.
682         * src/nact/nact-ibasenames-tab.c:
683         * src/nact/nact-ifolders-tab.c:
684         * src/nact/nact-imimetypes-tab.c:
685         * src/nact/nact-ischemes-tab.c: Updated accordingly.
687         * src/nact/nact-iaction-tab.c:
688         Use gtk_bin_get_child() function instead of GTK_BIN()->child.
690         * po/POTFILES.in:
691         Add src/nact/nact-icapabilities-tab.c, src/nact/nact-ischemes-tab.c.
692         Remove src/nact/nact-iconditions-tab.c.
694         * src/api/na-core-utils.h:
695         * src/core/na-core-utils.c (na_core_utils_selcount_get_ope_int):
696         New function.
698         * src/nact/nact-icapabilities-tab.c: Implement selection count.
700 2010-06-11 Pierre Wieser <pwieser@trychlos.org>
702         * src/api/na-icontext.h:
703         * src/core/na-icontext.c (na_icontext_is_all_mimetypes): New function.
705         * src/api/na-object-api.h: Define new getters/setters.
707         * src/core/na-icontext-factory.c:
708         * src/core/na-object-item-factory.c: Fix comments.
710         * src/io-gconf/nagp-reader.c:
711         Convert pre-v3 is_multiple, is_file and is_dir parameters.
713 2010-06-10 Pierre Wieser <pwieser@trychlos.org>
715         * configure.ac: Bump post-release version number.
717         * Changelog: Update NEWS before release.
719         * configure.ac: Bump pre-release version number.
721         * src/core/na-iabout.c: Update copyright notice.
723 2010-06-09 Pierre Wieser <pwieser@trychlos.org>
725         * src/api/na-core-utils.h:
726         * src/api/na-core-utils.c (na_core_utils_slist_find_negated):
727         New function.
729         * src/nact/nact-add-scheme-dialog.c:
730         * src/nact/nact-add-scheme-dialog.h: New files.
732         * src/nact/Makefile.am: Updated accordingly.
734         * src/nact/nact-main-menubar.c: Update test for Gtk+ version.
736         * src/nact/nact-match-list.c:
737         * src/nact/nact-match-list.h: Remove on_add callback.
739         * src/nact/nact-ibasenames-tab.c:
740         * src/nact/nact-ifolders-tab.c:
741         * src/nact/nact-imimetypes-tab.c:
742         * src/nact/nact-ischemes-tab.c:
743         * src/nact/nact-preferences-editor.c: Updated accordingly.
745         * src/nact/nact-schemes-list.c:
746         * src/nact/nact-schemes-list.h
747         (nact_schemes_list_show_all, nact_schemes_list_get_current_scheme):
748         New functions.
750 2010-06-07 Pierre Wieser <pwieser@trychlos.org>
752         * src/nact/nact-add-scheme.ui: New file.
754         * po/POTFILES.in:
755         * src/nact/Makefile.am: Updated accordingly.
757 2010-06-04 Pierre Wieser <pwieser@trychlos.org>
759         * src/api/na-object-api.h: Reorganization.
761         * src/core/na-icontext-factory.c: Set schemes default to '*'.
763         * src/nact/nact-icommand-tab.c: Get schemes from current object.
765         * src/nact/nact-ischemes-tab.c:
766         * src/nact/nact-ischemes-tab.h:
767         Take advantage of new nact_match_list_xxx functions.
769         * src/api/na-object-api.h:
770         * src/api/na-ifactory-object-data.h:
771         * src/core/na-object-profile-factory.c: Add NAFO_DATA_WORKING_DIR data.
773         * src/core/na-factory-object.c:
774         * src/core/na-factory-object.h (na_factory_object_get_default):
775         New     function.
777         * src/nact/nact-icommand-tab.c: Implement working directory.
779         * src/nact/nact-imimetypes-tab.c: 
780         Take advantage of new nact_match_list_xxx functions.
782         * src/nact/nact-match-list.c:
783         * src/nact/nact-match-list.h: New files.
785         * src/nact/Makefile.am: Updated accordingly.
787         * src/nact/base-window.c:
788         * src/nact/base-window.h (base_window_signal_connect_with_data):
789         New function.
791         * src/nact/nact-ibasenames-tab.c: 
792         Take advantage of new nact_match_list_xxx functions.
794 2010-06-03 Pierre Wieser <pwieser@trychlos.org>
796         * src/nact/nact-ibasenames-tab.c: Implement NactIBasenamesInterface interface.
798 2010-06-02 Pierre Wieser <pwieser@trychlos.org>
800         * src/nact/nautilus-actions-config-tool.ui:
801         * src/nact/nact-ibasenames-tab.c: Define basename new conditions skeleton.
803         * src/nact/nact-icapabilities-tab.c:
804         * src/nact/nact-icapabilities-tab.h: Define NactICapabilitiesInterface interface.
806         * src/nact/Makefile.am:
807         * src/nact/nact-main-tab.h:
808         * src/nact/nact-main-window.c: Updated accordingly.
810 2010-05-30 Pierre Wieser <pwieser@trychlos.org>
812         * src/nact/nact-ibasenames-tab.c:
813         * src/nact/nact-ibasenames-tab.h: Define NactIBasenamesTabInterface interface.
815         * src/nact/nact-icommand-tab.c:
816         No more include removed nact-iconditions-tab.h file.
818         * src/nact/nact-ienvironment-tab.c:
819         * src/nact/nact-ienvironment-tab.h: Define NactIEnvironmentTabInterface interface.
821         * src/nact/nact-iexecution-tab.c:
822         * src/nact/nact-iexecution-tab.h: Define NactIExecutionTabInterface interface.
824         * src/nact/nact-ifolders-tab.c (on_tab_updatable_selection_changed):
825         * src/nact/nact-ischemes-tab.c (on_tab_updatable_selection_changed):
826         tab_set_sensitive() returned value is not used here.
828         * src/nact/nact-imimetypes-tab.c:
829         * src/nact/nact-imimetypes-tab.h: Define NactIMimetypesTabInterface interface.
831         * src/nact/nact-iproperties-tab.c (on_tab_updatable_selection_changed):
832         Set a mnemonic in the tab label.
834         * src/nact/nact-main-tab.h:
835         * src/nact/nact-main-window.c: Add the four new tabs, remove the old one.
837         * src/nact/nautilus-actions-config-tool.ui: Fix some size groups.
839 2010-05-29 Pierre Wieser <pwieser@trychlos.org>
841         * configure.ac: Define GSEAL_ENABLED.
843         * src/nact/nautilus-actions-config-tool.ui:
844         Implement all new fields.
846 2010-05-26 Pierre Wieser <pwieser@trychlos.org>
848         * src/api/na-core-utils.h:
849         * src/core/na-core-utils.c (na_core_utils_dir_split_ext):
850         New function.
852         * src/core/na-tokens.h:
853         * src/core/na-tokens.c: New files.
855         * src/core/Makefile.am: Udated accordingly.
857         * src/plugin-menu/nautilus-actions.c:
858         Expand tokens which may embed parameters.
860 2010-05-20 Pierre Wieser <pwieser@trychlos.org>
862         * src/io-gconf/nagp-reader.c (read_done_profile_attach_profile):
863         Migrate old v2 parameters to v3.
865         * src/core/na-object-action.c (deals_with_version):
866         Setup a version number if not already set.
868         * src/core/na-object-action.c (convert_pre_v2_action):
869         Renamed as convert_v1_to_v2.
871         * src/api/na-data-def.h: Add write_if_default.
873         * src/core/na-icontext-factory.c:
874         * src/core/na-object-action-factory.c:
875         * src/core/na-object-id-factory.c:
876         * src/core/na-object-item-factory.c:
877         * src/core/na-object-profile-factory.c: Update all data structures.
879         * src/io-desktop/nadp-writer.c
880         (nadp_writer_ifactory_provider_write_data):
881         * src/io-gconf/nagp-writer.c (nagp_writer_write_data):
882         * src/io-xml/naxml-writer.c (naxml_writer_write_data):
883         Updated accordingly.
885         * src/io-desktop/nadp-reader.c
886         (nadp_reader_ifactory_provider_read_start): Removed function.
888 2010-05-17 Pierre Wieser <pwieser@trychlos.org>
890         * configure.ac: Fix typo.
892         * src/core/na-core-utils.c (na_core_utils_slist_from_array):
893         Strip the strings extracted from the array.
895         * src/core/na-factory-object.c (na_factory_object_are_equal):
896         Dump the data when different.
898         * src/nact/nact-main-menubar-file.c
899         (nact_main_menubar_file_save_items): Add a debug message.
901         * src/api/na-object-api.h (na_object_set_last_version):
902         * src/api/na-object-action.h:
903         * src/core/na-object-action.c (na_object_action_set_last_version):
904         New functions.
906         * src/core/na-object-action.c (convert_pre_v2_action):
907         Reset action to last version number after conversion from pre-v2.
909         * src/core/na-object-profile.c (na_object_profile_parse_parameters):
910         Do not add extraneous blanks when parsing parameters.
912         * configure.ac: Post release bump version number.
914         * src/io-desktop/nadp-reader.c (read_done_load_profiles):
915         Do not reload already loaded profiles.
916         Just ignore non-referenced profiles.
918         * src/io-gconf/nagp-reader.c
919         (read_done_action_load_profiles_from_list): Do not reload already loaded profiles.
921         * src/utils/nautilus-actions-new.c:
922         Factorize error message to make translation easier.
924         * src/utils/nautilus-actions-run.c:
925         Mark two new strings for translation.
927         * src/core/na-object-action-factory.c:
928         No more set a string version.
930         * src/io-gconf/nagp-reader.c (read_done_profile_attach_profile):
931         Test both string and integer versions.
933 2010-05-12 Pierre Wieser <pwieser@trychlos.org>
935         * src/api/na-icontext.h:
936         * src/core/na-icontext.c
937         (na_icontext_have_all_mimetypes): Removed function.
938         (na_icontext_read_done): New function.
940         * src/core/na-object-action.c:
941         * src/core/na-object-menu.c:
942         * src/core/na-object-profile.c: Updated accordingly.
944         * src/api/na-object-api.h
945         (na_object_get_iversion, na_object_set_iversion): New functions.
947         * src/core/na-icontext-factory.c:
948         * src/core/na-object-item-factory.c:
949         Adjustments on default values.
951         * src/io-gconf/nagp-reader.c (read_done_profile_attach_profile):
952         Convert pre-v3 parameters.
954         * src/plugin-menu/nautilus-actions.c:
955         Adjust NautilusMenuProvider interface.
957 2010-05-10 Pierre Wieser <pwieser@trychlos.org>
959         Monitor .desktop files and directories.
961         * src/io-desktop/nadp-monitor.c:
962         * src/io-desktop/nadp-monitor.h: New files.
964         * src/io-desktop/Makefile.am: Updated accordingly.
966         * src/io-desktop/nadp-desktop-provider.c:
967         * src/io-desktop/nadp-desktop-provider.h
968         (nadp_desktop_provider_add_monitor,
969         nadp_desktop_provider_on_monitor_event,
970         nadp_desktop_provider_release_monitors): New functions.
972         * src/io-desktop/nadp-reader.c (get_list_of_desktop_paths):
973         Installs a monitor for each candidate directory.
975 2010-05-03 Pierre Wieser <pwieser@trychlos.org>
977         * src/api/na-icontext.h:
978         * src/api/na-ifactory-object-data.h:
979         * src/api/na-object-api.h:
980         * src/core/na-icontext-factory.c:
981         * src/core/na-icontext.c:
982         Define new NAFO_DATA_ALL_MIMETYPES data, set to TRUE when the context
983         is to be selected for all mimetypes.
985         * src/core/na-object-action.c:
986         * src/core/na-object-menu.c:
987         * src/core/na-object-profile.c:
988         * src/plugin-menu/nautilus-actions.c:
989         All objects implement NAIContextInterface.
991         * src/nact/nact-iconditions-tab.c (na_object_is_matchcase):
992         Renamed as na_object_get_matchcase().
994         * src/core/na-object-profile.c (na_object_profile_parse_parameters):
995         Do not add extraneous blanks when parsing parameters.
997 2010-04-19 Pierre Wieser <pwieser@trychlos.org>
999         * src/api/na-ifactory-object-data.h:
1000         * src/api/na-object-profile.h:
1001         * src/core/na-icontext-factory.c:
1002         * src/core/na-object-action-factory.c:
1003         * src/core/na-object-item-factory.c:
1004         * src/core/na-object-menu-factory.c:
1005         * src/core/na-object-profile-factory.c:
1006         Define all new data, new parameters, and include context informations
1007         to actions and menus.
1009         * src/api/na-core-utils.h:
1010         * src/core/na-core-utils.c (na_core_utils_slist_from_array):
1011         Fix leading and trailing spaces management.
1013 2010-04-18 Pierre Wieser <pwieser@trychlos.org>
1015         * src/api/na-ifactory-object-data.h:
1016         * src/core/na-object-item-factory.c:
1017         Define new NAFO_DATA_SHORTCUT data.
1019 2010-04-15 Pierre Wieser <pwieser@trychlos.org>
1021         * src/nact/nact-schemes-list.c (insert_new_row):
1022         Rewrite row insertion; do not insert a - non-editable - description.
1024         * src/nact/nact-preferences.ui: Fix typo.
1026         * src/io-gconf/nagp-keys.h:
1027         Remove unused GConf entry keys.
1029         * src/io-gconf/nagp-writer.c (nagp_iio_provider_is_willing_to_write):
1030         Force GConf sync to get ride of 'foo' entry.
1032 2010-04-14 Pierre Wieser <pwieser@trychlos.org>
1034         * NEWS: Update before release.
1036         * configure.ac: Bump version number before release.
1038         * src/core/na-selected-info.h:
1039         * src/core/na-selected-info.c (na_selected_info_get_name):
1040         Renamed as na_selected_info_get_path.
1042         * src/core/na-icontext.c
1043         (is_current_folder_inside, is_target_selection_candidate):
1044         Updated accordingly.
1046         * src/core/na-object-profile.c (na_object_profile_parse_parameters):
1047         Do not try to deal with null values.
1049         * src/plugin-menu/nautilus-actions.c (create_item_from_profile):
1050         Duplicate the candidate profile, set the parent to null.
1052         * src/core/na-selected-info.c (na_selected_info_get_location):
1053         Increment the reference count of the returned location.
1055         * src/core/na-gconf-utils.c (dump_entry):
1056         Do not try to dump a null value.
1058         * src/core/na-selected-info.c
1059         (dump): New function.
1060         (na_selected_info_create_for_uri): Accepts a mimetype.
1062         * src/plugin-tracker/na-tracker-dbus.c
1063         (na_tracker_dbus_get_selected_paths): Also sends the mimetype.
1065 2010-04-13 Pierre Wieser <pwieser@trychlos.org>
1067         * po/POTFILES.in: Adding src/nact/nact-iconditions-tab.c file.
1069         * src/api/na-ifactory-object-data.h:
1070         * src/core/na-icontext-factory.c:
1071         Adding NAFO_DATA_SELECTION_COUNT data, obsoleting NAFO_DATA_MULTIPLE.
1073         * src/nact/nact-iconditions-tab.c:
1074         * src/nact/nautilus-actions-config-tool.ui:
1075         Adding required entries for SelectionCount data.
1077 2010-04-12 Pierre Wieser <pwieser@trychlos.org>
1079         * src/plugin-menu/Makefile.am:
1080         * src/plugin-tracker/Makefile.am: Fix incorrect log domains.
1082         * po/POTFILES.in: Add src/nact/nact-iproperties-tab.c file.
1084         * src/nact/nautilus-actions-config-tool.ui: Adjust vertical paddings.
1086         "Advanced conditions" tab is renamed as "Schemes".
1088         * src/nact/nact-iadvanced-tab.c: Renamed as src/nact/nact-ischemes-tab.c.
1089         * src/nact/nact-iadvanced-tab.h: Renamed as src/nact/nact-ischemes-tab.h.
1091         * src/nact/Makefile.am:
1092         * src/nact/nact-icommand-tab.c:
1093         * src/nact/nact-main-tab.h:
1094         * src/nact/nact-main-window.c: Updated accordingly.
1096         Move item properties to their own tab.
1098         * src/nact/nact-iproperties-tab.c:
1099         * src/nact/nact-iproperties-tab.h: New files.
1101         * src/nact/Makefile.am:
1102         * src/nact/nact-iaction-tab.c:
1103         * src/nact/nact-main-tab.h:
1104         * src/nact/nact-main-window.c:
1105         * src/nact/nautilus-actions-config-tool.ui: Updated accordingly.
1107 2010-04-09 Pierre Wieser <pwieser@trychlos.org>
1109         * NEWS: Updated.
1111         * src/nact/nact-sort-buttons.c (set_new_sort_order):
1112         Do not rewrite in GConf a just-readen sort order.
1114         * src/io-gconf/nagp-writer.c (nagp_iio_provider_delete_item):
1115         Also delete the schema names which may be embedded in GConfEntry.
1117         * src/api/na-gconf-utils.h:
1118         * src/core/na-gconf-utils.c (na_gconf_utils_dump_entries):
1119         New function.
1121         * src/io-gconf/nagp-reader.c (read_item):
1122         Dump content of readen entries.
1124         * src/io-gconf/nagp-gconf-provider.c (install_monitors):
1125         Also monitors schemas to be triggered when importing a schema.
1127         * configure.ac: Bump version number for release.
1129         * src/nact/nact-iaction-tab.c (on_icon_browse):
1130         Save current position and folder of icon chooser.
1132 2010-04-08 Pierre Wieser <pwieser@trychlos.org>
1134         * src/core/na-object-profile.c (is_valid_path_parameters):
1135         Only check for non-empty path+parameters (fix #614596).
1137         * src/nact/nact-sort-buttons.c (on_sort_down_button_toggled,
1138         on_sort_manual_button_toggled, on_sort_up_button_toggled):
1139         Do not let the user click twice on a sort button.
1141         * src/nact/nact-main-window.c (setup_dialog_title):
1142         Review/normalize debug entry message.
1144         * src/nact/nact-ifolders-tab.c (on_add_folder_clicked):
1145         Folders list is definitively a list of paths (not URI).
1147         * src/api/na-core-utils.h:
1148         * src/core/na-core-utils.c (na_core_utils_str_collate): New function.
1150         * src/core/na-data-boxed.c (locale_are_equal):
1151         * src/core/na-object-action.c (deals_with_toolbar_label):
1152         * src/core/na-object-id.c (na_object_id_sort_alpha_asc):
1153         * src/io-desktop/nadp-utils.c (nadp_utils_gslist_remove_from):
1154         * src/nact/base-builder.c (already_loaded): Updated accordingly.
1156         * src/api/na-gconf-utils.h:
1157         * src/core/na-gconf-utils.c (na_gconf_utils_has_entry):
1158         Check for an entry in the previously loaded list.
1160         * src/io-gconf/nagp-reader.c
1161         (read_item): First check for Type default value.
1162         (read_item, read_done_item_is_writable,
1163         read_done_action_load_profile): Load entries.
1165         * src/nact/nact-iaction-tab.c (on_tab_updatable_selection_changed):
1166         * src/nact/nact-icommand-tab.c (on_tab_updatable_selection_changed):
1167         Protect gtk_ functions against null values.
1169         * src/plugin-menu/Makefile.am:
1170         Rename plugin to libnautilus-actions-menu.
1172         * src/io-desktop/nadp-reader.c (item_from_desktop_path):
1173         First check Type for default value.
1175 2010-04-07 Pierre Wieser <pwieser@trychlos.org>
1177         * src/nact/nact-gtk-utils.c:
1178         * src/nact/nact-gtk-utils.h
1179         (nact_gtk_utils_get_pixbuf): Render an icon for a given widget.
1180         (nact_utils_render): New function.
1182         * src/nact/nact-iaction-tab.c (on_icon_changed):
1183         * src/nact/nact-main-statusbar.c (nact_main_statusbar_set_locked):
1184         * src/nact/nact-tree-model.c (display_item): Updated accordingly.
1186 2010-04-02 Pierre Wieser <pwieser@trychlos.org>
1188         * configure.ac:
1189         * src/nact/nact-main-tab.c (nact_main_tab_is_page_enabled):
1190         GTK_WIDGET_IS_SENSITIVE is deprecated starting from gtk 2.20.
1192         * src/core/na-core-utils.c (na_core_utils_file_exists):
1193         * src/io-xml/naxml-writer.c (output_xml_to_file):
1194         Takes an URI as the filename.
1196 2010-04-01 Pierre Wieser <pwieser@trychlos.org>
1198         * src/api/na-icontextual.h: Renamed as src/api/na-icontext.h.
1199         * src/core/na-icontextual.c: Renamed as src/core/na-icontext.c.
1200         * src/core/na-icontextual-factory.c: Renamed as src/core/na-icontext-factory.c.
1202         * po/POTFILES.in:
1203         * src/api/Makefile.am:
1204         * src/api/na-icontext.h:
1205         * src/api/na-object-api.h:
1206         * src/core/Makefile.am:
1207         * src/core/na-icontext.c:
1208         * src/core/na-object-action.c:
1209         * src/core/na-object-profile.c:
1210         * src/plugin-menu/nautilus-actions.c:
1211         * src/utils/nautilus-actions-run.c: Updated accordingly.
1213         * src/api/na-object-api.h (na_object_prepare_for_paste):
1214         * src/core/na-object-id.c (na_object_id_prepare_for_paste):
1215         Parent is not always an action, may be a menu.
1217         * src/io-desktop/nadp-desktop-file.c
1218         (nadp_desktop_file_get_file_type):
1219         Do not emit a warning if Type is not found in the .desktop file.
1221         * src/core/na-core-utils.c (na_core_utils_slist_to_array):
1222         Fix built of array.
1224         * src/io-desktop/nadp-keys.h:
1225         Set back action (resp. menu) Type to Action (resp. Menu).
1227         * src/nact/nautilus-actions-config-tool.ui:
1228         Insert a scrolled window as text view parent.
1230         * src/io-desktop/nadp-desktop-file.c (check_key_file):
1231         Only write a debug message if file is hidden.
1233 2010-03-29 Pierre Wieser <pwieser@trychlos.org>
1235         * src/nact/nact-gtk-utils.c (nact_gtk_utils_set_editable):
1236         Take into account new GtktextView widget.
1238         * src/io-desktop/nadp-writer.c (nadp_iio_provider_write_item):
1239         Remove groups which no longer exist.
1241         * src/io-desktop/nadp-reader.c (read_done_load_profiles):
1242         Free string lists.
1244         * src/io-desktop/nadp-desktop-file.c:
1245         * src/io-desktop/nadp-desktop-file.h (nadp_desktop_file_remove_profile):
1246         New function.
1248         * src/io-desktop/nadp-desktop-file.c (nadp_desktop_file_get_profiles):
1249         Fix allocation of profile id.
1251         * src/io-desktop/nadp-desktop-file.c:
1252         * src/io-desktop/nadp-desktop-file.h (nadp_desktop_file_remove_key):
1253         New function.
1255         * src/io-desktop/nadp-writer.c (nadp_iio_provider_write_item):
1256         Remove key when it is no more set.
1258         * src/api/na-object-api.h
1259         (na_object_get_description, na_object_set_description): New macros.
1261         * src/nact/nact-iaction-tab.c:
1262         * src/nact/nautilus-actions-config-tool.ui: Add description entry.
1264         * src/io-desktop/nadp-keys.h: Remove unused keys.
1266         * src/io-desktop/nadp-reader.c (nadp_reader_ifactory_provider_read_done):
1267         Explicitly read subitems string list.
1269         * src/io-desktop/nadp-desktop-provider.c (ifactory_provider_iface_init):
1270         * src/io-desktop/nadp-writer.c:
1271         * src/io-desktop/nadp-writer.h (nadp_writer_ifactory_provider_write_done):
1272         New function: explicitly write subitems string list for actions and menus.
1274 2010-03-28 Pierre Wieser <pwieser@trychlos.org>
1276         * src/api/na-data-boxed.h:
1277         * src/core/na-data-boxed.c (na_data_boxed_set_default): Removed function.
1279         * src/core/na-factory-object.c (set_defaults_iter):
1280         Only set a default value when the box has not been yet allocated.
1282         * src/api/na-ifactory-object.h:
1283         * src/core/na-ifactory-object.c (na_ifactory_object_get_data_groups):
1284         New function.
1286         * src/core/na-object-item-factory.c:
1287         * src/core/na-object-action.c (instance_init):
1288         * src/core/na-object-menu.c (instance_init):
1289         No more instantiate 'type' data box.
1291         * src/core/na-object-item-factory.c:
1292         NAFO_DATA_TYPE is no more automatically readen nor written.
1294         * src/io-desktop/nadp-desktop-provider.c (ifactory_provider_iface_init):
1295         Implement data writing.
1297         * src/io-desktop/nadp-keys.c:
1298         * src/io-desktop/nadp-keys.h (nadp_keys_get_group_and_key):
1299         Removed function.
1301         * src/io-desktop/nadp-reader.c
1302         (item_from_desktop_path): Test default value first.
1303         (nadp_reader_ifactory_provider_read_data): Use new desktop_entry field.
1305         * src/io-desktop/nadp-writer.c:
1306         * src/io-desktop/nadp-writer.h (nadp_writer_ifactory_provider_write_start,
1307         nadp_writer_ifactory_provider_write_data): New functions.
1309         * src/io-gconf/nagp-writer.c (nagp_writer_write_start):
1310         Explicitely write item type.
1312         * src/io-desktop/nadp-desktop-file.c:
1313         * src/io-desktop/nadp-desktop-file.h
1314         (nadp_desktop_file_set_boolean, nadp_desktop_file_set_locale_string,
1315         nadp_desktop_file_set_string, nadp_desktop_file_set_string_list,
1316         nadp_desktop_file_set_uint): New functions.
1318         * src/api/na-core-utils.h:
1319         * src/core/na-core-utils.c (na_core_utils_slist_to_array):
1320         New function.
1322 2010-03-26 Pierre Wieser <pwieser@trychlos.org>
1324         * src/api/na-data-def.h:
1325         * src/core/na-icontextual-factory.c:
1326         * src/core/na-object-id-factory.c:
1327         * src/core/na-object-item-factory.c:
1328         * src/core/na-object-action-factory.c:
1329         * src/core/na-object-profile-factory.c:
1330         Define the key for .desktop file.
1332         * src/io-gconf/nagp-writer.c (nagp_writer_write_data):
1333         Remove blank line.
1335         * src/io-desktop/nadp-desktop-provider.c:
1336         * src/io-desktop/nadp-reader.c:
1337         * src/io-desktop/nadp-reader.h
1338         (nadp_reader_ifactory_provider_read_start): Removed unused function.
1340         * src/io-desktop/nadp-desktop-file.c:
1341         * src/io-desktop/nadp-desktop-file.h
1342         (check_key_file): Check that we don't have a 'Hidden=true' key.
1343         (nadp_desktop_file_get_profiles): New function.
1345         * src/io-desktop/nadp-desktop-provider.c:
1346         * src/io-desktop/nadp-desktop-provider.h:
1347         Move reader functions and structure to nadp-reader.c.
1349         * src/io-desktop/nadp-keys.h:
1350         Relabel type of items in .desktop file (cf. draft 0.9).
1352         * src/io-desktop/nadp-reader.c:
1353         * src/io-desktop/nadp-reader.h:
1354         Read profiles present in the .desktop file.
1356 2010-03-26 Pierre Wieser <pwieser@trychlos.org>
1358         * src/io-desktop/nadp-desktop-file.c:
1359         * src/io-desktop/nadp-desktop-file.h
1360         (check_key_file): Check that we don't have a 'Hidden=true' key.
1361         (nadp_desktop_file_get_profiles): New function.
1363         * src/io-desktop/nadp-desktop-provider.c:
1364         * src/io-desktop/nadp-desktop-provider.h:
1365         Move reader functions and structure to nadp-reader.c.
1367         * src/io-desktop/nadp-keys.h:
1368         Relabel type of items in .desktop file (cf. draft 0.9).
1370         * src/io-desktop/nadp-reader.c:
1371         * src/io-desktop/nadp-reader.h:
1372         Read profiles present in the .desktop file.
1374 2010-03-26 Pierre Wieser <pwieser@trychlos.org>
1376         * configure.ac: Bump version number for data branch.
1378 2010-03-26 Pierre Wieser <pwieser@trychlos.org>
1380         Releasing 2.30.0.
1382 2010-03-25 Pierre Wieser <pwieser@trychlos.org>
1384         * src/nact/nact-main-menubar-edit.c:
1385         * src/nact/nact-main-menubar-edit.h:
1386         * src/nact/nact-main-menubar-file.c:
1387         * src/nact/nact-main-menubar-file.h:
1388         * src/nact/nact-main-menubar-view.c:
1389         * src/nact/nact-main-menubar-view.h: New files.
1391         * po/POTFILES.in:
1392         * src/nact/Makefile.am: Updated accordingly.
1394         * src/nact/nact-main-window.c
1395         (ipivot_consumer_on_mandatory_prefs_changed):
1396         Implement NAIPivotConsumer notification.
1398         * src/nact/nact-sort-buttons.c:
1399         * src/nact/nact-sort-buttons.h
1400         (nact_sort_buttons_level_zero_writability_change):
1401         Enable/disable the buttons depending of the level zero writability
1402         status.
1404 2010-03-24 Pierre Wieser <pwieser@trychlos.org>
1406         * src/core/na-ipivot-consumer.c
1407         (na_ipivot_consumer_notify_of_mandatory_prefs_changed) : New function.
1408         (on_mandatory_prefs_changed): New interface API.
1410         * src/core/na-pivot.c (monitor_runtime_preferences):
1411         Monitor the mandatory preferences set by the admin.
1413         * src/nact/nact-main-window.c (ipivot_consumer_iface_init):
1414         * src/plugin-menu/nautilus-actions.c (ipivot_consumer_iface_init):
1415         For now, only declare NULL implementations.
1417         * src/nact/nact-preferences-editor.c (on_base_runtime_init_dialog):
1418         * src/nact/nact-sort-buttons.c (nact_sort_buttons_runtime_init):
1419         Forbid the modification of order mode is level zero is not writable.
1421         * src/core/na-pivot.c (na_pivot_is_level_zero_writable):
1422         Writable if not all not GConf are locked by admin.
1424         * src/nact/nact-iaction-tab.c (nact_iaction_tab_runtime_init_toplevel):
1425         * src/nact/nact-iadvanced-tab.c (runtime_init_connect_signals):
1426         * src/nact/nact-icommand-tab.c (nact_icommand_tab_runtime_init_toplevel):
1427         * src/nact/nact-iconditions-tab.c (nact_iconditions_tab_runtime_init_toplevel):
1428         * src/nact/nact-ifolders-tab.c (nact_ifolders_tab_runtime_init_toplevel):
1429         * src/nact/nact-main-tab.h:
1430         Signal TAB_UPDATABLE_SIGNAL_SELECTION_CHANGED is renamed as
1431         MAIN_WINDOW_SIGNAL_SELECTION_CHANGED.
1433         * src/nact/nact-main-menubar.c:
1434         * src/nact/nact-main-menubar.h
1435         (nact_main_menubar_is_level_zero_order_changed): New function.
1437         * src/nact/nact-iactions-list.h:
1438         * src/nact/nact-iactions-list-bis.c (nact_iactions_list_bis_delete):
1439         Add an argument to select the row at end of the function.
1441         * src/nact/nact-main-window.c:
1442         Connect to MAIN_WINDOW_SIGNAL_LEVEL_ZERO_ORDER_CHANGED to update
1443         dialog title.
1445         * src/nact/nact-iactions-list.c:
1446         * src/nact/nact-iactions-list.h
1447         (selection_changed): Remove the not used API.
1448         Remove the connection to the signal and the call to the interface.
1450         * src/nact/nact-assistant-export.c (iactions_list_iface_init):
1451         Use the IACTIONS_LIST_SIGNAL_SELECTION_CHANGED instead of the
1452         interface API.
1454         * src/nact/nact-main-window.c
1455         (ipivot_consumer_on_display_order_changed):
1456         Relay NAIPivotConsumer notification to nact_sort_buttons.
1458         * src/nact/nact-sort-buttons.c:
1459         * src/nact/nact-sort-buttons.h
1460         (nact_sort_buttons_display_order_change): New function.
1462         * src/nact/nact-main-menubar.c (save_item):
1463         Not only unref old origin, but also remove it from tree.
1465 2010-03-23 Pierre Wieser <pwieser@trychlos.org>
1467         Add buttons to sort the list.
1469         * src/nact/nact-sort-buttons.c:
1470         * src/nact/nact-sort-buttons.h: New files.
1472         * src/nact/Makefile.am:
1473         * src/nact/nact-main-window.c: Updated accordingly.
1475         * src/nact/nautilus-actions-config-tool.ui:
1476         Define three new buttons to help to sort the list of items.
1478         * src/core/Makefile.am:
1479         No more give a version number to the core library.
1481         Restore the target-location indicator.
1483         * src/api/na-ifactory-object-data.h:
1484         * src/core/na-object-action-factory.c:
1485         Renamed NAFO_DATA_TARGET_BACKGROUND as NAFO_DATA_TARGET_LOCATION.
1487         * src/api/na-object-api.h
1488         (na_object_is_target_location, na_object_set_target_location):
1489         New macros.
1491         * src/api/na-object-item.h:
1492         * src/plugin-menu/nautilus-actions.c (menu_provider_get_background_items):
1493         Renamed ITEM_TARGET_BACKGROUND as ITEM_TARGET_LOCATION.
1495         * src/core/na-icontextual-factory.c:
1496         * src/core/na-object-action-factory.c:
1497         * src/core/na-object-item-factory.c:
1498         Update data descriptions.
1500         * src/core/na-icontextual.c (is_target_background_candidate):
1501         Renamed as is_target_location_candidate().
1503         * src/core/na-object-action.c (na_object_action_is_candidate):
1504         Only selects the action if it is candidate for this target.
1506         * src/nact/nact-iaction-tab.c (on_tab_updatable_selection_changed):
1507         * src/nact/nautilus-actions-config-tool.ui:
1508         Display the target-location checkbox.
1510         * src/utils/nautilus-actions-new.c:
1511         Let the user select the target-location boolean indicator.
1513 2010-03-22 Pierre Wieser <pwieser@trychlos.org>
1515         * src/core/na-icontextual.c
1516         (is_current_folder_inside): Compare path rather that URI.
1517         (is_target_selection_candidate): Fix NASelectedInfo addressing.
1519         * src/plugin-menu/nautilus-actions.c
1520         (get_file_or_background_items): New function.
1521         (build_nautilus_menus, get_candidate_profile): Add debug messages.
1523         * src/core/na-selected-info.c (query_file_attributes):
1524         Fix file_info_get_attribute.
1526         * src/core/na-object-action.c (na_object_action_is_candidate):
1527         Considere background menu just as a special case of selection menu.
1529         * data/.gitignore: Update .gitignore.
1531 2010-03-17 Pierre Wieser <pwieser@trychlos.org>
1533         * data/Makefile.am: Automatically generate configurations schemas.
1535         * data/nautilus-actions.schemas.in:
1536         Renamed as data/nautilus-actions-prefs.schemas.in.
1537         Remove configurations schemas (now dynamically generated).
1539         * po/POTFILES.in: Updated accordingly.
1541         * src/core/na-icontextual-factory.c:
1542         * src/core/na-object-action-factory.c: Fix typo.
1544         * src/utils/nautilus-actions-schemas.c:
1545         Output configurations schemas to stdout.
1547         * po/POTFILES.skip:
1548         New file: do not try to translate dynamically generated schema.
1550         * Makefile.am:
1551         Build data/ after src/ to bo take advantage of dynamic generation of schemas.
1553         * src/core/na-icontextual-factory.c:
1554         String lists are now initialized in GConf-style.
1556         * src/io-gconf/nagp-writer.c (nagp_writer_write_data):
1557         * src/io-xml/naxml-writer.c (write_data_schema_v2, write_data_dump):
1558         Do not output empty values.
1560         * src/api/na-data-boxed.h:
1561         * src/core/na-data-boxed.c (na_data_boxed_is_set): New function.
1563         * data/nautilus-actions.schemas.in:
1564         Fix typo.
1565         Add io-providers/read-at-startup and io-providers/writable keys.
1567         * src/nact/nact.desktop.in: Add StartupNotify=true.
1569         * src/nact/nact-main-window.c (reload):
1570         Free the deleted list before filling the tree.
1572         * src/nact/nact-main-menubar.c
1573         (on_cut_activated): Do not cut not deletable items.
1574         (get_deletables): Add a ref on items to delete.
1576         * src/test/init-dispose-diff.sh:
1577         Do not take into account some debug messages.
1579 2010-03-16 Pierre Wieser <pwieser@trychlos.org>
1581         * src/utils/nautilus-actions-new.c
1582         (output_to_dir): Output the new action to a file.
1584         * src/core/na-core-utils.c (info_dir_is_writable):
1585         Do not emit a warning on 'no such file or directory' error.
1587         * src/utils/nautilus-actions-new.c
1588         (output_to_stdout): Output the new action to stdout.
1589         (output_to_gconf): Output the new action to GConf.
1591         * src/io-xml/naxml-writer.c (naxml_writer_write_start):
1592         Add attribute to list node, thus fixing writing of action.
1594 2010-03-15 Pierre Wieser <pwieser@trychlos.org>
1596         * src/io-xml/naxml-writer.c (naxml_writer_write_start):
1597         No need to explicitely write item type as the data is marked writable.
1599         * src/utils/nautilus-actions-new.c:
1600         Cleanup old command-line code.
1601         Check for incompatibility between boolean arguments.
1603         * src/api/na-data-def.h (na_data_def_get_data_def): New function.
1605         * src/core/na-data-def.c: New file.
1607         * src/core/Makefile.am: Updated accordingly.
1609         * src/core/na-icontextual-factory.c:
1610         * src/core/na-object-profile-factory.c:
1611         Update command-line options to not have duplicates.
1613         * src/utils/nautilus-actions-new.c:
1614         Use new ArgFromDataDef structure and display suitable help.
1616         * src/core/na-icontextual-factory.c:
1617         * src/core/na-object-action-factory.c:
1618         * src/core/na-object-item-factory.c:
1619         * src/core/na-object-profile-factory.c:
1620         * src/utils/nautilus-actions-new.c:
1621         Update data definitions to handle command-line arguments.
1623 2010-03-10 Pierre Wieser <pwieser@trychlos.org>
1625         * src/utils/nautilus-actions-new.c:
1626         Define a structure to host NADataDef argument definitions.
1628         * src/api/na-data-def.h:
1629         Add parameters to be able to manage command-line arguments.
1631         * src/core/na-icontextual-factory.c:
1632         * src/core/na-object-action-factory.c:
1633         * src/core/na-object-id-factory.c:
1634         * src/core/na-object-item-factory.c:
1635         * src/core/na-object-profile-factory.c: Updated accordingly.
1637         * src/core/na-io-provider.c (build_hierarchy):
1638         Attach the child item to its parent.
1640         * src/core/na-object-id.c (instance_dispose):
1641         * src/core/na-object-item.c (instance_dispose):
1642         * src/core/na-object.c (instance_dispose):
1643         Add debug messages.
1645         * src/core/na-dbus-tracker.h: Remove no more used file.
1647         * src/core/Makefile.am: Updated accordingly.
1649         * src/core/na-icontextual.c:
1650         * src/core/na-object-profile.c:
1651         * src/plugin-tracker/na-tracker-dbus.c:
1652         * src/utils/nautilus-actions-run.c:
1653         Remove all references to NATrackedItem obsolete class.
1655         * src/api/na-ifactory-object-data.h:
1656         Rename v1 action data group to NA_FACTORY_ACTION_V1_GROUP.
1658         * src/core/na-object-action-factory.c:
1659         No more try to read obsolete NAFO_DATA_TARGET_BACKGROUND data.
1661         * src/plugin-tracker/na-tracker.c
1662         (menu_provider_get_background_items):
1663         Implement Nautilus get_background_items() interface.
1665         * data/nautilus-actions.schemas.in:
1666         Remove 'target-background' entry description.
1668         * src/api/na-object-api.h
1669         (na_object_is_target_background): Removed macro.
1671         * src/api/na-object-profile.h
1672         * src/core/na-object-profile.c
1673         (na_object_profile_is_target_background): Removed function.
1675 2010-03-09 Pierre Wieser <pwieser@trychlos.org>
1677         * src/io-gconf/nagp-writer.c (nagp_writer_write_data):
1678         Replace gconf_concat_dir_and_key by g_strdup_printf.
1680         * src/core/na-ifactory-provider.c (na_ifactory_provider_write_item):
1681         Add a debug trace when entering in the function.
1683         * src/api/na-icontext-conditions.h: Renamed as na-icontextual.h.
1684         * src/core/na-icontext-conditions.c: Renamed as na-icontextual.c.
1685         * src/core/na-icontext-conditions-factory.c:
1686         Renamed as na-icontextual-factory.c.
1688         * po/POTFILES.in:
1689         * src/api/Makefile.am:
1690         * src/api/na-icontextual.h:
1691         * src/api/na-object-api.h:
1692         * src/core/Makefile.am:
1693         * src/core/na-icontextual.c:
1694         * src/core/na-object-action.c:
1695         * src/core/na-object-profile.c:
1696         * src/plugin-menu/nautilus-actions.c:
1697         * src/utils/nautilus-actions-run.c: Updated accordingly.
1699 2010-03-09 Pierre Wieser <pwieser@trychlos.org>
1701         Refactor NactIBackgroundTab class as NactIFoldersTab.
1703         * src/nact/nact-ibackground-tab.c:
1704         * src/nact/nact-ibackground-tab.h: Renamed as nact-ifolders-tab.{c,h}.
1706         * src/nact/Makefile.am:
1707         * src/nact/nact-main-tab.h:
1708         * src/nact/nact-main-window.c: Updated accordingly.
1710         Remove the 'target background' indicator which was introduced in 2.29.1.
1712         * src/core/na-object-action-factory.c:
1713         Update properties for NAFO_DATA_TARGET_BACKGROUND.
1715         * src/nact/nact-iaction-tab.c
1716         (nact_iaction_tab_runtime_init_toplevel): Remove the signal connection.
1717         (on_tab_updatable_selection_changed): Remove fields initialization.
1718         (on_target_background_toggled): Remove the function.
1720         * src/nact/nact-ibackground-tab.c (tab_set_sensitive):
1721         Always sensitive for profiles.
1723         * src/nact/nautilus-actions-config-tool.ui: Remove the fields.
1725         * src/core/na-object-action-factory.c:
1726         data_def_action_v1 is now available from outside.
1728         * src/core/na-object-action.c
1729         (ifactory_object_read_done, ifactory_object_write_done):
1730         Rewrite input/output functions.
1732         * src/io-gconf/nagp-reader.c
1733         (nagp_reader_read_data): Simplify the code.
1735         * src/io-gconf/nagp-writer.c
1736         (nagp_writer_write_start): No more write type as this is a normal data.
1737         (nagp_writer_write_data): Rewrite profile writing.
1738         (nagp_writer_write_done): Profile writing is now driven by NAObjectAction.
1740         * src/nact/nact-tree-model-dnd.c: Cleanup the code.
1742 2010-03-05 Pierre Wieser <pwieser@trychlos.org>
1744         * nact/nact-tree-model-dnd.c (drop_inside):
1745         Split to three functions to better readibility.
1746         Fix drop inside an empty menu.
1747         Fix drop into a non writable parent.
1749         * src/api/na-iio-provider.h: Add a comment.
1751         * src/core/na-io-provider.c:
1752         * src/core/na-io-provider.h (na_io_provider_get_return_code_label):
1753         New function.
1755         * src/nact/nact-window.c (nact_window_save_item):
1756         Better error message.
1758         * src/nact/nact-export-ask.c (on_base_runtime_init_dialog):
1759         Set more clear label, whether the item be a label or an action.
1761         * src/nact/nact-tree-model-dnd.c (get_xds_atom_value):
1762         Remove debug traces after validation both on 32 and 64 bits systems.
1764         * src/api/na-core-utils.h:
1765         * src/core/na-core-utils.c
1766         (na_core_utils_slist_join_at_end): New function.
1768         * src/api/na-iio-provider.h: Fix typo in comment.
1770         * src/nact/nact-main-menubar.c (on_delete_activated):
1771         Do not delete a tree if at least one item is not writable.
1773         * src/nact/nact-tree-model-dnd.c (get_xds_atom_value):
1774         Fix 64 bits value.
1776         * src/plugin-menu/nautilus-actions.c
1777         (create_item_from_menu): Add a trace on weak notify.
1779 2010-03-04 Pierre Wieser <pwieser@trychlos.org>
1781         * src/core/na-object-action.c (instance_init):
1782         * src/core/na-object-menu.c (instance_init):
1783         Rather create the 'Type' box here than in read_start().
1785 2010-03-03 Pierre Wieser <pwieser@trychlos.org>
1787         * src/core/Makefile.am:
1788         * src/nact/Makefile.am: Fix make distcheck.
1790         * po/POTFILES.in: Updated.
1792         Rename the NAIConditions interface to NAIContextConditions
1793         (hopefully, there will be a NAIContextParameters some day :)).
1795         * src/core/na-iconditions-factory.c:
1796         Renamed as src/core/na-icontext-conditions-factory.c.
1798         * src/core/na-iconditions.c:
1799         Renamed as src/core/na-icontext-conditions.c.
1801         * src/api/na-iconditions.h:
1802         Renamed as src/core/na-icontext-conditions.h.
1804         * src/api/Makefile.am:
1805         * src/core/Makefile.am: Updated accordingly.
1807         * src/core/na-object-profile.c:
1808         * src/plugin-menu/nautilus-actions.c:
1809         Use new na_icontext_conditions_is_candidate() function.
1811         Define the NAIConditions interface, to be implemented by actions,
1812         profiles and menus (for now, only profiles).
1814         * src/api/na-iconditions.h:
1815         * src/core/na-iconditions.c:
1816         * src/core/na-iconditions-factory.c: New files.
1818         * src/api/Makefile.am:
1819         * src/core/Makefile.am: Updated accordingly.
1821         * src/api/na-ifactory-object-data.h:
1822         Define the NA_FACTORY_CONDITIONS_GROUP data group.
1824         * src/core/na-object-profile-factory.c:
1825         Use new data_def_conditions.
1827         * src/core/na-object-profile.c (register_type):
1828         Implement the new NAIConditions interface.
1830         Review the rationales, replacing serializable+obsoleted by
1831         readable+writable flags in NADataDef structure.
1833         * src/api/na-data-def.h:
1834         * src/core/na-factory-object.c:
1835         * src/core/na-object-action-factory.c:
1836         * src/core/na-object-action.c:
1837         * src/core/na-object-id-factory.c:
1838         * src/core/na-object-item-factory.c:
1839         * src/core/na-object-profile-factory.c:
1840         * src/io-desktop/nadp-desktop-provider.c: Updated accordingly.
1842         * src/plugin-tracker/na-tracker-dbus.c (instance_dispose):
1843         Release selected items in instance_dispose() rather than in
1844         instance_finalize() which caused a FPE in Nautilus terminaison.
1846         * src/api/na-ifactory-object.h:
1847         * src/core/na-ifactory-object.c:
1848         * src/core/na-iio-provider.c:
1849         * src/io-desktop/nadp-desktop-file.c:
1850         * src/io-desktop/nadp-desktop-file.h:
1851         * src/io-xml/naxml-writer.c:
1852         * src/io-xml/naxml-writer.h:
1853         * src/nact/nact-iadvanced-tab.c:
1854         * src/nact/nact-main-menubar.c:
1855         * src/utils/nautilus-actions-new.c: Cleanup the code.
1857         * src/nact/nact-assistant-export.c (assist_prepare_confirm):
1858         Optimize the build of the displayed text.
1860         * src/nact/nact-assistant-export.c (on_all_widgets_showed):
1861         Select and expand the first row of the list.
1863         * src/core/na-module.c (add_module_type):
1864         * src/io-desktop/nadp-reader.c (na_ifactory_provider_read_item):
1865         * src/io-desktop/nadp-writer.c (nadp_iio_provider_write_item):
1866         * src/nact/nact-export-format.c (draw_in_vbox):
1867         Add a weak_notify() local function in order to be able to trace
1868         the dispose of attached objects.
1870         * src/api/na-core-utils.h:
1871         * src/core/na-core-utils.c
1872         (na_core_utils_str_remove_char): New function.
1874         * src/api/na-iexporter.h:
1875         Onlu reference one short label in NAIExporterFormat structure.
1877         * src/core/na-export-format.c:
1878         * src/core/na-export-format.h:
1879         * src/io-xml/naxml-formats.c: Updated accordingly.
1881         * src/nact/base-window.c (setup_builder):
1882         Display a dialog error when unable to load a XML definition.
1884         * src/nact/nact-assistant-export.c:
1885         * src/nact/nact-assistant-export.ui:
1886         * src/nact/nact-assistant-import.c:
1887         Adjust the display to be more funny.
1889         * src/nact/nact-clipboard.c:
1890         Add na-export-format.h include file.
1892         * src/nact/nact-export-ask.c:
1893         * src/nact/nact-export-format.c:
1894         * src/nact/nact-export-format.h:
1895         Reference the NAExportFormat object instead of each and every label.
1897         * src/nact/nact-iprefs.h:
1898         Remove IPREFS_EXPORT_FORMAT_ASK definition.
1900         * src/nact/nact-preferences-editor.c:
1901         * src/nact/nautilus-actions-config-tool.ui:
1902         Use (renamed) nact_export_format_init_display() function.
1904         * src/api/na-core-utils.h:
1905         * src/core/na-core-utils.c (na_core_utils_file_exists):
1906         New function.
1908         * src/io-xml/naxml-writer.c: Export to file.
1910         * po/POTFILES.in: Updated.
1912         * src/api/na-data-types.h
1913         (na_data_types_get_gconf_dump_key): New function.
1915         * src/core/na-data-types.c: New file.
1917         * src/core/Makefile.am: Updated accordingly.
1919         * src/api/na-ifactory-object-data.h:
1920         * src/core/na-object-item-factory.c:
1921         (NAFO_DATA_TYPE): New elementary data.
1923         * src/core/na-ifactory-object.c:
1924         * src/api/na-ifactory-object.h
1925         (na_ifactory_object_get_data_boxed): New function.
1927         * src/core/na-core-utils.c (na_core_utils_dir_is_writable_uri):
1928         Give a better name to the parameter.
1930         * src/core/na-exporter.c:
1931         * src/core/na-exporter.h (na_exporter_to_buffer, na_exporter_to_file):
1932         Reorder of functions in the files.
1934         * src/core/na-factory-object.c:
1935         * src/core/na-factory-object.h:
1936         Now use the new na_ifactory_object_get_data_boxed() function.
1938         * src/core/na-object-action-factory.c:
1939         * src/core/na-object-profile-factory.c:
1940         * src/io-xml/naxml-keys.h:
1941         Move the schema descriptions to data factory.
1943         * src/core/na-object-action.c:
1944         * src/core/na-object-menu.c:
1945         (ifactory_object_read_start): Allocate the 'type' data boxed.
1947         * src/io-gconf/nagp-keys.h: Fix the path of the schemas.
1949         * src/io-xml/naxml-formats.c:
1950         * src/io-xml/naxml-formats.h: New files.
1952         * src/io-xml/Makefile.am: Updated accordingly.
1954         * src/io-xml/naxml-provider.c: Implement NAXMLWriter calls.
1956         * src/io-xml/naxml-writer.c:
1957         * src/io-xml/naxml-writer.h: Export to buffer.
1959         * src/nact/nact-clipboard.c
1960         (nact_clipboard_dnd_drag_end): Fix gtk_selection_data_free() call.
1961         (export_row_object): Also exports menus.
1963         * src/nact/nact-tree-model-dnd.c
1964         (nact_tree_model_dnd_imulti_drag_source_drag_data_get):
1965         Fix and parse the returned URI to get the path of the target folder.
1967 2010-03-01 Pierre Wieser <pwieser@trychlos.org>
1969         * po/POTFILES.in: Add src/core/na-exporter.c file.
1971         * src/api/na-iexporter.h: Refactor NAIExporter interface.
1973         * src/core/na-export-format.c:
1974         * src/core/na-export-format.h
1975         (na_export_format_get_exporter): New function.
1977         * src/core/na-exporter.c:
1978         * src/core/na-exporter.h:
1979         * src/core/na-iexporter.c:
1980         * src/core/na-importer.c:
1981         * src/io-xml/naxml-provider.c:
1982         * src/nact/nact-assistant-export.c:
1983         * src/nact/nact-clipboard.c: Updated accordingly.
1985         * src/api/na-iexporter.h:
1986         * src/core/na-export-format.c:
1987         * src/core/na-export-format.h:
1988         * src/core/na-exporter.c:
1989         * src/core/na-iexporter.c:
1990         * src/io-xml/naxml-provider.c:
1991         * src/nact/nact-export-format.c:
1992         NAExporterStr structure is renamed as NAIExporterFormat.
1994         * src/api/na-iimporter.h (from_uri):
1995         Rename the API function to be consistant with NAIExporter interface.
1997         * src/core/na-iimporter.c:
1998         * src/io-xml/naxml-provider.c: Updated accordingly.
2000         * src/nact/nact-tree-model-dnd.c
2001         (nact_tree_model_dnd_imulti_drag_source_drag_data_get):
2002         Target folder is an URI.
2004         * src/nact/nact-main-menubar-tools.c:
2005         * src/nact/nact-main-menubar-tools.h: New files.
2007         * src/nact/nact-main-menubar-maintainer.c:
2008         * src/nact/nact-main-menubar-maintainer.h: New files.
2010         * src/nact/nact-main-menubar.c (on_update_sensitivities):
2011         Only paste a NAObjectItem into a menu.
2013         * src/nact/nact-main-menubar-help.c:
2014         * src/nact/nact-main-menubar-help.h: New files.
2016         * src/nact/Makefile.am:
2017         * src/nact/nact-main-menubar.c:
2018         * src/nact/nact-main-menubar.h: Updated accordingly.
2020         * src/core/na-updater.c:
2021         * src/core/na-updater.h (na_updater_append_item): New function.
2023         * src/nact/nact-main-menubar.c (save_item): Fix save machinery.
2025         * src/nact/nact-assistant-import.c
2026         (check_for_existance): Directly use the main window.
2028         * src/nact/nact-tree-model-dnd.c (drop_uri_list):
2029         Adapt to use na_importer_import_from_list() function.
2030         Display messages in a dialog box.
2031         Split the selection data on a '\r\n' separator.
2033         * src/api/na-iimporter.h (NAIImporterListParms): New structure.
2035         * src/core/na-importer.c:
2036         * src/core/na-importer.h (na_importer_import_from_list): New function.
2038         * src/api/na-iimporter.h:
2039         * src/core/na-iimporter.c:
2040         * src/core/na-importer-ask.c:
2041         * src/core/na-importer-ask.h:
2042         * src/core/na-importer.c:
2043         * src/core/na-importer.h:
2044         * src/io-xml/naxml-reader.c:
2045         * src/io-xml/naxml-reader.h:
2046         * src/nact/nact-assistant-import.c:
2047         * src/nact/nact-tree-model-dnd.c:
2048         * src/test/test-reader.c:
2049         NAIImporterParms structure is renamed as NAIImporterUriParms.
2050         'item' member of this same structure is renamed as imported.
2052         * src/io-gconf/nagp-reader.c:
2053         * src/io-gconf/nagp-writer.c:
2054         * src/io-gconf/nagp-writer.h: Cleanup the code.
2056         * src/nact/nact-iaction-tab.c (setup_toolbar_label):
2057         Immediately update the toolbar label when it is the same that those
2058         of the action.
2060         * src/nact/nact-icommand-tab.c (parse_parameters):
2061         Fix display of a single '%' char.
2063         * src/nact/nautilus-actions-config-tool.ui:
2064         ActionIconLabelLabel field renamed as ActionToolbarLabelLabel.
2066         * src/io-gconf/nagp-reader.c (read_done_item):
2067         Only action needs to setup the parent pointer.
2069         * src/io-gconf/nagp-writer.c (nagp_writer_write_data):
2070         Only writes non-empty values.
2072         * src/core/na-object.c (na_object_object_reset_origin):
2073         No more check for the value of object origin before resetting it.
2075         * src/core/na-object-item.c
2076         (na_object_item_remove_item): Improve debug message.
2077         (copy_children): Refuse to copy when target already has children.
2079         * src/nact/nact-main-menubar.c
2080         (nact_main_menubar_save_items): Do not re-dump all the items hierarchy.
2081         (save_item): Remove old children after having created the new ones.
2083         * src/core/na-object-action.c (ifactory_object_read_done):
2084         Force toolbar label to be the same that action one if flag is set to true.
2086         * src/api/na-object-api.h: Fix minor typo.
2088 2010-02-28 Pierre Wieser <pwieser@trychlos.org>
2090         * src/io-desktop/nadp-desktop-file.c
2091         (nadp_desktop_file_get_key_file_path):
2092         No more invalidate the function.
2094         * src/api/na-ifactory-object.h:
2095         * src/core/na-object-item-factory.c:
2096         * src/nact/nact-iactions-list-bis.c:
2097         * src/nact/nact-iactions-list.h:
2098         Fix minor typo.
2100         * src/api/na-object-api.h:
2101         New na_object_copy macro (evaluates as na_object_object_copy).
2103         * src/api/na-object-item.h (na_object_item_copy): Removed function.
2105         * src/api/na-object.h:
2106         * src/core/na-object.c:.
2107         (copy): Add 'recursive' flag.
2108         (iduplicable_copy): Use na_object_copy() macro.
2109         (na_object_object_copy): New function.
2111         * src/core/na-factory-object.c (na_factory_object_copy):
2112         No more delete all NADataBoxed, but update those who already exist.
2113         (write_data_iter): Fix return code.
2115         * src/core/na-iduplicable.c (na_iduplicable_duplicate):
2116         Review the rationale, and ensure that the function is recursive.
2118         * src/core/na-object-action.c
2119         * src/core/na-object-item.c:
2120         * src/core/na-object-menu.c:
2121         * src/core/na-object-profile.c:
2122         (instance_constructed): Removed function.
2123         (ifactory_object_copy): Removed function.
2124         (object_copy): New function, implementation of NAObject::copy.
2126         * src/core/na-pivot.c (instance_dispose): Add debug message.
2128         * src/core/na-updater.c (na_updater_remove_item):
2129         Only update tree if object has no parent.
2131         * src/io-gconf/nagp-gconf-provider.c
2132         (ifactory_provider_iface_init): Address nagp_writer_write_start().
2134         * src/io-gconf/nagp-reader.c (nagp_reader_read_data): Comment debug message.
2136         * src/io-gconf/nagp-writer.c:
2137         * src/io-gconf/nagp-writer.h (nagp_writer_write_start): New function.
2138         Write the type of the NAObjectItem.
2140         * src/nact/nact-iaction-tab.c (on_tab_updatable_selection_changed):
2141         * src/nact/nact-icommand-tab.c (on_tab_updatable_selection_changed):
2142         * src/nact/nact-iconditions-tab.c (on_tab_updatable_selection_changed):
2143         As objects have defaults, no more test for null string.
2145         * src/nact/nact-main-menubar.c
2146         (nact_main_menubar_save_items): Dump after check status.
2147         (save_item): Use new na_object_copy() macro.
2149         * src/nact/nact-window.c (nact_window_save_item):
2150         Remove superfluous dumps.
2152 2010-02-27 Pierre Wieser <pwieser@trychlos.org>
2154         * src/core/na-iduplicable.c (na_iduplicable_check_status):
2155         An object without any origin is considered modified.
2157         * src/core/na-iduplicable.c (get_duplicable_str):
2158         NAIDuplicable object defaults to not modified.
2160         * src/core/na-object-item-factory.c:
2161         Pointers to list of subitems are not comparable.
2163         Rewrite the update of the pivot tree where there is a non null origin.
2164         * src/core/na-updater.c:
2165         * src/core/na-updater.h
2166         (na_updater_add_item): Removed function.
2167         (na_updater_insert_item): New function.
2169         * src/io-gconf/nagp-writer.c (nagp_writer_write_data):
2170         Fix the path of written data.
2172         * src/nact/nact-main-menubar.c (on_new_profile_activated): 
2173         Do not attach the profile as this is done by the tree model.
2174         (save_item): Copy the tree item to the pivot one if it exists.
2176         * src/core/na-object-item.c (instance_dispose):
2177         Set the subitems pointer to NULL before unreffing the children.
2179         * src/core/na-object.c (instance_finalize):
2180         Add a protection when finalizing NADataBoxed.
2182         * src/core/na-object-action.c (instance_constructed):
2183         * src/core/na-object-profile.c (instance_constructed):
2184         * src/core/na-object-menu.c (instance_constructed):
2185         Initialize NAIFactoryObject defaults here, rather than in object_new.
2187         * src/api/na-data-def.h: Remove fn_free() function pointer.
2189         * src/core/na-data-boxed.c:
2190         * src/core/na-object-action-factory.c:
2191         * src/core/na-object-id-factory.c:
2192         * src/core/na-object-profile-factory.c
2193         * src/core/na-object-item-factory.c: Updated accordingly.
2195         * src/core/na-iduplicable.c (get_duplicable_str):
2196         Initialize modification status to TRUE if origin is NULL.
2198         * src/nact/nact-tree-model.c (nact_tree_model_fill):
2199         Recheck modification and validity status of newly duplicated object.
2201 2010-02-26 Pierre Wieser <pwieser@trychlos.org>
2203         Fix references count mistakes in NACT.
2205         * src/api/na-object-api.h (na_object_unref_selected_items):
2206         New macro, more specifically targeting the tree selections.
2208         * src/core/na-factory-object.c:
2209         * src/core/na-factory-object.h (na_factory_object_finalize_instance):
2210         Renamed as na_factory_object_finalize().
2212         * src/core/na-object-action.c (instance_finalize):
2213         * src/core/na-object-item.c (instance_finalize):
2214         * src/core/na-object-menu.c (instance_finalize):
2215         * src/core/na-object-profile.c (instance_finalize):
2216         * src/core/na-object.c (instance_finalize):
2217         Move na_object_unref_selected_items() to 
2218         na_object:na_factory_object_finalize.
2220         * src/core/na-pivot.c (instance_dispose, reload_items):
2221         Use non-recursive na_object_unref_items() macro.
2223         * src/nact/nact-assistant-export.c (assist_prepare_confirm):
2224         * src/nact/nact-iactions-list.c (free_items_callback):
2225         * src/nact/nact-main-menubar.c (on_update_sensitivities):
2226         Use recursive na_object_unref_selected_items() macro.
2228         * src/nact/nact-iactions-list.c (filter_selection):
2229         Unref the got object immediately (which was the actual bug).
2231         * src/test/init-dispose-diff.sh: Fix and optimize.
2233         Fix display of modification status in NACT.
2235         * src/api/na-iduplicable.h:
2236         * src/core/na-iduplicable.c (na_iduplicable_set_modified):
2237         New function.
2239         * src/api/na-object-api.h:
2240         * src/api/na-object-item.h:
2241         * src/core/na-object-item.c (na_object_item_unref_items_rec):
2242         New function.
2244         * src/core/na-data-boxed.c (string_are_equal):
2245         * src/core/na-factory-object.c (na_factory_object_are_equal):
2246         * src/core/na-object.c (na_object_object_check_status_up):
2247         Rewrite equality tests.
2249         * src/core/na-object-action-factory.c:
2250         * src/core/na-object-item-factory.c:
2251         * src/core/na-object-profile-factory.c:
2252         * src/core/na-object-action.c:
2253         * src/core/na-object-menu.c:
2254         * src/core/na-object-profile.c:
2255         Review one more time default values and initial allocations.
2257         * src/core/na-pivot.c (instance_dispose, na_pivot_load_items:
2258         Only unref the first level of items.
2260         * src/core/na-updater.c (na_updater_remove_item):
2261         Only unref the removed object as it will take care of also unreffing
2262         its children if its reference count is correct.
2264         * src/nact/nact-iactions-list.c (display_label):
2265         Add a commented debug line.
2267         * src/test/check-po.sh: Test cpompleteness of po/POTFILES.in.
2268         * src/test/time.sh: Bench the elapsed build time.
2270 2010-02-25 Pierre Wieser <pwieser@trychlos.org>
2272         * po/POTFILES.in: Updated.
2274         * src/core/na-object-profile.c:
2275         Remove no more used default profile.
2277         * src/core/na-object-profile.c:
2278         * src/nact/nact-iactions-list.c:
2279         No more include gi18n.h.
2281         * src/api/na-ifactory-object.h:
2282         * src/core/na-ifactory-object.c:
2283         Remove get_default() function from the interface.
2285         * src/api/na-object-action.h:
2286         * src/core/na-object-action.c (na_object_action_new_with_defaults):
2287         New function.
2288         Remove ifactory_object_get_default() implementation.
2290         * src/api/na-object-menu.h:
2291         * src/core/na-object-menu.c (na_object_menu_new_with_defaults):
2292         New function.
2293         Remove ifactory_object_get_default() implementation.
2295         * src/api/na-object-profile.h:
2296         * src/core/na-object-profile.c (na_object_profile_new_with_defaults):
2297         New function.
2298         Remove ifactory_object_get_default() implementation.
2300         * src/core/na-factory-object.c:
2301         * src/core/na-factory-object.h
2302         (na_factory_object_set_defaults): New function.
2303         (na_factory_object_attach_with_default): Removed function.
2304         Cleanup the code.
2306         * src/core/na-object-action-factory.c:
2307         * src/core/na-object-item-factory.c:
2308         * src/core/na-object-profile-factory.c:
2309         Review default values.
2311         * src/nact/nact-iaction-tab.c:
2312         * src/nact/nact-icommand-tab.c:
2313         * src/nact/nact-iconditions-tab.c:
2314         Fix the display of NULL texts.
2316         * src/nact/nact-main-menubar.c:
2317         * src/utils/nautilus-actions-new.c:
2318         Allocate new objects with defaults.
2320         * src/api/na-ifactory-object.h:
2321         * src/api/na-ifactory-provider.h:
2322         * src/api/na-object-api.h:
2323         * src/api/na-object-item.h:
2324         * src/core/na-factory-object.c:
2325         * src/core/na-factory-object.h:
2326         * src/core/na-factory-provider.c:
2327         * src/core/na-factory-provider.h:
2328         * src/core/na-ifactory-provider.c:
2329         * src/core/na-object-action.c:
2330         * src/core/na-object-item.c:
2331         * src/core/na-object-menu.c:
2332         * src/core/na-object-profile.c:
2333         * src/core/na-updater.c:
2334         * src/io-gconf/nagp-gconf-provider.c:
2335         * src/io-gconf/nagp-writer.c:
2336         * src/io-gconf/nagp-writer.h:
2337         Implement NAIfactoryProvider in GConf I/O provider writer.
2339         Fix reference count errors in NACT user interface.
2341         * src/core/na-object-id.c (instance_dispose):
2342         Remove the disposing child from its parent childs list.
2344         * src/core/na-object-item-factory.c (free_items_list):
2345         * src/core/na-object-item.c (instance_dispose):
2346         * src/core/na-object.c (na_object_object_unref):
2347         Fix minor typo.
2349         * src/core/na-object-item.c (na_object_item_unref_items):
2350         Do not recursively unref objects here as this is done in dispose.
2352         * src/nact/nact-tree-model.c (nact_tree_model_dispose):
2353         Add a debug message.
2355         Make the menus exportable.
2357         * src/nact/nact-iactions-list.c:
2358         * src/nact/nact-tree-model-priv.h:
2359         * src/nact/nact-tree-model.c:
2360         * src/nact/nact-tree-model.h:
2361         Change the 'only_actions' semantic by a 'are_profiles_displayed' one.
2362         Profiles are actually stored, but not displayed.
2364         * src/nact/nact-iactions-list.c
2365         (nact_iactions_list_initial_load_toplevel):
2366         The title of the label column is no more localizable.
2368         Fix validity checks.
2370         * src/core/na-data-boxed.c
2371         (string_is_valid, locale_is_valid, slist_is_valid, pointer_is_valid,
2372         uint_is_valid): Fix individual validity checks of elementary data.
2374         * src/core/na-factory-object.c (na_factory_object_is_valid):
2375         First check for presence of mandatory data, then check present data.
2377         * src/core/na-iduplicable.c (na_iduplicable_duplicate):
2378         Also duplicate the status of the source object.
2380         * src/core/na-io-provider.c (na_io_provider_read_items):
2381         Add a comment.
2383         * src/core/na-object-item.c (na_object_item_copy):
2384         * src/core/na-object.c (na_object_object_check_status):
2385         Fix minor typo.
2387         * src/nact/nact-tree-model.c (nact_tree_model_fill):
2388         No more check status of newly duplicated objects.
2390         * src/nact/base-window.c (instance_dispose):
2391         Only set dispose after having tested for main window.
2393         * src/api/na-object-api.h:
2394         Distinguish between profile and item on get_label.
2396         * src/core/na-gtk-utils.c:
2397         * src/core/na-gtk-utils.h: New files.
2398         * src/core/Makefile.am: Updated accordingly.
2400         * src/core/na-data-boxed.c:
2401         * src/core/na-gconf-monitor.c:
2402         * src/core/na-importer-ask.c:
2403         * src/io-gconf/nagp-gconf-provider.c:
2404         * src/io-gconf/nagp-reader.c:
2405         * src/io-gconf/nagp-reader.h:
2406         Fix objects reading from GConf.
2408         * src/nact/nact-assistant-import.c:
2409         * src/nact/nact-iprefs.c:
2410         * src/nact/nact-preferences-editor.c:
2411         * src/nact/nact-tree-model-dnd.c:
2412         * src/utils/nautilus-actions-schemas.c:
2413         Move GConfClient to private object data, unref on dispose.
2415 2010-02-24 Pierre Wieser <pwieser@trychlos.org>
2417         * src/api/na-iimporter.h:
2418         * src/core/Makefile.am:
2419         * src/core/na-iimporter.c:
2420         * src/core/na-importer-ask.c:
2421         * src/core/na-importer-ask.h:
2422         * src/core/na-iprefs.c:
2423         * src/core/na-iprefs.h:
2424         * src/io-xml/naxml-reader.c:
2425         * src/nact/Makefile.am:
2426         * src/nact/nact-assistant-import.c:
2427         * src/nact/nact-iprefs.c:
2428         * src/nact/nact-iprefs.h:
2429         * src/nact/nact-main-window.h:
2430         * src/nact/nact-preferences-editor.c:
2431         * src/nact/nact-tree-model-dnd.c:
2432         * src/nact/nautilus-actions-config-tool.ui:
2433         * src/test/test-reader.c: ImporterAsk dialog.
2435         * src/io-xml/naxml-keys.c:
2436         * src/io-xml/naxml-keys.h:
2437         * src/io-xml/naxml-reader.c: Able to import type 3 XML files.
2439         * exports/config_1af5a47e-96d9_v1.4.schemas:
2440         * src/api/na-data-boxed.h:
2441         * src/api/na-ifactory-object-data.h:
2442         * src/core/na-data-boxed.c:
2443         * src/core/na-factory-object.c:
2444         * src/core/na-object-action.c:
2445         * src/core/na-object-id-factory.c:
2446         * src/core/na-object-item-factory.c:
2447         * src/core/na-object-profile-factory.c:
2448         * src/io-xml/naxml-provider.c:
2449         * src/io-xml/naxml-reader.c:
2450         * src/io-xml/naxml-reader.h: Able to import two profiles.
2452         * src/api/na-data-boxed.h:
2453         * src/api/na-gconf-utils.h:
2454         * src/core/na-data-boxed.c:
2455         * src/core/na-factory-object.c:
2456         * src/core/na-gconf-utils.c:
2457         Make the dump more pretty.
2459         * exports/action-5c4fa203-b5d0_post_v1.11_type_3.xml:
2460         * exports/config-4c4fa203-b5d0_post_v1.11_type_2.schema:
2461         * exports/config_1af5a47e-96d9_v1.schemas:
2462         * exports/config_2af5a47e-96d9_pre_v1.11.schemas:
2463         * exports/config_3c4fa203-b5d0_post_v1.11_type_1.schemas:
2464         Refactor export files to better suit test-reader needs.
2466         * src/api/Makefile.am:
2467         * src/api/na-data-boxed.h:
2468         * src/api/na-data-types.h:
2469         * src/api/na-gconf-utils.h:
2470         * src/api/na-ifactory-object-data.h:
2471         * src/api/na-ifactory-object.h:
2472         * src/api/na-ifactory-provider.h:
2473         * src/api/na-iimporter.h:
2474         * src/api/na-object-api.h:
2475         * src/api/na-object-profile.h:
2476         * src/core/Makefile.am:
2477         * src/core/na-data-boxed.c:
2478         * src/core/na-factory-object.c:
2479         * src/core/na-factory-object.h:
2480         * src/core/na-factory-provider.c:
2481         * src/core/na-factory-provider.h:
2482         * src/core/na-gconf-utils.c:
2483         * src/core/na-ifactory-object.c:
2484         * src/core/na-ifactory-provider.c:
2485         * src/core/na-importer.c:
2486         * src/core/na-importer.h:
2487         * src/core/na-io-provider.c:
2488         * src/core/na-object-action-factory.c:
2489         * src/core/na-object-action.c:
2490         * src/core/na-object-id-factory.c:
2491         * src/core/na-object-item-factory.c:
2492         * src/core/na-object-menu-factory.c:
2493         * src/core/na-object-menu.c:
2494         * src/core/na-object-profile-factory.c:
2495         * src/core/na-object-profile.c:
2496         * src/io-desktop/nadp-desktop-file.c:
2497         * src/io-desktop/nadp-desktop-file.h:
2498         * src/io-desktop/nadp-desktop-provider.c:
2499         * src/io-desktop/nadp-keys.c:
2500         * src/io-desktop/nadp-keys.h:
2501         * src/io-desktop/nadp-reader.c:
2502         * src/io-gconf/nagp-gconf-provider.c:
2503         * src/io-xml/naxml-keys.h:
2504         * src/io-xml/naxml-provider.c:
2505         * src/io-xml/naxml-reader.c:
2506         * src/io-xml/naxml-reader.h:
2507         * src/nact/nact-assistant-import.c:
2508         * src/nact/nact-tree-model-dnd.c:
2509         * src/test/test-include.c:
2510         * src/test/test-reader.c: Able to import a pre-v2 action.
2512 2010-02-22 Pierre Wieser <pwieser@trychlos.org>
2514         * src/api/Makefile.am:
2515         * src/api/na-ifactory-object-enum.h:
2516         * src/api/na-ifactory-object-str.h:
2517         * src/api/na-ifactory-object.h:
2518         * src/api/na-ifactory-provider.h:
2519         * src/api/na-iio-provider.h:
2520         * src/api/na-object-api.h:
2521         * src/core/Makefile.am:
2522         * src/core/na-data-element.c:
2523         * src/core/na-data-element.h:
2524         * src/core/na-factory-object.c:
2525         * src/core/na-factory-object.h:
2526         * src/core/na-ifactory-object.c:
2527         * src/core/na-ifactory-provider-priv.h:
2528         * src/core/na-ifactory-provider.c:
2529         * src/core/na-object-action-enum.c:
2530         * src/core/na-object-action.c:
2531         * src/core/na-object-id-enum.c:
2532         * src/core/na-object-item-enum.c:
2533         * src/core/na-object-item.c:
2534         * src/core/na-object-menu-enum.c:
2535         * src/core/na-object-menu.c:
2536         * src/core/na-object-profile-enum.c:
2537         * src/core/na-object-profile.c:
2538         * src/core/na-object.c:
2539         * src/io-desktop/nadp-desktop-provider.c:
2540         * src/io-desktop/nadp-desktop-provider.h:
2541         * src/io-desktop/nadp-keys.c:
2542         * src/io-desktop/nadp-keys.h:
2543         * src/io-desktop/nadp-reader.c:
2544         * src/io-desktop/nadp-writer.c:
2545         * src/io-xml/naxml-keys.h:
2546         * src/io-xml/naxml-reader.c:
2547         * src/test/test-include.c:
2548         Rename NAIDataFactory interface as NAIFactoryObject.
2550         * src/api/Makefile.am:
2551         * src/api/na-idata-factory-str.h:
2552         * src/api/na-idata-factory.h:
2553         * src/api/na-ifactory-provider-provider.h:
2554         * src/api/na-ifactory-provider.h:
2555         * src/api/na-iio-provider.h:
2556         * src/core/Makefile.am:
2557         * src/core/na-data-factory.c:
2558         * src/core/na-data-factory.h:
2559         * src/core/na-factory-provider.c:
2560         * src/core/na-factory-provider.h:
2561         * src/core/na-ifactory-provider-priv.h:
2562         * src/core/na-ifactory-provider.c:
2563         * src/core/na-object-action.c:
2564         * src/core/na-object-menu.c:
2565         * src/core/na-object-profile.c:
2566         * src/io-desktop/nadp-desktop-provider.c:
2567         * src/io-desktop/nadp-reader.c:
2568         * src/io-desktop/nadp-writer.c:
2569         * src/io-gconf/nagp-gconf-provider.c:
2570         * src/io-xml/naxml-provider.c:
2571         * src/io-xml/naxml-reader.c:
2572         Rename NAIIOFactory interface as NAIFactoryProvider.
2574         * src/core/na-io-provider.c:
2575         * src/core/na-pivot.c:
2576         * src/core/na-pivot.h:
2577         * src/nact/nact-application.c:
2578         * src/nact/nact-main-window.c:
2579         * src/plugin-menu/nautilus-actions.c:
2580         * src/utils/nautilus-actions-run.c
2581         (na_pivot_set_loadable): New function.
2582         (na_pivot_reload_items): Removed function.
2584 2010-02-21 Pierre Wieser <pwieser@trychlos.org>
2586         * src/core/na-pivot.c:
2587         * src/core/na-pivot.h:
2588         * src/core/na-updater.c:
2589         * src/core/na-updater.h:
2590         * src/nact/nact-application.c:
2591         * src/nact/nact-main-window.c:
2592         * src/plugin-menu/nautilus-actions.c:
2593         * src/test/test-reader.c:
2594         * src/utils/nautilus-actions-new.c:
2595         * src/utils/nautilus-actions-run.c:
2596         No more define the loadable set at NAPivot construction time,
2597         but deffer this when actually loading items.
2599 2010-02-20 Pierre Wieser <pwieser@trychlos.org>
2601         * po/POTFILES.in:
2602         * src/api/na-idata-factory-str.h:
2603         * src/api/na-idata-factory.h:
2604         * src/api/na-iimporter.h:
2605         * src/api/na-iio-factory.h:
2606         * src/api/na-object-api.h:
2607         * src/core/Makefile.am:
2608         * src/core/na-data-factory.c:
2609         * src/core/na-data-factory.h:
2610         * src/core/na-idata-factory.c:
2611         * src/core/na-iio-factory.c:
2612         * src/core/na-importer.c:
2613         * src/core/na-importer.h:
2614         * src/core/na-io-factory.c:
2615         * src/core/na-io-factory.h:
2616         * src/core/na-iprefs.h:
2617         * src/core/na-module.c:
2618         * src/core/na-object-action-enum.c:
2619         * src/core/na-object-action.c:
2620         * src/core/na-object-id-enum.c:
2621         * src/core/na-object-item-enum.c:
2622         * src/core/na-object-item.c:
2623         * src/core/na-object-menu-enum.c:
2624         * src/core/na-object-menu.c:
2625         * src/core/na-object-profile-enum.c:
2626         * src/core/na-object-profile.c:
2627         * src/core/na-pivot.c:
2628         * src/io-desktop/Makefile.am:
2629         * src/io-gconf/Makefile.am:
2630         * src/io-xml/Makefile.am:
2631         * src/io-xml/naxml-keys.c:
2632         * src/io-xml/naxml-keys.h:
2633         * src/io-xml/naxml-provider.c:
2634         * src/io-xml/naxml-provider.h:
2635         * src/io-xml/naxml-reader.c:
2636         * src/io-xml/naxml-reader.h:
2637         * src/nact/Makefile.am:
2638         * src/nact/nact-assistant-import.c:
2639         * src/nact/nact-import-ask.c:
2640         * src/nact/nact-iprefs.c:
2641         * src/nact/nact-preferences-editor.c:
2642         * src/nact/nact-tree-model-dnd.c:
2643         * src/plugin-menu/Makefile.am:
2644         * src/plugin-tracker/Makefile.am:
2645         * src/test/.gitignore:
2646         * src/test/Makefile.am:
2647         * src/utils/Makefile.am: Implement NAXMLReader.
2649 2010-02-18 Pierre Wieser <pwieser@trychlos.org>
2651         * src/api/na-core-utils.h:
2652         * src/api/na-idata-factory-str.h:
2653         * src/core/na-core-utils.c:
2654         * src/core/na-data-element.c:
2655         * src/core/na-data-element.h:
2656         * src/core/na-data-factory.c:
2657         * src/core/na-io-provider.c:
2658         * src/core/na-io-provider.h:
2659         * src/core/na-object-action-enum.c:
2660         * src/core/na-object-id-enum.c:
2661         * src/core/na-object-item-enum.c:
2662         * src/core/na-object-item.c:
2663         * src/core/na-object-menu-enum.c:
2664         * src/core/na-object-profile-enum.c:
2665         * src/core/na-object.c:
2666         * src/io-desktop/nadp-writer.c:
2667         * src/io-gconf/nagp-reader.c:
2668         * src/nact/nact-assistant-export.c:
2669         * src/nact/nact-iactions-list-bis.c:
2670         * src/nact/nact-main-statusbar.c:
2671         * src/nact/nact-tree-model-dnd.c:
2672         * src/nact/nact-tree-model.c:
2673         Fix non empty string list.
2674         Fix under reference in export assistant.
2675         Refactor NADataElement class.
2677         * src/core/na-exporter.c (na_exporter_get_formats):
2678         Fix infinite loop.
2680         * src/core/na-iduplicable.c (na_iduplicable_dispose):
2681         Test for effective connexion before trying to disconnect.
2683         * src/core/na-data-element.c (na_data_element_set):
2684         Fix value->type inverted assertion.
2686         * src/api/na-core-utils.h:
2687         * src/core/na-core-utils.c:
2688         * src/io-desktop/nadp-desktop-file.c:
2689         * src/io-desktop/nadp-desktop-provider.c:
2690         * src/io-desktop/nadp-xdg-dirs.c:
2691         Fix reading of localized values in the desktop file.
2693         * src/nact/base-iprefs.c:
2694         * src/nact/base-iprefs.h:
2695         * src/nact/nact-assistant-import.c:
2696         * src/nact/nact-icommand-tab.c:
2697         * src/nact/nact-import-ask.c:
2698         * src/nact/nact-iprefs.c:
2699         * src/nact/nact-iprefs.h:
2700         * src/nact/nact-main-toolbar.c:
2701         * src/nact/nact-preferences-editor.c:
2702         Fix bad inheritance of interfaces.
2704         * src/api/na-object-api.h:
2705         * src/api/na-object.h:
2706         * src/core/na-data-factory.c:
2707         * src/core/na-io-provider.c:
2708         * src/core/na-object-action.c:
2709         * src/core/na-object-id.c:
2710         * src/core/na-object-menu.c:
2711         * src/core/na-object-profile.c:
2712         * src/core/na-object.c: Fix validity check of the items.
2714 2010-02-17 Pierre Wieser <pwieser@trychlos.org>
2716         * po/POTFILES.in:
2717         * src/test/test-parse-uris.c:
2718         * src/nact/nact-preferences-editor.c:
2719         * src/nact/nact-main-statusbar.c:
2720         * src/nact/nact-iconditions-tab.c: Update list of translatable files.
2722         * src/api/na-core-utils.h:
2723         * src/api/na-idata-factory-str.h:
2724         * src/api/na-idata-factory.h:
2725         * src/api/na-iduplicable.h:
2726         * src/core/na-core-utils.c:
2727         * src/core/na-data-element.c:
2728         * src/core/na-data-element.h:
2729         * src/core/na-data-factory.c:
2730         * src/core/na-data-factory.h:
2731         * src/core/na-idata-factory.c:
2732         * src/core/na-iduplicable.c:
2733         * src/core/na-io-provider.c:
2734         * src/core/na-iprefs.c:
2735         * src/core/na-object-action-enum.c:
2736         * src/core/na-object-action.c:
2737         * src/core/na-object-id-enum.c:
2738         * src/core/na-object-item-enum.c:
2739         * src/core/na-object-menu.c:
2740         * src/core/na-object-profile-enum.c:
2741         * src/core/na-object-profile.c:
2742         * src/core/na-object.c:
2743         * src/io-desktop/nadp-desktop-provider.c:
2744         * src/io-gconf/nagp-reader.c: Add is_valid() functions.
2746         * src/utils/nautilus-actions-run.c: Restore production loadable set.
2748         * src/api/na-idata-factory.h:
2749         * src/api/na-iio-factory.h:
2750         * src/core/na-data-factory.c:
2751         * src/core/na-iio-factory.c:
2752         * src/core/na-object-action.c:
2753         * src/core/na-object-menu.c:
2754         * src/core/na-object-profile.c:
2755         * src/io-desktop/nadp-desktop-provider.c:
2756         * src/io-gconf/nagp-gconf-provider.c:
2757         * src/io-xml/naxml-provider.c:
2758         Add read_start() and write_start() to NAIIOFactory and 
2759         NAIDataFactory interfaces.
2761         * po/POTFILES.in: Update list of translatable files.
2763         * src/utils/console-utils.c:
2764         * src/utils/nautilus-actions-run.c: Update command-line utilities.
2766         * src/test/test-include.c:
2767         * src/test/test-parse-uris.c: Update test utilities.
2769         * src/plugin-tracker/na-tracker-dbus.c:
2770         * src/plugin-tracker/na-tracker.c: Update NATracker plugin.
2772         * src/core/Makefile.am:
2773         * src/core/na-updater.c:
2774         * src/core/na-updater.h:
2775         * src/nact/nact-window.c:
2776         * src/nact/nact-window.h: Update NactWindow class.
2778         * src/api/na-object-api.h:
2779         * src/api/na-object-item.h:
2780         * src/core/na-object-item.c:
2781         * src/nact/nact-tree-model-dnd.c:
2782         * src/nact/nact-tree-model.c: Update NactTreeModel class.
2784         * src/api/na-core-utils.h:
2785         * src/api/na-object-api.h:
2786         * src/api/na-object-profile.h:
2787         * src/core/na-core-utils.c:
2788         * src/core/na-object-profile.c:
2789         * src/io-gconf/nagp-reader.c:
2790         * src/nact/nact-ibackground-tab.c:
2791         * src/nact/nact-schemes-list.c: Update schemes list.
2793         * src/nact/nact-providers-list.c: Update providers list.
2795         * src/core/na-iprefs.c:
2796         * src/core/na-iprefs.h:
2797         * src/nact/nact-assistant-export.c:
2798         * src/nact/nact-export-ask.c:
2799         * src/nact/nact-export-format.c:
2800         * src/nact/nact-export-format.h:
2801         * src/nact/nact-preferences-editor.c:
2802         * src/nact/nact-preferences.ui: Update NactPreferencesEditor class.
2804         * src/nact/base-iprefs.c:
2805         * src/nact/base-iprefs.h:
2806         * src/nact/nact-main-window.c:
2807         * src/nact/nact-main-window.h: Update NactMainWindow class.
2809         * src/core/na-iprefs.c:
2810         * src/core/na-iprefs.h:
2811         * src/nact/nact-iprefs.c:
2812         * src/nact/nact-iprefs.h:
2813         * src/nact/nact-main-toolbar.c: Update toolbar.
2815         * src/api/na-iio-provider.h:
2816         * src/core/na-io-provider.c:
2817         * src/core/na-io-provider.h:
2818         * src/nact/nact-main-statusbar.c: Update status bar.
2820         * src/api/na-object-action.h:
2821         * src/api/na-object-api.h:
2822         * src/api/na-object-id.h:
2823         * src/api/na-object-item.h:
2824         * src/api/na-object-profile.h:
2825         * src/api/na-object.h:
2826         * src/core/na-object-action.c:
2827         * src/core/na-object-id.c:
2828         * src/core/na-object-item.c:
2829         * src/core/na-object-profile.c:
2830         * src/core/na-object.c:
2831         * src/core/na-pivot.c:
2832         * src/core/na-pivot.h:
2833         * src/core/na-updater.c:
2834         * src/core/na-updater.h:
2835         * src/nact/nact-export-format.c:
2836         * src/nact/nact-main-menubar.c: Update menu bar.
2838         * src/nact/nact-iprefs.c: Update NactIPrefs interface.
2840         * src/api/na-core-utils.h:
2841         * src/core/na-core-utils.c:
2842         * src/nact/nact-iconditions-tab.c:
2843         Update NactIConditionsTab interface.
2845         * src/api/na-core-utils.h:
2846         * src/core/na-core-utils.c:
2847         * src/core/na-iprefs.c:
2848         * src/core/na-iprefs.h:
2849         * src/nact/nact-icommand-tab.c:
2850         * src/nact/nact-iprefs.c:
2851         * src/nact/nact-iprefs.h: Update NactICommandTab interface.
2853         * src/api/na-object-api.h:
2854         * src/api/na-object-profile.h:
2855         * src/core/na-object-profile.c:
2856         * src/nact/nact-iaction-tab.c:
2857         * src/nact/nact-iadvanced-tab.c:
2858         * src/nact/nact-ibackground-tab.c: Update NactIBackgroundTab
2859         interface.
2861         * src/api/na-object-api.h:
2862         * src/api/na-object-item.h:
2863         * src/nact/nact-gtk-utils.c:
2864         * src/nact/nact-gtk-utils.h:
2865         * src/nact/nact-iaction-tab.c: Update NactIActionTab interface.
2867         * core/na-object-action-fn.h:
2868         * core/na-object-action-priv.h:
2869         * core/na-object-fn.h:
2870         * core/na-object-id-fn.h:
2871         * core/na-object-id-priv.h:
2872         * core/na-object-item-fn.h:
2873         * core/na-object-item-priv.h:
2874         * core/na-object-menu-fn.h:
2875         * core/na-object-menu-priv.h:
2876         * core/na-object-profile-fn.h:
2877         * core/na-object-profile-priv.h: Remove no more used files.
2879         * src/api/na-iduplicable.h:
2880         * src/api/na-object-api.h:
2881         * src/api/na-object-item.h:
2882         * src/api/na-object.h:
2883         * src/core/na-iduplicable.c:
2884         * src/core/na-object-item.c:
2885         * src/core/na-object.c:
2886         * src/nact/nact-iactions-list-bis.c:
2887         * src/nact/nact-iactions-list.c:
2888         * src/nact/nact-window.c:
2889         * src/nact/nact-window.h: Update NactIActionsList interface.
2891         * src/api/na-iduplicable.h:
2892         * src/api/na-object-api.h:
2893         * src/api/na-object-item.h:
2894         * src/core/na-exporter.c:
2895         * src/core/na-exporter.h:
2896         * src/core/na-iduplicable.c:
2897         * src/core/na-object-item.c:
2898         * src/nact/Makefile.am:
2899         * src/nact/nact-assistant-export.c:
2900         * src/nact/nact-clipboard.c:
2901         * src/nact/nact-clipboard.h:
2902         * src/nact/nact-confirm-logout.c:
2903         * src/nact/nact-export-ask.c:
2904         * src/nact/nact-export-format.c:
2905         * src/nact/nact-export-format.h:
2906         * src/nact/nact-iprefs.h:
2907         * src/nact/nact-main-menubar.h:
2908         * src/nact/nact-assistant-export.c:
2909         * src/nact/nact-assistant-export.h:
2910         * src/nact/nact-assistant-export.ui:
2911         * src/nact/nact-assistant-import.c:
2912         * src/nact/nact-import-ask.c:
2913         * src/nact/nact-import-ask.h:
2914         * src/nact/nact-iprefs.c:
2915         * src/nact/nact-iprefs.h:
2916         * src/nact/nact-tree-model.h: Update Nact classes.
2918         Refactor: move all XML code to src/io-xml plugin.
2920         * src/nact/Makefile.am:
2921         * src/nact/base-application-class.h:
2922         * src/nact/base-assistant.h:
2923         * src/nact/base-assistant.h:
2924         * src/nact/base-builder.h:
2925         * src/nact/base-dialog.h:
2926         * src/nact/base-iprefs.c:
2927         * src/nact/base-window-class.h: Update typo in Base class headers.
2929         * src/core/na-importer.c:
2930         * src/core/na-importer.h: New files.
2932         * src/core/Makefile.am:
2933         * src/core/na-iimporter.c:
2934         * src/core/na-io-provider.c:
2935         * src/core/na-iprefs.h: Update core library.
2937         * src/nact/nact-export-format.h:
2938         * src/nact/nact-export-format.c:
2939         * src/core/na-exporter.h:
2940         * src/core/na-exporter.c: Update export treatements.
2942         * src/api/na-iexporter.h:
2943         * src/core/na-iexporter.c:
2944         * src/io-xml/naxml-module.c:
2945         * src/io-xml/naxml-provider.c: Update NAIExporter interface.
2947         Define NAExportFormat new class.
2949         * src/core/na-export-format.c:
2950         * src/core/na-export-format.h: New files.
2952         Rename src/nact/nact-assistant-export-ask.{c,h} to
2953         src/nact/nact-export-ask.{c,h}
2955 2010-02-15 Pierre Wieser <pwieser@trychlos.org>
2957         Now install defined ids in docdir.
2959         * doc/export-format-id: New file.
2961         * doc/Makefile.am: Updated accordingly.
2963         Define NactIPrefs interface.
2965         * src/nact/nact-iprefs.c:
2966         * src/nact/nact-iprefs.h: New files.
2968         Update src/nact/
2969         Remove useless src/private directory.
2971         Define NAUpdater class.
2973         * src/core/na-updater.c:
2974         * src/core/na-updater.h: New files.
2976         Update src/core/na-pivot.{c,h}
2977         Update src/core/na-module.{c,h}
2978         Update src/core/na-iprefs.{c,h}
2979         Update src/core/na-ipivot-consumer.{c,h}
2980         Update src/core/na-io-factory.{c,h}
2981         Update src/core/na-io-provider.{c,h}
2982         Update src/core/na-iabout.{c,h}
2983         Update src/utils.
2985 2010-02-15 Deji Akingunola <dakingun@gmail.com>
2987         * src/test/Makefile.am: Fix typo.
2989 2010-02-15 Pierre Wieser <pwieser@trychlos.org>
2991         Update src/test.
2992         Update src/plugin-tracker.
2993         Update src/plugin-menu.
2995         Define NAIImporter interface.
2997         * src/api/na-iimporter.h:
2998         * src/core/na-iimporter.c: New files.
3000         Define NAIExporter interface.
3002         * src/api/na-iexporter.h:
3003         * src/core/na-iexporter.c: New files.
3005         * src/core/na-dbus-tracker.h: New file.
3007         Remove useless src/api/na-gconf-keys.h
3008         Update GConf I/O provider.
3009         Create src/io-gconf/nagp-keys.c
3010         Rename src/io-gconf/nagp-write.{c,h} to src/io-gconf/nagp-writer.{c,h}
3011         Rename src/io-gconf/nagp-read.{c,h} to src/io-gconf/nagp-reader.{c,h}
3013         Update I/O desktop provider.
3015         * src/io-desktop/nadp-keys.c:
3016         * src/io-desktop/nadp-keys.h: New files.
3018         Rename src/io-desktop/nadp-xdg-data-dirs.{c,h} to src/io-desktop/nadp-xdg-dirs.{c,h}
3019         Rename src/io-desktop/nadp-write.{c,h} to src/io-desktop/nadp-writer.{c,h}
3020         Rename src/io-desktop/nadp-read.{c,h} to src/io-desktop/nadp-reader.{c,h}
3022         NAObject-derived classes implement NAIDataFactory interface.
3024         * src/core/na-object-id-enum.c:
3025         * src/core/na-object-item-enum.c:
3026         * src/core/na-object-action-enum.c:
3027         * src/core/na-object-profile-enum.c:
3028         * src/core/na-object-menu-enum.c: New files.
3030         Define NADataElement class.
3032         * src/core/na-data-element.c:
3033         * src/core/na-data-element.h: New files.
3035         Define NAIDataFactory interface.
3037         * src/api/na-idata-factory.h:
3038         * src/api/na-idata-factory-enum.h:
3039         * src/api/na-idata-factory-str.h:
3040         * src/core/na-idata-factory.c:
3041         * src/core/na-data-factory.c:
3042         * src/core/na-data-factory.h: New files.
3044         Define NAIIOFactory interface.
3046         * src/api/na-iio-factory.h:
3047         * src/api/na-iio-factory-factory.h:
3048         * src/core/na-iio-factory.c:
3049         * src/core/na-io-factory.c:
3050         * src/core/na-io-factory.h: New files.
3052         Rename src/core/na-object-menu-class.h to src/api/na-object-menu.h
3053         Rename src/core/na-object-profile-class.h to src/api/na-object-profile.h
3054         Rename src/core/na-object-action-class.h to src/api/na-object-action.h
3055         Rename src/core/na-object-item-class.h to src/api/na-object-item.h
3056         Rename src/core/na-object-id-class.h to src/api/na-object-id.h
3057         Rename src/core/na-object-class.h to src/api/na-object.h
3058         Rename src/core/na-iduplicable.h to src/api/na-iduplicable.h
3059         Rename src/core/na-gconf-utils.h to src/api/na-gconf-utils.h
3060         Rename src/api/na-iio-provider.c to src/core/na-iio-provider.c
3062         * src/api/na-dbus.h: Update defined name.
3064         * m4/na-log-domains.m4: Update log domains with new subdirs.
3066         * doc/io-provider-id: Reference na-xml XML provider.
3068         Rename src/api/na-gconf-monitor.c to src/core/na-gconf-monitor.c
3069         Rename src/core/na-utils.h to src/api/na-core-utils.h
3070         Rename src/core/na-utils.c to src/core/na-core-utils.c
3072         * src/api/Makefile.am:
3073         * src/core/Makefile.am: Updated accordingly.
3075         * src/core/na-core-utils.c:
3076         * src/core/na-core-utils.h: Normalize functions names.
3078         Merge src/private/ and src/runtime to src/core/
3079         Rename src/api/na-api.h to src/api/na-extension.h
3081         * src/api/README:
3082         * src/io-desktop/nadp-module.c:
3083         * src/io-gconf/nagp-module.c:
3084         * src/runtime/na-module.c: Updated accordingly.
3086         Define XML provider as a dynamic module.
3087         
3088         * io-xml/Makefile.am:
3089         * io-xml/naxml-module.c:
3090         * io-xml/naxml-provider.c:
3091         * io-xml/naxml-provider.h: New files.
3093         Rename source tree from nautilus-actions/ to src/
3094         Rename src/io-provider-desktop/ to src/io-desktop/
3095         Rename src/io-provider-gconf/ to src/io-gconf/
3096         Rename src/plugin to src/plugin-menu/
3097         Rename src/tracker to src/plugin-tracker/
3099         * Makefile.am:
3100         * configure.ac:
3101         * po/POTFILES.in: Updated accordingly.
3103 2010-01-31 Pierre Wieser <pwieser@trychlos.org>
3105         * nautilus-actions/io-provider-desktop/nadp-desktop-file.c:
3106         * nautilus-actions/io-provider-desktop/nadp-desktop-file.h:
3107         * nautilus-actions/io-provider-desktop/nadp-read.c:
3108         * nautilus-actions/io-provider-desktop/nadp-utils.c:
3109         * nautilus-actions/io-provider-desktop/nadp-utils.h:
3110         * nautilus-actions/io-provider-gconf/nagp-read.c:
3111         Implements reading of .desktop files.
3113         * nautilus-actions/io-provider-gconf/nagp-write.c (write_item_action):
3114         Always writes the 'OBJECT_ITEM_TOOLBAR_LABEL_ENTRY' key.
3116 2010-01-30 Pierre Wieser <pwieser@trychlos.org>
3118         No more record the toolbar_same_label indicator.
3120         * nautilus-actions.schemas.in:
3121         Remove schema for 'toolbar-same-label' key.
3123         * nautilus-actions/io-provider-gconf/nagp-read.c
3124         (read_item_action_properties):
3125         No more read the 'toolbar-same-label' entry.
3127         * nautilus-actions/io-provider-gconf/nagp-write.c (write_item_action):
3128         No more write the 'toolbar-same-label' entry.
3129         Remove the key if undeeded.
3131         * nautilus-actions/nact/nact-iaction-tab.c
3132         (on_toolbar_same_label_toggled): Fix toolbar label setup.
3134         * nautilus-actions/nact/nact-xml-reader.c (apply_values):
3135         No more read OBJECT_ITEM_TOOLBAR_SAME_LABEL_ENTRY node.
3137         * nautilus-actions/runtime/na-gconf-utils.c:
3138         * nautilus-actions/runtime/na-gconf-utils.h
3139         (na_gconf_utils_remove_entry): New function.
3141         * nautilus-actions/runtime/na-xml-writer.c
3142         (create_schema_entry, create_dump_entry):
3143         No more write the 'toolbar-same-label' entry.
3145         * nautilus-actions/nact/nact-iaction-tab.c
3146         (on_tab_updatable_selection_changed):
3147         Update tab label depending on the currently selected item.
3149         * nautilus-actions/nact/nautilus-actions-config-tool.ui:
3150         No more give a special name to Action tab label.
3152         * nautilus-actions/nact/nautilus-actions-config-tool.ui:
3153         Fix Action tab layout.
3155         A full rewriting of the writability of items vs. providers.
3157         * data/nautilus-actions.schemas.in:
3158         Describe 'export-format' and 'io-providers-order' keys.
3159         Define 'mandatory/all/locked' key to lock all configuration.
3161         * doc/io-provider-id: Reserve 'all' special provider_id.
3163         * nautilus-actions/api/na-gconf-monitor.c
3164         * nautilus-actions/io-provider-desktop/nadp-desktop-file.c
3165         * nautilus-actions/io-provider-desktop/nadp-desktop-provider.c
3166         * nautilus-actions/nact/base-application.c
3167         * nautilus-actions/nact/base-assistant.c
3168         * nautilus-actions/nact/base-builder.c
3169         * nautilus-actions/nact/base-dialog.c
3170         * nautilus-actions/nact/base-window.c
3171         * nautilus-actions/nact/nact-application.c
3172         * nautilus-actions/nact/nact-assistant-export-ask.c
3173         * nautilus-actions/nact/nact-assistant-export.c
3174         * nautilus-actions/nact/nact-assistant-import-ask.c
3175         * nautilus-actions/nact/nact-assistant-import.c
3176         * nautilus-actions/nact/nact-clipboard.c
3177         * nautilus-actions/nact/nact-confirm-logout.c
3178         * nautilus-actions/nact/nact-window.c
3179         * nautilus-actions/runtime/na-module.c
3180         (instance_init, instance_dispose):
3181         Review debug messages formatting.
3183         * nautilus-actions/api/na-iio-provider.c:
3184         * nautilus-actions/api/na-iio-provider.h
3185         (is_writable): Removed API.
3186         (is_able_to_write): New API.
3187         Review operations return codes.
3188         Add provider status.
3190         * nautilus-actions/io-provider-desktop/nadp-desktop-provider.c:
3191         * nautilus-actions/io-provider-desktop/nadp-desktop-provider.h:
3192         * nautilus-actions/io-provider-desktop/nadp-read.c:
3193         * nautilus-actions/io-provider-desktop/nadp-write.c:
3194         * nautilus-actions/io-provider-desktop/nadp-write.h:
3195         * nautilus-actions/io-provider-gconf/nagp-gconf-provider.c:
3196         * nautilus-actions/io-provider-gconf/nagp-write.c:
3197         * nautilus-actions/io-provider-gconf/nagp-write.h:
3198         Updated to new NAIIOProvider API.
3200         * nautilus-actions/nact/nact-iaction-tab.c:
3201         * nautilus-actions/nact/nact-iactions-list.c:
3202         * nautilus-actions/nact/nact-iactions-list.h:
3203         * nautilus-actions/nact/nact-iadvanced-tab.c:
3204         * nautilus-actions/nact/nact-ibackground-tab.c:
3205         * nautilus-actions/nact/nact-icommand-tab.c:
3206         * nautilus-actions/nact/nact-iconditions-tab.c:
3207         * nautilus-actions/nact/nact-main-menubar.c:
3208         * nautilus-actions/nact/nact-main-tab.h:
3209         * nautilus-actions/nact/nact-main-window.c:
3210         * nautilus-actions/nact/nact-providers-list.c:
3211         * nautilus-actions/nact/nact-tree-model-dnd.c:
3212         * nautilus-actions/nact/nact-tree-model.c:
3213         * nautilus-actions/nact/nact-window.c:
3214         * nautilus-actions/nact/nact-window.h:
3215         Take advantage of the new global item writability status.
3217         * nautilus-actions/nact/nact-main-statusbar.c:
3218         * nautilus-actions/nact/nact-main-statusbar.h
3219         (nact_main_statusbar_set_locked): Display the reason.
3221         * nautilus-actions/nact/nact-iactions-list-bis.c
3222         (nact_iactions_list_bis_list_modified_items):
3223         Dump the raw content of the list.
3225         * nautilus-actions/plugin/nautilus-actions.c (instance_init):
3226         * nautilus-actions/runtime/na-pivot.c:
3227         * nautilus-actions/runtime/na-pivot.h(na_pivot_new):
3228         * nautilus-actions/utils/nautilus-actions-new.c (write_to_gconf):
3229         * nautilus-actions/utils/nautilus-actions-run.c (get_action):
3230         New na_pivot_new() signature.
3232         * nautilus-actions/private/na-object-item-fn.h:
3233         * nautilus-actions/private/na-object-item-priv.h:
3234         * nautilus-actions/private/na-object-item.c:
3235         The NAObjectItem now embeds a NAIOProvider pointer.
3237         * nautilus-actions/runtime/na-io-provider.c:
3238         * nautilus-actions/runtime/na-io-provider.h:
3239         Load all available and defined I/O providers.
3241         * nautilus-actions/test/init-dispose-diff.sh: New file.
3243 2010-01-27 Pierre Wieser <pwieser@trychlos.org>
3245         * nautilus-actions/nact/nact-preferences.ui:
3246         Fix the name of the Down button.
3247         Invert buttons so that Up is at the top, and Down at the bottom.
3249         * nautilus-actions/nact/nact-providers-list.c:
3250         Activate up/down buttons.
3251         Save the I/O providers individual preferences.
3252         Load and save in order.
3254         * nautilus-actions/runtime/na-io-provider.c:
3255         Order the I/O providers in write priority.
3257 2010-01-26 Pierre Wieser <pwieser@trychlos.org>
3259         * nautilus-actions/io-provider-gconf/nagp-read.c
3260         (nagp_iio_provider_read_items): Remove path trace.
3262         * nautilus-actions/nact/nact-application.c
3263         (appli_initialize_application):
3264         * nautilus-actions/plugin/nautilus-actions.c (instance_init):
3265         * nautilus-actions/utils/nautilus-actions-new.c (write_to_gconf):
3266         * nautilus-actions/utils/nautilus-actions-run.c (get_action):
3267         Adapt to new na_pivot_new().
3269         * nautilus-actions/nact/nact-iaction-tab.c (display_provider_name):
3270         Adapt to the temporary new NAIOProvider API.
3272         * nautilus-actions/nact/nact-preferences-editor.c:
3273         Fix compilation error by adding nact-providers-list.h include file.
3275         * nautilus-actions/nact/nact-providers-list.c:
3276         Display list of providers with their initial state.
3278         * nautilus-actions/plugin/nautilus-module.c:
3279         * nautilus-actions/tracker/na-tracker-plugin.c:
3280         (nautilus_module_initialize):
3281         Prefix the log message with "[N-A]".
3283         * nautilus-actions/runtime/na-gconf-utils.c:
3284         * nautilus-actions/runtime/na-gconf-utils.h
3285         (na_gconf_utils_get_subdirs, na_gconf_utils_free_subdirs):
3286         New functions.
3288         * nautilus-actions/runtime/na-io-provider.c:
3289         * nautilus-actions/runtime/na-io-provider.h:
3290         Refactoring to keep a static list of capable I/O providers.
3292         * nautilus-actions/runtime/na-module.c
3293         (na_module_load_modules): Only displays the name of the loaded module.
3294         (is_a_na_plugin): Add a trace with the full path of the module.
3296         * nautilus-actions/runtime/na-pivot.c:
3297         * nautilus-actions/runtime/na-pivot.h:
3298         Define loadable_set and io_provider_set as construct-only properties.
3299         Remove unused action_changed_handler stuff.
3300         No more maintain the list of capable I/O providers.
3302 2010-01-25 Pierre Wieser <pwieser@trychlos.org>
3304         * nautilus-actions/runtime/na-pivot.c:
3305         * nautilus-actions/runtime/na-pivot.h: Source reorganization.
3307         * nautilus-actions/runtime/na-pivot.c:
3308         * nautilus-actions/runtime/na-pivot.h (na_pivot_get_automatic_reload):
3309         Remove unused function.
3311         * nautilus-actions/runtime/na-pivot.c:
3312         * nautilus-actions/runtime/na-pivot.h (na_pivot_set_population):
3313         Function is renamed to na_pivot_set_loadable_population().
3314         The enum is named NAPivotLoadable.
3316         * nautilus-actions/plugin/nautilus-actions.c (instance_init):
3317         * nautilus-actions/utils/nautilus-actions-run.c (get_action):
3318         Adjusted accordingly.
3320         * nautilus-actions/runtime/na-module.c: Source slight adjustment.
3322 2010-01-23 Pierre Wieser <pwieser@trychlos.org>
3324         * nautilus-actions/nact/nact-schemes-list.c: Cleanup the source file.
3326         * nautilus-actions/nact/nact-preferences.ui:
3327         Reset tooltips in all preference pages.
3329         * nautilus-actions/nact/nact-providers-list.c:
3330         * nautilus-actions/nact/nact-providers-list.h: New files.
3332         * nautilus-actions/nact/Makefile.am: Updated accordingly.
3334         * nautilus-actions/nact/nact-preferences-editor.c:
3335         Updated to handle a sixth tab.
3337 2010-01-23 Pierre Wieser <pwieser@trychlos.org>
3339         * configure.ac: Bump version number.
3341         * All source files: Updated copyright notice.
3343 2010-01-23 Pierre Wieser <pwieser@trychlos.org>
3345         * NEWS: Updated for release.
3347         * po/POTFILES.in:
3348         Add nautilus-actions/nact/nact-preferences.ui file.
3350         * configure.ac:
3351         Add a dependancy on dbus-lib-1 for tracker.
3353         * nautilus-actions/nact/base-window.c (search_for_child_widget):
3354         Use GtkBuildable interface instead of 'name' field (fix #607704).
3356 2010-01-20 Pierre Wieser <pwieser@trychlos.org>
3358         * data/nautilus-actions.schemas.in:
3359         Add a schema for 'na-desktop/locked' mandatory key.
3361         * .gitignore:
3362         Ignore eclipse-specific files.
3364         * data/nautilus-actions.schemas.in:
3365         Fix default value for level zero key.
3366         Describe the new 'schemes' preference key.
3368         * nautilus-actions/nact/nact-preferences.ui:
3369         * nautilus-actions/nact/nact-schemes-list.c:
3370         * nautilus-actions/nact/nact-schemes-list.h: New files.
3372         * nautilus-actions/nact/nact-iadvanced-tab.c:
3373         * nautilus-actions/nact/nact-preferences-editor.c:
3374         * nautilus-actions/nact/Makefile.am: Updated accordingly.
3376 2010-01-17 Pierre Wieser <pwieser@trychlos.org>
3378         * nautilus-actions/nact/nact-assistant-export.ui:
3379         * nautilus-actions/nact/nautilus-actions-config-tool.ui:
3380         Forces default orientation of vboxes (fix #607218).
3382         * nautilus-actions/nact/nact-main-toolbar.c:
3383         * nautilus-actions/nact/nact-main-toolbar.h: New files.
3385         * nautilus-actions/nact/Makefile.am:
3386         * nautilus-actions/nact/nact-main-menubar.c: Updated accordingly.
3388 2010-01-16 Pierre Wieser <pwieser@trychlos.org>
3390         * nautilus-actions/nact/nact-clipboard.c:
3391         Fix primary clipboard management.
3393         * nautilus-actions/nact/nact-main-menubar.c     (on_update_sensitivities):
3394         Fix cut/copy/duplicate/delete sensitivity when selection is     multiple.
3396 2010-01-15 Pierre Wieser <pwieser@trychlos.org>
3398         * nautilus-actions/nact/nact-iactions-list-bis.c:
3399         * nautilus-actions/nact/nact-iactions-list.h
3400         (nact_iactions_list_bis_clear_selection): New function.
3402         * nautilus-actions/nact/nact-iactions-list.c (nact_iactions_list_fill):
3403         Clear the selection before filling the tree view.
3405         * nautilus-actions/nact/nact-main-menubar.c (on_update_sensitivities):
3406         Force the count of selected items to be consistant with the list.
3408         * nautilus-actions/nact/nact-tree-model-dnd.c (drop_inside):
3409         Dropped new item is set as new.
3411         * nautilus-actions/nact/nact-iactions-list.c (filter_selection):
3412         Review selection criteria, introducing implicit selection.
3414         * nautilus-actions/nact/nact-main-menubar.c (on_update_sensitivities):
3415         Review menu items sensitivity, especially when provider is not writable.
3416         Enable new item even when selection is multiple.
3418         * nautilus-actions/nact/nact-window.c:
3419         * nautilus-actions/nact/nact-window.h (nact_window_is_writable_item):
3420         New function.
3422 2010-01-05 Pierre Wieser <pwieser@trychlos.org>
3424         * configure.ac: Bump version number.
3426 2010-01-05 Pierre Wieser <pwieser@trychlos.org>
3428         * configure.ac: Add -Wformat=2 compilation option.
3430         * nautilus-actions/nact/nact-gtk-utils.c (nact_gtk_utils_set_editable):
3431         * nautilus-actions/nact/nact-iactions-list.c
3432         (nact_iactions_list_runtime_init_toplevel):
3433         * nautilus-actions/nact/nact-iadvanced-tab.c
3434         (runtime_init_connect_signals):
3435         * nautilus-actions/nact/nact-ibackground-tab.c
3436         (nact_ibackground_tab_runtime_init_toplevel):
3437         Substitute gtk_cell_layout_get_cells to obsoleted
3438         gtk_tree_view_column_get_cell_renderers.
3440         * nautilus-actions/runtime/na-xml-writer.c (na_xml_writer_output_xml):
3441         Use correct printf format.