チェンジセット 3589
- コミット日時:
- 2010/03/22 20:08:47 (3 年前)
- ファイル:
-
- as3/gunyarapaint/branches/gunyarapaint/compat/src/gunyarapaint.mxml (更新) (6 diffs)
- as3/gunyarapaint/branches/gunyarapaint/compat/src/org/libspark/gunyarapaint/ui/v1/Canvas.as (更新) (1 diff)
- as3/gunyarapaint/branches/gunyarapaint/compat/src/org/libspark/gunyarapaint/ui/v1/CanvasController.as (更新) (4 diffs)
- as3/gunyarapaint/branches/gunyarapaint/compat/src/org/libspark/gunyarapaint/ui/v1/DataController.mxml (更新) (1 diff)
- as3/gunyarapaint/branches/gunyarapaint/compat/src/org/libspark/gunyarapaint/ui/v1/FormController.mxml (更新) (3 diffs)
- as3/gunyarapaint/branches/gunyarapaint/compat/src/org/libspark/gunyarapaint/ui/v1/IController.as (追加)
- as3/gunyarapaint/branches/gunyarapaint/compat/src/org/libspark/gunyarapaint/ui/v1/LayerController.mxml (更新) (7 diffs)
- as3/gunyarapaint/branches/gunyarapaint/compat/src/org/libspark/gunyarapaint/ui/v1/PenController.mxml (更新) (6 diffs)
- as3/gunyarapaint/branches/gunyarapaint/compat/src/org/libspark/gunyarapaint/ui/v1/ToolController.mxml (更新) (5 diffs)
凡例:
- 変更無し
- 追加
- 削除
- 更新
- コピー
- 移動
as3/gunyarapaint/branches/gunyarapaint/compat/src/gunyarapaint.mxml
r3588 r3589 38 38 import org.libspark.gunyarapaint.framework.modules.LineModule; 39 39 import org.libspark.gunyarapaint.framework.modules.PixelModule; 40 import org.libspark.gunyarapaint.ui.v1.IController; 40 41 import org.libspark.gunyarapaint.ui.v1.MovableCanvasModule; 41 42 … … 45 46 private var m_module:ICanvasModule; 46 47 private var m_commit:uint; 48 private var m_windows:Vector.<IController>; 47 49 48 50 private var basex:uint = 0; … … 61 63 private const MIN_CANVAS_HEIGHT:uint = 16; 62 64 private const DEBUG:Boolean = true; 63 64 // ポップアップの初期位置65 private var initCanvasWindow:Rectangle;66 private var initPenDetailWindowPos:Point;67 private var initLayerWindowPos:Point;68 private var initToolController:Point;69 private var initFormController:Point;70 65 71 66 public const ALERT_TITLE:String = 'お絵カキコ'; … … 151 146 public function resetWindowsPosition():void 152 147 { 153 canvasController.rotate(0); 154 canvasController.transform.matrix = new Matrix(1, 0, 0, 1, initCanvasWindow.x, initCanvasWindow.y); 155 penController.move(initPenDetailWindowPos.x, initPenDetailWindowPos.y); 156 layerController.move(initLayerWindowPos.x, initLayerWindowPos.y); 157 toolController.move(initToolController.x, initToolController.y); 158 formController.move(initFormController.x, initFormController.y); 159 canvasController.width = initCanvasWindow.width; 160 canvasController.height = initCanvasWindow.height; 161 toolController.setRotate(0); 162 toolController.setZoom(1); 148 for (var i:String in m_windows) { 149 m_windows[i].resetWindow(); 150 } 163 151 } 164 152 … … 267 255 PopUpManager.addPopUp(toolController, this); 268 256 PopUpManager.addPopUp(formController, this); 269 initCanvasWindow = new Rectangle(canvasController.x, canvasController.y, canvasController.width, canvasController.height); 270 initPenDetailWindowPos = new Point(penController.x, penController.y); 271 initLayerWindowPos = new Point(layerController.x, layerController.y); 272 initToolController = new Point(toolController.x, toolController.y); 273 initFormController = new Point(formController.x, formController.y); 257 m_windows = new Vector.<IController>(); 258 m_windows.push( 259 canvasController, 260 penController, 261 layerController, 262 toolController, 263 formController 264 ); 274 265 275 266 if (parameters['postUrl'] && parameters['cookie'] && parameters['magic'] && parameters['redirectUrl']) { … … 499 490 <ui:CanvasController id="canvasController" x="146" y="223" width="379" height="410" layout="absolute" title="キャンバス" /> 500 491 <ui:LayerController x="533" y="223" layout="absolute" title="レイヤー" id="layerController" height="312" /> 501 <mx:Label id="versionLabel" text=" ver.2009090902" right="10" bottom="10" alpha="0.5"/>492 <mx:Label id="versionLabel" text="{Painter.PAINTER_VERSION_STRING}" right="10" bottom="10" alpha="0.5"/> 502 493 </mx:Application> as3/gunyarapaint/branches/gunyarapaint/compat/src/org/libspark/gunyarapaint/ui/v1/Canvas.as
r3578 r3589 86 86 var cv:Sprite = app.canvasView; 87 87 try { 88 // 例えば非表示あるいはロック状態のあるレイヤーに対して描写を行うと例外が送出されるので、 89 // 必ず try/catch で囲む必要がある 88 90 app.module.start(event.localX, event.localY); 89 91 cv.addEventListener(MouseEvent.MOUSE_MOVE, onMouseMove); as3/gunyarapaint/branches/gunyarapaint/compat/src/org/libspark/gunyarapaint/ui/v1/CanvasController.as
r3581 r3589 20 20 import org.libspark.gunyarapaint.utils.ComponentResizer; 21 21 22 public class CanvasController extends TitleWindow 22 public class CanvasController extends TitleWindow implements IController 23 23 { 24 24 public function CanvasController() … … 83 83 } 84 84 85 public function resetWindow():void 86 { 87 move(m_initRectangle.x, m_initRectangle.y); 88 width = m_initRectangle.width; 89 height = m_initRectangle.height; 90 rotate(0); 91 transform.matrix = new Matrix( 92 1, 0, 0, 1, m_initRectangle.x, m_initRectangle.y 93 ); 94 } 95 85 96 public function get canvasScrollPosition():Point 86 97 { … … 141 152 m_contentContainer.addChild(m_hScrollBar); 142 153 m_contentContainer.addChild(m_vScrollBar); 154 m_initRectangle = new Rectangle(x, y, width, height); 143 155 ComponentResizer.addResize(this, new Point(100, 100)); 144 156 … … 246 258 private var m_hScrollBar:HScrollBar; // 横スクロールバー 247 259 private var m_vScrollBar:VScrollBar; // 縦スクロールバー 248 private var m_canvasX:Number, m_canvasY:Number; // キャンバスのスクロール位置 260 private var m_initRectangle:Rectangle; 261 private var m_canvasX:Number; 262 private var m_canvasY:Number; // キャンバスのスクロール位置 249 263 private var m_canvasScale:Number; // キャンバスの倍率 250 264 private var m_preDegree:int; // 前の回転角度 as3/gunyarapaint/branches/gunyarapaint/compat/src/org/libspark/gunyarapaint/ui/v1/DataController.mxml
r3580 r3589 113 113 } 114 114 115 // FileReferenceの参照を確実に持つ必要があるため、クラス属性として定義している 116 // そうしないとダイアログを開いた後 Event.COMPLETEのイベントが呼ばれなくなる 115 117 private var m_file:FileReference; 116 118 ]]> as3/gunyarapaint/branches/gunyarapaint/compat/src/org/libspark/gunyarapaint/ui/v1/FormController.mxml
r3588 r3589 1 1 <?xml version="1.0" encoding="utf-8"?> 2 <mx:TitleWindow xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" width="486" height="166"> 2 <mx:TitleWindow xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" 3 width="486" height="166" creationComplete="onCreationComplete()" 4 implements="org.libspark.gunyarapaint.ui.v1.IController"> 3 5 <mx:Script> 4 6 <![CDATA[ … … 9 11 10 12 private var baseImg:BitmapData; 13 14 public function resetWindow():void 15 { 16 move(m_initPosition.x, m_initPosition.y); 17 } 18 19 private function onCreationComplete():void 20 { 21 m_initPosition = new Point(x, y); 22 } 11 23 12 24 private function postOekakiButtonHandler(evt:Event):void … … 102 114 enabled = true; 103 115 } 116 117 private var m_initPosition:Point; 104 118 ]]> 105 119 </mx:Script> as3/gunyarapaint/branches/gunyarapaint/compat/src/org/libspark/gunyarapaint/ui/v1/LayerController.mxml
r3578 r3589 3 3 width="144" height="312" 4 4 creationComplete="onCreateComplete()" 5 xmlns:ui="org.libspark.gunyarapaint.ui.v1.*"6 >5 implements="org.libspark.gunyarapaint.ui.v1.IController" 6 xmlns:ui="org.libspark.gunyarapaint.ui.v1.*"> 7 7 <mx:Script> 8 8 <![CDATA[ … … 16 16 import org.libspark.gunyarapaint.framework.LayerBitmap; 17 17 import org.libspark.gunyarapaint.framework.LayerBitmapCollection; 18 import org.libspark.gunyarapaint.framework.ui.IApplication; 18 19 import org.libspark.gunyarapaint.utils.ComponentResizer; 19 import org.libspark.gunyarapaint.framework.ui.IApplication;20 20 21 21 private static const NAME:String = "レイヤーツール"; … … 39 39 } 40 40 41 public function resetWindow():void 42 { 43 move(m_initPosition.x, m_initPosition.y); 44 } 45 41 46 private function onCreateComplete():void 42 47 { … … 58 63 layerDataGrid.addEventListener('describeChange', itemCheckChangeHandler); 59 64 ComponentResizer.addResize(this, new Point(144, 230)); 65 m_initPosition = new Point(x, y); 60 66 } 61 67 … … 83 89 { 84 90 try { 91 // RemoveLayerErrorを捉える必要がある 85 92 IApplication(Application.application).module.removeLayer(); 86 93 update(); … … 93 100 { 94 101 try { 102 // MergeLayersErrorを捉える必要がある 95 103 IApplication(Application.application).module.mergeLayers(); 96 104 update(); … … 130 138 } 131 139 } 140 141 private var m_initPosition:Point; 132 142 ]]> 133 143 </mx:Script> as3/gunyarapaint/branches/gunyarapaint/compat/src/org/libspark/gunyarapaint/ui/v1/PenController.mxml
r3578 r3589 1 1 <?xml version="1.0" encoding="utf-8"?> 2 <mx:TitleWindow xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" width="128" height="450" xmlns:ns1="org.libspark.gunyarapaint.controls.*" initialize="onInitialize()"> 2 <mx:TitleWindow xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" width="128" height="450" 3 xmlns:ns1="org.libspark.gunyarapaint.controls.*" 4 implements="org.libspark.gunyarapaint.ui.v1.IController" 5 initialize="onInitialize()" 6 creationComplete="onCreationComplete()"> 3 7 <mx:Script> 4 8 <![CDATA[ … … 51 55 } 52 56 57 // 全てのボタンを非選択状態にしてコンボボックス内にあるペンを有効にする 58 // 基本的にボタンにあるペンが優先度が高い 53 59 public function cancel():void 54 60 { … … 59 65 var app:IApplication = IApplication(Application.application); 60 66 app.setModule(String(penModeComboBox.value)); 67 } 68 69 public function resetWindow():void 70 { 71 move(m_initPosition.x, m_initPosition.y); 61 72 } 62 73 … … 153 164 var application:IApplication = IApplication(Application.application); 154 165 blendModeComboBox.dataProvider = application.supportedBlendModes; 155 //onClickPalette(1); 156 // 初期値と設定値が一緒なのでイベントが飛んでこない、明示的に呼んであげる 166 // 初回時プレビュー画面は真っ白なのでここで描写を行う必要がある 157 167 var pen:Pen = application.pen; 158 168 drawPreview(pen.thickness, pen.color, pen.alpha); … … 160 170 pen.addEventListener(PenEvent.COLOR, onChangeColor); 161 171 pen.addEventListener(PenEvent.THICKNESS, onChangeThickness); 172 } 173 174 private function onCreationComplete():void 175 { 176 m_initPosition = new Point(x, y); 162 177 } 163 178 … … 297 312 IApplication(Application.application).module.blendMode = String(blendModeComboBox.value); 298 313 } 314 315 private var m_initPosition:Point; 299 316 ]]> 300 317 </mx:Script> as3/gunyarapaint/branches/gunyarapaint/compat/src/org/libspark/gunyarapaint/ui/v1/ToolController.mxml
r3588 r3589 1 1 <?xml version="1.0" encoding="utf-8"?> 2 <mx:TitleWindow xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" width="300" height="205" initialize="onInitialize()" removedFromStage="onRemove()"> 2 <mx:TitleWindow xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" width="300" height="205" 3 implements="org.libspark.gunyarapaint.ui.v1.IController" 4 initialize="onInitialize()" removedFromStage="onRemove()" 5 creationComplete="onCreationComplete()"> 3 6 <mx:Script> 4 7 <![CDATA[ … … 17 20 { 18 21 canvasRotate.value = value; 19 canvasRotateValue.text = String(-canvasRotate.value); // 20090909-haku2 ins キャンバス回転角度をテキストボックスに反映22 canvasRotateValue.text = String(-canvasRotate.value); 20 23 Application.application.canvasController.rotate(canvasRotate.value); 21 24 } … … 29 32 canvasZoom.value = value; 30 33 Application.application.canvasController.zoom(value); 31 // 拡大率をテキストボックスに反映32 34 canvasZoomValue.text = String(Math.round(n) / 100); 35 } 36 37 public function resetWindow():void 38 { 39 move(m_initPosition.x, m_initPosition.y); 40 setRotate(0); 41 setZoom(1); 33 42 } 34 43 35 44 private function onInitialize():void 36 45 { 37 var undo:UndoStack = Application.application.undoStack;46 var undo:UndoStack = IApplication(Application.application).undoStack; 38 47 undo.addEventListener(UndoEvent.UNDO, onChangeUndo); 39 48 undo.addEventListener(UndoEvent.REDO, onChangeUndo); … … 41 50 } 42 51 52 private function onCreationComplete():void 53 { 54 m_initPosition = new Point(x, y); 55 } 56 43 57 private function onRemove():void 44 58 { 45 var undo:UndoStack = Application.application.undoStack;59 var undo:UndoStack = IApplication(Application.application).undoStack; 46 60 undo.removeEventListener(UndoEvent.UNDO, onChangeUndo); 47 61 undo.removeEventListener(UndoEvent.REDO, onChangeUndo); … … 131 145 // w.password = gpCanvas.logger.password; 132 146 } 147 148 private var m_initPosition:Point; 133 149 ]]> 134 150 </mx:Script>

