Reference manual: documente NAIIOProvider interface
[nautilus-actions.git] / ChangeLog
blob4c96e1c2c9029235366a0e55a9081fd9bed42dd3
1 2010-12-08 Pierre Wieser <pwieser@trychlos.org>
3         Update reference manual for NAIIOProvider interface.
5         * docs/reference/na-plugin-api.xml: New file.
7 2010-12-06 Pierre Wieser <pwieser@trychlos.org>
9         * docs/reference/na-compiling.xml:
10         * docs/reference/na-dist-content.xml:
11         * docs/reference/na-getting.xml:
12         * docs/reference/na-plugin.xml:
13         * docs/reference/na-what-is-it.xml:
14         * docs/reference/version_dir.xml: New files.
16         * data/actions/my-first-na-action.desktop:
17         * data/actions/my-first-na-menu.desktop:
18         * data/actions/open-terminal-here.desktop:
19         * data/actions/show-na-parameters.desktop:
20         - Actually disabled actions and menus as stated in the doc and the README.
21         - Remove character encodings from localizable strings.
23 2010-12-03 Pierre Wieser <pwieser@trychlos.org>
25         * docs/nact/Makefile.am:
26         Automatically build DOC_ENTITIES and DOC_FIGURES lists.
28         Rename doc/ subdirectory to docs/.
30         * Makefile.am:
31         * configure.ac:
32         * docs/nact/Makefile.am: Updated accordingly.
34         * configure.ac: Post release version bump.
36         Releasing 3.0.2
38         * NEWS:
39         * README: Update before release.
41 2010-12-02 Pierre Wieser <pwieser@trychlos.org>
43         * src/nact/nautilus-actions-config-tool.ui:
44         Do not allow actions list to fully disappeared.
46         * src/nact/nact-gtk-utils.c:
47         * src/nact/nact-gtk-utils.h (nact_gtk_utils_select_file_with_preview):
48         New function.
50         * src/nact/nact-iaction-tab.c (on_icon_browse):
51         Add a preview when selecting an icon.
53         Factorize help description.
55         * po/POTFILES.in: add src/utils/console-utils.c file.
57         * src/utils/console-utils.c:
58         * src/utils/console-utils.h (console_cmdline_get_description):
59         New function.
61         * src/utils/nautilus-actions-new.c (init_options):
62         * src/utils/nautilus-actions-run.c (init_options):
63         * src/utils/nautilus-actions-schemas.c (init_options):
64         Updated to take advantage of new function.
66         * configure.ac: Display a summary of configuration options.
68         * m4/na-enable-manuals.m4:
69         * m4/na-maintainer-mode.m4:
70         * m4/na-nautilus-extdir.m4: Define displayable variables.
72 2010-12-01 Pierre Wieser <pwieser@trychlos.org>
74         * src/nact/nact-assistant-export.c
75         (assist_runtime_init_target_folder, on_folder_selection_changed):
76         Set/get current folder URI. Fix #616532.
78         * src/nact/nact-ifolders-tab.c (on_browse_folder_clicked):
79         Set/get current folder. Fix #616532.
81         * src/api/na-object-item.h: Define new ITEM_TARGET_ANY target.
83         * src/core/na-icontext.c (is_candidate_for_target):
84         Unconditionnally accepts any target.
86         * src/utils/nautilus-actions-run.c (main, get_profile_for_targets):
87         Ask there is no selection on the target. Fix #634056.
89         * configure.ac: call new NA_SET_DEFAULT_IO_PROVIDER macro.
91         * m4/na-default-io-provider.m4: New file.
93         * src/core/na-io-provider.c (na_io_provider_get_providers_list):
94         Used the configured default I/O provider when no preference has been
95         yet registered.
97         * configure.ac:
98         - Pre-release bump version number.
99         - Define NAUTILUS_ACTIONS_DEBUG variable.
101         * src/nact/nact-main.c (log_handler),
102         * src/plugin-menu/nautilus-module.c (log_handler),
103         * src/plugin-tracker/na-tracker-plugin.c (log_handler),
104         * src/utils/console-utils.c (log_handler):
105         Display debug informations when NAUTILUS_ACTIONS_DEBUG variable is set.
107         * doc/nact/Makefile.am:
108         Distribute admon-* icons with html docs (workaround for #636175).
110 2010-11-30 Pierre Wieser <pwieser@trychlos.org>
112         * doc/nact/Makefile.am: Only rebuild manuals when needed.
114         * src/plugin-menu/nautilus-actions.c (create_menu_item):
115         Set a unique name per target menu so that icons are displayed even
116         when both toolbar and location context menu are targeted.
118 2010-11-25 Pierre Wieser <pwieser@trychlos.org>
120         Add %o/%O no-op parameters.
122         * doc/nact/C/figures/nact-legend.png: Update legend screenshot.
123         * doc/nact/C/nact-execution.xml: Update parameters description.
125         * src/core/na-object-profile-factory.c:
126         * src/core/na-tokens.h: Update comments.
128         * src/core/na-tokens.c
129         (is_singular_exec, parse_singular): Update with new parameters.
131         * src/nact/nautilus-actions-config-tool.ui:
132         Update legend dialog.
134 2010-11-24 Pierre Wieser <pwieser@trychlos.org>
136         * doc/des-ema/des-ema-0.12:
137         * doc/des-ema/des-ema-0.13:
138         * doc/des-ema/des-ema-0.14:
139         * doc/des-ema/des-ema-0.15: New files.
141         * doc/nact/Makefile.am:
142         Do not distribute non translated figures in xx/ subdirectories.
144 2010-11-23 Pierre Wieser <pwieser@trychlos.org>
146         * doc/nact/C/nact-starting.xml:
147         Work-around in order to be able to build sl pdf.
149         * doc/nact/Makefile.am:
150         Include non-translated figures in translated pdf.
152 2010-11-22 Pierre Wieser <pwieser@trychlos.org>
154         * doc/nact/Makefile.am:
155         Be tolerant about not buildable pdf.
157         * po/POTFILES.in:
158         Fix #635521: translatable sentences of the *.ui files don't appear in .po file.
160         * run-autogen.sh:
161         Clean up aborted make distcheck before running autogen.
163         * doc/nact/C/nact-execution.xml:
164         Fix typo in NACT user's manual.
166         * src/core/na-icontext-factory.c:
167         Fix #632992: add comment about default value translation.
169 2010-09-23 Pierre Wieser <pwieser@trychlos.org>
171         * configure.ac: Pre-release version bump.
173         * doc/api/Makefile.am: Fix the warning when overriding GTKDOC_RUN.
175         * m4/na-enable-manuals.m4:
176         * run-autogen.sh:
177         Update --enable-html-manuals and --enable-pdf-manuals options.
179         * doc/nact/Makefile.am:
180         Do not rebuild pdf files each time make is run.
181         Have figures available when pdf are built.
182         Install figures with html documents.
184 2010-09-04 Pierre Wieser <pwieser@trychlos.org>
186         * doc/nact/Makefile.am: Fix make distcheck.
188 2010-09-03 Pierre Wieser <pwieser@trychlos.org>
190         Declare --with-db2html and --with-gdt options.
192         * Makefile.am:
193         Defaut distribution includes PDF and gnome-doc-tool HTML manuals.
195         * doc/nact/Makefile.am:
196         * m4/na-enable-manuals.m4:
197         Define --with-db2html and --with-gdt options.
199         * doc/nact/Makefile.am:
200         HTML and PDF installations honor --htmldir= and --pdfdir= options.
202         * doc/nact/Makefile.am:
203         Fix make distcheck when distributing tranlations of NACT user's manual.
205         * configure.ac:
206         Revert inversion of AC_CANONICAL_TARGET and AM_INIT_AUTOMAKE.
208         * src/io-desktop/nadp-writer.c (write_done_write_subitems_list):
209         Improve debug messages.
211         * src/nact/nact-icommand-tab.c
212         (on_tab_updatable_selection_changed): Update example label.
213         (parse_parameters): Cleanup code.
215 2010-09-02 Pierre Wieser <pwieser@trychlos.org>
217         * src/io-desktop/nadp-reader.c (nadp_reader_iimporter_import_from_uri):
218         Do not keep the imported desktop file.
220         * src/io-desktop/nadp-desktop-file.c (nadp_desktop_file_write):
221         Do not return TRUE if file has not been written due to dispose state.
223         * configure.ac: Setup the package URL.
225 2010-08-30 Pierre Wieser <pwieser@trychlos.org>
227         * doc/nact/C/nact-starting.xml: Update manual.
229         * doc/nact/C/figures/read-only.png: New file.
231         * doc/nact/Makefile.am: Remove '$(NULL)' expressions.
233         * configure.ac: Bump version number after unstable release.
235 2010-08-23 Pierre Wieser <pwieser@trychlos.org>
237         * NEWS: Update NEWS before unstable release.
239         * src/core/na-selected-info.c
240         (na_selected_info_get_list_from_item, na_selected_info_get_list_from_list):
241         Returns a null list when NASelectedInfo object is null.
243         * src/plugin-menu/nautilus-actions.c
244         (menu_provider_get_background_items, menu_provider_get_file_items,
245         menu_provider_get_toolbar_items):
246         Do not try to build a menu for Nautilus when NASelectedInfo list is empty.
248         * configure.ac: Bump version number after unstable release.
250         * NEWS: Update NEWS before unstable release.
252         * po/POTFILES.in: Add src/core/na-selected-info.c file.
254         * src/core/na-selected-info.c (query_file_attributes):
255         Make the error message translatable.
258         * src/core/na-tokens.c
259         (na_tokens_new_from_selection): Do not get dirname of a null filename.
260         (parse_singular): Take care of possibly null data or over-indexing.
262         * src/core/na-selected-info.c:
263         * src/core/na-selected-info.h (na_selected_info_create_for_uri):
264         Add errmsg parameter to check for incorrect URIs.
266         * src/utils/nautilus-actions-run.c (get_selection_from_strv):
267         Do not try to deal with malformed URIs.
269         * src/utils/nautilus-actions-schemas.c: Include glib-object.h.
271         * src/api/na-data-boxed.h: Revert to glib-object.h.
273 2010-08-22 Pierre Wieser <pwieser@trychlos.org>
275         * src/core/na-icontext.c (is_candidate_for_mimetypes):
276         * src/core/na-selected-info.c (na_selected_info_get_mime_type):
277         Take care of possibly NULL mimetype.
279 2010-08-21 Pierre Wieser <pwieser@trychlos.org>
281         * src/api/na-dbus.h
282         * src/api/na-ifactory-provider-provider.h
283         * src/core/na-importer-ask.h
284         * src/io-desktop/nadp-formats.h
285         * src/io-desktop/nadp-reader.h
286         * src/io-desktop/nadp-utils.h
287         * src/io-desktop/nadp-writer.h
288         * src/io-gconf/nagp-reader.h
289         * src/io-gconf/nagp-writer.h
290         * src/io-xml/naxml-formats.h
291         * src/io-xml/naxml-reader.h
292         * src/io-xml/naxml-writer.h
293         * src/nact/nact-tree-model-priv.h: Fix single inclusion.
295         * src/core/na-icontext.c
296         (is_candidate_for_schemes, is_candidate_for_folders):
297         Address each ocurrence of file instead of just the first one.
299         * doc/nact/Makefile.am: Fix PDF distribution.
301 2010-08-19 Pierre Wieser <pwieser@trychlos.org>
303         * src/nact/nautilus-actions-config-tool.ui:
304         Do not overexpand the example label.
306         * src/core/na-object-profile.c (convert_pre_v3_parameters_str):
307         Fix conversion of '%d/%f' to '%f' when there are other parameters.
309         * src/core/na-icontext.c
310         (is_candidate_for_mimetypes): Improve debug messages.
311         (is_candidate_for_basenames): Take care of matchcase.
313         * src/core/na-icontext.c
314         (is_mimetype_of): Take care of wildcard expressions.
315         (is_candidate_for_folders): Only try to g_pattern_match() if has pattern.
317         * src/plugin-menu/nautilus-actions.c
318         (build_nautilus_menus): Add debug messages.
320         * data/actions/open-terminal-here.desktop:
321         * data/actions/show-na-parameters.desktop: Fix typo.
323         * src/api/na-object-item.h:
324         * src/core/na-object-item.c
325         (na_object_item_deals_with_version): New function.
327         * src/api/na-object-profile.h:
328         * src/core/na-object-profile.c
329         (na_object_profile_convert_v2_to_last): New function.
331         * src/core/na-object-action.c:
332         * src/core/na-object-menu.c
333         (ifactory_object_read_start): Removed (unused) function.
335         * src/io-xml/naxml-reader.c (naxml_reader_read_done): Cleanup code.
337         * src/nact/nact-ibasenames-tab.c (on_tab_updatable_selection_changed):
338         Display matchcase status for the current context.
340 2010-08-18 Pierre Wieser <pwieser@trychlos.org>
342         * src/core/na-object-profile.c (convert_pre_v3_parameters_str):
343         As a special optimization, converts '%d/%f' to '%f'.
345         * src/io-xml/naxml-reader.c (naxml_reader_read_data):
346         Let a node available for a second reading in case of a multiple-defined
347         data (e.g. icon which exists in localized and unlocalized forms).
349         * src/io-desktop/nadp-desktop-file.c (nadp_desktop_file_new_from_uri):
350         Do not warn about malformed .desktop file when importing an URI.
352         Path+parameters are splitted whatever be the I/O importer.
354         * src/io-desktop/nadp-reader.c (read_done_profile_split_exec): Removed function.
356         * src/core/na-object-profile.c (split_path_parameters): New function.
358         * src/core/na-data-boxed.c (uint_set_from_string):
359         Fix default uint value when reading null string.
361         * src/nact/nact-assistant-import.c (assistant_apply): Cleanup code.
363 2010-08-17 Pierre Wieser <pwieser@trychlos.org>
365         * Replace GtkLable with GtkTextView in import and export assistants.
367         * src/nact/nact-assistant-export.c (assist_prepare_exportdone):
368         * src/nact/nact-assistant-import.c (prepare_importdone):
369         * src/nact/nact-assistant-export.ui:
370         * src/nact/nautilus-actions-config-tool.ui: Updated accordingly.
372         * src/core/na-core-utils.c (na_core_utils_str_split_first_word):
373         Accepts null or empty input string or output pointers.
375         * src/io-desktop/nadp-reader.c (read_done_profile_split_exec):
376         Only try to split a non-null command.
378 2010-08-16 Pierre Wieser <pwieser@trychlos.org>
380         * doc/nact/Makefile.am: Fix PDF build.
382         * configure.ac: Bump version number after unstable release.
384         * doc/nact/Makefile.am: Fix manuals cleanup.
386         * src/core/na-icontext.c (is_candidate_for_schemes):
387         Remove wrong variable override.
389         * configure.ac: Bump version number after unstable release.
391 2010-08-15 Pierre Wieser <pwieser@trychlos.org>
393         * data/actions/Makefile.am:
394         * data/actions/my-first-na-action.desktop:
395         * data/actions/my-first-na-menu.desktop:
396         * data/actions/open-terminal-here.desktop:
397         * data/actions/show-na-parameters.desktop: New files.
399         * data/gconf-schemas/Makefile.am:
400         Install GConf schemas in PKGDATADIR/gconf-schemas.
402         * NEWS: Update NEWS before unstable release.
404         Create a new data/actions subdirectory.
406         * configure.ac:
407         * data/Makefile.am: Updated accordingly.
409         * data/actions/Makefile.am:
410         * data/actions/README: New files.
412         Move schemas into a new subdirectory data/gconf-schemas.
414         * configure.ac:
415         * data/Makefile.am: Updated accordingly.
417         Move exports/ subdirectory into data/ tree.
419         * configure.ac:
420         * data/Makefile.am: Updated accordingly.
422         * data/exports/Makefile.am:
423         * data/exports/README: New files.
425         * doc/nact/Makefile.am: Fix PDF installation.
427         * src/core/na-object-profile.c (convert_pre_v3_parameters_str):
428         %f used to be the name of the file (a basename), converts it to %b.
430 2010-08-13 Pierre Wieser <pwieser@trychlos.org>
432         * doc/api/nautilus-actions-sections.txt:
433         * doc/api/nautilus-actions-docs.xml: New files.
435         * src/io-desktop/nadp-desktop-file.c (nadp_desktop_file_set_locale_string):
436         Write all available locales to have a chance another locale can get it.
438         * Makefile.am:
439         Build doc after src so that libraries are available when documenting them.
441         * autogen.sh:
442         * configure.ac: Implement gtk-doc and manuals generation.
444         * doc/api/Makefile.am: Build gtk-doc for public API.
446         * doc/nact/C/nact-conditions.xml:
447         * doc/nact/C/nact-execution.xml:
448         * doc/nact/C/nact-menus.xml:
449         * doc/nact/C/nact-profiles.xml:
450         * doc/nact/C/nact-sorting.xml:
451         * doc/nact/C/nact-starting.xml:
452         * doc/nact/C/nact-where.xml:
453         * doc/nact/C/nautilus-actions-config-tool.xml:
454         Update NACT user's manual.
456         * doc/nact/Makefile.am: Implement manuals generation.
458         * src/api/na-core-utils.h:
459         * src/api/na-data-boxed.h:
460         * src/api/na-data-types.h:
461         * src/api/na-gconf-utils.h:
462         * src/api/na-icontext.h:
463         * src/api/na-iduplicable.h:
464         * src/api/na-iimporter.h:
465         * src/api/na-object-api.h:
466         * src/api/na-object-id.h:
467         * src/api/na-object-item.h:
468         * src/core/na-core-utils.c:
469         * src/core/na-data-boxed.c:
470         * src/core/na-export-format.c:
471         * src/core/na-export-format.h:
472         * src/core/na-exporter.c:
473         * src/core/na-exporter.h:
474         * src/core/na-factory-object.c:
475         * src/core/na-factory-object.h:
476         * src/core/na-gconf-monitor.c:
477         * src/core/na-gconf-utils.c:
478         * src/core/na-iabout.h:
479         * src/core/na-icontext.c:
480         * src/core/na-ifactory-provider.c:
481         * src/core/na-importer-ask.c:
482         * src/core/na-io-provider.c:
483         * src/core/na-iprefs.c:
484         * src/core/na-object-id.c:
485         * src/core/na-object-item.c:
486         * src/core/na-object.c:
487         * src/core/na-selected-info.c:
488         * src/core/na-selected-info.h:
489         Update comments to suits gtk-doc requirements.
491         * COPYING-DOCS:
492         * doc/nact/C/figures/nact-desktop-environment-frame.png:
493         * doc/nact/C/figures/nact-exec-mode-frame.png:
494         * doc/nact/C/figures/nact-execute-as-frame.png:
495         * doc/nact/C/figures/nact-execution-environment-frame.png:
496         * doc/nact/C/figures/nact-selection-count-frame.png:
497         * doc/nact/C/figures/nact-startup-mode-frame.png:
498         * doc/nact/C/figures/nact-target-location.png:
499         * doc/nact/C/figures/nact-working-directory-frame.png:
500         * doc/nact/C/figures/sort-asc.png doc/nact/C/figures/sort-desc.png:
501         * doc/nact/C/figures/sort-manual.png:
502         * m4/na-enable-manuals.m4: New files.
504 2010-08-10 Pierre Wieser <pwieser@trychlos.org>
506         * src/nact/nact-icommand-tab.c: No more check for a non-empty profile name.
508         Allow writing of empty data.
510         * src/api/na-data-boxed.h:
511         * src/core/na-data-boxed.c
512         (na_data_boxed_is_set): Removed function.
513         (na_data_boxed_is_default): New function.
515         * src/io-desktop/nadp-writer.c (nadp_writer_ifactory_provider_write_data):
516         * src/io-gconf/nagp-writer.c (nagp_writer_write_data):
517         * src/io-xml/naxml-writer.c (naxml_writer_write_data):
518         Updated accordingly.
520         * src/core/na-object-item-factory.c:
521         * src/core/na-object-profile-factory.c:
522         Remove useless log description for a fake data.
524         * src/io-desktop/nadp-reader.c
525         (nadp_reader_ifactory_provider_read_data):
526         * src/io-xml/naxml-reader.c (read_data_boxed_from_node):
527         Set NADataBoxed as soon as a value is found.
529         Review pre- and post- write operations in I/O providers.
531         * src/core/na-object-action.c: Cleanup the code.
533         * src/core/na-object-item-factory.c:
534         NAFO_DATA_IVERSION becomes unwritable.
536         * src/io-desktop/nadp-writer.c:
537         * src/io-gconf/nagp-writer.c:
538         * src/io-xml/naxml-writer.c: Cleanup the code.
540         Immediately reacts to a status change in I/O providers.
542         * src/core/na-ipivot-consumer.c:
543         * src/core/na-ipivot-consumer.h
544         (na_ipivot_consumer_notify_of_io_provider_prefs_changed): New function.
545         (on_io_provider_prefs_changed): New interface API.
547         * src/core/na-pivot.c (monitor_runtime_preferences):
548         Add a monitor on io-providers GConf branch.
550         * src/nact/nact-main-window.c
551         (ipivot_consumer_on_io_provider_prefs_changed): New function.
553         Controls are not modifiable for a read-only item.
555         * src/nact/nact-gtk-utils.c:
556         * src/nact/nact-gtk-utils.h
557         (nact_gtk_utils_set_initial_state, nact_gtk_utils_reset_initial_state):
558         New functions.
560         * src/nact/nact-icommand-tab.c (on_tab_updatable_selection_changed):
561         Manage working directory browse button.
563         * src/nact/nact-ienvironment-tab.c (on_tab_updatable_selection_changed):
564         Manage try exec and show if running browse buttons.
565         Manage desktop environment radio buttons.
567         * src/nact/nact-iexecution-tab.c (on_tab_updatable_selection_changed):
568         Manage execution mode radio buttons.
570         * src/nact/nact-iproperties-tab.c (on_tab_updatable_selection_changed):
571         Manage description text view.
573         * src/nact/nact-match-list.c
574         (on_key_pressed_event): Only insert/delete rows if item is editable.
575         (on_must_match_toggled, on_must_not_match_toggled): Manage radio buttons.
577 2010-08-09 Pierre Wieser <pwieser@trychlos.org>
579         Review notification bufferization.
581         * src/core/na-ipivot-consumer.c:
582         * src/core/na-ipivot-consumer.h
583         (na_ipivot_consumer_delay_notify): Removed function.
584         (na_ipivot_consumer_allow_notify): New function.
586         * src/nact/nact-main-menubar-file.c (nact_main_menubar_file_save_items):
587         * src/nact/nact-main-window.c (instance_init):
588         * src/plugin-menu/nautilus-actions.c (instance_init):
589         Updated accordingly.
591         * src/core/na-pivot.c (on_item_changed_timeout):
592         * src/io-desktop/nadp-desktop-provider.c (on_monitor_timeout):
593         * src/io-gconf/nagp-gconf-provider.c (config_path_changed_trigger_interface):
594         Review the code.
596         Fix XML import of localized vs. unlocalized profile label.
598         * src/api/na-ifactory-object-data.h:
599         * src/core/na-object-profile-factory.c:
600         Define new NAFO_DATA_DESCNAME_NOLOC unlocalized profile label.
602         * src/api/na-object-api.h (na_object_get_label_noloc): New macro.
604         * src/io-xml/naxml-reader.c (naxml_reader_read_done):
605         Deals with localized vs. unlocalized profile description name.
607         Fix XML import of localized vs. unlocalized icons.
609         * src/api/na-ifactory-object-data.h:
610         * src/core/na-object-item-factory.c:
611         Define new NAFO_DATA_ICON_NOLOC unlocalized icon name.
613         * src/api/na-object-api.h (na_object_get_icon_noloc): New macro.
615         * src/io-xml/naxml-reader.c
616         (read_data_boxed_from_node): Only allocate a NADataBoxed for a non null value.
617         (naxml_reader_read_done): Deals with localized/unlocalized icon name.
619         * src/io-xml/naxml-reader.c (naxml_reader_read_start):
620         Attach the profile to the action before trying to read it.
622         * src/nact/nact-iexecution-tab.c (execution_mode_toggle):
623         Fix sensitivity of startup fields vs. execution mode.
625         * src/core/na-icontext.c (is_candidate_for_capabilities):
626         Fix incorrect handling of capability conditions.
628         * src/core/na-icontext.c (is_candidate_for_folders):
629         Fix incorrect and optimize handling of folder conditions.
631         * src/core/na-icontext.c (is_candidate_for_schemes):
632         Fix incorrect and optimize handling of scheme conditions.
634         * src/core/na-icontext.c (is_candidate_for_basenames):
635         Fix incorrect handling of basename conditions.
637         * src/core/na-icontext.c (is_candidate_for_mimetypes):
638         Fix incorrect handling of mimetype conditions.
640         * src/nact/nact-iaction-tab.c (on_icon_browse):
641         Fix incorrect setting of GConf preference.
643         * src/nact/nact-gtk-utils.c:
644         * src/nact/nact-gtk-utils.h
645         (nact_gtk_utils_get_pixbuf, nact_gtk_utils_render):
646         Size parameter is actually of GtkIconSize type.
648 2010-08-07 Pierre Wieser <pwieser@trychlos.org>
650         * configure.ac: Bump version number after unstable release.
652         Implement auto-save feature.
654         * src/core/na-ipivot-consumer.c:
655         * src/core/na-ipivot-consumer.h (on_autosave_changed): New interface.
657         * src/core/na-iprefs.c:
658         * src/core/na-iprefs.h (na_iprefs_read_uint): New function.
660         * src/nact/nact-iprefs.c:
661         * src/nact/nact-iprefs.h (nact_iprefs_read_uint): Removed function.
663         * src/core/na-pivot.c (on_preferences_change):
664         Trigger NAIPivotConsumer interface when autosave is changed.
666         * src/nact/nact-main-menubar-file.c:
667         * src/nact/nact-main-menubar-file.h
668         (nact_main_menubar_file_set_autosave): New function.
670         * src/nact/nact-main-window.c (ipivot_consumer_on_autosave_changed):
671         Implement the new on_autosave_changed() NAIPivotConsumer interface.
673         * src/nact/nact-preferences-editor.c (on_base_runtime_init_dialog):
674         Replace nact_iprefs_read_uint() with na_iprefs_read_uint().
676         Setup auto-save in preferences.
678         * data/nautilus-actions-prefs.schemas.in:
679         Describe new auto-save-on and auto-save-period preference keys.
681         * src/nact/nact-iprefs.c:
682         * src/nact/nact-iprefs.h
683         (nact_iprefs_read_uint, nact_iprefs_write_uint): New functions.
684         IPREFS_AUTOSAVE_ON, IPREFS_AUTOSAVE_PERIOD: New preference keys.
686         * src/nact/nact-preferences-editor.c:
687         Update the new auto-save-on and auto-save-period preference keys.
690         * src/nact/nact-preferences.ui:
691         * src/nact/nautilus-actions-config-tool.ui: New preference frame.
693 2010-08-05 Pierre Wieser <pwieser@trychlos.org>
695         * src/api/na-core-utils.h:
696         * src/core/na-core-utils.c
697         (na_core_utils_str_get_first_word): Removed function.
698         (na_core_utils_str_split_first_word): New function.
700         * src/io-desktop/nadp-reader.c
701         (nadp_reader_ifactory_provider_read_done):
702         Split the Exec content to get Path and Parameters data.
704         * src/core/na-object-profile-factory.c:
705         Review the description of the NAFO_DATA_PARAMETERS data.
707         * src/core/na-tokens.h: Update the comment.
709         * po/POTFILES.in: Add src/core/na-tokens.c file.
711         * src/core/na-tokens.c:
712         * src/core/na-tokens.h (na_tokens_new_for_example): New function.
714         * src/core/na-tokens.c (parse_singular):
715         Implement %m and %M parameters for mimetypes.
717         * src/nact/nact-icommand-tab.c (parse_parameters):
718         Use a fake NATokens object to print an example of the command.
720         * src/nact/nautilus-actions-config-tool.ui: Fix some labels.
722 2010-08-04 Pierre Wieser <pwieser@trychlos.org>
724         * src/core/na-tokens.c (is_singular_exec):
725         Implement DES-EMA draft v 0.13 which defines irrelevant parameters.
727 2010-08-02 Pierre Wieser <pwieser@trychlos.org>
729         * src/nact/nact-gtk-utils.c (nact_gtk_utils_get_pixbuf):
730         * src/nact/nact-iaction-tab.c (on_icon_changed):
731         Fix bad reinitialization of the icon item.
733         * doc/nact/C/figures/nact-basenames-tab.png:
734         * doc/nact/C/figures/nact-capabilities-tab.png:
735         * doc/nact/C/figures/nact-command-tab.png:
736         * doc/nact/C/figures/nact-environment-tab.png:
737         * doc/nact/C/figures/nact-execution-tab.png:
738         * doc/nact/C/figures/nact-folders-tab.png:
739         * doc/nact/C/figures/nact-legend.png:
740         * doc/nact/C/figures/nact-main-empty.png:
741         * doc/nact/C/figures/nact-mimetypes-tab.png:
742         * doc/nact/C/figures/nact-new-capability.png:
743         * doc/nact/C/figures/nact-preferences-export.png:
744         * doc/nact/C/figures/nact-preferences-import.png:
745         * doc/nact/C/figures/nact-preferences-io-providers.png:
746         * doc/nact/C/figures/nact-preferences-runtime.png:
747         * doc/nact/C/figures/nact-preferences-schemes.png:
748         * doc/nact/C/figures/nact-preferences-ui.png:
749         * doc/nact/C/figures/nact-properties-tab.png:
750         * doc/nact/C/figures/nact-schemes-tab.png:
751         Update all screenshots to include window decoration.
753         * doc/nact/nautilus-actions-config-tool.omf.in:
754         Change categorie and type of the NACT user's manual.
756         * src/nact/nact-main-menubar.c:
757         Change help menu item from Gtk default to Gnome (apparent) standard.
759         * src/nact/nact-main-menubar-help.c (nact_main_menubar_help_on_help):
760         Connect to Yelp.
762         * configure.ac: Update comments.
764         * src/nact/nact-add-capability-dialog.c (try_for_send_ok):
765         * src/nact/nact-add-scheme-dialog.c (try_for_send_ok):
766         * src/nact/nact-main-tab.c (nact_main_tab_is_page_enabled):
767         Check that Gtk+ is more recent that 2.18 for gtk_widget_get_sensitive().
769         Split the NACT manual by chapter.
771         * doc/nact/C/nact-usage.xml:
772         * doc/nact/C/nact-prefs.xml:
773         * doc/nact/C/nact-misc.xml: New files.
775         * doc/nact/C/nautilus-actions-config-tool.xml:
776         * doc/nact/Makefile.am: Updated accordingly.
778 2010-08-01 Pierre Wieser <pwieser@trychlos.org>
780         * nact/nact-iactions-list-bis.c (nact_iactions_list_bis_insert_items):
781         A new NAObjectItem must be inserted before the current NAObjectItem.
783         * doc/README: Define a global documentation plan.
785         * doc/api/Makefile.am:
786         * doc/api/version.xml.in:
787         Define a stub for future public API documentation, targeting
788         Nautilus-Actions plugins developers.
790         * doc/internals/Makefile.am:
791         Define a stub for future internal documentation, targeting
792         Nautilus-Actions core developers.
794         * doc/product/Makefile.am:
795         Define a stub for future global Nautilus-Actions documentation.
797         * configure.ac:
798         * doc/Makefile.am: Updated accordingly.
800         * doc/nact/ChangeLog:
801         * doc/nact/nautilus-actions-config-tool.omf.in: New files.
803         * doc/nact/C/articleinfo.xml:
804         * doc/nact/C/legalnotice.xml: Included as external entities rather
805         than from xi:include because of db2omf complains.
807         * doc/nact/C/appendix-feedback.xml:
808         * doc/nact/C/appendix-gnu-fdl-1.3.xml: Add DOCTYPE declaration.
810 2010-07-31 Pierre Wieser <pwieser@trychlos.org>
812         * src/nact/nautilus-actions-config-tool.ui:
813         Review tooltips.
815         * src/nact/nact-match-list.c (on_must_not_match_clicked):
816         Fix incorrect column id.
818         * src/nact/nact-match-list.c (sort_on_column):
819         Display sort indicator.
821         * src/nact/nact-match-list.c (on_must_match_toggled):
822         Fix crash when defining a positive assertion.
824         * src/core/na-icontext.c (is_candidate_for_capabilities):
825         Implement the function.
827         * src/core/na-selected-info.c:
828         * src/core/na-selected-info.h (na_selected_info_is_executable,
829         na_selected_info_is_owner, na_selected_info_is_readable,
830         na_selected_info_is_writable): New function.
832         * src/core/na-icontext.c (is_candidate_for_folders):
833         Implement the function.
835         * src/core/na-selected-info.c:
836         * src/core/na-selected-info.h (na_selected_info_get_dirname):
837         New function.
839         * src/core/na-icontext.c (is_candidate_for_schemes):
840         Implement the function.
842         * src/core/na-icontext.c (is_candidate_for_selection_count):
843         Implement the function.
845         * src/io-desktop/nadp-reader.c
846         (nadp_reader_ifactory_provider_read_start): Set minimal version number.
848 2010-07-30 Pierre Wieser <pwieser@trychlos.org>
850         * src/core/na-icontext.c (is_candidate_for_basenames):
851         Unref the GPatternSpec after use.
853         * src/core/na-icontext.c (is_candidate_for_basenames):
854         Implement the function.
856         * src/core/na-selected-info.c:
857         * src/core/na-selected-info.h (na_selected_info_get_basename):
858         New function.
860         * configure.ac: Add a dependancy on libgtop.
862         * src/core/na-icontext.c (is_candidate_for_show_if_running):
863         Implement the function.
865 2010-07-29 Pierre Wieser <pwieser@trychlos.org>
867         * src/io-desktop/nadp-formats.c:
868         * src/io-desktop/nadp-formats.h: New files.
869         These should have been added to 2.99.0, but where forgotten.
871         * docs/nact/Makefile.am: New file.
873         * configure.ac:
874         * docs/Makefile.am: Updated accordingly.
876         Create NACT user's manual skeleton.
877         
878         * docs/nact/C/appendix-feedback.xml:
879         * docs/nact/C/appendix-gnu-fdl-1.3.xml:
880         * docs/nact/C/articleinfo.xml:
881         * docs/nact/C/figures/nact-basenames-tab.png:
882         * docs/nact/C/figures/nact-capabilities-tab.png:
883         * docs/nact/C/figures/nact-command-tab.png:
884         * docs/nact/C/figures/nact-environment-tab.png:
885         * docs/nact/C/figures/nact-execution-tab.png:
886         * docs/nact/C/figures/nact-folders-tab.png:
887         * docs/nact/C/figures/nact-legend.png:
888         * docs/nact/C/figures/nact-main-empty.png:
889         * docs/nact/C/figures/nact-mimetypes-tab.png:
890         * docs/nact/C/figures/nact-preferences-export.png:
891         * docs/nact/C/figures/nact-preferences-import.png:
892         * docs/nact/C/figures/nact-preferences-io-providers.png:
893         * docs/nact/C/figures/nact-preferences-runtime.png:
894         * docs/nact/C/figures/nact-preferences-schemes.png:
895         * docs/nact/C/figures/nact-preferences-ui.png:
896         * docs/nact/C/figures/nact-properties-tab.png:
897         * docs/nact/C/figures/nact-schemes-tab.png:
898         * docs/nact/C/figures/nat-new-capability.png:
899         * docs/nact/C/index.xml:
900         * docs/nact/C/legalnotice.xml: New files.
902         Do some cleanup in NAObjectAction and NAObjectProfile code.
903         Implement execution of singular vs. plural command forms.
905         * src/api/na-object-action.h:
906         * src/core/na-object-action.c (na_object_action_is_candidate):
907         Removed function.
909         * src/api/na-object-profile.h:
910         * src/core/na-object-profile.c (na_object_profile_parse_parameters):
911         Removed function.
913         * src/core/na-tokens.c:
914         * src/core/na-tokens.h (na_tokens_execute_action): New function.
916         * src/plugin-menu/nautilus-actions.c (execute_action):
917         Move action execution to NATokens class.
919         * src/utils/nautilus-actions-run.c: Now use NATokens class.
921         * doc/: Renamed as docs/
923         * configure.ac:
924         * Makefile;am: Updated accordingly.
926         * configure.ac: Bump the version number after release.
928 2010-07-28 Pierre Wieser <pwieser@trychlos.org>
930         * NEWS: Update NEWS before unstable release.
932         * configure.ac: Bump the version number before unstable release.
934         * src/io-desktop/nadp-module.c (na_extension_startup):
935         Remove the #if/#endif macros to let the .desktop provider be released.
937         * src/io-desktop/nadp-desktop-file.c:
938         * src/io-desktop/nadp-desktop-file.h
939         (nadp_desktop_file_new, nadp_desktop_file_get_key_file):
940         New functions.
942         * src/io-desktop/nadp-writer.c
943         (nadp_writer_iexporter_export_to_buffer): Implement the function.
945         Import/export .desktop files.
947         * doc/export-format-id: Declare the new export format.
949         * po/POTFILES.in: Add a file.
951         * src/api/na-core-utils.h:
952         * src/core/na-core-utils.c
953         (na_core_utils_slist_add_message, na_core_utils_file_load_from_uri):
954         New functions.
956         * src/api/na-iimporter.h:
957         * src/core/na-iimporter.c (na_iimporter_manage_import_mode):
958         New function.
960         * src/io-desktop/nadp-formats.c:
961         * src/io-desktop/nadp-formats.h: New files.
963         * src/io-desktop/Makefile.am: Updated accordingly.
965         * src/io-desktop/nadp-desktop-file.c:
966         * src/io-desktop/nadp-desktop-file.h
967         (nadp_desktop_file_new_from_uri): New function.
968         (nadp_desktop_file_get_key_file_path): Renamed as nadp_desktop_file_get_key_file_uri().
970         * src/io-desktop/nadp-desktop-provider.c:
971         Declare NAIImporterInterface and NAIExporterInterface interfaces.
973         * src/io-desktop/nadp-reader.c:
974         * src/io-desktop/nadp-reader.h
975         (nadp_reader_iimporter_import_from_uri): New function.
977         * src/io-desktop/nadp-utils.c:
978         * src/io-desktop/nadp-utils.h
979         (nadp_utils_is_writable_file): Renamed as nadp_utils_uri_is_writable().
980         (nadp_utils_uri_delete): New function.
982         * src/io-desktop/nadp-writer.c:
983         * src/io-desktop/nadp-writer.h
984         (nadp_writer_iexporter_export_to_buffer, nadp_writer_iexporter_export_to_file):
985         New functions.
987         * src/nact/nact-add-scheme-dialog.c:
988         Prevent a default scheme to be inserted twice.
990         * src/nact/nact-ischemes-tab.c:
991         Use the current list of rows instead of the current schemes list.
993         * src/nact/nact-match-list.c:
994         Prevent a standard filter to be inserted twice.
996         * src/api/na-core-utils.h:
997         * src/core/na-core-utils.c (na_core_utils_slist_dump):
998         Add a prefix parameter to the function.
1000         * src/core/na-data-boxed.c (slist_dump):
1001         * src/core/na-io-provider.c (na_io_provider_get_providers_list):
1002         * src/io-desktop/nadp-writer.c (nadp_writer_ifactory_provider_write_done):
1003         * src/nact/nact-match-list.c (nact_match_list_on_selection_changed):
1004         * src/test/test-reader.c (main): Updated accordingly.
1006 2010-07-26 Pierre Wieser <pwieser@trychlos.org>
1008         * src/api/na-core-utils.h:
1009         * src/core/na-core-utils.c (na_core_utils_slist_find):
1010         Moved to na_core_utils_slist_count.
1012         * src/core/na-icontext.c (is_candidate_for_show_in):
1013         * src/io-desktop/nadp-writer.c
1014         (nadp_writer_ifactory_provider_write_done): Updated accordingly.
1016         * src/nact/nact-match-list.c (on_filter_edited):
1017         Add g_return_if_fail checks on data and context.
1019         Prevent of inline edition of capabilities.
1021         * src/nact/nact-match-list.c:
1022         * src/nact/nact-match-list.h (nact_match_list_create_model):
1023         Add editable_filter input parameter.
1025         * src/nact/nact-match-list.c (nact_match_list_on_selection_changed):
1026         Only enable the column if filter and item are both editable.
1028         * src/nact/nact-ibasenames-tab.c:
1029         * src/nact/nact-icapabilities-tab.c:
1030         * src/nact/nact-ifolders-tab.c:
1031         * src/nact/nact-imimetypes-tab.c:
1032         * src/nact/nact-ischemes-tab.c: Updated accordingly.
1034         Prevent a capability to be inserted twice.
1036         * src/nact/nact-add-capability-dialog.c (on_button_press_event):
1037         On double-clic, check for OK sensitivity.
1039         * src/nact/nact-icapabilities-tab.c (on_add_clicked):
1040         Provide the dialog with our current content rather than current capabilities.
1042         * src/nact/nact-match-list.c:
1043         * src/nact/nact-match-list.h (nact_match_list_get_rows): New function.
1045         Fix parameters conversion to v3.
1047         * src/core/na-object-action.c (icontext_is_candidate):
1048         Fix comment and minor typo.
1050         * src/core/na-object-profile.c:
1051         * src/io-gconf/nagp-reader.c (convert_pre_v3_parameters):
1052         Move pre-v3 parameters conversion from GConf provider to profile class.
1054         * src/io-desktop/nadp-reader.c
1055         (nadp_reader_ifactory_provider_read_start):
1056         * src/io-gconf/nagp-reader.c (nagp_reader_read_start):
1057         * src/io-gconf/nagp-gconf-provider.c (ifactory_provider_iface_init):
1058         * src/io-gconf/nagp-reader.h:
1059         Now attach profile to its parent in 'read_start' interface.
1061         * src/io-desktop/nadp-reader.c
1062         (nadp_reader_ifactory_provider_read_done):
1063         * src/io-gconf/nagp-reader.c (nagp_reader_read_done):
1064         Homogeneïze the read_done functions.
1066         Move the reading of the subitems key for the desktop I/O provider
1067         from 'read_done' to 'read_start'.
1069         * src/io-desktop/nadp-reader.c:
1070         * src/io-desktop/nadp-reader.h
1071         (nadp_reader_ifactory_provider_read_start): New function.
1073         * src/io-desktop/nadp-desktop-provider.c: Updated accordingly.
1075 2010-07-19 Pierre Wieser <pwieser@trychlos.org>
1077         * src/api/na-object-item.h:
1078         * src/core/na-object-item.c (na_object_item_factory_write_start):
1079         Function is renamed as na_object_item_rebuild_children_slist().
1081         * src/core/na-object-action.c:
1082         * src/core/na-object-menu.c: Updated accordingly.
1084 2010-07-05 Pierre Wieser <pwieser@trychlos.org>
1086         * src/nact/nact-icommand-tab.c (nact_icommand_tab_runtime_init_toplevel):
1087         Connect to delete-event signal to hide the GtkWindow.
1089 2010-07-03 Pierre Wieser <pwieser@trychlos.org>
1091         * src/nact/nact-add-capability-dialog.c (on_base_runtime_init_dialog):
1092         Doucle-click validates the dialog.
1094         * src/nact/nact-add-scheme-dialog.c (on_base_runtime_init_dialog):
1095         Doucle-click validates the dialog.
1097         * src/nact/nact-schemes-list.c (nact_schemes_list_create_model):
1098         Scheme keyword and description are editable in user preferences.
1100 2010-07-02 Pierre Wieser <pwieser@trychlos.org>
1102         * src/core/na-tokens.c (na_tokens_new_from_selection):
1103         Add a trace.
1105         * src/core/na-tokens.h: Fix minor typo.
1107         * src/plugin-menu/nautilus-actions.c:
1108         There should not be any need to keep a reference to our menu.
1110         * data/nautilus-actions-prefs.schemas.in:
1111         * src/core/na-iprefs.h:
1112         * src/core/na-importer-ask.c:
1113         * src/core/na-importer-ask.h:
1114         Define a new GConf preference 'keep last user choice'.
1116         * src/api/na-iimporter.h:
1117         * src/core/na-iimporter.c:
1118         from_uri() interface is renamed as import_from_uri().
1119         Only define na_iimporter_import_from_uri() public API.
1121         * src/core/na-importer.c:
1122         * src/core/na-importer.h:
1123         Define here na_importer_import_from_list() internal API.
1125         * src/io-xml/naxml-provider.c:
1126         * src/io-xml/naxml-reader.c:
1127         * src/io-xml/naxml-reader.h:
1128         * src/nact/nact-assistant-import.c:
1129         * src/nact/nact-tree-model-dnd.c:
1130         * src/test/test-reader.c: Updated accordingly.
1132         * src/core/na-object-id.c (na_object_id_set_new_id):
1133         Fix object type test.
1135         * src/core/na-object-item.c (object_id_new_id):
1136         Fix minor typo.
1138         * src/core/na-object-profile.c (object_id_new_id):
1139         Fix order of validity test.
1140         Only get a new profile name when a new parent is provided.
1142 2010-06-29 Pierre Wieser <pwieser@trychlos.org>
1144         * src/nact/nact-tree-model-dnd.c (drop_uri_list):
1145         Make the code in adequation with the comment.
1147         * src/nact/nact-gtk-utils.c (nact_gtk_utils_get_pixbuf):
1148         Do not emit a warning when file is just not found.
1150 2010-06-28 Pierre Wieser <pwieser@trychlos.org>
1152         * src/io-desktop/nadp-writer.c
1153         (nadp_writer_ifactory_provider_write_data):
1154         Concatenate path and parameters fields to the Exec key.
1156         * src/nact/nact-assistant-import.c (has_readable_files):
1157         Get ride of warning messages in some usual situations.
1159         * src/nact/nact-main-menubar-file.c (nact_main_menubar_file_save_items):
1160         Force sensitivities update when new tree store is empty.
1162         * src/core/na-iduplicable.c (na_iduplicable_check_status):
1163         * src/core/na-object.c (na_object_object_unref):
1164         Review debug messages.
1166         * src/core/na-pivot.c:
1167         * src/core/na-pivot.h (na_pivot_set_new_items): New function.
1169         * src/nact/nact-main-menubar-file.c (save_item):
1170         Duplicate all current tree store to a new pivot.
1172 2010-06-23 Pierre Wieser <pwieser@trychlos.org>
1174         * src/nact/nact-ienvironment-tab.c (on_tab_updatable_selection_changed):
1175         * src/nact/nact-iexecution-tab.c (on_tab_updatable_selection_changed):
1176         Radio buttons are inconsistent if and only if there is no context.
1178         * src/nact/nact-tree-model.c (dump_store): Also dumps origin.
1180         * src/core/na-updater.c (na_updater_remove_item):
1181         Do not unref here removed item.
1182         Also remove item from non level zero parent.
1184         * src/nact/nact-main-window.c (actually_delete_item):
1185         Updated accordingly.
1187         * src/core/na-icontext.c (is_candidate_for_try_exec):
1188         Do not try to get info for non existing file.
1190 2010-06-21 Pierre Wieser <pwieser@trychlos.org>
1192         * src/core/na-icontext.c (is_candidate_for_show_in):
1193         Implement the check of the environment (though not yet the desktop
1194         detection).
1196         * src/nact/nact-iaction-tab.c:
1197         * src/nact/nact-ibasenames-tab.c:
1198         * src/nact/nact-icommand-tab.c:
1199         * src/nact/nact-ienvironment-tab.c:
1200         * src/nact/nact-iexecution-tab.c:
1201         * src/nact/nact-iproperties-tab.c:
1202         * src/nact/nact-match-list.c:
1203         Reset all fields to an empty value when there is no selection.
1205         * src/nact/nact-main-tab.h:
1206         * src/nact/nautilus-actions-config-tool.ui:
1207         Move the Execution tab just besides the Command one.
1209 2010-06-20 Pierre Wieser <pwieser@trychlos.org>
1211         * src/core/na-object.c (na_object_object_unref):
1212         Fix infinite unref of child items.
1214         * src/nact/nact-tree-model.c (nact_tree_model_display):
1215         Set debug messages.
1217 2010-06-18 Pierre Wieser <pwieser@trychlos.org>
1219         * src/core/na-object.c (na_object_object_unref):
1220         Fix segfault when unfiltering invalid items.
1222         * src/core/na-object-item-factory.c:
1223         Numeric version is no more writable by default.
1225         * src/io-gconf/nagp-keys.h:
1226         * src/io-gconf/nagp-writer.c (nagp_writer_write_start):
1227         Explicitely write the numeric version to GConf.
1229         * src/core/na-object-item-factory.c:
1230         Provider data is no more duplicable by NAIFactoryObject.
1232         * src/core/na-object-item.c (object_copy):
1233         Explicitely triggers NAIOProvider::duplicate_data method.
1235         * src/io-desktop/nadp-desktop-provider.c (iio_provider_iface_init):
1236         * src/io-desktop/nadp-writer.c:
1237         * src/io-desktop/nadp-writer.h (nadp_iio_provider_duplicate_data):
1238         Implement NAIIOProvider::duplicate_data interface.
1240         * src/io-gconf/nagp-gconf-provider.c (iio_provider_iface_init):
1241         Initialize NAIIOProvider duplicate_data() virtual pointer.
1243         * src/api/na-iio-provider.h:
1244         * src/core/na-iio-provider.c (duplicate_data):
1245         * src/core/na-io-provider.c:
1246         * src/core/na-io-provider.h (na_io_provider_duplicate_data):
1247         Define new NAIIOProvider interface.
1249 2010-06-17 Pierre Wieser <pwieser@trychlos.org>
1251         * src/api/na-iio-provider.h:
1252         * src/core/na-iio-provider.c (na_iio_provider_item_changed):
1253         Remove useless item id parameter.
1255         * src/core/na-ipivot-consumer.c (is_notify_allowed):
1256         Set a higher delay (1s to 2s) before notifying NAPivot
1257         because of the delay of file monitoring.
1259         * src/nact/nact-clipboard.c (export_objects):
1260         Remove unused dest_folder parameter.
1262         * src/nact/nact-tree-model-dnd.c
1263         (nact_tree_model_dnd_imulti_drag_source_drag_data_get):
1264         Get destination folder as an URI.
1266         * src/nact/nact-iaction-tab.c:
1267         Fix invalid cast of NAObjectMenu to NAObjectAction.
1269         * src/nact/nact-sort-buttons.c:
1270         * src/nact/nact-sort-buttons.h (nact_sort_buttons_enable_buttons):
1271         New function.
1273         * src/nact/nact-main-menubar.c (on_iactions_list_count_updated):
1274         Enable/disable sort buttons depending of items list count.
1276         * src/api/na-object-api.h
1277         (na_object_get_shortcut, na_object_set_shortcut): New macros.
1279         * src/nact/nact-iproperties-tab.c: Review NactIPropertiesTab page.
1281         * src/api/na-object-api.h
1282         (na_object_get_execution_mode,
1283         na_object_get_startup_notify, na_object_get_startup_class,
1284         na_object_get_execute_as, na_object_set_execution_mode,
1285         na_object_set_startup_notify, na_object_set_startup_class,
1286         na_object_set_execute_as): New macros.
1288         * src/core/na-object-profile-factory.c:
1289         Change type of execution mode from uint to string.
1291         * src/nact/nact-iexecution-tab.c: Implement NactIExecutionTab page.
1293         * src/nact/nact-ienvironment-tab.c: Implement NactIEnvironmentTab page.
1295 2010-06-16 Pierre Wieser <pwieser@trychlos.org>
1297         * src/nact/nact-gtk-utils.c:
1298         * src/nact/nact-gtk-utils.h
1299         (nact_gtk_utils_select_file, nact_gtk_utils_select_dir): New functions.
1301         * src/nact/nact-icommand-tab.c: Updated accordingly.
1303         * src/api/na-core-utils.h:
1304         * src/core/na-core-utils.c (na_core_utils_slist_setup_element): New function.
1306         * src/api/na-icontext.h:
1307         * src/core/na-icontext.c (na_icontext_set_only_desktop, na_icontext_set_not_desktop):
1308         New functions.
1310         * src/api/na-object-api.h (na_object_set_only_desktop, na_object_set_not_desktop):
1311         New macros.
1313         * src/nact/nact-ienvironment-tab.c: Implement desktop choice.
1315         * src/nact/nact-icapabilities-tab.c:
1316         * src/nact/nautilus-actions-config-tool.ui: Review NactICapabilitiesTab page.
1318         * src/nact/nact-ischemes-tab.c: Review NactISchemesTab page.
1320         * src/nact/nact-ifolders-tab.c: Review NactIFoldersTab page.
1322         * src/nact/nact-ibasenames-tab.c: Review NactIBasenamesTab page.
1324         * src/nact/nact-match-list.c:
1325         * src/nact/nact-match-list.h (nact_match_list_on_enable_tab):
1326         Removed function.
1328         * src/nact/nact-icommand-tab.c:
1329         * src/nact/nact-icommand-tab.h: Review NactICommandTab page.
1331         * src/core/na-object-action-factory.c: Fix comment.
1333         * src/nact/nact-iaction-tab.c:
1334         * src/nact/nact-iaction-tab.h: Homogeneïse the code.
1336 2010-06-15 Pierre Wieser <pwieser@trychlos.org>
1338         * src/nact/nact-main-tab.c:
1339         * src/nact/nact-main-tab.h (nact_main_tab_get_context):
1340         New function.
1342         * src/nact/nact-iaction-tab.c:
1343         * src/nact/nact-ibasenames-tab.c:
1344         * src/nact/nact-icapabilities-tab.c:
1345         * src/nact/nact-ienvironment-tab.c:
1346         * src/nact/nact-ifolders-tab.c:
1347         * src/nact/nact-imimetypes-tab.c:
1348         * src/nact/nact-ischemes-tab.c:
1349         * src/nact/nact-main-tab.h:
1350         * src/nact/nact-main-window.c:
1351         Remove irrelevant TAB_UPDATABLE_SIGNAL_ENABLE_TAB signal.
1353         * src/nact/nact-match-list.c:
1354         Do not try to get filters when there is no current context.
1356         * src/nact/nact-main-window.c:
1357         Do not mark the application as modified when list is empty.
1359         * src/nact/nact-iaction-tab.c:
1360         * src/nact/nact-ibasenames-tab.c:
1361         * src/nact/nact-icapabilities-tab.c:
1362         * src/nact/nact-icommand-tab.c:
1363         * src/nact/nact-ienvironment-tab.c:
1364         * src/nact/nact-ifolders-tab.c:
1365         * src/nact/nact-iproperties-tab.c:
1366         * src/nact/nact-ischemes-tab.c:
1367         * src/nact/nact-main-menubar-edit.c:
1368         * src/nact/nact-main-menubar-file.c:
1369         * src/nact/nact-main-tab.h:
1370         * src/nact/nact-main-window.c:
1371         * src/nact/nact-match-list.c: Rename main properties.
1373         * src/nact/nact-main-tab.h:
1374         * src/nact/nact-main-window.c: Remove unused PROP_SELECTED_ROW property.
1376         * po/POTFILES.in: Add src/nact/nact-ienvironment-tab.c file.
1378         * src/nact/nact-ienvironment-tab.c: Connect signals.
1380 2010-06-14 Pierre Wieser <pwieser@trychlos.org>
1382         * src/core/na-icontext-factory.c:
1383         Change default capabilities to empty list.
1385         * src/nact/nact-add-capability-dialog.c:
1386         * src/nact/nact-add-capability-dialog.h:
1387         * src/nact/nact-add-capability.ui: New files.
1389         * po/POTFILES.in:
1390         * src/nact/Makefile.am: Updated accordingly.
1392         * src/nact/nact-match-list.c:
1393         * src/nact/nact-match-list.h (nact_match_list_create_model):
1394         Add match_header parameter.
1396         * src/nact/nact-ibasenames-tab.c:
1397         * src/nact/nact-icapabilities-tab.c:
1398         * src/nact/nact-ifolders-tab.c:
1399         * src/nact/nact-imimetypes-tab.c:
1400         * src/nact/nact-ischemes-tab.c: Updated accordingly.
1402 2010-06-13 Pierre Wieser <pwieser@trychlos.org>
1404         * src/nact/nact-match-list.c:
1405         * src/nact/nact-match-list.h (nact_match_list_create_model):
1406         Add on_add_clicked callback parameter.
1408         * src/nact/nact-ibasenames-tab.c:
1409         * src/nact/nact-ifolders-tab.c:
1410         * src/nact/nact-imimetypes-tab.c:
1411         * src/nact/nact-ischemes-tab.c: Updated accordingly.
1413         * src/nact/nact-iaction-tab.c:
1414         Use gtk_bin_get_child() function instead of GTK_BIN()->child.
1416         * po/POTFILES.in:
1417         Add src/nact/nact-icapabilities-tab.c, src/nact/nact-ischemes-tab.c.
1418         Remove src/nact/nact-iconditions-tab.c.
1420         * src/api/na-core-utils.h:
1421         * src/core/na-core-utils.c (na_core_utils_selcount_get_ope_int):
1422         New function.
1424         * src/nact/nact-icapabilities-tab.c: Implement selection count.
1426 2010-06-11 Pierre Wieser <pwieser@trychlos.org>
1428         * src/api/na-icontext.h:
1429         * src/core/na-icontext.c (na_icontext_is_all_mimetypes): New function.
1431         * src/api/na-object-api.h: Define new getters/setters.
1433         * src/core/na-icontext-factory.c:
1434         * src/core/na-object-item-factory.c: Fix comments.
1436         * src/io-gconf/nagp-reader.c:
1437         Convert pre-v3 is_multiple, is_file and is_dir parameters.
1439 2010-06-10 Pierre Wieser <pwieser@trychlos.org>
1441         * configure.ac: Bump post-release version number.
1443         * Changelog: Update NEWS before release.
1445         * configure.ac: Bump pre-release version number.
1447         * src/core/na-iabout.c: Update copyright notice.
1449 2010-06-09 Pierre Wieser <pwieser@trychlos.org>
1451         * src/api/na-core-utils.h:
1452         * src/api/na-core-utils.c (na_core_utils_slist_find_negated):
1453         New function.
1455         * src/nact/nact-add-scheme-dialog.c:
1456         * src/nact/nact-add-scheme-dialog.h: New files.
1458         * src/nact/Makefile.am: Updated accordingly.
1460         * src/nact/nact-main-menubar.c: Update test for Gtk+ version.
1462         * src/nact/nact-match-list.c:
1463         * src/nact/nact-match-list.h: Remove on_add callback.
1465         * src/nact/nact-ibasenames-tab.c:
1466         * src/nact/nact-ifolders-tab.c:
1467         * src/nact/nact-imimetypes-tab.c:
1468         * src/nact/nact-ischemes-tab.c:
1469         * src/nact/nact-preferences-editor.c: Updated accordingly.
1471         * src/nact/nact-schemes-list.c:
1472         * src/nact/nact-schemes-list.h
1473         (nact_schemes_list_show_all, nact_schemes_list_get_current_scheme):
1474         New functions.
1476 2010-06-07 Pierre Wieser <pwieser@trychlos.org>
1478         * src/nact/nact-add-scheme.ui: New file.
1480         * po/POTFILES.in:
1481         * src/nact/Makefile.am: Updated accordingly.
1483 2010-06-04 Pierre Wieser <pwieser@trychlos.org>
1485         * src/api/na-object-api.h: Reorganization.
1487         * src/core/na-icontext-factory.c: Set schemes default to '*'.
1489         * src/nact/nact-icommand-tab.c: Get schemes from current object.
1491         * src/nact/nact-ischemes-tab.c:
1492         * src/nact/nact-ischemes-tab.h:
1493         Take advantage of new nact_match_list_xxx functions.
1495         * src/api/na-object-api.h:
1496         * src/api/na-ifactory-object-data.h:
1497         * src/core/na-object-profile-factory.c: Add NAFO_DATA_WORKING_DIR data.
1499         * src/core/na-factory-object.c:
1500         * src/core/na-factory-object.h (na_factory_object_get_default):
1501         New     function.
1503         * src/nact/nact-icommand-tab.c: Implement working directory.
1505         * src/nact/nact-imimetypes-tab.c: 
1506         Take advantage of new nact_match_list_xxx functions.
1508         * src/nact/nact-match-list.c:
1509         * src/nact/nact-match-list.h: New files.
1511         * src/nact/Makefile.am: Updated accordingly.
1513         * src/nact/base-window.c:
1514         * src/nact/base-window.h (base_window_signal_connect_with_data):
1515         New function.
1517         * src/nact/nact-ibasenames-tab.c: 
1518         Take advantage of new nact_match_list_xxx functions.
1520 2010-06-03 Pierre Wieser <pwieser@trychlos.org>
1522         * src/nact/nact-ibasenames-tab.c: Implement NactIBasenamesInterface interface.
1524 2010-06-02 Pierre Wieser <pwieser@trychlos.org>
1526         * src/nact/nautilus-actions-config-tool.ui:
1527         * src/nact/nact-ibasenames-tab.c: Define basename new conditions skeleton.
1529         * src/nact/nact-icapabilities-tab.c:
1530         * src/nact/nact-icapabilities-tab.h: Define NactICapabilitiesInterface interface.
1532         * src/nact/Makefile.am:
1533         * src/nact/nact-main-tab.h:
1534         * src/nact/nact-main-window.c: Updated accordingly.
1536 2010-05-30 Pierre Wieser <pwieser@trychlos.org>
1538         * src/nact/nact-ibasenames-tab.c:
1539         * src/nact/nact-ibasenames-tab.h: Define NactIBasenamesTabInterface interface.
1541         * src/nact/nact-icommand-tab.c:
1542         No more include removed nact-iconditions-tab.h file.
1544         * src/nact/nact-ienvironment-tab.c:
1545         * src/nact/nact-ienvironment-tab.h: Define NactIEnvironmentTabInterface interface.
1547         * src/nact/nact-iexecution-tab.c:
1548         * src/nact/nact-iexecution-tab.h: Define NactIExecutionTabInterface interface.
1550         * src/nact/nact-ifolders-tab.c (on_tab_updatable_selection_changed):
1551         * src/nact/nact-ischemes-tab.c (on_tab_updatable_selection_changed):
1552         tab_set_sensitive() returned value is not used here.
1554         * src/nact/nact-imimetypes-tab.c:
1555         * src/nact/nact-imimetypes-tab.h: Define NactIMimetypesTabInterface interface.
1557         * src/nact/nact-iproperties-tab.c (on_tab_updatable_selection_changed):
1558         Set a mnemonic in the tab label.
1560         * src/nact/nact-main-tab.h:
1561         * src/nact/nact-main-window.c: Add the four new tabs, remove the old one.
1563         * src/nact/nautilus-actions-config-tool.ui: Fix some size groups.
1565 2010-05-29 Pierre Wieser <pwieser@trychlos.org>
1567         * configure.ac: Define GSEAL_ENABLED.
1569         * src/nact/nautilus-actions-config-tool.ui:
1570         Implement all new fields.
1572 2010-05-26 Pierre Wieser <pwieser@trychlos.org>
1574         * src/api/na-core-utils.h:
1575         * src/core/na-core-utils.c (na_core_utils_dir_split_ext):
1576         New function.
1578         * src/core/na-tokens.h:
1579         * src/core/na-tokens.c: New files.
1581         * src/core/Makefile.am: Udated accordingly.
1583         * src/plugin-menu/nautilus-actions.c:
1584         Expand tokens which may embed parameters.
1586 2010-05-20 Pierre Wieser <pwieser@trychlos.org>
1588         * src/io-gconf/nagp-reader.c (read_done_profile_attach_profile):
1589         Migrate old v2 parameters to v3.
1591         * src/core/na-object-action.c (deals_with_version):
1592         Setup a version number if not already set.
1594         * src/core/na-object-action.c (convert_pre_v2_action):
1595         Renamed as convert_v1_to_v2.
1597         * src/api/na-data-def.h: Add write_if_default.
1599         * src/core/na-icontext-factory.c:
1600         * src/core/na-object-action-factory.c:
1601         * src/core/na-object-id-factory.c:
1602         * src/core/na-object-item-factory.c:
1603         * src/core/na-object-profile-factory.c: Update all data structures.
1605         * src/io-desktop/nadp-writer.c
1606         (nadp_writer_ifactory_provider_write_data):
1607         * src/io-gconf/nagp-writer.c (nagp_writer_write_data):
1608         * src/io-xml/naxml-writer.c (naxml_writer_write_data):
1609         Updated accordingly.
1611         * src/io-desktop/nadp-reader.c
1612         (nadp_reader_ifactory_provider_read_start): Removed function.
1614 2010-05-17 Pierre Wieser <pwieser@trychlos.org>
1616         * configure.ac: Fix typo.
1618         * src/core/na-core-utils.c (na_core_utils_slist_from_array):
1619         Strip the strings extracted from the array.
1621         * src/core/na-factory-object.c (na_factory_object_are_equal):
1622         Dump the data when different.
1624         * src/nact/nact-main-menubar-file.c
1625         (nact_main_menubar_file_save_items): Add a debug message.
1627         * src/api/na-object-api.h (na_object_set_last_version):
1628         * src/api/na-object-action.h:
1629         * src/core/na-object-action.c (na_object_action_set_last_version):
1630         New functions.
1632         * src/core/na-object-action.c (convert_pre_v2_action):
1633         Reset action to last version number after conversion from pre-v2.
1635         * src/core/na-object-profile.c (na_object_profile_parse_parameters):
1636         Do not add extraneous blanks when parsing parameters.
1638         * configure.ac: Post release bump version number.
1640         * src/io-desktop/nadp-reader.c (read_done_load_profiles):
1641         Do not reload already loaded profiles.
1642         Just ignore non-referenced profiles.
1644         * src/io-gconf/nagp-reader.c
1645         (read_done_action_load_profiles_from_list): Do not reload already loaded profiles.
1647         * src/utils/nautilus-actions-new.c:
1648         Factorize error message to make translation easier.
1650         * src/utils/nautilus-actions-run.c:
1651         Mark two new strings for translation.
1653         * src/core/na-object-action-factory.c:
1654         No more set a string version.
1656         * src/io-gconf/nagp-reader.c (read_done_profile_attach_profile):
1657         Test both string and integer versions.
1659 2010-05-12 Pierre Wieser <pwieser@trychlos.org>
1661         * src/api/na-icontext.h:
1662         * src/core/na-icontext.c
1663         (na_icontext_have_all_mimetypes): Removed function.
1664         (na_icontext_read_done): New function.
1666         * src/core/na-object-action.c:
1667         * src/core/na-object-menu.c:
1668         * src/core/na-object-profile.c: Updated accordingly.
1670         * src/api/na-object-api.h
1671         (na_object_get_iversion, na_object_set_iversion): New functions.
1673         * src/core/na-icontext-factory.c:
1674         * src/core/na-object-item-factory.c:
1675         Adjustments on default values.
1677         * src/io-gconf/nagp-reader.c (read_done_profile_attach_profile):
1678         Convert pre-v3 parameters.
1680         * src/plugin-menu/nautilus-actions.c:
1681         Adjust NautilusMenuProvider interface.
1683 2010-05-10 Pierre Wieser <pwieser@trychlos.org>
1685         Monitor .desktop files and directories.
1687         * src/io-desktop/nadp-monitor.c:
1688         * src/io-desktop/nadp-monitor.h: New files.
1690         * src/io-desktop/Makefile.am: Updated accordingly.
1692         * src/io-desktop/nadp-desktop-provider.c:
1693         * src/io-desktop/nadp-desktop-provider.h
1694         (nadp_desktop_provider_add_monitor,
1695         nadp_desktop_provider_on_monitor_event,
1696         nadp_desktop_provider_release_monitors): New functions.
1698         * src/io-desktop/nadp-reader.c (get_list_of_desktop_paths):
1699         Installs a monitor for each candidate directory.
1701 2010-05-03 Pierre Wieser <pwieser@trychlos.org>
1703         * src/api/na-icontext.h:
1704         * src/api/na-ifactory-object-data.h:
1705         * src/api/na-object-api.h:
1706         * src/core/na-icontext-factory.c:
1707         * src/core/na-icontext.c:
1708         Define new NAFO_DATA_ALL_MIMETYPES data, set to TRUE when the context
1709         is to be selected for all mimetypes.
1711         * src/core/na-object-action.c:
1712         * src/core/na-object-menu.c:
1713         * src/core/na-object-profile.c:
1714         * src/plugin-menu/nautilus-actions.c:
1715         All objects implement NAIContextInterface.
1717         * src/nact/nact-iconditions-tab.c (na_object_is_matchcase):
1718         Renamed as na_object_get_matchcase().
1720         * src/core/na-object-profile.c (na_object_profile_parse_parameters):
1721         Do not add extraneous blanks when parsing parameters.
1723 2010-04-19 Pierre Wieser <pwieser@trychlos.org>
1725         * src/api/na-ifactory-object-data.h:
1726         * src/api/na-object-profile.h:
1727         * src/core/na-icontext-factory.c:
1728         * src/core/na-object-action-factory.c:
1729         * src/core/na-object-item-factory.c:
1730         * src/core/na-object-menu-factory.c:
1731         * src/core/na-object-profile-factory.c:
1732         Define all new data, new parameters, and include context informations
1733         to actions and menus.
1735         * src/api/na-core-utils.h:
1736         * src/core/na-core-utils.c (na_core_utils_slist_from_array):
1737         Fix leading and trailing spaces management.
1739 2010-04-18 Pierre Wieser <pwieser@trychlos.org>
1741         * src/api/na-ifactory-object-data.h:
1742         * src/core/na-object-item-factory.c:
1743         Define new NAFO_DATA_SHORTCUT data.
1745 2010-04-15 Pierre Wieser <pwieser@trychlos.org>
1747         * src/nact/nact-schemes-list.c (insert_new_row):
1748         Rewrite row insertion; do not insert a - non-editable - description.
1750         * src/nact/nact-preferences.ui: Fix typo.
1752         * src/io-gconf/nagp-keys.h:
1753         Remove unused GConf entry keys.
1755         * src/io-gconf/nagp-writer.c (nagp_iio_provider_is_willing_to_write):
1756         Force GConf sync to get ride of 'foo' entry.
1758 2010-04-14 Pierre Wieser <pwieser@trychlos.org>
1760         * NEWS: Update before release.
1762         * configure.ac: Bump version number before release.
1764         * src/core/na-selected-info.h:
1765         * src/core/na-selected-info.c (na_selected_info_get_name):
1766         Renamed as na_selected_info_get_path.
1768         * src/core/na-icontext.c
1769         (is_current_folder_inside, is_target_selection_candidate):
1770         Updated accordingly.
1772         * src/core/na-object-profile.c (na_object_profile_parse_parameters):
1773         Do not try to deal with null values.
1775         * src/plugin-menu/nautilus-actions.c (create_item_from_profile):
1776         Duplicate the candidate profile, set the parent to null.
1778         * src/core/na-selected-info.c (na_selected_info_get_location):
1779         Increment the reference count of the returned location.
1781         * src/core/na-gconf-utils.c (dump_entry):
1782         Do not try to dump a null value.
1784         * src/core/na-selected-info.c
1785         (dump): New function.
1786         (na_selected_info_create_for_uri): Accepts a mimetype.
1788         * src/plugin-tracker/na-tracker-dbus.c
1789         (na_tracker_dbus_get_selected_paths): Also sends the mimetype.
1791 2010-04-13 Pierre Wieser <pwieser@trychlos.org>
1793         * po/POTFILES.in: Adding src/nact/nact-iconditions-tab.c file.
1795         * src/api/na-ifactory-object-data.h:
1796         * src/core/na-icontext-factory.c:
1797         Adding NAFO_DATA_SELECTION_COUNT data, obsoleting NAFO_DATA_MULTIPLE.
1799         * src/nact/nact-iconditions-tab.c:
1800         * src/nact/nautilus-actions-config-tool.ui:
1801         Adding required entries for SelectionCount data.
1803 2010-04-12 Pierre Wieser <pwieser@trychlos.org>
1805         * src/plugin-menu/Makefile.am:
1806         * src/plugin-tracker/Makefile.am: Fix incorrect log domains.
1808         * po/POTFILES.in: Add src/nact/nact-iproperties-tab.c file.
1810         * src/nact/nautilus-actions-config-tool.ui: Adjust vertical paddings.
1812         "Advanced conditions" tab is renamed as "Schemes".
1814         * src/nact/nact-iadvanced-tab.c: Renamed as src/nact/nact-ischemes-tab.c.
1815         * src/nact/nact-iadvanced-tab.h: Renamed as src/nact/nact-ischemes-tab.h.
1817         * src/nact/Makefile.am:
1818         * src/nact/nact-icommand-tab.c:
1819         * src/nact/nact-main-tab.h:
1820         * src/nact/nact-main-window.c: Updated accordingly.
1822         Move item properties to their own tab.
1824         * src/nact/nact-iproperties-tab.c:
1825         * src/nact/nact-iproperties-tab.h: New files.
1827         * src/nact/Makefile.am:
1828         * src/nact/nact-iaction-tab.c:
1829         * src/nact/nact-main-tab.h:
1830         * src/nact/nact-main-window.c:
1831         * src/nact/nautilus-actions-config-tool.ui: Updated accordingly.
1833 2010-04-09 Pierre Wieser <pwieser@trychlos.org>
1835         * NEWS: Updated.
1837         * src/nact/nact-sort-buttons.c (set_new_sort_order):
1838         Do not rewrite in GConf a just-readen sort order.
1840         * src/io-gconf/nagp-writer.c (nagp_iio_provider_delete_item):
1841         Also delete the schema names which may be embedded in GConfEntry.
1843         * src/api/na-gconf-utils.h:
1844         * src/core/na-gconf-utils.c (na_gconf_utils_dump_entries):
1845         New function.
1847         * src/io-gconf/nagp-reader.c (read_item):
1848         Dump content of readen entries.
1850         * src/io-gconf/nagp-gconf-provider.c (install_monitors):
1851         Also monitors schemas to be triggered when importing a schema.
1853         * configure.ac: Bump version number for release.
1855         * src/nact/nact-iaction-tab.c (on_icon_browse):
1856         Save current position and folder of icon chooser.
1858 2010-04-08 Pierre Wieser <pwieser@trychlos.org>
1860         * src/core/na-object-profile.c (is_valid_path_parameters):
1861         Only check for non-empty path+parameters (fix #614596).
1863         * src/nact/nact-sort-buttons.c (on_sort_down_button_toggled,
1864         on_sort_manual_button_toggled, on_sort_up_button_toggled):
1865         Do not let the user click twice on a sort button.
1867         * src/nact/nact-main-window.c (setup_dialog_title):
1868         Review/normalize debug entry message.
1870         * src/nact/nact-ifolders-tab.c (on_add_folder_clicked):
1871         Folders list is definitively a list of paths (not URI).
1873         * src/api/na-core-utils.h:
1874         * src/core/na-core-utils.c (na_core_utils_str_collate): New function.
1876         * src/core/na-data-boxed.c (locale_are_equal):
1877         * src/core/na-object-action.c (deals_with_toolbar_label):
1878         * src/core/na-object-id.c (na_object_id_sort_alpha_asc):
1879         * src/io-desktop/nadp-utils.c (nadp_utils_gslist_remove_from):
1880         * src/nact/base-builder.c (already_loaded): Updated accordingly.
1882         * src/api/na-gconf-utils.h:
1883         * src/core/na-gconf-utils.c (na_gconf_utils_has_entry):
1884         Check for an entry in the previously loaded list.
1886         * src/io-gconf/nagp-reader.c
1887         (read_item): First check for Type default value.
1888         (read_item, read_done_item_is_writable,
1889         read_done_action_load_profile): Load entries.
1891         * src/nact/nact-iaction-tab.c (on_tab_updatable_selection_changed):
1892         * src/nact/nact-icommand-tab.c (on_tab_updatable_selection_changed):
1893         Protect gtk_ functions against null values.
1895         * src/plugin-menu/Makefile.am:
1896         Rename plugin to libnautilus-actions-menu.
1898         * src/io-desktop/nadp-reader.c (item_from_desktop_path):
1899         First check Type for default value.
1901 2010-04-07 Pierre Wieser <pwieser@trychlos.org>
1903         * src/nact/nact-gtk-utils.c:
1904         * src/nact/nact-gtk-utils.h
1905         (nact_gtk_utils_get_pixbuf): Render an icon for a given widget.
1906         (nact_utils_render): New function.
1908         * src/nact/nact-iaction-tab.c (on_icon_changed):
1909         * src/nact/nact-main-statusbar.c (nact_main_statusbar_set_locked):
1910         * src/nact/nact-tree-model.c (display_item): Updated accordingly.
1912 2010-04-02 Pierre Wieser <pwieser@trychlos.org>
1914         * configure.ac:
1915         * src/nact/nact-main-tab.c (nact_main_tab_is_page_enabled):
1916         GTK_WIDGET_IS_SENSITIVE is deprecated starting from gtk 2.20.
1918         * src/core/na-core-utils.c (na_core_utils_file_exists):
1919         * src/io-xml/naxml-writer.c (output_xml_to_file):
1920         Takes an URI as the filename.
1922 2010-04-01 Pierre Wieser <pwieser@trychlos.org>
1924         * src/api/na-icontextual.h: Renamed as src/api/na-icontext.h.
1925         * src/core/na-icontextual.c: Renamed as src/core/na-icontext.c.
1926         * src/core/na-icontextual-factory.c: Renamed as src/core/na-icontext-factory.c.
1928         * po/POTFILES.in:
1929         * src/api/Makefile.am:
1930         * src/api/na-icontext.h:
1931         * src/api/na-object-api.h:
1932         * src/core/Makefile.am:
1933         * src/core/na-icontext.c:
1934         * src/core/na-object-action.c:
1935         * src/core/na-object-profile.c:
1936         * src/plugin-menu/nautilus-actions.c:
1937         * src/utils/nautilus-actions-run.c: Updated accordingly.
1939         * src/api/na-object-api.h (na_object_prepare_for_paste):
1940         * src/core/na-object-id.c (na_object_id_prepare_for_paste):
1941         Parent is not always an action, may be a menu.
1943         * src/io-desktop/nadp-desktop-file.c
1944         (nadp_desktop_file_get_file_type):
1945         Do not emit a warning if Type is not found in the .desktop file.
1947         * src/core/na-core-utils.c (na_core_utils_slist_to_array):
1948         Fix built of array.
1950         * src/io-desktop/nadp-keys.h:
1951         Set back action (resp. menu) Type to Action (resp. Menu).
1953         * src/nact/nautilus-actions-config-tool.ui:
1954         Insert a scrolled window as text view parent.
1956         * src/io-desktop/nadp-desktop-file.c (check_key_file):
1957         Only write a debug message if file is hidden.
1959 2010-03-29 Pierre Wieser <pwieser@trychlos.org>
1961         * src/nact/nact-gtk-utils.c (nact_gtk_utils_set_editable):
1962         Take into account new GtktextView widget.
1964         * src/io-desktop/nadp-writer.c (nadp_iio_provider_write_item):
1965         Remove groups which no longer exist.
1967         * src/io-desktop/nadp-reader.c (read_done_load_profiles):
1968         Free string lists.
1970         * src/io-desktop/nadp-desktop-file.c:
1971         * src/io-desktop/nadp-desktop-file.h (nadp_desktop_file_remove_profile):
1972         New function.
1974         * src/io-desktop/nadp-desktop-file.c (nadp_desktop_file_get_profiles):
1975         Fix allocation of profile id.
1977         * src/io-desktop/nadp-desktop-file.c:
1978         * src/io-desktop/nadp-desktop-file.h (nadp_desktop_file_remove_key):
1979         New function.
1981         * src/io-desktop/nadp-writer.c (nadp_iio_provider_write_item):
1982         Remove key when it is no more set.
1984         * src/api/na-object-api.h
1985         (na_object_get_description, na_object_set_description): New macros.
1987         * src/nact/nact-iaction-tab.c:
1988         * src/nact/nautilus-actions-config-tool.ui: Add description entry.
1990         * src/io-desktop/nadp-keys.h: Remove unused keys.
1992         * src/io-desktop/nadp-reader.c (nadp_reader_ifactory_provider_read_done):
1993         Explicitly read subitems string list.
1995         * src/io-desktop/nadp-desktop-provider.c (ifactory_provider_iface_init):
1996         * src/io-desktop/nadp-writer.c:
1997         * src/io-desktop/nadp-writer.h (nadp_writer_ifactory_provider_write_done):
1998         New function: explicitly write subitems string list for actions and menus.
2000 2010-03-28 Pierre Wieser <pwieser@trychlos.org>
2002         * src/api/na-data-boxed.h:
2003         * src/core/na-data-boxed.c (na_data_boxed_set_default): Removed function.
2005         * src/core/na-factory-object.c (set_defaults_iter):
2006         Only set a default value when the box has not been yet allocated.
2008         * src/api/na-ifactory-object.h:
2009         * src/core/na-ifactory-object.c (na_ifactory_object_get_data_groups):
2010         New function.
2012         * src/core/na-object-item-factory.c:
2013         * src/core/na-object-action.c (instance_init):
2014         * src/core/na-object-menu.c (instance_init):
2015         No more instantiate 'type' data box.
2017         * src/core/na-object-item-factory.c:
2018         NAFO_DATA_TYPE is no more automatically readen nor written.
2020         * src/io-desktop/nadp-desktop-provider.c (ifactory_provider_iface_init):
2021         Implement data writing.
2023         * src/io-desktop/nadp-keys.c:
2024         * src/io-desktop/nadp-keys.h (nadp_keys_get_group_and_key):
2025         Removed function.
2027         * src/io-desktop/nadp-reader.c
2028         (item_from_desktop_path): Test default value first.
2029         (nadp_reader_ifactory_provider_read_data): Use new desktop_entry field.
2031         * src/io-desktop/nadp-writer.c:
2032         * src/io-desktop/nadp-writer.h (nadp_writer_ifactory_provider_write_start,
2033         nadp_writer_ifactory_provider_write_data): New functions.
2035         * src/io-gconf/nagp-writer.c (nagp_writer_write_start):
2036         Explicitely write item type.
2038         * src/io-desktop/nadp-desktop-file.c:
2039         * src/io-desktop/nadp-desktop-file.h
2040         (nadp_desktop_file_set_boolean, nadp_desktop_file_set_locale_string,
2041         nadp_desktop_file_set_string, nadp_desktop_file_set_string_list,
2042         nadp_desktop_file_set_uint): New functions.
2044         * src/api/na-core-utils.h:
2045         * src/core/na-core-utils.c (na_core_utils_slist_to_array):
2046         New function.
2048 2010-03-26 Pierre Wieser <pwieser@trychlos.org>
2050         * src/api/na-data-def.h:
2051         * src/core/na-icontextual-factory.c:
2052         * src/core/na-object-id-factory.c:
2053         * src/core/na-object-item-factory.c:
2054         * src/core/na-object-action-factory.c:
2055         * src/core/na-object-profile-factory.c:
2056         Define the key for .desktop file.
2058         * src/io-gconf/nagp-writer.c (nagp_writer_write_data):
2059         Remove blank line.
2061         * src/io-desktop/nadp-desktop-provider.c:
2062         * src/io-desktop/nadp-reader.c:
2063         * src/io-desktop/nadp-reader.h
2064         (nadp_reader_ifactory_provider_read_start): Removed unused function.
2066         * src/io-desktop/nadp-desktop-file.c:
2067         * src/io-desktop/nadp-desktop-file.h
2068         (check_key_file): Check that we don't have a 'Hidden=true' key.
2069         (nadp_desktop_file_get_profiles): New function.
2071         * src/io-desktop/nadp-desktop-provider.c:
2072         * src/io-desktop/nadp-desktop-provider.h:
2073         Move reader functions and structure to nadp-reader.c.
2075         * src/io-desktop/nadp-keys.h:
2076         Relabel type of items in .desktop file (cf. draft 0.9).
2078         * src/io-desktop/nadp-reader.c:
2079         * src/io-desktop/nadp-reader.h:
2080         Read profiles present in the .desktop file.
2082 2010-03-26 Pierre Wieser <pwieser@trychlos.org>
2084         * src/io-desktop/nadp-desktop-file.c:
2085         * src/io-desktop/nadp-desktop-file.h
2086         (check_key_file): Check that we don't have a 'Hidden=true' key.
2087         (nadp_desktop_file_get_profiles): New function.
2089         * src/io-desktop/nadp-desktop-provider.c:
2090         * src/io-desktop/nadp-desktop-provider.h:
2091         Move reader functions and structure to nadp-reader.c.
2093         * src/io-desktop/nadp-keys.h:
2094         Relabel type of items in .desktop file (cf. draft 0.9).
2096         * src/io-desktop/nadp-reader.c:
2097         * src/io-desktop/nadp-reader.h:
2098         Read profiles present in the .desktop file.
2100 2010-03-26 Pierre Wieser <pwieser@trychlos.org>
2102         * configure.ac: Bump version number for data branch.
2104 2010-03-26 Pierre Wieser <pwieser@trychlos.org>
2106         Releasing 2.30.0.
2108 2010-03-25 Pierre Wieser <pwieser@trychlos.org>
2110         * src/nact/nact-main-menubar-edit.c:
2111         * src/nact/nact-main-menubar-edit.h:
2112         * src/nact/nact-main-menubar-file.c:
2113         * src/nact/nact-main-menubar-file.h:
2114         * src/nact/nact-main-menubar-view.c:
2115         * src/nact/nact-main-menubar-view.h: New files.
2117         * po/POTFILES.in:
2118         * src/nact/Makefile.am: Updated accordingly.
2120         * src/nact/nact-main-window.c
2121         (ipivot_consumer_on_mandatory_prefs_changed):
2122         Implement NAIPivotConsumer notification.
2124         * src/nact/nact-sort-buttons.c:
2125         * src/nact/nact-sort-buttons.h
2126         (nact_sort_buttons_level_zero_writability_change):
2127         Enable/disable the buttons depending of the level zero writability
2128         status.
2130 2010-03-24 Pierre Wieser <pwieser@trychlos.org>
2132         * src/core/na-ipivot-consumer.c
2133         (na_ipivot_consumer_notify_of_mandatory_prefs_changed) : New function.
2134         (on_mandatory_prefs_changed): New interface API.
2136         * src/core/na-pivot.c (monitor_runtime_preferences):
2137         Monitor the mandatory preferences set by the admin.
2139         * src/nact/nact-main-window.c (ipivot_consumer_iface_init):
2140         * src/plugin-menu/nautilus-actions.c (ipivot_consumer_iface_init):
2141         For now, only declare NULL implementations.
2143         * src/nact/nact-preferences-editor.c (on_base_runtime_init_dialog):
2144         * src/nact/nact-sort-buttons.c (nact_sort_buttons_runtime_init):
2145         Forbid the modification of order mode is level zero is not writable.
2147         * src/core/na-pivot.c (na_pivot_is_level_zero_writable):
2148         Writable if not all not GConf are locked by admin.
2150         * src/nact/nact-iaction-tab.c (nact_iaction_tab_runtime_init_toplevel):
2151         * src/nact/nact-iadvanced-tab.c (runtime_init_connect_signals):
2152         * src/nact/nact-icommand-tab.c (nact_icommand_tab_runtime_init_toplevel):
2153         * src/nact/nact-iconditions-tab.c (nact_iconditions_tab_runtime_init_toplevel):
2154         * src/nact/nact-ifolders-tab.c (nact_ifolders_tab_runtime_init_toplevel):
2155         * src/nact/nact-main-tab.h:
2156         Signal TAB_UPDATABLE_SIGNAL_SELECTION_CHANGED is renamed as
2157         MAIN_WINDOW_SIGNAL_SELECTION_CHANGED.
2159         * src/nact/nact-main-menubar.c:
2160         * src/nact/nact-main-menubar.h
2161         (nact_main_menubar_is_level_zero_order_changed): New function.
2163         * src/nact/nact-iactions-list.h:
2164         * src/nact/nact-iactions-list-bis.c (nact_iactions_list_bis_delete):
2165         Add an argument to select the row at end of the function.
2167         * src/nact/nact-main-window.c:
2168         Connect to MAIN_WINDOW_SIGNAL_LEVEL_ZERO_ORDER_CHANGED to update
2169         dialog title.
2171         * src/nact/nact-iactions-list.c:
2172         * src/nact/nact-iactions-list.h
2173         (selection_changed): Remove the not used API.
2174         Remove the connection to the signal and the call to the interface.
2176         * src/nact/nact-assistant-export.c (iactions_list_iface_init):
2177         Use the IACTIONS_LIST_SIGNAL_SELECTION_CHANGED instead of the
2178         interface API.
2180         * src/nact/nact-main-window.c
2181         (ipivot_consumer_on_display_order_changed):
2182         Relay NAIPivotConsumer notification to nact_sort_buttons.
2184         * src/nact/nact-sort-buttons.c:
2185         * src/nact/nact-sort-buttons.h
2186         (nact_sort_buttons_display_order_change): New function.
2188         * src/nact/nact-main-menubar.c (save_item):
2189         Not only unref old origin, but also remove it from tree.
2191 2010-03-23 Pierre Wieser <pwieser@trychlos.org>
2193         Add buttons to sort the list.
2195         * src/nact/nact-sort-buttons.c:
2196         * src/nact/nact-sort-buttons.h: New files.
2198         * src/nact/Makefile.am:
2199         * src/nact/nact-main-window.c: Updated accordingly.
2201         * src/nact/nautilus-actions-config-tool.ui:
2202         Define three new buttons to help to sort the list of items.
2204         * src/core/Makefile.am:
2205         No more give a version number to the core library.
2207         Restore the target-location indicator.
2209         * src/api/na-ifactory-object-data.h:
2210         * src/core/na-object-action-factory.c:
2211         Renamed NAFO_DATA_TARGET_BACKGROUND as NAFO_DATA_TARGET_LOCATION.
2213         * src/api/na-object-api.h
2214         (na_object_is_target_location, na_object_set_target_location):
2215         New macros.
2217         * src/api/na-object-item.h:
2218         * src/plugin-menu/nautilus-actions.c (menu_provider_get_background_items):
2219         Renamed ITEM_TARGET_BACKGROUND as ITEM_TARGET_LOCATION.
2221         * src/core/na-icontextual-factory.c:
2222         * src/core/na-object-action-factory.c:
2223         * src/core/na-object-item-factory.c:
2224         Update data descriptions.
2226         * src/core/na-icontextual.c (is_target_background_candidate):
2227         Renamed as is_target_location_candidate().
2229         * src/core/na-object-action.c (na_object_action_is_candidate):
2230         Only selects the action if it is candidate for this target.
2232         * src/nact/nact-iaction-tab.c (on_tab_updatable_selection_changed):
2233         * src/nact/nautilus-actions-config-tool.ui:
2234         Display the target-location checkbox.
2236         * src/utils/nautilus-actions-new.c:
2237         Let the user select the target-location boolean indicator.
2239 2010-03-22 Pierre Wieser <pwieser@trychlos.org>
2241         * src/core/na-icontextual.c
2242         (is_current_folder_inside): Compare path rather that URI.
2243         (is_target_selection_candidate): Fix NASelectedInfo addressing.
2245         * src/plugin-menu/nautilus-actions.c
2246         (get_file_or_background_items): New function.
2247         (build_nautilus_menus, get_candidate_profile): Add debug messages.
2249         * src/core/na-selected-info.c (query_file_attributes):
2250         Fix file_info_get_attribute.
2252         * src/core/na-object-action.c (na_object_action_is_candidate):
2253         Considere background menu just as a special case of selection menu.
2255         * data/.gitignore: Update .gitignore.
2257 2010-03-17 Pierre Wieser <pwieser@trychlos.org>
2259         * data/Makefile.am: Automatically generate configurations schemas.
2261         * data/nautilus-actions.schemas.in:
2262         Renamed as data/nautilus-actions-prefs.schemas.in.
2263         Remove configurations schemas (now dynamically generated).
2265         * po/POTFILES.in: Updated accordingly.
2267         * src/core/na-icontextual-factory.c:
2268         * src/core/na-object-action-factory.c: Fix typo.
2270         * src/utils/nautilus-actions-schemas.c:
2271         Output configurations schemas to stdout.
2273         * po/POTFILES.skip:
2274         New file: do not try to translate dynamically generated schema.
2276         * Makefile.am:
2277         Build data/ after src/ to bo take advantage of dynamic generation of schemas.
2279         * src/core/na-icontextual-factory.c:
2280         String lists are now initialized in GConf-style.
2282         * src/io-gconf/nagp-writer.c (nagp_writer_write_data):
2283         * src/io-xml/naxml-writer.c (write_data_schema_v2, write_data_dump):
2284         Do not output empty values.
2286         * src/api/na-data-boxed.h:
2287         * src/core/na-data-boxed.c (na_data_boxed_is_set): New function.
2289         * data/nautilus-actions.schemas.in:
2290         Fix typo.
2291         Add io-providers/read-at-startup and io-providers/writable keys.
2293         * src/nact/nact.desktop.in: Add StartupNotify=true.
2295         * src/nact/nact-main-window.c (reload):
2296         Free the deleted list before filling the tree.
2298         * src/nact/nact-main-menubar.c
2299         (on_cut_activated): Do not cut not deletable items.
2300         (get_deletables): Add a ref on items to delete.
2302         * src/test/init-dispose-diff.sh:
2303         Do not take into account some debug messages.
2305 2010-03-16 Pierre Wieser <pwieser@trychlos.org>
2307         * src/utils/nautilus-actions-new.c
2308         (output_to_dir): Output the new action to a file.
2310         * src/core/na-core-utils.c (info_dir_is_writable):
2311         Do not emit a warning on 'no such file or directory' error.
2313         * src/utils/nautilus-actions-new.c
2314         (output_to_stdout): Output the new action to stdout.
2315         (output_to_gconf): Output the new action to GConf.
2317         * src/io-xml/naxml-writer.c (naxml_writer_write_start):
2318         Add attribute to list node, thus fixing writing of action.
2320 2010-03-15 Pierre Wieser <pwieser@trychlos.org>
2322         * src/io-xml/naxml-writer.c (naxml_writer_write_start):
2323         No need to explicitely write item type as the data is marked writable.
2325         * src/utils/nautilus-actions-new.c:
2326         Cleanup old command-line code.
2327         Check for incompatibility between boolean arguments.
2329         * src/api/na-data-def.h (na_data_def_get_data_def): New function.
2331         * src/core/na-data-def.c: New file.
2333         * src/core/Makefile.am: Updated accordingly.
2335         * src/core/na-icontextual-factory.c:
2336         * src/core/na-object-profile-factory.c:
2337         Update command-line options to not have duplicates.
2339         * src/utils/nautilus-actions-new.c:
2340         Use new ArgFromDataDef structure and display suitable help.
2342         * src/core/na-icontextual-factory.c:
2343         * src/core/na-object-action-factory.c:
2344         * src/core/na-object-item-factory.c:
2345         * src/core/na-object-profile-factory.c:
2346         * src/utils/nautilus-actions-new.c:
2347         Update data definitions to handle command-line arguments.
2349 2010-03-10 Pierre Wieser <pwieser@trychlos.org>
2351         * src/utils/nautilus-actions-new.c:
2352         Define a structure to host NADataDef argument definitions.
2354         * src/api/na-data-def.h:
2355         Add parameters to be able to manage command-line arguments.
2357         * src/core/na-icontextual-factory.c:
2358         * src/core/na-object-action-factory.c:
2359         * src/core/na-object-id-factory.c:
2360         * src/core/na-object-item-factory.c:
2361         * src/core/na-object-profile-factory.c: Updated accordingly.
2363         * src/core/na-io-provider.c (build_hierarchy):
2364         Attach the child item to its parent.
2366         * src/core/na-object-id.c (instance_dispose):
2367         * src/core/na-object-item.c (instance_dispose):
2368         * src/core/na-object.c (instance_dispose):
2369         Add debug messages.
2371         * src/core/na-dbus-tracker.h: Remove no more used file.
2373         * src/core/Makefile.am: Updated accordingly.
2375         * src/core/na-icontextual.c:
2376         * src/core/na-object-profile.c:
2377         * src/plugin-tracker/na-tracker-dbus.c:
2378         * src/utils/nautilus-actions-run.c:
2379         Remove all references to NATrackedItem obsolete class.
2381         * src/api/na-ifactory-object-data.h:
2382         Rename v1 action data group to NA_FACTORY_ACTION_V1_GROUP.
2384         * src/core/na-object-action-factory.c:
2385         No more try to read obsolete NAFO_DATA_TARGET_BACKGROUND data.
2387         * src/plugin-tracker/na-tracker.c
2388         (menu_provider_get_background_items):
2389         Implement Nautilus get_background_items() interface.
2391         * data/nautilus-actions.schemas.in:
2392         Remove 'target-background' entry description.
2394         * src/api/na-object-api.h
2395         (na_object_is_target_background): Removed macro.
2397         * src/api/na-object-profile.h
2398         * src/core/na-object-profile.c
2399         (na_object_profile_is_target_background): Removed function.
2401 2010-03-09 Pierre Wieser <pwieser@trychlos.org>
2403         * src/io-gconf/nagp-writer.c (nagp_writer_write_data):
2404         Replace gconf_concat_dir_and_key by g_strdup_printf.
2406         * src/core/na-ifactory-provider.c (na_ifactory_provider_write_item):
2407         Add a debug trace when entering in the function.
2409         * src/api/na-icontext-conditions.h: Renamed as na-icontextual.h.
2410         * src/core/na-icontext-conditions.c: Renamed as na-icontextual.c.
2411         * src/core/na-icontext-conditions-factory.c:
2412         Renamed as na-icontextual-factory.c.
2414         * po/POTFILES.in:
2415         * src/api/Makefile.am:
2416         * src/api/na-icontextual.h:
2417         * src/api/na-object-api.h:
2418         * src/core/Makefile.am:
2419         * src/core/na-icontextual.c:
2420         * src/core/na-object-action.c:
2421         * src/core/na-object-profile.c:
2422         * src/plugin-menu/nautilus-actions.c:
2423         * src/utils/nautilus-actions-run.c: Updated accordingly.
2425 2010-03-09 Pierre Wieser <pwieser@trychlos.org>
2427         Refactor NactIBackgroundTab class as NactIFoldersTab.
2429         * src/nact/nact-ibackground-tab.c:
2430         * src/nact/nact-ibackground-tab.h: Renamed as nact-ifolders-tab.{c,h}.
2432         * src/nact/Makefile.am:
2433         * src/nact/nact-main-tab.h:
2434         * src/nact/nact-main-window.c: Updated accordingly.
2436         Remove the 'target background' indicator which was introduced in 2.29.1.
2438         * src/core/na-object-action-factory.c:
2439         Update properties for NAFO_DATA_TARGET_BACKGROUND.
2441         * src/nact/nact-iaction-tab.c
2442         (nact_iaction_tab_runtime_init_toplevel): Remove the signal connection.
2443         (on_tab_updatable_selection_changed): Remove fields initialization.
2444         (on_target_background_toggled): Remove the function.
2446         * src/nact/nact-ibackground-tab.c (tab_set_sensitive):
2447         Always sensitive for profiles.
2449         * src/nact/nautilus-actions-config-tool.ui: Remove the fields.
2451         * src/core/na-object-action-factory.c:
2452         data_def_action_v1 is now available from outside.
2454         * src/core/na-object-action.c
2455         (ifactory_object_read_done, ifactory_object_write_done):
2456         Rewrite input/output functions.
2458         * src/io-gconf/nagp-reader.c
2459         (nagp_reader_read_data): Simplify the code.
2461         * src/io-gconf/nagp-writer.c
2462         (nagp_writer_write_start): No more write type as this is a normal data.
2463         (nagp_writer_write_data): Rewrite profile writing.
2464         (nagp_writer_write_done): Profile writing is now driven by NAObjectAction.
2466         * src/nact/nact-tree-model-dnd.c: Cleanup the code.
2468 2010-03-05 Pierre Wieser <pwieser@trychlos.org>
2470         * nact/nact-tree-model-dnd.c (drop_inside):
2471         Split to three functions to better readibility.
2472         Fix drop inside an empty menu.
2473         Fix drop into a non writable parent.
2475         * src/api/na-iio-provider.h: Add a comment.
2477         * src/core/na-io-provider.c:
2478         * src/core/na-io-provider.h (na_io_provider_get_return_code_label):
2479         New function.
2481         * src/nact/nact-window.c (nact_window_save_item):
2482         Better error message.
2484         * src/nact/nact-export-ask.c (on_base_runtime_init_dialog):
2485         Set more clear label, whether the item be a label or an action.
2487         * src/nact/nact-tree-model-dnd.c (get_xds_atom_value):
2488         Remove debug traces after validation both on 32 and 64 bits systems.
2490         * src/api/na-core-utils.h:
2491         * src/core/na-core-utils.c
2492         (na_core_utils_slist_join_at_end): New function.
2494         * src/api/na-iio-provider.h: Fix typo in comment.
2496         * src/nact/nact-main-menubar.c (on_delete_activated):
2497         Do not delete a tree if at least one item is not writable.
2499         * src/nact/nact-tree-model-dnd.c (get_xds_atom_value):
2500         Fix 64 bits value.
2502         * src/plugin-menu/nautilus-actions.c
2503         (create_item_from_menu): Add a trace on weak notify.
2505 2010-03-04 Pierre Wieser <pwieser@trychlos.org>
2507         * src/core/na-object-action.c (instance_init):
2508         * src/core/na-object-menu.c (instance_init):
2509         Rather create the 'Type' box here than in read_start().
2511 2010-03-03 Pierre Wieser <pwieser@trychlos.org>
2513         * src/core/Makefile.am:
2514         * src/nact/Makefile.am: Fix make distcheck.
2516         * po/POTFILES.in: Updated.
2518         Rename the NAIConditions interface to NAIContextConditions
2519         (hopefully, there will be a NAIContextParameters some day :)).
2521         * src/core/na-iconditions-factory.c:
2522         Renamed as src/core/na-icontext-conditions-factory.c.
2524         * src/core/na-iconditions.c:
2525         Renamed as src/core/na-icontext-conditions.c.
2527         * src/api/na-iconditions.h:
2528         Renamed as src/core/na-icontext-conditions.h.
2530         * src/api/Makefile.am:
2531         * src/core/Makefile.am: Updated accordingly.
2533         * src/core/na-object-profile.c:
2534         * src/plugin-menu/nautilus-actions.c:
2535         Use new na_icontext_conditions_is_candidate() function.
2537         Define the NAIConditions interface, to be implemented by actions,
2538         profiles and menus (for now, only profiles).
2540         * src/api/na-iconditions.h:
2541         * src/core/na-iconditions.c:
2542         * src/core/na-iconditions-factory.c: New files.
2544         * src/api/Makefile.am:
2545         * src/core/Makefile.am: Updated accordingly.
2547         * src/api/na-ifactory-object-data.h:
2548         Define the NA_FACTORY_CONDITIONS_GROUP data group.
2550         * src/core/na-object-profile-factory.c:
2551         Use new data_def_conditions.
2553         * src/core/na-object-profile.c (register_type):
2554         Implement the new NAIConditions interface.
2556         Review the rationales, replacing serializable+obsoleted by
2557         readable+writable flags in NADataDef structure.
2559         * src/api/na-data-def.h:
2560         * src/core/na-factory-object.c:
2561         * src/core/na-object-action-factory.c:
2562         * src/core/na-object-action.c:
2563         * src/core/na-object-id-factory.c:
2564         * src/core/na-object-item-factory.c:
2565         * src/core/na-object-profile-factory.c:
2566         * src/io-desktop/nadp-desktop-provider.c: Updated accordingly.
2568         * src/plugin-tracker/na-tracker-dbus.c (instance_dispose):
2569         Release selected items in instance_dispose() rather than in
2570         instance_finalize() which caused a FPE in Nautilus terminaison.
2572         * src/api/na-ifactory-object.h:
2573         * src/core/na-ifactory-object.c:
2574         * src/core/na-iio-provider.c:
2575         * src/io-desktop/nadp-desktop-file.c:
2576         * src/io-desktop/nadp-desktop-file.h:
2577         * src/io-xml/naxml-writer.c:
2578         * src/io-xml/naxml-writer.h:
2579         * src/nact/nact-iadvanced-tab.c:
2580         * src/nact/nact-main-menubar.c:
2581         * src/utils/nautilus-actions-new.c: Cleanup the code.
2583         * src/nact/nact-assistant-export.c (assist_prepare_confirm):
2584         Optimize the build of the displayed text.
2586         * src/nact/nact-assistant-export.c (on_all_widgets_showed):
2587         Select and expand the first row of the list.
2589         * src/core/na-module.c (add_module_type):
2590         * src/io-desktop/nadp-reader.c (na_ifactory_provider_read_item):
2591         * src/io-desktop/nadp-writer.c (nadp_iio_provider_write_item):
2592         * src/nact/nact-export-format.c (draw_in_vbox):
2593         Add a weak_notify() local function in order to be able to trace
2594         the dispose of attached objects.
2596         * src/api/na-core-utils.h:
2597         * src/core/na-core-utils.c
2598         (na_core_utils_str_remove_char): New function.
2600         * src/api/na-iexporter.h:
2601         Onlu reference one short label in NAIExporterFormat structure.
2603         * src/core/na-export-format.c:
2604         * src/core/na-export-format.h:
2605         * src/io-xml/naxml-formats.c: Updated accordingly.
2607         * src/nact/base-window.c (setup_builder):
2608         Display a dialog error when unable to load a XML definition.
2610         * src/nact/nact-assistant-export.c:
2611         * src/nact/nact-assistant-export.ui:
2612         * src/nact/nact-assistant-import.c:
2613         Adjust the display to be more funny.
2615         * src/nact/nact-clipboard.c:
2616         Add na-export-format.h include file.
2618         * src/nact/nact-export-ask.c:
2619         * src/nact/nact-export-format.c:
2620         * src/nact/nact-export-format.h:
2621         Reference the NAExportFormat object instead of each and every label.
2623         * src/nact/nact-iprefs.h:
2624         Remove IPREFS_EXPORT_FORMAT_ASK definition.
2626         * src/nact/nact-preferences-editor.c:
2627         * src/nact/nautilus-actions-config-tool.ui:
2628         Use (renamed) nact_export_format_init_display() function.
2630         * src/api/na-core-utils.h:
2631         * src/core/na-core-utils.c (na_core_utils_file_exists):
2632         New function.
2634         * src/io-xml/naxml-writer.c: Export to file.
2636         * po/POTFILES.in: Updated.
2638         * src/api/na-data-types.h
2639         (na_data_types_get_gconf_dump_key): New function.
2641         * src/core/na-data-types.c: New file.
2643         * src/core/Makefile.am: Updated accordingly.
2645         * src/api/na-ifactory-object-data.h:
2646         * src/core/na-object-item-factory.c:
2647         (NAFO_DATA_TYPE): New elementary data.
2649         * src/core/na-ifactory-object.c:
2650         * src/api/na-ifactory-object.h
2651         (na_ifactory_object_get_data_boxed): New function.
2653         * src/core/na-core-utils.c (na_core_utils_dir_is_writable_uri):
2654         Give a better name to the parameter.
2656         * src/core/na-exporter.c:
2657         * src/core/na-exporter.h (na_exporter_to_buffer, na_exporter_to_file):
2658         Reorder of functions in the files.
2660         * src/core/na-factory-object.c:
2661         * src/core/na-factory-object.h:
2662         Now use the new na_ifactory_object_get_data_boxed() function.
2664         * src/core/na-object-action-factory.c:
2665         * src/core/na-object-profile-factory.c:
2666         * src/io-xml/naxml-keys.h:
2667         Move the schema descriptions to data factory.
2669         * src/core/na-object-action.c:
2670         * src/core/na-object-menu.c:
2671         (ifactory_object_read_start): Allocate the 'type' data boxed.
2673         * src/io-gconf/nagp-keys.h: Fix the path of the schemas.
2675         * src/io-xml/naxml-formats.c:
2676         * src/io-xml/naxml-formats.h: New files.
2678         * src/io-xml/Makefile.am: Updated accordingly.
2680         * src/io-xml/naxml-provider.c: Implement NAXMLWriter calls.
2682         * src/io-xml/naxml-writer.c:
2683         * src/io-xml/naxml-writer.h: Export to buffer.
2685         * src/nact/nact-clipboard.c
2686         (nact_clipboard_dnd_drag_end): Fix gtk_selection_data_free() call.
2687         (export_row_object): Also exports menus.
2689         * src/nact/nact-tree-model-dnd.c
2690         (nact_tree_model_dnd_imulti_drag_source_drag_data_get):
2691         Fix and parse the returned URI to get the path of the target folder.
2693 2010-03-01 Pierre Wieser <pwieser@trychlos.org>
2695         * po/POTFILES.in: Add src/core/na-exporter.c file.
2697         * src/api/na-iexporter.h: Refactor NAIExporter interface.
2699         * src/core/na-export-format.c:
2700         * src/core/na-export-format.h
2701         (na_export_format_get_exporter): New function.
2703         * src/core/na-exporter.c:
2704         * src/core/na-exporter.h:
2705         * src/core/na-iexporter.c:
2706         * src/core/na-importer.c:
2707         * src/io-xml/naxml-provider.c:
2708         * src/nact/nact-assistant-export.c:
2709         * src/nact/nact-clipboard.c: Updated accordingly.
2711         * src/api/na-iexporter.h:
2712         * src/core/na-export-format.c:
2713         * src/core/na-export-format.h:
2714         * src/core/na-exporter.c:
2715         * src/core/na-iexporter.c:
2716         * src/io-xml/naxml-provider.c:
2717         * src/nact/nact-export-format.c:
2718         NAExporterStr structure is renamed as NAIExporterFormat.
2720         * src/api/na-iimporter.h (from_uri):
2721         Rename the API function to be consistant with NAIExporter interface.
2723         * src/core/na-iimporter.c:
2724         * src/io-xml/naxml-provider.c: Updated accordingly.
2726         * src/nact/nact-tree-model-dnd.c
2727         (nact_tree_model_dnd_imulti_drag_source_drag_data_get):
2728         Target folder is an URI.
2730         * src/nact/nact-main-menubar-tools.c:
2731         * src/nact/nact-main-menubar-tools.h: New files.
2733         * src/nact/nact-main-menubar-maintainer.c:
2734         * src/nact/nact-main-menubar-maintainer.h: New files.
2736         * src/nact/nact-main-menubar.c (on_update_sensitivities):
2737         Only paste a NAObjectItem into a menu.
2739         * src/nact/nact-main-menubar-help.c:
2740         * src/nact/nact-main-menubar-help.h: New files.
2742         * src/nact/Makefile.am:
2743         * src/nact/nact-main-menubar.c:
2744         * src/nact/nact-main-menubar.h: Updated accordingly.
2746         * src/core/na-updater.c:
2747         * src/core/na-updater.h (na_updater_append_item): New function.
2749         * src/nact/nact-main-menubar.c (save_item): Fix save machinery.
2751         * src/nact/nact-assistant-import.c
2752         (check_for_existance): Directly use the main window.
2754         * src/nact/nact-tree-model-dnd.c (drop_uri_list):
2755         Adapt to use na_importer_import_from_list() function.
2756         Display messages in a dialog box.
2757         Split the selection data on a '\r\n' separator.
2759         * src/api/na-iimporter.h (NAIImporterListParms): New structure.
2761         * src/core/na-importer.c:
2762         * src/core/na-importer.h (na_importer_import_from_list): New function.
2764         * src/api/na-iimporter.h:
2765         * src/core/na-iimporter.c:
2766         * src/core/na-importer-ask.c:
2767         * src/core/na-importer-ask.h:
2768         * src/core/na-importer.c:
2769         * src/core/na-importer.h:
2770         * src/io-xml/naxml-reader.c:
2771         * src/io-xml/naxml-reader.h:
2772         * src/nact/nact-assistant-import.c:
2773         * src/nact/nact-tree-model-dnd.c:
2774         * src/test/test-reader.c:
2775         NAIImporterParms structure is renamed as NAIImporterUriParms.
2776         'item' member of this same structure is renamed as imported.
2778         * src/io-gconf/nagp-reader.c:
2779         * src/io-gconf/nagp-writer.c:
2780         * src/io-gconf/nagp-writer.h: Cleanup the code.
2782         * src/nact/nact-iaction-tab.c (setup_toolbar_label):
2783         Immediately update the toolbar label when it is the same that those
2784         of the action.
2786         * src/nact/nact-icommand-tab.c (parse_parameters):
2787         Fix display of a single '%' char.
2789         * src/nact/nautilus-actions-config-tool.ui:
2790         ActionIconLabelLabel field renamed as ActionToolbarLabelLabel.
2792         * src/io-gconf/nagp-reader.c (read_done_item):
2793         Only action needs to setup the parent pointer.
2795         * src/io-gconf/nagp-writer.c (nagp_writer_write_data):
2796         Only writes non-empty values.
2798         * src/core/na-object.c (na_object_object_reset_origin):
2799         No more check for the value of object origin before resetting it.
2801         * src/core/na-object-item.c
2802         (na_object_item_remove_item): Improve debug message.
2803         (copy_children): Refuse to copy when target already has children.
2805         * src/nact/nact-main-menubar.c
2806         (nact_main_menubar_save_items): Do not re-dump all the items hierarchy.
2807         (save_item): Remove old children after having created the new ones.
2809         * src/core/na-object-action.c (ifactory_object_read_done):
2810         Force toolbar label to be the same that action one if flag is set to true.
2812         * src/api/na-object-api.h: Fix minor typo.
2814 2010-02-28 Pierre Wieser <pwieser@trychlos.org>
2816         * src/io-desktop/nadp-desktop-file.c
2817         (nadp_desktop_file_get_key_file_path):
2818         No more invalidate the function.
2820         * src/api/na-ifactory-object.h:
2821         * src/core/na-object-item-factory.c:
2822         * src/nact/nact-iactions-list-bis.c:
2823         * src/nact/nact-iactions-list.h:
2824         Fix minor typo.
2826         * src/api/na-object-api.h:
2827         New na_object_copy macro (evaluates as na_object_object_copy).
2829         * src/api/na-object-item.h (na_object_item_copy): Removed function.
2831         * src/api/na-object.h:
2832         * src/core/na-object.c:.
2833         (copy): Add 'recursive' flag.
2834         (iduplicable_copy): Use na_object_copy() macro.
2835         (na_object_object_copy): New function.
2837         * src/core/na-factory-object.c (na_factory_object_copy):
2838         No more delete all NADataBoxed, but update those who already exist.
2839         (write_data_iter): Fix return code.
2841         * src/core/na-iduplicable.c (na_iduplicable_duplicate):
2842         Review the rationale, and ensure that the function is recursive.
2844         * src/core/na-object-action.c
2845         * src/core/na-object-item.c:
2846         * src/core/na-object-menu.c:
2847         * src/core/na-object-profile.c:
2848         (instance_constructed): Removed function.
2849         (ifactory_object_copy): Removed function.
2850         (object_copy): New function, implementation of NAObject::copy.
2852         * src/core/na-pivot.c (instance_dispose): Add debug message.
2854         * src/core/na-updater.c (na_updater_remove_item):
2855         Only update tree if object has no parent.
2857         * src/io-gconf/nagp-gconf-provider.c
2858         (ifactory_provider_iface_init): Address nagp_writer_write_start().
2860         * src/io-gconf/nagp-reader.c (nagp_reader_read_data): Comment debug message.
2862         * src/io-gconf/nagp-writer.c:
2863         * src/io-gconf/nagp-writer.h (nagp_writer_write_start): New function.
2864         Write the type of the NAObjectItem.
2866         * src/nact/nact-iaction-tab.c (on_tab_updatable_selection_changed):
2867         * src/nact/nact-icommand-tab.c (on_tab_updatable_selection_changed):
2868         * src/nact/nact-iconditions-tab.c (on_tab_updatable_selection_changed):
2869         As objects have defaults, no more test for null string.
2871         * src/nact/nact-main-menubar.c
2872         (nact_main_menubar_save_items): Dump after check status.
2873         (save_item): Use new na_object_copy() macro.
2875         * src/nact/nact-window.c (nact_window_save_item):
2876         Remove superfluous dumps.
2878 2010-02-27 Pierre Wieser <pwieser@trychlos.org>
2880         * src/core/na-iduplicable.c (na_iduplicable_check_status):
2881         An object without any origin is considered modified.
2883         * src/core/na-iduplicable.c (get_duplicable_str):
2884         NAIDuplicable object defaults to not modified.
2886         * src/core/na-object-item-factory.c:
2887         Pointers to list of subitems are not comparable.
2889         Rewrite the update of the pivot tree where there is a non null origin.
2890         * src/core/na-updater.c:
2891         * src/core/na-updater.h
2892         (na_updater_add_item): Removed function.
2893         (na_updater_insert_item): New function.
2895         * src/io-gconf/nagp-writer.c (nagp_writer_write_data):
2896         Fix the path of written data.
2898         * src/nact/nact-main-menubar.c (on_new_profile_activated): 
2899         Do not attach the profile as this is done by the tree model.
2900         (save_item): Copy the tree item to the pivot one if it exists.
2902         * src/core/na-object-item.c (instance_dispose):
2903         Set the subitems pointer to NULL before unreffing the children.
2905         * src/core/na-object.c (instance_finalize):
2906         Add a protection when finalizing NADataBoxed.
2908         * src/core/na-object-action.c (instance_constructed):
2909         * src/core/na-object-profile.c (instance_constructed):
2910         * src/core/na-object-menu.c (instance_constructed):
2911         Initialize NAIFactoryObject defaults here, rather than in object_new.
2913         * src/api/na-data-def.h: Remove fn_free() function pointer.
2915         * src/core/na-data-boxed.c:
2916         * src/core/na-object-action-factory.c:
2917         * src/core/na-object-id-factory.c:
2918         * src/core/na-object-profile-factory.c
2919         * src/core/na-object-item-factory.c: Updated accordingly.
2921         * src/core/na-iduplicable.c (get_duplicable_str):
2922         Initialize modification status to TRUE if origin is NULL.
2924         * src/nact/nact-tree-model.c (nact_tree_model_fill):
2925         Recheck modification and validity status of newly duplicated object.
2927 2010-02-26 Pierre Wieser <pwieser@trychlos.org>
2929         Fix references count mistakes in NACT.
2931         * src/api/na-object-api.h (na_object_unref_selected_items):
2932         New macro, more specifically targeting the tree selections.
2934         * src/core/na-factory-object.c:
2935         * src/core/na-factory-object.h (na_factory_object_finalize_instance):
2936         Renamed as na_factory_object_finalize().
2938         * src/core/na-object-action.c (instance_finalize):
2939         * src/core/na-object-item.c (instance_finalize):
2940         * src/core/na-object-menu.c (instance_finalize):
2941         * src/core/na-object-profile.c (instance_finalize):
2942         * src/core/na-object.c (instance_finalize):
2943         Move na_object_unref_selected_items() to 
2944         na_object:na_factory_object_finalize.
2946         * src/core/na-pivot.c (instance_dispose, reload_items):
2947         Use non-recursive na_object_unref_items() macro.
2949         * src/nact/nact-assistant-export.c (assist_prepare_confirm):
2950         * src/nact/nact-iactions-list.c (free_items_callback):
2951         * src/nact/nact-main-menubar.c (on_update_sensitivities):
2952         Use recursive na_object_unref_selected_items() macro.
2954         * src/nact/nact-iactions-list.c (filter_selection):
2955         Unref the got object immediately (which was the actual bug).
2957         * src/test/init-dispose-diff.sh: Fix and optimize.
2959         Fix display of modification status in NACT.
2961         * src/api/na-iduplicable.h:
2962         * src/core/na-iduplicable.c (na_iduplicable_set_modified):
2963         New function.
2965         * src/api/na-object-api.h:
2966         * src/api/na-object-item.h:
2967         * src/core/na-object-item.c (na_object_item_unref_items_rec):
2968         New function.
2970         * src/core/na-data-boxed.c (string_are_equal):
2971         * src/core/na-factory-object.c (na_factory_object_are_equal):
2972         * src/core/na-object.c (na_object_object_check_status_up):
2973         Rewrite equality tests.
2975         * src/core/na-object-action-factory.c:
2976         * src/core/na-object-item-factory.c:
2977         * src/core/na-object-profile-factory.c:
2978         * src/core/na-object-action.c:
2979         * src/core/na-object-menu.c:
2980         * src/core/na-object-profile.c:
2981         Review one more time default values and initial allocations.
2983         * src/core/na-pivot.c (instance_dispose, na_pivot_load_items:
2984         Only unref the first level of items.
2986         * src/core/na-updater.c (na_updater_remove_item):
2987         Only unref the removed object as it will take care of also unreffing
2988         its children if its reference count is correct.
2990         * src/nact/nact-iactions-list.c (display_label):
2991         Add a commented debug line.
2993         * src/test/check-po.sh: Test cpompleteness of po/POTFILES.in.
2994         * src/test/time.sh: Bench the elapsed build time.
2996 2010-02-25 Pierre Wieser <pwieser@trychlos.org>
2998         * po/POTFILES.in: Updated.
3000         * src/core/na-object-profile.c:
3001         Remove no more used default profile.
3003         * src/core/na-object-profile.c:
3004         * src/nact/nact-iactions-list.c:
3005         No more include gi18n.h.
3007         * src/api/na-ifactory-object.h:
3008         * src/core/na-ifactory-object.c:
3009         Remove get_default() function from the interface.
3011         * src/api/na-object-action.h:
3012         * src/core/na-object-action.c (na_object_action_new_with_defaults):
3013         New function.
3014         Remove ifactory_object_get_default() implementation.
3016         * src/api/na-object-menu.h:
3017         * src/core/na-object-menu.c (na_object_menu_new_with_defaults):
3018         New function.
3019         Remove ifactory_object_get_default() implementation.
3021         * src/api/na-object-profile.h:
3022         * src/core/na-object-profile.c (na_object_profile_new_with_defaults):
3023         New function.
3024         Remove ifactory_object_get_default() implementation.
3026         * src/core/na-factory-object.c:
3027         * src/core/na-factory-object.h
3028         (na_factory_object_set_defaults): New function.
3029         (na_factory_object_attach_with_default): Removed function.
3030         Cleanup the code.
3032         * src/core/na-object-action-factory.c:
3033         * src/core/na-object-item-factory.c:
3034         * src/core/na-object-profile-factory.c:
3035         Review default values.
3037         * src/nact/nact-iaction-tab.c:
3038         * src/nact/nact-icommand-tab.c:
3039         * src/nact/nact-iconditions-tab.c:
3040         Fix the display of NULL texts.
3042         * src/nact/nact-main-menubar.c:
3043         * src/utils/nautilus-actions-new.c:
3044         Allocate new objects with defaults.
3046         * src/api/na-ifactory-object.h:
3047         * src/api/na-ifactory-provider.h:
3048         * src/api/na-object-api.h:
3049         * src/api/na-object-item.h:
3050         * src/core/na-factory-object.c:
3051         * src/core/na-factory-object.h:
3052         * src/core/na-factory-provider.c:
3053         * src/core/na-factory-provider.h:
3054         * src/core/na-ifactory-provider.c:
3055         * src/core/na-object-action.c:
3056         * src/core/na-object-item.c:
3057         * src/core/na-object-menu.c:
3058         * src/core/na-object-profile.c:
3059         * src/core/na-updater.c:
3060         * src/io-gconf/nagp-gconf-provider.c:
3061         * src/io-gconf/nagp-writer.c:
3062         * src/io-gconf/nagp-writer.h:
3063         Implement NAIfactoryProvider in GConf I/O provider writer.
3065         Fix reference count errors in NACT user interface.
3067         * src/core/na-object-id.c (instance_dispose):
3068         Remove the disposing child from its parent childs list.
3070         * src/core/na-object-item-factory.c (free_items_list):
3071         * src/core/na-object-item.c (instance_dispose):
3072         * src/core/na-object.c (na_object_object_unref):
3073         Fix minor typo.
3075         * src/core/na-object-item.c (na_object_item_unref_items):
3076         Do not recursively unref objects here as this is done in dispose.
3078         * src/nact/nact-tree-model.c (nact_tree_model_dispose):
3079         Add a debug message.
3081         Make the menus exportable.
3083         * src/nact/nact-iactions-list.c:
3084         * src/nact/nact-tree-model-priv.h:
3085         * src/nact/nact-tree-model.c:
3086         * src/nact/nact-tree-model.h:
3087         Change the 'only_actions' semantic by a 'are_profiles_displayed' one.
3088         Profiles are actually stored, but not displayed.
3090         * src/nact/nact-iactions-list.c
3091         (nact_iactions_list_initial_load_toplevel):
3092         The title of the label column is no more localizable.
3094         Fix validity checks.
3096         * src/core/na-data-boxed.c
3097         (string_is_valid, locale_is_valid, slist_is_valid, pointer_is_valid,
3098         uint_is_valid): Fix individual validity checks of elementary data.
3100         * src/core/na-factory-object.c (na_factory_object_is_valid):
3101         First check for presence of mandatory data, then check present data.
3103         * src/core/na-iduplicable.c (na_iduplicable_duplicate):
3104         Also duplicate the status of the source object.
3106         * src/core/na-io-provider.c (na_io_provider_read_items):
3107         Add a comment.
3109         * src/core/na-object-item.c (na_object_item_copy):
3110         * src/core/na-object.c (na_object_object_check_status):
3111         Fix minor typo.
3113         * src/nact/nact-tree-model.c (nact_tree_model_fill):
3114         No more check status of newly duplicated objects.
3116         * src/nact/base-window.c (instance_dispose):
3117         Only set dispose after having tested for main window.
3119         * src/api/na-object-api.h:
3120         Distinguish between profile and item on get_label.
3122         * src/core/na-gtk-utils.c:
3123         * src/core/na-gtk-utils.h: New files.
3124         * src/core/Makefile.am: Updated accordingly.
3126         * src/core/na-data-boxed.c:
3127         * src/core/na-gconf-monitor.c:
3128         * src/core/na-importer-ask.c:
3129         * src/io-gconf/nagp-gconf-provider.c:
3130         * src/io-gconf/nagp-reader.c:
3131         * src/io-gconf/nagp-reader.h:
3132         Fix objects reading from GConf.
3134         * src/nact/nact-assistant-import.c:
3135         * src/nact/nact-iprefs.c:
3136         * src/nact/nact-preferences-editor.c:
3137         * src/nact/nact-tree-model-dnd.c:
3138         * src/utils/nautilus-actions-schemas.c:
3139         Move GConfClient to private object data, unref on dispose.
3141 2010-02-24 Pierre Wieser <pwieser@trychlos.org>
3143         * src/api/na-iimporter.h:
3144         * src/core/Makefile.am:
3145         * src/core/na-iimporter.c:
3146         * src/core/na-importer-ask.c:
3147         * src/core/na-importer-ask.h:
3148         * src/core/na-iprefs.c:
3149         * src/core/na-iprefs.h:
3150         * src/io-xml/naxml-reader.c:
3151         * src/nact/Makefile.am:
3152         * src/nact/nact-assistant-import.c:
3153         * src/nact/nact-iprefs.c:
3154         * src/nact/nact-iprefs.h:
3155         * src/nact/nact-main-window.h:
3156         * src/nact/nact-preferences-editor.c:
3157         * src/nact/nact-tree-model-dnd.c:
3158         * src/nact/nautilus-actions-config-tool.ui:
3159         * src/test/test-reader.c: ImporterAsk dialog.
3161         * src/io-xml/naxml-keys.c:
3162         * src/io-xml/naxml-keys.h:
3163         * src/io-xml/naxml-reader.c: Able to import type 3 XML files.
3165         * exports/config_1af5a47e-96d9_v1.4.schemas:
3166         * src/api/na-data-boxed.h:
3167         * src/api/na-ifactory-object-data.h:
3168         * src/core/na-data-boxed.c:
3169         * src/core/na-factory-object.c:
3170         * src/core/na-object-action.c:
3171         * src/core/na-object-id-factory.c:
3172         * src/core/na-object-item-factory.c:
3173         * src/core/na-object-profile-factory.c:
3174         * src/io-xml/naxml-provider.c:
3175         * src/io-xml/naxml-reader.c:
3176         * src/io-xml/naxml-reader.h: Able to import two profiles.
3178         * src/api/na-data-boxed.h:
3179         * src/api/na-gconf-utils.h:
3180         * src/core/na-data-boxed.c:
3181         * src/core/na-factory-object.c:
3182         * src/core/na-gconf-utils.c:
3183         Make the dump more pretty.
3185         * exports/action-5c4fa203-b5d0_post_v1.11_type_3.xml:
3186         * exports/config-4c4fa203-b5d0_post_v1.11_type_2.schema:
3187         * exports/config_1af5a47e-96d9_v1.schemas:
3188         * exports/config_2af5a47e-96d9_pre_v1.11.schemas:
3189         * exports/config_3c4fa203-b5d0_post_v1.11_type_1.schemas:
3190         Refactor export files to better suit test-reader needs.
3192         * src/api/Makefile.am:
3193         * src/api/na-data-boxed.h:
3194         * src/api/na-data-types.h:
3195         * src/api/na-gconf-utils.h:
3196         * src/api/na-ifactory-object-data.h:
3197         * src/api/na-ifactory-object.h:
3198         * src/api/na-ifactory-provider.h:
3199         * src/api/na-iimporter.h:
3200         * src/api/na-object-api.h:
3201         * src/api/na-object-profile.h:
3202         * src/core/Makefile.am:
3203         * src/core/na-data-boxed.c:
3204         * src/core/na-factory-object.c:
3205         * src/core/na-factory-object.h:
3206         * src/core/na-factory-provider.c:
3207         * src/core/na-factory-provider.h:
3208         * src/core/na-gconf-utils.c:
3209         * src/core/na-ifactory-object.c:
3210         * src/core/na-ifactory-provider.c:
3211         * src/core/na-importer.c:
3212         * src/core/na-importer.h:
3213         * src/core/na-io-provider.c:
3214         * src/core/na-object-action-factory.c:
3215         * src/core/na-object-action.c:
3216         * src/core/na-object-id-factory.c:
3217         * src/core/na-object-item-factory.c:
3218         * src/core/na-object-menu-factory.c:
3219         * src/core/na-object-menu.c:
3220         * src/core/na-object-profile-factory.c:
3221         * src/core/na-object-profile.c:
3222         * src/io-desktop/nadp-desktop-file.c:
3223         * src/io-desktop/nadp-desktop-file.h:
3224         * src/io-desktop/nadp-desktop-provider.c:
3225         * src/io-desktop/nadp-keys.c:
3226         * src/io-desktop/nadp-keys.h:
3227         * src/io-desktop/nadp-reader.c:
3228         * src/io-gconf/nagp-gconf-provider.c:
3229         * src/io-xml/naxml-keys.h:
3230         * src/io-xml/naxml-provider.c:
3231         * src/io-xml/naxml-reader.c:
3232         * src/io-xml/naxml-reader.h:
3233         * src/nact/nact-assistant-import.c:
3234         * src/nact/nact-tree-model-dnd.c:
3235         * src/test/test-include.c:
3236         * src/test/test-reader.c: Able to import a pre-v2 action.
3238 2010-02-22 Pierre Wieser <pwieser@trychlos.org>
3240         * src/api/Makefile.am:
3241         * src/api/na-ifactory-object-enum.h:
3242         * src/api/na-ifactory-object-str.h:
3243         * src/api/na-ifactory-object.h:
3244         * src/api/na-ifactory-provider.h:
3245         * src/api/na-iio-provider.h:
3246         * src/api/na-object-api.h:
3247         * src/core/Makefile.am:
3248         * src/core/na-data-element.c:
3249         * src/core/na-data-element.h:
3250         * src/core/na-factory-object.c:
3251         * src/core/na-factory-object.h:
3252         * src/core/na-ifactory-object.c:
3253         * src/core/na-ifactory-provider-priv.h:
3254         * src/core/na-ifactory-provider.c:
3255         * src/core/na-object-action-enum.c:
3256         * src/core/na-object-action.c:
3257         * src/core/na-object-id-enum.c:
3258         * src/core/na-object-item-enum.c:
3259         * src/core/na-object-item.c:
3260         * src/core/na-object-menu-enum.c:
3261         * src/core/na-object-menu.c:
3262         * src/core/na-object-profile-enum.c:
3263         * src/core/na-object-profile.c:
3264         * src/core/na-object.c:
3265         * src/io-desktop/nadp-desktop-provider.c:
3266         * src/io-desktop/nadp-desktop-provider.h:
3267         * src/io-desktop/nadp-keys.c:
3268         * src/io-desktop/nadp-keys.h:
3269         * src/io-desktop/nadp-reader.c:
3270         * src/io-desktop/nadp-writer.c:
3271         * src/io-xml/naxml-keys.h:
3272         * src/io-xml/naxml-reader.c:
3273         * src/test/test-include.c:
3274         Rename NAIDataFactory interface as NAIFactoryObject.
3276         * src/api/Makefile.am:
3277         * src/api/na-idata-factory-str.h:
3278         * src/api/na-idata-factory.h:
3279         * src/api/na-ifactory-provider-provider.h:
3280         * src/api/na-ifactory-provider.h:
3281         * src/api/na-iio-provider.h:
3282         * src/core/Makefile.am:
3283         * src/core/na-data-factory.c:
3284         * src/core/na-data-factory.h:
3285         * src/core/na-factory-provider.c:
3286         * src/core/na-factory-provider.h:
3287         * src/core/na-ifactory-provider-priv.h:
3288         * src/core/na-ifactory-provider.c:
3289         * src/core/na-object-action.c:
3290         * src/core/na-object-menu.c:
3291         * src/core/na-object-profile.c:
3292         * src/io-desktop/nadp-desktop-provider.c:
3293         * src/io-desktop/nadp-reader.c:
3294         * src/io-desktop/nadp-writer.c:
3295         * src/io-gconf/nagp-gconf-provider.c:
3296         * src/io-xml/naxml-provider.c:
3297         * src/io-xml/naxml-reader.c:
3298         Rename NAIIOFactory interface as NAIFactoryProvider.
3300         * src/core/na-io-provider.c:
3301         * src/core/na-pivot.c:
3302         * src/core/na-pivot.h:
3303         * src/nact/nact-application.c:
3304         * src/nact/nact-main-window.c:
3305         * src/plugin-menu/nautilus-actions.c:
3306         * src/utils/nautilus-actions-run.c
3307         (na_pivot_set_loadable): New function.
3308         (na_pivot_reload_items): Removed function.
3310 2010-02-21 Pierre Wieser <pwieser@trychlos.org>
3312         * src/core/na-pivot.c:
3313         * src/core/na-pivot.h:
3314         * src/core/na-updater.c:
3315         * src/core/na-updater.h:
3316         * src/nact/nact-application.c:
3317         * src/nact/nact-main-window.c:
3318         * src/plugin-menu/nautilus-actions.c:
3319         * src/test/test-reader.c:
3320         * src/utils/nautilus-actions-new.c:
3321         * src/utils/nautilus-actions-run.c:
3322         No more define the loadable set at NAPivot construction time,
3323         but deffer this when actually loading items.
3325 2010-02-20 Pierre Wieser <pwieser@trychlos.org>
3327         * po/POTFILES.in:
3328         * src/api/na-idata-factory-str.h:
3329         * src/api/na-idata-factory.h:
3330         * src/api/na-iimporter.h:
3331         * src/api/na-iio-factory.h:
3332         * src/api/na-object-api.h:
3333         * src/core/Makefile.am:
3334         * src/core/na-data-factory.c:
3335         * src/core/na-data-factory.h:
3336         * src/core/na-idata-factory.c:
3337         * src/core/na-iio-factory.c:
3338         * src/core/na-importer.c:
3339         * src/core/na-importer.h:
3340         * src/core/na-io-factory.c:
3341         * src/core/na-io-factory.h:
3342         * src/core/na-iprefs.h:
3343         * src/core/na-module.c:
3344         * src/core/na-object-action-enum.c:
3345         * src/core/na-object-action.c:
3346         * src/core/na-object-id-enum.c:
3347         * src/core/na-object-item-enum.c:
3348         * src/core/na-object-item.c:
3349         * src/core/na-object-menu-enum.c:
3350         * src/core/na-object-menu.c:
3351         * src/core/na-object-profile-enum.c:
3352         * src/core/na-object-profile.c:
3353         * src/core/na-pivot.c:
3354         * src/io-desktop/Makefile.am:
3355         * src/io-gconf/Makefile.am:
3356         * src/io-xml/Makefile.am:
3357         * src/io-xml/naxml-keys.c:
3358         * src/io-xml/naxml-keys.h:
3359         * src/io-xml/naxml-provider.c:
3360         * src/io-xml/naxml-provider.h:
3361         * src/io-xml/naxml-reader.c:
3362         * src/io-xml/naxml-reader.h:
3363         * src/nact/Makefile.am:
3364         * src/nact/nact-assistant-import.c:
3365         * src/nact/nact-import-ask.c:
3366         * src/nact/nact-iprefs.c:
3367         * src/nact/nact-preferences-editor.c:
3368         * src/nact/nact-tree-model-dnd.c:
3369         * src/plugin-menu/Makefile.am:
3370         * src/plugin-tracker/Makefile.am:
3371         * src/test/.gitignore:
3372         * src/test/Makefile.am:
3373         * src/utils/Makefile.am: Implement NAXMLReader.
3375 2010-02-18 Pierre Wieser <pwieser@trychlos.org>
3377         * src/api/na-core-utils.h:
3378         * src/api/na-idata-factory-str.h:
3379         * src/core/na-core-utils.c:
3380         * src/core/na-data-element.c:
3381         * src/core/na-data-element.h:
3382         * src/core/na-data-factory.c:
3383         * src/core/na-io-provider.c:
3384         * src/core/na-io-provider.h:
3385         * src/core/na-object-action-enum.c:
3386         * src/core/na-object-id-enum.c:
3387         * src/core/na-object-item-enum.c:
3388         * src/core/na-object-item.c:
3389         * src/core/na-object-menu-enum.c:
3390         * src/core/na-object-profile-enum.c:
3391         * src/core/na-object.c:
3392         * src/io-desktop/nadp-writer.c:
3393         * src/io-gconf/nagp-reader.c:
3394         * src/nact/nact-assistant-export.c:
3395         * src/nact/nact-iactions-list-bis.c:
3396         * src/nact/nact-main-statusbar.c:
3397         * src/nact/nact-tree-model-dnd.c:
3398         * src/nact/nact-tree-model.c:
3399         Fix non empty string list.
3400         Fix under reference in export assistant.
3401         Refactor NADataElement class.
3403         * src/core/na-exporter.c (na_exporter_get_formats):
3404         Fix infinite loop.
3406         * src/core/na-iduplicable.c (na_iduplicable_dispose):
3407         Test for effective connexion before trying to disconnect.
3409         * src/core/na-data-element.c (na_data_element_set):
3410         Fix value->type inverted assertion.
3412         * src/api/na-core-utils.h:
3413         * src/core/na-core-utils.c:
3414         * src/io-desktop/nadp-desktop-file.c:
3415         * src/io-desktop/nadp-desktop-provider.c:
3416         * src/io-desktop/nadp-xdg-dirs.c:
3417         Fix reading of localized values in the desktop file.
3419         * src/nact/base-iprefs.c:
3420         * src/nact/base-iprefs.h:
3421         * src/nact/nact-assistant-import.c:
3422         * src/nact/nact-icommand-tab.c:
3423         * src/nact/nact-import-ask.c:
3424         * src/nact/nact-iprefs.c:
3425         * src/nact/nact-iprefs.h:
3426         * src/nact/nact-main-toolbar.c:
3427         * src/nact/nact-preferences-editor.c:
3428         Fix bad inheritance of interfaces.
3430         * src/api/na-object-api.h:
3431         * src/api/na-object.h:
3432         * src/core/na-data-factory.c:
3433         * src/core/na-io-provider.c:
3434         * src/core/na-object-action.c:
3435         * src/core/na-object-id.c:
3436         * src/core/na-object-menu.c:
3437         * src/core/na-object-profile.c:
3438         * src/core/na-object.c: Fix validity check of the items.
3440 2010-02-17 Pierre Wieser <pwieser@trychlos.org>
3442         * po/POTFILES.in:
3443         * src/test/test-parse-uris.c:
3444         * src/nact/nact-preferences-editor.c:
3445         * src/nact/nact-main-statusbar.c:
3446         * src/nact/nact-iconditions-tab.c: Update list of translatable files.
3448         * src/api/na-core-utils.h:
3449         * src/api/na-idata-factory-str.h:
3450         * src/api/na-idata-factory.h:
3451         * src/api/na-iduplicable.h:
3452         * src/core/na-core-utils.c:
3453         * src/core/na-data-element.c:
3454         * src/core/na-data-element.h:
3455         * src/core/na-data-factory.c:
3456         * src/core/na-data-factory.h:
3457         * src/core/na-idata-factory.c:
3458         * src/core/na-iduplicable.c:
3459         * src/core/na-io-provider.c:
3460         * src/core/na-iprefs.c:
3461         * src/core/na-object-action-enum.c:
3462         * src/core/na-object-action.c:
3463         * src/core/na-object-id-enum.c:
3464         * src/core/na-object-item-enum.c:
3465         * src/core/na-object-menu.c:
3466         * src/core/na-object-profile-enum.c:
3467         * src/core/na-object-profile.c:
3468         * src/core/na-object.c:
3469         * src/io-desktop/nadp-desktop-provider.c:
3470         * src/io-gconf/nagp-reader.c: Add is_valid() functions.
3472         * src/utils/nautilus-actions-run.c: Restore production loadable set.
3474         * src/api/na-idata-factory.h:
3475         * src/api/na-iio-factory.h:
3476         * src/core/na-data-factory.c:
3477         * src/core/na-iio-factory.c:
3478         * src/core/na-object-action.c:
3479         * src/core/na-object-menu.c:
3480         * src/core/na-object-profile.c:
3481         * src/io-desktop/nadp-desktop-provider.c:
3482         * src/io-gconf/nagp-gconf-provider.c:
3483         * src/io-xml/naxml-provider.c:
3484         Add read_start() and write_start() to NAIIOFactory and 
3485         NAIDataFactory interfaces.
3487         * po/POTFILES.in: Update list of translatable files.
3489         * src/utils/console-utils.c:
3490         * src/utils/nautilus-actions-run.c: Update command-line utilities.
3492         * src/test/test-include.c:
3493         * src/test/test-parse-uris.c: Update test utilities.
3495         * src/plugin-tracker/na-tracker-dbus.c:
3496         * src/plugin-tracker/na-tracker.c: Update NATracker plugin.
3498         * src/core/Makefile.am:
3499         * src/core/na-updater.c:
3500         * src/core/na-updater.h:
3501         * src/nact/nact-window.c:
3502         * src/nact/nact-window.h: Update NactWindow class.
3504         * src/api/na-object-api.h:
3505         * src/api/na-object-item.h:
3506         * src/core/na-object-item.c:
3507         * src/nact/nact-tree-model-dnd.c:
3508         * src/nact/nact-tree-model.c: Update NactTreeModel class.
3510         * src/api/na-core-utils.h:
3511         * src/api/na-object-api.h:
3512         * src/api/na-object-profile.h:
3513         * src/core/na-core-utils.c:
3514         * src/core/na-object-profile.c:
3515         * src/io-gconf/nagp-reader.c:
3516         * src/nact/nact-ibackground-tab.c:
3517         * src/nact/nact-schemes-list.c: Update schemes list.
3519         * src/nact/nact-providers-list.c: Update providers list.
3521         * src/core/na-iprefs.c:
3522         * src/core/na-iprefs.h:
3523         * src/nact/nact-assistant-export.c:
3524         * src/nact/nact-export-ask.c:
3525         * src/nact/nact-export-format.c:
3526         * src/nact/nact-export-format.h:
3527         * src/nact/nact-preferences-editor.c:
3528         * src/nact/nact-preferences.ui: Update NactPreferencesEditor class.
3530         * src/nact/base-iprefs.c:
3531         * src/nact/base-iprefs.h:
3532         * src/nact/nact-main-window.c:
3533         * src/nact/nact-main-window.h: Update NactMainWindow class.
3535         * src/core/na-iprefs.c:
3536         * src/core/na-iprefs.h:
3537         * src/nact/nact-iprefs.c:
3538         * src/nact/nact-iprefs.h:
3539         * src/nact/nact-main-toolbar.c: Update toolbar.
3541         * src/api/na-iio-provider.h:
3542         * src/core/na-io-provider.c:
3543         * src/core/na-io-provider.h:
3544         * src/nact/nact-main-statusbar.c: Update status bar.
3546         * src/api/na-object-action.h:
3547         * src/api/na-object-api.h:
3548         * src/api/na-object-id.h:
3549         * src/api/na-object-item.h:
3550         * src/api/na-object-profile.h:
3551         * src/api/na-object.h:
3552         * src/core/na-object-action.c:
3553         * src/core/na-object-id.c:
3554         * src/core/na-object-item.c:
3555         * src/core/na-object-profile.c:
3556         * src/core/na-object.c:
3557         * src/core/na-pivot.c:
3558         * src/core/na-pivot.h:
3559         * src/core/na-updater.c:
3560         * src/core/na-updater.h:
3561         * src/nact/nact-export-format.c:
3562         * src/nact/nact-main-menubar.c: Update menu bar.
3564         * src/nact/nact-iprefs.c: Update NactIPrefs interface.
3566         * src/api/na-core-utils.h:
3567         * src/core/na-core-utils.c:
3568         * src/nact/nact-iconditions-tab.c:
3569         Update NactIConditionsTab interface.
3571         * src/api/na-core-utils.h:
3572         * src/core/na-core-utils.c:
3573         * src/core/na-iprefs.c:
3574         * src/core/na-iprefs.h:
3575         * src/nact/nact-icommand-tab.c:
3576         * src/nact/nact-iprefs.c:
3577         * src/nact/nact-iprefs.h: Update NactICommandTab interface.
3579         * src/api/na-object-api.h:
3580         * src/api/na-object-profile.h:
3581         * src/core/na-object-profile.c:
3582         * src/nact/nact-iaction-tab.c:
3583         * src/nact/nact-iadvanced-tab.c:
3584         * src/nact/nact-ibackground-tab.c: Update NactIBackgroundTab
3585         interface.
3587         * src/api/na-object-api.h:
3588         * src/api/na-object-item.h:
3589         * src/nact/nact-gtk-utils.c:
3590         * src/nact/nact-gtk-utils.h:
3591         * src/nact/nact-iaction-tab.c: Update NactIActionTab interface.
3593         * core/na-object-action-fn.h:
3594         * core/na-object-action-priv.h:
3595         * core/na-object-fn.h:
3596         * core/na-object-id-fn.h:
3597         * core/na-object-id-priv.h:
3598         * core/na-object-item-fn.h:
3599         * core/na-object-item-priv.h:
3600         * core/na-object-menu-fn.h:
3601         * core/na-object-menu-priv.h:
3602         * core/na-object-profile-fn.h:
3603         * core/na-object-profile-priv.h: Remove no more used files.
3605         * src/api/na-iduplicable.h:
3606         * src/api/na-object-api.h:
3607         * src/api/na-object-item.h:
3608         * src/api/na-object.h:
3609         * src/core/na-iduplicable.c:
3610         * src/core/na-object-item.c:
3611         * src/core/na-object.c:
3612         * src/nact/nact-iactions-list-bis.c:
3613         * src/nact/nact-iactions-list.c:
3614         * src/nact/nact-window.c:
3615         * src/nact/nact-window.h: Update NactIActionsList interface.
3617         * src/api/na-iduplicable.h:
3618         * src/api/na-object-api.h:
3619         * src/api/na-object-item.h:
3620         * src/core/na-exporter.c:
3621         * src/core/na-exporter.h:
3622         * src/core/na-iduplicable.c:
3623         * src/core/na-object-item.c:
3624         * src/nact/Makefile.am:
3625         * src/nact/nact-assistant-export.c:
3626         * src/nact/nact-clipboard.c:
3627         * src/nact/nact-clipboard.h:
3628         * src/nact/nact-confirm-logout.c:
3629         * src/nact/nact-export-ask.c:
3630         * src/nact/nact-export-format.c:
3631         * src/nact/nact-export-format.h:
3632         * src/nact/nact-iprefs.h:
3633         * src/nact/nact-main-menubar.h:
3634         * src/nact/nact-assistant-export.c:
3635         * src/nact/nact-assistant-export.h:
3636         * src/nact/nact-assistant-export.ui:
3637         * src/nact/nact-assistant-import.c:
3638         * src/nact/nact-import-ask.c:
3639         * src/nact/nact-import-ask.h:
3640         * src/nact/nact-iprefs.c:
3641         * src/nact/nact-iprefs.h:
3642         * src/nact/nact-tree-model.h: Update Nact classes.
3644         Refactor: move all XML code to src/io-xml plugin.
3646         * src/nact/Makefile.am:
3647         * src/nact/base-application-class.h:
3648         * src/nact/base-assistant.h:
3649         * src/nact/base-assistant.h:
3650         * src/nact/base-builder.h:
3651         * src/nact/base-dialog.h:
3652         * src/nact/base-iprefs.c:
3653         * src/nact/base-window-class.h: Update typo in Base class headers.
3655         * src/core/na-importer.c:
3656         * src/core/na-importer.h: New files.
3658         * src/core/Makefile.am:
3659         * src/core/na-iimporter.c:
3660         * src/core/na-io-provider.c:
3661         * src/core/na-iprefs.h: Update core library.
3663         * src/nact/nact-export-format.h:
3664         * src/nact/nact-export-format.c:
3665         * src/core/na-exporter.h:
3666         * src/core/na-exporter.c: Update export treatements.
3668         * src/api/na-iexporter.h:
3669         * src/core/na-iexporter.c:
3670         * src/io-xml/naxml-module.c:
3671         * src/io-xml/naxml-provider.c: Update NAIExporter interface.
3673         Define NAExportFormat new class.
3675         * src/core/na-export-format.c:
3676         * src/core/na-export-format.h: New files.
3678         Rename src/nact/nact-assistant-export-ask.{c,h} to
3679         src/nact/nact-export-ask.{c,h}
3681 2010-02-15 Pierre Wieser <pwieser@trychlos.org>
3683         Now install defined ids in docdir.
3685         * doc/export-format-id: New file.
3687         * doc/Makefile.am: Updated accordingly.
3689         Define NactIPrefs interface.
3691         * src/nact/nact-iprefs.c:
3692         * src/nact/nact-iprefs.h: New files.
3694         Update src/nact/
3695         Remove useless src/private directory.
3697         Define NAUpdater class.
3699         * src/core/na-updater.c:
3700         * src/core/na-updater.h: New files.
3702         Update src/core/na-pivot.{c,h}
3703         Update src/core/na-module.{c,h}
3704         Update src/core/na-iprefs.{c,h}
3705         Update src/core/na-ipivot-consumer.{c,h}
3706         Update src/core/na-io-factory.{c,h}
3707         Update src/core/na-io-provider.{c,h}
3708         Update src/core/na-iabout.{c,h}
3709         Update src/utils.
3711 2010-02-15 Deji Akingunola <dakingun@gmail.com>
3713         * src/test/Makefile.am: Fix typo.
3715 2010-02-15 Pierre Wieser <pwieser@trychlos.org>
3717         Update src/test.
3718         Update src/plugin-tracker.
3719         Update src/plugin-menu.
3721         Define NAIImporter interface.
3723         * src/api/na-iimporter.h:
3724         * src/core/na-iimporter.c: New files.
3726         Define NAIExporter interface.
3728         * src/api/na-iexporter.h:
3729         * src/core/na-iexporter.c: New files.
3731         * src/core/na-dbus-tracker.h: New file.
3733         Remove useless src/api/na-gconf-keys.h
3734         Update GConf I/O provider.
3735         Create src/io-gconf/nagp-keys.c
3736         Rename src/io-gconf/nagp-write.{c,h} to src/io-gconf/nagp-writer.{c,h}
3737         Rename src/io-gconf/nagp-read.{c,h} to src/io-gconf/nagp-reader.{c,h}
3739         Update I/O desktop provider.
3741         * src/io-desktop/nadp-keys.c:
3742         * src/io-desktop/nadp-keys.h: New files.
3744         Rename src/io-desktop/nadp-xdg-data-dirs.{c,h} to src/io-desktop/nadp-xdg-dirs.{c,h}
3745         Rename src/io-desktop/nadp-write.{c,h} to src/io-desktop/nadp-writer.{c,h}
3746         Rename src/io-desktop/nadp-read.{c,h} to src/io-desktop/nadp-reader.{c,h}
3748         NAObject-derived classes implement NAIDataFactory interface.
3750         * src/core/na-object-id-enum.c:
3751         * src/core/na-object-item-enum.c:
3752         * src/core/na-object-action-enum.c:
3753         * src/core/na-object-profile-enum.c:
3754         * src/core/na-object-menu-enum.c: New files.
3756         Define NADataElement class.
3758         * src/core/na-data-element.c:
3759         * src/core/na-data-element.h: New files.
3761         Define NAIDataFactory interface.
3763         * src/api/na-idata-factory.h:
3764         * src/api/na-idata-factory-enum.h:
3765         * src/api/na-idata-factory-str.h:
3766         * src/core/na-idata-factory.c:
3767         * src/core/na-data-factory.c:
3768         * src/core/na-data-factory.h: New files.
3770         Define NAIIOFactory interface.
3772         * src/api/na-iio-factory.h:
3773         * src/api/na-iio-factory-factory.h:
3774         * src/core/na-iio-factory.c:
3775         * src/core/na-io-factory.c:
3776         * src/core/na-io-factory.h: New files.
3778         Rename src/core/na-object-menu-class.h to src/api/na-object-menu.h
3779         Rename src/core/na-object-profile-class.h to src/api/na-object-profile.h
3780         Rename src/core/na-object-action-class.h to src/api/na-object-action.h
3781         Rename src/core/na-object-item-class.h to src/api/na-object-item.h
3782         Rename src/core/na-object-id-class.h to src/api/na-object-id.h
3783         Rename src/core/na-object-class.h to src/api/na-object.h
3784         Rename src/core/na-iduplicable.h to src/api/na-iduplicable.h
3785         Rename src/core/na-gconf-utils.h to src/api/na-gconf-utils.h
3786         Rename src/api/na-iio-provider.c to src/core/na-iio-provider.c
3788         * src/api/na-dbus.h: Update defined name.
3790         * m4/na-log-domains.m4: Update log domains with new subdirs.
3792         * doc/io-provider-id: Reference na-xml XML provider.
3794         Rename src/api/na-gconf-monitor.c to src/core/na-gconf-monitor.c
3795         Rename src/core/na-utils.h to src/api/na-core-utils.h
3796         Rename src/core/na-utils.c to src/core/na-core-utils.c
3798         * src/api/Makefile.am:
3799         * src/core/Makefile.am: Updated accordingly.
3801         * src/core/na-core-utils.c:
3802         * src/core/na-core-utils.h: Normalize functions names.
3804         Merge src/private/ and src/runtime to src/core/
3805         Rename src/api/na-api.h to src/api/na-extension.h
3807         * src/api/README:
3808         * src/io-desktop/nadp-module.c:
3809         * src/io-gconf/nagp-module.c:
3810         * src/runtime/na-module.c: Updated accordingly.
3812         Define XML provider as a dynamic module.
3813         
3814         * io-xml/Makefile.am:
3815         * io-xml/naxml-module.c:
3816         * io-xml/naxml-provider.c:
3817         * io-xml/naxml-provider.h: New files.
3819         Rename source tree from nautilus-actions/ to src/
3820         Rename src/io-provider-desktop/ to src/io-desktop/
3821         Rename src/io-provider-gconf/ to src/io-gconf/
3822         Rename src/plugin to src/plugin-menu/
3823         Rename src/tracker to src/plugin-tracker/
3825         * Makefile.am:
3826         * configure.ac:
3827         * po/POTFILES.in: Updated accordingly.
3829 2010-01-31 Pierre Wieser <pwieser@trychlos.org>
3831         * nautilus-actions/io-provider-desktop/nadp-desktop-file.c:
3832         * nautilus-actions/io-provider-desktop/nadp-desktop-file.h:
3833         * nautilus-actions/io-provider-desktop/nadp-read.c:
3834         * nautilus-actions/io-provider-desktop/nadp-utils.c:
3835         * nautilus-actions/io-provider-desktop/nadp-utils.h:
3836         * nautilus-actions/io-provider-gconf/nagp-read.c:
3837         Implements reading of .desktop files.
3839         * nautilus-actions/io-provider-gconf/nagp-write.c (write_item_action):
3840         Always writes the 'OBJECT_ITEM_TOOLBAR_LABEL_ENTRY' key.
3842 2010-01-30 Pierre Wieser <pwieser@trychlos.org>
3844         No more record the toolbar_same_label indicator.
3846         * nautilus-actions.schemas.in:
3847         Remove schema for 'toolbar-same-label' key.
3849         * nautilus-actions/io-provider-gconf/nagp-read.c
3850         (read_item_action_properties):
3851         No more read the 'toolbar-same-label' entry.
3853         * nautilus-actions/io-provider-gconf/nagp-write.c (write_item_action):
3854         No more write the 'toolbar-same-label' entry.
3855         Remove the key if undeeded.
3857         * nautilus-actions/nact/nact-iaction-tab.c
3858         (on_toolbar_same_label_toggled): Fix toolbar label setup.
3860         * nautilus-actions/nact/nact-xml-reader.c (apply_values):
3861         No more read OBJECT_ITEM_TOOLBAR_SAME_LABEL_ENTRY node.
3863         * nautilus-actions/runtime/na-gconf-utils.c:
3864         * nautilus-actions/runtime/na-gconf-utils.h
3865         (na_gconf_utils_remove_entry): New function.
3867         * nautilus-actions/runtime/na-xml-writer.c
3868         (create_schema_entry, create_dump_entry):
3869         No more write the 'toolbar-same-label' entry.
3871         * nautilus-actions/nact/nact-iaction-tab.c
3872         (on_tab_updatable_selection_changed):
3873         Update tab label depending on the currently selected item.
3875         * nautilus-actions/nact/nautilus-actions-config-tool.ui:
3876         No more give a special name to Action tab label.
3878         * nautilus-actions/nact/nautilus-actions-config-tool.ui:
3879         Fix Action tab layout.
3881         A full rewriting of the writability of items vs. providers.
3883         * data/nautilus-actions.schemas.in:
3884         Describe 'export-format' and 'io-providers-order' keys.
3885         Define 'mandatory/all/locked' key to lock all configuration.
3887         * doc/io-provider-id: Reserve 'all' special provider_id.
3889         * nautilus-actions/api/na-gconf-monitor.c
3890         * nautilus-actions/io-provider-desktop/nadp-desktop-file.c
3891         * nautilus-actions/io-provider-desktop/nadp-desktop-provider.c
3892         * nautilus-actions/nact/base-application.c
3893         * nautilus-actions/nact/base-assistant.c
3894         * nautilus-actions/nact/base-builder.c
3895         * nautilus-actions/nact/base-dialog.c
3896         * nautilus-actions/nact/base-window.c
3897         * nautilus-actions/nact/nact-application.c
3898         * nautilus-actions/nact/nact-assistant-export-ask.c
3899         * nautilus-actions/nact/nact-assistant-export.c
3900         * nautilus-actions/nact/nact-assistant-import-ask.c
3901         * nautilus-actions/nact/nact-assistant-import.c
3902         * nautilus-actions/nact/nact-clipboard.c
3903         * nautilus-actions/nact/nact-confirm-logout.c
3904         * nautilus-actions/nact/nact-window.c
3905         * nautilus-actions/runtime/na-module.c
3906         (instance_init, instance_dispose):
3907         Review debug messages formatting.
3909         * nautilus-actions/api/na-iio-provider.c:
3910         * nautilus-actions/api/na-iio-provider.h
3911         (is_writable): Removed API.
3912         (is_able_to_write): New API.
3913         Review operations return codes.
3914         Add provider status.
3916         * nautilus-actions/io-provider-desktop/nadp-desktop-provider.c:
3917         * nautilus-actions/io-provider-desktop/nadp-desktop-provider.h:
3918         * nautilus-actions/io-provider-desktop/nadp-read.c:
3919         * nautilus-actions/io-provider-desktop/nadp-write.c:
3920         * nautilus-actions/io-provider-desktop/nadp-write.h:
3921         * nautilus-actions/io-provider-gconf/nagp-gconf-provider.c:
3922         * nautilus-actions/io-provider-gconf/nagp-write.c:
3923         * nautilus-actions/io-provider-gconf/nagp-write.h:
3924         Updated to new NAIIOProvider API.
3926         * nautilus-actions/nact/nact-iaction-tab.c:
3927         * nautilus-actions/nact/nact-iactions-list.c:
3928         * nautilus-actions/nact/nact-iactions-list.h:
3929         * nautilus-actions/nact/nact-iadvanced-tab.c:
3930         * nautilus-actions/nact/nact-ibackground-tab.c:
3931         * nautilus-actions/nact/nact-icommand-tab.c:
3932         * nautilus-actions/nact/nact-iconditions-tab.c:
3933         * nautilus-actions/nact/nact-main-menubar.c:
3934         * nautilus-actions/nact/nact-main-tab.h:
3935         * nautilus-actions/nact/nact-main-window.c:
3936         * nautilus-actions/nact/nact-providers-list.c:
3937         * nautilus-actions/nact/nact-tree-model-dnd.c:
3938         * nautilus-actions/nact/nact-tree-model.c:
3939         * nautilus-actions/nact/nact-window.c:
3940         * nautilus-actions/nact/nact-window.h:
3941         Take advantage of the new global item writability status.
3943         * nautilus-actions/nact/nact-main-statusbar.c:
3944         * nautilus-actions/nact/nact-main-statusbar.h
3945         (nact_main_statusbar_set_locked): Display the reason.
3947         * nautilus-actions/nact/nact-iactions-list-bis.c
3948         (nact_iactions_list_bis_list_modified_items):
3949         Dump the raw content of the list.
3951         * nautilus-actions/plugin/nautilus-actions.c (instance_init):
3952         * nautilus-actions/runtime/na-pivot.c:
3953         * nautilus-actions/runtime/na-pivot.h(na_pivot_new):
3954         * nautilus-actions/utils/nautilus-actions-new.c (write_to_gconf):
3955         * nautilus-actions/utils/nautilus-actions-run.c (get_action):
3956         New na_pivot_new() signature.
3958         * nautilus-actions/private/na-object-item-fn.h:
3959         * nautilus-actions/private/na-object-item-priv.h:
3960         * nautilus-actions/private/na-object-item.c:
3961         The NAObjectItem now embeds a NAIOProvider pointer.
3963         * nautilus-actions/runtime/na-io-provider.c:
3964         * nautilus-actions/runtime/na-io-provider.h:
3965         Load all available and defined I/O providers.
3967         * nautilus-actions/test/init-dispose-diff.sh: New file.
3969 2010-01-27 Pierre Wieser <pwieser@trychlos.org>
3971         * nautilus-actions/nact/nact-preferences.ui:
3972         Fix the name of the Down button.
3973         Invert buttons so that Up is at the top, and Down at the bottom.
3975         * nautilus-actions/nact/nact-providers-list.c:
3976         Activate up/down buttons.
3977         Save the I/O providers individual preferences.
3978         Load and save in order.
3980         * nautilus-actions/runtime/na-io-provider.c:
3981         Order the I/O providers in write priority.
3983 2010-01-26 Pierre Wieser <pwieser@trychlos.org>
3985         * nautilus-actions/io-provider-gconf/nagp-read.c
3986         (nagp_iio_provider_read_items): Remove path trace.
3988         * nautilus-actions/nact/nact-application.c
3989         (appli_initialize_application):
3990         * nautilus-actions/plugin/nautilus-actions.c (instance_init):
3991         * nautilus-actions/utils/nautilus-actions-new.c (write_to_gconf):
3992         * nautilus-actions/utils/nautilus-actions-run.c (get_action):
3993         Adapt to new na_pivot_new().
3995         * nautilus-actions/nact/nact-iaction-tab.c (display_provider_name):
3996         Adapt to the temporary new NAIOProvider API.
3998         * nautilus-actions/nact/nact-preferences-editor.c:
3999         Fix compilation error by adding nact-providers-list.h include file.
4001         * nautilus-actions/nact/nact-providers-list.c:
4002         Display list of providers with their initial state.
4004         * nautilus-actions/plugin/nautilus-module.c:
4005         * nautilus-actions/tracker/na-tracker-plugin.c:
4006         (nautilus_module_initialize):
4007         Prefix the log message with "[N-A]".
4009         * nautilus-actions/runtime/na-gconf-utils.c:
4010         * nautilus-actions/runtime/na-gconf-utils.h
4011         (na_gconf_utils_get_subdirs, na_gconf_utils_free_subdirs):
4012         New functions.
4014         * nautilus-actions/runtime/na-io-provider.c:
4015         * nautilus-actions/runtime/na-io-provider.h:
4016         Refactoring to keep a static list of capable I/O providers.
4018         * nautilus-actions/runtime/na-module.c
4019         (na_module_load_modules): Only displays the name of the loaded module.
4020         (is_a_na_plugin): Add a trace with the full path of the module.
4022         * nautilus-actions/runtime/na-pivot.c:
4023         * nautilus-actions/runtime/na-pivot.h:
4024         Define loadable_set and io_provider_set as construct-only properties.
4025         Remove unused action_changed_handler stuff.
4026         No more maintain the list of capable I/O providers.
4028 2010-01-25 Pierre Wieser <pwieser@trychlos.org>
4030         * nautilus-actions/runtime/na-pivot.c:
4031         * nautilus-actions/runtime/na-pivot.h: Source reorganization.
4033         * nautilus-actions/runtime/na-pivot.c:
4034         * nautilus-actions/runtime/na-pivot.h (na_pivot_get_automatic_reload):
4035         Remove unused function.
4037         * nautilus-actions/runtime/na-pivot.c:
4038         * nautilus-actions/runtime/na-pivot.h (na_pivot_set_population):
4039         Function is renamed to na_pivot_set_loadable_population().
4040         The enum is named NAPivotLoadable.
4042         * nautilus-actions/plugin/nautilus-actions.c (instance_init):
4043         * nautilus-actions/utils/nautilus-actions-run.c (get_action):
4044         Adjusted accordingly.
4046         * nautilus-actions/runtime/na-module.c: Source slight adjustment.
4048 2010-01-23 Pierre Wieser <pwieser@trychlos.org>
4050         * nautilus-actions/nact/nact-schemes-list.c: Cleanup the source file.
4052         * nautilus-actions/nact/nact-preferences.ui:
4053         Reset tooltips in all preference pages.
4055         * nautilus-actions/nact/nact-providers-list.c:
4056         * nautilus-actions/nact/nact-providers-list.h: New files.
4058         * nautilus-actions/nact/Makefile.am: Updated accordingly.
4060         * nautilus-actions/nact/nact-preferences-editor.c:
4061         Updated to handle a sixth tab.
4063 2010-01-23 Pierre Wieser <pwieser@trychlos.org>
4065         * configure.ac: Bump version number.
4067         * All source files: Updated copyright notice.
4069 2010-01-23 Pierre Wieser <pwieser@trychlos.org>
4071         * NEWS: Updated for release.
4073         * po/POTFILES.in:
4074         Add nautilus-actions/nact/nact-preferences.ui file.
4076         * configure.ac:
4077         Add a dependancy on dbus-lib-1 for tracker.
4079         * nautilus-actions/nact/base-window.c (search_for_child_widget):
4080         Use GtkBuildable interface instead of 'name' field (fix #607704).
4082 2010-01-20 Pierre Wieser <pwieser@trychlos.org>
4084         * data/nautilus-actions.schemas.in:
4085         Add a schema for 'na-desktop/locked' mandatory key.
4087         * .gitignore:
4088         Ignore eclipse-specific files.
4090         * data/nautilus-actions.schemas.in:
4091         Fix default value for level zero key.
4092         Describe the new 'schemes' preference key.
4094         * nautilus-actions/nact/nact-preferences.ui:
4095         * nautilus-actions/nact/nact-schemes-list.c:
4096         * nautilus-actions/nact/nact-schemes-list.h: New files.
4098         * nautilus-actions/nact/nact-iadvanced-tab.c:
4099         * nautilus-actions/nact/nact-preferences-editor.c:
4100         * nautilus-actions/nact/Makefile.am: Updated accordingly.
4102 2010-01-17 Pierre Wieser <pwieser@trychlos.org>
4104         * nautilus-actions/nact/nact-assistant-export.ui:
4105         * nautilus-actions/nact/nautilus-actions-config-tool.ui:
4106         Forces default orientation of vboxes (fix #607218).
4108         * nautilus-actions/nact/nact-main-toolbar.c:
4109         * nautilus-actions/nact/nact-main-toolbar.h: New files.
4111         * nautilus-actions/nact/Makefile.am:
4112         * nautilus-actions/nact/nact-main-menubar.c: Updated accordingly.
4114 2010-01-16 Pierre Wieser <pwieser@trychlos.org>
4116         * nautilus-actions/nact/nact-clipboard.c:
4117         Fix primary clipboard management.
4119         * nautilus-actions/nact/nact-main-menubar.c     (on_update_sensitivities):
4120         Fix cut/copy/duplicate/delete sensitivity when selection is     multiple.
4122 2010-01-15 Pierre Wieser <pwieser@trychlos.org>
4124         * nautilus-actions/nact/nact-iactions-list-bis.c:
4125         * nautilus-actions/nact/nact-iactions-list.h
4126         (nact_iactions_list_bis_clear_selection): New function.
4128         * nautilus-actions/nact/nact-iactions-list.c (nact_iactions_list_fill):
4129         Clear the selection before filling the tree view.
4131         * nautilus-actions/nact/nact-main-menubar.c (on_update_sensitivities):
4132         Force the count of selected items to be consistant with the list.
4134         * nautilus-actions/nact/nact-tree-model-dnd.c (drop_inside):
4135         Dropped new item is set as new.
4137         * nautilus-actions/nact/nact-iactions-list.c (filter_selection):
4138         Review selection criteria, introducing implicit selection.
4140         * nautilus-actions/nact/nact-main-menubar.c (on_update_sensitivities):
4141         Review menu items sensitivity, especially when provider is not writable.
4142         Enable new item even when selection is multiple.
4144         * nautilus-actions/nact/nact-window.c:
4145         * nautilus-actions/nact/nact-window.h (nact_window_is_writable_item):
4146         New function.
4148 2010-01-05 Pierre Wieser <pwieser@trychlos.org>
4150         * configure.ac: Bump version number.
4152 2010-01-05 Pierre Wieser <pwieser@trychlos.org>
4154         * configure.ac: Add -Wformat=2 compilation option.
4156         * nautilus-actions/nact/nact-gtk-utils.c (nact_gtk_utils_set_editable):
4157         * nautilus-actions/nact/nact-iactions-list.c
4158         (nact_iactions_list_runtime_init_toplevel):
4159         * nautilus-actions/nact/nact-iadvanced-tab.c
4160         (runtime_init_connect_signals):
4161         * nautilus-actions/nact/nact-ibackground-tab.c
4162         (nact_ibackground_tab_runtime_init_toplevel):
4163         Substitute gtk_cell_layout_get_cells to obsoleted
4164         gtk_tree_view_column_get_cell_renderers.
4166         * nautilus-actions/runtime/na-xml-writer.c (na_xml_writer_output_xml):
4167         Use correct printf format.