extern DialoG CreateCalendarDateDialog ( GrouP prnt, Pointer userdata, DialogActnFunc actproc ) { CalendarDate cd; DatePagePtr dpp; DayTime dt; GrouP f; GrouP p; p = HiddenGroup (prnt, 1, 0, NULL); dpp = (DatePagePtr) MemNew (sizeof (DatePage)); if (dpp) { SetObjectExtra (p, dpp, StdCleanupExtraProc); dpp->dialog = (DialoG) p; dpp->todialog = CalendarDatePtrToDatePage; dpp->fromdialog = DatePageToCalendarDatePtr; dpp->testdialog = NULL; dpp->actproc = actproc; dpp->userdata = userdata; f = HiddenGroup (p, -6, 0, NULL); dpp->month = PopupList (f, TRUE, ChangeDateProc); SetObjectExtra (dpp->month, (Pointer) dpp, NULL); InitEnumPopup (dpp->month, months_alist, NULL); SetValue (dpp->month, 1); dpp->day = PopupList (f, TRUE, ChangeDateProc); SetObjectExtra (dpp->day, (Pointer) dpp, NULL); InitEnumPopup (dpp->day, days_alist, NULL); SetValue (dpp->day, 1); StaticPrompt (f, ",", 0, popupMenuHeight, programFont, 'l'); dpp->year = PopupList (f, TRUE, ChangeDateProc); SetObjectExtra (dpp->year, (Pointer) dpp, NULL); InitEnumPopup (dpp->year, years_alist, NULL); SetValue (dpp->year, 1); if (GetDayTime (&dt)) { cd.month = dt.tm_mon + 1; cd.day = dt.tm_mday; cd.year = dt.tm_year + 1900; CalendarDatePtrToDatePage ((DialoG) p, (Pointer) &cd); } } return (DialoG) p; }
GrouP /*FCN*/Nlm_CreateDlgGroup ( GrouP gTop ){ GrouP g, glr, g1, g2; Handle toAlign[3]; g = HiddenGroup ( gTop, 2, 1, NULL); SetGroupSpacing ( g, 1, 1 ); glr = NormalGroup ( g, 1, 2, "Groups:", systemFont, NULL ); #ifdef WIN_MOTIF SetGroupSpacing ( glr, 12, 12 ); SetGroupMargins ( glr, 8, 8 ); #else SetGroupSpacing ( glr, 6, 6 ); SetGroupMargins ( glr, 6, 6 ); #endif g1 = HiddenGroup ( glr, 2, 1, NULL ); g2 = HiddenGroup ( g1, 1, 0, NULL ); PushButton ( g2, "Top", OnGroupTop ); PushButton ( g2, "Bottom", OnGroupBottom ); groupHideButton = PushButton ( g2, "Hide", OnGroupHide ); groupCompBox = CheckBox ( g2, "Compress", OnGroupCompress ); groupDelButton = PushButton ( g2, "Delete", OnGroupDelete ); groupList = SingleList ( g1, 10, 8, OnGroupList ); curGroupInd = 0; LoadGroupArray(); g2 = HiddenGroup ( glr, 3, 0, NULL ); toAlign[2] = (Handle)PushButton ( g2, "Create", OnGroupNew ); toAlign[0] = (Handle)StaticPrompt ( g2, "Group", 0, 0, systemFont, 'l'); #ifdef WIN_MOTIF groupDialog = DialogText ( g2, "", 7, OnText16 ); #else groupDialog = DialogText ( g2, "", 9, OnText16 ); #endif toAlign[1] = (Handle)groupDialog; AlignObjects ( ALIGN_CENTER, (HANDLE)g1, (HANDLE)g2, NULL ); featGroup = glr = NormalGroup ( g, 1, 2, "Features:", systemFont, NULL ); #ifdef WIN_MOTIF SetGroupSpacing ( glr, 12, 12 ); SetGroupMargins ( glr, 8, 8 ); #else SetGroupSpacing ( glr, 6, 6 ); SetGroupMargins ( glr, 6, 6 ); #endif g1 = HiddenGroup ( glr, 2, 1, NULL ); featList = SingleList ( g1, 10, 8, OnFeatureList ); LoadFeatureArray(); FillFeatList( FALSE ); if ( totalFeatures == 0 ){ curFeatureInd = -1; } else { curFeatureInd = 0; SetValue ( featList, 1 ); } g2 = HiddenGroup ( g1, 1, 0, NULL ); PushButton ( g2, "Top", OnFeatTop ); PushButton ( g2, " Bottom ", OnFeatBottom ); featHideButton = PushButton ( g2, "Hide", OnFeatHide ); g2 = HiddenGroup ( glr, 3, 0, NULL ); #ifdef WIN_MOTIF SetGroupMargins ( g2, 8, 8 ); #endif toAlign[0] = (Handle)PushButton ( g2, "Move", OnFeatMove ); toAlign[1] = (Handle)StaticPrompt ( g2, "To", 0, 0, systemFont, 'l'); featPopup = PopupList ( g2, FALSE, NULL ); toAlign[2] = (Handle)featPopup; FillGroupList(FALSE); SetGroupValue (curGroupInd); FillFeatPopup(FALSE); UpdateDlgControls (); return g; }
extern void ShowNetConfigForm (WndActnProc activate, FormMessageFunc messages, VoidProc accepted, VoidProc cancelled, VoidProc turnedOff, Boolean netCurrentlyOn) { ButtoN b; GrouP c; GrouP g; GrouP h; GrouP j; Int2 len; NetConfigPtr ncp; PrompT ppt0, ppt1; ButtoN rb; Char str [256]; WindoW w; GrouP x; GrouP z; w = NULL; ncp = (NetConfigPtr) MemNew (sizeof (NetConfigData)); if (ncp != NULL) { w = FixedWindow (-50, -33, -10, -10, "Network Configuration", StdSendCloseWindowMessageProc); SetObjectExtra (w, ncp, StdCleanupFormProc); ncp->form = (ForM) w; ncp->formmessage = ConfigMessageProc; ncp->appmessage = messages; ncp->activate = activate; SetActivate (w, ConfigFormActivate); ncp->accepted = accepted; ncp->cancelled = cancelled; ncp->turnedOff = turnedOff; h = HiddenGroup (w, -1, 0, NULL); SetGroupSpacing (h, 5, 10); j = HiddenGroup (h, 2, 0, NULL); ppt0 = StaticPrompt (j, "Connection", 0, 0, programFont, 'l'); ncp->srvConnMode = HiddenGroup (j, 4, 0, ChangeConnection); SetObjectExtra (ncp->srvConnMode, ncp, NULL); rb = RadioButton (ncp->srvConnMode, "None"); RadioButton (ncp->srvConnMode, "Normal"); RadioButton (ncp->srvConnMode, "Firewall"); /* RadioButton (ncp->srvConnMode, "Stateless"); */ SetValue (ncp->srvConnMode, 2); if (turnedOff == NULL) { Disable (rb); } AlignObjects (ALIGN_MIDDLE, (HANDLE) ppt0, (HANDLE) ncp->srvConnMode, NULL); ncp->netGroup = HiddenGroup (h, -1, 0, NULL); SetGroupSpacing (ncp->netGroup, 5, 10); SelectFont (programFont); len = StringWidth ("HTTP Proxy Server ") + 2; SelectFont (systemFont); z = HiddenGroup (ncp->netGroup, -2, 0, NULL); StaticPrompt (z, "HTTP Proxy Server", len, dialogTextHeight, programFont, 'l'); ncp->proxyHost = DialogText (z, "", 12, ChangeProxy); SetObjectExtra (ncp->proxyHost, ncp, NULL); /* StaticPrompt (z, "", 0, 0, programFont, 'l'); StaticPrompt (z, "", 0, 0, programFont, 'l'); */ ppt0 = StaticPrompt (z, "HTTP Proxy Port ", len, dialogTextHeight, programFont, 'l'); ncp->proxyPort = DialogText (z, "", 3, NULL); x = MultiLinePrompt (z, "Non-transparent Proxy Server", len, programFont); ncp->firewallProxy = DialogText (z, "", 12, NULL); AlignObjects (ALIGN_MIDDLE, (HANDLE) x, (HANDLE) ncp->firewallProxy, NULL); /* AlignObjects (ALIGN_MIDDLE, (HANDLE) ppt0, (HANDLE) ncp->proxyPort, (HANDLE) ncp->firewallProxy, NULL); */ AlignObjects (ALIGN_RIGHT, (HANDLE) ncp->proxyHost, (HANDLE) ncp->firewallProxy, NULL); AlignObjects (ALIGN_LEFT, (HANDLE) ncp->proxyHost, (HANDLE) ncp->firewallProxy, NULL); g = HiddenGroup (ncp->netGroup, 5, 0, NULL); /* ppt0 = StaticPrompt (g, "Domain name server", 0, 0, programFont, 'l'); ncp->dnsAvailable = CheckBox (g, "Available", NULL); */ ncp->dnsAvailable = CheckBox (g, "Domain Name Server", NULL); SetStatus (ncp->dnsAvailable, TRUE); /* StaticPrompt (g, " ", 0, 0, programFont, 'l'); */ ppt1 = StaticPrompt (g, "Timeout", 0, popupMenuHeight, programFont, 'l'); ncp->timeOut = PopupList (g, TRUE, NULL); PopupItem (ncp->timeOut, "10 seconds"); PopupItem (ncp->timeOut, "30 seconds"); PopupItem (ncp->timeOut, "60 seconds"); PopupItem (ncp->timeOut, " 5 minutes"); SetValue (ncp->timeOut, 2); AlignObjects (ALIGN_MIDDLE, /* (HANDLE) ppt0, */ (HANDLE) ncp->dnsAvailable, (HANDLE) ppt1, (HANDLE) ncp->timeOut, NULL); c = HiddenGroup (w, 4, 0, NULL); SetGroupSpacing (c, 10, 2); ncp->accept = PushButton (c, "Accept", AcceptNetConfigForm); SetObjectExtra (ncp->accept, ncp, NULL); b = PushButton (c, "Cancel", StdSendCancelButtonMessageProc); SetObjectExtra (b, ncp, NULL); /* AlignObjects (ALIGN_CENTER, (HANDLE) h, (HANDLE) c, NULL); */ AlignObjects (ALIGN_CENTER, (HANDLE) j, (HANDLE) z, (HANDLE) g, (HANDLE) c, NULL); RealizeWindow (w); if (! netCurrentlyOn) { SafeSetValue (ncp->srvConnMode, 1); Hide (ncp->netGroup); } else if (GetAppParam ("NCBI", "CONN", "FIREWALL", NULL, str, sizeof (str))) { if (StringICmp (str, "TRUE") == 0) { SafeSetValue (ncp->srvConnMode, 3); } } if (GetAppParam ("NCBI", "CONN", "HTTP_PROXY_HOST", NULL, str, sizeof (str))) { if (! StringHasNoText (str)) { SafeSetTitle (ncp->proxyHost, str); if (GetValue (ncp->srvConnMode) == 2) { SafeSetValue (ncp->srvConnMode, 3); } } } if (GetAppParam ("NCBI", "CONN", "HTTP_PROXY_PORT", NULL, str, sizeof (str))) { if (! StringHasNoText (str)) { SafeSetTitle (ncp->proxyPort, str); } } if (GetAppParam ("NCBI", "CONN", "PROXY_HOST", NULL, str, sizeof (str))) { if (! StringHasNoText (str)) { SafeSetTitle (ncp->firewallProxy, str); } } if (GetAppParam ("NCBI", "CONN", "HOST", NULL, str, sizeof (str))) { if (StringICmp (str, "130.14.29.110") == 0) { SafeSetStatus (ncp->dnsAvailable, FALSE); } } if (GetAppParam ("NCBI", "CONN", "TIMEOUT", "30", str, sizeof (str))) { if (StringICmp (str, "10") == 0) { SafeSetValue (ncp->timeOut, 1); } else if (StringICmp (str, "60") == 0) { SafeSetValue (ncp->timeOut, 3); } else if (StringICmp (str, "300") == 0) { SafeSetValue (ncp->timeOut, 4); } else { SafeSetValue (ncp->timeOut, 2); } } ChangeConfigControls (ncp); Show (w); Select (w); Select (ncp->proxyHost); } }
Int2 LIBCALLBACK VSMGenericBinAsnOpen ( Pointer data ) { Char filename[255]; AsnIoPtr aip; Pointer ptr; Uint2 entityID; Int2 ct, i, retval = OM_MSG_RET_OK; ObjMgrPtr omp; ObjMgrTypePtr omtp = NULL; OMProcControlPtr ompcp; WindoW w; GrouP g; ButtoN b; VSMReadBinStr vrb; VSeqMgrPtr vsmp; ompcp = (OMProcControlPtr)data; vsmp = VSeqMgrGet(); omp = vsmp->omp; filename[0] = '\0'; if (GetInputFileName(filename, (size_t)254, NULL, NULL)) { vrb.do_it = FALSE; vrb.window_done = FALSE; vrb.the_type = 0; w = ModalWindow (-50, -33, -10, -10, NULL); SetWindowExtra(w, &vrb, NULL); g = HiddenGroup(w, 0, 2, NULL); StaticPrompt(g, "Select ASN.1 type:", 0,0,systemFont,'l'); vrb.p = PopupList(g, TRUE, NULL); i = 0; ct = 0; omtp = NULL; while ((omtp = ObjMgrTypeFindNext(omp, omtp)) != NULL) { if (omtp->asnname != NULL) { i++; PopupItem(vrb.p, omtp->asnname); if (! StringCmp(vsmp->lastASNtype, omtp->asnname)) ct = i; } } if (! i) { ErrPostEx(SEV_ERROR,0,0, "No ASN.1 types are registered"); Remove(w); return OM_MSG_RET_ERROR; } if (! ct) ct = 1; SetValue(vrb.p, ct); g = HiddenGroup(w, 2, 0, NULL); DefaultButton(g, "Accept", AsnBinAcceptProc); b = PushButton(g, "Cancel", AsnBinCancelProc); Show(w); Nlm_WaitForCondition (! vrb.window_done); ProcessAnEvent(); if (! vrb.do_it) return retval; i = 0; omtp = NULL; while ((omtp = ObjMgrTypeFindNext(omp, omtp)) != NULL) { i++; if (i == vrb.the_type) break; } if (omtp == NULL) { ErrPostEx(SEV_ERROR,0,0,"Couldn't find vrb.the_type"); return OM_MSG_RET_ERROR; } StringMove(vsmp->lastASNtype, omtp->asnname); WatchCursor(); aip = AsnIoOpen(filename, "rb"); ptr = (*(omtp->asnread))(aip, NULL); AsnIoClose(aip); if (ptr == NULL) { ErrPostEx(SEV_ERROR,0,0,"Couldn't read [%s], type [%s]", filename, omtp->asnname); retval = OM_MSG_RET_ERROR; } else { entityID = ObjMgrRegister(omtp->datatype, ptr); ompcp->output_data = ptr; ompcp->output_entityID = entityID; PromoteToSeqEntry (entityID, omtp->datatype, ptr); retval = OM_MSG_RET_DONE; } ArrowCursor(); } else retval = OM_MSG_RET_OK; return retval; }