Commit Graph

7 Commits

Author SHA1 Message Date
bd6bb30bef Function to convert a folder name/path to a filename for per-folder data.
2000-09-25  Not Zed  <NotZed@HelixCode.com>

        * message-list.c (folder_to_cachename): Function to convert a
        folder name/path to a filename for per-folder data.
        (save_tree_state):
        (load_tree_state):
        (free_tree_state): For loading/saving the state of the expansion
        of nodes in the tree.
        (message_list_destroy): Save the tree state when done.
        (save_node_state): Changed logic, we save when the node should be
        closed on startup.  i.e. any new nodes with children automatically
        default to being open.
        (subtree_unread): Check for unread messages in a subtree.  So
        false messages (for tree roots) are properly displayed.

svn path=/trunk/; revision=5584
2000-09-25 22:20:06 +00:00
130bb0e571 Automatically connect services when given a valid URL (should hopefully disconnect, too); remove the old movemail folder correctly.
svn path=/trunk/; revision=4965
2000-08-22 20:09:11 +00:00
9178fed291 Don't clear the tree here. If two "folder_changed"s arrive in close
* message-list.c (cleanup_regenerate_messagelist): Don't clear the
        tree here. If two "folder_changed"s arrive in close succession,
        then one possible ordering of events is
        cleanup_regenerate_messagelist, cleanup_regenerate_messagelist,
        cleanup_thread_messages, cleanup_thread_messages. Which would
        result in the message list being filled in twice without being
        cleared in between. So don't clear it until the rebuilding
        function itself is called.
        (clear_tree): New function to empty out the ETreeModel in the
        message list.
        (build_tree): Change to simpler interface. Call clear_tree.
        (build_subtree): Does most of the work of the old build_tree
        (build_flat): Remove unused arg. Call clear_tree.

        * message-thread.c (cleanup_thread_messages): Update for
        build_tree interface change.

svn path=/trunk/; revision=4787
2000-08-12 23:07:19 +00:00
8cb514d6dd Merge with camel-async.
svn path=/trunk/; revision=4687
2000-08-10 17:30:50 +00:00
0c9c8a55f8 (sort_node): sort the tree by the original order of the messages
in the folder rather than by date.

svn path=/trunk/; revision=3963
2000-07-07 21:54:14 +00:00
2d33aa8a77 Lots of changes. Store uids as node data on the tree nodes and use those
* message-list.c: Lots of changes. Store uids as node data on the
	tree nodes and use those rather than rows where possible. (The
	concept of "row" is just getting too complicated.) Get rid of the
	summary_table, because given a uid we can call
	camel_folder_get_message_info, which makes more sense than keeping
	a separate uid->row hash table ourselves.

	(get_message_info): update
	(get_message_row): removed
	(ml_col_cound, ml_row_count, ml_value_at, ml_set_value_at,
	ml_cell_is_editable, ml_duplicate_value, ml_free_value,
	ml_initialize_value, ml_value_is_empty, ml_value_to_string):
	Removed. We always use the tree model now.
	(message_list_init): Remove the non-tree code.
	(build_tree): store uids in the tree rather than row numbers,
	and build the message_list->uid_rowmap to map from uids to rows
	when needed.
	(message_list_regenerate): Renamed from _set_search, since it's
	used to redraw in non-search cases too.
	(message_changed): Use the uid_rowmap to get a model row number.

	* message-thread.c (thread_messages): Change the interface on this
	to work with the new MessageList.

	* folder-browser.c (search_set, folder_browser_clear_search):
	s/message_list_set_search/message_list_regenerate/

svn path=/trunk/; revision=3960
2000-07-07 21:15:11 +00:00
b226c0a68f Code for message threading.
2000-07-06  Not Zed  <NotZed@HelixCode.com>

        * message-thread.[ch]: Code for message threading.

svn path=/trunk/; revision=3916
2000-07-06 05:03:57 +00:00