2010年11月21日日曜日

【Mac】iGeek Drive Genius 3 には気をつけろ!

メインに使っている iMac 27inch の速度が遅くなって,ハードディスクがゴリゴリ音を出し始めたので,デフラグをしようと思い立った.

Macはバックグラウンドでデフラグしてくれるとの事だが,5メガバイト以下のファイルのみであるとの話もある.全く必要ないという断言する人もいれば,デフラグした結果,軽くなったという人もいる.なんであれ,ハードディスクであることには変わりないので,何らかのケアは必要であると考えられる.実際には OnyX など使いながら,パーミッションのエラーぐらいはケアしていたのだが.

ちょっと小金が入ったので,デフラグしてみようと iGeek のDriveGenius3を購入した.(リンクは貼らない.貼ってやらない.)デフラグだけでなく,種々のハードディスクドライブのメンテが出来るソフトである.メーカー曰く,「アップルも公認した」とのこと.

(褒める所から書きたいので)最初に使った感想は
・なんとなくブートが早くなった気がする(ポジトロフィー効果だとおもう)
・ゴリゴリ音はしなく成った(これは確か)

実際に600ギガもデータがあるので,デフラグには5時間係ったが,職場に放置して帰り,朝帰ってリブートしてみてちょっと感動はした.


以下が問題である.


なんと,この iGeek の Drive Genius 3 は 現行の iMac, Macbook Air, Macbook Pro のブートドライブのデフラグができないのである.iMac 27inch は私のPCでテスト済み.Macbook Airも同様(11 inchモデルもあるやつの13inch版).Macbook Proは職場にあるやつで試したが,2010年11月21日現在の現行モデルと,1つ前のモデル両方でブートドライブのデフラグができない.(ちなみに 最後の黒Macbook でもダメでした)

私の回りのPCはシングルパーティションのPCばかりなので,殆どデフラグができないのである.

メールで問い合わせをした所,以下のような解答を頂いた.


***

御連絡ありがとうございます。
お調べしたところ、お使いの機種は最新版のHDで、Apple社がまだブート対応していなかったもののようです。(アップル社側の技術的な理由によるものです)


現在、Apple社から、最新のHDに対応するBootable DVD開発キットがまだわたしどもに配布されていません。でき次第、ご案内しますので、お待ちいただけますでしょうか。


お待ちいただき申し訳ありません。
よろしくお願い致します。


また、もし外付けディスクなどからシステムの立ち上げが可能な環境をおもちでしたら、そちらの外付けディスクにドライブジーニアス3をインストールして立ち上げていただきますと、内蔵ディスクへのメンテナンス作業をご実施いただけます。


サポート


****

HDってなに?
外付けディスクってなに?

もう一度問い合わせした結果,(たぶんメールを書いた人が変わって,)親切丁寧な対応をしていただいた.

****


1) 起動システムを作成するUSBを接続し、Mac OS XのインストールDVDをドライブに装填し再起動をします。再起動時には、"C"キーを押したままにして下さい
2)Mac OS Xの言語選択スクリーンが表示されたら、日本語を選択し、そのまま続きをクリックして続行
3)Mac OS Xのインストールスクリーンが表示されます
4)Mac OS Xのインストール先に、外付けハードディスクを選択(選択したオプションは、ウィンドウ下部に表示)
注意:Mac OS Xのインストール先を選択する際には、注意して下さい。外付けハードディスクを選択し、内蔵ディスクなどを選択しないで下さい。
5)インストール作業が完了したら、"option + alt"キーを押しながら、再起動
6)起動先の選択画面では、今インストールをおこなった外付けディスクが表示されている事を確認して、新しい起動ディスクとして選択
7)外付けディスクからの起動後、ドライブジーニアス3をインストール。これで内蔵ディスクに対してドライブジーニアス3の全ての機能を利用できます。


***

以上のような方法を習ったので,実際にやってみて,無事デフラグができた.

