[PATCH] Yet Another RubberBand. ;)

CaT (cat@zip.com.au)
Tue, 25 Jun 2002 11:58:57 +1000



--fdj2RfSjLxBAspz7
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline

Hey folks.

Wasn't sure which list to post this to but someone on the irc channel
suggested both so here goes.

This is a patch vs afterstep-stable cvs 20020529. What it does is add a
twm-like rubberband to the list of those currently available, as well as
fixing up some docs for the RubberBand option. It's similar to RubberBand
0 but it's thinner and tidier looking. The end result is that it looks
nicer (IMO) and it makes it easier to aim windows (for me anyway).

Anyhow... hope it can be applied. :)

-- 
GOVERNMENT ANNOUNCEMENT - The  government announced  today that  it is
changing its mascot  to a condom because  it more clearly reflects the
government's political stance.  A condom stands up to inflation, halts
production, destroys  the next generation,  protects a bunch of pricks
and finally, gives you a sense of security while you're being screwed!

--fdj2RfSjLxBAspz7
Content-Type: text/plain; charset=us-ascii
Content-Disposition: attachment; filename="afterstep-cvs20020529.twmrubberband.patch"

diff -aur afterstep-stable.orig/afterstep/looks/look.AfterStep afterstep-stable/afterstep/looks/look.AfterStep
--- afterstep-stable.orig/afterstep/looks/look.AfterStep	Fri Oct 20 14:28:01 2000
+++ afterstep-stable/afterstep/looks/look.AfterStep	Tue Jun 25 11:35:53 2002
@@ -239,7 +239,7 @@
 DrawMenuBorders 1
 #  Texture menu options individually, or the whole menu ?
 TextureMenuItemsIndividually 1
-#  [0/1/2] Allows selection of move/resize rubberband look
+#  [0-10] Allows selection of move/resize rubberband look
 RubberBand 2
 
 #  [0/1] Do you want minipixmaps in startmenu ?
diff -aur afterstep-stable.orig/afterstep/looks/look.DEFAULT afterstep-stable/afterstep/looks/look.DEFAULT
--- afterstep-stable.orig/afterstep/looks/look.DEFAULT	Fri Oct 20 14:28:01 2000
+++ afterstep-stable/afterstep/looks/look.DEFAULT	Tue Jun 25 11:36:05 2002
@@ -267,7 +267,7 @@
 TitleButtonStyle	0
 #  define the number of pixels between titlebar buttons ; 0
 TitleButtonSpacing	2
-#  [0/1/2] Allows selection of move/resize rubberband look
+#  [0-10] Allows selection of move/resize rubberband look
 RubberBand 2
 
 # 3) TextStyle :
diff -aur afterstep-stable.orig/afterstep/looks/look.Guylhem afterstep-stable/afterstep/looks/look.Guylhem
--- afterstep-stable.orig/afterstep/looks/look.Guylhem	Fri Oct 20 14:28:01 2000
+++ afterstep-stable/afterstep/looks/look.Guylhem	Tue Jun 25 11:36:27 2002
@@ -239,7 +239,7 @@
 TitleButtonStyle  0
 #  Define the number of pixels between titlebar buttons
 #TitleButtonSpacing       0
-#  [0/1/2] Allows selection of move/resize rubberband look
+#  [0-10] Allows selection of move/resize rubberband look
 RubberBand 0
 
 # 3) TextStyle :
diff -aur afterstep-stable.orig/afterstep/looks/look.Metallic afterstep-stable/afterstep/looks/look.Metallic
--- afterstep-stable.orig/afterstep/looks/look.Metallic	Fri Oct 20 14:28:01 2000
+++ afterstep-stable/afterstep/looks/look.Metallic	Tue Jun 25 11:36:32 2002
@@ -252,7 +252,7 @@
 TitleButtonStyle  0
 #  Define the number of pixels between titlebar buttons
 #TitleButtonSpacing       0
