seriousstas |
04.02.2018 00:25 |
Цитата:
Сообщение от sirota
(Сообщение 398935)
Что то у меня не получилось заставить бежать строку....скопировал из старой сборки 14.1 configure...вставил в новую, но ничего не изменилось...бегущей строки нет.
|
Попробуй из 14. 5 :
PHP код:
// ==PREPROCESSOR== // @import "%fb2k_path%\themes\4Icar\Scripts\Date Modoki.js" // ==/PREPROCESSOR==
function RGBA(r, g, b, a) { return ((a << 24) | (r << 16) | (g << 8) | (b)); } function RGB(r, g, b) { return (0xff000000 | (r << 16) | (g << 8) | (b)); } function CustomColor(color) { tempc = color.split("-"); return (0xff000000 | (tempc[0] << 16) | (tempc[1] << 8) | (tempc[2])); } DT_NOPREFIX = 0x00000800; MF_SEPARATOR = 0x00000800; MF_STRING = 0x00000000; var set_path = fb.ProfilePath + "\\settings\\"; var scr_font = window.GetProperty("Scroll Text Font", "Arial"); var scr_style = window.GetProperty("Scroll Text Font Style", 0); var date_time_manual_center = window.GetProperty("Date & Time Manual Сentering", 26); var date_time_manual_y = window.GetProperty("Date & Time Manual Y coordinate", 2); var font = gdi.Font(prop.Style.Font_Family, prop.Style.Font_Size, Number(prop.Style.Font_Bold)); var s_font = gdi.Font(scr_font, prop.Style.Font_Size2, scr_style); var ww, wh; var btn_type = utils.ReadINI(set_path + 'settings.ini', 'Button Folder', 'Button Folder'); var txt_row = window.GetProperty("Scroll Text Heght", 20); var s = 10, step, step1 = window.Width, step2 = window.Width; var text1, text2, t_width, t_width1, t_width2, dir, mode, sw = 1; var t1 = "", t2 = "", t3 = "", ti = ""; var show1, show2, show3, showi, showr; var seek_timer; var speed = window.GetProperty("|8| Speed Scroll", 20); var Font_Size = window.GetProperty("Style.Font_Size", Font_Size); var Font_Size2 = window.GetProperty("Scroll Text Font Size", Font_Size2) font_rgb = window.GetProperty("Scroll Text Color", "200-200-210"); seek_gradient_color = window.GetProperty("Seek Gradient Color", "191-171-118"); seek_gradient_color2 = window.GetProperty("Seek Gradient Color 2", "25-13-5"); back_gradient_color = window.GetProperty("Back Gradient Color", "140-121-92"); back_gradient_color2 = window.GetProperty("Back Gradient Color 2", "25-13-5"); seek_gradient_color_alpha = window.GetProperty("Seek Gradient Color Alpha", "255"); seek_gradient_color2_alpha = window.GetProperty("Seek Gradient Color 2 Alpha", "255"); back_gradient_color_alpha = window.GetProperty("Back Gradient Color Alpha", "255"); back_gradient_color2_alpha = window.GetProperty("Back Gradient Color 2 Alpha", "255"); rect_color = window.GetProperty("Rect Color 2", "0-0-0"); seek_gradient_color = CustomColor(seek_gradient_color); seek_gradient_color2 = CustomColor(seek_gradient_color2); back_gradient_color = CustomColor(back_gradient_color); back_gradient_color2 = CustomColor(back_gradient_color2); rect_color = CustomColor(rect_color); font_rgb = CustomColor(font_rgb); var g_drag = 0; var set_path = fb.ProfilePath + "\\settings\\";
function on_paint(gr) {
if (q != 3 & q != 0 ) { show1 = window.GetProperty("|1| Title", 1); show2 = window.GetProperty("|2| Artist", 1); show3 = window.GetProperty("|3| Album", 1); mode = window.GetProperty("|5| Mode", 0); showi = window.GetProperty("|4| Info", 1); if (show1 == 1) { t1 = fb.TitleFormat("$upper([ %title%])").Eval(); } else { t1 = ""; } if (show2 == 1) { t2 = fb.TitleFormat("$upper([%artist%])").Eval(); } else { t2 = ""; } if (show3 == 1) { t3 = fb.TitleFormat("$upper([%album%])[ - %date%]").Eval(); } else { t3 = ""; } if (showi == 1) { ti = fb.TitleFormat("[ $info(encoding)][ • $info(codec)][ $info(codec_profile)][ • $info(bitrate) kbps][ • $info(samplerate) Hz][ • $info(bitspersample) bps][ • $channels()]$if($stricmp($ext(%filename_ext%),cue), • '['cue']',[ • %filesize_natural%])$if($strcmp($info(cue_embedded),yes), • '['embedded cue']',)").Eval(); } else { ti = ""; } text1 = t1 + (show1 > 0 && t2 != "" ? " - " : "") + t2 + ((show1 > 0 || show2 > 0) && t3 != "" ? " - " : "") + t3; text2 = showi == 1 ? ti : text1; text1 = showi == 1 && text1 == "" ? text2 : text1; t_width2 = gr.CalcTextWidth(text2, s_font); t_width1 = gr.CalcTextWidth(text1, s_font);
dir = "left"; if (sw == 1) { if (step1 + t_width1 > ww / 1.2) { step2 = ww }; if (step1 + t_width1 <= 0) { step1 = ww; sw = 2 }; } else { if (step2 + t_width2 > ww / 1.4) { step1 = ww }; if (step2 + t_width2 <= 0) { step2 = ww; sw = 1 }; }
var alpha = 235; if (window.GetProperty("|7| Matrix") == 7) var alpha = 235; if (window.GetProperty("|7| Matrix") == 8) var alpha = 255;
} gr.FillGradRect(0, 0, ww, wh, -90, back_gradient_color & RGBA(255, 255, 255, back_gradient_color_alpha), back_gradient_color2 & RGBA(255, 255, 255, back_gradient_color2_alpha)); ww = window.Width, wh = window.Height, pos = 0, length = fb.PlaybackLength; if (length > 0) { if (g_drag) { pos = ww * g_drag_seek; } else { pos = ww * (fb.PlaybackTime / [length]); } } gr.FillGradRect(0, 0, pos, wh, 90, seek_gradient_color & RGBA(255, 255, 255, seek_gradient_color_alpha), seek_gradient_color2 & RGBA(255, 255, 255, seek_gradient_color2_alpha)); gr.Drawrect(0, 0, pos, wh, 3.0, rect_color); if (q == 1) { txt_row = wh/2 date_time_manual_y = 3 gr.GdiDrawText(text1, s_font, font_rgb, step1, txt_row, t_width1, wh, DT_NOPREFIX); gr.GdiDrawText(text2, s_font, font_rgb, step2, txt_row, t_width2, wh, DT_NOPREFIX);
text_width = gr.CalcTextWidth(DateModoki, font); DateModoki.on_paint(gr, ww / 2 - text_width / 2 + prop.Style.Font_Size - date_time_manual_center, date_time_manual_y); } if (q == 2) { txt_row = wh/4 gr.GdiDrawText(text1, s_font, font_rgb, step1, txt_row, t_width1, wh, DT_NOPREFIX); gr.GdiDrawText(text2, s_font, font_rgb, step2, txt_row, t_width2, wh, DT_NOPREFIX); } if (q == 3) { var text_width = gr.CalcTextWidth(DateModoki, font); date_time_manual_y = wh/3-3 DateModoki.on_paint(gr, ww / 2 - text_width / 2 + prop.Style.Font_Size - date_time_manual_center, date_time_manual_y); }
} function on_size() { ww = window.Width; wh = window.Height; } function on_playback_new_track(info) { step1 = window.Width; step2 = window.Width; pos = 0; seek_timer && window.ClearInterval(seek_timer); seek_timer = window.SetInterval(function () { if (dir == "right") { step1 = step1 + 1 }; if (dir == "right") { step2 = step2 + 1 }; if (dir == "left") { step1 = step1 - 1 }; if (dir == "left") { step2 = step2 - 1 }; window.Repaint(); }, speed); CollectGarbage(); } function on_playback_stop() { window.ClearInterval(seek_timer); window.Repaint(); } function on_playback_time() { if (!seek_timer) on_playback_new_track(); } function on_mouse_lbtn_down(x, y) { g_drag = 1; on_mouse_move(x, y); } function on_mouse_lbtn_dblclk(x, y) { q = window.GetProperty("Show Switch"); q++; if (q > 3) q = 0; window.SetProperty("Show Switch", q); window.Repaint(); } function on_mouse_lbtn_up(x, y) { if (g_drag) { g_drag = 0; g_drag_seek = x / window.Width; g_drag_seek = (g_drag_seek < 0) ? 0 : (g_drag_seek < 1) ? g_drag_seek : 1; fb.PlaybackTime = fb.PlaybackLength * g_drag_seek; g_drag = 0; } } function on_mouse_rbtn_up(x, y) { var _menu = window.CreatePopupMenu(); var i = 1; _menu.AppendMenuItem(0x00000000, i++, "title"); _menu.CheckMenuItem(i - 1, show1); _menu.AppendMenuItem(0x00000000, i++, "artist"); _menu.CheckMenuItem(i - 1, show2); _menu.AppendMenuItem(0x00000000, i++, "album"); _menu.CheckMenuItem(i - 1, show3); _menu.AppendMenuItem(0x00000000, i++, "info"); _menu.CheckMenuItem(i - 1, showi);
_menu.AppendMenuItem(MF_STRING, 9, "Properties..."); _menu.AppendMenuItem(MF_STRING, 10, "Configure..."); idx = _menu.TrackPopupMenu(x, y); switch (idx) { case 1: window.SetProperty("|1| Title", show1 == 0 ? 1 : 0); break; case 2: window.SetProperty("|2| Artist", show2 == 0 ? 1 : 0); break; case 3: window.SetProperty("|3| Album", show3 == 0 ? 1 : 0); break; case 4: window.SetProperty("|4| Info", showi == 0 ? 1 : 0); break;
case 9: window.ShowProperties(); break; case 10: window.ShowConfigure(); break; } _menu.Dispose(); return true } function on_mouse_move(x, y) { if (g_drag) { g_drag_seek = x / window.Width; g_drag_seek = (g_drag_seek < 0) ? 0 : (g_drag_seek < 1) ? g_drag_seek : 1; window.Repaint(); } } function on_script_unload() { pos = 0; seek_timer && window.ClearInterval(seek_timer); CollectGarbage(); };
|