しかしながら,1通目のメールにはさすがに・・・
アップル社と書いたり,Apple社と書いたり支離滅裂なところがある.しかも,内部専門用語をそのまま書く.(昔,ファミレスに行って,「ナイフが来てない」と言ったら,「シルバー来てませんでしたか?」といわれたのを思い出した)しかも,Apple社側の技術的な問題であり,しょうがないと来た.

http://www.igeekinc.com/products/drivegenius3.html

結局貼ってしまったが,このサイトを目をさらにして見て欲しい.上記のような,現行のMacではブートドライブのデフラグができないと記述がFAQには

以上で問題が解決しない場合、support@igeekinc.comにご連絡ください。その際コンピューターを購入した日付(正確でなくて結構です)を教えていただければと思います。過去に最新の機種でそれまでのBoot CD/DVDが起動できなくなるという問題(Apple側に起因)が起こっています。


とだけ書いてある.これを読むと,「過去に」と書いてあるため,現在はブート出来ると読み取れる.


DVDブートの場合
どのOSでも対応

とまで書いてある.

現在、Apple社から、最新のHDに対応するBootable DVD開発キットがまだわたしどもに配布されていません。でき次第、ご案内しますので、お待ちいただけますでしょうか。


というのが iGeek から私への返答である.

私のPCが未来から来たのでなければ,現行のPCは2010年11月21日現在,対応していないはずである.

改善は求めない.
ただ,買おうと考えている人の参考になれば良いと思う.


ちなみに,DVDの書き込みエラーかと重い10枚くらい焼きましたw

2010年11月10日水曜日

【ODE】【Eclipse】【Mac】ODE を使用したシミュレータの開発

もうタグ多すぎ・・・

EclipseでのC++の設定と,ODEのインストールが済んだら,プログラムの作成をする.

Eclipse のファイルエクスプローラ上で New Project を選択し,新しいプログラムを作成する.この際,ファイルエクスプローラを 右クリック > New > Project を選択することにより,プロジェクトが作成できる.プロジェクトは下部のリストから C / C++ > C++ Project を選択し,Next をクリック.次のダイアログに移動する.
2ページ目のダイアログでは,上部の Project Name: のところにプロジェクト名を入力する.適当な名前を入力するとよい.その後,下のリストから下の方にある Makefile Project > Hello World C++ Project を選択し,終了する.これにより,空のプログラムとメイクファイルを使用したプロジェクトができる.

ODE のインストールしたディレクトリが / ディレクトリにおいてあるものとし,以下のメイクファイルを用いることにより,ビルドができるようになる.依存関係のファイルを保存するためにプロジェクトのルートディレクトリに deps というフォルダを作っておく.

なお,1行目の Project_Name には設定したプロジェクト名(メインのプログラムファイルになっているはず)を入力.2行目の Added_ProgramN には,プロジェクトにプログラムのファイルを追加した場合は,入力..o をつける.

10 / 11 / 2010 追記
実行時に
Launch failed. Binary not found.
とダイアログが表示されて,実行できない場合は実行の設定をする.

1.プロジェクトのフォルダを右クリックして,Proparties を選択.
2.左の一覧から,Run / Debug Settings を選び,右の New を選びダイアログを表示させる.
3.C / C++ Application を選んだ上で,C / C++ Application: の欄に Browse.. からワークスペース内の実行ファイルを選択する.

これでRunをクリックするだけで実行されるはず.

*** 以下,Makefile 例 ***

PROG = Project_Name
OBJ = Added_Program1.o Added_Program2.o ...

CC = g++-4.2
SRC = /ode/ode/src
_PRG_INCLUDE = ./include
PRG_INCLUDE = ../include
ODE_INCLUDE = /ode/include
#DRAWSTUFF = "\"/ode/drawstuff/textures\"" 
DRAWSTUFF = /ode/drawstuff/textures
LIBTOOL = /ode/libtool
LIBDRAWSTUFF = /ode/drawstuff/src/libdrawstuff.la
LIBODE = /ode/ode/src/libode.la
LIBDRAWSTUFFa = /ode/drawstuff/src/.libs/libdrawstuff.a
LIBODEa = /ode/ode/src/.libs/libode.a

