doraTeX / TeX2img

TeX2img for macOS
https://tex2img.tech
Other
26 stars 2 forks source link

背景色および透過のUIの整理 #62

Closed doraTeX closed 8 years ago

doraTeX commented 8 years ago

Windows版の UI を参考に「共通設定」の方に移動する。

doraTeX commented 8 years ago

Windows版にならって,このように整理してみました。

2015-11-20 9 44 49

Windowsと異なり,Macではカラーピッカーを出すボタンを無効化できないようです。 そこで,Windows版とは異なり,次のような挙動が直観的かと思い採用してあります。

ベクター画像や PNG など透過可能な画像形式の場合

JPEG など透過不可能な画像形式の場合

「透過(可能な場合)」がチェックされているときのJPEG出力に際し,白色で塗るか「背景色」で指定された色で塗るかが,Windows版とは挙動が異なっています。 Macでは「背景色」ボタンを無効化できない以上,この挙動が自然かと思います。

なお,Snow Leopard版の方は背景色変更UIを付けていない(色選択ボタンというUIコンポーネントがないため)ので,「透過」のチェックボックスは従来のままとします。

aminophen commented 8 years ago

「透過(可能な場合)」がチェックされているときのJPEG出力に際し,白色で塗るか「背景色」で指定された色で塗るかが,Windows版とは挙動が異なっています。Macでは「背景色」ボタンを無効化できない以上,この挙動が自然かと思います。

将来的に CUI 版を整備する場合に困らなければよいなあというのが感想です。ただ、Mac 版の「背景色」ボタンを無効にできないという状況を加味すると、妥当な判断の気もしますね。難しいです。

abenori commented 8 years ago

このあたりを見るとボタンの無効化自身はできそうな気がするのですが,そんなことないんでしょうか?

http://stackoverflow.com/questions/3726201/disable-enable-nsbutton-if-nstextfield-is-empty-or-not

doraTeX commented 8 years ago

色ボタンに使っているのは NSButton ではなく NSColorWell というものでして,これ自体には親クラスから受け継いだ enabled というプロパティがあるのですが,それを無効にしてもなぜか押せてしまうようです。 OS X の場合,カラー選択パレットはモーダルではないという点,またフォントやカラー選択パレットは1アプリあたり1個のものをアプリ全体で共有する(「このボタンに帰属するカラーパレット」という概念がない)という仕様である以上,「カラーパレットを出せなくする」という挙動は設計上相容れないのでしょう。(そのボタンでカラーパレットを出せなくしても他の方法でカラーパレットを出せてしまう。)

abenori commented 8 years ago

すみません,失礼しました.「NSColorWell disable」でググってみてもすぐには出てこないですね.

カラーパレット共有,やはり不思議だ……