2. Load/Save desktop-icon transparent state.
3. Add arrange icons code.
4. Add snap to grid option (default now).
5. Fixed viewer crash.
Still left to do:
- Nice config dialog to set the above variables.
* gdesktop.h: Added extern declarations for the
want_transparent_icons and want_transparent_text variables.
* gtrans.c (set_window_text): Now we use the new global variables
want_transparent_icons and want_transparent_text to decide how to
paint the pixmap and mask. The want_transparent_* variables can
thus be configured for the smartness/speed of your X server when
using shaped windows.
* gwidget.c (x_create_input): return 1 if the widget has been
initialized manually (there was no return value)
(x_create_buttonbar): to few arguments to sprintf (button number
was missing); return a value.
Sun Apr 12 02:48:26 1998 Norbert Warmuth <k3190@fh-sw.de>
* xv/xvscreen.c: removed duplicate (conflicting) definition
of do_enter()
- Double click should work.
- Dragging to other panels shoudl work
- Scrollbar in the viewer
- Entry widgets get their text selected at startup
- Prompts for command if default action does not exist for a filename
- Updated spanish translation.
Plus some other bugs I fixed.
Miguel
- Nicer dialog destruction (no flicker)
- refresh of panels after a drop.
- Pause after run is gone in the gnome edition.
- Improved layout for options dialog box.
- Checkbox widgets are implemented, they now work.
Miguel.
* gcache.c: Added an Image cache for all of the imlib-loaded
images to avoid destroying/reloading the images.
* gdesktop.c, gtrans.c: Use the image cache.
* gnome/gtools.c (translate_gdk_keysym_to_curses): renamed KEY_BACKTAB
to KEY_BTAB (the name ncurses uses)
* gnome/Makefile.in: Install the icon-files and the layout-file from $srcdir.
* autogen.sh: added support for builddir != srcdir
* doc/Makefile.in: The manual pages are generated files and
located in the builddir and not in the srcdir.
* src/find.c (find_file): Use the same hotkey for the panelize button
as we use with the external panelize command.
* src/myslang.h: --with-ncurses didn't compile: renamed
KEY_BACKTAB to KEY_BTAB (the name ncurses uses)
* src/dlg.c (dlg_key_event): likewise
* src/tkmain.c (x_init_dlg): added dummy function to make it
compile
* vfs/Makefile.in, extfs/extfs.ini, extfs/hp48: New external
filesystem to view and copy files to/from the HP48.
Now it should be possible to build and install gnome edition with
builddir != srcdir.
* gdesktop.c (icon_properties):
* gpageprop.c (item_properties): Modified to accept dentry title
changes as well.
(item_properties): Fixed base and fname confusion in call to
concat_dir_and_file().
* gprop.c (gprop_general_new):
(gprop_general_get_data): Renamed to general from icon. The
general Gprop now lets you enter the title and icon filename for a
dentry.
* gdesktop.c (icon_properties): Whoops, actually save the dentry.
(post_setup_desktop_icon): Moved the icon positioning call outside
of this function so that property-changed icons will not move on
the desktop.
* gdesktop.c (desktop_icon_context_popup): It is not necessary to
set the menu position.
(desktop_icon_context_popup): gtk_signal_connect_object_after to the menu
items with gtk_widget_destroy as a callback so that we can destroy
the menu widget appropriately.
* gdesktop.c (get_transparent_window_for_dentry): New function,
creates the proper transparent icon window for a dentry.
(post_setup_desktop_icon): New function, does post-setup stuff for
a desktop icon (setting it as a drop target, positioning it, etc.).
* gpageprop.c (item_properties): Now the dentry parameter is a
desktop_icon_t instead.
We now return a bitmask that indicates what stuff changed. The
caller can use this information to decide what to update, repaint, etc.
* gdesktop.h: Moved the icon_t and desktop_icon_t structures here.
* gpageprop.c (item_properties): Insert icon control if appropriate.
* gprop.c (gprop_icon_new):
(gprop_icon_get_data): Renamed from gprop_dir_*().
* gscreen.c (panel_action_properties): Re-reads panel only if necessary.
*gpageprop.c (item_properties): now returns TRUE if something got
changed, FALSE otherwise. This should be used to decide whether
to re-read the panel or not.
* gpageprop.c: #include "../vfs/vfs.h".
#include "dialog.h".
* gprop.c (gprop_dir_new):
(gprop_perm_new):
(gprop_general_new): Connect to the destroy signal of the toplevel
widget and destroy the Gprop structure on the callback.
* gdesktop.c (desktop_create_launch_entry): Support for the "Drop"
target in mc.ext now.
* Add support for dragging the icons on the desktop.
(desktop_icon_make_draggable): new function.
(drop_from_event): simplify.
(my_create_transparent_text_window): Get the motion notify event.
(drops_from_event): create a vector based on thge drop event.
(drop_cb): splitted, call url_drop for regular drops, otherwise it
is a icon drop.
(artificial_drag_start): new routine, used now by gscreen.c and
gdesktop.c
(drop_on_directory): Check result value of operation.
(desktop_icon_set_position): sane interface.
(stop_desktop): Flush all of our state to disk.
* gprop.h: New files gprop.[ch]. These create the property pages
for desktop entries.
* Makefile.in: Added gprop.[ch] to the rules.
* glayout.c: Put gnome_about_cmd as a callback for the About menu item.
* gscreen.c (filter_item_activate): Make it convert the glob
pattern to a regexp if appropriate.
1998-03-16 Federico Mena Quintero <federico@nuclecu.unam.mx>
* util.c (convert_pattern): Now the internal buffer is malloc()ed
instead of being static. This is required for long patterns.
(regexp_match): Free the pattern after calling convert_pattern().
* file.c (file_mask_dialog): Free the source_mask after calling
convert_pattern().
* gscreen.c (filter_items): New global variable full of filters.
Please, someone fill in the regexp parts, as I was too lazy to do
them :-)
(panel_create_filter): Now the filter has a very nice button that
pops up a menu for selecting the filter.
Today:
- New Menu layout! Weeee!.
- More mc commands exposed to the GNOME edition.
- Use gnome stock pixmap buttons.
- Use gnome stock for the menus.
- Now it is possible to quit the program :-)
- Various other bits.
If you can test it, I would appreciate it.
-Miguel.
* gmc-chargrid.c: Changed the struct attr with pointers mess with
something saner.
Added an in_resize flag to avoid calling our internal signal
handlers recursively.
(gmc_char_grid_draw): Added proper draw handler for our case; the
widget's window does not fill its allocation.
(paint): New wrapper for update_region(); it converts window
coordinates to row/column character coordinates.
(gmc_char_grid_expose): Use paint().
Context menu rearranged
Removed dead code
Shapped drag and drop
Different drag and drop icons depending on single/multiple drags
Artificial dnd is here (Thanks Elliot!)
cwd displays something interesting
Beginning of the internal viewer status display.
-miguel.
* gmc-chargrid.c (gmc_char_grid_get_size): New public function.
(gmc_char_grid_put_text): New public function. It is the same as
gmc_char_grid_put_str, but can take any arbitrary string plus its
length.
(gmc_char_grid_put_char, gmc_char_grid_put_str,
gmc_char_grid_put_text): These functions now take a background
pixel parameter --- the GmcCharGrid widget now supports fg/bg attributes.
* gmc-chargrid.h: Changed colors field to attrs.
* gmc-chargrid.h:
* gmc-chargrid.c: New Character Grid widget for the file viewer.
This is a very lean and fast widget for displaying a grid of
monospaced characters. Just like a crippled-down terminal.
is enabled; virtual fs setup dialog box is up; save setup; mkdir
link command is hossed. It is more than hossed for some stoopid
reason, the thing is selecting the first file in the panel
just after I talked to it. No matter how argumentative I get
with the code. Have to fix next.
Commit the bits I forgot to commit yesterday.
-miguel.
* gscreen.c (panel_file_list_size_allocate_hook): Now we
connect_after to the size_allocate signal and block the handler.
Things are still not perfect, though.
* gscreen.c
* gscreen.c (x_adjust_top_file): We no longer adjust the top
displayed filename.
(panel_build_selected_file_list): Fix for the transfered data.
(panel_drop_data_available): Now drop support uses the new
coords.x and coords.y fields from the DropDataAvailableEvent to