home *** CD-ROM | disk | FTP | other *** search
- /*
- * Source machine generated by GadToolsBox V2.0b
- * which is (c) Copyright 1991-1993 Jaba Development
- *
- * GUI Designed by : Martin W Scott, Gaƫl Marziou & Ph. Bastiani
- */
-
-
-
-
- #include <exec/types.h>
- #include <intuition/intuition.h>
- #include <intuition/classes.h>
- #include <intuition/classusr.h>
- #include <intuition/imageclass.h>
- #include <intuition/gadgetclass.h>
- #include <intuition/intuitionbase.h>
- #include <libraries/gadtools.h>
- #include <proto/exec.h>
- #include <proto/intuition.h>
- #include <proto/gadtools.h>
- #include <proto/wb.h>
- #include <string.h>
-
-
- #include "yak.h"
- #include "version.h"
- #include "gui.h"
- #include "Blank_Window.h"
- #include "Settings.h"
- #include "yak_locale_strings.h"
-
-
- extern struct Catalog *Catalog;
-
- extern LONG (*HandleIDCMP)(VOID);
-
- struct Window *BlankWnd = NULL;
- struct Gadget *BlankGList = NULL;
- struct Gadget *BlankGadgets[Blank_CNT];
- UWORD BlankWidth = 400;
- UWORD BlankHeight = 119;
- UBYTE *BlankWdt = NULL;
- BOOL BlankWdi = FALSE;
-
- struct AppWindow *BlankAppWin; /* AppWindow pointer */
- IMPORT struct MsgPort *AppMsgPort;
-
- /* Online help system */
- IMPORT void ShowYakHelp(char *, char *);
- IMPORT char *PrefsHelp;
-
- UBYTE *MBMethod0Labels[4];
- UBYTE *ScrBlMethod0Labels[4];
-
- static VOID
- InitMBMethod0Labels(VOID)
- {
- MBMethod0Labels[0] = getString(NONE_STRING);
- MBMethod0Labels[1] = getString(SPRITES_STRING);
- MBMethod0Labels[2] = getString(COPPER_STRING);
- MBMethod0Labels[3] = NULL;
- }
-
- static VOID
- InitScrBlMethod0Labels(VOID)
- {
- ScrBlMethod0Labels[0] = getString(NONE_STRING);
- ScrBlMethod0Labels[1] = getString(BLACKSCREEN_STRING);
- ScrBlMethod0Labels[2] = getString(DMA_STRING);
- ScrBlMethod0Labels[3] = NULL;
- }
-
-
- #define Blank_TNUM 1
-
- struct IntuiText BlankIText[Blank_TNUM] =
- {
- 2,0,JAM1,261,81,NULL,NULL,NULL
- };
-
-
- static VOID
- InitBlankITexts(VOID)
- {
- BlankIText[0].IText = getString(TIMEOUT_STRING);
- }
-
-
- UWORD BlankGTypes[] =
- {
- INTEGER_KIND,
- INTEGER_KIND,
- CYCLE_KIND,
- BUTTON_KIND,
- CHECKBOX_KIND,
- CYCLE_KIND
- };
-
-
- struct NewGadget BlankNGad[] =
- {
- 200, 68, 51,14,NULL,NULL,GD_ScrTONum ,PLACETEXT_LEFT ,NULL ,SCREENTIMEOUT_STRING,
- 200, 83, 51,14,NULL,NULL,GD_MouseTONum ,PLACETEXT_LEFT ,NULL ,MOUSETIMEOUT_STRING,
- 200, 19,193,14,NULL,NULL,GD_MBMethod ,PLACETEXT_LEFT ,NULL ,MOUSEBLANK_METHOD_STRING,
- 150,103,100,13,NULL,NULL,GD_Return3 ,PLACETEXT_IN ,NULL ,OK_STRING,
- 7, 35, 26,11,NULL,NULL,GD_BlankMouseOnKey,PLACETEXT_RIGHT,NULL ,BlankMouseOnKey_STRING,
- 200, 3,193,14,NULL,NULL,GD_ScrBlMethod ,PLACETEXT_LEFT ,NULL ,SCREENBLANK_METHOD_STRING
- };
-
-
- ULONG BlankGTags[] =
- {
- (GTIN_Number),0,(GTIN_MaxChars),4,(STRINGA_Justification),STRINGRIGHT,(TAG_DONE),
- (GTIN_Number),0,(GTIN_MaxChars),4,(STRINGA_Justification),STRINGRIGHT,(TAG_DONE),
- (GTCY_Labels),(ULONG)&MBMethod0Labels[ 0 ],(TAG_DONE),
- (TAG_DONE),
- (GTCB_Scaled),TRUE,(TAG_DONE),
- (GTCY_Labels),(ULONG)&ScrBlMethod0Labels[ 0 ],(TAG_DONE)
- };
-
-
-
- static VOID
- BlankRender(VOID)
- {
- UBYTE cnt;
- UWORD X,Y, Width, Height;
-
- ComputeFont(BlankWidth,BlankHeight);
-
- Width = ComputeX( BlankWidth );
-
- X = Y = 0;
- Height = ComputeY(50);
- DrawThinBevelBox( Scr, BlankWnd->RPort, X+OffX,Y+OffY,
- Width,
- Height,
- FALSE );
-
-
- Y += Height;
- Height = ComputeY(100) - Y;
- DrawThinBevelBox( Scr, BlankWnd->RPort, X+OffX,Y+OffY,
- Width,
- Height,
- FALSE );
- BlankIText[ 0 ].LeftEdge = X +5;
- BlankIText[ 0 ].TopEdge = Y +3;
-
- Y += Height;
- Height = ComputeY(BlankHeight) - Y;
- DrawThinBevelBox( Scr, BlankWnd->RPort, X+OffX,Y+OffY,
- Width,
- Height,
- FALSE );
-
- for (cnt = 0; cnt < Blank_TNUM; cnt++)
- {
- BlankIText[ cnt ].ITextFont = Font;
- PrintIText(BlankWnd->RPort,&BlankIText[ cnt ],OffX,OffY);
- }
- }
-
-
-
- int
- OpenBlankWindow(VOID)
- {
- struct NewGadget ng;
- struct Gadget *g;
- UWORD lc,tc;
- WORD wleft=WindowLeft, wtop=WindowTop;
- UWORD ww, wh;
-
- ComputeFont(BlankWidth,BlankHeight);
-
- ww = OffX + ComputeX(BlankWidth) + Scr->WBorRight;
- wh = OffY + ComputeY(BlankHeight) + Scr->WBorBottom;
-
- SetUpWindowCoordinates(ww, wh, &wleft, &wtop);
-
- if (! (g = CreateContext(&BlankGList)))
- {
- return(1L);
- }
-
- for(lc = 0,tc = 0; lc < Blank_CNT; lc++)
- {
-
- CopyMem((char *)&BlankNGad[ lc ],(char *)&ng,(long)sizeof(struct NewGadget));
-
- ng.ng_VisualInfo = VisualInfo;
- ng.ng_TextAttr = Font;
- ng.ng_LeftEdge = OffX +ComputeX(ng.ng_LeftEdge);
- ng.ng_TopEdge = OffY +ComputeY(ng.ng_TopEdge);
- ng.ng_Width = ComputeX(ng.ng_Width);
- ng.ng_Height = ComputeY(ng.ng_Height);
-
- BlankGadgets[ lc ] = g = CreateGadgetA((ULONG)BlankGTypes[ lc ],g,&ng,(struct TagItem *) &BlankGTags[ tc ]);
-
- while(BlankGTags[ tc ])
- tc += 2;
-
- tc++;
-
- if (NOT g)
- return(2L);
- }
-
- if (NOT (BlankWnd = OpenWindowTags(NULL,
- WA_Left, wleft,
- WA_Top, wtop,
- WA_Width, ww,
- WA_Height, wh,
- WA_IDCMP, LISTVIEWIDCMP|STRINGIDCMP|CYCLEIDCMP|BUTTONIDCMP|IDCMP_VANILLAKEY|IDCMP_REFRESHWINDOW|IDCMP_RAWKEY,
- WA_Flags, WFLG_DRAGBAR|WFLG_DEPTHGADGET|WFLG_SMART_REFRESH,
- WA_Gadgets, BlankGList,
- WA_Title, BlankWdt,
- WA_ScreenTitle, getString(COPYRIGHT_STRING),
- WA_PubScreen, Scr,
- WA_PubScreenName,PubScreenName,
- TAG_DONE)))
- return(4L);
-
- BlankAppWin = AddAppWindowA(0, 0, BlankWnd, AppMsgPort, NULL);
-
- GT_RefreshWindow(BlankWnd,NULL);
-
- BlankRender();
-
- return(0L);
- }
-
-
-
- VOID
- CloseBlankWindow(VOID)
- {
- CloseOneWindow(BlankWnd,NULL,BlankGList,BlankAppWin);
- BlankWnd = NULL;
- }
-
-
-
-
-
- /* initialise all gadgets of Blank window */
-
- static void
- InitBlankGadgets(VOID)
- {
- InitToggleGadgets(BLANK_WINDOW);
-
- InitWindowGadget(GDX_ScrTONum, GTIN_Number, blanksecs, BLANK_WINDOW);
- InitWindowGadget(GDX_ScrTONum, GA_Disabled, !screenblank, BLANK_WINDOW);
- InitWindowGadget(GDX_MouseTONum, GTIN_Number, mblanksecs, BLANK_WINDOW);
- InitWindowGadget(GDX_MouseTONum, GA_Disabled, !mouseblank, BLANK_WINDOW);
- InitWindowGadget(GDX_MBMethod, GTCY_Active, mouseblank, BLANK_WINDOW);
- InitWindowGadget(GDX_ScrBlMethod, GTCY_Active, screenblank, BLANK_WINDOW);
- }
-
-
-
-
-
- /* handle Blank window events */
- LONG
- HandleBlankIDCMP(VOID)
- {
- struct IntuiMessage *msg;
- struct Gadget *gadget;
- ULONG class;
- UWORD code;
- LONG num;
- BOOL close=FALSE;
- LONG ret=RET_OKAY;
-
- while (!close && (msg = GT_GetIMsg(BlankWnd->UserPort)))
- {
- class = msg->Class;
- code = msg->Code;
- gadget = (struct Gadget *)msg->IAddress;
- GT_ReplyIMsg(msg);
-
- switch (class)
- {
- case GADGETUP:
- case GADGETDOWN:
- switch (gadget->GadgetID)
- {
- case GD_Return3:
- CloseBlankWindow();
- if (!ShowWindowID(ROOT_WINDOW))
- ret= RET_QUIT;
- close=TRUE;
- break;
-
- case GD_ScrTONum:
- num = GetNumber(gadget);
- if (num >= 0)
- blanksecs = num;
- else
- DisplayBeep(BlankWnd->WScreen);
- InitWindowGadget(GDX_ScrTONum, GTIN_Number, blanksecs, BLANK_WINDOW);
- break;
-
- case GD_MouseTONum:
- num = GetNumber(gadget);
- if (num >= 0)
- mblanksecs = num;
- else
- DisplayBeep(BlankWnd->WScreen);
- InitWindowGadget(GDX_MouseTONum, GTIN_Number, mblanksecs, BLANK_WINDOW);
- break;
-
- case GD_BlankMouseOnKey:
- blankmouseonkey ^= TRUE;
- break;
-
- case GD_MBMethod:
- mouseblank = code;
- InitWindowGadget(GDX_MouseTONum, GA_Disabled, !mouseblank, BLANK_WINDOW);
- break;
-
- case GD_ScrBlMethod:
- screenblank = code;
- InitWindowGadget(GDX_ScrTONum, GA_Disabled, !screenblank, BLANK_WINDOW);
- break;
-
-
- } /* switch (gadget->GadgetID) */
- break;
-
- case IDCMP_RAWKEY:
- /* Help key pressed */
- if (code == 95)
- {
- /* Display the node */
- ShowYakHelp(PrefsHelp, "Blanking");
- }
- break;
-
- case REFRESHWINDOW:
- GT_BeginRefresh(BlankWnd);
- GT_EndRefresh(BlankWnd, TRUE);
- break;
-
- } /* switch (class) */
-
- } /* while more messages */
-
- return ret;
- }
-
-
-
- /* show our blank window */
- BOOL
- ShowBlankWindow(VOID)
- {
- if (!BlankWdi)
- {
- BlankWdi = TRUE;
-
- BlankWdt = getString(Blanking);
- LocalizeNGadLabels (Blank_CNT, BlankNGad);
- InitBlankITexts();
- InitMBMethod0Labels ();
- InitScrBlMethod0Labels ();
- }
-
- if (!OpenBlankWindow()) /* like the name says... */
- {
- InitBlankGadgets();
- wndsigflag = 1 << BlankWnd->UserPort->mp_SigBit;
- curwin = BlankWnd;
- curwinID = BLANK_WINDOW;
- HandleIDCMP = HandleBlankIDCMP;
- return TRUE;
- }
-
- FreeGadgets(BlankGList);
- CloseDownScreen();
- curwin = NULL;
- wndsigflag = 0L;
- return FALSE;
- }
-
-