home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 5 Edit / 05-Edit.zip / e20313sr.zip / emacs / 20.3.1 / src / widgetprv.h < prev    next >
C/C++ Source or Header  |  1999-07-31  |  2KB  |  80 lines

  1. /* The emacs frame widget private header file.
  2.    Copyright (C) 1993 Free Software Foundation, Inc.
  3.  
  4. This file is part of GNU Emacs.
  5.  
  6. GNU Emacs is free software; you can redistribute it and/or modify
  7. it under the terms of the GNU General Public License as published by
  8. the Free Software Foundation; either version 2, or (at your option)
  9. any later version.
  10.  
  11. GNU Emacs is distributed in the hope that it will be useful,
  12. but WITHOUT ANY WARRANTY; without even the implied warranty of
  13. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  14. GNU General Public License for more details.
  15.  
  16. You should have received a copy of the GNU General Public License
  17. along with GNU Emacs; see the file COPYING.  If not, write to
  18. the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
  19. Boston, MA 02111-1307, USA.  */
  20.  
  21. /* Emacs 19 face widget ported by Fred Pierresteguy */
  22.  
  23. #ifndef _EmacsFrameP_h
  24. #define _EmacsFrameP_h
  25.  
  26. #include <X11/IntrinsicP.h>
  27. #include <X11/CoreP.h>
  28. #include "widget.h"
  29.  
  30. typedef struct {
  31.   struct frame*    frame;        /* the *emacs* frame object */
  32.  
  33.   /* Resources that can't be done from lisp.
  34.    */
  35.   char*        geometry;        /* geometry spec of this frame */
  36.   Boolean    iconic;            /* whether this frame is iconic */
  37.  
  38.   /* The rest of this is crap and should be deleted.
  39.    */
  40.   int        minibuffer;    /* 0: normal frames with minibuffers.
  41.                  * 1: frames without minibuffers 
  42.                  * 2: minibuffer only. */
  43.   Boolean    unsplittable;    /* frame can only have one window */
  44.  
  45.   int        internal_border_width;    /* internal borders */
  46.   int        interline;        /* skips between lines */
  47.  
  48.   XFontStruct*    font;            /* font */
  49.   Pixel        foreground_pixel;    /* foreground */
  50.  
  51.   Pixel        cursor_color;        /* text cursor color */
  52.   Boolean    bar_cursor;        /* 1 if bar, 0 if block */
  53.  
  54.   Boolean    visual_bell;        /* flash instead of beep */
  55.   int        bell_volume;        /* how loud is beep */
  56.  
  57.   /* private state */
  58.  
  59. } EmacsFramePart;
  60.  
  61. typedef struct _EmacsFrameRec {    /* full instance record */
  62.     CorePart        core;
  63.     EmacsFramePart    emacs_frame;
  64. } EmacsFrameRec;
  65.  
  66. typedef struct {            /* new fields for EmacsFrame class */
  67.     int dummy;
  68. } EmacsFrameClassPart;
  69.  
  70. typedef struct _EmacsFrameClassRec {    /* full class record declaration */
  71.     CoreClassPart        core_class;
  72.     EmacsFrameClassPart    emacs_frame_class;
  73. } EmacsFrameClassRec;
  74.  
  75. extern EmacsFrameClassRec emacsFrameClassRec;     /* class pointer */
  76.  
  77.  
  78.  
  79. #endif /* _EmacsFrameP_h */
  80.