Commit Graph

122 Commits

Author SHA1 Message Date
Miguel de Icaza
44caa06a7b Small improvements 1998-12-07 17:08:59 +00:00
Miguel de Icaza
a2840e0a69 Forgot these files 1998-12-05 23:19:57 +00:00
Miguel de Icaza
4a72b02987 Metadata-aware Midnight Commander. WEEEcvs update . 1998-12-04 Miguel de Icaza <miguel@nuclecu.unam.mx>
* gscreen.c (load_imlib_icons): Make it use the new gicon files.

	* gicon.c, gicon.h: New files: they keep an image cache and
	provide the right icon to use based on the filename.  They use the
	GNOME metadata to fecth the "icon-filename" and "icon-inline-png"
	keys.

	* gdialogs.c (file_mask_dialog): Commented the help messages until
	the warnings are figured out.
1998-12-05 21:54:25 +00:00
Miguel de Icaza
6067afb1fc 1998-12-04 Federico Mena Quintero <federico@nuclecu.unam.mx>
* gdesktop.c (desktop_icon_info_new): Connect the signals for DnD
	so that we can drag icons from the desktop.
	(drag_begin): New function to set the drag cursor for icons on the desktop.
	(button_press): New function that stores the hot spot position for
	DnD cursors.
	(drag_data_get): New function to fetch the URI-list of selected icons.

	* gdialogs.c: Fixed some includes.

	* gdesktop.h: Removed the DnD target enum from here, since it is
	specific to each submodule.

	* gdnd.h: Moved the DnD target enums to here.  Added a new
	TARGET_MC_DESKTOP_ICON.

	* gdesktop.c (get_icon_snap_pos): Fixed icon snapping; the
	coordinates not being updated correctly.

	* gscreen.c (panel_drag_data_get): Free the uri list; it was being leaked.
1998-12-05 01:01:13 +00:00
Miguel de Icaza
7d035cca51 Make the tree a drag source -mig 1998-12-04 21:32:19 +00:00
Miguel de Icaza
2eab3ff5f6 1998-12-03 Federico Mena Quintero <federico@nuclecu.unam.mx>
* gdesktop.c (load_desktop_icons): Added arguments that specify
	where to place the newly-created icons.  This needs some tweaking still.
	(reload_desktop_icons): Now takes arguments for the position of
	the new icons.
	(drag_data_received): Pass in the drop position to reload_desktop_icons().

	* gscreen.c (panel_tree_drag_motion): Added missing variable declaration.

	* gdesktop.c (load_desktop_icons): Added an incremental flag that
	specifies whether icon creation is unconditional regardless of
	whether there is an icon for a file or not.
	(reload_desktop_icons): Use the incremental flag in load_desktop_icons().
	(drag_data_received): Reload the desktop incrementally, to avoid flicker.
	(desktop_icon_info_new): Use mc_lstat(), not mc_stat().  We do
	want to read symlinks, even dangling ones, if they exist.
	(load_desktop_icons): While we are reading the desktop directory,
	first place all the icons that have their metadata icon-position
	set, and build a list of the ones that don't.  *Then* place
	those.  This fixes overlapping icons on weird situations.

	* directory.xpm: Removed bogus garbage.  There was a stale pixmap here.

	* gdesktop.c (setup_desktop_dnd): Allow for GDK_ACTION_ASK as well.

	* gscreen.c (panel_widget_motion): The action argument to
	gtk_drag_begin() is a mask of possible actions, not a single action.

	* gdesktop.c (drag_data_received): Only reload the icons if the
	drop was successful.
1998-12-04 02:08:06 +00:00
Miguel de Icaza
ce835ac9eb Small fix -mig 1998-12-03 23:50:05 +00:00
Miguel de Icaza
dbf640d8ad 1998-12-03 Miguel de Icaza <miguel@nuclecu.unam.mx>
* gscreen.c (panel_tree_drag_motion): Improve interactivity
	(x_create_panel): Add a little decorating frame.
1998-12-03 22:08:04 +00:00
Miguel de Icaza
ac7fc9b8b2 1998-12-03 Miguel de Icaza <miguel@nuclecu.unam.mx>
* gscreen.c (panel_create_icon_display, panel_create_file_list):
	Hook up to drag_begin and drag_end events.

	(panel_tree_drag_motion): Either queue a scroll on the tree, or
	queue an open-directory event.

	(panel_tree_scroll): Scroll the tree when the drag pointer is in
	one of the boundaries of the tree.

	(panel_tree_scrolling_is_desirable): new function to figure out if
	it is a good plan to scroll the tree view instead of opening it.

	(panel_chdir): Do not sync with the tree when we are in the middle
	of a drag and drop operation.

	(panel_drag_begin, panel_drag_end): New functions to keep track
	of the dragging operations.