DTP = -DDRAWSTUFF_TEXTURE_PATH=$(DRAWSTUFF)
FRAMEWORKS = -framework OpenGL -framework GLUT

.SUFFIXES: .cpp .o

all: $(OBJ)
$(CC) -DHAVE_CONFIG_H -I. -I$(SRC) -I$(_PRG_INCLUDE) -I$(PRG_INCLUDE) -I$(ODE_INCLUDE) $(DPT) -DdTRIMESH_ENABLED -DdDOUBLE  -g -O2 -MT $(PROG).o -MD -MP -MF deps/$(PROG).Tpo -c -o $(PROG).o $(PROG).cpp
mv -f deps/$(PROG).Tpo deps/$(PROG).Po
/bin/sh $(LIBTOOL) --tag=CXX --mode=link g++ -g -O2 -o $(PROG) $(PROG).o $(OBJ) $(LIBDRAWSTUFF) $(LIBODE) $(FRAMEWORKS)  -lm  -lpthread
$(CC) -g -O2 -o $(PROG) $(PROG).o $(OBJ) $(FRAMEWORKS) -Wl,-bind_at_load $(LIBDRAWSTUFFa) $(LIBODEa) -lm -lpthread

.cpp.o:
$(CC) -DHAVE_CONFIG_H -I. -I$(SRC) -I$(_PRG_INCLUDE) -I$(PRG_INCLUDE) -I$(ODE_INCLUDE) $(DPT) -DdTRIMESH_ENABLED -DdDOUBLE  -g -O2 -MD -MP -MF deps/$*.Tpo -c -o $@ $<
mv -f deps/$*.Tpo deps/$*.Po

clean:
rm *~ *.o *.tmp $(PROG)

【ODE】【Mac】Mac (Snow) LeopardへのODEのインストール

ODE: Open Dynamics Engineのインストール方法を述べる.

1.ODEのファイルをSourceForgeからダウンロードしてくる.原稿の最新版のパッケージはode-0.11.1

2.しかるべき場所で展開し,内部に移動する.
tar xvf ode-0.11.1.tar
cd ode-0.11.1

3.(Snow Leopardのみ)ODEはSnow Leopardに対応していないため,以下のパッチを当てる.まずは,ode0.11.1-OSX10.6.patchをダウンロードし,展開した ode-0.11.1 の中に移動する.ode-0.11.1の中で以下を実行.
patch -p1 < ode0.11.1-OSX10.6.patch
これにてSnow Leopardでもエラーが出ずにインストールできる.Leopardの場合はやらない.その以前はしらない.

4.以下のコマンドを順次打って,インストールする.
./configure --enable-double-precision
make
sudo make install

5.場所を決めて,ODEのパッケージ全体を移動する.今回は / ディレクトリに置くことにして,以下を実行する.
cd ..
sudo mv ode-0.11.1 /ode

これにてインストール完了.

2010年11月9日火曜日

【Eclipse】C/C++開発環境の構築

Eclipseでなんでもかんでもやってしまおうという試みの中,ODEを用いたシミュレーションもEclipseで作成しようと考えました.
まずは,C/C++開発環境の構築から.

Eclipseをインストールしたのち,Help > Install New Software を選択し,Eclipseの拡張プラグインを入れる.インストールするパッケージは以下の通り.
C/C++ Development Tools
Mylyn Bridge: C/C++ Development
PTP RDT XL C/C++ Compiler Support
C/C++ DSF GDB Debugger Integration
C/C++ Memory View Enhancement
この際,
Work with: -- All Available Site --
を選択し,下の検索バーに C++ と入力すると見つけるのが大変楽である.
同時にインストールすると,依存関係で怒られることがあるので,その場合は面倒でも1個ずつインストールするのが安全である.

すべて入れると,C/C++のビルドができるようになります.
デフォルトでビルドできる他,Makefileを使用してもビルドができます.

2010年10月28日木曜日

【Eclipse】【TeX】EclipseにTeX環境設定

インストール


