home *** CD-ROM | disk | FTP | other *** search
- /*
- ** $Id: SerialPanel.c,v 1.8 92/08/18 16:11:44 olsen Sta Locker: olsen $
- ** $Revision: 1.8 $
- ** $Date: 92/08/18 16:11:44 $
- **
- ** Editing panel for serial configuration
- **
- ** Copyright ⌐ 1990-1992 by Olaf `Olsen' Barthel & MXM
- ** All Rights Reserved
- */
-
- #include "termGlobal.h"
-
- enum { GAD_BAUD,GAD_DATABITS,GAD_PARITY,GAD_STOPBITS,GAD_HANDSHAKING,GAD_DUPLEX,
- GAD_BUFFERSIZE,GAD_HIGHSPEED,GAD_SHARED,GAD_XON_XOFF,GAD_BREAKLENGTH,GAD_DEVICE,GAD_SELECT,
- GAD_UNIT,GAD_USE,GAD_CANCEL };
-
- STATIC LONG Bauds[15] =
- {
- 110,300,1200,2400,4800,7200,9600,12000,14400,19200,31250,38400,57600,76800,115200
- };
-
- STATIC LONG Sizes[11] =
- {
- 512,1024,2048,4096,8192,16384,32768,65536,131072,262144,524288
- };
-
- STATIC STRPTR DataBits[3] =
- {
- NULL,
- NULL,
- NULL
- };
-
- STATIC STRPTR Parity[6] =
- {
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL
- };
-
- STATIC STRPTR StopBits[3] =
- {
- NULL,
- NULL,
- NULL
- };
-
- STATIC STRPTR Handshaking[4] =
- {
- NULL,
- NULL,
- NULL,
- NULL
- };
-
- STATIC STRPTR Duplex[3] =
- {
- NULL,
- NULL,
- NULL
- };
-
- STATIC LONG __saveds
- ShowBaud(struct Gadget *SomeGadget,WORD Level)
- {
- return(Bauds[Level]);
- }
-
- STATIC LONG __saveds
- ShowSize(struct Gadget *SomeGadget,WORD Level)
- {
- return(Sizes[Level]);
- }
-
- STATIC struct Gadget *
- CreateAllGadgets(struct Configuration *Config,struct Gadget **GadgetArray,struct Gadget **GadgetList,APTR VisualInfo,UWORD TopEdge)
- {
- struct Gadget *Gadget;
- struct NewGadget NewGadget;
- UWORD Counter = 0;
- WORD i,Rate,Size;
- BYTE HighSpeed;
-
- if(Config -> HighSpeed & ~SERIAL_SHARED)
- HighSpeed = TRUE;
- else
- HighSpeed = FALSE;
-
- SZ_SizeSetup(Screen,&UserFont,TRUE);
-
- LocalizeString(DataBits,MSG_SERIALPANEL_SEVEN_BITS_TXT,MSG_SERIALPANEL_EIGHT_BITS_TXT);
- LocalizeString(Parity,MSG_SERIALPANEL_NO_PARITY_TXT,MSG_SERIALPANEL_SPACE_TXT);
- LocalizeString(StopBits,MSG_SERIALPANEL_ONE_BIT_TXT,MSG_SERIALPANEL_TWO_BITS_TXT);
- LocalizeString(Handshaking,MSG_SERIALPANEL_HANDSHAKING_NONE_TXT,MSG_SERIALPANEL_HANDSHAKING_RTS_CTS_DSR_TXT);
- LocalizeString(Duplex,MSG_SERIALPANEL_DUPLEX_FULL_TXT,MSG_SERIALPANEL_DUPLEX_HALF_TXT);
-
- memset(&NewGadget,0,sizeof(struct NewGadget));
-
- if(Gadget = CreateContext(GadgetList))
- {
- extern APTR LocaleBase;
-
- for(i = 0 ; i < sizeof(Bauds) / sizeof(LONG) ; i++)
- {
- if(Config -> BaudRate == Bauds[i])
- {
- Rate = i;
-
- break;
- }
- }
-
- for(i = 0 ; i < sizeof(Sizes) / sizeof(LONG) ; i++)
- {
- if(Config -> SerBuffSize == Sizes[i])
- {
- Size = i;
-
- break;
- }
- }
-
- SZ_AddLeftOffset(SZ_LeftOffsetDelta(MSG_SERIALPANEL_BAUD_RATE_GAD,MSG_SERIALPANEL_BUFFER_SIZE_GAD));
-
- SZ_ResetMaxWidth();
-
- SZ_UpdateMaxWidth(CYCLE_KIND,NULL,0,DataBits);
- SZ_UpdateMaxWidth(CYCLE_KIND,NULL,0,Parity);
- SZ_UpdateMaxWidth(CYCLE_KIND,NULL,0,StopBits);
- SZ_UpdateMaxWidth(CYCLE_KIND,NULL,0,Handshaking);
- SZ_UpdateMaxWidth(CYCLE_KIND,NULL,0,Duplex);
-
- SZ_SetWidth(SZ_ResetMaxWidth());
-
- /* Are we in high speed mode? If so, reset
- * the parameters to defaults.
- */
-
- if(HighSpeed)
- {
- Config -> BitsPerChar = 8;
- Config -> StopBits = 1;
- Config -> Parity = PARITY_NONE;
- }
-
- NewGadget . ng_GadgetText = LocaleString(MSG_SERIALPANEL_BAUD_RATE_GAD);
- NewGadget . ng_TextAttr = &UserFont;
- NewGadget . ng_VisualInfo = VisualInfo;
- NewGadget . ng_GadgetID = Counter;
-
- GadgetArray[Counter++] = Gadget = CreateGadget(SLIDER_KIND,Gadget,&NewGadget,
- SZ_Adjust, TRUE,
- SZ_AutoWidth, TRUE,
-
- GT_Underscore, '_',
- GTSL_Min, 0,
- GTSL_Max, 14,
- GTSL_Level, Rate,
- GTSL_DispFunc, ShowBaud,
- GTSL_LevelFormat, LocaleBase ? "%7lD" : "%7ld",
- GTSL_MaxLevelLen, 7,
- TAG_DONE);
-
- NewGadget . ng_GadgetText = LocaleString(MSG_SERIALPANEL_BITS_PER_CHAR_GAD);
- NewGadget . ng_GadgetID = Counter;
-
- GadgetArray[Counter++] = Gadget = CreateGadget(CYCLE_KIND,Gadget,&NewGadget,
- SZ_Adjust, TRUE,
- SZ_AutoWidth, TRUE,
-
- GT_Underscore, '_',
- GA_Disabled, HighSpeed,
- GTCY_Labels, DataBits,
- GTCY_Active, Config -> BitsPerChar - 7,
- TAG_DONE);
-
- NewGadget . ng_GadgetText = LocaleString(MSG_SERIALPANEL_PARITY_GAD);
- NewGadget . ng_GadgetID = Counter;
-
- GadgetArray[Counter++] = Gadget = CreateGadget(CYCLE_KIND,Gadget,&NewGadget,
- SZ_Adjust, TRUE,
- SZ_AutoWidth, TRUE,
-
- GT_Underscore, '_',
- GA_Disabled, HighSpeed,
- GTCY_Labels, Parity,
- GTCY_Active, Config -> Parity,
- TAG_DONE);
-
- NewGadget . ng_GadgetText = LocaleString(MSG_SERIALPANEL_STOP_BITS_GAD);
- NewGadget . ng_GadgetID = Counter;
-
- GadgetArray[Counter++] = Gadget = CreateGadget(CYCLE_KIND,Gadget,&NewGadget,
- SZ_Adjust, TRUE,
- SZ_AutoWidth, TRUE,
-
- GT_Underscore, '_',
- GA_Disabled, HighSpeed,
- GTCY_Labels, StopBits,
- GTCY_Active, Config -> StopBits - 1,
- TAG_DONE);
-
- NewGadget . ng_GadgetText = LocaleString(MSG_SERIALPANEL_HANDSHAKING_GAD);
- NewGadget . ng_GadgetID = Counter;
-
- GadgetArray[Counter++] = Gadget = CreateGadget(CYCLE_KIND,Gadget,&NewGadget,
- SZ_Adjust, TRUE,
- SZ_AutoWidth, TRUE,
-
- GT_Underscore, '_',
- GTCY_Labels, Handshaking,
- GTCY_Active, Config -> HandshakingProtocol,
- TAG_DONE);
-
- NewGadget . ng_GadgetText = LocaleString(MSG_SERIALPANEL_DUPLEX_GAD);
- NewGadget . ng_GadgetID = Counter;
-
- GadgetArray[Counter++] = Gadget = CreateGadget(CYCLE_KIND,Gadget,&NewGadget,
- SZ_Adjust, TRUE,
- SZ_AutoWidth, TRUE,
-
- GT_Underscore, '_',
- GTCY_Labels, Duplex,
- GTCY_Active, Config -> Duplex,
- TAG_DONE);
-
- NewGadget . ng_GadgetText = LocaleString(MSG_SERIALPANEL_BUFFER_SIZE_GAD);
- NewGadget . ng_GadgetID = Counter;
-
- GadgetArray[Counter++] = Gadget = CreateGadget(SLIDER_KIND,Gadget,&NewGadget,
- SZ_Adjust, TRUE,
- SZ_AutoWidth, TRUE,
-
- GT_Underscore, '_',
- GTSL_Min, 0,
- GTSL_Max, 10,
- GTSL_Level, Size,
- GTSL_DispFunc, ShowSize,
- GTSL_LevelFormat, LocaleBase ? "%7lD" : "%7ld",
- GTSL_MaxLevelLen, 7,
- TAG_DONE);
-
- SZ_AddLeftOffset(SZ_LeftOffsetN(MSG_SERIALPANEL_HIGH_SPEED_MODE_GAD,MSG_SERIALPANEL_SHARED_ACCESS_GAD,MSG_SERIALPANEL_XON_XOFF_GAD,MSG_SERIALPANEL_BREAK_LENGTH_GAD,MSG_SERIALPANEL_SERIAL_DEVICE_GAD,MSG_SERIALPANEL_DEVICE_UNIT_NUMBER_GAD,-1));
-
- SZ_UpdateMaxWidth(STRING_KIND,NULL,16,NULL);
- SZ_UpdateMaxWidth(BUTTON_KIND,LocaleString(MSG_SERIALPANEL_SELECT_NEW_DEVICE_GAD),0,NULL);
-
- SZ_SetWidth(SZ_ResetMaxWidth());
-
- NewGadget . ng_GadgetText = LocaleString(MSG_SERIALPANEL_HIGH_SPEED_MODE_GAD);
- NewGadget . ng_GadgetID = Counter;
-
- GadgetArray[Counter++] = Gadget = CreateGadget(CHECKBOX_KIND,Gadget,&NewGadget,
- SZ_Adjust, TRUE,
- SZ_NewColumn, TRUE,
-
- GT_Underscore, '_',
- GTCB_Checked, Config -> HighSpeed & ~SERIAL_SHARED,
- TAG_DONE);
-
- NewGadget . ng_GadgetText = LocaleString(MSG_SERIALPANEL_SHARED_ACCESS_GAD);
- NewGadget . ng_GadgetID = Counter;
-
- GadgetArray[Counter++] = Gadget = CreateGadget(CHECKBOX_KIND,Gadget,&NewGadget,
- SZ_Adjust, TRUE,
-
- GT_Underscore, '_',
- GTCB_Checked, Config -> HighSpeed & SERIAL_SHARED,
- TAG_DONE);
-
- NewGadget . ng_GadgetText = LocaleString(MSG_SERIALPANEL_XON_XOFF_GAD);
- NewGadget . ng_GadgetID = Counter;
-
- GadgetArray[Counter++] = Gadget = CreateGadget(CHECKBOX_KIND,Gadget,&NewGadget,
- SZ_Adjust, TRUE,
-
- GT_Underscore, '_',
- GTCB_Checked, Config -> xONxOFF,
- TAG_DONE);
-
- NewGadget . ng_GadgetText = LocaleString(MSG_SERIALPANEL_BREAK_LENGTH_GAD);
- NewGadget . ng_GadgetID = Counter;
-
- GadgetArray[Counter++] = Gadget = CreateGadget(INTEGER_KIND,Gadget,&NewGadget,
- SZ_Adjust, TRUE,
- SZ_AutoWidth, TRUE,
-
- GT_Underscore, '_',
- GTIN_MaxChars, 8,
- GTIN_Number, Config -> BreakLength,
- GTST_EditHook, &CommandHook,
- GA_Immediate, TRUE,
- TAG_DONE);
-
- NewGadget . ng_GadgetText = LocaleString(MSG_SERIALPANEL_SERIAL_DEVICE_GAD);
- NewGadget . ng_GadgetID = Counter;
-
- GadgetArray[Counter++] = Gadget = CreateGadget(STRING_KIND,Gadget,&NewGadget,
- SZ_Adjust, TRUE,
- SZ_AutoWidth, TRUE,
-
- GT_Underscore, '_',
- GTST_MaxChars, 39,
- GTST_String, Config -> SerialDevice,
- GTST_EditHook, &CommandHook,
- GA_Immediate, TRUE,
- TAG_DONE);
-
- NewGadget . ng_GadgetText = LocaleString(MSG_SERIALPANEL_SELECT_NEW_DEVICE_GAD);
- NewGadget . ng_GadgetID = Counter;
-
- GadgetArray[Counter++] = Gadget = CreateGadget(BUTTON_KIND,Gadget,&NewGadget,
- SZ_Adjust, TRUE,
- SZ_AutoWidth, TRUE,
-
- GT_Underscore, '_',
- TAG_DONE);
-
- NewGadget . ng_GadgetText = LocaleString(MSG_SERIALPANEL_DEVICE_UNIT_NUMBER_GAD);
- NewGadget . ng_GadgetID = Counter;
-
- GadgetArray[Counter++] = Gadget = CreateGadget(INTEGER_KIND,Gadget,&NewGadget,
- SZ_Adjust, TRUE,
- SZ_AutoWidth, TRUE,
-
- GT_Underscore, '_',
- GTIN_MaxChars, 8,
- GTIN_Number, Config -> UnitNumber,
- GTST_EditHook, &CommandHook,
- GA_Immediate, TRUE,
- TAG_DONE);
-
- SZ_UpdateMaxWidth(BUTTON_KIND,LocaleString(MSG_GLOBAL_USE_GAD),0,NULL);
- SZ_UpdateMaxWidth(BUTTON_KIND,LocaleString(MSG_GLOBAL_CANCEL_GAD),0,NULL);
-
- SZ_SetWidth(SZ_ResetMaxWidth());
-
- NewGadget . ng_GadgetText = LocaleString(MSG_GLOBAL_USE_GAD);
- NewGadget . ng_GadgetID = Counter;
-
- GadgetArray[Counter++] = Gadget = CreateGadget(BUTTON_KIND,Gadget,&NewGadget,
- SZ_AlignExtra, TRUE,
- SZ_Adjust, TRUE,
- SZ_AutoWidth, TRUE,
- SZ_AlignLeft, TRUE,
- SZ_AlignBottom, TRUE,
-
- GT_Underscore, '_',
- TAG_DONE);
-
- NewGadget . ng_GadgetText = LocaleString(MSG_GLOBAL_CANCEL_GAD);
- NewGadget . ng_GadgetID = Counter;
-
- GadgetArray[Counter++] = Gadget = CreateGadget(BUTTON_KIND,Gadget,&NewGadget,
- SZ_Adjust, TRUE,
- SZ_AutoWidth, TRUE,
- SZ_AlignRight, TRUE,
-
- GT_Underscore, '_',
- TAG_DONE);
- }
-
- return(Gadget);
- }
-
- /* SelectDevice(UBYTE *Name,struct Window *ParentWindow):
- *
- * Select a new serial driver device using the
- * asl.library file requester.
- */
-
- STATIC BYTE
- SelectDevice(UBYTE *Name,struct Window *ParentWindow)
- {
- struct FileRequester *AslFileRequest;
- UBYTE *File;
- BYTE NewDevice = FALSE;
-
- File = Name;
-
- if(FilePart(File) == File)
- strcpy(SharedBuffer,"Devs:");
- else
- {
- UBYTE *Temp;
-
- strcpy(SharedBuffer,File);
-
- Temp = PathPart(SharedBuffer);
-
- Temp[0] = 0;
-
- File = FilePart(File);
- }
-
- if(AslFileRequest = (struct FileRequester *)AllocAslRequestTags(ASL_FileRequest,
- ASL_Window, ParentWindow,
- ASL_File, File,
- ASL_Dir, SharedBuffer,
- ASL_Hail, LocaleString(MSG_SERIALPANEL_SELECT_DEVICE_TXT),
- ASL_FuncFlags, FILF_NEWIDCMP,
- ASL_Pattern, "#?.device",
- ASL_OKText, LocaleString(MSG_GLOBAL_SELECT_TXT),
- TAG_END))
- {
- if(AslRequestTags(AslFileRequest,TAG_DONE))
- {
- if(AslFileRequest -> rf_File[0])
- {
- if(Stricmp(AslFileRequest -> rf_Dir,"Devs:"))
- {
- strcpy(SharedBuffer,AslFileRequest -> rf_Dir);
-
- if(!AddPart(SharedBuffer,AslFileRequest -> rf_File,256))
- strcpy(SharedBuffer,AslFileRequest -> rf_File);
- }
- else
- strcpy(SharedBuffer,AslFileRequest -> rf_File);
-
- if(Stricmp(SharedBuffer,Name))
- {
- strcpy(Name,SharedBuffer);
-
- NewDevice = TRUE;
- }
- }
- }
-
- FreeAslRequest(AslFileRequest);
- }
-
- return(NewDevice);
- }
-
- BYTE
- SerialPanel(struct Configuration *Config)
- {
- struct Window *PanelWindow;
- struct Gadget *GadgetList = NULL;
- struct Gadget *GadgetArray[GAD_CANCEL + 1];
- UBYTE DummyBuffer[256];
-
- CopyMem(Config,&PrivateConfig,sizeof(struct Configuration));
-
- if(CreateAllGadgets(Config,&GadgetArray[0],&GadgetList,VisualInfo,Screen -> WBorTop + Screen -> Font -> ta_YSize + 1))
- {
- if(PanelWindow = OpenWindowTags(NULL,
- WA_Left, (Screen -> Width - SZ_GetWindowWidth()) / 2,
- WA_Top, (Screen -> Height - SZ_GetWindowHeight()) / 2,
- WA_Width, SZ_GetWindowWidth(),
- WA_Height, SZ_GetWindowHeight(),
-
- WA_Activate, TRUE,
- WA_DragBar, TRUE,
- WA_DepthGadget, TRUE,
- WA_RMBTrap, TRUE,
- WA_DepthGadget, TRUE,
- WA_CloseGadget, TRUE,
- WA_CustomScreen,Screen,
-
- WA_IDCMP, IDCMP_GADGETDOWN | IDCMP_ACTIVEWINDOW | IDCMP_CLOSEWINDOW | IDCMP_VANILLAKEY | SLIDERIDCMP | CHECKBOXIDCMP | BUTTONIDCMP | CYCLEIDCMP | INTEGERIDCMP | STRINGIDCMP,
-
- WA_Title, LocaleString(MSG_SERIALPANEL_SERIAL_PREFERENCES_TXT),
- TAG_DONE))
- {
- struct IntuiMessage *Massage;
- ULONG Class,Code;
- struct Gadget *Gadget;
- BYTE Terminated = FALSE;
-
- PushWindow(PanelWindow);
-
- AddGList(PanelWindow,GadgetList,(UWORD)-1,(UWORD)-1,NULL);
- RefreshGList(GadgetList,PanelWindow,NULL,(UWORD)-1);
- GT_RefreshWindow(PanelWindow,NULL);
-
- ActiveGadget = NULL;
-
- while(!Terminated)
- {
- WaitPort(PanelWindow -> UserPort);
-
- while(!Terminated && (Massage = (struct IntuiMessage *)GT_GetIMsg(PanelWindow -> UserPort)))
- {
- Class = Massage -> Class;
- Code = Massage -> Code;
- Gadget = (struct Gadget *)Massage -> IAddress;
-
- GT_ReplyIMsg(Massage);
-
- if(Class == IDCMP_VANILLAKEY)
- KeySelect(GadgetArray,GAD_CANCEL,Code,PanelWindow,&Gadget,&Class,&Code);
-
- if(Class == IDCMP_GADGETDOWN)
- {
- if((Gadget -> GadgetType & GTYP_GTYPEMASK) == GTYP_STRGADGET)
- ActiveGadget = Gadget;
- }
-
- if(Class == IDCMP_ACTIVEWINDOW && ActiveGadget)
- ActivateGadget(ActiveGadget,PanelWindow,NULL);
-
- if(Class == IDCMP_CLOSEWINDOW)
- Terminated = TRUE;
-
- if(Class == IDCMP_MOUSEMOVE)
- {
- switch(Gadget -> GadgetID)
- {
- case GAD_BAUD: Config -> BaudRate = Bauds[Code];
- break;
-
- case GAD_BUFFERSIZE: Config -> SerBuffSize = Sizes[Code];
- break;
-
- default: break;
- }
- }
-
- GadCheck: if(Class == IDCMP_GADGETUP)
- {
- switch(Gadget -> GadgetID)
- {
- case GAD_HIGHSPEED: if(GT_CHECKED(Gadget))
- {
- GT_SetGadgetAttrs(GadgetArray[GAD_DATABITS],PanelWindow,NULL,
- GA_Disabled, TRUE,
- GTCY_Active, 1,
- TAG_DONE);
-
- Config -> BitsPerChar = 8;
-
- GT_SetGadgetAttrs(GadgetArray[GAD_STOPBITS],PanelWindow,NULL,
- GA_Disabled, TRUE,
- GTCY_Active, 0,
- TAG_DONE);
-
- Config -> StopBits = 1;
-
- GT_SetGadgetAttrs(GadgetArray[GAD_PARITY],PanelWindow,NULL,
- GA_Disabled, TRUE,
- GTCY_Active, PARITY_NONE,
- TAG_DONE);
-
- Config -> Parity = PARITY_NONE;
- }
- else
- {
- GT_SetGadgetAttrs(GadgetArray[GAD_DATABITS],PanelWindow,NULL,
- GA_Disabled,FALSE,
- TAG_DONE);
-
- GT_SetGadgetAttrs(GadgetArray[GAD_STOPBITS],PanelWindow,NULL,
- GA_Disabled,FALSE,
- TAG_DONE);
-
- GT_SetGadgetAttrs(GadgetArray[GAD_PARITY],PanelWindow,NULL,
- GA_Disabled,FALSE,
- TAG_DONE);
- }
-
- break;
-
- case GAD_DUPLEX: Config -> Duplex = Code;
- break;
-
- case GAD_HANDSHAKING: Config -> HandshakingProtocol = Code;
- break;
-
- case GAD_STOPBITS: Config -> StopBits = 1 + Code;
- break;
-
- case GAD_PARITY: Config -> Parity = Code;
- break;
-
- case GAD_DATABITS: Config -> BitsPerChar = 7 + Code;
- break;
-
- case GAD_SELECT: strcpy(DummyBuffer,GT_STRING(GadgetArray[GAD_DEVICE]));
-
- BlockWindow(PanelWindow);
-
- if(SelectDevice(DummyBuffer,PanelWindow))
- {
- if(strlen(DummyBuffer) > 39)
- {
- GT_SetGadgetAttrs(GadgetArray[GAD_DEVICE],PanelWindow,NULL,
- GTST_String,FilePart(DummyBuffer),
- TAG_DONE);
- }
- else
- {
- GT_SetGadgetAttrs(GadgetArray[GAD_DEVICE],PanelWindow,NULL,
- GTST_String,DummyBuffer,
- TAG_DONE);
- }
- }
-
- ReleaseWindow(PanelWindow);
-
- break;
-
- case GAD_USE: Terminated = TRUE;
-
- if((Config -> UnitNumber = GT_INTEGER(GadgetArray[GAD_UNIT])) < 0)
- Config -> UnitNumber = 0;
-
- strcpy(Config -> SerialDevice,GT_STRING(GadgetArray[GAD_DEVICE]));
-
- Config -> BreakLength = GT_INTEGER(GadgetArray[GAD_BREAKLENGTH]);
- Config -> HighSpeed = GT_CHECKED(GadgetArray[GAD_HIGHSPEED]);
- Config -> xONxOFF = GT_CHECKED(GadgetArray[GAD_XON_XOFF]);
-
- if(GT_CHECKED(GadgetArray[GAD_SHARED]))
- Config -> HighSpeed |= SERIAL_SHARED;
-
- break;
-
- case GAD_CANCEL: Terminated = TRUE;
-
- CopyMem(&PrivateConfig,Config,sizeof(struct Configuration));
-
- break;
-
- default: break;
- }
- }
- }
- }
-
- RemoveGList(PanelWindow,GadgetList,(UWORD)-1);
-
- PopWindow();
-
- CloseWindow(PanelWindow);
- }
- }
-
- FreeGadgets(GadgetList);
-
- if(memcmp(&PrivateConfig,Config,sizeof(struct Configuration)) || PrivateConfig . SerBuffSize != Config -> SerBuffSize)
- return(TRUE);
- else
- return(FALSE);
- }
-