view src/EmacsFrame.h @ 5059:c8f90d61dcf3

fix memory usage stats to include pdumped objects -------------------- ChangeLog entries follow: -------------------- lisp/ChangeLog addition: 2010-02-21 Ben Wing <ben@xemacs.org> * diagnose.el: * diagnose.el (show-object-memory-usage-stats): Fix errors preventing this from working properly, account for words like "entry" pluralized to "entries". src/ChangeLog addition: 2010-02-21 Ben Wing <ben@xemacs.org> * alloc.c: * alloc.c (FREE_FIXED_TYPE_WHEN_NOT_IN_GC): * alloc.c (struct): * alloc.c (tick_lrecord_stats): * alloc.c (tick_lcrecord_stats): * alloc.c (sweep_lcrecords_1): * alloc.c (COUNT_FROB_BLOCK_USAGE): * alloc.c (SWEEP_FIXED_TYPE_BLOCK_1): * alloc.c (free_cons): * alloc.c (free_key_data): * alloc.c (free_button_data): * alloc.c (free_motion_data): * alloc.c (free_process_data): * alloc.c (free_timeout_data): * alloc.c (free_magic_data): * alloc.c (free_magic_eval_data): * alloc.c (free_eval_data): * alloc.c (free_misc_user_data): * alloc.c (free_marker): * alloc.c (gc_sweep_1): * alloc.c (HACK_O_MATIC): * alloc.c (FROB): * alloc.c (object_memory_usage_stats): * alloc.c (Fgarbage_collect): * dumper.c: * dumper.c (pdump_objects_unmark): * lrecord.h: * lrecord.h (enum lrecord_alloc_status): Fixes to memory-usage-tracking code, etc. (1) Incorporate NEW_GC stuff into FREE_FIXED_TYPE_WHEN_NOT_IN_GC to avoid duplication. (2) Rewrite tick_lcrecord_stats() to include separate tick_lrecord_stats(); use in dumper.c to note pdumped objects. (3) Instead of handling frob-block objects specially in object_memory_usage_stats(), have SWEEP_FIXED_TYPE_BLOCK_1 increment the stats in lrecord_stats[] so that they get handled like other objects. (4) Pluralize entry as entries, etc.
author Ben Wing <ben@xemacs.org>
date Sun, 21 Feb 2010 15:29:12 -0600
parents 8de8e3f6228a
children 308d34e9f07d
line wrap: on
line source

/* Public header for the Emacs frame widget.
   Copyright (C) 1993-1995 Sun Microsystems, Inc.
   Copyright (C) 1995 Ben Wing.

This file is part of XEmacs.

XEmacs is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
Free Software Foundation; either version 2, or (at your option) any
later version.

XEmacs is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
for more details.

You should have received a copy of the GNU General Public License
along with XEmacs; see the file COPYING.  If not, write to
the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA.  */

/* Synched up with: Not in FSF. */

#ifndef INCLUDED_EmacsFrame_h_
#define INCLUDED_EmacsFrame_h_

#ifndef XtNminibuffer
#define XtNminibuffer "minibuffer"
#endif
#ifndef XtCMinibuffer
#define XtCMinibuffer "Minibuffer"
#endif

#ifndef XtNunsplittable
#define XtNunsplittable "unsplittable"
#endif
#ifndef XtCUnsplittable
#define XtCUnsplittable "Unsplittable"
#endif

#ifndef XtNinternalBorderWidth
#define XtNinternalBorderWidth "internalBorderWidth"
#endif
#ifndef XtCInternalBorderWidth
#define XtCInternalBorderWidth "InternalBorderWidth"
#endif

#ifndef XtNscrollBarWidth
#define XtNscrollBarWidth "scrollBarWidth"
#endif
#ifndef XtCScrollBarWidth
#define XtCScrollBarWidth "ScrollBarWidth"
#endif

#ifndef XtNscrollBarHeight
#define XtNscrollBarHeight "scrollBarHeight"
#endif
#ifndef XtCScrollBarHeight
#define XtCScrollBarHeight "ScrollBarHeight"
#endif

#ifndef XtNtopToolBarHeight
#define XtNtopToolBarHeight "topToolBarHeight"
#endif
#ifndef XtCTopToolBarHeight
#define XtCTopToolBarHeight "TopToolBarHeight"
#endif

#ifndef XtNbottomToolBarHeight
#define XtNbottomToolBarHeight "bottomToolBarHeight"
#endif
#ifndef XtCBottomToolBarHeight
#define XtCBottomToolBarHeight "BottomToolBarHeight"
#endif