まずは,Eclipseを導入.
Eclipseのサイトから,Java版でもなんでもいいからダウンロードし,インストールする.


Help > Install New Software に行き,以下のサイトを導入する.


サイト名:TeXlipse Update Site
ロケーション:http://texlipse.sourceforge.net


導入後,TeXlipseというパッケージが表示されるのでインストール.


以上




設定


以下,Macの設定.MacPortsにて,ptexのパッケージをインストールしてあるものとする.
Eclipse > 環境設定 に入り,以下を設定していく.


General > Contents Type
右側の Contents Types: 以下の Text  > LaTeX File を選択し,下部に表示される Default encoding: に utf-8 と入力し,update をクリックする.
utf-8を使わない場合は,sjis, euc-jpなり設定し,以下のutf-8の部分もそれらに置換して設定する.


Texlipse > Builder Settings
右側の Latex program を選択し,Editをクリック.表示されるダイアログに
Program file:  /opt/local/bin/platex-utf8
Arguments:  %input
と入力し,OKをクリック.
同様に Bibtex program を選択し,Editをクリック.

Program file:  /opt/local/bin/jbibtex
Arguments:  --kanji=utf-8 %input
Dvipdf progmraを選択し,Edit.
Program file:  /opt/local/bin/dvipdfmx
Arguments:  %input
と設定する.

Texlipse > Viewer Setting
右側の itexmac を選択し,editをクリック.表示されるダイアログに


Viewer name:  itexmac
Viewer command:  /usr/bin/open
Viewer arguments:  %file
Viewer input file format:  pdf
と設定する.




使用方法


Project Explorer 内に新しいプロジェクトを開き,Texlipseプロジェクトを作成する.
この際,表示されるダイアログにプロジェクト名を入力し,
Output Format:  pdf
Build commands:  latex+dvipdf
とする.


表示されるtexファイルを作成していき,セーブすると自動的にビルドする.エラーが無い状態で command+4 または latex > Preview Document を行うと,プレビューにより表示される.




細かくは続報していく予定.

2010年9月16日木曜日

【emacs】文字コード/文字化け

emacsにおいて,各種機能に用いられる文字コードは画面左下に記載されている.左下に

-uuu



-uuS

等と書いてある部分が文字コードを表記している.日本語で使用する主な文字コードは次のように表記される.

u: utf-8
S: shift-jis
E: euc-jp

文字化けが起きている場合,設定されている文字コードと異なる文字コードでファイルを開いたと考えられる.自分のMac内でそのような現象が起きないようにするため,筆者は -uuu で統一するようにしている.

ここで,3つある表記は次の意味を持つ.

-uuu
-123

と各文字に番号を振った場合,それらは以下の意味を持つ.

1: keyboard-cording-system
2: terminal-cording-system
3: buffer-file-cording-system

文字コードを変更する場合はそれぞれの機能を指定して,以下のようにコマンドを打てば良い.

M-x set-keyboard-cording-system
M-x set-terminal-cording-system
M-x set-buffer-file-cording-system

なお,M-xはデフォルトだとエスケープキー+xに割り振られている.

##########################


文字化けが発生している場合,文字コードを変更しても文字化けを直すことは出来ない.文字化けした文字のまま文字コードを変換してしまうため,症状が悪化し,もとの文字に戻せなくなることがある.

文字化けを直す場合は,文字コードを変換するのではなく,文字コードを変換せずに,別な文字コードで開く.文字化けしない文字コードで開くことが出来た後に,デフォルトで使用している文字コードに変換すればよい.

別な文字コードでファイルを開く場合は以下のコマンドを使用する.

他のファイルを開く場合
C-x RET c 文字コード RET C-x C-f

開いてるファイルを開きなおす場合
C-x RET c 文字コード RET C-x C-v RET

C-xはコントロールキー+xであり,RETはエンターキー(リターン)を表す.

2010年9月14日火曜日

【LifeHack】本水没時の対応

先日,風呂に本を落とした.比較的しっかり落とした.ここまでやったのは司馬遼太郎の妖怪以来,読書人生2度目である.

