iCornユーザーズマニュアル   Ver.0.4.0
■ソフトウェア概要

 Ruby/Qte開発支援用アイコンエディタです。Rubyソース内のXPM画像を直接読み書きすることができます。 主な特徴は下記の通りですが、肝心のアイコンの編集機能自体は貧弱です・・。
なお、本ソフトウェアはRuby/Qteと言う環境上で動作します。 動作にはRuby/Qteがインストールされている必要があります。 また、動作確認はSL-C3100で行っています。

画面構成と基本操作

編集中の画面の構成は左図の通りです。左上が「アイコンビュー」で、 現在編集中のアイコンを表示、その下が「アイコン一覧」で、 現在選択中のディレクトリ内に存在するアイコンの一覧を表示、 右側が「編集領域」で、編集中のアイコンを拡大表示しています。 その下の格子の領域が「パレット領域」です。 この領域の一番左端に現在の描画色が表示され、 右側の18個の枠は色選択のためのパレットとして利用できます。

「アイコン一覧」には選択しているディレクトリ内に存在するアイコンを表示します。 複数のディレクトリの内容を同時に表示する事はできません。 「アイコン一覧」に表示されているアイコンにタッチする事で、 編集対象のアイコンを選択する事ができます。

アイコンの編集は「編集領域」の格子内をタッチする事により行います。 格子内のタッチで1ドットを描画する事ができます。 描画した内容はすぐに「アイコンビュー」に反映されます。 アイコンのサイズが大きくて「編集領域」に収まりきらない場合には、 「編集領域」にスクロールバーが表示されますので、 表示されていない場所への移動はスクロールバーにより行う事ができます。

編集したアイコンの保存ですが、保存操作は必要ありません(と言うか操作がありません)。 基本的には画面に表示されている画像がそのまま保存されていると言う感覚を 実現する事を目指しています。参考ですが、現状は下記のタイミングで画像が自動保存されます。
起動時、左図の様な画面になる可能性があります(大抵の方はこうなると思われます)。 ディレクトリ内にアイコンが一つもない場合は左の様な画面になりますので、 ディレクトリを変更するか、新規アイコンの作成を行っていただければ、 先ほどの画面の様な感じになります。 なお、起動時の参照ディレクトリは「~/Documents/」 (SL-C3100では、「/home/zaurus/Documents/」)としています。


最後に、現状はiCornの利用シーンとして、起動から終了までは他の機能を 使わない(アプリの切り替えを行わない)と言うことを前提としております。 「アイコン一覧」や「編集領域」に表示されているアイコンのファイルに関する操作を しない限りは何もないと思いますが、何かが起こっても現状はそういうもの としてご理解ください。徐々に対応していくつもりです。 一応、何かが起こった際には連絡いただければ幸いです。

■操作
ツールバーのボタン一覧

編集ディレクトリの変更。
新規アイコンの作成。
編集内容のキャンセル。
描画色の選択。
画像の平行移動。
アイコンサイズの変更。


ディレクトリ変更

ツールバーのにタッチする事で、 編集対象のディレクトリを変更するためのディレクトリ選択ダイアログが表示されます(左図)。 デフォルトでは、現在選択されているディレクトリパスが表示されています。 ディレクトリを選択していくと、右へ右へと選択したディレクトリの内容が表示されていきます。 最終的に移動先のディレクトリを選択し、「OK」にタッチする事でディレクトリの変更ができます。 「×」にタッチした場合には、ディレクトリは変更されません。


新規アイコンの作成

ツールバーのにタッチする事で、 新規アイコンのパラメータ設定のダイアログが表示されます(左図)。 フォーマットは「PNG」もしくは「XPM」が選択できます。 「幅」「高さ」「ファイル名」を入力し、「OK」にタッチする事で、 白で塗りつぶされた新規アイコンが作成されます。 なお、作成と同時にファイルへ保存をします。 「×」にタッチをした場合は新規作成中止となります。

現状、幅や高さに特に制限を設けていません。 一応、1×1〜64×64程度までのサイズなら大丈夫だと思いますが、 こちらで想定していない様なサイズを入力した場合の動作は予測不能です。

また、存在するファイルと同じファイル名が指定された場合、 自動的にファイル名を変更して保存します。 なお、Rubyソース内に直接、新規アイコンを埋め込む事はできません。

編集アイコンの選択

画面左下の「アイコン一覧」領域(左図)に表示されているアイコンにタッチする事で、 編集対象のアイコンを切り替える事ができます。