1998-12-03 21:56:11 +00:00
Miguel de Icaza
414df0f7b7 1998-12-02 Miguel de Icaza <miguel@nuclecu.unam.mx>
* gscreen.c (panel_tree_drag_data_received): Perform drag and drop
	operations on the Tree.
1998-12-03 16:10:25 +00:00
Miguel de Icaza
c0ac4984ab 1998-12-02 Federico Mena Quintero <federico@nuclecu.unam.mx>
* gdesktop.c (setup_desktop_dnd): New function to set up drops
	to the root window.
	(setup_xdnd_proxy): Function by Owen Taylor to set up a DnD proxy
	window.
	(drag_data_received): Function to handle drops on the root window.
	(desktop_destroy): Destroy the DnD setup.
	(reload_desktop_icons): New function to reload the desktop.

	* gscreen.c (drag_types, drop_types): Removed url-list; only
	uri-list should be there.

	* gdesktop.h: Removed TARGET_URL_LIST from the DnD enumerations.
1998-12-02 23:37:27 +00:00
Miguel de Icaza
befc99bf8d 1998-12-02 Federico Mena Quintero <federico@nuclecu.unam.mx>
* gtkdtree.c (gtk_dtree_do_select_dir): Made static, as it is for
	internal use only.
	Fixed a little bunch of compiler warnings.

	* gscreen.c (x_fill_panel): Use gtk_dtree_select_dir(), not
	gtk_ctree_do_select_dir().

	* gpopup.c (gpopup_do_popup): Fixed incorrect assertion and
	actually create the menu (doh).
	(gpopup_do_popup): Do the same magic as in gnome-popup-menu to
	fetch the item that was activated in the menu.  Keep this code out
	of reach of children.
	(fill_menu): New function to fill the menu using the
	gnome-popup-menu magic for fetching the activated menu item.
	Removed ifdef'ed code.
1998-12-02 20:24:25 +00:00
Miguel de Icaza
dabe341f88 1998-12-01 Miguel de Icaza <miguel@nuclecu.unam.mx>
* configure.in (slang_use_system_installed_lib): Define slang
	here, to avoid having this on LIBS.

1998-11-26  Herbert Valerio Riedel  <hvr@hvrlab.ml.org>
1998-12-02 06:51:40 +00:00
Miguel de Icaza
e265fe2067 1998-12-01 Federico Mena Quintero <federico@nuclecu.unam.mx>
* glayout.c (file_menu): Use view_cmd and view_simple_cmd in the
	menu instead of panel_action_view and
	panel_action_view_unfiltered, respectively.

	* gpopup.c (create_regexp_actions): Create the menu items using
	gnome-app-helper, for visual consistency.
	(create_actions): Likewise.  Also, fixed S_ISLNK() confusion.
	(get_label_text): Extract the label from the GnomeUIInfo item in
	an ugly way.
1998-12-02 06:33:07 +00:00
Miguel de Icaza
aaa7b5e9a2 Lots of changes:
- GNOME edition now compiles without any trace of the text mode
  dependencies.

- We no longer link with libraries we do not use (crypt, gpm), this
  fixes the recent bug reports.

- More tree updates, enhancements.

Miguel.
1998-12-02 05:18:20 +00:00
Miguel de Icaza
a065078165 1998-12-01 Miguel de Icaza <miguel@nuclecu.unam.mx>
* gscreen.c (panel_switch_new_display_mode): Destroy the old
	widget.  Add the list view to the proper table.

	* glayout.c: Remove the exit menu option.

	* gtree.c (gtk_dtree_contains): New routine used to avoid
	duplicate entries in the tree display.
1998-12-01 21:56:54 +00:00
Miguel de Icaza
4dbadb32ec Sync to laptop - Federico 1998-12-01 06:23:50 +00:00
Miguel de Icaza
deec804b4a More work on the tree. It is duplicating entries, you have been warned -mig 1998-12-01 06:12:34 +00:00
Elliot Lee
d21198eb61 s/gtk_container_border_width_/gtk_container_set_border_width/
Remove OBJ_DIR junk from autogen.sh.
1998-12-01 05:13:40 +00:00
Miguel de Icaza
7ee95e588f Sync sync - Federico 1998-12-01 00:33:02 +00:00
Miguel de Icaza
43931af464 Sync from laptop to desktop - Federico 1998-11-30 16:59:23 +00:00
Miguel de Icaza
a175deb9c5 Disable the Tree autosync until I make it less stupid to avoid expensive rescans -mig 1998-11-29 08:22:20 +00:00
Miguel de Icaza
1a9c7f3274 IconList changes for gmc 1998-11-29 07:50:44 +00:00
Miguel de Icaza
428265fbc5 1998-11-28 Miguel de Icaza <miguel@nuclecu.unam.mx>
* gwidget.c (x_update_input): Use gtk_editable_changed on the entry.
	(x_create_listbox): Fix more CList api change.
	* gscreen.c (CLIST_FROM_SW): Adapt to new GtkScrolledWindow
	inheritance.
