/************************************************************************ ** ** FILE : kawinpop.c ** ** ZWECK : ** ** AUTOR : Michael C. Ancutici ** Universitaet Stuttgart, Fakultaet Informatik ** ** DATUM : 14.03.93 ** *************************************************************************/ #include "kawin.H" #include /************************************************************************* ** FUNKTION: KaWinPopup ** ZWECK: ** EINGABE: ** AUSGABE: ** RETURN: ** ANMERK: *************************************************************************/ void KaWinPopup( w, client_data, call_data) Widget w; XtPointer client_data, call_data; { STRING text; KaWinSpec.SNr = ((KAWIN_SPEC *)client_data)->SNr; KaWinSpec.TNr = ((KAWIN_SPEC *)client_data)->TNr; KaWinSpec.ST = ((KAWIN_SPEC *)client_data)->ST; if (KaWinSpec.ST) /**** ST-KANTE *********/ KaWinKante = KaKante[ KaWinSpec.SNr][ KaWinSpec.TNr].NachTrans; else /**** TS-KANTE *********/ KaWinKante = KaKante[ KaWinSpec.SNr][ KaWinSpec.TNr].NachStelle; sprintf( text, "Edge P%d - T%d", KaWinSpec.SNr+1, KaWinSpec.TNr+1); XtVaSetValues( KaNrLabel, /* Kanten-ID ausgeben */ XtNlabel, text, NULL); KaWinNegativOn = KaWinKante->NegativKante; if (KaWinSpec.ST) KaWinTyp = (KaWinNegativOn) ? STneg_TYP : ST_TYP; else KaWinTyp = TS_TYP; sprintf( text, "%d", abs( KaWinKante->delta)); XtVaSetValues( KaGewichtText, XtNstring, text, XtNsensitive, !KaWinNegativOn, NULL); XtVaSetValues( KaGewichtText, XtNinsertPosition, strlen(text), XtNsensitive, !KaWinNegativOn, NULL); XtVaSetValues( KaVerbToggle, XtNstate, KaWinNegativOn, NULL); XtVaSetValues( KaPlatzToggle, XtNstate, ( !(KaWinNegativOn) && !(KaWinSpec.ST) ), NULL); XtVaSetValues( KaTransToggle, XtNstate, ( !(KaWinNegativOn) && KaWinSpec.ST ), NULL); XtPopup( KaShell, XtGrabExclusive); XFlush( XtDisplay( KaShell)); }