+
+ if (visual != DefaultVisualOfScreen (XtScreen (toplevel)))
+ {
+ Arg av [20];
+ int ac;
+ unsigned int bg, bd;
+ Widget new;
+ cmap = XCreateColormap (dpy, window, visual, AllocNone);
+ bg = get_pixel_resource ("background", "Background", dpy, cmap);
+ bd = get_pixel_resource ("borderColor", "Foreground", dpy, cmap);
+ ac = 0;
+ XtSetArg (av[ac], XtNvisual, visual); ac++;
+ XtSetArg (av[ac], XtNcolormap, cmap); ac++;
+ XtSetArg (av[ac], XtNdepth, get_visual_depth (dpy, visual)); ac++;
+ XtSetArg (av[ac], XtNbackground, (Pixel) bg); ac++;
+ XtSetArg (av[ac], XtNborderColor, (Pixel) bd); ac++;
+ new = XtAppCreateShell (progname, progclass,
+ topLevelShellWidgetClass, dpy,
+ av, ac);
+ XtDestroyWidget (toplevel);
+ toplevel = new;
+ }
+ else if (get_boolean_resource ("installColormap", "InstallColormap"))