#ifndef XtNleftToolBarWidth
#define XtNleftToolBarWidth "leftToolBarWidth"
#endif
#ifndef XtCLeftToolBarWidth
#define XtCLeftToolBarWidth "LeftToolBarWidth"
#endif

#ifndef XtNrightToolBarWidth
#define XtNrightToolBarWidth "rightToolBarWidth"
#endif
#ifndef XtCRightToolBarWidth
#define XtCRightToolBarWidth "RightToolBarWidth"
#endif

#ifndef XtNtopToolBarBorderWidth
#define XtNtopToolBarBorderWidth "topToolBarBorderWidth"
#endif
#ifndef XtCTopToolBarBorderWidth
#define XtCTopToolBarBorderWidth "TopToolBarBorderWidth"
#endif

#ifndef XtNbottomToolBarBorderWidth
#define XtNbottomToolBarBorderWidth "bottomToolBarBorderWidth"
#endif
#ifndef XtCBottomToolBarBorderWidth
#define XtCBottomToolBarBorderWidth "BottomToolBarBorderWidth"
#endif

#ifndef XtNleftToolBarBorderWidth
#define XtNleftToolBarBorderWidth "leftToolBarBorderWidth"
#endif
#ifndef XtCLeftToolBarBorderWidth
#define XtCLeftToolBarBorderWidth "LeftToolBarBorderWidth"
#endif

#ifndef XtNrightToolBarBorderWidth
#define XtNrightToolBarBorderWidth "rightToolBarBorderWidth"
#endif
#ifndef XtCRightToolBarBorderWidth
#define XtCRightToolBarBorderWidth "RightToolBarBorderWidth"
#endif

#ifndef XtNtopToolBarShadowColor
#define XtNtopToolBarShadowColor "topToolBarShadowColor"
#endif
#ifndef XtCTopToolBarShadowColor
#define XtCTopToolBarShadowColor "TopToolBarShadowColor"
#endif

#ifndef XtNbottomToolBarShadowColor
#define XtNbottomToolBarShadowColor "bottomToolBarShadowColor"
#endif
#ifndef XtCBottomToolBarShadowColor
#define XtCBottomToolBarShadowColor "BottomToolBarShadowColor"
#endif

#ifndef XtNbackgroundToolBarColor
#define XtNbackgroundToolBarColor "backgroundToolBarColor"
#endif
#ifndef XtCBackgroundToolBarColor
#define XtCBackgroundToolBarColor "BackgroundToolBarColor"
#endif

#ifndef XtNforegroundToolBarColor
#define XtNforegroundToolBarColor "foregroundToolBarColor"
#endif
#ifndef XtCForegroundToolBarColor
#define XtCForegroundToolBarColor "ForegroundToolBarColor"
#endif

#ifndef XtNtopToolBarShadowPixmap
#define XtNtopToolBarShadowPixmap "topToolBarShadowPixmap"
#endif
#ifndef XtCTopToolBarShadowPixmap
#define XtCTopToolBarShadowPixmap "TopToolBarShadowPixmap"
#endif

#ifndef XtNbottomToolBarShadowPixmap
#define XtNbottomToolBarShadowPixmap "bottomToolBarShadowPixmap"
#endif
#ifndef XtCBottomToolBarShadowPixmap
#define XtCBottomToolBarShadowPixmap "BottomToolBarShadowPixmap"
#endif

#ifndef XtNtoolBarShadowThickness
#define XtNtoolBarShadowThickness "toolBarShadowThickness"
#endif
#ifndef XtCToolBarShadowThickness
#define XtCToolBarShadowThickness "ToolBarShadowThickness"
#endif

#ifndef XtNscrollBarPlacement
#define XtNscrollBarPlacement "scrollBarPlacement"
#endif
#ifndef XtCScrollBarPlacement
#define XtCScrollBarPlacement "ScrollBarPlacement"
#endif
#ifndef XtRScrollBarPlacement
#define XtRScrollBarPlacement "ScrollBarPlacement"
#endif

#ifndef XtNinterline
#define XtNinterline "interline"
#endif
#ifndef XtCInterline
#define XtCInterline "Interline"
#endif

#ifndef XtNfont
#define XtNfont "font"
#endif
#ifndef XtCFont
#define XtCFont "Font"
#endif

#ifndef XtNforeground
#define XtNforeground "foreground"
#endif
#ifndef XtCForeground
#define XtCForeground "Foreground"
#endif

