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