// ==PREPROCESSOR== // @name "Sample9 TextFile" // @author "Junya Renno" // ==/PREPROCESSOR== var WshShell = new ActiveXObject("WScript.Shell"); var fso = new ActiveXObject("Scripting.FileSystemObject"); var g_font = gdi.Font("‚l‚r –¾’©", 14); var filename = fb.ProfilePath + "nowtitle.txt"; var tf_query = ""; var from_file_data = ""; if (fb.GetNowPlaying()){ tf_query = get_tf("%title%,%album artist%"); } function RGB(r, g, b) { return (0xff000000 | (r << 16) | (g << 8) | (b)); } function on_paint(gr){ if (tf_query){ tf_query_view = "--- Now Playing ---\n" + tf_query.replace(/,/g,"\n"); gr.DrawString(tf_query_view,g_font,RGB(0,0,0),20,20,window.Width-20,100); } if (from_file_data){ from_file_data_view = "--- Read File Data ---\n" + from_file_data.replace(/,/g,"\n"); gr.DrawString(from_file_data_view,g_font,RGB(0,0,0),20,100,window.Width-20,100); } } function on_playback_new_track(){ if(fso.FileExists(filename)){ from_file_data = read_file(); } tf_query = get_tf("%title%,%album artist%"); if (tf_query){ write_file(tf_query); } window.Repaint(); } function on_playback_stop(){ window.Repaint(); } function get_tf(tf){ if (fb.GetNowPlaying()){ return fb.Titleformat(tf).eval(); } } function write_file(text){ stream = new ActiveXObject("ADODB.Stream"); stream.type = 2; stream.charset = "utf-8"; stream.open(); stream.writeText(text+"\r\n"); stream.saveToFile(filename, 2); stream.close(); } function read_file(){ stream = new ActiveXObject("ADODB.Stream"); stream.type = 2; stream.charset = "utf-8"; stream.open(); stream.loadFromFile(filename); text_line = stream.readText(-2); stream.close(); return text_line; }