home *** CD-ROM | disk | FTP | other *** search
/ Linux Cubed Series 2: Applications / Linux Cubed Series 2 - Applications.iso / editors / emacs / xemacs / xemacs-1.004 / xemacs-1 / xemacs-19.13 / src / scrollbar.h < prev    next >
Encoding:
C/C++ Source or Header  |  1995-08-04  |  2.5 KB  |  75 lines

  1. /* Define scrollbar instance.
  2.    Copyright (C) 1994, 1995 Board of Trustees, University of Illinois
  3.  
  4. This file is part of XEmacs.
  5.  
  6. XEmacs is free software; you can redistribute it and/or modify it
  7. under the terms of the GNU General Public License as published by the
  8. Free Software Foundation; either version 2, or (at your option) any
  9. later version.
  10.  
  11. XEmacs is distributed in the hope that it will be useful, but WITHOUT
  12. ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  13. FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  14. for more details.
  15.  
  16. You should have received a copy of the GNU General Public License
  17. along with XEmacs; see the file COPYING.  If not, write to the Free
  18. Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  */
  19.  
  20. /* Synched up with: Not in FSF. */
  21.  
  22. #ifndef _XEMACS_SCROLLBAR_H_
  23. #define _XEMACS_SCROLLBAR_H_
  24.  
  25. struct scrollbar_instance
  26. {
  27.   /* Used by the frame caches. */
  28.   struct scrollbar_instance *next;
  29.  
  30.   /* Pointer back to the mirror structure attached to. */
  31.   struct window_mirror *mirror;
  32.  
  33.   /* This flag indicates if the scrollbar is currently in use. */
  34.   char scrollbar_is_active;
  35.  
  36.   /* This flag indicates if a data parameter has changed. */
  37.   char scrollbar_instance_changed;
  38.  
  39.   /* A structure of auxiliary data specific to the device type.
  40.      struct x_scrollbar_data is used for X window frames; defined in
  41.      scrollbar-x.h */
  42.   void *scrollbar_data;
  43. };
  44.  
  45. #define SCROLLBAR_INSTANCE_FRAME(inst) (inst->mirror->frame)
  46.  
  47. extern void init_frame_scrollbars (struct frame *f);
  48. extern void init_device_scrollbars (struct device *d);
  49. extern void init_global_scrollbars (struct device *d);
  50. extern void free_frame_scrollbars (struct frame *f);
  51. extern void release_window_mirror_scrollbars (struct window_mirror *mir);
  52. extern void update_window_scrollbars (struct window *w,
  53.                       struct window_mirror *mirror,
  54.                       int active, int horiz_only);
  55.  
  56. extern Lisp_Object Vscrollbar_width, Vscrollbar_height;
  57.  
  58. extern Lisp_Object Qscrollbar_line_up;
  59. extern Lisp_Object Qscrollbar_line_down;
  60. extern Lisp_Object Qscrollbar_page_up;
  61. extern Lisp_Object Qscrollbar_page_down;
  62. extern Lisp_Object Qscrollbar_to_top;
  63. extern Lisp_Object Qscrollbar_to_bottom;
  64. extern Lisp_Object Qscrollbar_vertical_drag;
  65.  
  66. extern Lisp_Object Qscrollbar_char_left;
  67. extern Lisp_Object Qscrollbar_char_right;
  68. extern Lisp_Object Qscrollbar_page_left;
  69. extern Lisp_Object Qscrollbar_page_right;
  70. extern Lisp_Object Qscrollbar_to_left;
  71. extern Lisp_Object Qscrollbar_to_right;
  72. extern Lisp_Object Qscrollbar_horizontal_drag;
  73.  
  74. #endif /* _XEMACS_SCROLLBAR_H_ */
  75.