Пример #1
0
/* ARGSUSED */
void AddGpList_Callback ( Widget w, long which, XtPointer call )
/************************************************************************
 *
 *	Callback function of add group list.
 *
 *		AddGpList_Callback  ( W, which, CALL )
 *
 ***********************************************************************/
{

/*--------------------------------------------------------------------*/

	switch( which ) {
	    case 0:		/* add to group list */
		if ( get_group(w) ) {
			XmListDeselectAllItems(gframe_listW);
			XmTextSetString(group_nameW, "");
		}
		break;

	    case 1:		/* add to group list and display */
		if (get_group(w)) {
			MpanelMode = 0;
			SelectGroupNo = GroupNo;
			GroupLoadFlag = 1;

			XmListDeselectAllItems(gframe_listW);
			XmTextSetString(group_nameW, "");
			XtUnmanageChild(group_panel_toplevel);

			load_group(GroupNo);
		}
		break;
	}
}
Пример #2
0
/*=== hold_code_value_changed_cb ====================================================*/
void
hold_code_value_changed_cb(Widget w,
                            XtPointer client_data,
                            XtPointer call_data)
{
#ifdef FT
    char *str;

    if (XmToggleButtonGetState (ci_none_btn))
    {
       XmTextSetString (cmfj_origine_ret_txt, "");
       XmTextSetString (cmfj_code_motif_txt, "");
       set_editable_off (cmfj_origine_ret_txt);
       XtSetSensitive (cmfj_origine_ret_btn, FALSE);
       set_editable_off (cmfj_code_motif_txt);
       XtSetSensitive (cmfj_code_motif_btn, FALSE);
    }
    else
    {
       str = XmTextGetString (cmfj_origine_ret_txt);
       if (strlen (str) == 0)
       {
          XmTextSetString (cmfj_origine_ret_txt, 
              origine_ret_list[cmfj_origine_ret_default].description);
       } 
       set_editable_on (cmfj_origine_ret_txt);
       XtSetSensitive (cmfj_origine_ret_btn, TRUE);
       set_editable_on (cmfj_code_motif_txt);
       XtSetSensitive (cmfj_code_motif_btn, TRUE);
    }
#endif
}
Пример #3
0
static void qmonRQSSetText(Widget tw, lList *rqs_list, lList **alpp)
{
   char *text = NULL;

   DENTER(GUI_LAYER, "qmonRQSSetText");

   if (rqs_list != NULL) {
      const char *filename = NULL;
      
      filename = spool_flatfile_write_list(alpp, rqs_list, RQS_fields,
                                           &qconf_rqs_sfi, 
                                           SP_DEST_TMP, SP_FORM_ASCII,
                                           filename, false);
      text = qmonReadText(filename, alpp);
      unlink(filename);
      sge_free(&filename);
      if (text != NULL) {
         XmTextSetString(tw, text);
         XtFree(text);
      } else {
         XmTextSetString(tw, "");
      }   

   } 
   DEXIT;
}
//
// Display the options stored in the node. 
//
void SelectionAttrDialog::updateDisplayedAttributes()
{
    SelectionInstance *si = (SelectionInstance*)this->interactorInstance;
    int options,i;

    ASSERT(si);

    options = si->getOptionCount();

    //
    // Now reload the list. 
    //
    if (options != 0)
    {
        char **strings = new char* [options];
	for (i=0 ; i<options ; i++) {
	    char *value, *name;
	    name  = si->getOptionNameString(i+1);
	    value = si->getOptionValueString(i+1);
	    int len = STRLEN(name) + STRLEN(value) + 
				 STRLEN(VALUE_LABEL_SPRINTF_FORMAT) + 1;
	    strings[i] = new char[len];
	    sprintf(strings[i], VALUE_LABEL_SPRINTF_FORMAT, value, name);
	    delete value;
	    delete name;
	}
	this->replaceListItems((const char**)strings, options);
	for (i=0 ; i<options ; i++) 
	    delete strings[i];
	delete  strings;
    }

    XmTextSetString(this->valueText, "0");
    XmTextSetString(this->labelText, "");
}
extern "C" void ControlPanelGroupDialog_SelectCB(Widget widget,
                                           XtPointer clientData,
                                           XtPointer callData)
{
    ControlPanelGroupDialog* pgd = (ControlPanelGroupDialog*)clientData;
    XmListCallbackStruct* cs = (XmListCallbackStruct*)callData;

    int callIndex = cs->item_position;

    if(callIndex == pgd->lastIndex)
    {
	pgd->lastIndex = 0;
	XmTextSetString(pgd->text, NULL);
	XtVaSetValues(pgd->changebtn, XmNsensitive, False, NULL);
	XtVaSetValues(pgd->deletebtn, XmNsensitive, False, NULL);
	pgd->setToggles();
    }
    else
    {
	char *name = (char*)pgd->panelManager->getPanelGroup(callIndex, NULL); 
	XmTextSetString(pgd->text, name);
	if(name)
        {
	    XtVaSetValues(pgd->changebtn, XmNsensitive, True, NULL);
	    XtVaSetValues(pgd->deletebtn, XmNsensitive, True, NULL);
        }

	pgd->lastIndex = callIndex;
	pgd->setToggles();
    }
}
Пример #6
0
void pp_add_package_cb(Widget w, XtPointer *call_data, XmAnyCallbackStruct *client_data)
{
char *today = NULL;

/* create screen */

if (pp_provision_shell == NULL)
{
   create_pp_provision_shell (product_packages_shell);
   create_ppp_confirm_shell (pp_provision_shell);

   XtAddEventHandler(ppp_start_date_txt,KeyPressMask,False,
       check_date,NULL);

}

/* erase the list */

XmListDeleteAllItems (ppp_prov_list);
XmListDeselectAllItems(ppp_prov_list);

gprov_new_package = 0;

today = get_todays_date();
XmTextSetString (ppp_start_date_txt, today);
XtFree (today);

XmTextSetString (ppp_packageid_txt,"");

/* display screen */
XtManageChild (pp_provision_form);
XtPopup (pp_provision_shell, XtGrabNone);

}
Пример #7
0
void
display_notes_create_screen (Widget w,
                             XtPointer client_data,
                             XtPointer call_data)
{
  
  /* Display the screen that lets the user enter a new note */

  if (notes_create_shell == NULL)
  {
    create_notes_create_shell(notes_shell);
    notes_create_add_event_handlers();
    get_user_note_duration();
  }

  init_notes_create_screen ();

  /* Get account_no from global var */
  XmTextSetString (nc_accountid_txt, gacct_external_id);
  XmTextSetString (nc_accountname_txt, gaccount_name);

  set_editable_off (nc_accountid_txt);
  set_editable_off (nc_accountname_txt);
  set_editable_off (notes_text_txt);

  XtManageChild(notes_create_form);
  XtPopup (notes_create_shell, XtGrabNone);

  /* Set global to indicate that this window is up */
  notes_create_shell_up = TRUE;

  /* Position the cursor on the subscr_no field */
  XmProcessTraversal (notes_equip_txt, XmTRAVERSE_CURRENT);
}
Пример #8
0
void SetMacroNameDialog::manage()
{
    Network *n = this->network;
    char *cat = (char *)n->getCategoryString();

    if(cat)
    	XmTextSetString(this->category, cat);
    else
    	XmTextSetString(this->category, "Macros");

    XmTextSetString(this->macroName, (char *)n->getNameString());
    XmTextSetString(this->description, (char *)n->getDescriptionString());

    boolean sens = (this->network == theDXApplication->network);
    Pixel color = sens ? theDXApplication->getForeground()
		       : theDXApplication->getInsensitiveColor();
    SetTextSensitive(this->macroName, sens, color); 
    SetTextSensitive(this->category,  sens, color);
    SetTextSensitive(this->description,  sens, color);

    this->Dialog::manage();

    if(sens)
    {
   	XmProcessTraversal(this->description, XmTRAVERSE_CURRENT);
   	XmProcessTraversal(this->description, XmTRAVERSE_CURRENT);
    }
}
Пример #9
0
static void
displayGroup(DMAN_GROUPNAMES * g)
{
    if (g == NULL)
	return;

    XmTextSetString(wGroupTxt, g->GroupName);
    XmTextSetString(wApplicationTxt, g->Title);
}
Пример #10
0
void WdaMotif::open_class_dialog( char *hierstr, char *classstr)
{
  XmTextSetString( wdaclass_hiervalue, hierstr);
  XmTextSetString( wdaclass_classvalue, classstr);
  XmToggleButtonSetState( wdaclass_attrobjects, 
			(Boolean) attrobjects, False);

  XtManageChild( wdaclass_dia);
}
Пример #11
0
/*=== cor_reset_filter_cb ===================================================
 * Resets the Corridor screen's filter fields.
 */
