Commit Graph

179 Commits

Author SHA1 Message Date
Miguel de Icaza
26af8110ec Put back the call to Jonathan's code now that code is on CVS 1999-02-06 01:30:01 +00:00
Miguel de Icaza
9ff6038fc0 Revert Jonathan's patch for use gpopup2 until it is actually commited to CVS 1999-02-06 00:11:39 +00:00
Jonathan Blandford
0dc1ef5771 1999-02-05 Jonathan Blandford <jrb@redhat.com>
* gcmd.c (gnome_reverse_selection_cmd_panel): new function -- does
	good things

	* gscreen.c (panel_icon_list_select_icon): uses new popup menu
	(panel_icon_list_button_press): ditto

	* gpopup2.c (gpopup_do_popup2): new implementation of popup
	menu.  Many changes -- almost all internal.  Much cleaner now...
	Off to England.
1999-02-05 23:52:44 +00:00
Miguel de Icaza
b698ebfe03 1999-02-03 Federico Mena Quintero <federico@nuclecu.unam.mx>
* gdnd.c (gdnd_validate_action): Show the correct feedback when
	dragging URLs.
1999-02-04 03:35:26 +00:00
Miguel de Icaza
06e379de33 1999-02-03 Miguel de Icaza <miguel@nuclecu.unam.mx>
* gscreen.c (panel_file_list_configure_contents): Make the icon on
	the type column be displayed.
	(panel_file_list_select_row): Removed dead code.
	(panel_file_list_press_row): Select the row before calling
	gpopup_do_popup.
1999-02-03 21:55:11 +00:00
Miguel de Icaza
912d258e8a 1999-02-03 Federico Mena Quintero <federico@nuclecu.unam.mx>
* gscreen.c (drop_types): Allow dropping URLs on file panels.
1999-02-03 11:49:33 +00:00
Miguel de Icaza
04c4abd818 1999-02-03 Federico Mena Quintero <federico@nuclecu.unam.mx>
* gdnd.c (gdnd_validate_action): Added an "on_desktop" argument;
	this specifies that the user is dragging over the desktop.  Added
	cases for drags of desktop icons and URLs.
	(gdnd_perform_drop): New public function to handle drops.  This is
	now the master function to handle drops -- use this to make all of
	MC consistent.
	(drop_on_directory): Made static and renamed from
	gdnd_drop_on_directory().  Made it fit for use by
	gdnd_perform_drop().
	(drop_url_on_directory): New function to drop an url on a
	directory, moved over from gdesktop.c.
	(drop_uri_list_on_directory): New function to handle drops of URI
	lists on a directory.
	(drop_on_file): New function to handle drops on a non-directory
	file entry.  This is moved over from gdesktop.c,
	desktop_icon_drop_uri_list().  This is yet to be finished.

	* gdesktop.c (desktop_icon_drop_uri_list): Fix memory leak.
	(desktop_drag_motion): Use gdnd_validate_action().
	(dnd_icon_targets): Allow dropping URLs on icons.
	(icon_drag_motion): Use gdnd_validate_action().
	(desktop_drag_data_received): Use gdnd_perform_drop().
	(icon_drag_data_received): Use gdnd_perform_drop().

	* gscreen.c (panel_icon_list_drag_data_received): Use
	gdnd_perform_drop().
	(panel_clist_drag_data_received): Use gdnd_perform_drop().
	(panel_tree_drag_data_received): Use gdnd_perform_drop().

	* gcmd.c (gnome_about_cmd): Fixed Foundation typo, and updated the
	copyright date.
1999-02-03 11:46:01 +00:00
Miguel de Icaza
0c3b1bafe5 Do not include old code 1999-02-01 00:56:16 +00:00
Timur Bakeyev
4638935351 gscreen.c mods...
Mon Feb  1 00:49:18 1999  Timur Bakeyev <mc@bat.ru>

	* gscreen.c (panel_configure_file_list): Add central justification,
	as we got it (useless, imho :)
