2000-06-30 Gene Z. Ragan <gzr@eazel.com>
* libnautilus-extensions/bonobo-stream-vfs.c:
(create_bonobo_stream_vfs):
A fix to make the setting of the vepv work. The extern
vepv is gone, so we now use the allocator functions.
fixed bug where the combine mode for backgrounds wasn't
working properly in the non-aa case, by setting flags
properly in the fake CanvasBuf. Now the sidebar in the
arlo theme draws properly.
* components/services/install/command-line/Makefile.am:
* components/services/install/command-line/eazel-uninstall.c:
(set_parameters_from_command_line), (progress_signal),
(uninstall_failed), (dep_check), (create_package), (done), (main):
* components/services/install/lib/Makefile.am:
* components/services/install/lib/eazel-install-object.c:
(eazel_install_uninstall_packages):
* components/services/install/lib/eazel-install-rpm-glue.c:
(uninstall_packages), (uninstall_a_package), (do_rpm_uninstall),
(eazel_install_prepare_rpm_system), (eazel_install_add_to_rpm_set),
(eazel_install_add_to_set), (eazel_install_fetch_rpm_dependencies),
(eazel_install_do_dependency_check), (eazel_install_ensure_deps),
(eazel_uninstall_upward_traverse),
(eazel_uninstall_downward_traverse), (eazel_uninstall_globber):
Doing a lot of slashing in the uninstall part.
* nautilus-installer/src/Makefile:
This is still checked in, as the installer isn't part of the build
tree.
2000-06-29 Pavel Cisler <pavel@eazel.com>
Fixed some memory leaks.
* libnautilus-extensions/nautilus-mime-actions.c:
(nautilus_mime_get_short_list_components_for_uri):
Fix a leaked string.
* src/nautilus-zoom-control.c:
(nautilus_zoom_control_set_preferred_zoom_levels):
Fix a leaky setter call.
* test/Makefile.am:
Add a make target for a leak checker tester.
* test/nautilus-leak-checker.c:
(nautilus_leak_allocation_record_init),
(nautilus_leak_record_malloc), (nautilus_leak_record_realloc),
(nautilus_leak_record_free), (print_one_leak),
(nautilus_leak_print_leaks), (allocate_lots), (leak_mem2),
(leak_mem), (main):
* test/nautilus-leak-symbol-lookup.c:
(nautilus_leak_print_symbol_address):
Tweak the leak checker output a bit to make it more nicer and
indicate the level of stack frame grouping.
* src/nautilus-main.c: (print_leaks):
Tweak the parameters a bit to print more leaks.
* components/tree/Makefile.am: Add VFS_CFLAGS
* components/tree/main.c (main): Initialize more libraries.
* components/tree/nautilus-tree-view.h,
components/tree/nautilus-tree-view.c: Many changes. The upshot is
that basic tree loading now works, but many details remain to be
fleshed out (individual bugs were filed on these).
* libnautilus-extensions/nautilus-directory-async.c:
(dequeue_pending_idle_callback), (directory_load_done): Try to
emit done signal exactly once when a monitor load is complete. But
I think this might be questionable, see below.
* libnautilus-extensions/nautilus-directory-private.h,
libnautilus-extensions/nautilus-directory.h,
libnautilus-extensions/nautilus-directory.c: Add the
"done_loading" signal for when a load initiated by monitoring is
done. I just realized this does the wrong thing when more than one
thing is monitoring at the same time (both get the signal), so
maybe it should be changed to a callback function passed to
nautilus_file_monitor_add, but that would be harder to implement.
(nautilus_directory_emit_done_loading): Function so the async code
can emit it.
2000-06-29 Ramiro Estrugo <ramiro@eazel.com>
* components/mozilla/Makefile.am:
* components/mozilla/mozilla-preferences.cpp:
* components/mozilla/mozilla-preferences.h:
Add a small C wrapper for poking mozilla preferences.
* components/mozilla/nautilus-mozilla-content-view.c:
(nautilus_mozilla_content_view_initialize):
Poke some interesting preferences.
* configure.in:
If the mozilla component is being built, add a check for the c++
compiler which is needed by the mozilla preferences C wrapper.
* components/help/Makefile.am: Install the libvfs-help.so module
in the right place. Closes Bug #919. (will not work though
if Nautilus prefix != gnome-vfs prefix (unless a fix goes into
gnome-vfs))
* components/websearch/ntl-web-search.c:
(web_search_populate_engines): Fix to make it look in the right
place (WEB_SEARCH_DATADIR "/standard.eng" instead of
WEB SEARCH_DATADIR "/ntl-web-search/standard.eng")
2000-06-29 Ramiro Estrugo <ramiro@eazel.com>
* components/mozilla/nautilus-mozilla-content-view.oafinfo:
Expose the fact that this component can grok file: and ftp: uris.
2000-06-29 Pavel Cisler <pavel@eazel.com>
* libnautilus-extensions/nautilus-icon-dnd.h:
* libnautilus-extensions/nautilus-icon-dnd.c:
(nautilus_icon_dnd_init),
(nautilus_icon_dnd_begin_drag), (drag_motion_callback),
(drag_drop_callback):
* libnautilus-extensions/nautilus-icon-container.c:
(motion_notify_event), (key_press_event):
Got rid of the crufty old way drag&drop motion used to handle
updating the drop action.
* libnautilus-extensions/nautilus-drag.h:
* libnautilus-extensions/nautilus-icon-dnd.c:
* libnautilus-extensions/nautilus-drag.c:
(nautilus_drag_modifier_based_action):
Moved to the common drag&drop file so I can share it
between the list and icon view.
* libnautilus-extensions/nautilus-list.c:
(nautilus_list_initialize), (nautilus_list_motion),
(nautilus_list_drag_motion):
* libnautilus-extensions/nautilus-icon-dnd.c:
(confirm_switch_to_manual_layout):
Reformatted a bit.
integrated Erik Gustavsson's patches to make the slider work
correctly at arbitrary bit-rates, and also made the music view
use nautilus-directory-background for consistency and to save
code. Also, fixed nautilus-directory-background by arranging
for it to receive metadata.
2000-06-28 Rebecca Schulman <rebecka@eazel.com>
* libnautilus-extensions/nautilus-search-uri.c:
(nautilus_simple_search_criteria_to_search_uri):
(add facility to make search uri's from simple
search queries )
* src/nautilus-complex-search-bar.c:
(nautilus_complex_search_bar_initialize_class),
(nautilus_complex_search_bar_initialize), (more_options_callback),
(add_file_type_search_criterion_callback),
(add_file_name_search_criterion_callback),
(add_file_location_search_criterion_callback),
(add_content_search_criterion_callback),
(add_size_search_criterion_callback),
(add_date_modified_search_criterion_callback),
(add_notes_search_criterion_callback),
(nautilus_complex_search_bar_get_location):
added ability to add more criterion (still incomplete)
* src/nautilus-complex-search-bar.h:
* src/nautilus-search-bar-criterion.c:
(nautilus_search_bar_criterion_file_type_new),
(nautilus_search_bar_criterion_file_name_new),
(nautilus_search_bar_criterion_location_new),
(nautilus_search_bar_criterion_content_new),
(nautilus_search_bar_criterion_size_new),
(nautilus_search_bar_criterion_add_to_search_bar),
(nautilus_search_bar_criterion_show):
added code to actually create various search
button criterion sets.
* src/nautilus-search-bar-criterion.h:
* src/nautilus-simple-search-bar.c:
(nautilus_simple_search_bar_initialize_class),
(nautilus_simple_search_bar_get_location),
(editable_activated_callback):
* src/nautilus-simple-search-bar.h:
Updated so that the search location
is done correctly. Adjustments to
the nautilus-directory should
be all that is needed to make all of
this stuff work.
* src/nautilus-switchable-search-bar.c:
(nautilus_switchable_search_bar_initialize),
(nautilus_switchable_search_bar_get_location),
(nautilus_switchable_search_bar_set_search_controls):
Some widget changes, and search get_location
calls respective simple or complex search bar
get_location functions
* components/music/nautilus-music-view.c:
(nautilus_music_view_drag_data_received):
* libnautilus-extensions/nautilus-icon-dnd.c:
(receive_dropped_tile_image):
* src/nautilus-sidebar.c: (receive_dropped_uri_list):
Changed to use new call that's for receiving dropped images.
* src/nautilus-sidebar.c: (background_settings_changed_callback),
(background_appearance_changed_callback),
(background_reset_callback), (nautilus_sidebar_update_info):
Changed signal handlers to use the normal form instead of
connect_object. Changed the reset callback to stop the reset
signal from going any further now that there's a default handler
for reset.
* libnautilus-extensions/nautilus-directory-background.c:
(background_reset_callback): Add a call to stop the reset signal
from going any further now that there's a default handler for
reset.
* libnautilus-extensions/nautilus-background.h:
* libnautilus-extensions/nautilus-background.c:
(nautilus_background_initialize_class),
(nautilus_background_receive_dropped_background_image),
(nautilus_background_set_tile_image_uri),
(nautilus_background_reset), (nautilus_background_real_reset):
Made nautilus_background_reset set the color and image to NULL by
default instead of doing nothing. Also added a new call to receive
a dropped background image and only pay attention to the special
"reset" image name there instead of hacking it into
_set_tile_image_uri itself.
* libnautilus-extensions/nautilus-stock-dialogs.h:
* libnautilus-extensions/nautilus-stock-dialogs.c:
(find_message_label), (find_message_label_callback),
(show_message_box), (show_ok_box), (nautilus_info_dialog),
(nautilus_warning_dialog), (nautilus_error_dialog),
(clicked_callback), (nautilus_error_dialog_with_details),
(nautilus_yes_no_dialog): Change the API for stock dialogs
to be a little simpler, getting rid of the separate parented
variant. Also added a new dialog for errors that have a second
more detailed error message.
* libnautilus-extensions/nautilus-program-chooser.c:
(nautilus_program_chooser_show_no_choices_message):
* libnautilus-extensions/nautilus-program-choosing.c:
(nautilus_launch_application_parented):
* src/file-manager/fm-error-reporting.c:
(fm_report_error_renaming_file), (fm_report_error_setting_group),
(fm_report_error_setting_owner),
(fm_report_error_setting_permissions):
* src/nautilus-property-browser.c: (emblem_image_file_changed),
(add_background_to_browser):
* src/nautilus-window-manage-views.c:
(handle_unreadable_location),
(nautilus_window_end_location_change_callback),
(report_content_view_failure_to_user):
* src/nautilus-window-menus.c: (show_bogus_bookmark_window):
Change to use new API for stock dialogs.
* src/nautilus-application.c: (create_factory),
(nautilus_application_initialize),
(nautilus_application_check_user_directories),
(nautilus_application_startup):
Moved OAF registration to application_startup and added some
error handling for the case where we have two copies of Nautilus.
* libnautilus-extensions/nautilus-file.h: Move get_mapped_uri
out of the "good part" of the header and add a FIXME.
* components/services/install/lib/.cvsignore:
Ignore some new generated files. Maybe some day I can get Eskil to
make these himself as he adds new things.
* libnautilus-extensions/nautilus-file.c:
(get_user_and_real_name_from_id):
* src/file-manager/fm-properties-window.c:
(create_owner_menu_item):
Changed format of reporting username/real name
to match Arlo's design.c
* src/file-manager/fm-properties-window.c: (create_basic_page),
(add_special_execution_flags), (create_permissions_page):
Changed some layout and wording to match Arlo's design. More
layout changes to come later.
* src/nautilus-window-manage-views.c:
(report_sidebar_panel_failure_to_user),
(nautilus_window_update_state): Added this function as
placeholder for potentially useful error message.
* src/nautilus-window-manage-views.c:
(report_content_view_failure_to_user),
(nautilus_window_update_state): Put up a dialog box
when the content view fails. The dialog box tells the
user they can switch to another view or go to another
location.
when a view fails, instead of also executing during
a normal quit. This is a starting point for putting
some UI at the failure.
* src/nautilus-window.c:
(nautilus_window_disconnect_view): New function to disconnect
the signal handlers on a view that were established in
nautilus_window_connect_view.
(view_disconnect): foreach-style wrapper for _disconnect_view.
(nautilus_window_destroy): Call _disconnect_view on each
sidebar panel, and on the content view.
(nautilus_window_connect_view): Added comment and updated
for a name change.
* src/nautilus-window-manage-views.c:
(nautilus_window_view_failed): Renamed from
"nautilus_window_view_destroyed" since it's (now) only
called in the case of a failure.
(nautilus_window_has_really_changed): Call _disconnect_view.
(nautilus_window_load_content_view): Replaced
_connect_content_view with _connect_view.
* src/nautilus-window-private.h: updated prototypes to match
previously-mentioned changes.
* src/nautilus-sidebar-title.c: (nautilus_sidebar_title_set_uri),
* src/nautilus-sidebar.c: (nautilus_sidebar_update_info): Added
a couple of NULL uri checks to get us cleanly past the case where
the URI is temporarily null at startup time when the theme is set.
* src/nautilus-view-frame.c:
(nautilus_view_frame_get_preferred_zoom_levels):
Commented out a CORBA_free that causes sigsegv (noted by
Carbamide). Filed a bug report (1497) on it.
* components/rpmview/nautilus-rpm-view-install.c:
(nautilus_rpm_view_install_done),
(nautilus_rpm_view_install_package_callback),
(nautilus_rpm_view_uninstall_package_callback):
* components/rpmview/nautilus-rpm-view-install.h:
* components/rpmview/nautilus-rpm-view.c:
(nautilus_rpm_view_initialize),
(nautilus_rpm_view_update_from_uri):
* components/rpmview/nautilus-rpm-view.h:
Hooked up the uninstall button, and made the install's done
callback signal update the view.
* components/services/install/lib/eazel-install-corba-callback.c:
(eazel_install_callback_uninstall_packages):
* components/services/install/lib/eazel-install-corba-callback.h:
* components/services/install/lib/eazel-install-corba-types.c:
(categorydata_list_from_corba_categorystructlist):
* components/services/install/lib/eazel-install-corba-types.h:
* components/services/install/lib/eazel-install-corba.c:
(impl_Eazel_Install_install_packages),
(impl_Eazel_Install_uninstall_packages):
* components/services/install/lib/eazel-install-object.c:
(eazel_install_uninstall_packages):
* components/services/install/lib/eazel-install-public.h:
* components/services/install/lib/eazel-install-rpm-glue.c:
(uninstall_packages), (uninstall_a_package):
* components/services/install/lib/eazel-install-rpm-glue.h:
Made the uninstall work, still missing all the dep stuff
(bugzilla.eazel.com 1478)
* components/services/install/lib/Makefile.am:
* components/services/install/lib/makefile.staticlib.in:
I decided the other makefile.am I had made was too evil, so now I
just have a standard makefile to generate the static lib for the
nautilus bootstrapper.
* configure.in:
Generate the components/services/install/lib/makefile.staticlib
* nautilus-installer/src/HACKING:
* nautilus-installer/src/Makefile:
* nautilus-installer/src/Makefile.am:
* nautilus-installer/src/installer.c: (installer):
* nautilus-installer/src/interface.c: (create_window):
* nautilus-installer/src/link.sh:
* nautilus-installer/src/main.c: (main):
Preparing for Bud's request about being able to install a "stable"
nautilus and a set of rpm's from HEAD.
Also made link.sh recompile libeazelinstall_minimal using the
makefile.staticlib.
made convenience routine nautilus_is_remote_uri and removed
similar code from nautilus_link. Fixed bug 1494, couldn't set
custom icons on directories with blanks in their name by
properly escaping/unescaping paths<->uris.
fixed bug 1491, cant create thumbnails if enclosing directory has
a blank, by escaping and unescaping properly when we translate between
uris and paths.
made the background reset command work in directory views again,
by attaching to the background_reset signal. It's still not
respecting the theme, but will soon.
an icon). I picked arbitrary existing icons (gnome foot
for "generic bookmark", gnome-foot-question-mark for
"bookmark with known-bad URI"); Arlo and/or Susan will
have to come up with real ones. I'll write a separate
bug report about that.
* icons/i-bookmark.png:
* icons/i-bookmark-20.png:
* icons/i-bookmark-missing.png:
* icons/i-bookmark-missing-20.png: New icons to use
for bookmarks. I supplied the base size and the 20
pixel size because that's the one used in menus, where
bookmarks usually appear. These need to be replaced with
better images.
* icons/Makefile.am: Add new icons to installed set.
* libnautilus-extensions/nautilus-bookmark.h,
* libnautilus-extensions/nautilus-bookmark.c:
(nautilus_bookmark_uri_known_not_to_exist): New public
function, moved some code from elsewhere to encapsulate this.
(nautilus_bookmark_set_icon_to_default): Choose between the
generic and bad-URI icon if there's no better icon.
* src/nautilus-window-menus.c: (activate_bookmark_in_menu_item):
Now calls nautilus_bookmark_uri_known_not_to_exist instead
of doing the work here.
* helper-utilities/authenticate/Makefile.am:
Seems that libnautilus-extensions dep on libnautilus that dep on
bonobo, thus this needed BONOBO_LIBS as well.
* components/services/time/service/Makefile.am:
* components/services/install/command-line/Makefile.am:
* components/services/install/server/Makefile.am:
* components/services/trilobite/sample/service/Makefile.am:
And suddenly the bonobo libs went *poof*
* components/services/install/command-line/Makefile.am:
* components/services/install/server/Makefile.am:
* components/services/trilobite/sample/service/Makefile.am:
And suddenly the bonobo libs went *poof*
* components/Makefile.am:
Rearranged so libeazelinstall is built before rpmview
* components/help/Makefile.am:
Added a missing .h file so make dist works
* components/rpmview/Makefile.am:
* components/rpmview/nautilus-rpm-view-install.c:
(nautilus_rpm_view_download_progress_signal),
(nautilus_rpm_view_install_progress_signal),
(nautilus_rpm_view_download_failed),
(nautilus_rpm_view_install_failed_helper),
(nautilus_rpm_view_install_failed),
(nautilus_rpm_view_dependency_check),
(nautilus_rpm_view_install_done),
(nautilus_rpm_view_install_package_callback):
* components/rpmview/nautilus-rpm-view-install.h:
* components/rpmview/nautilus-rpm-view.c:
(nautilus_rpm_view_initialize):
Added a callback and some skeleton code to the install
button. So it now does rpm installs.
* components/services/install/lib/Makefile.am:
* components/services/install/command-line/Makefile.am:
Changed the libnames.
*
components/services/install/command-line/eazel-alt-install-corba.c:
(done), (main):
* components/services/install/lib/eazel-install-corba-callback.c:
(eazel_install_callback_destroy),
(eazel_install_callback_initialize), (eazel_install_callback_new),
(eazel_install_callback_corba_objref),
(eazel_install_callback_install_packages),
(eazel_install_callback_query):
* components/services/install/lib/eazel-install-corba-callback.h:
* components/services/install/lib/eazel-install-corba-types.h:
* components/services/install/lib/eazel-install-protocols.c:
(get_search_url_for_package):
* components/services/install/server/Makefile.am:
* components/services/install/server/main.c:
Changed the object destroction scheme, so eazel_install_callback
now unrefs and destroys the bonobo object.
* components/services/trilobite/sample/lib/Makefile.am:
Fixed to pass make dist
* nautilus-installer/src/Makefile:
* nautilus-installer/src/Makefile.am:
Patching so it works with the new installer libs (and still some
stroking because of the static stuff)
* nautilus.spec.in:
* po/POTFILES.in:
* test/Makefile.am:
Slice and dice so make dist and rpm -ta works again.
fixed sidebar theming by adding a gtk_signal_handler_block_by_func
call (with corresponding unblock) to avoid the background data
being written out to the metafile, since it just came from the theme
and didn't really change
* libnautilus-extensions/nautilus-gtk-extensions.c:
(nautilus_gtk_marshal_NONE__DOUBLE_DOUBLE_DOUBLE):
* libnautilus-extensions/nautilus-gtk-extensions.h:
* libnautilus/nautilus-view-component.idl:
* libnautilus/nautilus-zoomable.c:
(nautilus_zoomable_set_parameters),
(nautilus_zoomable_set_zoom_level):
* libnautilus/nautilus-zoomable.h:
* src/file-manager/fm-directory-view.c:
(fm_directory_view_set_zoom_level),
(fm_directory_view_set_zoom_parameters):
* src/file-manager/fm-directory-view.h:
* src/file-manager/fm-icon-view.c: (fm_icon_view_begin_loading),
(fm_icon_view_set_zoom_level), (fm_icon_view_init_zoom_params),
(fm_icon_view_bump_zoom_level), (fm_icon_view_zoom_to_level),
(fm_icon_view_restore_default_zoom_level):
* src/file-manager/fm-list-view.c: (fm_list_view_bump_zoom_level),
(fm_list_view_zoom_to_level),
(fm_list_view_restore_default_zoom_level),
(fm_list_view_begin_loading), (fm_list_view_set_zoom_level),
(fm_list_view_init_zoom_params):
* src/nautilus-view-frame-private.h:
* src/nautilus-view-frame.c:
(nautilus_view_frame_initialize_class),
(nautilus_view_frame_zoom_parameters_changed):
* src/nautilus-view-frame.h:
* src/nautilus-window.c:
(nautilus_window_zoom_level_changed_callback),
(nautilus_window_zoom_parameters_changed_callback),
(nautilus_window_connect_view):
* src/nautilus-zoom-control.c: (nautilus_zoom_control_initialize),
(draw_number_and_disable_arrows), (zoom_menu_callback),
(create_zoom_menu_item),
(nautilus_zoom_control_button_press_event),
(nautilus_zoom_control_set_zoom_level),
(nautilus_zoom_control_set_min_zoom_level),
(nautilus_zoom_control_set_max_zoom_level),
(nautilus_zoom_control_get_zoom_level),
(nautilus_zoom_control_get_min_zoom_level),
(nautilus_zoom_control_get_max_zoom_level):
* src/nautilus-zoom-control.h:
* src/nautilus-zoomable-frame-corba.c:
(impl_Nautilus_ZoomableFrame_report_zoom_level_changed),
(impl_Nautilus_ZoomableFrame_report_zoom_parameters_changed):
Added report_zoom_parameters_changed to the zoomable
interface. This allows the zoom control to get min/max
from the zoomable (as opposed to hard coding in values)
Also fixed the zoom control to now use just doubles.
Renamed the zoom_level_changed message to be report_zoom_level_changed
in accordance with convention.
in Properties window). The only part I didn't get done was
using asynch gnome-vfs calls. I made that part of bug 845.
* libnautilus-extensions/nautilus-string.h,
* libnautilus-extensions/nautilus-string.c:
(nautilus_strcasecmp): New NULL-handling form of
strcasecmp.
* libnautilus-extensions/nautilus-glib-extensions.h,
* libnautilus-extensions/nautilus-glib-extensions.c:
(nautilus_g_str_list_sort),
(nautilus_g_str_list_sort_case_insensitive): New functions
to sort a list of strings.
(compare_strings), (compare_strings_case_insensitive):
New helper routines used by the new _sort calls.
* src/nautilus-window-manage-views.c:
(nautilus_window_report_selection_change): Use
nautilus_g_str_list_sort.
* libnautilus-extensions/nautilus-file.h,
* libnautilus-extensions/nautilus-file.c:
(user_has_real_name): New helper function, returns TRUE
if a password-file-entry user has a real name distinguishable
from the username.
(get_user_name_from_id), (get_user_and_real_name_from_id),
(get_group_id_from_group_name), (get_ids_from_user_name),
(get_user_id_from_user_name), (get_group_id_from_user_name):
New helper functions for converting between user & group
names & ids.
(get_id_from_digit_string): New helper function for converting
between an integer as text and an integer.
(nautilus_get_user_names): New public function for getting the
list of all user names, with the real name (if distinguishable)
thrown in for good measure.
(nautilus_get_group_names): New public function for getting the
list of all group names.
(nautilus_file_can_get_owner), (nautilus_file_get_owner_name),
(nautilus_file_can_set_owner), (nautilus_file_set_owner),
(nautilus_file_can_get_group), (nautilus_file_get_group_name),
(nautilus_file_can_set_group), (nautilus_file_set_group):
New public functions for reading and setting the group and owner.
The setters define an asynch API though currently they're
using non-asynch calls internally.
(nautilus_file_get_settable_group_names): New public function
returning a list of all group names that the current user can
set this file's group to.
(group_includes_user), (nautilus_get_group_names_including):
New helper functions used by _get_settable_group_names.
(nautilus_file_get_owner_as_string): Now optionally includes
real name in result.
(nautilus_file_get_string_attribute): Changed to call
_get_owner_as_string with the real name included.
* src/file-manager/fm-error-reporting.h:
* src/file-manager/fm-error-reporting.c:
(fm_report_error_setting_group), (fm_report_error_setting_owner):
Error messages for when our predictions fail for whether a
group or owner-setting operation will succeed.
* src/file-manager/fm-properties-window.c:
(file_name_pair_new), (file_name_pair_free): New helper functions
for passing around a file and string together (used in callbacks).
(group_change_callback), (activate_group_callback),
(create_group_menu_item), (synch_groups_menu),
(attach_group_menu), (owner_change_callback),
(activate_owner_callback), (create_owner_menu_item),
(synch_user_menu), (attach_owner_menu): New functions for setting
up widgets for display and control of owner and group.
(add_special_execution_flags): Use attach_title_field instead of
add_permissions_row_label.
(permissions_label_update), (add_permissions_row_label): Removed
these no-longer-needed functions.
(add_permissions_column_label): Change row number constants to
match new layout.
(create_permissions_page): Use static text for owner & group if
non-editable, option menu if editable.
(get_property_names): Now calls nautilus_g_str_list_sort.