static int explorer_cb(Quark *q, int etype, void *udata) { ExplorerUI *eui = (ExplorerUI *) udata; TreeItem *item = quark_get_udata(q); TreeItem *parent_item; switch (etype) { case QUARK_ETYPE_DELETE: TreeDeleteItem(eui->tree, item); break; case QUARK_ETYPE_MODIFY: init_item(eui, item, q); break; case QUARK_ETYPE_NEW: create_hook(q, eui, NULL); break; case QUARK_ETYPE_MOVE: explorer_save_quark_state(eui); TreeDeleteItem(eui->tree, item); parent_item = quark_get_udata(quark_parent_get(q)); item = TreeInsertItem(eui->tree, parent_item, q, quark_get_id(q)); init_item(eui, item, q); quark_set_udata(q, item); storage_traverse(quark_get_children(q), create_children_hook, eui); explorer_restore_quark_state(eui); break; } TreeRefresh(eui->tree); return TRUE; }
void NetTree::doTreeRefresh() { if (m_busyPopup) { m_busyPopup->Close(); m_busyPopup = NULL; } TreeRefresh(); }
static void init_quark_tree(ExplorerUI *eui) { storage_traverse(quark_get_children(gapp->pc), create_children_hook, eui); quark_cb_add(gapp->pc, explorer_cb, eui); TreeRefresh(eui->tree); }