summaryrefslogtreecommitdiff
path: root/libs/gtkmm2ext/gtkmm2ext
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2016-07-19 23:31:07 -0400
committerPaul Davis <paul@linuxaudiosystems.com>2016-07-20 10:48:07 -0400
commit82d3afb85161e0746c2136251eced5d7046225ca (patch)
treec16fd2d3bfc24c8d4a06bb82ab6206a215a1c09b /libs/gtkmm2ext/gtkmm2ext
parent541e6aaeb1a4f743ab43c7afdc99e1ebbd899ec5 (diff)
Gtkmm2ext::Pane: attempt to track child lifetime, since Gtkmm 2.4 doesn't do this correctly
Diffstat (limited to 'libs/gtkmm2ext/gtkmm2ext')
-rw-r--r--libs/gtkmm2ext/gtkmm2ext/pane.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/libs/gtkmm2ext/gtkmm2ext/pane.h b/libs/gtkmm2ext/gtkmm2ext/pane.h
index dfe2ef7ffe..9612da08d2 100644
--- a/libs/gtkmm2ext/gtkmm2ext/pane.h
+++ b/libs/gtkmm2ext/gtkmm2ext/pane.h
@@ -46,10 +46,11 @@ class LIBGTKMM2EXT_API Pane : public Gtk::Container
public:
struct Child
{
+ Pane* pane;
Gtk::Widget* w;
int32_t minsize;
- Child (Gtk::Widget* widget, uint32_t ms) : w (widget), minsize (ms) {}
+ Child (Pane* p, Gtk::Widget* widget, uint32_t ms) : pane (p), w (widget), minsize (ms) {}
};
typedef std::list<Child> Children;
@@ -108,6 +109,9 @@ class LIBGTKMM2EXT_API Pane : public Gtk::Container
void add_divider ();
void handle_child_visibility ();
bool fract_is_ok (Dividers::size_type, float fract);
+
+ static void* notify_child_destroyed (void*);
+ void* child_destroyed (Gtk::Widget*);
};
class LIBGTKMM2EXT_API HPane : public Pane