Connect to Yelp
[nautilus-actions.git] / ChangeLog
blob89ab854a63cacad1e53eb5cc530d0db460eda51c
1 2010-08-02 Pierre Wieser <pwieser@trychlos.org>
3         * src/nact/nact-main-menubar-help.c (nact_main_menubar_help_on_help):
4         Connect to Yelp.
6         * configure.ac: Update comments.
8         * src/nact/nact-add-capability-dialog.c (try_for_send_ok):
9         * src/nact/nact-add-scheme-dialog.c (try_for_send_ok):
10         * src/nact/nact-main-tab.c (nact_main_tab_is_page_enabled):
11         Check that Gtk+ is more recent that 2.18 for gtk_widget_get_sensitive().
13         Split the NACT manual by chapter.
15         * doc/nact/C/nact-usage.xml:
16         * doc/nact/C/nact-prefs.xml:
17         * doc/nact/C/nact-misc.xml: New files.
19         * doc/nact/C/nautilus-actions-config-tool.xml:
20         * doc/nact/Makefile.am: Updated accordingly.
22 2010-08-01 Pierre Wieser <pwieser@trychlos.org>
24         * nact/nact-iactions-list-bis.c (nact_iactions_list_bis_insert_items):
25         A new NAObjectItem must be inserted before the current NAObjectItem.
27         * doc/README: Define a global documentation plan.
29         * doc/api/Makefile.am:
30         * doc/api/version.xml.in:
31         Define a stub for future public API documentation, targeting
32         Nautilus-Actions plugins developers.
34         * doc/internals/Makefile.am:
35         Define a stub for future internal documentation, targeting
36         Nautilus-Actions core developers.
38         * doc/product/Makefile.am:
39         Define a stub for future global Nautilus-Actions documentation.
41         * configure.ac:
42         * doc/Makefile.am: Updated accordingly.
44         * doc/nact/ChangeLog:
45         * doc/nact/nautilus-actions-config-tool.omf.in: New files.
47         * doc/nact/C/articleinfo.xml:
48         * doc/nact/C/legalnotice.xml: Included as external entities rather
49         than from xi:include because of db2omf complains.
51         * doc/nact/C/appendix-feedback.xml:
52         * doc/nact/C/appendix-gnu-fdl-1.3.xml: Add DOCTYPE declaration.
54 2010-07-31 Pierre Wieser <pwieser@trychlos.org>
56         * src/nact/nautilus-actions-config-tool.ui:
57         Review tooltips.
59         * src/nact/nact-match-list.c (on_must_not_match_clicked):
60         Fix incorrect column id.
62         * src/nact/nact-match-list.c (sort_on_column):
63         Display sort indicator.
65         * src/nact/nact-match-list.c (on_must_match_toggled):
66         Fix crash when defining a positive assertion.
68         * src/core/na-icontext.c (is_candidate_for_capabilities):
69         Implement the function.
71         * src/core/na-selected-info.c:
72         * src/core/na-selected-info.h (na_selected_info_is_executable,
73         na_selected_info_is_owner, na_selected_info_is_readable,
74         na_selected_info_is_writable): New function.
76         * src/core/na-icontext.c (is_candidate_for_folders):
77         Implement the function.
79         * src/core/na-selected-info.c:
80         * src/core/na-selected-info.h (na_selected_info_get_dirname):
81         New function.
83         * src/core/na-icontext.c (is_candidate_for_schemes):
84         Implement the function.
86         * src/core/na-icontext.c (is_candidate_for_selection_count):
87         Implement the function.
89         * src/io-desktop/nadp-reader.c
90         (nadp_reader_ifactory_provider_read_start): Set minimal version number.
92 2010-07-30 Pierre Wieser <pwieser@trychlos.org>
94         * src/core/na-icontext.c (is_candidate_for_basenames):
95         Unref the GPatternSpec after use.
97         * src/core/na-icontext.c (is_candidate_for_basenames):
98         Implement the function.
100         * src/core/na-selected-info.c:
101         * src/core/na-selected-info.h (na_selected_info_get_basename):
102         New function.
104         * configure.ac: Add a dependancy on libgtop.
106         * src/core/na-icontext.c (is_candidate_for_show_if_running):
107         Implement the function.
109 2010-07-29 Pierre Wieser <pwieser@trychlos.org>
111         * src/io-desktop/nadp-formats.c:
112         * src/io-desktop/nadp-formats.h: New files.
113         These should have been added to 2.99.0, but where forgotten.
115         * docs/nact/Makefile.am: New file.
117         * configure.ac:
118         * docs/Makefile.am: Updated accordingly.
120         Create NACT user's manual skeleton.
121         
122         * docs/nact/C/appendix-feedback.xml:
123         * docs/nact/C/appendix-gnu-fdl-1.3.xml:
124         * docs/nact/C/articleinfo.xml:
125         * docs/nact/C/figures/nact-basenames-tab.png:
126         * docs/nact/C/figures/nact-capabilities-tab.png:
127         * docs/nact/C/figures/nact-command-tab.png:
128         * docs/nact/C/figures/nact-environment-tab.png:
129         * docs/nact/C/figures/nact-execution-tab.png:
130         * docs/nact/C/figures/nact-folders-tab.png:
131         * docs/nact/C/figures/nact-legend.png:
132         * docs/nact/C/figures/nact-main-empty.png:
133         * docs/nact/C/figures/nact-mimetypes-tab.png:
134         * docs/nact/C/figures/nact-preferences-export.png:
135         * docs/nact/C/figures/nact-preferences-import.png:
136         * docs/nact/C/figures/nact-preferences-io-providers.png:
137         * docs/nact/C/figures/nact-preferences-runtime.png:
138         * docs/nact/C/figures/nact-preferences-schemes.png:
139         * docs/nact/C/figures/nact-preferences-ui.png:
140         * docs/nact/C/figures/nact-properties-tab.png:
141         * docs/nact/C/figures/nact-schemes-tab.png:
142         * docs/nact/C/figures/nat-new-capability.png:
143         * docs/nact/C/index.xml:
144         * docs/nact/C/legalnotice.xml: New files.
146         Do some cleanup in NAObjectAction and NAObjectProfile code.
147         Implement execution of singular vs. plural command forms.
149         * src/api/na-object-action.h:
150         * src/core/na-object-action.c (na_object_action_is_candidate):
151         Removed function.
153         * src/api/na-object-profile.h:
154         * src/core/na-object-profile.c (na_object_profile_parse_parameters):
155         Removed function.
157         * src/core/na-tokens.c:
158         * src/core/na-tokens.h (na_tokens_execute_action): New function.
160         * src/plugin-menu/nautilus-actions.c (execute_action):
161         Move action execution to NATokens class.
163         * src/utils/nautilus-actions-run.c: Now use NATokens class.
165         * doc/: Renamed as docs/
167         * configure.ac:
168         * Makefile;am: Updated accordingly.
170         * configure.ac: Bump the version number after release.
172 2010-07-28 Pierre Wieser <pwieser@trychlos.org>
174         * NEWS: Update NEWS before unstable release.
176         * configure.ac: Bump the version number before unstable release.
178         * src/io-desktop/nadp-module.c (na_extension_startup):
179         Remove the #if/#endif macros to let the .desktop provider be released.
181         * src/io-desktop/nadp-desktop-file.c:
182         * src/io-desktop/nadp-desktop-file.h
183         (nadp_desktop_file_new, nadp_desktop_file_get_key_file):
184         New functions.
186         * src/io-desktop/nadp-writer.c
187         (nadp_writer_iexporter_export_to_buffer): Implement the function.
189         Import/export .desktop files.
191         * doc/export-format-id: Declare the new export format.
193         * po/POTFILES.in: Add a file.
195         * src/api/na-core-utils.h:
196         * src/core/na-core-utils.c
197         (na_core_utils_slist_add_message, na_core_utils_file_load_from_uri):
198         New functions.
200         * src/api/na-iimporter.h:
201         * src/core/na-iimporter.c (na_iimporter_manage_import_mode):
202         New function.
204         * src/io-desktop/nadp-formats.c:
205         * src/io-desktop/nadp-formats.h: New files.
207         * src/io-desktop/Makefile.am: Updated accordingly.
209         * src/io-desktop/nadp-desktop-file.c:
210         * src/io-desktop/nadp-desktop-file.h
211         (nadp_desktop_file_new_from_uri): New function.
212         (nadp_desktop_file_get_key_file_path): Renamed as nadp_desktop_file_get_key_file_uri().
214         * src/io-desktop/nadp-desktop-provider.c:
215         Declare NAIImporterInterface and NAIExporterInterface interfaces.
217         * src/io-desktop/nadp-reader.c:
218         * src/io-desktop/nadp-reader.h
219         (nadp_reader_iimporter_import_from_uri): New function.
221         * src/io-desktop/nadp-utils.c:
222         * src/io-desktop/nadp-utils.h
223         (nadp_utils_is_writable_file): Renamed as nadp_utils_uri_is_writable().
224         (nadp_utils_uri_delete): New function.
226         * src/io-desktop/nadp-writer.c:
227         * src/io-desktop/nadp-writer.h
228         (nadp_writer_iexporter_export_to_buffer, nadp_writer_iexporter_export_to_file):
229         New functions.
231         * src/nact/nact-add-scheme-dialog.c:
232         Prevent a default scheme to be inserted twice.
234         * src/nact/nact-ischemes-tab.c:
235         Use the current list of rows instead of the current schemes list.
237         * src/nact/nact-match-list.c:
238         Prevent a standard filter to be inserted twice.
240         * src/api/na-core-utils.h:
241         * src/core/na-core-utils.c (na_core_utils_slist_dump):
242         Add a prefix parameter to the function.
244         * src/core/na-data-boxed.c (slist_dump):
245         * src/core/na-io-provider.c (na_io_provider_get_providers_list):
246         * src/io-desktop/nadp-writer.c (nadp_writer_ifactory_provider_write_done):
247         * src/nact/nact-match-list.c (nact_match_list_on_selection_changed):
248         * src/test/test-reader.c (main): Updated accordingly.
250 2010-07-26 Pierre Wieser <pwieser@trychlos.org>
252         * src/api/na-core-utils.h:
253         * src/core/na-core-utils.c (na_core_utils_slist_find):
254         Moved to na_core_utils_slist_count.
256         * src/core/na-icontext.c (is_candidate_for_show_in):
257         * src/io-desktop/nadp-writer.c
258         (nadp_writer_ifactory_provider_write_done): Updated accordingly.
260         * src/nact/nact-match-list.c (on_filter_edited):
261         Add g_return_if_fail checks on data and context.
263         Prevent of inline edition of capabilities.
265         * src/nact/nact-match-list.c:
266         * src/nact/nact-match-list.h (nact_match_list_create_model):
267         Add editable_filter input parameter.
269         * src/nact/nact-match-list.c (nact_match_list_on_selection_changed):
270         Only enable the column if filter and item are both editable.
272         * src/nact/nact-ibasenames-tab.c:
273         * src/nact/nact-icapabilities-tab.c:
274         * src/nact/nact-ifolders-tab.c:
275         * src/nact/nact-imimetypes-tab.c:
276         * src/nact/nact-ischemes-tab.c: Updated accordingly.
278         Prevent a capability to be inserted twice.
280         * src/nact/nact-add-capability-dialog.c (on_button_press_event):
281         On double-clic, check for OK sensitivity.
283         * src/nact/nact-icapabilities-tab.c (on_add_clicked):
284         Provide the dialog with our current content rather than current capabilities.
286         * src/nact/nact-match-list.c:
287         * src/nact/nact-match-list.h (nact_match_list_get_rows): New function.
289         Fix parameters conversion to v3.
291         * src/core/na-object-action.c (icontext_is_candidate):
292         Fix comment and minor typo.
294         * src/core/na-object-profile.c:
295         * src/io-gconf/nagp-reader.c (convert_pre_v3_parameters):
296         Move pre-v3 parameters conversion from GConf provider to profile class.
298         * src/io-desktop/nadp-reader.c
299         (nadp_reader_ifactory_provider_read_start):
300         * src/io-gconf/nagp-reader.c (nagp_reader_read_start):
301         * src/io-gconf/nagp-gconf-provider.c (ifactory_provider_iface_init):
302         * src/io-gconf/nagp-reader.h:
303         Now attach profile to its parent in 'read_start' interface.
305         * src/io-desktop/nadp-reader.c
306         (nadp_reader_ifactory_provider_read_done):
307         * src/io-gconf/nagp-reader.c (nagp_reader_read_done):
308         Homogeneïze the read_done functions.
310         Move the reading of the subitems key for the desktop I/O provider
311         from 'read_done' to 'read_start'.
313         * src/io-desktop/nadp-reader.c:
314         * src/io-desktop/nadp-reader.h
315         (nadp_reader_ifactory_provider_read_start): New function.
317         * src/io-desktop/nadp-desktop-provider.c: Updated accordingly.
319 2010-07-19 Pierre Wieser <pwieser@trychlos.org>
321         * src/api/na-object-item.h:
322         * src/core/na-object-item.c (na_object_item_factory_write_start):
323         Function is renamed as na_object_item_rebuild_children_slist().
325         * src/core/na-object-action.c:
326         * src/core/na-object-menu.c: Updated accordingly.
328 2010-07-05 Pierre Wieser <pwieser@trychlos.org>
330         * src/nact/nact-icommand-tab.c (nact_icommand_tab_runtime_init_toplevel):
331         Connect to delete-event signal to hide the GtkWindow.
333 2010-07-03 Pierre Wieser <pwieser@trychlos.org>
335         * src/nact/nact-add-capability-dialog.c (on_base_runtime_init_dialog):
336         Doucle-click validates the dialog.
338         * src/nact/nact-add-scheme-dialog.c (on_base_runtime_init_dialog):
339         Doucle-click validates the dialog.
341         * src/nact/nact-schemes-list.c (nact_schemes_list_create_model):
342         Scheme keyword and description are editable in user preferences.
344 2010-07-02 Pierre Wieser <pwieser@trychlos.org>
346         * src/core/na-tokens.c (na_tokens_new_from_selection):
347         Add a trace.
349         * src/core/na-tokens.h: Fix minor typo.
351         * src/plugin-menu/nautilus-actions.c:
352         There should not be any need to keep a reference to our menu.
354         * data/nautilus-actions-prefs.schemas.in:
355         * src/core/na-iprefs.h:
356         * src/core/na-importer-ask.c:
357         * src/core/na-importer-ask.h:
358         Define a new GConf preference 'keep last user choice'.
360         * src/api/na-iimporter.h:
361         * src/core/na-iimporter.c:
362         from_uri() interface is renamed as import_from_uri().
363         Only define na_iimporter_import_from_uri() public API.
365         * src/core/na-importer.c:
366         * src/core/na-importer.h:
367         Define here na_importer_import_from_list() internal API.
369         * src/io-xml/naxml-provider.c:
370         * src/io-xml/naxml-reader.c:
371         * src/io-xml/naxml-reader.h:
372         * src/nact/nact-assistant-import.c:
373         * src/nact/nact-tree-model-dnd.c:
374         * src/test/test-reader.c: Updated accordingly.
376         * src/core/na-object-id.c (na_object_id_set_new_id):
377         Fix object type test.
379         * src/core/na-object-item.c (object_id_new_id):
380         Fix minor typo.
382         * src/core/na-object-profile.c (object_id_new_id):
383         Fix order of validity test.
384         Only get a new profile name when a new parent is provided.
386 2010-06-29 Pierre Wieser <pwieser@trychlos.org>
388         * src/nact/nact-tree-model-dnd.c (drop_uri_list):
389         Make the code in adequation with the comment.
391         * src/nact/nact-gtk-utils.c (nact_gtk_utils_get_pixbuf):
392         Do not emit a warning when file is just not found.
394 2010-06-28 Pierre Wieser <pwieser@trychlos.org>
396         * src/io-desktop/nadp-writer.c
397         (nadp_writer_ifactory_provider_write_data):
398         Concatenate path and parameters fields to the Exec key.
400         * src/nact/nact-assistant-import.c (has_readable_files):
401         Get ride of warning messages in some usual situations.
403         * src/nact/nact-main-menubar-file.c (nact_main_menubar_file_save_items):
404         Force sensitivities update when new tree store is empty.
406         * src/core/na-iduplicable.c (na_iduplicable_check_status):
407         * src/core/na-object.c (na_object_object_unref):
408         Review debug messages.
410         * src/core/na-pivot.c:
411         * src/core/na-pivot.h (na_pivot_set_new_items): New function.
413         * src/nact/nact-main-menubar-file.c (save_item):
414         Duplicate all current tree store to a new pivot.
416 2010-06-23 Pierre Wieser <pwieser@trychlos.org>
418         * src/nact/nact-ienvironment-tab.c (on_tab_updatable_selection_changed):
419         * src/nact/nact-iexecution-tab.c (on_tab_updatable_selection_changed):
420         Radio buttons are inconsistent if and only if there is no context.
422         * src/nact/nact-tree-model.c (dump_store): Also dumps origin.
424         * src/core/na-updater.c (na_updater_remove_item):
425         Do not unref here removed item.
426         Also remove item from non level zero parent.
428         * src/nact/nact-main-window.c (actually_delete_item):
429         Updated accordingly.
431         * src/core/na-icontext.c (is_candidate_for_try_exec):
432         Do not try to get info for non existing file.
434 2010-06-21 Pierre Wieser <pwieser@trychlos.org>
436         * src/core/na-icontext.c (is_candidate_for_show_in):
437         Implement the check of the environment (though not yet the desktop
438         detection).
440         * src/nact/nact-iaction-tab.c:
441         * src/nact/nact-ibasenames-tab.c:
442         * src/nact/nact-icommand-tab.c:
443         * src/nact/nact-ienvironment-tab.c:
444         * src/nact/nact-iexecution-tab.c:
445         * src/nact/nact-iproperties-tab.c:
446         * src/nact/nact-match-list.c:
447         Reset all fields to an empty value when there is no selection.
449         * src/nact/nact-main-tab.h:
450         * src/nact/nautilus-actions-config-tool.ui:
451         Move the Execution tab just besides the Command one.
453 2010-06-20 Pierre Wieser <pwieser@trychlos.org>
455         * src/core/na-object.c (na_object_object_unref):
456         Fix infinite unref of child items.
458         * src/nact/nact-tree-model.c (nact_tree_model_display):
459         Set debug messages.
461 2010-06-18 Pierre Wieser <pwieser@trychlos.org>
463         * src/core/na-object.c (na_object_object_unref):
464         Fix segfault when unfiltering invalid items.
466         * src/core/na-object-item-factory.c:
467         Numeric version is no more writable by default.
469         * src/io-gconf/nagp-keys.h:
470         * src/io-gconf/nagp-writer.c (nagp_writer_write_start):
471         Explicitely write the numeric version to GConf.
473         * src/core/na-object-item-factory.c:
474         Provider data is no more duplicable by NAIFactoryObject.
476         * src/core/na-object-item.c (object_copy):
477         Explicitely triggers NAIOProvider::duplicate_data method.
479         * src/io-desktop/nadp-desktop-provider.c (iio_provider_iface_init):
480         * src/io-desktop/nadp-writer.c:
481         * src/io-desktop/nadp-writer.h (nadp_iio_provider_duplicate_data):
482         Implement NAIIOProvider::duplicate_data interface.
484         * src/io-gconf/nagp-gconf-provider.c (iio_provider_iface_init):
485         Initialize NAIIOProvider duplicate_data() virtual pointer.
487         * src/api/na-iio-provider.h:
488         * src/core/na-iio-provider.c (duplicate_data):
489         * src/core/na-io-provider.c:
490         * src/core/na-io-provider.h (na_io_provider_duplicate_data):
491         Define new NAIIOProvider interface.
493 2010-06-17 Pierre Wieser <pwieser@trychlos.org>
495         * src/api/na-iio-provider.h:
496         * src/core/na-iio-provider.c (na_iio_provider_item_changed):
497         Remove useless item id parameter.
499         * src/core/na-ipivot-consumer.c (is_notify_allowed):
500         Set a higher delay (1s to 2s) before notifying NAPivot
501         because of the delay of file monitoring.
503         * src/nact/nact-clipboard.c (export_objects):
504         Remove unused dest_folder parameter.
506         * src/nact/nact-tree-model-dnd.c
507         (nact_tree_model_dnd_imulti_drag_source_drag_data_get):
508         Get destination folder as an URI.
510         * src/nact/nact-iaction-tab.c:
511         Fix invalid cast of NAObjectMenu to NAObjectAction.
513         * src/nact/nact-sort-buttons.c:
514         * src/nact/nact-sort-buttons.h (nact_sort_buttons_enable_buttons):
515         New function.
517         * src/nact/nact-main-menubar.c (on_iactions_list_count_updated):
518         Enable/disable sort buttons depending of items list count.
520         * src/api/na-object-api.h
521         (na_object_get_shortcut, na_object_set_shortcut): New macros.
523         * src/nact/nact-iproperties-tab.c: Review NactIPropertiesTab page.
525         * src/api/na-object-api.h
526         (na_object_get_execution_mode,
527         na_object_get_startup_notify, na_object_get_startup_class,
528         na_object_get_execute_as, na_object_set_execution_mode,
529         na_object_set_startup_notify, na_object_set_startup_class,
530         na_object_set_execute_as): New macros.
532         * src/core/na-object-profile-factory.c:
533         Change type of execution mode from uint to string.
535         * src/nact/nact-iexecution-tab.c: Implement NactIExecutionTab page.
537         * src/nact/nact-ienvironment-tab.c: Implement NactIEnvironmentTab page.
539 2010-06-16 Pierre Wieser <pwieser@trychlos.org>
541         * src/nact/nact-gtk-utils.c:
542         * src/nact/nact-gtk-utils.h
543         (nact_gtk_utils_select_file, nact_gtk_utils_select_dir): New functions.
545         * src/nact/nact-icommand-tab.c: Updated accordingly.
547         * src/api/na-core-utils.h:
548         * src/core/na-core-utils.c (na_core_utils_slist_setup_element): New function.
550         * src/api/na-icontext.h:
551         * src/core/na-icontext.c (na_icontext_set_only_desktop, na_icontext_set_not_desktop):
552         New functions.
554         * src/api/na-object-api.h (na_object_set_only_desktop, na_object_set_not_desktop):
555         New macros.
557         * src/nact/nact-ienvironment-tab.c: Implement desktop choice.
559         * src/nact/nact-icapabilities-tab.c:
560         * src/nact/nautilus-actions-config-tool.ui: Review NactICapabilitiesTab page.
562         * src/nact/nact-ischemes-tab.c: Review NactISchemesTab page.
564         * src/nact/nact-ifolders-tab.c: Review NactIFoldersTab page.
566         * src/nact/nact-ibasenames-tab.c: Review NactIBasenamesTab page.
568         * src/nact/nact-match-list.c:
569         * src/nact/nact-match-list.h (nact_match_list_on_enable_tab):
570         Removed function.
572         * src/nact/nact-icommand-tab.c:
573         * src/nact/nact-icommand-tab.h: Review NactICommandTab page.
575         * src/core/na-object-action-factory.c: Fix comment.
577         * src/nact/nact-iaction-tab.c:
578         * src/nact/nact-iaction-tab.h: Homogeneïse the code.
580 2010-06-15 Pierre Wieser <pwieser@trychlos.org>
582         * src/nact/nact-main-tab.c:
583         * src/nact/nact-main-tab.h (nact_main_tab_get_context):
584         New function.
586         * src/nact/nact-iaction-tab.c:
587         * src/nact/nact-ibasenames-tab.c:
588         * src/nact/nact-icapabilities-tab.c:
589         * src/nact/nact-ienvironment-tab.c:
590         * src/nact/nact-ifolders-tab.c:
591         * src/nact/nact-imimetypes-tab.c:
592         * src/nact/nact-ischemes-tab.c:
593         * src/nact/nact-main-tab.h:
594         * src/nact/nact-main-window.c:
595         Remove irrelevant TAB_UPDATABLE_SIGNAL_ENABLE_TAB signal.
597         * src/nact/nact-match-list.c:
598         Do not try to get filters when there is no current context.
600         * src/nact/nact-main-window.c:
601         Do not mark the application as modified when list is empty.
603         * src/nact/nact-iaction-tab.c:
604         * src/nact/nact-ibasenames-tab.c:
605         * src/nact/nact-icapabilities-tab.c:
606         * src/nact/nact-icommand-tab.c:
607         * src/nact/nact-ienvironment-tab.c:
608         * src/nact/nact-ifolders-tab.c:
609         * src/nact/nact-iproperties-tab.c:
610         * src/nact/nact-ischemes-tab.c:
611         * src/nact/nact-main-menubar-edit.c:
612         * src/nact/nact-main-menubar-file.c:
613         * src/nact/nact-main-tab.h:
614         * src/nact/nact-main-window.c:
615         * src/nact/nact-match-list.c: Rename main properties.
617         * src/nact/nact-main-tab.h:
618         * src/nact/nact-main-window.c: Remove unused PROP_SELECTED_ROW property.
620         * po/POTFILES.in: Add src/nact/nact-ienvironment-tab.c file.
622         * src/nact/nact-ienvironment-tab.c: Connect signals.
624 2010-06-14 Pierre Wieser <pwieser@trychlos.org>
626         * src/core/na-icontext-factory.c:
627         Change default capabilities to empty list.
629         * src/nact/nact-add-capability-dialog.c:
630         * src/nact/nact-add-capability-dialog.h:
631         * src/nact/nact-add-capability.ui: New files.
633         * po/POTFILES.in:
634         * src/nact/Makefile.am: Updated accordingly.
636         * src/nact/nact-match-list.c:
637         * src/nact/nact-match-list.h (nact_match_list_create_model):
638         Add match_header parameter.
640         * src/nact/nact-ibasenames-tab.c:
641         * src/nact/nact-icapabilities-tab.c:
642         * src/nact/nact-ifolders-tab.c:
643         * src/nact/nact-imimetypes-tab.c:
644         * src/nact/nact-ischemes-tab.c: Updated accordingly.
646 2010-06-13 Pierre Wieser <pwieser@trychlos.org>
648         * src/nact/nact-match-list.c:
649         * src/nact/nact-match-list.h (nact_match_list_create_model):
650         Add on_add_clicked callback parameter.
652         * src/nact/nact-ibasenames-tab.c:
653         * src/nact/nact-ifolders-tab.c:
654         * src/nact/nact-imimetypes-tab.c:
655         * src/nact/nact-ischemes-tab.c: Updated accordingly.
657         * src/nact/nact-iaction-tab.c:
658         Use gtk_bin_get_child() function instead of GTK_BIN()->child.
660         * po/POTFILES.in:
661         Add src/nact/nact-icapabilities-tab.c, src/nact/nact-ischemes-tab.c.
662         Remove src/nact/nact-iconditions-tab.c.
664         * src/api/na-core-utils.h:
665         * src/core/na-core-utils.c (na_core_utils_selcount_get_ope_int):
666         New function.
668         * src/nact/nact-icapabilities-tab.c: Implement selection count.
670 2010-06-11 Pierre Wieser <pwieser@trychlos.org>
672         * src/api/na-icontext.h:
673         * src/core/na-icontext.c (na_icontext_is_all_mimetypes): New function.
675         * src/api/na-object-api.h: Define new getters/setters.
677         * src/core/na-icontext-factory.c:
678         * src/core/na-object-item-factory.c: Fix comments.
680         * src/io-gconf/nagp-reader.c:
681         Convert pre-v3 is_multiple, is_file and is_dir parameters.
683 2010-06-10 Pierre Wieser <pwieser@trychlos.org>
685         * configure.ac: Bump post-release version number.
687         * Changelog: Update NEWS before release.
689         * configure.ac: Bump pre-release version number.
691         * src/core/na-iabout.c: Update copyright notice.
693 2010-06-09 Pierre Wieser <pwieser@trychlos.org>
695         * src/api/na-core-utils.h:
696         * src/api/na-core-utils.c (na_core_utils_slist_find_negated):
697         New function.
699         * src/nact/nact-add-scheme-dialog.c:
700         * src/nact/nact-add-scheme-dialog.h: New files.
702         * src/nact/Makefile.am: Updated accordingly.
704         * src/nact/nact-main-menubar.c: Update test for Gtk+ version.
706         * src/nact/nact-match-list.c:
707         * src/nact/nact-match-list.h: Remove on_add callback.
709         * src/nact/nact-ibasenames-tab.c:
710         * src/nact/nact-ifolders-tab.c:
711         * src/nact/nact-imimetypes-tab.c:
712         * src/nact/nact-ischemes-tab.c:
713         * src/nact/nact-preferences-editor.c: Updated accordingly.
715         * src/nact/nact-schemes-list.c:
716         * src/nact/nact-schemes-list.h
717         (nact_schemes_list_show_all, nact_schemes_list_get_current_scheme):
718         New functions.
720 2010-06-07 Pierre Wieser <pwieser@trychlos.org>
722         * src/nact/nact-add-scheme.ui: New file.
724         * po/POTFILES.in:
725         * src/nact/Makefile.am: Updated accordingly.
727 2010-06-04 Pierre Wieser <pwieser@trychlos.org>
729         * src/api/na-object-api.h: Reorganization.
731         * src/core/na-icontext-factory.c: Set schemes default to '*'.
733         * src/nact/nact-icommand-tab.c: Get schemes from current object.
735         * src/nact/nact-ischemes-tab.c:
736         * src/nact/nact-ischemes-tab.h:
737         Take advantage of new nact_match_list_xxx functions.
739         * src/api/na-object-api.h:
740         * src/api/na-ifactory-object-data.h:
741         * src/core/na-object-profile-factory.c: Add NAFO_DATA_WORKING_DIR data.
743         * src/core/na-factory-object.c:
744         * src/core/na-factory-object.h (na_factory_object_get_default):
745         New     function.
747         * src/nact/nact-icommand-tab.c: Implement working directory.
749         * src/nact/nact-imimetypes-tab.c: 
750         Take advantage of new nact_match_list_xxx functions.
752         * src/nact/nact-match-list.c:
753         * src/nact/nact-match-list.h: New files.
755         * src/nact/Makefile.am: Updated accordingly.
757         * src/nact/base-window.c:
758         * src/nact/base-window.h (base_window_signal_connect_with_data):
759         New function.
761         * src/nact/nact-ibasenames-tab.c: 
762         Take advantage of new nact_match_list_xxx functions.
764 2010-06-03 Pierre Wieser <pwieser@trychlos.org>
766         * src/nact/nact-ibasenames-tab.c: Implement NactIBasenamesInterface interface.
768 2010-06-02 Pierre Wieser <pwieser@trychlos.org>
770         * src/nact/nautilus-actions-config-tool.ui:
771         * src/nact/nact-ibasenames-tab.c: Define basename new conditions skeleton.
773         * src/nact/nact-icapabilities-tab.c:
774         * src/nact/nact-icapabilities-tab.h: Define NactICapabilitiesInterface interface.
776         * src/nact/Makefile.am:
777         * src/nact/nact-main-tab.h:
778         * src/nact/nact-main-window.c: Updated accordingly.
780 2010-05-30 Pierre Wieser <pwieser@trychlos.org>
782         * src/nact/nact-ibasenames-tab.c:
783         * src/nact/nact-ibasenames-tab.h: Define NactIBasenamesTabInterface interface.
785         * src/nact/nact-icommand-tab.c:
786         No more include removed nact-iconditions-tab.h file.
788         * src/nact/nact-ienvironment-tab.c:
789         * src/nact/nact-ienvironment-tab.h: Define NactIEnvironmentTabInterface interface.
791         * src/nact/nact-iexecution-tab.c:
792         * src/nact/nact-iexecution-tab.h: Define NactIExecutionTabInterface interface.
794         * src/nact/nact-ifolders-tab.c (on_tab_updatable_selection_changed):
795         * src/nact/nact-ischemes-tab.c (on_tab_updatable_selection_changed):
796         tab_set_sensitive() returned value is not used here.
798         * src/nact/nact-imimetypes-tab.c:
799         * src/nact/nact-imimetypes-tab.h: Define NactIMimetypesTabInterface interface.
801         * src/nact/nact-iproperties-tab.c (on_tab_updatable_selection_changed):
802         Set a mnemonic in the tab label.
804         * src/nact/nact-main-tab.h:
805         * src/nact/nact-main-window.c: Add the four new tabs, remove the old one.
807         * src/nact/nautilus-actions-config-tool.ui: Fix some size groups.
809 2010-05-29 Pierre Wieser <pwieser@trychlos.org>
811         * configure.ac: Define GSEAL_ENABLED.
813         * src/nact/nautilus-actions-config-tool.ui:
814         Implement all new fields.
816 2010-05-26 Pierre Wieser <pwieser@trychlos.org>
818         * src/api/na-core-utils.h:
819         * src/core/na-core-utils.c (na_core_utils_dir_split_ext):
820         New function.
822         * src/core/na-tokens.h:
823         * src/core/na-tokens.c: New files.
825         * src/core/Makefile.am: Udated accordingly.
827         * src/plugin-menu/nautilus-actions.c:
828         Expand tokens which may embed parameters.
830 2010-05-20 Pierre Wieser <pwieser@trychlos.org>
832         * src/io-gconf/nagp-reader.c (read_done_profile_attach_profile):
833         Migrate old v2 parameters to v3.
835         * src/core/na-object-action.c (deals_with_version):
836         Setup a version number if not already set.
838         * src/core/na-object-action.c (convert_pre_v2_action):
839         Renamed as convert_v1_to_v2.
841         * src/api/na-data-def.h: Add write_if_default.
843         * src/core/na-icontext-factory.c:
844         * src/core/na-object-action-factory.c:
845         * src/core/na-object-id-factory.c:
846         * src/core/na-object-item-factory.c:
847         * src/core/na-object-profile-factory.c: Update all data structures.
849         * src/io-desktop/nadp-writer.c
850         (nadp_writer_ifactory_provider_write_data):
851         * src/io-gconf/nagp-writer.c (nagp_writer_write_data):
852         * src/io-xml/naxml-writer.c (naxml_writer_write_data):
853         Updated accordingly.
855         * src/io-desktop/nadp-reader.c
856         (nadp_reader_ifactory_provider_read_start): Removed function.
858 2010-05-17 Pierre Wieser <pwieser@trychlos.org>
860         * configure.ac: Fix typo.
862         * src/core/na-core-utils.c (na_core_utils_slist_from_array):
863         Strip the strings extracted from the array.
865         * src/core/na-factory-object.c (na_factory_object_are_equal):
866         Dump the data when different.
868         * src/nact/nact-main-menubar-file.c
869         (nact_main_menubar_file_save_items): Add a debug message.
871         * src/api/na-object-api.h (na_object_set_last_version):
872         * src/api/na-object-action.h:
873         * src/core/na-object-action.c (na_object_action_set_last_version):
874         New functions.
876         * src/core/na-object-action.c (convert_pre_v2_action):
877         Reset action to last version number after conversion from pre-v2.
879         * src/core/na-object-profile.c (na_object_profile_parse_parameters):
880         Do not add extraneous blanks when parsing parameters.
882         * configure.ac: Post release bump version number.
884         * src/io-desktop/nadp-reader.c (read_done_load_profiles):
885         Do not reload already loaded profiles.
886         Just ignore non-referenced profiles.
888         * src/io-gconf/nagp-reader.c
889         (read_done_action_load_profiles_from_list): Do not reload already loaded profiles.
891         * src/utils/nautilus-actions-new.c:
892         Factorize error message to make translation easier.
894         * src/utils/nautilus-actions-run.c:
895         Mark two new strings for translation.
897         * src/core/na-object-action-factory.c:
898         No more set a string version.
900         * src/io-gconf/nagp-reader.c (read_done_profile_attach_profile):
901         Test both string and integer versions.
903 2010-05-12 Pierre Wieser <pwieser@trychlos.org>
905         * src/api/na-icontext.h:
906         * src/core/na-icontext.c
907         (na_icontext_have_all_mimetypes): Removed function.
908         (na_icontext_read_done): New function.
910         * src/core/na-object-action.c:
911         * src/core/na-object-menu.c:
912         * src/core/na-object-profile.c: Updated accordingly.
914         * src/api/na-object-api.h
915         (na_object_get_iversion, na_object_set_iversion): New functions.
917         * src/core/na-icontext-factory.c:
918         * src/core/na-object-item-factory.c:
919         Adjustments on default values.
921         * src/io-gconf/nagp-reader.c (read_done_profile_attach_profile):
922         Convert pre-v3 parameters.
924         * src/plugin-menu/nautilus-actions.c:
925         Adjust NautilusMenuProvider interface.
927 2010-05-10 Pierre Wieser <pwieser@trychlos.org>
929         Monitor .desktop files and directories.
931         * src/io-desktop/nadp-monitor.c:
932         * src/io-desktop/nadp-monitor.h: New files.
934         * src/io-desktop/Makefile.am: Updated accordingly.
936         * src/io-desktop/nadp-desktop-provider.c:
937         * src/io-desktop/nadp-desktop-provider.h
938         (nadp_desktop_provider_add_monitor,
939         nadp_desktop_provider_on_monitor_event,
940         nadp_desktop_provider_release_monitors): New functions.
942         * src/io-desktop/nadp-reader.c (get_list_of_desktop_paths):
943         Installs a monitor for each candidate directory.
945 2010-05-03 Pierre Wieser <pwieser@trychlos.org>
947         * src/api/na-icontext.h:
948         * src/api/na-ifactory-object-data.h:
949         * src/api/na-object-api.h:
950         * src/core/na-icontext-factory.c:
951         * src/core/na-icontext.c:
952         Define new NAFO_DATA_ALL_MIMETYPES data, set to TRUE when the context
953         is to be selected for all mimetypes.
955         * src/core/na-object-action.c:
956         * src/core/na-object-menu.c:
957         * src/core/na-object-profile.c:
958         * src/plugin-menu/nautilus-actions.c:
959         All objects implement NAIContextInterface.
961         * src/nact/nact-iconditions-tab.c (na_object_is_matchcase):
962         Renamed as na_object_get_matchcase().
964         * src/core/na-object-profile.c (na_object_profile_parse_parameters):
965         Do not add extraneous blanks when parsing parameters.
967 2010-04-19 Pierre Wieser <pwieser@trychlos.org>
969         * src/api/na-ifactory-object-data.h:
970         * src/api/na-object-profile.h:
971         * src/core/na-icontext-factory.c:
972         * src/core/na-object-action-factory.c:
973         * src/core/na-object-item-factory.c:
974         * src/core/na-object-menu-factory.c:
975         * src/core/na-object-profile-factory.c:
976         Define all new data, new parameters, and include context informations
977         to actions and menus.
979         * src/api/na-core-utils.h:
980         * src/core/na-core-utils.c (na_core_utils_slist_from_array):
981         Fix leading and trailing spaces management.
983 2010-04-18 Pierre Wieser <pwieser@trychlos.org>
985         * src/api/na-ifactory-object-data.h:
986         * src/core/na-object-item-factory.c:
987         Define new NAFO_DATA_SHORTCUT data.
989 2010-04-15 Pierre Wieser <pwieser@trychlos.org>
991         * src/nact/nact-schemes-list.c (insert_new_row):
992         Rewrite row insertion; do not insert a - non-editable - description.
994         * src/nact/nact-preferences.ui: Fix typo.
996         * src/io-gconf/nagp-keys.h:
997         Remove unused GConf entry keys.
999         * src/io-gconf/nagp-writer.c (nagp_iio_provider_is_willing_to_write):
1000         Force GConf sync to get ride of 'foo' entry.
1002 2010-04-14 Pierre Wieser <pwieser@trychlos.org>
1004         * NEWS: Update before release.
1006         * configure.ac: Bump version number before release.
1008         * src/core/na-selected-info.h:
1009         * src/core/na-selected-info.c (na_selected_info_get_name):
1010         Renamed as na_selected_info_get_path.
1012         * src/core/na-icontext.c
1013         (is_current_folder_inside, is_target_selection_candidate):
1014         Updated accordingly.
1016         * src/core/na-object-profile.c (na_object_profile_parse_parameters):
1017         Do not try to deal with null values.
1019         * src/plugin-menu/nautilus-actions.c (create_item_from_profile):
1020         Duplicate the candidate profile, set the parent to null.
1022         * src/core/na-selected-info.c (na_selected_info_get_location):
1023         Increment the reference count of the returned location.
1025         * src/core/na-gconf-utils.c (dump_entry):
1026         Do not try to dump a null value.
1028         * src/core/na-selected-info.c
1029         (dump): New function.
1030         (na_selected_info_create_for_uri): Accepts a mimetype.
1032         * src/plugin-tracker/na-tracker-dbus.c
1033         (na_tracker_dbus_get_selected_paths): Also sends the mimetype.
1035 2010-04-13 Pierre Wieser <pwieser@trychlos.org>
1037         * po/POTFILES.in: Adding src/nact/nact-iconditions-tab.c file.
1039         * src/api/na-ifactory-object-data.h:
1040         * src/core/na-icontext-factory.c:
1041         Adding NAFO_DATA_SELECTION_COUNT data, obsoleting NAFO_DATA_MULTIPLE.
1043         * src/nact/nact-iconditions-tab.c:
1044         * src/nact/nautilus-actions-config-tool.ui:
1045         Adding required entries for SelectionCount data.
1047 2010-04-12 Pierre Wieser <pwieser@trychlos.org>
1049         * src/plugin-menu/Makefile.am:
1050         * src/plugin-tracker/Makefile.am: Fix incorrect log domains.
1052         * po/POTFILES.in: Add src/nact/nact-iproperties-tab.c file.
1054         * src/nact/nautilus-actions-config-tool.ui: Adjust vertical paddings.
1056         "Advanced conditions" tab is renamed as "Schemes".
1058         * src/nact/nact-iadvanced-tab.c: Renamed as src/nact/nact-ischemes-tab.c.
1059         * src/nact/nact-iadvanced-tab.h: Renamed as src/nact/nact-ischemes-tab.h.
1061         * src/nact/Makefile.am:
1062         * src/nact/nact-icommand-tab.c:
1063         * src/nact/nact-main-tab.h:
1064         * src/nact/nact-main-window.c: Updated accordingly.
1066         Move item properties to their own tab.
1068         * src/nact/nact-iproperties-tab.c:
1069         * src/nact/nact-iproperties-tab.h: New files.
1071         * src/nact/Makefile.am:
1072         * src/nact/nact-iaction-tab.c:
1073         * src/nact/nact-main-tab.h:
1074         * src/nact/nact-main-window.c:
1075         * src/nact/nautilus-actions-config-tool.ui: Updated accordingly.
1077 2010-04-09 Pierre Wieser <pwieser@trychlos.org>
1079         * NEWS: Updated.
1081         * src/nact/nact-sort-buttons.c (set_new_sort_order):
1082         Do not rewrite in GConf a just-readen sort order.
1084         * src/io-gconf/nagp-writer.c (nagp_iio_provider_delete_item):
1085         Also delete the schema names which may be embedded in GConfEntry.
1087         * src/api/na-gconf-utils.h:
1088         * src/core/na-gconf-utils.c (na_gconf_utils_dump_entries):
1089         New function.
1091         * src/io-gconf/nagp-reader.c (read_item):
1092         Dump content of readen entries.
1094         * src/io-gconf/nagp-gconf-provider.c (install_monitors):
1095         Also monitors schemas to be triggered when importing a schema.
1097         * configure.ac: Bump version number for release.
1099         * src/nact/nact-iaction-tab.c (on_icon_browse):
1100         Save current position and folder of icon chooser.
1102 2010-04-08 Pierre Wieser <pwieser@trychlos.org>
1104         * src/core/na-object-profile.c (is_valid_path_parameters):
1105         Only check for non-empty path+parameters (fix #614596).
1107         * src/nact/nact-sort-buttons.c (on_sort_down_button_toggled,
1108         on_sort_manual_button_toggled, on_sort_up_button_toggled):
1109         Do not let the user click twice on a sort button.
1111         * src/nact/nact-main-window.c (setup_dialog_title):
1112         Review/normalize debug entry message.
1114         * src/nact/nact-ifolders-tab.c (on_add_folder_clicked):
1115         Folders list is definitively a list of paths (not URI).
1117         * src/api/na-core-utils.h:
1118         * src/core/na-core-utils.c (na_core_utils_str_collate): New function.
1120         * src/core/na-data-boxed.c (locale_are_equal):
1121         * src/core/na-object-action.c (deals_with_toolbar_label):
1122         * src/core/na-object-id.c (na_object_id_sort_alpha_asc):
1123         * src/io-desktop/nadp-utils.c (nadp_utils_gslist_remove_from):
1124         * src/nact/base-builder.c (already_loaded): Updated accordingly.
1126         * src/api/na-gconf-utils.h:
1127         * src/core/na-gconf-utils.c (na_gconf_utils_has_entry):
1128         Check for an entry in the previously loaded list.
1130         * src/io-gconf/nagp-reader.c
1131         (read_item): First check for Type default value.
1132         (read_item, read_done_item_is_writable,
1133         read_done_action_load_profile): Load entries.
1135         * src/nact/nact-iaction-tab.c (on_tab_updatable_selection_changed):
1136         * src/nact/nact-icommand-tab.c (on_tab_updatable_selection_changed):
1137         Protect gtk_ functions against null values.
1139         * src/plugin-menu/Makefile.am:
1140         Rename plugin to libnautilus-actions-menu.
1142         * src/io-desktop/nadp-reader.c (item_from_desktop_path):
1143         First check Type for default value.
1145 2010-04-07 Pierre Wieser <pwieser@trychlos.org>
1147         * src/nact/nact-gtk-utils.c:
1148         * src/nact/nact-gtk-utils.h
1149         (nact_gtk_utils_get_pixbuf): Render an icon for a given widget.
1150         (nact_utils_render): New function.
1152         * src/nact/nact-iaction-tab.c (on_icon_changed):
1153         * src/nact/nact-main-statusbar.c (nact_main_statusbar_set_locked):
1154         * src/nact/nact-tree-model.c (display_item): Updated accordingly.
1156 2010-04-02 Pierre Wieser <pwieser@trychlos.org>
1158         * configure.ac:
1159         * src/nact/nact-main-tab.c (nact_main_tab_is_page_enabled):
1160         GTK_WIDGET_IS_SENSITIVE is deprecated starting from gtk 2.20.
1162         * src/core/na-core-utils.c (na_core_utils_file_exists):
1163         * src/io-xml/naxml-writer.c (output_xml_to_file):
1164         Takes an URI as the filename.
1166 2010-04-01 Pierre Wieser <pwieser@trychlos.org>
1168         * src/api/na-icontextual.h: Renamed as src/api/na-icontext.h.
1169         * src/core/na-icontextual.c: Renamed as src/core/na-icontext.c.
1170         * src/core/na-icontextual-factory.c: Renamed as src/core/na-icontext-factory.c.
1172         * po/POTFILES.in:
1173         * src/api/Makefile.am:
1174         * src/api/na-icontext.h:
1175         * src/api/na-object-api.h:
1176         * src/core/Makefile.am:
1177         * src/core/na-icontext.c:
1178         * src/core/na-object-action.c:
1179         * src/core/na-object-profile.c:
1180         * src/plugin-menu/nautilus-actions.c:
1181         * src/utils/nautilus-actions-run.c: Updated accordingly.
1183         * src/api/na-object-api.h (na_object_prepare_for_paste):
1184         * src/core/na-object-id.c (na_object_id_prepare_for_paste):
1185         Parent is not always an action, may be a menu.
1187         * src/io-desktop/nadp-desktop-file.c
1188         (nadp_desktop_file_get_file_type):
1189         Do not emit a warning if Type is not found in the .desktop file.
1191         * src/core/na-core-utils.c (na_core_utils_slist_to_array):
1192         Fix built of array.
1194         * src/io-desktop/nadp-keys.h:
1195         Set back action (resp. menu) Type to Action (resp. Menu).
1197         * src/nact/nautilus-actions-config-tool.ui:
1198         Insert a scrolled window as text view parent.
1200         * src/io-desktop/nadp-desktop-file.c (check_key_file):
1201         Only write a debug message if file is hidden.
1203 2010-03-29 Pierre Wieser <pwieser@trychlos.org>
1205         * src/nact/nact-gtk-utils.c (nact_gtk_utils_set_editable):
1206         Take into account new GtktextView widget.
1208         * src/io-desktop/nadp-writer.c (nadp_iio_provider_write_item):
1209         Remove groups which no longer exist.
1211         * src/io-desktop/nadp-reader.c (read_done_load_profiles):
1212         Free string lists.
1214         * src/io-desktop/nadp-desktop-file.c:
1215         * src/io-desktop/nadp-desktop-file.h (nadp_desktop_file_remove_profile):
1216         New function.
1218         * src/io-desktop/nadp-desktop-file.c (nadp_desktop_file_get_profiles):
1219         Fix allocation of profile id.
1221         * src/io-desktop/nadp-desktop-file.c:
1222         * src/io-desktop/nadp-desktop-file.h (nadp_desktop_file_remove_key):
1223         New function.
1225         * src/io-desktop/nadp-writer.c (nadp_iio_provider_write_item):
1226         Remove key when it is no more set.
1228         * src/api/na-object-api.h
1229         (na_object_get_description, na_object_set_description): New macros.
1231         * src/nact/nact-iaction-tab.c:
1232         * src/nact/nautilus-actions-config-tool.ui: Add description entry.
1234         * src/io-desktop/nadp-keys.h: Remove unused keys.
1236         * src/io-desktop/nadp-reader.c (nadp_reader_ifactory_provider_read_done):
1237         Explicitly read subitems string list.
1239         * src/io-desktop/nadp-desktop-provider.c (ifactory_provider_iface_init):
1240         * src/io-desktop/nadp-writer.c:
1241         * src/io-desktop/nadp-writer.h (nadp_writer_ifactory_provider_write_done):
1242         New function: explicitly write subitems string list for actions and menus.
1244 2010-03-28 Pierre Wieser <pwieser@trychlos.org>
1246         * src/api/na-data-boxed.h:
1247         * src/core/na-data-boxed.c (na_data_boxed_set_default): Removed function.
1249         * src/core/na-factory-object.c (set_defaults_iter):
1250         Only set a default value when the box has not been yet allocated.
1252         * src/api/na-ifactory-object.h:
1253         * src/core/na-ifactory-object.c (na_ifactory_object_get_data_groups):
1254         New function.
1256         * src/core/na-object-item-factory.c:
1257         * src/core/na-object-action.c (instance_init):
1258         * src/core/na-object-menu.c (instance_init):
1259         No more instantiate 'type' data box.
1261         * src/core/na-object-item-factory.c:
1262         NAFO_DATA_TYPE is no more automatically readen nor written.
1264         * src/io-desktop/nadp-desktop-provider.c (ifactory_provider_iface_init):
1265         Implement data writing.
1267         * src/io-desktop/nadp-keys.c:
1268         * src/io-desktop/nadp-keys.h (nadp_keys_get_group_and_key):
1269         Removed function.
1271         * src/io-desktop/nadp-reader.c
1272         (item_from_desktop_path): Test default value first.
1273         (nadp_reader_ifactory_provider_read_data): Use new desktop_entry field.
1275         * src/io-desktop/nadp-writer.c:
1276         * src/io-desktop/nadp-writer.h (nadp_writer_ifactory_provider_write_start,
1277         nadp_writer_ifactory_provider_write_data): New functions.
1279         * src/io-gconf/nagp-writer.c (nagp_writer_write_start):
1280         Explicitely write item type.
1282         * src/io-desktop/nadp-desktop-file.c:
1283         * src/io-desktop/nadp-desktop-file.h
1284         (nadp_desktop_file_set_boolean, nadp_desktop_file_set_locale_string,
1285         nadp_desktop_file_set_string, nadp_desktop_file_set_string_list,
1286         nadp_desktop_file_set_uint): New functions.
1288         * src/api/na-core-utils.h:
1289         * src/core/na-core-utils.c (na_core_utils_slist_to_array):
1290         New function.
1292 2010-03-26 Pierre Wieser <pwieser@trychlos.org>
1294         * src/api/na-data-def.h:
1295         * src/core/na-icontextual-factory.c:
1296         * src/core/na-object-id-factory.c:
1297         * src/core/na-object-item-factory.c:
1298         * src/core/na-object-action-factory.c:
1299         * src/core/na-object-profile-factory.c:
1300         Define the key for .desktop file.
1302         * src/io-gconf/nagp-writer.c (nagp_writer_write_data):
1303         Remove blank line.
1305         * src/io-desktop/nadp-desktop-provider.c:
1306         * src/io-desktop/nadp-reader.c:
1307         * src/io-desktop/nadp-reader.h
1308         (nadp_reader_ifactory_provider_read_start): Removed unused function.
1310         * src/io-desktop/nadp-desktop-file.c:
1311         * src/io-desktop/nadp-desktop-file.h
1312         (check_key_file): Check that we don't have a 'Hidden=true' key.
1313         (nadp_desktop_file_get_profiles): New function.
1315         * src/io-desktop/nadp-desktop-provider.c:
1316         * src/io-desktop/nadp-desktop-provider.h:
1317         Move reader functions and structure to nadp-reader.c.
1319         * src/io-desktop/nadp-keys.h:
1320         Relabel type of items in .desktop file (cf. draft 0.9).
1322         * src/io-desktop/nadp-reader.c:
1323         * src/io-desktop/nadp-reader.h:
1324         Read profiles present in the .desktop file.
1326 2010-03-26 Pierre Wieser <pwieser@trychlos.org>
1328         * src/io-desktop/nadp-desktop-file.c:
1329         * src/io-desktop/nadp-desktop-file.h
1330         (check_key_file): Check that we don't have a 'Hidden=true' key.
1331         (nadp_desktop_file_get_profiles): New function.
1333         * src/io-desktop/nadp-desktop-provider.c:
1334         * src/io-desktop/nadp-desktop-provider.h:
1335         Move reader functions and structure to nadp-reader.c.
1337         * src/io-desktop/nadp-keys.h:
1338         Relabel type of items in .desktop file (cf. draft 0.9).
1340         * src/io-desktop/nadp-reader.c:
1341         * src/io-desktop/nadp-reader.h:
1342         Read profiles present in the .desktop file.
1344 2010-03-26 Pierre Wieser <pwieser@trychlos.org>
1346         * configure.ac: Bump version number for data branch.
1348 2010-03-26 Pierre Wieser <pwieser@trychlos.org>
1350         Releasing 2.30.0.
1352 2010-03-25 Pierre Wieser <pwieser@trychlos.org>
1354         * src/nact/nact-main-menubar-edit.c:
1355         * src/nact/nact-main-menubar-edit.h:
1356         * src/nact/nact-main-menubar-file.c:
1357         * src/nact/nact-main-menubar-file.h:
1358         * src/nact/nact-main-menubar-view.c:
1359         * src/nact/nact-main-menubar-view.h: New files.
1361         * po/POTFILES.in:
1362         * src/nact/Makefile.am: Updated accordingly.
1364         * src/nact/nact-main-window.c
1365         (ipivot_consumer_on_mandatory_prefs_changed):
1366         Implement NAIPivotConsumer notification.
1368         * src/nact/nact-sort-buttons.c:
1369         * src/nact/nact-sort-buttons.h
1370         (nact_sort_buttons_level_zero_writability_change):
1371         Enable/disable the buttons depending of the level zero writability
1372         status.
1374 2010-03-24 Pierre Wieser <pwieser@trychlos.org>
1376         * src/core/na-ipivot-consumer.c
1377         (na_ipivot_consumer_notify_of_mandatory_prefs_changed) : New function.
1378         (on_mandatory_prefs_changed): New interface API.
1380         * src/core/na-pivot.c (monitor_runtime_preferences):
1381         Monitor the mandatory preferences set by the admin.
1383         * src/nact/nact-main-window.c (ipivot_consumer_iface_init):
1384         * src/plugin-menu/nautilus-actions.c (ipivot_consumer_iface_init):
1385         For now, only declare NULL implementations.
1387         * src/nact/nact-preferences-editor.c (on_base_runtime_init_dialog):
1388         * src/nact/nact-sort-buttons.c (nact_sort_buttons_runtime_init):
1389         Forbid the modification of order mode is level zero is not writable.
1391         * src/core/na-pivot.c (na_pivot_is_level_zero_writable):
1392         Writable if not all not GConf are locked by admin.
1394         * src/nact/nact-iaction-tab.c (nact_iaction_tab_runtime_init_toplevel):
1395         * src/nact/nact-iadvanced-tab.c (runtime_init_connect_signals):
1396         * src/nact/nact-icommand-tab.c (nact_icommand_tab_runtime_init_toplevel):
1397         * src/nact/nact-iconditions-tab.c (nact_iconditions_tab_runtime_init_toplevel):
1398         * src/nact/nact-ifolders-tab.c (nact_ifolders_tab_runtime_init_toplevel):
1399         * src/nact/nact-main-tab.h:
1400         Signal TAB_UPDATABLE_SIGNAL_SELECTION_CHANGED is renamed as
1401         MAIN_WINDOW_SIGNAL_SELECTION_CHANGED.
1403         * src/nact/nact-main-menubar.c:
1404         * src/nact/nact-main-menubar.h
1405         (nact_main_menubar_is_level_zero_order_changed): New function.
1407         * src/nact/nact-iactions-list.h:
1408         * src/nact/nact-iactions-list-bis.c (nact_iactions_list_bis_delete):
1409         Add an argument to select the row at end of the function.
1411         * src/nact/nact-main-window.c:
1412         Connect to MAIN_WINDOW_SIGNAL_LEVEL_ZERO_ORDER_CHANGED to update
1413         dialog title.
1415         * src/nact/nact-iactions-list.c:
1416         * src/nact/nact-iactions-list.h
1417         (selection_changed): Remove the not used API.
1418         Remove the connection to the signal and the call to the interface.
1420         * src/nact/nact-assistant-export.c (iactions_list_iface_init):
1421         Use the IACTIONS_LIST_SIGNAL_SELECTION_CHANGED instead of the
1422         interface API.
1424         * src/nact/nact-main-window.c
1425         (ipivot_consumer_on_display_order_changed):
1426         Relay NAIPivotConsumer notification to nact_sort_buttons.
1428         * src/nact/nact-sort-buttons.c:
1429         * src/nact/nact-sort-buttons.h
1430         (nact_sort_buttons_display_order_change): New function.
1432         * src/nact/nact-main-menubar.c (save_item):
1433         Not only unref old origin, but also remove it from tree.
1435 2010-03-23 Pierre Wieser <pwieser@trychlos.org>
1437         Add buttons to sort the list.
1439         * src/nact/nact-sort-buttons.c:
1440         * src/nact/nact-sort-buttons.h: New files.
1442         * src/nact/Makefile.am:
1443         * src/nact/nact-main-window.c: Updated accordingly.
1445         * src/nact/nautilus-actions-config-tool.ui:
1446         Define three new buttons to help to sort the list of items.
1448         * src/core/Makefile.am:
1449         No more give a version number to the core library.
1451         Restore the target-location indicator.
1453         * src/api/na-ifactory-object-data.h:
1454         * src/core/na-object-action-factory.c:
1455         Renamed NAFO_DATA_TARGET_BACKGROUND as NAFO_DATA_TARGET_LOCATION.
1457         * src/api/na-object-api.h
1458         (na_object_is_target_location, na_object_set_target_location):
1459         New macros.
1461         * src/api/na-object-item.h:
1462         * src/plugin-menu/nautilus-actions.c (menu_provider_get_background_items):
1463         Renamed ITEM_TARGET_BACKGROUND as ITEM_TARGET_LOCATION.
1465         * src/core/na-icontextual-factory.c:
1466         * src/core/na-object-action-factory.c:
1467         * src/core/na-object-item-factory.c:
1468         Update data descriptions.
1470         * src/core/na-icontextual.c (is_target_background_candidate):
1471         Renamed as is_target_location_candidate().
1473         * src/core/na-object-action.c (na_object_action_is_candidate):
1474         Only selects the action if it is candidate for this target.
1476         * src/nact/nact-iaction-tab.c (on_tab_updatable_selection_changed):
1477         * src/nact/nautilus-actions-config-tool.ui:
1478         Display the target-location checkbox.
1480         * src/utils/nautilus-actions-new.c:
1481         Let the user select the target-location boolean indicator.
1483 2010-03-22 Pierre Wieser <pwieser@trychlos.org>
1485         * src/core/na-icontextual.c
1486         (is_current_folder_inside): Compare path rather that URI.
1487         (is_target_selection_candidate): Fix NASelectedInfo addressing.
1489         * src/plugin-menu/nautilus-actions.c
1490         (get_file_or_background_items): New function.
1491         (build_nautilus_menus, get_candidate_profile): Add debug messages.
1493         * src/core/na-selected-info.c (query_file_attributes):
1494         Fix file_info_get_attribute.
1496         * src/core/na-object-action.c (na_object_action_is_candidate):
1497         Considere background menu just as a special case of selection menu.
1499         * data/.gitignore: Update .gitignore.
1501 2010-03-17 Pierre Wieser <pwieser@trychlos.org>
1503         * data/Makefile.am: Automatically generate configurations schemas.
1505         * data/nautilus-actions.schemas.in:
1506         Renamed as data/nautilus-actions-prefs.schemas.in.
1507         Remove configurations schemas (now dynamically generated).
1509         * po/POTFILES.in: Updated accordingly.
1511         * src/core/na-icontextual-factory.c:
1512         * src/core/na-object-action-factory.c: Fix typo.
1514         * src/utils/nautilus-actions-schemas.c:
1515         Output configurations schemas to stdout.
1517         * po/POTFILES.skip:
1518         New file: do not try to translate dynamically generated schema.
1520         * Makefile.am:
1521         Build data/ after src/ to bo take advantage of dynamic generation of schemas.
1523         * src/core/na-icontextual-factory.c:
1524         String lists are now initialized in GConf-style.
1526         * src/io-gconf/nagp-writer.c (nagp_writer_write_data):
1527         * src/io-xml/naxml-writer.c (write_data_schema_v2, write_data_dump):
1528         Do not output empty values.
1530         * src/api/na-data-boxed.h:
1531         * src/core/na-data-boxed.c (na_data_boxed_is_set): New function.
1533         * data/nautilus-actions.schemas.in:
1534         Fix typo.
1535         Add io-providers/read-at-startup and io-providers/writable keys.
1537         * src/nact/nact.desktop.in: Add StartupNotify=true.
1539         * src/nact/nact-main-window.c (reload):
1540         Free the deleted list before filling the tree.
1542         * src/nact/nact-main-menubar.c
1543         (on_cut_activated): Do not cut not deletable items.
1544         (get_deletables): Add a ref on items to delete.
1546         * src/test/init-dispose-diff.sh:
1547         Do not take into account some debug messages.
1549 2010-03-16 Pierre Wieser <pwieser@trychlos.org>
1551         * src/utils/nautilus-actions-new.c
1552         (output_to_dir): Output the new action to a file.
1554         * src/core/na-core-utils.c (info_dir_is_writable):
1555         Do not emit a warning on 'no such file or directory' error.
1557         * src/utils/nautilus-actions-new.c
1558         (output_to_stdout): Output the new action to stdout.
1559         (output_to_gconf): Output the new action to GConf.
1561         * src/io-xml/naxml-writer.c (naxml_writer_write_start):
1562         Add attribute to list node, thus fixing writing of action.
1564 2010-03-15 Pierre Wieser <pwieser@trychlos.org>
1566         * src/io-xml/naxml-writer.c (naxml_writer_write_start):
1567         No need to explicitely write item type as the data is marked writable.
1569         * src/utils/nautilus-actions-new.c:
1570         Cleanup old command-line code.
1571         Check for incompatibility between boolean arguments.
1573         * src/api/na-data-def.h (na_data_def_get_data_def): New function.
1575         * src/core/na-data-def.c: New file.
1577         * src/core/Makefile.am: Updated accordingly.
1579         * src/core/na-icontextual-factory.c:
1580         * src/core/na-object-profile-factory.c:
1581         Update command-line options to not have duplicates.
1583         * src/utils/nautilus-actions-new.c:
1584         Use new ArgFromDataDef structure and display suitable help.
1586         * src/core/na-icontextual-factory.c:
1587         * src/core/na-object-action-factory.c:
1588         * src/core/na-object-item-factory.c:
1589         * src/core/na-object-profile-factory.c:
1590         * src/utils/nautilus-actions-new.c:
1591         Update data definitions to handle command-line arguments.
1593 2010-03-10 Pierre Wieser <pwieser@trychlos.org>
1595         * src/utils/nautilus-actions-new.c:
1596         Define a structure to host NADataDef argument definitions.
1598         * src/api/na-data-def.h:
1599         Add parameters to be able to manage command-line arguments.
1601         * src/core/na-icontextual-factory.c:
1602         * src/core/na-object-action-factory.c:
1603         * src/core/na-object-id-factory.c:
1604         * src/core/na-object-item-factory.c:
1605         * src/core/na-object-profile-factory.c: Updated accordingly.
1607         * src/core/na-io-provider.c (build_hierarchy):
1608         Attach the child item to its parent.
1610         * src/core/na-object-id.c (instance_dispose):
1611         * src/core/na-object-item.c (instance_dispose):
1612         * src/core/na-object.c (instance_dispose):
1613         Add debug messages.
1615         * src/core/na-dbus-tracker.h: Remove no more used file.
1617         * src/core/Makefile.am: Updated accordingly.
1619         * src/core/na-icontextual.c:
1620         * src/core/na-object-profile.c:
1621         * src/plugin-tracker/na-tracker-dbus.c:
1622         * src/utils/nautilus-actions-run.c:
1623         Remove all references to NATrackedItem obsolete class.
1625         * src/api/na-ifactory-object-data.h:
1626         Rename v1 action data group to NA_FACTORY_ACTION_V1_GROUP.
1628         * src/core/na-object-action-factory.c:
1629         No more try to read obsolete NAFO_DATA_TARGET_BACKGROUND data.
1631         * src/plugin-tracker/na-tracker.c
1632         (menu_provider_get_background_items):
1633         Implement Nautilus get_background_items() interface.
1635         * data/nautilus-actions.schemas.in:
1636         Remove 'target-background' entry description.
1638         * src/api/na-object-api.h
1639         (na_object_is_target_background): Removed macro.
1641         * src/api/na-object-profile.h
1642         * src/core/na-object-profile.c
1643         (na_object_profile_is_target_background): Removed function.
1645 2010-03-09 Pierre Wieser <pwieser@trychlos.org>
1647         * src/io-gconf/nagp-writer.c (nagp_writer_write_data):
1648         Replace gconf_concat_dir_and_key by g_strdup_printf.
1650         * src/core/na-ifactory-provider.c (na_ifactory_provider_write_item):
1651         Add a debug trace when entering in the function.
1653         * src/api/na-icontext-conditions.h: Renamed as na-icontextual.h.
1654         * src/core/na-icontext-conditions.c: Renamed as na-icontextual.c.
1655         * src/core/na-icontext-conditions-factory.c:
1656         Renamed as na-icontextual-factory.c.
1658         * po/POTFILES.in:
1659         * src/api/Makefile.am:
1660         * src/api/na-icontextual.h:
1661         * src/api/na-object-api.h:
1662         * src/core/Makefile.am:
1663         * src/core/na-icontextual.c:
1664         * src/core/na-object-action.c:
1665         * src/core/na-object-profile.c:
1666         * src/plugin-menu/nautilus-actions.c:
1667         * src/utils/nautilus-actions-run.c: Updated accordingly.
1669 2010-03-09 Pierre Wieser <pwieser@trychlos.org>
1671         Refactor NactIBackgroundTab class as NactIFoldersTab.
1673         * src/nact/nact-ibackground-tab.c:
1674         * src/nact/nact-ibackground-tab.h: Renamed as nact-ifolders-tab.{c,h}.
1676         * src/nact/Makefile.am:
1677         * src/nact/nact-main-tab.h:
1678         * src/nact/nact-main-window.c: Updated accordingly.
1680         Remove the 'target background' indicator which was introduced in 2.29.1.
1682         * src/core/na-object-action-factory.c:
1683         Update properties for NAFO_DATA_TARGET_BACKGROUND.
1685         * src/nact/nact-iaction-tab.c
1686         (nact_iaction_tab_runtime_init_toplevel): Remove the signal connection.
1687         (on_tab_updatable_selection_changed): Remove fields initialization.
1688         (on_target_background_toggled): Remove the function.
1690         * src/nact/nact-ibackground-tab.c (tab_set_sensitive):
1691         Always sensitive for profiles.
1693         * src/nact/nautilus-actions-config-tool.ui: Remove the fields.
1695         * src/core/na-object-action-factory.c:
1696         data_def_action_v1 is now available from outside.
1698         * src/core/na-object-action.c
1699         (ifactory_object_read_done, ifactory_object_write_done):
1700         Rewrite input/output functions.
1702         * src/io-gconf/nagp-reader.c
1703         (nagp_reader_read_data): Simplify the code.
1705         * src/io-gconf/nagp-writer.c
1706         (nagp_writer_write_start): No more write type as this is a normal data.
1707         (nagp_writer_write_data): Rewrite profile writing.
1708         (nagp_writer_write_done): Profile writing is now driven by NAObjectAction.
1710         * src/nact/nact-tree-model-dnd.c: Cleanup the code.
1712 2010-03-05 Pierre Wieser <pwieser@trychlos.org>
1714         * nact/nact-tree-model-dnd.c (drop_inside):
1715         Split to three functions to better readibility.
1716         Fix drop inside an empty menu.
1717         Fix drop into a non writable parent.
1719         * src/api/na-iio-provider.h: Add a comment.
1721         * src/core/na-io-provider.c:
1722         * src/core/na-io-provider.h (na_io_provider_get_return_code_label):
1723         New function.
1725         * src/nact/nact-window.c (nact_window_save_item):
1726         Better error message.
1728         * src/nact/nact-export-ask.c (on_base_runtime_init_dialog):
1729         Set more clear label, whether the item be a label or an action.
1731         * src/nact/nact-tree-model-dnd.c (get_xds_atom_value):
1732         Remove debug traces after validation both on 32 and 64 bits systems.
1734         * src/api/na-core-utils.h:
1735         * src/core/na-core-utils.c
1736         (na_core_utils_slist_join_at_end): New function.
1738         * src/api/na-iio-provider.h: Fix typo in comment.
1740         * src/nact/nact-main-menubar.c (on_delete_activated):
1741         Do not delete a tree if at least one item is not writable.
1743         * src/nact/nact-tree-model-dnd.c (get_xds_atom_value):
1744         Fix 64 bits value.
1746         * src/plugin-menu/nautilus-actions.c
1747         (create_item_from_menu): Add a trace on weak notify.
1749 2010-03-04 Pierre Wieser <pwieser@trychlos.org>
1751         * src/core/na-object-action.c (instance_init):
1752         * src/core/na-object-menu.c (instance_init):
1753         Rather create the 'Type' box here than in read_start().
1755 2010-03-03 Pierre Wieser <pwieser@trychlos.org>
1757         * src/core/Makefile.am:
1758         * src/nact/Makefile.am: Fix make distcheck.
1760         * po/POTFILES.in: Updated.
1762         Rename the NAIConditions interface to NAIContextConditions
1763         (hopefully, there will be a NAIContextParameters some day :)).
1765         * src/core/na-iconditions-factory.c:
1766         Renamed as src/core/na-icontext-conditions-factory.c.
1768         * src/core/na-iconditions.c:
1769         Renamed as src/core/na-icontext-conditions.c.
1771         * src/api/na-iconditions.h:
1772         Renamed as src/core/na-icontext-conditions.h.
1774         * src/api/Makefile.am:
1775         * src/core/Makefile.am: Updated accordingly.
1777         * src/core/na-object-profile.c:
1778         * src/plugin-menu/nautilus-actions.c:
1779         Use new na_icontext_conditions_is_candidate() function.
1781         Define the NAIConditions interface, to be implemented by actions,
1782         profiles and menus (for now, only profiles).
1784         * src/api/na-iconditions.h:
1785         * src/core/na-iconditions.c:
1786         * src/core/na-iconditions-factory.c: New files.
1788         * src/api/Makefile.am:
1789         * src/core/Makefile.am: Updated accordingly.
1791         * src/api/na-ifactory-object-data.h:
1792         Define the NA_FACTORY_CONDITIONS_GROUP data group.
1794         * src/core/na-object-profile-factory.c:
1795         Use new data_def_conditions.
1797         * src/core/na-object-profile.c (register_type):
1798         Implement the new NAIConditions interface.
1800         Review the rationales, replacing serializable+obsoleted by
1801         readable+writable flags in NADataDef structure.
1803         * src/api/na-data-def.h:
1804         * src/core/na-factory-object.c:
1805         * src/core/na-object-action-factory.c:
1806         * src/core/na-object-action.c:
1807         * src/core/na-object-id-factory.c:
1808         * src/core/na-object-item-factory.c:
1809         * src/core/na-object-profile-factory.c:
1810         * src/io-desktop/nadp-desktop-provider.c: Updated accordingly.
1812         * src/plugin-tracker/na-tracker-dbus.c (instance_dispose):
1813         Release selected items in instance_dispose() rather than in
1814         instance_finalize() which caused a FPE in Nautilus terminaison.
1816         * src/api/na-ifactory-object.h:
1817         * src/core/na-ifactory-object.c:
1818         * src/core/na-iio-provider.c:
1819         * src/io-desktop/nadp-desktop-file.c:
1820         * src/io-desktop/nadp-desktop-file.h:
1821         * src/io-xml/naxml-writer.c:
1822         * src/io-xml/naxml-writer.h:
1823         * src/nact/nact-iadvanced-tab.c:
1824         * src/nact/nact-main-menubar.c:
1825         * src/utils/nautilus-actions-new.c: Cleanup the code.
1827         * src/nact/nact-assistant-export.c (assist_prepare_confirm):
1828         Optimize the build of the displayed text.
1830         * src/nact/nact-assistant-export.c (on_all_widgets_showed):
1831         Select and expand the first row of the list.
1833         * src/core/na-module.c (add_module_type):
1834         * src/io-desktop/nadp-reader.c (na_ifactory_provider_read_item):
1835         * src/io-desktop/nadp-writer.c (nadp_iio_provider_write_item):
1836         * src/nact/nact-export-format.c (draw_in_vbox):
1837         Add a weak_notify() local function in order to be able to trace
1838         the dispose of attached objects.
1840         * src/api/na-core-utils.h:
1841         * src/core/na-core-utils.c
1842         (na_core_utils_str_remove_char): New function.
1844         * src/api/na-iexporter.h:
1845         Onlu reference one short label in NAIExporterFormat structure.
1847         * src/core/na-export-format.c:
1848         * src/core/na-export-format.h:
1849         * src/io-xml/naxml-formats.c: Updated accordingly.
1851         * src/nact/base-window.c (setup_builder):
1852         Display a dialog error when unable to load a XML definition.
1854         * src/nact/nact-assistant-export.c:
1855         * src/nact/nact-assistant-export.ui:
1856         * src/nact/nact-assistant-import.c:
1857         Adjust the display to be more funny.
1859         * src/nact/nact-clipboard.c:
1860         Add na-export-format.h include file.
1862         * src/nact/nact-export-ask.c:
1863         * src/nact/nact-export-format.c:
1864         * src/nact/nact-export-format.h:
1865         Reference the NAExportFormat object instead of each and every label.
1867         * src/nact/nact-iprefs.h:
1868         Remove IPREFS_EXPORT_FORMAT_ASK definition.
1870         * src/nact/nact-preferences-editor.c:
1871         * src/nact/nautilus-actions-config-tool.ui:
1872         Use (renamed) nact_export_format_init_display() function.
1874         * src/api/na-core-utils.h:
1875         * src/core/na-core-utils.c (na_core_utils_file_exists):
1876         New function.
1878         * src/io-xml/naxml-writer.c: Export to file.
1880         * po/POTFILES.in: Updated.
1882         * src/api/na-data-types.h
1883         (na_data_types_get_gconf_dump_key): New function.
1885         * src/core/na-data-types.c: New file.
1887         * src/core/Makefile.am: Updated accordingly.
1889         * src/api/na-ifactory-object-data.h:
1890         * src/core/na-object-item-factory.c:
1891         (NAFO_DATA_TYPE): New elementary data.
1893         * src/core/na-ifactory-object.c:
1894         * src/api/na-ifactory-object.h
1895         (na_ifactory_object_get_data_boxed): New function.
1897         * src/core/na-core-utils.c (na_core_utils_dir_is_writable_uri):
1898         Give a better name to the parameter.
1900         * src/core/na-exporter.c:
1901         * src/core/na-exporter.h (na_exporter_to_buffer, na_exporter_to_file):
1902         Reorder of functions in the files.
1904         * src/core/na-factory-object.c:
1905         * src/core/na-factory-object.h:
1906         Now use the new na_ifactory_object_get_data_boxed() function.
1908         * src/core/na-object-action-factory.c:
1909         * src/core/na-object-profile-factory.c:
1910         * src/io-xml/naxml-keys.h:
1911         Move the schema descriptions to data factory.
1913         * src/core/na-object-action.c:
1914         * src/core/na-object-menu.c:
1915         (ifactory_object_read_start): Allocate the 'type' data boxed.
1917         * src/io-gconf/nagp-keys.h: Fix the path of the schemas.
1919         * src/io-xml/naxml-formats.c:
1920         * src/io-xml/naxml-formats.h: New files.
1922         * src/io-xml/Makefile.am: Updated accordingly.
1924         * src/io-xml/naxml-provider.c: Implement NAXMLWriter calls.
1926         * src/io-xml/naxml-writer.c:
1927         * src/io-xml/naxml-writer.h: Export to buffer.
1929         * src/nact/nact-clipboard.c
1930         (nact_clipboard_dnd_drag_end): Fix gtk_selection_data_free() call.
1931         (export_row_object): Also exports menus.
1933         * src/nact/nact-tree-model-dnd.c
1934         (nact_tree_model_dnd_imulti_drag_source_drag_data_get):
1935         Fix and parse the returned URI to get the path of the target folder.
1937 2010-03-01 Pierre Wieser <pwieser@trychlos.org>
1939         * po/POTFILES.in: Add src/core/na-exporter.c file.
1941         * src/api/na-iexporter.h: Refactor NAIExporter interface.
1943         * src/core/na-export-format.c:
1944         * src/core/na-export-format.h
1945         (na_export_format_get_exporter): New function.
1947         * src/core/na-exporter.c:
1948         * src/core/na-exporter.h:
1949         * src/core/na-iexporter.c:
1950         * src/core/na-importer.c:
1951         * src/io-xml/naxml-provider.c:
1952         * src/nact/nact-assistant-export.c:
1953         * src/nact/nact-clipboard.c: Updated accordingly.
1955         * src/api/na-iexporter.h:
1956         * src/core/na-export-format.c:
1957         * src/core/na-export-format.h:
1958         * src/core/na-exporter.c:
1959         * src/core/na-iexporter.c:
1960         * src/io-xml/naxml-provider.c:
1961         * src/nact/nact-export-format.c:
1962         NAExporterStr structure is renamed as NAIExporterFormat.
1964         * src/api/na-iimporter.h (from_uri):
1965         Rename the API function to be consistant with NAIExporter interface.
1967         * src/core/na-iimporter.c:
1968         * src/io-xml/naxml-provider.c: Updated accordingly.
1970         * src/nact/nact-tree-model-dnd.c
1971         (nact_tree_model_dnd_imulti_drag_source_drag_data_get):
1972         Target folder is an URI.
1974         * src/nact/nact-main-menubar-tools.c:
1975         * src/nact/nact-main-menubar-tools.h: New files.
1977         * src/nact/nact-main-menubar-maintainer.c:
1978         * src/nact/nact-main-menubar-maintainer.h: New files.
1980         * src/nact/nact-main-menubar.c (on_update_sensitivities):
1981         Only paste a NAObjectItem into a menu.
1983         * src/nact/nact-main-menubar-help.c:
1984         * src/nact/nact-main-menubar-help.h: New files.
1986         * src/nact/Makefile.am:
1987         * src/nact/nact-main-menubar.c:
1988         * src/nact/nact-main-menubar.h: Updated accordingly.
1990         * src/core/na-updater.c:
1991         * src/core/na-updater.h (na_updater_append_item): New function.
1993         * src/nact/nact-main-menubar.c (save_item): Fix save machinery.
1995         * src/nact/nact-assistant-import.c
1996         (check_for_existance): Directly use the main window.
1998         * src/nact/nact-tree-model-dnd.c (drop_uri_list):
1999         Adapt to use na_importer_import_from_list() function.
2000         Display messages in a dialog box.
2001         Split the selection data on a '\r\n' separator.
2003         * src/api/na-iimporter.h (NAIImporterListParms): New structure.
2005         * src/core/na-importer.c:
2006         * src/core/na-importer.h (na_importer_import_from_list): New function.
2008         * src/api/na-iimporter.h:
2009         * src/core/na-iimporter.c:
2010         * src/core/na-importer-ask.c:
2011         * src/core/na-importer-ask.h:
2012         * src/core/na-importer.c:
2013         * src/core/na-importer.h:
2014         * src/io-xml/naxml-reader.c:
2015         * src/io-xml/naxml-reader.h:
2016         * src/nact/nact-assistant-import.c:
2017         * src/nact/nact-tree-model-dnd.c:
2018         * src/test/test-reader.c:
2019         NAIImporterParms structure is renamed as NAIImporterUriParms.
2020         'item' member of this same structure is renamed as imported.
2022         * src/io-gconf/nagp-reader.c:
2023         * src/io-gconf/nagp-writer.c:
2024         * src/io-gconf/nagp-writer.h: Cleanup the code.
2026         * src/nact/nact-iaction-tab.c (setup_toolbar_label):
2027         Immediately update the toolbar label when it is the same that those
2028         of the action.
2030         * src/nact/nact-icommand-tab.c (parse_parameters):
2031         Fix display of a single '%' char.
2033         * src/nact/nautilus-actions-config-tool.ui:
2034         ActionIconLabelLabel field renamed as ActionToolbarLabelLabel.
2036         * src/io-gconf/nagp-reader.c (read_done_item):
2037         Only action needs to setup the parent pointer.
2039         * src/io-gconf/nagp-writer.c (nagp_writer_write_data):
2040         Only writes non-empty values.
2042         * src/core/na-object.c (na_object_object_reset_origin):
2043         No more check for the value of object origin before resetting it.
2045         * src/core/na-object-item.c
2046         (na_object_item_remove_item): Improve debug message.
2047         (copy_children): Refuse to copy when target already has children.
2049         * src/nact/nact-main-menubar.c
2050         (nact_main_menubar_save_items): Do not re-dump all the items hierarchy.
2051         (save_item): Remove old children after having created the new ones.
2053         * src/core/na-object-action.c (ifactory_object_read_done):
2054         Force toolbar label to be the same that action one if flag is set to true.
2056         * src/api/na-object-api.h: Fix minor typo.
2058 2010-02-28 Pierre Wieser <pwieser@trychlos.org>
2060         * src/io-desktop/nadp-desktop-file.c
2061         (nadp_desktop_file_get_key_file_path):
2062         No more invalidate the function.
2064         * src/api/na-ifactory-object.h:
2065         * src/core/na-object-item-factory.c:
2066         * src/nact/nact-iactions-list-bis.c:
2067         * src/nact/nact-iactions-list.h:
2068         Fix minor typo.
2070         * src/api/na-object-api.h:
2071         New na_object_copy macro (evaluates as na_object_object_copy).
2073         * src/api/na-object-item.h (na_object_item_copy): Removed function.
2075         * src/api/na-object.h:
2076         * src/core/na-object.c:.
2077         (copy): Add 'recursive' flag.
2078         (iduplicable_copy): Use na_object_copy() macro.
2079         (na_object_object_copy): New function.
2081         * src/core/na-factory-object.c (na_factory_object_copy):
2082         No more delete all NADataBoxed, but update those who already exist.
2083         (write_data_iter): Fix return code.
2085         * src/core/na-iduplicable.c (na_iduplicable_duplicate):
2086         Review the rationale, and ensure that the function is recursive.
2088         * src/core/na-object-action.c
2089         * src/core/na-object-item.c:
2090         * src/core/na-object-menu.c:
2091         * src/core/na-object-profile.c:
2092         (instance_constructed): Removed function.
2093         (ifactory_object_copy): Removed function.
2094         (object_copy): New function, implementation of NAObject::copy.
2096         * src/core/na-pivot.c (instance_dispose): Add debug message.
2098         * src/core/na-updater.c (na_updater_remove_item):
2099         Only update tree if object has no parent.
2101         * src/io-gconf/nagp-gconf-provider.c
2102         (ifactory_provider_iface_init): Address nagp_writer_write_start().
2104         * src/io-gconf/nagp-reader.c (nagp_reader_read_data): Comment debug message.
2106         * src/io-gconf/nagp-writer.c:
2107         * src/io-gconf/nagp-writer.h (nagp_writer_write_start): New function.
2108         Write the type of the NAObjectItem.
2110         * src/nact/nact-iaction-tab.c (on_tab_updatable_selection_changed):
2111         * src/nact/nact-icommand-tab.c (on_tab_updatable_selection_changed):
2112         * src/nact/nact-iconditions-tab.c (on_tab_updatable_selection_changed):
2113         As objects have defaults, no more test for null string.
2115         * src/nact/nact-main-menubar.c
2116         (nact_main_menubar_save_items): Dump after check status.
2117         (save_item): Use new na_object_copy() macro.
2119         * src/nact/nact-window.c (nact_window_save_item):
2120         Remove superfluous dumps.
2122 2010-02-27 Pierre Wieser <pwieser@trychlos.org>
2124         * src/core/na-iduplicable.c (na_iduplicable_check_status):
2125         An object without any origin is considered modified.
2127         * src/core/na-iduplicable.c (get_duplicable_str):
2128         NAIDuplicable object defaults to not modified.
2130         * src/core/na-object-item-factory.c:
2131         Pointers to list of subitems are not comparable.
2133         Rewrite the update of the pivot tree where there is a non null origin.
2134         * src/core/na-updater.c:
2135         * src/core/na-updater.h
2136         (na_updater_add_item): Removed function.
2137         (na_updater_insert_item): New function.
2139         * src/io-gconf/nagp-writer.c (nagp_writer_write_data):
2140         Fix the path of written data.
2142         * src/nact/nact-main-menubar.c (on_new_profile_activated): 
2143         Do not attach the profile as this is done by the tree model.
2144         (save_item): Copy the tree item to the pivot one if it exists.
2146         * src/core/na-object-item.c (instance_dispose):
2147         Set the subitems pointer to NULL before unreffing the children.
2149         * src/core/na-object.c (instance_finalize):
2150         Add a protection when finalizing NADataBoxed.
2152         * src/core/na-object-action.c (instance_constructed):
2153         * src/core/na-object-profile.c (instance_constructed):
2154         * src/core/na-object-menu.c (instance_constructed):
2155         Initialize NAIFactoryObject defaults here, rather than in object_new.
2157         * src/api/na-data-def.h: Remove fn_free() function pointer.
2159         * src/core/na-data-boxed.c:
2160         * src/core/na-object-action-factory.c:
2161         * src/core/na-object-id-factory.c:
2162         * src/core/na-object-profile-factory.c
2163         * src/core/na-object-item-factory.c: Updated accordingly.
2165         * src/core/na-iduplicable.c (get_duplicable_str):
2166         Initialize modification status to TRUE if origin is NULL.
2168         * src/nact/nact-tree-model.c (nact_tree_model_fill):
2169         Recheck modification and validity status of newly duplicated object.
2171 2010-02-26 Pierre Wieser <pwieser@trychlos.org>
2173         Fix references count mistakes in NACT.
2175         * src/api/na-object-api.h (na_object_unref_selected_items):
2176         New macro, more specifically targeting the tree selections.
2178         * src/core/na-factory-object.c:
2179         * src/core/na-factory-object.h (na_factory_object_finalize_instance):
2180         Renamed as na_factory_object_finalize().
2182         * src/core/na-object-action.c (instance_finalize):
2183         * src/core/na-object-item.c (instance_finalize):
2184         * src/core/na-object-menu.c (instance_finalize):
2185         * src/core/na-object-profile.c (instance_finalize):
2186         * src/core/na-object.c (instance_finalize):
2187         Move na_object_unref_selected_items() to 
2188         na_object:na_factory_object_finalize.
2190         * src/core/na-pivot.c (instance_dispose, reload_items):
2191         Use non-recursive na_object_unref_items() macro.
2193         * src/nact/nact-assistant-export.c (assist_prepare_confirm):
2194         * src/nact/nact-iactions-list.c (free_items_callback):
2195         * src/nact/nact-main-menubar.c (on_update_sensitivities):
2196         Use recursive na_object_unref_selected_items() macro.
2198         * src/nact/nact-iactions-list.c (filter_selection):
2199         Unref the got object immediately (which was the actual bug).
2201         * src/test/init-dispose-diff.sh: Fix and optimize.
2203         Fix display of modification status in NACT.
2205         * src/api/na-iduplicable.h:
2206         * src/core/na-iduplicable.c (na_iduplicable_set_modified):
2207         New function.
2209         * src/api/na-object-api.h:
2210         * src/api/na-object-item.h:
2211         * src/core/na-object-item.c (na_object_item_unref_items_rec):
2212         New function.
2214         * src/core/na-data-boxed.c (string_are_equal):
2215         * src/core/na-factory-object.c (na_factory_object_are_equal):
2216         * src/core/na-object.c (na_object_object_check_status_up):
2217         Rewrite equality tests.
2219         * src/core/na-object-action-factory.c:
2220         * src/core/na-object-item-factory.c:
2221         * src/core/na-object-profile-factory.c:
2222         * src/core/na-object-action.c:
2223         * src/core/na-object-menu.c:
2224         * src/core/na-object-profile.c:
2225         Review one more time default values and initial allocations.
2227         * src/core/na-pivot.c (instance_dispose, na_pivot_load_items:
2228         Only unref the first level of items.
2230         * src/core/na-updater.c (na_updater_remove_item):
2231         Only unref the removed object as it will take care of also unreffing
2232         its children if its reference count is correct.
2234         * src/nact/nact-iactions-list.c (display_label):
2235         Add a commented debug line.
2237         * src/test/check-po.sh: Test cpompleteness of po/POTFILES.in.
2238         * src/test/time.sh: Bench the elapsed build time.
2240 2010-02-25 Pierre Wieser <pwieser@trychlos.org>
2242         * po/POTFILES.in: Updated.
2244         * src/core/na-object-profile.c:
2245         Remove no more used default profile.
2247         * src/core/na-object-profile.c:
2248         * src/nact/nact-iactions-list.c:
2249         No more include gi18n.h.
2251         * src/api/na-ifactory-object.h:
2252         * src/core/na-ifactory-object.c:
2253         Remove get_default() function from the interface.
2255         * src/api/na-object-action.h:
2256         * src/core/na-object-action.c (na_object_action_new_with_defaults):
2257         New function.
2258         Remove ifactory_object_get_default() implementation.
2260         * src/api/na-object-menu.h:
2261         * src/core/na-object-menu.c (na_object_menu_new_with_defaults):
2262         New function.
2263         Remove ifactory_object_get_default() implementation.
2265         * src/api/na-object-profile.h:
2266         * src/core/na-object-profile.c (na_object_profile_new_with_defaults):
2267         New function.
2268         Remove ifactory_object_get_default() implementation.
2270         * src/core/na-factory-object.c:
2271         * src/core/na-factory-object.h
2272         (na_factory_object_set_defaults): New function.
2273         (na_factory_object_attach_with_default): Removed function.
2274         Cleanup the code.
2276         * src/core/na-object-action-factory.c:
2277         * src/core/na-object-item-factory.c:
2278         * src/core/na-object-profile-factory.c:
2279         Review default values.
2281         * src/nact/nact-iaction-tab.c:
2282         * src/nact/nact-icommand-tab.c:
2283         * src/nact/nact-iconditions-tab.c:
2284         Fix the display of NULL texts.
2286         * src/nact/nact-main-menubar.c:
2287         * src/utils/nautilus-actions-new.c:
2288         Allocate new objects with defaults.
2290         * src/api/na-ifactory-object.h:
2291         * src/api/na-ifactory-provider.h:
2292         * src/api/na-object-api.h:
2293         * src/api/na-object-item.h:
2294         * src/core/na-factory-object.c:
2295         * src/core/na-factory-object.h:
2296         * src/core/na-factory-provider.c:
2297         * src/core/na-factory-provider.h:
2298         * src/core/na-ifactory-provider.c:
2299         * src/core/na-object-action.c:
2300         * src/core/na-object-item.c:
2301         * src/core/na-object-menu.c:
2302         * src/core/na-object-profile.c:
2303         * src/core/na-updater.c:
2304         * src/io-gconf/nagp-gconf-provider.c:
2305         * src/io-gconf/nagp-writer.c:
2306         * src/io-gconf/nagp-writer.h:
2307         Implement NAIfactoryProvider in GConf I/O provider writer.
2309         Fix reference count errors in NACT user interface.
2311         * src/core/na-object-id.c (instance_dispose):
2312         Remove the disposing child from its parent childs list.
2314         * src/core/na-object-item-factory.c (free_items_list):
2315         * src/core/na-object-item.c (instance_dispose):
2316         * src/core/na-object.c (na_object_object_unref):
2317         Fix minor typo.
2319         * src/core/na-object-item.c (na_object_item_unref_items):
2320         Do not recursively unref objects here as this is done in dispose.
2322         * src/nact/nact-tree-model.c (nact_tree_model_dispose):
2323         Add a debug message.
2325         Make the menus exportable.
2327         * src/nact/nact-iactions-list.c:
2328         * src/nact/nact-tree-model-priv.h:
2329         * src/nact/nact-tree-model.c:
2330         * src/nact/nact-tree-model.h:
2331         Change the 'only_actions' semantic by a 'are_profiles_displayed' one.
2332         Profiles are actually stored, but not displayed.
2334         * src/nact/nact-iactions-list.c
2335         (nact_iactions_list_initial_load_toplevel):
2336         The title of the label column is no more localizable.
2338         Fix validity checks.
2340         * src/core/na-data-boxed.c
2341         (string_is_valid, locale_is_valid, slist_is_valid, pointer_is_valid,
2342         uint_is_valid): Fix individual validity checks of elementary data.
2344         * src/core/na-factory-object.c (na_factory_object_is_valid):
2345         First check for presence of mandatory data, then check present data.
2347         * src/core/na-iduplicable.c (na_iduplicable_duplicate):
2348         Also duplicate the status of the source object.
2350         * src/core/na-io-provider.c (na_io_provider_read_items):
2351         Add a comment.
2353         * src/core/na-object-item.c (na_object_item_copy):
2354         * src/core/na-object.c (na_object_object_check_status):
2355         Fix minor typo.
2357         * src/nact/nact-tree-model.c (nact_tree_model_fill):
2358         No more check status of newly duplicated objects.
2360         * src/nact/base-window.c (instance_dispose):
2361         Only set dispose after having tested for main window.
2363         * src/api/na-object-api.h:
2364         Distinguish between profile and item on get_label.
2366         * src/core/na-gtk-utils.c:
2367         * src/core/na-gtk-utils.h: New files.
2368         * src/core/Makefile.am: Updated accordingly.
2370         * src/core/na-data-boxed.c:
2371         * src/core/na-gconf-monitor.c:
2372         * src/core/na-importer-ask.c:
2373         * src/io-gconf/nagp-gconf-provider.c:
2374         * src/io-gconf/nagp-reader.c:
2375         * src/io-gconf/nagp-reader.h:
2376         Fix objects reading from GConf.
2378         * src/nact/nact-assistant-import.c:
2379         * src/nact/nact-iprefs.c:
2380         * src/nact/nact-preferences-editor.c:
2381         * src/nact/nact-tree-model-dnd.c:
2382         * src/utils/nautilus-actions-schemas.c:
2383         Move GConfClient to private object data, unref on dispose.
2385 2010-02-24 Pierre Wieser <pwieser@trychlos.org>
2387         * src/api/na-iimporter.h:
2388         * src/core/Makefile.am:
2389         * src/core/na-iimporter.c:
2390         * src/core/na-importer-ask.c:
2391         * src/core/na-importer-ask.h:
2392         * src/core/na-iprefs.c:
2393         * src/core/na-iprefs.h:
2394         * src/io-xml/naxml-reader.c:
2395         * src/nact/Makefile.am:
2396         * src/nact/nact-assistant-import.c:
2397         * src/nact/nact-iprefs.c:
2398         * src/nact/nact-iprefs.h:
2399         * src/nact/nact-main-window.h:
2400         * src/nact/nact-preferences-editor.c:
2401         * src/nact/nact-tree-model-dnd.c:
2402         * src/nact/nautilus-actions-config-tool.ui:
2403         * src/test/test-reader.c: ImporterAsk dialog.
2405         * src/io-xml/naxml-keys.c:
2406         * src/io-xml/naxml-keys.h:
2407         * src/io-xml/naxml-reader.c: Able to import type 3 XML files.
2409         * exports/config_1af5a47e-96d9_v1.4.schemas:
2410         * src/api/na-data-boxed.h:
2411         * src/api/na-ifactory-object-data.h:
2412         * src/core/na-data-boxed.c:
2413         * src/core/na-factory-object.c:
2414         * src/core/na-object-action.c:
2415         * src/core/na-object-id-factory.c:
2416         * src/core/na-object-item-factory.c:
2417         * src/core/na-object-profile-factory.c:
2418         * src/io-xml/naxml-provider.c:
2419         * src/io-xml/naxml-reader.c:
2420         * src/io-xml/naxml-reader.h: Able to import two profiles.
2422         * src/api/na-data-boxed.h:
2423         * src/api/na-gconf-utils.h:
2424         * src/core/na-data-boxed.c:
2425         * src/core/na-factory-object.c:
2426         * src/core/na-gconf-utils.c:
2427         Make the dump more pretty.
2429         * exports/action-5c4fa203-b5d0_post_v1.11_type_3.xml:
2430         * exports/config-4c4fa203-b5d0_post_v1.11_type_2.schema:
2431         * exports/config_1af5a47e-96d9_v1.schemas:
2432         * exports/config_2af5a47e-96d9_pre_v1.11.schemas:
2433         * exports/config_3c4fa203-b5d0_post_v1.11_type_1.schemas:
2434         Refactor export files to better suit test-reader needs.
2436         * src/api/Makefile.am:
2437         * src/api/na-data-boxed.h:
2438         * src/api/na-data-types.h:
2439         * src/api/na-gconf-utils.h:
2440         * src/api/na-ifactory-object-data.h:
2441         * src/api/na-ifactory-object.h:
2442         * src/api/na-ifactory-provider.h:
2443         * src/api/na-iimporter.h:
2444         * src/api/na-object-api.h:
2445         * src/api/na-object-profile.h:
2446         * src/core/Makefile.am:
2447         * src/core/na-data-boxed.c:
2448         * src/core/na-factory-object.c:
2449         * src/core/na-factory-object.h:
2450         * src/core/na-factory-provider.c:
2451         * src/core/na-factory-provider.h:
2452         * src/core/na-gconf-utils.c:
2453         * src/core/na-ifactory-object.c:
2454         * src/core/na-ifactory-provider.c:
2455         * src/core/na-importer.c:
2456         * src/core/na-importer.h:
2457         * src/core/na-io-provider.c:
2458         * src/core/na-object-action-factory.c:
2459         * src/core/na-object-action.c:
2460         * src/core/na-object-id-factory.c:
2461         * src/core/na-object-item-factory.c:
2462         * src/core/na-object-menu-factory.c:
2463         * src/core/na-object-menu.c:
2464         * src/core/na-object-profile-factory.c:
2465         * src/core/na-object-profile.c:
2466         * src/io-desktop/nadp-desktop-file.c:
2467         * src/io-desktop/nadp-desktop-file.h:
2468         * src/io-desktop/nadp-desktop-provider.c:
2469         * src/io-desktop/nadp-keys.c:
2470         * src/io-desktop/nadp-keys.h:
2471         * src/io-desktop/nadp-reader.c:
2472         * src/io-gconf/nagp-gconf-provider.c:
2473         * src/io-xml/naxml-keys.h:
2474         * src/io-xml/naxml-provider.c:
2475         * src/io-xml/naxml-reader.c:
2476         * src/io-xml/naxml-reader.h:
2477         * src/nact/nact-assistant-import.c:
2478         * src/nact/nact-tree-model-dnd.c:
2479         * src/test/test-include.c:
2480         * src/test/test-reader.c: Able to import a pre-v2 action.
2482 2010-02-22 Pierre Wieser <pwieser@trychlos.org>
2484         * src/api/Makefile.am:
2485         * src/api/na-ifactory-object-enum.h:
2486         * src/api/na-ifactory-object-str.h:
2487         * src/api/na-ifactory-object.h:
2488         * src/api/na-ifactory-provider.h:
2489         * src/api/na-iio-provider.h:
2490         * src/api/na-object-api.h:
2491         * src/core/Makefile.am:
2492         * src/core/na-data-element.c:
2493         * src/core/na-data-element.h:
2494         * src/core/na-factory-object.c:
2495         * src/core/na-factory-object.h:
2496         * src/core/na-ifactory-object.c:
2497         * src/core/na-ifactory-provider-priv.h:
2498         * src/core/na-ifactory-provider.c:
2499         * src/core/na-object-action-enum.c:
2500         * src/core/na-object-action.c:
2501         * src/core/na-object-id-enum.c:
2502         * src/core/na-object-item-enum.c:
2503         * src/core/na-object-item.c:
2504         * src/core/na-object-menu-enum.c:
2505         * src/core/na-object-menu.c:
2506         * src/core/na-object-profile-enum.c:
2507         * src/core/na-object-profile.c:
2508         * src/core/na-object.c:
2509         * src/io-desktop/nadp-desktop-provider.c:
2510         * src/io-desktop/nadp-desktop-provider.h:
2511         * src/io-desktop/nadp-keys.c:
2512         * src/io-desktop/nadp-keys.h:
2513         * src/io-desktop/nadp-reader.c:
2514         * src/io-desktop/nadp-writer.c:
2515         * src/io-xml/naxml-keys.h:
2516         * src/io-xml/naxml-reader.c:
2517         * src/test/test-include.c:
2518         Rename NAIDataFactory interface as NAIFactoryObject.
2520         * src/api/Makefile.am:
2521         * src/api/na-idata-factory-str.h:
2522         * src/api/na-idata-factory.h:
2523         * src/api/na-ifactory-provider-provider.h:
2524         * src/api/na-ifactory-provider.h:
2525         * src/api/na-iio-provider.h:
2526         * src/core/Makefile.am:
2527         * src/core/na-data-factory.c:
2528         * src/core/na-data-factory.h:
2529         * src/core/na-factory-provider.c:
2530         * src/core/na-factory-provider.h:
2531         * src/core/na-ifactory-provider-priv.h:
2532         * src/core/na-ifactory-provider.c:
2533         * src/core/na-object-action.c:
2534         * src/core/na-object-menu.c:
2535         * src/core/na-object-profile.c:
2536         * src/io-desktop/nadp-desktop-provider.c:
2537         * src/io-desktop/nadp-reader.c:
2538         * src/io-desktop/nadp-writer.c:
2539         * src/io-gconf/nagp-gconf-provider.c:
2540         * src/io-xml/naxml-provider.c:
2541         * src/io-xml/naxml-reader.c:
2542         Rename NAIIOFactory interface as NAIFactoryProvider.
2544         * src/core/na-io-provider.c:
2545         * src/core/na-pivot.c:
2546         * src/core/na-pivot.h:
2547         * src/nact/nact-application.c:
2548         * src/nact/nact-main-window.c:
2549         * src/plugin-menu/nautilus-actions.c:
2550         * src/utils/nautilus-actions-run.c
2551         (na_pivot_set_loadable): New function.
2552         (na_pivot_reload_items): Removed function.
2554 2010-02-21 Pierre Wieser <pwieser@trychlos.org>
2556         * src/core/na-pivot.c:
2557         * src/core/na-pivot.h:
2558         * src/core/na-updater.c:
2559         * src/core/na-updater.h:
2560         * src/nact/nact-application.c:
2561         * src/nact/nact-main-window.c:
2562         * src/plugin-menu/nautilus-actions.c:
2563         * src/test/test-reader.c:
2564         * src/utils/nautilus-actions-new.c:
2565         * src/utils/nautilus-actions-run.c:
2566         No more define the loadable set at NAPivot construction time,
2567         but deffer this when actually loading items.
2569 2010-02-20 Pierre Wieser <pwieser@trychlos.org>
2571         * po/POTFILES.in:
2572         * src/api/na-idata-factory-str.h:
2573         * src/api/na-idata-factory.h:
2574         * src/api/na-iimporter.h:
2575         * src/api/na-iio-factory.h:
2576         * src/api/na-object-api.h:
2577         * src/core/Makefile.am:
2578         * src/core/na-data-factory.c:
2579         * src/core/na-data-factory.h:
2580         * src/core/na-idata-factory.c:
2581         * src/core/na-iio-factory.c:
2582         * src/core/na-importer.c:
2583         * src/core/na-importer.h:
2584         * src/core/na-io-factory.c:
2585         * src/core/na-io-factory.h:
2586         * src/core/na-iprefs.h:
2587         * src/core/na-module.c:
2588         * src/core/na-object-action-enum.c:
2589         * src/core/na-object-action.c:
2590         * src/core/na-object-id-enum.c:
2591         * src/core/na-object-item-enum.c:
2592         * src/core/na-object-item.c:
2593         * src/core/na-object-menu-enum.c:
2594         * src/core/na-object-menu.c:
2595         * src/core/na-object-profile-enum.c:
2596         * src/core/na-object-profile.c:
2597         * src/core/na-pivot.c:
2598         * src/io-desktop/Makefile.am:
2599         * src/io-gconf/Makefile.am:
2600         * src/io-xml/Makefile.am:
2601         * src/io-xml/naxml-keys.c:
2602         * src/io-xml/naxml-keys.h:
2603         * src/io-xml/naxml-provider.c:
2604         * src/io-xml/naxml-provider.h:
2605         * src/io-xml/naxml-reader.c:
2606         * src/io-xml/naxml-reader.h:
2607         * src/nact/Makefile.am:
2608         * src/nact/nact-assistant-import.c:
2609         * src/nact/nact-import-ask.c:
2610         * src/nact/nact-iprefs.c:
2611         * src/nact/nact-preferences-editor.c:
2612         * src/nact/nact-tree-model-dnd.c:
2613         * src/plugin-menu/Makefile.am:
2614         * src/plugin-tracker/Makefile.am:
2615         * src/test/.gitignore:
2616         * src/test/Makefile.am:
2617         * src/utils/Makefile.am: Implement NAXMLReader.
2619 2010-02-18 Pierre Wieser <pwieser@trychlos.org>
2621         * src/api/na-core-utils.h:
2622         * src/api/na-idata-factory-str.h:
2623         * src/core/na-core-utils.c:
2624         * src/core/na-data-element.c:
2625         * src/core/na-data-element.h:
2626         * src/core/na-data-factory.c:
2627         * src/core/na-io-provider.c:
2628         * src/core/na-io-provider.h:
2629         * src/core/na-object-action-enum.c:
2630         * src/core/na-object-id-enum.c:
2631         * src/core/na-object-item-enum.c:
2632         * src/core/na-object-item.c:
2633         * src/core/na-object-menu-enum.c:
2634         * src/core/na-object-profile-enum.c:
2635         * src/core/na-object.c:
2636         * src/io-desktop/nadp-writer.c:
2637         * src/io-gconf/nagp-reader.c:
2638         * src/nact/nact-assistant-export.c:
2639         * src/nact/nact-iactions-list-bis.c:
2640         * src/nact/nact-main-statusbar.c:
2641         * src/nact/nact-tree-model-dnd.c:
2642         * src/nact/nact-tree-model.c:
2643         Fix non empty string list.
2644         Fix under reference in export assistant.
2645         Refactor NADataElement class.
2647         * src/core/na-exporter.c (na_exporter_get_formats):
2648         Fix infinite loop.
2650         * src/core/na-iduplicable.c (na_iduplicable_dispose):
2651         Test for effective connexion before trying to disconnect.
2653         * src/core/na-data-element.c (na_data_element_set):
2654         Fix value->type inverted assertion.
2656         * src/api/na-core-utils.h:
2657         * src/core/na-core-utils.c:
2658         * src/io-desktop/nadp-desktop-file.c:
2659         * src/io-desktop/nadp-desktop-provider.c:
2660         * src/io-desktop/nadp-xdg-dirs.c:
2661         Fix reading of localized values in the desktop file.
2663         * src/nact/base-iprefs.c:
2664         * src/nact/base-iprefs.h:
2665         * src/nact/nact-assistant-import.c:
2666         * src/nact/nact-icommand-tab.c:
2667         * src/nact/nact-import-ask.c:
2668         * src/nact/nact-iprefs.c:
2669         * src/nact/nact-iprefs.h:
2670         * src/nact/nact-main-toolbar.c:
2671         * src/nact/nact-preferences-editor.c:
2672         Fix bad inheritance of interfaces.
2674         * src/api/na-object-api.h:
2675         * src/api/na-object.h:
2676         * src/core/na-data-factory.c:
2677         * src/core/na-io-provider.c:
2678         * src/core/na-object-action.c:
2679         * src/core/na-object-id.c:
2680         * src/core/na-object-menu.c:
2681         * src/core/na-object-profile.c:
2682         * src/core/na-object.c: Fix validity check of the items.
2684 2010-02-17 Pierre Wieser <pwieser@trychlos.org>
2686         * po/POTFILES.in:
2687         * src/test/test-parse-uris.c:
2688         * src/nact/nact-preferences-editor.c:
2689         * src/nact/nact-main-statusbar.c:
2690         * src/nact/nact-iconditions-tab.c: Update list of translatable files.
2692         * src/api/na-core-utils.h:
2693         * src/api/na-idata-factory-str.h:
2694         * src/api/na-idata-factory.h:
2695         * src/api/na-iduplicable.h:
2696         * src/core/na-core-utils.c:
2697         * src/core/na-data-element.c:
2698         * src/core/na-data-element.h:
2699         * src/core/na-data-factory.c:
2700         * src/core/na-data-factory.h:
2701         * src/core/na-idata-factory.c:
2702         * src/core/na-iduplicable.c:
2703         * src/core/na-io-provider.c:
2704         * src/core/na-iprefs.c:
2705         * src/core/na-object-action-enum.c:
2706         * src/core/na-object-action.c:
2707         * src/core/na-object-id-enum.c:
2708         * src/core/na-object-item-enum.c:
2709         * src/core/na-object-menu.c:
2710         * src/core/na-object-profile-enum.c:
2711         * src/core/na-object-profile.c:
2712         * src/core/na-object.c:
2713         * src/io-desktop/nadp-desktop-provider.c:
2714         * src/io-gconf/nagp-reader.c: Add is_valid() functions.
2716         * src/utils/nautilus-actions-run.c: Restore production loadable set.
2718         * src/api/na-idata-factory.h:
2719         * src/api/na-iio-factory.h:
2720         * src/core/na-data-factory.c:
2721         * src/core/na-iio-factory.c:
2722         * src/core/na-object-action.c:
2723         * src/core/na-object-menu.c:
2724         * src/core/na-object-profile.c:
2725         * src/io-desktop/nadp-desktop-provider.c:
2726         * src/io-gconf/nagp-gconf-provider.c:
2727         * src/io-xml/naxml-provider.c:
2728         Add read_start() and write_start() to NAIIOFactory and 
2729         NAIDataFactory interfaces.
2731         * po/POTFILES.in: Update list of translatable files.
2733         * src/utils/console-utils.c:
2734         * src/utils/nautilus-actions-run.c: Update command-line utilities.
2736         * src/test/test-include.c:
2737         * src/test/test-parse-uris.c: Update test utilities.
2739         * src/plugin-tracker/na-tracker-dbus.c:
2740         * src/plugin-tracker/na-tracker.c: Update NATracker plugin.
2742         * src/core/Makefile.am:
2743         * src/core/na-updater.c:
2744         * src/core/na-updater.h:
2745         * src/nact/nact-window.c:
2746         * src/nact/nact-window.h: Update NactWindow class.
2748         * src/api/na-object-api.h:
2749         * src/api/na-object-item.h:
2750         * src/core/na-object-item.c:
2751         * src/nact/nact-tree-model-dnd.c:
2752         * src/nact/nact-tree-model.c: Update NactTreeModel class.
2754         * src/api/na-core-utils.h:
2755         * src/api/na-object-api.h:
2756         * src/api/na-object-profile.h:
2757         * src/core/na-core-utils.c:
2758         * src/core/na-object-profile.c:
2759         * src/io-gconf/nagp-reader.c:
2760         * src/nact/nact-ibackground-tab.c:
2761         * src/nact/nact-schemes-list.c: Update schemes list.
2763         * src/nact/nact-providers-list.c: Update providers list.
2765         * src/core/na-iprefs.c:
2766         * src/core/na-iprefs.h:
2767         * src/nact/nact-assistant-export.c:
2768         * src/nact/nact-export-ask.c:
2769         * src/nact/nact-export-format.c:
2770         * src/nact/nact-export-format.h:
2771         * src/nact/nact-preferences-editor.c:
2772         * src/nact/nact-preferences.ui: Update NactPreferencesEditor class.
2774         * src/nact/base-iprefs.c:
2775         * src/nact/base-iprefs.h:
2776         * src/nact/nact-main-window.c:
2777         * src/nact/nact-main-window.h: Update NactMainWindow class.
2779         * src/core/na-iprefs.c:
2780         * src/core/na-iprefs.h:
2781         * src/nact/nact-iprefs.c:
2782         * src/nact/nact-iprefs.h:
2783         * src/nact/nact-main-toolbar.c: Update toolbar.
2785         * src/api/na-iio-provider.h:
2786         * src/core/na-io-provider.c:
2787         * src/core/na-io-provider.h:
2788         * src/nact/nact-main-statusbar.c: Update status bar.
2790         * src/api/na-object-action.h:
2791         * src/api/na-object-api.h:
2792         * src/api/na-object-id.h:
2793         * src/api/na-object-item.h:
2794         * src/api/na-object-profile.h:
2795         * src/api/na-object.h:
2796         * src/core/na-object-action.c:
2797         * src/core/na-object-id.c:
2798         * src/core/na-object-item.c:
2799         * src/core/na-object-profile.c:
2800         * src/core/na-object.c:
2801         * src/core/na-pivot.c:
2802         * src/core/na-pivot.h:
2803         * src/core/na-updater.c:
2804         * src/core/na-updater.h:
2805         * src/nact/nact-export-format.c:
2806         * src/nact/nact-main-menubar.c: Update menu bar.
2808         * src/nact/nact-iprefs.c: Update NactIPrefs interface.
2810         * src/api/na-core-utils.h:
2811         * src/core/na-core-utils.c:
2812         * src/nact/nact-iconditions-tab.c:
2813         Update NactIConditionsTab interface.
2815         * src/api/na-core-utils.h:
2816         * src/core/na-core-utils.c:
2817         * src/core/na-iprefs.c:
2818         * src/core/na-iprefs.h:
2819         * src/nact/nact-icommand-tab.c:
2820         * src/nact/nact-iprefs.c:
2821         * src/nact/nact-iprefs.h: Update NactICommandTab interface.
2823         * src/api/na-object-api.h:
2824         * src/api/na-object-profile.h:
2825         * src/core/na-object-profile.c:
2826         * src/nact/nact-iaction-tab.c:
2827         * src/nact/nact-iadvanced-tab.c:
2828         * src/nact/nact-ibackground-tab.c: Update NactIBackgroundTab
2829         interface.
2831         * src/api/na-object-api.h:
2832         * src/api/na-object-item.h:
2833         * src/nact/nact-gtk-utils.c:
2834         * src/nact/nact-gtk-utils.h:
2835         * src/nact/nact-iaction-tab.c: Update NactIActionTab interface.
2837         * core/na-object-action-fn.h:
2838         * core/na-object-action-priv.h:
2839         * core/na-object-fn.h:
2840         * core/na-object-id-fn.h:
2841         * core/na-object-id-priv.h:
2842         * core/na-object-item-fn.h:
2843         * core/na-object-item-priv.h:
2844         * core/na-object-menu-fn.h:
2845         * core/na-object-menu-priv.h:
2846         * core/na-object-profile-fn.h:
2847         * core/na-object-profile-priv.h: Remove no more used files.
2849         * src/api/na-iduplicable.h:
2850         * src/api/na-object-api.h:
2851         * src/api/na-object-item.h:
2852         * src/api/na-object.h:
2853         * src/core/na-iduplicable.c:
2854         * src/core/na-object-item.c:
2855         * src/core/na-object.c:
2856         * src/nact/nact-iactions-list-bis.c:
2857         * src/nact/nact-iactions-list.c:
2858         * src/nact/nact-window.c:
2859         * src/nact/nact-window.h: Update NactIActionsList interface.
2861         * src/api/na-iduplicable.h:
2862         * src/api/na-object-api.h:
2863         * src/api/na-object-item.h:
2864         * src/core/na-exporter.c:
2865         * src/core/na-exporter.h:
2866         * src/core/na-iduplicable.c:
2867         * src/core/na-object-item.c:
2868         * src/nact/Makefile.am:
2869         * src/nact/nact-assistant-export.c:
2870         * src/nact/nact-clipboard.c:
2871         * src/nact/nact-clipboard.h:
2872         * src/nact/nact-confirm-logout.c:
2873         * src/nact/nact-export-ask.c:
2874         * src/nact/nact-export-format.c:
2875         * src/nact/nact-export-format.h:
2876         * src/nact/nact-iprefs.h:
2877         * src/nact/nact-main-menubar.h:
2878         * src/nact/nact-assistant-export.c:
2879         * src/nact/nact-assistant-export.h:
2880         * src/nact/nact-assistant-export.ui:
2881         * src/nact/nact-assistant-import.c:
2882         * src/nact/nact-import-ask.c:
2883         * src/nact/nact-import-ask.h:
2884         * src/nact/nact-iprefs.c:
2885         * src/nact/nact-iprefs.h:
2886         * src/nact/nact-tree-model.h: Update Nact classes.
2888         Refactor: move all XML code to src/io-xml plugin.
2890         * src/nact/Makefile.am:
2891         * src/nact/base-application-class.h:
2892         * src/nact/base-assistant.h:
2893         * src/nact/base-assistant.h:
2894         * src/nact/base-builder.h:
2895         * src/nact/base-dialog.h:
2896         * src/nact/base-iprefs.c:
2897         * src/nact/base-window-class.h: Update typo in Base class headers.
2899         * src/core/na-importer.c:
2900         * src/core/na-importer.h: New files.
2902         * src/core/Makefile.am:
2903         * src/core/na-iimporter.c:
2904         * src/core/na-io-provider.c:
2905         * src/core/na-iprefs.h: Update core library.
2907         * src/nact/nact-export-format.h:
2908         * src/nact/nact-export-format.c:
2909         * src/core/na-exporter.h:
2910         * src/core/na-exporter.c: Update export treatements.
2912         * src/api/na-iexporter.h:
2913         * src/core/na-iexporter.c:
2914         * src/io-xml/naxml-module.c:
2915         * src/io-xml/naxml-provider.c: Update NAIExporter interface.
2917         Define NAExportFormat new class.
2919         * src/core/na-export-format.c:
2920         * src/core/na-export-format.h: New files.
2922         Rename src/nact/nact-assistant-export-ask.{c,h} to
2923         src/nact/nact-export-ask.{c,h}
2925 2010-02-15 Pierre Wieser <pwieser@trychlos.org>
2927         Now install defined ids in docdir.
2929         * doc/export-format-id: New file.
2931         * doc/Makefile.am: Updated accordingly.
2933         Define NactIPrefs interface.
2935         * src/nact/nact-iprefs.c:
2936         * src/nact/nact-iprefs.h: New files.
2938         Update src/nact/
2939         Remove useless src/private directory.
2941         Define NAUpdater class.
2943         * src/core/na-updater.c:
2944         * src/core/na-updater.h: New files.
2946         Update src/core/na-pivot.{c,h}
2947         Update src/core/na-module.{c,h}
2948         Update src/core/na-iprefs.{c,h}
2949         Update src/core/na-ipivot-consumer.{c,h}
2950         Update src/core/na-io-factory.{c,h}
2951         Update src/core/na-io-provider.{c,h}
2952         Update src/core/na-iabout.{c,h}
2953         Update src/utils.
2955 2010-02-15 Deji Akingunola <dakingun@gmail.com>
2957         * src/test/Makefile.am: Fix typo.
2959 2010-02-15 Pierre Wieser <pwieser@trychlos.org>
2961         Update src/test.
2962         Update src/plugin-tracker.
2963         Update src/plugin-menu.
2965         Define NAIImporter interface.
2967         * src/api/na-iimporter.h:
2968         * src/core/na-iimporter.c: New files.
2970         Define NAIExporter interface.
2972         * src/api/na-iexporter.h:
2973         * src/core/na-iexporter.c: New files.
2975         * src/core/na-dbus-tracker.h: New file.
2977         Remove useless src/api/na-gconf-keys.h
2978         Update GConf I/O provider.
2979         Create src/io-gconf/nagp-keys.c
2980         Rename src/io-gconf/nagp-write.{c,h} to src/io-gconf/nagp-writer.{c,h}
2981         Rename src/io-gconf/nagp-read.{c,h} to src/io-gconf/nagp-reader.{c,h}
2983         Update I/O desktop provider.
2985         * src/io-desktop/nadp-keys.c:
2986         * src/io-desktop/nadp-keys.h: New files.
2988         Rename src/io-desktop/nadp-xdg-data-dirs.{c,h} to src/io-desktop/nadp-xdg-dirs.{c,h}
2989         Rename src/io-desktop/nadp-write.{c,h} to src/io-desktop/nadp-writer.{c,h}
2990         Rename src/io-desktop/nadp-read.{c,h} to src/io-desktop/nadp-reader.{c,h}
2992         NAObject-derived classes implement NAIDataFactory interface.
2994         * src/core/na-object-id-enum.c:
2995         * src/core/na-object-item-enum.c:
2996         * src/core/na-object-action-enum.c:
2997         * src/core/na-object-profile-enum.c:
2998         * src/core/na-object-menu-enum.c: New files.
3000         Define NADataElement class.
3002         * src/core/na-data-element.c:
3003         * src/core/na-data-element.h: New files.
3005         Define NAIDataFactory interface.
3007         * src/api/na-idata-factory.h:
3008         * src/api/na-idata-factory-enum.h:
3009         * src/api/na-idata-factory-str.h:
3010         * src/core/na-idata-factory.c:
3011         * src/core/na-data-factory.c:
3012         * src/core/na-data-factory.h: New files.
3014         Define NAIIOFactory interface.
3016         * src/api/na-iio-factory.h:
3017         * src/api/na-iio-factory-factory.h:
3018         * src/core/na-iio-factory.c:
3019         * src/core/na-io-factory.c:
3020         * src/core/na-io-factory.h: New files.
3022         Rename src/core/na-object-menu-class.h to src/api/na-object-menu.h
3023         Rename src/core/na-object-profile-class.h to src/api/na-object-profile.h
3024         Rename src/core/na-object-action-class.h to src/api/na-object-action.h
3025         Rename src/core/na-object-item-class.h to src/api/na-object-item.h
3026         Rename src/core/na-object-id-class.h to src/api/na-object-id.h
3027         Rename src/core/na-object-class.h to src/api/na-object.h
3028         Rename src/core/na-iduplicable.h to src/api/na-iduplicable.h
3029         Rename src/core/na-gconf-utils.h to src/api/na-gconf-utils.h
3030         Rename src/api/na-iio-provider.c to src/core/na-iio-provider.c
3032         * src/api/na-dbus.h: Update defined name.
3034         * m4/na-log-domains.m4: Update log domains with new subdirs.
3036         * doc/io-provider-id: Reference na-xml XML provider.
3038         Rename src/api/na-gconf-monitor.c to src/core/na-gconf-monitor.c
3039         Rename src/core/na-utils.h to src/api/na-core-utils.h
3040         Rename src/core/na-utils.c to src/core/na-core-utils.c
3042         * src/api/Makefile.am:
3043         * src/core/Makefile.am: Updated accordingly.
3045         * src/core/na-core-utils.c:
3046         * src/core/na-core-utils.h: Normalize functions names.
3048         Merge src/private/ and src/runtime to src/core/
3049         Rename src/api/na-api.h to src/api/na-extension.h
3051         * src/api/README:
3052         * src/io-desktop/nadp-module.c:
3053         * src/io-gconf/nagp-module.c:
3054         * src/runtime/na-module.c: Updated accordingly.
3056         Define XML provider as a dynamic module.
3057         
3058         * io-xml/Makefile.am:
3059         * io-xml/naxml-module.c:
3060         * io-xml/naxml-provider.c:
3061         * io-xml/naxml-provider.h: New files.
3063         Rename source tree from nautilus-actions/ to src/
3064         Rename src/io-provider-desktop/ to src/io-desktop/
3065         Rename src/io-provider-gconf/ to src/io-gconf/
3066         Rename src/plugin to src/plugin-menu/
3067         Rename src/tracker to src/plugin-tracker/
3069         * Makefile.am:
3070         * configure.ac:
3071         * po/POTFILES.in: Updated accordingly.
3073 2010-01-31 Pierre Wieser <pwieser@trychlos.org>
3075         * nautilus-actions/io-provider-desktop/nadp-desktop-file.c:
3076         * nautilus-actions/io-provider-desktop/nadp-desktop-file.h:
3077         * nautilus-actions/io-provider-desktop/nadp-read.c:
3078         * nautilus-actions/io-provider-desktop/nadp-utils.c:
3079         * nautilus-actions/io-provider-desktop/nadp-utils.h:
3080         * nautilus-actions/io-provider-gconf/nagp-read.c:
3081         Implements reading of .desktop files.
3083         * nautilus-actions/io-provider-gconf/nagp-write.c (write_item_action):
3084         Always writes the 'OBJECT_ITEM_TOOLBAR_LABEL_ENTRY' key.
3086 2010-01-30 Pierre Wieser <pwieser@trychlos.org>
3088         No more record the toolbar_same_label indicator.
3090         * nautilus-actions.schemas.in:
3091         Remove schema for 'toolbar-same-label' key.
3093         * nautilus-actions/io-provider-gconf/nagp-read.c
3094         (read_item_action_properties):
3095         No more read the 'toolbar-same-label' entry.
3097         * nautilus-actions/io-provider-gconf/nagp-write.c (write_item_action):
3098         No more write the 'toolbar-same-label' entry.
3099         Remove the key if undeeded.
3101         * nautilus-actions/nact/nact-iaction-tab.c
3102         (on_toolbar_same_label_toggled): Fix toolbar label setup.
3104         * nautilus-actions/nact/nact-xml-reader.c (apply_values):
3105         No more read OBJECT_ITEM_TOOLBAR_SAME_LABEL_ENTRY node.
3107         * nautilus-actions/runtime/na-gconf-utils.c:
3108         * nautilus-actions/runtime/na-gconf-utils.h
3109         (na_gconf_utils_remove_entry): New function.
3111         * nautilus-actions/runtime/na-xml-writer.c
3112         (create_schema_entry, create_dump_entry):
3113         No more write the 'toolbar-same-label' entry.
3115         * nautilus-actions/nact/nact-iaction-tab.c
3116         (on_tab_updatable_selection_changed):
3117         Update tab label depending on the currently selected item.
3119         * nautilus-actions/nact/nautilus-actions-config-tool.ui:
3120         No more give a special name to Action tab label.
3122         * nautilus-actions/nact/nautilus-actions-config-tool.ui:
3123         Fix Action tab layout.
3125         A full rewriting of the writability of items vs. providers.
3127         * data/nautilus-actions.schemas.in:
3128         Describe 'export-format' and 'io-providers-order' keys.
3129         Define 'mandatory/all/locked' key to lock all configuration.
3131         * doc/io-provider-id: Reserve 'all' special provider_id.
3133         * nautilus-actions/api/na-gconf-monitor.c
3134         * nautilus-actions/io-provider-desktop/nadp-desktop-file.c
3135         * nautilus-actions/io-provider-desktop/nadp-desktop-provider.c
3136         * nautilus-actions/nact/base-application.c
3137         * nautilus-actions/nact/base-assistant.c
3138         * nautilus-actions/nact/base-builder.c
3139         * nautilus-actions/nact/base-dialog.c
3140         * nautilus-actions/nact/base-window.c
3141         * nautilus-actions/nact/nact-application.c
3142         * nautilus-actions/nact/nact-assistant-export-ask.c
3143         * nautilus-actions/nact/nact-assistant-export.c
3144         * nautilus-actions/nact/nact-assistant-import-ask.c
3145         * nautilus-actions/nact/nact-assistant-import.c
3146         * nautilus-actions/nact/nact-clipboard.c
3147         * nautilus-actions/nact/nact-confirm-logout.c
3148         * nautilus-actions/nact/nact-window.c
3149         * nautilus-actions/runtime/na-module.c
3150         (instance_init, instance_dispose):
3151         Review debug messages formatting.
3153         * nautilus-actions/api/na-iio-provider.c:
3154         * nautilus-actions/api/na-iio-provider.h
3155         (is_writable): Removed API.
3156         (is_able_to_write): New API.
3157         Review operations return codes.
3158         Add provider status.
3160         * nautilus-actions/io-provider-desktop/nadp-desktop-provider.c:
3161         * nautilus-actions/io-provider-desktop/nadp-desktop-provider.h:
3162         * nautilus-actions/io-provider-desktop/nadp-read.c:
3163         * nautilus-actions/io-provider-desktop/nadp-write.c:
3164         * nautilus-actions/io-provider-desktop/nadp-write.h:
3165         * nautilus-actions/io-provider-gconf/nagp-gconf-provider.c:
3166         * nautilus-actions/io-provider-gconf/nagp-write.c:
3167         * nautilus-actions/io-provider-gconf/nagp-write.h:
3168         Updated to new NAIIOProvider API.
3170         * nautilus-actions/nact/nact-iaction-tab.c:
3171         * nautilus-actions/nact/nact-iactions-list.c:
3172         * nautilus-actions/nact/nact-iactions-list.h:
3173         * nautilus-actions/nact/nact-iadvanced-tab.c:
3174         * nautilus-actions/nact/nact-ibackground-tab.c:
3175         * nautilus-actions/nact/nact-icommand-tab.c:
3176         * nautilus-actions/nact/nact-iconditions-tab.c:
3177         * nautilus-actions/nact/nact-main-menubar.c:
3178         * nautilus-actions/nact/nact-main-tab.h:
3179         * nautilus-actions/nact/nact-main-window.c:
3180         * nautilus-actions/nact/nact-providers-list.c:
3181         * nautilus-actions/nact/nact-tree-model-dnd.c:
3182         * nautilus-actions/nact/nact-tree-model.c:
3183         * nautilus-actions/nact/nact-window.c:
3184         * nautilus-actions/nact/nact-window.h:
3185         Take advantage of the new global item writability status.
3187         * nautilus-actions/nact/nact-main-statusbar.c:
3188         * nautilus-actions/nact/nact-main-statusbar.h
3189         (nact_main_statusbar_set_locked): Display the reason.
3191         * nautilus-actions/nact/nact-iactions-list-bis.c
3192         (nact_iactions_list_bis_list_modified_items):
3193         Dump the raw content of the list.
3195         * nautilus-actions/plugin/nautilus-actions.c (instance_init):
3196         * nautilus-actions/runtime/na-pivot.c:
3197         * nautilus-actions/runtime/na-pivot.h(na_pivot_new):
3198         * nautilus-actions/utils/nautilus-actions-new.c (write_to_gconf):
3199         * nautilus-actions/utils/nautilus-actions-run.c (get_action):
3200         New na_pivot_new() signature.
3202         * nautilus-actions/private/na-object-item-fn.h:
3203         * nautilus-actions/private/na-object-item-priv.h:
3204         * nautilus-actions/private/na-object-item.c:
3205         The NAObjectItem now embeds a NAIOProvider pointer.
3207         * nautilus-actions/runtime/na-io-provider.c:
3208         * nautilus-actions/runtime/na-io-provider.h:
3209         Load all available and defined I/O providers.
3211         * nautilus-actions/test/init-dispose-diff.sh: New file.
3213 2010-01-27 Pierre Wieser <pwieser@trychlos.org>
3215         * nautilus-actions/nact/nact-preferences.ui:
3216         Fix the name of the Down button.
3217         Invert buttons so that Up is at the top, and Down at the bottom.
3219         * nautilus-actions/nact/nact-providers-list.c:
3220         Activate up/down buttons.
3221         Save the I/O providers individual preferences.
3222         Load and save in order.
3224         * nautilus-actions/runtime/na-io-provider.c:
3225         Order the I/O providers in write priority.
3227 2010-01-26 Pierre Wieser <pwieser@trychlos.org>
3229         * nautilus-actions/io-provider-gconf/nagp-read.c
3230         (nagp_iio_provider_read_items): Remove path trace.
3232         * nautilus-actions/nact/nact-application.c
3233         (appli_initialize_application):
3234         * nautilus-actions/plugin/nautilus-actions.c (instance_init):
3235         * nautilus-actions/utils/nautilus-actions-new.c (write_to_gconf):
3236         * nautilus-actions/utils/nautilus-actions-run.c (get_action):
3237         Adapt to new na_pivot_new().
3239         * nautilus-actions/nact/nact-iaction-tab.c (display_provider_name):
3240         Adapt to the temporary new NAIOProvider API.
3242         * nautilus-actions/nact/nact-preferences-editor.c:
3243         Fix compilation error by adding nact-providers-list.h include file.
3245         * nautilus-actions/nact/nact-providers-list.c:
3246         Display list of providers with their initial state.
3248         * nautilus-actions/plugin/nautilus-module.c:
3249         * nautilus-actions/tracker/na-tracker-plugin.c:
3250         (nautilus_module_initialize):
3251         Prefix the log message with "[N-A]".
3253         * nautilus-actions/runtime/na-gconf-utils.c:
3254         * nautilus-actions/runtime/na-gconf-utils.h
3255         (na_gconf_utils_get_subdirs, na_gconf_utils_free_subdirs):
3256         New functions.
3258         * nautilus-actions/runtime/na-io-provider.c:
3259         * nautilus-actions/runtime/na-io-provider.h:
3260         Refactoring to keep a static list of capable I/O providers.
3262         * nautilus-actions/runtime/na-module.c
3263         (na_module_load_modules): Only displays the name of the loaded module.
3264         (is_a_na_plugin): Add a trace with the full path of the module.
3266         * nautilus-actions/runtime/na-pivot.c:
3267         * nautilus-actions/runtime/na-pivot.h:
3268         Define loadable_set and io_provider_set as construct-only properties.
3269         Remove unused action_changed_handler stuff.
3270         No more maintain the list of capable I/O providers.
3272 2010-01-25 Pierre Wieser <pwieser@trychlos.org>
3274         * nautilus-actions/runtime/na-pivot.c:
3275         * nautilus-actions/runtime/na-pivot.h: Source reorganization.
3277         * nautilus-actions/runtime/na-pivot.c:
3278         * nautilus-actions/runtime/na-pivot.h (na_pivot_get_automatic_reload):
3279         Remove unused function.
3281         * nautilus-actions/runtime/na-pivot.c:
3282         * nautilus-actions/runtime/na-pivot.h (na_pivot_set_population):
3283         Function is renamed to na_pivot_set_loadable_population().
3284         The enum is named NAPivotLoadable.
3286         * nautilus-actions/plugin/nautilus-actions.c (instance_init):
3287         * nautilus-actions/utils/nautilus-actions-run.c (get_action):
3288         Adjusted accordingly.
3290         * nautilus-actions/runtime/na-module.c: Source slight adjustment.
3292 2010-01-23 Pierre Wieser <pwieser@trychlos.org>
3294         * nautilus-actions/nact/nact-schemes-list.c: Cleanup the source file.
3296         * nautilus-actions/nact/nact-preferences.ui:
3297         Reset tooltips in all preference pages.
3299         * nautilus-actions/nact/nact-providers-list.c:
3300         * nautilus-actions/nact/nact-providers-list.h: New files.
3302         * nautilus-actions/nact/Makefile.am: Updated accordingly.
3304         * nautilus-actions/nact/nact-preferences-editor.c:
3305         Updated to handle a sixth tab.
3307 2010-01-23 Pierre Wieser <pwieser@trychlos.org>
3309         * configure.ac: Bump version number.
3311         * All source files: Updated copyright notice.
3313 2010-01-23 Pierre Wieser <pwieser@trychlos.org>
3315         * NEWS: Updated for release.
3317         * po/POTFILES.in:
3318         Add nautilus-actions/nact/nact-preferences.ui file.
3320         * configure.ac:
3321         Add a dependancy on dbus-lib-1 for tracker.
3323         * nautilus-actions/nact/base-window.c (search_for_child_widget):
3324         Use GtkBuildable interface instead of 'name' field (fix #607704).
3326 2010-01-20 Pierre Wieser <pwieser@trychlos.org>
3328         * data/nautilus-actions.schemas.in:
3329         Add a schema for 'na-desktop/locked' mandatory key.
3331         * .gitignore:
3332         Ignore eclipse-specific files.
3334         * data/nautilus-actions.schemas.in:
3335         Fix default value for level zero key.
3336         Describe the new 'schemes' preference key.
3338         * nautilus-actions/nact/nact-preferences.ui:
3339         * nautilus-actions/nact/nact-schemes-list.c:
3340         * nautilus-actions/nact/nact-schemes-list.h: New files.
3342         * nautilus-actions/nact/nact-iadvanced-tab.c:
3343         * nautilus-actions/nact/nact-preferences-editor.c:
3344         * nautilus-actions/nact/Makefile.am: Updated accordingly.
3346 2010-01-17 Pierre Wieser <pwieser@trychlos.org>
3348         * nautilus-actions/nact/nact-assistant-export.ui:
3349         * nautilus-actions/nact/nautilus-actions-config-tool.ui:
3350         Forces default orientation of vboxes (fix #607218).
3352         * nautilus-actions/nact/nact-main-toolbar.c:
3353         * nautilus-actions/nact/nact-main-toolbar.h: New files.
3355         * nautilus-actions/nact/Makefile.am:
3356         * nautilus-actions/nact/nact-main-menubar.c: Updated accordingly.
3358 2010-01-16 Pierre Wieser <pwieser@trychlos.org>
3360         * nautilus-actions/nact/nact-clipboard.c:
3361         Fix primary clipboard management.
3363         * nautilus-actions/nact/nact-main-menubar.c     (on_update_sensitivities):
3364         Fix cut/copy/duplicate/delete sensitivity when selection is     multiple.
3366 2010-01-15 Pierre Wieser <pwieser@trychlos.org>
3368         * nautilus-actions/nact/nact-iactions-list-bis.c:
3369         * nautilus-actions/nact/nact-iactions-list.h
3370         (nact_iactions_list_bis_clear_selection): New function.
3372         * nautilus-actions/nact/nact-iactions-list.c (nact_iactions_list_fill):
3373         Clear the selection before filling the tree view.
3375         * nautilus-actions/nact/nact-main-menubar.c (on_update_sensitivities):
3376         Force the count of selected items to be consistant with the list.
3378         * nautilus-actions/nact/nact-tree-model-dnd.c (drop_inside):
3379         Dropped new item is set as new.
3381         * nautilus-actions/nact/nact-iactions-list.c (filter_selection):
3382         Review selection criteria, introducing implicit selection.
3384         * nautilus-actions/nact/nact-main-menubar.c (on_update_sensitivities):
3385         Review menu items sensitivity, especially when provider is not writable.
3386         Enable new item even when selection is multiple.
3388         * nautilus-actions/nact/nact-window.c:
3389         * nautilus-actions/nact/nact-window.h (nact_window_is_writable_item):
3390         New function.
3392 2010-01-05 Pierre Wieser <pwieser@trychlos.org>
3394         * configure.ac: Bump version number.
3396 2010-01-05 Pierre Wieser <pwieser@trychlos.org>
3398         * configure.ac: Add -Wformat=2 compilation option.
3400         * nautilus-actions/nact/nact-gtk-utils.c (nact_gtk_utils_set_editable):
3401         * nautilus-actions/nact/nact-iactions-list.c
3402         (nact_iactions_list_runtime_init_toplevel):
3403         * nautilus-actions/nact/nact-iadvanced-tab.c
3404         (runtime_init_connect_signals):
3405         * nautilus-actions/nact/nact-ibackground-tab.c
3406         (nact_ibackground_tab_runtime_init_toplevel):
3407         Substitute gtk_cell_layout_get_cells to obsoleted
3408         gtk_tree_view_column_get_cell_renderers.
3410         * nautilus-actions/runtime/na-xml-writer.c (na_xml_writer_output_xml):
3411         Use correct printf format.