⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 treectrl.h

📁 很牛的GUI源码wxWidgets-2.8.0.zip 可在多种平台下运行.
💻 H
📖 第 1 页 / 共 2 页
字号:
        // get first visible item    wxTreeItemId GetFirstVisibleItem() const;        // get the next visible item: item must be visible itself!        // see IsVisible() and wxTreeCtrl::GetFirstVisibleItem()    wxTreeItemId GetNextVisible(const wxTreeItemId& item) const;        // get the previous visible item: item must be visible itself!    wxTreeItemId GetPrevVisible(const wxTreeItemId& item) const;    // operations    // ----------        // add the root node to the tree    wxTreeItemId AddRoot(const wxString& text,                         int image = -1, int selectedImage = -1,                         wxTreeItemData *data = NULL);        // insert a new item in as the first child of the parent    wxTreeItemId PrependItem(const wxTreeItemId& parent,                             const wxString& text,                             int image = -1, int selectedImage = -1,                             wxTreeItemData *data = NULL);        // insert a new item after a given one    wxTreeItemId InsertItem(const wxTreeItemId& parent,                            const wxTreeItemId& idPrevious,                            const wxString& text,                            int image = -1, int selectedImage = -1,                            wxTreeItemData *data = NULL);        // insert a new item before the one with the given index    wxTreeItemId InsertItem(const wxTreeItemId& parent,                            size_t index,                            const wxString& text,                            int image = -1, int selectedImage = -1,                            wxTreeItemData *data = NULL);        // insert a new item in as the last child of the parent    wxTreeItemId AppendItem(const wxTreeItemId& parent,                            const wxString& text,                            int image = -1, int selectedImage = -1,                            wxTreeItemData *data = NULL);        // delete this item and associated data if any    void Delete(const wxTreeItemId& item);        // delete all children (but don't delete the item itself)        // NB: this won't send wxEVT_COMMAND_TREE_ITEM_DELETED events    void DeleteChildren(const wxTreeItemId& item);        // delete all items from the tree        // NB: this won't send wxEVT_COMMAND_TREE_ITEM_DELETED events    void DeleteAllItems();        // expand this item    void Expand(const wxTreeItemId& item);        // collapse the item without removing its children    void Collapse(const wxTreeItemId& item);        // collapse the item and remove all children    void CollapseAndReset(const wxTreeItemId& item);        // toggles the current state    void Toggle(const wxTreeItemId& item);        // remove the selection from currently selected item (if any)    void Unselect();        // unselect all items (only makes sense for multiple selection control)    void UnselectAll();        // select this item    void SelectItem(const wxTreeItemId& item, bool select = true);        // unselect this item    void UnselectItem(const wxTreeItemId& item);        // toggle item selection    void ToggleItemSelection(const wxTreeItemId& item);        // make sure this item is visible (expanding the parent item and/or        // scrolling to this item if necessary)    void EnsureVisible(const wxTreeItemId& item);        // scroll to this item (but don't expand its parent)    void ScrollTo(const wxTreeItemId& item);        // start editing the item label: this (temporarily) replaces the item        // with a one line edit control. The item will be selected if it hadn't        // been before. textCtrlClass parameter allows you to create an edit        // control of arbitrary user-defined class deriving from wxTextCtrl.    wxTextCtrl* EditLabel(const wxTreeItemId& item,                          wxClassInfo* textCtrlClass = CLASSINFO(wxTextCtrl));        // returns the same pointer as StartEdit() if the item is being edited,        // NULL otherwise (it's assumed that no more than one item may be        // edited simultaneously)    wxTextCtrl* GetEditControl() const;        // end editing and accept or discard the changes to item label    void EndEditLabel(const wxTreeItemId& item, bool discardChanges = false);    // sorting        // this function is called to compare 2 items and should return -1, 0        // or +1 if the first item is less than, equal to or greater than the        // second one. The base class version performs alphabetic comparaison        // of item labels (GetText)    virtual int OnCompareItems(const wxTreeItemId& item1,                               const wxTreeItemId& item2);        // sort the children of this item using OnCompareItems        //        // NB: this function is not reentrant and not MT-safe (FIXME)!    void SortChildren(const wxTreeItemId& item);    // helpers    // -------        // determine to which item (if any) belongs the given point (the        // coordinates specified are relative to the client area of tree ctrl)        // and fill the flags parameter with a bitmask of wxTREE_HITTEST_xxx        // constants.        //        // The first function is more portable (because easier to implement        // on other platforms), but the second one returns some extra info.    wxTreeItemId HitTest(const wxPoint& point)        { int dummy; return HitTest(point, dummy); }    wxTreeItemId HitTest(const wxPoint& point, int& flags);        // get the bounding rectangle of the item (or of its label only)    bool GetBoundingRect(const wxTreeItemId& item,                         wxRect& rect,                         bool textOnly = false) const;    // implementation    // --------------    virtual bool ShouldInheritColours() const { return false; }    virtual wxVisualAttributes GetDefaultAttributes() const    {        return GetClassDefaultAttributes(GetWindowVariant());    }    static wxVisualAttributes    GetClassDefaultAttributes(wxWindowVariant variant = wxWINDOW_VARIANT_NORMAL);    // override some base class virtuals    virtual bool SetBackgroundColour(const wxColour &colour);    virtual bool SetForegroundColour(const wxColour &colour);    // get/set the check state for the item (only for wxTR_MULTIPLE)    bool IsItemChecked(const wxTreeItemId& item) const;    void SetItemCheck(const wxTreeItemId& item, bool check = true);    // set/get the item state.image (state == -1 means cycle to the next one)    void SetState(const wxTreeItemId& node, int state);    int GetState(const wxTreeItemId& node);protected:    // SetImageList helper    void SetAnyImageList(wxImageList *imageList, int which);    // refresh a single item    void RefreshItem(const wxTreeItemId& item);    wxTextCtrl  *m_textCtrl;        // used while editing the item label    wxImageList *m_imageListNormal, // images for tree elements                *m_imageListState;  // special images for app defined states    bool         m_ownsImageListNormal, m_ownsImageListState;private:    // the common part of all ctors    void Init();    // helper functions    inline bool DoGetItem(wxTreeViewItem *tvItem) const;    inline void DoSetItem(wxTreeViewItem *tvItem);    inline void DoExpand(const wxTreeItemId& item, int flag);    wxTreeItemId DoInsertItem(const wxTreeItemId& parent,                              wxTreeItemId hInsertAfter,                              const wxString& text,                              int image, int selectedImage,                              wxTreeItemData *data);    int DoGetItemImageFromData(const wxTreeItemId& item,                               wxTreeItemIcon which) const;    void DoSetItemImageFromData(const wxTreeItemId& item,                                int image,                                wxTreeItemIcon which) const;    void DoSetItemImages(const wxTreeItemId& item, int image, int imageSel);    void DeleteTextCtrl();    // support for additional item images which we implement using    // wxTreeItemIndirectData technique    void SetIndirectItemData(const wxTreeItemId& item,                             class wxTreeItemIndirectData *data);    bool HasIndirectData(const wxTreeItemId& item) const;    bool IsDataIndirect(wxTreeItemData *data) const        { return data && data->GetId().m_pItem == 0; }    // the hash storing the items attributes (indexed by item ids)    wxMapTreeAttr m_attrs;    // true if the hash above is not empty    bool m_hasAnyAttr;    // used for dragging    wxDragImage *m_dragImage;    // Virtual root item, if wxTR_HIDE_ROOT is set.    void* m_pVirtualRoot;    // the starting item for selection with Shift    wxTreeItemId m_htSelStart;    friend class wxTreeItemIndirectData;    friend class wxTreeSortHelper;    DECLARE_DYNAMIC_CLASS(wxTreeCtrl)    DECLARE_NO_COPY_CLASS(wxTreeCtrl)};#endif // wxUSE_TREECTRL#endif // _WX_TREECTRL_H_

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -