Skip to content

Commit 414fc82

Browse files
authored
Merge pull request #189 from NREL/patch
Patch to develop 7/23/25
2 parents d02e1dc + d2f5d6c commit 414fc82

File tree

2 files changed

+13
-782
lines changed

2 files changed

+13
-782
lines changed

include/wex/metro.h

Lines changed: 6 additions & 229 deletions
Original file line numberDiff line numberDiff line change
@@ -425,171 +425,7 @@ class wxMetroListBox : public wxScrolledWindow {
425425
DECLARE_EVENT_TABLE();
426426
};
427427

428-
//--------------------------------------------------------------------
429-
class wxMetroDataViewTreeStoreNode
430-
{
431-
public:
432-
wxMetroDataViewTreeStoreNode(wxMetroDataViewTreeStoreNode* parent,
433-
const wxString& text,
434-
wxClientData* data = NULL);
435-
virtual ~wxMetroDataViewTreeStoreNode();
436-
437-
void SetText(const wxString& text)
438-
{
439-
m_text = text;
440-
}
441-
wxString GetText() const
442-
{
443-
return m_text;
444-
}
445-
void SetData(wxClientData* data)
446-
{
447-
delete m_data; m_data = data;
448-
}
449-
wxClientData* GetData() const
450-
{
451-
return m_data;
452-
}
453-
454-
wxDataViewItem GetItem() const
455-
{
456-
return wxDataViewItem(const_cast<void*>(static_cast<const void*>(this)));
457-
}
458-
459-
virtual bool IsContainer()
460-
{
461-
return false;
462-
}
463-
464-
wxMetroDataViewTreeStoreNode* GetParent()
465-
{
466-
return m_parent;
467-
}
468-
469-
private:
470-
wxMetroDataViewTreeStoreNode* m_parent;
471-
wxString m_text;
472-
wxClientData* m_data;
473-
};
474-
475-
typedef wxVector<wxMetroDataViewTreeStoreNode*> wxMetroDataViewTreeStoreNodes;
476-
477-
class wxMetroDataViewTreeStoreContainerNode : public wxMetroDataViewTreeStoreNode
478-
{
479-
public:
480-
wxMetroDataViewTreeStoreContainerNode(wxMetroDataViewTreeStoreNode* parent,
481-
const wxString& text,
482-
wxClientData* data = NULL);
483-
virtual ~wxMetroDataViewTreeStoreContainerNode();
484-
485-
const wxMetroDataViewTreeStoreNodes& GetChildren() const
486-
{
487-
return m_children;
488-
}
489-
wxMetroDataViewTreeStoreNodes& GetChildren()
490-
{
491-
return m_children;
492-
}
493-
494-
wxMetroDataViewTreeStoreNodes::iterator FindChild(wxMetroDataViewTreeStoreNode* node);
495-
496-
void SetExpanded(bool expanded = true)
497-
{
498-
m_isExpanded = expanded;
499-
}
500-
bool IsExpanded() const
501-
{
502-
return m_isExpanded;
503-
}
504-
505-
virtual bool IsContainer() override
506-
{
507-
return true;
508-
}
509-
510-
void DestroyChildren();
511-
512-
private:
513-
wxMetroDataViewTreeStoreNodes m_children;
514-
bool m_isExpanded;
515-
};
516-
517-
//-----------------------------------------------------------------------------
518-
519-
class wxMetroDataViewTreeStore : public wxDataViewModel
520-
{
521-
public:
522-
wxMetroDataViewTreeStore();
523-
~wxMetroDataViewTreeStore();
524-
525-
wxDataViewItem AppendItem(const wxDataViewItem& parent,
526-
const wxString& text,
527-
wxClientData* data = NULL);
528-
wxDataViewItem PrependItem(const wxDataViewItem& parent,
529-
const wxString& text,
530-
wxClientData* data = NULL);
531-
wxDataViewItem InsertItem(const wxDataViewItem& parent, const wxDataViewItem& previous,
532-
const wxString& text,
533-
wxClientData* data = NULL);
534-
535-
wxDataViewItem PrependContainer(const wxDataViewItem& parent,
536-
const wxString& text,
537-
wxClientData* data = NULL);
538-
wxDataViewItem AppendContainer(const wxDataViewItem& parent,
539-
const wxString& text,
540-
wxClientData* data = NULL);
541-
wxDataViewItem InsertContainer(const wxDataViewItem& parent, const wxDataViewItem& previous,
542-
const wxString& text,
543-
wxClientData* data = NULL);
544-
545-
wxDataViewItem GetNthChild(const wxDataViewItem& parent, unsigned int pos) const;
546-
int GetChildCount(const wxDataViewItem& parent) const;
547-
548-
void SetItemText(const wxDataViewItem& item, const wxString& text);
549-
wxString GetItemText(const wxDataViewItem& item) const;
550-
void SetItemData(const wxDataViewItem& item, wxClientData* data);
551-
wxClientData* GetItemData(const wxDataViewItem& item) const;
552-
553-
void DeleteItem(const wxDataViewItem& item);
554-
void DeleteChildren(const wxDataViewItem& item);
555-
void DeleteAllItems();
556-
557-
// implement base methods
558-
559-
virtual void GetValue(wxVariant& variant,
560-
const wxDataViewItem& item, unsigned int col) const override;
561-
virtual bool SetValue(const wxVariant& variant,
562-
const wxDataViewItem& item, unsigned int col) override;
563-
virtual wxDataViewItem GetParent(const wxDataViewItem& item) const override;
564-
virtual bool IsContainer(const wxDataViewItem& item) const override;
565-
virtual unsigned int GetChildren(const wxDataViewItem& item, wxDataViewItemArray& children) const override;
566-
567-
virtual int Compare(const wxDataViewItem& item1, const wxDataViewItem& item2,
568-
unsigned int column, bool ascending) const override;
569-
570-
// virtual bool HasContainerColumns(const wxDataViewItem& item) const override;
571-
// virtual bool IsEnabled(const wxDataViewItem& item, unsigned int col) const override;
572-
573-
574-
virtual bool HasDefaultCompare() const override
575-
{
576-
return true;
577-
}
578-
579-
virtual unsigned int GetColumnCount() const override { return 1; }
580-
virtual wxString GetColumnType(unsigned int) const override { return wxString(); }
581-
582-
583-
wxMetroDataViewTreeStoreNode* FindNode(const wxDataViewItem& item) const;
584-
wxMetroDataViewTreeStoreContainerNode* FindContainerNode(const wxDataViewItem& item) const;
585-
wxMetroDataViewTreeStoreNode* GetRoot() const { return m_root; }
586-
587-
public:
588-
wxMetroDataViewTreeStoreNode* m_root;
589-
};
590-
591-
592-
class wxMetroDataViewTreeCtrl : public wxDataViewCtrl
428+
class wxMetroDataViewTreeCtrl : public wxDataViewTreeCtrl
593429
{
594430
public:
595431
wxMetroDataViewTreeCtrl() { }
@@ -610,77 +446,18 @@ class wxMetroDataViewTreeCtrl : public wxDataViewCtrl
610446
long style = wxDV_NO_HEADER,
611447
const wxValidator& validator = wxDefaultValidator);
612448