1998-11-29 03:40:23 +00:00
Miguel de Icaza
5fce940013 1998-11-27 Miguel de Icaza <miguel@nuclecu.unam.mx>
* gscreen.c (x_create_panel): Set the usize for the ministatus
	label to be (0, -1), this means: do not request any horizontal
	space, use any vertical space given.

	Put the ministatus inside an hbox, and use
	gtk_container_set_resize_mode in this hbox to stop any queue
	events from being propagated up in the hierachy of widgets

	This kills all of the CList/GnomeIconList/Scrollbar/Toolbar
	flickering now.
1998-11-28 00:01:38 +00:00
Miguel de Icaza
e82ec47dd3 1998-11-23 Federico Mena Quintero <federico@nuclecu.unam.mx>
* gdesktop.c: Put in a bunch of stubs for the functions in
	filegui.h.  These will be removed as the dialogs get
	custom-written for Gnome.

	* gmetadata.[ch]: Changed the function names to "gmeta_*".

	* gscreen.c (CLIST_FROM_SW): Use scrolled_window->child, as
	viewport is obsolete.

1998-11-23  Federico Mena Quintero  <federico@nuclecu.unam.mx>

	* dlg.c (dlg_try_hotkey): Removed unused declaration of input_event.
	(dlg_key_event): Return 1 if handled the tab key.

	* filegui.h: Added prototypes for file_progress_show_{source,target,deleting}().
1998-11-23 22:09:58 +00:00
Miguel de Icaza
13bd569914 1998-11-12 Miguel de Icaza <miguel@nuclecu.unam.mx>
* gmain.c (session_save_state): Use gnome_geometry_string.
1998-11-12 18:08:53 +00:00
Miguel de Icaza
c346f8892e 1998-11-10 Federico Mena Quintero <federico@nuclecu.unam.mx>
* Makefile.in: Removed gtrans.c from the list of sources.

	* gdesktop-icon.c: #ifdef cleanups.

	* gscreen.c (panel_create_file_list): Doh.  Return the scrolled
	window, not the clist.

	* gdnd.c (get_action): Implement the DnD actions menu.

1998-11-10  Federico Mena Quintero  <federico@nuclecu.unam.mx>

	* setup.c: Removed the icons_snap_to_grid and
	want_transparent_{icons,text} options.
1998-11-11 00:05:12 +00:00
Miguel de Icaza
2c1226f796 The clist is not working, I'll fix that when I get home - Federico
1998-11-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>

	* gdnd.c: New file that handles all the DnD stuff.  Mainly used to
	clean up gdesktop.c.

	* gscreen.c (panel_icon_list_drag_data_received): Use
	gdnd_drop_on_directory().
	(CLIST_FROM_SW): Added this macro to fetch the clist from the
	scrolled window in panel->list.
	(panel_create_file_list): Create a scrolled window and put the
	clist inside it.  This is required per the new clist API.
	(panel_configure_file_list): Use the scrolled window's adjustment.
	(panel_file_list_size_allocate_hook): Use the scrolled window
	instead of the clist.
	(panel_file_list_compute_lines): Use the scrolled window instead
	of the clist.
	(panel_file_list_configure_contents): Use the scrolled window
	instead of the clist.
	(panel_create_file_list): Do the DnD setup here, not in the
	realization callback.
	(x_create_panel): Do not realize the panel explicitly.
	(panel_create_pixmaps): Create the pixmaps using imlib instead of
	Gdk.
1998-11-10 02:28:34 +00:00
Miguel de Icaza
f64d6da2e4 1998-10-30 Federico Mena Quintero <federico@nuclecu.unam.mx>
* gdesktop.c: We are now using the new desktop icon code.  It is
	not yet complete, but what is there does work.  We have icon
	creation, auto-layout and snapping.  Next step is drag and drop
	and popup menus.

	* glayout.c: #ifdef out the stuff that uses the old desktop code.
	I will replace it gradually.
	* gmain.c: Likewise.
	* gscreen.c: Likewise.
