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