1999-01-31 23:08:33 +00:00
Jonathan Blandford
abc8c20b29 1999-01-28 Jonathan Blandford <jrb@redhat.com>
* gnome-file-property-dialog.c (create_settings_pane): We only let
	you set info if we are a regular file, or a link to a regular file.

	* gdesktop-icon.c (desktop_icon_reshape): Cut-n-paste error fixed
	by Quartic.

1999-01-27  Jonathan Blandford  <jrb@redhat.com>

	* gnome-file-property-dialog.h (struct _GnomeFilePropertyDialog):
	Now make open field mandatory and icon selection optional.
	* gnome-file-property-dialog.c: as above

	* gpopup.c (panel_action_properties): only allow setting images if
	we_can_afford_the_speed.

	* gicon.c: make we_can_afford_the_speed non-static
1999-01-28 05:48:02 +00:00
Miguel de Icaza
c44dd59069 1999-01-26 Federico Mena Quintero <federico@nuclecu.unam.mx>
* gscreen.c (panel_clist_motion): Stop the emission of the
	motion_notify_event signal so that it does not reach the clist.
	We do not want it to select rows while dragging.
	Replaced copy_strings() with g_strconcat().

	* gdnd.c (gdnd_validate_action): Do not override GDK_ACTION_ASK.

	* gdesktop.c: Updated the TODO list at the top of the file.
1999-01-27 02:55:43 +00:00
Timur Bakeyev
be7cbf3768 Glibing... (3)
Wed Jan 27 03:14:46 1999  Timur Bakeyev <mc@bat.ru>

	* Converted memory managment to Glib - where it wasn't done. Now we
	use g_new()/g_malloc()/g_strdup()/g_free() routings. copy_strings() re-
	placed by g_strconcat(), and sprintf() by g_snprintf(). Some other,
	minor changes.
1999-01-27 01:14:57 +00:00
Miguel de Icaza
9a43865fa6 Fix my regex.h breakage 1999-01-26 23:46:11 +00:00
Miguel de Icaza
f97cb04b55 1999-01-26 Federico Mena Quintero <federico@nuclecu.unam.mx>
* gscreen.c (panel_setup_drag_scroll): Renamed from
	panel_setup_drag_motion().
	(panel_clist_drag_motion): Use gdnd_validate_action().
	(panel_clist_motion): Return immediately if the event window is
	not the clist_window.  Otherwise, forward the event to
	panel_widget_motion().

	* gdnd.c (gdnd_find_panel_by_drag_context): New public function to
	find a panel based on a drag context.  This is basically the old
	find_panel_owning_window() made public.
	(gdnd_drop_on_directory): Test for the source widget being a tree,
	and if so, do not use the default behavior for panels.
	(gdnd_validate_action): New function to compute the final drag
	action given some conditions.  This is now used to make dragging
	behavior consistent across the desktop and the file panels.
1999-01-26 06:53:48 +00:00
Miguel de Icaza
9c81ea49fd 1999-01-25 Federico Mena Quintero <federico@nuclecu.unam.mx>
* gdnd.c (get_action): Sensitize the menu items based on the
	allowed actions in the drag context.
	(actions): Add some underlined accelerators for the action menu.

	* gdesktop.c (icon_drag_motion): Use S_ISDIR() in addition to
	fe->f.link_to_dir.

	* gscreen.c (panel_file_list_scrolled): Removed this function, as
	it was not used for anything useful.

	* gdnd.c (gdnd_drop_on_directory): Duh.  Use context->action, not
	context->suggested_action.

1999-01-25  Federico Mena Quintero  <federico@nuclecu.unam.mx>

	* Makefile.am (libvfs_la_SOURCES): Added utilvfs.h.
	* Make-mc.in (VFSHDRS): Likewise.
