/*************************************/
/*            Jump v1.0              */
/*            =========              */
/* (C) 1995 by Ben Matthew.  Module  */
/* for English Clock v4.3+           */
/*************************************/

#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <clib/intuition_protos.h>
#include <clib/exec_protos.h>
#include <clib/dos_protos.h>
#include <intuition/intuition.h>
#include <exec/exec.h>

extern struct NewWindow win1;
extern char screen[200];
extern char *screen_ptr;
extern struct Menu menu1;
extern struct Window *win_p;
extern struct Screen *pubscreen;
extern void msg(char *msg);

extern short closeall(void);


BOOL jump(void);

BOOL jump(void) {
   /***********************************/
   /* Jump() © 1995 by Ben Matthew    */
   /* $VERS 1.0                       */
   /* Description: Jumps window to    */
   /* next public screen, takes no    */
   /* parameters and returns success  */
   /***********************************/

   char *result, buffer[200];

   result=NextPubScreen(pubscreen,buffer);

   ClearMenuStrip(win_p);
   CloseWindow(win_p);
   UnlockPubScreen(NULL,pubscreen);
   pubscreen=LockPubScreen(buffer);
   if(!pubscreen) {
      msg("Jump went wrong! (Debug: LockPubScreen(buffer)");
      closeall();
      exit(NULL);
   }
   win1.Screen=pubscreen;
   win_p=(struct Window *)OpenWindow(&win1);
   if(!win_p) {
      msg("Jump went wrong! (Debug: OpenWindow() ");
      closeall();
      exit(NULL);
   }
   SetMenuStrip(win_p,&menu1 );
   return(1);

}


