Merge branch 'dvc-kbd-shortcuts'

Add wxDVC::ExpandChildren() and handle standard keyboard shortcuts in
the generic version.

See https://github.com/wxWidgets/wxWidgets/pull/2135
This commit is contained in:
Vadim Zeitlin
2020-12-07 14:07:20 +01:00
16 changed files with 118 additions and 28 deletions

View File

@@ -740,6 +740,7 @@ public:
virtual void UnselectAll() = 0;
void Expand( const wxDataViewItem & item );
void ExpandChildren( const wxDataViewItem & item );
void ExpandAncestors( const wxDataViewItem & item );
virtual void Collapse( const wxDataViewItem & item ) = 0;
virtual bool IsExpanded( const wxDataViewItem & item ) const = 0;
@@ -793,7 +794,9 @@ protected:
// Just expand this item assuming it is already shown, i.e. its parent has
// been already expanded using ExpandAncestors().
virtual void DoExpand(const wxDataViewItem & item) = 0;
//
// If expandChildren is true, also expand all its children recursively.
virtual void DoExpand(const wxDataViewItem & item, bool expandChildren) = 0;
private:
// Implementation of the public Set/GetCurrentItem() methods which are only

View File

@@ -364,7 +364,7 @@ private:
virtual wxDataViewItem DoGetCurrentItem() const wxOVERRIDE;
virtual void DoSetCurrentItem(const wxDataViewItem& item) wxOVERRIDE;
virtual void DoExpand(const wxDataViewItem& item) wxOVERRIDE;
virtual void DoExpand(const wxDataViewItem& item, bool expandChildren) wxOVERRIDE;
void InvalidateColBestWidths();
void InvalidateColBestWidth(int idx);

View File

@@ -218,7 +218,7 @@ protected:
virtual void DoSetExpanderColumn() wxOVERRIDE;
virtual void DoSetIndent() wxOVERRIDE;
virtual void DoExpand(const wxDataViewItem& item) wxOVERRIDE;
virtual void DoExpand(const wxDataViewItem& item, bool expandChildren) wxOVERRIDE;
virtual void DoApplyWidgetStyle(GtkRcStyle *style) wxOVERRIDE;
virtual GdkWindow* GTKGetWindow(wxArrayGdkWindows& windows) const wxOVERRIDE;

View File

@@ -530,7 +530,7 @@ public:
//
virtual void DoSetIndent(int indent);
virtual void DoExpand(const wxDataViewItem& item);
virtual void DoExpand(const wxDataViewItem& item, bool expandChildren);
virtual void HitTest(const wxPoint& point,
wxDataViewItem& item,

View File

@@ -105,7 +105,7 @@ public:
// other methods
//
virtual void DoSetIndent (int indent) = 0; // sets the indentation in the native control
virtual void DoExpand (wxDataViewItem const& item) = 0; // expands the passed item in the native control
virtual void DoExpand (wxDataViewItem const& item, bool expandChildren) = 0; // expands the passed item in the native control
virtual void HitTest (wxPoint const& point, wxDataViewItem& item, wxDataViewColumn*& columnPtr) const = 0; // return the item and column pointer that contains with the passed point
virtual void SetRowHeight(int height) = 0; // sets the height of all rows

View File

@@ -276,7 +276,7 @@ protected:
virtual void DoSetExpanderColumn() wxOVERRIDE;
virtual void DoSetIndent() wxOVERRIDE;
virtual void DoExpand(const wxDataViewItem& item) wxOVERRIDE;
virtual void DoExpand(const wxDataViewItem& item, bool expandChildren) wxOVERRIDE;
virtual wxSize DoGetBestSize() const wxOVERRIDE;

View File

@@ -115,7 +115,6 @@ public:
virtual wxRect GetItemRect( const wxDataViewItem &item,
const wxDataViewColumn *column = NULL ) const;
virtual void Expand( const wxDataViewItem & item );
virtual void Collapse( const wxDataViewItem & item );
virtual bool IsExpanded( const wxDataViewItem & item ) const;
@@ -132,6 +131,7 @@ public:
protected:
virtual void DoSetExpanderColumn();
virtual void DoSetIndent();
virtual void DoExpand( const wxDataViewItem & item, bool expandChildren );
private:
virtual wxDataViewItem DoGetCurrentItem() const;