1999-01-25 16:50:38 +00:00
Miguel de Icaza
7913e20514 Use the new memory-friendly icon list 1999-01-22 02:14:00 +00:00
Miguel de Icaza
7dec59687e 1999-01-21 Federico Mena Quintero <federico@nuclecu.unam.mx>
* gdesktop.c (desktop_drag_data_received): Do not force links on
	the desktop.

	* gscreen.c (panel_create_file_list): Do not use
	GTK_DEST_DEFAULT_ALL for the drop site.  Only use
	GTK_DEST_DEFAULT_DROP, since we need to check motion ourselves.
	(panel_clist_drag_motion): Do not allow dropping on the clist buttons.
	(panel_clist_button_press): Do not assign the
	panel->maybe_drag_start flag if the user clicked outside the clist_window.

	* gdesktop.h: Removed old crud (desktop_icon_t, icon_t).
1999-01-22 00:59:11 +00:00
Miguel de Icaza
baa4a4d321 1999-01-21 Federico Mena Quintero <federico@nuclecu.unam.mx>
* gscreen.c (panel_create_file_list): Added GDK_ACTION_ASK to the
	destination actions.
	(panel_create_icon_display): Likewise.
	(panel_create_tree_view): Likewise.

	* gdesktop.c (desktop_drag_motion): If the user explicitly
	requested action ASK, then do not make feedback show MOVE.

	* gscreen.c (panel_widget_motion): Pass in all drag actions now
	that Gtk handles button 2 by itself.
1999-01-21 17:59:30 +00:00
Miguel de Icaza
2a9956ad2b 1999-01-20 Miguel de Icaza <miguel@nuclecu.unam.mx>
* gscreen.c: Selection code now is simpler and should be easier to
	use in the listing modes.
1999-01-21 03:44:03 +00:00
Miguel de Icaza
88cd0bdfc4 1999-01-20 Federico Mena Quintero <federico@nuclecu.unam.mx>
* gicon.h (gicon_image_to_name): Added prototype for
	gicon_image_to_name().

	* gicon.c (gicon_get_icon_for_file):
	(gicon_get_icon_for_file_speed): Added a "directory" argument.
	It is needed because the file_entry structure only contains the
	pruned filename, and we need the complete name for the metadata
	functions.

	* gdesktop.c (desktop_icon_info_new): Pass the directory to
	gicon_get_icon_for_file_speed().

	* gpageprop.c (item_properties): Build the directory name and pass
	it to gicon_get_icon_for_file_speed().

	* gscreen.c: Do not #include "directory.xpm".  Do #include "setup.h".
	Removed unused function button_switch_to().

	* gscreen.c (panel_fill_panel_icons): Pass the directory to
	gicon_get_icon_for_file().

	* gscreen.c (panel_create_tree_view): Allow button 2 to start the
	drag as well.
	(panel_clist_scrolling_is_desirable): Make both scrolling
	thresholds consistent.  Also, do not allow scrolling past the
	correct limit.
	(panel_icon_list_scrolling_is_desirable): Likewise.
	(panel_tree_scrolling_is_desirable): Likewise.
	(panel_clist_scroll): Do not allow scrolling past the correct limits.
	(panel_icon_list_scroll): Likewise.
	(panel_tree_scroll): Likewise.
1999-01-20 10:40:21 +00:00
Jonathan Blandford
6cc4269beb 1999-01-19 Jonathan Blandford <jrb@redhat.com>
* gdialogs.c (file_op_context_create_ui): OP_DELETE now has it's
	very own dialog. whee.

	* gscreen.c (panel_create_pixmaps): now we use dir-open.xpm
	instead of the (apparently) ugly yellow one.
1999-01-20 02:16:09 +00:00
Jonathan Blandford
3065734c22 1999-01-18 Jonathan Blandford <jrb@redhat.com>
* gscreen.c (x_create_panel): chnaged padding on the Filter label
	(do_ui_signal_connect): new view switching code.  Toolbar now works
	(go_home): new function -- takes one home
1999-01-18 21:56:59 +00:00
Jonathan Blandford
366f5e774b don't remember exactly what I did -- much of this is from before the CVS
machine went down and I went on vacation.  Newer toolbars...  It now
compiles too (gicon.c had some broken code in it)
1999-01-18 21:25:55 +00:00
Miguel de Icaza
d24a313845 Small bug fixes 1999-01-17 04:17:20 +00:00
Miguel de Icaza
70d31806e1 Memory leak fix.
Double-free fixed.
Tree will do proper thing when dealing with symlinks

