[Bbs2ch-cvs 253] [235] Components. interfaces 等の定数化

Back to archive index

svnno****@sourc***** svnno****@sourc*****
2007年 10月 26日 (金) 22:30:48 JST


Revision: 235
          http://svn.sourceforge.jp/cgi-bin/viewcvs.cgi?root=bbs2ch&view=rev&rev=235
Author:   flyson
Date:     2007-10-26 22:30:47 +0900 (Fri, 26 Oct 2007)

Log Message:
-----------
Components.interfaces 等の定数化
ツリービューの高速化

Modified Paths:
--------------
    trunk/bbs2chreader/chrome/content/bbs2chreader/board/items.js
    trunk/bbs2chreader/chrome/content/bbs2chreader/board/logMove.xul
    trunk/bbs2chreader/chrome/content/bbs2chreader/board/page.js
    trunk/bbs2chreader/chrome/content/bbs2chreader/board/page.xul
    trunk/bbs2chreader/chrome/content/bbs2chreader/board/subscribe.js
    trunk/bbs2chreader/chrome/content/bbs2chreader/board/subscribe.xul


-------------- next part --------------
Modified: trunk/bbs2chreader/chrome/content/bbs2chreader/board/items.js
===================================================================
--- trunk/bbs2chreader/chrome/content/bbs2chreader/board/items.js	2007-10-26 13:29:26 UTC (rev 234)
+++ trunk/bbs2chreader/chrome/content/bbs2chreader/board/items.js	2007-10-26 13:30:47 UTC (rev 235)
@@ -117,24 +117,21 @@
 
 
 	init: function(aURLSpec){
-		this._bbs2chService = Components.classes["@mozilla.org/bbs2ch-service;1"]
-				.getService(Components.interfaces.nsIBbs2chService);
-		this._ioService = Components.classes["@mozilla.org/network/io-service;1"]
-				.getService(Components.interfaces.nsIIOService);
-		this._dateFormat = Components.classes["@mozilla.org/intl/scriptabledateformat;1"]
-				.getService(Components.interfaces.nsIScriptableDateFormat);
+		this._bbs2chService = Cc["@mozilla.org/bbs2ch-service;1"].getService(Ci.nsIBbs2chService);
+		this._ioService = Cc["@mozilla.org/network/io-service;1"].getService(Ci.nsIIOService);
+		this._dateFormat = Cc["@mozilla.org/intl/scriptabledateformat;1"]
+				.getService(Ci.nsIScriptableDateFormat);
 
 		this._validURL = false;
 		try{
-			this._url = this._ioService.newURI(aURLSpec, null, null)
-								.QueryInterface(Components.interfaces.nsIURL);
+			this._url = this._ioService.newURI(aURLSpec, null, null).QueryInterface(Ci.nsIURL);
 
 			this._subjectURL = this._ioService.newURI("subject.txt", null, this.url)
-									.QueryInterface(Components.interfaces.nsIURL);
+					.QueryInterface(Ci.nsIURL);
 			this._subjectFile = this._bbs2chService.getLogFileAtURL(this.subjectURL.spec);
 
 			this._settingURL = this._ioService.newURI("SETTING.TXT", null, this.url)
-									.QueryInterface(Components.interfaces.nsIURL);
+					.QueryInterface(Ci.nsIURL);
 			this._settingFile = this._bbs2chService.getLogFileAtURL(this.settingURL.spec);
 		}catch(ex){
 			dump("Bbs2chBoardItems.init: " + ex + "\n");
@@ -295,20 +292,19 @@
 
 	htmlToText: function(aStr){
 		if(aStr.indexOf("&") == -1) return aStr;
-		var fromStr = Components.classes["@mozilla.org/supports-string;1"]
-									.createInstance(Components.interfaces.nsISupportsString);
+		var fromStr = Cc["@mozilla.org/supports-string;1"].createInstance(Ci.nsISupportsString);
 		fromStr.data = aStr;
 		try{
 			var toStr = { value: null };
-			var	formatConverter = Components.classes["@mozilla.org/widget/htmlformatconverter;1"]
-									.createInstance(Components.interfaces.nsIFormatConverter);
+			var	formatConverter = Cc["@mozilla.org/widget/htmlformatconverter;1"]
+						.createInstance(Ci.nsIFormatConverter);
 			formatConverter.convert("text/html", fromStr, fromStr.toString().length,
 										"text/unicode", toStr, {});
 		}catch(e){
 			return aStr;
 		}
 		if(toStr.value){
-			toStr = toStr.value.QueryInterface(Components.interfaces.nsISupportsString);
+			toStr = toStr.value.QueryInterface(Ci.nsISupportsString);
 			return toStr.toString();
 		}
 		return aStr;
@@ -344,7 +340,7 @@
 		var logDir = this._bbs2chService.getLogFileAtURL(this.url.spec);
 		var entries = logDir.directoryEntries;
 		while(entries.hasMoreElements()){
-			var file = entries.getNext().QueryInterface(Components.interfaces.nsILocalFile);
+			var file = entries.getNext().QueryInterface(Ci.nsILocalFile);
 			if(!regIndexName.test(file.leafName)) continue;
 			var datID = RegExp.$1;
 			var lastModified = file.lastModifiedTime;
@@ -398,7 +394,7 @@
 	 */
 	getThreadForce: function(aDatID, aCount){
 			// スレッド作成日から現在までのミリ数
-		var progress = new Date().getTime() - aDatID * 1000;
+		var progress = Date.now() - aDatID * 1000;
 			// 86400000 = 一日/ミリ秒 (24 * 60 * 60 * 1000)
 		progress = progress / 86400000;
 
@@ -412,8 +408,8 @@
 	search: function(aSearchString){
 		if(!this._lastItems) this._lastItems = this.items.concat();
 
-		var unicodeNormalizer  = Components.classes["@mozilla.org/intl/unicodenormalizer;1"]
-				.createInstance(Components.interfaces.nsIUnicodeNormalizer);
+		var unicodeNormalizer  = Cc["@mozilla.org/intl/unicodenormalizer;1"]
+				.createInstance(Ci.nsIUnicodeNormalizer);
 		var normalizedStr = {};
 
 		var searchString = aSearchString.toLowerCase();

Modified: trunk/bbs2chreader/chrome/content/bbs2chreader/board/logMove.xul
===================================================================
--- trunk/bbs2chreader/chrome/content/bbs2chreader/board/logMove.xul	2007-10-26 13:29:26 UTC (rev 234)
+++ trunk/bbs2chreader/chrome/content/bbs2chreader/board/logMove.xul	2007-10-26 13:30:47 UTC (rev 235)
@@ -4,10 +4,9 @@
 <dialog id="winMain" class="plain" buttons="cancel" defaultButton="cancel"
 	title="ログファイルの移動 [bbs2chreader]" onload="startup()"
 	xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
+<script type="application/javascript; version=1.7" src="chrome://bbs2chreader/content/lib/xpc.js"/>
+<script type="application/javascript; version=1.7" src="chrome://bbs2chreader/content/board/logMove.js"/>
 
-<script type="application/javascript; version=1.7"
-			src="chrome://bbs2chreader/content/board/logMove.js"/>
-
 <hbox class="wizard-header" id="hdrDialog" label="" description=""/>
 <vbox width="420" class="spaced">
 	<hbox class="spaced" flex="1">

Modified: trunk/bbs2chreader/chrome/content/bbs2chreader/board/page.js
===================================================================
--- trunk/bbs2chreader/chrome/content/bbs2chreader/board/page.js	2007-10-26 13:29:26 UTC (rev 234)
+++ trunk/bbs2chreader/chrome/content/bbs2chreader/board/page.js	2007-10-26 13:30:47 UTC (rev 235)
@@ -36,9 +36,7 @@
  * ***** END LICENSE BLOCK ***** */
 
 
-var gBbs2chService = Components.classes["@mozilla.org/bbs2ch-service;1"]
-			.getService(Components.interfaces.nsIBbs2chService);
-
+var gBbs2chService = Cc["@mozilla.org/bbs2ch-service;1"].getService(Ci.nsIBbs2chService);
 var gTreeSubject;
 var gBoardItems;
 var gSubjectDownloader;
@@ -135,9 +133,8 @@
 
 
 function loadPersist(){
-	var persistPref = Components.classes["@mozilla.org/preferences-service;1"]
-						.getService(Components.interfaces.nsIPrefService)
-						.getBranch("extensions.bbs2chreader.board_persist.");
+	var persistPref = Cc["@mozilla.org/preferences-service;1"].getService(Ci.nsIPrefService)
+			.getBranch("extensions.bbs2chreader.board_persist.");
 	var prefList = persistPref.getChildList("", {});
 	for(var i=0; i<prefList.length; i++){
 		var prefName = prefList[i];
@@ -154,9 +151,8 @@
 
 
 function savePersist(){
-	var persistPref = Components.classes["@mozilla.org/preferences-service;1"]
-						.getService(Components.interfaces.nsIPrefService)
-						.getBranch("extensions.bbs2chreader.board_persist.");
+	var persistPref = Cc["@mozilla.org/preferences-service;1"].getService(Ci.nsIPrefService)
+			.getBranch("extensions.bbs2chreader.board_persist.");
 
 	var xpathResult = document.evaluate("descendant::*[@id][@persist2]", document, null,
 						XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null);
@@ -449,10 +445,10 @@
 		return;
 	}
 
-	if(Components.interfaces.nsIFormHistory2){
+	if(Ci.nsIFormHistory2){
 			// フォーム履歴に検索文字列を追加
-		var formHistory	= Components.classes["@mozilla.org/satchel/form-history;1"]
-				.getService(Components.interfaces.nsIFormHistory2);
+		var formHistory	= Cc["@mozilla.org/satchel/form-history;1"]
+				.getService(Ci.nsIFormHistory2);
 		formHistory.addEntry("bbs2ch-board-history", aSearchString);
 	}
 
@@ -571,8 +567,8 @@
 
 function createSettingFile(){
 		// 板名記入ダイアログ表示
-	var promptService = Components.classes["@mozilla.org/embedcomp/prompt-service;1"]
-							.getService(Components.interfaces.nsIPromptService);
+	var promptService = Cc["@mozilla.org/embedcomp/prompt-service;1"]
+							.getService(Ci.nsIPromptService);
 	var promptTitle = gBoardItems.url.spec + " [bbs2chreader]";
 	var promptMsg = "Entry This Board Title";
 	var promptValue = { value: "" };
@@ -595,17 +591,14 @@
 }
 
 function openLogsDir(){
-	var logDir = gBoardItems.subjectFile.parent
-					.QueryInterface(Components.interfaces.nsILocalFile);
+	var logDir = gBoardItems.subjectFile.parent.QueryInterface(Ci.nsILocalFile);
 	try{
 		logDir.reveal();
 	}catch(ex){
 			// for Unix
-		var ioService = Components.classes["@mozilla.org/network/io-service;1"]
-				.getService(Components.interfaces.nsIIOService);
-	    var protocolService = Components.classes
-	    		["@mozilla.org/uriloader/external-protocol-service;1"]
-    				.getService(Components.interfaces.nsIExternalProtocolService);
+		var ioService = Cc["@mozilla.org/network/io-service;1"].getService(Ci.nsIIOService);
+	    var protocolService = Cc["@mozilla.org/uriloader/external-protocol-service;1"]
+    				.getService(Ci.nsIExternalProtocolService);
 		var logDirURI = ioService.newFileURI(logDir);
 		protocolService.loadUrl(logDirURI);
 	}
@@ -778,8 +771,15 @@
 function Bbs2chBoardTreeView(aItems){
 	this._items = aItems;
 	this._rowCount = aItems.length;
-	this._atomService = Components.classes["@mozilla.org/atom-service;1"]
-							.getService(Components.interfaces.nsIAtomService);
+
+	var atomService = Cc["@mozilla.org/atom-service;1"].getService(Ci.nsIAtomService);
+	this._atom = new Array();
+	this._atom["s5"] = atomService.getAtom("s5");
+	this._atom["s4"] = atomService.getAtom("s4");
+	this._atom["s3"] = atomService.getAtom("s3");
+	this._atom["s2"] = atomService.getAtom("s2");
+	this._atom["s1"] = atomService.getAtom("s1");
+	this._atom["icon"] = atomService.getAtom("icon");
 }
 
 
@@ -875,15 +875,15 @@
 	},
 
 	getRowProperties: function(aIndex, aProperties){
-		// var status = "s" + this._items[aIndex].status;
-		// aProperties.AppendElement(this._atomService.getAtom(status));
+		var status = "s" + this._items[aRow].status;
+		aProperties.AppendElement(this._atom[status]);
 	},
 
 	getCellProperties: function(aRow, aCol, aProperties){
 		if(aCol.element._cellType == "icon"){
 			var status = "s" + this._items[aRow].status;
-			aProperties.AppendElement(this._atomService.getAtom(status));
-			aProperties.AppendElement(this._atomService.getAtom("icon"));
+			aProperties.AppendElement(this._atom[status]);
+			aProperties.AppendElement(this._atom["icon"]);
 		}
 	},
 	getColumnProperties: function(aCol, aProperties){},

Modified: trunk/bbs2chreader/chrome/content/bbs2chreader/board/page.xul
===================================================================
--- trunk/bbs2chreader/chrome/content/bbs2chreader/board/page.xul	2007-10-26 13:29:26 UTC (rev 234)
+++ trunk/bbs2chreader/chrome/content/bbs2chreader/board/page.xul	2007-10-26 13:30:47 UTC (rev 235)
@@ -10,6 +10,7 @@
 	onmousedown="eventBubbleCheck(event)" onkeypress="eventBubbleCheck(event)"
 	xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
 
+<script type="application/javascript; version=1.7" src="chrome://bbs2chreader/content/lib/xpc.js"/>
 <script type="application/javascript; version=1.7" src="chrome://bbs2chreader/content/lib/clipboard.js"/>
 <script type="application/javascript; version=1.7" src="chrome://bbs2chreader/content/lib/downloader.js"/>
 <script type="application/javascript; version=1.7" src="chrome://bbs2chreader/content/board/items.js"/>

Modified: trunk/bbs2chreader/chrome/content/bbs2chreader/board/subscribe.js
===================================================================
--- trunk/bbs2chreader/chrome/content/bbs2chreader/board/subscribe.js	2007-10-26 13:29:26 UTC (rev 234)
+++ trunk/bbs2chreader/chrome/content/bbs2chreader/board/subscribe.js	2007-10-26 13:30:47 UTC (rev 235)
@@ -1,10 +1,7 @@
 
-var gBbs2chService = Components.classes["@mozilla.org/bbs2ch-service;1"]
-			.getService(Components.interfaces.nsIBbs2chService);
-var gRDFS = Components.classes["@mozilla.org/rdf/rdf-service;1"]
-			.getService(Components.interfaces.nsIRDFService);
-var gRDFCU = Components.classes["@mozilla.org/rdf/container-utils;1"]
-					.getService(Components.interfaces.nsIRDFContainerUtils);
+var gBbs2chService = Cc["@mozilla.org/bbs2ch-service;1"].getService(Ci.nsIBbs2chService);
+var gRDFS = Cc["@mozilla.org/rdf/rdf-service;1"].getService(Ci.nsIRDFService);
+var gRDFCU = Cc["@mozilla.org/rdf/container-utils;1"].getService(Ci.nsIRDFContainerUtils);
 var gTreeSubscribe;
 var gDatasource;
 
@@ -77,7 +74,7 @@
 		// ツリーデータベースの初期化
 	var dsEnu = gTreeSubscribe.database.GetDataSources();
 	while(dsEnu.hasMoreElements()){
-		var ds = dsEnu.getNext().QueryInterface(Components.interfaces.nsIRDFDataSource);
+		var ds = dsEnu.getNext().QueryInterface(Ci.nsIRDFDataSource);
 		if(ds.URI == null){
 			gTreeSubscribe.database.RemoveDataSource(ds);
 		}
@@ -90,8 +87,8 @@
 		return;
 	}
 
-	gDatasource = Components.classes["@mozilla.org/rdf/datasource;1?name=in-memory-datasource"]
-						.createInstance(Components.interfaces.nsIRDFDataSource);
+	gDatasource = Cc["@mozilla.org/rdf/datasource;1?name=in-memory-datasource"]
+						.createInstance(Ci.nsIRDFDataSource);
 
 	var rootContainer = gRDFCU.MakeSeq(gDatasource, gRDFS.GetResource("urn:b2rSubscribe:root"));
 
@@ -156,12 +153,12 @@
 		var newUnread = gRDFS.GetIntLiteral(item.unread);
 		var oldUnread = gDatasource.GetTarget(itemRes, resUnread, true);
 		if(oldUnread){
-			oldUnread.QueryInterface(Components.interfaces.nsIRDFInt);
+			oldUnread.QueryInterface(Ci.nsIRDFInt);
 			if(newUnread.Value != oldUnread.Value){
 				gDatasource.Change(itemRes, resUnread, oldUnread, newUnread);
 			}
 			var oldState = gDatasource.GetTarget(itemRes, resState, true)
-					.QueryInterface(Components.interfaces.nsIRDFLiteral);
+					.QueryInterface(Ci.nsIRDFLiteral);
 			if(newState.Value != oldState.Value){
 				gDatasource.Change(itemRes, resState, oldState, newState);
 			}
@@ -257,7 +254,7 @@
 
 	if(gTreeSubscribe.builderView.isContainer(index)){
 		var boardURL = gDatasource.GetTarget(itemRes, gRDFS.GetResource(B2R_NS + "url"), true)
-			.QueryInterface(Components.interfaces.nsIRDFLiteral).Value;
+			.QueryInterface(Ci.nsIRDFLiteral).Value;
 		boardURL = "bbs2ch:board:" + boardURL;
 		gBbs2chService.openURL(boardURL, null, aAddTab);
 		return;
@@ -266,7 +263,7 @@
 	var parentIndex = gTreeSubscribe.builderView.getParentIndex(index);
 	var parentRes = gTreeSubscribe.builderView.getResourceAtIndex(parentIndex);
 	var boardURL = gDatasource.GetTarget(parentRes, gRDFS.GetResource(B2R_NS + "url"), true)
-			.QueryInterface(Components.interfaces.nsIRDFLiteral).Value;
+			.QueryInterface(Ci.nsIRDFLiteral).Value;
 	var boardItems = gBoardItemsHash[boardURL];
 
 		// スレッド表示数の制限
@@ -283,7 +280,7 @@
 	}
 
 	var threadURL = gDatasource.GetTarget(itemRes, gRDFS.GetResource(B2R_NS + "url"), true)
-			.QueryInterface(Components.interfaces.nsIRDFLiteral).Value;
+			.QueryInterface(Ci.nsIRDFLiteral).Value;
 	threadURL = "/thread/" + threadURL + threadViewLimit;
 	threadURL = gBbs2chService.serverURL.resolve(threadURL);
 	gBbs2chService.openURL(threadURL, null, aAddTab);
@@ -292,14 +289,14 @@
 	var resUnread = gRDFS.GetResource(B2R_NS + "unread");
 	var newUnread = gRDFS.GetIntLiteral(0);
 	var oldUnread = gDatasource.GetTarget(itemRes, resUnread, true)
-						.QueryInterface(Components.interfaces.nsIRDFInt);
+						.QueryInterface(Ci.nsIRDFInt);
 	if(newUnread.Value != oldUnread.Value){
 			gDatasource.Change(itemRes, resUnread, oldUnread, newUnread);
 	}
 	var resState = gRDFS.GetResource(B2R_NS + "state");
 	var newState = gRDFS.GetLiteral("noUpdateItem");
 	var oldState = gDatasource.GetTarget(itemRes, resState, true)
-					.QueryInterface(Components.interfaces.nsIRDFLiteral);
+					.QueryInterface(Ci.nsIRDFLiteral);
 	if(newState.Value != oldState.Value){
 		gDatasource.Change(itemRes, resState, oldState, newState);
 	}
@@ -307,8 +304,7 @@
 
 
 function removeTreeItem(aParentResource, aResource, aIndex){
-	var container = Components.classes["@mozilla.org/rdf/container;1"]
-						.createInstance(Components.interfaces.nsIRDFContainer);
+	var container = Cc["@mozilla.org/rdf/container;1"].createInstance(Ci.nsIRDFContainer);
 	container.Init(gDatasource, aParentResource);
 	container.RemoveElement(aResource, true);
 }
@@ -387,8 +383,8 @@
 
 		gTreeSubscribe.treeBoxObject.beginUpdateBatch();
 
-		var boardContainer = Components.classes["@mozilla.org/rdf/container;1"]
-					.createInstance(Components.interfaces.nsIRDFContainer);
+		var boardContainer = Cc["@mozilla.org/rdf/container;1"]
+					.createInstance(Ci.nsIRDFContainer);
 		boardContainer.Init(gDatasource, gRDFS.GetResource("urn:b2rSubscribe:board:" + gDownloadQueue[0].url.spec));
 		while(boardContainer.GetCount()){
 			boardContainer.RemoveElementAt(1, true);
@@ -439,7 +435,7 @@
 	var newValue = gRDFS.GetLiteral(aStete);
 	var oldValue = gDatasource.GetTarget(boardRes, stateRes, true);
 	if(oldValue){
-		oldValue.QueryInterface(Components.interfaces.nsIRDFLiteral);
+		oldValue.QueryInterface(Ci.nsIRDFLiteral);
 		if(newValue.Value != oldValue.Value){
 			gDatasource.Change(boardRes, stateRes, oldValue, newValue);
 		}
@@ -481,12 +477,12 @@
 		var parentIndex = gTreeSubscribe.builderView.getParentIndex(index);
 		var parentRes = gTreeSubscribe.builderView.getResourceAtIndex(parentIndex);
 		var boardURL = gDatasource.GetTarget(parentRes, gRDFS.GetResource(B2R_NS + "url"), true)
-				.QueryInterface(Components.interfaces.nsIRDFLiteral).Value;
+				.QueryInterface(Ci.nsIRDFLiteral).Value;
 		var boardItems = gBoardItemsHash[boardURL];
 
 		var itemRes = gTreeSubscribe.builderView.getResourceAtIndex(index);
 		var datID = gDatasource.GetTarget(itemRes, gRDFS.GetResource(B2R_NS + "datID"), true)
-				.QueryInterface(Components.interfaces.nsIRDFLiteral).Value;
+				.QueryInterface(Ci.nsIRDFLiteral).Value;
 
 					// ログディレクトリ内の .dat ファイル
 		var datFile = gBbs2chService.getLogFileAtURL(boardItems.url.resolve(datID + ".dat"));

Modified: trunk/bbs2chreader/chrome/content/bbs2chreader/board/subscribe.xul
===================================================================
--- trunk/bbs2chreader/chrome/content/bbs2chreader/board/subscribe.xul	2007-10-26 13:29:26 UTC (rev 234)
+++ trunk/bbs2chreader/chrome/content/bbs2chreader/board/subscribe.xul	2007-10-26 13:30:47 UTC (rev 235)
@@ -11,10 +11,11 @@
 		onmousedown="eventBubbleCheck(event)" onkeypress="eventBubbleCheck(event)"
 		xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
 
-<script type="application/javascript;version=1.7" src="chrome://bbs2chreader/content/lib/rdf.js"/>
-<script type="application/javascript;version=1.7" src="chrome://bbs2chreader/content/lib/downloader.js"/>
-<script type="application/javascript;version=1.7" src="chrome://bbs2chreader/content/board/items.js"/>
-<script type="application/javascript;version=1.7" src="chrome://bbs2chreader/content/board/subscribe.js"/>
+<script type="application/javascript; version=1.7" src="chrome://bbs2chreader/content/lib/xpc.js"/>
+<script type="application/javascript; version=1.7" src="chrome://bbs2chreader/content/lib/rdf.js"/>
+<script type="application/javascript; version=1.7" src="chrome://bbs2chreader/content/lib/downloader.js"/>
+<script type="application/javascript; version=1.7" src="chrome://bbs2chreader/content/board/items.js"/>
+<script type="application/javascript; version=1.7" src="chrome://bbs2chreader/content/board/subscribe.js"/>
 
 <popupset>
 	<popup id="treeSubscribeContext"


bbs2ch-cvs メーリングリストの案内
Back to archive index