Esempio n. 1
0
static void
NEGetValue(Widget wid, int resource_offset, XtArgVal *value)
{
    *value = (XtArgVal)XmTextFieldGetString(NumEntry_TextField(wid));
#ifdef DEBUG
    printf("NumEntry - NEGetValue(%s) - >%s< >%s<\n", XtName(wid), *value, NumEntry_Value(wid));
#endif
}
Esempio n. 2
0
static void
destroy(Widget aw)
{
#ifdef DEBUG
    printf("NumEntry - destroy(%s)\n", XtName(aw));
#endif
    XtFree(NumEntry_Value(aw));
}
Esempio n. 3
0
void pb_activate_callback(Widget w, XtPointer clientData, XtPointer callData)
{
    unsigned char x;

    XtVaGetValues(XtParent(w), XmNpacking, &x, NULL);
    fprintf(stderr, "* Widget = %s - Activated\n", XtName(w));
    fprintf(stderr, "# RC Packing is %d\n", x);
}
Esempio n. 4
0
void
XltHostSendString(Widget w, String string)
{
#ifdef DEBUG
    printf("XltHostSendString(%s,%s)\n", XtName(w), string);
#endif
    XltHostSendData(w, string, strlen(string));
    XltHostSendData(w, Host_Terminator(w), strlen(Host_Terminator(w)));
}
Esempio n. 5
0
static void save_state(
Widget		w,
XtPointer	client_data,
XtPointer	call_data)
{
    Widget		topl = (Widget) client_data;
    XmFileSelectionBoxCallbackStruct
	*cbs = (XmFileSelectionBoxCallbackStruct *) call_data;
    FILE		*fp;
    time_t		daytime = time(NULL);
    struct passwd	*pwp;
    String		str1, str2;
    Position		x, y, x_off, y_off;
    Dimension		width, height;
    String		topl_name;
    SaveRestoreList	*svl=save_list;

    /* get the resource file */
    if( (fp = HGU_XmGetFilePointer( w, cbs->value, cbs->dir, "w" )) == NULL )
	return;
    str1 = ctime( (const time_t *) &daytime );
    pwp  = getpwuid( getuid() );
    str2 = pwp->pw_gecos;
    fprintf(fp, "!\n! saved state resource file from %s\n", argv_0);
    fprintf(fp, "! date: %s! user: %s\n!\n", str1, str2); /* no \n after date:
							     because ctime
							     includes the \n
							     */

    /* save top-level geometry */
    topl_name = XtName( topl );
    XtVaGetValues(topl, XmNx, &x, XmNy, &y,
		  XmNwidth, &width, XmNheight, &height, 
		  NULL);
    HGU_XmGetShellOffsets( topl, &x_off, &y_off );

    fprintf(fp, "!\n! top-level widget geometry\n!\n");
    fprintf(fp, "%s.x:       \t%d\n", topl_name, x - x_off);
    fprintf(fp, "%s.y:       \t%d\n", topl_name, y - y_off);
    fprintf(fp, "%s.width:   \t%d\n", topl_name, width);
    fprintf(fp, "%s.height:  \t%d\n", topl_name, height);
    fprintf(fp, "%s.geometry:\t%dx%d+%d+%d\n", topl_name, width, height,
	    x-5, y-21);

    /* call registered save_state procedures */
    while( svl != NULL ){

	if( svl->save_func != NULL )
	    (*svl->save_func)( svl->widget, svl->save_data, fp );
	else
	    (*default_save_func)( svl->widget, default_save_data, fp );

	svl = svl->next_data;
    }
	    
    fclose( fp );
}
Esempio n. 6
0
static void 
FPGetValue(Widget wid, int resource_offset, XtArgVal *value)
{
	*value = (XtArgVal)XmTextFieldGetString(FilePicker_TextField(wid));
#ifdef DEBUG
	printf("%s:FPGetValue(%d) - %s\n", __FILE__, __LINE__,
		XtName(wid));
#endif
}
Esempio n. 7
0
XmNavigability MyManagerNavigable(Widget wid) {
    // We've installed this function for Manager
    // with the name ScrollPaneManagerName
    if (XmIsManager(wid) 
        && ( XtName(wid) != NULL && strcmp(XtName(wid), ScrollPaneManagerName) == 0) )
    {
        // To be able to request focus on Manager by call
        // XmProcessTraversal(, XmTRAVERSE_CURRENT) we need to make
        // it return XmCONTROL_NAVIGABLE. Default implementation returns
        // DESCENDANTS_TAB_NAVIGABLE which doesn't allow this.
        return XmCONTROL_NAVIGABLE;
    }
    if (oldManagerNavigable) {
        return oldManagerNavigable(wid);
    }
    // this will never happen
    return XmCONTROL_NAVIGABLE;
}
Esempio n. 8
0
/*----------------------------------------------------------------------*/
static void
ActionPopup(Widget item,XEvent * event,char ** params,Cardinal * nparams)
{
	Widget				w = XfeIsComboBox(item) ? item : _XfeParent(item);
    XfeComboBoxPart *	cp = _XfeComboBoxPart(w);
	int					space_below = ScreenGetSpaceBelow(w);
	int					space_above = ScreenGetSpaceAbove(w);

#if 1
	printf("ActionPopup(%s,above = %d,below = %d)\n",
		   XtName(w),
		   space_above,
		   space_below);
#endif

	/* Check if we are already popped up */
	if (cp->popped_up)
	{
		printf("already popped up\n");

		StickRemoveTimeout(w);

		ListUnmanage(w);
		
		XtVaSetValues(cp->arrow,XmNarmed,False,NULL);

		return;
	}

	space_below = 200;

  	_XfeConfigureWidget(cp->shell,
						XfeRootX(w),
						XfeRootY(w) + _XfeHeight(w),
						_XfeWidth(w),
						space_below);

/*   	XtVaSetValues(cp->list, */
/* 				  XmNlistMarginWidth, 100, */
/* 				  NULL); */

/* 	XtVaSetValues(cp->arrow,XmCArmed,True,NULL); */

/* 	XtPopup(cp->shell,XtGrabNone); */
/* 	XMapRaised(XtDisplay(w),_XfeWindow(cp->shell)); */
/* 	XMapRaised(XtDisplay(w),_XfeWindow(cp->shell)); */

 	cp->remain_popped_up = False;

#if 1
	StickAddTimeout(w);
#endif

 	XtVaSetValues(cp->arrow,XmNarmed,True,NULL);

	ListManage(w);
}
Esempio n. 9
0
/*
 * Function:
 *	XawSmeBSBDestroy
 *
 * Parameters:
 *	w - simple menu widget entry
 */
