view lwlib/xlwscrollbarP.h @ 5016:2ade80e8c640

enable more warnings and fix them -------------------- ChangeLog entries follow: -------------------- ChangeLog addition: 2010-02-08 Ben Wing <ben@xemacs.org> * configure: * configure.ac (TAB): Various warnings that used to be present had mistakenly gotten turned off. Turn them back on. lwlib/ChangeLog addition: 2010-02-08 Ben Wing <ben@xemacs.org> * xt-wrappers.h: * xt-wrappers.h (Xt_SET_VALUE): * xt-wrappers.h (Xt_GET_VALUE): Rename var to avoid shadowing problems. src/ChangeLog addition: 2010-02-08 Ben Wing <ben@xemacs.org> * alloc.c: Add prototypes for debugging functions. * alloc.c (compact_string_chars): Make static. * console-x.c (x_initially_selected_for_input): * console-x.h: * console-x.h (X_ERROR_OCCURRED): Delete x_has_keysym() prototype from console-x.c, move to console-x.h. * eval.c (multiple_value_call): Real bug: Fix shadowing local vars. * event-unixoid.c (read_event_from_tty_or_stream_desc): * event-unixoid.c (signal_fake_event): * lread.c (check_if_suppressed): * strftime.c (strftime): Fix stupid global shadowing warnings. * event-unixoid.c (signal_fake_event): * event-unixoid.c (drain_signal_event_pipe): Use Rawbyte, not char. * frame.h: Remove old prototype. * gc.c: * gc.c (show_gc_cursor_and_message): * gc.c (remove_gc_cursor_and_message): * gc.c (gc_prepare): * gc.c (gc_finish_mark): * gc.c (gc_finalize): * gc.c (gc_sweep): * gc.c (gc_finish): * gc.c (gc_suspend_mark_phase): * gc.c (gc_resume_mark_phase): * gc.c (gc_mark): * gc.c (gc_resume_mark): Make fns static. * glyphs-eimage.c (gif_decode_error_string): Fix non-prototype. * lisp.h: Hack around global shadowing warnings involving `index'. * intl-win32.c (wcsncpy): * number-gmp.c (bigfloat_to_string): * objects-msw.c (mswindows_font_spec_matches_charset_stage_2): * specifier.c (call_charset_predicate): * specifier.c (DEFINE_SPECIFIER_TAG_FROB): Declarations cannot follow statements in standard C. * search.c (search_buffer): Fix local shadowing warnings.
author Ben Wing <ben@xemacs.org>
date Mon, 08 Feb 2010 21:28:57 -0600
parents 3ecd8885ac67
children ade4c7e2c6cb
line wrap: on
line source

/* 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 */