]> code.delx.au - gnu-emacs/blobdiff - src/w32gui.h
Delete the autoloads for functions defined with ibuffer-specific commands.
[gnu-emacs] / src / w32gui.h
index ba04d1ac615d4e9040b8dc31dcdcd40afd47b128..12e77e3feccc0dcf42d3e423c416126a71ac412c 100644 (file)
@@ -1,4 +1,4 @@
-/* Definitions and headers for communication with Win32 GUI.
+/* Definitions and headers for communication on the Microsoft W32 API.
    Copyright (C) 1995 Free Software Foundation, Inc.
 
 This file is part of GNU Emacs.
    Copyright (C) 1995 Free Software Foundation, Inc.
 
 This file is part of GNU Emacs.
@@ -15,27 +15,72 @@ GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License
 along with GNU Emacs; see the file COPYING.  If not, write to
 
 You should have received a copy of the GNU General Public License
 along with GNU Emacs; see the file COPYING.  If not, write to
-the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  */
-
-#ifndef __WIN32_H__
-#define __WIN32_H__
+the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+Boston, MA 02111-1307, USA.  */
 
 
+#ifndef EMACS_W32GUI_H
+#define EMACS_W32GUI_H
 #include <windows.h>
 
 #include <windows.h>
 
+#include "w32bdf.h"
+
+/* Emulate XCharStruct.  */
+typedef struct _XCharStruct
+{
+  short rbearing;
+  short lbearing;
+  short width;
+  short ascent;
+  short descent;
+} XCharStruct;
+
+enum w32_char_font_type
+{
+  UNKNOWN_FONT,
+  ANSI_FONT,
+  UNICODE_FONT,
+  BDF_1D_FONT,
+  BDF_2D_FONT
+};
+
 typedef struct W32FontStruct {
 typedef struct W32FontStruct {
+  enum w32_char_font_type font_type;
   TEXTMETRIC tm;
   HFONT hfont;
   TEXTMETRIC tm;
   HFONT hfont;
+  bdffont *bdf;
+  int double_byte_p;
+  XCharStruct max_bounds;
+  XCharStruct scratch;
+  /* Only store info for ascii chars, if not fixed pitch.  */
+  XCharStruct * per_char;
 } W32FontStruct;
 
 } W32FontStruct;
 
+typedef struct W32FontStruct XFontStruct;
+
+/* Emulate X GC's by keeping color and font info in a structure.  */
+typedef struct _XGCValues
+{
+  COLORREF foreground;
+  COLORREF background;
+  XFontStruct * font;
+} XGCValues;
+
+#define GCForeground 0x01
+#define GCBackground 0x02
+#define GCFont 0x03
+
 typedef HBITMAP Pixmap;
 typedef HBITMAP Bitmap;
 typedef HBITMAP Pixmap;
 typedef HBITMAP Bitmap;
-typedef struct W32FontStruct XFontStruct;
-typedef HDC GC;
+
+typedef XGCValues * GC;
 typedef COLORREF Color;
 typedef DWORD Time;
 typedef HWND Window;
 typedef HCURSOR Cursor;
 
 typedef COLORREF Color;
 typedef DWORD Time;
 typedef HWND Window;
 typedef HCURSOR Cursor;
 
+/* Dummy; we don't yet support images in the Windows port */
+typedef int XImage;
+
 #define FACE_DEFAULT (~0)
 
 extern HINSTANCE hinst;
 #define FACE_DEFAULT (~0)
 
 extern HINSTANCE hinst;
@@ -80,4 +125,4 @@ extern int nCmdShow;
 
 extern int XParseGeometry ();
 
 
 extern int XParseGeometry ();
 
-#endif
+#endif /* EMACS_W32GUI_H */