summaryrefslogtreecommitdiff
path: root/beos/WindowStack.h
diff options
context:
space:
mode:
authorAdrien Destugues - PulkoMandy <pulkomandy@pulkomandy.tk>2012-11-15 22:34:42 +0100
committerFrançois Revol <revol@free.fr>2012-11-24 21:39:40 +0100
commiteb28188661262eef8aad4b530a3f16532aceffd4 (patch)
treef53b6050ecbb4cada42468ec4949d0e356c29fb8 /beos/WindowStack.h
parentec43456e4bf0968bc68b437733199ad2af609c1e (diff)
downloadnetsurf-eb28188661262eef8aad4b530a3f16532aceffd4.tar.gz
netsurf-eb28188661262eef8aad4b530a3f16532aceffd4.tar.bz2
Update the BeOS/Haiku port
* Toolbar use HVIF icons on Haiku * Download window * Some tweaks to the event loop to let network traffic happen Signed-off-by: François Revol <revol@free.fr>
Diffstat (limited to 'beos/WindowStack.h')
-rw-r--r--beos/WindowStack.h45
1 files changed, 45 insertions, 0 deletions
diff --git a/beos/WindowStack.h b/beos/WindowStack.h
new file mode 100644
index 000000000..947b14360
--- /dev/null
+++ b/beos/WindowStack.h
@@ -0,0 +1,45 @@
+/*
+ * Copyright 2010, Haiku, Inc. All rights reserved.
+ * Distributed under the terms of the MIT License.
+ */
+#ifndef WINDOW_STACK_H
+#define WINDOW_STACK_H
+
+
+#include <Window.h>
+
+
+class BWindowStack {
+public:
+ BWindowStack(BWindow* window);
+ ~BWindowStack();
+
+ status_t AddWindow(const BWindow* window);
+ status_t AddWindow(const BMessenger& window);
+ status_t AddWindowAt(const BWindow* window,
+ int32 position);
+ status_t AddWindowAt(const BMessenger& window,
+ int32 position);
+
+ status_t RemoveWindow(const BWindow* window);
+ status_t RemoveWindow(const BMessenger& window);
+ status_t RemoveWindowAt(int32 position,
+ BMessenger* window = NULL);
+
+ int32 CountWindows();
+
+ status_t WindowAt(int32 position,
+ BMessenger& messenger);
+ bool HasWindow(const BWindow* window);
+ bool HasWindow(const BMessenger& window);
+
+private:
+ status_t _AttachMessenger(const BMessenger& window);
+ status_t _ReadMessenger(BMessenger& window);
+ status_t _StartMessage(int32 what);
+
+ BPrivate::PortLink* fLink;
+};
+
+
+#endif