foobar2000

土日はちょこちょことfoobar2000のカスタマイズしていた
微妙な変更ばかりだったので前のメモに画像の更新とWSHスクリプト内容を書き加わえる形をとったが
完全に泥沼にはまり、正直よくわからなくなってきたので新しく書き直すことにした
あの忌々しいイヤホンスパイラルの日々を思い出しちゃうよぅお兄ちゃん…









Panel Stack Splitter
├WSH Panel Mod
├Graphical Browser
└EsPlaylist


Panel Stack Splitter

$puts(ww,150)
$puts(hh,20)
$puts(col1,70-70-70-255)
$puts(col2,10-10-10-255)
$puts(grop,horizontal nonlinear)

$gradientrect(0,0,$get(ww),$get(hh),$get(col1),$get(col2),$get(grop))
$gradientrect($sub(%_width%,$get(ww)),0,$get(ww),$get(hh),$get(col2),$get(col1),$get(grop))

$puts(ww,300)
$puts(hh,10)
$puts(col1,50-50-50-255)
$puts(col2,0-0-0-255)

$gradientrect(0,$sub(%_height%,$get(hh)),$get(ww),$get(hh),$get(col1),$get(col2),$get(grop))
$gradientrect($sub(%_width%,$get(ww)),$sub(%_height%,$get(hh)),$get(ww),$get(hh),$get(col2),$get(col1),$get(grop))


//ResizeButton
$puts(bw,10)
$puts(bh,5)
$puts(bx,$div($sub(%_width%,$get(bw)),2))
$puts(by,140)
$puts(size1w,%_width%)
$puts(size1h,600)
$puts(size2w,%_width%)
$puts(size2h,150)
$puts(fcol,100-100-100)
$puts(Mfcol,255-255-255)
$font(,5,)

$ifequal(%Resize%,1,
$textbutton($get(bx),$get(by),$get(bw),$get(bh),▼,▼,WINDOWSIZE:$get(size1w):$get(size1h);SETGLOBAL:Resize:0,fontcolor:$get(fcol),fontcolor:$get(Mfcol)),
$textbutton($get(bx),$get(by),$get(bw),$get(bh),▲,▲,WINDOWSIZE:$get(size2w):$get(size2h);SETGLOBAL:Resize:1,fontcolor:$get(fcol),fontcolor:$get(Mfcol)))



WSH シークバー兼TF

function RGB(r,g,b){ return (0xff000000|(r<<16)|(g<<8)|(b)); }
var g_titlefmt = fb.TitleFormat("[%album%] - [%title%] - [%artist%]");
var g_font = gdi.Font("MeiryoKe_UIGothic", 12, 0);
var g_drag = 0;

function on_paint(gr){
	var ww = window.Width, wh = window.Height, wx = 0, wy = 0;
	var col = 0, i = 0, txt = g_titlefmt.Eval(), grad = fb.PlaybackTime/fb.PlaybackLength;
    
 	while (i < ww) {
 		col = (i<=grad*ww) ? RGB(10,10,10) : RGB(5,5,5);
		gr.FillSolidRect(wx+i,0,4,wh,col);
		i += 5;
	} gr.DrawRect(wx,-1,ww,wh,1.0,RGB(10,10,10));
	gr.DrawString(txt,g_font,RGB(255,255,255),0,0,window.Width-3,wh,0x11005000);
}
function on_mouse_lbtn_down(x,y){
	g_drag = 1;
}
function on_mouse_lbtn_up(x,y){
	on_mouse_move(x,y);
	g_drag = 0;
}
function on_mouse_move(x,y){
	var ww = window.Width, wx = 0;
	var v = (x-wx-3)/ww;

	if *1
		fb.PlaybackTime = fb.PlaybackLength * v;
}
function on_mouse_wheel(delta){
	fb.PlaybackTime += delta;
}
function on_playback_new_track(info){
	window.Repaint();
}
function on_playback_stop(){
	window.Repaint();
}
function on_playback_seek(time){
	window.Repaint();
}
function on_playback_time(time){
	window.Repaint();
}



Graphical Browser

//NowPlaying
$if(%gb_isplaying%,
$if($draw_image(0,15,90,90,$replace(%path%,%filename_ext%,)*.jpg,255,),
$draw_image(0,105,90,90,$replace(%path%,%filename_ext%,)*.jpg,255,,6)
$draw_image(0,105,90,90,.\overlay.png,255),
$draw_image(0,15,90,90,.\cover.jpg,255,)
$draw_image(0,83,90,90,.\cover.jpg,255,,6)
$draw_image(0,94,90,90,.\overlay.png,255)),

// Focus
$if(%gb_focused%,
$if($draw_image(5,20,80,80,$replace(%path%,%filename_ext%,)*.jpg,255,),
$draw_image(5,100,80,80,$replace(%path%,%filename_ext%,)*.jpg,255,,6)
$draw_image(5,100,80,80,.\overlay.png,255),
$draw_image(5,16,80,80,.\cover.jpg,255,)
$draw_image(5,76,80,80,.\cover.jpg,255,,6)
$draw_image(5,86,80,80,.\overlay.png,255)),

// Mouse over
$if(%gb_mouse_over%,
$if($draw_image(5,20,80,80,$replace(%path%,%filename_ext%,)*.jpg,255,),
$draw_image(5,100,80,80,$replace(%path%,%filename_ext%,)*.jpg,255,,6)
$draw_image(5,100,80,80,.\overlay.png,255),
$draw_image(5,16,80,80,.\cover.jpg,255,)
$draw_image(5,76,80,80,.\cover.jpg,255,,6)
$draw_image(5,86,80,80,.\overlay.png,255)),


// Default
$if($draw_image(10,5,70,70,$replace(%path%,%filename_ext%,)*.jpg,255),
$draw_image(10,75,70,70,$replace(%path%,%filename_ext%,)*.jpg,255,,6)
$draw_image(10,75,70,70,.\overlay.png,255),
$draw_image(10,5,70,70,.\cover.jpg,255,)
$draw_image(10,58,70,70,.\cover.jpg,255,,6)
$draw_image(10,66,70,70,.\overlay.png,255)
))))

*1:g_drag) && (wx<=x) && (x<=wx+ww