static void
XawSmeBSBDestroy(Widget w)
{
    SmeBSBObject entry = (SmeBSBObject)w;

    DestroyGCs(w);
    if (entry->sme_bsb.label != XtName(w))
	XtFree(entry->sme_bsb.label);
}
Esempio n. 10
0
/*-------------------------------------------------------------------------*/
static void set_StrListField(
Widget w,
XtPointer address,
XrmQuark type,
Cardinal size 
) {
   lList *list = NULL;
   String str = NULL;
   static char buf[100 * BUFSIZ];
   lListElem *ep = NULL;

   /*
    * Here special Qmon Quarks are used. Does it work ?
    */

   if (type != QmonQENV_Type && type != QmonQST_Type &&
       type != QmonQRN_Type && type != QmonQTRN_Type && type != QmonQPN_Type &&
       type != QmonQMR_Type && type != QmonQQR_Type &&
       type != QmonQJRE_Type && type != QmonQCTX_Type &&
       type != QmonQPE_Type && type != QmonQARA_Type) {
      XmtWarningMsg("XmtDialogSetDialogValues", "StrListField",
         "Type Mismatch: Widget '%s':\n\tCan't set widget values"
         " from a resource of type '%s'.",
          XtName(w), XrmQuarkToString(type));

      return;
   }

   buf[0] = '\0';

   if (size == sizeof(lList*) || size == sizeof(String)) {
      if (type == QmonQPE_Type)
         str = *(String*) address;
      else
         list = *(lList**) address;
   }
   else
      return;

   if (type == QmonQENV_Type || type == QmonQCTX_Type) {
      str = write_pair_list(list, VARIABLE_TYPE);
   } 
   if (type == QmonQST_Type) {
      int first_time = 1;
      strcpy(buf, "");
      for_each(ep, list) {
         if (first_time) {
            strcpy(buf, lGetString(ep, ST_name));
            first_time = 0;
         }
         else
            snprintf(buf + strlen(buf), sizeof(buf) - strlen(buf), " %s",
                     lGetString(ep, ST_name));
      }
      str = buf;
   }
Esempio n. 11
0
/*-------------------------------------------------------------------------*/
static void qmonManopFolderChange(Widget w, XtPointer cld, XtPointer cad)
{
   lList *alp = NULL;
   XmTabCallbackStruct *cbs = (XmTabCallbackStruct *) cad;

   DENTER(GUI_LAYER, "qmonManopFolderChange");
   
   DPRINTF(("%s\n", XtName(cbs->tab_child)));

   if (!strcmp(XtName(cbs->tab_child), "manager_layout"))
      dialog_mode = SGE_UM_LIST;

   if (!strcmp(XtName(cbs->tab_child), "operator_layout"))
      dialog_mode = SGE_UO_LIST;

   if (!strcmp(XtName(cbs->tab_child), "user_layout"))
      dialog_mode = SGE_UU_LIST;

   if (!strcmp(XtName(cbs->tab_child), "userset_layout"))
      dialog_mode = SGE_US_LIST;

   /*
   ** fetch changed lists and update dialogues
   */
   qmonMirrorMultiAnswer(MANAGER_T | OPERATOR_T | USERSET_T | USER_T, &alp);
   if (alp) {
      qmonMessageBox(w, alp, 0);
      lFreeList(&alp);
      DEXIT;
      return;
   }
   updateManopList();

   /*
   ** set Modify button sensitivity
   */
   if (dialog_mode==SGE_US_LIST) {
      XtSetSensitive(manop_modify, True);
   } else {
      XtSetSensitive(manop_modify, False);
   }   
   DEXIT;
}
Esempio n. 12
0
void
unexpected_widget_in_callback(Widget w, const char *callback)
{
    ASSERT(w != NULL, "Widget mustn't be NULL!");
    popup_message(globals.widgets.top_level,
		  MSG_ERR,
		  REPORT_XDVI_BUG_TEMPLATE,
		  "Unexpected widget `%s' in callback `%s'",
		  XtName(w), callback);
}
Esempio n. 13
0
static void
LosingFocus(Widget W, XtPointer client_data, XtPointer call_data)
{
#ifdef DEBUG
    printf("NumEntry - LosingFocus(%s) - >%s<\n", XtName(W), NumEntry_Value(XtParent(W)));
#endif
    AutoRepeat(W, False);
    DoMath(XtParent(W));
    XtCallCallbacks(XtParent(W), XmNlosingFocusCallback, call_data);
}
Esempio n. 14
0
static void
NEGetColumns(Widget wid, int resource_offset, XtArgVal *value)
{
    XtVaGetValues(NumEntry_TextField(wid),
		  XmNcolumns, value,
		  NULL);
#ifdef DEBUG
    printf("NumEntry - NEGetColumns(%s)\n", XtName(wid));
#endif
}
Esempio n. 15
0
static void
ValueChange(Widget w, XtPointer client_data, XltNumEntryVerifyCallbackStruct *cbs)
{
char buf[1024];

	sprintf(buf,"%09.4f", cbs->dvalue);
	XtFree(cbs->value);
	cbs->value = XtNewString(buf);
	printf("ValueChange(%s) - %s %s\n", XtName(w), cbs->value, cbs->value);
}
Esempio n. 16
0
/* internal function used by the library dependent implementation to get the
   widget_value for a given widget in an instance */
widget_value*
lw_get_widget_value_for_widget (widget_instance *instance, Widget w)
{
  char* name = XtName (w);
  widget_value* cur;
  for (cur = instance->info->val; cur; cur = cur->next)
    if (!strcmp (cur->name, name))
      return cur;
  return NULL;
}
Esempio n. 17
0
    /* Get mark line number */
#ifdef WSDEBUG_TRACE
    if (WSDLEVEL(WS_TRACE_VERBOSE | WS_TRACE))
	wstrace("workshop_get_mark_lineno(%s, %d)\n",
		filename, markId);
#endif

    lineno = 0;
    buf = buflist_findname((char_u *)filename);
    if (buf != NULL)
	lineno = buf_findsign(buf, markId);

    return lineno;
}


