Enable scroll bar in X11 menu windows

This commit is contained in:
Pasi Kallinen
2016-01-01 21:24:55 +02:00
parent fce9f1131d
commit 8e7e79448e
2 changed files with 11 additions and 3 deletions

View File

@@ -101,6 +101,7 @@ MacOSX: force TIMED_DELAY build option on so that 'runmode' run-time option
is functional is functional
X11: core bug for '`' (backtick) and #terrain commands was only noticed by X11: core bug for '`' (backtick) and #terrain commands was only noticed by
X11 interface: impossible "add_menu: called before start_menu" X11 interface: impossible "add_menu: called before start_menu"
X11: enable a scroll bar in menu windows
General New Features General New Features

View File

@@ -18,6 +18,7 @@
#include <X11/Xaw/Command.h> #include <X11/Xaw/Command.h>
#include <X11/Xaw/Form.h> #include <X11/Xaw/Form.h>
#include <X11/Xaw/Label.h> #include <X11/Xaw/Label.h>
#include <X11/Xaw/Viewport.h>
#include <X11/Xaw/Cardinals.h> #include <X11/Xaw/Cardinals.h>
#include <X11/Xos.h> /* for index() */ #include <X11/Xos.h> /* for index() */
#include <X11/Xatom.h> #include <X11/Xatom.h>
@@ -844,7 +845,7 @@ Widget **command_widgets;
XtCallbackProc name_callback; XtCallbackProc name_callback;
Widget *formp; /* return */ Widget *formp; /* return */
{ {
Widget popup, form, label, above, left, right; Widget popup, form, label, above, left, right, view;
Widget *commands, *curr; Widget *commands, *curr;
int i; int i;
Arg args[8]; Arg args[8];
@@ -863,18 +864,24 @@ Widget *formp; /* return */
XtOverrideTranslations( XtOverrideTranslations(
popup, XtParseTranslationTable("<Message>WM_PROTOCOLS: ec_delete()")); popup, XtParseTranslationTable("<Message>WM_PROTOCOLS: ec_delete()"));
num_args = 0;
XtSetArg(args[num_args], XtNforceBars, False); num_args++;
XtSetArg(args[num_args], XtNallowVert, True); num_args++;
view = XtCreateManagedWidget("menuformview", viewportWidgetClass, popup,
args, num_args);
num_args = 0; num_args = 0;
XtSetArg(args[num_args], XtNtranslations, XtSetArg(args[num_args], XtNtranslations,
XtParseTranslationTable(popup_translations)); XtParseTranslationTable(popup_translations));
num_args++; num_args++;
*formp = form = XtCreateManagedWidget("menuform", formWidgetClass, popup, *formp = form = XtCreateManagedWidget("menuform", formWidgetClass, view,
args, num_args); args, num_args);
/* Get the default distance between objects in the form widget. */ /* Get the default distance between objects in the form widget. */
num_args = 0; num_args = 0;
XtSetArg(args[num_args], nhStr(XtNdefaultDistance), &distance); XtSetArg(args[num_args], nhStr(XtNdefaultDistance), &distance);
num_args++; num_args++;
XtGetValues(form, args, num_args); XtGetValues(view, args, num_args);
/* /*
* Create the label. * Create the label.