--- BUGS.orig Tue Jan 27 07:40:36 1998 +++ BUGS Sun Mar 22 08:00:38 1998 @@ -46,3 +46,8 @@ not: The screen warp to de-iconifying windows not on the real screen is unpredictable at best. A kludge is in to "fix" it. --- djhjr + * External image support for titlebar buttons is quite primitive: + They're not scaled to the size of the buttons, transparent areas of + pixmaps are always the titlebar color, and only the opaque areas of + those receive pointer events. --- djhjr + --- CHANGELOG.orig Sat Mar 14 11:55:57 1998 +++ CHANGELOG Sun Mar 22 08:05:58 1998 @@ -7,6 +7,15 @@ ============ vtwm-5.4.N.tar.gz ============= hawkeyd@visi.com (D. J. Hawkey Jr. aka djhjr) + March 20 - 22, 1998 + [add_window.c] [util.c] [version.c] + Added color image (XPM) support for window buttons. Jason's + code for color icon images made it a breeze, but you'll be + managing everything (see BUGS). + + VTWM 5.4.4c released for public consumption. + vtwm-5.4.4b-to-5.4.4c.txt patch file released. + March 14 - 15, 1998 [events.c] [menus.c] [version.c] Fixed a bug where the window buttons would get painted with --- HINTS.orig Tue Jan 27 04:27:19 1998 +++ HINTS Sat Mar 21 06:44:48 1998 @@ -25,6 +25,6 @@ ========================== * If you use a SqueezeTitle list for versions prior to 5.4.4, you may - want to check the man page to see if 5.4.4's enterpretation of the + want to check the man page to see if the enterpretation of the resource's list parameters fouls your setup. --- djhjr --- Imakefile.orig Thu Feb 5 16:45:14 1998 +++ Imakefile Sat Mar 21 07:10:05 1998 @@ -11,8 +11,8 @@ XCOMM =============== Start of common editables ===================== -XCOMM To omit XPM image support for icons, uncomment this (version -XCOMM 3.4h of the XPM library is the earliest supported I know of) +XCOMM To omit XPM image support for icons and buttons, uncomment this +XCOMM (version 3.4h of the XPM library is the earliest supported I know of) XCOMM #define NO_XPM_SUPPORT XCOMM To omit platform and build info in the version window, uncomment this --- Makefile.QNX.orig Thu Feb 5 16:45:15 1998 +++ Makefile.QNX Sat Mar 21 07:10:39 1998 @@ -10,8 +10,8 @@ # =============== Start of common editables ===================== -# To omit XPM image support for icons, uncomment this (version -# 3.4h of the XPM library is the earliest supported I know of) +# To omit XPM image support for icons and buttons, uncomment this +# (version 3.4h of the XPM library is the earliest supported I know of) #XPM_DEFINE = -DNO_XPM_SUPPORT # and comment this SYS_LIBRARIES = -lXpm --- WISHLIST.orig Mon Jan 19 06:56:35 1998 +++ WISHLIST Sat Mar 21 06:44:08 1998 @@ -20,7 +20,7 @@ * Added m4 pre-processing of the *twmrc file. courtesy of Dave Edmondson. * Added :random color specification, which generates colors on the fly. * Color XPM support for icons. DONE - Jason Gloudon - * Color XPM support for buttons. DONE (internal images only) - djhjr + * Color XPM support for buttons. DONE - djhjr * 3D appearance on menus, titles, icons. DONE - djhjr * Moving in and out of desktop. * Opaque resizing available. --- add_window.c.orig Tue Jan 27 18:57:47 1998 +++ add_window.c Sat Mar 21 06:35:11 1998 @@ -1544,6 +1544,14 @@ } /* ...end of moved */ +#ifndef NO_XPM_SUPPORT + /* djhjr - 3/21/98 */ + if (tb->image != NULL) + if (tb->image->mask != None) + XShapeCombineMask(dpy, tbw->window, ShapeBounding, 0, 0, + tb->image->mask, ShapeSet); +#endif + tbw->info = tb; } /* end for(...) */ } --- util.c.orig Thu Feb 5 16:45:18 1998 +++ util.c Sat Mar 21 06:30:24 1998 @@ -635,7 +635,7 @@ { char *bigname; Pixmap pixmap,mask; - Image *newimage; + Image *newimage = None; /* added intialization - djhjr - 3/21/98 */ XpmAttributes attributes; int ErrorStatus; @@ -1874,6 +1874,42 @@ return (image); } +#ifndef NO_XPM_SUPPORT +/* djhjr - 3/20/98 */ +static Image *GetPixmapImage(name) +char *name; +{ + Image *image, *r, *s; + char path [128], pref [128]; + char *perc; + int i; + + if (! strchr (name, '%')) return (FindImage(name)); + s = image = None; + strcpy (pref, name); + perc = strchr (pref, '%'); + *perc = '\0'; + reportfilenotfound = 0; + for (i = 1;; i++) { + sprintf (path, "%s%d%s", pref, i, perc + 1); + r = FindImage(path); + if (r == None) break; + r->next = None; + if (image == None) s = image = r; + else { + s->next = r; + s = r; + } + } + reportfilenotfound = 1; + if (s != None) s->next = image; + if (image == None) { + fprintf (stderr, "Cannot open any %s pixmap file\n", name); + } + return (image); +} +#endif + /* djhjr - 4/19/96 */ Image *GetImage (name, cp) char *name; @@ -1960,6 +1996,11 @@ if ((image = (Image*) LookInNameList (*list, fullname)) == None) if ((image = GetBitmapImage (name, cp)) != None) AddToList (list, fullname, (char*) image); +#ifndef NO_XPM_SUPPORT + /* djhjr - 3/20/98 */ + else if ((image = GetPixmapImage (name)) != None) + AddToList (list, fullname, (char*) image); +#endif } return (image); --- version.c.orig Sat Mar 14 08:18:41 1998 +++ version.c Sat Mar 21 06:51:17 1998 @@ -46,5 +46,8 @@ /* djhjr - 3/14/98 char *Version = "Virtual Desktop TWM (VTWM) - X11R4-6 Release 5.4.4a"; */ +/* djhjr - 3/20/98 char *Version = "Virtual Desktop TWM (VTWM) - X11R4-6 Release 5.4.4b"; +*/ +char *Version = "Virtual Desktop TWM (VTWM) - X11R4-6 Release 5.4.4c"; --- vtwm.man.orig Sat Mar 14 07:58:26 1998 +++ vtwm.man Sat Mar 21 06:45:33 1998 @@ -13,7 +13,7 @@ .\" .if t .sp .5 .\" .. .\" .ta .3i .6i .9i 1.2i 1.5i 1.8i -.TH VTWM 1 "Release 5.4.4a" "X11R4-6" +.TH VTWM 1 "Release 5.4.4c" "X11R4-6" .\"********************************************************************* .\" Important note: At the time 5.4.4 was released, this manual page .\" conformed to Sun's guidelines for manual page markup, passed @@ -258,14 +258,16 @@ String arguments that are interpreted as filenames (see the \fBPixmaps\fP, \&\fBCursors\fP, and \fBIconDirectory\fP variables below) will prepend the user's directory -(specified by the \fIHOME\fP environment variable) if the first character is a -tilde (~). If, instead, the first character is a colon (:), the name is +(specified by the \fIHOME\fP environment variable) if the first character is +a tilde (~). If, instead, the first character is a colon (:), the name is assumed to refer to one of the internal bitmaps that are used to -create the default titlebars symbols: \fB:xlogo\fP -or \fB:iconify\fP (both refer to the -X used for the iconify button), \fB:resize\fP (the nested squares used by the -resize button), and \fB:question\fP (the question mark used for non-existent -bitmap files). +create the default 2D titlebar buttons: \fB:xlogo\fP and \fB:delete\fP, +\fB:iconify\fP and \fB:dot\fP, \fB:resize\fP, \fB:menu\fP, and +\fB:question\fP (used for non-existent bitmap files). Finally, if the first +five characters are ":xpm:", the name is assumed to refer to one of the +internal pixmaps that are used to create the default 3D titlebar buttons: +\fB:xpm:dot\fP, \fB:xpm:resize\fP, \fB:xpm:menu\fP, \fB:xpm:zoom\fP, and +\fB:xpm:bar\fP. .PP The following variables may be specified at the top of a \fBvtwm\fP startup file. Lists of Window name prefix strings are indicated by \fIwin-list\fP. @@ -1257,8 +1259,6 @@ Tells \fBvtwm\fP to use 3D-looking windows titles. In which case the default values of \fBTitleButtonBorderWidth\fP, \fBFramePadding\fP, \fBTitlePadding\fP and \fBButtonIndent\fP are set to 0. -There are 5 built-in scalable pixmaps for buttons: \fI:xpm:menu\fP, \fI:xpm:dot\fP, -\fI:xpm:resize\fP, \fI:xpm:zoom\fP and \fI:xpm:bar\fP. .IP "\fBVirtualBackground\fP \fIstring\fP This is the background color for the panner, a.k.a. the Virtual Desktop window. @@ -1944,6 +1944,10 @@ lists. .PP The \fBIconRegion\fP variable should take a list. +.PP +Many resource names referring to X bitmaps should be named such, rather +than using the word \fI"Pixmap"\fP, as X pixmaps are now supported in other +resources. .PP Double clicking very fast to get the constrained move function will sometimes cause the window to move, even though the pointer is not moved.