1998-10-30 23:22:35 +00:00
Miguel de Icaza
18cd0a5259 Step one at DnD in clist -mig 1998-10-28 02:06:34 +00:00
Miguel de Icaza
3a4a872fd2 Sync from laptop: Get CList mode working; Parts of the window detection code -mig 1998-10-28 01:47:57 +00:00
Miguel de Icaza
cd9efdc2dd Yes, we are a drop target. With all of the features requested on the
mail I got from DrMike some months ago :-)

It needs a bit of debugging still

Miguel
1998-10-21 18:05:08 +00:00
Miguel de Icaza
809d80eb90 Ok, Midnight Commander is now a nice, wonderful Drag source for the
new DnD.  Boy, is it cute.

Question:  should I use the default icon for DnD provided by Gtk+
or use the old icons I have? the old icons are a bit more sexy.

Miguel.
1998-10-21 01:09:50 +00:00
Miguel de Icaza
114209e3eb copy files trough cvs 1998-10-20 23:44:39 +00:00
Miguel de Icaza
e591c91db2 - Make input handling work nicely on the icon list.
- First pass at the new drag and drop protocol, using the
  default handlers, more work on this tomorrow.
1998-10-20 05:37:45 +00:00
Miguel de Icaza
215cd45d16 Sync for laptop, do not touch this for now 1998-10-20 01:52:16 +00:00
Miguel de Icaza
0a024abfb5 In-line icon renames actually rename the file. WEEEEEEEEEE! 1998-10-14 06:26:05 +00:00
Miguel de Icaza
d6fcd9c2b7 VFS source code cleanup.
MC now depends on glib (currently only the assertions are used).
VFS structure declaration fixes.
Uses the new icon list (it is dog slow, need to fix this tonight at home).
1998-10-14 02:56:18 +00:00
Miguel de Icaza
20157ab85e 1998-09-25 Miguel de Icaza <miguel@nuclecu.unam.mx>
* gscreen.c: Hook to invoke the editor from the context menu.
1998-09-25 23:07:23 +00:00
Paul Sheer
5036dfc48f call to edit added for gnome, menus and F4 key now works 1998-09-14 20:35:21 +00:00
Owen Taylor
86d9078964 Mon Aug 31 10:46:32 1998 Owen Taylor <otaylor@redhat.com>
* gscreen.c (display_mini_info): Removed calls to
	gtk_clip_label_set() hack, since its cut-n-paste code didn't work
	with new GTK's. If excessive resizes are a problem, they can be
	solved by adding an adjustment around the label, and calling
	gtk_container_set_resize_mode().
1998-08-31 14:40:49 +00:00
Miguel de Icaza
b95d74c493 Make it work with recent Gtk changes 1998-08-29 21:38:02 +00:00
Raja R Harinath
25ed8288b9 * gdesktop.c: Include "mad.h", for xmalloc.
* gkey.c: Likewise.
* gscreen.c: Likewise.
(panel_create_file_list): Use `g_free', not `free'.
1998-08-20 22:04:52 +00:00
Miguel de Icaza
3f35312dad Minimal fix 1998-08-14 19:38:50 +00:00
Vincent Renardias
3bc1fbeb25 Tue, 7 Jul 1998 13:16:38 +0200 [Vincent]
* de.po: completed translation (contributed by <joey@debian.org>)
1998-07-07 11:18:51 +00:00
Miguel de Icaza
a533715938 Cosmetical fix for using the new rounded boxed selection in gnome-icon-list -mig 1998-06-08 00:30:18 +00:00
Miguel de Icaza
24116079fb *** empty log message *** 1998-05-26 05:01:24 +00:00
Miguel de Icaza
a416ee4f7b Cool changes:
1998-05-22  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* gwidget.c (x_create_input): Disable the use of the GNOME entries
	for now, as they are very slow.  We need to figure out what is
	wrong with this.

	With this change, dialog boxes close quickly instead of taking
	ages to close.

	* gscreen.c, gdesktop.c (file_popup_add_context, file_popup):
	Share the context menu code in gdesktop.c and gscreen.c.  The
	desktop pop up menus now include all of the stuff that would have
	appeared in the Panel.

	* gdesktop.c (desktop_icon_remove): Remove the file associated
	with this desktop entry if it is on the ~/desktop directory.
1998-05-23 00:55:03 +00:00
Miguel de Icaza
f7851d17c2 1998-05-21 Miguel de Icaza <miguel@nuclecu.unam.mx>
* gscreen.c (load_dnd_icons): Remove the code and the icons that
	we had here privately.  Use new gnome-stock functionality
	instead.
1998-05-22 01:07:00 +00:00