[Search for users]
[Overall Top Noters]
[List of all Conferences]
[Download this site]
Title: | DECWINDOWS 26-JAN-89 to 29-NOV-90 |
Notice: | See 1639.0 for VMS V5.3 kit; 2043.0 for 5.4 IFT kit |
Moderator: | STAR::VATNE |
|
Created: | Mon Oct 30 1989 |
Last Modified: | Mon Dec 31 1990 |
Last Successful Update: | Fri Jun 06 1997 |
Number of topics: | 3726 |
Total number of notes: | 19516 |
62.0. "problems function call xtgetvalues" by WARMUP::GUPTA () Mon Jan 30 1989 06:52
I am having problems with the get_something routine that is defined in the
DEcburger exapmle.
When I invoke the get_something routine I cannot get the returning string
to print it on the terminal.
the returning value of the string is "garbag" if you can see what I am doing
wrong or suggest a better method I will appreciate it .
thankyou in advance
delclartions are given below:
(
I am trying to access the title of the popup_dialog_box
The reason for getting the title is to ......
In my application there are more one popup_dialog_box is managed by
several push_buttons in the pull_down_menu
I have changed the title of the popupdialog box each time the
popup_dialog_box is called by a push_button
eg push_button delete manages common_popup_dialog_box
title delete an entry in the database
second push_button
push_button insert manages common_popup_dialog_box
title insert an entry in the database
for the push_buttons associated with the common_popup_dialog_box different
managament of wigdet is required so I am testing the title of the each
common_popup_dialog_box to test and then manage the particular widget
)
static int
initialize_application ()
/*==========================================================================
** Application initialization routine. This routine does all the one-time
** setup of application variables.
**
** Parameters: */
/* NONE */
/*
**
**-------------------------------------------------------------------------*/
{
/*
* initialize the application data structs
*/
latin_insert = DwtLatin1String("Insert an entry in the database");
latin_delete = DwtLatin1String("Delete an entry in the database");
latin_edit = DwtLatin1String("Edit an entry in the database");
latin_veiw = DwtLatin1String("Veiw an entry in the database");
latin_space = DwtLatin1String(" ");
}
DwtCompString latin_insert;
DwtCompString latin_delete;
DwtCompString latin_edit;
DwtCompString latin_veiw;
DwtCompString latin_space;
/*
* Simplified SET VALUE routine to use only when changing a single attribute.
* If we need to change more than one, all new values should be put
* into one arglist and we should make one XtSetValues call (which is MUCH
* more efficient).
*/
static void set_something(w, resource, value)
Widget w;
char *resource, *value;
{
Arg al[1];
XtSetArg(al[0], resource, value);
XtSetValues(w, al, 1);
}
/*
* Simplified GET VALUE routine to use only when retrieving a single attribute.
* If we need to retrieve more than one, all values should be put
* into one arglist and we should make one XtGetValues call (which is MUCH
* more efficient).
*/
static void get_something(w, resource, value)
Widget w;
char *resource, *value;
{
Arg al[1];
XtSetArg(al[0], resource, value);
XtGetValues(w, al, 1);
}
void
nc_activate_proc(w,object_index,callbackdata)
/*==============================================================================
** This routine handles the activate callback functions
** for any object.
**
** Parameters:
*/
Widget w;
int *object_index;
DwtAnyCallbackStruct *callbackdata;
/*
**----------------------------------------------------------------------------*/
{
/* variable declare */
char y[70];
/* this routine is to test the widget is managed or not and print error message
* is it cannot be fetched
* set something will set the title of the popup dialog box
* set something 2 will set the popup dialog box to be dwtmodal
* this routine works
*/
case k_g_delete_Btn_26:
{
util_fetch_manage_pop_to_top(&ra_object_ids[k_nc_delete_Popdialog],
"delete_Popdialog",ar_DRMHierarchy,ar_toplevel_object);
set_something(ra_object_ids[k_nc_delete_Popdialog],DwtNtitle,
latin_delete);
set_something(ra_object_ids[k_nc_delete_Popdialog],DwtNstyle,
DwtModal);
break;
case k_nc_insert_Btn_27:
{
get_something(ra_object_ids[k_nc_delete_Popdialog], DwtNtitle, y);
printf("get_something_text_is.... %s\n", y );
/* the printf statement doesnot print the text string that it should contain */
}
T.R | Title | User | Personal Name | Date | Lines |
---|
62.1 | | QUARK::LIONEL | Ad Astra | Mon Jan 30 1989 09:44 | 5 |
| What you are "getting" is a compound string. You can't just do a printf of
it.
Steve
|
62.2 | how to printf compound string | WARDER::GUPTA | | Mon Jan 30 1989 09:57 | 6 |
| If I cannot do a printf to a compound string is there a way of copying
the string into anouther char variable so that I can printf the
variable
thanks
|
62.3 | Can I close the call now ? | COMICS::BELL | Mirror or window ? | Mon Jan 30 1989 10:30 | 10 |
|
Arun,
I believe that calling DwtInitGetSegment followed by a loop of
DwtGetNextSegment until it returns DwtEndCS should unpack the
compound string one element at a time.
Frank Bell
UKTSC Basingstoke
|