本が水没してブヨブヨになったときの対処法は


1.絞らずに,冷凍庫の中に立てて置く

これにより,基本的に対応可能である(完全に元に戻ることは無い.諸行無常である.)
この際,絞らないことが重要である.お湯に落ちた場合,本を止めている糊が溶け出しているため,外力により本のページがずれたり,取れたりしてしまう.本側面から圧縮力を書けた場合でも,内部応力としてせん断方向に力がかかっている.これにより,本の形状が崩壊する可能性がある.
一方で,水没時に水中から上げた時の水圧や水の抵抗により,同様にページのズレが発生する場合がある.
これに対応するためには

2.冷凍後,レンジで30秒加熱する

冷凍の結果,本がパリパリになっていることが確認出来る.
このときに,上記の理由より,本のページがずれたり,本のページが剥離している場合がある.加えて,水没時の本の吸水量が多い場合はページ同士が固着している事がある.
この場合は,ページのズレや剥離を直そうとせず,加えて絶対にページの固着を外そうとせずに,レンジに入れ,30秒間加熱する.これにより,糊が溶け出し,ページの剥離を直すことが出来る.加えて,ページの固着が解決する.

3.1に戻る.

レンジ加熱後は必ず冷凍庫に戻し,しばし待つ.


これは冷凍庫の温度が水の融点より低いのがポイントである.液体は常に蒸発と凝縮を並列的に行っている.この際,大気が乾燥している時,言い換えると湿度が低い場合は蒸発量が増加する.冷凍庫内の温度が水の融点より低いため,大気中の水分は凝縮,凝固し,庫内表面の霜となる.すなわち,大気中に放散された水分は液体ではなく,固体で存在するようになるため,冷凍庫内の湿度は極めて低くなる.これにより,本表面の水分は大気中に蒸発していく.
また,水分が凝結する際に毛細管現象により本表面ににじみだし,凝結する.(霜柱の原理と同様.) これにより,本の紙面に染みこんだ水が外にでる.
これにより,冷凍庫内の本が乾燥していく.

以上により乾燥しなかった場合は,電子レンジで加熱する.レンジはマイクロ波により水分子を陽動し,ブラウン運動を誘発し,内部から発熱させる.すなわち,レンジは物質内の水分の温度を上げる装置である.究極に乾燥しているものはレンジに入れても温度が上がらない.
紙面は水を多量に含んだ樹脂を整形し,乾燥させることにより製作する.すなわち,レンジで加熱しても,食品などのように温度が上昇することがない.一方で,水没した際に含んだ水分はレンジ加熱により温度があがる.これにより,蒸発量が増え,水分が外部に放出される.また,ページ同士を接着している糊は水分を含むため,レンジ加熱により温度が上昇する.本を製作する際に使用する糊は高温で溶け出す特徴がある(ホットボンドのようなもの).これにより糊が再び紙面にしみこみ,ページ同士を再接着する.

以上が原理である.

ページがずれてしまった場合は,乾燥後,カッター等で切断するしかない.無理に戻しても形状の崩壊を招くだけである.

2010年9月9日木曜日

【Mac】【Android】Android開発環境の構築

Mac で Android アプリを開発するときは,Android SDK + Eclipse が定石のようである.


Eclipse より xcode のほうが使いやすいから,そっちでやりたいのだが・・・


流れとしては,SDKのインストール→Eclipseのインストール→SDKとEclipseの連携の設定→Eclipseの設定→AVD(Android Virtual Deviceかな?)の設定となる.


まずはSDKのインストール


インストールなどに関しては,Android SDK | Android Developers のダウンロードリンク下部にある Quick Start の通りすればよい.
Quick Startには,Eclipse に関しても記述があるのでその通り実行すればインストールから設定まで完了する.


具体的には


1.同じページからandroid-sdk_r06-mac_86.zip をダウンロードする.


