class CCL::BrowserListModel
class BrowserListModel: public BrowserModelBase
{
public:
// construction
BrowserListModel (Browser& browser);
// methods
bool getNodeIndex (ItemIndex& index, const BrowserNode* node);
BrowserNode* findNode (const IRecognizer* recognizer) const;
BrowserNode* findNodeInstance (BrowserNode* node) const;
BrowserNode* getParent () const;
void setParent (BrowserNode* node, Container* oldNodes = nullptr);
bool extractChildNodesForReuse (
ObjectList& childNodes,
BrowserNode* node,
ITreeItem* treeItem
);
void collectNodes (Container& result, BrowserNode::NodeFlags flags);
void addNode (BrowserNode* node, int index = -1);
bool removeNode (BrowserNode* node);
void selectNode (BrowserNode* node, bool exclusive);
void checkAutoSelect ();
void invalidateNode (BrowserNode* node);
void updateParentIcon ();
BrowserNode* getFocusNode (bool onlyIfSelected = false) const;
BrowserNode* resolveNode (ItemIndexRef index) const;
int CCL_API countFlatItems ();
tbool CCL_API onItemFocused (ItemIndexRef index);
tbool CCL_API appendItemMenu (
IContextMenu& menu,
ItemIndexRef item,
const IItemSelection& selection
);
tbool CCL_API interpretCommand (
const CommandMsg& msg,
ItemIndexRef item,
const IItemSelection& selection
);
};