Miguel.
1999-01-15 19:02:39 +00:00
Miguel de Icaza
e0faaa671f Merges from the FileOpContext-changes branch. Please see
the ChangeLogs for full information. - Federico
1999-01-14 01:10:32 +00:00
Jonathan Blandford
7b8969cbbc 1999-01-12 Jonathan Blandford <jrb@redhat.com>
* gcmd.c (gnome_open_files): now you can open multiple files.
	* glayout.c: layout changed some.  moved run command.
	commented out ftplink/mkdir command for now.  gonna do mkdir
	next.  Why is the ftplink command needed?
1999-01-12 21:50:25 +00:00
Miguel de Icaza
ca39a2e6ee Windows NT portability fixes from Ilya.
Added create directory option to gnome menu.
Removed debugging messages

Miguel.
1999-01-08 20:38:27 +00:00
Miguel de Icaza
fc124973c9 1999-01-07 Miguel de Icaza <miguel@nuclecu.unam.mx>
* gscreen.c (panel_icon_list_drag_data_received): Do not update
	contents if nothing was done (ie, the drop was cancelled).
	(panel_create_file_list): Duh.  Restore this, as, ahem, we dont
	have banding selection on CList.
	(panel_icon_list_select_icon): Open the new panel only on button
	release.
	(panel_file_list_select_row): New panel started on clist when you
	press middle button.

	(panel_create_file_list): Ahaha!  I found that CList now has a
	gtk_clist_set_buttion_actions.  Go figure why we need this and why
	it was implemented, but now buttons work as they should on clist.
1999-01-08 03:03:58 +00:00
Miguel de Icaza
edf3d5bee0 1999-01-07 Miguel de Icaza <miguel@nuclecu.unam.mx>
* gscreen.c (panel_icon_list_drag_data_received): Do not update
	contents if nothing was done (ie, the drop was cancelled).

	* gdnd.c (gdnd_drop_on_directory): Do nothing if the files dragged
	are on the same directory we are.
1999-01-08 01:53:42 +00:00
Jonathan Blandford
d92f1d1971 1999-01-07 Jonathan Blandford <jrb@redhat.com>
* gcmd.c (gnome_filter_cmd): Function filled in now.  Actually
	works (amazing!.)  Next: put a history on it, and maybe an event
	box for the label.

Also, moved delete file around -- apparently it's proximity to Close was
bothering people.
1999-01-07 21:40:50 +00:00
Jonathan Blandford
8651cbfe54 rudimentary begininnings of a new, revitalized status bar.
Comments are welcome, but probably a tad premature at this point.
dobedobedobedo...

man it's late...
1999-01-07 06:53:31 +00:00
Jonathan Blandford
e19f2af33f 1999-01-07 Jonathan Blandford <jrb@redhat.com>
* gscreen.c (x_create_panel): now uses gnome-appbar instead of the
	old, psuedo status bar.
1999-01-07 05:19:09 +00:00
Miguel de Icaza
b7744cce9d Fix the problem reported by Jonathan regarding selection not working in main gmc window -mig 1999-01-06 07:35:25 +00:00
Miguel de Icaza
c9fcd8fb86 1999-01-03 Miguel de Icaza <miguel@nuclecu.unam.mx>
* gscreen.c (x_reset_sort_labels): Various fixes to fix some of my
	recent changes.  I bet Jonathan found that things were not quite
	working.  Sorry for the previous untested changes.

	This also fixes the bugs reported on gnome-list regarding the
	CList problems.  This is the correct fix (basically, we were using
	a CList that was configured in one way, even if the display format
	had changed.  Now, the CList is kept in sync with the format by
	calling a routine that somehow got dropped during some recent
	changes).

	* gtools.c (query_dialog): Simplified.