2.次に JDK (Jave Developers Kit) をインストールする.versionは 5 または 6 が必要である.Macの場合,初めから入っているのでバージョンの確認をする.Application/Utility/Java Preferencesを実行し,アップレットプラグインが J2SE 5.0 または Jave SE 6.0 がアクティブに成っている場合はインストール不要.必要な場合は Java SE Downloads のページから入れる.


3.Eclipse を Eclipse Downloads からダウンロードし,インストールする.この際,間違わずに Eclipse IDE for Java Developers を選択する.


4.ダウンロードし,解凍した android-sdk-mac_86 を適当な場所におく.今回は /opt/ 以下に置くようにした.(MacPortsのディレクトリを間借りする形で)


5.android-sdk-mac_86/tools にパスを通す.今回は /opt 以下に置いたので,自分の~ディレクトリの .bash_profile 内に以下を書き加える. .bash_profile が無い場合は作成する.

PATH="$PATH":/opt/android-sdk-mac_86/tools
なお,4.で置いたディレクトリにパスを通すため,別な場所に置いた場合/リネームした場合は,その通りに上記パスを変更すればよい.

6.解凍した Eclipse を適当な場所に移動する.今回は Application/ 以下に置いた.

7.Application/eclipse/Eclipse を実行する.ワークスペースの場所を聞かれるので,適宜各個対応されたい.

8.ADT plugin for Eclipse をインストールする.メニューのHelp内にある Install New Software の Work with: のTextFieldに https://dl-ssl.google.com/android/eclipse/ と記入する.少々待つと,中央部にDeveloper Toolsと表示されるので,チェックボックスにチェックをいれ,Nextをクリックし,インストール.途中色々聞かれるのでちゃんと読むこと.英語でもちゃんと読むように.Eclipse 再起動後

9.Eclipse 環境設定内の Android の設定を行う.左側のAndroidを選択する.右側にパスを入力する TextField があるので,Android SDK をおいたディレクトリにパスを通す.このとき,前のように tools にパスを通すのではなく,Android SDK にパスを通すようにする.今回は/opt以下においたので,次のように書く.
/opt/android-sdk-mac_86

これで基本的な開発環境は完成.AVDの設定等は後ほど.

2010年9月5日日曜日

【Processing】基本構造

Processing は基本的に以下の2つの関数をベースにして動作する.
void setup();
void draw();

setup() は起動時に1度だけ実行される関数であり,主に変数や描画エリアの初期化に使用される.一方,draw() は内部処理により発生するループ毎に実行される関数である.draw() 内に NoLoop() を書くとループを行わず,draw() は1度だけ読み込まれる.

setup(), draw() 関数を宣言しなくてもProcessingは動作する.ただし,何も読み込まない何もしないプログラムが完成するだけであるが.

**** ソース例 ****
void setup(){
   size(window_size_x, window_size_y) //ウインドウサイズの設定
}

void draw(){
   background(0); //背景を黒に塗りつぶし.白は255

   hogehogeDrawing(hogehoge); //外部描画関数などを呼び出したり,
   line( hogehoge ); //直接描画内容を書いたりする.
}

【Processing】配列について

配列はポインタを作成した後に,動的メモリ配置で作成しなくてはいけない.

ポインタ宣言は以下の通りである.
type_name value_name[];

動的メモリ配置は以下の通りである.
new type_ name[num];

ここで
type_name:変数の型.int, float
value_name:変数の名前
num:配列の次元
である.

具体的な使い方として,例えば float 型の 2次元配列を作成する場合は以下のようにする.
float hoge[] = new float[2];
int 型の 2×2次元配列は以下のようにする.
int hoge[][] = new int[2][3];

使うときはCと同様に数字で指定すれば配列の値が出てくる.
0から始まるので注意.

ソース例

