Commit abb06c3c authored by Philippe Rouquier's avatar Philippe Rouquier

This a rewrite of the BraseroDataDisc object.

	The current benefits:
	- a much more limited footprint in memory for large tree (probably something like 50% =))
	- an improved maintainability

	Expected benefits (more work needed):
	- faster and more responsive loading operation
	- some bugs will be more easily closed in future thanks to greated flexibility

	Some new features:
	- filtered files are displayed in a separate tree
	- the proportion that a folder / a file is taking in final image is displayed
	- a new message box (stolen from gedit) is displayed while loading projects (to be extended)

	Basically this closes a couple of bugs (mostly feature requests):
	- #438851 – Add a baobab-like gfx size view
	- #362569 – Unselecting files in data project view
	- #438854 – Allow listing and vetting of filtered files
	- #360899 – GUI enhancements/simplification

	* configure.in:
	* src/Makefile.am:
	* src/baobab-cell-renderer-progress.c:
	(baobab_cell_renderer_progress_init),
	(baobab_cell_renderer_progress_new),
	(baobab_cell_renderer_progress_get_property),
	(baobab_cell_renderer_progress_set_property),
	(baobab_cell_renderer_progress_get_size),
	(set_color_according_to_perc),
	(baobab_cell_renderer_progress_render),
	(baobab_cell_renderer_progress_class_init):
	* src/baobab-cell-renderer-progress.h:
	* src/brasero-audio-disc.c: (brasero_audio_disc_init):
	* src/brasero-blank-dialog.c:
	* src/brasero-data-disc.c: (brasero_data_disc_notification_free),
	(brasero_data_disc_notification_closed),
	(brasero_data_disc_notify_user_real),
	(brasero_data_disc_notify_user),
	(brasero_data_disc_import_failure_dialog),
	(brasero_data_disc_import_session_cb),
	(brasero_data_disc_get_parent),
	(brasero_data_disc_new_folder_clicked_cb),
	(brasero_data_disc_clipboard_text_cb),
	(brasero_data_disc_clipboard_targets_cb),
	(brasero_data_disc_paste_activated_cb),
	(brasero_data_disc_name_editing_started_cb),
	(brasero_data_disc_name_editing_canceled_cb),
	(brasero_data_disc_name_edited_cb),
	(brasero_data_disc_set_expand_state),
	(brasero_data_disc_row_collapsed_cb),
	(brasero_data_disc_row_expanded_cb),
	(brasero_data_disc_project_loaded_cb),
	(brasero_data_disc_activity_changed_cb),
	(brasero_data_disc_filtered_uri_cb),
	(brasero_data_disc_filter_expanded_cb),
	(brasero_data_disc_filtered_file_cb),
	(brasero_data_disc_restored_file_cb),
	(brasero_data_disc_unreadable_uri_cb),
	(brasero_data_disc_recursive_uri_cb),
	(brasero_data_disc_unknown_uri_cb),
	(brasero_data_disc_name_collision_cb),
	(brasero_data_disc_2G_file_cb),
	(brasero_data_disc_deep_directory_cb),
	(brasero_data_disc_size_changed_cb),
	(brasero_data_disc_session_available_cb),
	(brasero_data_disc_session_loaded_cb), (brasero_data_disc_clear),
	(brasero_data_disc_reset), (brasero_data_disc_delete_selected),
	(brasero_data_disc_add_uri), (brasero_data_disc_get_track),
	(brasero_data_disc_set_session_param),
	(brasero_data_disc_set_session_contents),
	(brasero_data_disc_message_response_cb),
	(brasero_data_disc_load_track), (brasero_data_disc_get_status),
	(brasero_data_disc_get_selected_uri),
	(brasero_data_disc_set_drive), (brasero_data_disc_add_ui),
	(brasero_data_disc_open_file),
	(brasero_data_disc_open_activated_cb),
	(brasero_data_disc_rename_activated),
	(brasero_data_disc_rename_activated_cb),
	(brasero_data_disc_delete_activated_cb),
	(brasero_data_disc_selection_changed_cb),
	(brasero_data_disc_tree_select_function),
	(brasero_data_disc_show_menu),
	(brasero_data_disc_button_pressed_cb),
	(brasero_data_disc_key_released_cb),
	(brasero_data_disc_contents_added_cb),
	(brasero_data_disc_contents_removed_cb),
	(brasero_data_disc_set_right_button_group),
	(brasero_data_disc_init), (brasero_data_disc_finalize),
	(brasero_data_disc_iface_disc_init),
	(brasero_data_disc_get_property), (brasero_data_disc_set_property),
	(brasero_data_disc_class_init), (brasero_data_disc_new):
	* src/brasero-data-disc.h:
	* src/brasero-data-project.c: (brasero_data_project_file_signal),
	(brasero_data_project_reference_new),
	(brasero_data_project_reference_free),
	(brasero_data_project_reference_get),
	(brasero_data_project_reference_remove_children_cb),
	(brasero_data_project_reference_invalidate),
	(brasero_data_project_joliet_hash),
	(brasero_data_project_joliet_equal),
	(brasero_data_project_joliet_set_key),
	(brasero_data_project_joliet_add_node),
	(brasero_data_project_joliet_remove_node),
	(brasero_data_project_joliet_remove_children_node_cb),
	(brasero_data_project_joliet_remove_children_node),
	(brasero_data_project_node_to_uri),
	(brasero_data_project_find_child_node),
	(brasero_data_project_uri_to_nodes),
	(brasero_data_project_node_changed),
	(brasero_data_project_reorder_children),
	(brasero_data_project_resort_tree),
	(brasero_data_project_reverse_children),
	(brasero_data_project_reverse_tree),
	(brasero_data_project_set_sort_function),
	(brasero_data_project_uri_has_parent),
	(brasero_data_project_uri_is_graft_needed),
	(brasero_data_project_uri_remove_graft),
	(brasero_data_project_uri_add_graft),
	(brasero_data_project_uri_ensure_graft),
	(brasero_data_project_uri_graft_nodes),
	(brasero_data_project_add_node_and_children),
	(brasero_data_project_remove_node_children_graft_cb),
	(brasero_data_project_remove_node_children_graft),
	(brasero_data_project_monitor_cancel_foreach_cb),
	(brasero_data_project_node_removed),
	(brasero_data_project_remove_real),
	(brasero_data_project_remove_node),
	(brasero_data_project_destroy_node),
	(brasero_data_project_move_node_real),
	(brasero_data_project_move_node),
	(brasero_data_project_rename_node),
	(brasero_data_project_add_node_real),
	(brasero_data_project_restore_uri),
	(brasero_data_project_exclude_uri),
	(brasero_data_project_add_imported_session_file),
	(brasero_data_project_add_empty_directory),
	(brasero_data_project_node_loaded),
	(brasero_data_project_node_reloaded),
	(brasero_data_project_add_loading_node),
	(brasero_data_project_directory_node_loaded),
	(brasero_data_project_add_node_from_info),
	(brasero_data_project_set_joliet_compliant_name),
	(brasero_data_project_node_to_path),
	(_foreach_grafts_make_list_cb),
	(brasero_data_project_get_contents),
	(brasero_data_project_is_joliet_compliant),
	(brasero_data_project_is_video_project),
	(brasero_data_project_is_empty),
	(brasero_data_project_create_path),
	(brasero_data_project_skip_existing),
	(brasero_data_project_add_path),
	(brasero_data_project_add_excluded_uri),
	(brasero_data_project_load_contents),
	(brasero_data_project_sum_graft_size_cb),
	(brasero_data_project_get_size),
	(brasero_data_project_folder_size_cb),
	(brasero_data_project_get_folder_size),
	(brasero_data_project_init), (brasero_data_project_get_root),
	(brasero_data_project_clear_grafts_cb),
	(brasero_data_project_clear_joliet_cb),
	(brasero_data_project_clear), (brasero_data_project_reset),
	(brasero_data_project_finalize), (brasero_data_project_file_added),
	(brasero_data_project_file_update_URI),
	(brasero_data_project_file_update_name),
	(brasero_data_project_file_graft),
	(brasero_data_project_file_renamed),
	(brasero_data_project_file_moved),
	(brasero_data_project_file_removed),
	(brasero_data_project_file_modified),
	(brasero_data_project_class_init):
	* src/brasero-data-project.h:
	* src/brasero-data-session.c: (brasero_data_session_remove_last),
	(brasero_data_session_add_children_files),
	(brasero_data_session_add_last), (brasero_data_session_set_drive),
	(brasero_data_session_get_loaded_medium),
	(brasero_data_session_init), (brasero_data_session_finalize),
	(brasero_data_session_class_init):
	* src/brasero-data-session.h:
	* src/brasero-data-tree-model.c:
	(brasero_data_tree_model_iter_parent),
	(brasero_data_tree_model_iter_nth_child),
	(brasero_data_tree_model_iter_n_children),
	(brasero_data_tree_model_iter_has_child),
	(brasero_data_tree_model_iter_children),
	(brasero_data_tree_model_iter_next),
	(brasero_data_tree_model_node_shown),
	(brasero_data_tree_model_node_hidden),
	(brasero_data_tree_model_get_value),
	(brasero_data_tree_model_node_to_path),
	(brasero_data_tree_model_get_path),
	(brasero_data_tree_model_path_to_node),
	(brasero_data_tree_model_get_iter),
	(brasero_data_tree_model_get_column_type),
	(brasero_data_tree_model_get_n_columns),
	(brasero_data_tree_model_get_flags),
	(brasero_data_tree_model_multi_row_draggable),
	(brasero_data_tree_model_multi_drag_data_get),
	(brasero_data_tree_model_multi_drag_data_delete),
	(brasero_data_tree_model_drag_data_received),
	(brasero_data_tree_model_row_drop_possible),
	(brasero_data_tree_model_drag_data_delete),
	(brasero_data_tree_model_get_sort_column_id),
	(brasero_data_tree_model_set_sort_column_id),
	(brasero_data_tree_model_set_sort_func),
	(brasero_data_tree_model_set_default_sort_func),
	(brasero_data_tree_model_has_default_sort_func),
	(brasero_data_tree_model_clear_children),
	(brasero_data_tree_model_clear), (brasero_data_tree_model_reset),
	(brasero_data_tree_model_node_added),
	(brasero_data_tree_model_node_removed),
	(brasero_data_tree_model_node_changed),
	(brasero_data_tree_model_node_reordered),
	(brasero_data_tree_model_activity_changed),
	(brasero_data_tree_model_init), (brasero_data_tree_model_finalize),
	(brasero_data_tree_model_iface_init),
	(brasero_data_tree_model_multi_drag_source_iface_init),
	(brasero_data_tree_model_drag_source_iface_init),
	(brasero_data_tree_model_drag_dest_iface_init),
	(brasero_data_tree_model_sortable_iface_init),
	(brasero_data_tree_model_class_init),
	(brasero_data_tree_model_new):
	* src/brasero-data-tree-model.h:
	* src/brasero-data-vfs.c: (brasero_data_vfs_restored_list_cb),
	(brasero_data_vfs_get_restored), (brasero_data_vfs_add_restored),
	(brasero_data_vfs_remove_restored), (brasero_data_vfs_is_active),
	(brasero_data_vfs_is_loading_uri), (brasero_data_vfs_is_readable),
	(brasero_data_vfs_check_uri_result),
	(brasero_data_vfs_remove_from_hash),
	(brasero_data_vfs_directory_load_end),
	(brasero_data_vfs_directory_load_result),
	(brasero_data_vfs_load_directory),
	(brasero_data_vfs_loading_node_end),
	(brasero_data_vfs_loading_node_result),
	(brasero_data_vfs_load_node), (brasero_data_vfs_loading_node),
	(brasero_data_vfs_increase_priority_cb),
	(brasero_data_vfs_require_higher_priority),
	(brasero_data_vfs_require_directory_contents),
	(brasero_data_vfs_require_node_load), (brasero_data_vfs_load_mime),
	(brasero_data_vfs_node_added), (brasero_data_vfs_empty_loading_cb),
	(brasero_data_vfs_empty_filtered_cb), (brasero_data_vfs_clear),
	(brasero_data_vfs_reset), (brasero_data_vfs_init),
	(brasero_data_vfs_finalize), (brasero_data_vfs_class_init):
	* src/brasero-data-vfs.h:
	* src/brasero-disc-message.c:
	(brasero_disc_message_expander_activated_cb),
	(brasero_disc_message_add_errors),
	(brasero_disc_message_remove_errors),
	(brasero_disc_message_button_clicked_cb),
	(brasero_disc_message_add_button),
	(brasero_disc_message_remove_buttons),
	(brasero_disc_message_update_progress),
	(brasero_disc_message_set_progress_active),
	(brasero_disc_message_set_progress),
	(brasero_disc_message_set_image),
	(brasero_disc_message_set_primary),
	(brasero_disc_message_set_secondary),
	(brasero_disc_message_get_style), (style_set),
	(brasero_disc_message_init), (brasero_disc_message_finalize),
	(brasero_disc_message_size_request),
	(brasero_disc_message_size_allocate),
	(brasero_disc_message_realize),
	(brasero_disc_message_expose_event),
	(brasero_disc_message_class_init), (brasero_disc_message_new):
	* src/brasero-disc-message.h:
	* src/brasero-disc.c:
	(brasero_utils_disc_find_tree_view_in_container),
	(brasero_utils_disc_find_tree_view),
	(brasero_utils_disc_hide_use_info_leave_cb),
	(brasero_utils_disc_hide_use_info_drop_cb),
	(brasero_utils_disc_hide_use_info_data_received_cb),
	(brasero_utils_disc_hide_use_info_motion_cb),
	(brasero_utils_disc_hide_use_info_button_cb),
	(brasero_disc_get_use_info_notebook), (brasero_track_clear):
	* src/brasero-disc.h:
	* src/brasero-eject-dialog.c: (brasero_eject_dialog_activate),
	(brasero_eject_dialog_new):
	* src/brasero-file-filtered.c:
	(brasero_file_filtered_get_label_text),
	(brasero_file_filtered_update), (brasero_file_filtered_activate),
	(brasero_file_filtered_add),
	(brasero_file_filtered_option_pressed_cb),
	(brasero_file_filtered_restore_pressed_cb),
	(brasero_file_filtered_selection_changed_cb),
	(brasero_file_filtered_clear),
	(brasero_file_filtered_set_right_button_group),
	(brasero_file_filtered_init), (brasero_file_filtered_finalize),
	(brasero_file_filtered_class_init), (brasero_file_filtered_new):
	* src/brasero-file-filtered.h:
	* src/brasero-file-monitor.c: (brasero_inotify_file_data_free),
	(brasero_file_monitor_moved_to_event),
	(brasero_file_monitor_move_timeout_cb),
	(brasero_file_monitor_moved_from_event),
	(brasero_file_monitor_directory_event),
	(brasero_file_monitor_inotify_file_event),
	(brasero_file_monitor_inotify_monitor_cb),
	(brasero_file_monitor_start_monitoring_real),
	(brasero_file_monitor_single_file),
	(brasero_file_monitor_directory_contents),
	(brasero_file_monitor_foreach_cancel_file_cb),
	(brasero_file_monitor_foreach_cancel_directory_cb),
	(brasero_file_monitor_foreach_cancel),
	(brasero_file_monitor_foreach_file_reset_cb),
	(brasero_file_monitor_foreach_directory_reset_cb),
	(brasero_file_monitor_reset), (brasero_file_monitor_init),
	(brasero_file_monitor_finalize), (brasero_file_monitor_class_init):
	* src/brasero-file-monitor.h:
	* src/brasero-file-node.c: (brasero_file_node_root_new),
	(brasero_file_node_get_root), (brasero_file_node_get_depth),
	(brasero_file_node_get_tree_stats),
	(brasero_file_node_sort_default_cb),
	(brasero_file_node_sort_name_cb), (brasero_file_node_sort_size_cb),
	(brasero_file_node_sort_mime_cb), (brasero_file_node_insert),
	(brasero_file_node_need_resort), (brasero_file_node_sort_children),
	(brasero_file_node_reverse_children),
	(brasero_file_node_nth_child), (brasero_file_node_get_n_children),
	(brasero_file_node_get_pos_as_child),
	(brasero_file_node_is_ancestor),
	(brasero_file_node_check_name_existence),
	(brasero_file_node_check_imported_sibling),
	(brasero_file_node_validate_utf8_name), (brasero_file_node_graft),
	(brasero_file_node_ungraft), (brasero_file_node_rename),
	(brasero_file_node_add), (brasero_file_node_set_from_info),
	(brasero_file_node_get_uri_name), (brasero_file_node_new_loading),
	(brasero_file_node_new_from_info),
	(brasero_file_node_new_imported_session_file),
	(brasero_file_node_new_empty_folder), (brasero_file_node_unlink),
	(brasero_file_node_move),
	(brasero_file_node_destroy_with_children),
	(brasero_file_node_destroy),
	(brasero_file_node_save_imported_children),
	(brasero_file_node_remove):
	* src/brasero-file-node.h:
	* src/brasero-filter-option.c:
	(brasero_file_filtered_filter_hidden_cb),
	(brasero_file_filtered_filter_broken_sym_cb),
	(brasero_file_filtered_gconf_notify_cb),
	(brasero_filter_option_init), (brasero_filter_option_finalize),
	(brasero_filter_option_class_init), (brasero_filter_option_new):
	* src/brasero-filter-option.h:
	* src/brasero-filtered-window.c:
	* src/brasero-filtered-window.h:
	* src/brasero-marshal.list:
	* src/brasero-project-manager.c: (brasero_project_manager_init):
	* src/brasero-project.c: (brasero_project_init),
	(brasero_project_get_selected_uri), (_read_graft_point),
	(_read_data_track), (_save_data_track_xml):
	* src/brasero-sum-dialog.c:
	* src/brasero-utils.c: (brasero_utils_clear_strings_cb),
	(brasero_utils_free), (brasero_utils_register_string),
	(brasero_utils_unregister_string):
	* src/brasero-utils.h:
	* src/burn-mkisofs-base.c: (brasero_mkisofs_base_write_to_files):
	* src/burn-track.c: (brasero_graft_point_free),
	(brasero_graft_point_copy), (brasero_track_clean):
	* src/burn-track.h:
	* src/burn-volume.h:
	* src/main.c: (on_eject_cb):
	* src/plugins/cdrkit/burn-genisoimage.c:
	(brasero_genisoimage_set_argv_image):
	* src/plugins/cdrtools/burn-mkisofs.c:
	(brasero_mkisofs_set_argv_image):
	* src/plugins/checksum/burn-md5sum-file.c:
	(brasero_md5sum_file_grafts):
	* src/plugins/growisofs/burn-growisofs.c:
	(brasero_growisofs_set_mkisofs_argv):
	* src/plugins/libburnia/burn-libisofs.c:
	(brasero_libisofs_create_volume_thread):
	* src/plugins/local-track/burn-local-image.c:
	(brasero_local_track_finished):

