From xemacs-m  Mon Jun  2 09:30:41 1997
Received: from jagor.srce.hr (hniksic@jagor.srce.hr [161.53.2.130])
	by xemacs.org (8.8.5/8.8.5) with ESMTP id JAA25693
	for <xemacs-beta@xemacs.org>; Mon, 2 Jun 1997 09:30:33 -0500 (CDT)
Received: (from hniksic@localhost)
          by jagor.srce.hr (8.8.5/8.8.4)
	  id QAA27774; Mon, 2 Jun 1997 16:30:26 +0200 (MET DST)
To: XEmacs Developers <xemacs-beta@xemacs.org>
Subject: Re: Request for objections...
References: <u467vx5uwr.fsf@pentagana.sonic.jp>
X-Attribution: Hrv
X-Face: Mie8:rOV<\c/~z{s.X4A{!?vY7{drJ([U]0O=W/<W*SMo/Mv:58:*_y~ki>xDi&N7XG
        KV^$k0m3Oe/)'e%3=$PCR&3ITUXH,cK>]bci&<qQ>Ff%x_>1`T(+M2Gg/fgndU%k*ft
        [(7._6e0n-V%|%'[c|q:;}td$#INd+;?!-V=c8Pqf}3J
X-Flame: You make me sick.
From: Hrvoje Niksic <hniksic@srce.hr>
Date: 02 Jun 1997 16:30:24 +0200
In-Reply-To: jhod@po.iijnet.or.jp's message of 02 Jun 1997 16:24:52 +0900
Message-ID: <kigenalyt4v.fsf@jagor.srce.hr>
Lines: 64
X-Mailer: Gnus v5.4.52/XEmacs 20.2

jhod@po.iijnet.or.jp (P. E. Jareth Hein) writes:

> I'm working on making life a little easier for myself in the
> input-method department by re-writing egg to function completly with
> extents, and in the process I've come across a slightly strange
> display situation I want to change. I'm creating regions with start
> and end glyphs that are closed at both ends, with the intent that
> inserting data anywhere in the extent will go into the extent. This
> works as expected, with one problem: the cursor if at the end of the
> extent is drawn AFTER the extent end glyph. I am proposing (have
> already started the work) to alter the behaivior so that when an end
> (or start, for that matter) is closed, the cursor will be drawn
> inside the respective glyph. This way there is better feedback to
> the user as to where input is going.

YEEEEEEEEEEEEEEEEEEESSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS!!

Please do it.

Note that the code already works correctly when the glyph is at the
beginning of a closed extent.

For the people who wish to see exactly what's going on -- please run
the following code:

(let ((ext (make-extent (point-min) (point-max))))
  (set-extent-property ext 'start-closed t)
  (set-extent-property ext 'end-closed t)
  (set-extent-property ext 'detachable nil)  
  (set-extent-end-glyph ext (make-glyph '([xpm :data "\
/* XPM */
static char* oko6 = {
\"20 11 7 2\",
\"__ c None\"
\"_` c #7f7f7f\",
\"_a c #fefefe\",
\"_b c #7f0000\",
\"_c c #fefe00\",
\"_d c #fe0000\",
\"_e c #bfbfbf\",
\"___________`_`_`___b_b_b_b_________`____\", 
\"_________`_`_`___b_c_c_c_b_b____________\", 
\"_____`_`_`_e___b_b_c_c_c___b___b_______`\", 
\"___`_`_e_a___b_b_d___b___b___b___b______\", 
\"_`_`_e_a_e___b_b_d_b___b___b___b___b____\", 
\"_`_`_a_e_a___b_b_d___b___b___b___b___b__\", 
\"_`_`_e_a_e___b_b_d_b___b___b___b___b_b__\", 
\"___`_`_e_a___b_b_b_d_c___b___b___d_b____\", 
\"_____`_`_e_e___b_b_b_d_c___b_b_d_b______\", 
\"_`_____`_`_`_`___b_b_b_d_d_d_d_b________\", 
\"___`_____`_`_`_`___b_b_b_b_b_b__________\", 
} ;"]
                                          [string :data "[END]"]))))

Now try inserting at EOT.  Yucky!  Jareth patch would fix it, and I'm
ready to test it.

And no, it won't break existing code.  It will only change the cursor
placement.

-- 
Hrvoje Niksic <hniksic@srce.hr> | Student at FER Zagreb, Croatia
--------------------------------+--------------------------------
Oh lord won't you buy me a color TV...