void draw(){
   float hoge[][] =  new float[2][2];
   int i, j;
   for(i = 0;i < 2;i ++){
      for(j = 0;j < 2;j ++){
          hoge[i][j] = (float)(i * j);
         println(hoge[i][j]);
      }
   }

【Android】自動生成 R.java の更新について

gen [Generated Jave Files] ディレクトリ下に自動で生成される R.java は自動で更新されるが,この自動更新が起きない場合がある.

R.java 内には res/layout/main.xml で作成した GUI の情報が入っている.
この main.xml 内でエラーがある場合は自動更新されない.

R.java が更新されない場合は main.xml のバグを確認する.

【Android】不明エラー

エラー領域に
Unparsed aapt error(s)! Check the console for output.
というエラーが出たときは,右クリックから消去でOK

もう一回発生したら,原因等調べる.

<追記>
.xml編集画面において RUN するとこのエラーが発生する模様.

2010年9月4日土曜日

【Android】main.out.xml

layoutディレクトリ内に main.xml の他に main.out.xml が出来たときには速やかに消す.
デバッガが出力するファイルらしい.あるとランできない.


<追記>
.xml編集画面において RUN するとこのファイルが生成される模様.

2010年8月20日金曜日

【COCOA】NSOpenPanel クラス

概要
COCOAプログラムでファイルを選択するパネルを表示するのに使う.
NSSavePanelの継承.SnowLeopard以降ではNSSavePanelの使用を推奨しているようです.




タスク
パネルを作成
+ openPanel


パネルの設定
- allowMultipleSelection
- setAllowsMultipleSelection:
- canChooseFiles
- setCanChooseFiles:
- canChooseDirectories
- setCanChooseDirectories:
- resolvesAliases
- setResolvesAliases:


パネルの実行

– beginForDirectory:file:types:modelessDelegate:didEndSelector:contextInfo:
– beginSheetForDirectory:file:types:modalForWindow:modalDelegate:didEndSelector:contextInfo:
– runModalForDirectory:file:types:
– runModalForTypes:




クラス・メソッド


+ (NSOpenPanel*) openPanel
パネルを開き,初期化されたNSOpenPanel型のオブジェクトを返す.


- (BOOL) allowMultipleSelection
開いたパネルのプロパティが,複数ファイルの選択を許可しているか否か BOOL型の変数で返す.


- (void)setAllowsMultipleSelection:(BOOL)flag
パネルに複数ファイルの選択の設定をする.
YESを渡した場合は許可,NOを渡すと禁止する.



- (BOOL) canChooseFiles
開いたパネルのプロパティが,ファイルの選択を許可しているか否か BOOL型の変数で返す.

- (void) setCanChooseFiles:(BOOL)flag
パネルにファイルの選択の設定をする.
YESを渡した場合は許可,NOを渡すと禁止する.


- (BOOL) canChooseDirectories
開いたパネルのプロパティが,ディレクトリの選択を許可しているか否か BOOL型の変数で返す.


- (void) setCanChooseDirectories:(BOOL) flag
パネルにディレクトリの選択の設定をする.
YESを渡した場合は許可,NOを渡すと禁止する.

- (BOOL) resolvesAliases
開いたパネルのプロパティが,エリアスの選択を許可しているか否か BOOL型の変数で返す.


- (void) setResolvesAliases:(BOOL) flag
パネルにエリアスの選択の設定をする.
YESを渡した場合は許可,NOを渡すと禁止する.

- (void) beginForDirectory: (NSString *) absoluteDirectoryPath file: (NSString *) filename types: (NSArray *) fileTypes modelessDelegate: (id) modelessDelegate didEndSelector: (SEL) didEndSelector contextInfo: (void *) contextInfo
パネルを表示する
absoluteDirectoryPath一番初めに表示するディレクトリの絶対パス.nilを指定すると前回操作したディレクトリが表示される.

filenameabsoluteDirectoryPathで設定したディレクトリ内の特定のファイルを予め選択させておくときに,そのファイル名を設定.nilを設定すると何も選択されていない状態から始まる.

fileTypes:選択できるファイルタイプを設定.nilを設定すると全てのファイルが選択可能になる.

modelessDelegate:処理の委譲の設定.パネルが閉じられるまで一時的に処理の委譲をする.

didEndSelector:パネルが閉じられる前にセッションが修了した際にmodelessDelegateで設定された委譲先に渡されるメッセージを設定する.

contexInfo:





2010年7月30日金曜日