svn path=/trunk/; revision=633
parent 99e63c26
2008-02-10 Philippe Rouquier <philippr@svn.gnome.org>
This a rewrite of the BraseroDataDisc object.
The current benefits:
- a much more limited footprint in memory for large tree (probably something like 50% =))
- an improved maintainability
Expected benefits (more work needed):
- faster and more responsive loading operation
- some bugs will be more easily closed in future thanks to greated flexibility
Some new features:
- filtered files are displayed in a separate tree
- the proportion that a folder / a file is taking in final image is displayed
- a new message box (stolen from gedit) is displayed while loading projects (to be extended)
Basically this closes a couple of bugs (mostly feature requests):
- #438851 – Add a baobab-like gfx size view
- #362569 – Unselecting files in data project view
- #438854 – Allow listing and vetting of filtered files
- #360899 – GUI enhancements/simplification
* configure.in:
* src/Makefile.am:
* src/baobab-cell-renderer-progress.c:
(baobab_cell_renderer_progress_init),
(baobab_cell_renderer_progress_new),
(baobab_cell_renderer_progress_get_property),
(baobab_cell_renderer_progress_set_property),
(baobab_cell_renderer_progress_get_size),
(set_color_according_to_perc),
(baobab_cell_renderer_progress_render),
(baobab_cell_renderer_progress_class_init):
* src/baobab-cell-renderer-progress.h:
* src/brasero-audio-disc.c: (brasero_audio_disc_init):
* src/brasero-blank-dialog.c:
* src/brasero-data-disc.c: (brasero_data_disc_notification_free),
(brasero_data_disc_notification_closed),
(brasero_data_disc_notify_user_real),
(brasero_data_disc_notify_user),
(brasero_data_disc_import_failure_dialog),
(brasero_data_disc_import_session_cb),
(brasero_data_disc_get_parent),
(brasero_data_disc_new_folder_clicked_cb),
(brasero_data_disc_clipboard_text_cb),
(brasero_data_disc_clipboard_targets_cb),
(brasero_data_disc_paste_activated_cb),
(brasero_data_disc_name_editing_started_cb),
(brasero_data_disc_name_editing_canceled_cb),
(brasero_data_disc_name_edited_cb),
(brasero_data_disc_set_expand_state),
(brasero_data_disc_row_collapsed_cb),
(brasero_data_disc_row_expanded_cb),
(brasero_data_disc_project_loaded_cb),
(brasero_data_disc_activity_changed_cb),
(brasero_data_disc_filtered_uri_cb),
(brasero_data_disc_filter_expanded_cb),
(brasero_data_disc_filtered_file_cb),
(brasero_data_disc_restored_file_cb),
(brasero_data_disc_unreadable_uri_cb),
(brasero_data_disc_recursive_uri_cb),
(brasero_data_disc_unknown_uri_cb),
(brasero_data_disc_name_collision_cb),
(brasero_data_disc_2G_file_cb),
(brasero_data_disc_deep_directory_cb),
(brasero_data_disc_size_changed_cb),
(brasero_data_disc_session_available_cb),
(brasero_data_disc_session_loaded_cb), (brasero_data_disc_clear),
(brasero_data_disc_reset), (brasero_data_disc_delete_selected),
(brasero_data_disc_add_uri), (brasero_data_disc_get_track),
(brasero_data_disc_set_session_param),
(brasero_data_disc_set_session_contents),
(brasero_data_disc_message_response_cb),
(brasero_data_disc_load_track), (brasero_data_disc_get_status),
(brasero_data_disc_get_selected_uri),
(brasero_data_disc_set_drive), (brasero_data_disc_add_ui),
(brasero_data_disc_open_file),
(brasero_data_disc_open_activated_cb),
(brasero_data_disc_rename_activated),
(brasero_data_disc_rename_activated_cb),
(brasero_data_disc_delete_activated_cb),
(brasero_data_disc_selection_changed_cb),
(brasero_data_disc_tree_select_function),
(brasero_data_disc_show_menu),
(brasero_data_disc_button_pressed_cb),
(brasero_data_disc_key_released_cb),
(brasero_data_disc_contents_added_cb),
(brasero_data_disc_contents_removed_cb),
(brasero_data_disc_set_right_button_group),
(brasero_data_disc_init), (brasero_data_disc_finalize),
(brasero_data_disc_iface_disc_init),
(brasero_data_disc_get_property), (brasero_data_disc_set_property),
(brasero_data_disc_class_init), (brasero_data_disc_new):
* src/brasero-data-disc.h:
* src/brasero-data-project.c: (brasero_data_project_file_signal),
(brasero_data_project_reference_new),
(brasero_data_project_reference_free),
(brasero_data_project_reference_get),
(brasero_data_project_reference_remove_children_cb),
(brasero_data_project_reference_invalidate),
(brasero_data_project_joliet_hash),
(brasero_data_project_joliet_equal),
(brasero_data_project_joliet_set_key),
(brasero_data_project_joliet_add_node),
(brasero_data_project_joliet_remove_node),
(brasero_data_project_joliet_remove_children_node_cb),
(brasero_data_project_joliet_remove_children_node),
(brasero_data_project_node_to_uri),
(brasero_data_project_find_child_node),
(brasero_data_project_uri_to_nodes),
(brasero_data_project_node_changed),
(brasero_data_project_reorder_children),
(brasero_data_project_resort_tree),
(brasero_data_project_reverse_children),
(brasero_data_project_reverse_tree),
(brasero_data_project_set_sort_function),
(brasero_data_project_uri_has_parent),
(brasero_data_project_uri_is_graft_needed),
(brasero_data_project_uri_remove_graft),
(brasero_data_project_uri_add_graft),
(brasero_data_project_uri_ensure_graft),
(brasero_data_project_uri_graft_nodes),
(brasero_data_project_add_node_and_children),
(brasero_data_project_remove_node_children_graft_cb),
(brasero_data_project_remove_node_children_graft),
(brasero_data_project_monitor_cancel_foreach_cb),
(brasero_data_project_node_removed),
(brasero_data_project_remove_real),
(brasero_data_project_remove_node),
(brasero_data_project_destroy_node),
(brasero_data_project_move_node_real),
(brasero_data_project_move_node),
(brasero_data_project_rename_node),
(brasero_data_project_add_node_real),
(brasero_data_project_restore_uri),
(brasero_data_project_exclude_uri),
(brasero_data_project_add_imported_session_file),
(brasero_data_project_add_empty_directory),
(brasero_data_project_node_loaded),
(brasero_data_project_node_reloaded),
(brasero_data_project_add_loading_node),
(brasero_data_project_directory_node_loaded),
(brasero_data_project_add_node_from_info),
(brasero_data_project_set_joliet_compliant_name),
(brasero_data_project_node_to_path),
(_foreach_grafts_make_list_cb),
(brasero_data_project_get_contents),
(brasero_data_project_is_joliet_compliant),
(brasero_data_project_is_video_project),
(brasero_data_project_is_empty),
(brasero_data_project_create_path),
(brasero_data_project_skip_existing),
(brasero_data_project_add_path),
(brasero_data_project_add_excluded_uri),
(brasero_data_project_load_contents),
(brasero_data_project_sum_graft_size_cb),
(brasero_data_project_get_size),
(brasero_data_project_folder_size_cb),
(brasero_data_project_get_folder_size),
(brasero_data_project_init), (brasero_data_project_get_root),
(brasero_data_project_clear_grafts_cb),
(brasero_data_project_clear_joliet_cb),
(brasero_data_project_clear), (brasero_data_project_reset),
(brasero_data_project_finalize), (brasero_data_project_file_added),
(brasero_data_project_file_update_URI),
(brasero_data_project_file_update_name),
(brasero_data_project_file_graft),
(brasero_data_project_file_renamed),
(brasero_data_project_file_moved),
(brasero_data_project_file_removed),
(brasero_data_project_file_modified),
(brasero_data_project_class_init):
* src/brasero-data-project.h:
* src/brasero-data-session.c: (brasero_data_session_remove_last),
(brasero_data_session_add_children_files),
(brasero_data_session_add_last), (brasero_data_session_set_drive),
(brasero_data_session_get_loaded_medium),
(brasero_data_session_init), (brasero_data_session_finalize),
(brasero_data_session_class_init):
* src/brasero-data-session.h:
* src/brasero-data-tree-model.c:
(brasero_data_tree_model_iter_parent),
(brasero_data_tree_model_iter_nth_child),
(brasero_data_tree_model_iter_n_children),
(brasero_data_tree_model_iter_has_child),
(brasero_data_tree_model_iter_children),
(brasero_data_tree_model_iter_next),
(brasero_data_tree_model_node_shown),
(brasero_data_tree_model_node_hidden),
(brasero_data_tree_model_get_value),
(brasero_data_tree_model_node_to_path),
(brasero_data_tree_model_get_path),
(brasero_data_tree_model_path_to_node),
(brasero_data_tree_model_get_iter),
(brasero_data_tree_model_get_column_type),
(brasero_data_tree_model_get_n_columns),
(brasero_data_tree_model_get_flags),
(brasero_data_tree_model_multi_row_draggable),
(brasero_data_tree_model_multi_drag_data_get),
(brasero_data_tree_model_multi_drag_data_delete),
(brasero_data_tree_model_drag_data_received),
(brasero_data_tree_model_row_drop_possible),
(brasero_data_tree_model_drag_data_delete),
(brasero_data_tree_model_get_sort_column_id),
(brasero_data_tree_model_set_sort_column_id),
(brasero_data_tree_model_set_sort_func),
(brasero_data_tree_model_set_default_sort_func),
(brasero_data_tree_model_has_default_sort_func),
(brasero_data_tree_model_clear_children),
(brasero_data_tree_model_clear), (brasero_data_tree_model_reset),
(brasero_data_tree_model_node_added),
(brasero_data_tree_model_node_removed),
(brasero_data_tree_model_node_changed),
(brasero_data_tree_model_node_reordered),
(brasero_data_tree_model_activity_changed),
(brasero_data_tree_model_init), (brasero_data_tree_model_finalize),
(brasero_data_tree_model_iface_init),
(brasero_data_tree_model_multi_drag_source_iface_init),
(brasero_data_tree_model_drag_source_iface_init),
(brasero_data_tree_model_drag_dest_iface_init),
(brasero_data_tree_model_sortable_iface_init),
(brasero_data_tree_model_class_init),
(brasero_data_tree_model_new):
* src/brasero-data-tree-model.h:
* src/brasero-data-vfs.c: (brasero_data_vfs_restored_list_cb),
(brasero_data_vfs_get_restored), (brasero_data_vfs_add_restored),
(brasero_data_vfs_remove_restored), (brasero_data_vfs_is_active),
(brasero_data_vfs_is_loading_uri), (brasero_data_vfs_is_readable),
(brasero_data_vfs_check_uri_result),
(brasero_data_vfs_remove_from_hash),
(brasero_data_vfs_directory_load_end),
(brasero_data_vfs_directory_load_result),
(brasero_data_vfs_load_directory),
(brasero_data_vfs_loading_node_end),
(brasero_data_vfs_loading_node_result),
(brasero_data_vfs_load_node), (brasero_data_vfs_loading_node),
(brasero_data_vfs_increase_priority_cb),
(brasero_data_vfs_require_higher_priority),
(brasero_data_vfs_require_directory_contents),
(brasero_data_vfs_require_node_load), (brasero_data_vfs_load_mime),
(brasero_data_vfs_node_added), (brasero_data_vfs_empty_loading_cb),
(brasero_data_vfs_empty_filtered_cb), (brasero_data_vfs_clear),
(brasero_data_vfs_reset), (brasero_data_vfs_init),
(brasero_data_vfs_finalize), (brasero_data_vfs_class_init):
* src/brasero-data-vfs.h:
* src/brasero-disc-message.c:
(brasero_disc_message_expander_activated_cb),
(brasero_disc_message_add_errors),
(brasero_disc_message_remove_errors),
(brasero_disc_message_button_clicked_cb),
(brasero_disc_message_add_button),
(brasero_disc_message_remove_buttons),
(brasero_disc_message_update_progress),
(brasero_disc_message_set_progress_active),
(brasero_disc_message_set_progress),
(brasero_disc_message_set_image),
(brasero_disc_message_set_primary),
(brasero_disc_message_set_secondary),
(brasero_disc_message_get_style), (style_set),
(brasero_disc_message_init), (brasero_disc_message_finalize),
(brasero_disc_message_size_request),
(brasero_disc_message_size_allocate),
(brasero_disc_message_realize),
(brasero_disc_message_expose_event),
(brasero_disc_message_class_init), (brasero_disc_message_new):
* src/brasero-disc-message.h:
* src/brasero-disc.c:
(brasero_utils_disc_find_tree_view_in_container),
(brasero_utils_disc_find_tree_view),
(brasero_utils_disc_hide_use_info_leave_cb),
(brasero_utils_disc_hide_use_info_drop_cb),
(brasero_utils_disc_hide_use_info_data_received_cb),
(brasero_utils_disc_hide_use_info_motion_cb),
(brasero_utils_disc_hide_use_info_button_cb),
(brasero_disc_get_use_info_notebook), (brasero_track_clear):
* src/brasero-disc.h:
* src/brasero-eject-dialog.c: (brasero_eject_dialog_activate),
(brasero_eject_dialog_new):
* src/brasero-file-filtered.c:
(brasero_file_filtered_get_label_text),
(brasero_file_filtered_update), (brasero_file_filtered_activate),
(brasero_file_filtered_add),
(brasero_file_filtered_option_pressed_cb),
(brasero_file_filtered_restore_pressed_cb),
(brasero_file_filtered_selection_changed_cb),
(brasero_file_filtered_clear),
(brasero_file_filtered_set_right_button_group),
(brasero_file_filtered_init), (brasero_file_filtered_finalize),
(brasero_file_filtered_class_init), (brasero_file_filtered_new):
* src/brasero-file-filtered.h:
* src/brasero-file-monitor.c: (brasero_inotify_file_data_free),
(brasero_file_monitor_moved_to_event),
(brasero_file_monitor_move_timeout_cb),
(brasero_file_monitor_moved_from_event),
(brasero_file_monitor_directory_event),
(brasero_file_monitor_inotify_file_event),
(brasero_file_monitor_inotify_monitor_cb),
(brasero_file_monitor_start_monitoring_real),
(brasero_file_monitor_single_file),
(brasero_file_monitor_directory_contents),
(brasero_file_monitor_foreach_cancel_file_cb),
(brasero_file_monitor_foreach_cancel_directory_cb),
(brasero_file_monitor_foreach_cancel),
(brasero_file_monitor_foreach_file_reset_cb),
(brasero_file_monitor_foreach_directory_reset_cb),
(brasero_file_monitor_reset), (brasero_file_monitor_init),
(brasero_file_monitor_finalize), (brasero_file_monitor_class_init):
* src/brasero-file-monitor.h:
* src/brasero-file-node.c: (brasero_file_node_root_new),
(brasero_file_node_get_root), (brasero_file_node_get_depth),
(brasero_file_node_get_tree_stats),
(brasero_file_node_sort_default_cb),
(brasero_file_node_sort_name_cb), (brasero_file_node_sort_size_cb),
(brasero_file_node_sort_mime_cb), (brasero_file_node_insert),
(brasero_file_node_need_resort), (brasero_file_node_sort_children),
(brasero_file_node_reverse_children),
(brasero_file_node_nth_child), (brasero_file_node_get_n_children),
(brasero_file_node_get_pos_as_child),
(brasero_file_node_is_ancestor),
(brasero_file_node_check_name_existence),
(brasero_file_node_check_imported_sibling),
(brasero_file_node_validate_utf8_name), (brasero_file_node_graft),
(brasero_file_node_ungraft), (brasero_file_node_rename),
(brasero_file_node_add), (brasero_file_node_set_from_info),
(brasero_file_node_get_uri_name), (brasero_file_node_new_loading),
(brasero_file_node_new_from_info),
(brasero_file_node_new_imported_session_file),
(brasero_file_node_new_empty_folder), (brasero_file_node_unlink),
(brasero_file_node_move),
(brasero_file_node_destroy_with_children),
(brasero_file_node_destroy),
(brasero_file_node_save_imported_children),
(brasero_file_node_remove):
* src/brasero-file-node.h:
* src/brasero-filter-option.c:
(brasero_file_filtered_filter_hidden_cb),
(brasero_file_filtered_filter_broken_sym_cb),
(brasero_file_filtered_gconf_notify_cb),
(brasero_filter_option_init), (brasero_filter_option_finalize),
(brasero_filter_option_class_init), (brasero_filter_option_new):
* src/brasero-filter-option.h:
* src/brasero-filtered-window.c:
* src/brasero-filtered-window.h:
* src/brasero-marshal.list:
* src/brasero-project-manager.c: (brasero_project_manager_init):
* src/brasero-project.c: (brasero_project_init),
(brasero_project_get_selected_uri), (_read_graft_point),
(_read_data_track), (_save_data_track_xml):
* src/brasero-sum-dialog.c:
* src/brasero-utils.c: (brasero_utils_clear_strings_cb),
(brasero_utils_free), (brasero_utils_register_string),
(brasero_utils_unregister_string):
* src/brasero-utils.h:
* src/burn-mkisofs-base.c: (brasero_mkisofs_base_write_to_files):
* src/burn-track.c: (brasero_graft_point_free),
(brasero_graft_point_copy), (brasero_track_clean):
* src/burn-track.h:
* src/burn-volume.h:
* src/main.c: (on_eject_cb):
* src/plugins/cdrkit/burn-genisoimage.c:
(brasero_genisoimage_set_argv_image):
* src/plugins/cdrtools/burn-mkisofs.c:
(brasero_mkisofs_set_argv_image):
* src/plugins/checksum/burn-md5sum-file.c:
(brasero_md5sum_file_grafts):
* src/plugins/growisofs/burn-growisofs.c:
(brasero_growisofs_set_mkisofs_argv):
* src/plugins/libburnia/burn-libisofs.c:
(brasero_libisofs_create_volume_thread):
* src/plugins/local-track/burn-local-image.c:
(brasero_local_track_finished):
2008-02-04 Luis Medinas <lmedinas@svn.gnome.org>
* src/brasero-project.c: (brasero_project_get_selected_uri):
......
......@@ -33,6 +33,7 @@ dnl ***************** GENERAL **********************************
AC_DISABLE_STATIC
AC_PROG_LIBTOOL
dnl ** reminder: the following set CFLAGS to -O2 -g if empty
AC_PROG_CC
AM_PROG_CC_STDC
AC_HEADER_STDC
......@@ -58,7 +59,7 @@ dnl ** used by brasero and one plugin
PKG_CHECK_MODULES(BRASERO_GSTREAMER, \
gstreamer-0.10 >= $GSTREAMER_REQUIRED \
gstreamer-plugins-base-0.10 >= $GSTREAMER_BASE_REQUIRED)
echo $CFLAGS
AC_SUBST(BRASERO_GSTREAMER_CFLAGS)
AC_SUBST(BRASERO_GSTREAMER_LIBS)
......
2008-02-10 Philippe Rouquier <philippr@svn.gnome.org>
reviewed by: <delete if not using a buddy>
* POTFILES.in:
* POTFILES.skip:
2008-02-05 Yair Hershkovitz <yairhr@gmail.com>
* he.po: Updated Hebrew translation from 0.7
......
......@@ -7,7 +7,6 @@ src/brasero-dest-selection.c
src/brasero-audio-disc.c
src/brasero-blank-dialog.c
src/brasero-disc-copy-dialog.c
src/brasero-filtered-window.c
src/brasero-menu.h
src/brasero-metadata.c
src/brasero-mime-filter.c
......@@ -84,3 +83,10 @@ src/plugins/cdrdao/burn-cdrdao-common.h
src/plugins/cdrtools/burn-cdrtools.h
src/plugins/checksum/burn-md5sum-file.c
src/burn-image-format.c
src/brasero-data-session.c
src/brasero-data-tree-model.c
src/brasero-disc-message.c
src/brasero-disc.c
src/brasero-eject-dialog.c
src/brasero-file-filtered.c
src/brasero-filter-option.c
......@@ -62,12 +62,8 @@ brasero_SOURCES = \
brasero-eject-dialog.h \
brasero-metadata.c \
brasero-metadata.h \
brasero-filtered-window.c \
brasero-filtered-window.h \
brasero-disc.c \
brasero-disc.h \
brasero-data-disc.c \
brasero-data-disc.h \
brasero-audio-disc.c \
brasero-audio-disc.h \
brasero-project.c \
......@@ -219,7 +215,29 @@ brasero_SOURCES = \
brasero-preview.h \
brasero-preview.c \
burn-image-format.c \
burn-image-format.h
burn-image-format.h \
brasero-data-project.c \
brasero-data-project.h \
brasero-data-session.c \
brasero-data-session.h \
brasero-data-tree-model.c \
brasero-data-tree-model.h \
brasero-data-vfs.c \
brasero-data-vfs.h \
brasero-file-monitor.c \
brasero-file-monitor.h \
brasero-file-node.c \
brasero-file-node.h \
brasero-data-disc.h \
brasero-data-disc.c \
brasero-file-filtered.h \
brasero-file-filtered.c \
brasero-filter-option.h \
brasero-filter-option.c \
brasero-disc-message.h \
brasero-disc-message.c \
baobab-cell-renderer-progress.c \
baobab-cell-renderer-progress.h
brasero_LDADD = $(BRASERO_LIBS)
......
/* baobab-cell-renderer-progress.c
*
* Copyright (C) 2006 Paolo Borelli
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Library General Public
* License as published by the Free Software Foundation; either
* version 2 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Library General Public License for more details.
*
* You should have received a copy of the GNU Library General Public
* License along with this library; if not, write to the
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
* Boston, MA 02111-1307, USA.
*/
#include "config.h"
#include <stdlib.h>
#include "baobab-cell-renderer-progress.h"
#define BAOBAB_CELL_RENDERER_PROGRESS_GET_PRIVATE(object) (G_TYPE_INSTANCE_GET_PRIVATE ((object), \
BAOBAB_TYPE_CELL_RENDERER_PROGRESS, \
BaobabCellRendererProgressPrivate))
enum
{
PROP_0,
PROP_PERC
};
struct _BaobabCellRendererProgressPrivate
{
double perc;
};
G_DEFINE_TYPE (BaobabCellRendererProgress, baobab_cell_renderer_progress, GTK_TYPE_CELL_RENDERER)
static void
baobab_cell_renderer_progress_init (BaobabCellRendererProgress *cellprogress)
{
cellprogress->priv = BAOBAB_CELL_RENDERER_PROGRESS_GET_PRIVATE (cellprogress);
cellprogress->priv->perc = 0;
GTK_CELL_RENDERER(cellprogress)->mode = GTK_CELL_RENDERER_MODE_INERT;
GTK_CELL_RENDERER(cellprogress)->xpad = 4;
GTK_CELL_RENDERER(cellprogress)->ypad = 4;
}
GtkCellRenderer*
baobab_cell_renderer_progress_new (void)
{
return g_object_new (BAOBAB_TYPE_CELL_RENDERER_PROGRESS, NULL);
}
static void
baobab_cell_renderer_progress_get_property (GObject *object,
guint param_id,
GValue *value,
GParamSpec *pspec)
{
BaobabCellRendererProgress *cellprogress = BAOBAB_CELL_RENDERER_PROGRESS (object);
switch (param_id)
{
case PROP_PERC:
g_value_set_double (value, cellprogress->priv->perc);
break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, param_id, pspec);
}
}
static void
baobab_cell_renderer_progress_set_property (GObject *object,
guint param_id,
const GValue *value,
GParamSpec *pspec)
{
BaobabCellRendererProgress *cellprogress = BAOBAB_CELL_RENDERER_PROGRESS (object);
switch (param_id)
{
case PROP_PERC:
cellprogress->priv->perc = g_value_get_double (value);
break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, param_id, pspec);
}
}
/* we simply have a fixed size */
#define FIXED_WIDTH 70
#define FIXED_HEIGHT 8
static void
baobab_cell_renderer_progress_get_size (GtkCellRenderer *cell,
GtkWidget *widget,
GdkRectangle *cell_area,
gint *x_offset,
gint *y_offset,
gint *width,
gint *height)
{
gint calc_width;
gint calc_height;
calc_width = (gint) cell->xpad * 2 + FIXED_WIDTH;
calc_height = (gint) cell->ypad * 2 + FIXED_HEIGHT;
if (width)
*width = calc_width;
if (height)
*height = calc_height;
if (cell_area)
{
if (x_offset)
{
*x_offset = cell->xalign * (cell_area->width - calc_width);
*x_offset = MAX (*x_offset, 0);
}
if (y_offset)
{
*y_offset = cell->yalign * (cell_area->height - calc_height);
*y_offset = MAX (*y_offset, 0);
}
}
}
static void
set_color_according_to_perc (cairo_t *cr, double value)
{
static GdkColor red;
static GdkColor yellow;
static GdkColor green;
static gboolean colors_initialized = FALSE;
if (!colors_initialized)
{
/* hardcoded tango colors */
gdk_color_parse ("#cc0000", &red);
gdk_color_parse ("#edd400", &yellow);
gdk_color_parse ("#73d216", &green);
colors_initialized = TRUE;
}
if (value <= 0)
{
cairo_set_source_rgb (cr, 1, 1, 1);
return;
}
else if (value <= 33.33)
{
gdk_cairo_set_source_color (cr, &green);
return;
}
else if (value <= 66.66)
{
gdk_cairo_set_source_color (cr, &yellow);
return;
}
else if (value <= 100.0)
{
gdk_cairo_set_source_color (cr, &red);
return;
}
else
g_assert_not_reached ();
}
static void
baobab_cell_renderer_progress_render (GtkCellRenderer *cell,
GdkWindow *window,
GtkWidget *widget,
GdkRectangle *background_area,
GdkRectangle *cell_area,
GdkRectangle *expose_area,
guint flags)
{
BaobabCellRendererProgress *cellprogress = BAOBAB_CELL_RENDERER_PROGRESS (cell);
gint x, y, w, h, perc_w, pos;
gboolean is_rtl;
cairo_t *cr;
is_rtl = gtk_widget_get_direction (widget) == GTK_TEXT_DIR_RTL;
cr = gdk_cairo_create (window);
x = cell_area->x + cell->xpad;
y = cell_area->y + cell->ypad;
w = cell_area->width - cell->xpad * 2;
h = cell_area->height - cell->ypad * 2;
/*
* we always use a white bar with black
* border and green/yellow/red progress...
* I know it's not theme friendly, but we don't
* want a plain progress bar
*/
cairo_rectangle (cr, x, y, w, h);
cairo_set_source_rgb (cr, 0, 0, 0);
cairo_fill (cr);
x += widget->style->xthickness;
y += widget->style->ythickness;
w -= widget->style->xthickness * 2;
h -= widget->style->ythickness * 2;
cairo_rectangle (cr, x, y, w, h);
cairo_set_source_rgb (cr, 1, 1, 1);
cairo_fill (cr);
perc_w = w * MAX (0, cellprogress->priv->perc) / 100;
cairo_rectangle (cr, is_rtl ? (x + w - perc_w) : x, y, perc_w, h);
set_color_according_to_perc (cr, cellprogress->priv->perc);
cairo_fill (cr);
cairo_destroy (cr);
}
static void
baobab_cell_renderer_progress_class_init (BaobabCellRendererProgressClass *klass)
{
GObjectClass *object_class = G_OBJECT_CLASS (klass);
GtkCellRendererClass *cell_class = GTK_CELL_RENDERER_CLASS (klass);
object_class->get_property = baobab_cell_renderer_progress_get_property;
object_class->set_property = baobab_cell_renderer_progress_set_property;
cell_class->get_size = baobab_cell_renderer_progress_get_size;
cell_class->render = baobab_cell_renderer_progress_render;
g_object_class_install_property (object_class,
PROP_PERC,
g_param_spec_double ("perc",
"percentage",
"precentage",
-1, 100, 0,
G_PARAM_READWRITE));
g_type_class_add_private (object_class,
sizeof (BaobabCellRendererProgressPrivate));
}
/* baobab-cell-renderer-progress.h
*
* Copyright (C) 2006 Paolo Borelli
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Library General Public
* License as published by the Free Software Foundation; either
* version 2 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of