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 and Gaƫl Marziou
- */
-
-
-
-
- #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 <graphics/displayinfo.h>
- #include <graphics/gfxbase.h>
- #include <proto/exec.h>
- #include <proto/intuition.h>
- #include <proto/gadtools.h>
- #include <proto/graphics.h>
- #include <proto/locale.h>
- #include <proto/utility.h>
- #include <string.h>
-
-
- #include "version.h"
- #include "hotkey_types.h"
- #include "yak.h"
- #include "gui.h"
-
- #define CATCOMP_NUMBERS
- #include "locale/yak_locale_strings.h"
-
- extern struct Catalog *Catalog;
- extern struct DosLibrary *DOSBase;
-
- extern LONG (*HandleIDCMP)(void);
-
- struct Window *MiscWnd = NULL;
- struct Gadget *MiscGList = NULL;
- struct Gadget *MiscGadgets[Misc_CNT];
- UWORD MiscLeft = 0;
- UWORD MiscWidth = 443;
- UWORD MiscHeight = 92;
- UBYTE *MiscWdt = NULL;
-
-
- UWORD MiscGTypes[] = {
- INTEGER_KIND,
- INTEGER_KIND,
- BUTTON_KIND,
- CHECKBOX_KIND,
- CHECKBOX_KIND,
- CHECKBOX_KIND
- };
-
- struct NewGadget MiscNGad[] = {
- 240,4,60,14,NULL,NULL,GD_ClickVol ,PLACETEXT_LEFT ,NULL ,NULL,
- 240,18,60,14,NULL,NULL,GD_AutoPointDelay ,PLACETEXT_LEFT ,NULL ,NULL,
- 170,75,100,13,NULL,NULL,GD_Return2 ,PLACETEXT_IN ,NULL ,NULL,
- 227,42,26,11,NULL,NULL,GD_BlackBorderCheck,PLACETEXT_RIGHT ,NULL ,NULL,
- 7,42,26,11,NULL,NULL,GD_WildStarCheck ,PLACETEXT_RIGHT ,NULL ,NULL,
- 7,54,26,11,NULL,NULL,GD_NoClickCheck ,PLACETEXT_RIGHT ,NULL ,NULL
- };
-
- VOID InitMiscNGad (VOID)
- {
- MiscNGad[GD_ClickVol].ng_GadgetText = getString(CLICKVOLUME_STRING);
- MiscNGad[GD_AutoPointDelay].ng_GadgetText = getString(AUTOPOINT_DELAY_STRING);
- MiscNGad[GD_Return2].ng_GadgetText = getString(OK_STRING);
- MiscNGad[GD_BlackBorderCheck].ng_GadgetText = getString(BLACK_BORDER);
- MiscNGad[GD_WildStarCheck].ng_GadgetText = getString(WILD_STAR_STRING);
- MiscNGad[GD_NoClickCheck].ng_GadgetText = getString(NOCLICK_STRING);
- }
-
-
- ULONG MiscGTags[] = {
- (GTIN_Number),0,(GTIN_MaxChars),4,(STRINGA_Justification),STRINGRIGHT,(TAG_DONE),
- (GTIN_Number),0,(GTIN_MaxChars),4,(STRINGA_Justification),STRINGRIGHT,(TAG_DONE),
- (TAG_DONE),
- (GTCB_Scaled),TRUE,(TAG_DONE),
- (GTCB_Scaled),TRUE,(TAG_DONE),
- (GTCB_Scaled),TRUE,(TAG_DONE)
- };
-
-
-
- VOID
- MiscRender()
- {
- UWORD X,Width;
-
- ComputeFont(MiscWidth,MiscHeight);
-
- Width = ComputeX( 440 );
- X = OffX + ComputeX( 2 ) ;
-
- DrawBevelBox( MiscWnd->RPort, X,
- OffY + ComputeY( 72 ),
- Width,
- ComputeY( 19 ),
- GT_VisualInfo, VisualInfo, TAG_DONE );
- DrawBevelBox( MiscWnd->RPort, X,
- OffY + ComputeY( 38 ),
- Width,
- ComputeY( 34 ),
- GT_VisualInfo, VisualInfo, TAG_DONE );
- DrawBevelBox( MiscWnd->RPort, X,
- OffY + ComputeY( 1 ),
- Width,
- ComputeY( 37 ),
- GT_VisualInfo, VisualInfo, TAG_DONE );
- }
-
-
-
-
- int
- OpenMiscWindow()
- {
- struct NewGadget ng;
- struct Gadget *g;
- UWORD lc,tc;
- UWORD wleft = MiscLeft,wtop = WindowTop,ww,wh;
-
- ComputeFont(MiscWidth,MiscHeight);
-
- ww = ComputeX(MiscWidth);
- wh = ComputeY(MiscHeight);
-
- if ((wleft +ww +OffX +Scr->WBorRight) > Scr->Width) wleft = Scr->Width -ww;
- if ((wtop +wh +OffY +Scr->WBorBottom) > Scr->Height) wtop = Scr->Height -wh;
-
- if (! (g = CreateContext(&MiscGList)))
- {
- return(1L);
- }
-
- for(lc = 0,tc = 0; lc < Misc_CNT; lc++)
- {
-
- CopyMem((char *)&MiscNGad[ 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);
-
- MiscGadgets[ lc ] = g = CreateGadgetA((ULONG)MiscGTypes[ lc ],g,&ng,(struct TagItem *) &MiscGTags[ tc ]);
-
- while(MiscGTags[ tc ]) tc += 2;
- tc++;
-
- if (NOT g)
- return(2L);
- }
- if (NOT (MiscWnd = OpenWindowTags(NULL,
- WA_Left, wleft,
- WA_Top, wtop,
- WA_Width, ww +OffX +Scr->WBorRight,
- WA_Height, wh +OffY +Scr->WBorBottom,
- WA_IDCMP, LISTVIEWIDCMP|STRINGIDCMP|CYCLEIDCMP|BUTTONIDCMP|IDCMP_CLOSEWINDOW|IDCMP_VANILLAKEY|IDCMP_REFRESHWINDOW,
- WA_Flags, WFLG_DRAGBAR|WFLG_DEPTHGADGET|WFLG_CLOSEGADGET|WFLG_SMART_REFRESH,
- WA_Gadgets, MiscGList,
- WA_Title, MiscWdt,
- WA_ScreenTitle, getString(COPYRIGHT_STRING),
- WA_PubScreen, TRUE,
- WA_PubScreenName,PubScreenName,
- TAG_DONE)))
- return(4L);
-
- GT_RefreshWindow(MiscWnd,NULL);
-
- MiscRender();
-
- return(0L);
- }
-
-
-
-
-
- VOID
- CloseMiscWindow()
- {
- CloseOneWindow(MiscWnd,NULL,MiscGList);
- MiscWnd = NULL;
- }
-
-
-
- /* initialise all gadgets of Misc window */
- static void
- InitMiscGadgets(void)
- {
- InitToggleGadgets(MISC_WINDOW);
- InitWindowGadget(GDX_ClickVol, GTIN_Number, click_volume, MISC_WINDOW);
- InitWindowGadget(GDX_AutoPointDelay, GTIN_Number, autopoint_delay, MISC_WINDOW);
- }
-
-
- /* handle Misc window events */
- LONG
- HandleMiscIDCMP(void)
- {
- struct IntuiMessage *msg;
- struct Gadget *gadget;
- ULONG class;
- UWORD code;
- LONG num;
-
- while (msg = GT_GetIMsg(MiscWnd->UserPort))
- {
- class = msg->Class;
- code = msg->Code;
- gadget = (struct Gadget *)msg->IAddress;
- GT_ReplyIMsg(msg);
-
- switch (class)
- {
- case CLOSEWINDOW:
- HideInterface();
- return ROOT_OKAY;
-
- case GADGETUP:
- case GADGETDOWN:
- switch (gadget->GadgetID)
- {
- case GD_Return2:
- UpdateWindowsPosition();
- CloseMiscWindow();
- if (!ShowRootWindow())
- PostError(getString(Couldnt_open_other_window_ERR));
- return ROOT_OKAY;
-
- case GD_ClickVol:
- num = GetNumber(gadget);
- if (num<0)
- {
- num = 0;
- }
- else
- {
- if (num>64)
- {
- num = 64;
- }
- }
- click_volume = num;
- InitWindowGadget(GDX_ClickVol, GTIN_Number, click_volume, MISC_WINDOW);
- break;
-
- case GD_AutoPointDelay:
- num = GetNumber(gadget);
- if (num<0)
- {
- num = 0;
- }
- else
- {
- if (num>5)
- {
- num = 5;
- }
- }
- autopoint_delay = num;
- InitWindowGadget(GDX_AutoPointDelay, GTIN_Number, autopoint_delay, MISC_WINDOW);
- break;
-
- case GD_BlackBorderCheck:
- blackborder ^= TRUE;
- ToggleBlackBorder(blackborder);
- break;
-
- case GD_WildStarCheck: /* toggle */
- wildstar ^= TRUE;
- if (wildstar) WILDSTARON; else WILDSTAROFF;
- break;
-
-
- case GD_NoClickCheck: /* toggle */
- noclick ^= TRUE;
- SetClickDrive(noclick);
- break;
-
- } /* switch (gadget->GadgetID) */
- break;
-
- case REFRESHWINDOW:
- GT_BeginRefresh(MiscWnd);
- GT_EndRefresh(MiscWnd, TRUE);
- break;
-
- } /* switch (class) */
-
- } /* while more messages */
-
- return ROOT_OKAY;
- }
-
-
-
-
- /* show our misc window */
- BOOL
- ShowMiscWindow(void)
- {
- if (!OpenMiscWindow()) /* like the name says... */
- {
- InitMiscGadgets();
- wndsigflag = 1 << MiscWnd->UserPort->mp_SigBit;
- curwin = MiscWnd;
- HandleIDCMP = HandleMiscIDCMP;
- return TRUE;
- }
- CloseDownScreen();
- return FALSE;
- }
-
-
-