From: Richard K. <ric...@us...> - 2005-05-26 20:35:22
|
Update of /cvsroot/actionstep/actionstep/src/org/actionstep In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20352 Modified Files: NSView.as Log Message: add auto resize code and fix error in converting points if movieclips do not exist Index: NSView.as =================================================================== RCS file: /cvsroot/actionstep/actionstep/src/org/actionstep/NSView.as,v retrieving revision 1.13 retrieving revision 1.14 diff -C2 -d -r1.13 -r1.14 *** NSView.as 25 May 2005 22:06:41 -0000 1.13 --- NSView.as 26 May 2005 20:35:13 -0000 1.14 *************** *** 481,489 **** public function setFrame(newFrame:NSRect):Void { ! m_frame = newFrame.clone(); ! m_bounds.size = m_frame.size.clone(); ! updateFrameMovieClipSize(); ! if(m_postsFrameChangedNotifications) { ! m_notificationCenter.postNotificationWithNameObject(NSViewFrameDidChangeNotification, this); } } --- 481,499 ---- public function setFrame(newFrame:NSRect):Void { ! var changedOrigin:Boolean = !m_frame.origin.equalTo(newFrame.origin); ! var changedSize:Boolean = !m_frame.size.equalTo(newFrame.size); ! if (changedSize || changedOrigin) { ! m_frame = newFrame.clone(); ! updateFrameMovieClipSize(); ! if (changedSize) { ! if (m_bounds == null) { ! m_bounds = new NSRect(0,0,m_frame.size.width, m_frame.size.height); ! } else { ! m_bounds.size = m_frame.size.clone(); ! } ! } ! if(m_postsFrameChangedNotifications) { ! m_notificationCenter.postNotificationWithNameObject(NSViewFrameDidChangeNotification, this); ! } } } *************** *** 616,625 **** */ public function convertPointFromView(aPoint:NSPoint, aView:NSView):NSPoint { - var from:MovieClip = (aView == null) ? _root : aView.mcBounds(); - var pt:NSPoint = aPoint.clone(); ! from.localToGlobal(pt); ! mcBounds().globalToLocal(pt); ! return pt; } --- 626,636 ---- */ public function convertPointFromView(aPoint:NSPoint, aView:NSView):NSPoint { var pt:NSPoint = aPoint.clone(); ! if (m_mcBounds != null) { // Simple case ! var from:MovieClip = (aView == null) ? _root : aView.mcBounds(); ! from.localToGlobal(pt); ! mcBounds().globalToLocal(pt); ! } else { // Difficult case ! } return pt; } *************** *** 633,642 **** */ public function convertPointToView(aPoint:NSPoint, aView:NSView):NSPoint { - var to:MovieClip = (aView == null) ? _root : aView.mcBounds(); - var pt:NSPoint = aPoint.clone(); ! mcBounds().localToGlobal(pt); ! to.globalToLocal(pt); ! return pt; } --- 644,654 ---- */ public function convertPointToView(aPoint:NSPoint, aView:NSView):NSPoint { var pt:NSPoint = aPoint.clone(); ! if (m_mcBounds != null) { // Simple case ! var to:MovieClip = (aView == null) ? _root : aView.mcBounds(); ! mcBounds().localToGlobal(pt); ! to.globalToLocal(pt); ! } else { // Difficult case ! } return pt; } *************** *** 815,819 **** public function resizeWithOldSuperviewSize(oldBoundsSize:NSSize) { ! //! Resize according to the autoresizingMask setting } --- 827,883 ---- public function resizeWithOldSuperviewSize(oldBoundsSize:NSSize) { ! if (m_autoresizingMask == NSView.NotSizable) { ! return ! } ! var options:Number = 0; ! var superViewFrameSize:NSSize = m_superview == null ? NSSize.ZeroSize : m_superview.frame().size; ! var newFrame:NSRect = m_frame.clone(); ! var changedOrigin = false; ! var changedSize = false; ! if (m_autoresizingMask & NSView.WidthSizable) { ! options++; ! } ! if (m_autoresizingMask & NSView.MinXMargin) { ! options++; ! } ! if (m_autoresizingMask & NSView.MaxXMargin) { ! options++; ! } ! if (options > 0) { ! var change:Number = superViewFrameSize.width - oldBoundsSize.width; ! var changePerOption:Number = change/options; ! if (m_autoresizingMask & NSView.WidthSizable) { ! newFrame.size.width += changePerOption; ! changedSize = true; ! } ! if (m_autoresizingMask & NSView.MinXMargin) { ! newFrame.origin.x += changePerOption; ! changedOrigin = true; ! } ! } ! ! options = 0; ! if (m_autoresizingMask & NSView.HeightSizable) { ! options++; ! } ! if (m_autoresizingMask & NSView.MinYMargin) { ! options++; ! } ! if (m_autoresizingMask & NSView.MaxYMargin) { ! options++; ! } ! if (options > 0) { ! var change:Number = superViewFrameSize.height - oldBoundsSize.height; ! var changePerOption:Number = change/options; ! if (m_autoresizingMask & NSView.HeightSizable) { ! newFrame.size.height += changePerOption; ! changedSize = true; ! } ! if (m_autoresizingMask & NSView.MinYMargin) { ! newFrame.origin.y += changePerOption; ! changedOrigin = true; ! } ! } ! setFrame(newFrame); } |