613-
wxMetroDataViewTreeStore* GetStore()
449+
void OnItemStartEditing(wxDataViewEvent& event)
614450
{
615-
return (wxMetroDataViewTreeStore*)GetModel();
616-
}
617-
const wxMetroDataViewTreeStore* GetStore() const
618-
{
619-
return (const wxMetroDataViewTreeStore*)GetModel();
620-
}
621-
622-
bool IsContainer(const wxDataViewItem& item) const
623-
{
624-
return GetStore()->IsContainer(item);
625-
}
626-
627-
wxDataViewItem AppendItem(const wxDataViewItem& parent,
628-
const wxString& text, wxClientData* data = NULL);
629-
wxDataViewItem PrependItem(const wxDataViewItem& parent,
630-
const wxString& text, wxClientData* data = NULL);
631-
wxDataViewItem InsertItem(const wxDataViewItem& parent, const wxDataViewItem& previous,
632-
const wxString& text, wxClientData* data = NULL);
633-
634-
wxDataViewItem PrependContainer(const wxDataViewItem& parent,
635-
const wxString& text, wxClientData* data = NULL);
636-
wxDataViewItem AppendContainer(const wxDataViewItem& parent,
637-
const wxString& text, wxClientData* data = NULL);
638-
wxDataViewItem InsertContainer(const wxDataViewItem& parent, const wxDataViewItem& previous,
639-
const wxString& text, wxClientData* data = NULL);
640-
641-
wxDataViewItem GetNthChild(const wxDataViewItem& parent, unsigned int pos) const
642-
{
643-
return GetStore()->GetNthChild(parent, pos);
644-
}
645-
int GetChildCount(const wxDataViewItem& parent) const
646-
{
647-
return GetStore()->GetChildCount(parent);
648-
}
649-
wxDataViewItem GetItemParent(wxDataViewItem item) const
650-
{
651-
return GetStore()->GetParent(item);
652-
}
653-
654-
void SetItemText(const wxDataViewItem& item, const wxString& text);
655-
wxString GetItemText(const wxDataViewItem& item) const
656-
{
657-
return GetStore()->GetItemText(item);
658-
}
659-
void SetItemData(const wxDataViewItem& item, wxClientData* data)
660-
{
661-
GetStore()->SetItemData(item, data);
662-
}
663-
wxClientData* GetItemData(const wxDataViewItem& item) const
664-
{
665-
return GetStore()->GetItemData(item);
666-
}
667-
668-
void DeleteItem(const wxDataViewItem& item);
669-
void DeleteChildren(const wxDataViewItem& item);
670-
void DeleteAllItems();
671-
672-
void OnExpanded(wxDataViewEvent& event);
673-
void OnCollapsed(wxDataViewEvent& event);
674-
void OnSize(wxSizeEvent& event);
675-
451+
// prevent editing
452+
event.Veto();
453+
}
676454
private:
677455
wxDECLARE_EVENT_TABLE();
678456
wxDECLARE_DYNAMIC_CLASS_NO_ASSIGN(wxMetroDataViewTreeCtrl);
457+
679458
};
680459

681460

682-
683-
684461
class wxMetroPopupMenu {
685462
public:
686463
wxMetroPopupMenu(long theme = 0 /* can be wxMT_LIGHTTHEME */);

0 commit comments

Comments
 (0)