「アイコン一覧」領域には3列表示で選択されているディレクトリ内に存在するアイコンが表示されます。 表示が一画面で収まらない場合は右側にスクロールバーが出ますので、 スクロールさせる事により、下の方のアイコンも選択できる様になります。 表示するアイコンはディレクトリ内を勝手に探索しますが、 ディレクトリ内のファイルが画像なのかどうかは拡張子で判断しています。 Rubyソース内のXPM画像は拡張子が「.rb」のファイル内から探索します。

描画色の選択

ツールバーのにタッチする事で、 色選択ダイアログが表示されます(左図)。 左側の上から順に現在選択されている色の見本、透過度を選択するスライダーと 透過度の選択値、そして8色パレットが表示されています。 右側には各色の色成分の明るさを選択するためのスライダーバーと その下に各色成分の選択値が表示されています。 そして、ちょっと見えにくいですが、一番下の部分に選択履歴を表示する選択履歴パレットが表示されています。 各パレットにタッチ、もしくはスライダーを左右に移動させることで色を選択した後、 「OK」にタッチをすると描画色決定、「×」にタッチをすると色選択キャンセルです。

各色成分に対する設定値ですが、Qtでは各成分に対して0〜255の値が設定できるのに対し、 ザウルスでは、赤と青は0〜31、緑は0〜63となっているため、 各色成分の値はザウルスで取り得る値をQtで取り得る値に拡張(均等配分)する形を取っています。 従いまして、値によっては選択できないものもあると思いますのでご注意願います。

8色パレット及び、選択履歴パレットについては、そこにタッチすることによりそのまま表示されている 色を選択することができます。選択履歴パレットは「OK」で決定した色の履歴を表示します。 左が一番最新の色で、異なる色が選択された場合は右へ移動して行きます。 一番右に来てしまったら、次の色が選択された時点で履歴パレットからは削除されます。

透過度については0と255のみをサポート対象とします。その他の値(半透過色)についても選択はできますが、 下記の制限がつきます。 前者はXPM形式の仕様のため、XPM形式には対応不可です。 後者は画像の中に含まれる半透過色の抽出の仕方がわかっていないためです。 もしかしたら、そもそも抽出は不可なのかもしれません。 半透過色については、おまけ程度で考えていただけるとありがたいです。

パレットの利用



「編集領域」の下にあるこの領域を「パレット領域」と呼びます。 左端の一つだけ独立している格子は現在の描画色を示しています。 右側の18個の連続した格子は「パレット」として、 描画色の退避と選択の為に利用することができます。

「パレット」への現在の描画色の退避は、退避させたい位置の格子を1秒間タッチすることで行います。 また、描画色の選択は選択したい色の格子を短時間(1秒未満)タッチすることで行います。 色が退避されている格子をタッチ(1秒未満)するとその格子の色が現在の描画色になり、 色が退避されていない格子をタッチした際は現在の描画色が透明色になります。

画像の平行移動

ツールバーのにタッチする事で、 画像平行移動ダイアログが表示されます(左図)。 「右移動幅」「下移動幅」の欄にそれぞれ移動させたいドット数を入力してください。 それぞれ負の値を入れることにより逆方向への移動を指定することができます。 「OK」をタッチすると指定されたドット数分画像を平行移動させます。 「×」をタッチすると画像平行移動のキャンセルです。 なお、平行移動の結果はみ出た領域は逆側の先頭に移動します。 (例えば、右に2ドットはみ出た分は左の2ドットに移動します。)


アイコンサイズの変更

ツールバーのにタッチする事で、 サイズ変更ダイアログが表示されます(左図)。 「位置」は「中央」「左上」「右上」「左下」「右下」を選択できます。 変更後のサイズを「幅」「高さ」の欄に入力してください。 「OK」をタッチすると、指定のサイズにアイコンのサイズを変更します。 「×」をタッチするとサイズ変更のキャンセルです。

変更後のサイズの方が大きい場合、「位置」は元のアイコン画像の変更後の位置を示します。 変更後のサイズの方が小さい場合、「位置」は元のアイコン画像内の切り取り位置を示します。 変更後のサイズが大きい場合、増えた領域は「白」で塗りつぶされます。


編集のキャンセル

ツールバーのにタッチする事で、 編集内容をキャンセルし、「アイコン一覧」に表示されている状態まで戻す事ができます。

