diff options
author | Chris Young <chris@unsatisfactorysoftware.co.uk> | 2011-05-07 22:21:41 +0000 |
---|---|---|
committer | Chris Young <chris@unsatisfactorysoftware.co.uk> | 2011-05-07 22:21:41 +0000 |
commit | 489c35c5f776c691a136efa9bb65dba2ef5183d1 (patch) | |
tree | 17367fbd79259d796a43c17293eafd13abe958e0 /amiga | |
parent | 20ae506d250b4739d79bb2d9398f2b606fd69617 (diff) | |
download | netsurf-489c35c5f776c691a136efa9bb65dba2ef5183d1.tar.gz netsurf-489c35c5f776c691a136efa9bb65dba2ef5183d1.tar.bz2 |
Simple initialisation splash screen
svn path=/trunk/netsurf/; revision=12303
Diffstat (limited to 'amiga')
-rwxr-xr-x | amiga/gui.c | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/amiga/gui.c b/amiga/gui.c index e032ac90c..630b7b1ff 100755 --- a/amiga/gui.c +++ b/amiga/gui.c @@ -160,6 +160,8 @@ ULONG ami_get_border_gadget_balance(struct gui_window_2 *gwin, ULONG *size1, ULO void ami_try_quit(void); void ami_do_redraw_limits(struct gui_window *g, struct browser_window *bw, int x0, int y0, int x1, int y1); +Object *ami_gui_splash_open(void); +void ami_gui_splash_close(Object *win_obj); STRPTR ami_locale_langs(void) { @@ -743,6 +745,8 @@ int main(int argc, char** argv) setbuf(stderr, NULL); char messages[100]; char script[1024]; + + Object *splash_window = ami_gui_splash_open(); if(ami_locate_resource(messages, "Messages") == false) die("Cannot open Messages file"); @@ -759,6 +763,8 @@ int main(int argc, char** argv) gui_init(argc, argv); gui_init2(argc, argv); + ami_gui_splash_close(splash_window); + strncpy(script, option_arexx_dir, 1024); AddPart(script, option_arexx_startup, 1024); ami_arexx_execute(script); @@ -3955,3 +3961,36 @@ BOOL ami_gadget_hit(Object *obj, int x, int y) return TRUE; else return FALSE; } + +Object *ami_gui_splash_open(void) +{ + Object *win_obj; + struct Window *win; + struct Screen *wbscreen = LockPubScreen("Workbench"); + + win_obj = WindowObject, + WA_Title, "Initialising...", + WA_ToolBox, TRUE, + WA_BusyPointer, TRUE, + WINDOW_Position, WPOS_CENTERSCREEN, + WINDOW_LockWidth, TRUE, + WINDOW_LockHeight, TRUE, + WINDOW_ParentGroup, VGroupObject, + LAYOUT_AddImage, BitMapObject, + BITMAP_SourceFile, "PROGDIR:Resources/netsurf.png", + BITMAP_Screen, wbscreen, + BitMapEnd, + LayoutEnd, + EndWindow; + + win = RA_OpenWindow(win_obj); + + UnlockPubScreen(NULL, wbscreen); + + return win_obj; +} + +void ami_gui_splash_close(Object *win_obj) +{ + if(win_obj) DisposeObject(win_obj); +} |