diff lwlib/xlwscrollbarP.h @ 428:3ecd8885ac67 r21-2-22

Import from CVS: tag r21-2-22
author cvs
date Mon, 13 Aug 2007 11:28:15 +0200
parents
children ade4c7e2c6cb
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/lwlib/xlwscrollbarP.h	Mon Aug 13 11:28:15 2007 +0200
@@ -0,0 +1,136 @@
+/* Implements a lightweight scrollbar widget.
+   Copyright (C) 1992, 1993, 1994 Lucid, Inc.
+
+This file is part of the Lucid Widget Library.
+
+The Lucid Widget Library is free software; you can redistribute it and/or 
+modify it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+The Lucid Widget Library is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of 
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with XEmacs; see the file COPYING.  If not, write to
+the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+Boston, MA 02111-1307, USA.  */
+
+/* Created by Douglas Keller <dkeller@vnet.ibm.com> */
+
+#ifndef _XlwScrollBarP_h
+#define _XlwScrollBarP_h
+
+
+/*
+** Widget class
+*/
+typedef struct
+{
+  int dummy_field;	/* keep compiler happy */
+} XlwScrollBarClassPart;
+
+typedef struct _XlwScrollbarClassRec
+{
+  CoreClassPart	core_class;
+  XlwScrollBarClassPart scrollbar_class;
+} XlwScrollBarClassRec;
+
+enum XlwScrollbarArm
+{
+  ARM_NONE,
+  ARM_SLIDER,
+  ARM_UP,
+  ARM_DOWN,
+  ARM_PAGEUP,
+  ARM_PAGEDOWN
+};
+
+enum XlwScrollbarForcedScroll
+{
+  FORCED_SCROLL_NONE,
+  FORCED_SCROLL_DOWNRIGHT,
+  FORCED_SCROLL_UPLEFT
+};
+
+/*
+** Widget instance
+*/
+typedef struct
+{
+  /* resources */
+  XtCallbackList valueChangedCBL;
+  XtCallbackList incrementCBL;
+  XtCallbackList decrementCBL;
+  XtCallbackList pageIncrementCBL;
+  XtCallbackList pageDecrementCBL;
+  XtCallbackList toTopCBL;
+  XtCallbackList toBottomCBL;
+  XtCallbackList dragCBL;
+
+  Pixel		foreground;
+
+  Pixel		topShadowColor;
+  Pixel		bottomShadowColor;
+
+  Pixel		troughColor;
+
+  Pixel		armColor;
+  Pixel		armTopShadowColor;
+  Pixel		armBottomShadowColor;
+
+  Pixmap	topShadowPixmap;
+  Pixmap	bottomShadowPixmap;
+
+  int		shadowThickness;
+
+  Boolean	showArrows;
+
+  int		minimum;
+  int		maximum;
+  int		sliderSize;
+  int		value;
+  int		pageIncrement;
+  int		increment;
+
+  int		initialDelay;
+  int		repeatDelay;
+
+  unsigned char	orientation;
+
+  char		*sliderStyle;
+  char		*knobStyle;
+  char		*arrowPosition;
+
+  /* private */
+  Pixmap	grayPixmap;
+
+  GC		backgroundGC;
+  GC		topShadowGC;
+  GC		bottomShadowGC;
+
+  int		above, ss, below;
+  int		lastY;
+
+  enum XlwScrollbarArm armed;
+
+  enum XlwScrollbarForcedScroll forced_scroll;
+
+  int		savedValue;
+
+  Boolean	fullRedrawNext;
+
+  Boolean	timerActive;
+  XtIntervalId	timerId;
+
+} XlwScrollBarPart;
+
+typedef struct _XlwScrollBarRec
+{
+  CorePart          core;
+  XlwScrollBarPart  sb;
+} XlwScrollBarRec;
+
+#endif /* _XlwScrollBarP_h */