#ifndef XtNbackground
#define XtNbackground "background"
#endif
#ifndef XtCBackground
#define XtCBackground "Background"
#endif

#ifndef XtNiconic
#define XtNiconic "iconic"
#endif
#ifndef XtCIconic
#define XtCIconic "Iconic"
#endif

#ifndef XtNcursorColor
#define XtNcursorColor "cursorColor"
#endif
#ifndef XtCCursorColor
#define XtCCursorColor "CursorColor"
#endif

#ifndef XtNbarCursor
#define XtNbarCursor "barCursor"
#endif
#ifndef XtCBarCursor
#define XtCBarCursor "BarCursor"
#endif

#ifndef XtNvisualBell
#define XtNvisualBell "visualBell"
#endif
#ifndef XtCVisualBell
#define XtCVisualBell "VisualBell"
#endif

#ifndef XtNbellVolume
#define XtNbellVolume "bellVolume"
#endif
#ifndef XtCBellVolume
#define XtCBellVolume "BellVolume"
#endif

#ifndef XtNpointerBackground
#define XtNpointerBackground "pointerBackground"
#endif

#ifndef XtNpointerColor
#define XtNpointerColor "pointerColor"
#endif

#ifndef XtNtextPointer
#define XtNtextPointer "textPointer"
#endif

#ifndef XtNspacePointer
#define XtNspacePointer "spacePointer"
#endif

#ifndef XtNmodeLinePointer
#define XtNmodeLinePointer "modePointer"
#endif

#ifndef XtNgcPointer
#define XtNgcPointer "gcPointer"
#endif

#ifndef XtNemacsFrame
#define XtNemacsFrame "emacsFrame"
#endif
#ifndef XtCEmacsFrame
#define XtCEmacsFrame "EmacsFrame"
#endif

#ifndef XtNgeometry
#define XtNgeometry "geometry"
#endif
#ifndef XtCGeometry
#define XtCGeometry "Geometry"
#endif

#ifndef XtNinitialGeometry
#define XtNinitialGeometry "initialGeometry"
#endif
#ifndef XtCInitialGeometry
#define XtCInitialGeometry "InitialGeometry"
#endif

#ifndef XtNmenubar
#define XtNmenubar "menubar"
#endif
#ifndef XtCMenubar
#define XtCMenubar "Menubar"
#endif

#ifndef XtNinitiallyUnmapped
#define XtNinitiallyUnmapped "initiallyUnmapped"
#endif
#ifndef XtCInitiallyUnmapped
#define XtCInitiallyUnmapped "InitiallyUnmapped"
#endif

#ifndef XtNpreferredWidth
#define XtNpreferredWidth "preferredWidth"
#endif
#ifndef XtCPreferredWidth
#define XtCPreferredWidth "PreferredWidth"
#endif

#ifndef XtNpreferredHeight
#define XtNpreferredHeight "preferredHeight"
#endif
#ifndef XtCPreferredHeight
#define XtCPreferredHeight "PreferredHeight"
#endif

#ifndef XtNuseBackingStore
#define XtNuseBackingStore "useBackingStore"
#endif
#ifndef XtCUseBackingStore
#define XtCUseBackingStore "UseBackingStore"
#endif

#define XtNximStyles "ximStyles"
#define XtCXimStyles "XimStyles"
#define XtRXimStyles "XimStyles"

#define XtNximForeground "ximForeground"
#define XtNximBackground "ximBackground"

/* scrollbar placement types; like in ScrolledW.h */
#define EM_TOP		1
#define EM_BOTTOM	0
#define EM_LEFT		2
#define EM_RIGHT	0

#define XtTOP_LEFT	(EM_TOP    | EM_LEFT)
#define XtBOTTOM_LEFT	(EM_BOTTOM | EM_LEFT)
#define XtTOP_RIGHT	(EM_TOP    | EM_RIGHT)
#define XtBOTTOM_RIGHT	(EM_BOTTOM | EM_RIGHT)

/* structures */
typedef struct _EmacsFrameRec *EmacsFrame;
typedef struct _EmacsFrameClassRec *EmacsFrameClass;

extern WidgetClass emacsFrameClass;

extern struct _DisplayContext* display_context;

/* Special entrypoints */
void EmacsFrameRecomputeCellSize (Widget widget);
void EmacsFrameSetCharSize (Widget widget, int rows, int cols);

#endif /* INCLUDED_EmacsFrame_h_ */