チェンジセット 1775
- コミット日時:
- 2008/11/01 21:18:06 (2 ヶ月前)
- ファイル:
-
- as3/gunyarapaint/trunk/gunyarapaint/src/org/libspark/gunyarapaint/controls/PenDetailControlScript.as (更新) (3 diffs)
- as3/gunyarapaint/trunk/gunyarapaint/src/org/libspark/gunyarapaint/entities/GPLogger.as (更新) (4 diffs)
- as3/gunyarapaint/trunk/gunyarapaint/src/org/libspark/gunyarapaint/entities/GPPen.as (更新) (2 diffs)
凡例:
- 変更無し
- 追加
- 削除
- 更新
- コピー
- 移動
as3/gunyarapaint/trunk/gunyarapaint/src/org/libspark/gunyarapaint/controls/PenDetailControlScript.as
r1740 r1775 42 42 /* {label: 'スポイト', data: GPPen.PEN_MODE_DROPPER }, */ 43 43 {label: '直線', data: GPPen.PEN_MODE_LINE }, 44 /* {label: '四角', data: GPPen.PEN_MODE_RECT }, 45 {label: '円', data: GPPen.PEN_MODE_ELLIPSE }, 46 {label: '角丸四角', data: GPPen.PEN_MODE_ROUND_RECT }, */ 44 {label: '円', data: GPPen.PEN_MODE_CIRCLE }, 45 /* 46 {label: '四角', data: GPPen.PEN_MODE_RECT }, 47 {label: '楕円', data: GPPen.PEN_MODE_ELLIPSE }, 48 {label: '角丸四角', data: GPPen.PEN_MODE_ROUND_RECT }, 49 */ 47 50 {label: 'ペイント', data: GPPen.PEN_MODE_FLOOD_FILL } 48 51 ]; … … 119 122 public function resetPenTool():void { 120 123 if (dropperButton.selected) { 121 set Tool(GPPen.PEN_MODE_DROPPER, null,true);124 setModeDropper(true); 122 125 } else if (handtoolButton.selected) { 123 set Tool(GPPen.PEN_MODE_HANDTOOL, null,true);126 setModeHandtool(true); 124 127 } else if (dotButton.selected) { 125 set Tool(GPPen.PEN_MODE_PIXEL, null,true);128 setModePixel(true); 126 129 } else { 127 130 _logger.eventSetPenMode(uint(penModeComboBox.value)); … … 130 133 131 134 // TODO: こいつらをスッキリまとめるべきでーす。 132 private function dropperButtonHandler(evt:Event):void {135 private function setModeDropper(selected:Boolean):void { 133 136 handtoolButton.selected = false; 134 137 eraserButton.selected = false; 135 138 dotButton.selected = false; 136 setTool(GPPen.PEN_MODE_DROPPER, null, evt.target.selected); 137 } 138 139 private function handtoolButtonHandler(evt:Event):void { 139 setTool(GPPen.PEN_MODE_DROPPER, null, selected); 140 } 141 142 private function dropperButtonHandler(evt:Event):void { 143 setModeDropper(evt.target.selected); 144 } 145 146 private function setModeHandtool(selected:Boolean):void { 140 147 dropperButton.selected = false; 141 148 eraserButton.selected = false; 142 149 dotButton.selected = false; 143 setTool(GPPen.PEN_MODE_HANDTOOL, null, evt.target.selected); 144 } 145 146 private function eraserButtonHandler(evt:Event):void { 150 setTool(GPPen.PEN_MODE_HANDTOOL, null, selected); 151 } 152 153 private function handtoolButtonHandler(evt:Event):void { 154 setModeHandtool(evt.target.selected); 155 } 156 157 private function setModeEraser(selected:Boolean):void { 147 158 handtoolButton.selected = false; 148 159 dropperButton.selected = false; 149 160 dotButton.selected = false; 150 setTool(GPPen.PEN_MODE_ERASER, BlendMode.ERASE, evt.target.selected); 151 } 152 153 private function dotButtonHandler(evt:Event):void { 161 setTool(GPPen.PEN_MODE_ERASER, BlendMode.ERASE, selected); 162 } 163 164 private function eraserButtonHandler(evt:Event):void { 165 setModeEraser(evt.target.selected); 166 } 167 168 private function setModePixel(selected:Boolean):void { 154 169 handtoolButton.selected = false; 155 170 eraserButton.selected = false; 156 171 dropperButton.selected = false; 157 172 // TODO: pen太さ 158 setTool(GPPen.PEN_MODE_PIXEL, null, evt.target.selected); 173 setTool(GPPen.PEN_MODE_PIXEL, null, selected); 174 } 175 176 private function dotButtonHandler(evt:Event):void { 177 setModePixel(evt.target.selected); 159 178 } 160 179 as3/gunyarapaint/trunk/gunyarapaint/src/org/libspark/gunyarapaint/entities/GPLogger.as
r1771 r1775 1121 1121 case GPPen.PEN_MODE_ELLIPSE: 1122 1122 case GPPen.PEN_MODE_ROUND_RECT: 1123 case GPPen.PEN_MODE_CIRCLE: 1123 1124 if (!_layerArray.isTargetLayerVisible) { 1124 1125 Alert.show('不可視の状態では描画できません!', '描画ツール'); … … 1201 1202 if (_drawing) { 1202 1203 _pen.previewLineTo(_fromPoint.x, _fromPoint.y, evt.localX, evt.localY); 1204 } 1205 break; 1206 case GPPen.PEN_MODE_RECT: 1207 if (_drawing) { 1208 _pen.previewRect(_fromPoint.x, _fromPoint.y, evt.localX, evt.localY); 1209 } 1210 break; 1211 case GPPen.PEN_MODE_ELLIPSE: 1212 if (_drawing) { 1213 _pen.previewEllipse(_fromPoint.x, _fromPoint.y, evt.localX, evt.localY); 1214 } 1215 break; 1216 case GPPen.PEN_MODE_ROUND_RECT: 1217 /* 1218 if (_drawing) { 1219 _pen.previewRoundRect(_fromPoint.x, _fromPoint.y, evt.localX, evt.localY); 1220 } 1221 */ 1222 break; 1223 case GPPen.PEN_MODE_CIRCLE: 1224 if (_drawing) { 1225 var dx:Number, dy:Number; 1226 dx = evt.localX - _fromPoint.x; 1227 dy = evt.localY - _fromPoint.y; 1228 _pen.previewDrawCircle(_fromPoint.x, _fromPoint.y, Math.sqrt(dx * dx + dy * dy)); 1203 1229 } 1204 1230 break; … … 1241 1267 } 1242 1268 break; 1269 case GPPen.PEN_MODE_RECT: 1270 if (_drawing) { 1271 invokeRemoveDrawLayer(); 1272 if (!comparePoint(_fromPoint.x, _fromPoint.y, evt.localX, evt.localY)) { 1273 // 始点と終点が違う場合にのみ… 1274 } 1275 _drawing = false; 1276 } 1277 break; 1278 case GPPen.PEN_MODE_ELLIPSE: 1279 if (_drawing) { 1280 invokeRemoveDrawLayer(); 1281 if (!comparePoint(_fromPoint.x, _fromPoint.y, evt.localX, evt.localY)) { 1282 // 始点と終点が違う場合にのみ… 1283 } 1284 _drawing = false; 1285 } 1286 break; 1287 case GPPen.PEN_MODE_ROUND_RECT: 1288 if (_drawing) { 1289 invokeRemoveDrawLayer(); 1290 if (!comparePoint(_fromPoint.x, _fromPoint.y, evt.localX, evt.localY)) { 1291 // 始点と終点が違う場合にのみ… 1292 } 1293 _drawing = false; 1294 } 1295 break; 1296 case GPPen.PEN_MODE_CIRCLE: 1297 if (_drawing) { 1298 invokeRemoveDrawLayer(); 1299 if (!comparePoint(_fromPoint.x, _fromPoint.y, evt.localX, evt.localY)) { 1300 var dx:Number, dy:Number; 1301 dx = evt.localX - _fromPoint.x; 1302 dy = evt.localY - _fromPoint.y; 1303 // 始点と終点が違う場合にのみ円を描く 1304 this.eventMoveTo(_fromPoint.x, _fromPoint.y); 1305 this.eventDrawCircle(Math.sqrt(dx * dx + dy * dy)); 1306 this.eventDrawShapeOnBitmap(); 1307 } 1308 _drawing = false; 1309 } 1310 break; 1243 1311 case GPPen.PEN_MODE_DROPPER: 1244 1312 this.eventLineStyleColor(_layerArray.getColor(evt.localX, evt.localY)); … … 1274 1342 break; 1275 1343 case GPPen.PEN_MODE_LINE: 1344 case GPPen.PEN_MODE_RECT: 1345 case GPPen.PEN_MODE_ELLIPSE: 1346 case GPPen.PEN_MODE_ROUND_RECT: 1347 case GPPen.PEN_MODE_CIRCLE: 1276 1348 if (_drawing) { 1277 1349 _drawing = false; as3/gunyarapaint/trunk/gunyarapaint/src/org/libspark/gunyarapaint/entities/GPPen.as
r1547 r1775 21 21 public static const PEN_MODE_ERASER:uint = 9; 22 22 public static const PEN_MODE_PIXEL:uint = 10; 23 public static const PEN_MODE_CIRCLE:uint = 11; 23 24 24 25 private var _mode:uint; … … 181 182 _drawShape.graphics.lineTo(zz(toX), zz(toY)); 182 183 } 184 185 public function previewRect(fromX:Number, fromY:Number, toX:Number, toY:Number):void { 186 clearDrawShape(); 187 setLineStyle(); 188 _drawShape.graphics.drawRect(fromX, fromY, Math.abs(zz(toX) - fromX), Math.abs(zz(toY) - fromY)); 189 } 190 191 public function previewEllipse(fromX:Number, fromY:Number, toX:Number, toY:Number):void { 192 clearDrawShape(); 193 setLineStyle(); 194 _drawShape.graphics.drawEllipse(fromX, fromY, Math.abs(zz(toX) - fromX), Math.abs(zz(toY) - fromY)); 195 } 196 197 /* 198 public function previewRoundRect(fromX:Number, fromY:Number, toX:Number, toY:Number):void { 199 clearDrawShape(); 200 setLineStyle(); 201 _drawShape.graphics.drawRoundRect(fromX, fromY, Math.abs(zz(toX) - fromX), Math.abs(zz(toY) - fromY)); 202 } 203 */ 204 205 public function previewDrawCircle(fromX:Number, fromY:Number, radius:Number):void { 206 clearDrawShape(); 207 setLineStyle(); 208 _drawShape.graphics.drawCircle(fromX, fromY, radius); 209 } 183 210 184 211 /*********************************************************************/