-#  [0/1/2] Allows selection of move/resize rubberband look
+#  [0-10] Allows selection of move/resize rubberband look
 RubberBand 2
 
 # 3) TextStyle :
diff -aur afterstep-stable.orig/afterstep/looks/look.NEW afterstep-stable/afterstep/looks/look.NEW
--- afterstep-stable.orig/afterstep/looks/look.NEW	Fri Oct 20 14:28:01 2000
+++ afterstep-stable/afterstep/looks/look.NEW	Tue Jun 25 11:36:36 2002
@@ -283,7 +283,7 @@
 #  |+-       --|
 #  +-----------+
 #ResizeMoveGeometry ++
-#  [0/1/2] Allows selection of move/resize rubberband look
+#  [0-10] Allows selection of move/resize rubberband look
 RubberBand 2
 
 #--------------------------
diff -aur afterstep-stable.orig/afterstep/looks/look.Ostx afterstep-stable/afterstep/looks/look.Ostx
--- afterstep-stable.orig/afterstep/looks/look.Ostx	Fri Oct 20 14:28:01 2000
+++ afterstep-stable/afterstep/looks/look.Ostx	Tue Jun 25 11:36:43 2002
@@ -255,7 +255,7 @@
 TitleButtonStyle  0
 #  Define the number of pixels between titlebar buttons
 TitleButtonSpacing       0
-#  [0/1/2] Allows selection of move/resize rubberband look
+#  [0-10] Allows selection of move/resize rubberband look
 RubberBand 2
 
 # 3) TextStyle :
diff -aur afterstep-stable.orig/afterstep/looks/look.PureNext afterstep-stable/afterstep/looks/look.PureNext
--- afterstep-stable.orig/afterstep/looks/look.PureNext	Fri Oct 20 14:28:01 2000
+++ afterstep-stable/afterstep/looks/look.PureNext	Tue Jun 25 11:36:46 2002
@@ -244,7 +244,7 @@
 TitleButtonStyle	0
 #  define the number of pixels between titlebar buttons ; 0
 #TitleButtonSpacing	2
-#  [0/1/2] Allows selection of move/resize rubberband look
+#  [0-10] Allows selection of move/resize rubberband look
 #RubberBand 2
 
 # 3) TextStyle :
diff -aur afterstep-stable.orig/afterstep/looks/look.Transparent.rev afterstep-stable/afterstep/looks/look.Transparent.rev
--- afterstep-stable.orig/afterstep/looks/look.Transparent.rev	Fri Oct 20 14:28:01 2000
+++ afterstep-stable/afterstep/looks/look.Transparent.rev	Tue Jun 25 11:36:49 2002
@@ -255,7 +255,7 @@
 TitleButtonStyle  1
 #  Define the number of pixels between titlebar buttons
 #TitleButtonSpacing       0
-#  [0/1/2] Allows selection of move/resize rubberband look
+#  [0-10] Allows selection of move/resize rubberband look
 RubberBand 2
 
 # 3) TextStyle :
diff -aur afterstep-stable.orig/afterstep/looks/look.purple afterstep-stable/afterstep/looks/look.purple
--- afterstep-stable.orig/afterstep/looks/look.purple	Fri Oct 20 14:28:01 2000
+++ afterstep-stable/afterstep/looks/look.purple	Tue Jun 25 11:36:54 2002
@@ -243,7 +243,7 @@
 TitleButtonStyle  0
 #  Define the number of pixels between titlebar buttons
 TitleButtonSpacing       0
-#  [0/1/2] Allows selection of move/resize rubberband look
+#  [0-10] Allows selection of move/resize rubberband look
 RubberBand 2
 
 # 3) TextStyle :