#if 0	/* not used */
    void
workshop_adjust_marks(Widget *window, int pos,
			int inserted, int deleted)
{
#ifdef WSDEBUG_TRACE
    if (WSDLEVEL(WS_TRACE_VERBOSE | WS_TRACE))
	wstrace("XXXworkshop_adjust_marks(%s, %d, %d, %d)\n",
		window ? XtName(window) : "<None>", pos, inserted, deleted);
#endif
}
Esempio n. 18
0
static void
just_select(Widget w, XtPointer new_just, XtPointer garbage)
{

    FirstArg(XtNlabel, XtName(w));
    SetValues(print_just_panel);
    /* change export justification if it exists */
    if (export_just_panel)
	SetValues(export_just_panel);
    appres.flushleft = (new_just? True: False);
}
Esempio n. 19
0
static void
dump_box(XmKidGeometry box)
{
    if (!box)
	return;
    while (box->kid) {
	printf("    KID %s REQ %08x X %-5d Y %-5d W %-5d H %-5d B %-5d\n",
		XtName(box->kid), box->box.request_mode, box->box.x, box->box.y,
		box->box.width, box->box.height, box->box.border_width);
	box++;
    }
}
Esempio n. 20
0
static void
ShapeError(Widget w)
{
    String params[1];
    Cardinal num_params = 1;

    params[0] = XtName(w);
  XtAppWarningMsg(XtWidgetToApplicationContext(w),
		     "shapeUnknown", "xmuReshapeWidget", "XmuLibrary",
		     "Unsupported shape style for Command widget \"%s\"",
		  params, &num_params);
}
Esempio n. 21
0
void entry_cb(
  Widget	w,
  XtPointer	client_data,
  XtPointer	call_data )
{
  int*		val = (int*) client_data ;
  
  XmRowColumnCallbackStruct * cbs =
    (XmRowColumnCallbackStruct *) call_data ;
        
  printf("%d: %s\n", (*val), XtName(w) );
  
  if ( cbs->reason != XmCR_ACTIVATE )
  {
    printf( "Unexpected callback reason %d\n",
      cbs->reason );
    return ;
  }
  
  printf( "  Selected : %s\n", XtName( cbs->widget ) );
}
Esempio n. 22
0
static void
StepValue(Widget W, int a, int b)
{
    Widget Rc = XtParent(XtParent(W));
    Position Place;
    char *buf;

#ifdef DEBUG
    printf("NumEntry - StepValue(%s) - %s\n", XtName(W), XtName(Rc));
#endif
    buf = XmTextFieldGetString(NumEntry_TextField(Rc));
    Place = XmTextFieldGetInsertionPosition(NumEntry_TextField(Rc));
    if (buf[Place] != '.')
    {
	buf = IncDigit(buf, &Place, a);
	XmTextFieldSetString(NumEntry_TextField(Rc), buf);
	XmTextFieldSetInsertionPosition(NumEntry_TextField(Rc), Place);
	DoMath(Rc);
    }
    XtFree(buf);
}
Esempio n. 23
0
/*----------------------------------------------------------------------*/
static void
BufferAllocate(Widget w)
{
    assert( _XfeBufferType(w) != XmBUFFER_NONE );

    switch(_XfeBufferType(w))
    {
		/* Single buffer: allocate a buffer big enough for widget */
    case XmBUFFER_PRIVATE:

		_XfeBufferPixmap(w) = XCreatePixmap(XtDisplay(w),
											DefaultRootWindow(XtDisplay(w)),
											_XfeWidth(w),
											_XfeHeight(w),
											_XfeDepth(w));


#if 0
		printf("%s: Allocating a private buffer at (%d,%d)\n",
			   XtName(w),
			   _XfeWidth(w),_XfeHeight(w));
#endif

		break;

		/* Multiple buffer: ask the buffer manager for a buffer */
    case XmBUFFER_SHARED:

#if 0
		printf("%s: Allocating a shared buffer at (%d,%d)\n",
			   XtName(w),
			   _XfeWidth(w),_XfeHeight(w));
#endif

		_XfeBufferPixmap(w) = _XfePixmapBufferAllocate(w);

		break;
    }

}
Esempio n. 24
0
/*
 * Callback for cancel button in choice_dialog.
 */