void
cor_reset_filter_cb(Widget    w,
                    XtPointer client_data,
                    XtPointer call_data)
{
  XmTextSetString(cor_filter_plan_txt,   "");
  XmTextSetString(cor_filter_origin_txt, "");
  XmTextSetString(cor_filter_target_txt, "");
}
Пример #12
0
void
display_notes_screen(Widget w,
                     XtPointer client_data,
                     XtPointer call_data)
{
   /* Bring up the main notes screen that has filter/sort/browse. */

   show_busy_cursor(custinfo_shell, ON);

   if (notes_shell == NULL)
   {
      create_notes_shell(custinfo_shell);

      XtAddEventHandler(notes_filter_from_txt, KeyPressMask,False,
                        check_date, NULL);
      XtAddEventHandler(notes_filter_to_txt, KeyPressMask,False,
                        check_date, NULL);
      
                /* Initialize the notes sort/filter structures */
      init_sort_names();
      init_db_names();

      /* Set up data structs for each sort toggle button. These structures
       * are used to know what position the button is in and what ascending/
       * descending toggle button is associated with it. */
      equip_sort_data.position = EQUIP_NUM;
      equip_sort_data.asc_desc_btn = &notes_equip_ad_tog;
      type_sort_data.position = NOTE_TYPE;
      type_sort_data.asc_desc_btn = &notes_type_ad_tog;
      date_sort_data.position = DATE_TIME;
      date_sort_data.asc_desc_btn = &notes_date_ad_tog;
      userid_sort_data.position = USER_ID;
      userid_sort_data.asc_desc_btn = &notes_userid_ad_tog;

      populate_note_type_list();

   }

   /* Set the account_no using the global variable, gacct_external_id */
   XmTextSetString (notes_accountid_txt, gacct_external_id);
   XmTextSetString (notes_account_name_txt, gaccount_name);

   set_editable_off (notes_accountid_txt);
   set_editable_off (notes_account_name_txt);

   reset_notes_filter(NULL,NULL,NULL);
   reset_notes_sort(NULL, NULL, NULL); /* this is a callback */

   get_notes ();

   XtPopup (notes_shell, XtGrabNone);
   XMapRaised (XtDisplay(notes_shell),XtWindow(notes_shell));

   show_busy_cursor(custinfo_shell, OFF);
   XmProcessTraversal(notes_filter_type_txt, XmTRAVERSE_CURRENT);
}
Пример #13
0
static void oneDHistListCB(Widget w, nTuBrowserInfo *nTuBrDummy,
                               caddr_t call_data)
{
    int i, idPos, *posList, count, id, l, jn, uid, ivar;
    float aa, bb;                               
    nTuBrowserInfo *nTuBr;
    nTuBroHs1D *nTuH1;

    XmListGetSelectedPos(OneDHistHistoListW, &posList, &count);
    if (count < 1) return;
    id = OneDHistListedIDs[((*posList) -1)];
    uid = hs_uid(id);
    /*
    ** Select the variable associated with this histogram.
    */
    nTuBr = oneDHistNTupleSource(id);
    if (nTuBr != CurrentNTupleBrowserSelected ) 
                    if (!mcfioC_SetSpecificNTupleBr(nTuBr)) return;
    for(i=0; i<CurrentNTupleBrowserSelected->sizeOfLists; i++) {
       nTuH1 = (nTuBroHs1D *) CurrentNTupleBrowserSelected->hsItemList[i];
       if (nTuH1 == NULL) continue;
       if (nTuH1->id == id) break;
    } 
    if (nTuH1 == NULL) {
         DialogF(DF_ERR, OneDHistShellW, 1,
                 "Internal Error in oneDHistListCB\nPlease report",
		"Acknowledged");
         return;
    }     
    ivar =  nTuH1->varNumber;
    XmListSelectPos(OneDHistVariableListW, (ivar+1), False);
    l = hs_title(id, BrowseUtil2htitle);
    XmTextSetString(OneDHistTitleW, BrowseUtil2htitle);
    l = hs_1d_hist_num_bins(id);
    SetIntText(OneDHistNumBinsW, l);
    hs_1d_hist_range(id, &aa, &bb);
    SetFloatText(OneDHistLowBinW, aa);
    SetFloatText(OneDHistHighBinW, bb);
    /*
    ** We now have to related this histogram to the associated Ntuple 
    */
    for (i=0; i<nTuBr->sizeOfLists; i++) {
       if (nTuBr->hsItemList[i] == NULL) continue;
           if (nTuBr->hsItemList[i]->id == id) {
               nTuH1 = (nTuBroHs1D *) nTuBr->hsItemList[i];
               if (nTuH1->subBlock == -1)  
                   XmTextSetString(OneDHistMultW, "All");
                else 
                   SetIntText(OneDHistMultW, nTuH1->subBlock);
            }
            break;
    }
    XtSetSensitive(OneDHistModifyW, True);
    XtSetSensitive(OneDHistDeleteW, True);
}
Пример #14
0
static void
displayFISAccess(DMAN_FISACCESS * f)
{
    if (f == NULL)
	return;

    XmTextSetString(wTitleTxt, f->Title);
    XmTextSetString(wDatabaseKeyTxt, f->DbKey);
    XmTextSetString(wGroupTxt, f->GroupName);
    XmTextSetString(wCommentTxt, f->Comment);
}
Пример #15
0
void AttrMotif::change_value()
{
  int sts;
  Widget text_w;
  int multiline;
  char* value;
  int size;

  if (input_open) {
    XtUnmanageChild(cmd_input);
    set_prompt("");
    input_open = 0;
    return;
  }

  sts = ((AttrNav*)attrnav)->check_attr_value(&multiline, &size, &value);
  if (EVEN(sts)) {
    if (sts == GE__NOATTRSEL)
      message('E', "No attribute is selected");
    else
      message('E', "Attribute can't be modified");
    return;
  }

  if (multiline) {
    text_w = cmd_scrolledinput;
    XtManageChild(text_w);
    XtManageChild(cmd_scrolled_ok);
    XtManageChild(cmd_scrolled_ca);
  } else {
    text_w = cmd_input;
    XtManageChild(text_w);
  }

  message(' ', "");
  flow_SetInputFocus(text_w);
  //  XtSetKeyboardFocus( toplevel, text_w);
  //  XtCallAcceptFocus( text_w, CurrentTime);

  if (value) {
    XmTextSetString(text_w, value);
    if (!multiline) {
      XmTextSetInsertionPosition(text_w, strlen(value));
      XmTextSetSelection(text_w, 0, strlen(value), CurrentTime);
    }
  } else {
    XmTextSetString(cmd_input, (char*)"");
  }
  //  i = 0;
  //  XtSetArg(args[i],XmNeditMode, XmMULTI_LINE_EDIT); i++;
  //  XtSetValues( text_w, args, i);
  set_prompt("value >");
  input_open = 1;
}
Пример #16
0
static void
color_update(struct ida_coledit *me, struct ida_hist *h, int text)
{
    struct op_map_parm param;
    char tmp[32];

    if (me->lock) {
	if (&me->red != h)
	    me->red.parm = h->parm;
	if (&me->green != h)
	    me->green.parm = h->parm;
	if (&me->blue != h)
	    me->blue.parm = h->parm;
	XClearArea(XtDisplay(me->red.hist), XtWindow(me->red.hist),
		   0,0,0,0, True);
	XClearArea(XtDisplay(me->red.map), XtWindow(me->red.map),
		   0,0,0,0, True);
	XClearArea(XtDisplay(me->green.hist), XtWindow(me->green.hist),
		   0,0,0,0, True);
	XClearArea(XtDisplay(me->green.map), XtWindow(me->green.map),
		   0,0,0,0, True);
	XClearArea(XtDisplay(me->blue.hist), XtWindow(me->blue.hist),
		   0,0,0,0, True);
	XClearArea(XtDisplay(me->blue.map), XtWindow(me->blue.map),
		   0,0,0,0, True);
    } else {
	XClearArea(XtDisplay(h->hist), XtWindow(h->hist),
		   0,0,0,0, True);
	XClearArea(XtDisplay(h->map), XtWindow(h->map),
		   0,0,0,0, True);
    }
    if ((me->lock || h == me->cur) && text >= 1) {
	/* mouse-click updateable values */
	sprintf(tmp,"%d",h->parm.left);
	XmTextSetString(me->l,tmp);
	sprintf(tmp,"%d",h->parm.right);
	XmTextSetString(me->r,tmp);
    }
    if ((me->lock || h == me->cur) && text >= 2) {
	/* others */
	sprintf(tmp,"%d",h->parm.bottom);
	XmTextSetString(me->b,tmp);
	sprintf(tmp,"%d",h->parm.top);
	XmTextSetString(me->t,tmp);
	sprintf(tmp,"%.2f",h->parm.gamma);
	XmTextSetString(me->g,tmp);
    }
    
    param.red   = me->red.parm;
    param.green = me->green.parm;
    param.blue  = me->blue.parm;
    viewer_start_preview(ida,&desc_map,&param);
}
Пример #17
0
static void update_axis_items(int gno)
{
    tickmarks t;

    if (axis_frame) {
	get_graph_tickmarks(gno, &t, curaxis);
	sprintf(buf, "%.5g", t.offsx);
	XmTextSetString(offx, buf);
	sprintf(buf, "%.5g", t.offsy);
	XmTextSetString(offy, buf);
    }
}
Пример #18
0
void GeCurveMotif::open_minmax( int idx)
{
  char value_str[80];

  sprintf( value_str, "%f", cd->min_value_axis[idx]);
  XmTextSetString( minmax_textmin_widget, value_str);
  
  sprintf( value_str, "%f", cd->max_value_axis[idx]);
  XmTextSetString( minmax_textmax_widget, value_str);

  minmax_idx = idx;
  XtManageChild( minmax_widget);
}
Пример #19
0
void GeCurveMotif::activate_xlimits( Widget w, GeCurve *curve, XmAnyCallbackStruct *data)
{
  char value_str[80];

  sprintf( value_str, "%f",  curve->cd->min_value_axis[0]);
  XmTextSetString( ((GeCurveMotif *)curve)->minmax_textmin_widget, value_str);

  sprintf( value_str, "%f", curve->cd->max_value_axis[0]);
  XmTextSetString( ((GeCurveMotif *)curve)->minmax_textmax_widget, value_str);

  curve->minmax_idx = 0;
  XtManageChild( ((GeCurveMotif *)curve)->minmax_widget);
}
Пример #20
0
void
reset_filter_ucr( Widget w,
                  XtPointer client_data,
                  XtPointer call_data)
{
   /* Reset all the filter text fields to blank or non-selected for toggles */

   XmTextSetString (ci_ucr_level_id_filter_txt, "");
   XmTextSetString (ci_ucr_type_filter_txt,     "");
   XmToggleButtonSetState(ci_ucr_audit_tgl, False, False);
   
   memset(ucr_filter_str, '\0', sizeof(ucr_filter_str));

}
Пример #21
0
void update_ticks_items(int gno)
{
    tickmarks t;

    if (ticks_frame) {
	SetChoice(editaxis, curaxis);
	get_graph_tickmarks(gno, &t, curaxis);
	XmToggleButtonSetState(tlonoff, t.tl_flag == TRUE, False);
	XmToggleButtonSetState(tonoff, t.t_flag == TRUE, False);
	XmToggleButtonSetState(baronoff, t.t_drawbar == TRUE, False);
	XmTextSetString(axislabel, t.label.s);

	if (islogx(gno) && (curaxis % 2 == 0)) {
	    t.tmajor = (int) t.tmajor;
	    if (t.tmajor == 0) {
		t.tmajor = 1;
	    }
	    sprintf(buf, "%.0f", t.tmajor);
	} else if (islogy(gno) && (curaxis % 2 == 1)) {
	    t.tmajor = (int) t.tmajor;
	    if (t.tmajor == 0) {
		t.tmajor = 1;
	    }
	    sprintf(buf, "%.0f", t.tmajor);
	} else if (t.tmajor > 0) {
	    sprintf(buf, "%.5g", t.tmajor);
	} else {
	    strcpy(buf, "UNDEFINED");
	}
	XmTextSetString(tmajor, buf);
	if (islogx(gno) && (curaxis % 2 == 0)) {
	    t.tminor = (int) t.tminor;
	    if (t.tminor < 0 || t.tminor > 5) {
		t.tminor = 0;
	    }
	    sprintf(buf, "%.0f", t.tminor);
	} else if (islogy(gno) && (curaxis % 2 == 1)) {
	    t.tminor = (int) t.tminor;
	    if (t.tminor < 0 || t.tminor > 5) {
		t.tminor = 0;
	    }
	    sprintf(buf, "%.0f", t.tminor);
	} else if (t.tminor > 0) {
	    sprintf(buf, "%.5g", t.tminor);
	} else {
	    strcpy(buf, "UNDEFINED");
	}
	XmTextSetString(tminor, buf);
    }
}
Пример #22
0
void GUI_GeneralSlider(Widget w,XtPointer client,XtPointer call){
  char text[20];
  struct CSlider *cslider=(struct CSlider *)client;
  char *freqtext;
  double value;
  double slidervalue;

  XmScrollBarCallbackStruct *wx=(XmScrollBarCallbackStruct *)call;

#ifdef USELESSTIF
  slidervalue=(double)(MAXSLIDERVAL-wx->value);
#else
  slidervalue=(double)wx->value;
#endif

  if(cslider->islog){
    double s=slidervalue/MAXSLIDERVAL;
    value=pow(DASE,log(cslider->maxval)*(s-(s*cslider->logval)+cslider->logval));
  }else{
    value=(slidervalue*(cslider->maxval-cslider->minval)/MAXSLIDERVAL)+cslider->minval;
  }

  if(cslider->isdouble){
    sprintf(text,"%.*f",cslider->resolution,value);
    GUI_CallCallBackDouble(cslider,value);
  }else{
    sprintf(text,"%d",(int)value);
    GUI_CallCallBackInt(cslider,(int)value);
  }
  
  XtRemoveCallback(cslider->textwidget,XmNvalueChangedCallback,GUI_GeneralTextField,cslider);
  if(cslider->freqtextwidget!=NULL)
    XtRemoveCallback(cslider->freqtextwidget,XmNvalueChangedCallback,GUI_GeneralFreqTextField,cslider);

  XmTextSetString(cslider->textwidget,text);

  if(cslider->freqtextwidget!=NULL){
    freqtext=GUI_freq2pitch(value);
    XmTextSetString(cslider->freqtextwidget,freqtext);
    free(freqtext);
  }

  XtAddCallback(cslider->textwidget,XmNvalueChangedCallback,GUI_GeneralTextField,cslider);
  if(cslider->freqtextwidget!=NULL)
    XtAddCallback(cslider->freqtextwidget,XmNvalueChangedCallback,GUI_GeneralFreqTextField,cslider);


  return;
}
Пример #23
0
void
init_notes_create_screen ()
{
   /* Clear out fields on notes create screen and reset toggle buttons
    * to default values.
    */
   XmTextSetString (notes_equip_txt, "");
   XmTextSetString (notes_type_txt, "");
   if (user_note_duration == TEMP_NOTE)
      XmToggleButtonSetState (notes_temp_tog, TRUE, TRUE);
   else XmToggleButtonSetState (notes_perm_tog, TRUE, TRUE);
   XmToggleButtonSetState (notes_tickler_tog, FALSE, FALSE);
   XmTextSetString (notes_comment_txt, "");
   XmTextSetString (notes_text_txt, "");
}
Пример #24
0
static void
delete_function()
{
    char *str = XmTextGetString(function_name);
    int warn = !!ison(glob_flags, WARNINGS);

    ask_item = function_name;
    turnon(glob_flags, WARNINGS);
    (void) cmd_line(zmVaStr("\\function -d %s", str), NULL_GRP);
    if (!warn)
	turnoff(glob_flags, WARNINGS);
    XtFree(str);
    XmTextSetString(function_name, NULL);
    XmTextSetString(script_input, NULL);
}
Пример #25
0
//
// Called by this->listCallback() when a new item is selected in the list.
// This should update the the values displayed in the editor to match
// the values selected (i.e. listItem).
//
void SelectionAttrDialog::updateValueEditor(const char *text)
{
    char        *label, *value;
    int		len = STRLEN(text);

    label = new char [len+1]; 
    value = new char [len+1]; 

    ParseListItem(text,value,label);
    XmTextSetString(this->valueText,value);
    XmTextSetString(this->labelText,label);

    delete label;
    delete value;
}
void display_emfpr_dr_data_on_screen (COMPONENT_ELEMENT_TYPE *data_record)
{
int lm;

  XmTextSetString (emfpr_dr_product_txt,data_record->text);
  XmTextSetString (emfpr_dr_disc_reason_txt,"");
  for (lm = 0; lm < num_cmf_disconnect_reason_codes; lm++)
  {
    if (data_record->disc_reason ==  cmf_disconnect_reason_list[lm].db_code)
    {
       XmTextSetString (emfpr_dr_disc_reason_txt,cmf_disconnect_reason_list[lm].description);
    }
  }

}
Пример #27
0
// Update list of arguments
static void update_arguments(Widget dialog, Widget arguments_w,
			     StringArray& arguments, const string& last,
			     bool& updated)
{
    if (updated || dialog == 0)
	return;

    bool *selected = new bool[arguments.size()];
    int pos = -1;
    for (int i = 0; i < arguments.size(); i++)
    {
	if (arguments[i] == last)
	    pos = i;
	selected[i] = false;
    }
    if (pos >= 0)
	selected[pos] = true;

    setLabelList(arguments_w, arguments.values(),
		 selected, arguments.size(), false, false);

    if (pos >= 0)
	XmListSelectPos(arguments_w, pos + 1, False);

    delete[] selected;

    Widget text_w = XmSelectionBoxGetChild(dialog, XmDIALOG_TEXT);
    XmTextSetString(text_w, XMST(last.chars()));

    updated = true;
}
Пример #28
0
//
//	Callback from the menu.
//
void WFoeMotif::valchanged_textinput( Widget w, WFoeMotif *foe, XmAnyCallbackStruct *data)
{
  char	*value;
  int	len, sts;

  if ( foe->widgets.textinput == 0)
    return;

  value = XmTextGetString( foe->widgets.textinput);
  if ( *value == 0)
    return;

  len = strlen( value);
  if ( *(value + len - 1) == 10) {
    /* Return */
    *(value + len - 1) = 0;
    strcpy( foe->searchstring, value);

    foe->message( "");
    XmTextSetString( foe->widgets.textinput, (char*) "");
    XtUnmanageChild(foe->widgets.textinput);

    /* Call the specified function */
    sts = (foe->textinput_func) (foe, value);
    foe->error_msg( sts);
  }
  XtFree((char *) value);
}
Пример #29
0
// Make sure that every change in one filter is reflected in all others
static void SyncFiltersCB(Widget dialog, XtPointer, XtPointer)
{
    static bool entered = false;

    if (entered)
	return;

    entered = true;

    // std::clog << "widget = " << longName(text) << "\n";

    while (dialog != 0 && !XmIsFileSelectionBox(dialog))
	dialog = XtParent(dialog);
	
    // std::clog << "dialog = " << longName(dialog) << "\n";

    Widget text = XmFileSelectionBoxGetChild(dialog, XmDIALOG_FILTER_TEXT);
    String _current_file_filter = XmTextGetString(text);
    current_file_filter = _current_file_filter;
    XtFree(_current_file_filter);

    for (int i = 0; i < file_filters.size(); i++)
    {
	if (file_dialogs[i] != dialog)
	{
	    // std::clog << "other dialog = " << longName(file_dialogs[i]) << "\n";
	    XmTextSetString(file_filters[i], XMST(current_file_filter.chars()));
	}
    }

    entered = false;
}
Пример #30
0
static int motTextSetSpinValueAttrib(Ihandle* ih, const char* value)
{
  Widget spinbox = (Widget)iupAttribGet(ih, "_IUP_EXTRAPARENT");
  if (spinbox && XmIsSpinBox(spinbox))
  {
    int pos;
    if (iupStrToInt(value, &pos))
    {
      char* value = NULL;
      int min, max;
      iupAttribSetStr(ih, "_IUPMOT_DISABLE_TEXT_CB", "1");
      XtVaGetValues(ih->handle, XmNminimumValue, &min, 
                                XmNmaximumValue, &max, NULL);
      if (pos < min) pos = min;
      if (pos > max) pos = max;
      if (iupAttribGet(ih, "_IUPMOT_SPIN_NOAUTO"))
        value = XmTextGetString(ih->handle);

      XtVaSetValues(ih->handle, XmNposition, pos, NULL);

      if (value)
      {
        XmTextSetString(ih->handle, (char*)value);
        XtFree(value);
      }
      iupAttribSetStr(ih, "_IUPMOT_DISABLE_TEXT_CB", NULL);
      return 1;
    }
  }
  return 0;
}