diff -aur afterstep-stable.orig/src/afterstep/afterstep.man afterstep-stable/src/afterstep/afterstep.man
--- afterstep-stable.orig/src/afterstep/afterstep.man	Thu Jan 17 02:46:55 2002
+++ afterstep-stable/src/afterstep/afterstep.man	Tue Jun 25 11:34:36 2002
@@ -879,12 +879,26 @@
 
 .IP "RubberBand \fItype\fP"
 Specifies the \fIRubberBand\fP type to use when moving or resizing
-non-opaque windows.  There are 3 styles:
+non-opaque windows.  There are 10 styles:
 
 .nf
 0: the window is represented as a number of rectangles
 1: one rectangle the size of the window
-2: one crossed-out rectangle the size of the window.
+2: one crossed-out rectangle the size of the window
+3: rectangles showing the titlebar and handles, if the
+   window has them
+4: rectange for the window outline, with secondry corners
+   stretching half way up the sides for the top left and
+   botton right
+5: as for 4 but with teriary corners going 2/3rds up the
+   secondry corners
+6: small window corners and a crosshair at the centre
+7: CAD-style lines stretching from screen edges to form
+   the window outline
+8: 2 pixel wire frame containing a fixed grid
+9: like 0 except the rectangles are thinner (1 pixel lines
+   instead of 3-4).
+.fi
 
 .IP "TitleTextAlign \fIalignment\fP"
 Specifies the alignment of the window title in the titlebar.  The
diff -aur afterstep-stable.orig/src/afterstep/resize.c afterstep-stable/src/afterstep/resize.c
--- afterstep-stable.orig/src/afterstep/resize.c	Fri Oct 20 14:27:57 2000
+++ afterstep-stable/src/afterstep/resize.c	Mon Jun  3 13:16:08 2002
@@ -592,6 +592,16 @@
 }				/* draw_fvwm_outline ()  */
 
 void
+draw_twm_outline (int x, int y, int width, int height)
+{
+  XDrawRectangle (dpy, Scr.Root, Scr.DrawGC, x, y, width, height);
+  XDrawLine (dpy, Scr.Root, Scr.DrawGC, x + 1, y + height / 3, x - 1 + width, y + height / 3);
+  XDrawLine (dpy, Scr.Root, Scr.DrawGC, x + 1, y + height - height / 3, x - 1 + width, y + height - height / 3);
+  XDrawLine (dpy, Scr.Root, Scr.DrawGC, x + width / 3, y + 1, x + width / 3, y - 1 + height);
+  XDrawLine (dpy, Scr.Root, Scr.DrawGC, x + width - width / 3, y + 1, x + width - width / 3, y - 1 + height);
+}				/* draw_twm_outline ()  */
+
+void
 draw_box_outline (int x, int y, int width, int height)
 {
   XDrawRectangle (dpy, Scr.Root, Scr.DrawGC, x, y,
@@ -802,6 +812,7 @@
    * 6 is the corners of the window with a crosshair in the middle.
    * 7 is lines spanning the whole screen framing the window. (CAD style)
    * 8 is a 2-pixel wide frame containing a fixed grid.
+   * 9 is like 0, except with a thinner outer border.
    *
    * (Might have afterstep default to 3 if allanon_, nekked, & the gang don't have any objections)
    */
@@ -849,6 +860,9 @@
 	case 8:
 	  draw_grid_outline (lastx, lasty, lastWidth, lastHeight);
 	  break;
+	case 9:
+	  draw_twm_outline (lastx, lasty, lastWidth, lastHeight);
+	  break;
 	  /* this should normally not happen */
 	default:
 	  draw_fvwm_outline (lastx, lasty, lastWidth, lastHeight);
@@ -895,6 +909,9 @@
 	  break;
 	case 8:
 	  draw_grid_outline (x, y, width, height);
+	  break;
+	case 9:
+	  draw_twm_outline (x, y, width, height);
 	  break;
 	  /* uh, which one dudes? */
 	default:

--fdj2RfSjLxBAspz7--
_______________________________________________
The AfterStep Window Manager for X User's Mailing List
http://mail.afterstep.org/mailman/listinfo/as-users