tree updates from the treestore.
This speeds up a lot the display, as the GtkCTree seems to be
particularly bad at handling changes to the tree and keeping
the display in sync.
Makefile fixes to support SHELL= during compilation.
Miguel.
Wed Jan 27 03:17:44 1999 Timur Bakeyev <mc@bat.ru>
* Converted memory managment to Glib. Now we use g_new()/g_malloc()/
g_strdup()/g_free() routings. Also, copy_strings() replaced by
g_strconcat(), strcasecmp() -> g_strcasecmp(),and sprintf() by
g_snprintf().
* Some sequences of malloc()/sprintf() changed to g_strdup_printf().
* mad.[ch]: Modified, to work with new GLib's memory managment. Fixed
a missing #undef for tempnam, which caused dead loop. Add several new
functions to emulate GLib memory managment.
*main.c, mad.[ch]: Add a new switch "-M", which allows to redirect MAD
messages to the file.
* util.[ch], utilunix.c: Modified, deleted our variants of strcasecmp()
and strdup() - we have g_ equivalences. Remove get_full_name() - it is
similar to concat_dir_and_file(). Some other tricks with g_* functions.
* global.h: Modified, extended. Now it is main memory mangment include -
i.e. all inclusions of <stdlib.h>, <malloc.h>, <glib.h>, "fs.h", "mem.h",
"util.h" and "mad.h" done there. This elimanates problem with proper or-
der of #include's.
* All around the source - changed order of #include's, most of them gone
to global.h (see above), minor changes, like "0" -> NULL in string func-
tions.
Make gtkdtree use the treestore cache.
Next step: store the ->scanned attribute of tree_entry (otherwise, no
speedup will be noticed at all). It is a 10 minute hack, but I will go
have dinner now.
Miguel.
* configure.in: Deleted du checks
* INSTALL: Deleted --with-dusum documentation.
* doc/mc.sgml, mc.1.in: Completed documentation about the Options/
Configuration dialog. Added Advanced chown subsection. Deleted
variables from the Special settings section which are now covered
by the configuration dialog.
* gnome/layout: Adapted for the new option Compute Totals in the
Configuration dialog.
* screen.c (recalculate_panel_summary): new function which recalculates
the summary information for the mini-status.
* screen.c (panel_reload): use recalculate_panel_summary
* screen.c (do_file_mark): Honour that dirsizes computed is now a
per entry flag.
* option.c: Added Compute Totals to the configuration dialog.
* file.c (compute_dir_size): made non static
(panel_operate_flags): Don't compute directory sizes if verbose
operation are off.
* cmd.c (dirsizes_cmd): Rewritten to use compute_dir_size as suggested
by Miguel, i.e. get rid of du. Now the dirsizes_cmd honours a
selection and computes sizes only for marked directories. Possible
improvement: add a dialog (or C-C?) to abort computation.
* dir.h (file_entry), panel.h (WPanel): Made the dirsizes computed
flag a per file flag.
* dir.c, find.c, panelize.c, screen.c: Adapted to new file_entry and
WPanel structure.
* features.inc: Deleted DUSUM information
* mc.hlp: remade because of changes in doc/mc.1.in
* dir.c (link_isdir): Fetch the information from
file->f.link_to_dir, since we already have it.
* dir.h (file_entry): Removed the `cache' field in this structure,
as it was only used for the deprecated Xview version.
Also, removed the `exists' field, as it was not being used anywhere.
* dir.c: Removed all occurrences of file_entry->cache.
* find.c: Removed all occurrences of file_entry->cache.
* panelize.c: Removed all occurrences of file_entry->cache.
* screen.c (do_enter_on_file_entry): New public function that
implements the functionality in do_enter(), but based on a file
entry rather than on a panel.
(do_enter): Use do_enter_on_file_entry() with the selection of the
panel as an argument.
The VFS code can now be used by other applications (if you compile the
libvfs.a target and link against this).
Syntax has changes internally from the url-like syntax to a new syntax
that does not have ambiguities. A default conversor for the new syntax
will be provided in the future, also dealing with the user ~/.mc/ext files
is currently in a non-optimal state.
Keep an eye on this mailing list.
Miguel.
* configure.in: ALL_LINGUAS test added, to allow specify list
of languages to be installed by setting env variable before
configure. If it is empty, it defaults to full list.
* src/menu.h menu_entry.{hot_pos, is_dupped} dropped
* src/menu.c: consistency fixes: pull-down menu items are now
accessible either with arrow keys or with hotkeys, denoted with &
(and highlighted). (key combinations, placed to the right of items
intended to be used from outside the menus). Freeing menu entries
removed as it no longer needed
* src/main.c, edit/editmenu.c: menubar init code is changed to conform
above fixes.
* edit/edit.h: use of "Cancel" in error_dialogs replaced with
"Dismiss", to avoid collisions in translation of "Cancel" in other
places with this case.
* src/boxes.c: select_format() and it's support removed, as it is
obsoleted by input line history feature. display_init()/display_callback
fixed to suite i18n changes. sort_box() - alike.
* src/option.c: pause_options added &'s and gettext calls to expand
statically assigned values.
* src/widget.c: (radio_callback) hotkey recognition is changed to
&-notation, rather than simple uppercase.
* src/dlg.c: (dlg_try_hotkey) plain symbol comparison replaced with
call to isalpha(), this fixes errorneous exit from input line, when
button hotkey is 8-bit NLS char.