<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>DigiTechLog Dot Com &#187; preferences</title>
	<atom:link href="http://digitechlog.com/tag/preferences/feed" rel="self" type="application/rss+xml" />
	<link>http://digitechlog.com</link>
	<description>Adobe AIR、Flex、Flash、Java</description>
	<lastBuildDate>Tue, 08 Nov 2011 12:46:29 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8</generator>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>CPreferencesManager: Adobe AIRのpreferencesマネージャークラスである</title>
		<link>http://digitechlog.com/2008/11/05/a-very-useful-adobe-air-preferences-class-cpreferencesmanager.html</link>
		<comments>http://digitechlog.com/2008/11/05/a-very-useful-adobe-air-preferences-class-cpreferencesmanager.html#comments</comments>
		<pubDate>Wed, 05 Nov 2008 08:08:21 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[AIR]]></category>
		<category><![CDATA[Adobe]]></category>
		<category><![CDATA[CPreferencesManager]]></category>
		<category><![CDATA[preferences]]></category>

		<guid isPermaLink="false">http://digitechlog.com/2008/11/05/a-very-useful-adobe-air-preferences-class-cpreferencesmanager.html</guid>
		<description><![CDATA[普通のWindowsアプリケーション、プログラムを起動して画面のサイズ、位置などを変更して終了すると、もう一回プログラムを起動すれば前回終了した状態のまま（画面のサイズ、位置など）で起動することをできます。普通のやり方としては、必要なサイズ、位置情報をファイルに書き込んで、次回起動するとき参照して再現とします。
MFCとか、VB.NETとかで実現すれば既存のpreferencesクラスを使えますが、Adobe AIR 1.1に対しては、そんなクラスが提供されてないです。下記の「CPreferencesManager」というクラスは、スターテク関数で必要なpreferences情報を格納できるクラスです。

該当クラスの使い方としては、ウインドウの移動、リサイズイベントにAttachすることをひつようです。
１、windowMoveイベントへ下記のようなソースを追加する：
windowMove=”CPreferencesManager.setInt(’main.window.x’, this.nativeWindow.x.toString() );
CPreferencesManager.setInt(’main.window.y’, this.nativeWindow.y.toString());”
２、creationCompleteの後ろ、ウインドウの移動処理を追加する 
var posX:int = CPreferencesManager.getInt(’main.window.x’ );
var&#160;posY:int = CPreferencesManager.getInt(’main.window.y’ );
move(&#160;posX, posY );
下記はCPreferencesManagerクラスのソースコード： 
package com.some.package
{
&#160; &#160; import&#160;flash.filesystem.File;
&#160; &#160; import&#160;flash.filesystem.FileMode;
&#160; &#160; import&#160;flash.filesystem.FileStream;
&#160; &#160; import&#160;flash.net.registerClassAlias;
&#160; &#160; import&#160;flash.utils.Dictionary;
&#160; &#160; import&#160;flash.utils.Endian;
&#160; &#160; import&#160;flash.utils.IDataInput;
&#160; &#160; import&#160;flash.utils.IDataOutput;
&#160; &#160; import&#160;flash.utils.IExternalizable;
&#160; &#160; public&#160;class CPreferencesManager
&#160; &#160; {
&#160; &#160; &#160; &#160; private&#160;static const PREFS_FILENAME:String&#160; &#160; &#160; &#160; = ‘prefs.defaults’;
&#160; &#160; &#160; &#160; [...]]]></description>
			<content:encoded><![CDATA[<p>普通のWindowsアプリケーション、プログラムを起動して画面のサイズ、位置などを変更して終了すると、もう一回プログラムを起動すれば前回終了した状態のまま（画面のサイズ、位置など）で起動することをできます。普通のやり方としては、必要なサイズ、位置情報をファイルに書き込んで、次回起動するとき参照して再現とします。</p>
<p>MFCとか、VB.NETとかで実現すれば既存のpreferencesクラスを使えますが、Adobe AIR 1.1に対しては、そんなクラスが提供されてないです。下記の「CPreferencesManager」というクラスは、スターテク関数で必要なpreferences情報を格納できるクラスです。</p>
<p><span id="more-127"></span>
<p>該当クラスの使い方としては、ウインドウの移動、リサイズイベントにAttachすることをひつようです。</p>
<p><strong>１、windowMoveイベントへ下記のようなソースを追加する：</strong></p>
<div class="hl-surround"><ol class="hl-main ln-show" title="Double click to hide line number." ondblclick = "linenumber(this)"><li class="hl-firstline"><span style="color: Blue;">windowMove</span><span style="color: Gray;">=”</span><span style="color: Blue;">CPreferencesManager</span><span style="color: Gray;">.</span><span style="color: Blue;">setInt</span><span style="color: Olive;">(</span><span style="color: Gray;">’</span><span style="color: Blue;">main</span><span style="color: Gray;">.</span><span style="color: Blue;">window</span><span style="color: Gray;">.</span><span style="color: Teal;">x</span><span style="color: Gray;">’, </span><span style="color: Green;">this</span><span style="color: Gray;">.</span><span style="color: Blue;">nativeWindow</span><span style="color: Gray;">.</span><span style="color: Teal;">x</span><span style="color: Gray;">.</span><span style="color: Teal;">toString</span><span style="color: Olive;">()</span><span style="color: Gray;"> </span><span style="color: Olive;">)</span><span style="color: Gray;">;</span></li>
<li><span style="color: Blue;">CPreferencesManager</span><span style="color: Gray;">.</span><span style="color: Blue;">setInt</span><span style="color: Olive;">(</span><span style="color: Gray;">’</span><span style="color: Blue;">main</span><span style="color: Gray;">.</span><span style="color: Blue;">window</span><span style="color: Gray;">.</span><span style="color: Teal;">y</span><span style="color: Gray;">’, </span><span style="color: Green;">this</span><span style="color: Gray;">.</span><span style="color: Blue;">nativeWindow</span><span style="color: Gray;">.</span><span style="color: Teal;">y</span><span style="color: Gray;">.</span><span style="color: Teal;">toString</span><span style="color: Olive;">())</span><span style="color: Gray;">;”</span></li></ol></div>
<p><strong>２、creationCompleteの後ろ、ウインドウの移動処理を追加する</strong> </p>
<div class="hl-surround"><ol class="hl-main ln-show" title="Double click to hide line number." ondblclick = "linenumber(this)"><li class="hl-firstline"><span style="color: Green;">var</span><span style="color: Gray;"> </span><span style="color: Blue;">posX</span><span style="color: Gray;">:</span><span style="color: Teal;">int</span><span style="color: Gray;"> = </span><span style="color: Blue;">CPreferencesManager</span><span style="color: Gray;">.</span><span style="color: Blue;">getInt</span><span style="color: Olive;">(</span><span style="color: Gray;">’</span><span style="color: Blue;">main</span><span style="color: Gray;">.</span><span style="color: Blue;">window</span><span style="color: Gray;">.</span><span style="color: Teal;">x</span><span style="color: Gray;">’ </span><span style="color: Olive;">)</span><span style="color: Gray;">;</span></li>
<li><span style="color: Green;">var</span><span style="color: Gray;">&nbsp;</span><span style="color: Blue;">posY</span><span style="color: Gray;">:</span><span style="color: Teal;">int</span><span style="color: Gray;"> = </span><span style="color: Blue;">CPreferencesManager</span><span style="color: Gray;">.</span><span style="color: Blue;">getInt</span><span style="color: Olive;">(</span><span style="color: Gray;">’</span><span style="color: Blue;">main</span><span style="color: Gray;">.</span><span style="color: Blue;">window</span><span style="color: Gray;">.</span><span style="color: Teal;">y</span><span style="color: Gray;">’ </span><span style="color: Olive;">)</span><span style="color: Gray;">;</span></li>
<li><span style="color: Blue;">move</span><span style="color: Olive;">(</span><span style="color: Gray;">&nbsp;</span><span style="color: Blue;">posX</span><span style="color: Gray;">, </span><span style="color: Blue;">posY</span><span style="color: Gray;"> </span><span style="color: Olive;">)</span><span style="color: Gray;">;</span></li></ol></div>
<p>下記はCPreferencesManagerクラスのソースコード： </p>
<div class="hl-surround"><ol class="hl-main ln-show" title="Double click to hide line number." ondblclick = "linenumber(this)"><li class="hl-firstline"><span style="color: Blue;">package</span><span style="color: Gray;"> </span><span style="color: Blue;">com</span><span style="color: Gray;">.</span><span style="color: Blue;">some</span><span style="color: Gray;">.</span><span style="color: Blue;">package</span></li>
<li><span style="color: Olive;">{</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: Green;">import</span><span style="color: Gray;">&nbsp;</span><span style="color: Teal;">flash</span><span style="color: Gray;">.</span><span style="color: Blue;">filesystem</span><span style="color: Gray;">.</span><span style="color: Blue;">File</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: Green;">import</span><span style="color: Gray;">&nbsp;</span><span style="color: Teal;">flash</span><span style="color: Gray;">.</span><span style="color: Blue;">filesystem</span><span style="color: Gray;">.</span><span style="color: Blue;">FileMode</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: Green;">import</span><span style="color: Gray;">&nbsp;</span><span style="color: Teal;">flash</span><span style="color: Gray;">.</span><span style="color: Blue;">filesystem</span><span style="color: Gray;">.</span><span style="color: Blue;">FileStream</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: Green;">import</span><span style="color: Gray;">&nbsp;</span><span style="color: Teal;">flash</span><span style="color: Gray;">.</span><span style="color: Teal;">net</span><span style="color: Gray;">.</span><span style="color: Blue;">registerClassAlias</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: Green;">import</span><span style="color: Gray;">&nbsp;</span><span style="color: Teal;">flash</span><span style="color: Gray;">.</span><span style="color: Blue;">utils</span><span style="color: Gray;">.</span><span style="color: Blue;">Dictionary</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: Green;">import</span><span style="color: Gray;">&nbsp;</span><span style="color: Teal;">flash</span><span style="color: Gray;">.</span><span style="color: Blue;">utils</span><span style="color: Gray;">.</span><span style="color: Blue;">Endian</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: Green;">import</span><span style="color: Gray;">&nbsp;</span><span style="color: Teal;">flash</span><span style="color: Gray;">.</span><span style="color: Blue;">utils</span><span style="color: Gray;">.</span><span style="color: Blue;">IDataInput</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: Green;">import</span><span style="color: Gray;">&nbsp;</span><span style="color: Teal;">flash</span><span style="color: Gray;">.</span><span style="color: Blue;">utils</span><span style="color: Gray;">.</span><span style="color: Blue;">IDataOutput</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: Green;">import</span><span style="color: Gray;">&nbsp;</span><span style="color: Teal;">flash</span><span style="color: Gray;">.</span><span style="color: Blue;">utils</span><span style="color: Gray;">.</span><span style="color: Blue;">IExternalizable</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: Green;">public</span><span style="color: Gray;">&nbsp;</span><span style="color: Green;">class</span><span style="color: Gray;"> </span><span style="color: Blue;">CPreferencesManager</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: Olive;">{</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Green;">private</span><span style="color: Gray;">&nbsp;</span><span style="color: Green;">static</span><span style="color: Gray;"> </span><span style="color: Blue;">const</span><span style="color: Gray;"> </span><span style="color: Blue;">PREFS_FILENAME</span><span style="color: Gray;">:</span><span style="color: Teal;">String</span><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; = ‘</span><span style="color: Blue;">prefs</span><span style="color: Gray;">.</span><span style="color: Blue;">defaults</span><span style="color: Gray;">’;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Green;">private</span><span style="color: Gray;">&nbsp;</span><span style="color: Green;">static</span><span style="color: Gray;"> </span><span style="color: Green;">var</span><span style="color: Gray;"> </span><span style="color: Blue;">_prefValues</span><span style="color: Gray;">:</span><span style="color: Blue;">Dictionary</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: #ffa500;">/**</span></li>
<li><span style="color: #ffa500;">&nbsp; &nbsp; &nbsp; &nbsp;&nbsp; * Creates out static instance</span></li>
<li><span style="color: #ffa500;">&nbsp; &nbsp; &nbsp; &nbsp;&nbsp; **/</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Green;">static</span><span style="color: Gray;">&nbsp;</span><span style="color: Green;">public</span><span style="color: Gray;"> </span><span style="color: Green;">function</span><span style="color: Gray;"> </span><span style="color: Teal;">init</span><span style="color: Olive;">()</span><span style="color: Gray;">:</span><span style="color: Green;">void</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Olive;">{</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Green;">if</span><span style="color: Gray;">&nbsp;</span><span style="color: Olive;">(</span><span style="color: Gray;"> </span><span style="color: Green;">null</span><span style="color: Gray;"> == </span><span style="color: Blue;">_prefValues</span><span style="color: Gray;"> </span><span style="color: Olive;">)</span><span style="color: Gray;"> </span><span style="color: Olive;">{</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Blue;">_prefValues</span><span style="color: Gray;"> = </span><span style="color: Green;">new</span><span style="color: Gray;">&nbsp;</span><span style="color: Blue;">Dictionary</span><span style="color: Olive;">()</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Blue;">loadPreferences</span><span style="color: Olive;">()</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Olive;">}</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Olive;">}</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: #ffa500;">/**</span></li>
<li><span style="color: #ffa500;">&nbsp; &nbsp; &nbsp; &nbsp;&nbsp; * Load the preferences file</span></li>
<li><span style="color: #ffa500;">&nbsp; &nbsp; &nbsp; &nbsp;&nbsp; */</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Green;">static</span><span style="color: Gray;">&nbsp;</span><span style="color: Green;">private</span><span style="color: Gray;"> </span><span style="color: Green;">function</span><span style="color: Gray;"> </span><span style="color: Blue;">loadPreferences</span><span style="color: Olive;">()</span><span style="color: Gray;">:</span><span style="color: Green;">void</span><span style="color: Gray;"> </span><span style="color: Olive;">{</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Teal;">init</span><span style="color: Olive;">()</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Green;">var</span><span style="color: Gray;">&nbsp;</span><span style="color: Blue;">fp</span><span style="color: Gray;">: </span><span style="color: Blue;">File</span><span style="color: Gray;"> = </span><span style="color: Blue;">File</span><span style="color: Gray;">.</span><span style="color: Blue;">applicationStorageDirectory</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Blue;">fp</span><span style="color: Gray;"> = </span><span style="color: Blue;">fp</span><span style="color: Gray;">.</span><span style="color: Blue;">resolvePath</span><span style="color: Olive;">(</span><span style="color: Gray;">&nbsp;</span><span style="color: Blue;">PREFS_FILENAME</span><span style="color: Gray;"> </span><span style="color: Olive;">)</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Green;">if</span><span style="color: Gray;">&nbsp;</span><span style="color: Olive;">(</span><span style="color: Gray;"> </span><span style="color: Blue;">fp</span><span style="color: Gray;">.</span><span style="color: Blue;">exists</span><span style="color: Gray;"> </span><span style="color: Olive;">)</span><span style="color: Gray;"> </span><span style="color: Olive;">{</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Green;">var</span><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: Blue;">_prefsStream</span><span style="color: Gray;">:</span><span style="color: Blue;">FileStream</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Blue;">_prefsStream</span><span style="color: Gray;"> = </span><span style="color: Green;">new</span><span style="color: Gray;">&nbsp;</span><span style="color: Blue;">FileStream</span><span style="color: Olive;">()</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Blue;">_prefsStream</span><span style="color: Gray;">.</span><span style="color: Teal;">open</span><span style="color: Olive;">(</span><span style="color: Gray;">&nbsp;</span><span style="color: Blue;">fp</span><span style="color: Gray;">, </span><span style="color: Blue;">FileMode</span><span style="color: Gray;">.</span><span style="color: Blue;">READ</span><span style="color: Olive;">)</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Blue;">_prefsStream</span><span style="color: Gray;">.</span><span style="color: Blue;">endian</span><span style="color: Gray;"> = </span><span style="color: Blue;">Endian</span><span style="color: Gray;">.</span><span style="color: Blue;">BIG_ENDIAN</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Blue;">readExternal</span><span style="color: Olive;">(</span><span style="color: Gray;">&nbsp;</span><span style="color: Blue;">_prefsStream</span><span style="color: Gray;"> </span><span style="color: Olive;">)</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Blue;">_prefsStream</span><span style="color: Gray;">.</span><span style="color: Teal;">close</span><span style="color: Olive;">()</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Olive;">}</span><span style="color: Gray;">&nbsp;</span><span style="color: Green;">else</span><span style="color: Gray;"> </span><span style="color: Olive;">{</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Blue;">savePreferences</span><span style="color: Olive;">()</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Olive;">}</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Olive;">}</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: #ffa500;">/**</span></li>
<li><span style="color: #ffa500;">&nbsp; &nbsp; &nbsp; &nbsp;&nbsp; * Saves the preferences file</span></li>
<li><span style="color: #ffa500;">&nbsp; &nbsp; &nbsp; &nbsp;&nbsp; **/</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Green;">static</span><span style="color: Gray;">&nbsp;</span><span style="color: Green;">private</span><span style="color: Gray;"> </span><span style="color: Green;">function</span><span style="color: Gray;"> </span><span style="color: Blue;">savePreferences</span><span style="color: Olive;">()</span><span style="color: Gray;">:</span><span style="color: Green;">void</span><span style="color: Gray;"> </span><span style="color: Olive;">{</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Teal;">init</span><span style="color: Olive;">()</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Green;">var</span><span style="color: Gray;">&nbsp;</span><span style="color: Blue;">fp</span><span style="color: Gray;">: </span><span style="color: Blue;">File</span><span style="color: Gray;"> = </span><span style="color: Blue;">File</span><span style="color: Gray;">.</span><span style="color: Blue;">applicationStorageDirectory</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Blue;">fp</span><span style="color: Gray;"> = </span><span style="color: Blue;">fp</span><span style="color: Gray;">.</span><span style="color: Blue;">resolvePath</span><span style="color: Olive;">(</span><span style="color: Gray;">&nbsp;</span><span style="color: Blue;">PREFS_FILENAME</span><span style="color: Gray;"> </span><span style="color: Olive;">)</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Green;">var</span><span style="color: Gray;">&nbsp;</span><span style="color: Blue;">_prefsStream</span><span style="color: Gray;">:</span><span style="color: Blue;">FileStream</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Blue;">_prefsStream</span><span style="color: Gray;"> = </span><span style="color: Green;">new</span><span style="color: Gray;">&nbsp;</span><span style="color: Blue;">FileStream</span><span style="color: Olive;">()</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Blue;">_prefsStream</span><span style="color: Gray;">.</span><span style="color: Teal;">open</span><span style="color: Olive;">(</span><span style="color: Gray;">&nbsp;</span><span style="color: Blue;">fp</span><span style="color: Gray;">, </span><span style="color: Blue;">FileMode</span><span style="color: Gray;">.</span><span style="color: Blue;">WRITE</span><span style="color: Gray;"> </span><span style="color: Olive;">)</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Blue;">_prefsStream</span><span style="color: Gray;">.</span><span style="color: Blue;">endian</span><span style="color: Gray;"> = </span><span style="color: Blue;">Endian</span><span style="color: Gray;">.</span><span style="color: Blue;">BIG_ENDIAN</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Blue;">writeExternal</span><span style="color: Olive;">(</span><span style="color: Gray;">&nbsp;</span><span style="color: Blue;">_prefsStream</span><span style="color: Gray;"> </span><span style="color: Olive;">)</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Blue;">_prefsStream</span><span style="color: Gray;">.</span><span style="color: Teal;">close</span><span style="color: Olive;">()</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Olive;">}</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: #ffa500;">/**</span></li>
<li><span style="color: #ffa500;">&nbsp; &nbsp; &nbsp; &nbsp;&nbsp; * Sets a preferences value</span></li>
<li><span style="color: #ffa500;">&nbsp; &nbsp; &nbsp; &nbsp;&nbsp; **/</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Green;">static</span><span style="color: Gray;">&nbsp;</span><span style="color: Green;">public</span><span style="color: Gray;"> </span><span style="color: Green;">function</span><span style="color: Gray;"> </span><span style="color: Blue;">setPreference</span><span style="color: Olive;">(</span><span style="color: Gray;"> </span><span style="color: Teal;">name</span><span style="color: Gray;">:</span><span style="color: Teal;">String</span><span style="color: Gray;">, </span><span style="color: Blue;">value</span><span style="color: Gray;">:</span><span style="color: Teal;">Object</span><span style="color: Gray;"> </span><span style="color: Olive;">)</span><span style="color: Gray;">:</span><span style="color: Green;">void</span><span style="color: Gray;"> </span><span style="color: Olive;">{</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Teal;">init</span><span style="color: Olive;">()</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Blue;">_prefValues</span><span style="color: Olive;">[</span><span style="color: Gray;">&nbsp;</span><span style="color: Teal;">name</span><span style="color: Gray;"> </span><span style="color: Olive;">]</span><span style="color: Gray;"> = </span><span style="color: Blue;">value</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Blue;">savePreferences</span><span style="color: Olive;">()</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Olive;">}</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: #ffa500;">/**</span></li>
<li><span style="color: #ffa500;">&nbsp; &nbsp; &nbsp; &nbsp;&nbsp; * Sets an &lt;int&gt; preferences value</span></li>
<li><span style="color: #ffa500;">&nbsp; &nbsp; &nbsp; &nbsp;&nbsp; **/</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Green;">static</span><span style="color: Gray;">&nbsp;</span><span style="color: Green;">public</span><span style="color: Gray;"> </span><span style="color: Green;">function</span><span style="color: Gray;"> </span><span style="color: Blue;">setInt</span><span style="color: Olive;">(</span><span style="color: Gray;"> </span><span style="color: Teal;">name</span><span style="color: Gray;">:</span><span style="color: Teal;">String</span><span style="color: Gray;">, </span><span style="color: Blue;">value</span><span style="color: Gray;">:</span><span style="color: Teal;">int</span><span style="color: Gray;"> </span><span style="color: Olive;">)</span><span style="color: Gray;">:</span><span style="color: Green;">void</span><span style="color: Gray;"> </span><span style="color: Olive;">{</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Blue;">setPreference</span><span style="color: Olive;">(</span><span style="color: Gray;">&nbsp;</span><span style="color: Teal;">name</span><span style="color: Gray;">, </span><span style="color: Blue;">value</span><span style="color: Gray;"> </span><span style="color: Olive;">)</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Olive;">}</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: #ffa500;">/**</span></li>
<li><span style="color: #ffa500;">&nbsp; &nbsp; &nbsp; &nbsp;&nbsp; * Get a preferences values</span></li>
<li><span style="color: #ffa500;">&nbsp; &nbsp; &nbsp; &nbsp;&nbsp; **/</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Green;">static</span><span style="color: Gray;">&nbsp;</span><span style="color: Green;">public</span><span style="color: Gray;"> </span><span style="color: Green;">function</span><span style="color: Gray;"> </span><span style="color: Blue;">getPreference</span><span style="color: Olive;">(</span><span style="color: Gray;"> </span><span style="color: Teal;">name</span><span style="color: Gray;">:</span><span style="color: Teal;">String</span><span style="color: Gray;"> </span><span style="color: Olive;">)</span><span style="color: Gray;">:* </span><span style="color: Olive;">{</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Teal;">init</span><span style="color: Olive;">()</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Green;">var</span><span style="color: Gray;">&nbsp;</span><span style="color: Blue;">value</span><span style="color: Gray;">:</span><span style="color: Teal;">Object</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Green;">try</span><span style="color: Gray;">&nbsp;</span><span style="color: Olive;">{</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Blue;">value</span><span style="color: Gray;"> = </span><span style="color: Blue;">_prefValues</span><span style="color: Olive;">[</span><span style="color: Gray;">&nbsp;</span><span style="color: Teal;">name</span><span style="color: Gray;"> </span><span style="color: Olive;">]</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Olive;">}</span><span style="color: Gray;">&nbsp;</span><span style="color: Green;">catch</span><span style="color: Olive;">(</span><span style="color: Gray;"> </span><span style="color: Blue;">e</span><span style="color: Gray;">:</span><span style="color: Teal;">Error</span><span style="color: Gray;"> </span><span style="color: Olive;">)</span><span style="color: Gray;"> </span><span style="color: Olive;">{</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Blue;">value</span><span style="color: Gray;"> = </span><span style="color: Green;">null</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Olive;">}</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Green;">return</span><span style="color: Gray;">&nbsp;</span><span style="color: Blue;">value</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Olive;">}</span><span style="color: Gray;">&nbsp;</span><span style="color: #ffa500;">// getPreference</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: #ffa500;">/**</span></li>
<li><span style="color: #ffa500;">&nbsp; &nbsp; &nbsp; &nbsp;&nbsp; * Get an &lt;b&gt;int&lt;/b&gt; preferences values</span></li>
<li><span style="color: #ffa500;">&nbsp; &nbsp; &nbsp; &nbsp;&nbsp; **/</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Green;">static</span><span style="color: Gray;">&nbsp;</span><span style="color: Green;">public</span><span style="color: Gray;"> </span><span style="color: Green;">function</span><span style="color: Gray;"> </span><span style="color: Blue;">getInt</span><span style="color: Olive;">(</span><span style="color: Gray;"> </span><span style="color: Teal;">name</span><span style="color: Gray;">:</span><span style="color: Teal;">String</span><span style="color: Gray;"> </span><span style="color: Olive;">)</span><span style="color: Gray;">:</span><span style="color: Teal;">int</span><span style="color: Gray;"> </span><span style="color: Olive;">{</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Green;">var</span><span style="color: Gray;">&nbsp;</span><span style="color: Blue;">value</span><span style="color: Gray;">:* = </span><span style="color: Blue;">getPreference</span><span style="color: Olive;">(</span><span style="color: Gray;"> </span><span style="color: Teal;">name</span><span style="color: Gray;"> </span><span style="color: Olive;">)</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Green;">if</span><span style="color: Gray;">&nbsp;</span><span style="color: Olive;">(</span><span style="color: Gray;"> </span><span style="color: Green;">null</span><span style="color: Gray;"> == </span><span style="color: Blue;">value</span><span style="color: Gray;"> </span><span style="color: Olive;">)</span><span style="color: Gray;"> </span><span style="color: Olive;">{</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Green;">return</span><span style="color: Gray;">&nbsp;</span><span style="color: Maroon;">0</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Olive;">}</span><span style="color: Gray;">&nbsp;</span><span style="color: Green;">else</span><span style="color: Gray;"> </span><span style="color: Olive;">{</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Green;">return</span><span style="color: Gray;">&nbsp;</span><span style="color: Blue;">value</span><span style="color: Gray;"> </span><span style="color: Blue;">as</span><span style="color: Gray;"> </span><span style="color: Teal;">int</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Olive;">}</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Olive;">}</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: #ffa500;">/**</span></li>
<li><span style="color: #ffa500;">&nbsp; &nbsp; &nbsp; &nbsp;&nbsp; * Loads serializes preferences data structure from &lt;b&gt;input:IDataInput&lt;/b&gt;.</span></li>
<li><span style="color: #ffa500;">&nbsp; &nbsp; &nbsp; &nbsp;&nbsp; **/</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Green;">static</span><span style="color: Gray;">&nbsp;</span><span style="color: Green;">private</span><span style="color: Gray;"> </span><span style="color: Green;">function</span><span style="color: Gray;"> </span><span style="color: Blue;">readExternal</span><span style="color: Olive;">(</span><span style="color: Blue;">input</span><span style="color: Gray;">:</span><span style="color: Blue;">IDataInput</span><span style="color: Olive;">)</span><span style="color: Gray;">:</span><span style="color: Green;">void</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Olive;">{</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Blue;">registerClassAlias</span><span style="color: Olive;">(</span><span style="color: Gray;"> “</span><span style="color: Teal;">flash</span><span style="color: Gray;">.</span><span style="color: Blue;">utils</span><span style="color: Gray;">.</span><span style="color: Blue;">Dictionary</span><span style="color: Gray;">”, </span><span style="color: Blue;">Dictionary</span><span style="color: Gray;">&nbsp;</span><span style="color: Olive;">)</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Blue;">_prefValues</span><span style="color: Gray;"> = </span><span style="color: Blue;">input</span><span style="color: Gray;">.</span><span style="color: Blue;">readObject</span><span style="color: Olive;">()</span><span style="color: Gray;">&nbsp;</span><span style="color: Blue;">as</span><span style="color: Gray;"> </span><span style="color: Blue;">Dictionary</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Olive;">}</span><span style="color: Gray;">&nbsp;</span><span style="color: #ffa500;">// readExternal</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: #ffa500;">/**</span></li>
<li><span style="color: #ffa500;">&nbsp; &nbsp; &nbsp; &nbsp;&nbsp; * Writes preferences data as a serialized structure to &lt;b&gt;output:IDataOutput&lt;/b&gt;.</span></li>
<li><span style="color: #ffa500;">&nbsp; &nbsp; &nbsp; &nbsp;&nbsp; **/</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Green;">static</span><span style="color: Gray;">&nbsp;</span><span style="color: Green;">private</span><span style="color: Gray;"> </span><span style="color: Green;">function</span><span style="color: Gray;"> </span><span style="color: Blue;">writeExternal</span><span style="color: Olive;">(</span><span style="color: Teal;">output</span><span style="color: Gray;">:</span><span style="color: Blue;">IDataOutput</span><span style="color: Olive;">)</span><span style="color: Gray;">:</span><span style="color: Green;">void</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Olive;">{</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Blue;">registerClassAlias</span><span style="color: Olive;">(</span><span style="color: Gray;"> “</span><span style="color: Teal;">flash</span><span style="color: Gray;">.</span><span style="color: Blue;">utils</span><span style="color: Gray;">.</span><span style="color: Blue;">Dictionary</span><span style="color: Gray;">”, </span><span style="color: Blue;">Dictionary</span><span style="color: Gray;">&nbsp;</span><span style="color: Olive;">)</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Teal;">output</span><span style="color: Gray;">.</span><span style="color: Blue;">writeObject</span><span style="color: Olive;">(</span><span style="color: Gray;">&nbsp;</span><span style="color: Blue;">_prefValues</span><span style="color: Gray;"> </span><span style="color: Olive;">)</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Olive;">}</span><span style="color: Gray;">&nbsp;</span><span style="color: #ffa500;">// writeExternal</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: Olive;">}</span><span style="color: Gray;">&nbsp;</span><span style="color: #ffa500;">// class</span></li>
<li><span style="color: Gray;">&nbsp;</span></li>
<li><span style="color: Olive;">}</span><span style="color: Gray;">&nbsp;</span><span style="color: #ffa500;">// package</span></li></ol></div>
<h3>Related Posts</h3>
<ul class="related_post">
<li><a href="http://digitechlog.com/2010/06/06/8-helpfull-adobe-flash-actionscript.html" title="8 Adobe ActionScriptのチュートリアルフラッシュ">8 Adobe ActionScriptのチュートリアルフラッシュ</a></li>
<li><a href="http://digitechlog.com/2009/12/01/gplflash-another-alternative-flash-runtime.html" title="GPLFlash: GNU/Linux上でAdobeのFlashムービーを再生しよう">GPLFlash: GNU/Linux上でAdobeのFlashムービーを再生しよう</a></li>
<li><a href="http://digitechlog.com/2009/11/02/collection-of-15-beautiful-adobe-photoshop-psd-files-for-car.html" title="15+綺麗な車に関するアドビPhotoShopの.PSDファイル">15+綺麗な車に関するアドビPhotoShopの.PSDファイル</a></li>
<li><a href="http://digitechlog.com/2009/10/31/5-useful-aadobe-flash-menu-and-navigation-tutorials.html" title="5個アドビFlashメニューとナビゲーションのチュートリアル">5個アドビFlashメニューとナビゲーションのチュートリアル</a></li>
<li><a href="http://digitechlog.com/2009/10/04/pyamf-an-amf-actionscript-message-format-decoder-and-encoder-for-python.html" title="PyAMF: PythonのためにAdobeのFlash Playerに対応しているサポートアクションメッセージ形式（ AMF ）を提供する">PyAMF: PythonのためにAdobeのFlash Playerに対応しているサポートアクションメッセージ形式（ AMF ）を提供する</a></li>
<li><a href="http://digitechlog.com/2009/07/25/top-7-adobe-air-apps-for-videos-you-should-know.html" title="トップ７個アドビAIRビデオアプリケーション">トップ７個アドビAIRビデオアプリケーション</a></li>
<li><a href="http://digitechlog.com/2009/07/10/openamf-free-open-source-alternative-to-adobe-java-flash-remoting.html" title="OpenAMF: オープンソースのJava Flashリモートツール">OpenAMF: オープンソースのJava Flashリモートツール</a></li>
<li><a href="http://digitechlog.com/2009/01/16/the-tutorial-on-how-to-save-swf-file-from-an-image-bitmap-in-adobe-air.html" title="SWFフォーマット画像ファイルをローカルに保存とするAdobe AIRアプリケーション">SWFフォーマット画像ファイルをローカルに保存とするAdobe AIRアプリケーション</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://digitechlog.com/2008/11/05/a-very-useful-adobe-air-preferences-class-cpreferencesmanager.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

