summaryrefslogtreecommitdiff
path: root/beos/beos_scaffolding.h
diff options
context:
space:
mode:
authorFran├žois Revel <mmu_man@netsurf-browser.org>2008-06-03 19:07:09 +0000
committerFran├žois Revel <mmu_man@netsurf-browser.org>2008-06-03 19:07:09 +0000
commit90a15a9753a4e882a4a0d7ce04fdae9ec5d29683 (patch)
treeb4c7f4651ce7f2c0e48b9eb4a6c91ffd56f5a1da /beos/beos_scaffolding.h
parent86e74c970bb29c0a31d0235cf6b9ab261fffbad5 (diff)
downloadnetsurf-90a15a9753a4e882a4a0d7ce04fdae9ec5d29683.tar.gz
netsurf-90a15a9753a4e882a4a0d7ce04fdae9ec5d29683.tar.bz2
The BeOS-specific part of the BeOS (and Haiku) port, modeled mostly from the GTK version.
Some fixes are needed elsewhere but non-obvious ones I'll post on the mailing list for discussion. Currently it opens windows with a toolbar, url and status bar, a (yet empty) menu bar. Rendering seems to work including scrolling at scale 1 (other non-tested). framesets seems broken though. svn path=/trunk/netsurf/; revision=4253
Diffstat (limited to 'beos/beos_scaffolding.h')
-rw-r--r--beos/beos_scaffolding.h71
1 files changed, 71 insertions, 0 deletions
diff --git a/beos/beos_scaffolding.h b/beos/beos_scaffolding.h
new file mode 100644
index 000000000..2fcc7280e
--- /dev/null
+++ b/beos/beos_scaffolding.h
@@ -0,0 +1,71 @@
+/*
+ * Copyright 2005 James Bursa <bursa@users.sourceforge.net>
+ *
+ * This file is part of NetSurf, http://www.netsurf-browser.org/
+ *
+ * NetSurf is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; version 2 of the License.
+ *
+ * NetSurf is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#ifndef NETSURF_BEOS_SCAFFOLDING_H
+#define NETSURF_BEOS_SCAFFOLDING_H 1
+
+#include <View.h>
+#include <Window.h>
+extern "C" {
+#include "desktop/gui.h"
+#include "desktop/plotters.h"
+}
+
+typedef struct beos_scaffolding nsbeos_scaffolding;
+
+class NSBrowserWindow : public BWindow {
+public:
+ NSBrowserWindow(BRect frame, struct beos_scaffolding *scaf);
+virtual ~NSBrowserWindow();
+
+virtual void MessageReceived(BMessage *message);
+virtual bool QuitRequested(void);
+
+struct beos_scaffolding *Scaffolding() const { return fScaffolding; };
+
+private:
+ struct beos_scaffolding *fScaffolding;
+};
+
+
+NSBrowserWindow *nsbeos_find_last_window(void);
+
+nsbeos_scaffolding *nsbeos_new_scaffolding(struct gui_window *toplevel);
+
+bool nsbeos_scaffolding_is_busy(nsbeos_scaffolding *scaffold);
+
+void nsbeos_attach_toplevel_view(nsbeos_scaffolding *g, BView *view);
+
+#if 0 /* GTK */
+void nsbeos_attach_toplevel_viewport(nsbeos_scaffolding *g, GtkViewport *vp);
+#endif
+
+void nsbeos_scaffolding_dispatch_event(nsbeos_scaffolding *scaffold, BMessage *message);
+
+void nsbeos_scaffolding_destroy(nsbeos_scaffolding *scaffold);
+
+//void nsbeos_window_destroy_event(NSBrowserWindow *window, nsbeos_scaffolding *g, BMessage *event);
+
+
+void nsbeos_scaffolding_popup_menu(nsbeos_scaffolding *g, BPoint where);
+
+#if 0 /* GTK */
+void nsbeos_scaffolding_popup_menu(nsbeos_scaffolding *g, guint button);
+#endif
+
+#endif /* NETSURF_BEOS_SCAFFOLDING_H */