/*+++++++++++++++++++++++++++++++++++++++*/ static Widget BuildI18nDlg( Widget shell ) { register int i, n; Arg args[MAX_ARGS]; XmString button_string[NUM_LABELS]; XmString string; Widget form; Widget inputMethodForm; Widget imStartModeForm; Widget preeditTypeForm; int count = 0; Widget widgetList1[6]; /* get i18n resource values */ /* Set up DialogBoxDialog button labels */ button_string[0] = CMPSTR((String) _DtOkString); button_string[1] = CMPSTR((String) _DtCancelString); button_string[2] = CMPSTR((String) _DtHelpString); /* Create toplevel DialogBox */ /* Initialize the i18n structure */ i18n.pictLabel = NULL; i18n.systemDefault = NULL; i18n.inputMethodTB = NULL; i18n.serverHostLabel = NULL; i18n.serverHostCB = NULL; i18n.inputMethodLabel = NULL; i18n.inputMethodRC = NULL; i18n.imStartModeTB = NULL; i18n.imStartModeRC = NULL; i18n.askAtLoginTG = NULL; i18n.resumeCurrentImTG = NULL; i18n.preeditTypeTB = NULL; i18n.preeditTypeList = NULL; i18n.buttonMoveUp = NULL; i18n.buttonMoveDown = NULL; i18n.warnDialog = NULL; /* saveRestore * Note that save.poscnt has been initialized elsewhere. * save.posArgs may contain information from restoreBeep().*/ XtSetArg(save.posArgs[save.poscnt], XmNbuttonCount, NUM_LABELS); save.poscnt++; XtSetArg(save.posArgs[save.poscnt], XmNbuttonLabelStrings, button_string); save.poscnt++; XtSetArg(save.posArgs[save.poscnt], XmNdefaultPosition, False); save.poscnt++; style.i18nDialog = __DtCreateDialogBoxDialog(shell, "i18nDialog", save.posArgs, save.poscnt); XtAddCallback(style.i18nDialog, XmNhelpCallback, (XtCallbackProc)HelpRequestCB, (XtPointer)HELP_I18N_DIALOG); XmStringFree(button_string[0]); XmStringFree(button_string[1]); XmStringFree(button_string[2]); widgetList1[0] = _DtDialogBoxGetButton(style.i18nDialog,2); n=0; XtSetArg(args[n], XmNautoUnmanage, False); n++; XtSetArg(args[n], XmNcancelButton, widgetList1[0]); n++; XtSetValues (style.i18nDialog, args, n); n=0; XtSetArg(args[n], XmNtitle, ((char *)GETMESSAGE(19, 1, "Style Manager - Internationalization"))); n++; XtSetArg (args[n], XmNuseAsyncGeometry, True); n++; XtSetArg(args[n], XmNmwmFunctions, DIALOG_MWM_FUNC); n++; XtSetValues (XtParent(style.i18nDialog), args, n); n = 0; XtSetArg(args[n], XmNallowOverlap, False); n++; XtSetArg(args[n], XmNchildType, XmWORK_AREA); n++; form = XmCreateForm(style.i18nDialog, "i18nForm", args, n); n = 0; XtSetArg(args[n], XmNfillMode, XmFILL_SELF); n++; XtSetArg(args[n], XmNbehavior, XmICON_LABEL); n++; XtSetArg(args[n], XmNpixmapForeground, style.secBSCol); n++; XtSetArg(args[n], XmNpixmapBackground, style.secTSCol); n++; XtSetArg(args[n], XmNstring, NULL); n++; XtSetArg(args[n], XmNshadowThickness, 0); n++; XtSetArg(args[n], XmNimageName, I18N_ICON); n++; XtSetArg(args[n], XmNtraversalOn, False); n++; widgetList1[count++] = i18n.pictLabel = _DtCreateIcon(form, "i18npictLabel", args, n); n = 0; XtSetArg(args[n], XmNmarginHeight, LB_MARGIN_HEIGHT); n++; XtSetArg(args[n], XmNmarginWidth, LB_MARGIN_WIDTH); n++; string = CMPSTR(((char *)GETMESSAGE(19, 2, "Default"))); XtSetArg(args[n], XmNlabelString, string); n++; widgetList1[count++] = i18n.systemDefault = XmCreatePushButtonGadget(form, "systemDefault", args, n); XmStringFree(string); n = 0; string = CMPSTR((char *)GETMESSAGE(19, 3, "Input Method")); XtSetArg(args[n], XmNtitleString, string); n++; widgetList1[count++] = i18n.inputMethodTB = _DtCreateTitleBox(form, "inputMethodTB", args, n); XmStringFree(string); n = 0; XtSetArg(args[n], XmNallowOverlap, False); n++; XtSetArg(args[n], XmNchildType, XmWORK_AREA); n++; inputMethodForm = XmCreateForm(i18n.inputMethodTB, "inputMethodForm", args, n); n = 0; string = CMPSTR((char *)GETMESSAGE(19, 4, "Input Method Start Mode")); XtSetArg(args[n], XmNtitleString, string); n++; widgetList1[count++] = i18n.imStartModeTB = _DtCreateTitleBox(form, "imStartModeTB", args, n); XmStringFree(string); n = 0; XtSetArg(args[n], XmNallowOverlap, False); n++; XtSetArg(args[n], XmNchildType, XmWORK_AREA); n++; imStartModeForm = XmCreateForm(i18n.imStartModeTB, "imStartModeForm", args, n); n = 0; string = CMPSTR((char *)GETMESSAGE(19, 5, "Preedit Type")); XtSetArg(args[n], XmNtitleString, string); n++; widgetList1[count++] = i18n.preeditTypeTB = _DtCreateTitleBox(form, "preeditTypeTB", args, n); XmStringFree(string); n = 0; XtSetArg(args[n], XmNallowOverlap, False); n++; XtSetArg(args[n], XmNchildType, XmWORK_AREA); n++; preeditTypeForm = XmCreateForm(i18n.preeditTypeTB, "preeditTypeForm", args, n); /* Create widgets inside the inputMethodForm */ n = 0; string = CMPSTR((char *)GETMESSAGE(19, 6, "Server Host :")); XtSetArg(args[n], XmNlabelString, string); n++; i18n.serverHostLabel = XmCreateLabelGadget(inputMethodForm, "serverHostLabel", args, n); n = 0; XtSetArg(args[n], XmNcomboBoxType, XmDROP_DOWN_COMBO_BOX); n++; i18n.serverHostCB = (Widget) (intptr_t) XmCreateComboBox(inputMethodForm, "serverHostCB", args, n); XtAddCallback(XtNameToWidget(i18n.serverHostCB, "Text"), XmNactivateCallback, ServerHostCB, NULL); XtAddCallback(XtNameToWidget(i18n.serverHostCB, "Text"), XmNfocusCallback, TextFocusCB, NULL); XtAddCallback(XtNameToWidget(i18n.serverHostCB, "Text"), XmNlosingFocusCallback, TextLosingFocusCB, NULL); n = 0; string = CMPSTR((char *)GETMESSAGE(19, 7, "Input Method")); XtSetArg(args[n], XmNlabelString, string); n++; i18n.inputMethodLabel = XmCreateLabelGadget(inputMethodForm, "inputMethodLabel", args, n); n = 0; XtSetArg(args[n], XmNmarginWidth, LB_MARGIN_WIDTH); n++; XtSetArg(args[n], XmNmarginHeight, LB_MARGIN_HEIGHT); n++; i18n.inputMethodRC = XmCreateRadioBox(inputMethodForm, "inputMethodRC", args, n); /* Create widgets inside the imStartModeForm */ n = 0; XtSetArg(args[n], XmNmarginWidth, 0); n++; XtSetArg(args[n], XmNmarginHeight, 0); n++; i18n.imStartModeRC = XmCreateRadioBox(imStartModeForm, "imStartModeRC", args, n); n = 0; string = CMPSTR((char *)GETMESSAGE(19, 8, "Ask at login")); XtSetArg(args[n], XmNlabelString, string); n++; i18n.askAtLoginTG = XmCreateToggleButtonGadget(i18n.imStartModeRC, "askAtLoginTG", args, n); XmStringFree(string); n = 0; string = CMPSTR((char *)GETMESSAGE(19, 9, "Resume Current Input Method")); XtSetArg(args[n], XmNlabelString, string); n++; i18n.resumeCurrentImTG = XmCreateToggleButtonGadget(i18n.imStartModeRC, "resumeCurrentImTG", args, n); XmStringFree(string); /* Create widgets inside the preeditTypeForm */ n = 0; XtSetArg(args[n], XmNselectionPolicy, XmBROWSE_SELECT); n++; i18n.preeditTypeList = (Widget) (intptr_t) XmCreateList(preeditTypeForm, "preeditTypeList", args, n); n = 0; string = CMPSTR((char *)GETMESSAGE(19, 10, "Move Up")); XtSetArg(args[n], XmNlabelString, string); n++; XtSetArg(args[n], XmNsensitive, False); n++; i18n.buttonMoveUp = XmCreatePushButtonGadget(preeditTypeForm, "buttonMoveUp", args, n); XmStringFree(string); n = 0; string = CMPSTR((char *)GETMESSAGE(19, 11, "Move Down")); XtSetArg(args[n], XmNlabelString, string); n++; XtSetArg(args[n], XmNsensitive, False); n++; i18n.buttonMoveDown = XmCreatePushButtonGadget(preeditTypeForm, "buttonMoveDown", args, n); XmStringFree(string); XtAddCallback(style.i18nDialog, XmNmapCallback, FormLayoutCB, NULL); XtAddCallback(style.i18nDialog, XmNmapCallback, MapCB, shell); XtAddCallback(style.i18nDialog, XmNcallback, ButtonCB, NULL); XtAddCallback(i18n.systemDefault, XmNactivateCallback, SystemDefaultCB, NULL); XtAddCallback(i18n.preeditTypeList, XmNbrowseSelectionCallback, ListItemSelectCB, NULL); XtAddCallback(i18n.buttonMoveUp, XmNactivateCallback, MoveUpCB, NULL); XtAddCallback(i18n.buttonMoveDown, XmNactivateCallback, MoveDownCB, NULL); XtManageChild(form); XtManageChildren(widgetList1,count); XtManageChild(inputMethodForm); XtManageChild(imStartModeForm); XtManageChild(preeditTypeForm); XtManageChild(i18n.serverHostLabel); XtManageChild(i18n.serverHostCB); XtManageChild(i18n.inputMethodLabel); XtManageChild(i18n.inputMethodRC); XtManageChild(i18n.imStartModeRC); XtManageChild(i18n.askAtLoginTG); XtManageChild(i18n.resumeCurrentImTG); XtManageChild(i18n.preeditTypeList); XtManageChild(i18n.buttonMoveUp); XtManageChild(i18n.buttonMoveDown); return(style.i18nDialog); }
/*+++++++++++++++++++++++++++++++++++++++*/ static Widget build_dtwmDlg( Widget shell ) { register int i, n; Arg args[MAX_ARGS]; XmString button_string[NUM_LABELS]; XmString string; Widget form; Widget windowFocusForm; Widget iconPlacementForm; int count = 0; Widget widgetList1[6]; /* get dtwm resource values */ /* Set up DialogBoxDialog button labels */ button_string[0] = CMPSTR((String) _DtOkString); button_string[1] = CMPSTR((String) _DtCancelString); button_string[2] = CMPSTR((String) _DtHelpString); /* Create toplevel DialogBox */ /* saveRestore * Note that save.poscnt has been initialized elsewhere. * save.posArgs may contain information from restoreBeep().*/ XtSetArg(save.posArgs[save.poscnt], XmNbuttonCount, NUM_LABELS); save.poscnt++; XtSetArg(save.posArgs[save.poscnt], XmNbuttonLabelStrings, button_string); save.poscnt++; XtSetArg(save.posArgs[save.poscnt], XmNdefaultPosition, False); save.poscnt++; style.dtwmDialog = __DtCreateDialogBoxDialog(shell, "dtwmDialog", save.posArgs, save.poscnt); XtAddCallback(style.dtwmDialog, XmNhelpCallback, (XtCallbackProc)HelpRequestCB, (XtPointer)HELP_DTWM_DIALOG); XmStringFree(button_string[0]); XmStringFree(button_string[1]); XmStringFree(button_string[2]); widgetList1[0] = _DtDialogBoxGetButton(style.dtwmDialog,2); n=0; XtSetArg(args[n], XmNautoUnmanage, False); n++; XtSetArg(args[n], XmNcancelButton, widgetList1[0]); n++; XtSetValues (style.dtwmDialog, args, n); n=0; XtSetArg(args[n], XmNtitle, ((char *)GETMESSAGE(18, 1, "Style Manager - Window"))); n++; XtSetArg (args[n], XmNuseAsyncGeometry, True); n++; XtSetArg(args[n], XmNmwmFunctions, DIALOG_MWM_FUNC); n++; XtSetValues (XtParent(style.dtwmDialog), args, n); n = 0; XtSetArg(args[n], XmNallowOverlap, False); n++; XtSetArg(args[n], XmNchildType, XmWORK_AREA); n++; form = XmCreateForm(style.dtwmDialog, "dtwmForm", args, n); n = 0; XtSetArg(args[n], XmNfillMode, XmFILL_SELF); n++; XtSetArg(args[n], XmNbehavior, XmICON_LABEL); n++; XtSetArg(args[n], XmNpixmapForeground, style.secBSCol); n++; XtSetArg(args[n], XmNpixmapBackground, style.secTSCol); n++; XtSetArg(args[n], XmNstring, NULL); n++; XtSetArg(args[n], XmNshadowThickness, 0); n++; XtSetArg(args[n], XmNimageName, DTWM_ICON); n++; XtSetArg(args[n], XmNtraversalOn, False); n++; widgetList1[count++] = dtwm.pictLabel = _DtCreateIcon(form, "dtwmpictLabel", args, n); n = 0; XtSetArg(args[n], XmNmarginHeight, LB_MARGIN_HEIGHT); n++; XtSetArg(args[n], XmNmarginWidth, LB_MARGIN_WIDTH); n++; string = CMPSTR(((char *)GETMESSAGE(18, 2, "Default"))); XtSetArg(args[n], XmNlabelString, string); n++; widgetList1[count++] = dtwm.systemDefault = XmCreatePushButtonGadget(form, "systemDefault", args, n); XmStringFree(string); n = 0; string = CMPSTR((char *)GETMESSAGE(18, 3, "Window Behavior")); XtSetArg(args[n], XmNtitleString, string); n++; widgetList1[count++] = dtwm.windowFocusTB = _DtCreateTitleBox(form, "windowFocusTB", args, n); XmStringFree(string); n = 0; XtSetArg(args[n], XmNallowOverlap, False); n++; XtSetArg(args[n], XmNchildType, XmWORK_AREA); n++; windowFocusForm = XmCreateForm(dtwm.windowFocusTB, "windowFocusForm", args, n); n = 0; string = CMPSTR((char *)GETMESSAGE(18, 4, "Window Icons")); XtSetArg(args[n], XmNtitleString, string); n++; widgetList1[count++] = dtwm.iconPlacementTB = _DtCreateTitleBox(form, "iconPlacementTB", args, n); XmStringFree(string); n = 0; XtSetArg(args[n], XmNallowOverlap, False); n++; XtSetArg(args[n], XmNchildType, XmWORK_AREA); n++; iconPlacementForm = XmCreateForm(dtwm.iconPlacementTB, "iconPlacementForm", args, n); n = 0; XtSetArg(args[n], XmNmarginWidth, 0); n++; XtSetArg(args[n], XmNmarginHeight, 0); n++; dtwm.focusPolicyRC = XmCreateRadioBox(windowFocusForm, "focusPolicyRC", args, n); n = 0; string = CMPSTR((char *)GETMESSAGE(18, 13, "Point In Window To Make Active")); XtSetArg(args[n], XmNlabelString, string); n++; dtwm.pointerTG = XmCreateToggleButtonGadget(dtwm.focusPolicyRC, "pointerTG", args, n); XmStringFree(string); n = 0; string = CMPSTR((char *)GETMESSAGE(18, 14, "Click In Window To Make Active")); XtSetArg(args[n], XmNlabelString, string); n++; dtwm.explicitTG = XmCreateToggleButtonGadget(dtwm.focusPolicyRC, "explicitTG", args, n); XmStringFree(string); n = 0; XtSetArg(args[n], XmNmargin, 0); n++; dtwm.focusSeparator = XmCreateSeparatorGadget(windowFocusForm, "focusSeparator", args, n); n = 0; string = CMPSTR((char *)GETMESSAGE(18, 15, "Raise Window When Made Active")); XtSetArg(args[n], XmNnavigationType, XmTAB_GROUP); n++; XtSetArg(args[n], XmNlabelString, string); n++; XtSetArg(args[n], XmNalignment, XmALIGNMENT_BEGINNING); n++; dtwm.autoRaiseTG = XmCreateToggleButtonGadget(windowFocusForm, "autoRaiseTG", args, n); XmStringFree(string); n = 0; string = CMPSTR((char *)GETMESSAGE(18, 11, "Allow Primary Windows On Top")); XtSetArg(args[n], XmNnavigationType, XmTAB_GROUP); n++; XtSetArg(args[n], XmNlabelString, string); n++; XtSetArg(args[n], XmNalignment, XmALIGNMENT_BEGINNING); n++; dtwm.secStackTG = XmCreateToggleButtonGadget(windowFocusForm, "secStackTG", args, n); XmStringFree(string); n = 0; string = CMPSTR((char *)GETMESSAGE(18, 16, "Show Contents During Move")); XtSetArg(args[n], XmNnavigationType, XmTAB_GROUP); n++; XtSetArg(args[n], XmNlabelString, string); n++; XtSetArg(args[n], XmNalignment, XmALIGNMENT_BEGINNING); n++; dtwm.moveOpaqueTG = XmCreateToggleButtonGadget(windowFocusForm, "moveOpaqueTG", args, n); XmStringFree(string); n = 0; XtSetArg(args[n], XmNmarginWidth, 0); n++; XtSetArg(args[n], XmNmarginHeight, 0); n++; dtwm.useIconBoxRC = XmCreateRadioBox(iconPlacementForm, "useIconBoxRC", args, n); n = 0; string = CMPSTR((char *)GETMESSAGE(18, 9, "Use Icon Box")); XtSetArg(args[n], XmNlabelString, string); n++; dtwm.iconBoxTG = XmCreateToggleButtonGadget(dtwm.useIconBoxRC, "iconBoxTG", args, n); XmStringFree(string); n = 0; string = CMPSTR((char *)GETMESSAGE(18, 10, "Place On Workspace")); XtSetArg(args[n], XmNlabelString, string); n++; dtwm.desktopTG = XmCreateToggleButtonGadget(dtwm.useIconBoxRC, "desktopTG", args, n); XmStringFree(string); XtAddCallback(style.dtwmDialog, XmNmapCallback, formLayoutCB, NULL); XtAddCallback(style.dtwmDialog, XmNmapCallback, _DtmapCB_dtwmDlg, shell); XtAddCallback(style.dtwmDialog, XmNcallback, ButtonCB, NULL); XtAddCallback(dtwm.systemDefault, XmNactivateCallback, systemDefaultCB, NULL); XtManageChild(form); XtManageChildren(widgetList1,count); XtManageChild(windowFocusForm); XtManageChild(iconPlacementForm); XtManageChild(dtwm.focusPolicyRC); XtManageChild(dtwm.pointerTG); XtManageChild(dtwm.explicitTG); XtManageChild(dtwm.focusSeparator); XtManageChild(dtwm.autoRaiseTG); XtManageChild(dtwm.secStackTG); XtManageChild(dtwm.moveOpaqueTG); XtManageChild(dtwm.useIconBoxRC); XtManageChild(dtwm.iconBoxTG); XtManageChild(dtwm.desktopTG); return(style.dtwmDialog); }
/*+++++++++++++++++++++++++++++++++++++++*/ static Widget build_keyboardDlg( Widget shell ) { register int i, n; Arg args[MAX_ARGS]; Widget widget_list[12]; int count = 0; Widget form; Pixel foreground, background; Boolean set; XmString button_string[NUM_LABELS]; XmString string; /* Set up DialogBoxDialog button labels */ button_string[0] = CMPSTR(_DtOkString); button_string[1] = CMPSTR(_DtCancelString); button_string[2] = CMPSTR(_DtHelpString); /* Create toplevel DialogBox */ /* saveRestore * Note that save.poscnt has been initialized elsewhere. * save.posArgs may contain information from restoreBeep().*/ XtSetArg(save.posArgs[save.poscnt], XmNbuttonCount, NUM_LABELS); save.poscnt++; XtSetArg(save.posArgs[save.poscnt], XmNbuttonLabelStrings, button_string); save.poscnt++; XtSetArg (save.posArgs[save.poscnt], XmNdefaultPosition, False); save.poscnt++; style.kbdDialog = __DtCreateDialogBoxDialog(shell, "KeyboardDialog", save.posArgs, save.poscnt); XtAddCallback(style.kbdDialog, XmNcallback, ButtonCB, NULL); XtAddCallback(style.kbdDialog, XmNhelpCallback, (XtCallbackProc)HelpRequestCB, (XtPointer)HELP_KEYBOARD_DIALOG); XmStringFree(button_string[0]); XmStringFree(button_string[1]); XmStringFree(button_string[2]); widget_list[0] = _DtDialogBoxGetButton(style.kbdDialog,2); n=0; XtSetArg(args[n], XmNautoUnmanage, False); n++; XtSetArg(args[n], XmNcancelButton, widget_list[0]); n++; XtSetValues (style.kbdDialog, args, n); n=0; XtSetArg(args[n], XmNtitle, ((char *)GETMESSAGE(13, 6, "Style Manager - Keyboard"))); n++; XtSetArg (args[n], XmNuseAsyncGeometry, True); n++; XtSetArg(args[n], XmNmwmFunctions, DIALOG_MWM_FUNC ); n++; XtSetValues (XtParent(style.kbdDialog), args, n); n = 0; XtSetArg(args[n], XmNhorizontalSpacing, style.horizontalSpacing); n++; XtSetArg(args[n], XmNverticalSpacing, style.verticalSpacing); n++; XtSetArg(args[n], XmNallowOverlap, False); n++; XtSetArg(args[n], XmNchildType, XmWORK_AREA); n++; form = XmCreateForm(style.kbdDialog, "keyboardForm", args, n); /* create keyboard pixmap */ n = 0; XtSetArg(args[n], XmNfillMode, XmFILL_SELF); n++; XtSetArg(args[n], XmNbehavior, XmICON_LABEL); n++; XtSetArg(args[n], XmNpixmapForeground, style.secBSCol); n++; XtSetArg(args[n], XmNpixmapBackground, style.secTSCol); n++; XtSetArg(args[n], XmNstring, NULL); n++; XtSetArg(args[n], XmNshadowThickness, 0); n++; XtSetArg(args[n], XmNimageName, KEYBOARD_ICON); n++; XtSetArg(args[n], XmNtraversalOn, False); n++; widget_list[count++] = kbd.pictLabel= _DtCreateIcon(form, "keyboardpictLabel", args, n); n = 0; XtSetArg(args[n], XmNmarginHeight, LB_MARGIN_HEIGHT); n++; XtSetArg(args[n], XmNmarginWidth, LB_MARGIN_WIDTH); n++; string = CMPSTR(((char *)GETMESSAGE(13, 2, "Default"))); XtSetArg(args[n], XmNlabelString, string); n++; XtSetArg(args[n], XmNnavigationType, XmTAB_GROUP); n++; widget_list[count++] = kbd.systemDefault= XmCreatePushButtonGadget(form, "systemDefault", args, n); XmStringFree(string); n = 0; set = (kbd.values.global_auto_repeat == AutoRepeatModeOn) ? True : False; XtSetArg(args[n], XmNset, set); n++; string = CMPSTR(((char *)GETMESSAGE(13, 3, "Auto Repeat"))); XtSetArg(args[n], XmNlabelString, string); n++; XtSetArg(args[n], XmNnavigationType, XmTAB_GROUP); n++; widget_list[count++] = kbd.autoRepeatToggle= XmCreateToggleButtonGadget(form, "autoRepeatToggle", args, n); XmStringFree(string); n = 0; XtSetArg(args[n], XmNalignment, XmALIGNMENT_END); n++; string = CMPSTR(((char *)GETMESSAGE(13, 4, "Click Volume"))); XtSetArg(args[n], XmNmarginHeight, 0); n++; XtSetArg(args[n], XmNlabelString, string); n++; widget_list[count++] = kbd.volumeLabGad= XmCreateLabelGadget(form,"volumeLabGad", args, n); XmStringFree(string); n = 0; XtSetArg(args[n], XmNmaximum, VOLUME_MAX); n++; XtSetArg(args[n], XmNorientation, XmHORIZONTAL); n++; XtSetArg(args[n], XmNprocessingDirection, XmMAX_ON_RIGHT); n++; XtSetArg(args[n], XmNshowValue, True); n++; XtSetArg(args[n], XmNhighlightThickness, SCALE_HIGHLIGHT_THICKNESS); n++; XtSetArg(args[n], XmNscaleWidth, SCALE_WIDTH); n++; widget_list[count++] = kbd.volumeScale= XmCreateScale(form,"volumeScale", args, n); XtAddCallback(style.kbdDialog, XmNmapCallback, layoutCB, NULL); XtAddCallback(style.kbdDialog, XmNmapCallback, _DtmapCB_keyboardDlg, shell); XtAddCallback(kbd.systemDefault, XmNactivateCallback, systemDefaultCB, NULL); XtAddCallback(kbd.volumeScale, XmNvalueChangedCallback, valueChangedCB, NULL); XtAddCallback(kbd.autoRepeatToggle, XmNvalueChangedCallback, autoRepeatToggleCB, NULL); XtManageChild(form); XtManageChildren(widget_list,count); return(style.kbdDialog); }