1999-01-04 07:29:48 +00:00
Miguel de Icaza
d0c5a70b4f Typo fix. It was making the code crash 1999-01-03 21:38:35 +00:00
Jonathan Blandford
d6016ea709 1999-01-02 Jonathan Blandford <jrb@redhat.com>
* gcmd.c (gnome_sort_cmd): pretified
        (gnome_select_all_cmd): New command -- selects all files (in
        theory).

        * glayout.c: rearrange the edit menu some.


        * gscreen.c (x_create_panel): new icon view icons -- brief and
        custom.
1999-01-02 22:06:00 +00:00
Miguel de Icaza
597881b50f 1999-01-01 Miguel de Icaza <miguel@nuclecu.unam.mx>
* gscreen.c (panel_fill_panel_list): Assertion that will pin point
	if a CList gets out of sync with the panel->format.

1999-01-01  Momchil 'Velco' Velikov <velco@fadata.bg>

	* gscreen.c (panel_fill_panel_list): NULL terminate the column
	array.  This is strange, as it should not need the ending NULL.

1999-01-01  Jonathan Blandford  <jrb@redhat.com>
1999-01-02 02:21:14 +00:00
Miguel de Icaza
8b98d1ebb1 Attempts to get drag working again; Autoscroll works on listings 1999-01-01 02:04:59 +00:00
Miguel de Icaza
d24269087f Lots of usability changes for the desktop.
1998-12-29  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* gdesktop.c (desktop_icon_delete): New function, used for
	dicon_delete.
	(load_desktop_icons): Implemented the incremental reloading of
	desktop icons.  This should make the code much nicer.
	(reload_desktop_icons): Call x_flush_events to force a display at
	that point.

	* gpopup.c (dicon_delete): Implement this operation.
	(desktop_icon_execute): Use the existing implementation for
	launching desktop icons instead of a new hacked up version

	(desktop_icon_actions): Until copy/move is implemented, do not
	even list them to the user.

	* gdesktop.c (create_desktop_dir): No trashcan setup until it
	works.

	* gscren.c (panel_widget_motion): Use button 2 for dragging and
	asking.
1998-12-30 02:51:01 +00:00
Miguel de Icaza
94d3dbac8b use notebook instead of hack, fixes 1998-12-30 00:32:41 +00:00
Elliot Lee
913f34276e well, it does 'open' and 'properties' on the desktop icons, SLIGHTLY.
gmc is a big piece of junk.
1998-12-21 23:29:46 +00:00
Miguel de Icaza
7071b26a27 Compilation fixes + 3-button fixes 1998-12-17 08:28:05 +00:00
Miguel de Icaza
3ac4cfa567 Merge from MC_MIME_TYPE branch. It has so many bug fixes you wont
even recognize it.

1998-12-16  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* gdialogs.c (create_op_win): Remove second spurious packing.
	(create_op_win): OP_MOVE uses the same stuff OP_COPY does.  Fix
	this.
	(file_progress_show_target): More compliant to the original
	functions.
	(file_progress_show_source): More compliant to the original
	functions.

	* gdesktop.c (create_desktop_dir): Fix mem leak.

Miguel.
1998-12-17 04:51:24 +00:00
Miguel de Icaza
9d3578f803 Revert last commit, this should have gone into a branch 1998-12-16 06:33:55 +00:00
Miguel de Icaza
cb83d83796 Commiting the MIME-based Midnight Commander code into the MC_MIME_TYPE branch 1998-12-16 06:25:41 +00:00
Miguel de Icaza
32d4527d2b WEEE! Updated Mime Stuff bindings inthe Midnight Commander now 1998-12-15 22:42:33 +00:00
Miguel de Icaza
57be822a72 one line bug fix to get gmc to compile with new gnomedock 1998-12-15 06:35:51 +00:00
Owen Taylor
923abee939 Mon Dec 14 11:39:38 1998 Owen Taylor <otaylor@redhat.com>
* gscreen.c (x_create_panel): Keep up with changes
	to GtkDockItem.
1998-12-14 16:38:38 +00:00
Miguel de Icaza
5e69e9af71 Go figure how this was missing now. 1998-12-14 04:23:33 +00:00