チェンジセット 3941: as3/gunyarapaint

差分発生行の前後
無視リスト:
コミット日時:
2010/05/30 22:53:00 (3 年前)
コミッタ:
hkrn
ログメッセージ:

including layer index into undo problem should be fixed

ファイル:

凡例:

変更無し
追加
削除
更新
コピー
移動
  • as3/gunyarapaint/branches/gunyarapaint/compat/src/org/libspark/gunyarapaint/ui/v1/ToolController.mxml

    r3875 r3941  
    191191        </mx:Canvas> 
    192192        <mx:Canvas width="100%" height="100%" label="互換性設定"> 
    193             <mx:CheckBox id="enableUndoLayerCheckBox" label="レイヤー作成時アンドゥに入れる" fontSize="9" height="18" change="onChangeEnableUndoLayer(event)" x="10" y="10"/> 
     193            <mx:CheckBox id="enableUndoLayerCheckBox" label="レイヤー選択をアンドゥに含めない" fontSize="9" height="18" change="onChangeEnableUndoLayer(event)" x="10" y="10"/> 
    194194            <mx:CheckBox id="enablePixelInfo" label="現在の座標から不透明度と色の情報を表示する" fontSize="9" height="18" change="onChangeEnablePixelInfo(event)" x="10" y="36" selected="true" /> 
    195195            <!-- 
  • as3/gunyarapaint/branches/gunyarapaint/framework/src/org/libspark/gunyarapaint/framework/Painter.as

    r3938 r3941  
    3939         
    4040        /** 
    41          * レイヤー作成をアンドゥに含めるかどうかのオプション 
     41         * レイヤー選択をアンドゥに含めるかどうかのオプション 
    4242         * 
    4343         */ 
  • as3/gunyarapaint/branches/gunyarapaint/framework/src/org/libspark/gunyarapaint/framework/commands/layer/SetLayerIndexCommand.as

    r3936 r3941  
    3737        { 
    3838            painter.layers.currentIndex = m_index; 
    39                         painter.pushUndoIfNeed(); 
     39                        if (!painter.enableUndoLayer && painter.version >= 22) 
     40                                painter.pushUndo(); 
    4041        } 
    4142         
  • as3/gunyarapaint/branches/gunyarapaint/test/src/org/libspark/gunyarapaint/framework/commands/layer/SetLayerIndexCommandTest.as

    r3937 r3941  
    2828            command.execute(painter); 
    2929            Assert.assertEquals(args.index, painter.layers.currentIndex); 
    30             Assert.assertTrue(painter.didPushUndoIfNeed); 
     30            Assert.assertTrue(painter.didPushUndo); 
    3131        } 
     32                 
     33                [Test(description="互換設定が入っている場合アンドゥに含めないこと")] 
     34                public function shouldNotIncludeUndoIfCompatibilityEnabled():void 
     35                { 
     36                        var bytes:ByteArray = new ByteArray(); 
     37                        var command:ICommand = new SetLayerIndexCommand(); 
     38                        var painter:FakePainter = new FakePainter(); 
     39                        var args:Object = { "index": 42 }; 
     40                        command.write(bytes, args); 
     41                        bytes.position = 0; 
     42                        bytes.readByte(); 
     43                        painter.enableUndoLayer = true; 
     44                        command.read(bytes); 
     45                        command.execute(painter); 
     46                        Assert.assertFalse(painter.didPushUndo); 
     47                } 
    3248    } 
    3349}