<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://mediawiki.gnustep.org/index.php?action=history&amp;feed=atom&amp;title=Talk%3ANSView</id>
	<title>Talk:NSView - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://mediawiki.gnustep.org/index.php?action=history&amp;feed=atom&amp;title=Talk%3ANSView"/>
	<link rel="alternate" type="text/html" href="https://mediawiki.gnustep.org/index.php?title=Talk:NSView&amp;action=history"/>
	<updated>2026-06-15T18:24:33Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.35.7</generator>
	<entry>
		<id>https://mediawiki.gnustep.org/index.php?title=Talk:NSView&amp;diff=2070&amp;oldid=prev</id>
		<title>Cbv: Suggested alternativ -mouseDown: implementation for dragging</title>
		<link rel="alternate" type="text/html" href="https://mediawiki.gnustep.org/index.php?title=Talk:NSView&amp;diff=2070&amp;oldid=prev"/>
		<updated>2005-09-01T11:27:44Z</updated>

		<summary type="html">&lt;p&gt;Suggested alternativ -mouseDown: implementation for dragging&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Why not use something like&lt;br /&gt;
&lt;br /&gt;
   - (void) mouseDown: (NSEvent *) theEvent&lt;br /&gt;
   {   &lt;br /&gt;
     BOOL isInside;&lt;br /&gt;
     unsigned int mask = NSLeftMouseUpMask | NSLeftMouseDraggedMask;&lt;br /&gt;
     &lt;br /&gt;
     if( nil == target ) return;&lt;br /&gt;
     &lt;br /&gt;
     while( [theEvent type] != NSLeftMouseUp )&lt;br /&gt;
     {&lt;br /&gt;
       theEvent = [[self window] nextEventMatchingMask: mask];&lt;br /&gt;
       isInside = [self mouse: [self convertPoint: [theEvent locationInWindow]&lt;br /&gt;
                                         fromView: nil]&lt;br /&gt;
                       inRect: [self bounds]];&lt;br /&gt;
       &lt;br /&gt;
       switch( [theEvent type] )&lt;br /&gt;
       {&lt;br /&gt;
         case NSLeftMouseDragged: // drag&lt;br /&gt;
           //&lt;br /&gt;
           // whatever needs to be done while dragging&lt;br /&gt;
           //&lt;br /&gt;
           break;&lt;br /&gt;
         &lt;br /&gt;
         case NSLeftMouseUp: // drop&lt;br /&gt;
           if( isInside )&lt;br /&gt;
           {&lt;br /&gt;
             //&lt;br /&gt;
             // whatever needs to be done when button is released&lt;br /&gt;
             //&lt;br /&gt;
           }&lt;br /&gt;
           break;&lt;br /&gt;
         &lt;br /&gt;
         default:&lt;br /&gt;
           break;&lt;br /&gt;
       } /*switch */&lt;br /&gt;
     } /* while */&lt;br /&gt;
   } /* -mouseDown: */&lt;br /&gt;
&lt;br /&gt;
Looks much cleaner and should be faster.&lt;/div&gt;</summary>
		<author><name>Cbv</name></author>
	</entry>
</feed>