Mercurial > emacs
view lwlib/xlwmenu.h @ 108656:0b28d05fa415
Initial reimplementation of calculating line edge positions in bidi lines.
dispextern.h (struct glyph_row): New members minpos and maxpos.
(MATRIX_ROW_START_CHARPOS, MATRIX_ROW_START_BYTEPOS)
(MATRIX_ROW_END_CHARPOS, MATRIX_ROW_END_BYTEPOS): Reference minpos
and maxpos members instead of start.pos and end.pos, respectively.
xdisp.c (display_line): Compare IT_CHARPOS with the position in
row->start.pos, rather than with MATRIX_ROW_START_CHARPOS.
(cursor_row_p): Use row->end.pos rather than MATRIX_ROW_END_CHARPOS.
(try_window_reusing_current_matrix, try_window_id): Use
ROW->minpos rather than ROW->start.pos.
(init_from_display_pos, init_iterator): Use EMACS_INT for
character and byte positions.
(find_row_edges): Renamed from find_row_end. Accept additional
arguments for minimum and maximum buffer positions seen by
display_line for this row. Don't use iterator to find the
position following the maximum one; instead, increment the
position found by display_line directly.
(display_line): Record minimum and maximum buffer positions for
glyphs in this row. Record the position of the newline that
terminates the line.
dispnew.c (increment_row_positions, check_matrix_invariants):
Increment and check row->start.pos and row->end.pos, in addition
to MATRIX_ROW_START_CHARPOS and MATRIX_ROW_END_CHARPOS.
author | Eli Zaretskii <eliz@gnu.org> |
---|---|
date | Tue, 18 May 2010 18:22:15 +0300 |
parents | 24c4451bcaf7 |
children | 05aff7edcc3d |
line wrap: on
line source
/* Interface of a lightweight menubar widget. Copyright (C) 1992 Lucid, Inc. Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. This file is part of the Lucid Widget Library. The Lucid Widget Library 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 1, or (at your option) any later version. The Lucid Widget Library 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 GNU Emacs; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ #ifndef _XlwMenu_h #define _XlwMenu_h /*********************************************************************** * * XlwMenu Widget * ***********************************************************************/ #include "lwlib.h" /* Resource names used by the XlwMenu widget */ #define XtNdisabledForeground "disabledForeground" #define XtCDisabledForeground "DisabledForeground" #define XtNbuttonForeground "buttonForeground" #define XtCButtonForeground "ButtonForeground" #define XtNmargin "margin" #define XtNhorizontalSpacing "horizontalSpacing" #define XtNverticalSpacing "verticalSpacing" #define XtNarrowSpacing "arrowSpacing" #define XtNmenu "menu" #define XtCMenu "Menu" #define XtNopen "open" #define XtNselect "select" #define XtNhighlightCallback "highlightCallback" #define XtNenterCallback "enterCallback" #define XtNleaveCallback "leaveCallback" #define XtNmenuBorderWidth "menuBorderWidth" #define XtNhorizontal "horizontal" #define XtCHorizontal "Horizontal" #define XtNcursor "cursor" #define XtNCursor "Cursor" #define XtNshowGrip "showGrip" #define XtCShowGrip "ShowGrip" #define XtNresizeToPreferred "resizeToPreferred" #define XtCResizeToPreferred "ResizeToPreferred" #define XtNallowResize "allowResize" #define XtCAllowResize "AllowResize" #define XtNfaceName "faceName" #define XtCFaceName "FaceName" #define XtNdefaultFace "defaultFace" #define XtCDefaultFace "DefaultFace" /* Motif-compatible resource names */ #define XmNshadowThickness "shadowThickness" #define XmCShadowThickness "ShadowThickness" #define XmNtopShadowColor "topShadowColor" #define XmCTopShadowColor "TopShadowColor" #define XmNbottomShadowColor "bottomShadowColor" #define XmCBottomShadowColor "BottomShadowColor" #define XmNtopShadowPixmap "topShadowPixmap" #define XmCTopShadowPixmap "TopShadowPixmap" #define XmNbottomShadowPixmap "bottomShadowPixmap" #define XmCBottomShadowPixmap "BottomShadowPixmap" #define XmRHorizontalDimension "HorizontalDimension" typedef struct _XlwMenuRec *XlwMenuWidget; typedef struct _XlwMenuClassRec *XlwMenuWidgetClass; extern WidgetClass xlwMenuWidgetClass; #endif /* _XlwMenu_h */ /* arch-tag: 0c019735-d61b-4080-be85-4fdd6e50ae07 (do not change this comment) */