Fireworks 選択中のものをロック+現在のレイヤーの中にあるものすべてをロック解除

2009/02/7

こんにちは。きんくまです。
私はNスペが好きでよく見ています。この間やってた「沸騰都市」シリーズは面白いですね。
前回のヨハネスブルクもよかったんですが、今回のサンパウロの回もなかなかよかったです。
「他の国がお金を右から左に流して儲けているうちに、俺達はしっかりと物を作っていたんだ」って感じの会話がありました。
南米のしかもブラジル人がいうので、「本当かよ!」とも思いたくなりますが、日本人の私的には結構うれしいセリフでした。ああいう南米の人もいるんですね。
残念なのは、前半シリーズを見逃していること。再放送やらないかな。

さて、最近コマンド作ってばっかですね。なんですが、また作ったんで紹介。
この手のTIPS的なコマンドって、プログラムを少しやった人ならすぐ作れると思うんですが、デザイナさんはなかなか難しいところがあると思うので、簡単なやつでものっけていこうかと。

それで、デザイン作業でイラレからFireworksに乗り換えたときに結構面倒くさかったのが、ロック+アンロックの作業。
メニューで用意されてないんで、いつもレイヤーパネルをポチポチしてました。
でも時間が結構かかっちゃいますよね。で、コマンドを作りました。

■選択中のものをすべてロック

fw.getDocumentDOM().lockSelection();

■現在のレイヤーの中のものすべてをアンロック(ロック解除)

var dom = fw.getDocumentDOM();
var currentLayer = dom.layers[dom.currentLayerNum];
for(var i = 0; i < currentLayer.elems.length; i++){
  dom.setElementLocked(-1, -1, i, false, false, false);
}

あとは、コマンド登録して、ショートカットわりあてれば、イラレ感覚でスムーズに作業ができるかと。

※09/09/15追記
コメントいただきまして。Fireworks8だとアンロックでエラーが出るようです。

■【Fireworks8版】現在のレイヤーの中のものすべてをアンロック(ロック解除)

var dom = fw.getDocumentDOM();
var currentLayer = dom.layers[dom.currentLayerNum];
var len = 0;
var i;
var eles = currentLayer.frames[0].elements;
for(i in eles){
  if(eles[i]){
    len += 1;
  }
}
for(var i = 0; i < len; i++){
  dom.setElementLocked(-1, -1, i, false, false, false);
}
LINEで送る
Pocket

自作iPhoneアプリ 好評発売中!
フォルメモ - シンプルなフォルダつきメモ帳
ジッピー電卓 - 消費税や割引もサクサク計算!

ページトップへ戻る