From f713cdd90b1b13d790f5e062a28c729aa98f6933 Mon Sep 17 00:00:00 2001 From: François Revol Date: Wed, 1 Jan 2014 19:23:28 +0100 Subject: beos: Add credits and licence buttons to about box We'll simplify it to just mention version infos like on atari. --- beos/about.cpp | 21 +++++++++++++++++---- 1 file changed, 17 insertions(+), 4 deletions(-) (limited to 'beos/about.cpp') diff --git a/beos/about.cpp b/beos/about.cpp index f8447fa2a..3f7adf7fc 100644 --- a/beos/about.cpp +++ b/beos/about.cpp @@ -28,6 +28,8 @@ extern "C" { #include "beos/window.h" #include +#include +#include #include #include #include @@ -102,18 +104,29 @@ static void add_section(BTextView *textview, const char *header, void nsbeos_about(struct gui_window *gui) { BAlert *alert; - alert = new BAlert("about", "", /*"HomePage",*/ "Ok"); + alert = new BAlert("about", "", "Credits", "Licence", "Ok"); //XXX: i18n-ize BTextView *tv = alert->TextView(); + BHandler *target = be_app; + BMessage *message = new BMessage(ABOUT_BUTTON); + BInvoker *invoker = NULL; if (gui) { - alert->SetFeel(B_MODAL_SUBSET_WINDOW_FEEL); nsbeos_scaffolding *s = nsbeos_get_scaffold(gui); if (s) { NSBrowserWindow *w = nsbeos_get_bwindow_for_scaffolding(s); - if (w) + if (w) { + alert->SetFeel(B_MODAL_SUBSET_WINDOW_FEEL); alert->AddToSubset(w); + } + NSBaseView *v = nsbeos_get_baseview_for_scaffolding(s); + if (v) { + if (w) + message->AddPointer("Window", w); + target = v; + } } } + invoker = new BInvoker(message, target); // make space for controls alert->ResizeBy(200, 640); @@ -130,5 +143,5 @@ void nsbeos_about(struct gui_window *gui) add_section(tv, "documenters", documenters); add_section(tv, url_label, url); - alert->Go(NULL); + alert->Go(invoker); } -- cgit v1.2.3