チェンジセット 1120
- コミット日時:
- 2008/08/27 18:18:10 (5 年前)
- ファイル:
凡例:
- 変更無し
- 追加
- 削除
- 更新
- コピー
- 移動
as3/gunyarapaint/trunk/gunyarapaint/src/gunyarapaint.as
r1118 r1120 1 private const DEBUG:Boolean = false;1 private const DEBUG:Boolean = true; 2 2 3 3 import flash.events.Event; … … 131 131 gpCanvas.rotation = 0; 132 132 133 // マウスボタンが上がったとき、canvasに教えてあげる134 this.addEventListener(MouseEvent.MOUSE_UP, gpCanvas.externalMouseUp);135 136 133 toolCanvas.x = (this.width - toolCanvas.width) / 2; 137 134 } as3/gunyarapaint/trunk/gunyarapaint/src/gunyarapaint/controls/GPCanvas.as
r1117 r1120 334 334 _pen.mouseOut(evt); 335 335 } 336 public function externalMouseUp(evt:MouseEvent):void {337 _pen.externalMouseUp(evt);338 }339 336 public function undo():void { 340 337 if (undoIndex == undoFirstIndex) { as3/gunyarapaint/trunk/gunyarapaint/src/gunyarapaint/entities/GPPen.as
r1117 r1120 9 9 import gunyarapaint.controls.GPCanvas; 10 10 import gunyarapaint.controls.PenDetailControl; 11 12 import mx.core.Application; 11 13 12 14 public class GPPen … … 145 147 146 148 public function mouseDown(evt:MouseEvent):void { 149 // 一応… 150 if (!_canvas.isInCanvas(evt)) { 151 return; 152 } 147 153 switch (mode) { 148 154 case PEN_MODE_HAND: … … 162 168 163 169 private var isMouseDownAndOut:Boolean = false; 170 private var lastX:Number, lastY:Number; 164 171 165 172 public function mouseMove(evt:MouseEvent):void { … … 168 175 case PEN_MODE_HAND: 169 176 if (_canvas.isInCanvas(evt)) { 170 if (isMouseDownAndOut) { 171 // マウス押しっぱなしで領域外に出て、また戻ってきた場合 177 if (_canvas.isMoveTo) { 178 _canvas.lineTo(evt.localX, evt.localY); 179 } else { 180 // マウス押しっぱなしで領域内にはいってきた場合 172 181 mouseDown(evt); 173 isMouseDownAndOut = false;174 } else {175 _canvas.lineTo(evt.localX, evt.localY);176 182 } 177 183 } else { 178 184 // TODO: 直線と枠との交点を座標とする。 185 return; 179 186 } 180 187 break; … … 185 192 break; 186 193 } 187 } 194 lastX = evt.localX; 195 lastY = evt.localY; 196 } 188 197 } 189 198 public function mouseUp(evt:MouseEvent):void { … … 200 209 public function mouseOut(evt:MouseEvent):void { 201 210 if (_canvas.isMoveTo) { 202 isMouseDownAndOut = true; 203 } 204 } 205 public function externalMouseUp(evt:MouseEvent):void { 206 if (isMouseDownAndOut) { 207 mouseUp(evt); // evt is passed but no use 208 isMouseDownAndOut = false; 209 } 211 mouseUp(evt); 212 } 210 213 } 211 214 }