static void
cancel_action(Widget w, XtPointer client_data, XtPointer call_data)
{
    XtPointer p;
    ptrdiff_t idx = -1;
    
    UNUSED(call_data);

#if MOTIF
    /* for motif, the index is in XmNuserData */
    UNUSED(client_data);
    if (strcmp(XtName(w), Xdvi_MESSAGE_SHELL_NAME) == 0) {
	/* invoked by the WM, get the messagebox child */
	Widget child;
	if (get_widget_by_name(&child, w, Xdvi_MESSAGE_DIALOG_NAME, True)) {
	    XtVaGetValues(child, XmNuserData, &p, NULL);
	    idx = (ptrdiff_t)p;
	}
    }
    else {
	XtVaGetValues(w, XmNuserData, &p, NULL);
	idx = (ptrdiff_t)p;
    }
    ASSERT(idx >= 0, "Couldn't get idx from XmNuserData!");
#else
    UNUSED(p);
    UNUSED(w);
    idx = (ptrdiff_t)client_data;
#endif
    ASSERT(idx >= 0 && idx < MAX_POPUPS, "Invalid widget index in cancel_action()");

    /* First call pre_message_cb with window widget ID
     * as additional parameter.
     */
    if (pre_callbacks[idx].callback != NULL) {
	pre_callbacks[idx].callback(popup_window[idx], pre_callbacks[idx].arg);
    }
    
    /* Then pop down window and mark its position as free, then
     * invoke the OK callback.  The reason for this is that the callback
     * may need to wait for open windows.
     */
    XtPopdown(popup_window[idx]);
    XtDestroyWidget(popup_window[idx]);
    g_popup_array[idx] = 0;
    XSync(DISP, True);

    /* invoke the callback if present */
    if (cancel_callbacks[idx].callback != NULL) {
	cancel_callbacks[idx].callback(cancel_callbacks[idx].arg);
    }
}
Esempio n. 25
0
/*----------------------------------------------------------------------*/
static void
ArrowActivateCB(Widget text,XtPointer client_data,XtPointer call_data)
{
	Widget					w = (Widget) client_data;
	XfeComboBoxPart *		cp = _XfeComboBoxPart(w);

#if 0
	printf("ArrowActivate(%s)\n",XtName(w));
#endif

/* 	cp->remain_popped_up = True; */

}
Esempio n. 26
0
/*-------------------------------------------------------------------------*/
static void TraceActions(
Widget w,
XtPointer cld,
String action_name,
XEvent *event,
String *params,
Cardinal *num_params 
) {
   DENTER(GUI_LAYER, "TraceActions");

   fprintf(stderr, "Widget: %20.20s Action: %s\n", XtName(w), action_name);
 
   DEXIT;
}
Esempio n. 27
0
/*----------------------------------------------------------------------*/
static void
StickTimeout(XtPointer client_data,XtIntervalId * id)
{
	Widget					w = (Widget) client_data;
	XfeComboBoxPart *		cp = _XfeComboBoxPart(w);

	cp->delay_timer_id = 0;

	cp->remain_popped_up = True;

#if 1
 	printf("StickTimeout(%s)\n",XtName(w));
#endif
}
Esempio n. 28
0
static void
gui_buttons_cb(Widget w, XtPointer client_data, XtPointer call_data)
{
    struct topic_info *info = (struct topic_info *)client_data;
    struct prefs_choice *prefs = (struct prefs_choice *)(info->data);
    char *name = XtName(w);
    
    UNUSED(call_data);

    if (strcmp(name, Xdvi_GUI_STATUSLINE_STR) == 0) {
	resource.expert_mode ^= XPRT_SHOW_STATUSLINE;
	toggle_statusline();
	update_expert_mode();
    }
    else if (strcmp(name, Xdvi_GUI_TOOLBAR_STR) == 0) {
	resource.expert_mode ^= XPRT_SHOW_TOOLBAR;
	toggle_toolbar();
	update_expert_mode();
    }
    else if (strcmp(name, Xdvi_GUI_PAGELIST_STR) == 0) {
	resource.expert_mode ^= XPRT_SHOW_PAGELIST;
	toggle_pagelist();
	update_expert_mode();
    }
    else if (strcmp(name, Xdvi_GUI_SCROLLBARS_STR) == 0) {
#if defined(LESSTIF_VERSION)
	static Boolean warned_about_lesstif = False;
#endif
	resource.expert_mode ^= XPRT_SHOW_SCROLLBARS;
	toggle_scrollbars();
	update_expert_mode();
#if defined(LESSTIF_VERSION)
	if (!warned_about_lesstif) {
	    warned_about_lesstif = True;
	    popup_message(globals.widgets.top_level,
			  MSG_INFO,
			  NULL,
			  "This version has been compiled with LessTif; "
			  "toggling the scrollbars won't work with LessTif.");
	}
#endif
    }
    else {
	popup_message(globals.widgets.top_level,
		      MSG_ERR,
		      REPORT_XDVI_BUG_TEMPLATE,
		      "Unexpected label in gui buttons: |%s|!\n", name);
    }
    store_preference(&(prefs->db), "expertMode", "%d", resource.expert_mode);
}
Esempio n. 29
0
File: Gadget.c Progetto: att/uwin
static void
secondary_object_create(Widget req, Widget new_w,
			ArgList args, Cardinal *num_args)
{
    XmBaseClassExt *bce;
    Arg argl[1];
    ArgList merged;

	DEBUGOUT(_LtDebug(__FILE__, new_w, "XmGadget secondary_object_create\n"));

    XtSetArg(argl[0], XmNlogicalParent, new_w);

    if (*num_args)
    {
	merged = XtMergeArgLists(args, *num_args, argl, XtNumber(argl));

	bce = _XmGetBaseClassExtPtr(XtClass(new_w), XmQmotif);

	XtCreateWidget(XtName(new_w), (*bce)->secondaryObjectClass,
		       XtParent(new_w)
		       ? XtParent(new_w)
		       : new_w,
		       merged, *num_args + 1);

	XtFree((char *)merged);
    }
    else
    {
	bce = _XmGetBaseClassExtPtr(XtClass(new_w), XmQmotif);

	XtCreateWidget(XtName(new_w), (*bce)->secondaryObjectClass,
		       XtParent(new_w)
		       ? XtParent(new_w)
		       : new_w,
		       argl, 1);
    }
}
Esempio n. 30
0
void
h_update_hyperlinks(Widget w, Pixel pix)
{
    const char *name = XtName(w);
    int type = 0;

    if (strcmp(name, Xdvi_UNVISITED_LINKS_BTN) == 0) {
	type = 1;
    }
    else if (strcmp(name, Xdvi_VISITED_LINKS_BTN) == 0) {
	type = 2;
    }

    /* fprintf(stderr, "WIDGET: |%s|; type: %d\n", name, type); */

    if (type != 0) {
	GC new_gc = set_or_make_gc(NULL, GXcopy, pix, resource.back_Pixel);
	GC old_gc;
	double r, g, b;
	double factor = 65535.0;
	XColor color;

	pixel_to_color(pix, &color, DISP, G_colormap);
	r = color.red / factor;
	g = color.green / factor;
	b = color.blue / factor;

	if (type == 1) {
	    old_gc = globals.gc.linkcolor;
	    sprintf(g_link_color_rgb, "push rgb %.2f %.2f %.2f", r, g, b);
	}
	else {
	    old_gc = globals.gc.visited_linkcolor;
	    sprintf(g_visited_link_color_rgb, "push rgb %.2f %.2f %.2f", r, g, b);
	}

	if (type == 1) {
	    globals.gc.linkcolor = new_gc;
	    XFreeGC(XtDisplay(w), old_gc);
	}
	else {
	    globals.gc.visited_linkcolor = new_gc;
	    XFreeGC(XtDisplay(w), old_gc);
	}
	/* update display */
	globals.ev.flags |= EV_NEWPAGE;
	XFlush(DISP);
    }
}