001 : /* 002 : * CSVの正しい読み方におけるプログラム変遷のためのスクリプト 003 : * Created : 2012.11.26 004 : * Modified : 2012.11.28 005 : */ 006 : 007 : /** 008 : * クラスCodeTransition 009 : */ 010 : function CodeTransitionViewer(idString, codeArray) 011 : { 012 : /** 013 : * 処理対象のエリア 014 : */ 015 : this.id = idString; 016 : 017 : /** 018 : * ソースコードの配列 019 : */ 020 : this.codeArray = codeArray; 021 : 022 : /** 023 : * 現在の表示インデックス(1 origin) 024 : */ 025 : this.currentIndex = 1; 026 : 027 : /** 028 : * プログラムの初期状態を表示する 029 : */ 030 : this.transitionToFirst = function() 031 : { 032 : this.transitionTo(1); 033 : return; 034 : } 035 : 036 : /** 037 : * プログラムの最終状態を表示する 038 : */ 039 : this.transitionToLast = function() 040 : { 041 : this.transitionTo(this.codeArray.length); 042 : return; 043 : } 044 : 045 : /** 046 : * 次のプログラムを表示する(エイリアス) 047 : */ 048 : this.transitionNext = function() 049 : { 050 : this.transitionFollowing(); 051 : return; 052 : } 053 : 054 : /** 055 : * 次のプログラムを表示する 056 : */ 057 : this.transitionFollowing = function() 058 : { 059 : this.transitionTo(this.currentIndex + 1); 060 : return; 061 : } 062 : 063 : /** 064 : * 前のプログラムを表示する 065 : */ 066 : this.transitionPrevious = function() 067 : { 068 : this.transitionTo(this.currentIndex - 1); 069 : return; 070 : } 071 : 072 : /** 073 : * 指定インデックスのプログラムを表示する 074 : */ 075 : this.transitionTo = function(anIndex) 076 : { 077 : anIndex = Math.min(Math.max(1, anIndex), this.getLength()); 078 : this.currentIndex = anIndex; 079 : document.getElementById(this.id).innerHTML = this.codeArray[anIndex - 1]; 080 : return; 081 : } 082 : 083 : /** 084 : * プログラムの状態遷移数を応答する 085 : */ 086 : this.getLength = function() 087 : { 088 : return this.codeArray.length; 089 : } 090 : 091 : /** 092 : * 現在のインデックスを応答する(1 origin) 093 : */ 094 : this.getCurrentIndex = function() 095 : { 096 : return this.currentIndex; 097 : } 098 : 099 : return; 100 : } 101 :
This document was generated by NanigashiBiyori on 2012/11/28 at 19:08:52.