■その他
未対応項目

 現在、下記の内容については対応しておりません。 そのうち対応したいとは思っています。
Rubyソース内のXPMデータ読み書きについて

 Rubyソース中のXPMデータの読み込みは、ソース中「= [」で始まり、 「]」で終わる領域の「"」で囲まれたデータを読み込む事で行っています。 また、それがXPMデータかどうかは、最初の文字列が数字4つでできているかどうかのみで判断しています。 なお、コメント内に「"」がある様な場合にはたぶん読み込みに失敗すると思います(未検証)。 この辺り、いろいろとアバウトなところがあるので、今後はなるべく精度は上げていきたいと思っています。 (と思っていましたが、何か問題が出た時に対応する様にします。[2006/10/15 追記])

また、書き込みについては、なるべくインデントおよびコメントをそのまま残す様に 考慮はしていますが、ずれが生じる可能性もありますのでご了承ください。 XPMデータの作成は、一度QtのAPIでXPM画像として保存し、 保存先のファイルからXPMデータ文字列を抽出する事で行っています。

■今後について

 バージョン1.0.0にするまでに、少なくとも下記の機能を実現したいと考えています。 が考えているだけで、実装されないかもしれない旨ご了承願います。

現在の描画色の表示 対応完
レジューム起動 検討中
高速起動対応 検討中
レイアウトの固定化 対応完
ビュースタイルへの対応 検討中


■更新履歴

2008/05/06 Ver.0.4.0 下記の追加・修正・変更を行った。
  • 色選択ダイアログの刷新。
  • 編集領域のスクロール速度の改善。
  • 編集領域のスクロールバーのスクロールボタンの移動範囲を修正。
  • 色選択ダイアログ刷新に伴い、ツールバーから透明色選択ボタンを削除。
  • アイコン一覧領域で64x64ドット以上のアイコンを考慮(ここ以外はまだ考慮せず)。
下記はプログラム内部の変更です。単なるメモです。
  • 色の扱いを32ビットカラー値に一本化。
  • レイアウトをちょっと修正。
2006/11/17 Ver.0.3.1 ディレクトリ選択ダイアログについて、下記の追加・修正を行った。
  • 上部に選択しているディレクトリのフルパスを表示する機能を追加。
  • ファイル数の多いディレクトリを選択すると動作が重くなるのを修正。
  • ファイル数の多いディレクトリの中身が全て表示されないのを修正。
2006/10/15 Ver.0.3.0 下記の追加・修正・変更を行った。
  • アイコンのサイズ変更機能を追加。
  • アイコンの画像の平行移動機能を追加。
  • ディレクトリ選択ダイアログをGUIに変更。
  • ツールボタンの位置をツールバーの右側に変更。
  • 透明色と白が見分けにくかったので背景パターンの色を変更。
  • アイコンが無い状態で画面をタップした時に落ちる現象を修正。
  • アイコンの変更時、パレット領域がつぶれてしまう時がある現象を修正。
  • 64ドットより大きい幅、高さのアイコンを新規作成した場合、作成されたアイコンの一部が黒くなる現象を修正。
  • 透明色を選択している時、落ちることがある現象を修正。
  • アイコンの変更後、ディレクトリの変更で落ちる現象を修正。
  • 編集アイコンの変更時、スクロールバーが正しくされない時がある現象を修正。
下記は動作上の変更はありません。単なるメモです。
  • アイコンの扱いをQPixmapとQImage併用からQImageに一本化。
2006/06/11 Ver.0.2.0 現在の描画色の表示と色選択パレットの追加。 また、透明色が選択されている状態で他の色に変更した後で、 再度透明色の選択を行うと透明色にならない不具合を修正しました。
2006/05/28 Ver.0.1.2 下記の修正・変更を行った。
  • 編集アイコン変更時、「編集領域」のスクロールバーが必要なのにも関わらず表示されない場合があるバグを修正。
  • 同様に編集アイコン変更時、「編集領域」にスクロールバーのゴミの様な物が残る場合がある現象を解消。 この対応で、「レイアウトの固定化」は一応対応済みとする。
2005/12/01 Ver.0.1.1 ディレクトリ変更時、変更先のアイコンに切り替わらない場合があるバグを修正。
2005/11/30 Ver.0.1.0 初版リリース


■ご意見、ご感想

 ご意見、ご感想等は、 こちら へのコメントでお願いします。

(2008/05/06)
ぐうたラボ...