|
Packit |
b099d7 |
/*
|
|
Packit |
b099d7 |
* Motif
|
|
Packit |
b099d7 |
*
|
|
Packit |
b099d7 |
* Copyright (c) 1987-2012, The Open Group. All rights reserved.
|
|
Packit |
b099d7 |
*
|
|
Packit |
b099d7 |
* These libraries and programs are free software; you can
|
|
Packit |
b099d7 |
* redistribute them and/or modify them under the terms of the GNU
|
|
Packit |
b099d7 |
* Lesser General Public License as published by the Free Software
|
|
Packit |
b099d7 |
* Foundation; either version 2 of the License, or (at your option)
|
|
Packit |
b099d7 |
* any later version.
|
|
Packit |
b099d7 |
*
|
|
Packit |
b099d7 |
* These libraries and programs are distributed in the hope that
|
|
Packit |
b099d7 |
* they will be useful, but WITHOUT ANY WARRANTY; without even the
|
|
Packit |
b099d7 |
* implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
|
Packit |
b099d7 |
* PURPOSE. See the GNU Lesser General Public License for more
|
|
Packit |
b099d7 |
* details.
|
|
Packit |
b099d7 |
*
|
|
Packit |
b099d7 |
* You should have received a copy of the GNU Lesser General Public
|
|
Packit |
b099d7 |
* License along with these librararies and programs; if not, write
|
|
Packit |
b099d7 |
* to the Free Software Foundation, Inc., 51 Franklin Street, Fifth
|
|
Packit |
b099d7 |
* Floor, Boston, MA 02110-1301 USA
|
|
Packit |
b099d7 |
*/
|
|
Packit |
b099d7 |
/*
|
|
Packit |
b099d7 |
* HISTORY
|
|
Packit |
b099d7 |
*/
|
|
Packit |
b099d7 |
#ifdef REV_INFO
|
|
Packit |
b099d7 |
#ifndef lint
|
|
Packit |
b099d7 |
static char rcsid[] = "$XConsortium: TextField1.c /main/9 1995/07/13 19:33:54 drk $"
|
|
Packit |
b099d7 |
#endif
|
|
Packit |
b099d7 |
#endif
|
|
Packit |
b099d7 |
/*
|
|
Packit |
b099d7 |
* (c) Copyright 1987, 1988, 1989 HEWLETT-PACKARD COMPANY */
|
|
Packit |
b099d7 |
#include <testlib.h>
|
|
Packit |
b099d7 |
#include "TextField1.h"
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
int n;
|
|
Packit |
b099d7 |
Arg args[MAX_ARGS];
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
void main (argc, argv)
|
|
Packit |
b099d7 |
int argc;
|
|
Packit |
b099d7 |
char **argv;
|
|
Packit |
b099d7 |
{
|
|
Packit |
b099d7 |
XmString tcs, ItemList[NITEMS];
|
|
Packit |
b099d7 |
XmFontList newfontlist;
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
CommonTestInit(argc, argv);
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
newfontlist = CommonGetFontList("variable");
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
n = 0;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNmarginHeight, 15); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNmarginWidth, 15); n++;
|
|
Packit |
b099d7 |
Form = XmCreateForm(Shell1, "Form", args, n);
|
|
Packit |
b099d7 |
XtManageChild (Form);
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
/* build the list of Functions Label and List */
|
|
Packit |
b099d7 |
tcs = XmStringCreateLtoR("Functions:", XmSTRING_DEFAULT_CHARSET);
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
n = 0;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNtopAttachment, XmATTACH_FORM); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNtopOffset, 15); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNleftAttachment, XmATTACH_FORM); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNleftOffset, 15); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNfontList, newfontlist); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNlabelString, tcs); n++;
|
|
Packit |
b099d7 |
Label1 = XmCreateLabel(Form, "Label1", args, n);
|
|
Packit |
b099d7 |
XtManageChild(Label1);
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
XmStringFree(tcs);
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
n = 0;
|
|
Packit |
b099d7 |
/* convert the plain strings to Xstrings */
|
|
Packit |
b099d7 |
for (n = 0; n < NITEMS; n++)
|
|
Packit |
b099d7 |
ItemList[n] = XmStringLtoRCreate(Istrings[n],
|
|
Packit |
b099d7 |
XmSTRING_DEFAULT_CHARSET);
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
n = 0;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNleftAttachment, XmATTACH_FORM); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNleftOffset, 15); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNtopAttachment, XmATTACH_WIDGET); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNtopWidget, Label1); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNtopOffset, 15); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNresizable, True); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNselectionPolicy, XmBROWSE_SELECT); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNhighlightOnEnter, False); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNfontList, newfontlist); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNitems, ItemList); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNitemCount, NITEMS); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNforeground, CommonGetColor("white")); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNbackground, CommonGetColor("darkorchid")); n++;
|
|
Packit |
b099d7 |
List1 = XmCreateScrolledList(Form, "List1", args, n);
|
|
Packit |
b099d7 |
XtManageChild(List1);
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
XtAddCallback(List1, XmNbrowseSelectionCallback, SSelCB_List1, NULL);
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
/* build the Action Label and Text */
|
|
Packit |
b099d7 |
tcs = XmStringCreateLtoR("Action TextField:", XmSTRING_DEFAULT_CHARSET);
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
n = 0;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNtopAttachment, XmATTACH_FORM); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNtopOffset, 15); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNleftAttachment, XmATTACH_WIDGET); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNleftWidget, List1); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNleftOffset, 15); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNfontList, newfontlist); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNlabelString, tcs); n++;
|
|
Packit |
b099d7 |
Label3 = XmCreateLabel(Form, "Label3", args, n);
|
|
Packit |
b099d7 |
XtManageChild(Label3);
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
XmStringFree(tcs);
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
n = 0;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNtopAttachment, XmATTACH_WIDGET); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNtopOffset, 15); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNtopWidget, Label3); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNrightAttachment, XmATTACH_FORM); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNrightOffset, 15); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNleftAttachment, XmATTACH_WIDGET); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNleftWidget, List1); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNleftOffset, 15); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNhighlightThickness, 2); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNfontList, newfontlist); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNcolumns, 32); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNvalue, starting_string_text); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNmaxLength, strlen(starting_string_text)); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNbackground, CommonGetColor("wheat")); n++;
|
|
Packit |
b099d7 |
TextF1 = XmCreateTextField(Form, "TextF1", args, n);
|
|
Packit |
b099d7 |
XtManageChild(TextF1);
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
/* build the Control Panel Label */
|
|
Packit |
b099d7 |
tcs = XmStringCreateLtoR("Control Panel:", XmSTRING_DEFAULT_CHARSET);
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
n = 0;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNtopAttachment, XmATTACH_WIDGET); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNtopWidget, TextF1); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNtopOffset, 25); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNleftAttachment, XmATTACH_WIDGET); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNleftWidget, List1); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNleftOffset, 15); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNfontList, newfontlist); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNlabelString, tcs); n++;
|
|
Packit |
b099d7 |
Label5 = XmCreateLabel(Form, "Label5", args, n);
|
|
Packit |
b099d7 |
XtManageChild(Label5);
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
XmStringFree(tcs);
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
/* build the Call Function pushbutton */
|
|
Packit |
b099d7 |
tcs = XmStringCreateLtoR("Call Function", XmSTRING_DEFAULT_CHARSET);
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
n = 0;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNleftAttachment, XmATTACH_WIDGET); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNleftWidget, List1); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNleftOffset, 15); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNtopAttachment, XmATTACH_WIDGET); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNtopWidget, Label5); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNtopOffset, 15); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNfontList, newfontlist); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNlabelString, tcs); n++;
|
|
Packit |
b099d7 |
ApplyB = XmCreatePushButton(Form, "ApplyB", args, n);
|
|
Packit |
b099d7 |
XtManageChild(ApplyB);
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
XtAddCallback(ApplyB, XmNactivateCallback, ApplyCB, NULL);
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
XmStringFree(tcs);
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
/* build the Clear Args pushbutton */
|
|
Packit |
b099d7 |
tcs = XmStringCreateLtoR("Clear Args", XmSTRING_DEFAULT_CHARSET);
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
n = 0;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNleftAttachment, XmATTACH_WIDGET); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNleftWidget, ApplyB); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNleftOffset, 15); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNtopAttachment, XmATTACH_WIDGET); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNtopWidget, Label5); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNtopOffset, 15); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNfontList, newfontlist); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNlabelString, tcs); n++;
|
|
Packit |
b099d7 |
ClearB = XmCreatePushButton(Form, "ClearB", args, n);
|
|
Packit |
b099d7 |
XtManageChild(ClearB);
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
XtAddCallback(ClearB, XmNactivateCallback, ClearCB, NULL);
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
XmStringFree(tcs);
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
/* build the Num Arg 1 Scale */
|
|
Packit |
b099d7 |
tcs = XmStringLtoRCreate("Num Arg 1", XmSTRING_DEFAULT_CHARSET);
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
n = 0;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNleftAttachment, XmATTACH_WIDGET); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNleftWidget, List1); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNleftOffset, 15); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNtopAttachment, XmATTACH_WIDGET); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNtopWidget, ApplyB); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNtopOffset, 15); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNfontList, newfontlist); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNorientation, XmHORIZONTAL); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNprocessingDirection, XmMAX_ON_RIGHT); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNtitleString, tcs); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNshowValue, True); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNmaximum, 40); n++;
|
|
Packit |
b099d7 |
Scale1 = XmCreateScale(Form, "Scale1", args, n);
|
|
Packit |
b099d7 |
XtManageChild(Scale1);
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
XtAddCallback(Scale1, XmNvalueChangedCallback, Scale1CB, NULL);
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
XmStringFree(tcs);
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
/* build the Num Arg 2 Scale */
|
|
Packit |
b099d7 |
tcs = XmStringLtoRCreate("Num Arg 2", XmSTRING_DEFAULT_CHARSET);
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
n = 0;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNleftAttachment, XmATTACH_WIDGET); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNleftWidget, List1); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNleftOffset, 15); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNtopAttachment, XmATTACH_WIDGET); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNtopWidget, Scale1); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNfontList, newfontlist); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNorientation, XmHORIZONTAL); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNprocessingDirection, XmMAX_ON_RIGHT); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNtitleString, tcs); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNshowValue, True); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNmaximum, 40); n++;
|
|
Packit |
b099d7 |
Scale2 = XmCreateScale(Form, "Scale2", args, n);
|
|
Packit |
b099d7 |
XtManageChild(Scale2);
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
XtAddCallback(Scale2, XmNvalueChangedCallback, Scale2CB, NULL);
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
XmStringFree(tcs);
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
/* build the True/False Label and ToggleButton */
|
|
Packit |
b099d7 |
tcs = XmStringCreateLtoR("True", XmSTRING_DEFAULT_CHARSET);
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
n = 0;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNleftAttachment, XmATTACH_WIDGET); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNleftWidget, List1); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNleftOffset, 15); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNtopAttachment, XmATTACH_WIDGET); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNtopWidget, Scale2); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNtopOffset, 15); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNlabelString, tcs); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNselectColor, CommonGetColor("darkorchid")); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNset, True); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNfontList, newfontlist); n++;
|
|
Packit |
b099d7 |
ToggleB = XmCreateToggleButton(Form, "ToggleB", args, n);
|
|
Packit |
b099d7 |
XtManageChild(ToggleB);
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
XtAddCallback(ToggleB, XmNvalueChangedCallback, TorFCB, NULL);
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
XmStringFree(tcs);
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
tcs = XmStringCreateLtoR("True/False Arg", XmSTRING_DEFAULT_CHARSET);
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
n = 0;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNleftAttachment, XmATTACH_WIDGET); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNleftWidget, List1); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNleftOffset, 15); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNtopAttachment, XmATTACH_WIDGET); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNtopWidget, ToggleB); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNtopOffset, 0); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNfontList, newfontlist); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNlabelString, tcs); n++;
|
|
Packit |
b099d7 |
Label2 = XmCreateLabel(Form, "Label2", args, n);
|
|
Packit |
b099d7 |
XtManageChild(Label2);
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
XmStringFree(tcs);
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
/* build the Status/Input Label and Text */
|
|
Packit |
b099d7 |
n = 0;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNleftAttachment, XmATTACH_WIDGET); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNleftWidget, List1); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNleftOffset, 15); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNtopAttachment, XmATTACH_WIDGET); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNtopWidget, Label2); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNtopOffset, 15); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNcolumns, 20); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNrows, 1); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNeditMode, XmSINGLE_LINE_EDIT); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNbackground, CommonGetColor("yellow")); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNfontList, newfontlist); n++;
|
|
Packit |
b099d7 |
StatText = XmCreateText(Form, "StatText", args, n);
|
|
Packit |
b099d7 |
XtManageChild(StatText);
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
tcs = XmStringCreateLtoR("Status/Input", XmSTRING_DEFAULT_CHARSET);
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
n = 0;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNleftAttachment, XmATTACH_WIDGET); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNleftWidget, List1); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNleftOffset, 15); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNtopAttachment, XmATTACH_WIDGET); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNtopWidget, StatText); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNtopOffset, 0); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNbottomAttachment, XmATTACH_FORM); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNbottomOffset, 15); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNfontList, newfontlist); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNlabelString, tcs); n++;
|
|
Packit |
b099d7 |
Label4 = XmCreateLabel(Form, "Label4", args, n);
|
|
Packit |
b099d7 |
XtManageChild(Label4);
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
XmStringFree(tcs);
|
|
Packit |
b099d7 |
XtRealizeWidget(Shell1);
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
/* test of:
|
|
Packit |
b099d7 |
XmTextFieldGetEditable()
|
|
Packit |
b099d7 |
XmTextFieldSetEditable()
|
|
Packit |
b099d7 |
*/
|
|
Packit |
b099d7 |
n = 0;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNvisibleItemCount, 2); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNtopItemPosition, 1); n++;
|
|
Packit |
b099d7 |
XtSetValues(List1, args, n);
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
CommonPause();
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
/* test of:
|
|
Packit |
b099d7 |
XmTextFieldGetMaxLength()
|
|
Packit |
b099d7 |
XmTextFieldSetMaxLength()
|
|
Packit |
b099d7 |
XmTextFieldGetLastPosition()
|
|
Packit |
b099d7 |
*/
|
|
Packit |
b099d7 |
n = 0;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNvisibleItemCount, 3); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNtopItemPosition, 3); n++;
|
|
Packit |
b099d7 |
XtSetValues(List1, args, n);
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
CommonPause();
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
/* test of:
|
|
Packit |
b099d7 |
XmTextFieldSetInsertionPosition()
|
|
Packit |
b099d7 |
*/
|
|
Packit |
b099d7 |
n = 0;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNvisibleItemCount, 1); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNtopItemPosition, 6); n++;
|
|
Packit |
b099d7 |
XtSetValues(List1, args, n);
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
CommonPause();
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
/* test of:
|
|
Packit |
b099d7 |
XmTextFieldGetBaseline()
|
|
Packit |
b099d7 |
XmTextFieldXYToPos()
|
|
Packit |
b099d7 |
XmTextFieldPosToXY()
|
|
Packit |
b099d7 |
*/
|
|
Packit |
b099d7 |
n = 0;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNvisibleItemCount, 3); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNtopItemPosition, 7); n++;
|
|
Packit |
b099d7 |
XtSetValues(List1, args, n);
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
CommonPause();
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
XtAppMainLoop(app_context);
|
|
Packit |
b099d7 |
}
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
static void Scale1CB(Widget w, XtPointer client_data,
|
|
Packit |
b099d7 |
XtPointer call_data)
|
|
Packit |
b099d7 |
{
|
|
Packit |
b099d7 |
scale1_val = ((XmScaleCallbackStruct*)call_data)->value;
|
|
Packit |
b099d7 |
}
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
static void Scale2CB(Widget w, XtPointer client_data,
|
|
Packit |
b099d7 |
XtPointer call_data)
|
|
Packit |
b099d7 |
{
|
|
Packit |
b099d7 |
scale2_val = ((XmScaleCallbackStruct*)call_data)->value;
|
|
Packit |
b099d7 |
}
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
static void SSelCB_List1(Widget w, XtPointer client_data,
|
|
Packit |
b099d7 |
XtPointer call_data)
|
|
Packit |
b099d7 |
{
|
|
Packit |
b099d7 |
function = ((XmListCallbackStruct*)call_data)->item_position;
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
switch (function) {
|
|
Packit |
b099d7 |
/* these don't use any controls */
|
|
Packit |
b099d7 |
case GetEditable:
|
|
Packit |
b099d7 |
case GetMaxLength:
|
|
Packit |
b099d7 |
case GetLastPosition:
|
|
Packit |
b099d7 |
case GetBaseline:
|
|
Packit |
b099d7 |
n = 0;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNsensitive, False); n++;
|
|
Packit |
b099d7 |
XtSetValues(Scale1, args, n);
|
|
Packit |
b099d7 |
XtSetValues(Scale2, args, n);
|
|
Packit |
b099d7 |
XtSetValues(ToggleB, args, n);
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
break;
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
/* these use only the Scale1 control */
|
|
Packit |
b099d7 |
case SetMaxLength:
|
|
Packit |
b099d7 |
case PosToXY:
|
|
Packit |
b099d7 |
case SetInsertionPosition:
|
|
Packit |
b099d7 |
n = 0;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNsensitive, True); n++;
|
|
Packit |
b099d7 |
XtSetValues(Scale1, args, n);
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
n = 0;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNsensitive, False); n++;
|
|
Packit |
b099d7 |
XtSetValues(Scale2, args, n);
|
|
Packit |
b099d7 |
XtSetValues(ToggleB, args, n);
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
break;
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
/* these use the Scale1 and Scale2 controls */
|
|
Packit |
b099d7 |
case XYToPos:
|
|
Packit |
b099d7 |
n = 0;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNsensitive, True); n++;
|
|
Packit |
b099d7 |
XtSetValues(Scale1, args, n);
|
|
Packit |
b099d7 |
XtSetValues(Scale2, args, n);
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
n = 0;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNsensitive, False); n++;
|
|
Packit |
b099d7 |
XtSetValues(ToggleB, args, n);
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
break;
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
/* these use only the ToggleB control */
|
|
Packit |
b099d7 |
case SetEditable:
|
|
Packit |
b099d7 |
n = 0;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNsensitive, True); n++;
|
|
Packit |
b099d7 |
XtSetValues(ToggleB, args, n);
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
n = 0;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNsensitive, False); n++;
|
|
Packit |
b099d7 |
XtSetValues(Scale1, args, n);
|
|
Packit |
b099d7 |
XtSetValues(Scale2, args, n);
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
break;
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
default:
|
|
Packit |
b099d7 |
printf("Not a valid function\n");
|
|
Packit |
b099d7 |
}
|
|
Packit |
b099d7 |
}
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
static void ClearCB(Widget w, XtPointer client_data,
|
|
Packit |
b099d7 |
XtPointer call_data)
|
|
Packit |
b099d7 |
{
|
|
Packit |
b099d7 |
XmString tcs;
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
XmListDeselectAllItems(List1);
|
|
Packit |
b099d7 |
function = -1;
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
n = 0;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNvalue, 0); n++;
|
|
Packit |
b099d7 |
XtSetValues(Scale1, args, n);
|
|
Packit |
b099d7 |
XtSetValues(Scale2, args, n);
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
tcs = XmStringCreateLtoR("True", XmSTRING_DEFAULT_CHARSET);
|
|
Packit |
b099d7 |
n = 0;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNlabelString, tcs); n++;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNset, True); n++;
|
|
Packit |
b099d7 |
XtSetValues(ToggleB, args, n);
|
|
Packit |
b099d7 |
XmStringFree(tcs);
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
torf = True;
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
XmTextSetString(StatText, "");
|
|
Packit |
b099d7 |
}
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
static void ApplyCB(Widget w, XtPointer client_data,
|
|
Packit |
b099d7 |
XtPointer call_data)
|
|
Packit |
b099d7 |
{
|
|
Packit |
b099d7 |
char stat_str[25];
|
|
Packit |
b099d7 |
int left, right;
|
|
Packit |
b099d7 |
Position x, y;
|
|
Packit |
b099d7 |
char *tmp_str;
|
|
Packit |
b099d7 |
XmAnyCallbackStruct *c_d;
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
c_d = (XmAnyCallbackStruct *) call_data;
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
switch (function) {
|
|
Packit |
b099d7 |
case GetEditable:
|
|
Packit |
b099d7 |
if (XmTextFieldGetEditable(TextF1))
|
|
Packit |
b099d7 |
XmTextSetString(StatText, "GetEditable: True");
|
|
Packit |
b099d7 |
else
|
|
Packit |
b099d7 |
XmTextSetString(StatText, "GetEditable: False");
|
|
Packit |
b099d7 |
break;
|
|
Packit |
b099d7 |
case SetEditable:
|
|
Packit |
b099d7 |
XmTextFieldSetEditable(TextF1, torf);
|
|
Packit |
b099d7 |
break;
|
|
Packit |
b099d7 |
case GetMaxLength:
|
|
Packit |
b099d7 |
sprintf(stat_str, "MaxLength = %d",
|
|
Packit |
b099d7 |
XmTextFieldGetMaxLength(TextF1));
|
|
Packit |
b099d7 |
XmTextSetString(StatText, stat_str);
|
|
Packit |
b099d7 |
break;
|
|
Packit |
b099d7 |
case SetMaxLength:
|
|
Packit |
b099d7 |
XmTextFieldSetMaxLength(TextF1, scale1_val);
|
|
Packit |
b099d7 |
break;
|
|
Packit |
b099d7 |
case XYToPos:
|
|
Packit |
b099d7 |
sprintf(stat_str, "Position = %d",
|
|
Packit |
b099d7 |
XmTextFieldXYToPos(TextF1, scale1_val, scale2_val));
|
|
Packit |
b099d7 |
XmTextSetString(StatText, stat_str);
|
|
Packit |
b099d7 |
break;
|
|
Packit |
b099d7 |
case PosToXY:
|
|
Packit |
b099d7 |
if (XmTextFieldPosToXY(TextF1, (XmTextPosition)scale1_val,
|
|
Packit |
b099d7 |
&x, &y))
|
|
Packit |
b099d7 |
{
|
|
Packit |
b099d7 |
sprintf(stat_str, "x = %d, y = %d", x, y);
|
|
Packit |
b099d7 |
XmTextSetString(StatText, stat_str);
|
|
Packit |
b099d7 |
}
|
|
Packit |
b099d7 |
else
|
|
Packit |
b099d7 |
XmTextSetString(StatText, "Position not found");
|
|
Packit |
b099d7 |
break;
|
|
Packit |
b099d7 |
case GetLastPosition:
|
|
Packit |
b099d7 |
sprintf(stat_str, "last position = %d",
|
|
Packit |
b099d7 |
XmTextFieldGetLastPosition(TextF1));
|
|
Packit |
b099d7 |
XmTextSetString(StatText, stat_str);
|
|
Packit |
b099d7 |
break;
|
|
Packit |
b099d7 |
case SetInsertionPosition:
|
|
Packit |
b099d7 |
XmTextFieldSetInsertionPosition(TextF1,
|
|
Packit |
b099d7 |
(XmTextPosition)scale1_val);
|
|
Packit |
b099d7 |
break;
|
|
Packit |
b099d7 |
case GetBaseline:
|
|
Packit |
b099d7 |
sprintf(stat_str, "baseline = %d",
|
|
Packit |
b099d7 |
XmTextFieldGetBaseline(TextF1));
|
|
Packit |
b099d7 |
XmTextSetString(StatText, stat_str);
|
|
Packit |
b099d7 |
break;
|
|
Packit |
b099d7 |
default:
|
|
Packit |
b099d7 |
printf("Please select a valid function.\n");
|
|
Packit |
b099d7 |
};
|
|
Packit |
b099d7 |
}
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
static void TorFCB(Widget w, XtPointer client_data,
|
|
Packit |
b099d7 |
XtPointer call_data)
|
|
Packit |
b099d7 |
{
|
|
Packit |
b099d7 |
XmString tcs;
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
torf = ((XmToggleButtonCallbackStruct*)call_data)->set;
|
|
Packit |
b099d7 |
if (torf)
|
|
Packit |
b099d7 |
tcs = XmStringCreateLtoR("True", XmSTRING_DEFAULT_CHARSET);
|
|
Packit |
b099d7 |
else
|
|
Packit |
b099d7 |
tcs = XmStringCreateLtoR("False", XmSTRING_DEFAULT_CHARSET);
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
n = 0;
|
|
Packit |
b099d7 |
XtSetArg(args[n], XmNlabelString, tcs); n++;
|
|
Packit |
b099d7 |
XtSetValues(w, args, n);
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
XmStringFree(tcs);
|
|
Packit |
b099d7 |
}
|