1 /* 2 Copyright (C) 1997-2005 Dimitrios P. Bouras 3 4 This program is free software; you can redistribute it and/or modify 5 it under the terms of the GNU General Public License as published by 6 the Free Software Foundation; either version 2 of the License, or 7 (at your option) any later version. 8 9 This program is distributed in the hope that it will be useful, 10 but WITHOUT ANY WARRANTY; without even the implied warranty of 11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 GNU General Public License for more details. 13 14 You should have received a copy of the GNU General Public License 15 along with this program; if not, write to the Free Software 16 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. 17 18 For author contact information, look in the README file. 19 */ 20 21 /* Callbacks */ 22 23 void doInstanceCheck(FL_OBJECT *, long); 24 25 void doConnect(FL_OBJECT *, long); 26 void doInterrupt(FL_OBJECT *, long); 27 void doDisconnect(FL_OBJECT *, long); 28 void doQuit(FL_OBJECT *, long); 29 void doFile(FL_OBJECT *, long); 30 void doHelp(FL_OBJECT *, long); 31 void doISPDropChoice(FL_OBJECT *, long); 32 void doStartupTip(FL_OBJECT *, long); 33 34 void doTelNoInput(FL_OBJECT *, long); 35 void doAccountInput(FL_OBJECT *, long); 36 void doPasswdInput(FL_OBJECT *, long); 37 void doUNInput(FL_OBJECT *, long); 38 void doRemoteInput(FL_OBJECT *, long); 39 void doAuthPAPButton(FL_OBJECT *, long); 40 void doAuthNoneButton(FL_OBJECT *, long); 41 void doAuthPAPSButton(FL_OBJECT *, long); 42 void doAuthCHAPSButton(FL_OBJECT *, long); 43 void doISPPick(FL_OBJECT *, long); 44 void doISPPickNEdit(FL_OBJECT *, long); 45 void doAccountInfoAdd(FL_OBJECT *, long); 46 void doAccountInfoDelete(FL_OBJECT *, long); 47 void doAccountInfoCopy(FL_OBJECT *, long); 48 void doAccountInfoPaste(FL_OBJECT *, long); 49 void doISPDefault(FL_OBJECT *, long); 50 void doISPAutoDial(FL_OBJECT *, long); 51 void doAutoRedial(FL_OBJECT *, long); 52 void doIspPttDropChoice(FL_OBJECT *, long); 53 void doIspZoneDropChoice(FL_OBJECT *, long); 54 void doAccountTip(FL_OBJECT *, long); 55 56 void doRetryInput(FL_OBJECT *, long); 57 void doDelayInput(FL_OBJECT *, long); 58 void doCBYesButton(FL_OBJECT *, long); 59 void doCBNoButton(FL_OBJECT *, long); 60 void doCBOptions(FL_OBJECT *, long); 61 void doCNWaitInput(FL_OBJECT *, long); 62 void doLCPWaitInput(FL_OBJECT *, long); 63 void doCBInfoTip(FL_OBJECT *, long); 64 void doRBYesButton(FL_OBJECT *, long); 65 void doRBNoButton(FL_OBJECT *, long); 66 void doTTYesButton(FL_OBJECT *, long); 67 void doTTNoButton(FL_OBJECT *, long); 68 void doColumnsInput(FL_OBJECT *, long); 69 void doRowsInput(FL_OBJECT *, long); 70 void doExpectInput(FL_OBJECT *, long); 71 void doSendInput(FL_OBJECT *, long); 72 73 void doCBInfoOK(FL_OBJECT *, long); 74 void doCBInfoCancel(FL_OBJECT *, long); 75 void doCBDelayInput(FL_OBJECT *, long); 76 void doCBExpectInput(FL_OBJECT *, long); 77 void doCBSendInput(FL_OBJECT *, long); 78 void doCBColumnsInput(FL_OBJECT *, long); 79 void doCBRowsInput(FL_OBJECT *, long); 80 void doCBTelInput(FL_OBJECT *, long); 81 void doLTScriptedButton(FL_OBJECT *, long); 82 void doLTTerminalButton(FL_OBJECT *, long); 83 void doLTRASButton(FL_OBJECT *, long); 84 85 void doISPNameInput(FL_OBJECT *, long); 86 void doISPNameEditOK(FL_OBJECT *, long); 87 void doISPNameEditCancel(FL_OBJECT *, long); 88 89 void doExitOK(FL_OBJECT *, long); 90 void doExitCancel(FL_OBJECT *, long); 91 92 void doAboutOK(FL_OBJECT *, long); 93 void doHelpInfoOK(FL_OBJECT *, long); 94 void doStatsInfoOK(FL_OBJECT *, long); 95 96 void doDeviceInput(FL_OBJECT *, long); 97 void doModemInitInput(FL_OBJECT *, long); 98 void doModemResetInput(FL_OBJECT *, long); 99 void doModemConnectInput(FL_OBJECT *, long); 100 void doToneButton(FL_OBJECT *, long); 101 void doPulseButton(FL_OBJECT *, long); 102 void doISDNButton(FL_OBJECT *, long); 103 void doModemDialInput(FL_OBJECT *, long); 104 void doSWCBSDButton(FL_OBJECT *, long); 105 void doSWCOffButton(FL_OBJECT *, long); 106 void doSWCDeflateButton(FL_OBJECT *, long); 107 void doSpeedButton(FL_OBJECT *, long); 108 void doCustomSpeedInput(FL_OBJECT *, long); 109 void doSWCInput(FL_OBJECT *, long); 110 void doAsyncmapInput(FL_OBJECT *, long); 111 void doEscapeYesButton(FL_OBJECT *, long); 112 void doEscapeNoButton(FL_OBJECT *, long); 113 void doEscapeInput(FL_OBJECT *, long); 114 void doHWButton(FL_OBJECT *, long); 115 void doSWButton(FL_OBJECT *, long); 116 void doCommInfoTip(FL_OBJECT *, long); 117 118 void doLocalIPInput(FL_OBJECT *, long); 119 void doALYesButton(FL_OBJECT *, long); 120 void doALNoButton(FL_OBJECT *, long); 121 void doRemoteIPInput(FL_OBJECT *, long); 122 void doARYesButton(FL_OBJECT *, long); 123 void doARNoButton(FL_OBJECT *, long); 124 void doDRYesButton(FL_OBJECT *, long); 125 void doDRNoButton(FL_OBJECT *, long); 126 void doNMInput(FL_OBJECT *, long); 127 void doMTUInput(FL_OBJECT *, long); 128 void doMRUInput(FL_OBJECT *, long); 129 void doDNSNoButton(FL_OBJECT *, long); 130 void doDNSAutoButton(FL_OBJECT *, long); 131 void doDNSManualButton(FL_OBJECT *, long); 132 void doPDNSInput(FL_OBJECT *, long); 133 void doSDNSInput(FL_OBJECT *, long); 134 void doDNYesButton(FL_OBJECT *, long); 135 void doDNNoButton(FL_OBJECT *, long); 136 void doDomainInput(FL_OBJECT *, long); 137 void doTcpipInfoTip(FL_OBJECT *, long); 138 139 void doOLTimeButton(FL_OBJECT *, long); 140 void doOLChargeButton(FL_OBJECT *, long); 141 void doLogNoButton(FL_OBJECT *, long); 142 void doLogMonthButton(FL_OBJECT *, long); 143 void doLogWeekButton(FL_OBJECT *, long); 144 void doLogBiMonthButton(FL_OBJECT *, long); 145 void doLogInfoOK(FL_OBJECT *, long); 146 void doLogInfoCancel(FL_OBJECT *, long); 147 void doPttDropChoice(FL_OBJECT *, long); 148 void doZoneDropChoice(FL_OBJECT *, long); 149 void doLogInfoPTTEdit(FL_OBJECT *, long); 150 void doLogInfoPTTAdd(FL_OBJECT *, long); 151 void doLogInfoPTTRemove(FL_OBJECT *, long); 152 153 void doPttEditOK(FL_OBJECT *, long); 154 void doPttEditCancel(FL_OBJECT *, long); 155 void doPttEditHelp(FL_OBJECT *, long); 156 void doCUnitButton(FL_OBJECT *, long); 157 void doCMinuteButton(FL_OBJECT *, long); 158 void doCSecondsButton(FL_OBJECT *, long); 159 void doCPLButton(FL_OBJECT *, long); 160 void doCPRButton(FL_OBJECT *, long); 161 void doMLLButton(FL_OBJECT *, long); 162 void doMLNButton(FL_OBJECT *, long); 163 void doRuleCounter(FL_OBJECT *, long); 164 void doPttNameInput(FL_OBJECT *, long); 165 void doZonesInput(FL_OBJECT *, long); 166 void doCategoriesInput(FL_OBJECT *, long); 167 void doMinUnitsInput(FL_OBJECT *, long); 168 void doMinCostInput(FL_OBJECT *, long); 169 void doCSecondsInput(FL_OBJECT *, long); 170 void doUnitPriceInput(FL_OBJECT *, long); 171 void doCurrencyInput(FL_OBJECT *, long); 172 void doDecimalsInput(FL_OBJECT *, long); 173 void doBaseChargeInput(FL_OBJECT *, long); 174 void doRuleChargeInput(FL_OBJECT *, long); 175 void doRelDateInput(FL_OBJECT *, long); 176 void doRSInput(FL_OBJECT *, long); 177 void doREInput(FL_OBJECT *, long); 178 void doZEDYesButton(FL_OBJECT *, long); 179 void doZEDNoButton(FL_OBJECT *, long); 180 void doRDYesButton(FL_OBJECT *, long); 181 void doRDNoButton(FL_OBJECT *, long); 182 void doTButton(FL_OBJECT *, long); 183 void doZMLYesButton(FL_OBJECT *, long); 184 void doZMLNoButton(FL_OBJECT *, long); 185 void doMLSecondsInput(FL_OBJECT *, long); 186 void doDiscountInput(FL_OBJECT *, long); 187 void doZSInput(FL_OBJECT *, long); 188 void doZEInput(FL_OBJECT *, long); 189 void doRDInput(FL_OBJECT *, long); 190 void doRDEInput(FL_OBJECT *, long); 191 void doZonePick(FL_OBJECT *, long); 192 void doZonePickNEdit(FL_OBJECT *, long); 193 194 void doPTTNameInput(FL_OBJECT *, long); 195 void doPTTNameEditOK(FL_OBJECT *, long); 196 void doPTTNameEditCancel(FL_OBJECT *, long); 197 198 void doZoneNameInput(FL_OBJECT *, long); 199 void doZoneNameEditOK(FL_OBJECT *, long); 200 void doZoneNameEditCancel(FL_OBJECT *, long); 201 202 void doPppdPathInput(FL_OBJECT *, long); 203 void doRunPathInput(FL_OBJECT *, long); 204 void doLockPathInput(FL_OBJECT *, long); 205 void doChatPathInput(FL_OBJECT *, long); 206 void doXispUtilsPathInput(FL_OBJECT *, long); 207 void doPipePathInput(FL_OBJECT *, long); 208 void doPppdDefault(FL_OBJECT *, long); 209 void doRunDefault(FL_OBJECT *, long); 210 void doLockDefault(FL_OBJECT *, long); 211 void doChatDefault(FL_OBJECT *, long); 212 void doXispUtilsDefault(FL_OBJECT *, long); 213 void doPipeDefault(FL_OBJECT *, long); 214 void doEnvInfoTip(FL_OBJECT *, long); 215 216 void doOptsFolder(FL_OBJECT *, long); 217 void doOptsTabDone(FL_OBJECT *, long); 218 void doOptsTabCancel(FL_OBJECT *, long); 219 220 /* Forms and Objects */ 221 222 #define FILE_OPTIONS 1 223 #define FILE_HINTS 2 224 #define FILE_EXIT 3 225 226 #define OPTIONS_ACCOUNT 1 227 #define OPTIONS_DIALING 2 228 #define OPTIONS_COMM 3 229 #define OPTIONS_TCPIP 4 230 #define OPTIONS_PATHS 5 231 232 #define LOGGING_OPTIONS 1 233 #define LOGGING_STATS 2 234 235 #define HELP_ABOUT 1 236 #define HELP_GENERAL 2 237 238 typedef struct { 239 FL_FORM *instanceCheck; 240 void *vdata; 241 char *cdata; 242 long ldata; 243 FL_OBJECT *msgString; 244 FL_OBJECT *instanceCheckContinue; 245 FL_OBJECT *instanceCheckAbort; 246 } FD_instanceCheck; 247 FD_instanceCheck * create_form_instanceCheck(void); 248 249 typedef struct { 250 FL_FORM *topFrame; 251 void *vdata; 252 char *cdata; 253 long ldata; 254 FL_OBJECT *conButton; 255 FL_OBJECT *intButton; 256 FL_OBJECT *disButton; 257 FL_OBJECT *quitButton; 258 FL_OBJECT *fileMenu; 259 FL_OBJECT *logMenu; 260 FL_OBJECT *hlpMenu; 261 FL_OBJECT *lstBrowser; 262 FL_OBJECT *logDescr; 263 FL_OBJECT *logText; 264 FL_OBJECT *speedText; 265 FL_OBJECT *IPText; 266 FL_OBJECT *statusText; 267 FL_OBJECT *topIcon; 268 FL_OBJECT *ISPDropChoice; 269 FL_OBJECT *tipTimer; 270 } FD_topFrame; 271 FD_topFrame * create_form_topFrame(void); 272 273 typedef struct { 274 FL_FORM *accountInfo; 275 void *vdata; 276 char *cdata; 277 long ldata; 278 FL_OBJECT *telInput; 279 FL_OBJECT *accInput; 280 FL_OBJECT *pswInput; 281 FL_OBJECT *authType; 282 FL_OBJECT *authPAPButton; 283 FL_OBJECT *authNoneButton; 284 FL_OBJECT *authPAPSButton; 285 FL_OBJECT *authCHAPSButton; 286 FL_OBJECT *UNInput; 287 FL_OBJECT *remoteInput; 288 FL_OBJECT *ispPttDropChoice; 289 FL_OBJECT *ispZoneDropChoice; 290 FL_OBJECT *ISPBrowser; 291 FL_OBJECT *accountInfoAdd; 292 FL_OBJECT *accountInfoDelete; 293 FL_OBJECT *accountInfoCopy; 294 FL_OBJECT *accountInfoPaste; 295 FL_OBJECT *ISPDefault; 296 FL_OBJECT *ISPAutoDial; 297 FL_OBJECT *autoRedial; 298 FL_OBJECT *tipTimer; 299 } FD_accountInfo; 300 FD_accountInfo * create_form_accountInfo(void); 301 302 typedef struct { 303 FL_FORM *renameISP; 304 void *vdata; 305 char *cdata; 306 long ldata; 307 FL_OBJECT *ISPNameInput; 308 FL_OBJECT *ISPNameEditOK; 309 FL_OBJECT *ISPNameEditCancel; 310 } FD_renameISP; 311 FD_renameISP * create_form_renameISP(void); 312 313 typedef struct { 314 FL_FORM *dialInfo; 315 void *vdata; 316 char *cdata; 317 long ldata; 318 FL_OBJECT *rtrInput; 319 FL_OBJECT *dlyInput; 320 FL_OBJECT *CNWaitInput; 321 FL_OBJECT *LCPWaitInput; 322 FL_OBJECT *TTGroup; 323 FL_OBJECT *TTYesButton; 324 FL_OBJECT *TTNoButton; 325 FL_OBJECT *RBGroup; 326 FL_OBJECT *RBYesButton; 327 FL_OBJECT *RBNoButton; 328 FL_OBJECT *CBGroup; 329 FL_OBJECT *CBYesButton; 330 FL_OBJECT *CBNoButton; 331 FL_OBJECT *CBOptions; 332 FL_OBJECT *TSGroup; 333 FL_OBJECT *rowsInput; 334 FL_OBJECT *columnsInput; 335 FL_OBJECT *ALGroup; 336 FL_OBJECT *expectInput; 337 FL_OBJECT *sendInput; 338 FL_OBJECT *tipTimer; 339 } FD_dialInfo; 340 FD_dialInfo * create_form_dialInfo(void); 341 342 typedef struct { 343 FL_FORM *CBInfo; 344 void *vdata; 345 char *cdata; 346 long ldata; 347 FL_OBJECT *CBInfoOK; 348 FL_OBJECT *CBInfoCancel; 349 FL_OBJECT *CBdlyInput; 350 FL_OBJECT *LTGroup; 351 FL_OBJECT *LTScriptedButton; 352 FL_OBJECT *LTTerminalButton; 353 FL_OBJECT *LTRASButton; 354 FL_OBJECT *ALGroup; 355 FL_OBJECT *CBExpectInput; 356 FL_OBJECT *CBSendInput; 357 FL_OBJECT *TSGroup; 358 FL_OBJECT *columnsInput; 359 FL_OBJECT *rowsInput; 360 FL_OBJECT *CBTelInput; 361 FL_OBJECT *tipTimer; 362 } FD_CBInfo; 363 FD_CBInfo * create_form_CBInfo(void); 364 365 typedef struct { 366 void *vdata; 367 char *cdata; 368 long ldata; 369 FL_FORM *aboutInfo; 370 FL_OBJECT *verString; 371 FL_OBJECT *aboutOK; 372 } FD_aboutInfo; 373 FD_aboutInfo * create_form_aboutInfo(void); 374 375 typedef struct { 376 FL_FORM *exitDialog; 377 void *vdata; 378 char *cdata; 379 long ldata; 380 FL_OBJECT *exitIcon; 381 FL_OBJECT *exitOK; 382 FL_OBJECT *exitCancel; 383 } FD_exitDialog; 384 FD_exitDialog * create_form_exitDialog(void); 385 386 typedef struct { 387 FL_FORM *helpInfo; 388 void *vdata; 389 char *cdata; 390 long ldata; 391 FL_OBJECT *helpBrowser; 392 FL_OBJECT *helpInfoOK; 393 } FD_helpInfo; 394 FD_helpInfo * create_form_helpInfo(void); 395 396 typedef struct { 397 FL_FORM *alertMessage; 398 void *vdata; 399 char *cdata; 400 long ldata; 401 FL_OBJECT *alertMessageDismiss; 402 FL_OBJECT *alertMessageStr; 403 FL_OBJECT *noMoreHints; 404 } FD_alertMessage; 405 FD_alertMessage * create_form_alertMessage(void); 406 407 typedef struct { 408 FL_FORM *commInfo; 409 void *vdata; 410 char *cdata; 411 long ldata; 412 FL_OBJECT *modemInitInput; 413 FL_OBJECT *modemResetInput; 414 FL_OBJECT *modemConnectInput; 415 FL_OBJECT *modemDialType; 416 FL_OBJECT *toneButton; 417 FL_OBJECT *pulseButton; 418 FL_OBJECT *ISDNButton; 419 FL_OBJECT *modemDialInput; 420 FL_OBJECT *SWCType; 421 FL_OBJECT *SWCBSDButton; 422 FL_OBJECT *SWCDeflateButton; 423 FL_OBJECT *SWCOffButton; 424 FL_OBJECT *deviceInput; 425 FL_OBJECT *modemSpeedType; 426 FL_OBJECT *speedButton[9]; 427 FL_OBJECT *customSpeedInput; 428 FL_OBJECT *SWCInput; 429 FL_OBJECT *asyncmapInput; 430 FL_OBJECT *escapeType; 431 FL_OBJECT *escapeYesButton; 432 FL_OBJECT *escapeNoButton; 433 FL_OBJECT *escapeInput; 434 FL_OBJECT *flowCtrlType; 435 FL_OBJECT *HWButton; 436 FL_OBJECT *SWButton; 437 FL_OBJECT *tipTimer; 438 } FD_commInfo; 439 FD_commInfo * create_form_commInfo(void); 440 441 typedef struct { 442 FL_FORM *tcpipInfo; 443 void *vdata; 444 char *cdata; 445 long ldata; 446 FL_OBJECT *localIPInput; 447 FL_OBJECT *ALTypeGroup; 448 FL_OBJECT *ALYesButton; 449 FL_OBJECT *ALNoButton; 450 FL_OBJECT *remoteIPInput; 451 FL_OBJECT *ARTypeGroup; 452 FL_OBJECT *ARYesButton; 453 FL_OBJECT *ARNoButton; 454 FL_OBJECT *DRTypeGroup; 455 FL_OBJECT *DRYesButton; 456 FL_OBJECT *DRNoButton; 457 FL_OBJECT *NMInput; 458 FL_OBJECT *MTUInput; 459 FL_OBJECT *MRUInput; 460 FL_OBJECT *NRTypeGroup; 461 FL_OBJECT *DNSNoButton; 462 FL_OBJECT *DNSAutoButton; 463 FL_OBJECT *DNSManualButton; 464 FL_OBJECT *pDNSInput; 465 FL_OBJECT *sDNSInput; 466 FL_OBJECT *DNTypeGroup; 467 FL_OBJECT *DNYesButton; 468 FL_OBJECT *DNNoButton; 469 FL_OBJECT *domainInput; 470 FL_OBJECT *tipTimer; 471 } FD_tcpipInfo; 472 FD_tcpipInfo * create_form_tcpipInfo(void); 473 474 typedef struct { 475 FL_FORM *logInfo; 476 void *vdata; 477 char *cdata; 478 long ldata; 479 FL_OBJECT *OLGroup; 480 FL_OBJECT *OLTimeButton; 481 FL_OBJECT *OLChargeButton; 482 FL_OBJECT *logGroup; 483 FL_OBJECT *logNoButton; 484 FL_OBJECT *logMonthButton; 485 FL_OBJECT *logWeekButton; 486 FL_OBJECT *logBiMonthButton; 487 FL_OBJECT *logInfoOK; 488 FL_OBJECT *logInfoCancel; 489 FL_OBJECT *pttDropChoice; 490 FL_OBJECT *zoneDropChoice; 491 FL_OBJECT *costBrowser; 492 FL_OBJECT *LogInfoPTTEdit; 493 FL_OBJECT *LogInfoPTTAdd; 494 FL_OBJECT *logInfoPTTRemove; 495 } FD_logInfo; 496 FD_logInfo * create_form_logInfo(void); 497 498 typedef struct { 499 FL_FORM *statInfo; 500 void *vdata; 501 char *cdata; 502 long ldata; 503 FL_OBJECT *statsBrowser; 504 FL_OBJECT *statsChart; 505 FL_OBJECT *pieChart; 506 FL_OBJECT *statInfoOK; 507 } FD_statInfo; 508 FD_statInfo * create_form_statInfo(void); 509 510 typedef struct { 511 FL_FORM *pttEditor; 512 void *vdata; 513 char *cdata; 514 long ldata; 515 FL_OBJECT *zonePick; 516 FL_OBJECT *defaultTariffUnits; 517 FL_OBJECT *pttEditOK; 518 FL_OBJECT *pttEditCancel; 519 FL_OBJECT *ruleTariffUnits; 520 FL_OBJECT *pttEditHelp; 521 FL_OBJECT *CMType; 522 FL_OBJECT *CUnitButton; 523 FL_OBJECT *CMinuteButton; 524 FL_OBJECT *CSecondsButton; 525 FL_OBJECT *CPType; 526 FL_OBJECT *CPLButton; 527 FL_OBJECT *CPRButton; 528 FL_OBJECT *MCType; 529 FL_OBJECT *MLLButton; 530 FL_OBJECT *MLNButton; 531 FL_OBJECT *ruleCounter; 532 FL_OBJECT *pttNameInput; 533 FL_OBJECT *zonesInput; 534 FL_OBJECT *categoriesInput; 535 FL_OBJECT *minUnitsInput; 536 FL_OBJECT *minCostInput; 537 FL_OBJECT *CSecondsInput; 538 FL_OBJECT *unitPriceInput; 539 FL_OBJECT *currencyInput; 540 FL_OBJECT *decimalsInput; 541 FL_OBJECT *baseChargeInput; 542 FL_OBJECT *ruleChargeInput; 543 FL_OBJECT *relDateInput; 544 FL_OBJECT *RSHInput; 545 FL_OBJECT *RSMInput; 546 FL_OBJECT *RSSInput; 547 FL_OBJECT *REHInput; 548 FL_OBJECT *REMInput; 549 FL_OBJECT *RESInput; 550 FL_OBJECT *ZEDType; 551 FL_OBJECT *ZEDYesButton; 552 FL_OBJECT *ZEDNoButton; 553 FL_OBJECT *RDStr; 554 FL_OBJECT *REDType; 555 FL_OBJECT *RDYesButton; 556 FL_OBJECT *RDNoButton; 557 FL_OBJECT *CTType; 558 FL_OBJECT *TWDButton; 559 FL_OBJECT *TSDButton; 560 FL_OBJECT *THRButton; 561 FL_OBJECT *TUDButton; 562 FL_OBJECT *TWEButton; 563 FL_OBJECT *THAButton; 564 FL_OBJECT *TWDSButton; 565 FL_OBJECT *TWESButton; 566 FL_OBJECT *TAWButton; 567 FL_OBJECT *ZMLStr; 568 FL_OBJECT *ZMLType; 569 FL_OBJECT *ZMLYesButton; 570 FL_OBJECT *ZMLNoButton; 571 FL_OBJECT *TimeChargeType; 572 FL_OBJECT *MLSecondsInput; 573 FL_OBJECT *discountInput; 574 FL_OBJECT *DiscountType; 575 FL_OBJECT *PCSymbol; 576 FL_OBJECT *ZSHInput; 577 FL_OBJECT *ZSMInput; 578 FL_OBJECT *ZSSInput; 579 FL_OBJECT *ZEHInput; 580 FL_OBJECT *ZEMInput; 581 FL_OBJECT *ZESInput; 582 FL_OBJECT *ruleDateStr; 583 FL_OBJECT *CalDateType; 584 FL_OBJECT *RDMInput; 585 FL_OBJECT *RDDInput; 586 FL_OBJECT *EndDateType; 587 FL_OBJECT *RDEMInput; 588 FL_OBJECT *RDEDInput; 589 } FD_pttEditor; 590 FD_pttEditor * create_form_pttEditor(void); 591 592 typedef struct { 593 FL_FORM *renamePTT; 594 void *vdata; 595 char *cdata; 596 long ldata; 597 FL_OBJECT *PTTNameInput; 598 FL_OBJECT *PTTNameEditOK; 599 FL_OBJECT *PTTNameEditCancel; 600 } FD_renamePTT; 601 FD_renamePTT * create_form_renamePTT(void); 602 603 typedef struct { 604 FL_FORM *renameZone; 605 void *vdata; 606 char *cdata; 607 long ldata; 608 FL_OBJECT *zoneNameInput; 609 FL_OBJECT *zoneNameEditOK; 610 FL_OBJECT *zoneNameEditCancel; 611 } FD_renameZone; 612 FD_renameZone * create_form_renameZone(void); 613 614 typedef struct { 615 FL_FORM *actionVerify; 616 void *vdata; 617 char *cdata; 618 long ldata; 619 FL_OBJECT *actionVerifyNo; 620 FL_OBJECT *actionVerifyYes; 621 FL_OBJECT *actionVerifyStr; 622 } FD_actionVerify; 623 FD_actionVerify * create_form_actionVerify(void); 624 625 typedef struct { 626 FL_FORM *envInfo; 627 void *vdata; 628 char *cdata; 629 long ldata; 630 FL_OBJECT *pppdPathInput; 631 FL_OBJECT *runPathInput; 632 FL_OBJECT *lockPathInput; 633 FL_OBJECT *chatPathInput; 634 FL_OBJECT *xispUtilsPathInput; 635 FL_OBJECT *pipePathInput; 636 FL_OBJECT *pppdDefault; 637 FL_OBJECT *runDefault; 638 FL_OBJECT *lockDefault; 639 FL_OBJECT *chatDefault; 640 FL_OBJECT *xispUtilsDefault; 641 FL_OBJECT *pipeDefault; 642 FL_OBJECT *pppdStatus; 643 FL_OBJECT *runStatus; 644 FL_OBJECT *lockStatus; 645 FL_OBJECT *chatStatus; 646 FL_OBJECT *utilsStatus; 647 FL_OBJECT *tipTimer; 648 } FD_envInfo; 649 FD_envInfo * create_form_envInfo(void); 650 651 typedef struct { 652 FL_FORM *optsTab; 653 void *vdata; 654 char *cdata; 655 long ldata; 656 FL_OBJECT *optsFolder; 657 FL_OBJECT *accountInfoButton; 658 FL_OBJECT *dialInfoButton; 659 FL_OBJECT *commInfoButton; 660 FL_OBJECT *tcpipInfoButton; 661 FL_OBJECT *envInfoButton; 662 FL_OBJECT *optsTabDone; 663 FL_OBJECT *optsTabCancel; 664 } FD_optsTab; 665 FD_optsTab * create_form_optsTab(void); 666 667 /* Other xISP defines */ 668 669 #define BU_INTERVAL 2.0 /* check dialer output every 2 seconds */ 670 #define CT_INTERVAL 5.0 /* update connection time every 5 sec */ 671 #define SP_INTERVAL MINSEC_LINK_TO /* link status check poll inteval */ 672 #define DIAL_WAIT 30.0 /* max sec for xispdial to open pipe */ 673 #define UD_WAIT 16.0 /* max sec for ip-up/-down output in pipe */ 674 #ifdef XPMANIMATE 675 #define XPM_INTERVAL 0.3 /* XPM animation trigger interval */ 676 #endif 677 #define HINT_TRIGGER 0.2 /* one-shot trigger timeout for pop-up hints */ 678 679 #define LCP_RESTART 3 /* for the pppd cmd line argument with same name */ 680 #define LCP_RESTART_STR "3" 681 682 typedef struct { /* the color structure */ 683 int r, g, b; 684 } color_t; 685 686 #define BGCOL_DEFAULT {79, 124, 156} /* default form-background color */ 687 #define BGCOL_STRING "#4F7C9C" 688 689 #define PIDFP "ppp" /* pppd's PID file prefix */ 690 691 #define DISCONNECTED 0 /* to specify xISP state */ 692 #define DIALING 1 693 #define CONNECTED 2 694 695 #define EMPTY_TIME "00:00:00" 696 #define EMPTY_IP "___.___.___.___" 697 #define EMPTY_SPEED "__,___" 698 699 #define TIMER_CURSOR_WIDTH 17 700 #define TIMER_CURSOR_HEIGHT 19 701 702 /* Extra information for input boxes (from XForms internals); this is 703 so that we can display '*' characters instead of ' ' in the secret 704 input password field; there was no other "nicer" way to do it since 705 the API does not give us definitions & control of the SPEC struct */ 706 707 typedef struct 708 { 709 char *str; /* the input text */ 710 FL_COLOR textcol; /* text color */ 711 FL_COLOR curscol; /* cursor color */ 712 int position; /* cursor position (in chars) */ 713 int beginrange; /* start of the range */ 714 int endrange; /* end of the range */ 715 int size; /* size of the string */ 716 int changed; /* whether the field has changed */ 717 int how_return; /* whether to return value always */ 718 int drawtype; /* if to draw text with background */ 719 int noscroll; /* true if no scrollis allowd */ 720 int maxchars; /* limit for normal_input */ 721 int attrib1; 722 int attrib2; 723 FL_INPUTVALIDATOR validate; 724 725 /* scroll stuff. */ 726 FL_OBJECT *dummy; /* only for the size of composite */ 727 FL_OBJECT *hscroll; 728 FL_OBJECT *vscroll; 729 FL_OBJECT *input; 730 int xoffset; 731 int yoffset; 732 int screenlines; 733 int topline; 734 int lines; /* total number of lines in the field */ 735 int xpos, ypos; /* current cursor position in char,line */ 736 int cur_pixels; /* current line length in pixels */ 737 int max_pixels; /* max length of all lines */ 738 int max_pixels_line; 739 int charh; /* character height */ 740 int h, w; /* text area */ 741 float hsize, vsize; 742 float hval, vval; 743 float hinc1, hinc2; 744 float vinc1, vinc2; 745 int h_pref, v_pref; /* scrollbar preference */ 746 int vw, vw_def; 747 int hh, hh_def; 748 int h_on, v_on; 749 int dead_area, attrib; 750 int no_cursor; 751 int field_char; 752 } 753 SPEC; 754 755 /* exit() replacement for emulating on_exit() functionality */ 756 757 #ifndef SUNOS41x 758 #define exit(x) {extern int exitStatus; exitStatus = x; exit(x);} 759 #endif 760 761